Podcast
Questions and Answers
A multiplexação e demultiplexação ocorrem apenas na camada de transporte.
A multiplexação e demultiplexação ocorrem apenas na camada de transporte.
False (B)
O protocolo UDP adiciona funcionalidade para lidar com controle de congestionamento.
O protocolo UDP adiciona funcionalidade para lidar com controle de congestionamento.
False (B)
Em um cenário de transporte confiável de dados, tanto o remetente quanto o receptor mantém informações detalhadas de "estado" um sobre o outro.
Em um cenário de transporte confiável de dados, tanto o remetente quanto o receptor mantém informações detalhadas de "estado" um sobre o outro.
False (B)
Com o protocolo TCP, é possivel ter uma comunicação bidirecional de dados simultaneamente.
Com o protocolo TCP, é possivel ter uma comunicação bidirecional de dados simultaneamente.
O objetivo do checksum UDP é detectar erros no segmento transmitido.
O objetivo do checksum UDP é detectar erros no segmento transmitido.
Um host usa endereços IP e números de porta para direcionar o segmento ao soquete apropriado.
Um host usa endereços IP e números de porta para direcionar o segmento ao soquete apropriado.
A multiplexação no remetente refere-se ao processo de entrega de segmentos recebidos ao soquete correto.
A multiplexação no remetente refere-se ao processo de entrega de segmentos recebidos ao soquete correto.
O UDP adiciona confiabilidade e controle de congestionamento ao protocolo IP.
O UDP adiciona confiabilidade e controle de congestionamento ao protocolo IP.
O protocolo TCP torna possível que aplicativos da Internet enviem entregas não confiáveis e não ordenadas de mensagens.
O protocolo TCP torna possível que aplicativos da Internet enviem entregas não confiáveis e não ordenadas de mensagens.
O bit de checksum no cabeçalho UDP é usado para detecção de erros.
O bit de checksum no cabeçalho UDP é usado para detecção de erros.
Em uma rede de computadores, todos os protocolos precisam ter um estado de conexão.
Em uma rede de computadores, todos os protocolos precisam ter um estado de conexão.
Os protocolos da camada de transporte fornecem comunicação lógica entre os hosts.
Os protocolos da camada de transporte fornecem comunicação lógica entre os hosts.
A multiplexação e a demultiplexação são alcançadas usando valores de campo de cabeçalho de segmento e datagrama.
A multiplexação e a demultiplexação são alcançadas usando valores de campo de cabeçalho de segmento e datagrama.
No transporte de dados confiável, a quantidade de complexidade do transporte dependerá das características de confiabilidade do canal.
No transporte de dados confiável, a quantidade de complexidade do transporte dependerá das características de confiabilidade do canal.
O handshake bidirecional é sempre bem-sucedido nas redes.
O handshake bidirecional é sempre bem-sucedido nas redes.
No controle de congestionamento TCP AIMD, a taxa de envio aumenta aditivamente e diminui multiplicativamente.
No controle de congestionamento TCP AIMD, a taxa de envio aumenta aditivamente e diminui multiplicativamente.
UDP é um protocolo sem conexão.
UDP é um protocolo sem conexão.
A função de um handshake de aperto de māo two-way é crucial para garantir um sistema de comutação de pacotes confiável.
A função de um handshake de aperto de māo two-way é crucial para garantir um sistema de comutação de pacotes confiável.
O recebimento de ACKs duplicados pode indicar perda de segmentos.
O recebimento de ACKs duplicados pode indicar perda de segmentos.
O TCP oferece garantias de largura de banda e atraso.
O TCP oferece garantias de largura de banda e atraso.
Os protocolos de camada de transporte fornecem comunicação lógica entre hosts.
Os protocolos de camada de transporte fornecem comunicação lógica entre hosts.
O protocolo TCP provê reliable, in-order e congestion control entrega de dados entre host.
O protocolo TCP provê reliable, in-order e congestion control entrega de dados entre host.
O checksum UDP oferece proteção consistente contra erros de bit.
O checksum UDP oferece proteção consistente contra erros de bit.
O UDP envia os dados o mais rápido possível, sem se preocupar com as condições de congestionamento da rede.
O UDP envia os dados o mais rápido possível, sem se preocupar com as condições de congestionamento da rede.
Há suporte inerente para comunicaçāo multicast no protocolo TCP.
Há suporte inerente para comunicaçāo multicast no protocolo TCP.
Em um protocolo stop-and-wait, pode-se melhorar a utilização do remetente com o pipelining.
Em um protocolo stop-and-wait, pode-se melhorar a utilização do remetente com o pipelining.
A multiplexação na camada de transporte permite que vários aplicativos compartilhem a mesma conexão de rede.
A multiplexação na camada de transporte permite que vários aplicativos compartilhem a mesma conexão de rede.
Se os checksums do remetente e do receptor forem distintos, pode-se dizer que não houve erro na transmissão.
Se os checksums do remetente e do receptor forem distintos, pode-se dizer que não houve erro na transmissão.
O protocolo UDP torna o controle de erro opcional.
O protocolo UDP torna o controle de erro opcional.
As acōes dos protocolos de transporte acontecem somente nos sistemas intermediários situados ao longo do caminho de comunicaçāo de pontaa-ponto.
As acōes dos protocolos de transporte acontecem somente nos sistemas intermediários situados ao longo do caminho de comunicaçāo de pontaa-ponto.
Em TCP, a função do timer dentro da camada de remetente é, evitar que ele fique em espera pelo ACK toda vez que um pacote é enviado.
Em TCP, a função do timer dentro da camada de remetente é, evitar que ele fique em espera pelo ACK toda vez que um pacote é enviado.
O tamanho do header do protocolo UDP é o mesmo do protocolo TCP.
O tamanho do header do protocolo UDP é o mesmo do protocolo TCP.
O handshake de duas vias é mais confiável em comparação com o handshake de três vias, porque é mais sincronizado.
O handshake de duas vias é mais confiável em comparação com o handshake de três vias, porque é mais sincronizado.
Em congestionamentos, a eficiência se reduz quando é necessário descarregar dados corrompidos, ao invés de dados viáveis.
Em congestionamentos, a eficiência se reduz quando é necessário descarregar dados corrompidos, ao invés de dados viáveis.
Devido a sua natureza, o protocolo UDP pode ser chamado de 'protocolo com garantia de entrega'.
Devido a sua natureza, o protocolo UDP pode ser chamado de 'protocolo com garantia de entrega'.
Em TCP, um valor de intervalo de timeout maior incentiva mais retransmissōes prematuras.
Em TCP, um valor de intervalo de timeout maior incentiva mais retransmissōes prematuras.
O User Datagram Protocol dá aos aplicativos controle direto sobre como os dados são enviados pela rede, mantendo ainda o caráter orientado a conexāo do TCP.
O User Datagram Protocol dá aos aplicativos controle direto sobre como os dados são enviados pela rede, mantendo ainda o caráter orientado a conexāo do TCP.
O número de sequência TCP é o tamanho do datagrama.
O número de sequência TCP é o tamanho do datagrama.
Tanto o TCP quanto o UDP não podem usar checagem de soma para descobrir se dados foram corrompidos.
Tanto o TCP quanto o UDP não podem usar checagem de soma para descobrir se dados foram corrompidos.
A demultiplexação sem conexão depende do uso do número da porta de destino.
A demultiplexação sem conexão depende do uso do número da porta de destino.
A camada de transporte é responsável pela comunicação física entre diferentes hosts.
A camada de transporte é responsável pela comunicação física entre diferentes hosts.
O objetivo da camada de transporte é multiplexar e demultiplexar dados entre aplicações.
O objetivo da camada de transporte é multiplexar e demultiplexar dados entre aplicações.
UDP oferece transporte confiável orientado à conexão.
UDP oferece transporte confiável orientado à conexão.
O TCP oferece controle de congestionamento e fluxo, enquanto o UDP não.
O TCP oferece controle de congestionamento e fluxo, enquanto o UDP não.
A camada de rede fornece comunicação lógica entre hosts, e a camada de transporte fornece comunicação lógica entre processos.
A camada de rede fornece comunicação lógica entre hosts, e a camada de transporte fornece comunicação lógica entre processos.
Em analogia com o protocolo household, a camada de transporte seria Ann e Bill (que fazem demultiplexing), enquanto que internet seria o serviço postal.
Em analogia com o protocolo household, a camada de transporte seria Ann e Bill (que fazem demultiplexing), enquanto que internet seria o serviço postal.
Um sender da camada de transporte recebe mensagens de Network e as divide em segmentos.
Um sender da camada de transporte recebe mensagens de Network e as divide em segmentos.
A multiplexação ocorre no receiver, onde os dados são tratados.
A multiplexação ocorre no receiver, onde os dados são tratados.
A demultiplexação no receiver usa informações do cabeçalho para entregar segmentos para o socket correto.
A demultiplexação no receiver usa informações do cabeçalho para entregar segmentos para o socket correto.
Em UDP, datagramas com o mesmo destination port serão direcionados para diferentes sockets, independentemente dos seus endereços IP de origem.
Em UDP, datagramas com o mesmo destination port serão direcionados para diferentes sockets, independentemente dos seus endereços IP de origem.
Sockets TCP são identificados por uma tupla-5.
Sockets TCP são identificados por uma tupla-5.
Um servidor web pode suportar múltiplos sockets TCP simultaneamente.
Um servidor web pode suportar múltiplos sockets TCP simultaneamente.
O UDP faz uso de checksums no header e assim consegue corrigir os erros detectados.
O UDP faz uso de checksums no header e assim consegue corrigir os erros detectados.
Um sender UDP passa um segment para a camada IP.
Um sender UDP passa um segment para a camada IP.
Um objetivo para o checksum é detectar erros (ex: flipped bits) em segments transmitidos corretamente.
Um objetivo para o checksum é detectar erros (ex: flipped bits) em segments transmitidos corretamente.
Em UDP, o campo de length contém o tamanho do header do segment.
Em UDP, o campo de length contém o tamanho do header do segment.
O protocolo UDP provê detecção de erros mas não garante confiabilidade.
O protocolo UDP provê detecção de erros mas não garante confiabilidade.
Se os números de checksum nos headers dos sender e receiver forem iguais, então não ocorreu nenhum bit flip.
Se os números de checksum nos headers dos sender e receiver forem iguais, então não ocorreu nenhum bit flip.
Um protocolo de transmissão de dados confiável (rdt) depende das características do implementation, e não do abstraction.
Um protocolo de transmissão de dados confiável (rdt) depende das características do implementation, e não do abstraction.
rdt_send
é chamada pela aplicação e passa os dados e o protocolo no receiver entrega os dados para a camada Application
via deliver_channel()
.
rdt_send
é chamada pela aplicação e passa os dados e o protocolo no receiver entrega os dados para a camada Application
via deliver_channel()
.
No rdt1.0
, a camada na qual o protocolo está rodando é completamente confiável, e nem os bits flipam nem é possível perder packets.
No rdt1.0
, a camada na qual o protocolo está rodando é completamente confiável, e nem os bits flipam nem é possível perder packets.
Em rdt2.0
, os acknowledgements (ACKs) permitem que o receiver notifique o sender de que os dados foram entregues corretamente.
Em rdt2.0
, os acknowledgements (ACKs) permitem que o receiver notifique o sender de que os dados foram entregues corretamente.
A solicitação de retransmissão por erro (NAK) permite tanto pedir retransmissões por bits corrompidos quanto por sinal de out-of-order.
A solicitação de retransmissão por erro (NAK) permite tanto pedir retransmissões por bits corrompidos quanto por sinal de out-of-order.
Diferente do rdt1.0
, o rdt2.0
possui 2 FSMs diferentes para sender e receiver.
Diferente do rdt1.0
, o rdt2.0
possui 2 FSMs diferentes para sender e receiver.
Enquanto que o checksum protege contra perda de pacotes, o número de sequência impede o receiver de processar a mesma mensagem duas vezes
Enquanto que o checksum protege contra perda de pacotes, o número de sequência impede o receiver de processar a mesma mensagem duas vezes
Rdt2.2 provê a mesma funcionalidade do Rdt2.1 mas faz uso apenas de acknowlegdments (ACKs).
Rdt2.2 provê a mesma funcionalidade do Rdt2.1 mas faz uso apenas de acknowlegdments (ACKs).
Em canais propensos a perdas e erros, um sender espera por tempo indeterminado para retransmitir um pacote com error.
Em canais propensos a perdas e erros, um sender espera por tempo indeterminado para retransmitir um pacote com error.
Em um protocolo de stop-and-wait, o sender pode enviar packets continuamente.
Em um protocolo de stop-and-wait, o sender pode enviar packets continuamente.
Pipelining permite apenas controle de erros aprimorados; a taxa de transferência não se beneficia.
Pipelining permite apenas controle de erros aprimorados; a taxa de transferência não se beneficia.
No protocolo Go-Back-N (GBN), O receiver envia ACKs cumulativos.
No protocolo Go-Back-N (GBN), O receiver envia ACKs cumulativos.
A camada de transporte fornece comunicação lógica entre processos de aplicação em diferentes redes.
A camada de transporte fornece comunicação lógica entre processos de aplicação em diferentes redes.
O protocolo UDP oferece entrega confiável e ordenada de dados.
O protocolo UDP oferece entrega confiável e ordenada de dados.
O multiplexado no remetente manipula dados de vários sockets e adiciona um cabeçalho de transporte.
O multiplexado no remetente manipula dados de vários sockets e adiciona um cabeçalho de transporte.
No demultiplexado sem conexão, datagramas IP/UDP com o mesmo porto de destino, mas com diferentes endereços IP de origem/números de porto, serão direcionados para o mesmo socket no anfitrião de receção.
No demultiplexado sem conexão, datagramas IP/UDP com o mesmo porto de destino, mas com diferentes endereços IP de origem/números de porto, serão direcionados para o mesmo socket no anfitrião de receção.
No TCP os sockets são identificados pelo endereço IP do remetente.
No TCP os sockets são identificados pelo endereço IP do remetente.
O UDP (User Datagram Protocol) é conhecido por estabelecer um handshake entre o emissor e o destinatário.
O UDP (User Datagram Protocol) é conhecido por estabelecer um handshake entre o emissor e o destinatário.
Quando um host que recebe recebe um segmento UDP, este examina o número da porta origem para encaminhar o segmento para o socket correto.
Quando um host que recebe recebe um segmento UDP, este examina o número da porta origem para encaminhar o segmento para o socket correto.
Em rdt1.0, assume-se que o canal subjacente seja não confiável, o que significa que os dados podem ser perdidos ou corrompidos durante a transmissão.
Em rdt1.0, assume-se que o canal subjacente seja não confiável, o que significa que os dados podem ser perdidos ou corrompidos durante a transmissão.
Checksums, números de sequência e ACKs são todos os que são necessários para a fiabilidade dos dados, mesmo na presença de erros de bits e perda de pacotes.
Checksums, números de sequência e ACKs são todos os que são necessários para a fiabilidade dos dados, mesmo na presença de erros de bits e perda de pacotes.
ACKs negativos (NAKs) permitem ao recetor indicar explicitamente ao remetente se um pacote foi recebido com sucesso, simplificando o processo de retransmissão.
ACKs negativos (NAKs) permitem ao recetor indicar explicitamente ao remetente se um pacote foi recebido com sucesso, simplificando o processo de retransmissão.
Em protocolos de transferência de dados confiáveis, a complexidade do protocolo é independente das características do canal não confiável subjacente.
Em protocolos de transferência de dados confiáveis, a complexidade do protocolo é independente das características do canal não confiável subjacente.
O TCP usa um temporizador de contagem regressiva para interromper após um tempo "razoável" caso um ACK não seja recebido.
O TCP usa um temporizador de contagem regressiva para interromper após um tempo "razoável" caso um ACK não seja recebido.
Com a técnica de Pipelining, dados de vários destinos são manipulados.
Com a técnica de Pipelining, dados de vários destinos são manipulados.
No protocolo 'Go-Back-N', se um pacote for perdido, a receção ignora todos os pacotes subsequentes até que o pacote perdido chegue.
No protocolo 'Go-Back-N', se um pacote for perdido, a receção ignora todos os pacotes subsequentes até que o pacote perdido chegue.
No 'Repetir Seletivo', o remeter só tempos dados fora ou dados retransmite para chegar.
No 'Repetir Seletivo', o remeter só tempos dados fora ou dados retransmite para chegar.
O somatório do checksum (soma complemento) complementa o somatório de um segmento, e também inclui endereços IP de remetentes e recebedores e cabeçalhos em seu cálculo.
O somatório do checksum (soma complemento) complementa o somatório de um segmento, e também inclui endereços IP de remetentes e recebedores e cabeçalhos em seu cálculo.
O congestionamento ocorre quando muitas fontes estão enviando poucos dados lentamente na rede.
O congestionamento ocorre quando muitas fontes estão enviando poucos dados lentamente na rede.
A camada de transporte impede a multiplexagem/demultiplexagem.
A camada de transporte impede a multiplexagem/demultiplexagem.
O TCP garante que os dados sejam entregues em qualquer ordem, de acordo com o quão adequado que é.
O TCP garante que os dados sejam entregues em qualquer ordem, de acordo com o quão adequado que é.
UDP é adequado para aplicações tolerantes a perdas ou com taxas sensíveis.
UDP é adequado para aplicações tolerantes a perdas ou com taxas sensíveis.
Flashcards
Objetivo da Camada de Transporte
Objetivo da Camada de Transporte
Entenda os princípios dos serviços da camada de transporte e aprenda sobre os protocolos da camada de transporte da Internet.
Serviços de Transporte
Serviços de Transporte
Fornece comunicação lógica entre processos de aplicação em diferentes hosts.
Ações de protocolos na camada de transporte
Ações de protocolos na camada de transporte
Quebra mensagens de aplicação em segmentos e os passa para a camada de rede.
Função do receptor
Função do receptor
Signup and view all the flashcards
Protocolos de transporte da Internet
Protocolos de transporte da Internet
Signup and view all the flashcards
TCP
TCP
Signup and view all the flashcards
UDP
UDP
Signup and view all the flashcards
Analogia com a camada de transporte
Analogia com a camada de transporte
Signup and view all the flashcards
Função da camada de rede
Função da camada de rede
Signup and view all the flashcards
Função da camada de transporte
Função da camada de transporte
Signup and view all the flashcards
Multiplexação no remetente:
Multiplexação no remetente:
Signup and view all the flashcards
Demultiplexação no receptor
Demultiplexação no receptor
Signup and view all the flashcards
Datagramas
Datagramas
Signup and view all the flashcards
Segmentos
Segmentos
Signup and view all the flashcards
Especificação de socket
Especificação de socket
Signup and view all the flashcards
Criação de um datagrama
Criação de um datagrama
Signup and view all the flashcards
Recebimento de um host UDP
Recebimento de um host UDP
Signup and view all the flashcards
Demultiplexação TCP
Demultiplexação TCP
Signup and view all the flashcards
Componentes do socket TCP
Componentes do socket TCP
Signup and view all the flashcards
Usos do UDP
Usos do UDP
Signup and view all the flashcards
Objetivo do checksum UDP
Objetivo do checksum UDP
Signup and view all the flashcards
Função do remetente UDP
Função do remetente UDP
Signup and view all the flashcards
Checksum
Checksum
Signup and view all the flashcards
Função do receptor UDP
Função do receptor UDP
Signup and view all the flashcards
Demultiplexação sem conexão
Demultiplexação sem conexão
Signup and view all the flashcards
Study Notes
Claro, aqui estão suas anotações de estudo:
Visão Geral da Camada de Transporte
- Estudar os princípios por trás dos serviços da camada de transporte é fundamental.
- Os serviços incluem multiplexação, demultiplexação, transferência confiável de dados, controle de fluxo e controle de congestionamento.
- O objetivo inclui aprender protocolos de transporte da Internet, como UDP (transporte sem conexão), TCP (transporte confiável orientado à conexão) e controle de congestionamento TCP.
Roteiro do Capítulo
- Este capítulo irá tratar de serviços de camada de transporte.
- Serão explorados multiplexação e demultiplexação.
- UDP: transporte sem conexão
- Os princípios de transferência confiável de dados têm de ser considerados.
- TCP é o transporte orientado à conexão.
- Os princípios de controle de congestionamento serão investigados.
- O controle de congestionamento TCP também será considerado.
- Finalmente, a evolução da funcionalidade da camada de transporte será considerada.
Serviços e Protocolos de Transporte
- Os serviços de transporte fornecem comunicação lógica entre processos de aplicação executados em diferentes hosts.
- Os protocolos de transporte atuam nos sistemas finais.
- O remetente divide as mensagens do aplicativo em segmentos e os transmite para a camada de rede.
- O receptor remonta os segmentos em mensagens e as transmite para a camada de aplicação.
- Dois protocolos de transporte estão disponíveis para aplicações da Internet: TCP e UDP.
- A camada de rede fornece comunicação lógica entre hosts.
- A camada de transporte fornece comunicação lógica entre processos.
- A camada de transporte depende e aprimora os serviços da camada de rede.
Analogia Familiar: Camadas de Transporte vs. Rede
- Considere o caso de 12 crianças na casa de Ann enviando cartas para 12 crianças na casa de Bill.
- Os hosts são paralelos para casas.
- Os processos são paralelos para crianças.
- As mensagens de aplicativos são paralelas para letras em envelopes.
- O protocolo de transporte é análogo a Ann e Bill, que compartilham as cartas para os irmãos em casa.
- O protocolo da camada rede é paralelo ao serviço postal.
Ações da Camada de Transporte
- O remetente recebe uma mensagem da camada de aplicação.
- As ações do remetente incluem determinar os valores dos campos de cabeçalho do segmento e criar segmentos com as informações.
- Em seguida, passa-se o segmento para o IP.
- O receptor recebe o segmento do IP.
- As ações do receptor incluem verificar os valores do cabeçalho e extrair a mensagem da camada de aplicação.
- O receptor então demultiplexa a mensagem para o aplicativo através de um socket.
Protocolos de Transporte da Internet
- Existem dois protocolos principais de transporte da Internet: TCP e UDP.
Protocolo de Controle de Transmissão (TCP)
- TCP oferece entrega confiável e ordenada.
- Inclui controle de congestionamento e controle de fluxo.
- TCP requer configuração de conexão.
Protocolo de Datagrama do Usuário (UDP)
- UDP oferece entrega não confiável e não ordenada.
- É uma extensão simples do chamado IP de "melhor esforço".
- Os serviços que não estão disponíveis incluem garantias de atraso e largura de banda.
Mapeamento: Capítulo 3: Roteiro
- Serviços de camada de transporte
- Multiplexação e demultiplexação
- transporte sem conexão: UDP
- Princípios de transferência confiável de dados
- Transporte orientado à conexão: TCP
- Princípios de controle de congestionamento
- controle de congestionamento TCP
- Evolução da funcionalidade da camada de transporte
Multiplexação e Demultiplexação
- A multiplexação controla os dados de vários sockets e adiciona cabeçalhos de transporte posteriormente usados para demultiplexação no lado do remetente.
- A demultiplexação usa informações de cabeçalho para entregar segmentos recebidos ao socket correto no lado do receptor.
Operação de Multiplexação e Demultiplexação
- Vários processos (P1, P2, P3, P4) usam sockets localizados nas camadas de aplicação dos hosts que se comunicam.
- No sistema final do remetente, a multiplexação trata os dados recebidos dos vários sockets.
- Em seguida, os dados são passados para a camada de transporte.
- Na camada de transporte, o cabeçalho é adicionado aos dados.
- O pacote é então passado para a camada de rede.
- No sistema final do receptor, a demultiplexação usa as informações do cabeçalho para entregar os segmentos recebidos ao socket correto.
Como Funciona a Demultiplexação
- Um host recebe datagramas IP.
- Cada datagrama tem endereço IP de origem e endereço IP de destino.
- Cada datagrama transporta um segmento da camada de transporte.
- Cada segmento tem porta de origem e porta de destino.
- O host usa endereços IP e números de porta para direcionar o segmento para o socket apropriado.
Demultiplexação Sem Conexão
- Ao criar um socket, é necessário especificar a porta local do host.
DatagramSocket mySoket1 = new DatagramSocket (12534);
- Ao criar um datagrama para enviar para um socket UDP, é preciso especificar:
- Endereço IP de destino.
- Porta de destino.
- Ao receber, o host verifica o número da porta de destino no segmento.
- O segmento UDP é direcionado para o socket com essa porta.
- Os datagramas IP/UDP com a mesma porta de destino, mas diferentes endereços IP de origem e/ou números de porta de origem, são enviados para o mesmo socket no host receptor.
Demultiplexação Conectada à Conexão
- Um socket TCP é identificado por um 4-tuple:
- Endereço IP de origem
- Número da porta de origem
- Endereço IP de destino
- Número da porta de destino
- O receptor usa os 4 valores do 4-tuple para direcionar o segmento para o socket adequado.
- Um servidor deve dar suporte a vários sockets TCP simultâneos:
- Cada socket é identificado por seu próprio 4-tuple.
- Cada socket é associado a um cliente de conexão diferente.
Demux Conectado Orientado à Conexão: Exemplo
- Servidor com endereço IP B que suporta aplicativos HTTP.
- Os clientes com endereços IP A e C estão visualizando a página da web do servidor.
- O servidor tem três sockets:
- Um para o aplicativo P1 e dois para aplicativos HTTP P4 e P5.
- Os três segmentos, todos destinados ao endereço IP B e à porta de destino 80, são demultiplexados para sockets diferentes.
Resumo
- Multiplexação e demultiplexação são baseadas em valores de campo de cabeçalho de segmento e datagrama.
- UDP realiza demultiplexação usando o número da porta de destino (apenas).
- TCP realiza demultiplexação usando um 4-tuple: endereços IP de origem e destino e números de porta.
- A multiplexação e demultiplexação acontece em todas as camadas.
Transporte Sem Conexão: UDP
- UDP é um protocolo de transporte da Internet "sem frescuras", "ossos nus".
- Ele oferece um serviço de "melhor esforço".
- Os segmentos UDP podem ser perdidos.
- Eles podem ser entregues fora de ordem para o aplicativo.
- UDP sem conexão:
- Sem troca entre o remetente e o receptor UDP.
- Cada segmento UDP é tratado independentemente dos outros.
Por Que Existe um UDP?
- A configuração de conexões (TCP) adiciona atraso RTT.
- UDP é simples: sem estado de conexão no remetente e no receptor.
- O tamanho do cabeçalho é menor.
- Nenhum controle de congestionamento (avançar a toda velocidade!)
- Pode funcionar na presença de um forte congestionamento.
Onde Usar UDP?
- Aplicações de streaming multimídia (tolerante a perdas, sensível à velocidade)
- DNS
- SNMP
- HTTP/3
- Se for necessária uma transferência confiável via UDP, adicione a confiabilidade necessária na camada de aplicação (por exemplo HTTP/3).
- É preciso igualmente adicionar o controle de congestionamento na camada da aplicação.
Ações da Camada de Transporte UDP
- No envio SNMP, você recebe uma mensagem da aplicação. Determina os valores dos campos do header do segmento UDP e criar um segmento UDP
- Depois, passa-se o segmento para IP.
- No recebimento, se recebe o segmento do IP, é verificado o valor do header de checksum do UDP
- Então é extraida a mensagem de camada da aplicação e demultiplexar a mensagem para a aplicação via socket.
Cabeçalho do segmento UDP
- O cabeçalho UDP tem portas de origem e destino (cada campo tem 16 bits).
- O comprimento UDP (16 bits)
- Checksum UDP (16 bits)
- A aplicação de dados (payload) são a parte dos dados do UDP que é o conteúdo propriamente dito.
UDP Checksum
- O objetivo do checksum é detectar erros (bits invertidos) no segmento transmitido.
- O remetente trata o conteúdo do segmento UDP, incluindo os campos do cabeçalho UDP e os endereços IP, como uma sequência de inteiros de 16 bits.
- É realizado o checksum: a soma (soma do one's complement) do conteúdo do segmento.
- O valor do checksum é inserido no campo de checksum do UDP.
- Então, no receptor é calculado o checksum do segmento recebido
- O header checksum é então comparado com campos do header de checksum:
- Se for diferente, aí aconteceu um erro
- se for igual, aí não tem erros
- Mas pode haver erros mesmo assim….
Internet Checksum: Proteção Fraca!
- A soma dos dois números invertendo dois bits pode dar o mesmo resultado, o que significa que um problema pode surgir mesmo que o checksum retornado seja parecido ou falso positivo
Resumo: UDP
- É um protocolo simples em que os segmentos podem ser perdidos ou entregues fora de ordem.
- Este é um um protocolo de melhor esforço: “envie e espere que tudo funcione”.
- Ele tem seus pontos positivos: não há configuração/handshaking necessária (nem RTT incorridos).
- Pode funcionar quando o serviço de rede estiver comprometido com uma ajuda de confiabilidade (checksum).
- Você pode criar funcionalidades adicionais em cima do UDP na camada da aplicação (por exemplo, HTTP/3).
Roteiro do Capitulo
- Este capitulo trata de serviços de camada de transporte.
- Multiplexação e demultiplexação.
- Transporte sem conexões: UDP
- Princípios de transporte de dados confiável
- Transporte orientado para a conexão:TCP
- Princípios de controle de congestionamento
- Controle de Constrangimento de TCP
- Evolução da função da camada de transferência
Princípios da Transferência de Dados Confiável
- A transferência de dados confiável apresenta um servico confiável com abstração.
- Complexidade do protocolo de transferência de dados confiável depende (fortemente) de características do canal não confiável (perder, corromper, reordenar dados?)
RDT: Interfaces
- rdt_send(): chamado pelo topo (aplicativo); dados passados para a camada receptora superior.
- udt_send(): chamado pelo rdt para mover pacote pela camada de transferência nãoconfiável para o receptor
- rdt_rcv(): chamado quando o pacote chega no lado do receptor!
- deliver_data(): chamado por rdt para dar dados pela camada superior!
RDT: Começando
- Iremos construir e desenvolver remetentes e receptores de lados do protocolo de transferência de dados rdt
- Irá considerar somente transferência desdirecional de dados, mas a informação de controle irá fluir nas duas direções.
- Usar máquinas de estado finito (FSM) para especificar o remetente e receptor
RDT 1.0 Transferência Confiável Por Um Canal Confiavel
- O canal subjacente é perfeitamente confiável.
- Não ocorreram erros de bits.
- Não ocorreram pacotes perdidos.
- Temos de separar a FSMs para remetente:
- O remetente deverá enviar os dados nos canais subjacentes.
- O recetor terá que ler os dados dos canais subjacentes.
rdt2.0: Canal com erros de bits
- checksums do cabeçalho para detectar erros de bits no pacote
- é necessário descobrir como recuperar de erros
- acknowledgements (ACKs): o receptor diz ao remetente que o pacote foi recebido
- negative acknowledgements (NAKs): o recetor diz ao remetente que o pacote apresentou erro de leitura
- o remetente tem que resitir o pacote quando recebe o NAK
Stop and Wait - Rdt 2.0
- O remetente envia um pacote de cada vez e aguardará a resposta do receptor.
RDT 3.0: canais com erros e perdas
- É pressuposto que agora existe de um novo canal em que os pacotes (dados e ACKs) podem ser perdidos.
- Checksum, sequências e ACKs são úteis para isso, mas nem sempre.
Solução - RDT 3.0: Tempo Agregado
- O remetente terá de esperar por um tempo "razoável" pelo ACK.
- Irá re-transmitir se não receber o ACK.
- Se tiver um delay ou o ACK é delay, então será duplicado
- O recetor deve indicar a sequencia do pacote a ser rececionado.
- Necessario contar com o temporizador para interrupter a função.
RDT: Pipelinado Protocolos de Funcionamento
- O envio permite múltiplos, voando, pacotes de pendentes ACKs
- O tamanho da sequência numérica precisa ser alocado
- Pode acumular o buffer no remetente e receptor
Pipelinagem
- A transmissão do primeiro bit, o tempo = 0
- Último bit é a transmissão para o tempo = L / R
- Se a transmissão de ACK chegar, então poderá enviar um próximo pacote
- O tempo = RTT L / R
- Utilização dos remetentes aumentaram
Protocolos Pipelining: Vista Geral
- Receptores só enviam ACKs cumulativos
- Receptores enviam ACKs individualmente por pacote
- Os remetentes tem timer por mais longos que os pacotes recebam unACK’ed
- Re-transmitir todos os pacotes unACKs ao chegar um prazo
- Remetente tem timer para qualquer quantidade de pacotes inACK'ed
- ao timer expirar, re-entregar apenas que pacote unACK’ed
Seletivo repetir O que?
- O recetor irá acknowledgetizar todos os pacotes de recebo correto.
- Pode-se criar buffers para eventual entrega na camada acima
- Remetentes -timeout/retransmitem sozinho por qualquer pacote unACKs
- remetentes manterem o timer para cada pacote unACKs
- O remetente define as janelas
- definir sequência numerários para N contínuos
- limitar sequências que enviaram, pacote unACK’ed
###TCP: Vista Geral
-
Ponto a ponto
- Sem erros de bits
- Sem extravios de pacote
-
Confiável 字节fluxo em ordem - não tem barreiras de mensagem
-
Duplex completo:
- Dois caminhos sentidos: remetente e recebedor
-
Usa ACKs coletivos.
-
usa pipelining:
- a congestão de TCP e o controle de fluxo ajustaram a janela É uma forma de enviar mais dados mais rápidos
-
conexão orientada:
- Um handshaking inicializa remetentes e estados de receivers
Controlo de Tráfego
- O transmissor vai enviar nada alem do receptor aguentar
Estrutura de segmento TCP
- Numero da porta de remetentes
- Numero da porta de endereço
- Numeração de Sequencia
- Numbero de acknowledgment (se houver ACK - 0,1)
- tamanho da camada de header
- CheckSum (para certificação)
- Options (camadas variáveis do lado que é mais usado)
- Dados da aplicação (variabilidade)
Número de Sequencição do TCP, ACKs
-
Números Sequencia:
- Contabilizar a escala de byte
- É importante ver o tamanho de dados nas sequenciais.
- Contabilizar a escala de byte
-
Acrowledgements:
- Sequências dos seguintes bytes esperados que vieram no outro sentido.
- Cumulatividade no TCP ACKs
- É importante haver controles de tráfego.
TCP Reação a Tempo limite.
- Tempo limite intervalo: EstimatedRTT mais "margem de segurança".
- Varição Larga no
- EstimatedRTT — que é uma margem mais larga de garantia.
Demoras (delay) ou RTT por TCP
- Pode calcular:
- EstimatedRTT= (1 –a* EstimatedRTT a+ SampleRTT* : a variação no uso se reduz exponencialmente rápido e depende do tamanho do byte da transmissão é mais de a 125 ms. Pode ser variável mas a diferença é
- Deve haver cálculos na taxa de aprocição à fonte (1 a B com cálculos diferentes. Ex. b sendo 0.25) (1-B)* DevRTT+ R’ | 101005.25 (1_6.)
- Ponto A ponto L em linhas para dados transferências e assim em, não vai ter um servidor para dar ACK no lado da pessoa.
Roteiro capitulo 3
- O Transporte de Canais de caminhos que não tem fiabilidade e assim. Por não ser confiável vai haver o retransmite.
- Pode fazer: "Segment" ou "Connection"
Abordagens para Controle De congestão.
- Extrimidade a extremidade controle de congestão:
- É que os caminho são por "Network" quando não estiver "Explicito".
- "A Conquista" É inferir pelo OBSERVAÇÃO
- Por a Perda e o Delay "Extremidade para Extremild"
- É que os caminho são por "Network" quando não estiver "Explicito".
- A assistencia de Network — a parte do "router ajuda" porque vai "Feedback diretos com hosts retransmitiram o que precisava".
Notificações expressivas de Congestão.
- TCP Implementando.
. - "Network +Assistencia" congestão:
- "Onde e de 2" mordida de "O Ip" Que está no Headers , isto com Network + router para indicar em que ponto pode ajudar e assim não sobrecarregar. ,
- Pode ajudar as coisas quando se tem este tipo problema de perca de congestão etc... (e não só "bits")
Controle de Congestão.
- Abordados e para poder aumentar a velocidade para para que os pacote chegem. Há um limite de de de tráfego é "O Algortmo".
- Aditivo_ de Aumento: aumentar Taxa de envio por 1 -Tamanho do segmento máximo a cada RTT até que a perda seja detectada
- Multiaplicativo
- Reduzir: Reduzir a taxa de envio pela metade em Cada evento de perda
Equidade TC
- A ideia é compartilhar uma banda larga igual para cada "Caminho" . se a sessão de K TCP compartilhar a mesma ligação da banda larga de R, eles cada deverão pagar taxa de R/K - O é de aumento aditivo pode ajudar porque da-mos um toque para o problema.
Resumo: o que foi aprendido de controlo de congesta
Quando tem vários host ou quando a a velocidade de dados estão demasiado altas.
- Tem a:
- "a forma da comunicação que são por meio do algoritmo "a que dá permissão ou não".
Espero que isso ajude!
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.