Protocolo IP Profa. Ana Cristina Benso da Silva Disciplina: Redes de Computadores Roteiro IPv4 Características Frame Campos do Frame Opções IPv4 Fragmentação e Remontagem Redes de Computadores Profa. Ana Benso Características do IP Sistema de entrega fim-a-fim É um protocolo Não orientados à conexão Sem controle de erros e sem reconhecimento Isso significa que o protocolo IP não executa: Controle de erros sobre os dados da aplicação Controle de fluxo Sequenciamento de dados Entrega ordenada Redes de Computadores Profa. Ana Benso Características do IP Serviço de entrega: Best-effort Os pacotes não são descartados sumariamente, o protocolo torna-se não confiável somente quando há exaustão de recursos Datagrama de tamanho variável IPv4: tamanho máximo 64 Kbytes Provê envio e recebimento Erros: ICMP Redes de Computadores Profa. Ana Benso Frame IP 0 4 Version 16 8 HLEN Service Type 31 24 Total Length Identification Time to Live (TTL) 19 Flags Protocol Fragment Offset Header Checksum Source IP Address Destination IP Address IP Options (if any) Padding Data Redes de Computadores Profa. Ana Benso Campos IP Version (4 bits) HLEN (4 bits) Tamanho em no. de palavras de 32 bits Header sem opções: 5 (20 bytes) Header com opções: tamanho máximo 15 (60 bytes) Service Type Confiabilidade, precedência, atraso e throughput Redes de Computadores Profa. Ana Benso Campos do IP Total Length (16 bits) tamanho do header + área de dados Identification (16 bits) Identifica de forma única um pacotes IP Flags (3 bits) More Fragments (MF) Don´t Fragment (DF) Reserved Redes de Computadores Profa. Ana Benso Campos do IP Fragment Offset (13 bits) Múltiplo de byte Time to Live (8 bits) Protocol ( 8 bits) Próximo nível a receber dados (protocolo que está encapsulado no frame IP) ICMP (1), TCP (6), UDP (17) Header Checksum (16 bits) Soma dos complementos de 1 de blocos de 16 bits, contendo informações do header do IP Redes de Computadores Profa. Ana Benso Campos IP Endereço Origem (32 bits) Origem dos dados Não é alterado ao longo da transmissão Endereço Destino (32 bits) Destino dos dados Não é alterado ao longo da transmissão Opções (variável) Security, source route, record route, stream id (used for voice) for reserved resources, timestamp recording Redes de Computadores Profa. Ana Benso Campos do IP Padding (variável) Faz com que o header seja múltiplo de 4 Data (variável) Data + header < 65,535 bytes Redes de Computadores Profa. Ana Benso Type of Service TOS (Type of Service) Especifica como o Datagrama deve ser tratado Divisão Original 3 0 Precedence 4 D 5 T 6 R Unused Precedence: importância do datagrama D: baixo atraso T: alto throughput R: alta confiabilidade Redes de Computadores Profa. Ana Benso Type of Service Valores possíveis Bits 0-2: Precedence 111 Network control. 110 Internetwork control. 101 CRITIC/ECP. 100Flash override. 011 Flash. 010 Immediate. 001Priority. 000Routine. Bit 3: Delay 0 Normal delay. 1 Low delay. Redes de Computadores Bit 4: Throughput 0 Normal throughput. 1 High throughput. Bit 5: Reliability 0 Normal reliability. 1 High reliability. Bits 6-7: Reserved for future use. Profa. Ana Benso Type of Service Problema Difícil para a Internet atender as solicitações de tipo de serviço Então passa a ser usado como uma “dica” para algoritmos de roteamento não como uma demanda Em 1990 o IETF redefiniu o “service type” para acomodar os “differentiated services” 6 0 CODEPOINT Redes de Computadores Unused Profa. Ana Benso Type of Service – Compatibilidade Distinção entre os bits do codepoint Se os últimos 3 bits (codepoint) contém 0 (zero) São definidas 8 classes de serviços que seguem a definição original Precedência especial: 6 e 7 Roteador deve implementar ao menos 2 esquemas Baixa prioridade Alta prioridade 3 bits em 0 e precedência 6 ou 7: alta prioridade Redes de Computadores Profa. Ana Benso IP Options O campo de opções do protocolo IP é opcional Inicia após o endereço do destino Pode estender o header do IP até o tamanho máximo de 60 bytes Formato do campo de opções 0 1 COPY OPTION CLASS Redes de Computadores 3 OPTION NUMBER Profa. Ana Benso IP Options Copy (1 bit) Controla como os roteadores tratam as opções durante o processo de fragmentação Option Class (2 bits) Especifica a classe geral de opções Option Class 0 1 2 3 Redes de Computadores Descrição Controle da rede ou datagrama Reservado Depuração Reservado Profa. Ana Benso IP Options Option Number (5 bits) Especifica uma classe específica dentre da classe geral Redes de Computadores Option Number 1 2 3 7 8 9 11 12 4 18 Descrição No operation Security Loose Route Recorde Route Stream Identifier Strict Source Route MTU Probe MTU Reply Timestamp Traceroute Profa. Ana Benso Record Route Option Provê uma forma de monitorar como os datagramas são roteados Cada roteador que “roteia” o datagrama acrescenta seu endereço IP ao campo de opções copy + option class + option number = CODE (1 byte) 0 CODE 8 16 LENGTH 24 31 POINTER FIRST IP ADDRESS SECOND IP ADDRESS ... Redes de Computadores Profa. Ana Benso Code e Pointer Code ( 8 bits) Representa os campos copy, option class e option number Exemplo: copy = 0, option class = 0, option number = 7 copy = 1, option class = 0, option number = 9 code = 7 code = 137 Pointer (8 bits) Aponta para próxima área a ser preenchida ou “consultada” Deve ser alterada pelo host ou roteador que manipula dados do campo de opções Redes de Computadores Profa. Ana Benso Source Route Option Source Route Strict Source Route: rota exata a ser seguida Loose Source Route: deve passar pelo menos por um dos roteadores copy + option class + option number = CODE (1 byte) 0 CODE 8 16 LENGTH 24 31 POINTER IP ADDRESS OF FIRST HOPE IP ADDRESS OF SECOND HOPE ... Redes de Computadores Profa. Ana Benso Timestamp Option Similar ao Record Route Inicialmente contém uma lista vazia de roteadores e tempos Cada roteador acrescenta seus dados copy + option class + option number = CODE (1 byte) 0 CODE 8 16 LENGTH 24 POINTER OFLOW 31 FLAGS FIRST IP ADDRESS FIRST TIMESTAMP ... Redes de Computadores Profa. Ana Benso Timestamp Option Cada entrada na lista contém IP address (32 Bits) Timestamp (inteiro de 32 bits) OFLOW (4 bits) Contador do número de roteador que não puderam acrescentar informações FLAGS Controla o formato exato do campo de timestamp Redes de Computadores Profa. Ana Benso Timestamp - Flags Os valores possíveis são Valor das Flags 0 1 3 Redes de Computadores Descrição Registre apenas o timestamp, omita o endereço IP Acrescente o endereço IP e após o timestamp Endereços IP são especificados pela origem. O roteador só irá registrar seu timestamp se o próximo IP na lista for o seu. Profa. Ana Benso Fragmentação Cada padrão de rede tem um MTU diferenciado Ethernet: 1500 bytes ATM: 53 bytes FDDI: 4500 bytes ... Datagramas maiores do que a MTU da rede devem ser fragmentados Redes de Computadores Profa. Ana Benso Fragmentação Cada fragmento recebe uma cópia do header IP do datagrama original e uma porção de dados Header IP Dados Header IP Dados Frag #1 Header IP Dados Frag #1 Redes de Computadores Profa. Ana Benso Fragmentação No header IP dos fragmentos alteram-se os campos Flags, Fragment Offset, Total Length Fragmentos Header IP Dados Original Header IP Dados Frag #1 ID = xxxx DF = 0 MF =1 OFSSET = 0 Header IP Dados Frag #2 ID = xxxx DF = 0 MF = 0 OFSSET = 0+Tam FRAG #1 Redes de Computadores Profa. Ana Benso Fragmentação - exemplo MTU = 1500 bytes 1 Datagrama Origem 3000 bytes ID = 12345, DF = 0 MF = 0 Offset = 0, len = 3000 Redes de Computadores R1 MTU = 1000 bytes MTU = 1500 bytes R2 3 fragmentos de 1000 bytes 3 fragmentos de 1000 bytes ID = 12345, DF = 0 MF = 1 Offset = 0, len = 1000 ID = 12345, DF = 0 MF = 1 Offset = 0, len = 1000 ID = 12345, DF = 0 MF = 1 Offset = 1000, len = 1000 ID = 12345, DF = 0 MF = 1 Offset = 1000, len = 1000 ID = 12345, DF = 0 MF = 0 Offset = 2000, len = 1000 ID = 12345, DF = 0 MF = 0 Offset = 2000, len = 1000 Profa. Ana Benso Fragmentação com DF = 1 MTU = 1500 bytes 1 Datagrama Origem 3000 bytes ID = 12345, DF = 1 MF = 0 Offset = 0, len = 3000 ICMP – Destination Unreachable Fragmentation Neede and DF = 1 R1 MTU = 1000 bytes 0 fragmentos Retorno ICMP ID = 12345, DF = 1 MF = 0 Offset = 0, len = 3000 ICMP – Destination Unreachable Fragmentation Neede and DF = 1 Recebido pela origem do datagrama Redes de Computadores Datagrama Descartado !!! Se Offse t == 0 icmp Profa. Ana Benso Remontagem Fragmentos são remontados somente no destino Roteadores intermediários não devem remontar datagramas Gasto de memória e processamento Comutação de pacotes = fragmentos com rotas diferenciadas Tempo máximo para remontagem Se faltam fragmentos e o tempo se esgota, os fragmentos são descartados Destino envia para origem um ICMP de Time Exceeded Redes de Computadores Profa. Ana Benso Fragmentação & Remontagem Origem Destino N. 7 N. 7 N. 4 N. 4 N. 3 N. 3 N. 2 N. 2 N. 1 N. 1 Redes de Computadores Profa. Ana Benso