Introdução :
Uma das coisas mais interessantes da Internet é que ninguém realmente é seu dono. Ela é uma coleção global de redes, grandes e pequenas. Estas redes se conectam de vários modos diferentes para formar a entidade singular que conhecemos como Internet. De fato, o nome realmente vem desta idéia de redes interconectadas.
Desde seu começo, em 1969, a Internet cresceu de 4 sistemas de computadores para dezenas de milhões. Entretanto, só porque ninguém é proprietário da Internet, isto não significa que ela não é monitorada e mantida de diferentes modos. A sociedade da Internet (em inglês), um grupo sem fins lucrativos formado em 1992, supervisiona a formação de políticas e protocolos que definem como usamos e interagimos com a Internet.
Neste artigo, você vai conhecer a estrutura básica da Internet. Você vai aprender sobre os servidores de nome de domínio, pontos de acesso de rede e backbones, mas, antes de tudo, como o seu computador se conecta com os outros.
Uma hierarquia de redes :
Cada computador que é conectado à Internet faz parte de uma rede, mesmo aquela da sua casa. Por exemplo, você pode usar um modem e um número local de discagem para se conectar a um provedor de acesso à Internet (ISP - Internet Service Provider). No trabalho, você pode fazer parte de uma rede de área local (LAN), mas você muito provavelmente ainda se conecta à Internet usando um provedor que sua empresa contratou. Quando você se conecta com o seu provedor, torna-se parte da rede deles, e esta, por sua vez conecta-se a uma rede maior e se torna parte dela. A Internet é simplesmente uma rede de redes.
A maioria das grandes empresas de comunicações tem seus próprios backbones exclusivos para se conectar com várias regiões. Em cada região, a empresa tem um ponto de presença (POP - Point Of Presence), um lugar para os usuários locais acessarem a rede da empresa, freqüentemente através de um número telefônico local ou linha exclusiva. O interessante é que não há um controle geral sobre a rede. Em vez disso, há várias redes de alto nível conectadas umas às outras através de pontos de acesso de rede ou NAPs (Network Access points).
Quando você se conecta à Internet, seu computador
se torna parte de uma rede
Um exemplo de rede :
Aqui está um exemplo. Imagine que a empresa A é um grande provedor de acesso. Em cada grande cidade, a empresa A tem um POP. O POP de cada cidade é uma estrutura completa de modens para os quais os clientes do provedor discam. A empresa A aluga as linhas de fibra ótica da companhia telefônica para conectar os POPs, veja, por exemplo, este mapa de conectividade de centro de dados UUNET (em inglês).
Imagine que a empresa B é um provedor de acesso corporativo. A empresa B constrói grandes prédios nas principais cidades e as corporações estabelecem suas máquinas de servidor de Internet nesses edifícios. A empresa B é tão grande que instalou ela mesma linhas de fibra ótica entre seus edifícios para interconectá-los.
Nesta disposição, todos os clientes da empresa A podem falar entre si, assim como os clientes da empresa B, porém não há como os clientes das empresas A e B se intercomunicarem. Portanto, a empresa A e a empresa B concordam em se conectar a NAPs em várias cidades, sendo que o tráfego entre as 2 empresas se dá nos NAPs.
Na Internet real, vários provedores de Internet se interconectam em NAPs de várias cidades, e trilhões de bytes de fluxo de dados são transmitidos entre as redes individuais nesses pontos. A Internet é um conjunto imenso de redes associadas que concordam em se intercomunicar umas com as outras nos NAPs. Deste modo, cada computador na rede está conectado a todos os outros.
Resolvendo a divisão :
Todas estas redes se apóiam nos NAPs, backbones e roteadores para falar umas com as outras. O que é incrível sobre este processo é que uma mensagem pode deixar um computador e viajar pelo mundo através de diferentes redes e chegar a um outro computador na fração de um segundo!
Os roteadores determinam para onde enviar as informações de um computador para outro. Eles são computadores especializados que encaminham suas mensagens e as de todos os usuários da Internet a seus destinos por milhares de caminhos. Um roteador possui 2 tarefas distintas, porém relacionadas:
Garantir que as informações não sejam encaminhadas para onde não são necessárias. Isso é crucial para impedir que grandes volumes de dados venham a entupir as conexões com "inocentes espectadores";
Garantir que as informações sejam encaminhadas ao destino desejado.
Ao executar esses 2 serviços, o roteador é muito útil em negociar separadamente com as 2 redes de computadores. Ele junta as 2 redes, passando informações de uma para outra. Ele também protege as redes umas das outras, evitando o vazamento desnecessário do tráfego entre elas. Independentemente da quantidade de redes agregadas ao conjunto, da operação e da funcionalidade, o roteador permanece o mesmo. Já que a Internet é uma imensa rede de milhares de pequenas redes, os roteadores são vitais para ela.
Backbones :
A Fundação Nacional de Ciência (NSF) criou o primeiro backbone de alta velocidade em 1987. Chamado NSFNET, tratava-se de uma linha T1 que conectava 170 redes menores e operava com 1,544 Mb/s (milhões de bits por segundo). A IBM, a MCI e a Merit trabalharam com o NSF para crir um backbone T3 (45 Mb/s).
Em geral, os backbones são linhas tronco de fibra ótica. A linha tronco tem múltiplos cabos de fibra ótica combinados para aumentar a capacidade. Os cabos de fibra ótica são designados OC ( Optical Camer - portadora ótica) por exemplo, OC-3, OC-12 ou OC-48. Uma linha de OC-3 é capaz de transmitir 155 Mb/s enquanto um OC-48 pode transmitir 2.488 Mb/s (2,488 Gb/s). Compare isto a um modem de 56K normal transmitindo 56 mil bps e você verá como um backbone moderno é rápido.
Hoje há muitas empresas que operam com seus próprios backbones de alta capacidade e todos se interconectam em vários NAPs ao redor do mundo. Deste modo, todos na Internet, não importa onde estejam e quais empresas usam, são capazes de falar com o resto do planeta. A Internet inteira é um acordo de expansão gigantesco entre empresas para uma intercomunicação livre.
Protocolo da Internet: endereços IP :
Cada máquina na Internet tem um único número de identificação, chamado endereço de IP (Internet Protocol). IP significa protocolo da Internet, que é a língua que os computadores usam para se comunicar na Internet. Um protocolo é a maneira pré-definida para que alguém utilize um serviço. Esse "alguém" pode ser uma pessoa, mas geralmente é um programa, como um navegador da web.
Um endereço IP típico se parece com isto:
216.27.61.137
Para torná-lo mais fácil para nós humanos nos lembrarmos, os endereços IP são em geral expressos em formato decimal como um número decimal com ponto, como o que está acima. Mas os computadores se comunicam em forma binária. Observe o mesmo endereço de IP na forma binária:
11011000.00011011.00111101.10001001
Os 4 números em um endereço IP são chamados de octetos, pois cada um deles possui 8 posições quando vistos na forma binária. Se você juntar todas as posições, terá 32, que é a razão para os endereços IP serem considerados números de 32 bits. Já que cada 1 das 8 posições pode ter 2 estados diferentes (1 ou zero), o número total de combinações possíveis por octeto é de 28 ou 256. Cada octeto pode conter qualquer valor entre zero e 255. Combine os 4 octetos e você conseguirá 232 ou possíveis 4.294,967,296 valores únicos!
Obs :
IPv4 ( sistema de ips de 32 bits usado atualmente, e que já está esgotando sua capacidade de combinações acima ).
IPv6 ( novo sistema de ips que já está em uso e proporciona 2128 , ou seja; 128 bits, o que dá um número espantoso de combinações )
Além das quase 4,3 bilhões de combinações possíveis, determinados valores têm uso restrito para endereços de IP típicos. Por exemplo, o endereço IP 0.0.0.0 é reservado para a rede padrão e o endereço 255.255.255.255 é usado para difusões.
Os octetos servem apenas para separar os números. Eles são usados para criar classes de endereços IP que podem ser designadas para um negócio privado, governo ou outra entidade baseadas no tamanho e necessidade. Os octetos são divididos em 2 seções: Net e Host. A seção net sempre contém o primeiro octeto. Ele é usado para identificar a rede à qual um computador pertence. O host (às vezes, chamado de nó) identifica o computador real na rede. A seção host sempre contém o último octeto. Há 5 classes de IP, além de determinados endereços especiais.
Protocolo da Internet: sistema de nome de domínio (DNS) :
Quando a Internet estava no começo, ela era composta por um número pequeno de computadores ligados por meio de modens e linhas telefônicas. Você podia somente fazer conexões ao fornecer o endereço IP do computador com que quisesse estabelecer um link. Por exemplo, um endereço de IP típico deve ser 216.27.22.162. Isto funcionava bem quando havia somente alguns servidores por aí, mas se tornou inviável à medida que mais e mais sistemas se integraram.
A primeira solução para o problema foi um simples arquivo de texto mantido pelo Network Information Center (Centro de informações da rede), que mapeou os nomes para os endereços IP. Logo este arquivo de texto se tornou tão grande que era confuso demais para administrar. Em 1983, a Universidade de Wisconsin criou o Sistema de Nome de Domínio (DNS - Domain Name System), que mapeia os nomes de texto para os endereços IP automaticamente. Desta forma você somente precisa lembrar http://www.spy-center.com.br, por exemplo, em vez do endereço IP .
URLs, localizadores de recursos uniformes :
Quando você navega na Web ou envia uma mensagem de e-mail, se utiliza de nomes de domínio. Por exemplo, o Localizador de Recurso Uniforme (URL - Uniform Resource Locator) "http://www.spy-center.com.br" contém o nome de domínio spy-center.com.br; assim como este endereço de e-mail: exemplo@spy-center.com.br Toda vez que você usa um nome de domínio, usa os servidores DNS da Internet para traduzir o nome de domínio legível para humanos para o endereço IP legível para máquinas. Veja Como funcionam os servidores de domínio (DNS) para mais informações sobre DNS.
Os nomes de domínio de alto nível, também chamados de nomes de domínio de primeiro nível, incluem .COM, .ORG, .NET, .EDU e .GOV. Dentro de cada domínio de alto nível há uma lista imensa de domínios de segundo nível. Por exemplo, no domínio de primeiro nível .COM há:
Seudominio
Yahoo
Microsoft
Cada nome no domínio de alto nível .COM deve ser único. A palavra mais à esquerda, como www, é o nome do host. Ele especifica o nome de uma máquina específica (com um endereço específico de IP) em um domínio. Potencialmente, um certo domínio pode conter milhões de nomes de servidores, contanto que sejam todos únicos dentro deste domínio.
Os servidores DNS aceitam solicitações de programas e outros servidores de nome para converter nomes de domínio em endereços IP. Quando uma solicitação chega, o servidor DNS pode fazer uma das seguintes 4 coisas:
Pode responder à solicitação com um endereço IP porque já conhece o endereço IP para o domínio solicitado;
Pode contactar um outro servidor DNS e tentar encontrar o endereço IP pelo nome solicitado Talvez tenha de fazer várias vezes;
Ele pode dizer: "Eu não conheço o endereço IP para o domínio solicitado, mas aqui está o endereço IP de um servidor DNS que sabe mais do que eu";
Ele pode retornar com uma mensagem de erro porque o nome de domínio solicitado é inválido ou não existe.
Um exemplo de DNS :
Vamos dizer que você digitou o URL www.spy-center.com.br no seu navegador. O navegador contacta um servidor DNS para conseguir o endereço IP. Um servidor DNS inicia sua busca por um endereço IP entrando em contato com um dos servidores DNS raiz, que conhecem os endereços IP para todos os servidores DNS que lidam com os domínios de alto nível (.COM, .NET, .ORG, etc.). Seu servidor DNS pergunta ao raiz sobre www.spy-center.com.br e o raiz diz: "Eu não sei o endereço IP para www.spy-center.com.br, mas aqui está o endereço IP para o servidor DNS .COM".
Seu servidor de nome então envia uma pergunta ao servidor DNS .COM indagando se ele conhece o endereço IP para www.spy-center.com.br. O servidor DNS para o domínio .COM conhece os endereços IP para os servidores de nome que lidam com o domínio www.spy-center.com.br, e então retorna estes endereços de IP.
Seu servidor de nome então entra em contato com o servidor DNS para www.spy-center.com.br e pergunta se ele conhece o endereço IP para www.spy-center.com.br. Ele conhece, então retorna o endereço IP para o seu servidor DNS, que retorna-o para o navegador, que pode então entrar em contato com o servidor www.spy-center.com.br para chegar a uma página da Web.
Um dos pontos-chave para fazer este trabalho é a redundância. Há vários servidores DNS em cada nível e, caso algum falhe, há outros para lidar com as solicitações. O outro ponto-chave é armazenar em cache. Depois que um servidor de DNS resolve uma solicitação, ele armazena em cache o endereço IP que recebe. Uma vez que ele fez uma solicitação a um servidor de DNS raiz por qualquer domínio .COM, ele conhece o endereço IP para um servidor DNS que lida com o domínio .COM e, então, não precisa buscar por esta informação novamente com os servidores de DNS raiz. Os servidores DNS podem fazer isto para cada solicitação e este cache ajuda a agilizar as coisas.
Mesmo sendo totalmente invisíveis, os servidores DNS lidam com bilhões de solicitações todos os dias e são essenciais para o bom funcionamento da Internet. O fato de que este banco de dados distribuído funciona tão bem e de forma invisível, dia e noite - é testemunha do sucesso do projeto.
Clientes e servidores :
Os servidores tornam a Internet possível. Todas as máquinas na Internet são servidores ou clientes. As máquinas que fornecem serviços para outras máquinas são servidores. E as máquinas que são usadas para se conectar a esses serviços são os clientes. Há servidores da Web, servidores de e-mail, servidores de FTP e assim por diante, atendendo às necessidades dos usuários da Internet de todo o mundo.
Quando você se conecta à www.spy-center.com.br para ler uma página, você é um usuário sentado em uma máquina de cliente. Você está acessando o servidor de Web da Agência Spy-Center. A máquina do servidor encontra a página que você requisitou e a envia para você. Os clientes que buscam uma máquina de servidor fazem isto com uma intenção específica, ou seja, eles direcionam suas solicitações para um servidor de software específico que esteja rodando na máquina do servidor. Por exemplo, se você está rodando um navegador de Internet na sua máquina, ele vai querer falar com o servidor da Web na máquina do servidor, não com o servidor de e-mail.
Um servidor possui um endereço IP estático, que não é alterado muito freqüentemente. Uma máquina doméstica que faça uma conexão dial-up através de um modem, por outro lado, geralmente recebe um endereço IP atribuído pelo provedor sempre que a máquina faz a conexão. Esse endereço IP é exclusivo para aquela sessão: ele poderá ser diferente da próxima vez que a máquina se conectar. Desse modo, um provedor precisa somente de um endereço IP para cada modem que ele suporta, em vez de um para cada cliente.
Portas :
Qualquer máquina de servidor disponibiliza seus serviços usando as portas numeradas, uma para cada serviço disponível naquele servidor. Por exemplo, se uma máquina de servidor estiver rodando um servidor da Web e um servidor FTP (servidor de protocolo de transferência de arquivo), o servidor da Web geralmente está disponível na porta 80, ao passo que o servidor de FTP está disponível na porta 21. Os clientes se conectam a um serviço em um endereço IP específico e em um número de porta específico.
Assim que o cliente se conecta a um serviço em uma porta particular, ele acessa o serviço usando um protocolo específico. Os protocolos freqüentemente são textos, e simplesmente descrevem como o cliente e o servidor terão sua conversação. Cada servidor da Web na Internet segue o protocolo de transferência de hipertexto (http - hypertext transfer protocol). Você pode aprender mais sobre servidores de Internet, portas e protocolos lendo Como funcionam os servidores da Web.
As redes, roteadores, NAPs, DNS, provedores e servidores poderosos, todos eles, tornam a Internet possível. É verdadeiramente incrível quando você percebe que todas estas informações são enviadas pelo mundo em uma questão de milésimos de segundos! Os componentes são extremamente importantes na vida moderna: e sem eles não haveria Internet. E sem a Internet, a vida seria muito diferente para muitos de nós.
Desta forma, manipulando estes recursos e muitos outros mais, é possível se fazer interceptações digitais entre os computadores que se comunicam na rede.