PEL/FEN Redes de Computadores 2015/1 Primeira Lista de Exercícios Prof. Marcelo Gonçalves Rubinstein 1) Descreva os tipos de topologias utilizadas em redes de computadores, destacando suas principais vantagens e desvantagens. 2) Descreva os tipos de redes de computadores em função da extensão geográfica. 3) Descreva os tipos de técnicas de comutação existentes, destacando suas principais vantagens e desvantagens. 4) Considere uma aplicação que transmita dados a uma taxa constante. Considere também que, quando essa aplicação começa, continuará em funcionamento por um período de tempo relativamente longo. Responda às seguintes perguntas, dando uma breve justificativa para suas respostas: (Kurose) a. O que seria mais apropriado para essa aplicação: uma rede de comutação de circuitos ou uma rede de comutação de pacotes? Por quê? b. Suponha que seja usada uma rede de comutação de pacotes e que o único tráfego dessa rede venha de aplicações como a descrita anteriormente. Além disso, admita que a soma das velocidades de dados da aplicação seja menor do que as capacidades de cada um dos enlaces. Será necessário controle de congestionamento? Por quê? 5) Explique o efeito do tamanho no tempo de transmissão de um pacote em uma rede de comutação de pacotes. 6) Suponha que você queira enviar, urgentemente, 40 terabytes de dados de Boston para Los Angeles. Você tem disponível um enlace dedicado de 100 Mbps para transferência de dados. Você escolheria transmitir os dados por meio desse enlace ou usar o serviço de entrega 24 horas FedEx? Explique. (Kurose) 7) Cite as diferenças entre datagrama e circuito virtual, destacando suas principais vantagens e desvantagens. 8) Descreva os conceitos de entidade, serviço, interface e protocolo. Apresente também os conceitos de PDU, SDU e PCI. 9) Um sistema tem uma hierarquia de protocolos com n camadas. As aplicações geram mensagens com M octetos de comprimento. Em cada uma dessas camadas, é
acrescentado um cabeçalho com h octetos. Que fração da largura de banda da rede é preenchida pelos cabeçalhos? (Baseada no Tanenbaum) 10) Descreva as principais funções de cada camada do modelo OSI. 11) Descreva as principais funções de cada camada do modelo TCP/IP. 12) Descreva as principais funções de cada camada do modelo híbrido. 13) Descreva os tipos de arquiteturas da aplicação utilizados em redes de computadores. 14) Descreva como é realizada a comunicação entre processos na Internet. 15) Cite os principais requisitos da transmissão da mídia áudio. 16) Descreva sucintamente o padrão de compactação de áudio MP3. 17) Um CD armazena 650 MB de dados. A compactação é usada em CDs convencionais (de áudio)? Explique seu raciocínio? (Tanenbaum) 18) Descreva sucintamente o padrão de compactação de imagens JPEG. 19) Descreva sucintamente o padrão de compactação de vídeo MPEG. 20) Um erro de 1 bit em um quadro MPEG pode afetar outros quadros além daquele no qual o erro ocorre? Explique sua resposta. (Tanenbaum) 21) Descreva sucintamente o funcionamento do sistema de nomes de domínio da Internet. 22) O DNS utiliza o UDP em vez do TCP. Se um pacote DNS for perdido, não haverá nenhuma recuperação automática. Isso causará um problema? Em caso afirmativo, como ele será resolvido? (Tanenbaum) 23) Descreva sucintamente o funcionamento do protocolo de transferência de arquivos FTP. 24) Descreva sucintamente o funcionamento do sistema de correio eletrônico da Internet. 25) Alguns sistemas de correio eletrônico aceitam um campo de cabeçalho Content Return:. Esse campo especifica se o corpo da mensagem deve ser retornado caso não seja entregue. Esse campo pertence ao envelope ou ao cabeçalho? (Tanenbaum) 26) Descreva sucintamente o funcionamento da Web. 27) Suponha que você clique com seu browser Web sobre um ponteiro para obter uma página Web e que o endereço IP para o URL associado não esteja no cache de seu hospedeiro local. Portanto, será necessária uma consulta ao DNS para obter o endereço IP. Considere que n servidores DNS sejam visitados antes que seu hospedeiro receba o endereço IP do DNS; as visitas sucessivas incorrem em um RTT de RTT 1,..., RTT n. Suponha ainda que a página Web associada ao ponteiro contenha exatamente um objeto que consiste em uma pequena quantidade de texto HTML. Seja
RTT 0 o RTT entre o hospedeiro local e o servidor que contém o objeto. Admitindo que o tempo de transmissão do objeto seja zero, quanto tempo passará desde que o cliente clica o ponteiro até que receba o objeto? (Kurose) 28) O cabeçalho If-Modified-Since pode ser usado para verificar se uma página guardada no cache ainda é válida. Podem ser feitas solicitações de páginas contendo imagens, sons, vídeos e assim por diante, bem como HTML. Você imagina que a eficiência dessa técnica é melhor ou pior para imagens JPEG, em comparação com o HTML? (Tanenbaum) 29) Por que no caso do áudio de fluxo, utiliza-se buffer para armazenar o áudio antes do início da reprodução? 30) O buffer de recebimento TCP e o buffer cliente do transdutor são a mesma coisa? Se não são, como eles interagem? (Kurose) 31) Suponha que Bob tenha entrado no BitTorrent, mas ele não quer fazer o upload de nenhum dado para qualquer outro par (denominado carona). (Kurose) a. Bob alega que consegue receber uma cópia completa do arquivo compartilhado pelo grupo. A alegação de Bob é possível? Por que? b. Bob alega que ele pode pegar carona de um modo mais eficiente usando um conjunto de diversos computadores (com endereços IP distintos) no laboratório de informática de seu departamento. Como ele pode fazer isso? 32) Cite as principais características do protocolo UDP. 33) Por que o UDP existe? Não teria sido suficiente deixar que os processos dos usuários enviassem pacotes IP brutos? (Tanenbaum) 34) Cite as principais características do protocolo RTP. 35) Considere uma sessão RTP com quatro usuários, todos eles enviando e recebendo pacotes RTP para o mesmo endereço multicast. Cada usuário envia vídeo a 100 kbps. (Kurose) a. O RTCP limitará seu tráfego a qual taxa? b. Quanta largura de banda RTCP será alocada a um determinado receptor? c. Quanta largura de banda RTCP será alocada a um determinado remetente? 36) No protocolo rdt3.0, os pacotes ACK que fluem do destinatário ao remetente não têm números de sequência (embora tenham um campo de ACK que contém o número de sequência do pacote que estão reconhecendo). Por que nossos pacotes ACK não requerem números de sequência? (Kurose)
37) Elabore a FSM para o lado destinatário do protocolo rdt3.0. (Kurose) 38) Elabore um diagrama de mensagens para a operação do protocolo rdt3.0 quando pacotes de dados e de reconhecimentos estão truncados. Seu diagrama deve ser semelhante ao usado na Figura 3.16. (Kurose) 39) Considere um protocolo de transferência confiável de dados que use somente reconhecimentos negativos. Suponha que o remetente envie dados com pouca frequência. Um protocolo que utiliza somente NAKs seria preferível a um protocolo que utiliza ACKs? Por quê? Agora suponha que o remetente tenha uma grande quantidade de dados a enviar e que a conexão fim-a-fim sofra poucas perdas. Nesse segundo caso, um protocolo que utilize somente NAKs seria preferível a um protocolo que utilize ACKs? Por quê? (Kurose) 40) Responda verdadeiro ou falso às seguintes perguntas e justifique resumidamente sua resposta: (Kurose) a. Com o protocolo SR, é possível o remetente receber um ACK para um pacote que caia fora de sua janela corrente? b. Com o GBN, é possível o remetente receber um ACK para um pacote que caia fora de sua janela corrente? c. O protocolo bit alternante é o mesmo que o protocolo SR com janela do remetente e do destinatário de tamanho 1. d. O protocolo bit alternante é o mesmo que o protocolo GBN com janela do remetente e do destinatário de tamanho 1. 41) Cite as principais características do protocolo TCP. 42) Explique o funcionamento da opção Window scale do TCP. 43) Considere a transferência de um arquivo enorme de L octetos do hospedeiro A para o hospedeiro B. Suponha um MSS de 536 octetos. (Kurose) a. Qual é o máximo valor de L tal que não sejam exauridos os números de sequência do protocolo TCP? Lembre-se que o campo do número de sequência do protocolo TCP tem quatro octetos. b. Para o valor de L que obtiver em (a), descubra quanto tempo o hospedeiro A gasta para transmitir o arquivo. Admita que um total de 66 octetos de cabeçalho de transporte, de rede e de enlace de dados seja adicionado a cada segmento antes que o pacote resultante seja enviado por um enlace de 155 Mbps. Ignore o controle de fluxo e o controle de congestionamento do
protocolo TCP, de modo que o hospedeiro A possa enviar os segmentos um atrás do outro e continuamente. 44) Os hospedeiros A e B estão diretamente conectados através de um enlace de 100 Mbps. Existe uma conexão TCP entre os dois hospedeiros e o hospedeiro A está enviando a B um arquivo enorme por meio dessa conexão. O hospedeiro A pode enviar seus dados da aplicação para o socket TCP a uma taxa que chega a 120 Mbps, mas o hospedeiro B pode ler o buffer de recebimento TCP a uma taxa de 60 Mbps. Descreva o efeito do controle de fluxo do TCP. (Kurose) 45) Considere o procedimento TCP para estimar RTT. Suponha que α = 0,1. Seja SampleRTT 1, a amostra mais recente de RTT, SampleRTT 2, a seguinte amostra mais recente de RTT etc. (Kurose) a. Para uma dada conexão TCP, suponha que quatro reconhecimentos foram devolvidos com as amostras RTT correspondentes SampleRTT 4, SampleRTT 3, SampleRTT 2 e SampleRTT 1. Expresse EstimatedRTT em termos de quatro amostras RTT. b. Generalize sua fórmula para n amostras de RTTs. c. Para a fórmula em (b.), considere n tendendo ao infinito. Comente por que esse procedimento de média é denominado média móvel exponencial. 46) Na Seção 3.5.4 vimos que o TCP espera até receber três ACKs duplicados antes de realizar uma retransmissão rápida. Na sua opinião, por que os projetistas do TCP preferiram não realizar uma retransmissão rápida após ser recebido o primeiro ACK duplicado para um segmento? (Kurose) 47) Apresente as diferenças entre os flavors TCP Tahoe e Reno. 48) Na Seção 3.5.4 discutimos a duplicação do intervalo de temporização após um evento de esgotamento de temporização. Esse mecanismo é uma forma de controle de congestionamento. Por que o TCP precisa de um mecanismo de controle de congestionamento que utiliza janelas além desse mecanismo de duplicação do intervalo de esgotamento de temporização? (Kurose)