Loading

Module 1: QoS da Internet

Nota de Estudos
Study Reminders
Support
Text Version

Policiamento De Tráfego e Traffic Shaping

Set your study reminders

We will email you at these times to remind you to study.
  • Monday

    -

    7am

    +

    Tuesday

    -

    7am

    +

    Wednesday

    -

    7am

    +

    Thursday

    -

    7am

    +

    Friday

    -

    7am

    +

    Saturday

    -

    7am

    +

    Sunday

    -

    7am

    +

Traffic Policing e Traffic Shaping
Bem-vindo de volta ao curso sobre Rede de Computadores e Protocolo de Internet. Por isso, estamosdiscutindo sobre qualidade de serviço na internet em detalhes.(Consulte o Tempo do slide: 00:26)Então, na última aula, nós olhamos para a ampla arquitetura QoS da internet. Hoje nósvamos olhar mais para 3 aspectos importantes da qualidade da internet do policiamento de tráfego de serviços,traffic shaping e traffic agending.(Consulte o Slide Time: 00:42)Então, vamos começar com o policiamento de tráfego e o traffic shaping. Por isso, na última aula fomosdiscutindo sobre a diferença entre o policiamento de trânsito e o de traffic shaping. Então, o quenós vimos em caso de policiamento de tráfego, você apenas olha para os picos que estão violandoa qualidade de serviço necessária e se eles estão violando você simplesmente os corta e deixa cairaqueles pacotes. Considerando que, em caso de tráfego moldando o que estamos fazendo que para aplicar o tráfegomoldando, você realmente suavifica toda essa taxa toda que está aí.Então, em geral em uma rede qualquer que seja o mecanismo que somos aplicamos para garantir o tráfegomoldando ou o policiamento de tráfego nós realmente aplicamos tipo semelhante de mecanismo. Por isso, em uma típica redeter garantia perfeita de uma taxa de bits constante é muito difícil. Como os pacotesestão indo via vários roteadores um após outro e é por isso que fazemos certo nível de aproximaçãoe essa aproximação realmente combina tanto o policiamento de tráfegoquanto o tráfego moldando todos juntos.Então, a ideia é que o que você faz que projete um mecanismo tal que sua taxa de saídaseja regulada e ao mesmo tempo os pacotes adicionais que estão lá que serãonão poderão confirmar a qualidade de políticas de serviço que serão violadas. Agora pararesolva isso deixe-nos olhar para o mecanismo que podemos aplicar aqui.(Consulte o Tempo do slide: 02:23)Então, o primeiro mecanismo que vamos falar é o algoritmo do balde de vazão. Por isso,embora nos slides eu tenha mencionado aquele balde vazado para o policiamento de tráfego, mas como eumencionei o mecanismo final é uma combinação de policiamento de tráfego e tráfegomoldando. Então, esse mecanismo de balde vazado por ideia é muito simples, a ideia é que vocêtenha um balde só o que você está vendo no exemplo.Então, você tem um balde e tem um furo aqui. Agora se você só pensar em como jorrarágua naquele balde o que vai acontecer como a partir daquele furo baseado no tamanho do furovocê obterá a saída a uma taxa constante. Assim, você obterá uma taxa constante para fora e se vocêcolocar mais água em vez da capacidade do balde então a água adicional vai ficarestourada do balde.Então, dessa forma a capacidade do balde está realmente confirmando o requisito para o policiamentopoliciamento, como se você estiver excedendo essa grande capacidade em um momento então você sai ou vocêexclua eliminar os pacotes adicionais de dados adicionais que estão lá. E esse tamanhodesse orifício ele realmente irá acionar que a qual taxa constante você vai enviar um pacote para a fila de saída. Então, essa é a ideia de algoritmo de balde vazado. Assim, os pacotes recebidos são colocadosna fila de pacotes. Então, essa fila em particular a chamamos como uma fila de pacotes.Então, pacotes de entrada são colocados na fila de pacotes. Então, essa fila de pacotes funciona como um baldee uma única fila de servidores com tempo de serviço constante que servidor em particular servea fila. Então, aqui nesta fila assim, eu estou apenas desenhando na notação de enfileiramento. Então, vocêtem uma única fila de servidores e esta única fila de servidores sempre saída em uma taxa constante r.Então, que significa, seja qual for o pacote naquela fila específica, então você levará pacotepara fora da fila a uma taxa de r pacotes por segundo, digamos que estou supondo que todos os pacotes sejamiguais. Caso contrário você pode ir por pouco por segundo que quantos bits estão chegando na filae quantos bits você está tirando da fila. Então, você está obtendo dados emalguma taxa diz que o capital R e os pacotes estão recebendo entrada em uma fila e estamos usando uma fila de tamanho constante, digamos que a capacidade da fila como temos mencionado aqui é tau. Assim,você pode guardar tanto quanto muitos que muito de pacote na fila e ele serve a uma taxa der.Então, na saída você sempre obterá um serviço de taxa constante em r pacotes por set ou eu voumelhor dizer que é a coisa máxima como você vai obter máximo em r pacotes por segundo senão houver dados de entrada na fila; obviamente, você não vai receber nada na saída. Então,ele em algum momento cair de r caso contrário você obterá em um ritmo de pico de r pacote por segundo ese a sua entrada ficar mais do que tau se você estiver tentando empurrar mais do que tau pacotes, então elaserá eliminada. Então, esta parte em que estamos retirando a uma taxa constante ela está aplicandotraffic shaping e desse tamanho está aplicando o policiamento de tráfego.(Consulte o Slide Time: 06:11)Então, o diagrama seria algo assim que você tem uma entrada de algo em dizeralguma taxa de pico e sempre que estiver obtendo a saída a saída é minha taxa r, se esta é minha taxa r então você está obtendo-a em uma taxa se houver algum pacote adicionalaqui devido a este pico aqueles pacotes adicionais serão eliminados se a fila ficarcheia.Então, se fila cheia, então aqueles pacotes adicionais ficam caiu de outra forma aqueles pacotes sãotransmitidos a uma taxa e sempre que houver uma queda na taxa bem essa largura de banda adicionalalgo vai ser consumido aqui. Mas aí você pode ver um pouco de aperto aqui devidoa essa queda novamente sempre que ele está aumentando ele vai aumentar e, mas sempre vaimanter o máximo dessa taxa constante r. E então se sempre que houver uma queda ela voltará a cair e aqui a partir daqui também se a fila ficar cheia você pode experimentar certas gotas de pacotes.Agora, este diagrama você pode ver que é pouco violante do diagrama de tráfegomoldando-se que mostramos anteriormente o diagrama ideal do traffic shaping era algocomo este que ele sempre manterá uma taxa constante, mas garantindo que em uma rede típicaé difícil porque sua taxa de saída também depende da sua taxa de entrada, como a taxa emque o aplicativo está gerando pacote. Obviamente, se o aplicativo não estiver gerandomais pacotes, não poderemos servir esses pacotes e este dips na taxa sãona verdade porque o aplicativo não está gerando nenhum dado adicional. Então, é por isso que vocêestá observando uma queda na taxa, mas se caso contrário o aplicativo estiver gerando taxa vocêvai chegar a essa taxa específica. Então, e esse é o caso que é o caso de saída. Então, dessa formaestamos realmente aplicando traffic shaping e traffic policiing juntamente com a ajuda destealgoritmo de balde vazado.(Consulte o Slide Time: 08:22)Vamos ir para outro algoritmo para o policiamento de tráfego e moldando-lo é chamado de algoritmo de balde de token. Então, o algoritmo do balde token a ideia é pouco interessante e elesuporta algo chamado burst de tráfego.Então, a ideia desse algoritmo do balde de token é algo como este você tem um balde umtoken bucket. Dentro do depósito do token, você está inserindo os tokens em uma taxa de r e este depósito de tokentambém tem um tamanho de b. Agora fora esse balde token você tem outra fila de pacotesna fila de pacotes sempre que qualquer pacote que você estiver recebendo você estácolocando esse pacote na fila de pacotes. Agora você tem o planejador, o que o planejadorfará?Se houver um token no balde ele irá tirar o token pegar um pacote e enviá-los para fora.Agora esses tokens são tipo de token lógico, não é uma espécie de entidade física. Então, a ideiado balde de token é que você regule o tráfego de tal forma, de modo que se houvertokens disponíveis no depósito do token, então somente você conseguirá enviar um pacote na saída. Agora qual é a diferença entre balde de token e balde vazante, vamos tentarvisualizar isso.(Consulte o Tempo do slide: 09:38)Então, em caso de balde vazado o que estava acontecendo, você teve esse balde vazado e um pequeno furoneste balde vazado. Então, qualquer que seja o pacote que você está recebendo aqui você está levando-a a saídaa uma taxa constante. Agora nesse caso se não houver uma taxa constante r nesse casose não houver nenhum pacote então não haveria saída.Em caso de balde vazado o que está acontecendo, você tem que está em balde vazado em caso desteé para vazamento de vazão, em caso de depósito de vazão você tem esse balde de token você tem inserindotokens em uma taxa de geração de token de digamos b eu estou apenas colocando algum parâmetroarbitrário em uma taxa de geração de token b e ele tem algum tamanho digamos h. E você tem um buffer de pacotesonde os pacotes de entrada são ponderados mantendo ponderado e então este servidor elena verdade multiplex o balde token e o balde vazado todos juntos. A ideia aqui éque se não houver um pacote aqui se não houver um pacote de entrada aqui, então os tokens sãoficando adicionados certo.Então, se não houver nenhum pacote de entrada então o token está sendo adicionado. Então, o momento em que vocêestá recebendo um pacote agora você diz que em uma instância de tempo você está recebendo 10 pacotes edurante esse tempo, você teve cerca de 6 tokens no balde token. Nesse caso o que você podefazer? Você pode transferir imediatamente esses 6 pacotes na saída em vez de enviá-los umpor um. Então, essa é a diferença do balde de vazão e do balde de token, em caso debalde vazado você tem que sempre enviar os pacotes um por um ok.Então, não existe esse conceito de tráfego estourar que mesmo que você não tenha utilizado uma largura de bandaanteriormente, você pode utilizar agora mesmo e enviar uma explosão de tráfego em um momento. Aqui emcaso de depósito de token ele está suportando que em caso de depósito de token há um comprimento máximo de burst. Então, este é o comprimento máximo de arrebagem, portanto, a quantidade máxima de tokens quepode ser gerada naquele balde token. Então, você pode obter uma espécie de tráfego estourado.Então, o tráfego de burst significa dizer que você está fazendo uma regra de fala de tráfego então digamos, os pacotesnão estão lá. Então, você está observando e largando e durante esse tempo os tokens sãoficando inseridos os tokens lógicos estão sendo inseridos no momento em que você conseguiu algum novo pacoteimediatamente. Você pode enviar uma explosão de pacotes por completo e então novamente pode dizerdepois de enviar estas burst de pacotes você pode começar a fazer o regulamento, com base na taxa de geração do token. Assim, você está gerando esse token em tokens b por segundo. Então, essa é a diferençaentre balde de token e balde vazante.Em caso de balde vazante se eu desenhar o mesmo gráfico ele vai parecer algo assim. Então, esseestourado não virá para cá. Então, esse tipo de picos que estamos permitindo em caso de algoritmo de depósito de tokenque chamamos como os dados estouram. Então, essa é a diferença entre o depósito de tokene o balde vazado.
Traffic Policing and Traffic Shaping-Parte 2
Então, a ideia do depósito do token entrou em prática porque em algum momento elaacontece que você não está utilizando a largura de banda.Se você não estiver utilizando a largura de banda então sempre que estiver obtendo alguns dados adicionaisque podem ser de maior prioridade para você. Por isso, em vez de tentar moldar imediatamenteenvie os dados inteiros para o lado do receptor. Assim, para dizer tipo de streaming de vídeo buffered, estetipo de arquitetura é, às vezes, muito útil porque você vai enviar mais dados para a playbuffer, se você enviar mais dados para o buffer play ele obterá dados suficientes e um player de vídeopoderá renderizar mais dados com os dados disponíveis no buffer.Então, voltando a este conceito de token bucket bucket so, como estou mencionando quepacotes recebidos são colocados na fila de pacotes; digamos que a taxa de geração do tokené r tokens por segundo a essa taxa os tokens estão sendo gerados lembre-se que estes tokenssão os tokens token virtual. Então, nós somos apenas você pode pensar no lado de implementaçãono programa você implementou o depósito do token e você está observando quese há um token lá ou o not. Se houver um token então você envia o pacotepara a fila de saída.Então, a taxa de geração do token é r tokens por segundo e o tamanho do balde é b. Agora a taxado tráfego de saída ela é delimitado pela taxa de geração do token você não estará emgeralmente não seremos capazes de superar isso. Mas se você tiver mais dados imediatamente vocêpode enviá-lo mais adiante. Então, a taxa de saída você pode caracterizá-la dessa forma digamos, Pt itdenota sua taxa de entrada de pacotes. Então, esta linha Pt ele denota sua taxa de entrada de pacotese este b mais rt ele denota sua taxa de geração de token ok.Então, se for o caso então sua taxa de saída será mínima de Pt e b mais rt. Assim, sua taxa de saídaserá quando sua taxa de entrada recebida for menor do que esta b mais rt, você pode usarque sempre que ele se tornar nesta seção transversal ele overshoots b mais rt então você envia os dadosa uma taxa de b mais rt. Então, isso realmente te dá a taxa de saída.Agora aqui isso te dá para que este b seja o tamanho do balde de token inicial e este ponto de cruz ea este lado de pacotes. Então, esse lado eu estou mostrando que estamos mostrando pacotes e esse lado nósestamos mostrando tempo. Assim, no lado do pacote este comprimento específico lhe dará o máximo de tamanhos de burst.(Consulte o Tempo do slide: 16:35)Agora, vamos tentar estimar o tamanho máximo de burst. Então, tínhamos Pt como a taxa de entrada de pacotes. Então, podemos apenas escrevê-lo como Y igual a Pt no eixo Y. Por isso, o eixo Y está denotandopacotes que foram recebidos e X eixo que está denotando tempo e este é aquelenúmero acumulativo de pacotes que você está recebendo com relação ao tempo. Escreva-oNúmero acumulativo de pacotes que você está recebendo com relação ao tempo. Então, este é Yigual a Pt. Agora com isso deixe-nos ter a taxa para este balde quebrado. Então, essa linha vermelhadá o balde token. Então, este é o tamanho do balde b e então e então, a notaçãoque utilizamos anteriormente que b mais rt.Então, Y igual a b mais rt. Assim, você está inserindo token em uma taxa de r. Assim, seu número de token acumuladoserá rt. Então, inicialmente você tem número de token inicialmente somosassumindo que o depósito do token está cheio a partir desse ponto que estamos iniciando depois que você éinserindo token em uma taxa de rt. Então, você está obtendo isso a uma taxa da taxa acumulada é Yigual a b mais rt.Agora este ponto em particular a seção transversal na hora T ele vai te dar. Então, isso é igual adigamos T igual a t1 isto lhe dará o tamanho máximo de burst. Agora vamos tentar estimareste tamanho máximo de burst, por que isso lhe dará tamanho máximo de burst neste ponto vocêpode obter os dados de saída máximos. Então, para encontrá-lo fora o que podemos fazer podemos descobrir esta seção transversalidade.Então, apenas no ponto t1, podemos anotar Pt 1 igual a b mais rt1 neste ponto de seção transversaisa partir daí você pode descobrir t1 igual a b por P menos r. Agora colocando esse valor de t em dizerY, você pode colocá-lo em qualquer uma dessa equação você pode descobrir dizer se eu escrevo como Y1 igual aMBS Y1 será Pb por P menos r esta quantidade específica. Então, isso vai dar o tamanho máximo de burstque pode acontecer em caso de um algoritmo de balde de token.Então, com esta estimativa, vamos voltar para nossa discussão. Por isso, dessa forma esse tipo de algoritmo de balde de tokenem contraste com o balde vazado ele está suportando bem a burstância. (Consulte SlideHora: 20:07)Então, aqui está a diferença entre o algoritmo de vazamento de balde de vazão versus token. Por isso,o algoritmo de balde vazado ele suaviza o tráfego, mas não permiteburstiness. Considerando que, o balde token ele suaviza o tráfego e também permita a burstência se houvernão houver tokens de pacotes recebidos são adicionados ao no balde do token e o tráfego de barramentoé permitido até a quantidade de token acumulada.Então, aquele cálculo particular que fizemos anteriormente. Então, nós realmente calculamos a quantidade detoken que pode ser acumulado até este ponto porque depois disso ele vai sua taxa de saídacomo já vimos. Então, se nós desenharmos a taxa de saída sua taxa de saída seguirá esta linha. Então,sempre que o seu Pt for menor que b mais rt. Assim, sua saída O será igual ao mínimo dePt e b mais rt.Então, durante esse tempo você não tinha quantidade suficiente de pacote para tirá-lo. Então, issoé por que aqueles naquele momento aqueles tokens estão ficando acumulados aqui acumulados no balde de token. E neste ponto você atingiu no pico da explosão e então vocêtransferiu os dados nos dados constantes.Então, se eu apenas colocá-los em termos de quantidade de so, aqui mostramos o número acumuladode pacotes, se no eixo y se mostro pacotes por segundo e neste tempo de tipo. Então, o gráficoserá algo assim, sempre que você estiver obtendo o pacote de entrada você irátê-lo então há esta estourada após o burst você será você vai enviá-lo a uma taxa deste rt.Então, aqui você vai enviar a uma taxa de rt esta foi sua taxa de geração de token r você vai enviá-loem uma taxa de rt e aqui você conseguiu esta estourada. Então, esse é o meu tamanho estourado que estimamosaqui.Agora, como você está mencionando que tanto o balde de vazão quanto os algoritmos de balde de tokenpodem ser usados para o traffic shaping. E assim, a diferença que eu mencionei anteriormente quecom esse balde vazante e balde token o que acontece que, em algum momento sua taxa pode irprofunda embora você esteja esperando a taxa média r. Mas se o aplicativo estiver gerandomenor quantidade de dados, ele pode ir para o lado inferior nesse caso para esses dados o que você pode fazerpossivelmente se você quiser uma taxa de smoothed completa da figura original que mostramosinicialmente. Se você quiser dados naquela profundidade particular o que você pode fazer que você pode adicionar um buffer de reprodução adicional.Então, playout buffer é um buffer adicional, que pode ser adicionado na frente do seu shaper de tráfego. Por isso, a ideia do buffer de playout é introduzir um atraso adicional aos pacotesque vêm em primeiro lugar. Então, aqui você teve essa profundidade porque você tinha certos pacotes quevieram mais rápido.Então, você pode introduzir algum atraso para atraso adicional para esses pacotes e para esteadicional de atraso você pode experimentar algo mais parecido com isso. Para algum aplicativomuito rigoroso, em algum momento aplicamos esse tipo de buffer de playout para introduzir o delayadicional.Então, isso tudo é sobre depósito de vazão e o algoritmo do depósito do token em detalhes para garantir otraffic shaping e o policiamento de tráfego. Na próxima aula vamos analisar o tipo diferentede algoritmos de planejamento de tráfego que estão lá aplicando diferentes mecanismos de queuing, como queuing prioritário, queuing de feira ponderada, fila personalizada e outros.Então obrigado a todos por frequentar esta aula.