Introdução às Redes de Computadores/O protocolo IP

Os endereços físicos ( MAC) das placas de rede podem ser utilizados para comunicar-se com outras máquinas na própria rede, mas não além desta, pois o protocolo utilizado na camada física as limita. Para que distintas redes locais com tecnologias diferentes possam se comunicar é que foi criado o protocolo IP. Ou seja, este protocolo serve para abstrair os protocolos das camadas superiores (transporte e aplicação) da rede em que se encontram, tratando várias redes interconectadas como apenas uma.

Para conectar somente duas redes locais, normalmente um computador com duas placas de rede já basta. Este computador é comumente chamado de bridge[1][2], pois faz uma "ponte" entre as duas redes locais. Porém quando se deseja interligar várias LANs, o equipamento mais usado é um computador dedicado chamado roteador, cuja função principal é receber pacotes endereçados a redes diferentes da que estão e colocá-los na rede que esteja mais próxima de seu destino.

O endereço IP

editar

O endereço IP é um número de 32 bits[3], comumente exibido como octetos na base decimal (veja Conversão de base numérica) separados por pontos, dividido em um prefixo que identifica a rede onde está conectada a máquina e um sufixo que identifica cada máquina individualmente em sua rede. O endereço IP completo (prefixo da rede + sufixo da máquina) tem de ser único em todas as sub-redes que componham a rede maior.

Para melhorar o controle e o gerenciamento, os gestores dividiram os endereços IP na Internet em diversas classes[4] com diferentes fronteiras entre o endereço da rede e o da máquina. Assim, cada rede, dependendo do número de máquinas que possuir, recebe um prefixo para as classes A, B ou C e gerencia o sufixo de forma que os endereços não se repitam, podendo também subdividir um sufixo em um novo endereço de sub-rede, caso esta passe a existir.

Classe 8 16 24 31
A Prefixo Sufixo
B Prefixo Sufixo
C Prefixo Sufixo
D Multicast
E Reservado para experimentação[4]

Portanto o espaço de endereçamento na internet é dividido da seguinte forma[4]:

Classe Faixa de valores
(primeiro octeto)
Número de endereços
de rede
Número de máquinas
em cada rede
A 0 ~ 127 128 16.777.216
B 128 ~ 191 16.384[5] 65.536[5]
C 192 ~ 223 2.097.152[5] 256[5]
D 224 ~ 239 - -
E 240 ~ 255 ? ?

Este sistema de classes facilita o roteamento, pois dependendo da faixa em que se encontrar o primeiro octeto do endereço, se sabe quantos bits dele se referem a rede e quantos a máquina. Porém tira versatilidade do sistema. Fica-se limitado a 3 tamanhos de redes: grande (classe C), muito grande (classe B) ou exagerada (classe A). Conforme a internet crescia, se fez necessária a subdivisão dos espaços de endereçamento, para poder acomodar mais redes de menor tamanho. Então foi criado o CIDR (Classeless Interdomain Routing), que possibilita a utilização de qualquer número de bits para rede, devendo este número ser informado em um netmask.

Máscaras de rede (endereçamento sem classe)

editar

Netmask é a forma de se informar ao sistema operacional qual parte do endereço é referente à rede e qual é referente à máquina. Ele é formado com 1 na porção da rede do endereço e 0 na porção da máquina[6]. Geralmente o netmask é escrito com o mesmo formato de um endereço IP (bits separados em octetos escritos na base decimal), mesmo não sendo o endereço.

Por exemplo, um netmask para uma rede de classe C é 255.255.255.0, já que apenas o último octeto dos endereços classe C são referentes à rede, os demais estão totalmente preenchidos por 1 pois (255)10=(11111111)2.

Os administradores frequentemente precisam subdividir o espaço de endereçamento recebido para a internet. Por exemplo: Suponha ter recebido um endereço de classe C 200.131.56 e precise separar o espaço para 4 sub-redes. Assim sendo, deve-se separar mais dois bits do último octeto para identificar as redes (00, 01, 10 e 11) e o netmask teria (11000000)2 no último octeto; assim o netmask seria 255.255.255.192. Todos os endereços se iniciariam por 200.131.56, e teriam para o último octeto o seguinte:

Sub-rede De Até
(00000000)2 = (0)10 (00111111)2 = (63)10
01000000)2 = (64)10 (01111111)2 = (127)10
(10000000)2 = (128)10 (10111111)2 = (191)10
(11000000)2 = (192)10 (11111111)2 = (255)10

O netmask, assim, é ideal para a extração do endereço de rede de um endereço IP. Basta um simples e (and) bit a bit entre o netmask e o endereço para a tarefa ser completada. Por esta tarefa ser realizada nos roteadores a cada pacote, para se decidir qual será a porta de destino, a eficiência é importante.

Entretanto, alguns sistemas usam uma grafia distinta desta, indicando o número de bits componentes do endereço de rede, por exemplo 200.131.56.207/24, onde o 24 após o endereço IP serve para indicar que os 24 primeiros bits do endereço referem-se a rede e, portanto, que os 8 restantes são referentes ao endereço da máquina.

Entre a rede local e a de longa distância

editar

A camada física possui um tipo próprio de endereçamento, portanto se faz necessária uma conversão do endereço IP para o protocolo utilizado nesta camada.

Distribuição de Números IP no Brasil

editar

Um número IP é constituído de quatro octetos, abrangendo assim, uma faixa de números que vai de 0.0.0.0 até 255.255.255.255. Deste espaço total, o Brasil foi conseguindo diversas parcelas no decorrer dos anos. Aproximadamente duas dezenas de redes foram alocadas no padrão chamado "class B", que fixa os dois primeiros octetos e permite que os dois últimos sejam usados ao talante de quem as recebeu. Uma rede "class B" tem, portanto, a possibilidade de 255*255 = 65000 números (máquinas) distintos. As redes "B" obtidas pelo Brasil foram solicitadas por instituições de ensino e pesquisa diretamente ao InterNIC. O grau de eficiência em seu uso hoje varia grandemente. Da USP ao Observatório Nacional, o uso dos "class B" vai de próximo a 10% a menos de 0,1% do número possível de endereços.

A partir de 1993 o InterNIC passou a não mais conceder redes tipo "B", dado seu precário aproveitamento e a iminente escassez de números para todos, e começou então a distribuição intensa de redes classe "C", onde apenas o último octeto pode ser variado pelo cliente. São redes que comportam teoricamente 255 endereços (máquinas).

A crescente pulverização do espaço de endereços em pequenas redes "C" levou a um outro, e não menos grave, problema: o crescimento descontrolado das tabelas de rotas. Afinal, a cada rede ("B" ou "C") pode corresponder uma rota específica e, portanto, cumpre alocar mais um elemento nas tabelas dos roteadores. A exigência de cada vez mais memória nos roteadores centrais da rede ameaçou a Internet com um bloqueio geral. A forma de contornar essa ameaça foi lançar mão de "agregados" de "class C", chamados blocos CIDR, ou "Classless Inter-Domain Routing". Usando o protocolo adequado a cada agregado associa-se uma única rota, e assim economiza-se memória nos roteadores. Daí advem o seguinte problema: a "coordenação" que um agregado CIDR precisa ter para ser efetivo. Ao se atribuir um agregado a uma rota, uma linha internacional que vai dos EUA ao Brasil por exemplo, é necessário que todos os endereços desse agregado sejam, de fato, atingíveis por essa rota. Assim, é quase obrigatório delegar a redistribuição do agregado para quem cuida da rota, de forma que ele distribua os endereços contidos no agregado aos usuários de sua rota.

O Brasil ganhou inicialmente um agregado de 1024 classes "C", de 200.17.0.0 até 200.20.0.0. Esse agregado foi dividido em dois, um associado à rota pela linha da Fapesp e outro associado à rota pela linha da UFRJ. Com a entrada da área comercial no cenário da Internet brasileira, foram requisitados mais endereços dentro da faixa que cabia ao Brasil. O InterNIC respondeu que a faixa de 200 estaria alocada à América Latina como um todo. Fez-se ver a eles que não existia maneira de coordenar a alocação de blocos da América Latina inteira, visto que existiam diversas portas de entrada (linhas internacionais) e diversas administrações locais. O InterNIC respondeu repassando ao Brasil metade do espaço latino-americano, que corresponde a faixa que vai de 200.128.0.0 até 200.255.0.0. São 32000 classes "C", além do que já havia sido anteriormente alocado. Isto corresponde a 8 milhões de endereços distintos que, se forem aproveitados em 10%, redundarão em 800.000 máquinas conectáveis. Note-se que o Brasil foi o primeiro, e até agora, único país da América Latina a ter autonomia para gerir seu espaço total e não precisa mais recorrer ao InterNIC a cada nova atribuição de endereço dentro dos agregados que recebeu. Essa autonomia conferiu agilidade, eficiência, e sobretudo, credibilidade, a par de responsabilidades.

Autor: Demi Getschko Em 20/03/1997

Referências

editar
  1. How Stuff Works. Como funciona a Ethernet. Página visitada em 1 de fevereiro de 2011.
  2. LSM, Acessado em 9/8/10.
  3. Devmedia, Acessado em 9/8/10.
  4. 4,0 4,1 4,2 [mesonpi.cat.cbpf.br/naj/tcpipf.pdf Mesonpi], página 8. Acessado em 9/8/10.
  5. 5,0 5,1 5,2 5,3 Vas-y, Acessado em 9/8/10.
  6. [mesonpi.cat.cbpf.br/naj/tcpipf.pdf Mesonpi], página 9. Acessado em 9/8/10.