Capítulo 3 Camada de Iransp
Problemas 1. Suponha que o
cliente A inicie uma sessão Telnet Telnet com o servidor S. Quase ao mesmo tempo, o cliente tamb!m inicia uma sessão Telnet Telnet com o servidor ". #orne$a possíveis n%meros de porta da &onte e do destino para' a. (s se)mentos enviados de A para S. b. (s se)mentos enviados de para ". c. (s se)mentos enviados de " para A. d. (s se)mentos enviados de S para . e. Se A e são hospedeiros di&erentes, ! possível que o n%mero de porta da &onte nos se)mentos de A para S se*a o mesmo que nos de para "+ f. se &orem o mesmo hospedeiro+ 2. Considere a #i)ura 3,". Quais são os valores da porta de &onte e da porta de destino nos se)mentos que &luem do
servidor de volta aos processos clientes+ Quais são os endere$os IP nos data)ramas de camada de rede que carre)am os se)mentos de camada de transporte+ 3. ( -P e o TCP usam complementos de / para
suas somas de veri&ica$ão. Suponha que voc0 tenha as se)uintes tr0s palavras de 1 bits' 2/2/2/2/, 2///2222 2///2222 e 2/22//22. 2/22//22. Qual ! o complemento de / para as somas somas dessas palavras+ palavras+ 4ote que, embora o -P e o TCP usem palavras de /5 bits no c6lculo da soma de veri&ica$ão, nesse problema solicitamos que voc0 considere parcelas de 1 bits7. 8ostre todo o trabalho. Por que o -P toma o complemento de / da soma, isto !, por que não toma apenas a soma+ Com o esquema de complemento de /, como o destinat6rio detecta erros+ 9 possível que um erro de / bit passe despercebido+ despercebido+ um erro de : bits+ 4. Considere nosso motivo para corri)ir o protocolo r t d2./. emonstre que o destinat6rio apresentado na &i)ura da
p6)ina se)uinte, quando em opera$ão opera$ão com o remetente mostrado na #i)ura 3.//, 3.//, pode levar remetente e destinat6rio destinat6rio a entrar em estado de travamento, em que cada um espera por um evento que nunca vai ocorrer. 4o 5 .
protocolo r dt 3 2, os pacotes AC; que &luem do destinat6rio ao remetente não t0m n%meros de seq<0ncia embora tenham um campo de AC; que cont!m o n%mero de seq<0ncia do pacote que estão reconhecendo7. Por que nossos pacotes AC; não requerem n%meros de seq<0ncia+ .
dt 3.2. 6. labore a #S8 para o lado destinat6rio do protocolo r dt 3.2 quando pacotes de dados e de 7. labore um dia)rama de mensa)ens para a opera$ão do protocolo r
reconhecimento estão truncados. Seu dia)rama deve ser semelhante ao usado na #i)ura 3./5. 8. Considere um canal que pode perder pacotes, mas cu*o atraso m6=imo ! conhecido. 8odi&ique o protocolo r d t :. /
para incluir es)otamento de tempori>a$ão tempori>a$ão do remetente e retransmitir. In&ormalmente, ar)umente por que seu seu protocolo pode se comunicar de modo correto por esse esse canal.
dt 3 ( simplesmente i)nora isto !, não reali>a nenhuma a$ão7 todos os pacotes recebidos que estão 9. O lado remetente do r errados ou com o valor errado no campo a c ? num de um pacote de reconhecimento. Suponha que em tais circunst@ncias o r dt 3O devesse apenas retransmitir o pacote de dados corrente. 4esse caso, o protocolo ainda &uncionaria+ (Dica: considere o que aconteceria se houvesse apenas erros de bits não h6 perdas de pacotes, mas ocorrem es)otamentos de tempori>a$ão prematuros. Ima)ine quantas ve>es o enésimo pacote seria enviado, no limite em que n se apro=imasse do in&inito.7 .
.
10. Considere o protocolo bit alternante tamb!m conhecido como pare e espere7. labore um dia)rama mostrando que, se a cone=ão de rede entre o remetente e o destinat6rio puder alterar a ordem de mensa)ens isto !, se &or possível reordenar duas mensa)ens que se propa)am no meio entre o remetente e o destinat6rio7, então o protocolo bit alternante não &uncionar6 corretamente lembreBse de identi&icar claramente o sentido no qual o protocolo não &uncionar6 corretamente7. Seu dia)rama deve mostrar o remetente esquerda e o destinat6rio direita o ei=o do tempo dever6 estar orientado de cima para bai=o na p6)ina e mostrar a troca de mensa)em de dados 7 e de reconhecimento A7. 4ão esque$a de indicar o n%mero de seq<0ncia associado com qualquer se)mento de dados ou de reconhecimento. 11. Considere um protocolo de trans&er0ncia con&i6vel de dados que use somente reconhecimentos ne)ativos. Suponha que o remetente envie dados com pouca &req<0ncia. -m protocolo que utili>a somente 4A;s seria pre&erível a um protocolo que utili>a AC;s+ Por qu0+ A)ora suponha que o remetente tenha uma )rande quantidade de dados para enviar e que a cone=ão &imBaB&im so&ra poucas perdas. 4esse se)undo caso, um protocolo que utili>e somente 4A;s seria pre&erível a um protocolo que utili>e AC;s+ Por qu0+ 12. Considere o e=emplo em que se atravessa os stados -nidos mostrado na #i)ura 3./D. Que tamanho deveria ter a *anela para que a utili>a$ão do canal &osse maior do que E2 por cento+ 13. Pro*ete um protocolo de trans&er0ncia con&i6vel de dados com paralelismo que use apenas reconhecimentos ne)ativos. Com que rapide> seu protocolo responderia perda de pacotes quando a ta=a de che)ada de dados ao remetente &osse bai=a+ quando &osse alta+ 14. 4o protocolo )en!rico SF que estudamos na Se$ão 3.G.G, o remetente transmite uma mensa)em assim que ela est6 disponível se ela estiver na *anela7, sem esperar por um reconhecimento. Suponha, a)ora, que queiramos um protocolo SF que envie duas mensa)ens de cada ve>. Isto !, o remetente enviar6 um par de mensa)ens, e o par de mensa)ens subseq
hospedeiro A queira enviar mensa)ens para os hospedeiros e C simultaneamente. ( hospedeiro A est6 conectado a e a C por um canal broadcast um pacote enviado por A ! levado pelo canal a e a C. Suponha que o canal broadcast que conecta A, e C possa, independentemente, perder e corromper mensa)ens e assim, por e=emplo, uma mensa)em enviada de A poderia ser recebida corretamente por , mas não por C7. Pro*ete um protocolo de controle de erro do tipo —
pare e espere para a trans&er0ncia con&i6vel de um pacote de A para e para C, tal que A não receba novos dados da camada superior at! que saiba que e C receberam corretamente o pacote em questão. 0 descri$Hes #S8 de A e C. (Dica: a #S8 para deve ser essencialmente a mesma que para C.7 Tamb!m d0 uma descri$ão dos7 &ormatos7 de pacote usados7. Considere o 1 6 .
protocolo 4 com um tamanho de *anela remetente de 3 e uma &ai=a de n%meros de seq<0ncia de /.2:G. Suponha que, no tempo t , o pacote se)uinte na ordem, pelo qual o destinat6rio est6 esperando, tenha um n%mero de seq<0ncia k. Admita que o meio não reordene as mensa)ens. Fesponda s se)uintes per)untas' a. Quais são os possíveis con*untos de n%meros de seq<0ncia dentro da *anela do remetente no tempo 1?Justi&ique sua resposta. b. Quais são todos os possíveis valores do campo AC; em todas as mensa)ens que estão correntemente se propa)ando de volta ao remetente no tempo t ?Justi&ique sua resposta. /D. Suponha que ha*a duas entidades de rede A e e que tenha um suprimento de mensa)ens de dados que ser6 enviado a A de acordo com as se)uintes conven$Hes' quando A recebe uma solicita$ão da camada superior para e=trair a mensa)em de dados se)uinte 7 de , A deve enviar uma mensa)em de requisi$ão F7 a no canal A a somente quando receber uma mensa)em F, ele poder6 enviar uma mensa)em de dados 7 de volta a A pelo canal a A A deve entre)ar uma cKpia de cada mensa)em camada superior F mensa)ens podem ser perdidas mas não corrompidas7 no canal A a mensa)ens, uma ve> enviadas, são sempre entre)ues corretamente o atraso entre ambos os canais ! desconhecido e vari6vel. labore um protocolo d0 uma descri$ão #S87 que incorpore os mecanismos apropriados para compensar a propens6o perda do canal A a e implemente passa)em de mensa)em para a camada superior na entidade A, como discutido antes. -tili>e apenas os mecanismos absolutamente necess6rios. Considere os protocolos 4 e SF. Suponha que o 1 8 .
espa$o de n%meros de seq<0ncia se*a de tamanho k. Qual ser6 o maior tamanho de *anela permissível que evitar6 que ocorram problemas como os da #i)ura 3.:D para cada um desses protocolos+ Fesponda verdadeiro ou &also s se)uintes per)untas e 1 9 .
*usti&ique resumidamente sua resposta' a. Com o protocolo SF, ! possível o remetente receber um AC; para um pacote que caia &ora de sua *anela corrente. b. Com o 4, ! possível o remetente receber um AC; para um pacote que caia &ora de sua *anela corrente. c. ( protocolo bit alternante ! o mesmo que o protocolo SF com *anela do remetente e do destinat6rio de tamanho /.
Fedes de computadores e a Internei d. ( protocolo bit alternante ! o mesmo que o protocolo 4 com *anela do remetente e do destinat6rio de tamanho /. 2 0 . Considere
a trans&er0ncia de um arquivo enorme de L bLtes do hospedeiro A para o hospedeiro . Suponha um 8SS de /.G52
bLtes. a. Qual ! o m6=imo valor de M tal que não se*am e=auridos os n%meros de seq<0ncia TCP+ MembreBse de que o campo de n%mero de seq<0ncia TCP tem quatro bLtes. b. Para o L que obtiver em a7, descubra quanto tempo demora para transmitir o arquivo. Admita que um total de 55 bLtes de cabe$alho de transporte, de rede e de enlace de dados se*a adicionado a cada se)mento antes que o pacote resultante se*a enviado por um enlace de /2 8bps. I)nore controle de &lu=o e controle de con)estionamento de modo que A possa enviar os se)mentos um atr6s do outro e continuamente. 2 1 . Considere o procedimento TCP para estimar FTT. Suponha que a =2,/. Se*a Sampi eFTT/ a amostra mais recente de FTT, Sampi eFTT a se)uinte amostra mais recente de FTT etc. a. Para uma dada cone=ão TCP, suponha que quatro reconhecimentos &oram devolvidos com as amostras FTT correspondentes Sa r n pl e RTT4 ,SampleFTT3, SampleFTT: e SampleFTT/. =presse stimatedFll em termos das quatro amostras FTT. b. enerali>e sua &Krmula para n amostras de FTTs. e. Para a &Krmula em b7, considere n tendendo ao in&inito. Comente por que esse procedimento de m!dia ! denominado m!dia mKvel e=ponencial. ::. 4a Se$ão 3.".3 discutimos estimativa de FTT para o TCP. 4a sua opinião, por que o TCP evita medir o Sampi eFTT para se)mentos retransmitidos+ Qual 2 3 .
! a rela$ão entre a vari6vel Sendase na Se$ão 3.5.4 e a vari6vel L as t By t e Rc v dna Se$ão 3."."+
2 4 . Qual
! a rela$ão entre a vari6vel MastLteFcvd na Se$ão 3.5.5 e a vari6vel L na se$ão 3.".G+
4a 2 5 .
Se$ão 3.5.4 vimos que o TCP espera at! receber tr0s AC;s duplicados antes de reali>ar uma retransmissão r6pida. 4a sua opinião, por que os pro*etistas do TCP pre&eriram não reali>ar uma retransmissão r6pida apKs ser recebido o primeiro AC; duplicado para um se)mento+ 2 6 . Considere
a #i)ura 3.G"b7. Se NO aumentar para mais do que F:, N2, poder6 aumentar para mais do queR/ 3?=plique. A)ora 4admitindoBse que um considere a #i)ura 3.G"c7. Se NO/ aumentar para mais do que F:, Xr n poder6 aumentar para mais de R/ pacote ser6 transmitido duas ve>es, em m!dia, do roteador para o destinat6rio+ =plique.
27. Considere o se)uinte )r6&ico que representa
o tamanho de *anela do TCP como uma &un$ão do tempo.
AdmitindoBse que TCP Feno ! o protocolo que e=perimenta o comportamento mostrado no )r6&ico, responda s se)uintes per)untas. m todos os casos voc0 dever6 apresentar uma *usti&icativa resumida para sua resposta. a. Quais os intervalos de tempo em que a partida lenta do TCP est6 em e=ecu$ão+ b. Quais os intervalos de tempo em que a preven$ão de con)estionamento do TCP est6 em e=ecu$ão+ c. ApKs a /5 rodada de transmissão, a perda de se)mento ser6 detectada por tr0s AC;s duplicados ou por um es)otamento de tempori>a$ão+ d. ApKs a :: rodada de transmissão, a perda de se)mento ser6 detectada por tr0s AC;s duplicados ou por um es)otamento de tempori>a$ão+ e. Qual é o valor inicial de T h r es h o d na primeira rodada de transmissão+ oi d na 8a rodada de transmissão+ f. Qual ! o valor inicial de T h r es b r e s ho ld na :G rodada de transmissão+ g. Qual ! o valor de Th h. urante qual rodada de transmissão é enviado o D( se)mento+ i. AdmitindoBse que uma perda de pacote ser6 detectada apKs a :5 rodada pelo recebimento de tr0s AC;s duplicados, quais serão os valores do tamanho da *anela de con)estionamento e de Thre s h old+ 28. Consulte a #i)ura 3."3, que ilustra a conver)0ncia do al)oritmo AI8 do TCP. Suponha que, em ve> de uma diminui$ão
multiplicativa, o TCP redu>a o tamanho da *anela de uma quantidade constante. ( AI8 resultante conver)iria a um al)oritmo de i)ual compartilhamento+ Justi&ique sua resposta usando um dia)rama semelhante ao da #i)ura 3."3. 29. 4a Se$ão 3.".G discutimos a duplica$ão do intervalo de tempori>a$ão apKs um evento de es)otamento de tempori>a$ão. sse mecanismo é uma &orma de controle de con)estionamento. Por que o TCP precisa de um mecanismo de controle de
con)estionamento que utili>a *anelas como estudado na Se$ão 3.D7 al!m desse mecanismo de duplica$ão do intervalo de es)otamento de tempori>a$ão+ 30. ( hospedeiro A est6 enviando um arquivo enorme ao hospedeiro por uma cone=ão TCP 4essa cone=ão nunca h6 perda de pacotes e os tempori>adores nunca se es)otam. Se*a R bps a ta=a de transmissão do enlace que li)a o hospedeiro A Internet. Suponha que o processo no hospedeiro A consi)a enviar dados para seu soc?et TCP a uma ta=a de S bps, em que S 10 F. Suponha ainda que o bui&er de recep$ão do TCP se*a )rande o su&iciente para conter o arquivo inteiro e que o bu&&er de envio possa conter somente um por cento do arquivo. ( que impediria o processo no hospedeiro A de passar dados continuamente para seu soc?et TCP ta=a de S bps' o controle de &lu=o do TCP o controle de con)estionamento do TCP ou al)uma outra coisa+ labore sua resposta. 31. Felembre o modelo ideali>ado para a din@mica de re)ime est6vel do TCP 4o período de tempo transcorrido para a ta=a da cone=ão variar de R: FTT7 a W/RTT, apenas um pacote ! perdido bem ao &inal do período7. a. 8ostre que a &ra$ão de pacotes perdidos ! i)ual a
b. -se o resultado anterior para mostrar que, se uma cone=ão tiver ta=a de perda L, sua lar)ura de banda m!dia ! dada
apro=imadamente por'
Quando discutimos TCPs &uturos na Se$ão 3.D, observamos que, 3 2 .
para conse)uir uma va>ão de /2 bps, o TCP apenas poderia tolerar uma probabilidade de perda de se)mentos de : 10_l oou, equivalenteB mente, uma perda para cada ".222.222.222 se)mentos7. 8ostre a deriva$ão de valores para : /2lo para / em cada ".222.222 para os valores de FTT e 8SS dados na Se$ão 3.D. Se o TCP precisasse suportar uma cone=ão de /22 bps, qual seria a perda toler6vel+ Quando 3 3 .
discutimos controle de con)estionamento em TCP na Se$ão 3.D, admitimos implicitamente
que o remetente TCP sempre tinha dados para enviar. A)ora considere o caso em que o remetente TCP envie uma )rande quantidade de dados e então &ique ocioso em t1 *6 que não h6 mais dados a enviar7. ( TCP permanecer6 ocioso por um período de tempo relativa mente lon)o e então ir6 querer enviar mais dados em t 2.Quais são as vanta)ens e desvanta)ens do TCP utili>ar os valores Cong Win e /h r es h si d de t/ quando come$ar a enviar dados em t2? Que alternativa voc0 recomendaria+ Por qu0+ 34. Considere o envio de um ob*eto de tamanho O =/22 ?bLtes do servidor ao cliente. Se*a S ="35 bLtes e RTT =/22 milisse)undos. Suponha que o protocolo de transporte use *anelas est6ticas e tamanho de *anela W. er Se$ão 3.D.:7.
a. Para uma velocidade de transmissão de :1 ?bps, determine a mínima lat0ncia possível. etermine o tamanho mínimo de *anela para atin)ir essa lat0ncia. b. Fepita a7 para /22 ?bps c. Fepita a7 para / 8bps. d. Fepita a7 para /2 8bps. 35. Suponha que o TCP aumente sua *anela de con)estionamento de um &ator de :, em ve> de /, para cada reconhecimento recebido
durante a partida lenta. Assim, a primeira *anela consistir6 em um se)mento a se)unda, em tr0s se)mentos a terceira, em nove se)mentos e assim por diante. -sando as t!cnicas da Se$ão 3.D.:' a. =presse ; em termos de O e S. b. =presse Q em termos de RTT, S e F. c. =presse a lat0ncia em termos de P =min; /,Q7, O, F e RTT. —
36. Considere o caso em que RTT =/ se)undo e O =/22 ?bLtes. 8onte um )r6&ico semelhante aos )r6&icos da Se$ão 3.D.:7 que compare a lat0ncia mínima (F U : RTT com a lat0ncia com partida lenta para F =:1 ?bps, /22 ?bps, / 8bps e /2 8bps. 37. erdadeiro ou &also+
a. Se uma p6)ina Reb consistir em e=atamente um ob*eto, as cone=Hes persistentes e não persistentes terão e=atamente o mesmo desempenho de tempo de resposta. b. Considere o envio de um ob*eto de tamanho O do servidor ao broVser por TCP. Se O > S, em que 5 ! o tamanho m6=imo de se)mento, o servidor entrar6 em suspensão no mínimo uma ve>. c. Suponha que uma p6)ina Reb consista em de> ob*etos, cada um de tamanho O bits. Para WTTP persistente, a por$ão RTT do tempo de resposta ser6 :2 RTTs. d. Ima)ine que uma p6)ina Reb consista em de> ob*etos, cada um de tamanho O bits. Para WTTP não persistente com cinco cone=Hes paralelas, a por$ão RTT do tempo de resposta ser6 /: RTTs. 38. 4este problema completamos al)uns detalhes da deriva$ão da lat0ncia na Se$ão 3.D.:.
a. erive a &Krmula
b. -se a identidade
para derivar a &Krmula
A an6lise de *anelas din@micas na Se$ão 3.D.: admite que h6 3 9 .
apenas um enlace entre servidor e cliente. Fe&a$a a an6lise para T enlaces entre servidor e cliente. Admita que a rede não tenha con)estionamento, de modo que os pacotes não so&ram nenhum atraso de &ila. (s pacotes so&rerão, contudo, um atraso de arma>ena)em e envio. A de&ini$ão de FTT ! a mesma que a dada na se$ão sobre controle de con)estionamento TCP (Dica: o tempo que transcorre entre o servidor enviar o primeiro se)mento e receber o reconhecimento ! TS/R ! RTT. Felembre a discussão ao &inal da 4 0 .
Se$ão 3.D.: sobre o tempo de resposta para uma p6)ina Reb. Para o caso de cone=Hes não persistentes, determine a e=pressão )eral para a "ra#$o do tempo de resposta que ! devida partida lenta do IC