Buscar

Avaliação II gabarito

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

UNIVERSIDADE FEDERAL DE SANTA MARIA 
 CENTRO DE TECNOLOGIA 
 DEPARTAMENTO DE ELETRÔNICA E COMPUTAÇÃO 
 ELC1106 – REDES DE COMUNICAÇÃO DE DADOS 
 PROFESSOR: CARLOS HENRIQUE BARRIQUELLO 
 
2ª AVALIAÇÃO
Nome: ______________________________________________ Data: ______________ 
1) (Peso 1.5) Dado um grafo G, com conjunto de vértices V e arestas E, escreva em pseudocódigo 
o algoritmo de Dijkstra para cálculo do caminho mais curto em número de saltos entre dois 
vértices quaisquer (explique todas as variáveis que forem utilizadas). 
// v é um nó do grafo, d(v) é a menor distância até v, e predecessor(v) é o nó que precede v no 
caminho mais curto, s é a origem, t é o destino, u é um nó temporário, d(u,v) é a distância entre u e v 
(em número de saltos é sempre 1), visitado (v) indica se v já foi visitado, a função “extrai_min” 
retorna o nó não visitado com a menor distância, e caminho (s,t) guarda o caminho mais curto de s 
até t 
 
// inicialização 
Para todo v de V 
d(v) = infinito 
visitado(v) = falso 
predecessor(v) = nulo 
d(s)=0 // a origem é iniciada com 0 
u=s 
 visitado(u) = verdadeiro 
 
// algoritmo executa até que o nó de destino t seja marcado como visitado 
Enquanto u != t 
Para todo v de V 
Se d(u,v) != infinito && visitado(v) == falso // seleciona um vizinho ainda não visitado 
 Se d(u) + d(u,v) < d(v) 
 d(v) = d(u) + d(u,v) 
predecessor(v) = u 
 Fim se 
Fim se 
Fim para 
u=extrai_min (d não visitado) // escolhe o nó não visitado com a menor distância até agora 
visitado(u) = verdadeiro 
Fim enquanto 
 
// Cada nó do caminho já tem o predecessor calculado, então é só guardar todo o caminho 
voltando do nó t até o nó s 
 
Caminho (s,t) = t 
v=t 
Enquanto v !=s 
v= predecessor(t) 
Caminho (s,t) = [Caminho(s,t) v] 
Fim enquanto 
 
 
2) (Peso 1.0) Suponha que um roteador J recebeu os vetores de distância dos roteadores A,I,H,K e 
mediu os retardos até A,I,H,K como 8, 10, 12 e 16 ms, respectivamente. Sabendo que o roteador 
J, utilizando o algoritmo de Bellman-Ford distribuído, atualizou a distância até um roteador B 
como 20 ms indo pelo roteador A, determine a distância do roteador A até o roteador B. 
 
Resposta: distância de A até B é 20ms-8ms = 12ms. 
 
3) (Peso 1.5) Considerando o cabeçalho IP abaixo com os valores representados em numeração 
hexadecimal, responda: 
 45 20 03 c5 78 06 00 00 34 06 ca 1f d1 55 ad 71 c0 a8 01 7e 
 
a. Qual a versão do protocolo IP? IPv4 (pode ser descoberto observando o tamanho do 
cabeçalho que é 20 bytes), se fosse IPv6 o cabeçalho seria bem maior, pois os 
endereços são de 128 bits cada (16 bytes cada) 
b. Qual é o endereço IP da origem em representação decimal com pontos? 
209.85.173.113. Pode ser descoberto observando o alinhamento de 32 bits do cabeçalho 
IP. Como o cabeçalho tem 20 bytes, nenhuma opção está sendo usada e, portanto, os 
endereços estão nos dois últimos campos de 32 bits. A ordem é sempre a origem 
seguida do destino. Assim, o penúltimo valor de 32 bits é o IP da origem e o último é o 
IP do destino. 
c. Qual é o endereço IP do destino em representação decimal com pontos? 
192.168.1.126 (é o último valor de 32 bits). 
 
4) (Peso 1.5) Um determinado roteador R possui a tabela de roteamento abaixo. 
Endereço de destino Linha de saída Prefixo binário 
196.80.0.0/12 1 11000100.0101 
196.94.16.0/20 2 11000100.01011110.0001 
196.96.0.0/12 3 11000100.0110 
196.104.0.0/14 4 11000100.011010 
128.0.0.0/1 5 1 
64.0.0.0/2 6 01 
 
Com base nesta informação, determine a linha de saída a ser utilizada pelo roteador R para 
encaminhar os pacotes com os seguintes endereços IP de destino. 
As respostas são obtidas usando operação lógica AND com a máscara de rede até encontrar o 
prefixo da linha de saída. 
a. 176.94.16.0 – 5 (em binário é 10110000.01011110.00010000.00000000) 
b. 96.94.19.135 – 6 (em binário é 01100000.01011110.00010011.10000111) 
c. 196.94.32.128 – 1 (em binário é 11000100.01011110.00100000.10000000) 
 
5) (Peso 1.0) Uma máquina TCP está transmitindo janelas completas de CW bytes através de um 
canal de T bps que tem um tempo de ida e volta de RTT segundos. Qual é a taxa de 
transferência (throughput) máxima que é possível alcançar? 
 
R= CW/RTT bytes por segundo ou R = 8 x CW/RTT bits por segundo 
 
6) (Peso 1.5) Os valores “00 e6 00 bd 00 11 fe 24”, representados em numeração hexadecimal, 
estavam contidos no cabeçalho de um segmento de um determinado protocolo de transporte 
utilizado na internet. Com base nestas informações, responda: 
a. Que protocolo é este? UDP (pode ser descoberto que não é TCP, porque o TCP tem no 
mínimo 20 bytes de cabeçalho). 
b. Qual é o valor da porta de origem? 00e6 = 230 em decimal. 
Pode ser descoberto pelo alinhamento e sabendo que as portas são valores de 16 bits. 
Além disso, tanto no TCP quanto no UDP as portas sempre são os primeiros campos e a 
ordem sempre é primeiro a origem e depois o destino. 
c. Qual é o valor da porta de destino? 00bd = 189 em decimal. 
 
7) (Peso 2.0) Em um determinado instante t, uma conexão TCP tem uma janela de 
congestionamento de 4000 bytes. O tamanho máximo do segmento usado é 1000 bytes. Qual é 
o tamanho da janela de congestionamento após serem enviados 4 segmentos sem a ocorrência 
de estouro de tempo (timeout). . . 
Para ambas as alternativas (a) e (b) não ocorreu timeout, portanto a janela inicia em 4000 bytes 
e é aumentada 4 vezes. 
a. Se a conexão está no modo de inicialização lenta? 
4k, 8k, 16k, 32k, 64k => 64000 bytes (neste caso dobra 4 vezes) 
b. Se a conexão está no modo de abstenção de congestionamento (modo linear)? 
4k, 5k, 6k, 7k, 8k => 8000 bytes (neste caso, aumenta um segmento a cada vez)

Outros materiais

Outros materiais