Nas duas décadas desde sua invenção, a heterogeneidade das redes expandiu ainda mais com a implementação da Ethernet, do Token Ring, da Fiber Distributed Data Interface (FDDI), do X.25, do Frame Relay, do Switched Multimegabit Data Service (SMDS), da Integrated Services Digital Network (ISDN) e, mais recentemente, do Asynchronous Transfer Mode (ATM). Os protocolos de Internet são a melhor abordagem comprovada para a interligação de redes nessa faixa diversa de tecnologias LAN e WAN.
O conjunto do Internet Protocol inclui não apenas especificações de nível inferior, como o Transmission Control Protocol (TCP) e o Internet Protocol (IP), mas especificações para aplicações comuns como correio eletrônico, emulação de terminal e transferência de arquivos. A Figura 1 mostra o conjunto de protocolos TCP/IP em relação ao modelo OSI Reference. A Figura 2 mostra alguns dos protocolos de Internet importantes e sua relação com o modelo de referência OSI. Para obter informações sobre o modelo de referência OSI e a função de cada camada, consulte o documento Fundamentos de internetworking.
Os protocolos da Internet são os conjuntos de protocolos de vários fornecedores mais amplamente implementados em uso hoje em dia. O suporte para pelo menos parte do conjunto Internet Protocol está disponível em praticamente todos os fornecedores de computadores.
Esta seção descreve os aspectos técnicos do TCP, IP, protocolos relacionados e os ambientes nos quais esses protocolos operam. Como o foco principal deste documento é o roteamento (uma função da camada 3), a discussão sobre o TCP (um protocolo da camada 4) será relativamente breve.
O TCP é um protocolo de transporte orientado para conexão que envia dados como um fluxo de bytes não estruturado. Usando os números de sequência e as mensagens de confirmação, o TCP pode fornecer um nó de envio com informações de entrega sobre os pacotes transmitidos a um nó de destino. Onde os dados foram perdidos em trânsito da origem para o destino, o TCP pode retransmitir os dados até que uma condição de tempo limite seja atingida ou até que a entrega bem-sucedida seja alcançada. O TCP também pode reconhecer mensagens duplicadas e descartá-las adequadamente. Se o computador emissor estiver transmitindo muito rápido para o computador receptor, o TCP pode empregar mecanismos de controle de fluxo para retardar a transferência de dados. O TCP também pode comunicar informações de entrega aos protocolos e aplicativos da camada superior suportados. Todas essas características tornam o TCP um protocolo de transporte confiável de ponta a ponta. O TCP é especificado no RFC 793 .
Figura 1 â conjunto de protocolos TCP/IP em relação ao modelo de referência OSIFigura 2 um protocolos importantes da Internet em relação ao modelo de referência OSI
Consulte a seção TCP de Protocolos Internet para obter mais informações.
O IP é o protocolo principal da camada 3 no conjunto da Internet. Além do roteamento entre redes, o IP fornece relatórios de erros, fragmentação e remontagem de unidades de informação chamadas datagramas para transmissão por redes com tamanhos máximos de unidades de dados diferentes. O IP representa o coração do conjunto Internet Protocol.
Observação: o termo IP na seção refere-se a IPv4, a menos que explicitamente declarado de outra forma.
Os endereços IP são números globais exclusivos, de 32 bits, atribuídos pelo Network Information Center. Os endereços globalmente exclusivos permitem que as redes IP em qualquer lugar do mundo se comuniquem entre si.
Um endereço IP é dividido em duas partes. A primeira parte designa o endereço de rede, enquanto a segunda parte designa o endereço de host.
O espaço do endereço IP é dividido em diferentes classes de rede. As redes de classe A destinam-se principalmente ao uso com algumas redes muito grandes, porque fornecem apenas 8 bits para o campo de endereço de rede. As redes de classe B alocam 16 bits e as redes de classe C alocam 24 bits para o campo de endereço de rede. As redes de classe C fornecem apenas 8 bits para o campo do host, entretanto, o número de hosts por rede pode ser um fator limitante. Nos três casos, os bits mais à esquerda indicam a classe de rede. Os endereços IP são escritos em formato decimal com pontos; por exemplo, 34.0.0.1. A Figura 3 mostra os formatos de endereço para redes IP de classe A, B e C.
Figura 3 â Formatos de endereço para redes IP de classe A, B e C
As redes IP também podem ser divididas em unidades menores chamadas de sub-redes ou "sub-redes". As sub-redes oferecem uma flexibilidade adicional ao administrador de redes. Por exemplo, suponha que uma rede recebeu um endereço de classe A e que todos os nós na rede usam um endereço de classe A. Suponha ainda que a representação decimal pontuada do endereço desta rede seja 34.0.0.0. (Todos os zeros no campo de host de um endereço especificam a rede inteira.) O administrador pode subdividir a rede usando a divisão em sub-redes. Isso é feito tomando-se bits "emprestados" da parte do host do endereço e usando-os como um campo de sub-rede, como mostrado na Figura 4.
Figura 4 um bits "emprestados"
Se o administrador de rede escolheu usar 8 bits de sub-rede, o segundo octeto de um endereço IP de classe A fornece o número da sub-rede. Em nosso exemplo, o endereço 34.1.0.0 se refere à rede 34, sub-rede 1; o endereço 34.2.0.0 refere-se à rede 34, sub-rede 2 e assim por diante.
O número de bits que podem ser emprestados para o endereço de sub-rede varia. Para especificar quantos bits são usados para representar a rede e a porção de sub-rede do endereço, o IP fornece máscaras de sub-rede. As máscaras de sub-rede utilizam o mesmo formato e técnica de representação que os endereços IP. As máscaras de sub-rede contêm números 1 em todos os bits, exceto naqueles que especificam o campo host. Por exemplo, a máscara de sub-rede que especifica 8 bits de sub-rede para o endereço de Classe A 34.0.0.0 é 255.255.0.0. A máscara de sub-rede que especifica 16 bits de sub-redes para o endereço 34.0.0.0 da Classe A é 255.255.255.0. Ambas as máscaras de sub-rede são mostradas na Figura 5. As máscaras de sub-rede podem ser passadas por uma rede sob demanda para que os novos nós possam saber quantos bits de sub-rede estão sendo usados em sua rede.
Figura 5 máscaras de sub-rede
Tradicionalmente, todas as sub-redes do mesmo número de rede usavam a mesma máscara de sub-rede. Em outras palavras, um gerente de rede escolheria uma máscara de oito bits para todas as sub-redes na rede. Essa estratégia é fácil de gerenciar para administradores de rede e protocolos de roteamento. No entanto, essa prática desperdiça espaço de endereços em algumas redes. Algumas sub-redes têm muitos hosts e algumas têm apenas alguns, mas cada um consome um número completo de sub-rede. As linhas seriais são o exemplo mais extremo, pois cada uma tem apenas dois hosts que podem ser conectados através de uma sub-rede de linha serial.
À medida que as sub-redes IP cresceram, os administradores procuraram maneiras de usar seu espaço de endereços com mais eficiência. Uma das técnicas resultantes é chamada Máscaras de Sub-rede de Comprimento Variável (VLSM). Com VLSM, um administrador de rede pode usar uma máscara longa em redes com poucos hosts e uma máscara curta em sub-redes com muitos hosts. No entanto, essa técnica é mais complexa do que torná-los todos de um tamanho, e os endereços devem ser atribuídos com cuidado.
É claro que para usar VLSM, um administrador de rede deve usar um protocolo de roteamento que o suporte. Os roteadores Cisco suportam VLSM com OSPF (Open Shortest Path First), IS-IS (Integrated Intermediate System to Intermediate System), IGRP (Enhanced Interior Gateway Routing Protocol) e roteamento estático. Consulte Endereçamento IP e Sub-Redes para Novos Usuários para obter mais informações sobre endereçamento IP e sub-redes.
Em algumas mídias, como LANs IEEE 802, os endereços IP são descobertos dinamicamente através do uso de dois outros membros do conjunto de protocolos da Internet: Address Resolution Protocol (ARP) e Reverse Address Resolution Protocol (RARP). O ARP usa mensagens de broadcast para determinar o endereço do hardware (camada MAC) correspondente a um endereço específico da camada de rede. O ARP é suficientemente genérico para permitir o uso de IP com praticamente qualquer tipo de mecanismo de acesso à mídia subjacente. RARP usa mensagens de transmissão para determinar o endereço de camada de rede associado a um endereço específico de rede. O RARP é especialmente importante para nós sem disco, para os quais os endereços de camada de rede geralmente são desconhecidos no momento da inicialização.
Uma "Internet" é um grupo de redes interconectadas. A Internet, por outro lado, é a coleção de redes que permite a comunicação entre a maioria das instituições de pesquisa, universidades e muitas outras organizações em todo o mundo. Os roteadores na Internet estão organizados hierarquicamente. Alguns roteadores são usados para mover informações através de um grupo específico de redes sob a mesma autoridade e controle administrativos. (Essa entidade é chamada de sistema autônomo.) Os roteadores usados para troca de informações em sistemas autônomos são chamados de roteadores interiores e usam uma variedade de protocolos de gateway interior (IGPs) para realizar essa finalidade. Os roteadores que movem informações entre sistemas autônomos são chamados de roteadores externos; usam o Exterior Gateway Protocol (EGP) ou o Border Gateway Protocol (BGP). A Figura 6 mostra a arquitetura da Internet.
Figura 6 â representação arquitetura da Internet
Routing Protocols usados com IP são dinâmicos por natureza. O roteamento dinâmico exige que o software nos dispositivos de roteamento calcule rotas. Os algoritmos de roteamento dinâmico se adaptam às alterações na rede e selecionam automaticamente as melhores rotas. Em contraste com o roteamento dinâmico, o roteamento estático exige que as rotas sejam estabelecidas pelo administrador da rede. As rotas estáticas não mudam até que o administrador da rede as mude.
As tabelas de roteamento IP consistem em endereços de destino/pares de próximo salto. Esta tabela de roteamento de exemplo de um roteador Cisco mostra que a primeira entrada é interpretada como significando "para chegar à rede 34.1.0.0 (sub-rede 1 na rede 34), a próxima parada é o nó no endereço 54.34.23.12":
R6-2500# show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 34.0.0.0/16 is subnetted, 1 subnets O 34.1.0.0 [110/65] via 54.34.23.12, 00:00:51, Serial0 54.0.0.0/24 is subnetted, 1 subnets C 54.34.23.0 is directly connected, Serial0 R6-2500#
Como vimos, o roteamento IP especifica que os datagramas IP trafegam através de uma internetwork, um salto de roteador por vez. A rota inteira não é conhecida no início da transmissão. Em vez disso, em cada parada, o próximo salto do roteador é determinado pela correspondência do endereço de destino dentro do datagrama com uma entrada na tabela de roteamento do nó atual. O envolvimento de cada nó no processo de roteamento consiste apenas em encaminhar pacotes com base em informações internas. O IP não fornece relatórios de erros para a origem quando ocorrem anomalias de roteamento. Esta tarefa é deixada para outro protocolo Internet Control Message Protocol (ICMP).
O ICMP executa várias tarefas em uma internetwork IP. Além do principal motivo para o qual foi criado (reportando falhas de roteamento de volta à origem), o ICMP fornece um método para testar a alcançabilidade do nó em uma Internet (mensagens ICMP de eco e resposta), um método para aumentar a eficiência do roteamento (a mensagem ICMP de redirecionamento), um método para informar às fontes que um datagrama excedeu seu tempo alocado para existir em uma Internet (a mensagem ICMP de tempo excedido) e outras mensagens úteis. Em suma, o ICMP é parte integrante de qualquer implementação de IP, particularmente daqueles executados em roteadores. Consulte as informações relacionadas