Redes de Computadores II - 1.Arquitetura TCP-IP

Embed Size (px)

Citation preview

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    1/62

    Arquitetura deProtocolos TCP/IP

    Prof. Mauro Tapajs

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    2/62

    Protocolo IP

    A tnica dos protocolos TCP/IP era compor um conjunto queviabilizasse uma rede que fosse robusta e automaticamentese recuperasse de falhas em ns ou links

    Protocolo usado na Internet para unir todos os tiposheterogneos de redes que a compem

    Esta opo permite a construo de redes de grande portecom pouco gerenciamento centralizado - interconexo

    Pacotes e datagramas possuem o mesmo sentido no mbitodo IP. uma rede best-effort (melhor esforo): podemocorrer atrasos, pacotes fora de ordem, danificao e perdade pacotes. Camadas de protocolos superiores devem tratar

    destes problemas

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    3/62

    Protocolo IP

    Os roteadores encaminham pacotes da origem aodestino dentro da rede toda (global) e no s dentroda tecnologia de rede

    Entrega de pacotes de tamanhos variados de umhost para outro, mesmo se estiverem em redesdiferentes

    Realiza fragmentao e remontagem, define

    formato dos pacotes e algoritmos deencaminhamento de pacotes

    Existe uma tendncia a se rodar tudo sobre IP

    IMPs numa rede IP so roteadores e operam em

    modo datagrama (sem conexo)

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    4/62

    Operao a Nvel deCamada de Rede IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    5/62

    MTU - Maximum TransmissionUnit

    Cada tecnologia de rede que implementa a subrede possui oseu prprio MTUEthernet: 1518 bytes

    FDDI: 4500 bytesToken Ring: 2 to 4 kB

    Cada subrede tem um tamanho mximo de datagrama IP

    (cabealho + payload) = MTU

    O DRede 1

    MTU=1500

    Rede 2

    MTU=1000R

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    6/62

    Protocolo IP

    Prev um esquema de endereamento hierrquico

    Executa procedimentos de fragmentao eremontagem

    Define um algoritmo de encaminhamento depacotes

    uma rede best-effort (melhor esforo): podem

    ocorrer atrasos, pacotes fora de ordem, danificao eperda de pacotes. Camadas de protocolos devemtratar destes problemas

    Cabe ao protocolo IP definir um nvel de

    encaminhamento rpido e flexvel de pacotes

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    7/62

    Arquitetura TCP/IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    8/62

    Exemplos de Aplicaes na

    InternetCorreio Eletrnico

    Terminal Remoto

    Transferncia de Arquivos

    Newsgroups

    Compartilhamento de Arquivos

    Distribuio de Recursos

    WWW - World Wide Web

    Vdeo-conferncia

    Jogos online

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    9/62

    Exemplo Rede IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    10/62

    Camadas Envolvidas

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    11/62

    Rede IP:

    Exemplo

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    12/62

    Rede IP: Exemplo

    Protocolo IP interconectando redes de tecnologiasEthernet, FDDI e PPP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    13/62

    Endereos IP

    nicos para toda a redeSe uma mquina muda de rede dentro da rede TCP/IP,normalmente ela deve alterar seu endereo IPMquinas com vrias interfaces de rede deve ter umendereo IP para cada interface

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    14/62

    Tipos de Endereos IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    15/62

    Aspectos de Endereos IP

    Endereos normalmente reservados

    Endereos da rede em questo Endereos com os bits daparte 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 aclasses

    Endereos classe A 127.*.*.* so chamados de loopbacke

    so reservados para:Teste de aspectos do TCP/IP

    Comunicao inter-processo na mesma mquina

    Pacotes com endereos de loopbackcomo os acima no

    devem ser encontrados numa rede

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    16/62

    Endereos IP reservadosUtilizados para fins especiais

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    17/62

    Como Obter Endereos IP?

    Se for prevista conexo com a Internet, deve-se usarendereos vlidos

    O rgo responsvel em atribuir endereos IP vlidos,

    domnios e parmetros de protocolos para as vriasorganizaes o ICANN (Internet Corporation for

    Assigned Names and Numbers)

    Estes servios eram prestados anteriormente pela

    IANA (Internet Assigned Numbers Authority)No Brasil, organizao responsvel pela atribuio deendereos Internet vlidos a FAPESP em So Paulo(tambm responsvel em atribuir domnios, AS, etc)

    registro.br

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    18/62

    Subredes

    Endereamento baseado em classes no eficientepor que grande a demanda de endereos de rede

    classe B

    Pode-se utilizar sub-divises das classes B e C paraorganizar subredes dentro de uma regio de rede

    atendida pelo endereamento B ou C

    Cria um segundo nvel de hierarquia de forma que umamscara de subrede indique que parte dos bits doendereo representam a subrede

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    19/62

    SubredesRoteadores utilizam a mscara de subrede paraindicar destinos possvel nas suas tabelas deroteamento

    Criam hierarquias de 3 nveis

    Podem ser criadas sem necessidade de se notificar oNIC (autoridade que designa endereos para aInternet)

    Subdivide uma rede de forma particular e controladapelo dono da rede

    Rede Host

    O limite se torna flexvel e definido pela mscara de subrede

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    20/62

    Subredes: Exemplo

    Nesta rede classe B, 6 bits do terceiro byte so

    reservados endereamento de subredes

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    21/62

    Subredes

    (exemplo)

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    22/62

    Broadcasting

    Utiliza endereos com bits todos 1s emdeterminadas 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

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    23/62

    ARP

    (Address Resolution Protocol)Como saber para que equipamento mandar se somente temos umendereo IP global?

    TCP/IP suporta qualquer tecnologia de rede com quaisquer

    endereos de camada 2

    Endereos fsicos podem ser fixos (Ethernet) ou configurveis

    O ARP mapeia endereos de rede IP em endereos de camada de

    enlace (fsicos) - IP ->MAC

    Baseado em broadcasts em nvel de enlace

    Usado para se saber qual endereo MAC est usando um IP

    Entradas no cache so temporizadas

    Proxy ARP (configurvel) -> roteadores

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    24/62

    ARP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    25/62

    ARPEncapsulado diretamente no quadro

    Cache de resoluo de endereos mantido emcada host

    Broadcast:Inclui endereos IP e Fsico do host origem

    Hosts receptores atualizam seu cache

    Header

    ARP

    DataQuadro

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    26/62

    RARP(Reverse Address Resolution

    Protocol)

    Permite que um determinado endereo MAC saiba seuIP (MAC ->IP)

    Utilizado principalmente por hosts diskless

    feito via um broadcastde nvel de enlace na rede(endereo MAC composto somente por 1s)

    Necessidade de haver um servidor RARP em cada rede

    Formato de quadro igual ao ARP

    A evoluo do RARP como protocolo de boot demquinas sem IP foram o BOOTP (Bootstrap Protocol) e

    o DHCP (Dynamic Host Configuration Protocol)

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    27/62

    ICMP(Internet Control Message

    Protocol)IP sozinho no prov servios para detectar falhas eefetuar testes

    Permite comunicao de controle e sinalizao de erros

    entre software IP de roteadores e hostsAlerta de eventos na rede e monitoramentos

    Destino das mensagens ICMP -> IP software (e no uma

    aplicao)

    Todas as implementaes IP devem tambm implementarICMPAlgumas funes:

    Anncio de erros de redeAnncio problemas de congestionamentoAuxlio no diagnstico de problemas

    Informe de timeouts

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    28/62

    ICMP Tipos de Mensagens

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    29/62

    ICMP

    Encapsulado pelo IP mas ainda parte da camadade redeO cabealho ICMP composto de:

    Tipo (8 bits) : tipo da mensagemCdigo (8 bits) : parmetros especficosChecksum (16 bits) : check da mensagem ICMP todaParmetros (32 bits) : parmetros especficos

    DataHeaderQuadro

    DataHeaderDatagrama

    DataHeaderICMP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    30/62

    Valores ICMP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    31/62

    Formatos de Mensagens ICMP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    32/62

    Alguns Usos Especficos do ICMP

    Mensagens de Echo request/reply(comando ping)

    Usada para testar se um host est vivo

    Usado para se saber os hosts num segmento

    Podem calcular o tempo de envio e recebimento daresposta

    Pedidos de mscara de endereo

    Aviso de destino inalcanvel na rede

    Endereo invlido para o equipamento

    Aviso de Timeout TTL de pacotes

    Muitos saltos no pacote o expiraram no seu percurso aodestino (no usado em pacotes multicast!)

    Utilitrio traceroute

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    33/62

    Ping ICMP

    R1 R2 R3A B

    Tim

    e

    Echo request

    Echo reply

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    34/62

    traceroute

    O comando traceroute grava as rotas tomadas pelospacotes

    Quando um pacote chega num roteador e seu campo

    TTL chega a zero, enviada uma mensagem ICMP detime exceeded

    Incrementando o campo TTL ele consegue recebermensagens time exceededde forma a registrar e

    mapear o caminho sendo dado pela rede paradeterminado endereo de destino

    Continua at chegar no destino ou uma mensagem deerro ocorrer

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    35/62

    traceroute

    R1 R2 R3A B

    TTL=1, Dest = B,

    port = invalid

    TTL=2, Dest = B

    TTL=3, Dest = B

    TTL=4, Dest = B

    Te (R1)

    Te (R2)

    Te (R3)

    Pu (B)

    Tim

    e

    Te = Time exceededPu = Port unreachable

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    36/62

    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-a-

    fim (protocolos de nvel superior TCP ou protocolos de

    aplicao)Deteco de erros nos payloaddos 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)

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    37/62

    Alguns Protocolos de Suporte

    ao IPARP (Address Resolution Protocol)

    RARP (Reverse Address Resolution Protocol)

    ICMP (Internet Control Message Protocol)

    IGMP (Internet Group Management Protocol)

    RSVP (Resource Reservation Protocol)

    RIP (Routing Information Protocol)OSPF (Open Shortest Path First)

    BGP (Border Gateway Protocol)

    EGP (Exterior Gateway Protocol)

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    38/62

    Alguns protocolos da Sute TCP/IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    39/62

    Protocolos de Transporte

    TCP/IPComunicao fim-a-fim numa rede

    interconectada

    No conjunto de protocolos TCP/IP temos a oferta

    de servio orientado a conexo e confivel

    (protocolo TCP) e servio no-orientado a

    conexo baseado em datagrama (protocolo UDP)

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    40/62

    Protocolos de Transporte

    TCP/IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    41/62

    Protocolos de Transporte

    TCP/IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    42/62

    Protocolo TCP

    Baseado na transferncia de sequncias de bytes entrebuffers de transmisso e recepo

    Bem projetado: no mudou muito desde sua apario nosanos 60

    Suporta aplicaes bsicas como TELNET, FTP e correioeletrnico

    Especifica o formato dos dados e confirmaes usadas natransferncia daqueles, garantindo a correta entrega dosdados de clientes a servidores e vice-versa

    Implementa suporte para deteco de erros e disparo deretransmisses quando necessrio

    Permite que mltiplas aplicaes num sistema possam secomunicar concorrentemente tratando a operao

    multiplexada

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    43/62

    Encapsulamento do ProtocoloTCP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    44/62

    Conexes TCP

    Baseado no conceito de sockets (endpoints)

    Um socket em TCP identificado por uma porta e oendereo IP da mquina

    Um mesmo socket pode suportar vrias conexes aomesmo tempo

    No suporta multicasting e broadcasting (sempre ponto-a-ponto e full-duplex)

    Cada conexo identificada pelos nmeros dos socketsnas duas pontas

    Sockets tambm o nome de uma biblioteca desubrotinas que prov acesso s facilidades TCP/IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    45/62

    Protocolo TCP

    Uso de segmentos (cabealho TCP mais um ou maisbytes de dados a serem transmitidos)

    Numera individualmente os bytes sendo transmitidos

    para controle de fluxo

    Utiliza um esquema de janela deslizante para confirmara informao recebida

    Caso um segmento seja maior que 65495 bytes (limitedo pacote IP=64k) ou maior que o MTU da rede, eledeve ser fragmentado pelo roteador (podendo gerarproblemas de confirmao e remontagem na recepo)

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    46/62

    Software TCP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    47/62

    Algumas Portas Conhecidas(Well-Known)

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    48/62

    Multiplexao TCP

    Vrias aplicaes rodam nos hosts ao mesmo tempo. Adefinio de que aplicao se comunicar com qualaplicao de outra mquina descrita pelo endereo deaplicao (porta) definida a nvel de transporte

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    49/62

    Protocolo UDP (User

    Datagram Protocol)

    Descrito na RFC 768 com posteriores evolues

    Oferece s aplicaes a capacidade de enviar pacotes

    IP encapsulados por um protocolo de transporte sem

    conexo

    Basicamente oferece a capacidade de endereamento

    de aplicao em portas ao protocolo IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    50/62

    Protocolo UDP

    Utilizado quando:

    necessrio o envio de mensagens de multicastoubroadcast

    O overheadgerado 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 aresponsabilidade de verificar mensagens que nochegam)

    Aplicaes de tempo-real onde temporizao o

    mais importante

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    51/62

    Arquitetura TCP/IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    52/62

    Algumas Aplicaes e Servios

    TCP/IPDomain Name System - DNS: resolve nomes em endereosIP

    File Transfer Protocol - FTP: envio de arquivos entresistemas

    Terminal Emulation Protocol Telnet: cria terminaisremotos

    Simple Mail Transfer Protocol - SMTP: envio de mensagensde correio eletrnico

    Simple Network Management Protocol - SNMP: protocolopara gerenciamento de redes

    Hypertext Transfer Protocol - HTTP: troca de informaesem formato hipertexto

    Network File System - NFS: sistemas de arquivos remotos

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    53/62

    Arquitetura TCP/IP

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    54/62

    BOOTP (Bootstrap Protocol)

    um protocolo que permite que um hostobtenha seuendereo IP dinamicamente

    Permite que o administrador da rede tenha o controlesobre os endereos

    Mais eficiente que o RARP por que uma nicamensagem do protocolo define vrias opes como oendereo do host, a mscara de subrede e o endereodo gatewaypadro, ...

    O servidor deve ter a informao a ser passadapreviamente configurada (no dinmico)

    Trabalha na camada de aplicao usando servios dacamada UDP, logo um protocolo de APLICAO

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    55/62

    DHCP (Dynamic Host

    Configuration Protocol)

    Permite que um dispositivo conectado rede saibaautomaticamente sua configurao de rede,incluindo seu endereo IP

    um superconjunto do BOOTP agregando maisfuncionalidades e parmetrosLogo, pode utilizar relays BOOTP de roteadoresUtiliza o mesmo formato de mensagem do BOOTP

    Procedimento diferente de inicializao do host(discovery)Oferecepools de endereos IP e a oferta de leasedIPsOferece ainda a possibilidade de se reservardeterminados IPs para servidores e roteadores

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    56/62

    Servio usado para mapear nomes usados poraplicaes em endereos IP de 32 bits

    Endereos IP no so prticos de se usar

    um sistema distribudo onde montada uma rvorehierrquica de nomes

    Domain Name Service (DNS)

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    57/62

    WWW - World Wide Web

    Conceito proposto por Tim Berners-Lee in 1989

    Idia: compartilhamento de informaes atravs deum sistema hiper-texto distribudo

    O sistema composto de navegadores (browsers)clientes de servidores WWW que contm a informaoa ser coletada

    Prottico desenvolvido em 1991

    O primeiro browser grfico (Mosaic) desenvolvido porMark Andreessen

    Utilizam um protocolos de nvel de aplicao chamadoHTTP (Hyper Text Transfer Protocol) para receberarquivos com contedo de informao

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    58/62

    Protocolo de aplicao leve e rpido para transportede informao em formato hipertexto

    Implementa um conjunto de mtodos para serem

    usados em requestsPode ser usado como protocolo gerrico paracomunicao entre user agents e gateways paraoutros protocolos

    Mensagens so passadas em formato texto atravs deum esquema request/response entre cliente eservidor

    URL Uniform Resource Locator identifica uma

    pgina/programa

    HTTP Hyper Text Transfer

    Protocol

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    59/62

    HTTP Hyper Text Transfer

    Protocol

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    60/62

    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 interagirPOP Post Office Protocol usado para receber asmensagens de correio eletrnico

    Correio Eletrnico

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    61/62

    Intranets

    Redes proprietrias de organizaes queutilizam tecnologia TCP/IP para disponibilizaraplicaes e contedo para usurios internos

    Muito usadas em ambientes corporativos(grande sucesso)

    O contedo somente acessvel para usurios

    internosPodem ser implementadas numa grandevariedade de plataformas

  • 8/3/2019 Redes de Computadores II - 1.Arquitetura TCP-IP

    62/62

    ExtranetsEstende o conceito de intranet oferecendo informao eservios para um nmero controlado de usurios externos corporao (fabricantes, clientes, etc)

    Permite a troca eficaz e segura de informao entrecompanhias

    Ambas se aproveitam de todas as facilidades do mundoTCP/IP

    Mtodos usados para acesso:Acesso discado

    Acesso pela Internet com seguranaVPN (Virtual private network)

    Acesso pela Internet a um servidor que replica o contedoextranet disponibilizado

    Acesso pela Internet a um servidor que realiza queries em