Arquitetura TCP/IP

ÍNDICE

1. INTRODUÇÃO.........................................................................................................................................................3 1.1. SERVIÇOS EM REDES......................................................................................................................................4 1.2. ESCOPO DA INTERNET....................................................................................................................................8 2. BÁSICO DE UMA REDE......................................................................................................................................11 2.1. WANS E LANS....................................................................................................................................................12 2.2. A TECNOLOGIA ETHERNET.........................................................................................................................13 2.3. FDDI (FIBER DISTRIBUTED DATA INTERCONNECT).....................................................................................................15 2.4. ATM (ASYNCHRONOUS TRANSFER MODE)................................................................................................................17 2.5. INTERLIGAÇÃO EM REDES..........................................................................................................................19 3. ENDEREÇAMENTO..............................................................................................................................................21 3.1. ENDEREÇOS DE REDES E DE BROADCAST..............................................................................................23 3.2. ENDEREÇO DE LOOPBACK..........................................................................................................................24 3.3. PONTOS FRACOS NO ENDEREÇAMENTO.................................................................................................25 3.4. UM EXEMPLO..................................................................................................................................................26 4. PROTOCOLOS.......................................................................................................................................................28 4.1. MODELO DA DIVISÃO EM CAMADAS OSI...............................................................................................29 4.2. MODELO DA DIVISÃO EM CAMADAS TCP/IP..........................................................................................31 4.3. PROTOCOLOS DE TRANSPORTE.................................................................................................................32 4.3.1. UDP (User Datagram Protocol)................................................................................................................32 4.3.2. TCP (Transmission Control Protocol).......................................................................................................35 4.4. PROTOCOLOS DE REDE................................................................................................................................38 4.4.1. IP (Internet Protocol).................................................................................................................................38 4.4.2. ICMP (Internet Control Message Protocol)...............................................................................................43 4.4.3. ARP (Address Resolution Protocol)...........................................................................................................44 4.4.4. RARP (Reverse Address Resolution Protocol)...........................................................................................45 5. ROTEAMENTO......................................................................................................................................................47 5.1. ROTEAMENTO BASEADO EM TABELAS...................................................................................................47

Cristiano Alan Torres

Pág. 1/85

Arquitetura TCP/IP

5.2. ALGORITMOS DE ROTEAMENTO...............................................................................................................48 5.2.1. ROTEAMENTO VECTOR-DISTANCE .....................................................................................................49 5.2.2. ROTEAMENTO LINK-STATE (Shortest Path First)..................................................................................50 5.3. PROTOCOLOS DE ROTEAMENTO...............................................................................................................52 5.3.1. IGP – Interior Gateway Protocol...............................................................................................................52 5.3.2. EGP - Exterior Gateway Protocol..............................................................................................................55 5.3.3. BGP – Border Gateway Protocol...............................................................................................................56 5.4. ROTEAMENTO MULTICAST.........................................................................................................................59 6. TCP/IP EM REDES ATM......................................................................................................................................62 7. DNS (DOMAIN NAME SYSTEM)........................................................................................................................64 8. APLICAÇÕES.........................................................................................................................................................67 8.1. TELNET.............................................................................................................................................................67 8.2. FTP (FILE TRANSFER PROTOCOL)............................................................................................................................69 8.3. NFS (NETWORK FILE SYSTEM)................................................................................................................................71 8.4. RPC (REMOTE PROCEDURE CALL)...........................................................................................................................73 8.5. SMTP (SIMPLE MAIL TRANSFER PROTOCOL)............................................................................................................74 9. FUTURO DO TCP/IP (IPV6).................................................................................................................................77 9.1. FORMATO DO DATAGRAMA.......................................................................................................................79 9.2. TAMANHO DO ESPAÇO DE ENDEREÇO....................................................................................................81 9.3. TRÊS TIPOS BÁSICOS DE ENDEREÇO DO IPV6.........................................................................................83 10. BIBLIOGRAFIA....................................................................................................................................................85

Cristiano Alan Torres

Pág. 2/85

Arquitetura TCP/IP

1. INTRODUÇÃO

Devido ao tremendo impacto dos computadores na sociedade, principalmente na última década, este período da história tem sido denominado “a era da informação”. O lucro e a produtividade das organizações e indivíduos tem sido aumentados de forma significativa pelo uso das redes de computadores como suporte a troca e acesso à informação. Indivíduos utilizam as redes de computadores quase que diariamente de forma a conduzir suas atividades pessoais e empresariais. O que se pode observar é uma aceleração da utilização e das aplicações com base na tecnologia das redes de computadores, à medida que mais pessoas descobrem as potencialidades dos computadores e das redes de comunicação tanto em aplicações domésticas como em empresariais. As transações e atividades diárias em lojas de departamentos, bancos, e outras pessoas e empresas das mais diversas naturezas, estão 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 usuários selecionam uma tecnologia de hardware que seja adequada aos seus problemas de comunicação. É impossível a estruturação de uma rede universal com base em uma única tecnologia de hardware, já que nenhuma rede única atende a todas as aplicações. Alguns usuários precisam de uma rede de alta velocidade para conectar-se a máquinas, mas essas redes não podem ser expandidas para alcançar grandes distâncias. Outros preferem uma rede de velocidade inferior que faça conexão com máquinas a centenas de milhas de distância. Ao longo dos anos, as agências governamentais norte-americanas perceberam a importância e o potencial de tecnologia de interligação em redes e vêm financiando as pesquisas que possibilitaram a interconexão global de redes. A tecnologia da ARPA (Advanced Research Projects Agency) inclui um conjunto de padrões de rede que especificam os detalhes do sistema pelo qual os computadores se comunicam, bem como um conjunto de convenções para interconexão em redes e para roteamento. Denominado oficialmente Pilha de Protocolos de

Cristiano Alan Torres

Pág. 3/85

Arquitetura TCP/IP

interligação em redes TCP/IP, e geralmente citado como TCP/IP, essa pilha pode ser utilizada para comunicação em qualquer conjunto de redes interconectadas. Algumas empresas, por exemplo, utilizam o TCP/IP para interconectar todas as redes de sua organização, ainda que a empresa não se comunique com redes externas. Outros grupos utilizam o TCP/IP para estabelecer comunicações 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 instalações de pesquisa. A interligação em redes resultante permite que os pesquisadores de instituições conectadas compartilhem informações com seus colegas de todo o mundo com a mesma facilidade com que compartilham informações com pesquisadores da sala ao lado. Um sucesso extraordinário, a Internet demonstra a viabilidade da tecnologia TCP/IP e mostra como pode-se lidar com uma diversidade de tecnologias de redes.

1.1.

SERVIÇOS EM REDES

Grande parte da abordagem de serviços terá como foco padrões denominados protocolos. Protocolos como TCP e IP fornecem as regras para a comunicação. Eles contém 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 condições anormais. De certa forma, um protocolo de comunicação permite que alguém especifique ou entenda uma comunicação de dados sem depender de conhecimentos minuciosos do hardware da rede de um fornecedor específico. Todos os serviços de rede são descritos por protocolos. Os serviços de aplicativos da Internet mais comum e difundidos incluem:

Cristiano Alan Torres

Pág. 4/85

o aplicativo retorna o usuário ao sistema local. ela foi recebida com êxito no destino. • Login remoto. Embora existam muitos sistemas de correio eletrônico. O login remoto permite que. a pessoa pode copiar de uma máquina para outra uma base de dados extensa contendo imagens de satélite. já que não depende de computadores para processamentos intermediários na transmissão de mensagens. a utilização do TCP/IP faz com que a entrega de correio seja mais confiável. O correio eletrônico tem sido tão bem-sucedido que muitos usuários da Internet dependem dele para correspondência comercial normal. Quando a sessão de login remoto termina. Um sistema de entrega de correio TCP/IP opera através de contato direto entre a máquina do transmissor e a máquina do receptor. Ao utilizar. enviando cada toque no teclado a uma máquina remota e exibindo cada caracter que o computador remoto imprime na janela do usuário. 5/85 . Tal como ocorre com o correio eletrônico. O correio eletrônico permite que um usuário elabore memorandos e os envie a indivíduos ou grupos. Cristiano Alan Torres Pág. Assim. um programa escrito em Pascal ou C++. a transferência de arquivos na interligação em redes TCP/IP é confiável porque as duas máquinas envolvidas comunicam-se diretamente. por exemplo. sobretudo. O sistema indica uma maneira de checar os usuários autorizados. ele se destina.Arquitetura TCP/IP • Correio Eletrônico. de seu computador. Embora alguns usuários às vezes transfiram arquivos através do correio eletrônico. a mensagens de pouco texto. ou um dicionário de inglês. Uma outra parte do aplicativo do correio eletrônico permite que os usuários leiam os memorandos que receberam. um usuário entre em conexão com uma máquina remota e estabeleça uma sessão interativa de login. Os protocolos TCP/IP incluem um programa aplicativo que permite que os usuários enviem ou recebam arbitrariamente arquivos externos de programas de dados. sem depender de máquinas intermediárias que façam cópias do arquivo ao longo do processo. • Transferência de arquivos. um programa de transferência de arquivos. ou até de evitar acessos. o transmissor sabe que quando a mensagem deixa a máquina local. O login remoto faz com que uma janela na tela do usuário pareça conectar-se diretamente com a máquina remota.

porque eles exigem que o software de comunicação corrija automaticamente erros de transmissão. O mais importante é que a entrega de pacotes. os protocolos de comunicação dividem a cadeia de dados em mensagens curtas e as envia. esperando que o receptor confirme a recepção. torna os protocolos TCP/IP adaptáveis a uma ampla gama de hardware de redes. Este serviço. Isso simplesmente significa que a interligação em redes TCP/IP promove o roteamento de pequenas mensagens de uma máquina para outra. de modo que alguém poderia questionar o que diferencia os serviços TCP/IP de outros. explicado com detalhes ao longo do texto. uma de cada vez. Ele permite que um aplicativo de um computador estabeleça uma “conexão” com um aplicativo de outro computador. Muitas redes oferecem serviços básicos semelhantes aos mencionados acima. ou falhas de comutações ao longo do caminho entre o transmissor e o receptor. Como o serviço sem conexão promove o roteamento de cada pacote separadamente não há garantia de entrega. em um nível mais baixo. As principais características diferenciadoras são: Cristiano Alan Torres Pág. Naturalmente. o serviço sem conexão é extremamente eficiente. 6/85 . Já que quase sempre há um mapeamento direto para o hardware. forma a base para todos os serviços de interligação em redes. • Serviço de transporte de streams confiáveis. como base para todos os serviços de interligação em redes. e a seguir envie um grande volume de dados através da conexão. A maioria dos aplicativos precisa de muito mais do que uma entrega de pacotes. pacotes perdidos. O serviço de transporte confiável trata desses problemas.Arquitetura TCP/IP No nível da camada de rede. e nem de entrega na mesma ordem na qual os pacotes forma transmitidos. A entrega sem conexão constitui uma preocupação do serviço oferecido pela maioria das redes distribuidoras de encomendas. uma interconexão proporciona extensos tipos de serviços que todos os programas aplicativos utilizam: • Serviço de entrega de pacotes sem conexão. com base nas informações do endereço contidas na mensagem. como se fosse uma conexão de hardware direta e permanente. sem conexão.

Cada datagramas traz os endereços de sua origem e de seu destino. Uma interligação em redes TCP/IP permite a comunicação de que qualquer par de computadores ao qual ela é conectada. a transferência de arquivos e o login remoto. Cristiano Alan Torres Pág. inclusive o correio eletrônico. • Padrões de protocolo de aplicativos. • Confirmações fim-a-fim. Os protocolos TCP/IP definem a unidade de transmissão de dados denominada datagrama. • Interconexão universal. 7/85 . desde as redes projetadas para operar em um prédio até as projetadas para cobrir grandes distâncias. mesmo quando as duas máquinas não se conectam a uma mesma rede física. Embora o TCP/IP seja baseado em tecnologia convencional de comutação de pacotes. Além dos serviços básicos no nível de transporte (como conexões de streams confiáveis). Os computadores de comutação intermediária utilizam o endereço de destino para tomar decisões sobre roteamento. os protocolos TCP/IP incluem padrões para muitos aplicativos comuns. Assim. quando estão desenvolvendo programas aplicativos que utilizam TCP/IP. A Internet inclui diversas tecnologias de rede. Os protocolos de interligação em redes TCP/IP fornecem uma confirmação entre a origem e o destino final. e especifica como transmitir datagramas em uma rede específica.Arquitetura TCP/IP • Independência da tecnologia de redes. A cada computador é atribuído um endereço universalmente reconhecido por toda a interligação em redes. e não entre máquinas sucessivas ao longo do caminho. os programadores sempre descobrem que o software existente oferece os serviços de comunicação de que eles precisam. ele é independente do hardware de qualquer fornecedor específico.

A Internet cresceu. Dessa necessidade. órgãos públicos e laboratórios de pesquisa organizacional. companhias farmacêuticas e portadoras de telecomunicações. indústria automobilística. A utilização (e facilidades) do padrão TCP/IP utilizado pelos fabricantes de outras redes. As empresas de pequeno e médio porte começaram a conectar-se na década de 1990. com a finalidade da conectividade com a Internet. Cristiano Alan Torres Pág. surgiu a ARPANET. a Internet alcançava mais de 3 milhões de computadores em 61 países. ESCOPO DA INTERNET A arquitetura TCP/IP surgiu com a criação de uma rede patrocinada pelo Departamento de Defesa dos Estados Unidos. Conectou aproximadamente 20. abrangendo centenas de redes individuais localizadas nos Estados Unidos e na Europa. numa ocorrência de guerras ou catástrofes que afetassem os meios de comunicação daquele país. Em torno de 1994. flexível e de fácil implementação. A ARPANET necessitava então de um modelo de protocolos que assegurasse tal funcionalidade esperada. mesmo tendo optado por não .Arquitetura TCP/IP 1. bem como muitas outras organizações de grande porte como companhias de petróleo. estimou-se que o crescimento alcançara 15% ao mês. No final de 1987. O tamanho e a utilização da Internet continuou em ascensão muito mais acelerada do que o previsto. É então desenvolvida a arquitetura TCP/IP. 8/85 disso. Grandes companhias voltadas para o setor de computadores conectaram-se à Internet.000 computadores de universidades. órgãos do governo e universidades. que se torna um padrão de fato. mostrando-se confiável. A utilização de protocolos TCP/IP e o crescimento da Internet não se limitaram a projetos financiados pelo governo.2. mesmo que apenas uma parte. Uma das tarefas essenciais dessa rede seria manter comunicados. A normalização do TCP/IP chegou após a sua utilização em massa. empresas de eletrônica. Além participar da Internet. muitas outras utilizavam os protocolos TCP/IP em suas interligações em redes corporativas. A ARPANET cresceu e tornou-se a rede mundial de computadores – Internet. uma rede que permaneceria intacta caso um dos servidores perdesse a conexão.

Nenhuma máquina contém todo o banco de dados de nomes de domínios. os nomes e endereços de todos os computadores conectados à Internet eram mantidos em um único arquivo que era editado manualmente e. os dados são distribuídos por um conjunto de máquinas que utilizam protocolos TCP/IP para se comunicarem entre si quando estiverem respondendo a uma consulta. A InterNIC (Internet Network Information Center) foi criado pela NSF para distribuir endereços IP. os pedidos para atualização de arquivos rapidamente provocaria excesso do pessoal disponível para processá-los.Arquitetura TCP/IP Uma expansão acelerada trouxe problemas de escala não previstos no projeto original e motivou os pesquisadores a encontrar técnicas para gerenciar numerosos recursos distribuídos. a seguir. 9/85 RFC Cristiano Alan Torres . ainda que existisse um arquivo-fonte correto. novamente o tráfego aumentou. Primeiro. o mecanismo conta com máquinas denominadas servidoras de nome para responder a consultas sobre nomes. Em vez de uma máquina. Segundo. RFC (Request for Comments) são documentos técnicos relacionados aos Pág. Eis algumas organizações: IAB InterNIC IRTF A IAB (Internet Advisory Board) é constituída de várias organizações e seu objetivo principal é coordenar a organização geral da Internet. como o desenvolvimento de protocolos. tornou-se óbvio que um banco de dados de origem não seria suficiente. Ele é responsável por várias atividades a nível de pesquisa. O IRTF (Internet Research Task Force) é um dos comitês que constituem a IAB. Conhecido como Domain Name System (DNS). Em meados da década de 1980. distribuído a todos os sites da Internet. A Internet não é controlada por nenhum órgão governamental ou comercial. por exemplo. mas sim por organizações voluntárias que controlam os usuários e os artigos publicados na Internet. Tão logo a Internet tornou-se popular e os usuários passaram a buscar informações através de serviços como Gopher e a World Wide Web. Novos protocolos foram desenvolvidos e um sistema de atribuição de nome foi colocado em vigor através da Internet para permitir que qualquer usuário automaticamente determinasse o nome de uma máquina remota. a capacidade da rede seria insuficiente para permitir a distribuição freqüente para todos os sites ou o acesso on-line a cada site. No projeto original.

A FNC realiza o intermédio entre a IAB e as instituições IETF governamentais. Pela primeira vez no mundo um cidadão comum ou uma pequena empresa pode (facilmente e a um custo muito baixo) não só ter acesso a informações localizadas nos mais distantes pontos do globo como também – e é isso que torna a coisa revolucionária – criar. Com a Internet um pessoa qualquer (um jornalista. FNC (Federal Networking Council) é um comitê que exerce a parte informativa da Internet. além de prestar suporte a agências no uso da Internet. por exemplo) pode. oferecer um serviço de informação baseado na Internet. de sua própria casa. no âmbito mundial. gerenciar e distribuir informações em larga escala. IETF (Internet Engeneering Task Force) é um subcomitê da IAB que realiza a manutenção de problemas construtivos e também a implementação de novas tecnologias. Essa perspectiva abre um enorme mercado para profissionais e empresas interessadas em oferecer serviços de informação específicos. A Internet é considerada por muitos como um dos mais importantes e revolucionários desenvolvimentos da história da humanidade. podendo obter sucesso e se tornarem FNC padrões. outros são recentemente desenvolvidos. Alguns deles contém padrões para os protocolos. 10/85 . Esses documentos formam a documentação da Internet. algo que somente uma grande organização poderia fazer usando os meios de comunicação convencionais.Arquitetura TCP/IP protocolos da Internet. sem precisar da estrutura que no passado só uma empresa de grande porte poderia manter. a partir de um microcomputador. a qual é controlada primariamente por grandes empresas. Cristiano Alan Torres Pág. Isso com certeza afetará substancialmente toda a estrutura de disseminação de informações existente no mundo.

a transmissão de um arquivo extenso entre dois equipamentos deve ser feita a partir da divisão do arquivo em vários pacotes antes de encaminhá-los à rede. finalmente. o equipamento telefônico testa o microfone várias vezes. Enquanto um circuito estiver aberto. A desvantagem da comutação de circuitos é o alto custo: o preço é fixo. converte os sinais para o formato digital e os transmite através do circuito para o receptor. O Cristiano Alan Torres Pág. Por exemplo. como redes sem conexão). O transmissor tem a garantia de que os sinais serão distribuídos e reproduzidos. seja entre computadores ou entre terminais e computadores. através de uma central de comutação local. pois o circuito oferece um percurso de dados seguro. até uma central de comutação remota e. passando por linhas do tronco. o preço de uma ligação telefônica é o mesmo. de 64 kpbs (mil bits por segundo). as redes de comunicação dividem-se em dois tipos básicos: de comutação de circuitos (também conhecidas como redes baseadas em conexões) e de comutação de pacotes (conhecidas. O sistema telefônico dos Estados Unidos utiliza uma tecnologia de comutação de circuitos – uma chamada telefônica estabelece um circuito da linha de quem telefona. Por exemplo. nenhuma outra atividade de rede poderá reduzir a capacidade do circuito. 11/85 . ao destinatário da chamada. o mínimo necessário para o envio de voz digitalizada. BÁSICO DE UMA REDE Independente do tipo de conexão que façam. Um pacote que geralmente contém apenas pequenas unidades de informações transporta uma identificação que capacita o hardware da rede a enviar as informações a determinado destino. A vantagem da comutação de circuitos reside na sua capacidade segura: uma vez que um circuito é estabelecido. ainda quando as duas pontas não se comunicam. • A comutação por circuitos opera formando uma conexão dedicada entre duas pontas. as mensagens a serem transmitidas através das estações da rede são divididas em pequenas unidades chamadas pacotes que são multiplexados por meio de conexões entre máquinas de alta capacidade.Arquitetura TCP/IP 2. independente do tráfego. • Nas redes de comutação de pacotes. ainda.

de acordo com a extensão: redes de longas distâncias (WANs) e redes locais (LANs). As duas categorias não possuem definições formais.Arquitetura TCP/IP hardware da rede envia os pacotes aos seus respectivos destinos onde o software os reúne novamente em um único arquivo. e necessitam de um retardo de transmissão bem maior entre as conexões. As tecnologias de rede remota ou de redes de longas distâncias possibilitam a comunicação entre grandes distâncias. mas deixam a desejar na capacidade de operar em longas distâncias. Ao contrário. A maioria das tecnologias de rede de longas distâncias não impõe um limite na extensão da distância. Por exemplo. como um único edifício ou um Cristiano Alan Torres Pág. permite que os dois extremos se comuniquem a uma distância arbitrária. toda vez que uma rede de comutação de pacotes estiver sobrecarregada. O retardo de transmissão pode variar desde alguns milissegundos até vários décimos de segundo. WANs e LANs As tecnologias de comutação de pacotes são freqüentemente divididas em duas categorias. A desvantagem é que à medida que a atividade se intensifica. uma rede de longa distância pode operar em um continente ou conectar computadores de continentes diferentes. as redes de longa distâncias operam em velocidades mais lentas do que as redes locais. 12/85 . A grande vantagem da comutação de pacotes é a possibilidade de realizar simultaneamente várias comunicações entre computadores. Ou seja. os fornecedores utilizam os termos de forma coloquial para que os consumidores saibam diferenciar as duas tecnologias. uma rede local típica abrange uma área pequena. Por exemplo. um determinado par de computadores conectados entre si recebe uma capacidade menor da rede. A velocidade de uma rede de longas distâncias varia de 56 Kbps a 155 Mbps (um milhão de bits por segundo). os computadores conectados a ela terão que esperar até poderem enviar pacotes adicionais. Geralmente. As tecnologias de rede local possuem uma velocidade de conexão entre comutadores bem mais rápida. 2.1. com conexões entre equipamentos compartilhados por todos os pares de equipamentos que estão se comunicando.

além de reduzir os custos. Já que essas tecnologias operam em pequenas áreas. o qual pode durar desde alguns décimos de um milissegundo. Chamada de Ethernet de pares trançados. e funciona entre 10 Mbps e 2 Gbps (bilhões de bits por segundo). A vantagem desse tipo de tecnologia é que. semelhantes aos utilizados para fazer conexões entre equipamentos telefônicos. 2. uma tecnologia de pares trançados possibilita que Cristiano Alan Torres Pág. Para incluir um novo computador.2. o retardo de transmissão é bem menor do que o das tecnologias de rede de longas distâncias. Para oferecer o máximo de proteção contra interferência elétrica de dispositivos como motores elétricos. O cabo percorre o trajeto diretamente de um computador a outro.Arquitetura TCP/IP campus. oferece proteção a outros computadores da rede no caso de um usuário desconectar um único computador.5 polegadas de diâmetro e até 500 metros de comprimento. CABO DA ETHERNET Figura 2. até no máximo dez milissegundos. Em alguns casos.1. O esquema de fiação funciona perfeitamente quando vários computadores ocupam um mesmo compartimento. 13/85 . basta conectá-lo à cadeia. Com o avanço da tecnologia foi possível construir redes Ethernets que não necessitam da proteção elétrica de um cabo coaxial. A TECNOLOGIA ETHERNET Ethernet é o nome dado a uma tecnologia de rede local popular. Conexão física entre dois computadores. de comutação de pacotes. Cada cabo da Ethernet possui aproximadamente 0. a maioria das empresas de médio e grande porte a utiliza. essa tecnologia permite que um computador acesse uma rede Ethernet utilizando um par de fios de cobre normais sem proteção. o cabo possui uma forte proteção que o torna difícil de ser dobrado.

Cada computador conecta-se a um HUB por cima de um par de fios. a Ethernet não possui nenhuma autoridade central para permitir o acesso. a interface do host inicializa a transmissão. Além do Cristiano Alan Torres Pág. CONEXÕES DE PARES TRANÇADOS PARA O HUB HUB Figura 2. o esquema de fiação de pares trançados conecta cada computador a um HUB da Ethernet. Para a interface com um computador. O HUB é um dispositivo eletrônico que estimula os sinais num cabo Ethernet. Conhecido tecnicamente como 10Base-T. sem a adição de novos cabos.2. o HUB é formado por uma pequena caixa que geralmente é alojada em um gabinete de fiação. de pessoal qualificado para fazer o monitoramento e o controle de sua operação na rede. como ilustra a Figura 2. O controle de acesso é distribuído porque. é de difusão (broadcast) porque todos os transceptores recebem cada uma das transmissões.2. Fisicamente. É um barramento porque todas as estações compartilham um único canal de comunicação. uma conexão entre um HUB e um computador deve ter menos de cem metros de extensão. Se nenhuma transmissão for detectada. Quando uma interface do host tem um pacote para transmitir. ao contrário de algumas tecnologias de rede. A Ethernet é uma tecnologia de barramento de difusão de 10 Mbps com método de entrega sem garantia e controle de acesso distribuído. Um HUB necessita de energia elétrica e. detectando a presença ou não de sinal. Cada uma das transmissões possui um limite de duração (porque há um tamanho máximo de pacote). a conexão a um HUB parece funcionar do mesmo modo que a conexão direta com coaxial. 14/85 . vários equipamentos podem acessar a Ethernet simultaneamente e cada um deles estabelece se o meio está ou não livre. talvez. ela verifica o meio para saber se há alguma mensagem sendo transmitida.Arquitetura TCP/IP uma instituição utilize a Ethernet com a fiação telefônica já existente.

acrescentando sinais especiais antes e após a transmissão das informações. um quadro inteiramente válido deve ser recebido antes que a ponte o aceite e o transmita para outro segmento. Cristiano Alan Torres Pág. ser transparente para os equipamentos conectados à Ethernet. 2. o que significa que nenhum par de equipamentos comunicantes pode utilizar a rede sem oferecer aos demais equipamentos uma oportunidade de acesso. 15/85 . as Ethernets ligadas por pontes são simplesmente uma outra forma de conexão física de rede. o hardware deve observar um intervalo mínimo de tempo entre as transmissões.Arquitetura TCP/IP mais. um sistema único de rede física. convertendo-as em feixes de luz. de modo que o comprimento total de uma única Ethernet continua muito pequeno (três segmentos de 500 metros cada).  O termo quadro deriva-se da comunicação por linhas seriais. • O repetidor pode ser utilizado para transmitir sinais elétricos de um cabo a outro. no máximo dois repetidores podem ser colocados entre duas máquinas. Ao contrário da Ethernet e de outras tecnologias de redes locais que utilizam cabos para transportar os sinais elétricos. a rede pode ser aumentada de duas maneiras: com o auxílio de repetidores e de pontes. fornecida pelas pontes e pelos repetidores. FDDI (Fiber Distributed Data Interconnect) A FDDI é uma conhecida tecnologia de rede que opera em pequenas áreas geográficas e oferece uma largura de banda maior do que a Ethernet. • As pontes são melhores do que os repetidores porque não repercutem os ruídos. nas quais o transmissor “configura” a informação. De acordo com a visão do TCP/IP. Apesar de um cabo da Ethernet possuir um comprimento máximo. Entretanto. as falhas ou os quadros com má formação.3. O importante é que: Em virtude de a conexão entre cabos físicos. a FDDI utiliza fibras de vidro e transmite as informações.

Cristiano Alan Torres Pág. 16/85 . passando por todos os outros. Quando a rede está inativa. Trata-se de uma rede de tecnologia token ring porque utiliza um token como forma de controlar a transmissão. As setas indicam a direção do tráfego nas fibras e nos computadores conectados entre si. a quantidade de informação transportadas por um único canal de fibra óptica é significativamente maior do que a dos cabos que transportam sinais elétricos. iniciando em um computador. podendo ficar próximas a dispositivos elétricos potentes. e novamente retornando ao computador de origem. ela terá que esperar a chegada de um token. um quadro especial denominado token passa de estação a estação.3. • como utilizam luz. Sempre que uma estação tiver que enviar um pacote. enviar o pacote e depois passar o token à estação seguinte. 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. O token que está sendo utilizado garante o equilíbrio: concede a todas as estações a oportunidade de enviar um pacote antes que outra estação envie um segundo pacote. REDE FDDI EM ANEL Figura 2.Arquitetura TCP/IP A fibra óptica possui duas vantagens a mais do que o fio de cobre: • são imunes à interferência eletromagnética. Uma rede FDDI com fibras ópticas fazendo a conexão de seis computadores.

os outros computadores podem continuar se comunicando. 100 Mbps. 2. As fibras ópticas possuem uma velocidade de transferência Cristiano Alan Torres Pág. Quando a interface percebe que não pode comunicar-se com o computador ao lado. O hardware da FDDI automaticamente utiliza o anel de rotação oposta para formar o circulo fechado na direção em que ele ainda está operando.4. inclusive conexões entre um computador host e um comutador ATM. É claro que para se obterem velocidades tão altas é necessário um equipamento complexo de última geração. Uma rede ATM utiliza técnicas de hardware e software especiais: • Uma rede ATM é formada por um ou mais comutadores de alta velocidade que são conectados aos computadores host e a outros comutadores ATM. é muito provável que a Segunda fibra também seja desconectada.Arquitetura TCP/IP Para oferecer um recurso de recuperação automática de falhas. que vem sendo usada tanto nas redes que operam em pequenas como em grandes áreas geográficas. Consequentemente. Pelos padrões correntes. o hardware da FDDI utiliza dois anéis independentes que se conectam a cada computador. um corte acidental). 17/85 . o anel de garantia é utilizado para contornar a falha. o ATM pode intercambiar informações com velocidades de gigabit/segundo. as redes de alta velocidade são aquelas que operam a uma velocidade de. ATM (Asynchronous Transfer Mode) O ATM é o nome dado a uma tecnologia de rede de alta velocidade. baseada em conexão. • O ATM utiliza fibras ópticas para fazer conexões. Com isso. A falha talvez seja decorrente da desconexão da fibra (p. ex.. as redes ATM possuem um custo mais alto do que as demais tecnologias. Se as fibras de ambos os anéis seguirem o mesmo percurso físico. no mínimo. mesmo com a ocorrência da falha.

O host utiliza o identificador da conexão ao enviar ou receber células. Se o computador remoto não aceitar o pedido. normalmente. Cristiano Alan Torres Pág. o pedido para estabelecer a comunicação falha. Antes de um computador host conectado a um ATM enviar células. o comutador pode novamente utilizar o identificador da conexão. há uma forte relação entre o ATM e a comutação telefônica. A rede ATM difere das redes de comutação de pacotes porque oferece um serviço baseado em conexão. O comutador desconecta os dois computadores. assim como dados. juntamente com um mensagem informando o sucesso da conexão. Quando uma conexão é feita. O host especifica o endereço do computador remoto e espera o comutador ATM entrar em contato com o sistema remoto e estabelecer um caminho (rota fixa).Arquitetura TCP/IP maior do que a dos fios de cobre. Como as células possuem exatamente o mesmo tamanho. após a desconexão. A interação é análoga a uma ligação telefônica. não responder ou se o comutador não puder alcançar o computador remoto.  Em virtude de a rede ATM ter sido idealizada para transportar voz. ele deve primeiramente interagir com o comutador para especificar o endereço do destinatário. o hardware do comutador ATM pode processá-la rapidamente. a conexão entre um host e um comutador ATM opera a uma velocidade de 100 ou 155 Mbps. 18/85 . A desconexão equivale a tirar um telefone do gancho no final de uma ligação telefônica. Ao terminar a conexão. • As camadas mais baixas de uma rede ATM utilizam quadros de tamanhos fixos chamados células. o comutador ATM local escolhe um identificador da conexão e passa-o para o host. o host comunica-se novamente com o comutador para que a conexão seja desfeita.

precisa capturar pacotes na rede 1 que são destinados às máquinas na rede 2 e transferi-los e vice-versa. além das redes às quais estão conectados. o roteador R está conectado às redes 1 e 2. porque o hardware específico não tem importância.Arquitetura TCP/IP 2. Cristiano Alan Torres Pág. Quando conexões de interligação em redes se tornam mais complexas. 19/85 . uma ligação física não fornece a interconexão que imaginamos. Na figura acima. os roteadores necessitam saber sobre a topologia da interligação em redes. Considere um exemplo que consista de duas redes físicas mostradas na Figura 2. Duas redes físicas conectadas entre si por um roteador. Os computadores que conectam entre si duas redes e repassam pacotes de um para o outro são chamados de gateways de interligação em redes ou roteadores de interligação em redes. e cada uma pode ter muitos ou poucos hosts acoplados.4. porque tal ligação não garante que o computador vai cooperar com outras máquinas que desejam se comunicar.5. REDE "1" R REDE "2" Figura 2. INTERLIGAÇÃO EM REDES Fisicamente. são usadas nuvens para demonstrar redes físicas. necessitamos de computadores que queiram repassar pacotes de uma rede para outra. Para se ter uma interconexão de rede viável. No entanto. Cada rede pode ser uma rede local ou uma rede de longa distância. duas redes só podem ser conectadas por um computador que esteja ligado às duas. Para R atuar como um roteador.4.

Arquitetura TCP/IP REDE "1" R1 REDE "2" R2 REDE "3" Figura 2. do tamanho máximo do pacote ou da escala geográfica. Além de roteadores que conectam entre si redes físicas. qualquer sistema de comunicação capaz de transferir pacotes é considerado como uma única rede. Do ponto de vista da interligação em redes. da vazão. a tarefa do roteador de tomar decisões sobre por onde enviar pacotes se torna mais complexa. O protocolo da interligação em redes do TCP/IP trata todas as redes do mesmo modo. Uma rede local.5. ou uma ligação de ponto a ponto entre duas máquinas. Para uma grande interligação em redes composta de muitas redes. o roteador R1 deve transferir da rede 1 para a rede 2 todos os pacotes destinados a máquinas em qualquer das redes 2 e 3. cada uma conta como uma rede. Três redes interconectadas por dois roteadores. Cristiano Alan Torres Pág. 20/85 . como uma Ethernet. independente do retardo. uma rede de área maior. o software é necessário em cada host para permitir que programas aplicativos usem a interligação em redes como se fosse uma única rede realmente física. Neste exemplo. como o backbone de ANSNET.

1. dedicam sete bits para netid e 24 bits para hostid. Dado um endereço IP. no qual a cada host da interligação é atribuído um endereço com número inteiro de 32 bits. Assim. • Endereços do tipo B. A parte interessante do endereçamento da interligação é que os números inteiros são escolhidos cuidadosamente para tornar o roteamento eficiente. que são usados para redes de tamanho médio que possuem entre 28 (ou seja. A diferença é que a interligação em redes é uma estrutura virtual. Resumindo: “A cada host de uma interligação em redes TCP/IP é atribuído um endereço de interligação em redes único de 32 bits que é usado em todas as comunicações com aquele host. assim como a identificação de um único host nessa rede. os projetistas de TCP/IP optaram por um esquema análogo ao endereçamento de rede física. são usados pelas numerosas redes que não possuem mais de 216 (ou seja. Cristiano Alan Torres Pág. nada é orientado pelo hardware. Na prática. Conceitualmente.536) hosts.” Os bits dos endereços IP para todos os hosts de uma rede dada compartilham um mesmo prefixo. um endereço IP codifica a identificação da rede à qual um host se acopla. técnicas de entrega e assim por diante. sendo dois bits suficientes para distinguir entre as três classes principais: • Endereços do tipo A. Para endereços. 21/85 . ENDEREÇAMENTO Pensando em uma interligação em redes como uma grande rede igual a qualquer outra rede física. alocam 14 bits para o netid e 16 bits para o hostid. idealizada por seus projetistas e totalmente implantada em software. denominado seu endereço IP. cada endereço é um par (netid. endereços. hostid) em que netid identifica uma rede e hostid identifica um host naquela rede.Arquitetura TCP/IP 3. 256) e 216 hosts. cada endereço IP deve Ter uma das três primeiras formas mostradas na Figura 3. seu tipo pode ser determinado a partir de três bits de alta ordem. Especificamente. os projetistas estão livres para escolher formatos e tamanhos de pacotes. 65.

Os roteadores.30 00001010 00000010 00011110 Cristiano Alan Torres Pág. o endereço de 32 bits: 10000000 é representado por: 128. Assim. Cada endereço corresponde a uma das conexões de rede da máquina. Os endereços IP são escritos como quatro números inteiros decimais separados por pontos decimais.10.2.Arquitetura TCP/IP • Endereços do tipo C. Esses hosts e os roteadores necessitam de endereço IP múltiplos. um para cada conexão de rede. como também um host daquela rede. um roteador conectando n redes tem n endereços diferentes de IP. Portanto. que possuem menos de 28 hosts. As cinco formas de endereços da Internet (IP). Quando os computadores convencionais possuem duas ou mais conexões físicas são denominados hosts multi-homed. B e C podem ser diferenciadas pelos três primeiros bits. como os endereços IP codificam não apenas uma rede. Assim. O endereço IP foi definido de tal modo que é possível extrair as partes do netid ou do hostid rapidamente. classes A. os endereços IP não especificam um computador individual. no qual cada número inteiro fornece o valor de um octeto de endereço IP. alocam 21 bits para o netid e somente 8 bits para hostid. 0 1 2 3 4 8 16 24 31 1 1 1 1 1 Netid 0 Netid 1 0 Netid Hostid Hostid Hostid 1 1 0 Endereços multicast 1 1 1 0 Reservado para uso futuro Figura 3. que usam a parte netid de um endereço ao decidir qual o destino de um pacote. 22/85 . dependem de uma extração eficiente para alcançar velocidade alta. As três primeiras formas. e sim uma conexão à rede.1.

Algumas redes não aceitam qualquer difusão.255.255. De acordo com o padrão.0 223.Arquitetura TCP/IP Na realidade.0 191. difusão é apoiada pelo software da rede.0.2. Um endereço de difusão direcionado pode ser interpretado sem ambivalência em qualquer etapa de uma interligação em redes porque identifica.1. hostid zero nunca é atribuído a um host individual. 3. Em vez disso.0. ENDEREÇOS DE REDES E DE BROADCAST A maior vantagem de codificar informações de rede em endereços de interligação em redes é o roteamento eficiente. mas requer uma demora muito mais substancial do que uma transmissão única. Em muitas tecnologias de rede.255 247.0 192.0.0. A tabela da Figura 3. além de especificar difusão naquela rede.0 240.0 Endereço mais alto 126. Outra vantagem é que os endereços de interligação em redes podem se referir a redes. um endereço IP com hostid zero é usado para se referir a essa própria rede.255.0.0 224.0.0. qualquer hostid que consista de todos os 1s é reservado para difusão.255.1. compreender a relação entre tipos de endereços IP e números decimais pode ajudar. em outras. a rede de destino.0. A escala de valores decimais que correspondem a cada tipo de endereço IP.1. assim como a hosts.255. Assim. Os endereços de difusão direcionados fornecem um poderoso mecanismo que permite a um sistema remoto enviar um pacote único que será Cristiano Alan Torres Pág.0. de modo único.0 128.0. O esquema de endereçamento da interligação em redes inclui um endereço de difusão que se refere a todos os hosts da rede. Assim.0 239. difusão pode ser tão eficiente quanto as transmissões normais. ter um endereço de difusão de IP não assegura a disponibilidade ou a eficiência da entrega de difusão. Classe A B C D E Endereço mais baixo 0. Por convenção.0.2 resume a escala de valores para cada tipo.255. a maioria dos softwares TCP/IP que apresenta ou requer uma pessoa para manipular um endereço IP usa a notação decimal com ponto.255.255 Figura 3. 23/85 .

24/85 . uma vez que o host aprenda o endereço correto de IP para a rede local. 3. Assim.2 mostra que nem todos os endereços possíveis foram atribuídos a classes. a principal desvantagem da difusão direcionada é que ela requer conhecimento do endereço da rede. Em geral. num valor da escala da classe A. Outra forma de endereço de difusão. denominada endereço de difusão limitado ou de rede local. é reservado para loopback. o software da interligação em redes interpreta os campos que consistem em 0s (zeros) para significar “este”.0.2. Um host pode usar os endereços de difusão limitados coo parte de um procedimento padrão antes que ele aprenda seu endereço de IP ou o endereço para a rede local. Entretanto. O host usa a netid zero temporariamente.0. Quando algum programa usa o endereço de loopback como destino. independente do endereço atribuído de IP. um endereço de IP com hostid igual a zero refere-se a “este” host e outro de netid igual a zero refere-se a “esta” rede. um host ou um roteador nunca deve difundir informações sobre roteamento ou alcance para o número de rede 127. Do ponto de vista de endereçamento. e outros hosts da rede interpretam o endereço como “esta” rede. e é utilizado no teste TCP/IP e para a comunicação na máquina local. este não é um endereço de rede. Além disso. Usar netid zero é especialmente importante nas circunstâncias em que um host deseja comunicar-se em uma rede.Arquitetura TCP/IP transmitido por difusão na rede especificada. o endereço 127. o software de protocolo retorna os dados sem enviar o tráfego através de qualquer rede. Por exemplo. Consiste em trinta e dois 1s. Um pacote enviado a um endereço 127 da rede não deve aparecer em nenhuma rede.0. ele deve usar difusão direcionada. ENDEREÇO DE LOOPBACK A tabela da Figura 3. mais ainda não sabe o endereço IP dela. fornece um endereço de difusão para a rede local. Cristiano Alan Torres Pág.

que especificam endereços IP I 3. Considere o exemplo da interligação em redes mostrado na Figura 3. na qual introduzam novos endereços lentamente. e é usado sempre que A envia um pacote com endereço IP I 5 (endereço de B na rede 2). Existe outro caminho de A até B. Os usuários em A. Saber apenas um endereço de IP. talvez não seja suficiente. suponha que a conexão de B para a rede 1 falhe. Assim. mudar endereços de redes pode tomar muito tempo e ser difícil para depurar. os usuários do host A normalmente devem referir-se ao host B usando endereço IP I3. mudar os endereços de todas as máquinas e. mas a máquina em si continue trabalhando. 25/85 .3. recuperar a comunicação usando o novo endereço de rede. pode ser impossível alcançar o destino usando tal endereço. não alcançam B apesar de os usuários que especificam endereços I5 poderem alcançar. PONTOS FRACOS NO ENDEREÇAMENTO Codificar informações de rede em um endereço pode ter suas desvantagens.3. Outra falha do esquema de endereçamento é que. Cristiano Alan Torres Pág. os administradores não podem planejar uma transição tranqüila. Ao contrário. quando qualquer rede tipo C cresce além de 255 hosts. seu endereço IP deve mudar. deve ter seu endereço mudado para um endereço tipo B. para determinado destino. dois hosts. Coo muitos softwares não são projetados para trabalhar com endereços múltiplos para a mesma rede física. através do roteador R. A mais óbvia delas é que os endereços referem-se às conexões de redes. A e B. Nesta figura. não ao host: se um host se move de uma rede para outra. Apesar de isto parecer um problema menor. Agora. conectam-se à rede 1 quase sempre se comunicam diretamente usando aquela rede. então. devem interromper o uso de um endereço de rede.Arquitetura TCP/IP 3.

a UMC (128. Se a interface I3 é desconectada.4. De acordo com a tabela da Figura 3. B e C. B. enviando pacotes através do roteador R. Um exemplo de interligação em redes com um host de multi-homed. O exemplo mostra três redes e os números de rede que lhes foram designados: a IBPI-NET (10.0).0. 3.0.4 mostra os endereços de redes e ilustra como os roteadores conectam redes entre si.0. considere um exemplo de duas redes de Universidades conectadas à IBPI-NET.0. UMC (Ethernet) 128.0) e a UNICSUL (192. os endereços têm classes A.3.0).10.0 IBPI-NET 10. 26/85 .5.4. UM EXEMPLO Para esclarecer o esquema de endereçamento IP.0 ROTEADORES UNICSUL (Token) 192.0.0. Cristiano Alan Torres Pág. A conexão lógica de duas redes ao provedor IBPI-NET.5.10.48.48.Arquitetura TCP/IP REDE 1 I1 R I4 I5 REDE 2 A I2 B I3 Figura 3. respectivamente. que indica um problema com o esquema de endereçamento IP. A deve usar o endereço I5 para alcançar B. A Figura 3.0 Figura 3.2.

26 Host 4 192.10.10.5.0 192.1 Host 1 Figura 3.10.5. executa a tarefa de rotear tráfego entre a Ethernet e as redes token ring. ROUTER2 . poder ser configurado para rotear pacotes entre as duas redes. O HOST2 tem conexões tanto na Ethernet quanto na rede token ring.2.48.2. HOST2.5. HOST3 e HOST4 acoplam-se às redes.10.10. Cristiano Alan Torres Pág.5 mostra as mesmas redes com host.6 10.48. podendo.3 128.70 Router2 UNICSUL (Token) 192.2. ROUTER1 é um roteador que conecta a IBPI-NET e a rede token ring (UNICSUL).0. a maioria dos sites usa computadores dedicados como roteadores. 27/85 . e endereços Internet designados para cada conexão de rede. Quatro hosts cognominados HOST1.0. a fim de evitar sobrecarregar sistemas de computação convencionais com o processamento requerido pelo roteamento. Apesar de um host de multi-homed. alcançar destinos diretamente em qualquer rede. Exemplo de designação de endereços IP para roteadores e hosts acoplados a três redes da figura anterior.48.0.0 128.2.7 128. Na figura.48.3 Host 2 192. e ROUTER2 é um roteador que conecta a rede UNICSUL à Ethernet (UMC).5.5.5.Arquitetura TCP/IP A Figura 3. um roteador dedicado.48.8 Host 3 128. como HOST2. UMC (Ethernet) 128. assim.37 IBPI-NET Router1 192.

Um enlace de transmissão de rede pode falhar ou ser desconectado acidentalmente. Um host ou roteador pode falhar tanto porque o hardware falha como porque o sistema operacional entra em colapso. as redes têm capacidade finita que pode ser ultrapassada. Interferência elétrica ou magnética ou falhas de hardware podem causar a transmissão de erros que danificam os conteúdos dos dados transmitidos. 28/85 . vejamos os problemas que surgem quando as máquinas se comunicam através de uma rede de dados: • Falha de hardware. PROTOCOLOS Os protocolos são os padrões que especificam como os dados são apresentados ao serem transmitidos de uma máquina para outra. requerem uma pilha de protocolos cooperativos. • Demora ou perda de pacotes. Os protocolos precisam encontrar formas para que uma máquina em congestionamento possa suprimir o excesso de tráfego. Os protocolos precisam aprender sobre as falhas ou adaptar-se a longas demoras. Os protocolos representam para a comunicação computadorizada o que a linguagem de programação é para a computação. Os complexos sistemas de comunicação de dados não usam um único protocolo para tratar com todas as tarefas de transmissão. Para compreender a razão. Ao contrário. • Danificação de dados. Algumas vezes.Arquitetura TCP/IP 4. Cristiano Alan Torres Pág. os pacotes demoram muito ou são perdidos. O software de protocolo necessita detectar tais falhas e recuperar-se delas. algumas vezes chamados família de protocolo ou pilha de protocolo. • Congestionamento de redes. Mesmo quando todo o hardware e software operam corretamente. Os protocolos necessitam detectar e recuperar tais erros. se possível.

Os protocolos necessitam reorganizar os pacotes e remover algumas duplicatas. e também os procedimentos usados para transferir pacotes de uma máquina para outra. as demais camadas não precisam saber de detalhes da implementação do serviço implementado nesta camada. ou seja. A base deste modelo é a divisão da complexidade do projeto organizando a rede em camadas. Camada 7 6 5 4 3 2 1 Funcionalidade Aplicativo Apresentação Sessão Transporte Rede Enlaces de Dados Conexão Física Figura 4. Redes que oferecem rotas múltiplas podem transmitir dados fora de seqüência ou podem transmitir duplicatas de pacotes. MODELO DA DIVISÃO EM CAMADAS OSI Existe um modelo desenvolvido pela ISO (International Standards Organization) usado para descrever a estrutura e funcionamento dos protocolos de comunicação de dados é denominado Modelo de Referência OSI (Open Systems Interconnect). sendo cada uma. 29/85 . Descrição básica das camadas do modelo OSI: • Camada física.1. com níveis de abstração diferentes definindo uma pilha de protocolos. Ele contém sete camadas. responsável por oferecer serviços às camadas superiores de uma forma transparente. 4. Cristiano Alan Torres Pág.1. Especifica um padrão para a interconexão física entre hosts e comutadores de pacote de rede. Modelo OSI de referência das sete camadas para o protocolo.Arquitetura TCP/IP • Duplicação de dados ou erros seqüenciais.

entre outros. e half-duplex. Contém a funcionalidade que completa a definição da interação entre o host e a rede. criptografia e compressão. esse nível define a unidade básica de transferência na rede e inclui os conceitos de endereçamento e roteamento de destino. Define o formato dos quadros e especifica como as duas máquinas reconhecem os limites do quadro. Garante que o destino recebe os dados extamente da forma que eles tenham sido mandados. • Camada sessão. mas estes são melhorados. onde os dados se movem nos dois sentidos simultaneamente. gerencia os diálogos.Arquitetura TCP/IP • Camada de enlaces de dados. como conversão. A camada de rede faz parte da sub-rede de comunicação. • Camada de transporte. Contém os programas com os quais o usuário interfaceia mais diretamente. Cristiano Alan Torres Pág. o controle de quem deve ser a vez de conversar. como a camada de redes. 30/85 . onde somente um lado “fala” a cada vez. • Camada de rede. pertence à concessionária e pode variar de uma rede para outra. uma vez que se utiliza primitivos padrões da camada de transporte. Com a camada de transporte é possível rodar vários programas de aplicação sobre redes diferentes. Além disso. Já que a transmissão de erros pode destruir os dados. o protocolo de nível inclui a detecção de erro. um ambiente iniciado a partir de uma conexão e que permite a transferência organizada de dados. Denominado camada de rede ou sub-rede de comunicação. Cuida dos problemas relativos a representação dos dados transmitidos. ou seja. Entre os exemplos possíveis estão: correio eletrônico. • Camada de apresentação. Alguns desses programas tornaram-se extremamente úteis e acabaram por definir uma série de padronizações. acessos a arquivos remotos. Especifica como os dados transitam entre um comutador de pacote e um host ao qual está conectado. permitindo que as duas saibam quando a transferência de um quadro foi bem-sucedida. Para isso ela também oferece serviços com conexão e sem conexão. Existem conexões full-duplex. ou seja. • Camada de aplicativo. transferência de arquivos. Permite que os usuários estabeleçam uma sessão.

2. Ela pode fornecer transporte confiável. Para isso. Um aplicativo interage com um dos protocolos do nível de transporte para enviar ou receber dados. As quatro camadas conceituais do software TCP/IP e a forma dos objetos que passam entre elas.2. O software da camada de transporte divide o fluxo de dados transmitidos em pequenas partes (algumas vezes chamadas pacotes) e Cristiano Alan Torres Pág. assim como a forma dos dados à medida que passa entre elas. A primeira função da camada de transporte é prover a comunicação de um programa aplicativo para outro. para o nível de transporte. 31/85 . o protocolo de transporte faz com que o lado receptor envie confirmações e o lado transmissor retransmita pacotes perdidos. • Camada de Transporte. os usuários rodam programas aplicativos que acessam serviços disponíveis através de uma interligação em redes TCP/IP. Cada programa aplicativo escolhe o estilo de transporte necessário. No nível mais alto. A camada de transporte pode regular o fluxo de informações.2 mostra as camadas conceituais. O programa aplicativo passa. então. Objetos Passados entre Camadas Mensagens ou Fluxos Pacotes de Protocolos de Transporte Datagramas IP Quadros de Redes Específicas • Camada de aplicativos. ser transmitidos. Tal comunicação é sempre chamada fim-a-fim. para que possam.Arquitetura TCP/IP 4. que tanto pode ser uma seqüência de mensagens individuais ou um stream contínuo de bytes. Camada Conceitual Aplicativo Transporte Inter-rede Interface de Redes Hardware Figura 4. MODELO DA DIVISÃO EM CAMADAS TCP/IP O software TCP/IP é organizado em quatro camadas conceituais construídas em uma quinta camada de hardware. A Figura 4. assegurando que os dados cheguem sem erros e em seqüência. os dados na forma adequada.

escolhe aquele que vai cuidar do pacote. O UDP fornece um serviço de transmissão sem conexão. o software da camada de interligação em redes apaga o cabeçalho do datagrama e. a camada da Internet trata das informações de uma máquina para outra. Uma interface de rede pode consistir em um driver de dispositivo ou em um subsistema complexo que usa seu próprio protocolo de enlace de dados. Como vimos. 4. verificando sua validade. fornece o mecanismo principal utilizado pelos programas aplicativos para enviar datagramas a outros programas iguais. Para os datagramas endereçados à máquina local. preenche o cabeçalho do datagrama. não-confiável. à camada seguinte para ser transmitido.1.Arquitetura TCP/IP passe cada pacote. O nível mais baixo do software TCP/IP compreende uma camada da interface de rede responsável pela aceitação de datagramas IP e por sua transmissão através de uma rede específica. usando o IP para transportar mensagens entre Cristiano Alan Torres Pág.3. Aceita um pedido para enviar um pacote originário da camada de transporte juntamente com um identificação da máquina para a qual o pacote deve ser enviado. A camada Internet também lida com datagramas de entrada. 32/85 . e usa o algoritmo de roteamento para decidir se o datagrama deve ser processado no local ou se deve ser enviado. Encapsula o pacote em um datagrama IP. • Camada de interface de rede. • Camada Internet.3. PROTOCOLOS DE TRANSPORTE 4. o UDP. juntamente com o endereço de destino. 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 transmissão. UDP (User Datagram Protocol) Na pilha de protocolos TCP/IP. entre vários protocolos de transporte.

a porta à qual a mensagem é destinada. que consiste em duas partes: um cabeçalho UDP e uma área de dados UDP. Usa o IP para transportar mensagens. Assim. Os campos PORTA DE ORIGEM e PORTA DE DESTINO contêm os números de porta do protocolo UDP de 16 bits usados para demultiplexar os datagramas entre os processos que esperam para recebê-los.3 mostra. deverá ser zero. 33/85 . a soma de verificação oferece o único modo de assegurar que os dados tenham chegado intactos e possam ser usados. um valor de zero no campo SOMA DE VERIFICAÇÃO significa que a soma de verificação não foi calculada. O IP não calcula uma soma de verificação na parte dos dados de um datagrama IP. o comprimento da mensagem e a soma de verificação UDP... Cristiano Alan Torres Pág. portanto. incluindo o cabeçalho UDP e os dados de usuário. Quando usada. O formato dos campos em um datagrama UDP. 0 1 2 3 4 8 16 24 31 PORTA DE ORIGEM UDP COMPRIMENTO DE MENSAGEM UDP DADOS . porém acrescenta a habilidade de distinguir entre múltiplos destinos em um certo host. O campo COMPRIMENTO contém uma contagem de octetos no datagrama UDP. A soma de verificação UDP é opcional e não precisa ser usada. o valor mínimo para COMPRIMENTO é oito. Os projetistas resolveram tornar opcional a soma de verificação a fim de permitir que as implementações operassem com pouco overhead ao usar UDP através de uma rede local altamente confiável. A PORTA DE ORIGEM é opcional.3. o cabeçalho está dividido em quatro campos de 16 bits que especificam a porta da qual a mensagem foi enviada. se não usada. Como a Figura 4. especifica a porta para a qual devem ser enviadas as respostas. PORTA DE DESTINO UDP SOMA DE VERIFICAÇÃO UDP Figura 4.Arquitetura TCP/IP máquinas. Cada mensagem UDP é conhecida como um datagrama de usuário. que é o comprimento apenas do cabeçalho.

não é confiável como o TCP. O modo mais simples de conceber uma porta UDP é uma fila. Por este mesmo motivo. O software UDP apresenta outro exemplo de multiplexação e demultiplexação. O software colocado em cada camada de uma hierarquia de protocolo deve ser capaz de multiplexar ou demultiplexar múltiplos objetos da camada seguinte. Freqüentemente. Na maioria das implementações. Naturalmente. Conceitualmente. antes que ele possa enviar um datagrama UDP. envia uma mensagem de erro de porta não-atingida e descarta o datagrama. apenas o cabeçalho IP identifica os hosts de origem e destino. o UDP enfileira o novo datagrama na porta onde o programa aplicativo pode acessá-lo. o aplicativo pode especificar ou mudar o tamanho da fila. quando um programa aplicativo negocia com um sistema operacional para usar determinada porta. toda a multiplexação e demultiplexação entre o software UDP e os programas aplicativos ocorre através do mecanismo da porta. e aceita datagramas UDP recebidos de IP e os passa ao programa aplicativo apropriado.Arquitetura TCP/IP A camada IP é responsável apenas pela transferência de dados entre um par de hosts em uma interligação em redes. 34/85 . Se for encontrada uma correspondência. pelo fato de não verificar o reconhecimento das mensagens enviadas. cada programa aplicativo deve negociar com o sistema operacional a fim de obter uma porta de protocolo e um número de porta correspondente. para transmissão. o sistema operacional cria uma fila interna que pode reter as mensagens que estão chegando. Desse modo. Se não conferir. ocorrerá um erro se a porta estiver cheia e o UDP descartar o datagrama recebido. O UDP é um protocolo mais rápido do que o TCP. Aceita datagramas UDP de muitos programas aplicativos e os passa ao IP. verifica se o número de porta de destino confere com uma das portas atualmente em uso. Cristiano Alan Torres Pág. enquanto a camada UDP é responsável apenas pela diferenciação entre múltiplas origens ou destinos em um host. Na prática. Quando o UDP recebe um datagrama. apenas a camada UDP identifica as portas de origem e destino em um host.

os programas aplicativos freqüentemente precisam enviar grandes volumes de dados de um computador a outro. os pacotes podem ser perdidos ou danificados quando erros de transmissão interferem nos dados. ou uma rede de longas distâncias de velocidade mínima. por exemplo. ser implementado para utilizar linhas telefônicas por discagem. os procedimentos de que se valem os computadores para assegurar que os dados cheguem corretamente. Em um nível mais alto. o TCP utiliza números de porta de protocolo para identificar o destino final em uma máquina. um dos pontos fortes do TCP é a grande variedade de sistemas de transmissão que ele pode usar. inclusive o serviço de transmissão de datagramas IP. as redes de comunicação fornecem uma entrega de pacotes nãoconfiável. O TCP pode.3. O TCP posiciona-se acima do IP no esquema de divisão em camadas do protocolo. Porém. A utilização de um sistema de transmissão sem conexão e não-confiável torna-se tediosa e irritante. o serviço de stream confiável é tão importante que toda a pilha de protocolos é citada como TCP/IP. Como o UDP. TCP (Transmission Control Protocol) Em um nível mais baixo. rede local. Na realidade. O TCP pode ser utilizado com uma variedade de sistema de transmissão de pacotes. O serviço é definido pelo TCP. entregá-los após um intervalo substancial. ou entregar reproduções. e não um software. 35/85 . de determinada máquina. possibilitando aos especialistas criar um único protocolo para transmissão de stream de dados que todos os programas aplicativos pudessem utilizar. O TCP é um protocolo de comunicação. comuniquem-se simultaneamente. também. Cristiano Alan Torres Pág. permite que programas aplicativos múltiplos.2. As redes que roteiam pacotes dinamicamente podem entregá-los fora de ordem. rede de fibra óptica de alta velocidade.Arquitetura TCP/IP 4. Um dos objetivos da pesquisa de protocolos de rede foi encontrar soluções de fins gerais para problemas de transmissão confiável de streams de pacotes. e requer que os programadores criem detecção e recuperação de erros em cada programa aplicativo. e ele demultiplexa o tráfego TCP de entrada entre os programas aplicativos. o protocolo especifica o formato dos dados e das confirmações que os dois computadores trocam para oferecer uma transferência confiável e.

Os campos PORTA DE ORIGEM e PORTA DE DESTINO contêm os números de portas TCP que identificam os programas aplicativos nas extremidades da conexão. A Figura 4. enquanto o número do reconhecimento refere-se ao stream que segue em direção oposta ao segmento. transferir dados.. 0 1 2 3 4 8 16 24 31 PORTA DE ORIGEM NÚMERO DE SEQÜÊNCIA NÚMERO DO RECONHECIMENTO HLEN RESERVADO PORTA DE DESTINO BITS DE CÓDIGO JANELA PONTEIRO URGENTE ENCHIMENTO SOMA DE VERIFICAÇÃO OPÇÕES (SE HOUVER) DADOS . Observe que o número seqüencial refere-se ao stream que segue na mesma direção que o segmento. Figura 4.Arquitetura TCP/IP as portas TCP são muito mais complexas. porque determinado número delas não corresponde a um objeto único. O cabeçalho. enviar confirmações. em que os objetos a serem identificados são conexões de circuito virtual. transporta a identificação esperada e as informações de controle. o TCP foi estruturado na abstração de conexão. O formato de um segmento TCP com o cabeçalho TCP seguido de dados. Cada segmento é dividido em duas partes: um cabeçalho seguido de dados.4. 36/85 . Cristiano Alan Torres Pág.. informar tamanhos de janelas e encerrar conexões. conhecido como cabeçalho TCP.4 mostra o formato do segmento TCP. Ao contrário. e não portas isoladas. O campo NÚMERO DE SEQÜÊNCIA identifica a posição no stream de bytes do transmissor dos dados no segmento. O campo NÚMERO DO RECONHECIMENTO identifica o número do octeto que a origem espera receber depois. Os segmentos são trocados para estabelecer conexões. A unidade de transferência entre o software TCP de duas máquinas é denominada segmento.

Arquitetura TCP/IP

O campo HLEN contém um número inteiro que especifica o comprimento do cabeçalho do segmento, medido em múltiplos de 32 bits. Isso é necessário porque o campo OPÇÕES varia em comprimento, dependendo de quais opções foram incluídas. Assim, o tamanho do cabeçalho TCP varia de acordo com as opções selecionadas. Uma das idéias mais importantes e complexas em TCP concentra-se na maneira como ele trata o timeout e a retransmissão. A exemplo de outro protocolos confiáveis, o TCP espera que o destino envie confirmação 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 confirmação. Se o temporizador terminar antes que os dados do segmento tenham sido confirmados, o TCP aceita que esse segmento foi perdido ou destruído e o retransmite. O software TCP precisa aceitar as duas grandes diferenças entre o tempo necessário para atingir vários destinos e as alterações necessárias no tempo para atingir um determinado destino, de acordo com a variação de carga do tráfego. O TCP monitora o desempenho de cada conexão e deduz valores razoáveis para timeout. À medida que o desempenho de uma conexão muda, o TCP revisa seu valor de timeout (ou seja, adapta-se à mudança). O congestionamento é uma condição de retardo longo causado por uma sobrecarga de datagramas em um ou mais pontos de comutação (p. ex., em roteadores). Quando ocorre um congestionamento, os intervalos aumentam e o roteador começa a enfileirar datagramas até que possa distribuí-los. Precisamos lembrar que cada roteador possui uma capacidade limitada de armazenamento e que os datagramas concorrem para esse armazenamento. Na pior hipótese, o número 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 retransmissão, de modo que reajam ao aumento do retardo com a retransmissão de datagramas. As retransmissões agravam o congestionamento em vez de o amenizarem. Se não for verificado, o aumento do tráfego produzirá um aumento do retardo, provocando uma elevação do tráfego, e assim por diante, até que a rede torne-se inútil; mas os protocolos de transporte, como o TCP, podem evitar o congestionamento reduzindo automaticamente as taxas de transmissão sempre que ocorrerem

De acordo com a especificação, o campo HLEN é o deslocamento dos dados da área situada dentro do segmento.

Cristiano Alan Torres

Pág. 37/85

Arquitetura TCP/IP

retardo. Logicamente, os algoritmos para evitar congestionamentos precisam ser criados cuidadosamente porque, mesmo em condições operacionais normais, uma interligação em redes exibirá grande variação de retardo de ida e volta.

4.4.

PROTOCOLOS DE REDE

4.4.1. IP (Internet Protocol)

O serviço mais importante de uma rede consiste em um sistema de entrega de pacotes. Tecnicamente, o serviço é definido como um sistema de transmissão sem conexão, e nãoconfiável; é análogo ao serviço oferecido por hardwares de redes. O serviço é conhecido como não-confiável porque a entrega não é garantida. O pacote pode ser perdido, reproduzido, atrasar-se ou ser entregue com problemas, mas o serviço não detectará tais condições, nem informará isso ao transmissor nem ao receptor. Ele é denominado sem conexão porque cada pacote é independente dos outros, uma seqüência de pacotes enviados de um computador a outro pode trafegar por caminhos diferentes, ou alguns podem ser perdidos enquanto outros são entregues. O protocolo que define o mecanismo de transmissão sem conexão e não-confiável é conhecido como Internet Protocol. O IP oferece três definições importantes: • O protocolo IP define a unidade básica de transferência de dados utilizada através de uma interligação em redes TCP/IP, assim, ela especifica o formato exato de todos os dados à medida que ela passa pela interligação em redes TCP/IP. • O software IP desempenha a função de roteamento, escolhendo um caminho por onde os dados serão enviados.

Cristiano Alan Torres

Pág. 38/85

Arquitetura TCP/IP

O IP inclui um conjunto de regras que concentram a idéia da entrega não-confiável 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 condições segundo as quais os pacotes podem ser descarregados.

Numa rede física, a unidade de transferência é um quadro que contém um cabeçalho e dados, onde o cabeçalho fornece informações como endereço de origem e de destino (físicos). A interligação em redes denomina sua unidade básica de transferência de um datagrama IP, que é dividido em cabeçalho e áreas de dados. A diferença é que o cabeçalho do datagrama contém endereços IP, enquanto o quadro contém os endereços físicos. A Figura 4.5 mostra a organização dos campos em um datagrama:
0 1 2 3 4 8 16 24 31

VERS

HLEN

TIPO DE SERVIÇO

COMPRIMENTO TOTAL FLAGS DESLOCAMENTO DO FRAGMENTO

IDENTIFICAÇÃO TEMPO DE VIDA PROTOCOLO ENDEREÇO IP DE ORIGEM ENDEREÇO IP DE DESTINO OPÇÕES IP (SE HOUVER) DADOS ...

VERIFICAÇÃO DA SOMA DO CABEÇALHO

PADDING

Figura 4.5. Formato de um datagrama da Internet, a unidade básica de transferência em um interligação em redes TCP/IP.

Já que o processamento de datagramas se dá em softwares, o conteúdo e o formato não são retringidos por quaisquer hardwares. O primeiro campo de quatro bits de um datagrama (VERS), por exemplo, contém a versão 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 versão antes de processar um datagrama, para assegurar-se de que ele se adapta ao formato

Cristiano Alan Torres

Pág. 39/85

Arquitetura TCP/IP

que o software espera. Se os padrões mudarem, as máquinas rejeitarão datagramas com versões de protocolo diferentes dos seus, impedindo que eles deturpem o conteúdo do datagrama com um formato desatualizado. A versão atual do protocolo IP é a quatro. O campo de comprimento do cabeçalho (HLEN), também de quatro bits, fornece o comprimento do cabeçalho do datagrama medido em palavras de 32 bits. Todos os campos do cabeçalho contêm um comprimento fixo, exceto para OPÇÕES IP e os campos correspondentes PADDING. O cabeçalho mais comum, que não contém qualquer opção e nenhum preenchimento, mede 20 octetos e o campo de comprimento de cabeçalho é igual a cinco. O campo COMPRIMENTO TOTAL, fornece o comprimento do datagrama IP medido em octetos, incluindo octetos no cabeçalho e nos dados. O tamanho da área de dados pode ser calculado subtraindo-se de COMPRIMENTO TOTAL o comprimento do cabeçalho (HLEN). Já que o campo COMPRIMENTO TOTAL, possui 16 bits de coprimento, o maior tamanho possível para um datagrama IP é 216 ou 65.535 octetos. Na maioria do aplicativos, essa não é uma limitação rígida. No futuro pode tornar-se mais importante, se as redes de velocidade mais alta puderem transportar pacotes de dados maiores que 65.535 octetos. Três campos no cabeçalho do datagrama, IDENTIFICAÇÃO, FLAGS e DESLOCAMENTO DO FRAGMENTO, controlam a fragmentação e a remontagem de datagramas. O campo IDENTIFICAÇÃO contém um número inteiro único que identifica o datagrama, sua finalidade principal é permitir que o destino saiba quais datagramas estão chegando e a que datagramas pertencem. O campo DESLOCAMENTO DO FRAGMENTO é responsável 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 fragmentação, define se o datagrama pode ou não 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 interligação 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 interligação quando seu tempo expira. PROTOCOLO especifica qual Cristiano Alan Torres Pág. 40/85

Ele representa bits contendo zero e que podem ser necessários para garantir que o cabeçalho do datagrama se estenda até o múltiplo exato de 32 bits. reunindo-os com uma aritmética complemento de um. e as opções são incluídas principalmente para testes ou depuração da rede. Duas máquinas só podem executar o encaminhamento direta se ambas se conectarem diretamente a uma mesma rede física (p. O objetivo do IP é fornecer uma rede virtual que abranja várias redes físicas e ofereça um serviço de entrega de datagrama sem conexão. do que está sendo enviado no datagrama. uma única Ethernet).. através de uma única rede física para outra máquina. logicamente. eles especificam os endereços IP da origem e do último destino. O campo denominado DADOS mostra o início da área de dados do datagrama. O campo OPÇÕES IP que se segue ao endereço de destino não é necessário em todo datagrama. O campo VERIFICAÇÃO DA SOMA DO CABEÇALHO assegura a integridade dos valores de cabeçalho.Arquitetura TCP/IP protocolo de alto nível foi utilizado para criar a mensagem que está sendo transportada na área DADOS do datagrama. todas as implementações de padrões precisam incluí-lo. Os campos ENDEREÇO IP DE ORIGEM e ENDEREÇO IP DE DESTINO contêm endereços IP de 32 bits do transmissor do datagrama e do receptor desejado. os campos da origem e destino nunca mudam. ex. Embora o datagrama possa ser roteado através de muiots roteadores intermediários. O campo PADDING depende das opções selecionadas. considera-se que o campo VERIFICAÇÃO DA SOMA DO CABEÇALHO contenha zero. e a seguir considerando o complemento de um como o resultado. O encaminhamento direto é a transmissão de um datagrama. assim. A verificação IP é formada com o tratamento do cabeçalho como uma seqüência de números inteiros de 16 bits (na ordem de bytes da rede). O roteamento se classifica em dois tipos: encaminhamento direto e encaminhamento indireto. seu comprimento depende. 41/85 . o processamento de opções é parte integrante do protocolo IP. Contudo. Para a finalidade de calcular a soma de verificação. O algoritmo de roteamento IP deve escolher a forma pela qual enviará um datagrama através de várias redes físicas. O Cristiano Alan Torres Pág.

Embora seja possível para uma tabela de roteamento conter um endereço de Cristiano Alan Torres Pág.Arquitetura TCP/IP encaminhamento indireto ocorre quando o destino não se encontra na mesma rede física. forma um quadro usando aquele endereço físico. os hosts ficam proibidos de tentar encaminhar datagramas acidentalmente roteados para a máquina errada). 42/85 .) Se a tabela contiver uma rota específica do host para D envie o datagrama para o próximo passo da rota especificada na tabela Se a tabela contiver uma rota para a rede N envie o datagrama para o próximo passo da rota especificada na tabela Se a tabela contiver uma rota padrão envie o datagrama para o roteador padrão especificado na tabela Caso contrário declare um erro de roteamento. do protocolo de nível mais alto. Após usar o endereço do próximo passo da rota para encontrar um endereço físico. o software de interface da rede entrega-o ao software IP para processamento. O endereço IP selecionado pelo algoritmo de roteamento IP é conhecido como endereço do próximo passo da rota. Quando um datagrama IP chega a um host. O algoritmo de roteamento da interligação em redes é orientado por tabela e usa apenas endereços IP. forçando o transmissor a passar o datagrama para um roteador executar a entrega. o host deve descartar o datagrama (ou seja. do datagrama e calcule o prefixo da rede. encapsular o datagrama e enviar o quadro. O software da interface de rede vincula o endereço do próximo passo da rota a um endereço físico. o software IP do host aceita o datagrama e passa-o ao software apropriado. Se o endereço de destino do datagrama corresponder ao endereço de IP do host. o software de interface da rede descarta o endereço do próximo passo da rota. D. para posterior processamento. N. O algoritmo de roteamento IP pode ser descrito da seguinte forma: Extrai o endereço IP de destino. porque indica para onde o datagrama deve ser enviado (mesmo que não seja o último destino). Se não houver correspondência com o IP de destino. Se N corresponder com qualquer endereço de rede conectado diretamente entregue datagrama ao destino D através desta rede (Isto envolve converter D para um endereço físico. coloca o datagrama na parte de dados do quadro e envia o resultado.

é considerado uma parte necessária do IP e deve ser incluído em cada implementação de IP. O ICMP permite que os roteadores enviem mensagens de erro ou de controle aos outros roteadores ou aos hosts. o ICMP é um mecanismo para relatar erros. O uso de uma rota padrão também pode manter pequena a tabela de roteamento. a maior parte dessas tabelas contém apenas endereços de rede. ICMP (Internet Control Message Protocol) Para permitir que os roteadores de uma interligação em redes informem os erros ou forneçam informações sobre ocorrências inesperadas. Cristiano Alan Torres Pág. 4.2. Do ponto de vista técnico. e o software de IP em outra.4. mantendo pequenas as tabelas de roteamento. Um host pode usar o ICMP para se corresponder com um roteador ou com outro host. As mensagens ICMP são geradas por gateways na rota de transporte de um datagrama ou pela estação de destino. Fornece um meio pelo qual os roteadores que encontram erros possam levá-los ao conhecimento do transmissor. conhecido como ICMP – Internet Control Message Protocol (Protocolo Internet de Mensagem de Controle). Quando ocorre algum problema previsto pelo ICMP.Arquitetura TCP/IP destino específico ao host. A mensagem ICMP descrevendo a situação é preparada e entregue à camada IP (Figura 4. 43/85 .6). os projetistas acrescentaram aos protocolos TCP/IP um mecanismo de mensagem para fins específicos. possibilita a comunicação entre o software do IP em uma máquina. que adiciona à mensagem ICMP o cabeçalho IP e envia ao emissor do datagrama com o qual ocorreu o problema. A principal vantagem de permitir que os hosts usem ICMP é que isto fornece um mecanismo único usado para todas as mensagens de controle de informação. principalmente para hosts que só conseguem acessar um roteador.

a máquina responde enviando uma resposta que contém o endereço de hardware necessitado.4. ARP (Address Resolution Protocol) Os endereços IP são atribuídos independente de um endereço de hardware físico de uma máquina. Se a solicitação combina com um endereço IP de máquina. A solicitação contém o endereço IP da máquina para o qual um endereço de hardware é requisitado. difundindo uma solicitação ARP. O ARP executa a conversão de endereço dinâmica. 4. os mapeamentos devem ser executados dinamicamente. um mapeamento direto pode ser estabelecido tendo o endereço físico da máquina codificado em seu endereço IP. ARP permite que as máquinas convertam endereços sem manter um registro permanente das vinculações. Encapsulamento da mensagem ICMP em um Datagrama IP. usando somente o sistema de comunicação de rede de baixo nível. o software de rede deve mapear o endereço IP em um endereço físico de hardware e usar o endereço de hardware para transmitir o quadro. Cristiano Alan Torres Pág. Uma máquina usa ARP para descobrir o endereço de hardware de outra máquina. Para enviar um pacote de interligação em redes através de uma rede física de um computador para outro. De outra maneira. não são transmitidas por difusão. As respostas são dirigidas para uma máquina.3.Arquitetura TCP/IP Mensagem ICMP Camada IP Camada Inferior Cabeçalho IP Cabeçalho do Quadro Dados IP Dados do Quadro Figura 4. Todas as máquinas de uma rede recebem uma solicitação ARP. Se os endereços de hardware forem menores do que os endereços IP. 44/85 .6.

o cache elimina muitas solicitações de difusão ARP. O protocolo RARP permite que a partir do endereço físico. 4. por exemplo. utilizar servidores RARP múltiplos torna mais provável uma colisão. difundir novamente a Cristiano Alan Torres Pág.Arquitetura TCP/IP Para tornar ARP eficiente. Em circunstâncias normais. mas apenas registram seu tempo de chegada. A principal vantagem de possuir diversas máquinas funcionando como servidores RARP é tornar o sistema mais confiável. ou excessivamente sobrecarregado para responder.4. a máquina original fará um intervalo para aguardar uma resposta e. a seguir. Todos os servidores que não sejam principais recebem a solicitação. RARP (Reverse Address Resolution Protocol) Este protocolo destina-se à solução do problema inverso ao resolvido pelo ARP. mas possui o endereço físico correspondente. que possui informações de mapeamento de todos os hosts da rede. e ambas envolvem o aumento do intervalo entre as respostas: • A cada máquina que faz solicitações RARP é atribuído um servidor principal. Se o servidor principal não estiver disponível. há pelos menos duas possibilidades. é muito mais provável que o serviço esteja disponível. somente o servidor principal da máquina responde à sua solicitação RARP. A principal desvantagem de se utilizarem muitos servidores é que quando uma máquina difunde uma solicitação RARP. é necessário ao menos um servidor RARP. Em uma Ethernet. Para que o RARP funcione. 45/85 . um outro responderá à solicitação. cada máquina trata as vinculações entre endereços físicos IP. Como o tráfego de interligação em redes geralmente consiste em uma seqüência de interações entre pares de máquinas.4. Assim. Pode haver um ou vários servidores RARP na mesma rede. a rede torna-se sobrecarregada se todos os servidores tentam responder. Se um servidor estiver desativado. O problema RARP é um host que não conhece o seu próprio endereço IP ou o de um outro host. Para evitar respostas múltiplas e simultâneas. seja obtido o endereço IP correspondente.

Cristiano Alan Torres Pág. a seguir. ele responde. Quando o servidor principal não está disponível. a máquina solicitante sofre um pequeno retardo antes que uma resposta seja recebida. o projetista assegura que as máquinas solicitantes não difundiram antes de receber uma resposta. o servidor principal responde imediatamente e com intervalos entre as respostas sucessivas. Sempre que um servidor. Em circunstâncias normais. Cada máquina nãoprincipal que receber uma solicitação calcula um intervalo aleatório e. mas tenta impedir que todos os servidores não-principais transmitam respostas simultaneamente. 46/85 .Arquitetura TCP/IP solicitação. de modo que há pouca probabilidade de que cheguem ao mesmo tempo. envia uma resposta. receber uma segunda cópia de uma solicitação RARP em um curto espaço após a primeira. que não seja o principal. Escolhendo os intervalos com cuidado. • A segunda solução utiliza um esquema semelhante.

Arquitetura TCP/IP 5. Tabela de Roteamento do Gateway B.7 Default Roteamento Conexão Direta Conexão Direta 128.1.15. precisa transmitir um datagrama para uma estação que não está diretamente conectada à mesma sub-rede. Sempre que a camada IP.1. ela consulta a tabela de roteamento a fim de determinar o gateway para o qual esse datagrama deve ser enviado.15.1.3 128.15.7 A B E F 128.1 C D 128. ROTEAMENTO BASEADO EM TABELAS Este algoritmo do protocolo IP utiliza uma tabela de roteamento que armazena informações sobre como atingir cada sub-rede de rede internet.15 HOST B 128. 128.10 129. 47/85 .3 Destino 128. em uma estação ou em um gateway.10 128.1. Cristiano Alan Torres Pág.1.15.1 INTERNET Figura 5. ROTEAMENTO 5.15 129.1.

que são discutidos a seguir. só determina o próximo passo no caminho para um destinatário. são armazenados os endereços das sub-redes. Nem a estação emissora nem o gateway conhecem a rota completa até a estação a estação destinatária. A tabela de roteamento do IP pode conter informações sobre todos os destinatários de uma rede internet. A utilização de rotas predefinidas é particularmente útil em redes com um único gateway. ALGORITMOS DE ROTEAMENTO O algoritmo de roteamento é a técnica utilizada pelos gateways para se localizarem mutuamente e para conseguirem comunicação com as diversas redes de uma rede Internet. A tabela de roteamento de um gateway é atualizada a partir de informações obtidas na execução do algoritmo de roteamento utilizados na arquitetura TCP/IP: Vetor-Distância (Vector-Distance) e Estado-do-Enlace (Link-State). Vale ressaltar que as entradas dessa tabela só referenciam gateways que podem ser atingidos diretamente. 48/85 . todos os gateways listados na tabela de roteamento de uma máquina M estão conectados às sub-redes físicas nas quais a máquina M está conectada. portanto.G).Arquitetura TCP/IP Tipicamente. já que a maioria das máquinas não teria espaço em memória suficiente para isso Por esse motivo. Outra técnica utilizada para minimizar o tamanho das tabelas é a utilização de rotas predefinidas (default) para o qual um datagrama deve ser enviado sempre que não for encontrada na tabela uma entrada específica para o endereço IP destino.2. isto é. 5. já que todas as demais sub-redes da rede Internet devem ser atingidas mediante esse gateway. Cristiano Alan Torres Pág. Um exemplo de tabela de roteamento é dado na Figura 5. Essa tabela. a tabela de roteamento do IP contém entradas do tipo (N.1. onde N é um endereço IP (endereço de destino) e G é endereço IP do próximo gateway para atingir N.

ROTEAMENTO VECTOR-DISTANCE Inicialmente. deve-se considerar a distância entre os gateways emissor e receptor. se na tabela do emissor existir uma entrada que não está presente na tabela do receptor. para cada sub-rede especificada na tabela. Cristiano Alan Torres Pág. os campos de distância devem valer zero. A Figura 5.Inicialmente. 49/85 . (por exemplo. se a distância associada a uma sub-rede que passa pelo emissor tiver mudado.2. A cada sub-rede especificada na tabela está associada a distância entre a mesma e o gateway que mantém a tabela. Periodicamente. ou seja. existe associada um campo que indica o próximo gateway na rota para essa sub-rede. a compara com a sua própria e modifica esta última nos seguintes casos: • se o gateway emissor conhecer um caminho maios curto para determinada sub-rede. cada gateway envia uma cópia de sua tabela para todo o gateway que possa atingir diretamente. ou seja.2 ilustra este tipo de roteamento. O gateway que recebe a tabela. ou seja se a distância apresentada na tabela do emissor for menor do que a da tabela do receptor. • se uma rota que passa pelo emissor tiver sido modificada. pois somente as sub-redes às quais o gateway está diretamente conectado são especificadas na tabela. esta entrada é inserida na tabela do receptor. Vale lembrar que.Arquitetura TCP/IP 5. cada gateway possui uma tabela contendo uma entrada para cada sub-rede à qual está conectado. Esta distância pode ser medida em hops (número de gateways a atravessar para atingir uma sub-rede) ou em retardo (tempo necessário para a subrede). • se o gateway emissor apresentar uma sub-rede que o receptor não conhece. é necessário somar 1 no caso da métrica baseada em hops). Na atualização dos campos de distância da tabela do receptor.1.

cada gateways deve conhecer a topologia completa da rede Internet. ROTEAMENTO LINK-STATE (Shortest Path First) Neste algoritmo. Cada gateway exerce duas funções principais.2. ou seja se estiverem à mesma rede física. senão o algoritmo não converge).2. Se acontecer uma resposta. 50/85 . alguns gateways possuem informações de roteamento inconsistentes. durante esse período de propagação. onde novas conexões surgem e outras são desativadas com freqüência. Roteamento Vector-Distância. em ambientes dinâmicos.Arquitetura TCP/IP O algoritmo é simples e de fácil implementação. pois são diretamente proporcionais ao número total de redes e gateways presentes na rede Internet (todos os gateways devem participar.2. A 1 B 2 C Tabela do Nó A Destino Ligação Distância 0 1 2 1 2 3 4 5 6 D E A B C D E local 1 1 3 1 Figura 5. A segunda é enviar periodicamente os dados de estado de seus enlaces a todos os outros gateways da rede Internet. sob Cristiano Alan Torres Pág. A primeira é testar continuamente o estado dos enlaces com os gateways vizinhos. as mensagens de atualização tornam-se enormes. Isto é feito descrevendo-se os gateways interconectados entre si por enlaces (links). Além disso. a informação de atualização propaga-se muito lentamente e. 5. Existe um enlace entre dois gateways se ambos puderem comunicar-se diretamente. O teste de estado é realizado através do envio de mensagens curtas que exigem resposta. porém.

Os algoritmos descritos anteriormente assumem. O tamanho das mensagens não depende do número de gateways diretamente conectados ao gateway emissor. O cálculo das rotas é realizado localmente. por exemplo.3.3 ilustra um exemplo deste tipo de roteamento. A 1 B 2 C Tabela do Nó A Fonte Ligação B C D E D E Distância 1 2 3 5 6 4 3 4 5 6 D E A B A C E B Figura 5.Arquitetura TCP/IP condições que variam segundo a implementação do protocolo. Como as mensagens trafegam inalteradas a detecção de problemas torna-se mais fácil. . senão está inativo. de Dijskstra. a existência de uma tabela de roteamento devidamente iniciada. Várias soluções manuais existem como. Entretanto. o SPF possui diversas vantagens. aplicado à topologia da rede Internet. 51/85 . Em relação ao algoritmo Vector-Distance. a priori. Os dados de estado indicam. simplesmente. o problema principal é a manutenção dessas tabelas devido à dinâmica das redes. Esta iniciação depende do próprio sistema computacional no qual se situa a camada IP. Para resolver esse problema torna-se imprescindível o Cristiano Alan Torres Pág. não dependendo de máquinas intermediárias. A figura 5. um gateway atualiza seu mapa da rede Internet ativado ou desativado os enlaces em questão e recalcula as rotas para todos os destinos possíveis através do algoritmo Shortest-Path-First (SPF). Roteamento Link-State. se há possibilidade de comunicação entre dois gateways. Ao receber uma informação de estado. o enlace está ativo. a carga de uma tabela pré-configurada com dados limitados ou a carga de uma tabela vazia que são preenchidas através de comandos.Estes dados são em geral enviados em modo difusão (broadcast) individualmente.

Não existe um protocolo padrão entre os gateways de um mesmo SA .3. 5. se o algoritmo de roteamento implementado for do tipo Vector-Distance. esse método torna-se inviável com o crescimento do SA . PROTOCOLOS DE ROTEAMENTO O protocolo de roteamento determina a forma pela qual os gateways devem trocar informações necessárias à execução do algoritmo de roteamento. O administrador mantém uma tabela de redes do SA que é atualizada sempre que uma rede é removida ou inserida no SA . IGP – Interior Gateway Protocol O termo IGP é utilizado para designar o protocolo usado na troca de informações de roteamento entre Interior Gateways (IG).Arquitetura TCP/IP uso de mecanismos automáticos. 5. previstos nos protocolos de roteamento descritos nos itens seguintes.3. Além de não ser confiável. Cristiano Alan Torres Pág. Os protocolos IGP mais conhecidos são: RIP (Routing Information Protocol). 52/85 . as tabelas de roteamento podem ser determinadas. o termo IGP é usado para referenciar qualquer protocolo de roteamento entre Interior Gateways (IG). Hello Protocol e OSPF (Open Shortest-Path-Frist Protocol). o protocolo de roteamento deve definir como cada gateway envia aos demais a sua distância em relação a cada sub-rede Internet. Em sistemas autônomos (SA) pequenos. Por exemplo.1. manualmente. pelo administrador do sistema. Por esse motivo.

As máquinas ativas divulgam informações de roteamento para as outras. A métrica utilizada para o cálculo de distância é baseada no número de hops (número de gateways) na melhor rota entre o gateway G e a rede.Open Shortest-Path-First Protocol O protocolo OSPF foi elaborado por um grupo de trabalho da Internet Engineering Task Force com o propósito de atender às exigências de roteamento de grandes redes. um IGP para sistemas autônomos de porte. atualizam suas rotas de acordo com o algoritmo de roteamento Vector-Distance. Um gateway executando o RIP no modo ativo difunde as mensagens a cada 30 segundos e também quando recebe uma solicitação de informação de outro gateway.Arquitetura TCP/IP RIP .1 Para evitar que uma rota oscile entre dois ou mais caminhos com a mesma métrica.2. Cada par é composto de um endereço de sub-rede IP e da distância do gateway G à sub-rede . quando recebem uma mensagem. É um protocolo que usa o algoritmo SPS e compreende Cristiano Alan Torres Pág. 53/85 . Tipicamente. O RIP divide as máquinas da sub-rede em ativas e passivas. algumas implementações do RIP informam uma distância maior quando a rota atravessa uma rede lenta. o RIP especifica que uma rota deve ser atualizada somente quando a nova rota possuir distância menor que a atual. Cada mensagem enviada por um gateway G consiste em pares de informações. Curiosamente o RIP assume o valor "1" para a distância de um gateway a uma sub-rede à qual ele está diretamente conectado. descrito no item 5. enquanto as estações o executam no modo passivo. enquanto as máquinas passivas recebem as informações e atualizam suas rotas. ou seja. os gateways executam o RIP no modo ativo. Para compensar diferenças de tecnologia de redes. A mensagem difundida normalmente contém informações sobre todas as sub-redes do SA. Este protocolo permite a troca de informações utilizadas pelo algoritmo de roteamento VectorDistance em uma sub-rede dotada do serviço de difusão de mensagens. OSPF . Participantes ativos e passivos do RIP. sem divulga-las. extraídas da tabela de roteamento do gateway.Routing Information Protocol O RIP foi originalmente desenvolvido pela Universidade da Califórnia em Berkeley.

Os gateways trocam mensagens entre si para eleger o gateway mestre (DR -Designated Router). sua primeira ação é contatar os gateways vizinhos. indicam o estado e o custo associado às interfaces e aos gateways vizinhos. facilitando o crescimento modular do SA . O OSPF usa o roteamento link state. Link Status Request e Link Status Uptade. Na mensagem Link Status Updade é usada por um gateway no envio de informações sobre o estado de seus enlaces. As informações de roteamento trocados entre gateways. Quando um gateway OSPF é inicializado. A mensagem Link Status Request é usada por um gateway na requisição de dados atualizados a outro gateway. reduz significativamente o tráfego relativo às mensagens de roteamento. com o função de gerador/distribuidor de informações. gerando tráfego excessivo. através da mensagem Database Description. O formato da mensagem de uma área conhecida apenas dentro da mesma. as quais permitem diminuir a sobrecarga necessária para a manutenção da topologia atualizada de uma rede Internet: • • • • • roteamento levando em consideração o tipo de serviço. uma base de topologia pode gerar várias mensagens. 54/85 . divulgação e informações recebidas de exterior gateways. Este gateway torna-se responsável pela notificação de informações de roteamento a todos os gateways presentes na rede (gateways secundários). sendo a topologia definição da topologia de rede virtual que abstraia detalhes de rede real. Database Description. que são trocadas somente entre o gateway mestre e os demais gateways secundários. Nos protocolos de roteamento discutidos anteriormente todos os gateways enviavam e recebiam informações de roteamento. Estas mensagens são confirmadas pelos gateways que a recebem. balanceamento de carga entre rotas de mesmo tamanho.realizada a troca de informações de roteamento entre o gateways mestres das várias sub-redes em que esteja Cristiano Alan Torres Pág. permite distinguir informações recebidas de fontes externas daquelas recebidas dentro do SA . O protocolo OSPF é baseado nas mensagens: Hello.Arquitetura TCP/IP uma série de facilidades adicionais listados a seguir. Uma vez estabelecido o gateway mestre da cada sub-rede Internet . Como as bases podem ser grandes. A figura de um gateway mestre. participação dos gateways e redes em subgrupos denominados áreas. através de mensagens Hello.

ou Pág.Exterior Gateway Protocol O protocolo EGP não está vinculado a nenhum algoritmo de roteamento. por exemplo. Uma situação de loop pode ocorrer. EGP . O EGP é um protocolo de roteamento elaborado para uma rede de sistemas autônomos organizados em uma estrutura tipo árvore.3.2. Dois gateways podem tornar-se vizinhos quando: • estão diretamente conectadas por um. como resultado. O EGP define as informações a serem trocadas entre EG (basicamente as tabelas de roteamento) e os elementos de protocolo necessários à troca dessas informações. são calculados os custos totais das rotas até cada sub-rede da Internet. Essas mensagens trafegam somente entre gateways vizinhos. por exemplo. O algoritmo SPF é. 5. uma rede sem loops (ciclos) na sua topologia. ou seja. Tais informações permitem que um ou mais sistemas autônomos sejam utilizados como intermediários do tráfego originado em algum sistema autônomo e destinado a outro.Arquitetura TCP/IP conectado. então executado a partir dessa base e. o gateway monta a sua base de dados de roteamento. quando uma tabela de roteamento de um gateway G indica o gateway G' como a melhor saída para uma rede N. A partir dos dados de custo. é obtida uma árvore de roteamento com o gateway na raiz. e a tabela de roteamento de G' indica G como a melhor saída para a rede N. As informações trocadas neste protocolo não impedem que ocorram loops no roteamento. para que dois gateways se comuniquem através do EGP não é necessário que eles executem um mesmo algoritmo de roteamento. Isto é. As mensagens do EGP são associadas a cada Sistema Autônomo através de uma identificação de 16 bits que é colocada no cabeçalho da cada mensagem do EGP. sem que o usuário da rede perceba que a rede é composta por mais de um sistema autônomo. indicando a conectividade com outras redes. 55/85 Cristiano Alan Torres . cabo.

3. Dois gateways tornam-se vizinhos através da troca de mensagens de Aquisição de Vizinho. Roteadores com BGP se preocupam com critérios políticos de roteamento. para suprir as deficiências do EGP no roteamento entre sistemas autônomos. Além disso.Arquitetura TCP/IP • estão conectados por uma rede transparente para eles. Esta é uma tarefa do administrador do SA . 5. O EGP é um protocolo do tipo solicitação (polling). para conhecer o estado do vizinho (conectado/desconectado). Não faz parte do protocolo EGP determinar quando dois gateways devem tornar-se vizinhos. Existia a necessidade de acrescentar funções de policiamento no roteamento e o protocolo devia suportar topologias complexas. para identificar quais redes podem ser acessadas através do vizinho. As mensagens são trocadas somente quando ocorre uma solicitação de um dos vizinhos. esse protocolo permite que um S A tenha um mecanismo de roteamento interno que não é afetado por falhas em outros sistemas. Entretanto. isto é. o uso do EGP tornou-se limitado. dois gateways passam a trocar mensagens de Disponibilidade. o EGP permite que cada gateway controle a sua taxa de envio e recebimento de informação de roteamento. e mensagens de Alcance. Por isso. Consequentemente surgiu o BGP. Um sistema autônomo (SA) deve querer habilidade de enviar pacotes para algum site e receber pacotes de outro site de seu interesse. Por exemplo. companhias telefônicas devem atuar como portadora de seus clientes. uma rede cuja estrutura interna eles não conhecem. ele não deve gostar de conduzir pacotes entre sistemas autônomos (SA's) que não seja de seu interesse. mas não dos outros. Cristiano Alan Torres Pág. BGP – Border Gateway Protocol Com o crescimento da Internet. Após se tornarem vizinhos.3. 56/85 .

Operando deste modo eles fornecem uma comunicação confiável e escondem os detalhes da rede que os pacotes estão passando. ao invés de periodicamente dar a cada vizinho a distância estimada para cada possível destino. como mostra a Figura 5. cada roteador diz a seus vizinhos o caminho exato que está usando.3. Pares de roteadores BGP se comunicam através de conexões TCP. somente o destino D é ilustrado). Ao invés de manter a distância de cada destino. 57/85 . de segurança. possivelmente com algumas restrições. Podem ser usadas para tráfego em trânsito. Dois roteadores BGP são considerados conectados se eles compartilham uma rede comum. que estão dispostas a manipular pacotes de outros. Finalmente. tráfego iniciando ou terminando na IBM. Similarmente. Dado o interesse de um BGP especial no tráfego. A segunda é as redes multiconnected networks. Quando os vizinhos sua informação de roteamento. não trafega para Microsoft.Arquitetura TCP/IP O protocolo BGP foi projetado para permitir muitos critérios de roteamento a serem aplicadas no tráfego entre SA's. considerar os roteadores conforme a Figura 5. Estas não podem ser usadas para trânsito na rede. na qual somente tem conexão para um roteador BGP. existem as redes transit networks. ou econômicas. exceto se recusarem. cada roteador BGP mantém o caminho usado. o mundo consiste de outros roteadores BGP interconectados. Os critérios são configurados manualmente em cada roteador BGP. eles fornecem seus caminhos completos. Em particular. Como um exemplo. Supor que ele usa o caminho FGCD para alcançar D. as redes são grupadas em três categorias. considerar a tabela de roteamento de F. mas com uma pequena diferença. porque só tem uma ligação. A primeira categoria é stubs networks.3 (por simplicidade. BGP é um protocolo que usa o algoritmo vector distance. Cristiano Alan Torres Pág. Do ponto de vista do roteador BGP. Critérios típicos envolvem considerações de ordem política. como um backbone. Alguns exemplos de limites de roteamento são: nunca coloque o Iraque na rota para o Pentágono.

F examina-os para ver qual é o melhor. Verifica-se que duas rotas estão sem sentido. quando um roteador que não faz parte do grupo. Roteamento com o protocolo BGP. uma diferente estratégia de podar a árvore deve ser seguida. porque passam por F. Cada roteador BGP contém um módulo que examina rotas para um dado destino e dá um valor a eles. O roteador então adota a rota de menor distância. supor que G quebre ou a linha FG esteja desativada. A escolha está entre B e G. Por exemplo. O algoritmo básico é o reverse path forwarding. porque estes caminhos passam por F. IFGCD e EFGCD. então é escolhido FBCD como a nova rota. Após todos os caminhos chegarem dos vizinhos. Alguma rota viola um critério de roteamento e seu valor é infinito. BGP facilmente resolve o problema de contagem infinita que causa problema a outros algoritmos de roteamento. Entretanto. Estas rotas são BCD.Arquitetura TCP/IP B C D F recebe informações de seus vizinhos sobre D: de de de de H B: BCD G: GCD I: IFGCD E: EFGCD A G F E I J (a) (b) Figura 5. retornando um número da distância para o destino de cada rota.3. Cristiano Alan Torres Pág. F então recebe rotas dos outros três vizinhos. Vector-distance. 58/85 . Rapidamente descarta os caminhos de I e E.

ROTEAMENTO MULTICAST A comunicação IP normal é ponto-a-ponto. Existe dois tipos de grupos de endereços: permanente e temporário. usando a classe de endereços D. Cristiano Alan Torres Pág.0.224. Multicasting é implementado por roteadores multicast especiais. Um grupo permanente sempre existirá e não precisa ser configurado.0.1) perguntando para eles responderem de volta. Exemplos de aplicações multiponto são replicação de dados. Ele tem dois tipos de pacote: consulta e resposta.0.0.0.todos os sistemas numa rede local. 59/85 .224. . a comunicação multiponto é útil para o processo de enviar mensagens para um grande número de receptores simultaneamente. . Entretanto. banco de dados distribuídos e multiconferência. No endereço IP. ele responde para que o emissor não envie mensagens para ele. Cada endereço da classe D identifica um grupo de estações.5 . Alguns exemplos de endereços de grupo permanente são: . 28 bits estão disponíveis para identificar grupos.1 .2 . o pacote é liberado para todos os membros do grupo. que é similar ao ICMP.Arquitetura TCP/IP recebe uma mensagem multicast.224.todos os roteadores OSPF numa rede local.0.0.4. 5. O IP suporta multicast.todos os roteadores numa rede local.0. cada roteador multicast envia um pacote para as estações de sua rede local (endereço 224. quais os grupos que seus processos pertencem. Quando um processo envia um pacote para endereço de classe D. Cerca de uma vez a cada minuto. Estes pacotes de consultas e respostas usam um protocolo chamado IGMP (Internet Group Management Protocol) . cada um com formato fixo contendo alguma informação de controle na primeira palavra do campo payload e um endereço classe D na segunda palavra. para algumas aplicações. mas não garante que todos receberão o pacote.

Por exemplo.2 2 2 1. Alguns roteadores são ligados nos grupos. os processos estão separados em vários locais. mas trabalham juntos em grupo.4.GRUPO 1 (d) ARVORE MULTICAST . Por exemplo. 1 e 2. cada roteador constrói sua spanning tree selecionando enlaces na rede formando uma árvore.2 1. Roteamento Multicast. Para realizar esta tarefa é necessário utilizar uma técnica de roteamento multiponto.4(b). A spanning tree para o roteador mais a esquerda é mostrado na figura 5. um grupo de processos implementando um sistema de banco de dados distribuído.Arquitetura TCP/IP Para algumas aplicações. Nele é freqüente um processo enviar uma mensagem para todos os outros membros do grupo. Cristiano Alan Torres Pág.2 1. de forma a cobrir todos os outros roteadores na sub-rede. Para fazer multicasting. 60/85 . como indicado na Figura 5. 2 1 2 1 1.2 2 2 1 1 1 1 (b) "SPANNING TREE" DO ROTEADOR MAIS A ESQUERDA (a) SUB-REDE 1 2 1 1 2 2 2 2 1 1 (c) ARVORE MULTICAST . Então necessita-se de um modo de enviar mensagens para grupos bem definidos que são numericamente grandes. na Figura 5.4(a).4(a) temos uma sub-rede com dois grupos.GRUPO 2 Figura 5. mas pequenos comparados ao tamanho da rede.

Aqui uma única árvore spanning tree por grupo é computada. recebe uma mensagem multicast. Quando muitos grupos grandes existem. Supor que uma rede tem n grupos. uma estação envia-a para a raiz. Pacotes multicast são enviados somente na spanning tree apropriada. eliminando os roteadores que não pertencem ao grupo. Vários modos de podar a árvore são possíveis. Para enviar uma mensagem multicast. que então envia para os nós do grupo. 61/85 . Embora esta técnica não seja ótima. Uma alternativa é usar árvores chamadas core-base tree. Então a spanning tree pode ser construída iniciando no final de cada caminho até a raiz. Para cada grupo. ela reduz os custos de armazenagem de m árvores para uma árvore por grupo. m spanning trees podadas são armazenadas. uma diferente estratégia de podar a árvore deve ser seguida. sendo que cada roteador deve conhecer a topologia completa da sub-rede.4(d) ilustra a árvore do grupo 2. Uma desvantagem deste algoritmo é que para grandes redes muita memória é necessária. Entretanto. Cristiano Alan Torres Pág. ele responde para que o emissor não envie mensagens para ele. o primeiro roteador examina sua spanning tree e poda a árvore. com a raiz ("the core") perto do meio do grupo.Arquitetura TCP/IP Quando um processo envia um pacote multicast para o grupo. é gasto muito memória para armazenar as árvores. O algoritmo básico é o reverse path forwarding. Com o roteamento vector-distance. O modo mais simples é usar o roteamento linkstate.4(c) ilustra a árvore do grupo 1 e a Figura 5. para um total de m.n árvores. cada um com a média de m membros. removendo toda as linhas que não pertencem ao seu grupo. A Figura 5. quando um roteador que não faz parte do grupo.

TCP/IP EM REDES ATM O ATM é uma tecnologia de rede de alta velocidade na qual a rede possui um ou mais comutadores conectados entre si para formar uma estrutura de comutação. Na lógica.180 octetos e permite que a AAL5 divida o datagrama em células. é utilizada para o envio de dados através de uma rede ATM. Os circuitos comutados são criados por demanda. o ATM atribui a cada circuito aberto um identificador de número inteiro. Os permanentes requerem uma configuração manual. ao enviar datagramas através da rede ATM. o ATM possui mecanismos adicionais em sua camada de adaptação que são utilizados pelos aplicativos. o IP não fragmenta no tamanho da célula ATM.Arquitetura TCP/IP 6. divide o datagrama e o trailer em células menores para a transmissão através da rede e. dois computadores devem estabelecer um circuito virtual através da rede antes de transmitir dados. reagrupa o datagrama antes de encaminhá-lo ao sistema operacional do computador de destino. em particular. A AAL5 oferece uma interface que recebe e envia blocos de dados de tamanhos variados. A AAL5 acrescenta um trailer. Um host pode optar por um circuito virtual comutado ou permanente. Apesar dos níveis mais baixos do ATM utilizarem células de 53 octetos para a transmissão de dados. Um quadro não possui um endereço de origem e de destino. a MTU é determinada pelo hardware da rede. os quais podem ter octetos de até 64kb. Ao contrário. uma estrutura de comutação funciona como uma única grande rede que permite a comunicação entre quaisquer hosts. A AAL5 (Adaptation Layer 5) do ATM. Para enviar um datagrama IP através de uma rede ATM.  MTU (Maximum Transfer Unit) significa o maior volume de dados que pode ser transferido em determinada rede física. 62/85 . Cada quadro enviado pelo host ou pela rede possui um identificador de circuito. depois. o IP utiliza uma MTU de 9. Assim. Em ambos os casos. Já que o ATM é uma tecnologia baseada em conexão. Cristiano Alan Torres Pág. o transmissor precisa formar uma conexão de circuito virtual para o destino que utiliza a AAL5 e enviar o datagrama à AAL5 coo um único bloco de dados.

Os computadores formam circuitos virtuais entre si por meio dos quais alteram os datagramas. uma vinculação deve ser revalidada ou descartada. Desse modo. A presença tanto dos circuitos virtuais como dos circuitos permanentes em uma LIS torna ainda mais complicada a questão da vinculação de endereços. Um protocolo ARP modificado. faz a vinculação de endereços para os computadores em uma LIS conectada por um circuito virtual comutado. 63/85 .Arquitetura TCP/IP Uma LIS (Logical IP Subnet) é formada por um conjunto de computadores que utiliza a rede ATM em vez de uma rede local. conhecido como ATMARP. Um protocolo relativo ao ATMARP inverso é utilizado para descoberta dos endereços ATM e IP de um computador remoto conectado por um circuito virtual permanente. Os computadores de uma LIS contam com um servidor ATMARP para vincular o endereço IP de outro computador da LIS a um endereço ATM equivalente. fornecendo seus endereços IP e ATM ao servidor. conforme necessário. Como no caso do ARP convencional. Cristiano Alan Torres Pág. outros computadores podem entrar em contato com o servidor para obter uma vinculação. Cada computador de uma LIS deve fazer o registro com o servidor.

Note que é usado um conjunto de servidores interconectados. Os nomes também adotam uma estrutura similar. hierarquico e distribuído. O DNS é especificado nas RFCs 882. 883 e 973.xyz. um banco de dados distribuído que associa nomes a atributos (entre eles o endereço IP) e um algoritmo distribuído para mapear nomes em endereços.jxh. dado que ela conhece o nome da máquina com a qual se deseja comunicar. O DNS define a sintaxe dos nomes usados na Internet. Um exemplo típico é o nome chupeta. Na realidade este é apenas um tipo de informação armazenada no domain system (sistema de domínios). Um conjunto de servidores de nomes mantém o banco de dados com os nomes e endereços das máquinas conectadas a Internet. Assim e necessário um banco de dados que permita a uma aplicação encontrar um endereço. nome de um conjunto de notas que contêm levantamentos. os usuários preferem identificar as máquinas através de nomes ao invés de números. Inicialmente deve ser consultado um servidor central. As RFCs estão disponíveis on-line. Para encontrar seu endereço Internet. Os servidores de nome formam uma árvore. Entretanto. As aplicações normalmente utilizam um endereço IP de 32 bits no sentido de abrir uma conexão ou enviar um datagrama IP. ao invés de um único servidor centralizado. O servidor br  RFC (Request For Comments). avaliações. DNS (DOMAIN NAME SYSTEM) O DNS (Domain Name System) é um esquema de gerenciamento de nomes. técnicas e comentários. pode ser necessário o acesso a até quatro servidores de nomes. 64/85 . a autoridade para atribuição de nomes e delegada a instituições individuais. Existem atualmente tantas instituições conectadas a Internet que seria impraticável exigir que elas notificassem uma autoridade central toda vez que uma máquina fosse instalada ou trocasse de lugar. correspondendo a estrutura institucional. Cristiano Alan Torres Pág. bem como padrões de protocolos TCP/IP sugeridos e aceitos. idéias. regras para delegação de autoridade na definição de nomes.br. para descobrir onde está o servidor br. denominado servidor raiz.Arquitetura TCP/IP 7. Assim.

jxh. que pode conter registros definindo varias propriedades. 65/85 . O nome completo chupeta. Também é possível utilizar o DNS para armazenar informações sobre usuários. O resultado final da busca é o endereço Internet correspondente ao nome chupeta. o algoritmo de caminhamento na árvore de domínios descrito anteriormente. Cristiano Alan Torres Pág. pois os servidores de nome muitas vezes possuem informações sobre mais de um nível de domínio o que elimina uma ou mais consultas.br é um nome de domínio.xyz. Um servidor do nível br pode então ser consultado. uma vez que elimina a necessidade de implementar. Na maioria dos casos. Cada nome de domínio e um nó em um banco de dados. listas de distribuição ou outros objetos. não é necessário ter acesso a todos os domínios de um nome para encontrar o endereço correspondente. O servidor raiz informa como resultado da consulta o endereço IP de vários servidores de nome para o nível br (pode existir mais de um servidor de nomes em cada nível.br. pode-se consultar o servidor jxh sobre o endereço da máquina chupeta.jxh. Por exemplo. finalmente.Arquitetura TCP/IP é o responsável pela gerencia dos nomes das instituições/empresas brasileiras ligadas a Internet. Essa abordagem de acesso através de um processo local. De posse do endereço de um servidor xyz é possível solicitar que ele informe o endereço de um servidor jxh. e assim resolver a consulta em nível local. devolvendo o endereço IP do servidor xyz. para garantir a continuidade da operação quando um deles para de funcionar). O DNS permite que seja definido um alias (nome alternativo) para o nó. Cada um dos níveis percorridos e referenciado como sendo um domínio. quando. O DNS não se limita a manter e gerenciar endereços Internet. que pode ser implementado de modo a guardar os últimos acessos feitos. Além disso. as aplicações normalmente tem acesso ao DNS através de um processo local (servidor para as aplicações e um cliente DNS).xyz. simplifica e otimiza a tarefa das aplicações no que tange ao mapeamento de nomes em endereços. o tipo da máquina e a lista de serviços fornecidos por ela. em todas as aplicações que fazem uso do DNS.

No DNS são definidos registros que identificam a máquina que manipula as correspondências relativas a um dado nome.Arquitetura TCP/IP O DNS é particularmente importante para o sistema de correio eletrônico. Cristiano Alan Torres Pág. identificado assim onde um determinado usuário recebe suas correspondências. 66/85 . O DNS pode ser usado também para definição de listas para distribuição de correspondências.

então os toques no teclado do usuário diretamente ao computador remoto.. É na camada de Aplicação que se trata a compatibilidade entre os diversos formatos representados pelos variados tipos de estações da rede. por onde são passados as mensagens. quando o software de atribuição de nomes de domínio estiver sendo depurado). Esse terminal também retorna a saída da máquina remota até a tela do usuário. Por aceitar endereços IP.1. APLICAÇÕES As aplicações. O servidor recebe o nome de transparente. ex. Cada uma possui um RFC próprio. O TELNET transmite. 8. como se estivessem sendo digitados no teclado conectado à máquina remota. Embora o TELNET não seja sofisticado se comparado a alguns protocolos de terminal remoto. o TELNET pode ser usado com hosts mesmo que o vínculo nome/endereço não possa ser estabelecido (p.Arquitetura TCP/IP 8. O TELNET permite que um usuário em determinado site estabeleça uma conexão TCP com um servidor login situado em outro site. 67/85 . O endereçamento das aplicações é feito através de portas (chamadas padronizadas a serviços dos protocolos TCP e UDP). ele é amplamente aceito. O TELNET oferece três serviços básicos: Cristiano Alan Torres Pág. Geralmente o software do cliente do TELNET permite que o usuário especifique a máquina remota fornecendo seu nome de domínio ou seu endereço IP. não possuem uma padronização comum. porque faz com que o teclado e o monitor do usuário pareçam estar conectados diretamente à máquina remota. TELNET O protocolo TCP/IP inclui um protocolo simples de terminal remoto denominado TELNET. no modelo TCP/IP.

Em geral.. • Trata ambas as pontas da conexão de forma simétrica. Os programas clientes não precisam entender os detalhes de todos os sistemas remotos possíveis. nem obriga o cliente a ter a saída indicada na tela. O servidor deve aceitar uma conexão TCP de um cliente e. a seguir. A figura não mostra o servidor-mestre que espera novas solicitações. A Figura 8. • Inclui um mecanismo que permite ao cliente e ao servidor negociar opções e fornece um conjunto de opções padronizadas (p. “o servidor TELNET” mostrado na Figura 8.1 ilustra como os programas aplicativos implementam um cliente e servidor TELNET. qualquer ponta pode negociar opções. Em particular. eles são projetados para usar a interface padrão. 68/85 . o TELNET permite que o programa arbitrário torne-se um cliente. o cliente aceita toques de teclado do usuário e os envia ao servidor enquanto. nem mostra os escravos cuidando das outras conexões.1 representa o escravo que trata de uma conexão em particular. aceita caracteres que o servidor envia de volta e apresenta-os na tela do usuário.Arquitetura TCP/IP • Define um terminal virtual da rede fornecedora de uma interface padrão para sistemas remotos. Na prática. retransmitir dados entre a conexão TCP e o sistema operacional local. O cliente estabelece uma conexão TCP com o servidor por intermédio da qual irão se comunicar. não obriga a entrada do cliente via teclado. uma das opções verifica se os dados passados pela conexão usam o caracter padrão ASCII de sete bits ou o conjunto de oito bits). Dessa forma. Cristiano Alan Torres Pág. Uma vez estabelecida a conexão. Além do mais. um programa aplicativo existente na máquina do usuário torna-se o cliente. simultaneamente. ex. um processo de servidor-mestre aguarda novas conexões e cria um novo escravo para cuidar de uma conexão em particular. Desse modo. o servidor é mais complexo do que a figura representa porque precisa conduzir várias conexões simultâneas. quando um usuário chama o TELNET.

69/85 . O termo pseudoterminal descreve o ponto de entrada do sistema operacional que permite que o servidor de um programa em funcionamento. Os protocolos de transferência de arquivos padrão existiram para ARPANET antes que o TCP/IP se tornasse operacional. Se o sistema suporta tal abstração de pseudoterminal. Essas versões anteriores do software de transferência de arquivos evoluíram para um padrão atual conhecido como FTP (File Transfer Protocol).Arquitetura TCP/IP Cliente lê dados do terminal Cliente TELNET Cliente envia dados ao servidor Sevidor TELNET Sevidor envia dados para pseudoterminal S. como o TELNET. Dispositivo de entrada e saída de dados do usuário Servidor receb e dados do cliente S.O. transfira caracteres ao sistema operacional como se estivessem vindo de um teclado. FTP (File Transfer Protocol) A transferência de arquivos é um dos aplicativos TCP/IP usados com mais freqüência e responde por grande parte do tráfego de rede. É impossível construir um servidor TELNET. o servidor TELNET pode ser implementado com programas aplicativos. 8. Inter-rede TCP/IP Figura 8. O FTP oferece muitas vantagens além da função de transferência propriamente dita: Cristiano Alan Torres Pág. Trajeto de dados em uma sessão de terminal remoto TELNET. Cada servidor-escravo conecta um canal TCP de um cliente a um pseudoterminal específico. Acrescenta um servidor TELNET a um sistema timesharing geralmente requer modificações no sistema operacional.O.2.1. enquanto trafega do teclado do usuário até um sistema de operação remoto. a não ser que o sistema operacional forneça tal recurso.

O servidor recusa acesso aos clientes que não podem fornecer um login válido e uma senha. o processo escravo não realiza toda a computação necessária. no entanto. a Figura 8. A exemplo de outros servidores. De maneira diferente de outros servidores. transporta todas as transferências de dados. • Especificação de formato (representação). Geralmente tanto o cliente como o servidor criam um processo separado para tratar da transferência de dados. • Controle de autenticação. a maioria das implementações de servidor FTP permite o acesso simultâneo de vários clientes. Um processo de servidor principal único guarda concessões e cria um processo escravo para tratar cada conexão. O FTP requer que os clientes autorizem a si próprios enviando um nome de login e a senha ao servidor antes de requisitar a transferência e arquivos. Considerando que os detalhes exatos da arquitetura do processo dependam do sistema operacional usado. Por exemplo. Ao contrário.Arquitetura TCP/IP • Acesso interativo. o escravo aceita e trata a conexão de controle do cliente. o usuário pode determinar se um arquivo contém texto ou números inteiros binários e se os arquivos textos usam os conjuntos de caracteres ASCII ou EBCDIC. A conexão de transferência de dados. O cliente também responde normalmente à entrada “help”. A conexão de controle transporta comandos que informam ao servidor qual arquivo transferir. Os clientes usam o TCP para se conectar a um servidor. mas usa um processo ou processos adicionais para tratar uma conexão de transferência de dados à parte. muitas implementações fornecem uma interface interativa que permite que as pessoas interajam facilmente com servidores remotos. 70/85 . um usuário pode pedir uma listagem de todos os arquivos de um diretório em uma máquina remota. Apesar do TCP ser projetado para uso por programas.2 ilustra o conceito: Cristiano Alan Torres Pág. Por exemplo. que também usa o TCP como protocolo de transferência. mostrando a informação do usuário sobre possíveis comandos que podem ser chamados. O FTP permite que o cliente especifique o tipo e o formato dos dados armazenados.

quando necessário. A conexões de transferência de dados e os processos de transferência de dados que as utilizam podem ser criados dinamicamente. Cristiano Alan Torres Pág. mas a conexão de controle persiste através de uma sessão. 71/85 .2. Um usuário pode executar um programa aplicativo arbitrário e usar arquivos arbitrários para entrada ou saída. Um cliente e um servidor FTP com uma conexão de controle TCP entre eles e uma conexão TCP à parte entre seus processos e transferência de dados relacionados. NFS (Network File System) Desenvolvido inicialmente pela Sun Microsystems.Arquitetura TCP/IP Sistema Cliente Conexão de controle do cliente Sistema Servidor Transferência de dados Processo de Controle Conexão de controle do servidor Transferência de dados Processo de Controle Sistema Operacional Conexão de dados do cliente Sistema Operacional Conexão de dados do servidor Interligação em TCP/IP Figura 8. O próprio nome dos arquivos não indica se eles são locais ou remotos. Da perspectiva do usuário. o NFS (Network File System) fornece acesso de arquivo online compartilhado que é transparente e integrado. a sessão é finalizada e o software de ambas as extremidades encerra todos os processos de transferência de dados. 8. o NFS é praticamente invisível. Uma vez que a conexão de controle desaparece.3. Muitos sites TCP/IP usam NFS para interconectar seus sistemas de arquivo de computadores.

Quando um programa aplicativo requisita uma operação de arquivo.3. Quando ele recebe um pedido.3 ilustra como o NFS está inserido no sistema operacional. Código NFS em um sistema operacional. Quando o servidor remoto responde. O mecanismo de acesso a arquivos aceita o pedido e automaticamente passa-o ou para o software de sistema de arquivo local ou para o cliente NFS. este chama o sistema operacional para abrir um arquivo ou para armazenar e recuperar dados de um arquivo. Aplicativo Sistema de arquivos local Cliente NFS Disco local Conexão da inter-rede com o servidor NFS Figura 8. 72/85 .Arquitetura TCP/IP A Figura 8. o software do cliente usa o protocolo NFS para contatar o servidor apropriado em uma máquina remota e executar a operação requisitada. Quando um programa aplicativo é executado. o software do cliente devolve os resultados ao programa aplicativo. Cristiano Alan Torres Pág. o sistema operacional deve passar o pedido para o sistema de arquivo local ou para o software do cliente NFS. dependendo de o arquivo estar no disco local ou em uma máquina remota.

ele programa arquivos remotos de acesso usando exatamente as mesmas operações utilizadas para arquivos locais. obrigando o compilador a incorporar a esses procedimentos os códigos de RPC. o programador implementa os procedimentos desejados e usa outros recursos RPC para declará-los parte do servidor. No lado do cliente. O mecanismo RPC concentra todos os detalhes do protocolo. No lado do servidor. No entanto. RPC (Remote Procedure Call) Em vez de definir o protocolo NFS a partir de riscos. nem todos os computadores armazenam números inteiros binários de 32 bits no mesmo formato. Quando o programa de execução do cliente chama um dos programas remotos. possibilitando aos programadores que têm pouco conhecimento de protocolos de comunicação básicos desenvolver programas distribuídos. um mecanismo de RPC (Remote Procedure Call) para fins gerais e um XDR (eXternal Data Representation). Por exemplo. Por exemplo. o próprio NFS não fornece novos procedimentos que possam ser chamados por um programa. Basicamente. o RPC e o XDR fornecem macanismos que os programadores podem usar para construir programas distribuídos.Arquitetura TCP/IP 8. O XDR é uma ferramenta relacionada que fornece meios para que os programadores passem dados entre máquinas heterogêneas sem codificar procedimentos que convertam as representações de dados de hardware. o RPC automaticamente coleta valores para argumentos. monta uma mensagem. Do ponto de vista do programador.4. o programador atribui alguns procedimentos como remotos. um programador pode dividir um programa entre o lado do cliente e o lado do servidor que usam RPC como o principal mecanismo de comunicação. os projetistas deviam preferir montar três peças independentes: o próprio protocolo NFS. Ao contrário. envia a mensagem ao servidor remoto. a comunicação com o servidor remoto ocorre automaticamente como efeito parcial de uma chamada de procedimento remoto. Alguns armazenam o byte mais Cristiano Alan Torres Pág. também para fins gerais. espera uma resposta e armazena os valores devolvidos nos argumentos atribuídos. O objetivo seria separar os três para possibilitar o uso de RPC e XDR em outro software. 73/85 . inclusive em programas aplicativos e também em outros produtos. uma vez que um administrador tenha configurado o NFS.

Em uma extremidade de um canal de comunicação. o programa receptor solicita rotinas XDR para proceder à conversão da representação independente da máquina para a representação local da máquina. SMTP (Simple Mail Transfer Protocol) O SMTP (Simple Mail Transfer Protocol) e o protocolo usado no sistema de correio eletrônico na arquitetura Internet TCP/IP. Um usuário. A principal vantagem do XDR é automatizar grande parte da tarefa de conversão de dados. o sistema de correio eletrônico armazena uma cópia da mensagem em seu spool (área do dispositivo de armazenamento). após entregar a mensagem ao sistema de correio eletrônico. e tenta estabelecer uma conexão TCP com o servidor Cristiano Alan Torres Pág. um programa chama procedimentos XDR para fazer a conversão da representação do hardware local para a representação independente da máquina. utiliza o módulo interface com o usuário para compor a mensagem e solicita ao sistema de correio eletrônico que a entregue ao destinatário. eles fornecem o compilador XDR com os estatutos de declaração do programa para o qual os dados devem ser transformados e o compilador automaticamente gera um programa com as chamadas de biblioteca XDR necessárias. Assim. Quando recebe a mensagem do usuário. A transferência da mensagem é executada por um processo em background. Ao contrário. Uma vez que os dados tenham sido transferidos para outra máquina. enquanto outros armazenam o byte menos significativo no endereço mais alto. junto com o horário do armazenamento e a identificação do remetente e do destinatário. sem redistribuí-los. o valor do número inteiro pode mudar. 8. Os programadores não precisam digitar chamadas de procedimentos XDR normalmente. possa executar outras aplicações.5. ao desejar enviar uma mensagem. O processo de transferência de mensagens. mapeia o nome da máquina de destino em seu endereço IP.Arquitetura TCP/IP significativo no endereço de memória mais alta. O XDR resolve o problema definindo uma representação de máquina independente. se os programadores usam uma rede simplesmente para mover bytes de número inteiro. de uma máquina para outra. 74/85 . permitindo que o usuário remetente. executando em background.

Se a conexão for estabelecida. No corpo são transportadas as informações da mensagem propriamente dita. o cliente envia uma cópia da mensagem para o servidor. por algum motivo. identificação do destinatário. o sistema de correio eletrônico e ativado para verificar se existem mensagens na caixa postal do usuário. informando que não conseguiu transmiti-la. ativa o módulo de interface com o usuário para receber as correspondências. identificação do remetente (palavra-chave “to:” seguida do seu endereço). Periodicamente o cliente acorda e verifica se existem mensagens a serem enviadas na área de spool e tenta transmiti-las. 75/85 . Um mensagem SMTP divide-se em duas partes: cabeçalho e corpo. quando achar conveniente. Um remetente pode enviar simultaneamente varias cópias de uma mensagem. o servidor avisa ao cliente que recebeu e armazenou uma cópia da mensagem. separados por uma linha em branco. quando um usuário se conecta ao sistema. Se uma mensagem não for enviada por um período. Note que o processo de transferência atua como cliente do servidor do correio eletrônico. para diferentes destinatários utilizando o conceito de lista de distribuição (um nome que identifica um grupo de usuários). por exemplo de dois dias.. não for transmitida com sucesso. Se a mensagem. Um deles especifica o nome da máquina de destino e o outro identifica a caixa postal do usuário.. etc. O formato do texto é livre e as mensagens são transferidas no formato texto. O formato dos endereços SMTP é o seguinte: Nome_local@Nome do domínio Cristiano Alan Torres Pág. No cabeçalho são especificadas as informações necessárias para a transferência da mensagem. Os usuários do sistema de correio eletrônico são localizados através de um par de identificadores. o cliente retira a cópia da mensagem que mantinha em seu spool local.Arquitetura TCP/IP de correio eletrônico da máquina de destino. O cabeçalho e composto por linhas. Se existirem. o sistema de correio eletrônico emite um aviso para o usuário que. assunto da mensagem. o serviço de correio eletrônico devolve a mensagem ao remetente. Em geral. Caso a mensagem seja transferida com sucesso. que a armazena em seu spool. Quando recebe a confirmação do recebimento e armazenamento. o cliente anota o horário da tentativa e suspende sua execução. Por exemplo. que contém uma palavra-chave seguida de um valor.

O sistema de correio eletrônico pode também ser utilizado por processos de aplicação para transmitir mensagens contendo textos. Cristiano Alan Torres Pág. O módulo interface com usuário e a forma como as mensagens são armazenadas não são definidos pelo SMTP.Arquitetura TCP/IP Onde o nome_do_domínio identifica o domínio ao qual a máquina de destino pertence (esse endereço deve identificar um grupo de máquinas gerenciado por um servidor de correio eletrônico). O SMTP especifica como o sistema de correio eletrônico transfere mensagens de uma máquina para outra. 76/85 . O nome_local identifica a caixa postal do destinatário.

Na verdade. O IPv6 também retém a maioria dos conceitos fornecidos pelas opções do IPv4. A longevidade da versão 4 mostra que o projeto é flexível e poderoso. Por exemplo. Essa versão permaneceu quase inalterada desde seu início. versão atual) fornece o mecanismo básico de comunicação da pilha TCP/IP e da Internet. com algumas modificações. Através de sua Força Tarefa de Engenharia da Internet. Desde quando o IPv4 foi projetado. os tamanhos típicos de memória aumentaram 32 vezes.Arquitetura TCP/IP 9. Cristiano Alan Torres Pág. os projetistas dotaram o IPv6 basicamente com as mesmas características do IPv4. inclusive os recursos para fragmentação e roteamento de origem. 77/85 . a Diretoria de Arquitetura da Internet (IAB. permite que o transmissor escolha o tamanho de um datagrama e requer que o transmissor especifique o número máximo de passos da rota que um datagrama pode fazer antes de ser concluído. a largura de banda de rede cresceu 800 vezes. A versão 4 do Internet Protocol (IPv4. o IPv6 ainda aceita entrega sem conexão (permite que cada datagrama seja roteado independentemente). uma vez que novos aplicativos exigem mais da tecnologia denominada e já que novas tecnologias tornam possível fornecer novos serviços. FUTURO DO TCP/IP (IPv6) Nem a Internet nem os protocolos TCP/IP são estáticos. O protocolo IPv6 proposto mantém muitas das características que contribuíram para o sucesso do IPv4. O estímulo para a mudança ocorre à medida que aumentos em volume e em tamanho forçam as melhorias necessárias para manter o serviço. tecnologias de rede local afloraram e o número de hosts na Internet cresceu para 4 milhões. no final da década de 1970. Além disso. diante das mudanças em outras. o desempenho do processador aumentou mais de duas ordens de magnitude. acrônimo de Internet Architecture Board) promove esforços efetivos e constantes que mantêm a tecnologia elástica e em evolução. as mudanças não ocorreram simultaneamente – o IP conciliou mudanças em uma tecnologia.

Por exemplo. Como o IPv4. Particularmente. o IPv6 usa um conjunto de cabeçalhos opcionais. O IPv6 inclui novas opções que oferecem recursos adicionais não disponíveis no IPv4. As mudanças introduzidas pelo IPv6 podem ser agrupadas em cinco categorias: • Endereços Maiores. 78/85 . que usa um cabeçalho de datagrama de formato fixo onde todos os campos. substituindo o campo de opções de comprimento variável do IPv4 por uma série de cabeçalhos de formato fixo. o IPv6 permite que um datagrama inclua informações de controle opcionais. que requer garantias de largura de banda e retardo de transmissão. revisa completamente o formato de datagrama. O IPv6 substitui a especificação de tipo de serviço do IPv4 por um mecanismo que permite pré-alocação de recursos de rede. o novo mecanismo aceita aplicativos tais como vídeo em tempo real. de 32 para 128 bits. O novo tamanho de endereço é a mudança mais visível. • Provisão para Extensão de Protocolo. Mais importante. para um protocolo que pode permitir recursos adicionais. Talvez a mudança mais significativa no IPv6 seja uma transição de um protocolo que especifica inteiramente todos os detalhes. Cristiano Alan Torres Pág. O IPv6 usa um formato de datagrama inteiramente novo e incompatível. ocupam um número fixo de octetos com um deslocamento fixo. • Opções Aprimoradas. o IPv6 muda a maioria dos detalhes do protocolo. A contrário do IPv4. • Formato Flexível de Cabeçalho. exceto o de opções. O IPv6 quadruplica o tamanho de um endereço de IPv4. o IPv6 usa endereços maiores e acrescenta algumas características novas. O espaço de endereço de IPv6 é tão grande que não pode ser consumido em futuro previsível.Arquitetura TCP/IP A despeito de muitas semelhanças conceituais. • Suporte para Alocações de Recursos.

• O tamanho dos campos de endereço de origem e de destino foi aumentado para 16 octetos cada. Pág. • O campo TEMPO DE VIDA foi substituído por um campo LIMITE DE PASSOS DE ROTA.. Curiosamente.1. Opcional Cabeçalho Básico Cabeçalho De Extensão 1 . Cabeçalho De Extensão N Dados. FORMATO DO DATAGRAMA O IPv6 muda completamente o formato de datagrama.. embora deva acomodar endereços maiores. 79/85 Cristiano Alan Torres . Em geral. Forma geral de um datagrama IPv6 com vários cabeçalhos.Arquitetura TCP/IP 9. As opções e alguns dos campos fixos que aparecem em um cabeçalho de datagrama IPv4 foram removidos para cabeçalhos de extensão no IPv6. um cabeçalho básico IPv6 contém menos informações do que um cabeçalho de datagrama IPv4. • As informações de fragmentação foram retiradas de campos fixos do cabeçalho básico. ou mais cabeçalhos de extensão seguidos de dados.1. Como mostra a Figura 9. as mudanças no cabeçalho de datagrama refletem mudanças no protocolo: • • O alinhamento foi mudado de múltiplos de 32 bits para múltiplos de 64 bits O campo de comprimento de cabeçalho foi eliminado e o campo de comprimento de datagrama foi substituído por um campo COMPRIMENTO DO PAYLOAD.. para um cabeçalho de extensão. Apenas o cabeçalho básico é exigido. Figura 9. um datagrama IPv6 tem um cabeçalho básico de tamanho fixo seguido de zero. os de extensão são opcionais..1.

80/85 . O campo PROTOCOLO foi substituído por um campo que especifica o tipo do próximo cabeçalho. os campos ENDEREÇO DE ORIGEM e ENDEREÇO DE DESTINO especificam os endereços do transmissor e do destinatário pretendido. Formato de cabeçalho básico de 40 octetos do IPv6. No IPv6. cada endereço requer 16 octetos. VERS sempre contém 6 em um datagrama IPv6.2. que interpreta um tempo de vida como uma combinação de contagem de passos da rota e do tempo máximo. Vários campos de um cabeçalho básico do IPv6 correspondem diretamente aos campos de um cabeçalho do IPv4. o campo inicial VERS de 4 bits especifica a versão do protocolo. Cada datagrama do IPv6 começa com um cabeçalho básico. Como no IPv4. Como no IPv4. 0 1 2 3 4 8 16 24 31 VERS COMPRIMENTO DO PAYLOAD RÓTULO DE FLUXO PRÓXIMO CABEÇALHO LIMITANTE DE PASSOS DA ROTA ENDEREÇO DE ORIGEM ENDEREÇO DE DESTINO Figura 9.Arquitetura TCP/IP • • O campo TIPO DE SERVIÇO foi substituído por um campo RÓTULO DE FLUXOS.2 mostra o conteúdo e o formato do cabeçalho básico do IPv6. Ao contrário do IPv4. Cristiano Alan Torres Pág. A Figura 9. O campo LIMITE DE PASSOS DA ROTA corresponde ao campo TEMPO DE VIDA (TIME TO LIVE) do IPv4. entretanto. o IPv6 interpreta o valor atribuindo limite estrito ao número máximo de passos da rota que um datagrama pode fazer antes de ser descartado.

255 Para ajudar o endereço a tornar-se ligeiramente mais compacto e mais fácil de dar entrada.4x1038. Contudo. Para compreender por que. considere um número de 128 bits. como um exemplo. a notação binária é indefensável.17. É difícil compreender o tamanho do espaço de endereço de IPv6. também não torna tais endereços suficientemente compactos. o tamanho grande do endereço cria um problema novo e interessante: as pessoas que mantêm interligações em rede precisam ler. Um número inteiro de 16 octetos pode conter 2128 valores.Arquitetura TCP/IP 9. Obviamente. TAMANHO DO ESPAÇO DE ENDEREÇO Em IPv6. a notação decimal pontuada.10.230. 81/85 . De fato.100. Se os endereços forem atribuídos à razão de um milhão de endereços a cada microssegundo. quando o valor mostrado acima em notação decimal pontuada tiver sido convertido Cristiano Alan Torres Pág. o espaço de endereço é maior do que 3.140. Embora solucione os problemas de capacidade insuficiente. serão necessários mais de vinte anos para atribuir todos os endereços possíveis.255. dar entrada e manipular tais endereços.150. expresso na notação decimal pontuada: 104. na qual o valor de cada conjunto de 16 bits é representado em hexadecimal separado por dois pontos.255. cada endereço ocupa 16 octetos. Assim. Um outro modo de compreender o tamanho é o relacionar ao esgotamento do endereço. quatro vezes o tamanho de um endereço de IPv4. O espaço grande de endereço garante que o IPv6 pode tolerar qualquer esquema razoável de atribuição de endereço. o espaço de endereço será suficientemente grande para acomodar uma nova atribuição.255. Por exemplo.0. os projetistas do IPv6 propõem o uso de notação hexadecimal de dois pontos. usada para IPv4.255.2. se posteriormente os projetistas decidirem mudar o esquema de endereçamento. considere quanto tempo você levaria para atribuir todos os endereços possíveis. Por exemplo. Um modo de examiná-lo consiste em relacionar a magnitude ao tamanho da população: o espaço de endereço é tão grande que cada pessoa do planeta pode ter endereços suficientes para ter sua própria interligação em redes tão grande quanto a Internet atual.0.255.128.

em que um string de zeros repetidos é substituído por um par de dois pontos. Segundo. pois muitos endereços vão conter strings de zero contíguos. Primeiro.1 Observe que. 82/85 . a notação hexadecimal de dois pontos permite a compressão de zero. a notação hexadecimal de dois pontos incorpora sufixos de notação hexadecimal pontuada. a proposta determina que ela pode ser aplicada apenas uma vez em qualquer endereço. a notação hexadecimal de dois pontos inclui duas técnicas que a tornam extremamente útil.2.Arquitetura TCP/IP em notação hexadecimal de dois pontos e impresso usando o mesmo espaçamento. Veremos que tais combinações destinam-se ao uso durante a transição do IPv4 para IPv6.10. cada número da parte de notação hexadecimal pontuada especifica o valor de um octeto.1 Cristiano Alan Torres Pág. Para assegurar que a compressão de zero produz uma interpretação não-ambígua. Por exemplo. o string a seguir é uma notação hexadecimal válida. de dois pontos: 0:0:0:0:0:0:128. Naturalmente.2.10. a compressão de zero pode ser usada com o número acima a fim de produzir um string equivalente de notação hexadecimal de dois pontos que parece ser totalmente semelhante a um endereço IPv4: ::128. Além disso. ele se tornará: 68E6:8C64:FFFF:FFFF:0:1180:96A:FFF A notação hexadecimal de dois pontos tem a vantagem óbvia de requerer menos dígitos e menos caracteres separadores do que o decimal pontuada. embora os números separados cada um por dois pontos especifiquem o valor de uma quantidade de 16 bits. A compressão de zero é especialmente útil quando usada com o esquema de atribuição de endereço proposto.

Assim. em alguns casos.Arquitetura TCP/IP 9. Além de permitir vários endereços simultâneos por conexão de rede. conforme o caso. O datagrama deverá ser roteado para o grupo ao longo de um caminho o mais curto possível e.3. e um host IPv6 com uma conexão de rede precisa de apenas um endereço. Muitos endereços de IPv6 serão atribuídos por provedores de serviços de rede Cristiano Alan Torres Pág. o IPv6 permite que vários prefixos sejam atribuídos a determinada rede e permite que um computador tenha vários endereços simultâneos atribuídos a determinada interface. Cluster O destino é um conjunto de computadores que juntos dividem um único prefixo de endereço (ex. um endereço de destino de um datagrama situa-se em uma das três categorias: Unicast O endereço de destino especifica um único computador (host ou roteador).: vinculam-se à mesma rede física). Um prefixo de endereço determina o local e a interpretação dos campos restantes do endereço. Multicast O destino é um conjunto de computadores. O IPv6 divide os endereços em tipos. do mesmo modo que o IPv4 os divide em classes. TRÊS TIPOS BÁSICOS DE ENDEREÇO DO IPv6 Como o IPv4. para facilitar a atribuição e a modificação de endereço. Um endereço IPv6 tem um comprimento de 128 bits. o IPv6 associa um endereço a uma conexão de rede específica. o datagrama deverá ser roteado para o destino ao longo do caminho mais curto possível. O IPv6 também retém (e estende) a hierarquia de endereço de IPv4 em que um prefixo é atribuído a uma rede física. Uma cópia do datagrama será entregue a cada membro do grupo usando hardware multicast ou broadcast. então. o IPv6 expande e. Geralmente. 83/85 . não a um computador específico.: o membro mais próximo). atribuições de endereço são semelhantes a IPv4: um roteador IPv6 tem dois ou mais endereços. unifica endereços especiais do IPv4. possivelmente em diversos locais. tornando o espaço de endereço tão longo que cada pessoa do planeta poderia ter uma interligação em redes tão grande quanto a atual Internet. entregue a exatamente um membro do grupo (ex. Entretanto.

Arquitetura TCP/IP autorizados. Cristiano Alan Torres Pág. uma ID de assinante. uma ID de sub-rede e uma ID de nó. 84/85 . Esses endereços têm campos eu contêm uma ID de provedor.

serpentine.net/rfc/rfc1889. 1994. BIBLIOGRAFIA • Sociedade Brasileira para Interconexão de Sistemas Abertos (BRISA). Luiz. O'Sullivan. S. • • Huitema. Frederick. Makron Books. ROUTING IN THE INTERNET. Third Edition.com/~bos/tech/mbone • Kumar.internic. COMPUTERS NETWORKS. 1996. MBone: INTERACTIVE MULTIMEDIA ON THE INTERNET. Christian. H.. V. ARQUITETURA DE REDES DE COMPUTADORES OSI e TCP/IP. 85/85 .RTP: A TRANSPORT PROTOCOL FOR REAL TIME APPLICATIONS. Casner.Arquitetura TCP/IP 10. Makron Books. COMUNICAÇÃO DE DADOS. Bryan. • Deering. IN: New Riders. R.. HOST EXTENSIONS FOR IP MULTICASTING.internic. Prentice Hall PTR.txt • Schulzinne. Indianapolis. Andrew S. http://ds. 1995.. INTERLIGAÇÃO EM REDES COM TCP/IP. 1998.. August 1989. http://www. Tanenbaum. Editora Campus. Comer. S. V. THE INTERNET MULTICAST BACKBONE.txt Cristiano Alan Torres Pág.. • • • Alves. February 1996. 1994. 1996. January 1996. http://ds. Jacobson. Prentice Hall PTR. Douglas E...net/rfc/rfc1112..

Sign up to vote on this title
UsefulNot useful