Internet e Intranets-Nível 1 1998, Edgard Jamhour 1 Tecnologias da Internet ................................................................................................................ 2 1.1 A Rede Mundial Internet.......................................................................................................... 3 1.2 A Arquitetura TCP/IP .............................................................................................................. 5 1.3 Topologia Física da Internet .................................................................................................... 7 1.3.1 A Internet Mundial ........................................................................................................... 7 1.3.2 A Internet no Brasil .......................................................................................................... 8 1.4 7N1-A.4. Modelo Cliente Servidor .......................................................................................... 9 1.5 7N1-A.5. Padrões da Internet ................................................................................................. 10 1.6 7N1-A.6. Intranets e Extranets ............................................................................................... 12 2 Arquitetura TCP/IP .................................................................................................................... 13 2.1 Modelo em camadas TCP/IP.................................................................................................. 14 2.2 Protocolos do nível enlace de dados e físico.......................................................................... 15 2.3 Protocolos do nível de rede. ................................................................................................... 16 2.3.1 Endereços IP .................................................................................................................. 17 2.3.2 Datagrama IP.................................................................................................................. 20 2.3.3 Mapeamento de Endereços ............................................................................................ 23 2.3.4 Roteamento .................................................................................................................... 26 2.4 Protocolo do nível de transporte. ........................................................................................... 30 2.5 Protocolo TCP ........................................................................................................................ 31 2.6 Protocolo UDP ....................................................................................................................... 34 2.7 Protocolos do nível de aplicação. ........................................................................................... 36 3 Endereçamento ........................................................................................................................... 37 3.1 Endereços na Internet ............................................................................................................. 38 3.2 Conexão de Intranets com a Internet ...................................................................................... 40 3.2.1 Hosts categoria 1 ............................................................................................................ 41 3.2.2 Hosts categoria 2 ............................................................................................................ 42 3.2.3 Hosts categoria 3: ........................................................................................................... 43 3.3 Endereços na Intranet ............................................................................................................. 44 3.4 Configuração Dinâmica de Endereços IP .............................................................................. 45 3.4.1 Funcionamento do DHCP .............................................................................................. 46 3.4.2 Uso do DHCP numa Intranet ......................................................................................... 48 3.4.3 Uso do DHCP por provedores de Acesso a Internet ...................................................... 50 4 Domínios de Nomes ................................................................................................................... 51 4.1 Espaço de Nomes ................................................................................................................... 52 4.1.1 Espaço de Nomes Plano ................................................................................................. 53 4.1.2 Espaço de Nomes Hierárquico ....................................................................................... 55 4.2 Domínios na Internet .............................................................................................................. 56 4.3 Resolução de Nomes de Domínio .......................................................................................... 59 4.4 DNS ........................................................................................................................................ 60 1 Internet e Intranets-Nível 1 1998, Edgard Jamhour 1 Tecnologias da Internet A Internet é uma rede pública de alcance mundial, destinada a permitir a interconexão de computadores de pequeno, médio e grande porte. A Internet é um "sistema aberto", isto é, ela é baseada em padrões de funcionamento divulgados publicamente. Essa característica permite que qualquer fabricante possa desenvolver produtos e soluções compatíveis com a rede Internet. O modelo de software da Internet é a arquitetura TCP/IP. Os enlaces físicos que constituem a rede podem, entretanto, ser constituídos por virtualmente qualquer tecnologia. Os computadores que se ligam a Internet podem ser de qualquer tipo de hardware ou sistema operacional que suporte os protocolos de comunicação TCP/IP. Sobre a arquitetura TCP/IP, a rede Internet disponibiliza uma ampla gama de serviços de comunicação padronizados de alto nível para os usuários. Esses serviços permitem que os usuários troquem facilmente informações de texto, audio e até mesmo vídeo, contribuindo para o grande sucesso popular da rede. A.1. A Rede Mundial Internet: Rede pública de alcance mundial, baseada na arquitetura de comunicação TCP/IP, que oferece uma série de serviços de comunicação padronizados e difundidos publicamente. A.2. A Arquitetura TCP/IP: Conjunto de protocolos e serviços de comunicação padronizados, que servem de base para contrução da rede Internet. Os protocolos da arquitetura TCP/IP são organizados num modelo de software em camadas. A.3. Topologia Física da Internet: A topologia física da Internet é constituída por uma série de redes menores, interligadas por roteadores, funcionando logicamente como uma única rede virtual. A.4. Modelo Cliente Servidor Princípio no qual os computadores são organizados em clientes e servidores. Os servidores são computadores que armazenam e disponibilizam as informações. Os clientes são computadores que acessam as informação, servindo como terminais para os usuários. A.5. Padrões Internet: Documentação referentes a protocolos, padrões e políticas, publicadas para permitir que diferentes fabricantes forneçam produtos compatíveis com a Internet. A.6. Intranets e Extranets: Redes privativas proprietárias, construídas sobre a arquitetura TCP/IP, que disponibilizam os mesmos serviços de comunicação da rede mundial Internet. 2 Internet e Intranets-Nível 1 1.1 1998, Edgard Jamhour A Rede Mundial Internet Conceito: Rede pública de alcance mundial, baseada na arquitetura de comunicação TCP/IP, que oferece uma série de serviços de comunicação padronizados e difundidos publicamente. A Internet é uma rede virtual formada por um conjunto de redes menores. Cada rede individual (usualmente chamada de rede backbone ou simplesmente backbone) é mantida e sustentada em separado por instituições educacionais, companhias de telecomunicaões, organizações ligadas ao governo ou instituições privadas, com fins lucrativos. A rede Internet é uma rede bastante heterôgenea, uma vez as redes que integram a Internet podem operar com tecnologias e velocidades de transmissão diferentes. Estrutura Genérica de Internet rede Ethernet rede token ring host Rede backbone Os enlaces físicos no interior do backbone são de alta capacidade. As redes corporativas de pequeno porte se ligam a Internet através de enlaces de média ou baixa capacidade. A conexão entre as redes backbone é, geralmente, efetuada através de enlaces de fibra ótica ou satélite. host Provedor de acesso Redes particulares de instituições públicas e privadas podem se ligar a Internet, disponibilizando o acesso de informações aos seus funcionários. Linhas telefônicas convencionais. Breve histórico da Internet A Internet surgiu de um projeto do governo americano denominado ARPAnet, destinado a suportar projetos militares. A idéia básica desse projeto era prover mecanismos de comunicação seguros, através de uma malha de comunicação bastante redundante. Mais tarde, o projeto ampliouse e integrou computadores de universidades e centros de pesquisa na malha de comunicação da ARPAnet. Com a proliferação das conexões acadêmicas, o governo americano decidiu criar uma rede isolada para aplicações militares. A rede resultante formada essencialmente por universidades e centros de pesquisa constitui o berço da Internet. No início, apenas as entidades participantes da rede eram responsáveis por bancar os custos de comunicação, o que contribui para que, nos seus primeiros anos, a rede Internet tivesse uma abrangência bastante limitada. Mais recentemente, a Internet despertou o interesse comercial de muitas companhias de telecomunicações, que se responsabilizaram por expandir a rede original introduzindo novos backbones de acesso. 3 Internet e Intranets-Nível 1 1998, Edgard Jamhour Hotword Provedor de Acesso: (Internet Service Providers - ISP) Empresas, geralmente particulares, que mantém uma conexão de alta capacidade com o backbone da Internet, e permitem que usuários acessem a Internet a partir de suas casas, através de linhas telefônicas públicas convencionais, ligadas a modems. Os provedores de acesso fornecem também serviços para empresas de pequeno porte que não desejam bancar os custos de enlaces permanentes com o backbone da Internet. Rede Backbone: Denominação genérica dada a uma infra-estrutura de comunicação permanente, geralmente constituída por uma malha de enlaces físicos dedicados de alta capacidade de transmissão (de dezenas até centenas de Mbits/s). A rede Internet é formada por várias redes backbones interconectadas. Host: Denominação genérica dada um computador que está conectado a rede Internet. 4 Internet e Intranets-Nível 1 1.2 1998, Edgard Jamhour A Arquitetura TCP/IP Conceito: Conjunto de protocolos e serviços de comunicação padronizados, que servem de base para contrução da rede Internet. Os protocolos da arquitetura TCP/IP são organizados num modelo de software em camadas. A rede Internet segue o modelo de rede em camadas da arquitetura TCP/IP. Do ponto de vista do usuário, os serviços oferecidos pela rede Internet são vistos através dos protocolos definidos pela camada de aplicação. Modelo OSI Arquitetura TCP/IP Aplicação FTP TELNET SMTP HTTP Apresentação SNMP ... Camada de Aplicação Sessão Transporte Rede TCP UDP IP Enlace de Dados Física Camada de Transmissão Camada de Aplicação Camada de Enlace de Dados e Física FTP: File Transfer Protocol. Protocolo que implementa serviços de transferência de arquivos de uma estação para outra (ponto a ponto) através de rede. TELNET: Serviço de Terminal Remoto. Protocolo utilizado para permitir aos usuários controlarem estações remotas através da rede. SMTP: Simple Mail Transfer Protocol. Protocolo utilizado para transferência de mensagens de correio eletrônico de uma estação para outra. Esse protocolo especifica como 2 sistemas de correio eletrônico interagem. HTTP: Hypertext Tranfer Protocol. Protocolo utilizado para transferência de informações multimídia: texto, imagens, som, vídeo, etc. É o protocolo de aplicação básico para o ambiente de comunicação em rede conhecido como World Wide Web (WWW). SNMP: Simple Network Monitoring Protocol. Protocolo utilizado para monitorar o estado das estações, roteadores e outros dispositivos que compõe a rede. Camada de Aplicação: Conjunto amplo de protocolos que oferecem serviços específicos ao nível do usuário, como por exemplo: FTP (Protocolo de Transferência de Arquivos), TELNET (Protocolo para execução de comandos remotos), SMTP (protocolo para correio eletrônico), etc. Os protocolos da camada de aplicação disponibilizam serviços de comunicação de alto nível para que programadores implementem aplicativos que utilizam recursos da rede. Novos protocolos estão sendo continuamente propostos aumentando a gama de serviços disponibilizados. Camada de Rede: As funções da camada de rede são executadas principalmente pelo protocolo IP (Internet Protocol). O protocolo IP oferece um serviço de comunicação não orientado a conexão (datagrama). Sua função é definir a rota dos datagramas e encaminhá-los até seu destino final. Camada de Transmissão: Dependendo do tipo de serviço de comunicação utilizado, as funções da camada de transmissão podem ser executadas pelos protocolos TCP ou UDP. O 5 Internet e Intranets-Nível 1 1998, Edgard Jamhour protocolo TCP (Transmission Control Protocol) oferece serviços de comunicação confiáveis e orientados a conexão. O protocolo UDP (User Datagram Protocol) oferece serviços do tipo datagrama, isto é, não orientados a conexão. Camada de Enlace de Dados e Física: A arquitetura TCP/IP não impõe nenhuma restrição quanto a implementação dos níveis de enlace de dados e físico das redes que interliga. Os backbones da Internet são geralmente constituídos através de padrões de redes de alta velocidade, como ATM (Asynchronous Transfer Mode), Frame Relay ou SMDS (Switched Multimegabit Data Service). Devido à problemas de custo, a rede Internet também é formada por muitos enlaces de média e baixa capacidade, chegando mesmo a utilização de linhas telefônicas convencionais. Os protocolos de enlace de dados usados em linhas telefônicas são do tipo ponto a ponto, como o PPP (Point to Point Protocol) ou SLIP (Serial Line Internet Protocol). 6 Internet e Intranets-Nível 1 1.3 1998, Edgard Jamhour Topologia Física da Internet Conceito: A topologia física da Internet é constituída por uma série de redes menores, interligadas por roteadores, funcionando logicamente como uma única rede virtual. A topologia física da Internet consiste de uma malha de enlaces de comunicação dedicados, que interliga vários centros de computação no mundo todo. A rede Internet é constituída na forma de uma malha de interconexões altamente redundante, disponibilizando diversas rotas para interligar dois pontos quaisquer da rede. Os computadores podem se ligar a rede usando desde linhas telefônicas convencionais, através de modems conectados a computadores pessoais, até backbones de fibra óptica de alta velocidade. 1.3.1 A Internet Mundial A Internet é uma rede de alcance mundial. Para atingir tamanha amplitude, a rede Internet é formada pela interligação de vários backbones de abrangência nacional ou até mesmo continental. O berço da Internet são diversos backbones construídos nos EUA. Outros backbones importantes existem na Europa, Ásia e outros continentes. A interligação entre as redes de continentes diferentes se faz através de enlaces via satélite e enlaces de fibra ótica transoceânicos. Infra-estrutura da Internet Mundial Backbone EUA enlaces físicos com outros continentes cabos de fibra ótica transoceânicos ou enlaces de satélite Backbone Europeu enlaces físicos com outros continentes Backbone Brasil diversos enlaces distribuem o acesso a Internet para redes particulares. As redes locais ligadas a Internet devem utilizar os protocolos TCP/IP. Hotwords 7 Internet e Intranets-Nível 1 1998, Edgard Jamhour Backbones: O termo "backbone" ou "rede backbone" é uma denominação genérica dada a uma infra-estrutura de comunicação permanente, geralmente constituída por uma malha de enlaces físicos dedicados de alta capacidade de transmissão. A rede backbone serve de espinha dorsal para integração de várias redes menores. 1.3.2 A Internet no Brasil A infra-estrutura de acesso a Internet no Brasil é constituída por vários backbones, geridos por instituições governamentais e não governamentais. O backbone mais amplo é mantido pela Embratel e disponibiliza a infra-estrutura de comunicação através de enlaces de fibra ótica e enlaces via satélite, interligando vários pontos no interior do Brasil e no exterior. Outro backbone importante é o da Rede Nacional de Pesquisa, RNP. Hotwords RNP: A Rede Nacional de Pesquisa (RNP) é uma iniciativa do Ministério da Ciência e Tecnologia - MCT, cuja missão básica é planejar e conduzir ações que assegurem a implantação e evolução de redes Internet no Brasil. Os serviços da RNP são destinados principalmente a comunidade de educação, pesquisa e desenvolvimento científico e tecnológico, e gestão governamental nessas áreas. A RNP gerencia um sólido backbone com conexões interligando todos os estados, e particularmente, interconecta, direta ou indiretamente (via redes acadêmicas estaduais), praticamente todas as universidades e centros de pesquisa do país. 8 Internet e Intranets-Nível 1 1.4 1998, Edgard Jamhour 7N1-A.4. Modelo Cliente Servidor Conceito: Princípio no qual os computadores são organizados em clientes e servidores. Os servidores são computadores que armazenam e disponibilizam as informações. Os clientes são computadores que acessam as informação, servindo como terminais para os usuários. A maioria dos serviços de comunicação disponibilizados na Internet funcionam segundo o modelo cliente-servidor. Nesse modelo, as funções dos computadores ligados a rede (hosts) são claramente definidas em dois grupos: clientes e servidores. Os servidores são os computadores que armazenam e disponibilizam as informações para os computadores denominados clientes. O cliente é sempre o responsável por iniciar a comunicação, cabendo ao servidor a tarefa de responder as requisições recebidas. Uma característica importante deste modelo é que apenas o endereço dos servidores precisa ser conhecido pelos usuários da rede. O cliente precisa conhecer o endereço do servidor para inciar a comunicação. Efetua uma requisição Cliente Envia a resposta Dados armazenados Servidor O servidor não precisa conhecer o endereço do cliente, pois o endereço para onde a resposta deve ser enviada é recebido junto com a requisição. Hotwords Cliente: Computador que serve como terminal para um usuário. O cliente é sempre o responsável por iniciar a comunicação com um servidor, enviando uma requisição. O endereço do cliente (endereço do protocolo IP) não precisa ser conhecido pelos demais clientes da rede pois a comunicação é sempre feita através de um servidor. Servidor: Computador que armazena e disponibiliza as informações para os clientes. A tarefa do servidor é responder as requisições efetuadas pelos clientes, não cabendo a ele iniciar uma comunicação. O endereço do servidor (endereço do protocolo IP) precisa ser conhecido pelo cliente para que ele seja acessível pela rede. 9 Internet e Intranets-Nível 1 1.5 1998, Edgard Jamhour 7N1-A.5. Padrões da Internet Conceito: Documentação referentes a protocolos, padrões e políticas, publicadas para permitir que diferentes fabricantes forneçam produtos compatíveis com a internet. Sendo uma rede pública mundial autônoma, baseada em padrões abertos, não existe nenhuma autoridade central que controle o funcionamento da Internet. Entretanto, para permitir a interoperabilidade das diversas redes que compõe a Internet, várias organizações colaboram no estabelecimento de padrões e políticas gerais de operação da rede. Entre essas organizações, se destacam a ISOC (The Internet Society), a IAB e a IANA. The Internet Society ISOC IANA IAB quadro diretor IETF Atribuição de Endereços IP IESG IRTF ... grupos de pesquisa area 1 area n ... ... ... grupos de trabalho RFC RFC RFC Hotwords: IAB: (The Internet Architecutre Board). Grupo de trabalho voluntário, responsável por coordenar os trabalhos de pesquisa e normalização relacionados a Internet e a arquitetura de rede TCP/IP. O IAB supervisiona as atividades de dois grupos de trabalho (task forces), o IETF (Internet Engineering Task Force) e o IRTF (Internet Research Task Force). IETF: (The Internet Engineering Task Force). Grupo de trabalho que identifica, prioriza e endereça assuntos considerados de curto prazo, incluindo protocolos, arquitetura e operações de serviços. Os padrões propostos são publicados na Internet através de RFCs (Request for Comment). IESG: (Internet Engineering Steering Group). Grupo de indivíduos responsáveis por coordenar os esforços dos grupos de trabalho do IETF (The Internet Engineering Task Force). RFC (Request for Comment). Denominação dada aos documentos que especificam padrões e serviços para Internet e para a arquitetura TCP/IP. Antes do documento ser aprovado em definitivo, uma RFC é conhecida como Internet Draft. As RFCs constituem uma série de documentos que 10 Internet e Intranets-Nível 1 1998, Edgard Jamhour descrevem os padrões para as tecnologias usadas na Internet. As RFCs são numeradas sequencialmente, na ordem cronológica em que são escritas. Quando um padrão é revisado, as alterações são escritas numa RFC com um novo número. IRTF: (The Internet Research Task Force). Grupo de trabalho que trabalha com assuntos estratégicos de longo prazo, incluindo esquemas de endereçamento e novas tecnologias. IANA (The Internet Assigned Numbers Authority). Organização internacional responsável por coordenar a distribuição de endereços IP entre as diversas redes de computadores que se conectam a Internet. ISOC (The Internet Society). Organização internacional inspirada pela National Geographic Society, reponsável por difundir o uso da Internet pelo mundo todo. A ISOC é formada por voluntários, com competência reconhecida pela comunidade que, entre outras atribuições legais, são responsáveis por indicar os membros da IAB. 11 Internet e Intranets-Nível 1 1.6 1998, Edgard Jamhour 7N1-A.6. Intranets e Extranets Conceito: Redes privativas proprietárias, construídas sobre a arquitetura TCP/IP, que disponibilizam os mesmos serviços de comunicação da rede mundial Internet. A rede Internet permitiu difundir uma série de tecnologias, especificadas através de padrões abertos. Como resultado, surgiram no mercado uma série de produtos disponíveis a custos reduzidos, compatíveis com a Internet. A principal função desses produtos é fornecer mecanismos flexíveis para facilitar o processo de troca de informações entre os usuários de computadores. Um número crescente de empresas vêm adotando as soluções propostas pela Internet em ambientes corporativos proprietários, onde o acesso é restrito aos funcionários da corporação ou apenas a pessoas autorizadas. De acordo com a abrangência geográfica das redes privativas, a implementação de uma "Internet privada" recebe o nome de Intranet ou Extranet. Extranet Internet Rede Privada - WAN TCP/IP e Serviços de Comunicação Padronizados pela Internet Rede Pública Intranet Rede Privada - LAN Intranet: Rede local que utiliza protocolos de comunicação TCP/IP e que oferece serviços similares a rede Internet. Uma rede intranet não tem necessariamente relação com a Internet, pois seus serviços são acessíveis apenas por funcionários com acesso a rede local interna. Para permitir que os usuários da corporação troquem informações com o mundo exterior, uma Intranet pode ser eventualmente conectada a rede pública Internet, mas neste caso, dispositivos de segurança são geralmente utilizados para proteger a rede interna de acessos externos indesejáveis. Extranet: Rede geograficamente distribuída (WAN), construída utilizando enlaces de comunicação proprietários, que utiliza protocolos de comunicação TCP/IP e que oferece serviços similares a rede Internet. As Extranets são geralmente usadas pelas corporações para interligar várias sedes, facilitar a comunicação com fornecedores, representantes, ou qualquer grupo seleto de pessoas com as quais é preciso manter uma comunicação constante. Uma Extranet implica em custos de comunicação elevados, mas oferece vantagens de desempenho e segurança sobre a rede Internet. 12 Internet e Intranets-Nível 1 1998, Edgard Jamhour 2 Arquitetura TCP/IP A arquitetura TCP/IP é um dos modelos de software de rede mais populares da atualidade. Deve-se observar que o termo consagrado TCP/IP refere-se a apenas 2 protocolos de uma ampla família de protocolos. Um nome mais apropriado para o software de rede baseado nos protocolos TCP/IP seria conjunto de protocolos internet (Internet Protocol Suite). Esses protocolos são nãoproprietários e constituem a base para construção da rede mundial Internet, o que motivou sua adoção também em redes locais e redes corporativas. gateway internet internet REDE REDE REDE REDE 6N2-D.1. Modelo em Camadas TCP/IP. 6N2-D.2. Protocolos do nível enlace de dados e físico. 6N2-D.3. Protocolos do nível rede. 6N2-D.4. Protocolos do nível de transporte. 6N2-D.5. Protocolos do nível aplicação. Hotwords TCP/IP: Abreviatura de Transmission Control Protocol/Internet Protocol. internet: Conjunto de redes interligadas, formando uma rede geograficamente distribuída. rede mundial Internet: rede pública geograficamente distribuída, de alcance mundial, montada segundo a arquitetura TCP/IP. gateway internet: Também chamado de roteador internet. Dispositivo que conecta duas ou mais redes dentro de uma internet. não-proprietários: termo utilizado para indicar que os direitos de utilização de uma tecnologia não pertencem a nenhum fabricante específico. Os protocolos TCP/IP não são definidos por organismos normalizadores, sendo considerados por isso padrões de facto. (Quando os padrões são definidos por uma instituição legalmente constituída para elaboração de padrões, como a ISO, o padrão é dito de jure). 13 Internet e Intranets-Nível 1 2.1 1998, Edgard Jamhour Modelo em camadas TCP/IP Conceito: A arquitetura TCP/IP apresenta um modelo de software de rede em camadas, similar ao modelo OSI. A arquitetura TCP/IP refere-se a uma ampla família de protocolos, que suportam todas as funções necessárias para implementar tanto redes locais (LAN) quanto redes geograficamente distribuídas (WAN). Os protocolos da arquitetura TCP/IP são organizados num modelo com menos camadas que o modelo OSI, o que contribuiu para o seu grande sucesso no mundo comercial e acadêmico. TCP/IP OSI Aplicação Aplicação Apresentação Sessão Transporte Transmissão Rede Rede Enlace de Dados Enlace de Dados Física Física Hotwords: Aplicação: A camada de aplicação agrupa funções das camadas sessão, apresentação e aplicação do modelo OSI. Essa camada é composta por um conjunto amplo de protocolos que oferecem serviços específicos ao nível do usuário, como por exemplo: FTP (Protocolo de Transferência de Arquivos), TELNET (Protocolo para execução de comandos remotos), SMTP (protocolo para correio eletrônico), etc. Transmissão: A camada de transmissão guarda uma relação direta com o protocolo de transporte do modelo OSI. Dependendo do tipo de serviço de comunicação utilizado, as funções da camada de transmissão podem ser executadas pelos protocolos TCP ou UDP. O protocolo TCP (Transmission Control Protocol) oferece serviços de comunicação confiáveis e orientados a conexão. O protocolo UDP (User Datagram Protocol) oferece serviços do tipo datagrama, isto é, não orientados a conexão. Rede: As funções da camada de rede são executadas principalmente pelo protocolo IP (Internet Protocol). O protocolo IP oferece um serviço de comunicação não orientado a conexão (datagrama). Sua função é definir a rota dos datagramas e encaminhá-los até seu destino final. Observe que o protocolo TCP constrói um serviço orientado a conexão sobre o protocolo IP, que é, como foi dito, não orientado a conexão. Enlace de Dados: A camada de enlace de dados é a mesma do modelo OSI. As redes TCP/IP são usualmente construídas sobre tecnologias padronizadas para implementação de redes locais, como Ethernet ou Token-Ring. Física: A camada física é a mesma do modelo OSI. As redes TCP/IP são usualmente construídas usando placas adaptadores e cabeamento idênticos aos definidos pelos padrões para redes locais. 14 Internet e Intranets-Nível 1 2.2 1998, Edgard Jamhour Protocolos do nível enlace de dados e físico. Conceito: A arquitetura TCP/IP descreve apenas o comportamento das camadas superiores do software de rede, a partir da camada de rede. Não existe nenhuma restrição quanto a tecnologia utilizada aos níveis de enlace de dados e físico. A arquitetura TCP/IP não impõe nenhuma restrição quanto a implementação dos níveis de enlace de dados e físico das redes que interliga. A função desses níveis pode ser executada através de qualquer tecnologia para implementação de redes locais, como Ethernet ou Token Ring. Aplicação Protocolos da família TCP/IP. Transmissão definem mecanismos de comunicação que funcionam de maneira transparente através das redes interligadas. Rede Interface de Rede Ethernet, Token-Ring, etc. Enlace de Dados Física definem os mecanismos de comunicação no interior de uma rede local. Interface de Rede: A integração da arquitetura TCP/IP com as camadas inferiores se faz por meio da interface de rede, responsável por encapsular os datagramas IP nos quadros da camada de enlace de dados. 15 Internet e Intranets-Nível 1 2.3 1998, Edgard Jamhour Protocolos do nível de rede. Conceito: As funções da camada de rede são executadas principalmente pelo protocolo IP (Internet Protocol). Sua função é definir a rota dos datagramas e encaminhá-los através dos roteadores internet até seu destino final. O protocolo IP oferece um serviço de comunicação não orientado a conexão (datagrama). Sua função é definir a rota dos datagramas e encaminhá-los até seu destino final. O protocolo IP associa a cada estação um endereço IP, que permite identificar uma estação de maneira única, mesmo com várias redes interconectadas. As funções do protocolo IP são complementadas pelo protocolo ICMP. Aplicação nos protocolos superiores, as estações são idenficadas por endereços IPs. placa adaptadora de rede Transporte Rede protocolos IP e ICMP Interface de Rede Enlace de Dados Física nos procolos inferiores as estações são idenficadas por endereços físicos, associados as placas adaptadoras de rede. 6N2-D.3.1. Endereços IP 6N2-D.3.2. Datagrama IP 6N2-D.3.3. Mapeamento de Endereços 6N2-D.3.4. Roteamento Hotwords: endereço IP: número de 32 bits utilizado para identificar as estações numa arquitetura TCP/IP. Cada endereço IP é único entre todas as estações conectadas na internet. Datagrama: Nome da unidade de dados do protocolo de rede não orientado a conexão. ICMP: "Internet control message protocol". Protocolo de rede muito simples, complementar ao protocolo IP, usado para trocar mensagens de erro e descobrir informações sobre a rede. O ICMP é destinado principalmente para uso interno do software TCP/IP, e não para fornecer serviços ao nível de usuário. 16 Internet e Intranets-Nível 1 1998, Edgard Jamhour 2.3.1 Endereços IP Conceito: Número de 32 bits utilizado para identificar as estações numa arquitetura TCP/IP. Cada endereço IP é único entre todas as estações conectadas numa internet. Os endereços IPs são números de 32 bits, representados usualmente numa notação decimal pontuada. Cada endereço IP é composto de duas partes, um identificador de rede e um identificador do host. Endereço IP de 32 bits Identificador da rede host Identificador do host REDE REDE internet hosts com o mesmo identificador de rede. hosts com identificadores de rede distintos. REDE REDE classes de endereçamento O número de bits utilizados pelo identificador da rede e pelo identificador de host dependem da classe de endereçamento utilizada. São definidas 5 classes de endereçamento: Classe Formato do Endereço A 1 bit fixo usado para identificar a classe do endereço 0 B Identificador da Rede Identificador do Host 7 bits 24 bits 2 bits fixos usados para identificar a classe do endereço 10 Identificador da Rede Identificador do Host 14 bits 16 bits 17 Organização da Rede permite definir 127 redes distintas, cada uma com até 16777216 hosts. Intervalo dos endereços da classe de 1.0.0.0 até 127.255.255.255. permite definir até 16384 redes distintas, cada uma com 65535 hosts. de 128.0.0.0 até 191.255.2555.255. Internet e Intranets-Nível 1 C 1998, Edgard Jamhour 3 bits fixos usados para identificar a classe do endereço 110 D Identificador da Rede Identificador do Host 21 bits 8 bits 4 bits fixos usados para identificar a classe do endereço 1110 E permite definir até 2097152 redes distintas, cada uma com 255 hosts. de 192.0.0.0 até 233.255.2555.255. Classe reservada de 224.0.0.0 até para endereçamento 239.255.2555.255. em multicast. Endereço de Multicast 5 bits fixos usados para identificar a classe do endereço 11110 Classe resevada para de 248.0.0.0 até novas 247.255.2555.255. implementações. Não Definido Endereços IP especiais Alguns endereços IP possuem significado especial, e não podem ser atribuídos a nenhuma estação. Os endereços especiais estão resumidos na tabela a seguir: Endereço 0.0.0.0 0.x.x.x, onde x.x.x é o endereço do host numa rede classe A 0.0.y.y, onde y.y é o endereço do host numa rede classe B 0.0.0.z, onde z é o endereço o host numa rede classe C 255.255.255.255 x.255.255.255, onde x é o identificador de uma rede classe A y.y.255.255, onde y.y é o identificador de uma rede classe B z.z.z.255, onde z.z.z é o identificador de uma rede classe C 127.x.x.x Significado Indica o próprio host. Esse endereço só é utilizado no momento da inicialização da estação. Envia para o host especificado, assumindo a estação transmissora e receptora estão na mesma rede. Envia o datagrama em broadcast na rede local Envia o datagrama em broadcast numa rede externa. Reservado para loopback. Hotwords loopback: Enviar para si mesmo. Os datagramas com endereço IP 127.x.x.x não são enviados para rede. Eles são tratados localmente pela própria estação como datagramas recebidos. Essa função é útil para efetuar testes e para otimizar a comunicação entre processos num mesmo computador. exemplo de atribuição de endereços IP Numa rede TCP/IP todas os hosts pertencentes a uma mesma rede devem possuir o mesmo identificador de rede. Para que estações com identificadores de redes distintos possam se conectar é preciso interligá-las através de um roteador. 18 Internet e Intranets-Nível 1 1998, Edgard Jamhour identificador de rede 192.57.49.3 192.57.49.6 192.57.49.4 identificador do host 192.57.49.7 128.57.49.5 roteador endereço classe C 128.57.50.2 192.57.50.3 192.57.50.5 192.57.50.4 192.57.50.6 O roteador possui dois endereços IP, um para cada rede. Hotwords: identificador da rede: identifica uma rede conectada à internet. Todos os hosts conectados a uma dada rede possuem o mesmo identificador de rede, o que permite aos roteadores localizar rapidamente a rede a qual pertence uma estação (host). identificador do host: identifica uma única estação (host) dentro da rede. Dentro de uma mesma rede não podem haver duas estações com o mesmo identificador de host. host: termo utilizado para designar uma estação conectada a uma internet. O host representa genericamente qualquer computador da rede. notação decimal pontuada: nesta notação, os 32 bits são agrupados em 4 bytes. Cada byte é convertido para sua representação decimal equivalente, formando um endereço composto por quatro números separadas por pontos. Exemplo: 2726252423222120 2726252423222120 2726252423222120 2726252423222120 10000000 00001010 00000010 00011110 27=128 23+21=10 21=2 notação binária 24+23+22+21=30 notação decimal pontuada 128.10.2.30 19 Internet e Intranets-Nível 1 1998, Edgard Jamhour 2.3.2 Datagrama IP Conceito: Denominação dada à unidade de dados do protocolo de rede IP. Na arquitetura TCP/IP o fluxo de dados é transmitido em unidades de dados denominadas datagrama. Um datagrama consiste basicamente em duas partes: um cabeçalho de controle e um campo de dados. Datagrama Cabeçalho de Controle Campo de Dados Encapsulamento Os datagramas são transportados no campo de dados do quadros da camada de enlace de dados, num processo conhecido como encapsulamento. Cabeçalho do datagrama Cabeçalho do quadro Campo de dados do datagrama Campo de dados do quadro Camada de rede Camada de enlace de dados Fragmentação e remontagem de datagramas O tamanho máximo permitido para os quadros pode ser inferior ao tamanho máximo de um datagrama. Por exemplo, as redes Ethernet limitam o tamanho dos quadros a apenas 1500 bytes, enquanto os datagramas IP podem chegar até 64 K bytes. Nesse caso, é necessário transmitir um datragrama utilizando vários quadros. Neste processo, o campo de dados é dividido em vários fragmentos, cada um suficientemente pequeno para caber num quadro. Cada fragmento é transportado através da rede TCP/IP como se fosse um datagrama independente. O processo de fragmentação é efetuado pelas estações transmissoras e pelos roteadores que transportam os datagramas. Como os roteadores interligam redes de tecnologias diferentes, sempre que necessário, eles fragmentam ainda mais o datagrama para adaptá-lo a rede de destino. No destino final, a estação receptora reagrupa os fragmentos reconstruindo o datagrama original. 20 Internet e Intranets-Nível 1 1998, Edgard Jamhour Cabeçalho do datagrama Campo de dados do datagrama 600 0 Dados1 o cabeçalho do datagrama original é reproduzido em cada um dos segmentos. Dados2 Dados3 Cabeçalho do datagrama Dados1 Fragmento 1 (Deslocamento 0) Cabeçalho do datagrama Dados2 Fragmento 2 (Deslocamento 600) Cabeçalho do datagrama 1500 bytes 1200 Dados3 Fragmento 3 (Deslocamento 1200) Formato de um datagrama 0 4 8 12 Byte 1 VERS 16 Byte 2 HLEN Byte 3 Tipo de serviço 28 31 Byte 4 Comprimento total Identificação Tempo de vida 24 20 flags Protocolo Deslocamento do fragemento Checksum do cabeçalho cabeçalho Endereço IP de origem Endereço IP de destino Opções IP Preenchimento Dados dados ….. Hotwords VERS: Idenfica a versão do procotocolo IP que montou o datagrama. HLEN: Os 4 bits desse campo determinam o comprimento do cabeçalho do datagrama em múltiplos de palavras de 32 bits. O comprimento do cabeçalho é variável pois os campos "Opções IP" e "Preenchimento" não tem tamanho fixo. O tamanho usual do cabeçalho é de 20 bytes, quando os campos "Opções IP" e "Preenchimento" são nulos. Nesse caso, o campo HLEN apresenta comprimento igual a 5 (5 X 32 bits = 20 bytes). Tipo de serviço: contém informações que descrevem a importância do datagrama (através de 8 níveis de prioridade) e a qualidade esperada para o serviço de entrega. A qualidade do serviço é descrita por 3 bits denominados D, T e R. O bit D=1 solicita um baixo atraso, o bit T=1 solicita uma alta taxa de transmissão e o bit R=1 solicita uma transmissão altamente confiável. As informações desse campo são geralmente ignoradas pelos roteadores que transportam o datagrama. Comprimento total: informa o comprimento total do datagrama, incluindo o cabeçalho e o campo de dados, em bytes. Como esse campo possui 16 bits, o tamanho máximo de um datagrama é 2 16 ou 64 Kbytes. 21 Internet e Intranets-Nível 1 1998, Edgard Jamhour Identificação: Contém um número inteiro que identifica o datagrama. Esse campo é utilizado no processo de fragmentação e remontagem de datagamas. Todos os fragmentos de um mesmo datagrama contém o mesmo número de identificação. Dessa forma, o receptor consegue identificar facilmente os fragmentos que precisam ser reagrupados para remontar o datagrama original. Flags: Campo composto pelos bits DF (don´t fragment) e MF (more fragments). A estação transmissora assinala DF=1 para indicar que o datagrama não deve ser fragmentado. Nesse caso, se um roteador precisar fragmentar o datagrama para adequá-lo a rede de destino, o datagrama é descartado. O bit MF=1 é utilizado para indicar que o fragmento é o último pedaço do datagrama original. Quando uma estação recebe um fragmento com MF=0, ela sabe que deve esperar a chegada de mais fragmentos para completar a remontagem do datagrama. Deslocamento do Fragmento: Esse campo contém a posição relativa do fragmento em relação ao datagrama original, medido em bytes. Os fragmentos de um datagrama não chegam no receptor necessariamente na mesma ordem em que foram transmitidos. Utilizando a informação do campo de Deslocamento, a estação receptora consegue reordenar os fragmentos recebidos, e remontar o datagrama original. Tempo de vida: (TTL - Time to Live). Indica o tempo em segundos que o datagrama pode permanecer na rede internet. Quando uma estação transmite um datagrama, ela assinala o valor do TTL. Toda vez que o datagrama é processado por um roteador, o TTL é decrementado. Quando o TTL expira, o datagrama é descartado, mesmo que o destino final não tenha sido atingido. Protocolo: O campo protocolo contém um código que especifica o tipo de protocolo de transporte encapsulado no campo de dados do datagrama (geralmente TCP ou UDP). Checksum do cabeçalho: Este campo contém o checksum de todos os bytes que compõe o cabeçalho de controle, excluindo apenas o próprio campo de checksum. Este campo é utilizado pela estação receptora para verificar a integridade do cabeçalho de controle do datagrama recebido. Endereço IP de origem: contém o endereço IP que identifica a estação transmissora. Endereço IP de destino: contém o endereço IP que identifica a estação de destino. Esse campo reflete sempre o destino final, não importando se o datagrama passará ou não por roteadores intermediários. Opções IP: Campo com tamanho variável de 0 até vários bytes. Esse campo pode conter uma série de códigos em seqüência, cada um deles definido uma opção relativa ao processamento dos datagramas. As opções são geralmente relacionadas a aspectos como segurança, roteamento, relatórios de erro, depuração, etc. Preenchimento: Esse campo completa a seqüência do campo "Opções" com bits de preenchimento de valor "0", garantindo que o tamanho total dos campos "Opções + Preenchimento" seja múltiplo de 32 bits. Dados: contém os dados transportados pelo datagrama. Os dados transportados coorespondem geralmente a unidade de dados do procotolo de transporte TCP ou UDP. 22 Internet e Intranets-Nível 1 1998, Edgard Jamhour 2.3.3 Mapeamento de Endereços Conceito: Denominação dada ao processo de associar um endereço IP ao endereço físico de uma interface de rede. Para poder transmitir um datagrama, a estação transmissora precisa conhecer todos as informações de endereçamento relacionadas ao destinatário, tanto ao nível da camada de rede (endereço IP) quanto ao nível da camada de enlace de dados (endereço físico). Na arquitetura TCP/IP, todas as referências aos endereços das estações são feitas através de endereços IP. O endereço físico do destinatário é descoberto dinamicamente pelo transmissor antes de efetuar a comunicação, utilizando um protocolo auxiliar denominado ARP. endereço IPA endereço físico A Estação A Estação B interface de rede endereço IPB interface de rede endereço físico B datagrama endereço físico endereço físico endereço IP de de destino de origem destino endereço IP de origem quadro Exemplo de funcionamento do ARP 23 dados Internet e Intranets-Nível 1 1998, Edgard Jamhour Exemplo: Transmissão de um datagrama de A para B. IP: 200.17.98.106 endereço físico 00-60-08-16-85-B3 IP: 200.17.98.105 Estação A Estação B interface de rede interface de rede endereço físico 00-60-08-16-86-B5 1) A estação transmissora envia uma requisição ARP, perguntando o endereço físico correspondente ao IP de destino da estação B: 200.17.98.105. Uma requisição ARP é um datagrama IP enviado em broadcast para todas as estações da rede. endereço físico 00-60-08-16-85-B3 requisição ARP (IP 200.17.98.106) A requisição ARP é um quadro contendo um datagrama IP, com as seguintes informações de endereçamento: Endereço Físico de Origem: 00-60-08-16-85-B3 Endereço Físico de Destino: FF-FF-FF-FF-FF-FF (broadcast) Endereço IP de Origem: 200.17.98.106 Endereço IP de Destino: 255.255.255.255 (broadcast) O endereço IP solicitado é enviado no campo de dados do datagrama. IP: 200.17.98.106 IP: 200.17.98.105 Estação A Estação B interface de rede interface de rede endereço físico 00-60-08-16-86-B5 requisição ARP 200.17.98.105 resposta ARP 00-60-08-16-86-B5 2) As estações ao receberem a requisição ARP comparam o endereço IP solicitado com o seu próprio. Se os endereços forem diferentes a requisição é ignorada. 3) Nesse caso, a estação B verifica que o endereço solicitado é o seu, e responde enviando uma resposta ARP contendo o seu endereço físico. A resposta é um datagrama IP enviado diretamente a estação que enviou a requisição. A resposta ARP é um quadro contendo um datagrama IP, com os seguintes dados de endereçamento: Endereço Físico de Origem: 00-60-08-16-86-B5 Endereço Físico de Destino: 00-60-08-16-85-B3 Endereço IP de Origem: 200.17.98.105 Endereço IP de Destino: 200.17.98.106 O endereço físico solicitado é enviado no campo de dados do datagrama. 24 Internet e Intranets-Nível 1 endereço físico 00-60-08-16-85-B3 1998, Edgard Jamhour IP: 200.17.98.106 Estação A interface de rede IP: 200.17.98.105 Estação B interface de rede resposta ARP (00-60-08-16-86-B5) quadro contendo o datagrama IP endereçado a estação B 4) Ao receber a resposta ARP, a estação transmissora determina o endereço físico da estação de destino. Endereço Físico de Origem: 00-60-08-16-85-B3 Endereço Físico de Destino: 00-60-08-16-86-B5 Endereço IP de Origem: 200.17.98.106 Endereço IP de Destino: 200.17.98.105 5) Uma vez que o endereço físico do destinatário é conhecido, a estação transmissora envia sua mensagem diretamente a estação de destino através de uma comunicação ponto a ponto. Hotwords endereço físico: corresponde geralmente ao endereço associado a interface de rede da estação ou roteador. Segundo a terminologia IEEE, o endereço físico é comumente referido como endereço MAC. ARP: (Address Resolution Protocol). Protocolo utilizado para que a estação transmissora descubra o endereço físico do destinatário. 25 Internet e Intranets-Nível 1 1998, Edgard Jamhour 2.3.4 Roteamento Conceito: Operação que consiste em enviar os datagramas até seu destino final, passando se necessário por um ou mais roteadores intermediários. A arquitetura TCP/IP define os mecanismos para que os datagramas sejam entregues no seu destino final, independente dele estar situado na mesma rede do transmissor (comunicação intrarede), ou numa rede externa interligada através de roteadores (comunicação inter-redes). numa comunicação intra-rede, o datagrama é endereçado diretamente pela estação transmissora à estação de destino. internet REDE REDE REDE REDE numa comunicação inter-redes, o datagrama precisa passar por vários roteadores para chegar ao seu destino final. Comunicação intra-rede Numa comunicação entre duas estações situadas na mesma rede, o transmissor envia o quadro diretamente ao destino final, preenchendo os campos do destinatário com o endereço físico e o endereço IP da estação receptora. 26 Internet e Intranets-Nível 1 1998, Edgard Jamhour Exemplo: Transmissão de um datagrama de A para B. IP: 200.17.98.106 endereço físico 00-60-08-16-85-B3 IP: Estação A interface de rede endereço físico de destino endereço físico de origem endereço físico Estação B 00-60-08-16-81-B5 interface de rede endereço IP de destino 00-60-08-16-81- 00-60-08-16-85- 200.17.98.105 B5 B3 endereço IP de origem 200.17.98.106 dados quadro Comunicação inter-redes Numa comunicação entre estações conectadas a redes diferentes, a comunicação é dividida em vários saltos. Cada salto representa uma comunicação entre um par estação-roteador ou roteadorroteador ligados fisicamente. Os endereços IP de origem e de destino se mantém os mesmos durante todos os saltos do datagrama. O endereço físico, entretanto, é modificado para endereçar os elementos participantes de cada salto. 27 Internet e Intranets-Nível 1 1998, Edgard Jamhour Exemplo de comunicação com 3 saltos segundo salto: IP origem: 10.0.0.2 IP destino: 30.0.0.2 endereço físico de origem: C endereço físico de destino: D primeiro salto: IP origem: 10.0.0.2 IP destino: 30.0.0.2 endereço físico de origem: A endereço físico de destino: B terceiro salto: IP origem: 10.0.0.2 IP destino: 30.0.0.2 endereço físico de origem: E endereço físico de destino: F quadro quadro quadro rede 10.0.0.0 rede 20.0.0.0 roteador emissor roteador IP: 20.0.0.3 endereço físico: D IP: 10.0.0.2 endereço físico: A IP: 10.0.0.3 endereço físico: B rede 30.0.0.0 receptor IP: 30.0.0.3 endereço físico: E IP: 30.0.0.2 endereço físico: F IP: 20.0.0.2 endereço físico: C roteador: cada porta do roteador possui um endereço IP distinto, pertencente a mesma rede que interconecta. Tabelas de Roteamento O processo de roteamento envolve uma série de decisões tomadas tanto pelas estações quanto pelos roteadores. Por exemplo, uma estação precisa determinar se o datagrama a ser transmitido deve ser endereçado diretamente ao destinatário ou a um roteador intermediário. Ao receber um datagrama, os roteadores também precisam determinar se devem retransmití-lo a outro roteador ou diretamente à estação de destino. O processo de decisão quanto ao roteamento é baseado em tabelas armazenadas localmente pelas estações e pelos roteados denominadas "tabelas de roteamento IP". Exemplo de tabelas de roteamento IP: 20.0.0.2 rede 10.0.0.0 rede 10.0.0.0 roteador roteador estação rede 30.0.0.0 IP: 10.0.0.3 IP: 30.0.0.2 IP: 30.0.0.3 IP: 10.0.0.2 Tabela de roteamento da estação Endereço de IP Endereço de Gateway pertence a rede 10.x.x.x entregar diretamente pertence a outra rede 10.0.0.2 (gateway default) 28 Interface 10.0.0.3 10.0.0.3 Custo 1 1 Internet e Intranets-Nível 1 1998, Edgard Jamhour Tabela de roteamento do roteador Endereço de Rede Endereço de Gateway pertence a rede 10.x.x.x entregar diretamente pertence a rede 20.x.x.x entregar diretamente pertence a rede 30.x.x.x entregar diretamente pertence a outra rede 30.0.0.3 (gateway default) Interface 10.0.0.2 20.0.0.2 30.0.0.2 30.0.0.2 Custo 1 1 1 1 Endereço de rede: parte do endereço IP do destinatário correspondente ao identificador da rede. Cada entrada da tabela de roteamento indica qual ação deve ser tomada em função da rede que pertence o destinatário. Se a rede do destinatário não for encontrada em nenhuma entrada da tabela de roteamento, o datagrama é enviado para o gateway default (geralmente, o roteador que interliga a rede a internet). Endereço de gateway: O endereço de gateway não é usado diretamente na formatação do datagrama. Ele é utilizado pelo transmissor para descobrir o endereço físico do destinatário, através do protocolo ARP. Se o destinatário pertencer a uma rede distinta do transmissor, então o endereço de gateway corresponde a uma porta do roteador que irá encaminhar o datagrama. Se o transmissor e o receptor estiverem na mesma rede, então o endereço de gateway é o próprio endereço do destinatário. Custo: medida relativa do custo de utilização da rota. A informação de custo é utilizada pelo roteador quando existir mais de uma rota para o mesmo destino. 29 Internet e Intranets-Nível 1 2.4 1998, Edgard Jamhour Protocolo do nível de transporte. Conceito: Os protocolos de transporte são capazes de manipular múltiplos endereços numa mesma estação, permitindo que várias aplicações executadas no mesmo computador possam enviar e receber datagramas independentemente. Dependendo do tipo de serviço de comunicação utilizado, as funções da camada de transmissão podem ser executadas pelos protocolos TCP ou UDP. O protocolo TCP (Transmission Control Protocol) oferece serviços de comunicação confiáveis e orientados a conexão. O protocolo UDP (User Datagram Protocol) oferece serviços do tipo datagrama, isto é, não orientados a conexão. Camada de Aplicação cabeçalho de controle Dados Camada de Transporte (TCP ou UDP) Dados Unidade de dados do protocolo de transporte T-PDU datagrama IP Camada de Rede (IP) Dados Camada de Enlace de dados representação lógica binária 0001101010101010101010001 Camada Física representação elétrica ou óptica meio físico de transmissão 6N2-D.4.1. Protocolo TCP 6N2-D.4.2. Protocolo UDP 30 quadros A T-PDU é encapsulada no campo de dados do datagrama IP. Internet e Intranets-Nível 1 2.5 1998, Edgard Jamhour Protocolo TCP Conceito: Protocolo da camada de transporte que oferece um serviço de comunicação confiável e orientado a conexão sobre a camada de rede IP. O Protocolo TCP (Transmission Control Protocol) é um protocolo orientado a conexão destinado a construir comunicações ponto a ponto confiáveis. endereçamento por portas comunicação confiável controle de seqüenciação segmentos TCP endereçamento por portas: O protocolo TCP utiliza um nível de endereçamento complementar aos endereços IP, que permite distinguir vários endereços de transporte numa mesma estação. Os endereços de transporte são números inteiros de 16 bits denominados portas. O protocolo TCP identifica uma conexão pelo par (IP,porta) de ambas as extremidades. Dessa forma, uma mesma porta pode ser usada para estabelecer simultaneamente duas conexões sem nenhuma ambiguidade. A aplicação B se comunica como se estivesse utilizando uma ligação ponto a ponto dedicada com cada uma das outras aplicações. Aplicação B Aplicação A CAMADA DE APLICAÇÃO CAMADA TDP Porta 53 Porta 25 Porta 1184 4 Porta 53 Aplicação C Porta 1069 Porta 1184 CAMADA IP CAMADAS INFERIORES 128.10.2.4 128.10.2.5 ESTAÇÃO B ESTAÇÃO C 128.10.2.3 ESTAÇÃO A Conexão bidirecional formada pelo par (128.10.2.3,1184) e (128.10.2.4,53) Conexão bidirecional formada pelo par (128.10.2.5,1184) e (128.10.2.4,53) Comunicação confiável O protocolo TCP oferece um serviço de comunicação confiável utilizando uma técnica conhecida como “confirmação positiva com retransmissão”. Nesse método, o receptor precisa confirmar o recebimento dos dados através de uma mensagem de confirmação (ACK). O transmissor espera a confirmação de cada mensagem transmitida antes de enviar uma nova 31 Internet e Intranets-Nível 1 1998, Edgard Jamhour mensagem. Se a confirmação demorar mais do que um tempo pré-estabelecido, o transmissor retransmite a mensagem. Controle de Seqüenciação O protocolo TCP oferece um serviço de comunicação orientado a conexão, que garante que as mensagens serão recebidas na mesma seqüência em que foram transmitidas. Esta característica permite fragmentar as mensagens muito grandes em porções menores de maneira a compatibilizálas com o tamanho máximo imposto aos datagramas IP. A mensagem original é reconstruída de maneira transparente pela camada de transporte do receptor. Segmentos TCP A unidade de dados do protocolo TCP é denominada segmento. Usualmente, cada segmento TCP é encapsulado no campo de dados de um único datagrama. Um segmento TCP é composto de duas partes: um cabeçalho de controle e um campo de dados. O formato do segmento é detalhado abaixo. 0 4 8 12 Byte 1 16 Byte 2 24 20 Byte 3 Porta de origem 28 31 Byte 4 Porta de destino Número de Seqüência cabeçalho Número de Confirmação HLEN Reservado Bits de código Janela de Recepção Ponteiro de Urgência Checksum Opções Dados dados ….. Hotwords Porta de Origem: identificador de 16 bits que identifica a porta que transmitiu o segmento. Porta de Destino: identificador de 16 bits que identifica a porta para onde o segmento será transmitido. Número de Seqüência: O protocolo TCP fragmenta mensagens muito longas e as transmite numa seqüência de segmentos. O campo "Número de Seqüência" indica que porção da mensagem original está sendo transmitida no segmento corrente. Essa informação é utilizada pelo receptor para reordenar os segmentos que cheguem fora de ordem. 32 Internet e Intranets-Nível 1 1998, Edgard Jamhour Mensagem Original 0 200 0 Dados SEGMENTO 800 500 200 Dados SEGMENTO 500 bytes Dados SEGMENTO Número de confirmação: Identifica o número do próximo byte que o receptor espera receber. Esta informação é enviada pelo receptor ao transmissor através das mensagens de confirmação de recebimento (ACK). HLEN: Este campo contém um número inteiro que determina o comprimento do cabeçalho do datagrama em múltiplos de palavras de 32 bits. O comprimento do cabeçalho é variável pois os campos "Opções " e "Preenchimento" não tem tamanho fixo. Bits de código: Este campo identifica o tipo de mensagem transportada pelo segmento. Os segmentos podem transportar mensagens de vários tipos: confirmação (ACK), estabelecimento ou liberação de conexões, dados, etc. Janela de Recepção: TCP provê meios para que o receptor cadencie o fluxo de dados enviados pelo transmissor. Toda vez que o receptor confirma o recebimento de uma mensagem (enviando uma mensagem ACK para o transmissor), ele preenche o campo "Janela de Recepção" informando o número de bytes que ele é capaz de receber na próxima transmissão. O transmissor leva em consideração essa informação para determinar o tamanho do próximo segmento a ser enviado. Ponteiro de Urgência: Indica a posição (em bytes) em relação a seqüência de dados recebidos onde dados urgentes poderão ser encontrados. Este mecanismo é utilizado par que o transmissor possa enviar mensagens de alta prioridade ao receptor. Checksum: Este campo contém o checksum de todos os bytes que compõe o segmento TCP (cabeçalho de controle e dados). Este campo é utilizado pela estação receptora para verificar a integridade do segmento recebido. Opções: Campo opcional de tamanho variável, múltiplo de 32 bits. Este campo foi criado para que o protocolo TCP possa disponibilizar facilidades adicionais que não foram cobertas pelos campos padronizados do cabeçalho de controle. Dados: Contém os dados transportados pelo segmento TCP. 33 Internet e Intranets-Nível 1 2.6 1998, Edgard Jamhour Protocolo UDP Conceito: Protocolo da camada de transporte que oferece um serviço de comunicação não orientado a conexão, construído sobre a camada de rede IP. O Protocolo UDP (User Datagram Protocol) é um protocolo não orientado a conexão que oferece serviços de comunicação bastante elementares. O protocolo é não confiável, isto é, não há garantia de entrega dos datagramas transportados. O protocolo também não garante que os datagramas cheguem na mesma ordem em que foram transmitidos. Sua principal função é permitir a distinção de múltiplos destinos numa mesma estação. Sendo não orientado a conexão, o protocolo UDP pode ser utilizado tanto em comunicações do tipo difusão (broadcast) quanto ponto a ponto. aplicação A aplicação B CAMADA DE APLICAÇÃO Porta 1 Porta 2 Porta 3 As aplicações recebem as mensagens endereçando as portas da camada UDP. Porta N ... Demultiplexagem CAMADA UDP CAMADA IP CAMADAS INFERIORES A demultiplexagem é feita analisando a porta de destino, indicada no cabeçalho de controle das mensagens que chegam na estação. datagrama com a mensagem UDP encapsulada. Mensagem UDP A unidade de dados do protocolo UDP é denominada user datagram, ou simplesmente mensagem UDP. Uma mensagem UDP é composta de duas partes: um cabeçalho de controle e um campo de dados. O formato da mensagem é detalhado abaixo. 34 Internet e Intranets-Nível 1 1998, Edgard Jamhour 16 0 31 Porta de Origem Porta de Destino Comprimento da Mensagem checksum cabeçalho Dados dados ….. Hotwords Porta de Origem: identificador de 16 bits que identifica o endereço, ao nível da camada de transporte, para o qual deve ser enviado uma eventual resposta à mensagem transmitida. Porta de Destino: identificador de 16 bits que identifica o endereço do destinatário da mensagem ao nível da camada de transporte. Comprimento da mensagem: corresponde ao comprimento total da mensagem UDP, em bytes, incluindo o cabeçalho e o campo de dados. checksum: O preenchimento do campo checksum é opcional. A informação deste campo é usada pelo receptor para verificar a integridade dos dados recebidos. No caso de haver erro, o receptor descarta a mensagem. Dados: O campo de dados contém as informações a serem transmitidas. O comprimento máximo da mensagem UDP, incluindo o campo de dados e o cabeçalho é de 64 Kbytes. 35 Internet e Intranets-Nível 1 2.7 1998, Edgard Jamhour Protocolos do nível de aplicação. Conceito: Protocolos que disponibilizam serviços padronizados de comunicação, destinados a dar suporte ao desenvolvimento de aplicações para os usuários. As funções da camada de aplicação da arquitetura TCP/IP são executadas por um conjunto amplo de protocolos, que oferecem serviços de comunicação padronizados. Cada um desses protocolos agrupa funções das camadas sessão, apresentação e aplicação do modelo OSI. Os protocolos de aplicação disponibilizam serviços de comunicação de alto nível para que programadores implementem aplicativos que utilizam recursos da rede. Os protocolos de aplicação estão num processo de evolução contínua, sendo que novos protocolos estão sendo continuamente propostos aumentando a gama de serviços disponibilizados. Modelo OSI Arquitetura TCP/IP Aplicação FTP TELNET SMTP HTTP Apresentação SNMP ... NFS Protocolos de Aplicação Sessão Transporte TCP UDP Rede IP Enlace de Dados Enlace de Dados Física Física FTP: File Transfer Protocol. Protocolo que implementa serviços de transferência de arquivos de uma estação para outra (ponto a ponto) através de rede. TELNET: Serviço de Terminal Remoto. Protocolo utilizado para permitir aos usuários controlarem estações remotas através da rede. SMTP: Simple Mail Transfer Protocol. Protocolo utilizado para transferência de mensagens de correio eletrônico de uma estação para outra. Esse protocolo especifica como 2 sistemas de correio eletrônico interagem. HTTP: Hypertext Tranfer Protocol. Protocolo utilizado para transferência de informações multimídia: texto, imagens, som, vídeo, etc. SNMP: Simple Network Monitoring Protocol. Protocolo utilizado para monitorar o estado das estações, roteadores e outros dispositivos que compõe a rede. NFS: Network File System. Protocolo desenvolvido pela "SUN Microsystems, Incorporated", que permite que as estações compartilhem recursos de armazenamento de arquivos através da rede. 36 Internet e Intranets-Nível 1 1998, Edgard Jamhour 3 Endereçamento A rede Internet utiliza um modelo de endereçamento universal, baseado em endereços IP. Um endereço IP permite identificar qualquer computador (host) conectado a rede de maneira única e inconfundível. Essa informação é utilizada em todas as comunicações entre os computadores que se conectam a Internet. Uma vez que os endereços IP contém informações relativas a rede e ao host, sua atribuição está relacionada com a topologia física da Internet. A comunicação entre hosts com endereços IP com identificadores de rede diferentes precisa ser intermediada por um roteador. Hosts pertencentes a mesma rede se comunicam diretamente sem necessidade de roteamento. Para permitir a integração de redes pelo mundo todo, a atribuição de endereços IPs para os computadores ligados a Internet deve seguir uma política global, pois os endereços não podem ser duplicados ou desperdiçados. B.1. Endereços na Internet: A atribuição de endereços IP para computadores que se conectam a rede pública Internet é coordenada pela organização mundial IANA ((The Internet Assigned Numbers Authority). B.2. Conexão de Intranets com a Internet: As Internets privadas podem ser conectadas a rede pública Internet, permitindo que os usuários da corporação troquem informações com o mundo exterior. B.3. Endereços em Intranets: A atribuição de endereços IP em redes privativas pode ser feita livremente, a critério do administrado da rede local corporativa. B.4. Configuração Dinâmica de Endereços IP: Mecanismo que permite atribuir automaticamente um endereço IP para uma host, assim que essa é inicializada ou conectada a rede Internet. Hotwords endereços IP: Um endereço IP é um identificador numérico de 32 bits, dividido em 2 campos: um identificador da rede e o identificador da estação dentro da rede. Todos as estações de uma mesma rede possuem o mesmo identificador de rede e, necessariamente, identificadores de estação diferentes. Redes diferentes são ligadas através de roteadores. Os endereços de 32 bits estão associados ao protocolo IP versão 4 (IPv4), atualmente em uso na Internet. Estão sendo efetuados estudos pelo IAB para uma nova versão do protocolo IP denominada IPv6 (IP versão 6). O IPv6 utilizará endereços IP de 128 bits, aumentando de maneira significativa o espaço de endereçamento da Internet. Para maiores detalhes sobre o funcionamento do protocolo IP favor consultar o capítulo D do livro 6. 37 Internet e Intranets-Nível 1 3.1 1998, Edgard Jamhour Endereços na Internet Conceito: A atribuição de endereços IP para os computadores que se conectam a Internet é coordenada por autoridades de abrangência mundial, de maneira a evitar a duplicação e a má distribuição de endereços. A distribuição de endereços IP para computadores que se conectam a Internet mundial é feita de acordo com políticas definidas na RFC 2050. A implementação dessa política é de responsabilidade da IANA. A IANA implementa a política de distribuição de endereços IP com o auxílio de diversas entidades denominadas "autoridades de registro na Internet". A IANA distribui blocos do espaço total de endereços IP para autoridades regionais. Cada autoridade regional possui uma abrangência continental. Para facilitar a administração dos endereços IP, as autoridades regionais delegam a tarefa de alocação dos endereços IP para autoridades locais, que possuem geralmente abrangência nacional. HIERARQUIA DE REGISTRO DE ENDEREÇOS NA INTERNET IANA ARIN RIPE NCC APNIC Asia e Pacífico Américas, Caribe e África Europa Autoridades Regionais de Registro na Internet Autoridades Locais de Registro na Internet RNP Brasil Hotwords RNP: No Brasil, a autoridade de registro na Internet é a RNP (Rede Nacional de Pesquisa). A RNP delega a responsabilidade de alocação de endereços IP a FAPESP (Fundação de Amparo à Pesquisa do Estado de São Paulo). Deve-se observar que a RNP é apenas um dos provedores de "backbone" que possibilitam o acesso a Internet no Brasil. De fato, todos os grandes provedores de "backbone" possuem blocos de números reservados a seus clientes. Por isso, não se faz necessário uma solicitação especifica à FAPESP. RFC 2050: Request for Comment número 2050. Documento elaborado por um grupo de trabalho IETF (The Internet Engineering Task Force) e aprovada pelo IESG (Internet Engineering Steering Group). Esse documento contém as diretivas para alocação de endereços IP para Internet. IANA (The Internet Assigned Numbers Authority). Organização que possui a responsabilidade de coordenar a distribuição de endereços IP pelo mundo. APNIC (Asia-Pacific Network Information Center). Autoridade responsável por alocar endereços IPs para as redes da Ásia e Pacífico. 38 Internet e Intranets-Nível 1 1998, Edgard Jamhour ARIN (American Registry for Internet Numbers) Autoridade responsável por alocar endereços IPs para a América do Norte, América do Sul, Caribe e regiões da África SubSaariana. RIPE NCC (Reseau IP Europeens) Autoridade responsável por alocar endereços IPs para as redes da Europa. 39 Internet e Intranets-Nível 1 3.2 1998, Edgard Jamhour Conexão de Intranets com a Internet Conceito: As Intranets podem ser conectadas a rede pública Internet, permitindo que os usuários de uma rede privada troquem informações com o mundo exterior. É muito comum que numa mesma rede corporativa convivam aplicações que envolvam apenas comunicações internas juntamente com aplicações que envolvam a comunicação com o mundo exterior. Como conseqüência, certos hosts (clientes ou servidores) da rede são acessíveis apenas internamente e outros são acessíveis tanto internamente quanto externamente. A distinção do grau de conectividade com o mundo externo é importante, pois a alocação dos endereços IP dos hosts com conexão externa deve obedecer as regras impostas pelas autoridades que coordenam a Internet. As regras para atribuições de endereços IPs com diferentes graus de conectividade com o mundo externo são definidas pela RFC 1918. Esse documento classifica os hosts em três categorias, de acordo com o grau de conectividade com o mundo externo: 7N1-B.4.1. Hosts categoria 1: Hosts que se comunicam apenas internamente. 7N1-B.4.2. Hosts categoria 2: Hosts que se comunicam indiretamente com o mundo externo. 7N1-B.4.3. Hosts categoria 3: Hosts que se comunicam diretamente com o mundo externo. Hotwords RFC 1918: Request for Comment número 1918. Documento elaborado por um grupo de trabalho IETF (The Internet Engineering Task Force) e aprovada pelo IESG (Internet Engineering Steering Group). Esse documento contém as diretivas para alocação de endereços IP em Intranets. 40 Internet e Intranets-Nível 1 1998, Edgard Jamhour 3.2.1 Hosts categoria 1 Conceito: Hosts que se comunicam apenas internamente. Os hosts que se comunicam apenas no interior da rede comporativa e não tem acesso a redes externas ou a Internet são classificados como "Categoria 1". Cada hosts dessa categoria precisa de um endereço IP que seja único na empresa, mas que pode ser duplicado entre empresas diferentes. Numa rede Intranet sem conexão com a Internet, todos os hosts pertencem a categoria 1. Exemplo de uma rede Intranet constituída de duas redes físicas conectadas por um roteador. 192.16.0.1 192.16.0.2 192.16.0.5 192.16.0.3 192.16.0.4 rede 192.16.0.x roteador interno 192.16.1.5 rede 192.16.1.x 192.16.1.1 192.16.1.2 192.16.1.3 servidor 192.16.1.4 rede interna de uma empresa. Hotwords servidor: Computador responsável por armazenar informações e disponibilizar serviços de comunicação para os clientes. Os serviços disponibilizados pelo servidor correspondem àqueles definidos pelos protocolos de aplicação da arquitetura TCP/IP, como por exemplo, FTP (transferência de arquivos), SMTP (correio eletrônico), etc. Para ser funcional, uma rede Intranet precisa de pelo menos um servidor, podendo, se necessário, haver mais de um servidor na mesma rede. A rede Internet é constituída por uma infinidade de servidores. 41 Internet e Intranets-Nível 1 1998, Edgard Jamhour 3.2.2 Hosts categoria 2 Conceito: Hosts que se comunicam indiretamente com o mundo externo. Muitas redes corporativas necessitam disponibilizar o acesso a Internet para seus funcionários, mas sem comprometer a segurança da sua rede corporativa interna. Para permitir que clientes acessem o mundo externo sem conectá-los diretamente a Internet, utiliza-se usualmente um dispositivo denominado servidor proxy. Os hosts que se comunicam com o mundo externo através de dispositivos intermediários como os servidores proxies são classificados na categoria 2. As regras para atribuição de endereços IP aos hosts da categoria 2 são idênticas as regras da categoria 1. Apenas o servidor proxy necessita de um endereço IP registrado pelas autoridades que coordenam a Internet. Exemplo de uma rede Intranet interligada a Internet através de um servidor proxy. Nessa rede, os hosts estão na categoria 2. 192.16.0.1 192.16.0.2 servidor proxy 192.16.0.3 200.17.98.1 192.16.0.4 roteador 200.17.98.2 192.16.0.5 roteador interno 192.16.1.5 servidor 192.16.1.1 192.16.1.2 192.16.1.3 rede corporativa interna da empresa conexão com um backbone da Internet. 192.16.1.4 o servidor não é acessível pela rede externa. Hotwords servidor proxy: Dispositivo responsável por intermediar a conexão entre os hosts internos e o mundo externo. O servidor proxy (procurador) é geralmente implementado através de um computador com duas interfaces de rede, uma conectada a rede interna e a outra a rede externa. Quando um cliente necessita acessar informações de um servidor externo, ele efetua o pedido ao servidor proxy. O servidor proxy, por sua vez, contata o servidor externo e retorna o resultado ao cliente. Nesse procedimento, o único computador da rede exposto ao mundo externa é o servidor proxy. acesso a Internet: O termo "acesso a Internet" implica que um host tem acesso a pelo menos um tipo de serviço de comunicação padronizado, por exemplo trocar mensagens de correio eletrônico, com o mundo exterior. 42 Internet e Intranets-Nível 1 1998, Edgard Jamhour 3.2.3 Hosts categoria 3: Conceito: Hosts que se comunicam diretamente com o mundo externo. Os hosts são classificados na categoria 3 quando eles estão diretamente integrados a rede Internet. O endereços IP de cada hosts pertencente a essa categoria deve ser únicos em toda a rede Internet. Para que cada host que uma empresa precisa conectar na categoria 3, ela precisa conseguir um endereços IP junto as autoridades que coordenam a distribuição de endereços IP na Internet. Exemplo onde os hosts da rede são integrados diretamente ao backbone da Internet. Nesse caso a rede corporativa corresponde a uma extensão da rede Internet. 200.16.0.1 200.16.0.2 200.16.0.3 192.16.0.5 200.16.0.4 200.16.0.6 roteador conexão com um backbone da Internet. 200.16.2.5 200.16.2.1 200.16.2.2 200.16.2.3 43 200.16.2.4 Internet e Intranets-Nível 1 3.3 1998, Edgard Jamhour Endereços na Intranet Conceito: Os endereços IP podem ser atribuídos livremente numa rede Intranet completamente isolada da rede pública Internet. Se houver necessidade de conexão com a Internet, entretanto, os endereços IP devem ser atribuídos segundo regras bem definidas. Quando da implantação de uma Intranet, uma empresa possui autonomia para definir a distribuição dos endereços IP pelas máquinas da rede. Se posteriormente a empresa necessitar integrar parte de sua rede a Internet, a má distribuição de endereços poderá causar conflitos com a rede pública devido a duplicação de endereços. Para evitar este tipo de problema, a RFC 1918 recomenda que as empresas implementem suas Intranets utilizando endereços reservados, que não são atribuídos a nenhum host conectado a rede Internet. O documento define três faixas de endereços reservados para as Intranets: Faixa de endereços privados 10.0.0.0 a 10.255.255.255 172.16.0.0 a 172.31.255.255 192.168.0.0 a 192.168.255.255 Descriçao Define uma rede de endereços classe A. Define 16 redes contíguas de endereços classe B. Define 256 redes contíguas de endereços classe C. Uma vez que endereços privados não possuem significado global, as informações de roteamento sobre redes privadas não dever ser propagados em enlaces que saiam dos limites da rede interna da empresa, e pacotes com endereços de origem ou destino privados não devem ser transmitidos através desses enlaces. A RFC 1918 recomenda que os roteadores em redes que não estiverem usando um espaço de endereço privado, especialmente aqueles provedores de serviço Internet, devem configurar seu roteadores para rejeitar a informação de roteamento sobre as redes privadas. Hotwords RFC 1918: Request for Comment número 1918. Documento elaborado por um grupo de trabalho IETF (The Internet Engineering Task Force) e aprovada pelo IESG (Internet Engineering Steering Group). Esse documento contém as diretivas para alocação de endereços IP em Intranets. 44 Internet e Intranets-Nível 1 3.4 1998, Edgard Jamhour Configuração Dinâmica de Endereços IP Conceito: Mecanismo que permite atribuir automaticamente um endereço IP para uma host, assim que essa é inicializada ou conectada a rede Internet. A atribuição de endereços IP numa rede TCP/IP de grande porte pode ser uma tarefa bastante complexa. O administrador da rede deve certificar-se que cada host receba um endereço IP único entre todas as máquinas da rede. A configuração manual de endereços IP, além de ser trabalhosa, pode levar a duplicação indesejável de endereços. Em redes de grande porte, determinar a localização física de duas máquinas apresentando conflito de endereços IP pode ser uma tarefa bastante difícil. Para auxiliar a resolver este problema, grupos de trabalho IETF (Internet Engineering Task Force) padronizaram um serviço que auxilia a configuração automática de endereços IP, denominado DHCP (Dynamic Host Configuration Protocol). O DHCP foi padronizado pelas RFCs 1533, 1534, 1541 e 1542. 7N1-B.4.1. Funcionamento do DHCP 7N1-B.4.2. Uso do DHCP numa Intranet 7N1-B.4.3. Uso do DHCP por provedores de Acesso a Internet 45 Internet e Intranets-Nível 1 1998, Edgard Jamhour 3.4.1 Funcionamento do DHCP O serviço de DHCP (Dynamic Host Configuration Protocol) funciona segundo a arquitetura cliente-servidor. Nessa arquitetura, uma máquina denominada "servidor de DHCP" é responsável por atribuir endereços IPs para as demais máquinas, denominadas "clientes DHCP". A atribuição do endereço IP é feita no momento que o computador cliente é ligado, ou mais especificamente, quando seu serviço de rede é iniciado. Deve-se observar que o servidor DHCP apenas "empresta" o endereço IP ao cliente. Cada cliente é responsável por renovar o seu empréstimo de tempos em tempos. Se o empréstimo não for renovado, o endereço IP é considerado livre e pode ser atribuído a outra máquina da rede. Esta característica permite reutilizar endereços IP quando um computador é desativado. Cliente DHCP Cliente DHCP O serviço de DHCP pode ser usado inclusive para atribuir endereços IP para os servidores da rede. 192.0.0.5 Cliente DHCP 192.0.0.2 192.0.0.1 192.0.0.3 192.0.0.4 Servidor DHCP Cliente DHCP depósito de endereços IP Cliente DHCP 192.0.0.1 192.0.0.2 192.0.0.3 192.0.0.4 192.0.0.5 .... Hotwords atribuir endereço IP: De fato, o serviço de DHCP não atribui apenas endereços IP. Outros parâmetros de configuração necessários a comunicação na arquitetura TCP/IP podem ser distribuídos aos clientes juntamente com o endereço IP. Geralmente, esses parâmetros correspondem a máscara de subrede, e o endereço IP do "gateway default", isto é, o roteador para onde são enviadas as mensagens que não possuem uma rota conhecida. servidor DHCP: corresponde a um computador qualquer da rede, escolhido para centralizar a distribuição de endereços IP. O servidor de DHCP é um computador comum, sobre o qual é 46 Internet e Intranets-Nível 1 1998, Edgard Jamhour instalado o software que executa o serviço de DHCP. O administrador da rede interage diretamente com o servidor de DHCP para configurar como os endereços IP deverão ser distribuídos. clientes DHCP: corresponde aos computadores que recebem os endereços IPs através do serviço de DHCP. Deve-se observar que o termo "cliente" refere-se unicamente ao serviço de DHCP. Um computador que funciona normalmente como servidor na rede TCP/IP (servidor de correio eletrônico, por exemplo) pode ser um cliente DHCP. Um cliente DHCP negocia o uso de um endereço IP através da troca de mensagens com o servidor. Após haver recebido um endereço IP pela primeira vez, o cliente sempre tenta manter o mesmo IP, solicitando periodicamente ao servidor a renovação do direito de usar o IP. depósito de endereços IP: corresponde a um conjunto pré determinado de endereços IP, que o servidor DHCP distribui para os clientes. Quando um cliente que solicita um endereço IP pela primeira vez, o servidor DHCP atribui o primeiro endereço IP do depósito que ainda não foi utilizado. O depósito de endereços IP é configurado diretamente no servidor de DHCP, pelo administrador da rede. 47 Internet e Intranets-Nível 1 1998, Edgard Jamhour 3.4.2 Uso do DHCP numa Intranet O serviço de DHCP (Dynamic Host Configuration Protocol) pode ser utilizado para simplificar significativamente o processo de configuração de endereços IP em Intranets corporativas. Dependendo da topologia física da rede, pode ser necessária a utilização de mais de um servidor de DHCP. Os clientes localizam o servidor de DHCP através de uma mensagem definida pelo protocolo DHCP, enviada em broadcast pela rede. Como as mensagens em broadcast não se propagam através dos roteadores, os clientes tendem a utilizar o servidor de DHCP que esteja localizado na mesma rede física. endereços IP configurados pelo servidor de DHCP A endereço IP configurado manualmente 192.16.0.4 192.16.0.3 depósito de endereços IP 192.16.0.1 192.16.0.2 servidor DHCP A 192.16.0.5 rede 192.16.0.x roteador interno 192.16.0.2 192.16.0.3 192.16.0.4 192.16.0.5 192.16.0.6 .... endereço IP configurado manualmente 192.16.1.5 rede 192.16.1.x Intranet servidor DHCP B servidor da Intranet depósito de endereços IP 192.16.1.4 192.16.1.3 192.16.1.2 192.16.1.1 192.16.1.2 192.16.1.3 192.16.1.4 192.16.1.5 192.16.1.6 .... endereços IP configurados pelo servidor de DHCP B Observação: Agentes Relay É possível configurar serviços de software denominados "agentes relay" para permitir que clientes se comuniquem com servidores DHCP localizados em redes físicas diferentes. O agente relay deve estar configurado numa máquina situada na mesma rede física que o cliente DHCP. O agente relay intercepta as mensagens enviadas em broadcast pelos clientes DCHP, e encaminha as requisições através do roteador até o servidor DHCP. O agente relay então retorna as respostas do 48 Internet e Intranets-Nível 1 1998, Edgard Jamhour servidor para os clientes. Deve-se observar, no entanto, que apenas os roteadores que atendem as especificações da RFC 1542 e RFC 1534 suportam a comunicação com os agentes relays. 49 Internet e Intranets-Nível 1 1998, Edgard Jamhour 3.4.3 Uso do DHCP por provedores de Acesso a Internet O serviço de DHCP (Dynamic Host Configuration Protocol) é particularmente importante para os grandes provedores de acesso que permitem aos usuários acessarem a Internet através da rede pública de telefonia. Os provedores de acesso possuem um número limitado de endereços registrados junto às autoridades que controlam o acesso a Internet. Esses endereços são atribuídos pelo serviço de DHCP aos clientes assim que a conexão discada com o provedor é estabelecida. A alocação do endereço IP ao cliente é temporária. No momento em que o cliente interrompe sua conexão, o endereço IP passa a estar disponível para outro cliente. conexão com o backbone da Internet modems rede pública de telefonia roteador linhas telefônicas linhas telefônicas rede interna do provedor 192.0.0.1 Servidor DHCP 192.0.0.2 depósito de endereços IP 192.0.0.1 192.0.0.2 192.0.0.3 192.0.0.4 192.0.0.5 .... 192.0.0.3 50 Conjunto de endereços IP adquiridos pelo provedor. Internet e Intranets-Nível 1 1998, Edgard Jamhour 4 Domínios de Nomes Um endereço IP contém toda a informação necessária para identificar um host conectado em qualquer ponto de uma rede TCP/IP, seja ela uma Intranet ou a própria Internet. Muito embora os endereços IP possam ser utilizados diretamente pelos usuários para especificar a origem e o destino de suas mensagens, é muito mais conveniente utilizar nomes pronunciáveis e fáceis de lembrar ao invés de endereços numéricos. Com base nesse princípio, a Internet adotou um padrão para representar os endereços dos hosts através de nomes ao invés de endereços IP. Deve-se observar, entretanto, que os nomes usados na Internet são apenas uma abstração em alto nível, não sendo utilizados diretamente pelo protocolo IP para efetuar o endereçamento. De fato, para que um comunicação possa ocorrer, é preciso converter o nome no endereço IP correspondente num processo denominado "resolução de nomes". O mecanismo de resolução de nomes é implementado de forma transparente para o usuário através de um serviço padronizado para redes TCP/IP denominado DNS (Domain Name Service). 7N1-C.1. Espaço de Nomes. Denominação dada ao modelo de nomes adotado para representar os conjunto de recursos disponíveis na rede. Pode ser plano ou hierárquico. 7N1-C.2. Domínios na Internet. O espaço de nomes na Internet é organizado em domínios. Os domínios são estruturas hierárquicas que permitem situar um host dentro da estrutura geográfica ou organizacional da rede Internet. 7N1-C.3. Resolução de Nomes de Domínio. Processo que consiste em descobrir qual o endereço IP correspondente a um nome de host expresso na hierarquia de domínios. 7N1-C.4. DNS. Abreviatura de Domain Name System. O DNS é um serviço padronizado que permite armazenar, administrar e resolver os nomes de domínio na Internet. 51 Internet e Intranets-Nível 1 4.1 1998, Edgard Jamhour Espaço de Nomes Conceito: Denominação dada ao modelo de nomes adotado para representar os conjunto de recursos disponíveis na rede. Pode ser plano ou hierárquico. De maneira genérica, os nomes utilizados para identificar os computadores na rede são meras seqüências de caracteres formadas com as letras de um alfabeto finito. O principal problema ligado a escolha dos nomes reside no fato de que eles precisam ser únicos em toda a rede. Conceitualmente, existem dois grandes modelos utilizados para representar nomes em redes de computadores. O modelo mais simples é denominado "espaço de nomes plano". O outro modelo de representação de nomes é o "espaço de nomes hieráquico". O modelo hieráquico é mais apropriado para representar nomes em redes de grande porte, e por isso foi adotado como padrão na Internet. Espaço de Nomes Plano Espaço de Nomes Hierárquico Simples cadeias de caracteres: Cadeias de caracteres compostas. Host1 Host2 Mais apropriado para redes de pequeno porte. Rede1 Host3 Host4 Rede1.Host1 Rede1.Host2 Rede2 Rede2.Host1 Rede2.Host2 Mais apropriado para redes de grande porte. 7N1-C.1.1. Espaço de Nomes Plano 7N1-C.1.2. Espaço de Nomes Hierárquico Hotwords: Espaço de Nomes Plano: Modelo onde o nome de cada computador é definido como uma simples cadeia de caraceres que independe da topologia ou estrutura organizacional da rede. Espaço de Nomes Hierárquico: Modelo onde os nomes são construídos na forma de uma árvore lógica que reflete a estrutura organizacional da rede. 52 Internet e Intranets-Nível 1 1998, Edgard Jamhour 4.1.1 Espaço de Nomes Plano Nesse modelo cada nome é constituído por uma única cadeia de caracteres, que representa diretamente o nome de um computador sem guardar nenhuma relação com a estrutura organizacional ou com a topologia da rede. Um exemplo bastante difundido de modelo de nomes baseado num espaço plano é o NETBIOS. Devido a sua simplicidade, o modelo plano é muito utilizado em redes locais, mas não é apropriado para redes de grande porte. Nesse modelo, a única maneira de garantir que os nomes sejam únicos em toda a rede é adotar um modelo centralizado de administração de nomes. Adotar um modelo completamente centralizado para uma rede de alcance mundial como a Internet seria virtualmente inviável. Host3 Host1 Host2 192.16.0.1 192.16.0.2 192.16.0.3 192.16.0.5 A duplicação dos nomes, mesmo em redes físicas diferentes, impede que as duas máquinas sejam diferenciadas. 192.16.1.5 192.16.1.1 192.16.1.4 192.16.1.2 Host5 Host4 Host3 ESPAÇO DE NOMES Host5 Host1 Host4 Host6 Host2 Host3 Hotwords NETBIOS: NETwork Basic Input/Output Services. Interface de programação padronizada, que permite escrever programas que se comunicam pela rede sem conhecer detalhes sobre os protocolos de comunicação utilizados. Padrão incialmente proposto pela IBM, difundiu-se e foi 53 Internet e Intranets-Nível 1 1998, Edgard Jamhour adotado por outros fabricantes de Sistemas Operacionais de Rede, como Novel e Microsoft. Juntamente com a interface de programação, o padrão NetBIOS propõe um modelo para dar nomes aos recursos da rede. Os nomes NetBIOS tem 16 caracteres de comprimento. O usuário atribui os 15 primeiros caracteres. O último caracter é reservado para indentificar o tipo de recurso de rede (computador, grupo de computadores, serviço de comunicação, etc.). 54 Internet e Intranets-Nível 1 1998, Edgard Jamhour 4.1.2 Espaço de Nomes Hierárquico Nesse modelo, os nomes são representados através de uma cadeia de caracteres composta por vários segmentos. Cada segmento corresponde a um nó de uma árvore lógica que reflete a estrutura organizacional da rede. A grande vantagem desse modelo de representação é permitir uma administração decentralizada da rede, sem haver risco de duplicação de nomes. Devido a essa característica, o modelo hieráquico é mais apropriado para representar nomes em redes de grande porte, e por isso foi adotado como padrão na Internet. Rede1.Host1 192.16.0.1 Rede1.Host3 Rede1.Host2 192.16.0.3 192.16.0.2 Observe que o identificador da rede faz parte do nome de cada host. Essa característica permite que a administração dos nomes seja decentralizada, pois os nomes dos computadores podem ser duplicados, em redes diferentes, sem haver nenhum conflito. Rede1 192.16.0.5 192.16.1.5 Rede2 192.16.1.1 Rede2.Host1 192.16.1.4 192.16.1.2 Rede2.Host2 Rede2.Host3 ESPAÇO DE NOMES Raiz Rede1 Host1 Host2 Rede2 Host3 Host1 55 Host2 Host3 Internet e Intranets-Nível 1 4.2 1998, Edgard Jamhour Domínios na Internet Conceito: O espaço de nomes na Internet é organizado em domínios. Os domínios são estruturas hierárquicas que permitem situar um host dentro da estrutura geográfica ou organizacional da rede Internet. O nome de um host na Internet é representado de maneira hierárquica, adotando a representação genérica "host.domínio". Por exemplo, um host denominado epsilon, situado no departamento de Ciência da Computação da Universidade de Purdue é identificado pelo nome epsilon.cs.purdue.edu. O nome epsilon identifica o host e o nome cs.pudue.edu representa o domínio ao qual host pertence. Um nome de domínio é geralmente composto por vários nomes, como nesse exemplo. O nome mais a esquerda representa o domínio mais abrangente, e é padronizado pelas autoridades que coordenam a Internet. Os demais nomes refletem a estrutura organizacional da instituição onde o host está localizado. Pequena parte da hierarquia de nomes (árvore) da Internet. raiz com edu gov purdue cc mil net org cs.purdue.edu cc.purdue.edu epsilon epsilon.cs.purdue.edu Código do país Níveis que refletem a organização interna da instituição onde o host está localizado. Não há restrição quanto ao número de níveis utilizados. purdue.edu cs int Nível superior da hierarquia de nomes. É constituído de nomes padronizados pelas autoridades que coordenam a Internet.. lambda lambda.cs.purdue.edu O Nível Inferior contém os nomes dos Hosts localizados no interior de cada domínio. Registro dos nomes de Domínios Para que um nome de domínio seja reconhecido na Internet ele precisa ser registrado. O registro de nomes é feito pelas mesmas autoridades responsáveis por atribuir endereços IP na Internet. Toda instituição que deseja se conectar a Internet pode registrar um nome de domínio. Geralmente, apenas o nome do domínio de nível mais alto, que identifica a instituição como um todo, precisa ser registrado junto as autoridades da Internet. A instituição pode então dividir o seu domínio em vários níveis, de maneira a refletir sua organização interna. 56 Internet e Intranets-Nível 1 1998, Edgard Jamhour Exemplos de Hierarquia Organizacional e Hierarquia Geográfica Hierarquia Organizacional Hierarquia Geográfica edu purdue cc cs epsilon epsilon.cs.purdue.edu lambda O nome de domínio de nível mais alto é necessariamente um dos nomes de domínio padronizados. br país pr estado ctba cidade lami instituição Conceitualmente, os nomes padronizados do nível mais alto da árvore de domínios da Internet permitem definir o nome dos domínios segundo duas hierarquias diferentes: geográfica ou organizacional. A hierarquia geográfica é raramente utilizada pois leva geralmente a nomes muito complexos e difíceis de lembrar. lambda.cs.purdue.edu host1 host2 host1.lami.ctba.pr.br hosts host2.lami.ctba.pr.br Observação: Os nomes correspondentes ao nível mais alto da hierarquia de domínios da Internet podem ser combinados para resolver ambigüidades. Por exemplo, se o nome de uma empresa americana chamada "Júpiter" já estiver registrada sobre a denominação jupiter.com, uma empresa brasileira com o mesmo nome pode registrar-se como jupiter.com.br, sem ambigüidade. A prática de acrescentar o código do país como sendo o identificador de domínio mais amplo vem sendo amplamente adotada pelas entidades de registro de nomes na Internet. A exceção é os Estados Unidos, onde o código do país é geralmente omitido. Hotwords epsilon.cs.purdue.edu: Exemplo de um identificador completo de um host. Cada porção do nome tem um significado específico: epsilon identifica a máquina, cs identifica o departamento de ciência da computação, purdue identifica a Universidade e edu indica que se trata de um recurso localizado numa instituição de ensino. Cada um dos nomes edu, purdue e cs representa um domínio. Observe que o nome de domínio mais a esquerda é o mais abrangente. Quanto mais a direita estiver o nome, mais específico é o domínio. com: nome de domínio utilizado para identificar organizações comerciais. edu: nome de domínio utilizado para identificar instituições educacionais. gov: nome de domínio utilizado para identificar instituições do governo. mil: nome de domínio utilizado para identificar grupos militares. net: nome de domínio utilizado para identificar grandes centros de suporte das redes. org: nome de domínio utilizado para identificar outros tipos de organizações. int: nome de domínio utilizado para identificar organizações internacionais código do país: nome de domínio utilizado para identificar um país. Em geral, a Internet utiliza apenas duas letras para identificar um país. Por exemplo: br para Brasil, jp para Japão, uk para Reino Unido, fr para França, etc. 57 Internet e Intranets-Nível 1 1998, Edgard Jamhour raiz: Nó superior da árvore de domínios. O nome da raiz nunca é citada na composição de um nome de domínio na Internet. 58 Internet e Intranets-Nível 1 4.3 1998, Edgard Jamhour Resolução de Nomes de Domínio Conceito: Processo que consiste em descobrir qual o endereço IP correspondente a um nome de host expresso na hierarquia de domínios. Os nomes de domínios não são utilizados diretamente pelos protocolos de comunicação TCP/IP. Antes que uma comunicação possa ser efetuada, é preciso que o nome de domínio seja resolvido no seu endereço IP correspondente. O processo de resolução de nomes, isto é, descobrir qual o endereço IP correspondente ao nome de um domínio, acontece de maneira transparente ao usuário antes que a comunicação propriamente dita seja iniciada. host1.lami.cwb.pr.br IP = 217.98.34.12 lambda.cs.purdue.edu IP = 200.17.98.36 Internet Host B Host A IP de origem 200.17.98.30 Antes que o Host A possa se comunicar com o Host B ele precisa determinar seu endereço IP. O protocolo IP utiliza apenas os endereços IP como informação para endereçar os datagramas. IP de destino 217.98.34.12 datagrama 59 Mensagem Internet e Intranets-Nível 1 4.4 1998, Edgard Jamhour DNS Conceito: Abreviatura de Domain Name System. O DNS é um serviço padronizado que permite armazenar, administrar e resolver os nomes de domínio na Internet. O processo de resolução de nomes de domínio na Internet é implementado através de um serviço padronizado denominado DNS (Domain Name System). O serviço de DNS é constituído de duas partes principais: um banco de dados e um protocolo de consulta de nomes. O banco de dados do DNS armazena o mapeamento entre os nomes de domínios e os endereços IP. O protocolo de consulta de nomes define um conjunto de mensagens padronizadas que permite que o software de rede do host consulte o banco de dados para descobrir um endereço IP sem a intervenção do usuário. 3) A mensagem é enviada na forma de um datagrama IP. IP de origem 200.17.98.30 IP de destino 217.98.34.12 Mensagem lambda.lami.cwb.pr.br IP = 217.98.34.12 lambda.cs.purdue.edu IP = 200.17.98.36 Internet Host A Host B 1) Quem é host1.lami.cwb.pr.br ? 2) É o IP 217.98.34.12 Servidor de DNS lambda.cs.purdue.edu = 200.17.98.36 lambda.lami.cwb.pr.br = 217.98.34.12 etc. Banco de dados Servidor de DNS O serviço de resolução de nomes DNS funciona segundo o princípio cliente-servidor. O servidor de DNS é um computador responsável por auxiliar os demais computadores da rede no processo de resolução de nomes. O banco de dados contendo o mapeamento entre os nomes de domínio e os endereços IP está armazenado no sistema de arquivos do servidor. DNS na Intranet 60 Internet e Intranets-Nível 1 1998, Edgard Jamhour Numa intranet, o servidor de DNS é um computador conectado diretamente a rede interna privativa da empresa. O próprio administrador da rede é responsável por atualizar o registro dos nomes no servidor de DNS. DNS na Intranet Na Internet, diversos servidores de DNS são utilizados para auxiliar no processo de resolução de nomes. Cada servidor contém apenas uma porção dos nomes registrados na Internet. Quando um cliente precisa resolver um nome, ele consulta o servidor de DNS mais próximo. Se a informação não estiver armazenada no seu banco de dados local, o próprio servidor de DNS se encarrega de consultar os outros servidores para resolver o nome. Os servidores de DNS usados na Internet ficam sob a tutela das mesmas autoridades responsáveis por efetuar o registro de nomes na Internet. 61