Entendendo o TCP/IP

Vejo muita gente configurando redes, firewall e proxy, e nem ao menos sabem o que são endereços inválidos, pra que serve a máscara de sub-rede, o que é um broadcast. Enfim, por isso resolvi escrever uma série de artigos visando mostrar o básico do tcp/ip, desde a camada física, endereços mac, arp, passando por ip, cálculo da máscara, até chegar em regras de firewall, nat e proxy.

[ Hits: 109.298 ]

Por: Ricardo Lino Olonca em 19/03/2007


O que é um protocolo?



Imaginem que você viaja pelo mundo. Se for para a Inglaterra, você precisa saber falar inglês. Se for para a Alemanha, precisa saber falar alemão. Se for pra Rússia, precisa falar russo. Pro Japão, japonês. Se você viajar o mundo tudo, deverá saber todas as línguas? É lógico que não. Basta saber o inglês. Essa língua é conhecida com a língua universal. Em qualquer lugar do mundo se fala o inglês. Sabendo inglês você está tranqüilo.

Agora imagine a infinidade de computadores espalhados pela Internet. Diversos fabricantes, várias plataformas, muitos sistemas operacionais diferentes, enfim, uma infinidade de características diferentes. Como fazer com que essas máquinas conversem entre si?

A analogia acima é bem parecida com a Internet. Com tantas máquinas diferentes era preciso que houvesse uma língua universal para que elas pudessem conversar. A essa língua damos o nome de protocolo. Logo, todos os micros devem "saber falar" o mesmo protocolo, ou seja, todos devem possuir o mesmo protocolo.

Há vários protocolos, como o netbeui (usados a princípio pelo Windows 3.11 e Windows 9x), o ipx/spx (rede Novell) e o TCP/IP. O uso do TCP/IP como protocolo padrão se deve ao fato dele ser Open Source, além de, claro, ser rápido e estável.

Mas para que cada fabricante pudesse desenvolver o seu próprio protocolo, foi necessário criar um modelo que deveria ser seguido. Esse modelo ficou conhecido como Modelo OSI.

    Próxima página

Páginas do artigo
   1. O que é um protocolo?
   2. As sete camadas OSI
   3. As quatro camadas do tcp/ip
   4. Camada Física - Como ela funciona
   5. Diferenças entre Hub e Switch
Outros artigos deste autor

Deduplicação com LessFS

Entendendo TCP/IP (parte 4) - DHCP

Entendendo TCP/IP (Parte 6) - Firewall

Problemas encontrados na adoção do IPv6

Entendendo TCP/IP (parte 2) - Endereços IP

Leitura recomendada

Criando pacotes no Slackware Linux

Configurando o Modem HSP56 Micromodem no Linux

ZRAM (Compressed RAM) no Debian

Arch Linux - Instalação a partir de imagem híbrida

Ubuntu Multimídia com Studio

  
Comentários
[1] Comentário enviado por forkd em 19/03/2007 - 12:15h

Olá, Ricardo!
Primeiramente parabéns pela iniciativa de escrever um artigo para a comunidade. Achei muito interessantes as analogias que você usou para explicar o funcionamento do modelo OSI e a definição de protocolo. Acho que só faltou exemplificar PORQUE a camada 4 (Transporte) e suas superiores são camadas fim a fim ("conversam" diretamente com suas camadas pares do outro lado).
Bom, na seção 3, onde você fala das camadas do modelo TCP/IP, foi colocado Serviço como a camada 3 desse modelo. Contudo, o que vemos nas bibliograficas mais usadas é esta camada ser descrita como TRANSPORTE. Isso pode levar confusão à cabeça de leitores que são iniciantes no assunto.
Outra coisa: faltou uma referência bibliografica. Onde o leitor pode procurar se quiser se aprofundar no modelo OSI, por exemplo?

Só pra citar algumas:

http://pt.wikipedia.org/wiki/TCPIP -> Página da Wikipédia que fala sobre o modelo TCP/IP.

http://pt.wikipedia.org/wiki/Modelo_OSI -> Página da Wikipédia que fala sobre o modelo OSI.

ftp://ftp.rfc-editor.org/in-notes/rfc791.txt -> O RFC original (791) que descreve o funcionamento do protocolo IP, datado de setembro de 1981.

ftp://ftp.rfc-editor.org/in-notes/rfc793.txt - > O RFC original (793) que descreve o funcionamento do protocolo TCP, datado de setembro de 1981 também.

Já que pretende fazer uma série de artigos, seria interessante rever estes conceitos.

Atenciosamente, junim.

[2] Comentário enviado por agofearth em 19/03/2007 - 12:57h

Jah estou aguardando os novos artigos :)

[3] Comentário enviado por thiagosc em 19/03/2007 - 15:08h

Parabéns pelo artigo ficou muito legal mesmo... e continue neste caminho!!!

[4] Comentário enviado por brejao em 19/03/2007 - 15:25h

blz de artigo, valew.

[5] Comentário enviado por paranoid em 19/03/2007 - 15:53h

Primeiramente gostaria de parabenizar o artigo que apresenta bons exemplos para abstração. Só queria, assim como nosso amigo junior, citar algumas coisas que estão diferentes quando comparadas a algumas pesquisas que fiz sobre o assunto e que são tratadas de uma mesma forma por vários autores. A primeira é a de que, no protocolo TCP/IP, a segunda camada é conhecida como a de ENLACE e a terceira é que é a camada de REDE, e como nosso amigo citou acima a quarta camada seria a de transporte, ficando da seguinte maneira: FÍSICA>ENLACE>REDE>TRASNPORTE. A segunda coisa q gostaria de citar é que o switch funciona na camada de enlace e não na de rede. O que funciona na camada de rede são os roteadores quanto ao hub é isso mesmo, funciona na camada física. E por último, não se pode diferenciar um switch de um hub apenas pela forma como as luzes piscam, na empresa onde trabalho, por exemplo, tem alguns modelos de switch's da 3COM que piscam todas as luzes. Mas é isso aí, não desanime, o assunto é bem denso mesmo. Estamos aguardando o próximo artigo.

[6] Comentário enviado por streetlinux em 19/03/2007 - 15:54h

Bom artigo. Bem simples e facil de entender. Parabéns.

Street`

[7] Comentário enviado por tatototino em 19/03/2007 - 16:11h

Você poderia dar umas dicas de segurança como "tabela arp estática" com a opção "arp -d arquivo" para evitar envenamento da tabela ou recomendar o uso do programa "arpwatch".
ahhh, poderia também usar algum snifer para exemplicar melhor como funciona o protocolo arp, seria de mais fácil entendimento para usuários leigos relatar como funciona a troca de pacotes do protocolo arp.

mas está "zero bala" o artigo, parabéns

[8] Comentário enviado por y2h4ck em 19/03/2007 - 20:04h

Não sei porque deram conceito 7 se o cara colocou no artigo tudo que ele propoz colocar...

[9] Comentário enviado por ricardoolonca em 19/03/2007 - 22:33h

Caro, jlojunior.

Obrigado pelas dicas. Realmente a camada 3 também é chamada de Transporte, mas alguns costumam chamar de Serviço, por causa dos "serviços" que rodam nela (http, smtp, pop3, etc.). Assim fica mais fácil de entender o que roda nesta camada. Quanto à bibliografia, realmente foi um vassilo meu. Prometo informá-los nos próximos artigos, como também links para maiores informações.

Caro paranoid

A ordem das camadas que você citou é da camada OSI, e eu estou falando das camadas TCP. O modelo OSI divide o protocolo em 7 camadas, mas o TCP, na prática, é divido em 4. a saber: Física, Rede, Serviço (ou Transporte) e Aplicação. O switch trabalha na camada de enlace da OSI, mas na física TCP. Quanto ao forma de verificar se um dispositivo é Hub ou Switch, é a primeira vêz que vejo um switch piscar as luzes juntas, principalmente 3Com, pois trabalho com 3Com há 10 anos. Mas pode ser que esse modelo seja diferente, ou que o teu aparelho tenha sido vendido como switch, mas internamente é um hub. Mas obrigado pelo comentário.

Aos demais, obrigado pelos comentários. Vou buscar seguir a dica do Tatototino.

[10] Comentário enviado por forkd em 19/03/2007 - 22:49h

Fala Ricardo!
Fico feliz que tenha assimilado as críticas construtivas! Só pra ser um pouco chato, sobre o comentário que você postou, os serviços citados por você (http, smtp, pop3) NÃO fazem parte da camada de Transporte, mas sim da camada de APLICAÇÃO. Da camada de Transporte seriam exemplos: TCP, UDP, DCCP e SCTP.

Fonte: http://pt.wikipedia.org/wiki/Camada_de_transporte

Forte abraço, brother!

[11] Comentário enviado por gsi.vinicius em 20/03/2007 - 10:15h

Rapaz, ótimo artigo.....só pecou um pouco pelo português...levanta vôo e não vou...outras cartas...enfim, coisas básicas, mas que o moderador em questão também observou e deixou como está.

O conteúdo está ótimo. Os erros não diminuem o valor do conteúdo, mas um texto bem escrito torna a leitura mais agradável e dinâmica.

Continue assim,

Abraço - Gregório

[12] Comentário enviado por fernandoamador em 08/04/2007 - 23:59h

Ótimo artgo...

[13] Comentário enviado por elgio em 20/07/2007 - 16:58h

Já se passou algum tempo, mas vá lá... Vou também entrar um pouco nesta polêmica de camadas...

A literatura (todos os livros de redes que conheço) prega o modelo TCP/IP com quatro camadas. Os nomes variam um pouco, até pelas questões de traduções, pois uma das camadas é chamada no ingles de Inter-Net (entre redes, nitidamente a que faz roteamento).

Contudo há unanimidade no sentido de que a camada física não faz parte do modelo TCP/IP, pois este modelo se refere ao que é programado pelo SO (kernel, no caso do Linux) e o nível físico trata apenas de forma de onda e só diz respeito ao fabricante da placa.

Assim sendo, as camadas e nomes mais citadas em literaturas modernas são:

Aplicação
Transporte
Rede (ou Internet)
Enlace

No Enlace temos os MAC Address e um switch realmente trabalha nesta camada. Na rede temos o roteamento IP, onde tem-se o Ipv4 e agora o Ipv6. Na de transporte os protocolos UDP e TCP (existe uma pequena divergência sobre onde estaria o ICMP, já que ele não transporta dados mas está sob o Ip). A de aplicação é a de aplicação mesmo.

Outra coisa: é complicado querer relacionar taco a taco OSI com TCP/IP. Algumas funções da OSI (apresentação, por exemplo) nem existem na TCP. Eu, por exemplo, na disciplina de Redes que ministro NEM desenvolvo o modelo OSI. Cito e descarto!

[14] Comentário enviado por danilobs em 02/04/2011 - 14:52h

Muito bom o artigo: simples e objetivo. Continue escrevendo...

Um abraço!

[15] Comentário enviado por julio_hoffimann em 08/04/2011 - 13:34h

Oi Ricardo, parabéns!

Muito bom o artigo, a analogia ajudou bastante o entendimento. Obrigado por compartilhar esses conceitos de forma clara.

Grande abraço!

[16] Comentário enviado por AyrtonGomes em 11/03/2012 - 21:11h

Li esse seu artigo de redes até o final, a parte 5, e achei muito bom, continue escrevendo artigos ótimos como este pois ajuda muito quem esta aprendendo, muito obrigado mesmo, nota 10.

[17] Comentário enviado por removido em 15/07/2016 - 15:45h

Muito bom.

[18] Comentário enviado por espanholeto em 17/10/2016 - 11:35h

Parabéns pela iniciativa Ricardo. Ainda hoje é muito difícil encontrar material técnico com linguagem acessível e didática!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts