DOE AGORA Qualquer valor

Como a Internet funciona?

Como a Internet funciona?

© 2002 Rus Shuler @ Pomeroy Soluções de TI , todos os direitos reservados

Conteúdo

  1. Introdução
  2. Por onde começar? Endereços da Internet
  3. Pilhas e pacotes de protocolo
  4. Infraestrutura de Rede
  5. Infraestrutura da Internet
  6. A hierarquia de roteamento da Internet
  7. Nomes de domínio e resolução de endereços
  8. Protocolos da Internet Revisitados
  9. Protocolos de Aplicação: HTTP e a World Wide Web
  10. Protocolos de Aplicação: SMTP e Correio Eletrônico
  11. protocolo de Controle de Transmissão
  12. protocolo de internet
  13. Embrulhar
  14. Recursos
  15. Bibliografia

Introdução

Como a Internet funciona? Boa pergunta! O crescimento da Internet se tornou explosivo e parece impossível escapar do bombardeio do www.com , visto constantemente na televisão, ouvido no rádio e visto em revistas. Como a Internet se tornou uma parte tão grande de nossas vidas, é necessário um bom entendimento para usar essa nova ferramenta com mais eficiência.
Este whitepaper explica a infraestrutura e as tecnologias subjacentes que fazem a Internet funcionar. Não entra em grande profundidade, mas cobre o suficiente de cada área para dar uma compreensão básica dos conceitos envolvidos. Para quaisquer perguntas não respondidas, uma lista de recursos é fornecida no final do artigo. Quaisquer comentários, sugestões, perguntas, etc. são encorajados e podem ser direcionados ao autor em rshuler@gobcg.com.

Por onde começar? Endereços da Internet

Como a Internet é uma rede global de computadores, cada computador conectado à Internet deve ter um endereço exclusivo. Os endereços da Internet estão no formato nnn.nnn.nnn.nnn, em que nnn deve ser um número de 0 a 255. Esse endereço é conhecido como endereço IP. (IP significa Internet Protocol; mais sobre isso depois.)
A figura abaixo ilustra dois computadores conectados à Internet; o seu computador com o endereço IP 1.2.3.4 e outro computador com o endereço IP 5.6.7.8. A Internet é representada como um objeto abstrato no meio. (À medida que este trabalho avança, a parte da Internet do Diagrama 1 será explicada e redesenhada várias vezes, à medida que os detalhes da Internet forem expostos.)
Diagrama 1
Diagrama 1
Se você se conectar à Internet por meio de um provedor de serviços de Internet (ISP), geralmente receberá um endereço IP temporário durante a sua sessão de discagem. Se você se conectar à Internet a partir de uma rede local (LAN), seu computador poderá ter um endereço IP permanente ou poderá obter um endereço temporário de um servidor DHCP (Protocolo de configuração dinâmica de hosts). Em qualquer caso, se você estiver conectado à Internet, seu computador terá um endereço IP exclusivo.
Check It Out - O Programa Ping
Se você estiver usando o Microsoft Windows ou um pouco de Unix e tiver uma conexão com a Internet, há um programa útil para ver se um computador na Internet está ativo. É chamado de ping , provavelmente após o som feito por sistemas de sonar submarinos mais antigos. 1 Se você estiver usando o Windows, inicie uma janela de prompt de comando. Se você estiver usando um sabor do Unix, acesse um prompt de comando. Digite ping www.yahoo.comO programa ping enviará um 'ping' (na verdade, uma mensagem de solicitação de eco ICMP (Internet Control Message Protocol)) para o computador nomeado. O computador pingado responderá com uma resposta. O programa ping contará o tempo expirado até que a resposta retorne (se isso acontecer). Além disso, se você digitar um nome de domínio (ou seja, www.yahoo.com) em vez de um endereço IP, o ping resolverá o nome do domínio e exibirá o endereço IP do computador. Mais sobre nomes de domínio e resolução de endereços mais tarde.

Pilhas e pacotes de protocolo

Portanto, seu computador está conectado à Internet e tem um endereço exclusivo. Como ele 'fala' com outros computadores conectados à Internet? Um exemplo deve servir aqui: Digamos que seu endereço IP seja 1.2.3.4 e você queira enviar uma mensagem para o computador 5.6.7.8. A mensagem que você deseja enviar é "Hello computer 5.6.7.8!". Obviamente, a mensagem deve ser transmitida por qualquer tipo de fio que conecte seu computador à Internet. Digamos que você tenha discado para seu ISP de casa e a mensagem deve ser transmitida pela linha telefônica. Portanto, a mensagem deve ser traduzida do texto alfabético em sinais eletrônicos, transmitida pela Internet e traduzida novamente em texto alfabético. Como isso é feito? Através do uso de uma pilha de protocolosTodo computador precisa de um para se comunicar na Internet e geralmente é embutido no sistema operacional do computador (ou seja, Windows, Unix, etc.). A pilha de protocolos usada na Internet é referenciada como pilha de protocolos TCP / IP devido aos dois principais protocolos de comunicação usados. A pilha TCP / IP é semelhante a esta: 


Camada de protocoloComentários
Camada de Protocolos de AplicaçãoProtocolos específicos para aplicações como WWW, e-mail, FTP, etc.
Camada de Protocolo de Controle de TransmissãoO TCP direciona pacotes para um aplicativo específico em um computador usando um número de porta.
Camada de protocolo da InternetO IP direciona pacotes para um computador específico usando um endereço IP.
Camada de hardwareConverte dados de pacotes binários em sinais de rede e vice-versa. 
(Por exemplo, placa de rede ethernet, modem para linhas telefônicas, etc.)


Se fôssemos seguir o caminho que a mensagem "Olá computador 5.6.7.8!" levou do nosso computador para o computador com o endereço IP 5.6.7.8, aconteceria algo assim: 

Diagrama 2
Diagrama 2
  1. A mensagem começaria no topo da pilha de protocolos no seu computador e funcionaria de forma descendente.
  2. Se a mensagem a ser enviada for longa, cada camada de pilha pela qual a mensagem passa pode dividir a mensagem em partes menores de dados. Isso ocorre porque os dados enviados pela Internet (e pela maioria das redes de computadores) são enviados em partes gerenciáveis. Na Internet, esses fragmentos de dados são conhecidos como pacotes .
  3. Os pacotes passariam pela Camada de Aplicação e continuariam até a camada TCP. Cada pacote recebe um número de porta . As portas serão explicadas mais tarde, mas basta dizer que muitos programas podem estar usando a pilha TCP / IP e enviando mensagens. Precisamos saber qual programa no computador de destino precisa receber a mensagem porque ela estará ouvindo em uma porta específica.
  4. Depois de passar pela camada TCP, os pacotes seguem para a camada IP. É aqui que cada pacote recebe seu endereço de destino, 5.6.7.8.
  5. Agora que nossos pacotes de mensagens têm um número de porta e um endereço IP, eles estão prontos para serem enviados pela Internet. A camada de hardware se encarrega de transformar nossos pacotes contendo o texto alfabético de nossa mensagem em sinais eletrônicos e transmiti-los pela linha telefônica.
  6. Na outra extremidade da linha telefônica, seu ISP tem uma conexão direta com a Internet. roteador do ISP examina o endereço de destino em cada pacote e determina para onde enviá-lo. Frequentemente, a próxima parada do pacote é outro roteador. Mais sobre roteadores e infra-estrutura da Internet depois.
  7. Eventualmente, os pacotes chegam ao computador 5.6.7.8. Aqui, os pacotes começam na parte inferior da pilha TCP / IP do computador de destino e funcionam para cima.
  8. À medida que os pacotes sobem pela pilha, todos os dados de roteamento que a pilha do computador de envio adicionou (como endereço IP e número da porta) são removidos dos pacotes.
  9. Quando os dados alcançam o topo da pilha, os pacotes foram remontados em sua forma original, "Hello computer 5.6.7.8!"

Infraestrutura de Rede

Então agora você sabe como os pacotes viajam de um computador para outro pela Internet. Mas o que está no meio? O que realmente compõe a Internet? Vamos ver outro diagrama: 

Diagrama 3
Diagrama 3
Aqui vemos o Diagrama 1 redesenhado com mais detalhes. A conexão física através da rede telefônica para o provedor de serviços de Internet pode ter sido fácil de adivinhar, mas além disso pode haver alguma explicação.
O ISP mantém um pool de modems para seus clientes de discagem. Isso é gerenciado por algum tipo de computador (geralmente um dedicado) que controla o fluxo de dados do pool de modems para um backbone ou roteador de linha dedicado. Essa configuração pode ser referenciada como um servidor de porta, já que 'serve' o acesso à rede. As informações de cobrança e uso geralmente são coletadas aqui também.
Depois que seus pacotes atravessarem a rede telefônica e o equipamento local do seu provedor, eles serão roteados para o backbone do ISP ou para o backbone do qual o ISP compra largura de banda. A partir daqui, os pacotes normalmente percorrerão vários roteadores e vários backbones, linhas dedicadas e outras redes até que encontrem seu destino, o computador com o endereço 5.6.7.8. Mas não seria bom se soubéssemos a rota exata que nossos pacotes estavam tomando pela Internet? Como se vê, há um caminho ...
Check It Out - O Programa Traceroute
Se você está usando o Microsoft Windows ou uma versão do Unix e tem uma conexão com a Internet, aqui está outro programa prático da Internet. Este é chamado de traceroute e mostra o caminho que seus pacotes estão levando para um determinado destino da Internet. Como o ping, você deve usar o traceroute em um prompt de comando. No Windows, use o tracert www.yahoo.com . Em um prompt do Unix, digite traceroute www.yahoo.com . Como o ping, você também pode inserir endereços IP em vez de nomes de domínio. O traceroute imprimirá uma lista de todos os roteadores, computadores e quaisquer outras entidades da Internet que seus pacotes devem percorrer para chegar ao seu destino.

Se você usar o traceroute, notará que seus pacotes devem percorrer muitas coisas para chegar ao destino. A maioria tem nomes longos como sjc2-core1-h2-0-0.atlas.digex.net e fddi0-0.br4.SJC.globalcenter.net. Estes são os roteadores da Internet que decidem para onde enviar seus pacotes. Vários roteadores são mostrados no Diagrama 3, mas apenas alguns. O diagrama 3 destina-se a mostrar uma estrutura de rede simples. A Internet é muito mais complexa.

Infraestrutura da Internet

O backbone da Internet é composto de muitas redes grandes que se interconectam umas com as outras.Essas grandes redes são conhecidas como provedores de serviços de rede ou NSPs . Alguns dos grandes NSPs são a UUNet, a CerfNet, a IBM, a BBN Planet, a SprintNet, a PSINet, entre outras. Essas redes se juntam para trocar tráfego de pacotes. Cada NSP é necessário para se conectar a três pontos de acesso de rede ou NAPs . Nos NAPs, o tráfego de pacotes pode saltar do backbone de um NSP para o backbone de outro NSP. Os PENs também se interconectam nas Bolsas Metropolitanas ou no MAEs.Os MAEs servem ao mesmo propósito que os NAPs, mas são de propriedade privada. Os NAPs eram os pontos originais de interconexão da Internet. Tanto os NAPs como os MAEs são referidos como Pontos de Troca de Internet ou IX s. Os NSPs também vendem largura de banda para redes menores, como ISPs e provedores menores de largura de banda. Abaixo está uma imagem mostrando essa infra-estrutura hierárquica.

Diagrama 4
Diagrama 4
Esta não é uma representação verdadeira de uma peça real da Internet. O Diagrama 4 destina-se apenas a demonstrar como os PENs podem se interconectar uns com os outros e com ISPs menores. Nenhum dos componentes da rede física é mostrado no Diagrama 4, como estão no Diagrama 3. Isso ocorre porque a infra-estrutura de backbone de um único NSP é um desenho complexo por si só. A maioria dos NSPs publica mapas de sua infraestrutura de rede em seus sites e pode ser encontrada facilmente.Desenhar um mapa real da Internet seria quase impossível devido ao seu tamanho, complexidade e estrutura em constante mudança.

A hierarquia de roteamento da Internet

Então, como os pacotes encontram o caminho pela Internet? Todo computador conectado à Internet sabe onde estão os outros computadores? Os pacotes simplesmente são "transmitidos" para todos os computadores da Internet? A resposta a ambas as perguntas anteriores é "não". Nenhum computador sabe onde estão os outros computadores e os pacotes não são enviados para todos os computadores.As informações usadas para obter pacotes para seus destinos estão contidas nas tabelas de roteamento mantidas por cada roteador conectado à Internet.
Roteadores são comutadores de pacotes. Um roteador é normalmente conectado entre redes para rotear pacotes entre eles. Cada roteador sabe sobre suas sub-redes e quais endereços IP eles usam. O roteador geralmente não sabe quais endereços IP estão 'acima' dele. Examine o Diagrama 5 abaixo. As caixas pretas que conectam os backbones são roteadores. Os backbones NSP maiores no topo estão conectados em um NAP. Sob eles estão várias sub-redes e, sob elas, mais sub-redes. Na parte inferior estão duas redes de área local com computadores conectados.
Diagrama 5
Diagrama 5
Quando um pacote chega a um roteador, o roteador examina o endereço IP colocado lá pela camada do protocolo IP no computador de origem. O roteador verifica sua tabela de roteamento. Se a rede que contém o endereço IP for encontrada, o pacote será enviado para essa rede. Se a rede que contém o endereço IP não for encontrada, o roteador envia o pacote em uma rota padrão, geralmente na hierarquia de backbone até o próximo roteador. Espero que o próximo roteador saiba para onde enviar o pacote. Se isso não acontecer, novamente o pacote é roteado para cima até atingir um backbone NSP. Os roteadores conectados aos backbones NSP possuem as maiores tabelas de roteamento e aqui o pacote será roteado para o backbone correto, onde começará sua jornada 'para baixo'

Nomes de domínio e resolução de endereços

Mas e se você não souber o endereço IP do computador ao qual deseja se conectar? E se você precisar acessar um servidor da Web chamado www.anothercomputer.com ? Como o seu navegador da Web sabe onde na Internet esse computador mora? A resposta a todas estas perguntas é o serviço de nomes de domínio ou DNS . O DNS é um banco de dados distribuído que monitora os nomes dos computadores e seus endereços IP correspondentes na Internet.
Muitos computadores conectados à Internet hospedam parte do banco de dados do DNS e o software que permite que outros o acessem. Esses computadores são conhecidos como servidores DNS. Nenhum servidor DNS contém o banco de dados inteiro; eles contêm apenas um subconjunto dele. Se um servidor DNS não contiver o nome de domínio solicitado por outro computador, o servidor DNS redirecionará o computador solicitante para outro servidor DNS.
Diagrama 6
Diagrama 6
O Serviço de Nomes de Domínio é estruturado como uma hierarquia semelhante à hierarquia de roteamento IP. O computador que solicita uma resolução de nomes será redirecionado para 'cima' da hierarquia até que um servidor DNS seja encontrado e possa resolver o nome do domínio na solicitação.A Figura 6 ilustra uma parte da hierarquia. No topo da árvore estão as raízes do domínio. Alguns dos domínios mais antigos e comuns são vistos próximos ao topo. O que não é mostrado é a multiplicidade de servidores DNS em todo o mundo que formam o resto da hierarquia.
Quando uma conexão com a Internet é configurada (por exemplo, para uma rede local ou dial-up no Windows), um primário e um ou mais servidores DNS secundários geralmente são especificados como parte da instalação. Dessa forma, qualquer aplicativo da Internet que precise de resolução de nome de domínio poderá funcionar corretamente. Por exemplo, quando você insere um endereço da Web em seu navegador da Web, o navegador primeiro se conecta ao seu servidor DNS primário. Depois de obter o endereço IP do nome de domínio digitado, o navegador conecta-se ao computador de destino e solicita a página da Web desejada.
Check It Out - Desativar DNS no Windows
Se você estiver usando o Windows 95 / NT e acessar a Internet, poderá ver seu (s) servidor (es) DNS e até mesmo desativá-los.Se você usar rede dial-up:
Abra a janela da rede dial-up (que pode ser encontrada no Windows Explorer em sua unidade de CD-ROM e acima de ambiente de rede). Clique com o botão direito na sua conexão com a Internet e clique em Propriedades. Perto da parte inferior da janela de propriedades da conexão, pressione o botão Configurações TCP / IP ....
Se você tiver uma conexão permanente com a Internet:
clique com o botão direito do mouse em Ambiente de Rede e clique em Propriedades. Clique em Propriedades de TCP / IP. Selecione a guia Configuração do DNS na parte superior.
Agora você deve estar olhando para os endereços IP de seus servidores DNS. Aqui você pode desativar o DNS ou configurar seus servidores DNS para 0.0.0.0. (Anote primeiro os endereços IP dos seus servidores DNS. Você provavelmente terá que reiniciar o Windows também.) Agora digite um endereço no seu navegador da web. O navegador não conseguirá resolver o nome do domínio e você provavelmente receberá uma caixa de diálogo desagradável explicando que um servidor DNS não pôde ser encontrado. No entanto, se você digitar o endereço IP correspondente em vez do nome de domínio, o navegador poderá recuperar a página da Web desejada. (Use o ping para obter o endereço IP antes de desabilitar o DNS.) Outros sistemas operacionais da Microsoft são semelhantes.

Protocolos da Internet Revisitados

Como sugerido anteriormente na seção sobre pilhas de protocolo, pode-se supor que existem muitos protocolos usados ​​na Internet. Isso é verdade; Existem muitos protocolos de comunicação necessários para que a Internet funcione. Estes incluem os protocolos TCP e IP, protocolos de roteamento, protocolos de controle de acesso médio, protocolos de nível de aplicativo, etc. As seções a seguir descrevem alguns dos protocolos mais importantes e comumente usados ​​na Internet. Protocolos de nível mais alto são discutidos primeiro, seguidos por protocolos de nível mais baixo.

Protocolos de Aplicação: HTTP e a World Wide Web

Um dos serviços mais usados ​​na Internet é a World Wide Web (WWW). O protocolo de aplicativo que faz o trabalho da Web é o Hypertext Transfer Protocol ou HTTP . Não confunda isso com o HTML (Hypertext Markup Language). HTML é a linguagem usada para escrever páginas da web. HTTP é o protocolo usado pelos navegadores da Web e pelos servidores da Web para se comunicarem pela Internet. É um protocolo em nível de aplicativo, pois fica na parte superior da camada TCP na pilha de protocolos e é usado por aplicativos específicos para se comunicarem entre si. Nesse caso, os aplicativos são navegadores da web e servidores da web.
HTTP é um protocolo baseado em texto sem conexão. Clientes (navegadores da Web) enviam solicitações a servidores da Web para elementos da Web, como páginas da Web e imagens. Depois que a solicitação é atendida por um servidor, a conexão entre o cliente e o servidor pela Internet é desconectada. Uma nova conexão deve ser feita para cada solicitação. A maioria dos protocolos é orientada para conexão. Isso significa que os dois computadores que se comunicam entre si mantêm a conexão aberta pela Internet. HTTP não no entanto. Antes que uma solicitação HTTP possa ser feita por um cliente, uma nova conexão deve ser feita ao servidor.
Quando você digita uma URL em um navegador da Web, é o que acontece:
  1. Se o URL contiver um nome de domínio, o navegador primeiro se conectará a um servidor de nomes de domínio e recuperará o endereço IP correspondente para o servidor da web.
  2. O navegador da Web se conecta ao servidor da Web e envia uma solicitação HTTP (por meio da pilha de protocolos) para a página da Web desejada.
  3. O servidor da web recebe a solicitação e verifica a página desejada. Se a página existir, o servidor da web a enviará. Se o servidor não conseguir encontrar a página solicitada, ele enviará uma mensagem de erro HTTP 404. (404 significa "Página não encontrada", como qualquer pessoa que já navegou na Web provavelmente sabe disso).
  4. O navegador da web recebe a página de volta e a conexão é fechada.
  5. O navegador então analisa a página e procura outros elementos de página necessários para concluir a página da web. Estes geralmente incluem imagens, applets, etc.
  6. Para cada elemento necessário, o navegador faz conexões adicionais e solicitações HTTP para o servidor para cada elemento.
  7. Quando o navegador terminar de carregar todas as imagens, applets, etc., a página será completamente carregada na janela do navegador.
Check It Out - Use seu cliente Telnet para recuperar uma página da Web usando HTTP
Telnet é um serviço de terminal remoto usado na Internet. Seu uso tem diminuído ultimamente, mas é uma ferramenta muito útil para estudar a Internet. No Windows, encontre o programa de telnet padrão. Pode estar localizado no diretório do Windows chamado telnet.exe. Quando aberto, abra o menu Terminal e selecione Preferências. Na janela de preferências, selecione Eco local. (Isso é para que você possa ver sua solicitação HTTP quando você digitá-la.) Agora, abra o menu Connection e selecione Remote System. Digite www.google.com para o nome do host e 80 para a porta. (Os servidores da Web geralmente escutam na porta 80 por padrão). Pressione Connect. Agora digiteGET / HTTP / 1.0
e pressione Enter duas vezes. Esta é uma solicitação HTTP simples para um servidor da Web para sua página raiz. Você deve ver uma página da Web e uma caixa de diálogo deve aparecer para informar que a conexão foi perdida. Se você quiser salvar a página recuperada, ative o registro no programa Telnet. Você pode então navegar pela página da web e ver o HTML que foi usado para escrevê-lo.

A maioria dos protocolos da Internet é especificada por documentos da Internet conhecidos comoRequest For Comments ou RFC s. RFCs podem ser encontrados em vários locais na Internet. Consulte a seção Recursos abaixo para obter as URLs apropriadas. HTTP versão 1.0 é especificada pelo RFC 1945.

Protocolos de Aplicação: SMTP e Correio Eletrônico

Outro serviço de Internet comumente usado é o correio eletrônico. E-mail usa um protocolo de nível de aplicativo chamado Simple Mail Transfer Protocol ou SMTP . O SMTP também é um protocolo baseado em texto, mas, ao contrário do HTTP, o SMTP é orientado para conexão. O SMTP também é mais complicado que o HTTP. Há muito mais comandos e considerações no SMTP do que no HTTP.
Quando você abre seu cliente de e-mail para ler seu e-mail, é o que normalmente acontece:
  1. O cliente de e-mail (Netscape Mail, Lotus Notes, Microsoft Outlook, etc.) abre uma conexão com seu servidor de e-mail padrão. O endereço IP ou o nome de domínio do servidor de correio é normalmente configurado quando o cliente de correio é instalado.
  2. O servidor de e-mail sempre transmitirá a primeira mensagem para se identificar.
  3. O cliente enviará um comando SMTP HELO para o qual o servidor responderá com uma mensagem 250 OK.
  4. Dependendo se o cliente está verificando e-mails, enviando e-mails, etc., os comandos SMTP apropriados serão enviados para o servidor, que responderá de acordo.
  5. Essa transação de solicitação / resposta continuará até que o cliente envie um comando SMTP QUIT. O servidor irá dizer adeus e a conexão será fechada.
Uma simples "conversa" entre um cliente SMTP e um servidor SMTP é mostrada abaixo. R: indica as mensagens enviadas pelo servidor (receptor) e S: indica as mensagens enviadas pelo cliente (remetente).
      Este exemplo de SMTP mostra as mensagens enviadas por Smith no host USC-ISIF, para
      Jones, Green e Brown no host BBN-UNIX. Aqui nós assumimos que
      hospedar contatos do USC-ISIF hospedam o BBN-UNIX diretamente. O email é
      aceito por Jones e Brown. Verde não tem uma caixa de correio em
      host BBN-UNIX.

      -------------------------------------------------- -----------

         R: 220 BBN-UNIX.ARPA Pronto para serviço de transferência de correio simples
         S: HELO USC-ISIF.ARPA
         R: 250 BBN-UNIX.ARPA

         S: MAIL FROM: <Smith@USC-ISIF.ARPA>
         R: 250 OK

         S: RCPT PARA: <Jones@BBN-UNIX.ARPA>
         R: 250 OK

         S: RCPT TO: <Green@BBN-UNIX.ARPA>
         R: 550 Nenhum tal usuário aqui

         S: RCPT PARA: <Brown@BBN-UNIX.ARPA>
         R: 250 OK

         S: DATA
         R: 354 Iniciar entrada de correio; terminar com <CRLF>. <CRLF>
         S: blá blá blá ...
         S: ... etc. etc etc.
         S:
         R: 250 OK

         S: QUIT
         R: 221 BBN-UNIX.ARPA Serviço fechando canal de transmissão
Essa transação SMTP é obtida da RFC 821, que especifica o SMTP.

protocolo de Controle de Transmissão

Sob a camada de aplicação na pilha de protocolos, está a camada TCP. Quando os aplicativos abrem uma conexão com outro computador na Internet, as mensagens que eles enviam (usando um protocolo específico da camada de aplicativo) são repassadas para a camada TCP. O TCP é responsável por rotear protocolos de aplicativo para o aplicativo correto no computador de destinoPara conseguir isso, os números de porta são usados. As portas podem ser consideradas canais separados em cada computador. Por exemplo, você pode navegar na web durante a leitura de e-mail. Isso ocorre porque esses dois aplicativos (o navegador da Web e o cliente de email) usavam números de porta diferentes.Quando um pacote chega a um computador e sobe a pilha de protocolos, a camada TCP decide qual aplicativo recebe o pacote com base em um número de porta.
O TCP funciona assim:
  • Quando a camada TCP recebe os dados de protocolo da camada de aplicação acima, ela os segmenta em 'pedaços' gerenciáveis ​​e, em seguida, adiciona um cabeçalho TCP com informações TCP específicas a cada 'bloco'. As informações contidas no cabeçalho TCP incluem o número da porta do aplicativo para o qual os dados precisam ser enviados.
  • Quando a camada TCP recebe um pacote da camada IP abaixo dela, a camada TCP retira os dados do cabeçalho TCP do pacote, realiza alguma reconstrução de dados, se necessário, e envia os dados para o aplicativo correto usando o número de porta obtido do TCP cabeçalho.
É assim que o TCP direciona os dados que se movem através da pilha de protocolos para o aplicativo correto.
O TCP não é um protocolo textual. O TCP é um serviço de fluxo de byte confiável e orientado à conexão . Orientação de conexão significa que dois aplicativos que usam TCP devem primeiro estabelecer uma conexão antes de trocar dados. O TCP é confiável porque, para cada pacote recebido, uma confirmação é enviada ao remetente para confirmar a entrega. O TCP também inclui uma soma de verificação no cabeçalho para verificação de erros dos dados recebidos. O cabeçalho TCP é assim:
Diagrama 7
Diagrama 7
Observe que não há lugar para um endereço IP no cabeçalho TCP. Isso ocorre porque o TCP não sabe nada sobre endereços IP. O trabalho do TCP é obter dados de nível de aplicativo de aplicativo para aplicativo de forma confiável. A tarefa de obter dados de um computador para outro é o trabalho do IP.
Check It Out - Números de porta da Internet bem conhecidos
Listados abaixo estão os números de porta para alguns dos serviços de Internet mais usados.
FTP20/21
Telnet23
SMTP25
HTTP80
Quake III Arena27960

protocolo de internet

Ao contrário do TCP, o IP é um protocolo não confiável e sem conexão . IP não se importa se um pacote chega ao seu destino ou não. Nem o IP sabe sobre conexões e números de porta. O trabalho do IP é também enviar e rotear pacotes para outros computadores . Os pacotes IP são entidades independentes e podem chegar fora de ordem ou não. É tarefa do TCP garantir que os pacotes cheguem e estejam na ordem correta. A única coisa que o IP tem em comum com o TCP é a maneira como ele recebe dados e adiciona suas próprias informações de cabeçalho IP aos dados TCP. O cabeçalho IP é assim:

Diagrama 8
Diagrama 8
Acima, vemos os endereços IP dos computadores de envio e recebimento no cabeçalho IP. Abaixo está a aparência de um pacote depois de passar pela camada de aplicativo, camada TCP e camada IP. Os dados da camada de aplicação são segmentados na camada TCP, o cabeçalho TCP é adicionado, o pacote continua na camada IP, o cabeçalho IP é adicionado e, em seguida, o pacote é transmitido pela Internet.

Diagrama 9
Diagrama 9

Embrulhar

Agora você sabe como a Internet funciona. Mas quanto tempo vai ficar assim? A versão do IP atualmente utilizada na Internet (versão 4) permite apenas 2 32 endereços. Eventualmente, não haverá mais endereços IP livres. Surpreso? Não se preocupe. A versão 6 do IP está sendo testada agora em um backbone de pesquisa por um consórcio de instituições de pesquisa e corporações. E depois disso? Quem sabe. A Internet já percorreu um longo caminho desde a sua criação como um projeto de pesquisa do Departamento de Defesa. Ninguém sabe realmente o que a Internet se tornará. Uma coisa é certa, no entanto. A Internet unirá o mundo como nenhum outro mecanismo jamais conseguiu. A Era da Informação está a todo vapor e eu estou feliz por fazer parte dela.

Recursos

Abaixo estão alguns links interessantes associados a alguns dos tópicos discutidos. (Espero que todos eles ainda funcionem. Todos abertos em nova janela.)
http://www.ietf.org/ é a home page do Internet Engineering Task Force. Este órgão é grandemente responsável pelo desenvolvimento de protocolos da Internet e afins.
http://www.internic.org/ é a organização responsável pela administração de nomes de domínio.
http://www.nexor.com/public/rfc/index/rfc.html é um excelente mecanismo de pesquisa de RFC útil para encontrar qualquer RFC.
http://www.internetweather.com/ mostra mapas animados da latência da Internet.
http://routes.clubnet.net/iw/ é Internet Weather do ClubNET. Esta página mostra a perda de pacotes para várias operadoras.
http://navigators.com/isp.html é a página do ISP de Russ Haynal. Este é um ótimo site com links para a maioria dos NSPs e seus mapas de infraestrutura de backbone.

Bibliografia

Os seguintes livros são excelentes recursos e ajudaram muito na redação deste artigo. Eu acredito que o livro de Stevens é a melhor referência TCP / IP de todos os tempos e pode ser considerado a bíblia da Internet. O livro de Sheldon abrange um escopo muito mais amplo e contém uma grande quantidade de informações de rede.
  • TCP / IP ilustrado, volume 1, os protocolos. 
    W. Richard Stevens. 
    Addison-Wesley, Reading, Massachusetts. 1994.
  • Enciclopédia de Redes. 
    Tom Sheldon. 
    Osbourne McGraw-Hill, Nova Iorque. 1998.
Embora não seja usado para escrever este artigo, aqui estão alguns outros bons livros sobre os tópicos da Internet e da rede:
  • Firewalls e Segurança na Internet; Repelindo o Hacker Wiley. 
    William R. Cheswick, Steven M. Bellovin. 
    Addison-Wesley, Reading, Massachusetts. 1994.
  • Comunicações de Dados, Redes de Computadores e Sistemas Abertos. Quarta edição. 
    Fred Halsall. 
    Addison-Wesley, Harlow, Inglaterra. 1996.
  • Telecomunicações: Protocolos e Design. 
    John D. Spragins com Joseph L. Hammond e Krzysztof Pawlikowski. 
    Addison-Wesley, Reading, Massachusetts. 1992.

Comentários

Ebook

Postagens mais visitadas