103
Curso TCP/IP Protocolo TCP/IP Wandreson Luiz Brandino wandreson.com [email protected]

protocolo_tcp_ip

Embed Size (px)

Citation preview

Page 1: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 1/103

Curso TCP/IP

Protocolo

TCP/IPWandreson Luiz Brandino

[email protected]

Page 2: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 2/103

Curso TCP/IP

1. Introdução ao TCP/IP

Protocolo aberto (Open System) paraInterconexão de diferentes tecnologiasde rede ± Linguagem Comum independente da

tecnologia de rede física utilizada

(Ethernet, Token Ring, FDDI, ATM, etc) ± Não precisa pagar Royaltes para construir uma aplicação sobre este protocolo

Page 3: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 3/103

Curso TCP/IP

1. Introdução ao TCP/IP (cont.)

Várias aplicações disponíveis ± Correio Eletrônico (SMTP)

 ± WWW (HTTP)

 ± Resolução de Nomes (DNS)

 ± Transferência de Arquivos (FTP)

 ± Terminal Remoto (Telnet) ± Gerenciamento (SNMP)

Page 4: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 4/103

Curso TCP/IP

1.1 Histórico

Surgiu em meados da década de 70,financiado pela DARPA dos EstadosUnidos ± Surgi num contexto de Guerra Fria com o

objetivo de interligar computadores de

forma simples e não centralizada ± O protocolo TCP/IP foi incluído no Unix deBerkley usado amplamente nos EstadosUnidos para facilitar sua disseminação

Page 5: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 5/103

Curso TCP/IP

1.1 Histórico (cont.)

 ± O protocolo TCP/IP e a rede Internet estãoaltamente relacionados

 ± Não existe nenhuma pessoa ou instituiçãoque controla a Internet existem organismostal como:

� IETF (Internet Engineering Task Force)

� IAB (Internet Activites Board)

 ± Toda documentação da Internet esta noformato de RFCs (Request For Comments)

Page 6: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 6/103

Curso TCP/IP

1.2 Documentação

Qualquer pessoa pode sugerir umaRFC ± A RFC fica no formato de rascunho

quando é sugerida. Caso seja aceita elarecebe um número e é publicada.

 ± As RFCs são sugeridas ao NIC (NetworkInformation Center)

Page 7: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 7/103

Curso TCP/IP

1.2 Documentação (cont.)

Locais de divulgação das RFCs ± www.ietf.org

 ± andrew2.andrews.cmu.edu/rfc/rfc1160.html� Este último exemplo traz a descrição da RFC

1160

Page 8: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 8/103

Curso TCP/IP

2. Endereço de Rede

O nível de Rede da Arquitetura TCP/IPé exatamente o protocolo IP (InternetProtocol)

 A funcionalidades básica do IP é a deRotear Pacotes dentro de uma mesma

rede ou entre redes diferentes Utiliza datagrama não-confiável

Page 9: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 9/103

Curso TCP/IP

2. Endereço de Rede (cont.)

Não faz controle de verificação deentrega do pacote. Ficando estaresponsabilidade para a camada denível de transporte (TCP e UDP)

Define o endereço universal da Internet

Page 10: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 10/103

Curso TCP/IP

2. Endereço de Rede (cont.)

Modelo OSI versus Arquitetura TCP/IP

Page 11: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 11/103

Curso TCP/IP

2.1 Endereço IP

Para duas máquinas se comunicarem,cada uma precisa de um endereço IP

O formato do endereço IP é:

X.X.X.X

onde X varia de 0 à 255. Exemplo:

200.241.16.8, 30.10.90.155, etc

Page 12: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 12/103

Curso TCP/IP

2.1 Endereço IP (cont.)

Representação Binária e Decimal

No Brasil, a responsabilidade de

distribuir endereços IP e de controlar osdomínios é da FAPESP

(www.fapesp.br)

Page 13: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 13/103

Curso TCP/IP

2.1 Endereço IP (cont.)

Os endereços IP são gratuitos

FAPESP distribui endereços Classe Cpara grandes empresas ou para osprovedores

Os provedores se responsabilizam em

distribuir os endereços para seusclientes ou através de Proxy

Endereços IP estão acabando

Page 14: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 14/103

Curso TCP/IP

2.2 Classes de Endereços

Os endereços IP foram divididos daseguinte forma:

De À Classe de Endereço0 126 A

128 191 B

192 223

224 239

240 247

Page 15: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 15/103

Curso TCP/IP

2.2 Classes de Endereços (cont.)

Divisão em classes e as sua respectivarepresentação binária

Page 16: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 16/103

Curso TCP/IP

2.2 Classes de Endereços (cont.)

Faixa de endereços decimais e binários

Classe Faixa de Endereços Representação Binária UtilizaçãoA 1-126.X.X.X 0nnnnnnn.hhhhhhhh.hhhhhhhh.hhhhhhhh

B 128-191.X.X.X 10nnnnnn.nnnnnnnn.hhhhhhhh.hhhhhhhh

192-223.X.X.X 110nnnnn.nnnnnnnn.nnnnnnnn.hhhhhhhh

224-239.X.X.X 1110xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx Multicast /

Broadcast

240-247.X.X.X 11110xxx.xxxxxxxx.xxxxxxxx.xxxxxxxx R eservado

X é um número que varia de 0 à 255N é o número de bits da rede

H é o número de bits do host

x é o número de bits da rede e do host

Page 17: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 17/103

Curso TCP/IP

2.2.1 Endereço de Loopback 

Todo endereço na forma 127.x.x.x é umendereço de Loopback 

Interface que não conecta a nenhumarede

Comunicação Inter-processos dentro da

mesma máquina (Não utiliza a rede) Endereço não é propagado pelos

roteadores

Page 18: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 18/103

Curso TCP/IP

2.2.2 Endereços IP reservados

Existem alguns endereços como o deLoopback  que são reservados para

redes que NUNCA se ligam à Internetou se ligam através de um Proxy

Estes endereços estão definidos na

RFC 1597 Gateways não permitem tr  áfegos

destes endereços na Internet

Page 19: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 19/103

Curso TCP/IP

2.2.2 Endereços IP reservados

(cont.) Os endereços reservados são:

Rede Máscara10.0.0.0 255.0.0.0

172.16.0.0 255.240.0.0

192.168.0.0 255.255.0.0

Page 20: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 20/103

Curso TCP/IP

2.3 Roteadores

Os Roteadores são usados parainterligar duas ou mais redes

O roteador possui pelo menos duasInterfaces de rede.

Cada Interface de rede possui umendereço IP

Page 21: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 21/103

Curso TCP/IP

2.3 Roteadores (cont.)

Exemplo de Interconexão de três redes:

 ± Token Ring 192.3.40.0 (classe C)

 ± Ethernet 146.134.0.0 (classe B)

 ± Ethernet 12.0.0.0 (classe A)

Page 22: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 22/103

Curso TCP/IP

2.3 Roteadores (cont.)

Configuração da Rede:

Page 23: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 23/103

Curso TCP/IP

2.3 Roteadores (cont.)

Na rede Ethernet (146.134.0.0) temosas máquinas: ± 146.134.8.2 ± 146.134.20.7

 ± 146.134.20.8 (Máquina A)

 ± 146.134.150.1 (Máquina B)

Figura

Page 24: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 24/103

Curso TCP/IP

2.3 Roteadores (cont.)

Na rede Ethernet (12.0.0.0) temos asmáquinas: ± 12.11.111.0 (Máquina B) ± 12.0.0.4

 ± 12.20.40.32 (Máquina C)

Figura

Page 25: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 25/103

Curso TCP/IP

2.3 Roteadores (cont.)

Na rede Token Ring (192.3.40.0) temosas máquinas: ± 192.3.40.1 ± 192.3.40.2

 ± 192.3.40.20 (Máquina C)

 ± 192.3.40.21 ± 192.3.40.22 (Máquina A)

Figura

Page 26: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 26/103

Curso TCP/IP

2.3 Roteadores (cont.)

 As máquinas A, B e C fazem papel deroteador. ± Máquina A entre a rede Token-Ring

(192.3.40.0) e a rede Ethernet(146.134.0.0)

 ± Má

quina B entre a rede Ethernet(146.134.0.0) e a rede Ethernet (12.0.0.0)

 ± Máquina C entre a rede Ethernet (12.0.0.0)e a rede Token-Ring (192.3.40.0)

Figura

Page 27: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 27/103

Curso TCP/IP

2.4 Sub-Rede

Objetivo: ± Dividir um endereço que seria para uma

única rede física em diversas redes físicasdistintas.

Page 28: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 28/103

Curso TCP/IP

2.4 Sub-Rede (Cont.)

Para todas a Internet existe o endereçode rede 128.10.0.0, só quando o pacote

chega ao Gateway que ele ir  á tomar adecisão para que sub-rede o pacotedeve ser encaminhado

 A divisão em Sub-Redes em muitoscaso aumenta a P erformance dosistema de comunicação

Page 29: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 29/103

Curso TCP/IP

2.4 Sub-Rede (Cont.)

Sem a divisão em sub-redes osendereços 128.10.2.0 e 128.10.1.0

seriam endereços de máquina (ClasseB). Como foi feito a divisão, estesendereços passaram a ser endereços

de rede

Page 30: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 30/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

Utilizamos o conceito de máscara paradefinirmos se um endereço IP é um

endereço de rede ou de máquina. O formato da máscara é o mesmo do

número IP. Exemplo:

 ± 255.255.255.0 (Decimal) ± 11111111 11111111 11111111 00000000 (Binár io)

Page 31: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 31/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) O 1 binário indica que é endereço de

rede.

No exemplo anterior os três primeirosoctetos estavam sendo utilizados pararede. Logo seria uma rede classe C,

sem sub-redes Quantidade de máquina 254 (256 - 2).

 ± Exclui o primeiro e o último endereço

Page 32: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 32/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Qual máscara usar nas classes A, B e

C?Classe Máscara Binária Máscara Decimal

A 11111111 00000000 00000000 00000000 255.0.0.0

B 11111111 11111111 00000000 00000000 255.255.0.0

C 11111111 11111111 11111111 00000000 255.255.255.0

Exemplo: ± Quantas sub-redes eu posso ter com oendereço IP classe C 200.241.16.X ?

Page 33: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 33/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Caso mais simples

 ± Máscara: 255.255.255.0Binário 11111111 11111111 11111111 00000000

Decimal 255 255 255 0

Endereços IP de:

200.241.16.0 à 200.241.16.255 Importante: Pelo padrão devemos

excluir a primeira e a última máquina.

Page 34: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 34/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Endereços válidos:

200.241.16.1 à 200.241.16.254

Obs: Alguns fabricantes permitem usar osendereços extremos. Mas esta fora dopadrão.

Page 35: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 35/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Divisão em duas sub-redes.

 ± Máscara: 255.255.255.128Binário 11111111 11111111 11111111 10000000

Decimal 255 255 255 128

Existem duas possíveis redes. A rede 0e a rede 1

Page 36: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 36/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Na rede 0 os endereços vão de:

200.241.16.0 à 200.241.16.127

Na rede 1 os endereços vão de:

200.241.16.128 à 200.241.16.255

Page 37: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 37/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Lembrando do padrão temos que

excluir os extremos. Portanto ficaríamos

com os endereços válidos: Na rede 0 os endereços vão de:

200.241.16.1 à 200.241.16.126

Na rede 1 os endereços vão de:200.241.16.129 à 200.241.16.254

Page 38: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 38/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Só que ainda pelo padrão não podem

existir sub-redes com todos os bits

iguais a 0 ou iguais a 1. Logo osextremos das sub-redes tambémprecisam ser excluidos.

 A máscara 255.255.255.128 NÃO podepossuir nenhuma máquina

Page 39: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 39/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Maiores informações sobre a norma

que proibe o uso destas mascaras

podem ser encontradas na RFC 1716, Almquist & Kastenholz, página.45

 Alguns sistemas operacionais como

Windows 95, NT, SCO Unix, Novellsimplesmente ignoram esta regra.

Page 40: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 40/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Divisão em quatro sub-redes.

 ± Máscara: 255.255.255.192Binário 11111111 11111111 11111111 11000000

Decimal 255 255 255 192

Existem quatro possíveis redes ± 00

 ± 01

 ± 10

 ± 11

Page 41: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 41/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Na rede 00 os endereços vão de:

200.241.16.0 à 200.241.16.63

Na rede 01 os endereços vão de:200.241.16.64 à 200.241.16.127

Na rede 10 os endereços vão de:

200.241.16.128 à 200.241.16.192 Na rede 11 os endereços vão de:

200.241.16.93 à 200.241.16.255

Page 42: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 42/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Excluindo os extremos temos:

Na rede 00 os endereços vão de:

200.241.16.1 à 200.241.16.62 Na rede 01 os endereços vão de:

200.241.16.65 à 200.241.16.126

Na rede 10 os endereços vão de:

200.241.16.129 à 200.241.16.191 Na rede 11 os endereços vão de:

200.241.16.194 à 200.241.16.254

Page 43: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 43/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Excluindo agora os endereços de rede

todos 0 e todos 1 temos:

Na rede 01 os endereços vão de:200.241.16.65 à 200.241.16.126

Na rede 10 os endereços vão de:

200.241.16.129 à 200.241.16.191

Page 44: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 44/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Generalizando (IP Classe C):

 ± O número de sub-redes é sempre múltiplo

de 2. ± Pega-se 256 e divide-se pelo número de

sub-redes

 ± Retira-se os extremos do endereço IP decada sub-rede

 ± Retira-se as sub-redes com todos os bits 0e todos os bits 1

Page 45: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 45/103

Curso TCP/IP

2.4.1 Máscara de uma Sub-rede

(cont.) Exercício

 ± Quais são os endereços IP válidos para 8

sub-redes? ± Faça uma tabela que relacione a

quantidade de sub-redes, a quantidade demáquinas por sub-rede e o total demáquinas.

Obs.: P ara um end ereço classe C 

Page 46: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 46/103

Curso TCP/IP

2.5 Formato do datagrama IP

O IP é a unid ad e bási ca d e d ad os donível de rede

Entrega de pacotes não-confiável ± Responsabilidade de entrega,

sequencialização, correção de erros, etc é

dos níveis superiores Existem duas áreas básicas: Área de

Cabeçalho e Área de Dados

Page 47: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 47/103

Curso TCP/IP

2.5 Formato do datagrama IP

Page 48: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 48/103

Curso TCP/IP

2.5 Formato do datagrama IP

Descrição dos campos ± VERS

� Versão

 ± HLEN� Comprimento do cabeçalho

 ± TOTAL LENGTH� Tamanho total do pacote. Se o pacote for fragmentado é o tamanho do fragmento e nãoo do pacote original

Page 49: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 49/103

Curso TCP/IP

2.5 Formato do datagrama IP

 ± SERVICE TYPE� Especifica como o datagrama ser á manipulado

pelo sistema de comunicação ± D - Baixo Delay

 ± T - Alto Throughput

 ± R - Alta Confiabilidade

 ± IDENTIFICATION� Campo utilizado quando da fragmentação de

pacotes

Page 50: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 50/103

Curso TCP/IP

2.5 Formato do datagrama IP

 ± FLAG� Controle de fragmentação. Específica se o

pacote pode ou não ser fragmentado e se for um fragmento, se ele é o primeiro osintermediários ou o último pacote

 ± TTL (Time to Live)

� Decrementado a cada gateway (roteador) ± PROTOCOL

� FTP, HTTP, SMTP, etc

Page 51: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 51/103

Curso TCP/IP

2.5 Formato do datagrama IP

 ± HEADER CHECKSUM� Somente para o cabeçalho. Não é para os

dados� Objetivo de garantir que o pacote vai ser entregue no endereço correto

 ± OPTIONS

� Diversas opções para um pacote ± PADDING

 ± DATA

Page 52: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 52/103

Curso TCP/IP

2.5.1 lgumas OPTIONS 

interessantes Record Route Option

 ± Gravar no pacote IP os endereços que o

pacote percorreu até chegar ao destino

Page 53: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 53/103

Curso TCP/IP

2.5.1 lgumas OPTIONS 

interessantes Source Route Option

 ± Permite que a origem indique por quais

g ateways o pacote dever á passar 

Page 54: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 54/103

Curso TCP/IP

2.5.1 lgumas OPTIONS 

interessantes TimeStamp Option

 ± Semelhante ao Record Route, só que

acrescenta também o tempo em que opacote chegou ao g ateway 

Page 55: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 55/103

Curso TCP/IP

3. Mapeamento de Endereço

Físico em endereço de rede Protocolo ARP (Address Resolution

Protocol)

 ± Mapear Endereços IP de uma mesma redeem endereços físicos

 ± Envia uma mensagem de broad cast ing 

para todas as estações perguntando quemtem aquele endereço IP

Page 56: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 56/103

Curso TCP/IP

3.1 RP

 ± Uma única máquina responde

 ± A máquina que fez a pergunta guarda o

endereço físico no cache para possíveluso posterior 

 ± Em máquinas UNIX o comando� arp -a traz a relação de todas os endereços IPs

da rede com seus respectivos endereçosfísicos

Page 57: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 57/103

Curso TCP/IP

3.1.1 Formato do Pacote RP

Page 58: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 58/103

Curso TCP/IP

3.1.1 Formato do Pacote RP

Descrição dos campos

Nome o am o escrição

Hardware Type Especifica a interface de hardware pela qual o usuário aguarda umaresposta. No caso da rede Ethernet o valor é 1.

 Protocol Type Especifica o tipo de endereço que o usuário está procurando (0800H se

for IP).

HLEN Tamanho do endereço de Hardware

PLEN Tamanho do endereço do protocolo de alto nível. s opções HLEN e

PLEN em conjunto permitem que o RP possa ser usado para uma rede

qualquer.Operation 1 - RP request (Requisição do endereço f  ísico)

2 - RP response (Resposta do endereço f ísico)

3 - R RP request (Requisição do endereço IP)

4 - R RP response (Resposta do endereço IP)

Page 59: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 59/103

Curso TCP/IP

3.2 Protocolo R RP

O RARP (Reverse Address ResolutionProtocol) associa um endereço físico

em um número IP Usado em estações di skless para obter 

um endereço IP no momento do boot 

remoto

Page 60: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 60/103

Curso TCP/IP

3.3 Fragmentação de pacotes IPs

em pacotes do nível f ísico Utilizado quando um pacote passa por 

redes com diferentes tamanhos de área

de dados (MTU) Dividir o tamanho do pacote IP num

tamanho do pacote daquela rede física

Page 61: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 61/103

Curso TCP/IP

3.3 Fragmentação de pacotes IPs

em pacotes do nível f ísico Pacotes dentro da mesma rede só

serão fragmentados se o tamanho do

pacote IP for maior do que o tamanhodo pacote físico da rede

Exemplo: Transmitir um pacote de 1400

bytes da rede 1 (MTU=1500) para arede 3 (MTU=1500) passando pela rede2 (MTU=620)

Page 62: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 62/103

Curso TCP/IP

3.3 Fragmentação de pacotes IPs

em pacotes do nível f ísico Pacote 1: 600 bytes de dados + 20

bytes de cabeçalho

Pacote 2: 600 bytes de dados + 20bytes de cabeçalho

Pacote 3: 200 bytes de dados + 20

bytes de cabeçalho

Page 63: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 63/103

Curso TCP/IP

3.3 Fragmentação de pacotes IPs

em pacotes do nível f ísico Fragmentação do pacote para posterior 

remontagem

Page 64: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 64/103

Curso TCP/IP

4. ICMP (Internet Control

Message Protocol) Objetivo: Informar à origem de

problemas na entrega do pacote IP:

 ± Falha nas linhas de comunicação ± Máquina destino desconectada da rede

 ± TTL (Time-to-Live) do pacote IP expirar 

 ± Gateway intermediários congestionadosentre outros

Page 65: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 65/103

Curso TCP/IP

4. ICMP

ICMP faz parte do protocolo IP, asinformações retornadas serão

analisadas por outros protocolos decamada superiores

 Algumas mensagens reportadas pelo

ICMP são:

Page 66: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 66/103

Curso TCP/IP

4. ICMP

Network Unreachable (rede não alcançável)

Host Unreachable (host não alcançável) Port Unreachable (port não alcançável)

Destination Host Unknown (Host destino desconhecido)

Destination Network Unknown (rede destino desconhecida)

Echo Request e Echo Reply (Solicitação de Eco e Resposta de

Eco) Time Exceded for Datagram ± TTL (Tempo do pacote excedido)

Entre outros

Possíveis mensagens do ICMP

Page 67: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 67/103

Curso TCP/IP

4.1 Entrega de mensagens ICMP

Encapsulamento do ICMP

Page 68: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 68/103

Curso TCP/IP

4.2 Tipos de Mensagens ICMP

Possíveis valores para o campo TYPE

Page 69: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 69/103

Curso TCP/IP

4.2.1 Echo Request e Echo Reply

Usado para identificar se uma máquinaesta respondendo ou não.

É implementado pelo programa PING Formato da mensagem:

Page 70: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 70/103

Curso TCP/IP

4.2.1 Echo Request e Echo Reply

Campo DescriçãoTY =8 cho R equest (R equisição de resposta)

TY =0 Echo R eply (R esposta à solicitação anterior)

IDENTIFIER e EQUENCE  NUMBER São usados para identi icar qual mensagem

oi enviada e qual esta sendo recebida

TI NA DATA Campo opcional, que dependendo daimplementação pode retornar dados ao

remetente, como por exemplo o tempo gasto para se alcançar a máquina.

Descrição dos campos:

Page 71: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 71/103

Curso TCP/IP

4.2.2 Unreacheble Destination

Identifica que não esta conseguindoacessar o IP da máquina destino. O

cabeçalho padrão é:

Page 72: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 72/103

Curso TCP/IP

4.2.2 Unreacheble Destination

Os possíveis valores para o campoCODE são:

Page 73: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 73/103

Curso TCP/IP

4.2.3 Controle de Fluxo e

Congestionamento Usado para informar a origem para par 

de enviar pacotes que os roteadores

não estão suportando o tr áfego. Amensagem padrão é:

Page 74: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 74/103

Curso TCP/IP

4.2.4 Route Change Request

Caso a rota não esteja minimizada estamensagem ser á enviada

Não ser á tomada nenhuma providencia,os protocolos de roteamento que farãoisto. Formato da mensagem é:

Page 75: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 75/103

Curso TCP/IP

4.2.4 Route Change Request

Exemplo: ± Suponha que H queira enviar dado para a

Rede 1, mas esteja enviando uma

mensagem G2

Page 76: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 76/103

Curso TCP/IP

4.2.4 Route Change Request

Exemplo (continuação) ± G2 envia uma mensagem de Route

Chang e Request para H1 ± Um protocolo de nível superior pega essa

mensagem e toma a providencia de enviar por G1

 ± G1 recebe a mensagem e entrega à rede 1

Page 77: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 77/103

Curso TCP/IP

4.2.5 Detecta rota circular ou

excessivamente longa Esta mensagem é enviada quando o

campo TTL (time-to-live) do IP é zerado

Lembre-se que o campo TTL édecrementado por cada roteador que opacote IP passar 

Page 78: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 78/103

Curso TCP/IP

4.2.5 Detecta rota circular ou

excessivamente longa Formato do pacote

Se CODE = 0, TTL zerou Se CODE = 1, remontagem de fragmentos excedeu

tempo máximo

Page 79: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 79/103

Curso TCP/IP

4.2.6 Reporta outros problemas

Reporta outros problemas, tipo erro nocabeçalho IP

Formato da mensagem:

Page 80: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 80/103

Curso TCP/IP

4.2.7 Sincronização de relógio e

estimativa de tempo de trânsito Usa a mensagem ICMP REQUEST

TIMESTAMP para recuperar a hora do

dia da máquina destino (contado emmilisegundos a partir da meia-noite dodia corrente)

 A mensagem ICMP REQUESTTIMESTAMP traz a resposta

Page 81: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 81/103

Curso TCP/IP

4.2.7 Sincronização de relógio e

estimativa de tempo de trânsito Campo TYPE=13, significa request

Campo TYPE=14, significa reply

Formato da mensagem:

Page 82: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 82/103

Curso TCP/IP

5. Camada de Transporte

Transferir um dado ³fim-a-fim´ entreduas máquinas

Independente da estrutura física decomunicação

Existem dois protocolos básicos

 ± TCP (Transfer Control Protocol) ± UDP (User Datagram Protocol)

Page 83: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 83/103

Curso TCP/IP

5. Camada de Transporte

Protocolos de Transporte da ArquiteturaTCP/IP

Page 84: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 84/103

Curso TCP/IP

5. Camada de Transporte

Diferença básica entre o TCP e o UDP ± TCP garante que o dado vai chegar ao seu

destino corretamente

 ± UDP não tem garantia de entrega dedados

 ± O TCP possui diversos controles para

garantir que o dado ir á

chegar corretamente ao destino. Por isso é maislento que o UDP

Page 85: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 85/103

Curso TCP/IP

5.1 plicações Cliente-Servidor 

Possui duas entidades básicas ± Servidor 

� Responsável por prover informações a um ouvários clientes

� Processar as mensagens enviadas pelo cliente

 ± Cliente

� Acessar informações contidas em um ou maisservidores

� Envia pequenas mensagens ao servidor 

Page 86: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 86/103

Curso TCP/IP

5.1 plicações Cliente-Servidor 

Toda aplicação possui a sua versãoserver e a sua versão client

 ± Ex:� Telnet Server e Telnet Client

� HTTP Server ou Web Server e HTTP Client(Browsers como Netscape ou Internet Explorer)

� FTP Server e FTP Client� etc

Page 87: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 87/103

Curso TCP/IP

5.1.1 O conceito de Porta

Somente os campos IP origem e IPdestino não são suficientes para

identificar uma conexão É preciso identificar a porta de origem e

a porta de destino, bem como qual

protocolo esta sendo utilizado (TCP ouUDP)

Page 88: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 88/103

Curso TCP/IP

5.1.1 O conceito de Porta

Formato do Pacote TCP

5 1 2 U ili d i

Page 89: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 89/103

Curso TCP/IP

5.1.2 Utilizando a rquitetura

Client-Server  Primeiramente é preciso instalar um

determinado serviço em um servidor.

Exemplo: ± O servidor de HTTP (Web Server) do

Universo Online - www.uol.com.br 

(200.241.5.65) é configurado para a porta80 (d efault para este serviço)

5 1 2 U ili d i

Page 90: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 90/103

Curso TCP/IP

5.1.2 Utilizando a rquitetura

Client-Server  Após o serviço instalado um

determinado Cliente pode acessar o

serviço. Ex: ± O usuário da máquina 200.241.16.8 deseja

acessar a página do universo online

 ± Neste momento o sistema operacional lheda uma porta escolhida randomicamentepara fazer a conexão TCP

5 1 2 U ili d i

Page 91: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 91/103

Curso TCP/IP

5.1.2 Utilizando a rquitetura

Client-Server  Teremos portanto:

 ± IP Origem: 200.241.16.8 (Máquina Local)

 ± Porta Origem: 3478 (SO fornece)

 ± IP Destino: 200.246.4.65 (Máquina Remota

 ± Porta Destino: 80 (Porta Default do serviço

de WWW, pode ser alterada)

5 1 2 U ili d i

Page 92: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 92/103

Curso TCP/IP

5.1.2 Utilizando a rquitetura

Client-Server  Suponha que abramos uma outra janela

do Browser , teremos então: ± IP Origem: 200.241.16.8 (Máquina Local)

 ± Porta Origem: 4312 (SO fornece outra)

 ± IP Destino: 200.246.4.65 (Máquina Remota

 ± Porta Destino: 80 (Porta Default do serviçode WWW, pode ser alterada)

5 1 2 Utili d it t

Page 93: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 93/103

Curso TCP/IP

5.1.2 Utilizando a rquitetura

Client-Server  Suponha que outra pessoa esteja

acessando a mesma página: ± IP Origem: 200.30.20.83 (Máquina Local) ± Porta Origem: 4312 (SO fornece pode ser 

igual a de outra máquina)

 ± IP Destino: 200.246.4.65 (Máq. Remota) ± Porta Destino: 80 (Porta Default  WWW)

Page 94: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 94/103

Curso TCP/IP

5.2 O Protocolo TCP

Protocolo Orientado à Conexão

Confiável do ponto de vista de entrega

dos dados ao destino sem erros Processos de transmissão,

retransmissão, controle de fluxo e erros,

etc são totalmente transparentes aousuário desta camada

Page 95: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 95/103

Curso TCP/IP

5.2 O Protocolo TCP

São responsabilidades da camada detransporte:

 ± Estabelecimento e Liberação da Conexão ± Transferência de Dados

 ± Transferência de Dados Urgentes

 ± Multiplexação� Diversas conexões de transporte em umaúnica conexão de rede

Page 96: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 96/103

Curso TCP/IP

5.2 O Protocolo TCP

 ± Segmentação� Área de dados do IP é menor que a área de

dados do TCP

 ± Controle de Fluxo� Janela Deslizante

 ± Controle de Erros

� CheckSum

Page 97: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 97/103

Curso TCP/IP

5.2.1 Formato do pacote TCP

Page 98: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 98/103

Curso TCP/IP

5.2.1 Formato do pacote TCP

Descrição de alguns campos ± CODE BITS

� Determina o propósito e conteúdo do segmento

Opção SignificadoURG Campo de ponteiro Urgente é válido

ACK Campo de R econhecimento é válido

SH Este segmento solicita um Push

RSTResetar 

a conexãoSY N Sincroniza números de Sequências

FI N O transmissor chega ao im do luxo de bytes

Page 99: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 99/103

Curso TCP/IP

5.2.1 Formato do pacote TCP

Descrição de alguns campos ± WINDOW

� Indica quantos bytes ele tem capacidade dereceber 

 ± URGENT POINTER� Indica que alguns dados serão entregues de

forma urgente. Repassa ao IP ± PADDING

� Parâmetros do campo OPTION

5 2 2 P t b h id d

Page 100: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 100/103

Curso TCP/IP

5.2.2 Portas bem conhecidas do

TCP

Page 101: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 101/103

Curso TCP/IP

5.3 O Protocolo UDP

Utiliza o mesmo princípio de portas doTCP

Muito mais leve que o TCP Não garante entrega dos dados,

sequencialização, fluxo de mensagens,

etc Você simplesmente envia um dado e

reza para que ele chegue do outro lado

Page 102: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 102/103

Curso TCP/IP

5.3.1 Formato do pacote UDP

5 3 2 Portas bem conhecidas do

Page 103: protocolo_tcp_ip

8/6/2019 protocolo_tcp_ip

http://slidepdf.com/reader/full/protocolotcpip 103/103

5.3.2 Portas bem conhecidas do

UDP