Professional Documents
Culture Documents
Protocolo IP
A tnica dos protocolos TCP/IP era compor um conjunto que viabilizasse uma rede que fosse robusta e automaticamente se recuperasse de falhas em ns ou links Protocolo usado na Internet para unir todos os tipos heterogneos de redes que a compem Esta opo permite a construo de redes de grande porte com pouco gerenciamento centralizado - interconexo Pacotes e datagramas possuem o mesmo sentido no mbito do IP. uma rede best-effort (melhor esforo): podem ocorrer atrasos, pacotes fora de ordem, danificao e perda de pacotes. Camadas de protocolos superiores devem tratar destes problemas
Protocolo IP
Os roteadores encaminham pacotes da origem ao destino dentro da rede toda (global) e no s dentro da tecnologia de rede Entrega de pacotes de tamanhos variados de um host para outro, mesmo se estiverem em redes diferentes Realiza fragmentao e remontagem, define formato dos pacotes e algoritmos de encaminhamento de pacotes Existe uma tendncia a se rodar tudo sobre IP IMPs numa rede IP so roteadores e operam em modo datagrama (sem conexo)
Rede 1 MTU=1500
Rede 2 MTU=1000
Protocolo IP
Prev um esquema de endereamento hierrquico Executa procedimentos de fragmentao e remontagem Define um algoritmo de encaminhamento de pacotes uma rede best-effort (melhor esforo): podem ocorrer atrasos, pacotes fora de ordem, danificao e perda de pacotes. Camadas de protocolos devem tratar destes problemas Cabe ao protocolo IP definir um nvel de encaminhamento rpido e flexvel de pacotes
Arquitetura TCP/IP
Exemplo Rede IP
Camadas Envolvidas
Endereos IP
nicos para toda a rede Se uma mquina muda de rede dentro da rede TCP/IP, normalmente ela deve alterar seu endereo IP Mquinas com vrias interfaces de rede deve ter um endereo IP para cada interface
Tipos de Endereos IP
Aspectos de Endereos IP
Endereos normalmente reservados
Endereos da rede em questo Endereos com os bits da parte HOST iguais a zero Endereos de broadcast na rede em questo Endereos com os bits da parte HOST iguais a um
Nem todos os endereos possveis foram atribudos a classes Endereos classe A 127.*.*.* so chamados de loopback e so reservados para: Teste de aspectos do TCP/IP Comunicao inter-processo na mesma mquina Pacotes com endereos de loopback como os acima no devem ser encontrados numa rede
Endereos IP reservados
Utilizados para fins especiais
Subredes
Endereamento baseado em classes no eficiente por que grande a demanda de endereos de rede classe B Pode-se utilizar sub-divises das classes B e C para organizar subredes dentro de uma regio de rede atendida pelo endereamento B ou C Cria um segundo nvel de hierarquia de forma que uma mscara de subrede indique que parte dos bits do endereo representam a subrede
Subredes
Roteadores utilizam a mscara de subrede para indicar destinos possvel nas suas tabelas de roteamento Criam hierarquias de 3 nveis Podem ser criadas sem necessidade de se notificar o NIC (autoridade que designa endereos para a Internet) Subdivide uma rede de forma particular e controlada pelo dono da rede
Rede
Host
Subredes: Exemplo
Subredes (exemplo)
Broadcasting
Utiliza endereos com bits todos 1s em determinadas partes Endereos broadcast:
Limited - 255.255.255.255 Net-direct netid.255.255 (exemplo: classe B) Subnet-direct netid.subnetid.255 (exemplo de rede classe B com 8 bits alocados para subredes)
S faz sentido se usado por protocolo que permita broadcasting (UDP, ARP, DHCP, etc) Deve ser usado com cuidado sobrecarrega a rede
ARP
ARP
Encapsulado diretamente no quadro Cache de resoluo de endereos mantido em cada host Broadcast:
Inclui endereos IP e Fsico do host origem Hosts receptores atualizam seu cache
ICMP
Encapsulado pelo IP mas ainda parte da camada de rede O cabealho ICMP composto de:
Tipo (8 bits) : tipo da mensagem Cdigo (8 bits) : parmetros especficos Checksum (16 bits) : check da mensagem ICMP toda Parmetros (32 bits) : parmetros especficos
Data
Valores ICMP
Ping ICMP
A
R1 R2 R3
Echo request
Time
Echo reply
traceroute
O comando traceroute grava as rotas tomadas pelos pacotes Quando um pacote chega num roteador e seu campo TTL chega a zero, enviada uma mensagem ICMP de time exceeded Incrementando o campo TTL ele consegue receber mensagens time exceeded de forma a registrar e mapear o caminho sendo dado pela rede para determinado endereo de destino Continua at chegar no destino ou uma mensagem de erro ocorrer
traceroute
Te = Time exceeded Pu = Port unreachable
R1
TTL=1, Dest = B, port = invalid
R2
R3
Te (R1)
TTL=2, Dest = B
Time
Te (R2)
TTL=3, Dest = B
Te (R3)
TTL=4, Dest = B
Pu (B)
O que o IP no faz?
Criao de circuitos lgicos (seu servio sem conexo datagrama) Comunicao confivel fim-a-fim e controle de fluxo fim-afim (protocolos de nvel superior TCP ou protocolos de aplicao) Deteco de erros nos payload dos pacotes (TCP, UDP ou outros) Sinalizao de erros e alteraes (ICMP) Montagem de tabelas de roteamento (RIP, OSPF, BGP) Resoluo e mapeamento de endereos e nomes (ARP, RARP, DNS) Configurao automtica de endereos (BOOTP, DHCP) Suporte grupos e roteamento multicast (IGMP, MBONE)
Protocolo TCP
Baseado na transferncia de sequncias de bytes entre buffers de transmisso e recepo Bem projetado: no mudou muito desde sua apario nos anos 60 Suporta aplicaes bsicas como TELNET, FTP e correio eletrnico Especifica o formato dos dados e confirmaes usadas na transferncia daqueles, garantindo a correta entrega dos dados de clientes a servidores e vice-versa Implementa suporte para deteco de erros e disparo de retransmisses quando necessrio Permite que mltiplas aplicaes num sistema possam se comunicar concorrentemente tratando a operao multiplexada
Conexes TCP
Baseado no conceito de sockets (endpoints) Um socket em TCP identificado por uma porta e o endereo IP da mquina Um mesmo socket pode suportar vrias conexes ao mesmo tempo No suporta multicasting e broadcasting (sempre ponto-a-ponto e full-duplex) Cada conexo identificada pelos nmeros dos sockets nas duas pontas Sockets tambm o nome de uma biblioteca de subrotinas que prov acesso s facilidades TCP/IP
Protocolo TCP
Uso de segmentos (cabealho TCP mais um ou mais bytes de dados a serem transmitidos) Numera individualmente os bytes sendo transmitidos para controle de fluxo Utiliza um esquema de janela deslizante para confirmar a informao recebida Caso um segmento seja maior que 65495 bytes (limite do pacote IP=64k) ou maior que o MTU da rede, ele deve ser fragmentado pelo roteador (podendo gerar problemas de confirmao e remontagem na recepo)
Software TCP
Multiplexao TCP
Vrias aplicaes rodam nos hosts ao mesmo tempo. A definio de que aplicao se comunicar com qual aplicao de outra mquina descrita pelo endereo de aplicao (porta) definida a nvel de transporte
Protocolo UDP
Utilizado quando: necessrio o envio de mensagens de multicast ou broadcast O overhead gerado por procedimentos de conexo injustificado ou no tolerado pela aplicao em uso Aplicaes de amostragem de dados (Ex.: sensores) Servios request-response (a aplicao toma a responsabilidade de verificar mensagens que no chegam) Aplicaes de tempo-real onde temporizao o mais importante
Arquitetura TCP/IP
Arquitetura TCP/IP
Correio Eletrnico
SMTP Simple Mail Transport Protocol Usado para o envio de correio eletrnica pela Internet Define com um programa que envia mensagens de correio e um que recebe devem interagir POP Post Office Protocol usado para receber as mensagens de correio eletrnico
Intranets
Redes proprietrias de organizaes que utilizam tecnologia TCP/IP para disponibilizar aplicaes e contedo para usurios internos Muito usadas em ambientes corporativos (grande sucesso) O contedo somente acessvel para usurios internos Podem ser implementadas numa grande variedade de plataformas
Extranets
Estende o conceito de intranet oferecendo informao e servios para um nmero controlado de usurios externos corporao (fabricantes, clientes, etc) Permite a troca eficaz e segura de informao entre companhias Ambas se aproveitam de todas as facilidades do mundo TCP/IP Mtodos usados para acesso:
Acesso discado Acesso pela Internet com segurana VPN (Virtual private network) Acesso pela Internet a um servidor que replica o contedo extranet disponibilizado Acesso pela Internet a um servidor que realiza queries em servidores internos