Redes Baseado em: Andrew Tanenbaum, Computer Networks, Third Edition, Prentice Hall William Stallings, Data & Computer Comunications, Sixth Edition, Prentice Hall Martin W. Murchammer, et al, TCPIP Tuttorial and Technical Overview, IBM – International Techinical Support organization ( www.redbooks.ibm.com) Pedro Costa Computadores e Redes de Comunicação 1 História •Durante a década de 60, os estrategas americanos de Defesa, colocavam a seguinte questão: Como seria possível manter as comunicações, na hipótese de um ataque nuclear? •Qualquer sistema, baseado num controlo central seria vulnerável, pois os centros de controlo constituiriam um alvo óbvio de qualquer ataque. •Tornava-se assim necessário desenhar um sistema que pudesse funcionar mesmo que alguns dos seus componentes fossem destruídos. •Os princípios a que deveria obedecer esse sistema de comunicações eram basicamente os seguintes: •Inexistência de comandos centralizados •Todos os nós da rede deveriam possuir um estatuto idêntico. Esse estatuto deveria permitir-lhe ser origem, destino e ponto de passagem de informação. •As mensagens deveriam ser dividas em pacotes, devendo o endereço de destino da mensagem ser incluído em cada um dos pacotes •Cada pacote deveria poder encontrar o seu próprio caminho, para chegar ao seu destino. Pedro Costa Computadores e Redes de Comunicação 2 Internet - História •Inicio anos 70: modelos arquitecturais – comunicação entre aplicações •Aparecimento da ARPANET •no inicio era uma rede no meio militar •baseada em linhas alugadas de 56Kbps •Ao longo dos anos 80 a ARPANET •passou a ser mais utilizada por todos •a rede militar separou-se em 1983 dando origem à MILNET. •o nº de utilizadores cresceu. •adopção do modelo TCP/IP •Nos Anos 90 •deu-se a grande explosão com a criação do protocolo HTTP •este protocolo define procedimentos de comunicação que permitem a uma aplicação, um browser, localizar e aceder a recursos existentes na rede sob a forma de páginas hiper-média. Pedro Costa Computadores e Redes de Comunicação 3 Internet •NSFNET ( National Science FoundaTION Network) •Dedicada para a comunidade cientifica •Interligação entre ARPANET e NSFNET •NGI ( Next Generation Internet initiative) •Ligar universidades e labs. 100-1000 vezes mais rápido do que hoje ( 1996) •Promover a experimentação de novas gerações de tecnologias de redes •Projecto internet2 •Promover o desenvolvimento de novas aplicações Pedro Costa Computadores e Redes de Comunicação 4 Rede Como é fisicamente constituída uma rede? •Cabos de conexão – chamados por cabos de rede estabelecem a ligação física entre os vários computadores de uma rede •Dispositivos que se colocam em cada computador – cada computador numa rede possui uma placa de rede. •Outros equipamentos – que se ocupam de gerir e controlar o fluxo de dados entre os vários computadores ligados a uma rede Pedro Costa Computadores e Redes de Comunicação 5 Tipos de rede •LAN( Local Area Network): uma rede que lida computadores situados numa área geográfica contígua, como é por exemplo o caso dos computadores instalados num mesmo edifício •MAN ( Metropolitan Area Network): As MANs são redes de computadores que abrangem uma área geográfica mais ampla. Em regra, trata-se de um sistema que permite ligar computadores e LANs, na área geográfica de uma cidade. •WAN ( Wide Area Networks): são geralmente as redes de redes, isto é uma rede que permite a ligação entre várias LANs e MANs situadas a grandes distâncias Pedro Costa Computadores e Redes de Comunicação 6 Equipamentos •Nos equipamentos destacam-se: •Os bridges:fazem a passagem de dados de uma rede para outra •Os routers: orientam o fluxo de dados, isto é verifica para um determinado pacote de dados qual o caminho que este deve seguir •As gateways:permite a passagem de pacotes de dados entre duas redes cuja a organização física é distinta. •Os Switches:endereçam os dados directamente para o IP requisitado. Pedro Costa Computadores e Redes de Comunicação 7 Modelo OSI Quando as redes de computadores surgiram, as soluções eram, na maioria das vezes, proprietárias, isto é uma determinada tecnologia só era suportada por seu fabricante. Não havia a possibilidade de se misturar soluções de fabricantes diferentes. Dessa forma um mesmo fabricante era responsável por construir praticamente tudo na rede. Para facilitar a interconexão de sistemas de computadores a ISO (International Standards Organization) desenvolveu um modelo de referência chamado OSI (Open Systems Interconnection), para que os fabricantes pudessem criar protocolos a partir desse modelo. Pedro Costa Computadores e Redes de Comunicação 8 Modelo OSI •Esforço de normalização •CCIT(Comité Consultatif International Telephonique et Telegraphique) •Actualmente ITU-T( International Telecommunications Union •ISO(International Organization for Standardization) •OSI – Open Systems Interconnect reference model •Define um modelo com 7 camadas •Cada camada realiza uma função •Cada camada comunica com as camadas adjacentes •Camada mais baixa:transporte de informação no meio fisico •Camadas do meio formatam informação, corrigem erros, encaminham pacotes •Camada mais alta: protocolos de comunicação entre aplicações •Quando uma mensagem desce, é-lhe acrescentada informação de controlo •Quando uma mensagem sobe. É-lhe retirada a informação de controlo •Estabelece a forma como um conjunto de protocolos deve operar •Um conjunto protocolos pode agrupar as funções realizadas por várias camadas •TCP/IP: 4 camadas Pedro Costa Computadores e Redes de Comunicação 9 Modelo OSI Application Application Presentation Presentation Session Session Transport Transport Network Network Transferência end-to-end Encaminhamento, gestão de circuitos virtuais Data link Data link Transmissão de dados sem erros Physical Physical Comunicação pelo meio físico Aplicações (telnet,mail,ftp) Formatação dos dados, encripatação Gestão do diálogo entre aplicações Meio Físico Pedro Costa Computadores e Redes de Comunicação 10 Modelo OSI CAMADA 7 - Aplicação A camada de aplicação faz a interface entre o protocolo de comunicação e o aplicativo que pediu ou receberá a informação através da rede. Por exemplo, para receber e-mail com o outlookl. ele entrará em contacto com a camada de Aplicação do protocolo de rede efectuando este pedido. CAMADA 6 - APRESENTAÇÃO A camada de Apresentação, converte o formato do dado recebido pela camada de Aplicação em um formato comum a ser usado na transmissão desse dado, ou seja, um formato entendido pelo protocolo usado. Um exemplo comum é a conversão do padrão de caracteres (código de página) quando, por exemplo, o dispositivo transmissor usa um padrão diferente do ASCII, por exemplo. Pode ter outros usos, como compressão de dados e criptografia. A compressão de dados pega os dados recebidos da camada sete e os comprime (como se fosse um compactador encontrado em PCs, como o Zip ou o Arj) e a camada 6 do dispositivo receptor fica responsável por descompactar esses dados. A transmissão dos dados torna-se mais rápida, já que haverá menos dados a serem transmitidos: os dados recebidos da camada 7 foram "encolhidos" e enviados à camada 5. Para aumentar a segurança, pode-se usar algum esquema de criptografia neste nível, sendo que os dados só serão decodificados na camada 6 do dispositivo receptor. Pedro Costa Computadores e Redes de Comunicação 11 Modelo OSI CAMADA 5 - SESSÃO A camada de sessão permite que duas aplicações em computadores diferentes estabeleçam uma sessão de comunicação. Nesta sessão, essas aplicações definem como será feita a transmissão de dados e coloca marcações nos dados que estão sendo transmitidos. Se porventura a rede falhar, os computadores reiniciam a transmissão dos dados a partir da última marcação recebida pelo computador receptor. Por exemplo, quando está recebendo e-mails de um servidor de e-mails e a rede falha. Quando a rede voltar a estar operacional a sua tarefa continuará do ponto em que parou, não sendo necessário reiniciá-la. CAMADA 4 - TRANSPORTE A camada de Transporte é responsável por pegar os dados enviados pela camada de Sessão e dividi-los em pacotes que serão transmitidos pela rede, ou, melhor dizendo, repassados para a camada de Rede. No receptor, a camada de Transporte é responsável por pegar os pacotes recebidos da camada de Rede e remontar o dado original para enviá-lo à camada de Sessão. Isso inclui controle de fluxo (colocar os pacotes recebidos em ordem, caso eles tenham chegado fora de ordem) e correcção de erros, tipicamente enviando para o transmissor uma informação de reconhecimento (acknowledge), informando que o pacote foi recebido com sucesso. A camada de Transporte separa as camadas de nível de aplicação (camadas 5 a 7) das camadas de nível físico (camadas de 1 a 3). Como você pode facilmente perceber, as camadas de 1 a 3 estão preocupadas com a maneira com que os dados serão transmitidos e recebidos pela rede, mais especificamente com os quadros transmitidos pela rede. Já as camadas de 5 a 7 estão preocupadas com os dados contidos nos pacotes de dados, para serem enviados ou recebidos para a aplicação responsável pelos dados. A camada 4,Transporte, faz a ligação entre esses dois grupos. Pedro Costa Computadores e Redes de Comunicação 12 Modelo OSI CAMADA 3 - REDE A camada de Rede é responsável pelo endereçamento dos pacotes, convertendo endereços lógicos em endereços físicos, de forma que os pacotes consigam chegar correctamente ao destino. Essa camada também determina a rota que os pacotes irão seguir para atingir o destino, baseada em factores como condições de tráfego da rede e prioridades. Como você pode ter percebido, falamos em rota. Essa camada é, portanto, usada quando a rede possui mais de um segmento e, com isso, há mais de um caminho para um pacote de dados trafegar da origem até o destino. CAMADA 2 - LINK DE DADOS A camada de Link de Dados (também chamada camada de Enlace) pega os pacotes de dados recebidos da camada de Rede e os transforma em quadros que serão trafegados pela rede, adicionando informações como o endereço da placa de rede de origem, o endereço da placa de rede de destino, dados de controle, os dados em si e o CRC. A estrutura do pacote de dados criado por essa camada nós já vimos na Figura 2.5. O quadro criado pela camada Link de Dados é enviado para a camada Física, que converte esse quadro em sinais eléctricos para serem enviados através do cabo da rede. Quando o receptor recebe um quadro, a sua camada Link de Dados confere se o dado chegou íntegro, refazendo o CRC. Se os dados estão o.k., ele envia uma confirmação de recebimento (chamada acknowledge ou simplesmente ack). Caso essa confirmação não seja recebida, a camada Link de Dados do transmissor reenvia o quadro, já que ele não chegou até o receptor ou então chegou com os dados corrompidos. Pedro Costa Computadores e Redes de Comunicação 13 Modelo OSI CAMADA 1 - FÍSICA A camada Física pega os quadros enviados pela camada de Link de Dados e os transforma em sinais compatíveis com o meio onde os dados deverão ser transmitidos. Se o meio for eléctrico, essa camada converte os Os e 1s dos quadros em sinais eléctricos a serem transmitidos pelo cabo. Se o meio for óptico (uma fibra óptica), essa camada converte os Os e 1 s dos quadros em sinais luminosos e assim por diante, dependendo do meio de transmissão de dados. A camada Física especifica, portanto, a maneira com que os Os e 1s dos quadros serão enviados para a rede (ou recebidos da rede, no caso da recepção de dados). Ela não sabe o significado dos Os e 1 s que está recebendo ou transmitindo. Por exemplo, no caso da recepção de um quadro, a camada física converte os sinais do cabo em Os e 1 s e envia essas informações para a camada de Link de Dados, que montará o quadro e verificará se ele foi recebido correctamente. Como você pode facilmente perceber, o papel dessa camada é efectuado pela placa de rede dos dispositivos conectados em rede. Note que a camada Física não inclui o meio onde os dados circulam, isto é, o cabo da rede. O máximo com que essa camada se preocupa é com o tipo de conector e o tipo de cabo usado para a transmissão e recepção dos dados, de forma que os Os e 1s sejam convertidos correctamente no tipo de sinal requerido pelo cabo, mas o cabo em si não é responsabilidade dessa camada. Pedro Costa Computadores e Redes de Comunicação 14 TCP/IP •Oferecer serviços de comunicação sobre a rede para aplicações •Mesmo interface, independente da tecnologia da rede física •“esconde” o meio físico do utilizador •Interligar diferentes redes (internet) •Computadores ligados a duas ou mais redes •Encaminham os pacotes entre redes diferentes •Arquitectura em 4 camadas •Application •Programas de comunicação, cooperam com aplicações similares noutros nós da rede •Mail( SMTP- simple mail transfer protocol),ftp,telnet... •Transport •Fornece às aplicações o transporte fiável de dados •Suporta múltiplas aplicações simultaneamente •Garante fiabilidade de transmissão ( retransmissão de pacotes perdidos ou errados) •Protocolo TCP(Tranmission Control Protocol) Pedro Costa Computadores e Redes de Comunicação 15 TCP/IP •Internetwork •Isola o protocolo TCP da arquitectura física da rede •Realiza o encaminhamento de pacotes entre redes diferentes •Unidade de dados transmitida : IP datagram •Protocolo IP (Internet Protocol •Outros protocolos •ICMP (Internet Control Message Protocol) •IGMP(Internet Group Management Protocol) •ARP(Address Resolution Protocol) •Network Interface •Realiza o interface com o meio fisico •Oferece ao protocolo IP um interface independente do meio fisico •Pode ou não assegurar fiabilidade dos dados transmitidos Pedro Costa Computadores e Redes de Comunicação 16 TCP/IP Aplicações ( telnet, mail, ftp) Application Application Transport Transport TCP Internetwork Internetwork IP, ICMP, IGMP, ARP Network interface Network interface Meio físico Pedro Costa Computadores e Redes de Comunicação 17 TCP – Transmission Control Protocol •Fornece um interface a aplicação oferecendo •Controlo de fluxo •Controla quando e quantos bytes podem ser enviados para o destino •Recuperação de erros •Pede retransmissão de pacotes errados ou perdidos •Fiabilidade •Reagrupa em ordem pacotes recebidos, elimina pacotes duplicados •Multiplex •Permite várias ligações logicas “simultâneas” entre dois hosts •Protocolo TCP é connection-oriented •Dois processos comunicam entre si através de uma ligação TCP •Do ponto de vista das aplicações, é transferida um a cadeia contígua de bytes •Divide os bytes a transferir em segmentos que são passados ao IP •Protocolo IP encapsula os segmentos TCP em datagramas IP Pedro Costa Computadores e Redes de Comunicação 18 Modelo cliente/servidor •TCP transfere informação através de uma ligação estabelecida entre dois nós •Não existe um “master” da ligação que controle o fluxo de informação •Nem existe um “slave que seja controlado por um “master” •Aplicações usam modelo cliente/servidor •Servidor oferece um serviço a outros nós na internet •Cliente usa os serviços oferecidos pelo servidor •Uma aplicação tem uma parte servidor e uma parte cliente •Utilizadores geralmente usam a parte cliente •A parte servidor é geralmente um programa que está a correr à espera de pedidos •O cliente efectua um pedido de serviço •O servidor realiza esse serviço e devolve uma resposta com o resultado cliente cliente servidor TCP/IP TCP/IP TCP/IP Internet Pedro Costa Computadores e Redes de Comunicação 19 IP • Ip “esconde” a parte física da rede • apresenta para os protocolos superiores uma rede virtual • não garante a fiabilidade da transmissão de dados • pacotes podem ser perdidos, entregues fora de ordem ou duplicados • os protocolos superiores (TCP ou aplicações) são responsáveis por garantir fiabilidade •Endereço IP (cada interface com a Internet) •Concatenação do endereço de rede com o endereço do nó (host) •Número inteiro sem sinal de 32 bits •232 = 4.294.967.296 endereços diferentes.......... •Formato: 4 bytes em decimal, separados por ponto: 193.136.28 .15 Rede 193.136.28 Pedro Costa Host 15 Computadores e Redes de Comunicação 20 IP •Endereços IP •Cada datagrama IP inclui os endereços IP da origem e destino •Ao enviar o datagrama IP o endereço IP tem de ser traduzido num endereço físico •ARP – Address Resolution Protocol •Pode requerer transmissões na rede para obter o endereço físico do destino •Classes de endereços IP (definem como dividir os 32 bits em rede e host) •Classe A: 0rrrrrrr.hhhhhhhh.hhhhhhhh.hhhhhhhh (126 nets, 16777214 hots) •Classe B: 10rrrrrr.rrrrrrrr.hhhhhhhh.hhhhhhhh (16382 nets, 65534 hots) •Classe C: 110rrrrr.rrrrrrrr.rrrrrrrr.hhhhhhhh (2097150 nets, 254 hots) •Classe D: 1110mmmm.mmmmmmmm.mmmmmmmm.mmmmmmmm (multicast) •Classe E: 11111xxx.xxxxxxxx.xxxxxxxx.xxxxxxxx (uso futuro) •Endereços especiais •Todos os bits 0: significa este host ou rede (193.136.28.0) •Todos os bits 1: significa todos os hosts ou redes (193.136.28.255) Pedro Costa Computadores e Redes de Comunicação 21 IP •Atribuição de endereços IP •Endereço de rede é atribuído pelo InterNIC (Internet Network Information Center) •Dentro da rede, o endereço do host é atribuído e gerido localmente •IP subnets •Como “partir” uma rede IP, sem requerer novo endereço de rede? •Facilitar a gestão flexível da rede •Duas redes fisicamente distintas, ligadas por um “router” •Isolamento de tráfego, redes fisicamente distantes, tecnologias diferentes •Mantendo o mesmo netID •Endereço Host dividido em subnet e host •Exemplo: •NetID: 193.136.28.0 (classe c) •Subnet mask: 255.255.255.224 (em binário 224 = 111 00000) •6 subnet, 30 hosts em cada subnet subnet host Pedro Costa Computadores e Redes de Comunicação 22 IP Routing •Encaminhamento de datagramas IP •Routing directo •Se o host está numa rede acessível directamente pelo host origem •Exemplo: de B para A, C ou D 193.82.214 A B 193.136.35 C D •Routing inderecto •Se o host não está numa rede acessível directamente pelo host origem •Acesso ao host destino através de um ou mais gateways (“portas” de interligação entre redes) •Host origem apenas necessita de saber o endereço do gateway •Exemplo: de A na rede 193.82.214 para D na rede 193.136.35 ( B é o gateway) Pedro Costa Computadores e Redes de Comunicação 23 IP delivery •IP é connectionless: pacotes podem ser enviados para mais do que um destino •Unicast •Endereço destino refere-se a um único host •Broadcast •Endereço destino refere-se a todos os hosts de uma rede (endereço só com uns) •255.255.255.255 – todos os hosts na mesma rede local do host origem •Routers não encaminham datagramas para fora da rede local •193.82.214.255 – todos na rede 193.82.214 •Routers encaminham datagramas para a rede 193.82.214 (exemplo: origem nó C ou D) •193.82.214.63 (63=001 11111) todos os hosts da subnet 001 •Routers encaminham datagramas para a rede 193.82.214 •Multicast •Endereço destino refere-se a um grupo de endereços IP •Cada grupo é formado por um endereço classe D (28 bits) •Permite envio de datagramas de um para vários •Anycast •Para qualquer um dos hosts que ofereçam o serviço requerido pela origem Pedro Costa Computadores e Redes de Comunicação 24 Atribuição de endereços IP •Em Maio 1996 estavam atribuídos ou reservados: •Todos os endereços classe A •Endereços classe A entre 64.0.0.0 e 127.0.0.0 reservados indefinidamente •Pedidos de endereços A são analisados caso a caso •61.95% dos endereços de classe B •Atribuídos apenas a quem apresentar um plano com mais de 32 subnets e 4096 hots • caso contrário é atribuído um bloco de endereços classe C consecutivos •36.44% dos endereços de classe C •Endereços de 208.0.0.0 até 223.255.255.0 ainda não foram atribuídos •Atribuição de endereços IP por regiões •192.0.0 – 193.255.255 Multiregional (usados antes de ser implementada esta partilha) •194.0.0 – 195.255.255 Europa •196.0.0 – 197.255.255 Outros (ultrapassar fronteiras das regiões) •198.0.0 – 199.255.255 América do Norte •200.0.0 – 201.255.255 América do Sul e Central •202.0.0 – 203.255.255 Pacífico •204.0.0 – 207.255.255 Outros Pedro Costa Computadores e Redes de Comunicação 25 Atribuição de endereços IP •Organismos que gerem a atribuição de endereços IP no mundo •APNIC (Asia-Pacific Network Information Center) •http://apnic.net •ARIN (American Registry for Internet Numbers) •http://arin.net •RIPE NCC (Reseau IP Europeens) •http://ripe.net •Intranets •Organizações com redes locais privadas •Podem usar qualquer endereço IP •IANA reserva três grupos de endereços IP para esse fim: •10.0.0.0 (uma rede classe A) •172.16.0.0 – 172.31.0.0 (16 redes contíguas classe B) •192.168.0.0 – 192.168.255.0 (256 redes contíguas classe C) •Endereços privados não saem para fora da intranet •Routers em redes não privadas desprezam pacotes com endereços nesses intervalos Pedro Costa Computadores e Redes de Comunicação 26 ICMP – Internet Control Message Protocal •ICMP usa o protocolo IP, reporta ao nó origem erros no processamento de datagramas •É usado para reportar erros, não para tornar o IP fiável •Aplicações ICMP •Ping (packet InterNet Groper) •Envia um pacote para um destino, destino devolve pacote, origem mede tempo •Se ping funcionar um destino, entre outras aplicações (telnet, ftp,....) também funcionam •Exemplos: •Ping <endereço IP local> - verifica se o interface físico da rede é acedido •Ping <endereço IP remoto> - verifica o acesso à rede remota •Ping <hostname remoto> - verifica a operação do name server •Traceroute •Determina o caminho (conjunto de routers) que os datagramas IP seguem até ao destino •Envia um datagrama com TTL 1, primeiro router decrementa TTL para zero......... •....... Despreza o datagrama e devolve uma mensagem ICMP (time exceeded) – 1º router •Restantes routers são identificados da mesma forma (datagramas com TTL 2, 3,....) Pedro Costa Computadores e Redes de Comunicação 27 ARP – Address Resolution Protocol RARP – Reverse Address Resolution Protocol •ARP – responsável por converter endereços IP em endereços físicos na rede local •Primeiro endereço é pesquisado numa tabela local dinâmica (ARP cache) •Pode ser consultada com o comando arp (-a lista todas as entradas) •Se não existir localmente, é enviado um pacote (ARP request) para todos •Pergunta: quem na rede local tem este endereço IP ? •Quem tiver o endereço IP referido, devolve (ARP reply) o seu endereço físico •É armazenado temporariamente na ARP cache •Os datagramas IP seguintes são enviados com o endereço físico do destino •RARP – usado para converter endereço físico em endereço IP •Alguns host (WS diskless) não sabem o endereço IP quando arrancam •Exemplo: terminais X-Windows carregam o seu software de um servidor na rede •Enviam um pacote com o seu endereço físico para um servidor RARP •Um servidor RARP devolve o endereço IP •Mantém uma tabela permanente com todas as correspondências end. Físico – end. IP Pedro Costa Computadores e Redes de Comunicação 28 DNS – Domain Name Service •Inicialmente •Comunicações por TCP/IP apenas com endereços IP •telnet 193.82.214.13 •Utilização de endereços simbólicos (nomes) •Mantidos no Network Information Center (NIC) num ficheiros hosts.txt •Todos os hosts carregavam esse ficheiro por ftp •Explosão do número de hosts na internet •Impossível manter num sítio a relação de todos os hosts do mundo actualizados •Em redes locais pode ser usado um flat namespace (no ficheiro local hosts) •Para a internet é usado o Domain Name System (DNS) •Traduz um endereço simbólico num endereço IP, inquirindo nós apropriados na internet •Endereços simbólicos organizados hierarquicamente (domínios e subdomínios) •Endereços formados por nomes separados por pontos tom.fe.up.pt fe.up.pt up.pt pt Pedro Costa representa a máquina tom no domínio fe.up.pt representa a FEUP representa a Universidade do Porto representa Portugal Computadores e Redes de Comunicação 29 DNS – Domain Name Service •Fully Qualified Domain Names (FQDNs) •No DNS é usual trabalhar com domínios incompletos •Exemplo: fe.up.pt ou up.pt •Um FQDN (ou nome absoluto de domínio) é um nome completo •Exemplo alf.fe.up.pt •Domínios genéricos (principalmente nos US) •.com – organizações comerciais (www.cnn.com, www.chipidea.com) •.edu – instituições educacionais (ftp.nyu.edu) •.gov – instituições governamentais nos US (www.whitehouse.gov) •.int – organizações internacionais •.mil – organizações militares nos US (archive.afit.af.mil) •.net – principais centros de suporte à rede (www.net) •.org – organizações não lucrativas (satco.org) •Domínios de páis •<país> código de 2 letras para cada país (pt, es, fr, br, de, uk,....) •Domínios secundários nos países: co.uk (comerciais), ac.uk (académicas) Pedro Costa Computadores e Redes de Comunicação 30 DNS – Domain Name Service •Resolução de nomes de domínios •Processo cliente/servidor •Cliente é o resolver que é invocado pela aplicação •Servidor é o domain name server que efectua a tradução •Mensagens entre cliente e servidor são transportadas por TCP ou UDP •Uma aplicação faz um pedido para traduzir um nome de domínio num endereço IP •O resolver formula a questão ao name server (pode consultar uma cache local) •O name server verifica se o domínio está na sua tabela ou cache local •Se sim, devolve a resposta ao cliente (endereço IP) •Se não, pergunta aos name servers que ele conhece, começando pela raíz •Recebida a resposta devolve-a ao resolver •A aplicação recebe o endereço IP ou mensagem de erro •nslookup: traduz endereço simbólico em endereço IP, consulta name servers •Stub resolver •Rotinas embebidas na aplicação invocam o name server directamente •Em Unix: gethostbyname (), gethostbyaddr() Pedro Costa Computadores e Redes de Comunicação 31 DNS – Domain Name Service •Nomes simbólicos são agrupados em zonas de autoridade (zones of authority) •Em cada zona, um ou mais hosts mantêm a tabela de IPs dessa zona •Os local name servers estão interligados pela internet •Forma uma árvore hierárquica de domínios •Cada zona contém parte dessa árvore •Os nomes de cada zona são administrados independentemente das outras zonas •Respostas dos name servers podem ser de dois tipos •Authoritative, se o name server tem autoridade sobre a zona a que pertence o domínio •Non – authotritative, se não tem autoridade sobre a zona •Dois tipos de name servers •Primário •Tem autorização sobre uma zona e mantém em disco essa informação •Secundário •Tem autorização sobre a zona, mas carrega a informação de um server primário •Caching-only •Não tem autorização sobre qualquer zona, obtém respostas dos NS primário ou secundário Pedro Costa Computadores e Redes de Comunicação 32 Aplicações •TELNET •Acesso aos recursos dos hosts remotos (sessão interactiva) •FTP – File Fransfer Protocol •Transferência de ficheiros entre discos, acesso anónimo •REXEC, RSH •Execução de comandos em máquinas remotas •SMTP – Simple Mail Transfer Protocol •Encio de email entre dois hosts •MIME – Multipurpose internet Mail Extensions •Permite o envio de dados não-texto como email •POP – Post Office Protocol •Acesso remoto a caixas de correio electrónico •X Window •Interface gráfica sobre a rede, execução de aplicações gráficas em hosts remotos Pedro Costa Computadores e Redes de Comunicação 33