Mudanças entre as edições de "RED1-EngTel (página)"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
 
(434 revisões intermediárias por 5 usuários não estão sendo mostradas)
Linha 1: Linha 1:
__NOTOC__
+
{{DivulgueEngtelecom}}
== [[Redes de Computadores I |Ementa e referências bibliográficas]]==
 
{{Collapse top | Diário de aula de RED - 2013-2 - Prof. Tiago Semprebom}}
 
==Diário de aula de RED - 2013-2 - Prof. Tiago Semprebom==
 
  
=Instrutor=
+
==[[RED1-EngTel|Carga horária, Ementas, Bibliografia]]==
''Professor'': Tiago Semprebom, Dr. Eng.
+
==[[Cronograma de atividades (RED1-EngTel) | Cronograma de atividades ]]==
<br>''Email'': tisemp@ifsc.edu.br
+
==[[RED1-EngTel (Plano de Ensino) | Plano de Ensino]]==
<br>''Atendimento paralelo'': 3a feira 17:00h - 18:00 h e 6a feira 16h - 17h (Lab. de Desenvolvimento de Tele)
 
<br> ''Endereço web do grupo'': http://groups.google.com/group/ifsc_red
 
<br> ''Endereço de e-mail da disciplina'': ifsc_red@googlegroups.com
 
<br>
 
<br> '''IMPORTANTE:''' o direito de recuperar uma avaliação em que se faltou somente existe mediante justificativa reconhecida pela coordenação. Assim, deve-se protocolar a justificativa no prazo de 48 horas, contando da data e horário da avaliação, e aguardar o parecer da coordenação. O não cumprimento desse procedimento implica a impossibilidade de fazer a recuperação, e assim a reprovação na disciplina.
 
  
* [http://www.sj.ifsc.edu.br/~tisemp/RED/plano-de-ensino.pdf Plano da disciplina]
+
=Edições=
 +
*[[RED29004-Laboratórios_com_Imunes|RED29004 2020 em diante - Prof. Odilson T. Valle]]
 +
*[[RED29004-Laboratórios|RED29004 2020-1 - Prof. Odilson T. Valle]]
 +
*[[RED29004-Laboratórios|RED29004 2019-1 - Prof. Tiago Semprebom]]
 +
*[[RED29004-Laboratórios|RED29004 2018-2 - Prof. Odilson T. Valle]]
 +
*[[RED29004-Laboratórios|RED29004 2018-1 - Prof. Odilson T. Valle]]
 +
*[[RED29004-2017-2|RED29004 2017-2 - Prof. Odilson T. Valle]]
 +
*[[RED29004-2017-1|RED29004 2017-1 - Prof. Odilson T. Valle]]
 +
*[[RED29004-2016-2|RED29004 2016-2 - Prof. Odilson T. Valle]]
 +
*[[RED29004-2016-1|RED29004 2016-1 - Prof. Odilson T. Valle]]
 +
*[[RED29004-2015-2|RED29004 2015-2 - Prof. Odilson T. Valle]]
 +
*[[RED29004-2015-1|RED29004 2015-1 - Prof. Odilson T. Valle]]
 +
*[[RED29004-2014-2|RED29004 2014-2 - Prof. Odilson T. Valle]]
 +
*[[RED29004-2014-1|RED29004 2014-1 - Prof. Arliones Hoeller]]
 +
*[[RED29004-2013-2|RED29004 2013-2 - Prof. Tiago Semprebom]]
  
 
= Material de apoio =
 
= Material de apoio =
 +
<!--
 +
==Roteiros de laboratório==
 +
#[[RED29004-Laboratórios com Imunes#Ferramentas_b.C3.A1sicas:_Ping_e_Traceroute | Ferramentas Básicas: Ping e Traceroute]]
 +
#[[RED29004-Laboratórios com Imunes#Ferramentas_b.C3.A1sicas:_WireShark_e_tcpdump | Ferramentas básicas: WireShark e tcpdump]]
 +
#[[RED29004-Laboratórios com Imunes#Desvendando_o_HTTP_com_Wireshark | Desvendando o HTTP com Wireshark]]
 +
#[[RED29004-Laboratórios com Imunes#Desvendando_o_HTTP_com_Wireshark.2C_parte_2 | Desvendando o HTTP com Wireshark - Parte 2]]
 +
#[[RED29004-Laboratórios com Imunes#Servi.C3.A7o_de_Nomes_.28DNS.29 | Serviço de Nomes (DNS)]]
 +
#[[RED29004-Laboratórios com Imunes#Comparando_sockets_UDP_e_TCP | Comparando sockets UDP e TCP]]
 +
#[[RED29004-Laboratórios com Imunes#TCP_x_UDP | TCP x UDP]]
 +
#[[RED29004-Laboratórios com Imunes#Desvendando_o_TCP_-_N.C3.BAmero_de_Sequ.C3.AAncia.2C_Controle_de_Erros.2C_transmiss.C3.A3o_duplex | Desvendando o TCP - Número de Sequência, Controle de Erros, transmissão ''duplex'']]
 +
#[[RED29004-Laboratórios com Imunes#TCP:_Controle_de_congestionamento_e_equidade | TCP: Controle de congestionamento e equidade]]
 +
#[[RED29004-Laboratórios com Imunes#Interliga.C3.A7.C3.A3o_de_duas_redes_atrav.C3.A9s_de_um_roteador | Interligação de duas redes através de um roteador]]
 +
#[[RED29004-Laboratórios com Imunes#Tabelas_Est.C3.A1ticas_de_Roteamento | Tabelas Estáticas de Roteamento]]
 +
#[[RED29004-Laboratórios com Imunes#Protocolos_de_roteamento_din.C3.A2micos_-_RIP_e_OSPF | Protocolos de roteamento dinâmicos - RIP e OSPF]]
 +
#[[RED29004-Laboratórios com Imunes#Neighbor_Discovery_e_roteamento_est.C3.A1tico_no_IPv6 | ''Neighbor Discovery'' e roteamento estático no IPv6]]
 +
-->
  
* Listas de exercícios
+
== Listas de exercícios==
** [http://www.sj.ifsc.edu.br/~tisemp/RES/listas_exercicios/lista1.pdf Lista 1]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/listas_exercicios/lista2.pdf Lista 2]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/listas_exercicios/lista3.pdf Lista 3]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/listas_exercicios/lista4.pdf Lista 4]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/listas_exercicios/lista5.pdf Lista 5]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/listas_exercicios/lista6.pdf Lista 6]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/listas_exercicios/lista7.pdf Lista 7]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/listas_exercicios/lista8.pdf Lista 8]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/listas_exercicios/lista9.pdf Lista 9]
 
  
* Transparências utilizadas durante as aulas
+
{{Collapse top |Lista de exercícios 1 - Introdução}}
** [http://www.sj.ifsc.edu.br/~tisemp/RES/aulas/cap1.pdf Capítulo 1]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/aulas/cap2.pdf Capítulo 2]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/aulas/cap3.pdf Capítulo 3]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/aulas/cap4.pdf Capítulo 4]
 
** [http://www.sj.ifsc.edu.br/~tisemp/RES/aulas/cap5.pdf Capítulo 5]
 
  
= Curiosidades =
+
#Qual é a diferença entre um hospedeiro e um sistema final? Cite os tipos de sistemas finais. Um servidor web é um sistema final?
 +
#O que caracteriza um protocolo? Dê um exemplo de um protocolo.
 +
#Por que os padrões são importantes para os protocolos?
 +
#O que é um programa cliente? O que é um programa servidor? Um programa servidor requisita e recebe serviços de um programa cliente?
 +
#Quais são os dois tipos de serviços de transporte que a Internet provê às suas aplicações? Cite algumas características de cada um desses serviços.
 +
#Quais são as vantagens de uma rede de comutação de circuitos em relação a uma rede de comutação de pacotes?
 +
#Quais são os prós e contras da utilização de Circuitos Virtuais?
 +
#Porque se afirma que a comutação de pacotes emprega multiplexação estatística? Compare a multiplexação estatística com a multiplexação que ocorre em TDM.
 +
#Cite seis tecnologias de acesso. Classifique cada uma delas nas categorias acesso residencial, acesso corporativo ou acesso móvel.
 +
#FTTH, HFC e ADSL são usados para acesso residencial. Para cada uma dessas tecnologias de acesso, cite uma faixa de taxas de transmissão e comente se a largura de banda é compartilhada ou dedicada.
 +
#Cite tecnologias de acesso residencial disponíveis na grande Florianópolis. Para cada tipo de acesso, apresente a taxa de ''downstream'', a taxa de ''upstream'' e o preço mensal anunciados.
 +
#Qual é a taxa de transmissão de LANs Ethernet?
 +
#Qual é a vantagem de uma rede de comutação de circuitos em relação a uma de comutação de pacotes? Quais são as vantagens da TDM sobre a FDM em uma rede de comutação de circuitos?
 +
#Considere o envio de um pacote de uma máquina de origem a uma de destino por uma rota fixa. Relacione os componentes do atraso que formam o atraso fim-a-fim. Quais deles são constantes e quais são variáveis?
 +
#Suponha que o hospedeiro A queira enviar um arquivo grande para o hospedeiro B. O percurso de A para B possui três enlaces, de taxas <math>R_1 = 500 kbps, R_2 = 2 Mbps e R_3 = 1 Mbps</math>.
 +
##Considerando que não haja nenhum outro tráfego na rede, qual é a vazão para a transferência de arquivo?
 +
##Suponha que o arquivo tenha 4 milhões de bytes. Quanto tempo levará a transferência do arquivo para o hospedeiro B?
 +
##Repita os itens 1 e 2, mas agora com <math>R_2</math> reduzido para 100 kbits/s.
 +
#Porque dividimos a arquitetura da Internet em camadas?
 +
#Quais são as cinco camadas da pilha de protocolo da Internet? Quais as principais responsabilidades de cada uma dessas camadas?
 +
#O que é uma mensagem de camada de aplicação? Um segmento da camada de transporte? Um datagrama da camada de rede? Um quadro de camada de enlace? Qual a relação entre eles?
 +
#Que camadas da pilha de protocolo da Internet um roteador implementa? Que camadas um comutador de enlace implementa? Que camadas um sistema final implementa?
 +
#A noção de portas é criada pela camada de transporte na arquitetura TCP/IP. Qual a funcionalidade que as portas permitem implementar?
 +
#Considere uma aplicação que transmita dados a uma taxa constante (por exemplo, a origem gera uma unidade de dados de N bits a cada k unidades de tempo, onde k é pequeno e fixo). 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 repostas.
 +
##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ê?
 +
##Suponha que seja usada uma rede de comutação de pacotes e que o único tráfego venha de aplicações como a descrita anteriormente. Além disso, imagine que a soma das velocidades de dados da aplicação seja menor do que a capacidade de cada enlace. Será necessário algum tipo de controle de congestionamento? Por quê?
 +
#Imagine que você queira enviar, com urgência, 40 terabytes de dados de São José a Manaus. Você tem disponível um enlace dedicado de 100 Mbps para a transferência de dados. Você escolheria transferir os dados pelo enlace ou mandar mídias por Sedex 10? Explique.
 +
#Suponha que dois hospedeiros, A e B, estejam separados por uma distância de 20000 km e conectados por um enlace direto de R = 2 Mbps. Suponha que a velocidade de propagação pelo enlace seja de <math>2,5.10^8 m/s</math>.
 +
##Considere o envio de um arquivo de 800 mil bits do hospedeiro A para o hospedeiro B. Suponha que o arquivo seja enviado continuamente, como se fosse uma única grande mensagem. Qual o número máximo de bits que estará no enlace a qualquer dado instante?
 +
##Qual é o comprimento (em metros) de um bit no enlace? É maior do que o de um campo de futebol?
 +
##Considere o envio de um arquivo de 800 mil bits do hospedeiro A para o hospedeiro B. Suponha que o arquivo seja enviado continuamente, como se fosse uma única grande mensagem. Qual o número máximo de bits que estará no enlace a qualquer dado instante, mas agora com o enlace de R = 1 Gbps?
 +
##Qual é o comprimento (em metros) de um bit no enlace, mas agora com o enlace de R = 1 Gbps?
 +
## Quanto tempo demora para mandar o arquivo, admitindo que ele seja enviado continuamente?
 +
##Suponha agora que o arquivos seja fragmentado em 20 pacotes e que cada um contenha 40 mil bits. Imagine que cada pacote seja verificado pelo receptor e que o tempo de verificação de um pacote seja desprezível. Por fim, admita que o emissor não possa enviar um novo pacote até que o anterior tenha sido reconhecido por um ACK (''acknowledged'') de 500 bits. Quanto tempo demorará para ser enviado o arquivo?
 +
##Compare os tempos em ambos os casos, fragmentado e não.
 +
{{Collapse bottom}}
  
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]
+
{{Collapse top |Lista de exercícios 2 - Camada de Aplicação}}
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs/ciberespaco.pdf O Ciberespaço e as Redes de Computadores na Construção de Novo Conhecimento]
+
#Relacione cinco aplicações da Internet não proprietárias e os protocolos da camada de aplicação que elas usam.  
* [http://www.sj.ifsc.edu.br/~tisemp/RES/dissertacao_mestrado.pdf Uma história das Redes  de Computadores]
+
#Qual é a diferença entre arquitetura de rede e arquitetura de aplicação?
* [http://www.youtube.com/watch?v=9hIQjrMHTv4&eurl=http://www.insidetechno.com/2009/02/17/a-historia-da-internet-em-video/&feature=player_embedded Breve História da Internet]
+
#De que modo um mensageiro instantâneo é um híbrido das arquiteturas cliente-servidor e P2P?
 +
#Para uma sessão de comunicação entre um par de processos, qual processo é o cliente e qual é o servidor?
 +
#Que informação é usada por um processo que está rodando em um hospedeiro para identificar um processo que está rodando em outro hospedeiro?
 +
#Porque o HTTP, FTP, SMTP, POP3 e IMAP rodam sobre TCP e não sobre UDP?
 +
#Descreva como o cache Web pode reduzir o atraso na recepção de um objeto desejado. O cachê Web reduzirá o atraso para todos os objetos requisitados por um usuário ou somente para alguns objetos? Por quê?
 +
#Por que se diz que o FTP envia informações de controle “fora da banda”?
 +
#Suponha que Aline envie uma mensagem a Eduardo por meio de uma conta de e-mail da web (como o gmail), e que Eduardo acesse seu e-mail por seu servidor utilizando POP3. Descreva como a mensagem vai do hospedeiro Aline até o hospedeiro de Eduardo. Não se esqueça de relacionar a série de protocolos de camada de aplicação usados para movimentar as mensagens entre os hospedeiros.
 +
#Em uma aplicação de compartilhamento de arquivos P2P, você concorda com a afirmação: ”não existe nenhuma noção de lados cliente e servidor de uma sessão de comunicação”? Por que sim ou por que não?
 +
#A noção de portas é criada pela camada de transporte na arquitetura TCP/IP. Qual a funcionalidade que as portas permitem implementar?
 +
#Descreva todo o processo de ''download'' de um arquivo utilizando a ferramenta Bittorrent. Considere que o usuário acabou de instalar a mesma.
 +
#Relacione alguns agentes de usuário de aplicação de rede que você utiliza no dia-a-dia.  
 +
#O que significa o protocolo de apresentação (handshaking protocol)?
 +
#Considere um site de comércio eletrônico que quer manter um registro de compras para cada um de seus clientes. Descreva como isso pode ser feito com cookies.  
 +
#Descreva uma aplicação que requeira “não perda de dados” e seja também altamente sensível ao atraso.
  
==16/08/13: Apresentação da disciplina==
+
ADICIONAIS PARTE 2 - HTTP
* Apresentação da disciplina, plano de aula, trabalhos e métodos de avaliação.
 
  
==19/08/13: Introdução à Redes de Computadores==
+
#Cite pelo menos dois clientes http.
 +
#O que é o servidor Apache?
 +
#O protocolo http deve se executar em todos os roteadores do caminho entre cliente e servidor? Explique.
 +
#Se um hospedeiro colocar um pacote de aplicação HTTP diretamente na rede física ele chegará a seu destino?
 +
#Considere que um cliente acessa uma página HTML de servidor WEB e nesta página existem dois links para dois objetos JPG que residem no mesmo servidor. Quantos comandos GETS no total deveriam ser realizados pelo cliente? Todos eles serão realizados sobre a mesma conexão TCP?
 +
#Em uma página HTML pode existir um link para um objeto que esteja armazenado em outro site? O que o browser deve fazer neste caso? 
 +
#No pacote http de resposta de um servidor normalmente existem duas partes. Quais são elas?
 +
#Imagine que uma página html está sendo mostrada para o usuário cliente. Se o usuário pedir para que a página seja atualizada, o browser vai requisitar o objeto novamente? O servidor vai retornar o objeto mesmo que ele não tenha sido alterado?
 +
#O que é um cookie? Considere um site de comércio eletrônico que quer manter um registro de compras para cada um de seus clientes. Descreva como isso pode ser feito com cookies.
 +
#Qual é a diferença entre HTTP persistente com ''pipelining'' e HTTP persistente sem ''pipelining''. Qual dos dois é utilizado pelo HTTP/1.1?
 +
#Descreva como o cache Web pode reduzir o atraso na recepção de um objeto desejado. O cachê Web reduzirá o atraso para todos os objetos requisitados por um usuário ou somente para alguns objetos? Por quê?
 +
#Um servidor Web, quando recebe uma requisição necessita saber para qual porta deve responder na máquina requisitante? Se positivo, esta porta seria sempre a mesma?
 +
#Por que um servidor Web espera na porta TCP número 80 em geral?
 +
#O que é um proxy Web server?
 +
#Um browser pode fazer cache local? Qual a diferença entre cache local e cache em um servidor proxy?
  
* Breve histórico sobre o surgimento das redes de computadores e a Internet
+
ADICIONAIS PARTE 3 - DNS
** [http://www.youtube.com/watch?v=9hIQjrMHTv4&eurl=http://www.insidetechno.com/2009/02/17/a-historia-da-internet-em-video/&feature=player_embedded Vídeo sobre surgimento da Internet]
 
  
* Vídeo sobre o funcionamento das fibras ópticas
+
#Porque o DNS não é centralizado?
** [http://www.youtube.com/watch?v=T1Lt0y-TpBE Vídeo sobre fibra óptica]
+
#O que são consultas recursivas e interativas em uma consulta DNS?
 +
#Quais os três tipos de servidores DNS?
 +
#Em um hospedeiro normalmente existe pelo menos um servidor DNS configurado. Que servidor deve estar configurado? Onde ele se localiza normalmente?
 +
#Quando um servidor local não consegue resolver um endereço IP olhando em seu cache, para quem ele deve encaminhar a consulta?
 +
#Um servidor sempre sabe resolver um nome solicitado? Explique.
 +
#É possível que um servidor DNS local seja um servidor com autoridade?
 +
#O que é um nome canônico e um apelido no contexto de DNS?
 +
#O que é e qual o formato de uma RR?
 +
#Explique os seguintes tipos de RR: A, NS, CNAME, MX e PTR.
 +
#Em um comando ping www.ifsc.edu.br quantas transações no mínimo serão realizadas até o último ECHO REPLY?
 +
#Por que um ping normalmente realiza uma consulta PTR?
 +
#Faça um esquema mostrando uma consulta de um cliente a um servidor local mostrando uma consulta interativa entre o servidor raiz e recursiva com um servidor de autoridade.
 +
#Cite o nome de servidor DNS bastante utilizado.
 +
#Quantos servidores raízes temos no mundo? Qual comando permite que possamos "ver" estes servidores em um hospedeiro?
 +
#Foi realizado um comando '''dig www.ifsc.edu.br''' tendo sido retornado:
 +
#:
 +
#:  www.ifsc.edu.br.        240    IN      A      200.135.190.95
 +
#:
 +
#Em seguida foi realizado um '''dig ifsc.edu.br MX''' com resposta:
 +
#:
 +
#:  ;; ANSWER SECTION:
 +
#:  ifsc.edu.br.            1327    IN      MX      15 zimbra.ifsc.edu.br.
 +
#:
 +
#:  ;; AUTHORITY SECTION:
 +
#:  ifsc.edu.br.            2082    IN      NS      ns1.ifsc.edu.br.
 +
#:  ifsc.edu.br.            2082    IN      NS      adns1.pop-sc.rnp.br.
 +
#:  ifsc.edu.br.            2082    IN      NS      ns2.ifsc.edu.br.
 +
#:  ifsc.edu.br.            2082    IN      NS      adns2.pop-sc.rnp.br.
 +
#:
 +
#:  ;; ADDITIONAL SECTION:
 +
#:  zimbra.ifsc.edu.br.    78      IN      A      200.135.190.2
 +
#:
 +
#O que se pode concluir sobre a resolução do nome baseando-se nestas respostas?
 +
{{Collapse bottom}}
  
* [http://www.rnp.br/backbone/index.php Mapa da rede Ipê (Internet acadêmica pública no Brasil)]
+
{{Collapse top |Lista de exercícios 3 - Camada de Transporte}}
 +
#Considere uma conexão TCP entre o hospedeiro A e o hospedeiro B. Suponha que os segmentos TCP que trafegam do hospedeiro A para o hospedeiro B tenham número de porta fonte x e número de porta destino y. Quais são os números de porta fonte e do destino para os segmentos que trafegam do hospedeiro B para o hospedeiro A?
 +
#Descreva porque um desenvolvedor de aplicação pode escolher rodar uma aplicação sobre UDP em vez de sobre TCP.
 +
#É possível que uma aplicação desfrute de transferência confiável de dados mesmo quando roda sobre UDP? Caso a resposta seja afirmativa, como isso acontece?
 +
#Porque se diz que o TCP oferece comunicação lógica entre os processos de aplicação?
 +
#Cite quais são os serviços oferecidos pelo protocolo TCP?
 +
#O que são os serviços de multiplexação e demultiplexação implementados pela camada de transporte?
 +
#Porque se diz que o UDP é um protocolo não orientado para conexão?
 +
#Qual o papel das informações de porta origem e destino contidas nos segmentos TCP e UDP?
 +
#Porque é dito que o TCP fornece transferência confiável de dados sobre um canal não confiável?
 +
#Cite 3 diferenças entre os serviços oferecidos pelo TCP e UDP.
 +
#O que é um ''timeout''?
 +
#Como é estabelecido o valor de ''timeout'' em uma conexão TCP? É um valor fixo?
 +
#O que é um ''round trip time'' (RTT)? Escreva e descreva a equação.
 +
#Para que serve um ''checksum'' em um segmento TCP ou UDP? Como ele é formado?
 +
#Cite uma vantagem da abordagem Volta-N com relação à retransmissão seletiva.
 +
#Cite uma vantagem da abordagem Retransmissão Seletiva com relação ao Volta-N.
 +
#Qual é a grande desvantagem de uma transmissão do tipo “para e espera” com relação a uma do tipo “janelas deslizantes”?
 +
#O que é um PDU (também chamado de Segmento)?
 +
#O TCP oferece garantias de banda e de tempo real?
 +
#Cite um motivo para um protocolo de transmissão confiável adicionar um número de seqüência em cada pacote transmitido. Justifique o uso dessa informação explicando o problema que ocorreria caso ela não fosse usada.
 +
#Para que serve um ''timeout'' em um protocolo de transmissão confiável?
 +
#Cite um problema que pode ocorrer caso o valor do ''timeout'' seja muito pequeno.
 +
#Cite um problema que pode ocorrer caso o valor do ''timeout'' seja muito grande.
 +
#Por quê os tempos dos ''timeouts'' não são estabelecidos de forma estática, e sim de forma dinâmica, calculados conforme os ''round-trip times'' medidos?
 +
#O que é uma reconhecimento cumulativo?
 +
#Explique o que faz um receptor caso receba um pacote fora de ordem em um protocolo do tipo:
 +
##Volta-N e
 +
##Retransmissão Seletiva.
 +
#O que é um “Tamanho de Janela” em um protocolo do tipo Janela Deslizante? O que se leva em consideração para calcular seu valor no protocolo TCP?
 +
#Em um protocolo de janela deslizante qual é um problema que pode acontecer quando o maior número de Seqüência é muito próximo do “Tamanho de Janela”?
 +
#Responda verdadeiro e falso as seguintes perguntas e justifique resumidamente sua resposta:
 +
##Com o protocolo GBN, é possível o remetente receber um ACK para um pacote que caia fora de sua janela corrente.
 +
##Com o protocolo SR, é possível o remetente receber um ACK para um pacote que caia fora de sua janela corrente.
 +
##O protocolo bit alternante é o mesmo que o protocolo GBN com janela do remetente e destinatário de tamanho 1.
 +
##O protocolo bit alternante é o mesmo que o protocolo SR com janela do remetente e destinatário de tamanho 1.
 +
#Considere a transferência de um arquivo enorme de L bytes do hospedeiro A para o hospedeiro B. Suponha um MSS de 536 bytes.
 +
##Qual é o máximo valor de L tal que não sejam esgotados os números de sequência TCP? Lembre-se de que o campo de número de sequência TCP tem 4 bytes.
 +
##Para o L que obtiver no item anterior, descubra quanto tempo demora para transmitir o arquivo. Admita que um total de 66 bytes 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 Mbits/s. Ignore controle de fluxo e controle de congestionamento de modo que A possa enviar segementos um atrás do outro e continuamente.
 +
#Dadas as máquinas de estado, figuras abaixo, de um transmissor e um receptor de um protocolo "qualquer". Faça um descrição do funcionamento de ambos. Monte pelo menos dois diagramas de mensagens, destacando e relacionando possíveis sequências temporais com as máquinas de estado dadas. [[Arquivo:MaqEstadosRdt2Remetente.png|thumb|500px|Transmissor]] [[Arquivo:MaqEstadosRdt2Destinatario.png|thumb|500px|Receptor]]
 +
#O UDP e TCP usam o complemento 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 a soma dessas palavras? 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 o erro de 1 bit passe desapercebido?
 +
##E um de 2 bits?
 +
#Considere a figura abaixo (Variação do tamanho da janela). Admitindo-se que o TCP Reno é o protocolo que experimenta o comportamento mostrado no gráfico, responda às seguintes perguntas. Em todos os casos você deverá apresentar uma justificativa resumida para sua resposta.
 +
##Quais os intervalos de tempo em que a partida lenta do TCP está em execução?
 +
##Quais os intervalos de tempo em que a prevenção de congestionamento do TCP está em execução?
 +
##Após a 16a rodada de transmissão, a perda de segmento será detectada por três ACKs duplicados ou por um esgotamento de temporização?
 +
##Após a 22a rodada de transmissão, a perda de segmento será detectada por três ACKs duplicados ou por um esgotamento de temporização?
 +
##Qual é o valor de ''sstrhresh'' na primeira rodada de transmissão?
 +
##Qual é o valor de ''sstrhresh'' na 18a rodada de transmissão?
 +
##Qual é o valor de ''sstrhresh'' na 24a rodada de transmissão?
 +
##Durante qual rodada de transmissão é enviado o 70o segmento?
 +
##Admitindo-se que uma perda de pacote será detectada após 26a rodada pelo recebimento de três ACKs duplicados, quais serão os valores do tamanho da janela de congestionamento e de ''sstrhresh''?
 +
##Suponha que o TCP Tahoe seja usado (em vez do TCP Reno) e que ACKs duplicados triplos sejam recebidos na 16a rodada. Quais são o ''sstrhresh'' e o tamanho da janela de congestionamento na 19a rodada?
 +
##Suponha novamente que o TCP Tahoe seja usado, e que exista um evento de esgotamento de temporização na 22a sessão. Quantos pacotes foram enviados da 17a sessão até a 22a, inclusive?
 +
[[Arquivo:JanelaCongestionamento.png|thumb|500px|Variação do tamanho da janela]]
  
[[imagem:Internet-map.png|600px]]
+
{{Collapse bottom}}
<br>''Uma representação artística das interligações na Internet''
 
  
==23/08/13: Introdução à Redes de Computadores==
+
{{Collapse top |Lista de exercícios 4 - Camada de Rede}}
* Hosts, elementos finais e modelos de serviço.
+
#Quais são as principais características de uma rede de circuito virtual?
* Visão de serviços e componentes, borda da rede, núcleo da rede, protocolos.
+
#Quais são as principais características de uma rede de datagramas?
* Lista de exercícios 1.
+
#Porque se diz que a Internet implementa um serviço de melhor esforço? Que tipo de garantias são oferecidas neste modelo de serviço?
 +
#Quais são as funções mais importantes da camada de rede em uma rede de datagramas? Quais são as três funções mais importantes de rede em uma rede de circuitos virtuais?
 +
#O que é um protocolo de roteamento?
 +
#Como podem ser classificados os algoritmos de roteamento?
 +
#Roteadores possuem endereços IP? Quantos endereços IP um roteador possui?
 +
#Qual é a diferença básica entre protocolos de roteamento “Estado de Enlaces” e “Vetor de Distância”?
 +
#Explique o funcionamento de um algoritmo de roteamento do tipo “Vetor de Distâncias”.
 +
#A Internet usa o conceito de “roteamento hierárquico”. O que significa isso?
 +
#Um roteador em uma rede de pacotes (como é o caso da Internet) pode eventualmente necessitar descartar um datagrama. Por que isso ocorre?
 +
#Um roteador em uma rede de pacotes (como é o caso da Internet) pode eventualmente necessitar fragmentar um datagrama. Por que isso ocorre?
 +
#O que é um Sistema Autônomo (AS)?
 +
#Para que serve o protocolo ICMP?
 +
#Para que serve o campo “Time to Live” (sobrevida) em um datagrama IP?
 +
#Por que são usados protocolos inter-AS e intra-AS diferentes na Internet?
 +
#Por que considerações políticas/econômicas não são tão importantes para protocolos intra-AS, como OSPF e RIP, quanto para um protocolo de roteamento inter-AS, como BGP?
 +
#Quantos hosts podem ser endereçados com um bloco IP 200.23.16.0/20? Como podemos montar 8 sub-redes a partir deste bloco de endereços IP?
 +
#Um provedor de serviços ISP possui cerca de 2000 clientes cadastrados atualmente. Porém um levantamento realizado recentemente pelo administrador da rede constatou que nunca mais do que 450 clientes estão on-line ao mesmo tempo. Qual o bloco de endereços IP na forma CIDR (a.b.c.d/x) deve ser contratado pelo ISP, considerando o estudo realizado pelo administrador da rede?
 +
#Um administrador precisa montar uma rede experimental conforme mostrada na figura. Na sub-rede 1 ele precisará instalar cerca 25 hosts, e nas sub-redes 2 e 3 ele precisará instalar cerca de 12 hosts. O administrador dispõe do bloco de endereços IP 192.168.10.0/24 para ser utilizado no endereçamento da rede experimental. Faça uma proposta para alocação de endereços IP para cada sub-rede (rede 1, 2 e 3), incluindo também as sub-redes relativas aos enlaces ponto-a-ponto (rede AB, AC e BC). Responda ainda:
 +
##Qual o endereço identificador de rede de cada sub-rede (1, 2 e 3)?
 +
##Qual o a máscara de rede de cada sub-rede (1, 2 e 3)?
 +
##Quais os endereços IP que serão atribuídos a cada interface de rede nos enlaces ponto-a-ponto dos roteadores (enlaces relativos as redes AB, AC e BC)[[Arquivo:CdrEx.png]]
 +
#Suponha que um administrador de rede tenha recebido o bloco de endereços 200.40.8.0/21 e que deseja dividir este bloco em 8 blocos de endereços iguais, de menor tamanho, para ser alocado a 8 sub-redes administradas por ele.
 +
##Determine o tamanho total do bloco de endereços.
 +
##Determine o tamanho de cada sub-bloco.
 +
##Determine o endereço/máscara de rede de cada sub-rede.
 +
#Um provedor de acesso a Internet possui o seguinte bloco de endereços IP: 12.17.192.0/18. Os endereços IP de 12.17.192.1 até 12.17.207.255 já estão alocados para clientes deste provedor. Este provedor precisa atender a quatro novos clientes, um deles necessita de rede com pelo menos 1000 endereços de IP válidos e os outros três necessitam de rede com pelo menos 30 IP válidos. Faça uma proposta para alocação de endereços IP para estes clientes. Os endereços reservados para estes novos clientes devem ser alocados a partir da numeração mais baixa disponível. Procure também responder as questões abaixo:
 +
##Qual o total de endereços que dispõe o provedor em questão?
 +
##Quantos endereços IP já estão utilizados?
 +
##Quantos endereços IP este provedor possui livres para alocar aos novos clientes?
 +
##Qual o endereço identificador de cada sub-rede dos novos clientes?
 +
##Qual o a máscara de rede de cada sub-rede dos novos clientes?
 +
##Qual o endereço de broadcast de cada sub-rede dos novos clientes?
 +
##Quantos endereços IP ainda sobrarão ao provedor após atender a estes clientes?
 +
#Quantas estações uma rede 223.1.10.0/24 suporta?
 +
#Uma rede com bloco de IPs 200.23.16.0/20 deseja montar 8 subredes. Mostre como isso é possível e como ficaria os endereços de cada uma dessas subredes.
 +
#Um datagrama de 4000 bytes precisa ser fragmentado para passar por um roteador cujo enlace tem MTU de 1500 bytes. Mostre esquematicamente como ficam os datagramas que são gerados a partir dessa fragmentação.
 +
#Considere enviar um datagrama de 2400 bytes por um enlace que tenha uma MTU de 700 bytes. Suponha que o datagrama original esteja marcado com o número de identificação 422. Quantos fragmentos são gerados? Quais são os valores em vários campos dos datagramas IPs gerados em relação à fragmentação?
 +
#Um datagrama enviado para uma estação da mesma rede precisa passar por um roteador? Explique.
 +
#Suponha que entre o hospedeiro de origem A e o hospedeiro de destino B os datagramas estejam limitados a 1500 bytes (incluindo cabeçalho). Admitindo um cabeçalho IP de 20 bytes, quantos datagramas seriam necessários para enviar um arquivo MP3 de 5 milhões de bytes? Explique como você obteve a resposta.
 +
#Descreva e detalhe o processo de obtenção de um endereço IP através do protocolo DHCP.
 +
#Descreva e detalhe o processo de tradução de endereços de rede - NAT. Com o NAT é possível somente a conversão (troca) do número de portas? Explique.
 +
#Compare os campos de cabeçalho do IPv4 e do IPv6e aponte suas diferenças. Eles tem algum campo em comum?
 +
#Afirma-se que, quando o IPv6 implementa túneis via roteamento IPv4, o IPv6 trata os túneis IPv4 como protocolo de camada de enlace. Você concorda com essa afirmação? Explique sua resposta.
 +
#Considere uma rede de datagramas que utiliza endereços de hospedeiros de 8 bits. Suponha que um roteador utilize a correspondência do prefixo mais longo e tenha a seguinte tabela de repasse:<table border="1" cellpadding="2">
 +
<tr><th>Prefixo a comparar</th><th>Interface</th>
 +
<tr><th>1</th><td>0</td>
 +
<tr><th>10</th><td>1</td>
 +
<tr><th>111</th><td>2</td>
 +
<tr><th>senão</th><td>3</td>
 +
</table> Para cada uma das quatro interfaces, forneça a faixa associada de endereços de hospedeiro de destino e o número de endereços na faixa.
 +
{{Collapse bottom}}
  
==24/08/13: (Sábado Letivo) ==
+
{{Collapse top |Lista de exercícios 5 - Camada de Enlace e Redes Multimídia}}
* Serviços da camada de transporte.
+
#Quais são os serviços providos pela camada de enlace?
 
+
#Dentre os serviços de camada de enlace, quais obrigatoriamente precisam ser implementados por todos os protocolos de enlace?
==26/08/13: Introdução à Redes de Computadores==
+
#Porque é necessário sincronizar quadros (serviço de enquadramento)?
* Comutação de circuitos vs Comutação de pacotes.
+
#Por que se faz necessário um protocolo de acesso ao meio (MAC), em redes com meio de transmissão compartilhado?
 
+
#Do ponto de vista do protocolo MAC CSMA/CD, qual a principal diferença entre hubs e switches?
==30/08/13: Comutação de circuitos==
+
#Se as redes Ethernet atualmente podem operar com switches (Ethernet comutada), e em modo fullduplex, porque ainda existe o protocolo MAC CSMA/CD?
* Viagem à Lages: [http://sepei.ifsc.edu.br/ SEPEI 2013]
+
#Switches Ethernet Gerenciáveis são equipamentos de comutação de pacotes que podem ser configurados e observados pelos administradores de redes. Entre as informações que um administrador de rede tem acesso em um switch destes está a relação de endereços MAC conectados em cada porta do equipamento. Um administrador de rede detectou que existe um computador inundando a rede com tráfego intenso (o que pode ser causado por um virus). No entanto, ao capturar alguns dos datagramas IP desse fluxo intenso, o administrador não conseguiu reconhecer o endereço IP do computador, uma vez que ele varia entre diferentes datagramas (uma técnica para camuflar sua origem). Porém ele notou que o endereço MAC de origem, contido nos respectivos quadros Ethernet, é sempre o mesmo, o que identifica o computador que emite este tráfego. Sabendo que a rede é composta de vários switches Ethernet gerenciáveis, como o administrador poderia, sem sair de sua sala, localizar rapidamente esse computador?
 
+
#Explique o que é colisão e como estas impactam o tráfego de uma rede Ethernet. Explique como a mesma é evitada em redes comutadas, explicando como o uso de switches limitam as colisões quando comparados com hubs ou barramentos.
==02/09/13:  Arquitetura em Camadas ==
+
#Por que uma pesquisa ARP é enviada dentro de um quadro ''broadcast''? Por que uma resposta ARP é enviada dentro de um quadro com endereço MAC específico? Qual é a diferença entre esses dois quadros?
* Redes de acesso e meio físico
+
#Compare as estruturas de quadros das redes Ethernet 10BaseT, 100BaseT e Gigabit Ethernet. Quais diferenças entre elas?
* Arquitetura em Camadas
+
#Dois adaptadores, um com taxa nominal de 10001 bps e outro com taxa nominal de 9999 bps, estão conectados via par trançado, como eles conseguem trocar dados normalmente?
 
+
#Você comprou um notebook novo. Vai utilizar pela primeira vez no Câmpus São José do IFSC. Com um cabo de rede conectou seu computador à rede do IFSC e digitou no navegador de seu computador: www.polito.it. Cite todos os protocolos utilizados e todas a etapas cumpridas por seu computador, para que essa operação tenha exito.
==06/09/13: Arquitetura em Camadas ==
+
#Suponha que João esteja assistindo um vídeo de 3 Mbits/s, Maria esteja vendo uma nova imagem de 100 Kbytes a cada 30 segundos e José esteja ouvindo um fluxo de áudio a 200 kbits/s. Sabendo que o tempo de sessão para todos os usuários seja de 1000 segundos. Monte uma tabela comparativa contento a taxa de bits e o total de bytes transferidos para esses três usuários. Qual fluxo consome mais banda?
* Camadas de Protocolos
+
#Aplicações de multimídia podem ser classificados em três categorias. Relacione e descreva cada uma dessas categorias.
* Introdução Camada de Aplicação (protocolo HTTP)
+
#CDNs geralmente adotam uma de duas filosofias de posicionamento de servidor diferentes. Relacione e descreva resumidamente essas duas filosofias.
 
+
#Qual a diferença de atraso fim a fim e variação de atraso de pacote? Quais os fatores causadores de um e outro?
Ver Capítulo 27 do livro ''Comunicação de Dados e Redes de Computadores, 4a ed.'', de Behrouz Forouzan.
+
#Por que um pacote recebido após seu tempo de reprodução programado é considerado perdido?
 
+
#Qual é o papel de um registro SIP?
Na arquitetura de redes da Internet, são as aplicações que se comunicam, gerando dados no transmissor e consumindo-os no receptor.
+
{{Collapse bottom}}
 
 
[[imagem:Res-camadas3.png]]
 
<br><br>''Aplicações residem em equipamentos de rede, e se comunicam através da rede usando os serviços das camadas inferiores''
 
 
 
Aplicações são processos que se comunicam através da rede (lembre lá de ICO que processos são programas em execução). Exemplos de aplicações são navegadores web (Firefox, Chrome) e bate-papo (Skype, GTalk). A comunicação pode ser feita de diferentes formas, de acordo com o modelo de comunicação adotado pela aplicação em questão. O modelo de comunicação define o papel de cada participante da comunicação, e por consequência acaba determinando como a comunicação acontece (quem a inicia, quando se transmitem e recebem mensagens). Três modelos conhecidos são:
 
* '''Cliente-Servidor''': um participante é o cliente, e o outro o servidor. O cliente inicia a comunicação, ao enviar uma mensagem ao servidor pedindo algum serviço. Cabe ao servidor responder aos pedidos dos clientes. Este é o modelo mais comum de se encontrar em aplicações, tais como correio eletrônico, WWW, bancos de dados, compartilhamento de arquivos e outros.
 
* '''Peer-to-Peer (P2P)''': cada participante pode ser tanto cliente quanto servidor, assim qualquer um pode iniciar uma comunicação. Tornou-se popular com aplicações como compartilhamento de arquivos (ex: BitTorrent, eDonkey) e sistemas de chamadas VoIP.
 
* '''Publisher/Subscriber''': neste modelo existem os publicadores de conteúdo (''publishers'') e os assinantes ou interessados (''subscribers''). Os assinantes registram seus interesses por demais tipos de dados (isso é, assinam ''canais'' de dados). Os publicadores eventualmente divulgam dados, que são distribuídos aos assinantes. Não é comum de ser encontrado em aplicações, porém é o modelo usado para detecção de presença em aplicações de conversa on-line (Skype, Gtalk).
 
 
 
Cada aplicação usa diretamente os serviços da camada de transporte, e indiretamente os de camadas inferiores. Assim, para uma aplicação é a camada de transporte que envia e recebe suas mensagens. Como visto na aula passada, um serviço importante da camada de transporte é classificar e separar os pacotes recebidos de acordo com a aplicação que deve recebê-los, e para isso se um número chamado de ''port''. O número de port pode ser entendido como um endereçador de aplicações dentro de um mesmo ''host''. Vimos também que a camada de transporte na Internet apresenta dois protocolos, e ambos usam números de ''port'' para separar os pacotes de acordo com a comunicação que os contém:
 
* '''TCP''': usado por aplicações quando há necessidade de ter certeza de que os dados foram recebidos. Esse protocolo faz retransmissões automáticas no caso de perdas de mensagens. Para estabelecer a comunicação, ele usa o conceito de ''conexão'' (em que os dois participantes entram em acordo sobre a comunicação, e lembram disso a cada mensagem enviada e recebida) e realiza confirmações das mensagens recebidas. Este é o protocolo de transporte mais usado.
 
* '''UDP''': usado quando não é imprescindível ter certeza de que cada mensagem chegou ao destino, ou o custo de fazer isso com TCP não compensar. Não há conexões, tampouco confirmações. Exemplos de uso são chamadas VoIP e consultas DNS.
 
 
 
O estudo das aplicações da Internet inicia com WWW, que foi responsável por popularizar a Internet nos anos 90 e ainda é a aplicação mais difundida e acessada.
 
 
 
== WWW e protocolo HTTP ==
 
 
 
WWW (''World Wide Web'') é um sistema de documentos em hipermidia que são ligados e acessados na Internet ([http://pt.wikipedia.org/wiki/Www FONTE: Wikipedia]). Tendo início em 1990 como uma aplicação experimental desenvolvida por [http://pt.wikipedia.org/wiki/Tim_Berners-Lee Tim Berners-Lee], que então trabalhava no [http://pt.wikipedia.org/wiki/CERN CERN], na Suíça, em pouco tempo caiu no gosto de demais usuários e se difundiu. WWW se tornou tão popular que para muitos passou a ser sinônimo de Internet (equivocadamente). Por trás da sua rápida aceitação há um protocolo de aplicação simples e funcional, além claro do modelo de informação em hipermidia que agradou as pessoas.
 
 
 
Se o WWW é um sistema de documentoshipermidia  online mantido de forma distribuída na Internet, o protocolo [http://pt.wikipedia.org/wiki/HTTP HTTP (Hypertext Transfer Protocol)] é o protocolo usado para acessá-los. Esse protocolo segue o modelo cliente-servidor, e as comunicações são feitas com mensagens de pedido e resposta. Um cliente (navegador web) envia uma mensagem HTTP de pedido a um servidor web, que a responde com uma mensagem de resposta contendo o conteúdo solicitado. O protocolo HTTP usa o protocolo TCP para transmitir suas mensagens.
 
 
 
=== Mensagens de pedido HTTP ===
 
 
 
Mensagens HTTP de pedido possuem a seguinte estrutura:
 
 
 
<syntaxhighlight lang=text>
 
Método URI HTTP/versão_do_protocolo
 
Cabeçalho1: valor do cabeçalho1
 
Cabeçalho2: valor do cabeçalho2
 
Cabeçalho3: valor do cabeçalho3
 
CabeçalhoN: valor do cabeçalhoN
 
 
 
corpo da mensagem
 
</syntaxhighlight>
 
 
 
A primeira linha usa o campo ''método'' para indicar o tipo de pedido a ser realizado. O ''método'' HTTP pode ser entendido como um comando a ser realizado pelo servidor. Os métodos mais comuns são:
 
* '''GET''': obtém um documento.
 
* '''POST''': envia algum conteúdo e obtém como resposta um documento.
 
* '''HEAD''': obtém informações sobre um documento.
 
 
 
O campo [http://pt.wikipedia.org/wiki/URI URI (Uniform Resource Indicator)] identifica o documento que o servidor deve acessar. Ele se aparenta com um caminho de arquivo (''pathname''), porém possui algumas extensões para poder enviar informação adicional.
 
 
 
Os cabeçalhos servem para complementar o pedido, informando ao servidor mais detalhes sobre o que está sendo requisitado. Por fim, o corpo da mensagem é opcional, podendo conter dados a serem enviados ao servidor quando necessário.
 
 
 
Tendo entendido os componentes de um pedido HTTP, segue abaixo um exemplo de uma requisição real (note que ela não possui corpo de mensagem):
 
 
 
<syntaxhighlight lang=text>
 
GET /wiki/ HTTP/1.1
 
Host: wiki.sj.ifsc.edu.br
 
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:20.0) Gecko/20100101 Firefox/20.0
 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
 
Accept-Language: pt-BR,pt;q=0.8,en-US;q=0.5,en;q=0.3
 
Accept-Encoding: gzip, deflate
 
Cookie: wiki2010UserID=614; wiki2010UserName=Msobral; wiki2010Token=4ed97239498a2fc74596b0f0a62331b5; wiki2010_session=f4e6b1hl4ctlkbpe5gc5gkosi4
 
Connection: keep-alive
 
If-Modified-Since: Mon, 20 May 2013 00:38:20 GMT
 
</syntaxhighlight>
 
 
 
=== Mensagens de resposta HTTP ===
 
 
 
Mensagens HTTP de resposta possuem a seguinte estrutura:
 
 
 
<syntaxhighlight lang=text>
 
HTTP/versão_do_protocolo status info
 
Cabeçalho1: valor do cabeçalho1
 
Cabeçalho2: valor do cabeçalho2
 
Cabeçalho3: valor do cabeçalho3
 
CabeçalhoN: valor do cabeçalhoN
 
 
 
corpo da mensagem
 
</syntaxhighlight>
 
 
 
A linha inicial informa o resultado do atendimento do pedido (se teve sucesso ou não), contendo um código numérico de status seguido de uma breve descrição. Os códigos numéricos e info mais comuns são:
 
* '''200 OK''': pedido atendido com sucesso.
 
* '''302 Moved Temporarily''': o pedido pode ser atendido em outra URL.
 
* '''401 Authorization Required''': acesso negado, pois exige-se autenticação.
 
* '''403 Forbidden''': acesso negado em definitivo.
 
* '''404 Not Found''': documento não encontrado.
 
 
 
Após a linha inicial há os cabeçalhos, usados da mesma forma que em pedidos HTTP. Por fim, pode haver o corpo da mensagem (opcional). Um exemplo de mensagem de resposta segue abaixo:
 
 
 
<syntaxhighlight lang=text>
 
HTTP/1.1 200 OK
 
Date: Thu, 23 May 2013 20:43:31 GMT
 
Server: Apache
 
Last-Modified: Fri, 10 May 2013 14:09:58 GMT
 
ETag: "757236-40-4dc5db8df272a"
 
Accept-Ranges: bytes
 
Content-Length: 64
 
Vary: Accept-Encoding
 
Connection: close
 
Content-Type: text/plain; charset=UTF-8
 
 
 
Este é um pequeno arquivo de teste, sem informação útil ...
 
</syntaxhighlight>
 
 
 
==09/09/13: Camada de Aplicação ==
 
* '''Seminário Novas Tecnologias em Redes'''
 
* ''Distribuição dos temas'':
 
** Redes Veiculares (VANETS): ''Leonan e Marcus''
 
** 4G (LTE) (comparar com Wi-Max):
 
** RFID ''Letícia e Tamara'':
 
** IEEE 802.11ac (sucessor do IEEE 802.11n):
 
** ISA 100a e WirelessHart:
 
** Internet das Coisas (Internet of Things): ''Elton F. Broering e Flávia de Oliveira Barbosa''
 
 
 
* ''Sobre o Seminário de RED'':
 
** Data de entrega do documento: '''XX/XX/2013''' (impreterivelmente).
 
** Data de apresentação do trabalho: '''XX/XX/2013'''.
 
** Modelo para redação do documento .odt: [http://www.sj.ifsc.edu.br/~tisemp/RCO/modelo_documento.odt clique aqui]
 
** Modelo para redação do documento em Látex: [http://www.sj.ifsc.edu.br/~tisemp/RCO/modelo_documento_latex.tar.gz clique aqui]
 
** Minicurso Látex (apoio): [http://www.sj.ifsc.edu.br/~tisemp/RCO/minicurso-latex.pdf clique aqui]
 
** Duração da apresentação: 20 minutos + 5 minutos de perguntas.
 
** '''Modelo para apresentação''' [http://www.sj.ifsc.edu.br/~tisemp/RCO/modelo_apresentacao.odp clique aqui]
 
 
 
==13/09/13: Camada de Aplicação ==
 
* Serviço de Correio Eletrônico (SMTP, POP3 e IMAP)
 
* Serviço de Nomes: DNS
 
 
 
* Capítulo 25 do livro ''Comunicação de Dados e Redes de Computadores, 4a. ed.'', de Behrouz Forouzan.
 
 
 
 
 
DNS é um dos serviços fundamentais da Internet, tendo sido concebido em 1987 (ver [http://tools.ietf.org/html/rfc1034 RFC 1034] e [http://tools.ietf.org/html/rfc1035 RFC 1035]) !
 
 
 
O serviço DNS (Domain Name System) pode ser comparado a um grande catálogo telefônico, que possibilita que se descubra o endereço IP (nessa analogia, equivalente ao número de telefone) associado a um determinado ''nome de domínio'' (comparável ao nome de uma pessoa ou empresa). A ideia é poder endereçar máquinas com nomes mais fáceis de lidar e memorizar, ao contrário de usar endereços numéricos.
 
 
 
Lembre que:
 
* Máquinas são identificadas na Internet por endereços IP.
 
* Nomes de domínios são nomes de fácil memorização que são associados a essas máquinas.
 
 
 
A seção a seguir descreve esse serviço fundamental da Internet.
 
 
 
== Uma ''breve'' descrição sobre DNS ==
 
 
 
''O texto abaixo foi obtido de [http://informatica.hsw.uol.com.br/dns.htm Como funcionam os servidores de domínio (DNS)].''
 
 
 
 
 
Se você gasta algum tempo na internet mandando e-mails ou navegando pela web, está utilizando servidores de domínios sem mesmo perceber. O sistema DNS (''Domain Name System'') forma uma das maiores, mais ativas e mais distribuídas bases de dados do planeta. Sem o DNS, a internet acabaria rapidamente.
 
 
 
Quando você navega na internet ou manda uma mensagem de e-mail, você estará utilizando um nome de domínio. Por exemplo, a URL "http://www.hsw.com.br" contém o nome de domínio ''howstuffworks.com''. Assim como o endereço de e-mail "iknow@howstuffworks.com."
 
 
 
Nomes como “howstuffworks.com” são facilmente lembrados pelas pessoas, mas não ajudam em nada as máquinas. Todas elas usam endereços de IP para se referirem umas às outras. A máquina a que as pessoas se referem como "www.hsw.com.br", por exemplo, possui o endereço IP 216.183.103.150. Toda vez que se usa um nome de domínio, os servidores de domínios da internet (DNS) estarão traduzindo os nomes de domínio legíveis em endereços de IP reconhecidos pelas máquinas. Durante um dia de navegação e envio de e-mails, os servidores de domínios podem ser acessados inúmeras vezes.
 
 
 
'''Os servidores de domínios traduzem ''nomes de domínios'' em endereços de IP'''. Isto parece uma tarefa simples, e seria, exceto por cinco razões:
 
 
 
# Atualmente existem bilhões de endereços de IP em uso e a grande maioria das máquinas possui um nome legível associado.
 
# Alguns bilhões de requisições são feitas ao DNS todos os dias. Uma única pessoa pode fazer várias requisições em apenas um dia e existem muitas pessoas e máquinas usando a Internet diariamente.
 
# Nomes de domínio e endereços de IP podem mudar frequentemente (até mesmo diariamente).
 
# Novos nomes de domínio são criados todos os dias.
 
# Milhões de pessoas trabalham na mudança e no acréscimo de nomes de domínio e endereços de IP constantemente.
 
 
 
'''O sistema DNS é uma [http://pt.wikipedia.org/wiki/Banco_de_dados base de dados]''', e nenhuma outra em todo o globo recebe tantas requisições. É a única, também, modificada por milhões de pessoas todos os dias. Isso é o que faz o sistema DNS tão singular.
 
 
 
=== Endereços IP ===
 
 
 
Para manter todas as máquinas da Internet em perfeito funcionamento, cada uma delas é associada a um único endereço chamado endereço de IP. IP significa ''protocolo da Internet'', e é um número de 32 bits normalmente apresentado como quatro “octetos” em um “número decimal pontuado.” Um endereço de IP comum se parece com esse:
 
 
 
<syntaxhighlight lang=text>
 
216.183.103.150 
 
</syntaxhighlight>
 
 
Os quatro números em um endereço de IP são chamados de octetos por possuírem valores entre 0 e 255 (256 possibilidades por octeto).
 
 
 
Toda máquina na Internet possui seu próprio endereço de IP (na verdade, tem ao menos UM endereço). Um servidor tem um endereço IP estático, que raramente muda. Uma máquina doméstica, que se conecta através de um modem, muitas vezes possui um endereço de IP designado pelo provedor no momento da conexão. Este endereço IP é único a cada sessão e pode mudar na próxima vez que houver uma conexão. Considerando isto, um provedor precisa apenas de um endereço IP para cada modem que dá suporte, ao invés de um para cada cliente (isso vale para ADSL ou conexões 3G também).
 
 
 
Se você estiver usando um computador com sistema operacional Linux, você pode ver seu endereço IP por meio do seguinte comando:
 
 
 
<syntaxhighlight lang=bash>
 
aluno@M2:~$ ifconfig
 
eth0      Link encap:Ethernet  Endereço de HW 84:2b:2b:7c:54:f5 
 
          inet end.: 172.18.80.251  Bcast:172.18.127.255  Masc:255.255.128.0
 
          endereço inet6: fe80::862b:2bff:fe7c:54f5/64 Escopo:Link
 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Métrica:1
 
          pacotes RX:3634552 erros:0 descartados:145885 excesso:0 quadro:0
 
          Pacotes TX:608253 erros:0 descartados:0 excesso:0 portadora:0
 
          colisões:0 txqueuelen:1000
 
          RX bytes:888269786 (888.2 MB) TX bytes:195176030 (195.1 MB)
 
          IRQ:21 Memória:f7fe0000-f8000000
 
</syntaxhighlight>
 
 
 
No exemplo acima, a interface de rede ''eth0'' (que é o dispositivo de hardware ou software que liga o computador fisicamente a Internet) possui o endereço IP 172.18.80.251. As demais informações descrevem outros parâmetros e características da interface de rede, e serão estudados em momento oportuno (mas não agora ;-).
 
 
 
Para que as máquinas acessem a Internet, é necessário apenas um endereço de IP para se conectar a um servidor. Você poderia digitar em seu navegador, por exemplo, a URL http://200.135.190.28 e alcançaria a máquina que contém o servidor web do IFSC. Porém essa forma de endereçar servidores na Internet é pouco prática. Nomes de domínio são estritamente usados para a nossa conveniência.
 
 
 
=== Nomes de domínios ===
 
 
 
Se precisássemos lembrar de todos os endereços de IP das páginas da Web que visitamos diariamente, ficaríamos malucos. Seres humanos não são bons em lembrar séries de números. No entanto, somos bons na lembrança de palavras, por isso usamos os nomes de domínios. Você possui, provavelmente, vários nomes de domínios guardados em sua cabeça. Como por exemplo:
 
 
 
* www.hsw.com.br - um nome típico
 
* www.google.com - o nome mais conhecido no mundo
 
* www.mit.edu - um nome EDU (educacionais) bastante popular
 
* encarta.msn.com - um servidor da Web que não começa com www
 
* www.bbc.co.uk - um nome que utiliza quatro partes em vez de três
 
* ftp.microsoft.com - um servidor FTP (em inglês) ao invés de um servidor da Web
 
 
 
As partes COM, EDU e UK destes servidores são chamadas de domínios principais ou domínios de primeiro nível. Existem vários domínios principais, incluindo COM, EDU, GOV, MIL, NET, ORG e INT, assim como as singulares combinações de duas letras para cada país (em inglês).
 
 
 
Em cada domínio principal existe uma enorme lista de domínios secundários. No domínio principal COM, por exemplo, tem-se:
 
 
 
* howstuffworks
 
* google
 
* msn
 
* microsoft
 
* ... e milhões de outros.
 
 
 
Cada nome no domínio principal COM precisa ser único, mas podem existir réplicas entre os domínios. Por exemplo, howstuffworks.com e howstuffworks.org são duas máquinas completamente diferentes.
 
 
 
No caso de bbc.co.uk, este é um domínio terciário. São possíveis até 127 níveis, no entanto, mais do que quatro são raros.
 
 
 
A palavra mais à esquerda, como www ou encarta, é nome de hospedagem, que determina o nome de uma máquina específica (com um endereço de IP próprio) em um domínio. Um domínio concedido pode conter milhões de nomes de hospedagem desde que sejam únicos.
 
 
 
Por causa desta determinação de todos os nomes em um domínio serem únicos, é necessário que uma entidade controle a lista destes servidores e garanta que nenhuma duplicação aconteça. O domínio COM, por exemplo, não pode conter dois nomes iguais e uma empresa chamada Network Solutions (em inglês) é a responsável por manter esta lista. Ao registrar um nome de domínio, o processo passa por um dos inúmeros registradores que trabalham na Network Solutions para adicionar nomes à lista. Ao mesmo tempo, é mantida uma base de dados chamada whois (em inglês) que contém informações sobre o proprietário e o servidor de cada domínio. Se você acessar o formulário whois (em inglês), encontrará informações acerca de qualquer domínio existente.
 
 
 
Apesar de ser importante possuir uma autoridade central cuidando da base de dados referente aos nomes no domínio principal COM (e nos outros), você pode não querer centralizar a base de dados de todas as informações do domínio. A Microsoft, por exemplo, tem inúmeros endereços de IP e de nomes de hospedagens. Esta empresa quer manter seu próprio servidor de domínio pelo microsoft.com. Similarmente, a Grã-Bretanha quer administrar os domínios principais uk e a Austrália os domínios au, assim como nós brasileiros queremos administrar os domínios br. Por esta razão, o sistema DNS é um sistema partilhado. A Microsoft é completamente responsável pela manutenção do servidor microsoft.com: ela mantém as máquinas que implementam sua parte do sistema DNS, podendo mudar a base de dados de seu domínio sempre que necessitar, pois possui seus próprios servidores de domínio.
 
 
 
Todo domínio possui um servidor em algum lugar, responsável por lidar com as requisições, onde há uma pessoa mantendo os registros deste DNS. Esta é uma das partes mais extraordinárias deste sistema: ele está completamente espalhado por todo o planeta em milhões de máquinas, administradas por milhões de pessoas e, ainda assim, se comporta como uma base de dados única e integrada.
 
 
 
=== Servidores DNS ===
 
 
 
Servidores DNS fazem duas coisas o tempo todo:
 
 
 
* Aceitam solicitações de programas para converter nomes de domínios em endereços de IP.
 
* Aceitam solicitações de outros servidores para converter nomes de domínios em endereços de IP.
 
 
 
Quando uma solicitação chega, o servidor pode exercer uma das quatro opções:
 
 
 
# Pode responder diretamente com um endereço de IP, por já conhecer previamente este endereço do domínio.
 
# Pode contatar outros servidores e tentar encontrar o endereço de IP para que foi solicitado, um processo que pode ser repetido várias vezes.
 
# Pode dizer: “eu não sei o endereço de IP para o domínio solicitado, mas aqui está o endereço de IP de um servidor que sabe mais do que eu.”
 
# Pode retornar uma mensagem de erro, pois o domínio solicitado é inválido ou inexistente.
 
 
 
Ao digitar uma URL em seu navegador, o primeiro passo que este faz é converter o nome do domínio e da hospedagem em um endereço IP, para que o navegador solicite uma página da web à máquina que possui esse endereço de IP. Para fazer esta conversão, o navegador se comunica com um servidor DNS.
 
 
 
Ao configurar seu computador para se conectar a Internet, você (ou o software instalado para se conectar ao seu provedor) precisa informar ao computador qual o servidor DNS que deve ser usado para a conversão de nomes de domínios em endereços de IP. Para ver qual o servidor DNS configurado em seu computador (assumindo que ele esteja com Linux), use o comando ''nslookup'':
 
 
 
<syntaxhighlight lang=bash>
 
aluno@M2:~$ nslookup www.ifsc.edu.br
 
Server: 200.135.37.65
 
Address: 200.135.37.65#53
 
 
 
Non-authoritative answer:
 
Name: www.ifsc.edu.br
 
Address: 200.18.10.13
 
</syntaxhighlight>
 
 
 
== A estrutura das informações mantidas no DNS ==
 
 
 
Como deve ter ficado claro na [[RES-2013-1#Uma_breve_descri.C3.A7.C3.A3o_sobre_DNS|seção anterior]], '''DNS ''(Domain Name System)''''' é uma base de dados distribuída e hierárquica. Nela se armazenam informações para mapear nomes de máquinas da Internet para endereços IP e vice-versa, informação para roteamento de email, e outros dados utilizados por aplicações da Internet.
 
 
 
A informação armazenada no DNS é identificada por nomes de domínio que são organizados em uma árvore, de acordo com as divisões administrativas ou organizacionais. Cada nodo dessa árvore, chamado de ''domínio'', possui um rótulo (na seção anterior isso foi denominado ''hospedagem''). O nome de domínio de um nodo é a concatenação de todos os rótulos no caminho do nodo até a raiz. Isto é representado como uma ''string'' de rótulos listados da direita pra esquerda e separados por pontos (ex: ifsc.edu.br, sj.ifsc.edu.br). Um rótulo precisa ser único somente dentro do domínio pai a que pertence.
 
 
 
Por exemplo, um nome de domínio de uma máquina no IFSC pode ser ''mail.ifsc.edu.br'', em que ''br'' é o domínio do topo da hierarquia ao qual ''mail.sj.ifsc.edu.br'' pertence.
 
Já ''edu'' é um subdomíno de ''br'', ''ifsc'' um subdomínio de ''edu'', e ''mail'' o nome da máquina em questão.
 
 
 
Por razões administrativas, o espaço de nomes é dividido em áreas chamadas de ''zonas'', cada uma iniciando em um nodo e se estendendo para baixo para os nodos folhas ou nodos onde outras zonas iniciam. Os dados de cada zona são guardados em um ''servidor de nomes'', que responde a consultas sobre uma zona usando o protocolo DNS.
 
 
 
Clientes buscam informação no DNS usando uma biblioteca de resolução (''resolver library''), que envia as consultas para um ou mais servidores de nomes e interpreta as respostas.
 
 
 
[[Imagem:hierarquia-DNS.gif|400px]]
 
 
 
(tirado do [http://www.bind9.net/manual/bind/9.3.2/Bv9ARM.ch01.html#id2546234 manual do BIND9])
 
 
 
Ver também o [http://my.safaribooksonline.com/0-596-00158-4/dns4-CHP-2 livro sobre DNS e BIND] da O'Reilly.
 
 
 
=== Registros DNS ===
 
 
 
Cada rótulo na hierarquia DNS possui um conjunto de informações associadas a si. Essas informações são guardas em registros de diferentes tipos, dependendo de seu significado e propósito. Cada consulta ao DNS retorna assim as informações do registro pedido associado ao rótulo. Por exemplo, para ver o registro de endereço IP associado a www.ifsc.edu.br pode-se executar o comando [http://manpages.ubuntu.com/manpages/lucid/man1/dig.1.html dig] (o resultado teve alguns comentários removidos):
 
 
 
<syntaxhighlight lang=bash>
 
tisemp@M1:~$ dig sj.ifsc.edu.br mx
 
 
 
;; QUESTION SECTION:
 
;sj.ifsc.edu.br. IN MX
 
 
 
;; ANSWER SECTION:
 
sj.ifsc.edu.br. 3600 IN MX 10 hendrix.sj.ifsc.edu.br.
 
 
 
;; AUTHORITY SECTION:
 
sj.ifsc.edu.br. 3600 IN NS ns.pop-udesc.rct-sc.br.
 
sj.ifsc.edu.br. 3600 IN NS ns.pop-ufsc.rct-sc.br.
 
sj.ifsc.edu.br. 3600 IN NS hendrix.sj.ifsc.edu.br.
 
 
 
;; ADDITIONAL SECTION:
 
hendrix.sj.ifsc.edu.br. 3600 IN A 200.135.37.65
 
ns.pop-ufsc.rct-sc.br. 11513 IN A 200.135.15.3
 
ns.pop-udesc.rct-sc.br. 37206 IN A 200.135.14.1
 
</syntaxhighlight>
 
 
 
Cada uma das informações acima mostra um determinado registro e seu conteúdo, como descrito na tabela abaixo:
 
 
 
{| border="1" cellpadding="2"
 
!Nome
 
!TTL
 
!Classe
 
!Registro
 
!Conteúdo do registro
 
|-
 
|hendrix.sj.ifsc.edu.br.||3600||IN||A||200.135.37.65
 
|-
 
|sj.ifsc.edu.br.||3600||IN||NS||hendrix.sj.ifsc.edu.br.
 
|-
 
|sj.ifsc.edu.br.||3600||IN||MX||10 hendrix.sj.ifsc.edu.br.
 
|}
 
 
 
Obs: ''TTL'' é o tempo de validade (em segundos) da informação retornada do servidor de nomes, e ''classe'' é o tipo de endereço (no caso IN equivale a endereços Internet).
 
 
 
Os tipos de registros mais comuns são:
 
 
 
{| border="1" cellpadding="2"
 
!Registro
 
!Descrição
 
!Exemplo
 
|-
 
|A || Endereço (Address) || www.sj.ifsc.edu.br IN A 200.135.37.66
 
|-
 
|NS|| Servidor de nomes (Name Server) || sj.ifsc.edu.br IN NS hendrix.sj.ifsc.edu.br.
 
|-
 
|CNAME || Apelido (Canonical Name) || mail.sj.ifsc.edu.br IN CNAME hendrix.sj.ifsc.edu.br.
 
|-
 
|MX || Roteador de email (Mail Exchanger) || sj.ifsc.edu.br IN MX mail.sj.ifsc.edu.br.
 
|-
 
|SOA || dados sobre o domínio (Start of Authority)||sj.ifsc.edu.br IN SOA hendrix.sj.ifsc.edu.br. root.sj.ifsc.edu.br. 2009120102 1200 120 604800 3600
 
|-
 
|PTR || Ponteiro para nome (Pointer) || 65.37.135.200.in-addr.arpa IN PTR hendrix.sj.ifsc.edu.br.
 
|-
 
|TXT || Texto genérico (Text) || sj.ifsc.edu.br IN TXT "v=spf1 a mx ~all"
 
|}
 
 
 
Uma zona assim é composta de um conjunto de registros com todas as informações dos domínios nela contidos. O conteúdo de uma zona, contendo o domínio ''example.com'', pode ser visualizado abaixo:
 
 
 
<syntaxhighlight lang=text>
 
example.com  86400  IN SOA ns1.example.com. hostmaster.example.com. (
 
      2002022401 ; serial
 
      10800 ; refresh
 
      15 ; retry
 
      604800 ; expire
 
      10800 ; minimum
 
    )
 
      IN  NS    ns1.example.com.
 
      IN  NS    ns2.smokeyjoe.com.
 
      IN  MX  10 mail.another.com.
 
      IN  TXT  "v=spf1 mx -all"
 
  
ns1    IN  A      192.168.0.1
+
== Transparências utilizadas durante as aulas ==
www    IN  A      192.168.0.2
+
[http://docente.ifsc.edu.br/odilson/RED29004/PPTs%20-%20Cap%C3%ADtulo%201%20Redes%20de%20computadores%20e%20a%20Internet.pdf Slides do Kurose referentes ao capítulo 1]
ftp    IN  CNAME  www.example.com.
 
  
bill  IN  A      192.168.0.3
+
[http://docente.ifsc.edu.br/odilson/RED29004/PPTs%20-%20Cap%C3%ADtulo%202%20Camada%20de%20aplica%C3%A7%C3%A3o.pdf Slides do Kurose referentes ao capítulo 2]
fred  IN  A      192.168.0.4
 
</syntaxhighlight>
 
  
==16/09/13: Camada de Aplicação (Laboratório Redes I) ==
+
[http://docente.ifsc.edu.br/odilson/RED29004/Aplicacoes.pdf Slides do Prof. Emerson - DNS, FTP, Web, Email...]
===  Experimento 1: Comunicação de dados ===
 
  
A comunicação dados pode ser entendida como '''troca de informação entre dois dispositivos através de algum meio de comunicação'''. A comunicação ocorre no âmbito de um sistema de telecomunicações, composto por equipamentos (hardware) e programas (softwares). Um sistema básico de comunicação de dados se constitui de cinco componentes:
+
[http://docente.ifsc.edu.br/odilson/RED29004/PPTs%20-%20Cap%C3%ADtulo%207%20Redes%20multim%C3%ADdia.pdf Slides do Kurose referentes ao capítulo 7]
  
[[imagem:Rede-intro-1.png]]
+
[http://docente.ifsc.edu.br/odilson/RED29004/PPTs%20-%20Cap%C3%ADtulo%203%20Camada%20de%20transporte.pdf Slides do Kurose referentes ao capítulo 3] e [http://docente.ifsc.edu.br/odilson/RED29004/Kurose_cap03.pdf versão antiga]
  
# '''A mensagem''': a informação a ser transmitida. O conteúdo da mensagem, seja um texto, música, video, ou qualquer outro tipo de informação, é representada por conjuntos de '''bits''' (dígitos binários).
+
[http://docente.ifsc.edu.br/odilson/RED29004/PPTs%20-%20Cap%C3%ADtulo%204%20A%20camada%20de%20REDE.pdf Slides do Kurose referentes ao capítulo 4]
# '''Transmissor:''' dispositivo que transmite a mensagem.
 
# '''Receptor:''' dispositivo que recebe a mensagem.
 
# '''Meio de comunicação:''' caminho físico por onde viaja a mensagem do transmissor até o receptor.
 
# '''Protocolo:''' conjunto de regras que governa a comunicação de dados.
 
  
Neste experimento, vamos interagir com um servidor web e identificar esses cinco componentes.
+
[http://docente.ifsc.edu.br/odilson/RED29004/IPv6.pdf Slides do IPv6]
# Usando um navegador, acesse os seguintes links:
 
#* [http://tele.sj.ifsc.edu.br/~tisemp/RES/arquivo.txt http://tele.sj.ifsc.edu.br/~tisemp/RES/arquivo.txt]
 
#* [http://tele.sj.ifsc.edu.br/~tisemp/RES/teste.html http://tele.sj.ifsc.edu.br/~tisemp/RES/teste.html]<br><br>Quais são os componentes do sistema de comunicação de dados ?
 
# Vamos repetir o acesso aos links acima, porém sem usar o navegador. A ideia é que nós façamos o papel de navegador. Isso deve ser feito com os seguintes passos:
 
#* Abra um terminal de texto no Linux (menu ''Aplicativos->Acessórios->Terminal'').
 
#* Execute este comando: <syntaxhighlight lang=bash>
 
telnet tele.sj.ifsc.edu.br 80
 
</syntaxhighlight>
 
#* Após aparecer esta linha: <syntaxhighlight lang=text>
 
Trying 200.135.37.75...
 
Connected to integrado.sj.ifsc.edu.br.
 
Escape character is '^]'.
 
</syntaxhighlight>digite o seguinte:<syntaxhighlight lang=text>
 
GET /~tisemp/RES/arquivo.txt HTTP/1.0
 
</syntaxhighlight> e em seguida tecle ENTER duas vezes.
 
#* Agora execute o seguinte para acessar o outro link: <syntaxhighlight lang=bash>
 
telnet tele.sj.ifsc.edu.br 80
 
</syntaxhighlight>
 
#* Após aparecer esta linha: <syntaxhighlight lang=text>
 
Trying 200.135.37.75...
 
Connected to integrado.sj.ifsc.edu.br.
 
Escape character is '^]'.
 
</syntaxhighlight>digite o seguinte:<syntaxhighlight lang=text>
 
GET /~tisemp/RES/teste.html HTTP/1.0
 
</syntaxhighlight> e em seguida tecle ENTER duas vezes.
 
#* Compare o resultado das execuções desses comandos com o que se viu no navegador. Qual a diferença em cada caso ?
 
#* Identifique os componentes do sistema de comunicação de dados nesse acesso direto.
 
  
=== Experimento 2: transmissão de mensagens de aplicação ===
+
[http://docente.ifsc.edu.br/odilson/RED29004/PPTs%20-%20Cap%C3%ADtulo%205%20Camada%20de%20enlace.pdf Slides do Kurose referentes ao capítulo 5]
  
Neste experimento, serão observadas as mensagens transmitidas entre um navegador e um servidor web, e com base nelas devem ser identificados:
+
== Softwares ==
* os protocolos envolvidos e suas respectivas camadas dentro do modelo da Internet.
+
* [http://imunes.net/ Imunes] Simulador/Emulador de redes (''Integrated Multiprotocol Network Emulator/Simulator'')
* os encapsulamentos realizados por esses protocolos.
+
* [[Netkit2]]: possibilita criar experimentos com redes compostas por máquinas virtuais Linux.
* as informações que possibilitam identificar univocamente o navegador e o servidor web durante sua comunicação.
+
* Vários [http://wiki.netkit.org/index.php/Labs_Official laboratórios virtuais do NetKit], prontos para uso, que focam em serviços específicos de redes de computadores.
 +
* [http://ipv6.br/pagina/livro-ipv6/ Laboratórios de IPv6 baseado no ''CORE'']
 +
* [http://www.davidc.net/sites/default/subnets/subnets.html Calculadora visual de sub-redes]
  
# Execute o wireshark em seu computador: abra um terminal em ''Aplicativos->Terminal'' e execute <syntaxhighlight lang=bash>
+
=Curiosidades=
sudo wireshark
 
</syntaxhighlight>
 
# Na tela do wireshark, ative a captura na interface de rede eth0 (ela está listada no lado esquerdo).
 
# Usando um navegador, acesse o link [http://tele.sj.ifsc.edu.br/~tisemp/RES/arquivo.txt http://tele.sj.ifsc.edu.br/~tisemp/RES/arquivo.txt].
 
# Interrompa a captura no wireshark, clicando no menu ''Capture->Stop''.
 
# Na tela do wireshark, escreva ''http'' na caixa de edição ''Filter'', e em seguida clique em ''Apply''.
 
# Selecione o primeiro pacote da lista. Em seguida, clique no menu ''Analyze->Follow TCP Stream''. Uma tela se abrirá, e nela você poderá observar os dados transmitidos pelo navegador (em vermelho) e pelo servidor web (em azul). Esses são os dados da conversação ... todo o resto são informações de outros protocolos usadas para realizar a comunicação.
 
# Voltando à lista de pacotes mostrada pelo wireshark, observe a sequência de pacotes. Com base nela identifique:
 
#* os protocolos envolvidos
 
#* em que camada cada um deles atua
 
#* que informações mantidas nesses protocolos possibilitam identificar o navegador e o servidor web.
 
# Cada protocolo transmite e recebe pacotes com um determinado formato, composto por cabeçalho e dados carregados (''payload''). Identifique nos pacotes recebidos que partes correspondem a cabeçalho e dados carregados.
 
# '''DESAFIO:''' imagine que foram capturados pacotes em uma rede, em que se monitoram as comunicações de uma determinada pessoa sob investigação. O investigador deve analisar esses pacotes em busca de arquivos que tenham sido transmitidos. Os pacotes capturados foram salvos em um arquivo de captura do wireshark, o qual se encontra aqui:<br><br>[http://tele.sj.ifsc.edu.br/~tisemp/RES/captura.log captura.log]<br><br>Para visualizar os pacotes, use o menu ''File->Open'' do wireshark. Verifique se existem arquivos transmitidos dentro desses pacotes, e, caso afirmativo, extraia-os e visualize seus conteúdos. Para cada arquivo encontrado, informe:
 
#* qual o protocolo de aplicação usado para transmiti-lo
 
#* que computador foi usado para acessá-los, e qual servidor foi acessado.
 
  
=== Experimento 3: pacotes que passeiam pela rede ===
+
* [http://www.pop-sc.rnp.br/publico/monitoramento.php Monitoramento do tráfego RNP - PoP-SC]
 +
* [https://www.rnp.br/sistema-rnp/ferramentas/panorama-de-trafego Monitoramento do tráfego RNP - Nacional]
 +
* [http://www.redclara.net/index.php/pt/red/redclara/topologia-actual-de-la-red Rede Clara Internacional]
 +
* [https://eventos.rnp.br/sites/default/files/activity/activity-presentation/apresentacao_wrnp_2017_eduardo_grizenid_v_1.2.pdf Futura infraestrutura de rede da RNP]
 +
* [https://http2.akamai.com/demo Comparativo HTTP/1.1 vs HTTP/2]
 +
* [https://www.youtube.com/watch?v=IlAJJI-qG2k Animated map shows the undersea cables that power the internet]
 +
* [https://submarine-cable-map-2019.telegeography.com/ Submarine Cable Map 2019]
 +
* [https://www.bbc.com/portuguese/geral-50162526 A pré-história da internet]
 +
* [https://www.youtube.com/watch?v=9hIQjrMHTv4 ''History of the Internet'']
 +
* [https://www.youtube.com/watch?v=A5dD2x2iQx8 ''History of the Internet'' - legendado]
 +
* [https://www.youtube.com/watch?v=PBWhzz_Gn10 ''Warriors of the Net'']
 +
* [https://www.youtube.com/watch?v=O_xG0ay5Vqs ''Warriors of the Net'' - legendado]
 +
* [https://www.youtube.com/watch?v=VANORrzKX50 ''Browser Wars'']
 +
* [https://www.youtube.com/watch?v=1G3SUTmioQE ''Browser Wars'' - legendado]
 +
* [https://www.youtube.com/watch?v=0nz-lcuv3TM ''Browser Wars'' - dublado]
 +
* [https://db-ip.com/200.135.37.65 Localização geográfica de IPs]
 +
* [http://ipv6.br/ '''IPv6 no Brasil''']
 +
* [https://www.youtube.com/watch?v=5OtebbSnwoM Fragmentação no IPv4 e IPv6]
 +
* [http://ipv6.br/lab/ Laboratório de IPv6 - Livro didático contendo vários roteiros para entendimento do IPv6]
 +
* [https://www.google.com/intl/pt-BR/ipv6/statistics.html#tab=per-country-ipv6-adoption&tab=per-country-ipv6-adoption Estatísticas Google sobre IPv6]
 +
* [https://http2.github.io/faq/#will-http2-replace-http1x HTTP/2 Frequently Asked Questions]
 +
* [https://www.youtube.com/watch?v=8XxeAw_d-BI Iniciação à máquinas de estados]
  
Neste experimento, deve-se evidenciar a transmissão de pacotes desde o transmissor até o receptor, que pode estar em outra rede. Como já foi discutido, para que isso seja possível deve haver uma forma de transmitir esses pacotes para dispositivos intermediários na rede, que os encaminham para seus destinos. Quer dizer, os pacotes devem ser roteados até seu receptor.
+
=Seminários=
  
# Execute o wireshark em seu computador, e ative a captura de pacotes.
+
* Objetivos:
# Usando um navegador, acesse [http://wiki.sj.ifsc.edu.br/index.php/Principal esta página].
+
** Aprofundamento teórico em algum tema atual e relevante.
# Observe os pacotes transmitidos entre seu computador e o computador que atendeu seu pedido e respondeu com o conteúdo da página (isso é, o servidor web).
+
** Confecção de um relatório de trabalho no estilo científico.
#* que informações identificam essa comunicação ?
+
** Apresentação de um trabalho científico.
#* quais os protocolos envolvidos ?
 
# O servidor web está fora da rede do laboratório. Assim, os pacotes precisaram ser encaminhados pelo computador do professor para a rede da escola (lembre que o computador do professor fica entre a rede do laboratório e a do Câmpus). Portanto, nesse computador deve ser possível visualizar seus pacotes sendo transmitidos em direção ao servidor, assim como a resposta do servidor. Observe esses pacotes no wireshark executado pelo professor.
 
#* as informações que identificam suas comunicações são as mesmas que as identificadas em seu próprio computador ?
 
# Acesse [http://www.ufsc.br/ a página da UFSC]. Enquanto isso, observe na tela do projeto do laboratório o wireshark no computador do professor capturando seus pacotes.
 
#* que informações identificam suas comunicações ?
 
# O servidor web da UFSC está em outra rede. Com certeza vários equipamentos intermediários precisarão ajudar para que os pacotes cheguem lá, e as respostas voltem para os seus computadores. Para saber por onde seus pacotes passam, use este comando:<syntaxhighlight lang=bash>
 
traceroute -n www.ufsc.br
 
</syntaxhighlight>
 
#* que informação está sendo usada para encaminhar os pacotes até o servidor web da UFSC ?
 
#* que protocolo mantém e usa essa informação ?
 
  
=== Experimento 4: Aplicação Web e o protocolo HTTP ===
+
* Avaliação:
 +
** Conceito: 0,5 x Nota atribuída ao relatório + 0,5 x Nota atribuída a apresentação do seminário
 +
** [http://docente.ifsc.edu.br/odilson/RED29004/Criterios%20de%20avaliacao%20dos%20relatorios%20e%20apresentacao.pdf Critérios de avaliação]
  
Nas atividades abaixo sempre use o wireshark para observar as comunicações realizadas. Preste atenção aos encapsulamentos realizados e os protocolos envolvidos, assim como as informações mantidas por esses protocolos. Em particular, observe o endereço IP (mantido pelo protocolo IP na camada de rede)
+
* ''Instruções sobre o Seminário de Redes I'':
e números de port (mantidos por protocolos TCP e UDP na camada de transporte).
+
** 2 alunos por equipe.
 +
** Os temas devem ser propostos pelas equipes em comum acordo com o professor ou então na data limite o professor apresenta alguns temas e as equipes escolhem.
 +
** O relatório pode ser redigido como uma página da wiki ou em PDF gerado por editores/diagramadores de texto do tipo LaTeX ([https://www.overleaf.com?r=f1c329a2&rm=d&rs=b Online LaTeX Editor Overleaf]) ou outro editor qualquer.
 +
*** Detalhes e conteúdo mínimo exigido baseado no [http://docente.ifsc.edu.br/odilson/RED29004/modelo_relatorio.pdf modelo de relatório].
 +
*** Se desejar fazer em LaTeX (<span style="color: red;"> RECOMENDADO<span style="color: black;">) inscreva-se em [https://www.overleaf.com?r=f1c329a2&rm=d&rs=b Overleaf] e siga (copie) o [https://github.com/emersonmello/modelos-latex].</span></span>
 +
*** Um exemplo de bom relatório [http://docente.ifsc.edu.br/odilson/RED29004/IPv6_relatorio_modelo.pdf].
 +
** Duração da apresentação: 20 minutos (limitantes: 15 a 25 minutos) + 5 minutos de perguntas, [http://docente.ifsc.edu.br/odilson/RED29004/Exemplo_Apresentacao.pdf modelo de apresentação]
 +
** As apresentações devem obrigatoriamente ser preparadas em formato de slides ou equivalente e podem conter demonstrações, filmes, acesso a sites etc.
 +
** Existem vários modelos (templates) disponíveis de apresentações. 
 +
*** Modelo disponibilizado no  [https://github.com/emersonmello/modelos-latex]. 
 +
*** Procure aqui um template que você goste [https://www.overleaf.com/latex/templates/tagged/beamer Overleaf Template - Beamer]
  
# Para criar um servidor web muito simples, siga estes passos:
+
<span style="font-size:180%">Semestre 2023/2 </span>
## Baixe [http://tele.sj.ifsc.edu.br/~tisemp/RES/resposta este arquivo].
+
* Organização
## Execute este comando: <syntaxhighlight lang=bash>
+
# Definição do temas e equipes: '''10/11/2023'''
nc -l 8080 < resposta > pedido
+
## Equipe 1: '''Redes WiFi'''. Bryan Pacheco
</syntaxhighlight>
+
## Equipe 2: '''IoT'''. Tiago Correa Damiani e Beatriz Abreu
## Em seu navegador, acesse a URL http://127.0.0.1:8080/.
+
## Equipe 3: '''IPv6'''. Luis Eduardo de Abreu e Gustavo Ferreira de Castro
## Observe o resultado na tela do seu navegador, e veja o conteúdo do arquivo ''pedido''.
+
## Equipe 4: '''Peer-to-peer'''. Júlia Espíndola Steinbach
# Para rodar um servidor web pequeno, mas funcional, faça o seguinte:
+
## Equipe 5: '''RFID'''. Beatriz Paz Faria
## Baixe [http://tele.sj.ifsc.edu.br/~tisemp/RES/monkey-1.1.1.tar.gz este arquivo].
+
## Equipe 6: '''Protocolos de roteamento: IGRP e EIGRP'''. Leonardo Tives Voltolini
## Execute estes comandos: <syntaxhighlight lang=bash>
+
# Entrega do relatório: '''30/11'''
tar xzf monkey-1.1.1.tar.gz
+
# Apresentação dos seminários: '''12/12 a 14/12'''
cd monkey-1.1.1
 
./configure --prefix=/home/aluno/monkey
 
make
 
make install
 
</syntaxhighlight>
 
## Edite o arquivo /home/aluno/monkey/conf/sites/default e modifique a seguinte linha: <syntaxhighlight lang=text>
 
DocumentRoot /home/aluno/
 
</syntaxhighlight>
 
## Edite o arquivo /home/aluno/monkey/conf/plugins.load e verifique se ele contém o seguinte: <syntaxhighlight lang=text>
 
    # Directory Listing Plugin
 
    # ========================
 
    # When a directory is requested, this plugin will show
 
    # an HTML list of the available content to the client.
 
    #
 
    Load /home/sobral/tmp/monkey/plugins/monkey-dirlisting.so
 
</syntaxhighlight>
 
## Execute o servidor web: <syntaxhighlight lang=bash>
 
/home/aluno/monkey/bin/monkey
 
</syntaxhighlight>
 
## Com seu navegador, acesse http://127.0.0.1:2001/
 
## Experimente navegar pelos links mostrados.
 
# Acesse as seguintes páginas, identificando o método HTTP, a URI, a versão do protocolo e os cabeçalhos enviados e recebidos. Verifique também se há corpo da mensagem no pedido ou na resposta:
 
#* [http://tele.sj.ifsc.edu.br/~tisemp/RES/arquivo.txt File]
 
#* [http://tele.sj.ifsc.edu.br/~tisemp/RES/lagoa.jpg Lake]
 
#* [http://tele.sj.ifsc.edu.br/~tisemp/RES/teste.html Test]
 
#* [https://www.ifsc.edu.br/ https://www.ifsc.edu.br/]
 
# Acesse a página abaixo, e use o wireshark para acompanhar a comunicação. O que se pode ver de diferente em relação à atividade anterior ?
 
#* [http://tele.sj.ifsc.edu.br/~msobral/res/form.html Formulário]
 
# Acesse a página abaixo, e observe quantas requisições HTTP são geradas a partir desse acesso. Como você explica essa quantidade de requisições ?
 
#* [http://tele.sj.ifsc.edu.br/~tisemp/RES/muitos.html Diversos]
 
  
== Para pensar ==
+
{{collapse top |Semestre 2023/1}}
 +
<span style="font-size:180%">Semestre 2023/1 </span>
 +
* Organização
 +
# Definição do temas e equipes: 16/05/2023
 +
## Equipe 1: '''Protocolo WiFi'''. Rafael Mery e Sérgio Rohling
 +
## Equipe 2: '''Redes 5G'''. Gian e Beatriz
 +
## Equipe 3: '''Redes Mesh'''. Gabriel e Ricardo.
 +
# Entrega do relatório escrito: 09/06/2023
 +
# Apresentação dos seminários: 23 e 27/06/2023
 +
{{collapse bottom}}
  
# Para que o protocolo HTTP é usado atualmente além de acesso a documentos na web? Faça uma pesquisa sobre isso.
+
{{collapse top |Semestre 2022/2}}
# Pesquise o significado dos cabeçalhos HTTP vistos nos acessos feitos na aula de hoje.
+
<span style="font-size:180%">Semestre 2022/2 </span>
 +
* Organização
 +
# Definição do temas e equipes: 03/11/2022
 +
## '''Internet via satélite''': Ramon dos Santos Sobrinho e José Roberto Brincas Junior;
 +
## '''RADIUS''': Arthur Cadore, Matheus Pires, Gabriel Luiz;
 +
## '''VOIP''': Marcos Wagner e Julio César.
 +
## '''RFID''': Faber Bernardo, Lucas Costa Fontes e Jamilly Da Silva Pinheiro;
 +
## '''PPPoE''': Igor Silva Vieira e Rhenzo Hideki;
 +
## '''P2P''': Jonathan Santos, Tiago Nelson e Rafael Ramos
 +
## '''TR-069''': Bruno Hamon Porto, Joana da Silva e Igor Budag de Oliveira
 +
# Entrega do relatório escrito: 27/11/2022
 +
# Apresentação dos seminários: 8, 12 e 15/12/2022
 +
{{collapse bottom}}
  
=== Considerações finais ===
+
{{collapse top |Semestre 2022/1}}
 +
<span style="font-size:180%">Semestre 2022/1 </span>
 +
* Organização
 +
# Definição do temas e equipes: 24/06/2022
 +
##Alisson e Gustavo: LoRaWAN
 +
##Jailson e Lucas: Protocolos IoT
 +
# Entrega do relatório escrito: 10/07/2022
 +
# Apresentação dos seminários: 20/07/2022
 +
{{collapse bottom}}
  
Os experimentos realizados buscaram introduzir alguns mecanismos envolvidos na comunicação através de uma rede de computadores. Tais mecanismos são implementados por alguns protocolos, lembrando que um protocolo especifica o ''formato dos pacotes transmitidos'' e as ''regras de comunicação para intercâmbio desses pacotes''. Durante os experimentos, teve-se contato com alguns protocolos importantes envolvidos em comunicações na Internet, assim como algumas das principais informações definidas e usadas por esses protocolos. A visualização da hierarquia em que operam esses protocolos buscou mostrar o modelo de camadas da Internet, que define como deve funcionar um sistema que se comunica nesse tipo de rede.
+
{{collapse top |Semestre 2021/1}}
 +
<span style="font-size:180%">Semestre 2021/2 </span>
 +
* Organização
 +
# Definição do temas e equipes: 16/02/2022
 +
##Wagner e Lucas: '''IPTV'''
 +
##Gabriela e Yago: '''5G'''
 +
##Athos e Lucas May: '''Blockchain'''
 +
##Ramon e José Roberto: '''Internet via satélite'''
 +
##Natália e Pedro Henrique: '''NFC'''
  
'''Para pensar:'''
+
# Entrega do relatório escrito: 02/03/2022
* Para cada experimento, desenhe um diagrama de rede que mostre os equipamentos envolvidos. Para cada equipamento, desenhe também o modelo de camadas da Internet. Por fim, mostre o fluxo dos pacotes através dessas camadas (desde o transmissor até o receptor), indicando:
+
# Apresentação dos seminários: 11/03/2022
** que protocolo foi usado em cada camada.
+
{{collapse bottom}}
** que serviço cada protocolo realizou.
 
** que informações foram usadas por cada protocolo.
 
  
==20/09/13: Camada de Aplicação (Laboratório Redes I) ==
+
{{collapse top |Semestre 2021/1}}
=== Atividade: Serviço de Nomes (DNS) ===
+
* Organização:
<!--
+
# Definição do temas e equipes: 30/07/2021
# Usando o programa [http://manpages.ubuntu.com/manpages/hardy/man1/host.1.html host] ou [http://manpages.ubuntu.com/manpages/hardy/man1/dig.1.html dig], descubra os endereços IP associados aos seguintes nomes de domínios:
+
#*Mike - LiFi
#* mail.ifsc.edu.br
+
#*João Vitor - BLE (''Bluetooth Low Energy'')
#* www.sj.ifsc.edu.br
+
# Entrega do relatório escrito: 19/08/2021
#* www.google.com
+
# Apresentação dos seminários: 02/09/2021
#* www.gmail.com
+
{{collapse bottom}}
#* www.amazon.co.uk
 
#* www.gov.za
 
#* www.sls.com.au
 
# Agora descubra quem é o servidor DNS responsável por cada um dos domínios dos nomes acima. Para isso consulte o valor do registro NS associado a esses domínios. Por exemplo, com o programa ''host'' isso pode ser feito assim: <syntaxhighlight lang=bash>
 
host -t ns ifsc.edu.br
 
</syntaxhighlight>
 
# Descubra qual o servidor DNS usado pelo seu computador. Para isso é mais fácil usar o programa [http://manpages.ubuntu.com/manpages/lucid/man1/nslookup.1.html nslookup]: <syntaxhighlight lang=bash>
 
# Use o nslookup para consultar o endereço IP de um nome qualquer ...
 
nslookup www.ifsc.edu.br
 
</syntaxhighlight>
 
# Agora que já está ficando claro como funcionam as consultas DNS, deve-se investigar como se dá a comunicação entre seu computador e seu servidor DNS. Portanto, execute o wireshark: <syntaxhighlight lang=bash>
 
sudo wireshark
 
</syntaxhighlight>... e em seguida faça uma consulta DNS qualquer. Com base nisso identifique o seguinte:
 
#* Quantas mensagens são trocadas entre cliente e servidor DNS para cada consulta ?
 
#* Que protocolo de transporte é usado ? E que port ?
 
#* Qual o formato das mensagens DNS ? Elas são textuais como as mensagens HTTP ou SMTP ?
 
#* Qual o tipo de registro DNS acessado em cada consulta ?
 
#* Que informações estão contidas nas respostas DNS ? Há algo além do que foi pedido ?
 
#* Qual o tamanho das mensagens DNS ?
 
# O serviço DNS fornece outras informações além do endereço IP associado a cada nome de domínio. Por exemplo, como ele se pode descobrir que ''host'' recebe emails em um determinado domínio. Isso é utilizado pelos MTA mundo afora para entregarem emails para seus destinatários (lembre que isso se faz com o protocolo SMTP). Para descobrir essa informação, deve-se consultar o registro MX de um domínio. Por exemplo: <syntaxhighlight lang=bash>
 
host -t mx ifsc.edu.br
 
</syntaxhighlight>Descubra quem é o servidor que recebe emails nos seguintes domínios:
 
#* gmail.com
 
#* hotmail.com
 
#* uol.com.br
 
#* ufsc.br
 
# Outra informação útil guardada por servidores DNS é a tradução de endereço IP para nome de domínio. Isso é chamado de tradução reversa (ou DNS reverso). Usando os programas de diagnóstico já vistos, isso pode ser feito assim: <syntaxhighlight lang=bash>
 
dig -x 200.180.10.13
 
</syntaxhighlight> ... o ''dig'' tem um resultado um pouco mais carregado que os outros utilitários (''host'' e ''nslookup''), porém neste caso é mais prático. Veja o resultado da consulta logo após a linha '';; ANSWER SECTION:''. Experimente fazer a resolução reversa para cada um dos IP obtidos nas consultas realizadas no primeiro exercício desta atividade.
 
# Como explicado durante a aula, DNS é um banco de dados distribuído. Isso quer dizer que suas informações estão espalhadas em milhares (ou milhões ?) de servidores DNS mundo afora. Cada servidor DNS mantém os dados dos domínios por que é responsável. Será que é possível rastrear todos os servidores DNS que devem ser consultados até chegar ao servidor do domínio procurado ?
 
## Descubra quem são os servidores raiz (topo de hierarquia DNS): <syntaxhighlight lang=bash>
 
host -t ns .
 
</syntaxhighlight>
 
## Escolha um dos servidores listados, e use-o para fazer as consultas. Por exemplo: <syntaxhighlight lang=bash>
 
host -v -t a www.sj.ifsc.edu.br. j.root-servers.net.
 
</syntaxhighlight>... e observe a seção '';; AUTHORITY SECTION:''. Ele contém a listagem de servidores DNS que podem atender sua consulta.
 
## Continue fazendo as consultas aos servidores DNS listados, até conseguir traduzir o nome requisitado. Quantos servidores DNS foi necessário consultar no total ?
 
## Repita esse exercício para os seguintes nomes de domínio:
 
##* www.bbc.co.uk
 
##* www.amazon.com
 
##* www.thepiratebay.org
 
##* www.reeec.illinois.edu
 
##* www.inm.ras.ru
 
-->
 
  
==23/09/13: ==
+
{{collapse top | Semestre 2020/2}}
 +
<span style="font-size:180%">Semestre 2020/2 </span>
 +
* Organização
 +
# Definição do temas e equipes: 04/03/2021
 +
## Alana e Vinícius: '''Segurança em Wi-Fi'''.
 +
## Filipi: '''Internet via satélite'''.
 +
# Entrega do relatório escrito: 25/03/2021
 +
# Apresentação dos seminários: 15/04/2021
 +
{{collapse bottom}}
  
==27/09/13: ==
+
{{collapse top | Semestre 2020/1}}
 +
* Organização
 +
# Definição do temas: 18/06/2020
 +
## Arthur Anastopulos dos Santos: Segurança em Cloud Computing / Nuvens Computacionais.
 +
## Deivid Fortunato Frederico: GPON.
 +
## Isadora Schmidt de Souza: Segurança em Rede.
 +
## Matheus Medeiros: Segurança em Redes Wireless IEEE 802.11.
 +
## Jéssica Carrico e Pedro Pretto: 5G.
 +
# Entrega do relatório escrito: 21/08/2020
 +
# Apresentação dos seminários: ??/08/2020
 +
{{collapse bottom}}
  
==30/09/13: ==
+
{{collapse top | Semestre 2019/2}}
 +
* '''Entrega do documento escrito''': dia '''27/11/2019'''.
 +
* '''Realização dos Seminários''': dias '''04/12''' e '''06/12/2019'''.
  
==04/10/13: ==
+
** (04/12)-Jean e Jefferson Botitano: '''Padrão IEEE 802.15.4 / ZigBee'''.
 +
** (04/12)-Pedro e Vinícius: '''Blockchain'''.
 +
** (06/12)-Christian e Matheus: '''Padrão IEEE 802.11ac/ad'''.
 +
** (04/12)-Alisson: '''BLE'''.
 +
** (04/12)-Isadora: '''Segurança em Redes'''.
 +
** (04/12)-Anderson: '''LoRaWAN'''.
 +
** (06/12)-Leonardo e Jeferson Jair: '''Computação em Nuvem'''.
 +
** (06/12)-Deivid: '''Indústria 4.0'''.
 +
** (06/12)-Irla e Jhonatan '''Li-Fi'''.
 +
** (04/12)-Amanda '''5G'''.
 +
*
 +
{{collapse bottom}}
 +
{{collapse top | Semestre 2019/1}}'''Entrega do documento escrito''': dia 23/06/2019.'''Realização dos Seminários''': dias 27/06 e 01/07/2019.Bruno e Gustavo: '''Segurança na Rede'''.Maria Gabriela: '''5G'''.
 +
* Amanda e Joseane: '''NFC'''.
  
==07/10/13: ==
+
* Luan e Gabriel: '''Blockchaim'''.
 +
* Guilherme: '''Computação em Nuvem'''.
  
==11/10/13:  ==
 
  
==14/10/13:  ==
+
{{collapse bottom}}
  
==18/10/13:  ==
+
{{collapse top | Semestre 2018/2}}
  
==19/10/13: (Sábado Letivo) ==
+
* Datas Importantes
 +
# Definição do temas: 15/10/2018
 +
## Luiza Alves da Silva: '''Criptografia na Rede'''. Dia 10/12
 +
## Sarom e Marcelo: '''Evolução da tecnologia DOCSIS'''. Dia 13/12
 +
## André e Thiago: '''GPON'''. Dia 06/12
 +
## Eduarda e Guilherme: '''Deep Web'''. Dia 10/12
 +
## Stefanie e Camilla: '''Computação em nuvem'''. Dia 13/12
 +
## Elisa e Osvaldo: '''LoRaWAN'''. Dia 10/12
 +
## Daniel: '''Segurança em redes sem fio'''
 +
## Gabriel Santos: '''VoIP'''. Dia 13/12
 +
## Matheus: '''Industria 4.0'''. Dia 06/12
 +
## Alexandre: '''BlockChain'''. Dia 13/12
 +
## Gabriel Turnes: '''5G'''. Dia 06/12
 +
# Entrega do relatório escrito: 22/11/2018
 +
# Apresentação dos seminários: 06-13/12/2018
  
==21/10/13:  ==
+
{{collapse bottom}}
  
==25/10/13:  ==
+
{{collapse top | Semestre 2018/1}}
  
==28/10/13: ==
+
* Data de definição dos temas: 15/05/2018.
 
+
* Data de entrega do relatório: 11/06/2018.
==01/11/13: ==
+
* Data das apresentações: 25/06/2018 e 26/06/2018.
 
+
* '''[http://docente.ifsc.edu.br/odilson/RED29004/Tecnologia%20LoRaWAN_Victor_Augusto_Comentado.pdf Tecnologia LoRaWAN]''': Augusto da Silveira Willemann, Andre Luiz Faraco Mazucheli e Victor Cesconetto De Pieri
==04/11/13:  ==
+
* '''[http://docente.ifsc.edu.br/odilson/RED29004/Proxy%20Reverso%20-%20Jeneffer%20e%20Jo%C3%A3o%20Pedro%20Comentado.pdf Proxy reverso]''': Jennifer e João
 
+
* '''[http://docente.ifsc.edu.br/odilson/RED29004/Felipe_Relatorio_IoT_e_6LoWPAN_Comentado.pdf 6LowPAN]''': Felipe Cardoso
==08/11/13: ==
+
* '''[http://docente.ifsc.edu.br/odilson/RED29004/Gabriel%20Santos%20de%20Souza%20-%20Relat%C3%B3rio%20Semin%C3%A1rio%20Comentado.pdf Li-Fi]''': Gabriel Santos de Souza
 
+
* '''[http://docente.ifsc.edu.br/odilson/RED29004/Alisson,%20Alexandre%20e%20Guilherme%20(SEMINARIO%20REDES)%20Comentado.pdf Internet via satélite]''': Guilherme, Alisson e Alexandre
==11/11/13:  ==
+
* '''[http://docente.ifsc.edu.br/odilson/RED29004/luiza%20alves%20da%20silva%20Comentado.pdf 5G]''': Luiza Alves da Silva
 
+
{{collapse bottom}}
==15/11/13: ==
 
 
 
==18/11/13:  ==
 
 
 
==22/11/13: ==
 
 
 
==25/11/13:  ==
 
 
 
==29/11/13: ==
 
 
 
==02/12/13:  ==
 
 
 
==06/12/13: ==
 
 
 
==09/12/13:  ==
 
 
 
==13/12/13: ==
 
* Avaliações de recuperação finais da disciplina
 
 
 
==16/12/13: Encerramento da Disciplina==
 
{{Collapse bottom}}
 

Edição atual tal como às 20h02min de 11 de março de 2024

MURAL DE AVISOS E OPORTUNIDADES DA ÁREA DE TELECOMUNICAÇÕES



Carga horária, Ementas, Bibliografia

Cronograma de atividades

Plano de Ensino

Edições

Material de apoio

Listas de exercícios

Lista de exercícios 1 - Introdução
  1. Qual é a diferença entre um hospedeiro e um sistema final? Cite os tipos de sistemas finais. Um servidor web é um sistema final?
  2. O que caracteriza um protocolo? Dê um exemplo de um protocolo.
  3. Por que os padrões são importantes para os protocolos?
  4. O que é um programa cliente? O que é um programa servidor? Um programa servidor requisita e recebe serviços de um programa cliente?
  5. Quais são os dois tipos de serviços de transporte que a Internet provê às suas aplicações? Cite algumas características de cada um desses serviços.
  6. Quais são as vantagens de uma rede de comutação de circuitos em relação a uma rede de comutação de pacotes?
  7. Quais são os prós e contras da utilização de Circuitos Virtuais?
  8. Porque se afirma que a comutação de pacotes emprega multiplexação estatística? Compare a multiplexação estatística com a multiplexação que ocorre em TDM.
  9. Cite seis tecnologias de acesso. Classifique cada uma delas nas categorias acesso residencial, acesso corporativo ou acesso móvel.
  10. FTTH, HFC e ADSL são usados para acesso residencial. Para cada uma dessas tecnologias de acesso, cite uma faixa de taxas de transmissão e comente se a largura de banda é compartilhada ou dedicada.
  11. Cite tecnologias de acesso residencial disponíveis na grande Florianópolis. Para cada tipo de acesso, apresente a taxa de downstream, a taxa de upstream e o preço mensal anunciados.
  12. Qual é a taxa de transmissão de LANs Ethernet?
  13. Qual é a vantagem de uma rede de comutação de circuitos em relação a uma de comutação de pacotes? Quais são as vantagens da TDM sobre a FDM em uma rede de comutação de circuitos?
  14. Considere o envio de um pacote de uma máquina de origem a uma de destino por uma rota fixa. Relacione os componentes do atraso que formam o atraso fim-a-fim. Quais deles são constantes e quais são variáveis?
  15. Suponha que o hospedeiro A queira enviar um arquivo grande para o hospedeiro B. O percurso de A para B possui três enlaces, de taxas .
    1. Considerando que não haja nenhum outro tráfego na rede, qual é a vazão para a transferência de arquivo?
    2. Suponha que o arquivo tenha 4 milhões de bytes. Quanto tempo levará a transferência do arquivo para o hospedeiro B?
    3. Repita os itens 1 e 2, mas agora com reduzido para 100 kbits/s.
  16. Porque dividimos a arquitetura da Internet em camadas?
  17. Quais são as cinco camadas da pilha de protocolo da Internet? Quais as principais responsabilidades de cada uma dessas camadas?
  18. O que é uma mensagem de camada de aplicação? Um segmento da camada de transporte? Um datagrama da camada de rede? Um quadro de camada de enlace? Qual a relação entre eles?
  19. Que camadas da pilha de protocolo da Internet um roteador implementa? Que camadas um comutador de enlace implementa? Que camadas um sistema final implementa?
  20. A noção de portas é criada pela camada de transporte na arquitetura TCP/IP. Qual a funcionalidade que as portas permitem implementar?
  21. Considere uma aplicação que transmita dados a uma taxa constante (por exemplo, a origem gera uma unidade de dados de N bits a cada k unidades de tempo, onde k é pequeno e fixo). 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 repostas.
    1. 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ê?
    2. Suponha que seja usada uma rede de comutação de pacotes e que o único tráfego venha de aplicações como a descrita anteriormente. Além disso, imagine que a soma das velocidades de dados da aplicação seja menor do que a capacidade de cada enlace. Será necessário algum tipo de controle de congestionamento? Por quê?
  22. Imagine que você queira enviar, com urgência, 40 terabytes de dados de São José a Manaus. Você tem disponível um enlace dedicado de 100 Mbps para a transferência de dados. Você escolheria transferir os dados pelo enlace ou mandar mídias por Sedex 10? Explique.
  23. Suponha que dois hospedeiros, A e B, estejam separados por uma distância de 20000 km e conectados por um enlace direto de R = 2 Mbps. Suponha que a velocidade de propagação pelo enlace seja de .
    1. Considere o envio de um arquivo de 800 mil bits do hospedeiro A para o hospedeiro B. Suponha que o arquivo seja enviado continuamente, como se fosse uma única grande mensagem. Qual o número máximo de bits que estará no enlace a qualquer dado instante?
    2. Qual é o comprimento (em metros) de um bit no enlace? É maior do que o de um campo de futebol?
    3. Considere o envio de um arquivo de 800 mil bits do hospedeiro A para o hospedeiro B. Suponha que o arquivo seja enviado continuamente, como se fosse uma única grande mensagem. Qual o número máximo de bits que estará no enlace a qualquer dado instante, mas agora com o enlace de R = 1 Gbps?
    4. Qual é o comprimento (em metros) de um bit no enlace, mas agora com o enlace de R = 1 Gbps?
    5. Quanto tempo demora para mandar o arquivo, admitindo que ele seja enviado continuamente?
    6. Suponha agora que o arquivos seja fragmentado em 20 pacotes e que cada um contenha 40 mil bits. Imagine que cada pacote seja verificado pelo receptor e que o tempo de verificação de um pacote seja desprezível. Por fim, admita que o emissor não possa enviar um novo pacote até que o anterior tenha sido reconhecido por um ACK (acknowledged) de 500 bits. Quanto tempo demorará para ser enviado o arquivo?
    7. Compare os tempos em ambos os casos, fragmentado e não.
Lista de exercícios 2 - Camada de Aplicação
  1. Relacione cinco aplicações da Internet não proprietárias e os protocolos da camada de aplicação que elas usam.
  2. Qual é a diferença entre arquitetura de rede e arquitetura de aplicação?
  3. De que modo um mensageiro instantâneo é um híbrido das arquiteturas cliente-servidor e P2P?
  4. Para uma sessão de comunicação entre um par de processos, qual processo é o cliente e qual é o servidor?
  5. Que informação é usada por um processo que está rodando em um hospedeiro para identificar um processo que está rodando em outro hospedeiro?
  6. Porque o HTTP, FTP, SMTP, POP3 e IMAP rodam sobre TCP e não sobre UDP?
  7. Descreva como o cache Web pode reduzir o atraso na recepção de um objeto desejado. O cachê Web reduzirá o atraso para todos os objetos requisitados por um usuário ou somente para alguns objetos? Por quê?
  8. Por que se diz que o FTP envia informações de controle “fora da banda”?
  9. Suponha que Aline envie uma mensagem a Eduardo por meio de uma conta de e-mail da web (como o gmail), e que Eduardo acesse seu e-mail por seu servidor utilizando POP3. Descreva como a mensagem vai do hospedeiro Aline até o hospedeiro de Eduardo. Não se esqueça de relacionar a série de protocolos de camada de aplicação usados para movimentar as mensagens entre os hospedeiros.
  10. Em uma aplicação de compartilhamento de arquivos P2P, você concorda com a afirmação: ”não existe nenhuma noção de lados cliente e servidor de uma sessão de comunicação”? Por que sim ou por que não?
  11. A noção de portas é criada pela camada de transporte na arquitetura TCP/IP. Qual a funcionalidade que as portas permitem implementar?
  12. Descreva todo o processo de download de um arquivo utilizando a ferramenta Bittorrent. Considere que o usuário acabou de instalar a mesma.
  13. Relacione alguns agentes de usuário de aplicação de rede que você utiliza no dia-a-dia.
  14. O que significa o protocolo de apresentação (handshaking protocol)?
  15. Considere um site de comércio eletrônico que quer manter um registro de compras para cada um de seus clientes. Descreva como isso pode ser feito com cookies.
  16. Descreva uma aplicação que requeira “não perda de dados” e seja também altamente sensível ao atraso.

ADICIONAIS PARTE 2 - HTTP

  1. Cite pelo menos dois clientes http.
  2. O que é o servidor Apache?
  3. O protocolo http deve se executar em todos os roteadores do caminho entre cliente e servidor? Explique.
  4. Se um hospedeiro colocar um pacote de aplicação HTTP diretamente na rede física ele chegará a seu destino?
  5. Considere que um cliente acessa uma página HTML de servidor WEB e nesta página existem dois links para dois objetos JPG que residem no mesmo servidor. Quantos comandos GETS no total deveriam ser realizados pelo cliente? Todos eles serão realizados sobre a mesma conexão TCP?
  6. Em uma página HTML pode existir um link para um objeto que esteja armazenado em outro site? O que o browser deve fazer neste caso?
  7. No pacote http de resposta de um servidor normalmente existem duas partes. Quais são elas?
  8. Imagine que uma página html está sendo mostrada para o usuário cliente. Se o usuário pedir para que a página seja atualizada, o browser vai requisitar o objeto novamente? O servidor vai retornar o objeto mesmo que ele não tenha sido alterado?
  9. O que é um cookie? Considere um site de comércio eletrônico que quer manter um registro de compras para cada um de seus clientes. Descreva como isso pode ser feito com cookies.
  10. Qual é a diferença entre HTTP persistente com pipelining e HTTP persistente sem pipelining. Qual dos dois é utilizado pelo HTTP/1.1?
  11. Descreva como o cache Web pode reduzir o atraso na recepção de um objeto desejado. O cachê Web reduzirá o atraso para todos os objetos requisitados por um usuário ou somente para alguns objetos? Por quê?
  12. Um servidor Web, quando recebe uma requisição necessita saber para qual porta deve responder na máquina requisitante? Se positivo, esta porta seria sempre a mesma?
  13. Por que um servidor Web espera na porta TCP número 80 em geral?
  14. O que é um proxy Web server?
  15. Um browser pode fazer cache local? Qual a diferença entre cache local e cache em um servidor proxy?

ADICIONAIS PARTE 3 - DNS

  1. Porque o DNS não é centralizado?
  2. O que são consultas recursivas e interativas em uma consulta DNS?
  3. Quais os três tipos de servidores DNS?
  4. Em um hospedeiro normalmente existe pelo menos um servidor DNS configurado. Que servidor deve estar configurado? Onde ele se localiza normalmente?
  5. Quando um servidor local não consegue resolver um endereço IP olhando em seu cache, para quem ele deve encaminhar a consulta?
  6. Um servidor sempre sabe resolver um nome solicitado? Explique.
  7. É possível que um servidor DNS local seja um servidor com autoridade?
  8. O que é um nome canônico e um apelido no contexto de DNS?
  9. O que é e qual o formato de uma RR?
  10. Explique os seguintes tipos de RR: A, NS, CNAME, MX e PTR.
  11. Em um comando ping www.ifsc.edu.br quantas transações no mínimo serão realizadas até o último ECHO REPLY?
  12. Por que um ping normalmente realiza uma consulta PTR?
  13. Faça um esquema mostrando uma consulta de um cliente a um servidor local mostrando uma consulta interativa entre o servidor raiz e recursiva com um servidor de autoridade.
  14. Cite o nome de servidor DNS bastante utilizado.
  15. Quantos servidores raízes temos no mundo? Qual comando permite que possamos "ver" estes servidores em um hospedeiro?
  16. Foi realizado um comando dig www.ifsc.edu.br tendo sido retornado:
    www.ifsc.edu.br. 240 IN A 200.135.190.95
  17. Em seguida foi realizado um dig ifsc.edu.br MX com resposta:
    ;; ANSWER SECTION:
    ifsc.edu.br. 1327 IN MX 15 zimbra.ifsc.edu.br.
    ;; AUTHORITY SECTION:
    ifsc.edu.br. 2082 IN NS ns1.ifsc.edu.br.
    ifsc.edu.br. 2082 IN NS adns1.pop-sc.rnp.br.
    ifsc.edu.br. 2082 IN NS ns2.ifsc.edu.br.
    ifsc.edu.br. 2082 IN NS adns2.pop-sc.rnp.br.
    ;; ADDITIONAL SECTION:
    zimbra.ifsc.edu.br. 78 IN A 200.135.190.2
  18. O que se pode concluir sobre a resolução do nome baseando-se nestas respostas?
Lista de exercícios 3 - Camada de Transporte
  1. Considere uma conexão TCP entre o hospedeiro A e o hospedeiro B. Suponha que os segmentos TCP que trafegam do hospedeiro A para o hospedeiro B tenham número de porta fonte x e número de porta destino y. Quais são os números de porta fonte e do destino para os segmentos que trafegam do hospedeiro B para o hospedeiro A?
  2. Descreva porque um desenvolvedor de aplicação pode escolher rodar uma aplicação sobre UDP em vez de sobre TCP.
  3. É possível que uma aplicação desfrute de transferência confiável de dados mesmo quando roda sobre UDP? Caso a resposta seja afirmativa, como isso acontece?
  4. Porque se diz que o TCP oferece comunicação lógica entre os processos de aplicação?
  5. Cite quais são os serviços oferecidos pelo protocolo TCP?
  6. O que são os serviços de multiplexação e demultiplexação implementados pela camada de transporte?
  7. Porque se diz que o UDP é um protocolo não orientado para conexão?
  8. Qual o papel das informações de porta origem e destino contidas nos segmentos TCP e UDP?
  9. Porque é dito que o TCP fornece transferência confiável de dados sobre um canal não confiável?
  10. Cite 3 diferenças entre os serviços oferecidos pelo TCP e UDP.
  11. O que é um timeout?
  12. Como é estabelecido o valor de timeout em uma conexão TCP? É um valor fixo?
  13. O que é um round trip time (RTT)? Escreva e descreva a equação.
  14. Para que serve um checksum em um segmento TCP ou UDP? Como ele é formado?
  15. Cite uma vantagem da abordagem Volta-N com relação à retransmissão seletiva.
  16. Cite uma vantagem da abordagem Retransmissão Seletiva com relação ao Volta-N.
  17. Qual é a grande desvantagem de uma transmissão do tipo “para e espera” com relação a uma do tipo “janelas deslizantes”?
  18. O que é um PDU (também chamado de Segmento)?
  19. O TCP oferece garantias de banda e de tempo real?
  20. Cite um motivo para um protocolo de transmissão confiável adicionar um número de seqüência em cada pacote transmitido. Justifique o uso dessa informação explicando o problema que ocorreria caso ela não fosse usada.
  21. Para que serve um timeout em um protocolo de transmissão confiável?
  22. Cite um problema que pode ocorrer caso o valor do timeout seja muito pequeno.
  23. Cite um problema que pode ocorrer caso o valor do timeout seja muito grande.
  24. Por quê os tempos dos timeouts não são estabelecidos de forma estática, e sim de forma dinâmica, calculados conforme os round-trip times medidos?
  25. O que é uma reconhecimento cumulativo?
  26. Explique o que faz um receptor caso receba um pacote fora de ordem em um protocolo do tipo:
    1. Volta-N e
    2. Retransmissão Seletiva.
  27. O que é um “Tamanho de Janela” em um protocolo do tipo Janela Deslizante? O que se leva em consideração para calcular seu valor no protocolo TCP?
  28. Em um protocolo de janela deslizante qual é um problema que pode acontecer quando o maior número de Seqüência é muito próximo do “Tamanho de Janela”?
  29. Responda verdadeiro e falso as seguintes perguntas e justifique resumidamente sua resposta:
    1. Com o protocolo GBN, é possível o remetente receber um ACK para um pacote que caia fora de sua janela corrente.
    2. Com o protocolo SR, é possível o remetente receber um ACK para um pacote que caia fora de sua janela corrente.
    3. O protocolo bit alternante é o mesmo que o protocolo GBN com janela do remetente e destinatário de tamanho 1.
    4. O protocolo bit alternante é o mesmo que o protocolo SR com janela do remetente e destinatário de tamanho 1.
  30. Considere a transferência de um arquivo enorme de L bytes do hospedeiro A para o hospedeiro B. Suponha um MSS de 536 bytes.
    1. Qual é o máximo valor de L tal que não sejam esgotados os números de sequência TCP? Lembre-se de que o campo de número de sequência TCP tem 4 bytes.
    2. Para o L que obtiver no item anterior, descubra quanto tempo demora para transmitir o arquivo. Admita que um total de 66 bytes 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 Mbits/s. Ignore controle de fluxo e controle de congestionamento de modo que A possa enviar segementos um atrás do outro e continuamente.
  31. Dadas as máquinas de estado, figuras abaixo, de um transmissor e um receptor de um protocolo "qualquer". Faça um descrição do funcionamento de ambos. Monte pelo menos dois diagramas de mensagens, destacando e relacionando possíveis sequências temporais com as máquinas de estado dadas.
    Transmissor
    Receptor
  32. O UDP e TCP usam o complemento de 1 para suas somas de verificação. Suponha que você tenha as seguintes três palavras de 8 bits: 01010011, 01100110 e 01110100.
    1. Qual é o complemento de 1 para a soma dessas palavras? Mostre todo o trabalho.
    2. Por que o UDP toma o complemento de 1 da soma, isto é, por que não toma apenas a soma?
    3. Com o esquema de complemento de 1, como o destinatário detecta erros?
    4. É possível que o erro de 1 bit passe desapercebido?
    5. E um de 2 bits?
  33. Considere a figura abaixo (Variação do tamanho da janela). Admitindo-se que o TCP Reno é o protocolo que experimenta o comportamento mostrado no gráfico, responda às seguintes perguntas. Em todos os casos você deverá apresentar uma justificativa resumida para sua resposta.
    1. Quais os intervalos de tempo em que a partida lenta do TCP está em execução?
    2. Quais os intervalos de tempo em que a prevenção de congestionamento do TCP está em execução?
    3. Após a 16a rodada de transmissão, a perda de segmento será detectada por três ACKs duplicados ou por um esgotamento de temporização?
    4. Após a 22a rodada de transmissão, a perda de segmento será detectada por três ACKs duplicados ou por um esgotamento de temporização?
    5. Qual é o valor de sstrhresh na primeira rodada de transmissão?
    6. Qual é o valor de sstrhresh na 18a rodada de transmissão?
    7. Qual é o valor de sstrhresh na 24a rodada de transmissão?
    8. Durante qual rodada de transmissão é enviado o 70o segmento?
    9. Admitindo-se que uma perda de pacote será detectada após 26a rodada pelo recebimento de três ACKs duplicados, quais serão os valores do tamanho da janela de congestionamento e de sstrhresh?
    10. Suponha que o TCP Tahoe seja usado (em vez do TCP Reno) e que ACKs duplicados triplos sejam recebidos na 16a rodada. Quais são o sstrhresh e o tamanho da janela de congestionamento na 19a rodada?
    11. Suponha novamente que o TCP Tahoe seja usado, e que exista um evento de esgotamento de temporização na 22a sessão. Quantos pacotes foram enviados da 17a sessão até a 22a, inclusive?
Variação do tamanho da janela
Lista de exercícios 4 - Camada de Rede
  1. Quais são as principais características de uma rede de circuito virtual?
  2. Quais são as principais características de uma rede de datagramas?
  3. Porque se diz que a Internet implementa um serviço de melhor esforço? Que tipo de garantias são oferecidas neste modelo de serviço?
  4. Quais são as funções mais importantes da camada de rede em uma rede de datagramas? Quais são as três funções mais importantes de rede em uma rede de circuitos virtuais?
  5. O que é um protocolo de roteamento?
  6. Como podem ser classificados os algoritmos de roteamento?
  7. Roteadores possuem endereços IP? Quantos endereços IP um roteador possui?
  8. Qual é a diferença básica entre protocolos de roteamento “Estado de Enlaces” e “Vetor de Distância”?
  9. Explique o funcionamento de um algoritmo de roteamento do tipo “Vetor de Distâncias”.
  10. A Internet usa o conceito de “roteamento hierárquico”. O que significa isso?
  11. Um roteador em uma rede de pacotes (como é o caso da Internet) pode eventualmente necessitar descartar um datagrama. Por que isso ocorre?
  12. Um roteador em uma rede de pacotes (como é o caso da Internet) pode eventualmente necessitar fragmentar um datagrama. Por que isso ocorre?
  13. O que é um Sistema Autônomo (AS)?
  14. Para que serve o protocolo ICMP?
  15. Para que serve o campo “Time to Live” (sobrevida) em um datagrama IP?
  16. Por que são usados protocolos inter-AS e intra-AS diferentes na Internet?
  17. Por que considerações políticas/econômicas não são tão importantes para protocolos intra-AS, como OSPF e RIP, quanto para um protocolo de roteamento inter-AS, como BGP?
  18. Quantos hosts podem ser endereçados com um bloco IP 200.23.16.0/20? Como podemos montar 8 sub-redes a partir deste bloco de endereços IP?
  19. Um provedor de serviços ISP possui cerca de 2000 clientes cadastrados atualmente. Porém um levantamento realizado recentemente pelo administrador da rede constatou que nunca mais do que 450 clientes estão on-line ao mesmo tempo. Qual o bloco de endereços IP na forma CIDR (a.b.c.d/x) deve ser contratado pelo ISP, considerando o estudo realizado pelo administrador da rede?
  20. Um administrador precisa montar uma rede experimental conforme mostrada na figura. Na sub-rede 1 ele precisará instalar cerca 25 hosts, e nas sub-redes 2 e 3 ele precisará instalar cerca de 12 hosts. O administrador dispõe do bloco de endereços IP 192.168.10.0/24 para ser utilizado no endereçamento da rede experimental. Faça uma proposta para alocação de endereços IP para cada sub-rede (rede 1, 2 e 3), incluindo também as sub-redes relativas aos enlaces ponto-a-ponto (rede AB, AC e BC). Responda ainda:
    1. Qual o endereço identificador de rede de cada sub-rede (1, 2 e 3)?
    2. Qual o a máscara de rede de cada sub-rede (1, 2 e 3)?
    3. Quais os endereços IP que serão atribuídos a cada interface de rede nos enlaces ponto-a-ponto dos roteadores (enlaces relativos as redes AB, AC e BC)CdrEx.png
  21. Suponha que um administrador de rede tenha recebido o bloco de endereços 200.40.8.0/21 e que deseja dividir este bloco em 8 blocos de endereços iguais, de menor tamanho, para ser alocado a 8 sub-redes administradas por ele.
    1. Determine o tamanho total do bloco de endereços.
    2. Determine o tamanho de cada sub-bloco.
    3. Determine o endereço/máscara de rede de cada sub-rede.
  22. Um provedor de acesso a Internet possui o seguinte bloco de endereços IP: 12.17.192.0/18. Os endereços IP de 12.17.192.1 até 12.17.207.255 já estão alocados para clientes deste provedor. Este provedor precisa atender a quatro novos clientes, um deles necessita de rede com pelo menos 1000 endereços de IP válidos e os outros três necessitam de rede com pelo menos 30 IP válidos. Faça uma proposta para alocação de endereços IP para estes clientes. Os endereços reservados para estes novos clientes devem ser alocados a partir da numeração mais baixa disponível. Procure também responder as questões abaixo:
    1. Qual o total de endereços que dispõe o provedor em questão?
    2. Quantos endereços IP já estão utilizados?
    3. Quantos endereços IP este provedor possui livres para alocar aos novos clientes?
    4. Qual o endereço identificador de cada sub-rede dos novos clientes?
    5. Qual o a máscara de rede de cada sub-rede dos novos clientes?
    6. Qual o endereço de broadcast de cada sub-rede dos novos clientes?
    7. Quantos endereços IP ainda sobrarão ao provedor após atender a estes clientes?
  23. Quantas estações uma rede 223.1.10.0/24 suporta?
  24. Uma rede com bloco de IPs 200.23.16.0/20 deseja montar 8 subredes. Mostre como isso é possível e como ficaria os endereços de cada uma dessas subredes.
  25. Um datagrama de 4000 bytes precisa ser fragmentado para passar por um roteador cujo enlace tem MTU de 1500 bytes. Mostre esquematicamente como ficam os datagramas que são gerados a partir dessa fragmentação.
  26. Considere enviar um datagrama de 2400 bytes por um enlace que tenha uma MTU de 700 bytes. Suponha que o datagrama original esteja marcado com o número de identificação 422. Quantos fragmentos são gerados? Quais são os valores em vários campos dos datagramas IPs gerados em relação à fragmentação?
  27. Um datagrama enviado para uma estação da mesma rede precisa passar por um roteador? Explique.
  28. Suponha que entre o hospedeiro de origem A e o hospedeiro de destino B os datagramas estejam limitados a 1500 bytes (incluindo cabeçalho). Admitindo um cabeçalho IP de 20 bytes, quantos datagramas seriam necessários para enviar um arquivo MP3 de 5 milhões de bytes? Explique como você obteve a resposta.
  29. Descreva e detalhe o processo de obtenção de um endereço IP através do protocolo DHCP.
  30. Descreva e detalhe o processo de tradução de endereços de rede - NAT. Com o NAT é possível somente a conversão (troca) do número de portas? Explique.
  31. Compare os campos de cabeçalho do IPv4 e do IPv6e aponte suas diferenças. Eles tem algum campo em comum?
  32. Afirma-se que, quando o IPv6 implementa túneis via roteamento IPv4, o IPv6 trata os túneis IPv4 como protocolo de camada de enlace. Você concorda com essa afirmação? Explique sua resposta.
  33. Considere uma rede de datagramas que utiliza endereços de hospedeiros de 8 bits. Suponha que um roteador utilize a correspondência do prefixo mais longo e tenha a seguinte tabela de repasse:
    Prefixo a compararInterface
    10
    101
    1112
    senão3
    Para cada uma das quatro interfaces, forneça a faixa associada de endereços de hospedeiro de destino e o número de endereços na faixa.
Lista de exercícios 5 - Camada de Enlace e Redes Multimídia
  1. Quais são os serviços providos pela camada de enlace?
  2. Dentre os serviços de camada de enlace, quais obrigatoriamente precisam ser implementados por todos os protocolos de enlace?
  3. Porque é necessário sincronizar quadros (serviço de enquadramento)?
  4. Por que se faz necessário um protocolo de acesso ao meio (MAC), em redes com meio de transmissão compartilhado?
  5. Do ponto de vista do protocolo MAC CSMA/CD, qual a principal diferença entre hubs e switches?
  6. Se as redes Ethernet atualmente podem operar com switches (Ethernet comutada), e em modo fullduplex, porque ainda existe o protocolo MAC CSMA/CD?
  7. Switches Ethernet Gerenciáveis são equipamentos de comutação de pacotes que podem ser configurados e observados pelos administradores de redes. Entre as informações que um administrador de rede tem acesso em um switch destes está a relação de endereços MAC conectados em cada porta do equipamento. Um administrador de rede detectou que existe um computador inundando a rede com tráfego intenso (o que pode ser causado por um virus). No entanto, ao capturar alguns dos datagramas IP desse fluxo intenso, o administrador não conseguiu reconhecer o endereço IP do computador, uma vez que ele varia entre diferentes datagramas (uma técnica para camuflar sua origem). Porém ele notou que o endereço MAC de origem, contido nos respectivos quadros Ethernet, é sempre o mesmo, o que identifica o computador que emite este tráfego. Sabendo que a rede é composta de vários switches Ethernet gerenciáveis, como o administrador poderia, sem sair de sua sala, localizar rapidamente esse computador?
  8. Explique o que é colisão e como estas impactam o tráfego de uma rede Ethernet. Explique como a mesma é evitada em redes comutadas, explicando como o uso de switches limitam as colisões quando comparados com hubs ou barramentos.
  9. Por que uma pesquisa ARP é enviada dentro de um quadro broadcast? Por que uma resposta ARP é enviada dentro de um quadro com endereço MAC específico? Qual é a diferença entre esses dois quadros?
  10. Compare as estruturas de quadros das redes Ethernet 10BaseT, 100BaseT e Gigabit Ethernet. Quais diferenças entre elas?
  11. Dois adaptadores, um com taxa nominal de 10001 bps e outro com taxa nominal de 9999 bps, estão conectados via par trançado, como eles conseguem trocar dados normalmente?
  12. Você comprou um notebook novo. Vai utilizar pela primeira vez no Câmpus São José do IFSC. Com um cabo de rede conectou seu computador à rede do IFSC e digitou no navegador de seu computador: www.polito.it. Cite todos os protocolos utilizados e todas a etapas cumpridas por seu computador, para que essa operação tenha exito.
  13. Suponha que João esteja assistindo um vídeo de 3 Mbits/s, Maria esteja vendo uma nova imagem de 100 Kbytes a cada 30 segundos e José esteja ouvindo um fluxo de áudio a 200 kbits/s. Sabendo que o tempo de sessão para todos os usuários seja de 1000 segundos. Monte uma tabela comparativa contento a taxa de bits e o total de bytes transferidos para esses três usuários. Qual fluxo consome mais banda?
  14. Aplicações de multimídia podem ser classificados em três categorias. Relacione e descreva cada uma dessas categorias.
  15. CDNs geralmente adotam uma de duas filosofias de posicionamento de servidor diferentes. Relacione e descreva resumidamente essas duas filosofias.
  16. Qual a diferença de atraso fim a fim e variação de atraso de pacote? Quais os fatores causadores de um e outro?
  17. Por que um pacote recebido após seu tempo de reprodução programado é considerado perdido?
  18. Qual é o papel de um registro SIP?

Transparências utilizadas durante as aulas

Slides do Kurose referentes ao capítulo 1

Slides do Kurose referentes ao capítulo 2

Slides do Prof. Emerson - DNS, FTP, Web, Email...

Slides do Kurose referentes ao capítulo 7

Slides do Kurose referentes ao capítulo 3 e versão antiga

Slides do Kurose referentes ao capítulo 4

Slides do IPv6

Slides do Kurose referentes ao capítulo 5

Softwares

Curiosidades

Seminários

  • Objetivos:
    • Aprofundamento teórico em algum tema atual e relevante.
    • Confecção de um relatório de trabalho no estilo científico.
    • Apresentação de um trabalho científico.
  • Avaliação:
    • Conceito: 0,5 x Nota atribuída ao relatório + 0,5 x Nota atribuída a apresentação do seminário
    • Critérios de avaliação
  • Instruções sobre o Seminário de Redes I:
    • 2 alunos por equipe.
    • Os temas devem ser propostos pelas equipes em comum acordo com o professor ou então na data limite o professor apresenta alguns temas e as equipes escolhem.
    • O relatório pode ser redigido como uma página da wiki ou em PDF gerado por editores/diagramadores de texto do tipo LaTeX (Online LaTeX Editor Overleaf) ou outro editor qualquer.
      • Detalhes e conteúdo mínimo exigido baseado no modelo de relatório.
      • Se desejar fazer em LaTeX ( RECOMENDADO) inscreva-se em Overleaf e siga (copie) o [1].
      • Um exemplo de bom relatório [2].
    • Duração da apresentação: 20 minutos (limitantes: 15 a 25 minutos) + 5 minutos de perguntas, modelo de apresentação
    • As apresentações devem obrigatoriamente ser preparadas em formato de slides ou equivalente e podem conter demonstrações, filmes, acesso a sites etc.
    • Existem vários modelos (templates) disponíveis de apresentações.

Semestre 2023/2

  • Organização
  1. Definição do temas e equipes: 10/11/2023
    1. Equipe 1: Redes WiFi. Bryan Pacheco
    2. Equipe 2: IoT. Tiago Correa Damiani e Beatriz Abreu
    3. Equipe 3: IPv6. Luis Eduardo de Abreu e Gustavo Ferreira de Castro
    4. Equipe 4: Peer-to-peer. Júlia Espíndola Steinbach
    5. Equipe 5: RFID. Beatriz Paz Faria
    6. Equipe 6: Protocolos de roteamento: IGRP e EIGRP. Leonardo Tives Voltolini
  2. Entrega do relatório: 30/11
  3. Apresentação dos seminários: 12/12 a 14/12
Semestre 2023/1

Semestre 2023/1

  • Organização
  1. Definição do temas e equipes: 16/05/2023
    1. Equipe 1: Protocolo WiFi. Rafael Mery e Sérgio Rohling
    2. Equipe 2: Redes 5G. Gian e Beatriz
    3. Equipe 3: Redes Mesh. Gabriel e Ricardo.
  2. Entrega do relatório escrito: 09/06/2023
  3. Apresentação dos seminários: 23 e 27/06/2023
Semestre 2022/2

Semestre 2022/2

  • Organização
  1. Definição do temas e equipes: 03/11/2022
    1. Internet via satélite: Ramon dos Santos Sobrinho e José Roberto Brincas Junior;
    2. RADIUS: Arthur Cadore, Matheus Pires, Gabriel Luiz;
    3. VOIP: Marcos Wagner e Julio César.
    4. RFID: Faber Bernardo, Lucas Costa Fontes e Jamilly Da Silva Pinheiro;
    5. PPPoE: Igor Silva Vieira e Rhenzo Hideki;
    6. P2P: Jonathan Santos, Tiago Nelson e Rafael Ramos
    7. TR-069: Bruno Hamon Porto, Joana da Silva e Igor Budag de Oliveira
  2. Entrega do relatório escrito: 27/11/2022
  3. Apresentação dos seminários: 8, 12 e 15/12/2022
Semestre 2022/1

Semestre 2022/1

  • Organização
  1. Definição do temas e equipes: 24/06/2022
    1. Alisson e Gustavo: LoRaWAN
    2. Jailson e Lucas: Protocolos IoT
  2. Entrega do relatório escrito: 10/07/2022
  3. Apresentação dos seminários: 20/07/2022
Semestre 2021/1

Semestre 2021/2

  • Organização
  1. Definição do temas e equipes: 16/02/2022
    1. Wagner e Lucas: IPTV
    2. Gabriela e Yago: 5G
    3. Athos e Lucas May: Blockchain
    4. Ramon e José Roberto: Internet via satélite
    5. Natália e Pedro Henrique: NFC
  1. Entrega do relatório escrito: 02/03/2022
  2. Apresentação dos seminários: 11/03/2022
Semestre 2021/1
  • Organização:
  1. Definição do temas e equipes: 30/07/2021
    • Mike - LiFi
    • João Vitor - BLE (Bluetooth Low Energy)
  2. Entrega do relatório escrito: 19/08/2021
  3. Apresentação dos seminários: 02/09/2021
Semestre 2020/2

Semestre 2020/2

  • Organização
  1. Definição do temas e equipes: 04/03/2021
    1. Alana e Vinícius: Segurança em Wi-Fi.
    2. Filipi: Internet via satélite.
  2. Entrega do relatório escrito: 25/03/2021
  3. Apresentação dos seminários: 15/04/2021
Semestre 2020/1
  • Organização
  1. Definição do temas: 18/06/2020
    1. Arthur Anastopulos dos Santos: Segurança em Cloud Computing / Nuvens Computacionais.
    2. Deivid Fortunato Frederico: GPON.
    3. Isadora Schmidt de Souza: Segurança em Rede.
    4. Matheus Medeiros: Segurança em Redes Wireless IEEE 802.11.
    5. Jéssica Carrico e Pedro Pretto: 5G.
  2. Entrega do relatório escrito: 21/08/2020
  3. Apresentação dos seminários: ??/08/2020
Semestre 2019/2
  • Entrega do documento escrito: dia 27/11/2019.
  • Realização dos Seminários: dias 04/12 e 06/12/2019.
    • (04/12)-Jean e Jefferson Botitano: Padrão IEEE 802.15.4 / ZigBee.
    • (04/12)-Pedro e Vinícius: Blockchain.
    • (06/12)-Christian e Matheus: Padrão IEEE 802.11ac/ad.
    • (04/12)-Alisson: BLE.
    • (04/12)-Isadora: Segurança em Redes.
    • (04/12)-Anderson: LoRaWAN.
    • (06/12)-Leonardo e Jeferson Jair: Computação em Nuvem.
    • (06/12)-Deivid: Indústria 4.0.
    • (06/12)-Irla e Jhonatan Li-Fi.
    • (04/12)-Amanda 5G.
Semestre 2019/1
Entrega do documento escrito: dia 23/06/2019.Realização dos Seminários: dias 27/06 e 01/07/2019.Bruno e Gustavo: Segurança na Rede.Maria Gabriela: 5G.
  • Amanda e Joseane: NFC.
  • Luan e Gabriel: Blockchaim.
  • Guilherme: Computação em Nuvem.


Semestre 2018/2
  • Datas Importantes
  1. Definição do temas: 15/10/2018
    1. Luiza Alves da Silva: Criptografia na Rede. Dia 10/12
    2. Sarom e Marcelo: Evolução da tecnologia DOCSIS. Dia 13/12
    3. André e Thiago: GPON. Dia 06/12
    4. Eduarda e Guilherme: Deep Web. Dia 10/12
    5. Stefanie e Camilla: Computação em nuvem. Dia 13/12
    6. Elisa e Osvaldo: LoRaWAN. Dia 10/12
    7. Daniel: Segurança em redes sem fio
    8. Gabriel Santos: VoIP. Dia 13/12
    9. Matheus: Industria 4.0. Dia 06/12
    10. Alexandre: BlockChain. Dia 13/12
    11. Gabriel Turnes: 5G. Dia 06/12
  2. Entrega do relatório escrito: 22/11/2018
  3. Apresentação dos seminários: 06-13/12/2018
Semestre 2018/1
  • Data de definição dos temas: 15/05/2018.
  • Data de entrega do relatório: 11/06/2018.
  • Data das apresentações: 25/06/2018 e 26/06/2018.
  • Tecnologia LoRaWAN: Augusto da Silveira Willemann, Andre Luiz Faraco Mazucheli e Victor Cesconetto De Pieri
  • Proxy reverso: Jennifer e João
  • 6LowPAN: Felipe Cardoso
  • Li-Fi: Gabriel Santos de Souza
  • Internet via satélite: Guilherme, Alisson e Alexandre
  • 5G: Luiza Alves da Silva