Escolar Documentos
Profissional Documentos
Cultura Documentos
11. Um cliente usa UDP para transmitir dados a um servidor. Os dados têm 16 bytes.
Calcule a eficiência dessa transmissão no nível UDP (razão entre bytes úteis e o
total de bytes).
14. (NÃO FOI CHAT) Descreva com suas palavras o protocolo Go-Back-N e o
protocolo Retransmissão Seletiva.
Go-Back-N: O emissor possui até n pacotes não-acks no duto. O receptor envia
somente acks acumulativos. Quando há a confirmação do recebimento de um
pacote implica que todos que antecederam foram recebidos corretamente.
Retransmissão seletiva: Armazena os pacotes recebidos corretamente no buffer
sempre que necessário para entregar de forma ordenada para a camada superior. O
transmissor só envia pacotes onde um ACK não foi recebido.
15. (NÃO FOI CHAT) Por que os elementos intermediários não mantêm o estado
de uma conexão TCP?
Porque o protocolo TCP roda somente nos sistemas finais, e não nos elementos
intermediários da rede (roteadores e comutadores da camada de enlace), os
elementos intermediários não mantem estado de conexão TCP. Na verdade, os
roteadores intermediários são completamente alheios às conexões TCP; eles
enxergam datagramas, e não conexões.
16. (NÃO FOI CHAT) Qual é a carga útil dos segmentos enviados no procedimento
de estabelecimento de conexão?
Dados da camada de aplicação.
17. (NÃO FOI CHAT) Quando o TCP deve de fato enviar dados que estão nos
buffers?
Segundo a especificação do TCP [RFC 793], o TCP deve enviar os dados em
segmentos segundo sua própria conveniência. A quantidade máxima de dados é
limitada pelo tamanho do MSS.
19. Consulte o RFC 854 e o RFC 1323 para conhecer mais detalhes sobre o campo
opções de um segmento TCP. Elabore sobre as opções “Você está aí” e “Escala de
Janela TCP”.
22. (NÃO FOI CHAT) Quais são as três fases de uma comunicação orientada a
conexão?
Estabelecimento de conexão, transferência de dados, encerramento da conexão.
23. Quais campos estão presentes no cabeçalho TCP mas ausentes no UDP? Por
que eles não são necessários?
Número de sequência, Número de confirmação e Tamanho da janela. Não são
necessários porque o UDP é um protocolo de transporte simplificado, que oferece
uma comunicação mais leve e rápida, mas não garante a confiabilidade e o controle
de fluxo oferecidos pelo TCP.
25. Nos protocolos rdt, por que é necessário introduzir números de sequência?
É essencial para garantir a confiabilidade e a correta ordenação dos pacotes durante
a transmissão de dados. Isso permite a detecção e a correção de erros, bem como a
entrega confiável dos dados ao receptor.
26. (NÃO FOI CHAT) Nos protocolos rdt, por que é necessário introduzir
temporizadores?
Para poder tratar as perdas de dados no canal. Se o ACK para um segmento
transmitido não é recebido durante um determinado tempo, assume-se que o
segmento está perdido. Neste caso, ocorre uma retransmissão.
27. (NÃO FOI CHAT) Suponha que o hospedeiro A envie dois segmentos TCP um
atrás do outro ao hospedeiro B sobre uma conexão TCP. O primeiro segmento
tem número de sequência 90 e o segundo, número de sequência 110.
a. Quantos dados tem o primeiro segmento?
20 bytes.
28. (NÃO FOI CHAT) O UDP e o TCP usam complementos de 1 para suas somas de
verificação. Suponha que você tenha as seguintes três palavras de 8 bits: 01010011,
01100110 e 01110100. Qual é o complemento de 1 para as somas dessas palavras?
(Note que, embora o UDP e o TCP usem palavras de 16 bits no cálculo da soma de
verificação, nesse problema solicitamos que você considere somas de 8 bits.)
Mostre todo o trabalho. Por que o UDP toma o complemento de 1 da soma, isto é,
por que não toma apenas a soma? Com o esquema de complemento de 1, como o
destinatário detecta erros? É possível que um erro de 1 bit passe despercebido? E
um erro de 2 bits?
01010011 + 01100110 = 10111001
10111001 + 01110100 = 100101101
Para detectar erros, o receptor adiciona as quatro palavras (as três palavras
originais e os checksum). Se a soma contém um zero, o receptor sabe que ocorreu
um erro. Todos um bit erros serão detectados, mas dois bits de erro não podem ser
detectados (por exemplo, se o último dígito da primeira palavra é convertido para um
Oeo último dígito da segunda palavra é convertido para um 1).
29. (NÃO FOI CHAT) Uma conexão TCP precisa transferir 5.000 bytes de um
arquivo. A numeração do primeiro byte é 10.001. Quais são os números de
sequência para cada segmento se os dados forem enviados em cinco
segmentos, cada um deles transportando 1.000 bytes?
Segmento 1 -> Número de sequência: 10,001 (intervalo: 10,001 a 11,000)
Segmento 2 -> Número de sequência: 11,001 (intervalo: 11,001 a 12,000)
Segmento 3 -> Número de sequência: 12,001 (intervalo: 12,001 a 13,000)
Segmento 4 -> Número de sequência: 13,001 (intervalo: 13,001 a 14,000)
Segmento 5-> Número de sequência: 14,001 (intervalo: 14,001 a 15,000)
31. Qual o tamanho da janela para o hospedeiro A se o valor de rwnd for 3.000
bytes e o valor de cwnd for 3.500 bytes?
Se o valor de rwnd for 3.000 bytes e o valor de cwnd for 3.500 bytes, o tamanho da
janela para o hospedeiro A será de 3.000 bytes, pois é o valor mínimo entre os dois.
34. Um cliente usa TCP para enviar dados a um servidor. O total de dados é de 16
bytes. Calcule a eficiência dessa transmissão no nível TCP (razão entre os
bytes úteis e o total de bytes).
Total de bytes enviados = 20 bytes (cabeçalho TCP) + 16 bytes (dados) = 36 bytes
37. Suponha que o buffer de recepção do hospedeiro B fique tão cheio que rwnd =
0. Após anunciar ao hospedeiro A que rwnd = 0, imagine que B não tenha nada
para enviar ao hospedeiro A. Enquanto o processo de aplicação em B esvazia
o buffer, o TCP não envia novos segmentos com novos valores rwnd para o
hospedeiro A. Na verdade, o TCP lhe enviará um segmento somente se tiver
dados ou um reconhecimento para enviar. Por conseguinte, o hospedeiro A
nunca será informado de que foi aberto algum espaço no buffer de recepção
do hospedeiro B: ele ficará bloqueado e não poderá transmitir mais dados!
Como resolver esse impasse?
O processo de aplicação no hospedeiro B esvazia o buffer de recepção e cria
espaço disponível, o TCP no hospedeiro B atualizará o valor de rwnd e enviará um
segmento TCP de confirmação (ACK) para o hospedeiro A. Esse segmento conterá
o novo valor de rwnd, informando ao hospedeiro A que agora há espaço disponível
para enviar mais dados.
Dessa forma, o hospedeiro A será informado sobre a abertura de espaço no buffer
de recepção do hospedeiro B e poderá retomar a transmissão de dados.
O TCP utiliza o controle de fluxo para resolver o impasse em que o hospedeiro A fica
bloqueado devido ao buffer de recepção do hospedeiro B estar cheio. O TCP
garante que o hospedeiro A seja notificado assim que houver espaço disponível para
enviar mais dados.
38. Suponha que os cinco valores de SampleRTT medidos sejam 106 ms, 120 ms,
140 ms, 90 ms e 115 ms. Calcule o EstimatedRTT depois que forem obtidos
cada um desses valores de SampleRTT, usando um valor de 𝜶= 0,125 e
supondo que o valor de EstimatedRTT seja 100 ms imediatamente antes que a
primeira dessas cinco amostras seja obtida. Calcule também o DevRTT após a
obtenção de cada amostra, considerando um valor de 𝜷= 0,25 e que o valor de
DevRTT seja 5 ms imediatamente antes que a primeira dessas cinco amostras
seja obtida. Por fim, calcule o TimeoutInterval do TCP após a obtenção de cada
uma dessas amostras.