Prof. Luís Rodolfo Unidade III REDES DE COMPUTADORES E TELECOMUNICAÇÃO
Redes de computadores e telecomunicação Objetivos da Unidade III Apresentar as camadas de Transporte (Nível 4) e Rede (Nível 3) do Modelo OSI traçando um paralelo com a Arquitetura TCP/IP.
Redes de computadores e telecomunicação Modelo Camadas OSI: Camada de Transporte Nível 4 Figura 1 Camada de Transporte Modelo OSI Fonte: Kovach, 2009
Camada de transporte Características básicas: Camada central da pilha de protocolos; Fornece serviços de comunicação para as camadas superiores; É responsável pela comunicação fim-afim nas redes de computadores;
Camada de transporte Serviços e protocolos de transporte: Converte as mensagens das camadas superiores em segmentos da camada de transporte; Responsável pela qualidade na entrega e recebimento dos dados; Comunicação lógica fim-a-fim entre as camadas de transporte de origem e destino;
Camada de transporte Aplicação Transporte Rede Enlace Física PCI SDU PDU Figura 2 Montagem do PDU Aplicação Transporte Rede Enlace Física Figura 2: Conexão lógica fim-a-fim da camada de Transporte
Figura 3: Multiplexação e Demultiplexação de Portas de Protocolo da Camada de Transporte Camada de transporte Origem e destino das mensagens: Multiplexação e Demultiplexação APLICAÇÃO 1 APLICAÇÃO 2 Porta 126 Porta 34 Porta 22 TRANSPORTE IP
Camada de transporte Existem 2 tipos de portas: Estáticas: Estáticas ou conhecidas. Associadas a processos que fornecem serviços conhecidos e que não mudam com o tempo. Ex. SMTP -> Porta 25. Dinâmicas: Portas assinaladas dinamicamente pelo sistema operacional quando aplicações solicitam serviços a servidores, ou seja, mudam a cada execução do programa.
Camada de transporte Portas estáticas e dinâmicas: Faixa de 0 a 1023 são chamadas de portas conhecidas, ou seja, estão associadas a uma aplicação comum. Exemplos de portas conhecidas: 21 (FTP), 23 (Telnet), 25 (SMTP), 80 (HTTP), entre outras; Acima de 1023 (até 65535) são chamadas portas altas e é possível associar uma aplicação desconhecida (normalmente aplicações cliente)
Camada de transporte Serviços e Protocolos de Transporte Cada aplicação da Internet usa pelo menos um protocolo da camada de Transporte para enviar e receber dados. São dois os principais protocolos de camada de Transporte: TCP (Transmission Control Protocol) e; UDP (User Datagram Protocol).
Camada de transporte Aplicações populares da Internet Figura 4: Aplicações populares da Internet e seus protocolos de Transporte
Camada de transporte Protocolo UDP (User Datagram Protocol) Serviço não orientado a conexão e sem confiabilidade; Não implementa controle de fluxo e congestionamento; Principal função implementada pelo UDP é a multiplexação no acesso ao sistema de comunicação; Utilizado em aplicações de meios contínuos de transmissão (voz, video); Também utilizado em aplicações como SNMP e DNS.
Camada de transporte Formato do Cabeçalho UDP 0 7 15 23 31 Octeto 1 Octeto 2 Octeto 3 Octeto 4 UDP SOURCE PORT UDP MESSAGE LENGTH DATA... UDP DESTINATION PORT UDP CHECKSUM Opcional (campo=0) Figura 5: Formato do Cabeçalho UDP
Camada de transporte Protocolo TCP (Transmission Control Protocol) O protocolo TCP fornece, além da multiplexação, um serviço com conexão, implementando controle de erros e controle de fluxo; A multiplexação é implementada de forma semelhante ao UDP; O controle de erros e o controle de fluxo são implementados através da técnica de janela deslizante.
Camada de transporte Formato do Cabeçalho TCP 0 7 15 23 31 OCTETO 1 OCTETO 2 OCTETO 3 OCTETO 4 TCP SOURCE PORT TCP DESTINATION PORT SEQUENCE NUMBER ACKNOWLEDGEMENT NUMBER HLEN RESERVEDCTRL BITS WINDOW CHECKSUM URGENT POINTER OPTIONS (IF ANY) PADDING DATA... Figura 6: Formato do Cabeçalho TCP
Camada de transporte Conexão TCP Uma conexão TCP é formada pelo par [Endereço IP Origem, Porta Origem] e [Endereço IP Destino, Porta Destino]. Porta 22 Porta 2340 TCP TCP IP Inter-rede rede TCP/IP Host 139.82.17.10 Host 139.82.55.3 IP Figura 7: Formato do Cabeçalho TCP
Camada de transporte Conexão TCP em 3 fases: Estabelecimento da conexão; Troca de mensagens; Finalização da conexão. TX DADOS RX DADOS FECHA CONEXÃO SYN SYN/ACK ACK DADOS ACK DADOS ACK FIN ACK FIN ACK RX DADOS TX DADOS FECHA CONEXÃO Figura 8: 3 fases da conexão TCP
Interatividade Relativo ao protocolo de transporte TCP, pode-se afirmar: a) Não orientado a conexão b) Não orientado a conexão e baixa confiabilidade c) Orientado a conexão, implementa controle de erros e controle de fluxo d) Orientado a conexão e baixa confiabilidade e) Utilizado em aplicações de meios contínuos de transmissão
Modelo Camadas OSI: Camada de Rede Nível 3 Figura 9: Camada de Rede do modelo OSI Fonte: Kovach, 2009
Responsável pela interconexão de redes, através de dispositivos denominados roteadores. Figura 10: Exemplo de interconexão de redes utilizando roteadores. Fonte: Kovach, 2009 O roteador é o principal p agente no processo de interconexão das redes, pois determina as rotas baseado em critérios, roteando os dados pelas redes e gerenciando suas tabelas de roteamento.
Roteamento pelo endereço IP de destino; Portas de entrada e saída permitem ao roteador encaminhar pacotes aos seus roteadores vizinhos. Toda rede possui uma porta de saída padrão (default gateway) que é para onde vão todos os pacotes de dados recebidos e que não são para aquela rede. A camada de Rede que decide qual o melhor caminho para se chegar ao destino. Mapeamento do endereço físico e lógico através do protocolo ARP.
X R1 R3 Y R2 HOST X Aplicação Transporte Rede Enlace Física R1 R2 R3 Rede Enlace Rede Enlace Rede Enlace Física Física Física HOST Y Aplicação Transporte Rede Enlace Física Figura 10: Exemplo de interconexão entre sistemas finais.
O protocolo IP (Internet Protocol) Responsável pelo encaminhamento dos pacotes da origem ao destino; Não é orientado a conexão; Suscetível a perda de dados, atrasos e sem garantias de entrega; A correção de erros e recuperação de pacotes perdidos é realizada pela camada de Transporte (TCP); Vantagem: Simplicidade melhor esforço.
Fragmentação: Ocorre quando o pacote a ser transmitido é maior que o MTU da rede (Maximum Transfer Unit); Uma rede Ethernet tem MTU = 1500bytes, portanto, datagramas maiores que este MTU serão fragmentados pelo IP em fragmentos; Os datagramas são remontados no destino final; Se qualquer fragmento for perdido no caminho, o datagrama não pode ser remontado.
Fragmentação: Rede 1 1 3 Rede 3 MTU=1500 MTU=1500 MTU=1500 MTU=1500 Rede 2 G 1 MTU=1500 G 2 MTU=500 Figura 11: Fragmentação de um pacote IP
Endereçamento IPv4: Todo dispositivo numa rede IP é identificado por um endereço IP; Endereço IP: 32 bits (4 bytes) 2 32 endereços IPs possíveis, cerca de 4 bilhões de endereços; 4 conjuntos de bytes, representados por um número decimal, separados por pontos;
Exemplo de um endereço IP: 11010000 11110101 00011100 10100011
Exemplo de um endereço IP: 11010000 11110101 00011100 10100011 1 752 865 955
Exemplo de um endereço IP: 11010000 11110101 00011100 10100011 208 245 28 163
Exemplo de um endereço IP: 11010000 11110101 00011100 10100011 1 752 865 955 208 245 28 163 208.245.28.163
O endereço IP é: Um endereço lógico de rede que está associado a uma interface física de rede (placa de rede); Globalmente exclusivo e não pode ser escolhido de qualquer forma; Determinado em parte pela sub-rede que está conectado.
Classes e formatos de endereços IP A estratégia de atribuição de endereços da Internet é conhecida como roteamento interdomínio sem classes (CIDR Classless Interdomain Routing); Antes da adoção do CIDR, os tamanhos das parcelas de um endereço IP estavam limitados a 8, 16 ou 24 bits, um esquema de endereçamento definido por classes de endereços.
Classes e formatos de endereços IP A B C D E Figura 12: Classes e formatos de endereços IPs
netid: identifica o prefixo da rede, pelo qual o dispositivo está conectado; hostid: identifica o dispositivo nessa rede; Um roteador conectado a n redes terá Um roteador conectado a n redes terá n endereços IPs distintos.
Quando todos os bits do hostid são 0 diz-se que o endereço IP representa a rede de computadores. Ex: netid hostid 11000000 10101000 00001010 00000110 - IP (192.168.10.6) 11000000 10101000 00001010 00000000 IP REDE (192.168.10.0)
Classes e ranges de endereços IPs: Classe A (a.b.c.d) a = 1 126 a: identifica a rede b.c.d: identificam o host Exemplo: 10.10.5.1 Classe B (a.b.c.d) a = 128 191 a.b: identificam a rede c.d: identificam o host Exemplo: 129.10.5.1
Classes e ranges de endereços IPs: Classe C (a.b.c.d) a = 192 223 a.b.c: identificam a rede d: identifica o host Exemplo: 194.10.5.1 Classe D (a.b.c.d) a = 224 239 Endereço de multicast t Exemplo: 224.10.5.1
Interatividade Relativo ao protocolo de rede IP, pode-se afirmar: a) Não orientado a conexão e sem garantias de entrega b) Não orientado a conexão e de alta confiabilidade c) Orientado a conexão, implementa controle de erros e controle de fluxo d) Orientado a conexão e baixa confiabilidade e) Utilizado em aplicações de meios contínuos de transmissão
Máscaras de sub-redes: É baseado no prefixo de rede que os roteadores vão escolhendo seus caminhos (o roteamento é feito) até chegar ao último roteador antes da rede de destino. Quando chegar à sub-rede de destino, é que o endereço referente ao hostid será olhado para buscar dentro da sub-rede o dispositivo final a que se destina a mensagem.
Máscaras de sub-redes: Bits que determinam o prefixo da rede; Também composta por 32 bits; Permite ao receptor identificar quais bits são referentes ao netid e quantos ao hostid; Os bits em 1 da máscara indicam quais bits do endereço IP serão o prefixo da rede e; Os bits em 0 da máscara indicam quais bits do endereço IP serão o dispositivo de rede (hostid).
Máscaras de sub-redes: Para o roteamento, utilizam-se máscaras padrão (default) de cada classe até chegar à rede de destino. As máscaras padrão são: Classe A: máscara sub-rede 255.0.0.0 Classe B: máscara sub-rede 255.255.0.0 Classe C: máscara sub-rede 255.255.255.0
Máscaras de sub-redes: Aumento da demanda de conexões de dispositivos a rede; Crescente uso de endereços IPs; Rápido esgotamento de endereços; Uso de máscaras de sub-redes diferentes do padrão; Ganho de novos endereços IP na divisão em sub-redes;
Máscaras de sub-redes: Máscaras diferentes da padrão; Representado pelo bits 1, parte do hostid agora representam sub-redes. Figura 13: Máscara de Sub-rede
Aplicação de máscaras de sub-redes: Uma empresa possui uma inter-rede composta por duas redes IP, com 50 estações em cada rede.
Figura 14: Máscara de Sub-rede
Aplicação de máscaras de sub-redes: 1a. opção seria utilizar 2 redes classe C: Rede Marketing - 200.18.160.0 Rede Engenharia - 200.18.161.0 Desperdício de 410 endereços! 2ª opção seria dividir uma rede classe C em sub-redes: Máscara natural da classe C - 255.255.255.0 Vamos estender a máscara natural para criar sub-redes.
200.18.160.0 255.255.255.0 1100 1000 0001 0010 1010 0000 xxxx xxxx 1111 1111 1111 1111 1111 1111 0000 0000 200.18.160.0 255.255.255.192 1100 1000 0001 0010 1010 0000 00 xx xxxx 1111 1111 1111 1111 1111 1111 11 00 0000 200.18.160.64 255.255.255.192 1100 1000 0001 0010 1010 0000 01 xx xxxx 1111 1111 1111 1111 1111 1111 11 00 0000 200.18.160.128 255.255.255.192 1100 1000 0001 0010 1010 0000 10 xx xxxx 1111 1111 1111 1111 1111 1111 11 00 0000 200.18.160.192 255.255.255.192 1100 1000 0001 0010 1010 0000 11 xx xxxx 1111 1111 1111 1111 1111 1111 11 00 0000 Figura 15: Exemplo de cálculo de Sub-rede
Aplicação de máscaras de sub-redes: 1ª. opção seria utilizar 2 redes classe C: Rede Marketing - 200.18.160.0 Rede Engenharia - 200.18.161.0 Desperdício de 410 endereços! 2ª opção seria dividir uma rede classe C em sub-redes: Máscara natural da classe C - 255.255.255.0 Vamos estender a máscara natural para criar sub-redes.
Divisão em sub-redes: Despreza-se a 1ª e a última sub-rede por representar o endereço da rede e o endereço de broadcast da rede respectivamente. Rede Marketing - 200.18.160.64 / 26 (255.255.255.192) Rede Engenharia - 200.18.160.128 / 26 (255.255.255.192) Desperdício de 155 endereços!
Figura 16: Máscara de Sub-rede
Endereços IPs reservados (especiais) 0. 0. 0. 0: endereço desconhecido. Utilizado pela máquina quando ela não conhece seu próprio IP; 255.255.255.255: endereço de broadcast dentro da rede local. Um pacote de broadcast é destinado a todos os dispositivos conectados à rede; 127.0. 0. 0 127. 255. 255. 255: utilizados como endereço de loopback para testes internos na máquina.
Endereços IPs privados São reservados para redes privadas e servem para montar uma rede TCP/IP sem gerar conflitos com os endereços IP da Internet. 10. 0. 0. 0 10. 255. 255. 255 172. 16. 0. 0-172. 31. 255. 255 192. 168. 0. 0-192. 168. 255. 255 Não são considerados pelos roteadores no roteamento global da internet.
Interatividade Qual a máscara de sub-rede a ser aplicada se precisarmos dividir um endereço de rede em 6 sub-redes válidas? a) 255.255.255.6 b) 255.255.255.0 c) 255.255.6.255 d) 255.255.255.224 e) 255.255.255.192
NAT e DHCP: NAT Network Address Translator Tradução de endereço privado para endereço público e vice-versa. Tradução estática: um endereço privado é sempre convertido em um mesmo endereço público. Tradução dinâmica: o endereço privado poderá não utilizar sempre o mesmo endereço público.
NAT e DHCP: DHCP Dynamic Host Configuration Protocol Um servidor DHCP distribui aos computadores clientes um IP válido na Internet sempre que um cliente solicita. A alocação de endereços IPs é dinâmica e nem sempre o mesmo IP é alocado para a mesma máquina solicitante.
Roteamento Roteamento é o processo de escolher um caminho para o envio dos datagramas. Direto: ocorre se ambas as máquinas (origem e destino) estiverem conectadas a mesma rede física; Indireto: ocorre quando o destino não estiver conectado a mesma rede física, forçando o remetente a passar o datagrama a um roteador conectado na mesma rede física.
Tabela de roteamento Tabela existente em cada máquina que indica a rota que o pacote deve seguir. Contém os prefixos de rede e o endereço IP do próximo roteador no caminho (vizinho). Os prefixos são calculados a partir do endereço IP de destino do pacote e a máscara de sub-rede aplicada. A tabela de roteamento sempre aponta para os roteadores conectados diretamente.
Tabela de roteamento Caso não seja encontrado o prefixo de rede na tabela, o pacote é encaminhado para um gateway padrão (default gateway). Se não existir default gateway configurado o pacote é descartado.
Estação A Roteador Estação B.37.148.10.45 200.18.171.0 171 0 200.18.100.0 IP DESTINO 200.18.100.45 REDE MASCARA GATEWAY Interface MTC 200.18.171.148 255.255.255.255 127.0.0.1 127.0.0.1 1 200.18.171.0 255.255.255.0 200.18.171.148 200.18.171.148 1 200.18.100.10 255.255.255.255 127.0.0.1 127.0.0.1 1 200.18.100.0 255.255.255.0 200.18.100.10 200.18.100.10 1 Figura 17: Tabela de Roteamento
Algoritmos e protocolos de roteamento As tabelas de roteamento são criadas e mantidas pelos Protocolos de Roteamento; A tabela de rotas pode ser montada por roteamento estático (manualmente pelo usuário) ou por roteamento dinâmico (construção automática);
Algoritmos de roteamento O melhor caminho é definido pelo algoritmo de roteamento, que o calcula baseado em diversos parâmetros como velocidade de transmissão, tempo de atraso, entre outros, que formam uma métrica particular de cada algoritmo de roteamento.
Algoritmos de roteamento Distance Vector: é baseado no número de saltos na rede (hops). Esse algoritmo tem como princípio que o melhor caminho (métrica) para se chegar ao destino é através das rotas mais curtas, independentemente de se a rota mais curta é a mais congestionada. Ex: RIP (Routing Information Protocol)
Algoritmos de roteamento Link state: é baseado no estado dos enlaces. Esse algoritmo considera diversos parâmetros na rede para calcular a métrica e a melhor rota para se chegar ao destino. Um dos parâmetros que ele considera é a largura de banda, que determina a velocidade de transmissão de um pacote. Ex: OSPF (Open Shortest Path First)
Algoritmos de roteamento IGP (Interior Gateway Protocols): utilizados apenas para interconectar roteadores internamente em uma rede. Ex: RIP e OSPF EGP (Exterior Gateway Protocols): para interconectar redes independentes. Ex: BGP (Border Gateway Protocol)
Interatividade Um algoritmo de roteamento Distance Vector é: a) baseado no número de saltos na rede (hops) b) um protocolo roteável pela camada de transporte c) baseado no estado dos enlaces d) baseado nas características dos links e) n.d.a.
ATÉ A PRÓXIMA!