Professional Documents
Culture Documents
TCP/IP Parte 1
Objetivo: Fazer uma anlise de baixo pra cima (bottom-up) esclarecendo a independncia das camadas fsicas, rede, transporte e aplicao. Usaremos uma conversa telefnica como exemplo. Faremos as analogias entre as partes da conversa telefnica e o TCP/IP. Ao final da leitura. voc entender o bsico do protocolo tcp/ip e conhecer os comandos bsicos de rede do Linux. Comeamos analisando o dia-a-dia. O que comunicao? Se entende por comunicao como o intercmbio de informao entre sujeitos ou objetos. E o que precisamos para que a troca de informaes, ou seja, a comunicao funcione? necessrio que haja um entendimento entre quem est enviando a informao e quem est recebendo. Por exemplo, que ambos falem a mesma lngua. E o que seriam meios de comunicao? Refere-se ao instrumento ou forma de contedo utilizados para a realizao do processo de comunicao. Por exemplo: * Sonoro: telefone, rdio. * Escrita: jornais, dirios e revistas. * Audiovisual: televiso, cinema. Mas agora falando de computadores, como eles se comunicam? Em primeiro lugar, para que haja comunicao entre os computadores, assim como entre as pessoas, eles tm que estar ligados uns aos outros por algum meio fsico. Por exemplo: * Cabos de cobre * Fibra ptica * Rdio (rede sem fio) Quando falamos com algum diante de ns, nossa voz que a informao trafega at a outra pessoa usando o ar. Quando um computador fala com o outro ele vai utilizar um protocolo pra que a comunicao funcione. O que seria um protocolo? Protocolo uma conveno ou padro que controla e possibilita uma conexo, comunicao ou 1
Convertendo um nmero decimal para binrio: Exemplo: Nmero decimal: 192 Para converter esse nmero basta dividi-lo por 2 e pegando o seu resto, veja como: 192 / 2 = 96 Resto = 0 96 / 2 = 48 Resto = 0 48 / 2 = 24 Resto = 0 24 / 2 = 12 Resto = 0 12 / 2 = 6 Resto = 0 3
Rode esse comando em sua mquina. $ ping -c 4 localhost PING localhost (127.0.0.1) 56(84) bytes of data. 64 bytes from localhost (127.0.0.1): icmp_seq=1 64 bytes from localhost (127.0.0.1): icmp_seq=2 64 bytes from localhost (127.0.0.1): icmp_seq=3 64 bytes from localhost (127.0.0.1): icmp_seq=4
ms ms ms ms 4
Genmask Flags Metric Ref Use Iface 255.255.255.0 U 0 0 0 eth0 0.0.0.0 UG 0 0 0 eth0 6
Orientado conexo - A aplicao envia um pedido de conexo para o destino e usa a "conexo" para transferir dados; Ponto a ponto - uma conexo TCP estabelecida entre dois pontos; Confiabilidade - O TCP usa vrias tcnicas para proporcionar uma entrega confivel dos pacotes de dados, que a grande vantagem que tem em relao ao UDP, e motivo do seu uso extensivo nas redes de computadores. O TCP permite a recuperao de pacotes perdidos, a eliminao de pacotes duplicados, a recuperao de dados corrompidos, e pode recuperar a ligao em caso de problemas no sistema e na rede; Handshake - Mecanismo de estabelecimento e finalizao de conexo a trs e quatro tempos, respectivamente, o que permite a autenticao e encerramento de uma sesso completa. O TCP garante que, no final da conexo, todos os pacotes foram bem recebidos; Entrega ordenada - A aplicao faz a entrega ao TCP de blocos de dados com um tamanho arbitrrio num fluxo (ou stream) de dados, tipicamente em octetos. O TCP parte estes dados em segmentos de tamanho especificado pelo valor MTU. Porm, a circulao dos pacotes ao longo da rede (utilizando um protocolo de encaminhamento, na camada inferior, como o IP) pode fazer com que os pacotes no cheguem ordenados. O TCP garante a reconstruo do stream no destinatrio mediante os nmeros de sequncia.
No TCP, os dados so transmitidos atravs de conexes. Esquema de uma comunicao entre um cliente e um servidor: Cliente: Envia um SYN para solicitar a abertura da conexo; Servidor: Envia um SYN para confirmar o recebimento e avisar que a porta est disponvel; Servidor: Envia um ACK para iniciar a conexo; 7