conhecendo o tcp ip

Upload: glaiene

Post on 07-Apr-2018

219 views

Category:

Documents


1 download

TRANSCRIPT

  • 8/6/2019 Conhecendo o TCP IP

    1/48

    TCP/IP

    Kleper Gomes

    - 1 -

    Conhecendo o TCP/IP

    Autor:

    Kleper Gomes

  • 8/6/2019 Conhecendo o TCP IP

    2/48

    TCP/IP

    Kleper Gomes

    - 2 -

    1. INTRODUO

    Devido ao tremendo impacto dos computadores na sociedade, principalmente na ltima dcada, este perodo da histria tem sido denominado a era

    da informao. O lucro e a produtividade das organizaes e indivduos tem sido aumentados de forma significativa pelo uso das redes de

    computadores como suporte a troca e acesso informao. Indivduos utilizam as redes de computadores quase que diariamente de forma a

    conduzir suas atividades pessoais e empresariais. O que se pode observar uma acelerao da utilizao e das aplicaes com base na tecnologia

    das redes de computadores, medida que mais pessoas descobrem as potencialidades dos computadores e das redes de comunicao tanto em

    aplicaes domsticas como em empresariais. As transaes e atividades dirias em lojas de departamentos, bancos, e outras pessoas e empresas

    das mais diversas naturezas, esto cada vez mais dependentes das redes de computadores.

    Lamentavelmente, a maioria das redes constitui entidades independentes estabelecidas para atender s necessidades de um grupo isolado. Os

    usurios selecionam uma tecnologia de hardware que seja adequada aos seus problemas de comunicao. impossvel a estruturao de uma rede

    universal com base em uma nica tecnologia de hardware, j que nenhuma rede nica atende a todas as aplicaes. Alguns usurios precisam de

    uma rede de alta velocidade para conectar-se a mquinas, mas essas redes no podem ser expandidas para alcanar grandes distncias. Outros

    preferem uma rede de velocidade inferior que faa conexo com mquinas a centenas de milhas de distncia.

    Ao longo dos anos, as agncias governamentais norte-americanas perceberam a importncia e o potencial de tecnologia de interligao em redes e

    vm financiando as pesquisas que possibilitaram a interconexo global de redes. A tecnologia da ARPA (Advanced Research Projects Agency) inclui

    um conjunto de padres de rede que especificam os detalhes do sistema pelo qual os computadores se comunicam, bem como um conjunto de

    convenes para interconexo em redes e para roteamento. Denominado oficialmente Pilha de Protocolos de interligao em redes TCP/IP, e

    geralmente citado como TCP/IP, essa pilha pode ser utilizada para comunicao em qualquer conjunto de redes interconectadas. Algumasempresas, por exemplo, utilizam o TCP/IP para interconectar todas as redes de sua organizao, ainda que a empresa no se comunique com redes

    externas. Outros grupos utilizam o TCP/IP para estabelecer comunicaes entre sites geograficamente distantes.

    Nos Estados Unidos, a National Science Foundation (NSF), o Department of Energy (DOE), o Department of Defense (DOD), a Health and Human

    Services Agency (HHS) e a National Aearonautics and Space Administration (NASA) participaram do financiamento da Internet e utilizam o TCP/IP

    para conectar muitas de suas instalaes de pesquisa. A interligao em redes resultante permite que os pesquisadores de instituies conectadas

    compartilhem informaes com seus colegas de todo o mundo com a mesma facilidade com que compartilham informaes com pesquisadores da

    sala ao lado. Um sucesso extraordinrio, a Internet demonstra a viabilidade da tecnologia TCP/IP e mostra como pode-se lidar com uma diversidade

    de tecnologias de redes.

    1.1. SERVIOS EM REDES

    Grande parte da abordagem de servios ter como foco padres denominados protocolos. Protocolos como TCP e IP fornecem as regras para a

    comunicao. Eles contm os detalhes de formatos de mensagens, descrevem o que um computador faz ao receber uma mensagem e especificam

    como um computador trata os erros ou outras condies anormais. De certa forma, um protocolo de comunicao permite que algum especifique ou

    entenda uma comunicao de dados sem depender de conhecimentos minuciosos do hardware da rede de um fornecedor especfico. Todos os

    servios de rede so descritos por protocolos.

  • 8/6/2019 Conhecendo o TCP IP

    3/48

    TCP/IP

    Kleper Gomes

    - 3 -

    Os servios de aplicativos da Internet mais comum e difundidos incluem: Correio Eletrnico. O correio eletrnico permite que um usurio elabore memorandos e os envie a indivduos ou grupos. Uma outra parte do

    aplicativo do correio eletrnico permite que os usurios leiam os memorandos que receberam. O correio eletrnico tem sido to bem-sucedido

    que muitos usurios da Internet dependem dele para correspondncia comercial normal. Embora existam muitos sistemas de correio

    eletrnico, a utilizao do TCP/IP faz com que a entrega de correio seja mais confivel, j que no depende de computadores para

    processamentos intermedirios na transmisso de mensagens. Um sistema de entrega de correio TCP/IP opera atravs de contato direto entre

    a mquina do transmissor e a mquina do receptor. Assim, o transmissor sabe que quando a mensagem deixa a mquina local, ela foi

    recebida com xito no destino.

    Transferncia de arquivos. Embora alguns usurios s vezes transfiram arquivos atravs do correio eletrnico, ele se destina, sobretudo, a

    mensagens de pouco texto. Os protocolos TCP/IP incluem um programa aplicativo que permite que os usurios enviem ou recebam

    arbitrariamente arquivos externos de programas de dados. Ao utilizar, por exemplo, um programa de transferncia de arquivos, a pessoa podecopiar de uma mquina para outra uma base de dados extensa contendo imagens de satlite, um programa escrito em Pascal ou C++, ou um

    dicionrio de ingls. O sistema indica uma maneira de checar os usurios autorizados, ou at de evitar acessos. Tal como ocorre com o correio

    eletrnico, a transferncia de arquivos na interligao em redes TCP/IP confivel porque as duas mquinas envolvidas comunicam-se

    diretamente, sem depender de mquinas intermedirias que faam cpias do arquivo ao longo do processo.

    Login remoto. O login remoto permite que, de seu computador, um usurio entre em conexo com uma mquina remota e estabelea uma

    sesso interativa de login. O login remoto faz com que uma janela na tela do usurio parea conectar-se diretamente com a mquina remota,

    enviando cada toque no teclado a uma mquina remota e exibindo cada caracter que o computador remoto imprime na janela do usurio.

    Quando a sesso de login remoto termina, o aplicativo retorna o usurio ao sistema local.

    No nvel da camada de rede, uma interconexo proporciona extensos tipos de servios que todos os programas aplicativos utilizam:

    Servio de entrega de pacotes sem conexo. Este servio, explicado com detalhes ao longo do texto, forma a base para todos os servios de

    interligao em redes. A entrega sem conexo constitui uma preocupao do servio oferecido pela maioria das redes distribuidoras de

    encomendas. Isso simplesmente significa que a interligao em redes TCP/IP promove o roteamento de pequenas mensagens de uma

    mquina para outra, com base nas informaes do endereo contidas na mensagem. Como o servio sem conexo promove o roteamento de

    cada pacote separadamente no h garantia de entrega, e nem de entrega na mesma ordem na qual os pacotes forma transmitidos. J que

    quase sempre h um mapeamento direto para o hardware, o servio sem conexo extremamente eficiente. O mais importante que a

    entrega de pacotes, sem conexo, como base para todos os servios de interligao em redes, torna os protocolos TCP/IP adaptveis a uma

    ampla gama de hardware de redes.

    Servio de transporte de streams confiveis. A maioria dos aplicativos precisa de muito mais do que uma entrega de pacotes, porque elesexigem que o software de comunicao corrija automaticamente erros de transmisso, pacotes perdidos, ou falhas de comutaes ao longo do

    caminho entre o transmissor e o receptor. O servio de transporte confivel trata desses problemas. Ele permite que um aplicativo de um

    computador estabelea uma conexo com um aplicativo de outro computador, e a seguir envie um grande volume de dados atravs da

    conexo, como se fosse uma conexo de hardware direta e permanente. Naturalmente, em um nvel mais baixo, os protocolos de

    comunicao dividem a cadeia de dados em mensagens curtas e as envia, uma de cada vez, esperando que o receptor confirme a recepo.

    Muitas redes oferecem servios bsicos semelhantes aos mencionados acima, de modo que algum poderia questionar o que diferencia os servios

    TCP/IP de outros. As principais caractersticas diferenciadoras so:

  • 8/6/2019 Conhecendo o TCP IP

    4/48

    TCP/IP

    Kleper Gomes

    - 4 -

    Independncia da tecnologia de redes. Embora o TCP/IP seja baseado em tecnologia convencional de comutao de pacotes, ele

    independente do hardware de qualquer fornecedor especfico. A Internet inclui diversas tecnologias de rede, desde as redes projetadas para

    operar em um prdio at as projetadas para cobrir grandes distncias. Os protocolos TCP/IP definem a unidade de transmisso de dados

    denominada datagrama, e especifica como transmitir datagramas em uma rede especfica.

    Interconexo universal. Uma interligao em redes TCP/IP permite a comunicao de que qualquer par de computadores ao qual ela

    conectada. A cada computador atribudo um endereo universalmente reconhecido por toda a interligao em redes. Cada datagramas traz

    os endereos de sua origem e de seu destino. Os computadores de comutao intermediria utilizam o endereo de destino para tomar

    decises sobre roteamento.

    Confirmaes fim-a-fim. Os protocolos de interligao em redes TCP/IP fornecem uma confirmao entre a origem e o destino final, e no

    entre mquinas sucessivas ao longo do caminho, mesmo quando as duas mquinas no se conectam a uma mesma rede fsica.

    Padres de protocolo de aplicativos. Alm dos servios bsicos no nvel de transporte (como conexes de streams confiveis), os protocolos

    TCP/IP incluem padres para muitos aplicativos comuns, inclusive o correio eletrnico, a transferncia de arquivos e o login remoto. Assim,

    quando esto desenvolvendo programas aplicativos que utilizam TCP/IP, os programadores sempre descobrem que o software existente

    oferece os servios de comunicao de que eles precisam.

    1.2. ESCOPO DA INTERNET

    A arquitetura TCP/IP surgiu com a criao de uma rede patrocinada pelo Departamento de Defesa dos Estados Unidos. Uma das tarefas essenciais

    dessa rede seria manter comunicados, mesmo que apenas uma parte, rgos do governo e universidades, numa ocorrncia de guerras ou

    catstrofes que afetassem os meios de comunicao daquele pas. Dessa necessidade, surgiu a ARPANET, uma rede que permaneceria intacta

    caso um dos servidores perdesse a conexo. A ARPANET necessitava ento de um modelo de protocolos que assegurasse tal funcionalidade

    esperada, mostrando-se confivel, flexvel e de fcil implementao. ento desenvolvida a arquitetura TCP/IP, que se torna um padro de fato. A

    ARPANET cresceu e tornou-se a rede mundial de computadores Internet. A utilizao (e facilidades) do padro TCP/IP utilizado pelos fabricantes

    de outras redes, com a finalidade da conectividade com a Internet. A normalizao do TCP/IP chegou aps a sua utilizao em massa.

    A Internet cresceu, abrangendo centenas de redes individuais localizadas nos Estados Unidos e na Europa. Conectou aproximadamente 20.000

    computadores de universidades, rgos pblicos e laboratrios de pesquisa organizacional. O tamanho e a utilizao da Internet continuou em

    ascenso muito mais acelerada do que o previsto. No final de 1987, estimou-se que o crescimento alcanara 15% ao ms. Em torno de 1994, aInternet alcanava mais de 3 milhes de computadores em 61 pases.

    A utilizao de protocolos TCP/IP e o crescimento da Internet no se limitaram a projetos financiados pelo governo. Grandes companhias voltadas

    para o setor de computadores conectaram-se Internet, bem como muitas outras organizaes de grande porte como companhias de petrleo,

    indstria automobilstica, empresas de eletrnica, companhias farmacuticas e portadoras de telecomunicaes. As empresas de pequeno e mdio

    porte comearam a conectar-se na dcada de 1990. Alm disso, muitas outras utilizavam os protocolos TCP/IP em suas interligaes em redes

    corporativas, mesmo tendo optado por no participar da Internet.

  • 8/6/2019 Conhecendo o TCP IP

    5/48

    TCP/IP

    Kleper Gomes

    - 5 -

    Uma expanso acelerada trouxe problemas de escala no previstos no projeto original e motivou os pesquisadores a encontrar tcnicas paragerenciar numerosos recursos distribudos. No projeto original, por exemplo, os nomes e endereos de todos os computadores conectados Internet

    eram mantidos em um nico arquivo que era editado manualmente e, a seguir, distribudo a todos os sites da Internet. Em meados da dcada de

    1980, tornou-se bvio que um banco de dados de origem no seria suficiente. Primeiro, os pedidos para atualizao de arquivos rapidamente

    provocaria excesso do pessoal disponvel para process-los. Segundo, ainda que existisse um arquivo-fonte correto, a capacidade da rede seria

    insuficiente para permitir a distribuio freqente para todos os sites ou o acesso on-line a cada site.

    Novos protocolos foram desenvolvidos e um sistema de atribuio de nome foi colocado em vigor atravs da Internet para permitir que qualquer

    usurio automaticamente determinasse o nome de uma mquina remota. Conhecido como Domain Name System (DNS), o mecanismo conta com

    mquinas denominadas servidoras de nome para responder a consultas sobre nomes. Nenhuma mquina contm todo o banco de dados de nomes

    de domnios. Em vez de uma mquina, os dados so distribudos por um conjunto de mquinas que utilizam protocolos TCP/IP para se comunicarem

    entre si quando estiverem respondendo a uma consulta. To logo a Internet tornou-se popular e os usurios passaram a buscar informaes atravsde servios como Gopher e a World Wide Web, novamente o trfego aumentou.

    A Internet no controlada por nenhum rgo governamental ou comercial, mas sim por organizaes voluntrias que controlam os usurios e os

    artigos publicados na Internet. Eis algumas organizaes:

    IAB A IAB (Internet Advisory Board) constituda de vrias organizaes e seu objetivo principal coordenar a

    organizao geral da Internet.

    InterNIC A InterNIC (Internet Network Information Center) foi criado pela NSF para distribuir endereos IP.

    IRTF O IRTF (Internet Research Task Force) um dos comits que constituem a IAB. Ele responsvel por vrias

    atividades a nvel de pesquisa, como o desenvolvimento de protocolos.

    RFC RFC (Request for Comments) so documentos tcnicos relacionados aos protocolos da Internet. Algunsdeles contm padres para os protocolos, outros so recentemente desenvolvidos, podendo obter sucesso e

    se tornarem padres. Esses documentos formam a documentao da Internet.

    FNC FNC (Federal Networking Council) um comit que exerce a parte informativa da Internet. A FNC realiza o

    intermdio entre a IAB e as instituies governamentais, alm de prestar suporte a agncias no uso da

    Internet.

    IETF IETF (Internet Engeneering Task Force) um subcomit da IAB que realiza a manuteno de problemas

    construtivos e tambm a implementao de novas tecnologias.

    A Internet considerada por muitos como um dos mais importantes e revolucionrios desenvolvimentos da histria da humanidade. Pela primeira

    vez no mundo um cidado comum ou uma pequena empresa pode (facilmente e a um custo muito baixo) no s ter acesso a informaeslocalizadas nos mais distantes pontos do globo como tambm e isso que torna a coisa revolucionria criar, gerenciar e distribuir informaes

    em larga escala, no mbito mundial, algo que somente uma grande organizao poderia fazer usando os meios de comunicao convencionais. Isso

    com certeza afetar substancialmente toda a estrutura de disseminao de informaes existente no mundo, a qual controlada primariamente por

    grandes empresas. Com a Internet um pessoa qualquer (um jornalista, por exemplo) pode, de sua prpria casa, oferecer um servio de informao

    baseado na Internet, a partir de um microcomputador, sem precisar da estrutura que no passado s uma empresa de grande porte poderia manter.

    Essa perspectiva abre um enorme mercado para profissionais e empresas interessadas em oferecer servios de informao especficos.

  • 8/6/2019 Conhecendo o TCP IP

    6/48

    TCP/IP

    Kleper Gomes

    - 6 -

    2. BSICO DE UMA REDE

    Independente do tipo de conexo que faam, seja entre computadores ou entre terminais e computadores, as redes de comunicao dividem-se em

    dois tipos bsicos: de comutao de circuitos (tambm conhecidas como redes baseadas em conexes) e de comutao de pacotes (conhecidas,

    ainda, como redes sem conexo).

    A comutao por circuitos opera formando uma conexo dedicada entre duas pontas. O sistema telefnico dos Estados Unidos utiliza uma

    tecnologia de comutao de circuitos uma chamada telefnica estabelece um circuito da linha de quem telefona, atravs de uma central de

    comutao local, passando por linhas do tronco, at uma central de comutao remota e, finalmente, ao destinatrio da chamada. Enquanto

    um circuito estiver aberto, o equipamento telefnico testa o microfone vrias vezes, converte os sinais para o formato digital e os transmite

    atravs do circuito para o receptor. O transmissor tem a garantia de que os sinais sero distribudos e reproduzidos, pois o circuito oferece um

    percurso de dados seguro, de 64 kpbs (mil bits por segundo), o mnimo necessrio para o envio de voz digitalizada. A vantagem da comutaode circuitos reside na sua capacidade segura: uma vez que um circuito estabelecido, nenhuma outra atividade de rede poder reduzir a

    capacidade do circuito. A desvantagem da comutao de circuitos o alto custo: o preo fixo, independente do trfego. Por exemplo, o preo

    de uma ligao telefnica o mesmo, ainda quando as duas pontas no se comunicam.

    Nas redes de comutao de pacotes, as mensagens a serem transmitidas atravs das estaes da rede so divididas em pequenas unidades

    chamadas pacotes que so multiplexados por meio de conexes entre mquinas de alta capacidade. Um pacote que geralmente contm

    apenas pequenas unidades de informaes transporta uma identificao que capacita o hardware da rede a enviar as informaes a

    determinado destino. Por exemplo, a transmisso de um arquivo extenso entre dois equipamentos deve ser feita a partir da diviso do arquivo

    em vrios pacotes antes de encaminh-los rede. O hardware da rede envia os pacotes aos seus respectivos destinos onde o software os

    rene novamente em um nico arquivo. A grande vantagem da comutao de pacotes a possibilidade de realizar simultaneamente vrias

    comunicaes entre computadores, com conexes entre equipamentos compartilhados por todos os pares de equipamentos que esto secomunicando. A desvantagem que medida que a atividade se intensifica, um determinado par de computadores conectados entre si recebe

    uma capacidade menor da rede. Ou seja, toda vez que uma rede de comutao de pacotes estiver sobrecarregada, os computadores

    conectados a ela tero que esperar at poderem enviar pacotes adicionais.

    2.1. WANs e LANs

    As tecnologias de comutao de pacotes so freqentemente divididas em duas categorias, de acordo com a extenso: redes de longas distncias

    (WANs) e redes locais (LANs). As duas categorias no possuem definies formais. Ao contrrio, os fornecedores utilizam os termos de forma

    coloquial para que os consumidores saibam diferenciar as duas tecnologias.

    As tecnologias de rede remota ou de redes de longas distncias possibilitam a comunicao entre grandes distncias. A maioria das tecnologias de

    rede de longas distncias no impe um limite na extenso da distncia; permite que os dois extremos se comuniquem a uma distncia arbitrria.

    Por exemplo, uma rede de longa distncia pode operar em um continente ou conectar computadores de continentes diferentes. Geralmente, as redes

    de longa distncias operam em velocidades mais lentas do que as redes locais, e necessitam de um retardo de transmisso bem maior entre as

    conexes. A velocidade de uma rede de longas distncias varia de 56 Kbps a 155 Mbps (um milho de bits por segundo). O retardo de transmisso

    pode variar desde alguns milissegundos at vrios dcimos de segundo.

  • 8/6/2019 Conhecendo o TCP IP

    7/48

    TCP/IP

    Kleper Gomes

    - 7 -

    As tecnologias de rede local possuem uma velocidade de conexo entre comutadores bem mais rpida, mas deixam a desejar na capacidade deoperar em longas distncias. Por exemplo, uma rede local tpica abrange uma rea pequena, como um nico edifcio ou um campus, e funciona entre

    10 Mbps e 2 Gbps (bilhes de bits por segundo). J que essas tecnologias operam em pequenas reas, o retardo de transmisso bem menor do

    que o das tecnologias de rede de longas distncias, o qual pode durar desde alguns dcimos de um milissegundo, at no mximo dez milissegundos.

    2.2. A TECNOLOGIA ETHERNET

    Ethernet o nome dado a uma tecnologia de rede local popular, de comutao de pacotes; a maioria das empresas de mdio e grande porte a

    utiliza. Cada cabo da Ethernet possui aproximadamente 0,5 polegadas de dimetro e at 500 metros de comprimento. Para oferecer o mximo de

    proteo contra interferncia eltrica de dispositivos como motores eltricos, o cabo possui uma forte proteo que o torna difcil de ser dobrado. Oesquema de fiao funciona perfeitamente quando vrios computadores ocupam um mesmo compartimento. O cabo percorre o trajeto diretamente

    de um computador a outro. Para incluir um novo computador, basta conect-lo cadeia.

    CABO DA ETHERNET

    Figura 2.1. Conexo fsica entre dois computadores.

    Com o avano da tecnologia foi possvel construir redes Ethernets que no necessitam da proteo eltrica de um cabo coaxial. Chamada de

    Ethernet de pares tranados, essa tecnologia permite que um computador acesse uma rede Ethernet utilizando um par de fios de cobre normais

    sem proteo, semelhantes aos utilizados para fazer conexes entre equipamentos telefnicos. A vantagem desse tipo de tecnologia que, alm de

    reduzir os custos, oferece proteo a outros computadores da rede no caso de um usurio desconectar um nico computador. Em alguns casos,

    uma tecnologia de pares tranados possibilita que uma instituio utilize a Ethernet com a fiao telefnica j existente, sem a adio de novos

    cabos. Conhecido tecnicamente como 10Base-T, o esquema de fiao de pares tranados conecta cada computador a um HUB da Ethernet, como

    ilustra a Figura 2.2.

    HUB

    CONEXES DE PARES TRANADOS PARA OHUB

    Figura 2.2. Cada computador conecta-se a um HUB por cima de um par de fios.

  • 8/6/2019 Conhecendo o TCP IP

    8/48

    TCP/IP

    Kleper Gomes

    - 8 -

    O HUB um dispositivo eletrnico que estimula os sinais num cabo Ethernet. Fisicamente, o HUB formado por uma pequena caixa que geralmente alojada em um gabinete de fiao; uma conexo entre um HUB e um computador deve ter menos de cem metros de extenso. Um HUB necessita

    de energia eltrica e, talvez, de pessoal qualificado para fazer o monitoramento e o controle de sua operao na rede. Para a interface com um

    computador, a conexo a um HUB parece funcionar do mesmo modo que a conexo direta com coaxial.

    A Ethernet uma tecnologia de barramento de difuso de 10 Mbps com mtodo de entrega sem garantia e controle de acesso distribudo. um

    barramento porque todas as estaes compartilham um nico canal de comunicao; de difuso (broadcast) porque todos os transceptores

    recebem cada uma das transmisses. O controle de acesso distribudo porque, ao contrrio de algumas tecnologias de rede, a Ethernet no possui

    nenhuma autoridade central para permitir o acesso, vrios equipamentos podem acessar a Ethernet simultaneamente e cada um deles estabelece se

    o meio est ou no livre, detectando a presena ou no de sinal. Quando uma interface do host tem um pacote para transmitir, ela verifica o meio

    para saber se h alguma mensagem sendo transmitida. Se nenhuma transmisso for detectada, a interface do host inicializa a transmisso. Cada

    uma das transmisses possui um limite de durao (porque h um tamanho mximo de pacote). Alm do mais, o hardware deve observar umintervalo mnimo de tempo entre as transmisses, o que significa que nenhum par de equipamentos comunicantes pode utilizar a rede sem oferecer

    aos demais equipamentos uma oportunidade de acesso.

    Apesar de um cabo da Ethernet possuir um comprimento mximo, a rede pode ser aumentada de duas maneiras: com o auxlio de repetidores e de

    pontes.

    O repetidor pode ser utilizado para transmitir sinais eltricos de um cabo a outro. Entretanto, no mximo dois repetidores podem ser colocados

    entre duas mquinas, de modo que o comprimento total de uma nica Ethernet continua muito pequeno (trs segmentos de 500 metros cada).

    As pontes so melhores do que os repetidores porque no repercutem os rudos, as falhas ou os quadros com m formao; um quadro

    inteiramente vlido deve ser recebido antes que a ponte o aceite e o transmita para outro segmento.

    De acordo com a viso do TCP/IP, as Ethernets ligadas por pontes so simplesmente uma outra forma de conexo fsica de rede. O importante

    que: Em virtude de a conexo entre cabos fsicos, fornecida pelas pontes e pelos repetidores, ser transparente para os equipamentos conectados

    Ethernet, um sistema nico de rede fsica.

    2.3. FDDI (Fiber Distributed Data Interconnect)

    A FDDI uma conhecida tecnologia de rede que opera em pequenas reas geogrficas e oferece uma largura de banda maior do que a Ethernet. Ao

    contrrio da Ethernet e de outras tecnologias de redes locais que utilizam cabos para transportar os sinais eltricos, a FDDI utiliza fibras de vidro etransmite as informaes, convertendo-as em feixes de luz.

    A fibra ptica possui duas vantagens a mais do que o fio de cobre:

    so imunes interferncia eletromagntica, podendo ficar prximas a dispositivos eltricos potentes;

    O termo quadro deriva-se da comunicao por linhas seriais, nas quais o transmissor configura a informao,acrescentando sinais especiais antes e aps a transmisso das informaes.

  • 8/6/2019 Conhecendo o TCP IP

    9/48

    TCP/IP

    Kleper Gomes

    - 9 -

    como utilizam luz, a quantidade de informao transportadas por um nico canal de fibra ptica significativamente maior do que a dos cabosque transportam sinais eltricos.

    A FDDI uma rede token ring de 100 Mbps dotada de um recurso de auto-reparo uma rede em anel porque forma um circuito fechado, iniciando

    em um computador, passando por todos os outros, e novamente retornando ao computador de origem.

    Trata-se de uma rede de tecnologia token ring porque utiliza um token como forma de controlar a transmisso. Quando a rede est inativa, um

    quadro especial denominado token passa de estao a estao. Sempre que uma estao tiver que enviar um pacote, ela ter que esperar a

    chegada de um token, enviar o pacote e depois passar o token estao seguinte. O token que est sendo utilizado garante o equilbrio: concede a

    todas as estaes a oportunidade de enviar um pacote antes que outra estao envie um segundo pacote.

    REDE FDDI EM ANEL

    Figura 2.3. Uma rede FDDI com fibras pticas fazendo a conexo de seis computadores. As setas indicam a direo do trfego nas fibras e noscomputadores conectados entre si.

    Para oferecer um recurso de recuperao automtica de falhas, o hardware da FDDI utiliza dois anis independentes que se conectam a cada

    computador. Quando a interface percebe que no pode comunicar-se com o computador ao lado, o anel de garantia utilizado para contornar a

    falha.

    A falha talvez seja decorrente da desconexo da fibra (p. ex., um corte acidental). Se as fibras de ambos os anis seguirem o mesmo percurso fsico,

    muito provvel que a Segunda fibra tambm seja desconectada. O hardware da FDDI automaticamente utiliza o anel de rotao oposta para

    formar o circulo fechado na direo em que ele ainda est operando. Com isso, os outros computadores podem continuar se comunicando, mesmo

    com a ocorrncia da falha.

    2.4. ATM (Asynchronous Transfer Mode)

    O ATM o nome dado a uma tecnologia de rede de alta velocidade, baseada em conexo, que vem sendo usada tanto nas redes que operam em

    pequenas como em grandes reas geogrficas. Pelos padres correntes, as redes de alta velocidade so aquelas que operam a uma velocidade de,

    no mnimo, 100 Mbps; o ATM pode intercambiar informaes com velocidades de gigabit/segundo. claro que para se obterem velocidades to altas

    necessrio um equipamento complexo de ltima gerao. Consequentemente, as redes ATM possuem um custo mais alto do que as demais

    tecnologias.

  • 8/6/2019 Conhecendo o TCP IP

    10/48

    TCP/IP

    Kleper Gomes

    - 10 -

    Uma rede ATM utiliza tcnicas de hardware e software especiais:

    Uma rede ATM formada por um ou mais comutadores de alta velocidade que so conectados aos computadores host e a outros

    comutadores ATM.

    O ATM utiliza fibras pticas para fazer conexes, inclusive conexes entre um computador host e um comutador ATM. As fibras pticas

    possuem uma velocidade de transferncia maior do que a dos fios de cobre; normalmente, a conexo entre um host e um comutador ATM

    opera a uma velocidade de 100 ou 155 Mbps.

    As camadas mais baixas de uma rede ATM utilizam quadros de tamanhos fixos chamados clulas. Como as clulas possuem exatamente o

    mesmo tamanho, o hardware do comutador ATM pode process-la rapidamente.

    A rede ATM difere das redes de comutao de pacotes porque oferece um servio baseado em conexo. Antes de um computador host conectado

    a um ATM enviar clulas, ele deve primeiramente interagir com o comutador para especificar o endereo do destinatrio. A interao anloga a

    uma ligao telefnica . O host especifica o endereo do computador remoto e espera o comutador ATM entrar em contato com o sistema remoto e

    estabelecer um caminho (rota fixa). Se o computador remoto no aceitar o pedido, no responder ou se o comutador no puder alcanar o

    computador remoto, o pedido para estabelecer a comunicao falha.

    Quando uma conexo feita, o comutador ATM local escolhe um identificador da conexo e passa-o para o host, juntamente com um mensagem

    informando o sucesso da conexo. O host utiliza o identificador da conexo ao enviar ou receber clulas.

    Ao terminar a conexo, o host comunica-se novamente com o comutador para que a conexo seja desfeita. O comutador desconecta os dois

    computadores. A desconexo equivale a tirar um telefone do gancho no final de uma ligao telefnica; aps a desconexo, o comutador podenovamente utilizar o identificador da conexo.

    2.5. INTERLIGAO EM REDES

    Fisicamente, duas redes s podem ser conectadas por um computador que esteja ligado s duas. No entanto, uma ligao fsica no fornece a

    interconexo que imaginamos, porque tal ligao no garante que o computador vai cooperar com outras mquinas que desejam se comunicar. Para

    se ter uma interconexo de rede vivel, necessitamos de computadores que queiram repassar pacotes de uma rede para outra. Os computadores

    que conectam entre si duas redes e repassam pacotes de um para o outro so chamados de gateways de interligao em redes ou roteadores de

    interligao em redes. Considere um exemplo que consista de duas redes fsicas mostradas na Figura 2.4, o roteador R est conectado s redes 1 e

    2. Para R atuar como um roteador, precisa capturar pacotes na rede 1 que so destinados s mquinas na rede 2 e transferi-los e vice-versa.

    Em virtude de a rede ATM ter sido idealizada para transportar voz, assim como dados, h uma forte relao entre o ATM e acomutao telefnica.

  • 8/6/2019 Conhecendo o TCP IP

    11/48

    TCP/IP

    Kleper Gomes

    - 11 -

    REDE"1"

    REDE"2"

    R

    Figura 2.4. Duas redes fsicas conectadas entre si por um roteador.

    Na figura acima, so usadas nuvens para demonstrar redes fsicas, porque o hardware especfico no tem importncia. Cada rede pode ser uma

    rede local ou uma rede de longa distncia, e cada uma pode ter muitos ou poucos hosts acoplados.

    Quando conexes de interligao em redes se tornam mais complexas, os roteadores necessitam saber sobre a topologia da interligao em redes,

    alm das redes s quais esto conectados.

    REDE

    "1"

    REDE

    "2"

    REDE

    "3"R1 R2

    Figura 2.5. Trs redes interconectadas por dois roteadores.

    Neste exemplo, o roteador R1 deve transferir da rede 1 para a rede 2 todos os pacotes destinados a mquinas em qualquer das redes 2 e 3. Para

    uma grande interligao em redes composta de muitas redes, a tarefa do roteador de tomar decises sobre por onde enviar pacotes se torna mais

    complexa.

    Alm de roteadores que conectam entre si redes fsicas, o software necessrio em cada host para permitir que programas aplicativos usem a

    interligao em redes como se fosse uma nica rede realmente fsica. Do ponto de vista da interligao em redes, qualquer sistema de comunicao

    capaz de transferir pacotes considerado como uma nica rede, independente do retardo, da vazo, do tamanho mximo do pacote ou da escala

    geogrfica.

    O protocolo da interligao em redes do TCP/IP trata todas as redes do mesmo modo. Uma rede local, como uma Ethernet, uma rede de rea maior,

    como o backbone de ANSNET, ou uma ligao de ponto a ponto entre duas mquinas, cada uma conta como uma rede.

    3. ENDEREAMENTO

    Pensando em uma interligao em redes como uma grande rede igual a qualquer outra rede fsica. A diferena que a interligao em redes uma

    estrutura virtual, idealizada por seus projetistas e totalmente implantada em software. Assim, os projetistas esto livres para escolher formatos e

    tamanhos de pacotes, endereos, tcnicas de entrega e assim por diante; nada orientado pelo hardware. Para endereos, os projetistas de TCP/IP

    optaram por um esquema anlogo ao endereamento de rede fsica, no qual a cada host da interligao atribudo um endereo com nmero inteiro

    de 32 bits, denominado seu endereo IP. A parte interessante do endereamento da interligao que os nmeros inteiros so escolhidos

    cuidadosamente para tornar o roteamento eficiente. Especificamente, um endereo IP codifica a identificao da rede qual um host se acopla,

    assim como a identificao de um nico host nessa rede. Resumindo:

  • 8/6/2019 Conhecendo o TCP IP

    12/48

    TCP/IP

    Kleper Gomes

    - 12 -

    A cada host de uma interligao em redes TCP/IP atribudo um endereo de interligao em redes nico de 32 bits que usado emtodas as comunicaes com aquele host.

    Os bits dos endereos IP para todos os hosts de uma rede dada compartilham um mesmo prefixo. Conceitualmente, cada endereo um par (netid,

    hostid) em que netididentifica uma rede e hostid identifica um host naquela rede. Na prtica, cada endereo IP deve Ter uma das trs primeiras

    formas mostradas na Figura 3.1. Dado um endereo IP, seu tipo pode ser determinado a partir de trs bits de alta ordem, sendo dois bits suficientes

    para distinguir entre as trs classes principais:

    Endereos do tipo A, so usados pelas numerosas redes que no possuem mais de 216 (ou seja, 65.536) hosts, dedicam sete bits para netid

    e 24 bits para hostid.

    Endereos do tipo B, que so usados para redes de tamanho mdio que possuem entre 28 (ou seja, 256) e 216 hosts, alocam 14 bits para onetid e 16 bits para o hostid.

    Endereos do tipo C, que possuem menos de 28 hosts, alocam 21 bits para o netid e somente 8 bits para hostid.

    O endereo IP foi definido de tal modo que possvel extrair as partes do netid ou do hostid rapidamente. Os roteadores, que usam a parte netid de

    um endereo ao decidir qual o destino de um pacote, dependem de uma extrao eficiente para alcanar velocidade alta.

    0 1 2 3 4 8 16 24 311 Netid Hostid

    1 0 Netid Hostid

    1 1 0 Netid Hostid

    1 1 1 0 Endereos multicast

    1 1 1 1 0 Reservado para uso futuro

    Figura 3.1. As cinco formas de endereos da Internet (IP). As trs primeiras formas, classes A, B e C podem ser diferenciadas pelos trs primeirosbits.

    Quando os computadores convencionais possuem duas ou mais conexes fsicas so denominados hosts multi-homed. Esses hosts e os roteadores

    necessitam de endereo IP mltiplos. Cada endereo corresponde a uma das conexes de rede da mquina. Portanto, como os endereos IP

    codificam no apenas uma rede, como tambm um host daquela rede, os endereos IP no especificam um computador individual, e sim uma

    conexo rede. Assim, um roteador conectando nredes tem nendereos diferentes de IP, um para cada conexo de rede.

    Os endereos IP so escritos como quatro nmeros inteiros decimais separados por pontos decimais, no qual cada nmero inteiro fornece o valor de

    um octeto de endereo IP. Assim, o endereo de 32 bits:

    10000000 00001010 00000010 00011110

    representado por:

    128.10.2.30

  • 8/6/2019 Conhecendo o TCP IP

    13/48

    TCP/IP

    Kleper Gomes

    - 13 -

    Na realidade, a maioria dos softwares TCP/IP que apresenta ou requer uma pessoa para manipular um endereo IP usa a notao decimal componto. Assim, compreender a relao entre tipos de endereos IP e nmeros decimais pode ajudar. A tabela da Figura 3.2 resume a escala de

    valores para cada tipo.

    Classe Endereo mais baixo Endereo mais altoA 0.1.0.0 126.0.0.0B 128.0.0.0 191.255.0.0C 192.0.1.0 223.255.255.0D 224.0.0.0 239.255.255.255E 240.0.0.0 247.255.255.255

    Figura 3.2. A escala de valores decimais que correspondem a cada tipo de endereo IP.

    3.1. ENDEREOS DE REDES E DE BROADCAST

    A maior vantagem de codificar informaes de rede em endereos de interligao em redes o roteamento eficiente. Outra vantagem que os

    endereos de interligao em redes podem se referir a redes, assim como a hosts. Por conveno, hostid zero nunca atribudo a um host

    individual. Em vez disso, um endereo IP com hostid zero usado para se referir a essa prpria rede. O esquema de endereamento da interligao

    em redes inclui um endereo de difuso que se refere a todos os hosts da rede. De acordo com o padro, qualquer hostid que consista de todos os

    1s reservado para difuso. Em muitas tecnologias de rede, difuso pode ser to eficiente quanto as transmisses normais; em outras, difuso

    apoiada pelo software da rede, mas requer uma demora muito mais substancial do que uma transmisso nica. Algumas redes no aceitam

    qualquer difuso. Assim, ter um endereo de difuso de IP no assegura a disponibilidade ou a eficincia da entrega de difuso.

    Um endereo de difuso direcionado pode ser interpretado sem ambivalncia em qualquer etapa de uma interligao em redes porque identifica, de

    modo nico, a rede de destino, alm de especificar difuso naquela rede. Os endereos de difuso direcionados fornecem um poderoso mecanismo

    que permite a um sistema remoto enviar um pacote nico que ser transmitido por difuso na rede especificada. Do ponto de vista de

    endereamento, a principal desvantagem da difuso direcionada que ela requer conhecimento do endereo da rede. Outra forma de endereo de

    difuso, denominada endereo de difuso limitado ou de rede local, fornece um endereo de difuso para a rede local, independente do endereo

    atribudo de IP. Consiste em trinta e dois 1s. Um host pode usar os endereos de difuso limitados coo parte de um procedimento padro antes que

    ele aprenda seu endereo de IP ou o endereo para a rede local. Entretanto, uma vez que o host aprenda o endereo correto de IP para a rede local,

    ele deve usar difuso direcionada.

    Em geral, o software da interligao em redes interpreta os campos que consistem em 0s (zeros) para significar este. Assim, um endereo de IP

    com hostid igual a zero refere-se a este host e outro de netid igual a zero refere-se a esta rede. Usar netid zero especialmente importante nascircunstncias em que um host deseja comunicar-se em uma rede, mais ainda no sabe o endereo IP dela. O host usa a netid zero

    temporariamente, e outros hosts da rede interpretam o endereo como esta rede.

  • 8/6/2019 Conhecendo o TCP IP

    14/48

    TCP/IP

    Kleper Gomes

    - 14 -

    3.2. ENDEREO DE LOOPBACK

    A tabela da Figura 3.2 mostra que nem todos os endereos possveis foram atribudos a classes. Por exemplo, o endereo 127.0.0.0, num valor da

    escala da classe A, reservado para loopback, e utilizado no teste TCP/IP e para a comunicao na mquina local. Quando algum programa usa o

    endereo de loopback como destino, o software de protocolo retorna os dados sem enviar o trfego atravs de qualquer rede. Um pacote enviado a

    um endereo 127 da rede no deve aparecer em nenhuma rede. Alm disso, um host ou um roteador nunca deve difundir informaes sobre

    roteamento ou alcance para o nmero de rede 127; este no um endereo de rede.

    3.3. PONTOS FRACOS NO ENDEREAMENTO

    Codificar informaes de rede em um endereo pode ter suas desvantagens. A mais bvia delas que os endereos referem-se s conexes de

    redes, no ao host: se um host se move de uma rede para outra, seu endereo IP deve mudar.

    Outra falha do esquema de endereamento que, quando qualquer rede tipo C cresce alm de 255 hosts, deve ter seu endereo mudado para um

    endereo tipo B. Apesar de isto parecer um problema menor, mudar endereos de redes pode tomar muito tempo e ser difcil para depurar. Coo

    muitos softwares no so projetados para trabalhar com endereos mltiplos para a mesma rede fsica, os administradores no podem planejar uma

    transio tranqila, na qual introduzam novos endereos lentamente. Ao contrrio, devem interromper o uso de um endereo de rede, mudar os

    endereos de todas as mquinas e, ento, recuperar a comunicao usando o novo endereo de rede.

    Saber apenas um endereo de IP, para determinado destino, talvez no seja suficiente; pode ser impossvel alcanar o destino usando tal endereo.

    Considere o exemplo da interligao em redes mostrado na Figura 3.3. Nesta figura, dois hosts, A e B, conectam-se rede 1 quase sempre se

    comunicam diretamente usando aquela rede. Assim, os usurios do host A normalmente devem referir-se ao host B usando endereo IP I3. Existe

    outro caminho de A at B, atravs do roteador R, e usado sempre que A envia um pacote com endereo IP I 5 (endereo de B na rede 2). Agora,

    suponha que a conexo de B para a rede 1 falhe, mas a mquina em si continue trabalhando. Os usurios em A, que especificam endereos IP I 3,

    no alcanam B apesar de os usurios que especificam endereos I5 poderem alcanar.

    A B

    REDE 1

    REDE 2

    I1

    I4

    I2 I3

    I5

    R

    Figura 3.3. Um exemplo de interligao em redes com um host de multi-homed, B, que indica um problema com o esquema de endereamento IP.Se a interface I3 desconectada, A deve usar o endereo I5 para alcanar B, enviando pacotes atravs do roteador R.

  • 8/6/2019 Conhecendo o TCP IP

    15/48

    TCP/IP

    Kleper Gomes

    - 15 -

    3.4. UM EXEMPLO

    Para esclarecer o esquema de endereamento IP, considere um exemplo de duas redes de Universidades conectadas IBPI-NET. A Figura 3.4

    mostra os endereos de redes e ilustra como os roteadores conectam redes entre si.

    UMC(Ethernet)128.10.0.0

    IBPI-NET

    10.0.0.0

    UNICSUL

    (Token)192.5.48.0

    ROTEADORES

    Figura 3.4. A conexo lgica de duas redes ao provedor IBPI-NET.

    O exemplo mostra trs redes e os nmeros de rede que lhes foram designados: a IBPI-NET (10.0.0.0), a UMC (128.10.0.0) e a UNICSUL

    (192.5.48.0). De acordo com a tabela da F igura 3.2, os endereos tm classes A, B e C, respectivamente.

    A Figura 3.5 mostra as mesmas redes com host, e endereos Internet designados para cada conexo de rede. Quatro hosts cognominados HOST1,

    HOST2, HOST3 e HOST4 acoplam-se s redes; ROUTER1 um roteador que conecta a IBPI-NET e a rede token ring (UNICSUL), e ROUTER2

    um roteador que conecta a rede UNICSUL Ethernet (UMC). O HOST2 tem conexes tanto na Ethernet quanto na rede token ring, podendo, assim,

    alcanar destinos diretamente em qualquer rede. Apesar de um host de multi-homed, como HOST2, poder ser configurado para rotear pacotes entre

    as duas redes, a maioria dos sites usa computadores dedicados como roteadores, a fim de evitar sobrecarregar sistemas de computao

    convencionais com o processamento requerido pelo roteamento. Na figura, um roteador dedicado, ROUTER2 , executa a tarefa de rotear trfego

    entre a Ethernet e as redes token ring.

  • 8/6/2019 Conhecendo o TCP IP

    16/48

    TCP/IP

    Kleper Gomes

    - 16 -

    Host

    2

    Host

    3

    Host

    4

    UMC (Ethernet)

    128.10.0.0

    128.10.2.3 128.10.2.8 128.10.2.26

    Host

    1

    UNICSUL

    (Token)

    192.5.48.0

    192.5.48.3

    192.5.48.1

    192.5.48.6 10.0.0.37

    Router1Router2

    192.5.48.7

    128.10.2.70IBPI-NET

    Figura 3.5. Exemplo de designao de endereos IP para roteadores e hosts acoplados a trs redes da figura anterior.

    4. PROTOCOLOS

    Os protocolos so os padres que especificam como os dados so apresentados ao serem transmitidos de uma mquina para outra. Os protocolos

    representam para a comunicao computadorizada o que a linguagem de programao para a computao.

    Os complexos sistemas de comunicao de dados no usam um nico protocolo para tratar com todas as tarefas de transmisso. Ao contrrio,

    requerem uma pilha de protocolos cooperativos, algumas vezes chamados famlia de protocoloou pilha de protocolo. Para compreender a razo,

    vejamos os problemas que surgem quando as mquinas se comunicam atravs de uma rede de dados:

    Falha de hardware. Um host ou roteador pode falhar tanto porque o hardware falha como porque o sistema operacional entra em colapso. Um

    enlace de transmisso de rede pode falhar ou ser desconectado acidentalmente. O software de protocolo necessita detectar tais falhas e

    recuperar-se delas, se possvel.

    Congestionamento de redes. Mesmo quando todo o hardware e software operam corretamente, as redes tm capacidade finita que pode ser

    ultrapassada. Os protocolos precisam encontrar formas para que uma mquina em congestionamento possa suprimir o excesso de trfego.

    Demora ou perda de pacotes. Algumas vezes, os pacotes demoram muito ou so perdidos. Os protocolos precisam aprender sobre as falhas

    ou adaptar-se a longas demoras.

    Danificao de dados. Interferncia eltrica ou magntica ou falhas de hardware podem causar a transmisso de erros que danificam os

    contedos dos dados transmitidos. Os protocolos necessitam detectar e recuperar tais erros.

    Duplicao de dados ou erros seqenciais. Redes que oferecem rotas mltiplas podem transmitir dados fora de seqncia ou podem transmitir

    duplicatas de pacotes. Os protocolos necessitam reorganizar os pacotes e remover algumas duplicatas.

  • 8/6/2019 Conhecendo o TCP IP

    17/48

    TCP/IP

    Kleper Gomes

    - 17 -

    4.1. MODELO DA DIVISO EM CAMADAS OSI

    Existe um modelo desenvolvido pela ISO (International Standards Organization) usado para descrever a estrutura e funcionamento dos protocolos de

    comunicao de dados denominado Modelo de Referncia OSI (Open Systems Interconnect). A base deste modelo a diviso da complexidade

    do projeto organizando a rede em camadas, com nveis de abstrao diferentes definindo uma pilha de protocolos. Ele contm sete camadas, sendo

    cada uma, responsvel por oferecer servios s camadas superiores de uma forma transparente, ou seja, as demais camadas no precisam saber

    de detalhes da implementao do servio implementado nesta camada.

    Camada Funcionalidade7 Aplicativo6 Apresentao5 Sesso

    4 Transporte3 Rede2 Enlaces de Dados1 Conexo Fsica

    Figura 4.1. Modelo OSI de referncia das sete camadas para o protocolo.

    Descrio bsica das camadas do modelo OSI:

    Camada fsica. Especifica um padro para a interconexo fsica entre hosts e comutadores de pacote de rede, e tambm os procedimentos

    usados para transferir pacotes de uma mquina para outra.

    Camada de enlaces de dados. Especifica como os dados transitam entre um comutador de pacote e um host ao qual est conectado. Define oformato dos quadros e especifica como as duas mquinas reconhecem os limites do quadro. J que a transmisso de erros pode destruir os

    dados, o protocolo de nvel inclui a deteco de erro, permitindo que as duas saibam quando a transferncia de um quadro foi bem-sucedida.

    Camada de rede. Contm a funcionalidade que completa a definio da interao entre o host e a rede. Denominado camada de rede ou sub-

    rede de comunicao, esse nvel define a unidade bsica de transferncia na rede e inclui os conceitos de endereamento e roteamento de

    destino.

    Camada de transporte. Garante que o destino recebe os dados extamente da forma que eles tenham sido mandados. Para isso ela tambm

    oferece servios com conexo e sem conexo, como a camada de redes, mas estes so melhorados. A camada de rede faz parte da sub-rede

    de comunicao, pertence concessionria e pode variar de uma rede para outra. Com a camada de transporte possvel rodar vrios

    programas de aplicao sobre redes diferentes, uma vez que se utiliza primitivos padres da camada de transporte.

    Camada sesso. Permite que os usurios estabeleam uma sesso, ou seja, um ambiente iniciado a partir de uma conexo e que permite a

    transferncia organizada de dados. Alm disso, gerencia os dilogos, ou seja, o controle de quem deve ser a vez de conversar. Existem

    conexes full-duplex, onde os dados se movem nos dois sentidos simultaneamente, e half-duplex, onde somente um lado fala a cada vez.

    Camada de apresentao. Cuida dos problemas relativos a representao dos dados transmitidos, como converso, criptografia e

    compresso.

  • 8/6/2019 Conhecendo o TCP IP

    18/48

    TCP/IP

    Kleper Gomes

    - 18 -

    Camada de aplicativo. Contm os programas com os quais o usurio interfaceia mais diretamente. Alguns desses programas tornaram-seextremamente teis e acabaram por definir uma srie de padronizaes. Entre os exemplos possveis esto: correio eletrnico, transferncia

    de arquivos, acessos a arquivos remotos, entre outros.

    4.2. MODELO DA DIVISO EM CAMADAS TCP/IP

    O software TCP/IP organizado em quatro camadas conceituais construdas em uma quinta camada de hardware. A Figura 4.2 mostra as camadas

    conceituais, assim como a forma dos dados medida que passa entre elas.

    Camada Conceitual Objetos Passados entre Camadas

    Aplicativo Mensagens ou Fluxos

    Transporte Pacotes de Protocolos de Transporte

    Inter-rede Datagramas IP

    Interface de Redes Quadros de Redes Especficas

    Hardware

    Figura 4.2. As quatro camadas conceituais do software TCP/IP e a forma dos objetos que passam entre elas.

    Camada de aplicativos. No nvel mais alto, os usurios rodam programas aplicativos que acessam servios disponveis atravs de uma

    interligao em redes TCP/IP. Um aplicativo interage com um dos protocolos do nvel de transporte para enviar ou receber dados. Cada

    programa aplicativo escolhe o estilo de transporte necessrio, que tanto pode ser uma seqncia de mensagens individuais ou um stream

    contnuo de bytes. O programa aplicativo passa, para o nvel de transporte, os dados na forma adequada, para que possam, ento, sertransmitidos.

    Camada de Transporte. A primeira funo da camada de transporte prover a comunicao de um programa aplicativo para outro. Tal

    comunicao sempre chamada fim-a-fim. A camada de transporte pode regular o fluxo de informaes. Ela pode fornecer transporte

    confivel, assegurando que os dados cheguem sem erros e em seqncia. Para isso, o protocolo de transporte faz com que o lado receptor

    envie confirmaes e o lado transmissor retransmita pacotes perdidos. O software da camada de transporte divide o fluxo de dados

    transmitidos em pequenas partes (algumas vezes chamadas pacotes) e passe cada pacote, juntamente com o endereo de destino, camada

    seguinte para ser transmitido.

    Camada Internet. Como vimos, a camada da Internet trata das informaes de uma mquina para outra. Aceita um pedido para enviar um

    pacote originrio da camada de transporte juntamente com um identificao da mquina para a qual o pacote deve ser enviado. Encapsula opacote em um datagrama IP, preenche o cabealho do datagrama, usa o algoritmo de roteamento para decidir se entrega o datagrama

    diretamente ou o envia para um roteador e passa o datagrama para a interface de rede apropriada para transmisso. A camada Internet

    tambm lida com datagramas de entrada, verificando sua validade, e usa o algoritmo de roteamento para decidir se o datagrama deve ser

    processado no local ou se deve ser enviado. Para os datagramas endereados mquina local, o software da camada de interligao em

    redes apaga o cabealho do datagrama e, entre vrios protocolos de transporte, escolhe aquele que vai cuidar do pacote.

  • 8/6/2019 Conhecendo o TCP IP

    19/48

    TCP/IP

    Kleper Gomes

    - 19 -

    Camada de interface de rede. O nvel mais baixo do software TCP/IP compreende uma camada da interface de rede responsvel pelaaceitao de datagramas IP e por sua transmisso atravs de uma rede especfica. Uma interface de rede pode consistir em um driver de

    dispositivo ou em um subsistema complexo que usa seu prprio protocolo de enlace de dados.

    4.3. PROTOCOLOS DE TRANSPORTE

    4.3.1. UDP (User Datagram Protocol)

    Na pilha de protocolos TCP/IP, o UDP, fornece o mecanismo principal utilizado pelos programas aplicativos para enviar datagramas a outros

    programas iguais. O UDP fornece um servio de transmisso sem conexo, no-confivel, usando o IP para transportar mensagens entre mquinas.

    Usa o IP para transportar mensagens, porm acrescenta a habilidade de distinguir entre mltiplos destinos em um certo host.

    Cada mensagem UDP conhecida como um datagrama de usurio, que consiste em duas partes: um cabealho UDP e uma rea de dados UDP.

    Como a Figura 4.3 mostra, o cabealho est dividido em quatro campos de 16 bits que especificam a porta da qual a mensagem foi enviada, a porta

    qual a mensagem destinada, o comprimento da mensagem e a soma de verificao UDP.

    0 1 2 3 4 8 16 24 31PORTA DE ORIGEM UDP PORTA DE DESTINO UDP

    COMPRIMENTO DE MENSAGEM UDP SOMA DE VERIFICAO UDP

    DADOS

    ...

    Figura 4.3. O formato dos campos em um datagrama UDP.

    Os campos PORTA DE ORIGEM e PORTA DE DESTINO contm os nmeros de porta do protocolo UDP de 16 bits usados para demultiplexar os

    datagramas entre os processos que esperam para receb-los. A PORTA DE ORIGEM opcional. Quando usada, especifica a porta para a qual

    devem ser enviadas as respostas; se no usada, dever ser zero.

    O campo COMPRIMENTO contm uma contagem de octetos no datagrama UDP, incluindo o cabealho UDP e os dados de usurio. Assim, o valor

    mnimo para COMPRIMENTO oito, que o comprimento apenas do cabealho.

    A soma de verificao UDP opcional e no precisa ser usada; um valor de zero no campo SOMA DE VERIFICAO significa que a soma de

    verificao no foi calculada. Os projetistas resolveram tornar opcional a soma de verificao a fim de permitir que as implementaes operassem

    com pouco overhead ao usar UDP atravs de uma rede local altamente confivel. O IP no calcula uma soma de verificao na parte dos dados de

    um datagrama IP, portanto, a soma de verificao oferece o nico modo de assegurar que os dados tenham chegado intactos e possam ser usados.

    A camada IP responsvel apenas pela transferncia de dados entre um par de hosts em uma interligao em redes, enquanto a camada UDP

    responsvel apenas pela diferenciao entre mltiplas origens ou destinos em um host. Desse modo, apenas o cabealho IP identifica os hosts de

    origem e destino; apenas a camada UDP identifica as portas de origem e destino em um host.

  • 8/6/2019 Conhecendo o TCP IP

    20/48

    TCP/IP

    Kleper Gomes

    - 20 -

    O software colocado em cada camada de uma hierarquia de protocolo deve ser capaz de multiplexar ou demultiplexar mltiplos objetos da camadaseguinte. O software UDP apresenta outro exemplo de multiplexao e demultiplexao. Aceita datagramas UDP de muitos programas aplicativos e

    os passa ao IP, para transmisso, e aceita datagramas UDP recebidos de IP e os passa ao programa aplicativo apropriado. Conceitualmente, toda a

    multiplexao e demultiplexao entre o software UDP e os programas aplicativos ocorre atravs do mecanismo da porta. Na prtica, cada programa

    aplicativo deve negociar com o sistema operacional a fim de obter uma porta de protocolo e um nmero de porta correspondente, antes que ele

    possa enviar um datagrama UDP.

    O modo mais simples de conceber uma porta UDP uma fila. Na maioria das implementaes, quando um programa aplicativo negocia com um

    sistema operacional para usar determinada porta, o sistema operacional cria uma fila interna que pode reter as mensagens que esto chegando.

    Freqentemente, o aplicativo pode especificar ou mudar o tamanho da fila. Quando o UDP recebe um datagrama, verifica se o nmero de porta de

    destino confere com uma das portas atualmente em uso. Se no conferir, envia uma mensagem de erro de porta no-atingida e descarta o

    datagrama. Se for encontrada uma correspondncia, o UDP enfileira o novo datagrama na porta onde o programa aplicativo pode acess-lo.Naturalmente, ocorrer um erro se a porta estiver cheia e o UDP descartar o datagrama recebido.

    O UDP um protocolo mais rpido do que o TCP, pelo fato de no verificar o reconhecimento das mensagens enviadas. Por este mesmo motivo,

    no confivel como o TCP.

    4.3.2. TCP (Transmission Control Protocol)

    Em um nvel mais baixo, as redes de comunicao fornecem uma entrega de pacotes no-confivel, os pacotes podem ser perdidos ou danificados

    quando erros de transmisso interferem nos dados. As redes que roteiam pacotes dinamicamente podem entreg-los fora de ordem, entreg-los

    aps um intervalo substancial, ou entregar reprodues.

    Em um nvel mais alto, os programas aplicativos freqentemente precisam enviar grandes volumes de dados de um computador a outro. A utilizao

    de um sistema de transmisso sem conexo e no-confivel torna-se tediosa e irritante, e requer que os programadores criem deteco e

    recuperao de erros em cada programa aplicativo. Um dos objetivos da pesquisa de protocolos de rede foi encontrar solues de fins gerais para

    problemas de transmisso confivel de streams de pacotes, possibilitando aos especialistas criar um nico protocolo para transmisso de stream de

    dados que todos os programas aplicativos pudessem utilizar.

    O servio definido pelo TCP, o servio de stream confivel to importante que toda a pilha de protocolos citada como TCP/IP. O TCP um

    protocolo de comunicao, e no um software, o protocolo especifica o formato dos dados e das confirmaes que os dois computadores trocam

    para oferecer uma transferncia confivel e, tambm, os procedimentos de que se valem os computadores para assegurar que os dados cheguem

    corretamente.

    O TCP pode ser utilizado com uma variedade de sistema de transmisso de pacotes, inclusive o servio de transmisso de datagramas IP. O TCP

    pode, por exemplo, ser implementado para utilizar linhas telefnicas por discagem, rede local, rede de fibra ptica de alta velocidade, ou uma rede de

    longas distncias de velocidade mnima. Na realidade, um dos pontos fortes do TCP a grande variedade de sistemas de transmisso que ele pode

    usar.

    O TCP posiciona-se acima do IP no esquema de diviso em camadas do protocolo, permite que programas aplicativos mltiplos, de determinada

    mquina, comuniquem-se simultaneamente, e ele demultiplexa o trfego TCP de entrada entre os programas aplicativos. Como o UDP, o TCP utiliza

  • 8/6/2019 Conhecendo o TCP IP

    21/48

    TCP/IP

    Kleper Gomes

    - 21 -

    nmeros de porta de protocolo para identificar o destino final em uma mquina. Porm, as portas TCP so muito mais complexas, porquedeterminado nmero delas no corresponde a um objeto nico. Ao contrrio, o TCP foi estruturado na abstrao de conexo, em que os objetos a

    serem identificados so conexes de circuito virtual, e no portas isoladas.

    A unidade de transferncia entre o software TCP de duas mquinas denominada segmento. Os segmentos so trocados para estabelecer

    conexes, transferir dados, enviar confirmaes, informar tamanhos de janelas e encerrar conexes. A Figura 4.4 mostra o formato do segmento

    TCP.

    0 1 2 3 4 8 16 24 31PORTA DE ORIGEM PORTA DE DESTINO

    NMERO DE SEQNCIA

    NMERO DO RECONHECIMENTOHLEN RESERVADO BITS DE CDIGO JANELA

    SOMA DE VERIFICAO PONTEIRO URGENTE

    OPES (SE HOUVER) ENCHIMENTO

    DADOS...

    Figura 4.4. O formato de um segmento TCP com o cabealho TCP seguido de dados.

    Cada segmento dividido em duas partes: um cabealho seguido de dados. O cabealho, conhecido como cabealho TCP, transporta a

    identificao esperada e as informaes de controle. Os campos PORTA DE ORIGEM e PORTA DE DESTINO contm os nmeros de portas TCP

    que identificam os programas aplicativos nas extremidades da conexo. O campo NMERO DE SEQNCIA identifica a posio no stream de bytes

    do transmissor dos dados no segmento. O campo NMERO DO RECONHECIMENTO identifica o nmero do octeto que a origem espera receber

    depois. Observe que o nmero seqencial refere-se ao stream que segue na mesma direo que o segmento, enquanto o nmero do

    reconhecimento refere-se ao stream que segue em direo oposta ao segmento.

    O campo HLEN contm um nmero inteiro que especifica o comprimento do cabealho do segmento, medido em mltiplos de 32 bits. Isso

    necessrio porque o campo OPES varia em comprimento, dependendo de quais opes foram includas. Assim, o tamanho do cabealho TCP

    varia de acordo com as opes selecionadas.

    Uma das idias mais importantes e complexas em TCP concentra-se na maneira como ele trata o timeout e a retransmisso. A exemplo de outro

    protocolos confiveis, o TCP espera que o destino envie confirmao toda vez que recebe novos octetos, com xito, do stream de dados. Sempre

    que envia um segmento, o TCP inicia um temporizador e espera uma confirmao. Se o temporizador terminar antes que os dados do segmento

    tenham sido confirmados, o TCP aceita que esse segmento foi perdido ou destrudo e o retransmite. O software TCP precisa aceitar as duas grandes

    diferenas entre o tempo necessrio para atingir vrios destinos e as alteraes necessrias no tempo para atingir um determinado destino, de

    acordo com a variao de carga do trfego. O TCP monitora o desempenho de cada conexo e deduz valores razoveis para timeout. medida que

    o desempenho de uma conexo muda, o TCP revisa seu valor de timeout (ou seja, adapta-se mudana).

    O congestionamento uma condio de retardo longo causado por uma sobrecarga de datagramas em um ou mais pontos de comutao (p. ex., em

    roteadores). Quando ocorre um congestionamento, os intervalos aumentam e o roteador comea a enfileirar datagramas at que possa distribu-los.

    De acordo com a especificao, o campo HLEN o deslocamento dos dados da rea situada dentro do segmento.

  • 8/6/2019 Conhecendo o TCP IP

    22/48

    TCP/IP

    Kleper Gomes

    - 22 -

    Precisamos lembrar que cada roteador possui uma capacidade limitada de armazenamento e que os datagramas concorrem para essearmazenamento. Na pior hiptese, o nmero total de datagramas que chega ao roteador congestionado cresce at que o roteador alcance a

    capacidade e comece a eliminar datagramas. Lamentavelmente, a maioria dos protocolos de transporte utiliza timeout e retransmisso, de modo que

    reajam ao aumento do retardo com a retransmisso de datagramas. As retransmisses agravam o congestionamento em vez de o amenizarem. Se

    no for verificado, o aumento do trfego produzir um aumento do retardo, provocando uma elevao do trfego, e assim por diante, at que a rede

    torne-se intil; mas os protocolos de transporte, como o TCP, podem evitar o congestionamento reduzindo automaticamente as taxas de transmisso

    sempre que ocorrerem retardo. Logicamente, os algoritmos para evitar congestionamentos precisam ser criados cuidadosamente porque, mesmo em

    condies operacionais normais, uma interligao em redes exibir grande variao de retardo de ida e volta.

    4.4. PROTOCOLOS DE REDE

    4.4.1. IP (Internet Protocol)

    O servio mais importante de uma rede consiste em um sistema de entrega de pacotes. Tecnicamente, o servio definido como um sistema de

    transmisso sem conexo, e no-confivel; anlogo ao servio oferecido por hardwares de redes. O servio conhecido como no-confivel

    porque a entrega no garantida. O pacote pode ser perdido, reproduzido, atrasar-se ou ser entregue com problemas, mas o servio no detectar

    tais condies, nem informar isso ao transmissor nem ao receptor. Ele denominado sem conexo porque cada pacote independente dos outros,

    uma seqncia de pacotes enviados de um computador a outro pode trafegar por caminhos diferentes, ou alguns podem ser perdidos enquanto

    outros so entregues.

    O protocolo que define o mecanismo de transmisso sem conexo e no-confivel conhecido como Internet Protocol. O IP oferece trs definiesimportantes:

    O protocolo IP define a unidade bsica de transferncia de dados utilizada atravs de uma interligao em redes TCP/IP, assim, ela especifica

    o formato exato de todos os dados medida que ela passa pela interligao em redes TCP/IP.

    O software IP desempenha a funo de roteamento, escolhendo um caminho por onde os dados sero enviados.

    O IP inclui um conjunto de regras que concentram a idia da entrega no-confivel de pacotes, que definem como os hosts e os roteadores

    devem processar os pacotes, como e quando as mensagens de erro devem ser geradas e as condies segundo as quais os pacotes podem

    ser descarregados.

    Numa rede fsica, a unidade de transferncia um quadro que contm um cabealho e dados, onde o cabealho fornece informaes como

    endereo de origem e de destino (fsicos). A interligao em redes denomina sua unidade bsica de transferncia de um datagrama IP, que

    dividido em cabealho e reas de dados. A diferena que o cabealho do datagrama contm endereos IP, enquanto o quadro contm os

    endereos fsicos.

  • 8/6/2019 Conhecendo o TCP IP

    23/48

    TCP/IP

    Kleper Gomes

    - 23 -

    A Figura 4.5 mostra a organizao dos campos em um datagrama:

    0 1 2 3 4 8 16 24 31VERS HLEN TIPO DE SERVIO COMPRIMENTO TOTAL

    IDENTIFICAO FLAGS DESLOCAMENTO DO FRAGMENTO

    TEMPO DE VIDA PROTOCOLO VERIFICAO DA SOMA DO CABEALHO

    ENDEREO IP DE ORIGEM

    ENDEREO IP DE DESTINO

    OPES IP (SE HOUVER) PADDING

    DADOS...

    Figura 4.5. Formato de um datagrama da Internet, a unidade bsica de transferncia em um interligao em redes TCP/IP.

    J que o processamento de datagramas se d em softwares, o contedo e o formato no so retringidos por quaisquer hardwares. O primeiro campo

    de quatro bits de um datagrama (VERS), por exemplo, contm a verso do protocolo IP utilizada para criar o datagrama. Ele utilizado para verificar

    se o transmissor, o receptor e quaisquer roteadores existentes entre eles concordam quanto ao formato do datagrama. Todo software IP precisa

    verificar o campo de verso antes de processar um datagrama, para assegurar-se de que ele se adapta ao formato que o software espera. Se os

    padres mudarem, as mquinas rejeitaro datagramas com verses de protocolo diferentes dos seus, impedindo que eles deturpem o contedo do

    datagrama com um formato desatualizado. A verso atual do protocolo IP a quatro.

    O campo de comprimento do cabealho (HLEN), tambm de quatro bits, fornece o comprimento do cabealho do datagrama medido em palavras de

    32 bits. Todos os campos do cabealho contm um comprimento fixo, exceto para OPES IP e os campos correspondentes PADDING. O

    cabealho mais comum, que no contm qualquer opo e nenhum preenchimento, mede 20 octetos e o campo de comprimento de cabealho

    igual a cinco.

    O campo COMPRIMENTO TOTAL, fornece o comprimento do datagrama IP medido em octetos, incluindo octetos no cabealho e nos dados. O

    tamanho da rea de dados pode ser calculado subtraindo-se de COMPRIMENTO TOTAL o comprimento do cabealho (HLEN). J que o campo

    COMPRIMENTO TOTAL, possui 16 bits de coprimento, o maior tamanho possvel para um datagrama IP 216 ou 65.535 octetos. Na maioria do

    aplicativos, essa no uma limitao rgida. No futuro pode tornar-se mais importante, se as redes de velocidade mais alta puderem transportar

    pacotes de dados maiores que 65.535 octetos.

    Trs campos no cabealho do datagrama, IDENTIFICAO, FLAGS e DESLOCAMENTO DO FRAGMENTO, controlam a fragmentao e a

    remontagem de datagramas. O campo IDENTIFICAO contm um nmero inteiro nico que identifica o datagrama, sua finalidade principal

    permitir que o destino saiba quais datagramas esto chegando e a que datagramas pertencem. O campo DESLOCAMENTO DO FRAGMENTO responsvel pela remontagem do datagrama, o destino precisa obter todos os fragmentos que iniciam com o fragmento que possui deslocamento

    zero at o fragmento de maior deslocamento. O campo FLAGS controlam a fragmentao, define se o datagrama pode ou no ser fragmentado e se

    o destino reuniu todos os fragmentos.

    O campo TEMPO DE VIDA especifica quanto tempo, em segundos, o datagrama pode permanecer no sistema de interligao em redes, os

    roteadores e os hosts que processam datagramas precisam decrementar o campo TEMPO DE VIDA medida que o tempo passa e remover o

    datagrama da interligao quando seu tempo expira. PROTOCOLO especifica qual protocolo de alto nvel foi utilizado para criar a mensagem que

    est sendo transportada na rea DADOS do datagrama.

  • 8/6/2019 Conhecendo o TCP IP

    24/48

    TCP/IP

    Kleper Gomes

    - 24 -

    O campo VERIFICAO DA SOMA DO CABEALHO assegura a integridade dos valores de cabealho. A verificao IP formada com o

    tratamento do cabealho como uma seqncia de nmeros inteiros de 16 bits (na ordem de bytes da rede), reunindo-os com uma aritmtica

    complemento de um, e a seguir considerando o complemento de um como o resultado. Para a finalidade de calcular a soma de verificao,

    considera-se que o campo VERIFICAO DA SOMA DO CABEALHO contenha zero.

    Os campos ENDEREO IP DE ORIGEM e ENDEREO IP DE DESTINO contm endereos IP de 32 bits do transmissor do datagrama e do receptor

    desejado. Embora o datagrama possa ser roteado atravs de muiots roteadores intermedirios, os campos da origem e destino nunca mudam; eles

    especificam os endereos IP da origem e do ltimo destino.

    O campo denominado DADOS mostra o incio da rea de dados do datagrama, seu comprimento depende, logicamente, do que est sendo enviado

    no datagrama. O campo OPES IP que se segue ao endereo de destino no necessrio em todo datagrama, e as opes so includasprincipalmente para testes ou depurao da rede. Contudo, o processamento de opes parte integrante do protocolo IP; assim, todas as

    implementaes de padres precisam inclu-lo. O campo PADDING depende das opes selecionadas. Ele representa bits contendo zero e que

    podem ser necessrios para garantir que o cabealho do datagrama se estenda at o mltiplo exato de 32 bits.

    O objetivo do IP fornecer uma rede virtual que abranja vrias redes fsicas e oferea um servio de entrega de datagrama sem conexo. O

    algoritmo de roteamento IP deve escolher a forma pela qual enviar um datagrama atravs de vrias redes fsicas. O roteamento se classifica em

    dois tipos: encaminhamento direto e encaminhamento indireto. O encaminhamento direto a transmisso de um datagrama, atravs de uma

    nica rede fsica para outra mquina. Duas mquinas s podem executar o encaminhamento direta se ambas se conectarem diretamente a uma

    mesma rede fsica (p. ex., uma nica Ethernet). O encaminhamento indireto ocorre quando o destino no se encontra na mesma rede fsica, forando

    o transmissor a passar o datagrama para um roteador executar a entrega.

    O algoritmo de roteamento IP pode ser descrito da seguinte forma:

    Extrai o endereo IP de destino, D, do datagrama e calcule o prefixo da rede, N;Se N corresponder com qualquer endereo de rede conectado

    diretamente entregue datagrama ao destino D atravs desta rede(Isto envolve converter D para um endereo fsico, encapsular o datagrama e enviar o quadro.)

    Se a tabela contiver uma rota especfica do host para Denvie o datagrama para o prximo passo da rota especificada na tabela

    Se a tabela contiver uma rota para a rede Nenvie o datagrama para o prximo passo da rota especificada na tabela

    Se a tabela contiver uma rota padroenvie o datagrama para o roteador padro especificado na tabela

    Caso contrrio declare um erro de roteamento;

    O endereo IP selecionado pelo algoritmo de roteamento IP conhecido como endereo do prximo passo da rota, porque indica para onde o

    datagrama deve ser enviado (mesmo que no seja o ltimo destino). O software da interface de rede vincula o endereo do prximo passo da rota a

    um endereo fsico, forma um quadro usando aquele endereo fsico, coloca o datagrama na parte de dados do quadro e envia o resultado. Aps

    usar o endereo do prximo passo da rota para encontrar um endereo fsico, o software de interface da rede descarta o endereo do prximo passo

    da rota.

  • 8/6/2019 Conhecendo o TCP IP

    25/48

    TCP/IP

    Kleper Gomes

    - 25 -

    Quando um datagrama IP chega a um host, o software de interface da rede entrega-o ao software IP para processamento. Se o endereo de destinodo datagrama corresponder ao endereo de IP do host, o software IP do host aceita o datagrama e passa-o ao software apropriado, do protocolo de

    nvel mais alto, para posterior processamento. Se no houver correspondncia com o IP de destino, o host deve descartar o datagrama (ou seja, os

    hosts ficam proibidos de tentar encaminhar datagramas acidentalmente roteados para a mquina errada).

    O algoritmo de roteamento da interligao em redes orientado por tabela e usa apenas endereos IP. Embora seja possvel para uma tabela de

    roteamento conter um endereo de destino especfico ao host, a maior parte dessas tabelas contm apenas endereos de rede, mantendo pequenas

    as tabelas de roteamento. O uso de uma rota padro tambm pode manter pequena a tabela de roteamento, principalmente para hosts que s

    conseguem acessar um roteador.

    4.4.2. ICMP (Internet Control Message Protocol)

    Para permitir que os roteadores de uma interligao em redes informem os erros ou forneam informaes sobre ocorrncias inesperadas, os

    projetistas acrescentaram aos protocolos TCP/IP um mecanismo de mensagem para fins especficos, conhecido como ICMP Internet Control

    Message Protocol (Protocolo Internet de Mensagem de Controle), considerado uma parte necessria do IP e deve ser includo em cada

    implementao de IP.

    O ICMP permite que os roteadores enviem mensagens de erro ou de controle aos outros roteadores ou aos hosts; possibilita a comunicao entre o

    software do IP em uma mquina, e o software de IP em outra. Um host pode usar o ICMP para se corresponder com um roteador ou com outro host.

    A principal vantagem de permitir que os hosts usem ICMP que isto fornece um mecanismo nico usado para todas as mensagens de controle de

    informao. Do ponto de vista tcnico, o ICMP um mecanismo para relatar erros. Fornece um meio pelo qual os roteadores que encontram erros

    possam lev-los ao conhecimento do transmissor.

    As mensagens ICMP so geradas por gateways na rota de transporte de um datagrama ou pela estao de destino. Quando ocorre algum problema

    previsto pelo ICMP. A mensagem ICMP descrevendo a situao preparada e entregue camada IP (Figura 4.6), que adiciona mensagem ICMP

    o cabealho IP e envia ao emissor do datagrama com o qual ocorreu o problema.

  • 8/6/2019 Conhecendo o TCP IP

    26/48

    TCP/IP

    Kleper Gomes

    - 26 -

    Mensagem ICMP

    Camada IP Cabealho IP Dados IP

    Camada Inferior Cabealho do Quadro Dados do Quadro

    Figura 4.6. Encapsulamento da mensagem ICMP em um Datagrama IP.

    4.4.3. ARP (Address Resolution Protocol)

    Os endereos IP so atribudos independente de um endereo de hardware fsico de uma mquina. Para enviar um pacote de interligao em redes

    atravs de uma rede fsica de um computador para outro, o software de rede deve mapear o endereo IP em um endereo fsico de hardware e usar

    o endereo de hardware para transmitir o quadro. Se os endereos de hardware forem menores do que os endereos IP, um mapeamento direto

    pode ser estabelecido tendo o endereo fsico da mquina codificado em seu endereo IP. De outra maneira, os mapeamentos devem ser

    executados dinamicamente. O ARP executa a converso de endereo dinmica, usando somente o sistema de comunicao de rede de baixo nvel.

    ARP permite que as mquinas convertam endereos sem manter um registro permanente das vinculaes.

    Uma mquina usa ARP para descobrir o endereo de hardware de outra mquina, difundindo uma solicitao ARP. A solicitao contm o endereo

    IP da mquina para o qual um endereo de hardware requisitado. Todas as mquinas de uma rede recebem uma solicitao ARP. Se a solicitao

    combina com um endereo IP de mquina, a mquina responde enviando uma resposta que contm o endereo de hardware necessitado. As

    respostas so dirigidas para uma mquina; no so transmitidas por difuso.

    Para tornar ARP eficiente, cada mquina trata as vinculaes entre endereos fsicos IP. Como o trfego de interligao em redes geralmente

    consiste em uma seqncia de interaes entre pares de mquinas, o cache elimina muitas solicitaes de difuso ARP.

    4.4.4. RARP (Reverse Address Resolution Protocol)

    Este protocolo destina-se soluo do problema inverso ao resolvido pelo ARP. O problema RARP um host que no conhece o seu prprio

    endereo IP ou o de um outro host, mas possui o endereo fsico correspondente. O protocolo RARP permite que a partir do endereo fsico, seja

    obtido o endereo IP correspondente. Para que o RARP funcione, necessrio ao menos um servidor RARP, que possui informaes de

    mapeamento de todos os hosts da rede. Pode haver um ou vrios servidores RARP na mesma rede.

    A principal vantagem de possuir diversas mquinas funcionando como servidores RARP tornar o sistema mais confivel. Se um servidor estiver

    desativado, ou excessivamente sobrecarregado para responder, um outro responder solicitao. Assim, muito mais provvel que o servio

    esteja disponvel. A principal desvantagem de se utilizarem muitos servidores que quando uma mquina difunde uma solicitao RARP, a rede

    torna-se sobrecarregada se todos os servidores tentam responder. Em uma Ethernet, por exemplo, utilizar servidores RARP mltiplos torna mais

    provvel uma coliso.

  • 8/6/2019 Conhecendo o TCP IP

    27/48

    TCP/IP

    Kleper Gomes

    - 27 -

    Para evitar respostas mltiplas e simultneas, h pelos menos duas possibilidades, e ambas envolvem o aumento do intervalo entre as respostas:

    A cada mquina que faz solicitaes RARP atribudo um servidor principal. Em circunstncias normais, somente o servidor principal da

    mquina responde sua solicitao RARP. Todos os servidores que no sejam principais recebem a solicitao, mas apenas registram seu

    tempo de chegada. Se o servidor principal no estiver disponvel, a mquina original far um intervalo para aguardar uma resposta e, a seguir,

    difundir novamente a solicitao. Sempre que um servidor, que no seja o principal, receber uma segunda cpia de uma solicitao RARP em

    um curto espao aps a primeira, ele responde.

    A segunda soluo utiliza um esquema semelhante, mas tenta impedir que todos os servidores no-principais transmitam respostas

    simultaneamente. Cada mquina no-principal que receber uma solicitao calcula um intervalo aleatrio e, a seguir, envia uma resposta. Em

    circunstncias normais, o servidor principal responde imediatamente e com intervalos entre as respostas sucessivas, de modo que h pouca

    probabilidade de que cheguem ao mesmo tempo. Quando o servidor principal no est disponvel, a mquina solicitante sofre um pequenoretardo antes que uma resposta seja recebida. Escolhendo os intervalos com cuidado, o projetista assegura que as mquinas solicitantes no

    difundiram antes de receber uma resposta.

    5. ROTEAMENTO

    5.1. ROTEAMENTO BASEADO EM TABELAS

    Este algoritmo do protocolo IP utiliza uma tabela de roteamento que armazena informaes sobre como atingir cada sub-rede de rede internet.

    Sempre que a camada IP, em uma estao ou em um gateway, precisa transmitir um datagrama para uma estao que no est diretamente

    conectada mesma sub-rede, ela consulta a tabela de roteamento a fim de determinar o gatewaypara o qual esse datagrama deve ser enviado.

    A B E F

    C D

    128.10 129.7

    128.15

    128.15.1.1 128.15.1.3

    INTERNET

    HOST B

    Destino Roteamento

    128.10128.15

    129.7

    Default

    Conexo Direta

    Conexo Direta

    128.15.1.3

    128.15.1.1

    Figura 5.1. Tabela de Roteamento do Gateway B.

  • 8/6/2019 Conhecendo o TCP IP

    28/48

    TCP/IP

    Kleper Gomes

    - 28 -

    Tipicamente, a tabela de roteamento do IP contm entradas do tipo (N,G), onde N um endereo IP (endereo de destino) e G endereo IP doprximo gatewaypara atingir N. Essa tabela, portanto, s determina o prximo passo no caminho para um destinatrio. Nem a estao emissora

    nem o gateway conhecem a rota completa at a estao a estao destinatria. Vale ressaltar que as entradas dessa tabela s referenciam

    gatewaysque podem ser atingidos diretamente, isto , todos os gatewayslistados na tabela de roteamento de uma mquina M esto conectados s

    sub-redes fsicas nas quais a mquina M est conectada. Um exemplo de tabela de roteamento dado na Figura 5.1.

    A tabela de roteamento do IP pode conter informaes sobre todos os destinatrios de uma rede internet, j que a maioria das mquinas no teria

    espao em memria suficiente para isso Por esse motivo, so armazenados os endereos das sub-redes. Outra tcnica utilizada para minimizar o

    tamanho das tabelas a utilizao de rotas predefinidas (default) para o qual um datagrama deve ser enviado sempre que no for encontrada na

    tabela uma entrada especfica para o endereo IP destino. A utilizao de rotas predefinidas particularmente til em redes com um nico gateway,

    j que todas as demais sub-redes da rede Internetdevem ser atingidas mediante esse gateway.

    5.2. ALGORITMOS DE ROTEAMENTO

    O algoritmo de roteamento a tcnica utilizada pelos gatewayspara se localizarem mutuamente e para conseguirem comunicao com as diversas

    redes de uma rede Internet. A tabela de roteamento de um gateway atualizada a partir de informaes obtidas na execuo do algoritmo de

    roteamento utilizados na arquitetura TCP/IP: Vetor-Distncia (Vector-Distance) e Estado-do-Enlace (Link-State), que so discutidos a seguir.

    5.2.1. ROTEAMENTO VECTOR-DISTANCE

    Inicialmente, cada gatewaypossui uma tabela contendo uma entrada para cada sub-rede qual est conectado. A cada sub-rede especificada na

    tabela est associada a distncia entre a mesma e o gatewayque mantm a tabela. Esta distncia pode ser medida em hops(nmero de gatewaysaatravessar para atingir uma sub-rede) ou em retardo (tempo necessrio para a sub-rede).Inicialmente, os campos de distncia devem valer zero, pois

    somente as sub-redes s quais o gatewayest diretamente conectado so especificadas na tabela. Periodicamente, cada gatewayenvia uma cpia

    de sua tabela para todo o gatewayque possa atingir diretamente. O gatewayque recebe a tabela, a compara com a sua prpria e modifica esta

    ltima nos seguintes casos:

    se o gatewayemissor conhecer um caminho maios curto para determinada sub-rede, ou seja se a distncia apresentada na tabela do emissor

    for menor do que a da tabela do receptor;

    se o gatewayemissor apresentar uma sub-rede que o receptor no conhece, ou seja, se na tabela do emissor existir uma entrada que no est

    presente na tabela do receptor; esta entrada inserida na tabela do receptor;

    se uma rota que passa pelo emissor tiver sido modificada, ou seja, se a distncia associada a uma sub-rede que passa pelo emissor tiver

    mudado.

    Na atualizao dos campos de distncia da tabela do receptor, deve-se considerar a distncia entre os gatewaysemissor e receptor, (por exemplo,

    necessrio somar 1 no caso da mtrica baseada em hops). Vale lembrar que, para cada sub-rede especificada na tabela, existe associada um

    campo que indica o prximo gatewayna rota para essa sub-rede. A Figura 5.2 ilustra este tipo de roteamento.

  • 8/6/2019 Conhecendo o TCP IP

    29/48

    TCP/IP

    Kleper Gomes

    - 29 -

    O algoritmo simples e de fcil implementao; porm, em ambientes dinmicos, onde novas conexes surgem e outras so desativadas comfreqncia, a informao de atualizao propaga-se muito lentamente e, durante esse perodo de propagao, alguns gateways possuem

    informaes de roteamento inconsistentes. Alm disso, as mensagens de atualizao tornam-se enormes, pois so diretamente proporcionais ao

    nmero total de redes e gatewayspresentes na rede Internet(todos os gateways devem participar, seno o algoritmo no converge).

    A

    D

    B

    E

    C1 2

    3

    6

    5

    4

    Tabela do N A

    Destino Ligao Distncia

    A

    B

    C

    DE

    local

    1

    1

    31

    0

    1

    2

    12

    Figura 5.2. Roteamento Vector-Distncia.

    5.2.2. ROTEAMENTO LINK-STATE (Shortest Path First)

    Neste algoritmo, cada gatewaysdeve conhecer a topologia completa da rede Internet. Isto feito descrevendo-se os gatewaysinterconectados entre

    si por enlaces (links). Existe um enlace entre dois gatewaysse ambos puderem comunicar-se diretamente, ou seja se estiverem mesma rede fsica.

    Cada gatewayexerce duas funes principais. A primeira testar continuamente o estado dos enlaces com os gatewaysvizinhos. A segunda enviar periodicamente os dados de estado de seus enlaces a todos os outros gatewaysda rede Internet. O teste de estado realizado atravs do

    envio de mensagens curtas que exigem resposta. Se acontecer uma resposta, sob condies que variam segundo a implementao do protocolo, o

    enlace est ativo, seno est inativo. Os dados de estado indicam, simplesmente, se h possibilidade de comunicao entre dois gateways. .Estes

    dados so em geral enviados em modo difuso (broadcast) individualmente.

    Ao receber uma informao de estado, um gatewayatualiza seu mapa da rede Internetativado ou desativado os enlaces em questo e recalcula as

    rotas para todos os destinos possveis atravs do algoritmo Shortest-Path-First(SPF), de Dijskstra, aplicado topologia da rede Internet. A figura 5.3

    ilustra um exemplo deste tipo de roteamento.

    Em relao ao algoritmo Vector-Distance, o SPF possui diversas vantagens. O clculo das rotas realizado localmente, no dependendo de

    mquinas intermedirias. O tamanho das mensagens no depende do nmero de gatewaysdiretamente conectados ao gatewayemissor. Como asmensagens trafegam inalteradas a deteco de problemas torna-se mais fcil.

  • 8/6/2019 Conhecendo o TCP IP

    30/48

    TCP/IP

    Kleper Gomes

    - 30 -

    A

    D

    B

    E

    C1 2

    3

    6

    5

    4

    Tabela do N A

    Fonte Ligao Distncia

    A

    BACEB

    B

    CDEDE

    1

    23564

    Figura 5.3. Roteamento Link-State.

    Os algoritmos descritos