Loading

Module 1: Transmissão e Programação

Nota de Estudos
Study Reminders
Support
Text Version

Protocolo Datagram do Usuário

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

    +

Protocolo de Datagrama do Usuário
Bem-vindo de volta para o curso em Rede de Computadores e Protocolos da Internet. Assim, na última classe, discutimos sobre o protocolo de controle de transmissão em um TCP e os vários recursosque estão lá no TCP.(Consulte o Tempo do slide: 00:29)Então, nesta aula discutiremos sobre outro protocolo da camada de transporte que não é aquelemuito utilizado como TCP, mas ainda assim muitos dos aplicativos usam um start chamamos como usuárioprotocolo de datagrama ou UDP. Fora o UDP discutiremos outro protocolo que érecentemente desenvolvido pelo Google e gradativamente obtendo popularidade sobre a internet quechamamos como QUIC e que QUIC ele usa esse UDP como o protocolo de camada de transporte subjacente.Então, a diferença básica entre o TCP e UDP é que: UDP realmente é um protocolo muito simplese ele não suporta as funcionalidades que são fornecidas pelo TCP. Assim, como nósvimos que o protocolo TCP ele suporta o estabelecimento de conexão, dados confiáveisentrega, controle de congestionamento de controle de fluxo ou a entrega de pacotes todos esses diferentes recursos, mas para implementar esse tipo de recursos no TCP certamente o protocolo tem uma quantidade significativa de sobrecarrega ou a sinalização overhead do que chamamos no termo de rede.Então, essa sinalização sobre a cabeça é algo assim para fazer o protocolo correto ou paratornar o funcionamento do protocolo correto. Você está enviando alguns dados adicionais para a internet. Assim, por exemplo, para o estabelecimento de conexão e o release de conexão,você precisa enviar ou precisa ter este mecanismo de handtremendo de três vias que étempo consumindo.Então, para cada pacote de dados individuais se você pensar em vários fluxos de ordenação que sãofluindo na rede exatamente como sempre que estiver fazendo navegação na web durante esse tempose você está enviando tais fluxos curtos diversos que significa, mensagens de solicitação HTTPmensagens. E se toda mensagem de resposta de solicitação estiver inserida em uma conexão TCP entãoisso é um problemático. Pois para esta mensagem de resposta de solicitação, você requer três mensagenspara estabelecimento de conexão e três mensagens para fechamento de conexão, portantoque é uma das cabeças sobre o excesso.A segunda sobre a cabeça que vem do controle de fluxo e o algoritmo de controle de congestionamento. Assim, se o protocolo detecta que há uma perda de pacotes você precisa retransmiti-lo.E retransmitir sempre bloquear o fluxo do pacote de dados existente ou os novos pacotes de dados.Por outro lado, se você olhar para o algoritmo de controle de congestionamento, o algoritmo de controle de congestionamentopara fazer o algoritmo de controle de congestionamento distribuído e para suportarmax min equidade. Nós fazemos o protocolo de tal forma que você tem que começar a partir da fase de início lento. Isso significa, você precisa começar a partir de um valor muito baixo da janela do congestionamentoe gradativamente aumentar esse valor para atingir a capacidade porque você não sabeessa capacidade.Agora, se você pensar em um link de alta velocidade nesse próprio link de alta velocidade você está começandoa partir de um valor muito baixo da janela de congestionamento e, em seguida, aplicando o início lento paraatingir no ponto de operação. Mas com isso, se você apenas pensar em seus fluxos são muitocurtos como apenas uma mensagem de resposta de solicitação HTTP, no momento em que o fluxo TCP iráatingir até o ponto operacional a conexão será encerrada porque você transferiusua mensagem de solicitação e resposta para HTTP. E você voltará a iniciar um novo TCP comeste novo conjunto de algoritmo de controle de congestionamento ou o novo conjunto de mecanismo de início lento.Então, por causa deste protocolo o TCP, ele tem essa quantidade significativa de overhead quetorna o protocolo muito lento para implementação prática apesar de suportar uma boa quantidadede confiabilidade e funciona perfeitamente ou funciona corretamente sobre uma rede real. Mas paramuitos do aplicativo, nós não toleramos ou não somos capazes de tolerar ou algum tempo nósnão exigimos esse tipo de serviços adicionais. O que é mais necessário é enviar um dadode alguma forma na outra ponta e, em seguida, apenas analisar os dados.Então, um aplicativo é igual ao seu protocolo DNS ou o protocolo do sistema de nomes de domínio.Então o protocolo DNS para envio de uma solicitação de DNS e a resposta DNS, você nãorequer um estabelecimento de conexão TCP, pois esse vai ser uma cabeça designificativa em vez de você apenas enviar um DNS simplesmente a mensagem DNS. E se a mensagem DNS fornão responder, você certamente terá um tempo limite no lado do remetente você pode novamente solicitarpara o nome de domínio com a próxima mensagem.Então, para isso nós apoiamos esse protocolo de datagrama do usuário ou protocolo UDP na internet. Então,este UDP apenas lhe fornece a entrega de pacotes de ponta a ponta ou em UDP nós a termo como o datagrama; assim, de ponta a ponta na entrega do datagrama. Então, ele doesn ’ t fornecer qualquer um dos serviçoscomo este estabelecimento de conexão, entrega de dados confiável, controle de fluxo e congestionamentocontrole, encomenda entrega todas essas coisas na rede.(Consulte o Tempo do slide: 05:26)Então, estes são os recursos amplos e os usos do TCP. Então, o recurso é que antes de mais nada éum protocolo muito simples. É ou em algum momento dizemos que não é em todo um protocolo da camada de transporte. Ele é apenas como um wrapper em cima da camada IP. Assim, quaisquer que sejam os serviços que estejam sendofornecidos pela camada IP, o mesmo conjunto de serviço é apenas encaminhado para o aplicativo porignorando a funcionalidade da camada de transporte básico. Por isso, UDP funciona como um wrapper em cima dea camada IP, o protocolo é muito rápido, pois você não precisa esperar pela fase inicial lenta do início. Não é necessário aguardar o estabelecimento de conexão e a conexãoencerramento, e você não tem nenhum controle de fluxo e o algoritmo de controle de congestionamento. O próprio protocoloé muito rápido e funcionou bem quando a rede tem uma perda de baixaprobabilidade.Então, os casos de uso de UDP é para fornecer desempenho, você não tem nenhum buffer como o TCP.Então, você pode dar ou suportar um protocolo com entrega mais rápida sempre que o seu link for bom,ou você não se incomoda com a perda de pacotes. E é o tipo de protocolo curto e doce.Então, ele não tem nenhuma sobrecaria. E é adequado para transferência de mensagens curtas exatamente comoo sistema de nomes de domínio.(Consulte o Slide Time: 06:49)Então, como mencionei que UDP é conectivada e não confiável. Então, é só enviar dadospacotes ou datagramas um atrás do outro. Se um datagrama está sendo perdido o servidor nãocuida disso ou o pacote se perde. Então, você não se importa com isso. Assim, se o aplicativose preocupa com a perda de pacotes, o aplicativo aplicará seu próprio mecanismo de confirmaçãoou seu próprio procedimento para manuseio ou recuperação da perda. Então, você apenascriar um datagrama e enviá-lo um atrás do outro. Então, você não tem nenhum estabelecimentode conexão. Você não se incomoda sobre se o servidor está rodando ou não. Você simplesmenteenvia um pacote você não tem nenhum mecanismo de confiabilidade e nenhum mecanismo de confirmação.(Consulte o Slide Time: 07:33)Então, esta é a estrutura do cabeçalho UDP. Então, mais cedo nós olhamos para a estruturado cabeçalho TCP. Então, comparado com o cabeçalho TCP este cabeçalho UDP é bastante simples vocêsó tem quatro campos diferentes a porta de origem, a porta de destino, o comprimento e o checksumque é tudo e então você tem esses dados. Assim, a porta de origem e o destinona porta do servidor, e a porta cliente, o comprimento do pacote que é necessário paradescobre que o quanto de dados está lá no seu datagrama UDP e um campo de checksum paraverifique a correção do pacote.Então, embora a confiabilidade não seja implementada, mas no lado do servidor ou do destino,deseja-se descobrir se o pacote ou o datagrama que você recebeu seque é um datagrama correto ou algo conseguiu algum aconteceu ou alguma coisa ficoucapotou. Então, você quer descobrir isso, então é quando colocamos o campo checksum.Agora, cálculo de soma de verificação em TCP e UDP, portanto, não mencionei que durante a discussãodo TCP apenas guardou para a discussão aqui. Então, esse cálculo de soma de verificação emTCP e UDP é um recurso bacano. Então, como o checksum é calculado ou o que é checksum, osdetalhes do checksum. Discutiremos mais adiante enquanto analisaremos vários erroscódigos de correção no contexto da camada de link de dados, mas apenas para dar uma breve ideia de quechecksum não passa de uma função. Então, você pode pensar em checksum como uma função se. Então,dentro dessa função você está fornecendo a mensagem e então você está obtendo certo valor.Então, seja qual for o valor que você está recebendo, então este C este é o checksum que C você está colocandoaqui. Agora, porque o checksum é de comprimento fixo, você pode pensar nessa função como uma função hash. Sendo assim, qualquer função hash pode ser usada como um checksum, mas idealmente esses IPchecksum ou checksum de internet que aplicamos para transferência de dados de rede. Não é uma função hash complicadacomo nossa função de hash criptográfico tradicional, pois nósnão exigimos que uma forma de propriedade que muito melhor estamos apenas preocupados em obteruma mensagem de tamanho fixo digerir fora da mensagem. Então, é por isso que esse cálculo da internet checksumé bastante simples.E se você for novamente aplicar um hash criptográfico ou uma função hash complicada aqui, elelevará um tempo significativo para computar aquele checksum correspondente, de modo quenós não fazemos o que. Então, nós simplesmente usamos um método simples para fazer o checksum. Então, um método simplescomo o nome sugere na internet o checksum é exatamente como você divide a mensagem inteira em bloco de tamanho fixo e, em seguida, faz com que os completem acompute o checksum, então essa é a ideia básica de checksum da internet que aplicamos aqui.Agora, em checksum da internet, portanto, o procedimento detalhado de checksum da internet e exemplonós ’ ll discutir mais adiante enquanto discutirmos sobre o erro corrigindo código como mencionei apenasantes. Mas afinal esse checksum está lhe dando um código de tamanho fixo que é o C. Agora,sempre que você estiver recebendo esta mensagem no receptor termine o que você fizer o que vocêestiver recebendo com isso recebeu dados, novamente você aplica a mesma função para computar o checksum. E descubra que o que é o checksum que foi transferido com a mensageme o checksum que foi computado no lado do receptor se eles sãoficando correspondidos ou não. Se eles estão ficando correspondidos, isso significa, qualquer que seja o valor foitransferido do lado do remetente, você recebeu isso por um determinado valor.Agora, lembre-se novamente que checksum não é para garantir a integridade de pacotes a partir dos ataques de segurançaou dos ataques externos. É apenas para garantir a integridade do pacote a partir da falha de redeou as falhas do sistema. Assim, sempre que estiver transferindo os dados porque muitos do tempovocê está fazendo uma conversão analógica ou analógica para conversão digital, entãocodificando decodificação de um pacote, você está aplicando a técnica de modulação na camada física. Então, pode acontecer por causa do erro de amostragem ou do erro de quantização algum bitidealmente ou foi um mas que foi capotou para 0 durante esta conversão digital analógica ou os estados de modulação e codificaçãoou alguns bits zero foram captados para 1.Então, só para detectar esses tipos de coisas aplicamos o checksum. Não é para não garantirque o pacote é gratuito ou o pacote foi salvo de algum ataque de segurança baseado nocriptografia ou ponto de vista de segurança de rede. Então, por causa disso então seja qual for ochecksum que você está recebendo no lado do receptor você computa o valor de checksum que temfoi transferido com o pacote se eles correspondem, isso significa, a integridade do pacote obteve fizzpara cima, não houve nenhum erro que tenha sido introduzido durante o processamento de sinal. E vocêrecebeu o datagrama correto que foi enviado pelo remetente. Agora, enquanto computamos o checksumem TCP e UDP; TCP e UDP levam certas coisas em consideração durante ocálculo da soma de verificação.(Consulte o Tempo do slide: 13:02)Então, como dissemos que checksum não é nada além de uma função em onde você está levando uma mensagemna como entrada e você está computando o valor do checksum. Agora, nesta mensagem, portanto,TCP ou UDP, eles colocam o cabeçalho TCP ou UDP mais os dados que você está enviando mais um cabeçalho pseudo. Então, esse pseudo cabeçalho realmente não é transmitido com o pacote, ele éapenas usado para o cálculo do checksum. E uma vez que o checksum é computado quepseudo cabeçalho está sendo eliminado ou que é que fica eliminado.Então, qual é o conteúdo do cabeçalho pseudo, o conteúdo do cabeçalho pseudo é o IP de origem, o IP de destino, depois o campo de protocolo a partir do cabeçalho IP. Então, ele realmentetira certos campos do cabeçalho IP. Assim, todos esses campos de quadro estão vindo do cabeçalho IP. E o quarto são os bits reservados. Então, há 8 bits reservados em IP. Então, aquelesreservou bits do cabeçalho IP. Então, todos esses campos vem do cabeçalho IP de modo quecomo consideramos o pseudo cabeçalho no cálculo do checksum. Mas lembre-se queesse pseudo cabeçalho não é transmitido com o pacote antes de você ter computado o checksum; em seguida, basta colocar o checksum e descartar o cabeçalho pseudo. No receptorfim, o receptor irá construir novamente o pseudo cabeçalho e computar o checksum fazer uma correspondênciacom o checksum recebido e eliminar aquele pseudo cabeçalho.Agora, a coisa é que; qual é o propósito de incluir o pseudo cabeçalho no cálculo da soma de verificação; portanto, este pseudo cabeçalho é incluído no cálculo de soma de verificaçãoapenas para fazer uma validação dupla do IP de origem, IP de destino e um campo de protocolo e um campo de valor reservado. Então, esses campos são muito importantes na perspectiva da transmissãode um pacote porque esses campos realmente ajudam você a identificar a origemcorreta no destino correto.
Protocolo Datagram do Usuário-Parte 2
Então, embora o cabeçalho IP inclua seu próprio campo de checksum,mas este cabeçalho IP altera a soma de verificação em cada camada individual, pois se você olharpara o diagrama de rede você tem esta fonte seguida por vários roteadores de hops eentão finalmente, é o seu destino.Agora, todo roteador eles aplicam o mecanismo de roteamento, eles analisam o cabeçalho IP, elespodem fazer que eles possam alterar o cabeçalho IP e então eles novamente computam o checksum,o checksum do cabeçalho IP e colocá-lo na parte do cabeçalho IP. Então, é por isso que o checksumque está lá no cabeçalho IP eles podem ser alterados sempre que você estiver indode uma camada três hop para outra camada três hop. Então, todos estes são os dispositivos da camada três. Por isso, sempre que você estiver indo de uma camada três hop para outra camada três hopentão as coisas podem ficar alteradas. Mas ao mesmo tempo fazemos uma validação de ponta a pontacom esses protocolos de ponta a ponta.Então, esses protocolos de camada de transporte são basicamente os protocolos de ponta a ponta. Assim, o cabeçalho UDPou o cabeçalho TCP nunca fica alterado na camada inferior da pilha de protocolo ema camada de internet da pilha de protocolo para que o cabeçalho UDP ou o cabeçalho TCP nuncaseja alterado nos roteadores individuais. Então, é por isso que fazemos uma verificação dupla no cabeçalho TCPou no cabeçalho UDP colocando este pseudo cabeçalho no IP de origem, destino IP.Todos estes campos que este roteador intermediário de alguma forma não obtevealterado.Porque, no roteador se você mais adiante discutirá todo o processamento dos roteadores vocêverá que sempre que ele receber um pacote IP, aplica-se o cabeçalho IP, aplica-se o mecanismo de roteamentoEntão novamente adote o cabeçalho IP e envie-o para o link de saída,porque esse processamento da camada IP é feito no nível do roteador. Então, se houver certa inconsistênciaou certas falhas dentro do roteador que podem introduzir um erro para o IP de origemou o campo IP de destino. Então, queremos ter certeza através dessa mudança de integridade noo cabeçalho UDP que nenhum erro desse tipo ocorreu durante a transmissão do segmento de camada de transporteou no TCP ou do datagrama de camada de transporte na UDP. Então, é por isso quevocê coloca o pseudo cabeçalho como uma parte do cálculo da soma de verificação.Mas como mencionei anteriormente novamente repetidamente estou mencionando que esse pseudo cabeçalhoé apenas usado apenas para o cálculo do checksum. E esse pseudo cabeçalho não étransmitido durante a transferência dos dados, e isso é apenas para verificar esta integridade de fim-a-fimda transmissão de dados ok.(Consulte o Slide Time: 18:39)Agora, há um aplicativo múltiplo que usa UDP como você parecia mais cedo, o protocolo DNSo protocolo nome do domínio do domínio. É simples mensagem de resposta de solicitação. Então, nósexigimos mais rápido que o TCP. Então, nós aplicamos UDP lá. Em seguida, este BOOTP ou DHCP, eles sãoo protocolo de configuração da rede. Novamente são curtos o protocolo de mensagens que ajudaa configuração mais rápida dos dispositivos do dispositivo. TFTP, TBL, protocolo de transferência de arquivos ele é um protocolo simples de transferência de arquivo levepara transferir arquivos pequenos. O SNMP, o protocolo de gerenciamento de redeou o simples protocolo de gerenciamento de rede é novamente um simples protocolo UDPque é facilmente cortado através de congestionamento do que o TCP.Então, no TCP, se houver um congestionamento, então o TCP reduzirá a taxa, mas em caso de UDP como elenão cuida do congestionamento, se o pacote vem para o buffer. E se não forbaixado daquele buffer intermediário, eventualmente ele será transmitido para que seja por isso que nósusamos esse UDP em caso de SNMP.Então o protocolo interessante vem que é QUIC, QUIC, conexão de internet UDP quefoi desenvolvido pelo Google há uns dois anos atrás qual é um avanço do protocolo de transporte. Então, ideia por trás de QUIC é superar muitas das deficiências que foramlá no TCP, por causa da fase de início lento, o estabelecimento de conexão para cada fluxo individual de. E em QUIC UDP fornecem um acesso direto ao IP.Então, com a ajuda de UDP, o que o QUIC faz, que ele envia diretamente um pacote via IP, masquaisquer facilidades adicionais como controle de fluxo, controle de congestionamento, confiabilidade, todas estascoisas estão lá, elas são implementadas como uma parte de aplicação com uma ligação segura.  Sempre que você estiver se mudando para uma página diferente, você precisa criar uma conexão TCP diferente.Agora, para cada conexão TCP você exige três vias de handtremor. Então, só para enviar uma mensagem de resposta de solicitação HTTP, você requer três conexão a três viasapertando ao lado do remetente e uma apertada de três a mão durante a conexãofinalização também. Agora, QUIC realmente resolve esse problema dessa maneira. Por isso, em caso deQUIC, durante o handtremendo inicial, sempre que estiver se conectando ao servidor para oprimeiro tempo durante esse tempo você tem que fazer um aperto de mão detalhado. Mas depois disso, você faznão precisa fazer aquele aperto de mão detalhado em vez de usar diretamente oanterior apertando parte a conexão que já foi estabelecida para enviar mais dados.Então, isso funciona desta forma. Então, como eu mencionei que QUIC é um protocolo de criptografia de ponta a pontapor causa disso você exige certa credencial do servidor. Agora,inicialmente aquele cliente não tem esses tipos de credenciais. Então, o cliente configura um envia uminchoate CHLO, cliente CHLO. Quando o cliente diz que este inchoate cliente CHLO que érecebido pelo servidor, e o servidor descobre que o cliente CHLO não tem o certificado de segurança necessário, ele envia uma mensagem de rejeição. E com esta mensagem de rejeição o servidorenvia a credencial de segurança para o cliente.Agora, o cliente tem a credencial de segurança. Com essa credencial de segurança, ele envia um CHLO cliente completo. Agora, aqui o interessante é que, porque o cliente temjá recebeu esta mensagem de rejeição do servidor, o cliente realmente sabe que o servidorestá em execução e o servidor está pronto para aceitar pacotão. Assim, o cliente pode começar a enviarsolicitação criptografada. Agora, se o servidor desejar enviar a mensagem do lado do servidor parao lado do cliente, isso significa as respostas, o servidor envia um CHLO de servidor inicialmente. Depois deo CHLO do servidor é enviado, porque o servidor já recebeu a credencial clientedeste cliente CHLO, ele começa a enviar as respostas criptografadas do lado do servidor. Então,você realmente requer 1-RTT aqui.Agora, uma vez que esta conexão foi estabelecida, então para as próximas conexões contínuasentre o mesmo conjunto de servidor cliente, você não requer este handshake 1-RTT em vez devocê requer um aperto de mão 0-RTT. Isso significa, você já recebeu as credenciais do servidor, pois já recebeu as credenciais do servidor. Você pode começar comeste CHLO cliente completo. E você sabe que o servidor está em execução porque ele temjá recebeu certos pacotes. Assim, você pode começar a enviar a solicitação criptografada. E seo servidor quiser enviar dados para o cliente, servidor inicie com um CHLO do servidor e, em seguida, asrespostas criptografadas. Esta não é apenas uma resposta criptografada, ela pode enviar várias respostasou (Consulte o Tempo: 26:06) vários pedidos simultaneamente.Agora, em algum momento pode acontecer que bem durante este tempo, pode acontecer que a credencial do servidortenha sido alterada.(Consulte o Tempo do slide: 26:15)Se a credencial do servidor foi alterada, quando o servidor recebeu este cliente completoCHLO, o servidor envia mensagem de rejeição com a credencial de servidor atualizado. Agora, comesta credencial de servidor atualizado, o cliente pode reiniciar a conexão e começar a enviaro pedido. Assim, sempre que a credencial do servidor é alterada, você requer um aperto de mão 1-RTT. E no momento inicial você exige um aperto de mão 1-RTT; depois de no entre vocêsempre pode usar o aperto de mão 0-RTT para transferir os pacotes ok.(Consulte o Tempo do slide: 26:49)Outro recurso interessante do QUIC é apoiar o streaming multi. E suportaalgo chamado chefe de linha bloqueando protocolo gratuito. Vou chegar a esse ponto do que ésignificar por cabeça de bloqueio de linha em um par de minutos. Então, o que acontece no HTTP 1,1 quevocê pode ter vários fluxos TCP um após outro e para com este múltiplos fluxos TCPvocê pode enviar múltiplos com todo fluxo TCP você pode enviar várias mensagens de respostarespostas no entre o cliente e o servidor.Mas, porque você está tendo esses múltiplos fluxos TCP em paralelo para cada fluxo individual, você deverá ter este estabelecimento de conexão e todo fluxo TCP iráatravés da fase de início lento. Então, esse é o overhead para HTTP 1,1, então é por isso que emHTTP 2 ou algum tempo que foi uma proposta anterior do Google, eles chamam aquele protocolo particular decomo SPDY. Por isso, nesse protocolo específico, você pode multiplex múltiplos fluxosjuntos.Então, aqui você está combinando todos esses fluxos juntos e tem uma única conexão TCPentre o servidor e um cliente. Por isso, aqui todos esses fluxos estão ficando multiplexados para um fluxo único. E esse fluxo múltiplo é enviado para o cliente. Por isso, neste caso você tem um problemachamado chefe de bloqueio de linha. O que é isso? Digamos que a natureza do TCP é que se elereceber um pacote out of order, então ele colocou que fora de pacote de pedido no buffer einiciar o envio de reconhecimentos duplicados. Mas se ele não receber em pacote de pedidos,então ele não enviará o pacote para o aplicativo.Agora, aqui sempre que estiver combinando múltiplos fluxos juntos o que acontece, mesmo queum único pacote se perca, por causa desse pacote único perdido toda essa conexão TCP será bloqueada e qual será, por sua vez, bloquear todos os fluxos decertos fluxos estão recebendo no buffer.(Consulte o Tempo do slide: 29:01)Então, porque você tem uma única conexão, diga-se que assumir pacote vermelho se perdeu. E este é o fluxocorresponde ao pacotaço vermelho. Estes são os fluxos correspondem aos pacotes azuise aos pacotes pretos. Mesmo que você esteja recebendo pacotes azuis e os pacotes black, porque você tem uma única conexão TCP, a conexão TCP não enviaráaqueles pacotes para o fluxo correspondente.Então, esses fluxos também serão bloqueados. Então, isso é chamado de chefe de bloqueio de linha. Agora,QUIC resolve este cabeçote de bloqueio de linha usando conexão UDP. Por isso, a conexão UDPnão tem esse problema de bloqueio devido à reordenação. Então, UDP simplesmentepassa o pacote para os fluxos. E então os fluxos tomam conta do próprio protocolo QUICtoma conta de enviar o pacote para os fluxos individuais. E mantém o controle de fluxo sábio de fluxoe um algoritmo de controle de congestionamento.Então, eu não estou indo para o controle de fluxo e o algoritmo de controle de congestionamento de QUIC emdetalhe. Se você estiver interessado pode consultar o rascunho específico ou o SIGCOMM (Consulte oTempo: 29:53) 2017 papel. Outro recurso interessante em QUIC é que o TCP usa este reconhecimento duplicado, mas QUIC não usa a confirmação duplicada.Mesmo para uma retransmissão, ele designa um novo número de sequência para o pacote. Então, porqueos pacotes são basicamente transmitidos sobre UDP, QUIC não é um protocolo orientado a stream;ele não usa o número de sequência de bytes em vez de usar o número da sequência de pacotes parasimplicidade. E para cada pacote, isso significa o pacote original assim como o pacote retransmitido, ele coloca um novo número de sequência, então é por isso que você não tem esse problemade número de sequência duplicado e bloqueio devido a esta duplicataconfirmações.Então, estes são poucos dos recursos de QUIC e este protocolo QUIC está gradativamente ficando a popularidadena internet, muitos dos serviços como YouTube ou Google Drive que évindo do Google. O Google já iniciou uma implementação de QUIC, e a versão atualde browsers baseados em cromo, eles têm a implementação de QUIC. Então, muitosdos protocolos recentes começaram a usar QUIC, aplicativos recentes são principalmente todos os aplicativosdo Google eles começaram a usar QUIC. Sendo assim, possivelmente QUIC é o futuro protocoloque vai substituir a entrega de dados baseada em TCP padrão. E durante esseo tempo UDP na verdade vai ser mais importante em comparação com o TCP. Então isso possivelmente éo futuro da internet, então é tudo sobre o protocolo da camada de transporte um tipo diferente de protocolo da camada de transporte.No próximo casal de classes, faremos uma coisa prática. Olhamos para este conceito de programação de soquetee programação de rede. Veremos que com a ajuda da programação do soquete, como você pode acessar um protocolo de camada de transporte específico e você podeiniciar a transmissão de dados. E você pode escrever o seu próprio aplicativo utilizando estetipo diferente de protocolo da camada de transporte. Veremos certa demonstração disso. E então nósnos mudaremos para a próxima camada da pilha de protocolo que é a camada de internet ou a camada de rededa pilha de protocolos.Obrigado a todos por participarem desta aula. Veja você de novo.