ARPANET iniciou em 1968 ARPA-Advanced Research Projects Agency dos
Estados Unidos Incluia Estados Unidos e alguns pontos da Inglaterra
e na Noruega Funcionava como um laboratório onde conceitos em
rede eram testados 1983 --> 82 nodos intermediários e um número
desconhecido de computadores ligados direta ou indiretamente a estes nodos
InternetInternet
ARPANETARPANET
ARPANET era usada basicamente pelo Departamento de Defesa (DoD) dos Estados Unidos e as entidades que desenvolviam
Arquitetura como resultado da evolução da ARPANET
TCP/P = Arquitetura Internet
Evolução da ARPANETEvolução da ARPANET
Rede privada governamental Na metade da década de 80, o DoD Estados Unidos, decidiu separar uma rede para seu uso, a MILNET, continuando a ARPANET como a rede experimental que também servia para como backbone para todas as redes acadêmicas das Universidades e outras instituições de pesquisa serem interconectadas. Na segunda metade da década de 1980, a NSF-National Science Foundation começou a implantar uma rede de supercomputadores denominada NSFNET que tornou-se o backbone para a interconexão das redes.
A Internet hojeA Internet hoje A ARPANET evoluiu e passou a ser mais
do que uma rede, resultando no que passou a ser denominada INTERNET, interconexão de redes.
Atualmente, participam da INTERNET entidades de ensino e pesquisa, governamentais e empresas privadas, de todos os países
Política de uso aceitável em Política de uso aceitável em backbones acadêmicos backbones acadêmicos
I.a) Comunicação com pesquisadores e educadores de outros países, desde que exista reciprocidade para os pesquisadores e educadores dos Estados Unidos no uso das redes estrangeiras por onde acessam a NSFNET
I.b) Comunicação e intercâmbio para o desenvolvimento profissional para manter atualização ou para debater assuntos em qualquer área do conhecimento
Política de uso aceitável em Política de uso aceitável em backbones acadêmicosbackbones acadêmicos
I.c) Uso por associações universitarias, sociedades normativas, conselhos governamentais ou atividades de padronização relativas a pesquisa ou atividades de ensino.
I.d) Uso para submissão de pedidos de apoio a pesquisa ou para administração de pesquisas contratadas
Política de uso aceitável em Política de uso aceitável em backbones acadêmicosbackbones acadêmicos
I.e) Quaisquer outras comunicações administrativas de suporte ao ensino e a pesquisa.
I.f) Anúncios de novos produtos ou serviços para uso em ensino e pesquisa, sem admitir-se publicidade de qualquer tipo
I.g) Qualquer tráfego originador de uma rede ou outra agência membro do Conselho de Redes Federal, se o tráfego esta de acordo com o que é aceitavel para aquela agência
I.h) Comunicação incidental para outros fins.
Não é aceitável na Não é aceitável na InternetInternet
II.A) Uso para atividades com fins lucrativos II.A) Uso para atividades com fins lucrativos ou uso por instituições com fins lucrativos para ou uso por instituições com fins lucrativos para fins que não os definidos como aceitáveisfins que não os definidos como aceitáveis
II.b) Uso extensivo para assuntos privados ou II.b) Uso extensivo para assuntos privados ou pessoais.pessoais.
A Internet hoje ...A Internet hoje ...
Backbone = NSFNET --> backones acadêmicos e comerciais trocando tráfego Qualquer velocidade pode ser usada nas conexões pois a arquitetura se adapta a uma gama muito grande de infra-estruturas de comunicações. A Internet atualmente não mais pertence a qualquer entidade e resulta da cooperação de todos. As organizações integrantes da INTERNET são administrativamente independentes Não existe um ponto central que a controleAlocação de nomes de domínio e endereços IP sob administração do ICANN
Administração da InternetAdministração da Internet
Comitê responsavel pela definição dos padrões a serem usados.
IAB-Internet Architecture Board, com uma composição internacional
A documentação dos protocolos definidos para uso na rede : RFC-Request for Comments
Integração à InternetIntegração à Internet
Para integrar-se a INTERNET, é preciso:
- providenciar numa forma de transmissão até o nó INTERNET mais próximo
- contactar quem tem a delegação local para registrar usuários para solicitar um endereço
- implantar na sua máquina o conjunto de protocolos inerentes à arquitetura INTERNET
A arquitetura InternetA arquitetura Internet A geração atual de protocolos usados na
INTERNET é baseada primariamente em:
-Um serviço de transporte orientado à conexão, provido pelo protocolo de controle de transmissão TCP (Transmission Control Program)
- Um serviço de rede não-orientado à conexão, provido pelo protocolo Internet IP (Internet Protocol)
Protocolos de aplicação InternetProtocolos de aplicação Internet
SMTP (Simple Mail Transfer Protocol) que permite um serviço de recepção-armazenamento e envio de mensagens eletrônicas
FTP (File Transfer Protocol) que permite a transferência de arquivos
TELNET que viabiliza os serviços de terminal virtual DNS (Domain Name System) que proporciona o
mapeamento entre nomes de computadores e endereços de rede.
SNMP (Simple Network Management Protocol) para apoiar o gerenciamento da rede
IP - Internet ProtocolIP - Internet Protocol
Baseado em datagrama Rede estruturada em sub-redes Gateways (roteadores) entre sub-redes diferentes Se o destinatário de um pacote está na mesma sub-
rede do originador, os dados vão diretamente para aquele equipamento.
Se o destinatário está numa sub-rede diferente, o datagrama é enviado ao gateway local.
Encapsulamento do datagrama IPEncapsulamento do datagrama IP
O datagrama IP é encapsulado num LPDU-Link Protocol Data Unit para ser enviado pelo meio de transmissão até a máquina destinatária
O remetente precisa saber qual endereço colocar no cabeçalho do LPDU
O remetente precisa, portanto ter uma tabela que indique qual endereço de nível de enlace corresponde a um dado endereço IP.
Esta informação é aprendida dinamicamente, através do protocolo ARP
EndereçamentoEndereçamento Endereço composto por 32 bits Obedecem a uma subdivisão que indica a rede e o
computador
Existem, portanto, potencialmente:- 128 redes classe A com ate 22401 computadores, - 16384 classe B cada uma contendo até 65534
computadores- 221 classe C, cada uma com até 254 computadores.
Classe de endereço Bits para rede Bits para computadorA 7 24B 14 16C 21 8
Vizualização dos endereços Vizualização dos endereços IPIP
Para fins de impressão e visualização, os endereços costumam ser representados, como uma quadra de números que representam cada um dos octetos inte-grantes do endereço IP, separados por um ponto.
Notação decimal pontuada Ex.: 143.54.1.7
Endereços e máscarasEndereços e máscaras
Um endereço IP é composto por 32 bits dos quais os primeiros 8, 16 ou 24 (dependendo da classe de endereço) indicam a rede.
Os bits restantes podem ser subdivididos Endereço classe C
•O número de bits usados para representar a sub-rede pode ser escolhido
•Não devem ser usados para endereço de host os valores 000... ou 111... pois são usados para broadcast (difusão)
1 1 0 endereço de rede hostidsub-redenetid
Máscara para indicar o comprimento Máscara para indicar o comprimento do campo hostiddo campo hostid
A máscara é um conjunto de 32 bits em que as posições correspondentes aos endereços de rede e de sub-rede são 1111111111111111 e os demais bits (correspondentes ao hostid) são 0000000
Exemplo: Endereços na UFRGS usam somente o último octeto para representar o hostid portanto, a máscara é:
255.255.255.0 Na Rede TCHE, onde se usa em certos casos 5 bits
para indicar a sub-rede, a máscara fica: 255.255.255.248 11111111.111111111.111111111.11111000
Tabelas de roteamentoTabelas de roteamento Os endereços de rede e sub-rede são usados
nas tabelas de roteamento Para cada rede (e sub-rede) conhecida haverá
pelo menos uma rota, passando por um roteador (ou gateway como era antigamente denominado)
Roteadores trocam informações de roteamento entre si
Máscaras também são informadas
Rede TCHÊRede TCHÊ
sub-rede 200.17.63.224 11100000
sub-rede 200.9.0.252 11111100
Roteador
Como reconhecer a classe de um Como reconhecer a classe de um endereçoendereço
O primeiro algarismo (Y.X.X.X) indica a classe:
Classe A Y < = 127 25.12.34.120 Classe B 128 <= Y < = 191 143.54.1.20 Classe C 192 < =Y < = 207 200.17.63.228
Quantos endereços IP pode ter um Quantos endereços IP pode ter um host?host?
Tantos quantas foram suas interfaces de comunicação LAN ou WAN
Cada interface pode ter um endereço IP diferente
Os diferentes endereços IP pertencerão a sub-redes diferentes
Um host com mais de um endereço IP poderá funcionar como um roteador
Endereços especiaisEndereços especiais 127.hostid
Este endereço é conhecido como localhost ou loopback address. Os dados enviados para este endereço não são remetidos para a rede mas passam pela pilha de protocolo e retornam. Toda a rede 127 é reservada para este fim
netid.255 Todos os hosts daquela rede
Exemplo: 143.54.255.255 netid.0 --> Este host 0.hostid --> Aquele host nesta rede Endereços de broadcast: 1111111.....111111111 (255.255.255.255) todos os hosts nesta rede local
Formato do datagrama IPFormato do datagrama IP
Version HLen Type of Service Total Length
Identification Flags Fragment Offset
Time to Live Protocol Header Checksum
Source Address
Destination Address IP options (optional) Padding cabeçalho TCP, e dados do usuário
Campos datagrama IPCampos datagrama IP
Version indica qual versão do IP esta sendo usada no datagrama.
HLen: Comprimento do cabeçalho expressa o comprimento em palavras de 32 bits.
Campos datagrama IPCampos datagrama IP
Tipo de serviço contem um parâmetro descrevendo a qualidade do serviço para este datagrama.
Na versão 4 do protocolo este parâmetro tem a seguinte estrutura: Precedência (3 bits) - a prioridade do datagrama Retardo (1 bit) - normal ou baixa Throughput (1 bit) - normal ou alto Confiabilidade (1 bit) normal ou alta
Campos datagrama IPCampos datagrama IP
Comprimento total é o comprimento do segmento, medido em octetos, incluindo cabeçalho e dados.
Identificação é um campo usado para correlacionar os segmentos de um datagrama.
Flag é um campo de 3 bits que contem uma indicação de não-segmentação ou um de que há mais segmentos subsequentes.
Posição indica a posição do segmento em relação ao inicio dos dados existentes no datagrama original.
Campos datagrama IPCampos datagrama IP
Tempo de existência (Time to Live) varia de 0 a 255 seg e indica o tempo
máximo de trânsito de um datagrama. Cada gateway na Internet reduz este
tempo de 1 seg ou do tempo decorrido desde que o último gateway o processou (se este valor é conhecido através de uma opção de agregação de hora ao datagrama IP).
Quando o tempo de existência chega a zero o datagrama é descartado.
Campos datagrama IPCampos datagrama IP
Checksum do cabeçalho e o complemento para 1 da soma de todas as palavras de 16 bits no cabecalho, não incluindo o próprio checksum.
Originador e Destinatário são enderecos de 32 bits. Cada endereço Internet começa com um endereço de sub-rede (8 bits) e um endereço local (24 bits).
Campos datagrama IPCampos datagrama IP
Opções é um campo de comprimento variável para uso entre as sub-redes participantes. Neste campo podem ser incluidas informações tais como: classificação em termos de segurança ou horário (time stamp).
Enchimento (Padding) é usado para completar o campo Opções para formar 32 bits.
Mapeamento de endereçosMapeamento de endereços
Nome: pentaNúmero IP: 143.54.1.20Endereço Ethernet: 09:00:2B:........
Para que uma máquina possa se comunicar com outra, precisaser capaz de mapear nomes em endereços
Mapeamento de endereços físicos em Mapeamento de endereços físicos em endereços Internetendereços Internet
Tabela estática preenchimento manual
Resolução de endereço descoberta protocolo ARP-Adress Resolution Protocol pedido enviado por broadcast (fornece IP e
quer Ethernet, por exemplo) resposta armazenada numa cache
Comando arp -a apresenta a tabela cache
Protocolos ARP e RARPProtocolos ARP e RARP
Mensagens encapsuladas num datagrama IP
ARP: dado um endereço IP obter o correspondente endereço Ethernet para poder enviar um datagrama
RARP: Uma estação diskless temm apenas seu endereço Ethernet quando da boot e precisa ser informada sobre o endereço IP que ela deve usar
penta% arp -avortex (143.54.1.7) at aa:0:4:0:c3:b9tchepoa (143.54.1.9) at 0:0:c:3:26:3
penta% ping asterixasterix.ufrgs.br is alivepenta% arp -adarwin (143.54.1.176) at 8:0:20:10:ad:72vortex (143.54.1.7) at aa:0:4:0:c3:b9asterix.ufrgs.br (143.54.1.8) at 0:0:92:80:2f:betchepoa (143.54.1.9) at 0:0:c:3:26:3
ExemploExemplo
Reverse ARPReverse ARP Quando é necessário descobrir o endereço IP para
uma máquina diskless pode ser usado o protocolo RARP (Reverse Address Resolution Protocol) Analogia: É como se alguém perguntasse num
restaurante cheio: “Alguém por ai pode me dizer meu telefone?” Alguém responde: “Claro, é 9999-12-34”
RARP é enviado em broadcast Um RARP server responde
arquivo /etc/ethers é usado em ambiente UNIX para estes mapeamentos
Mensagens de controle Mensagens de controle
O protocolo ICMP também é encapsulado nos datagramas IP e é usado quando ocorrem alguns problemas ou para teste.
Alguns comandos podem ser estimulados por programas utilitários, como o ping
penta% ping asterixasterix.ufrgs.br is alive
ICMP-Internet Control Message ICMP-Internet Control Message ProtocolProtocol
Campo protocolo de um datagrama IP contem o valor 1 Diversos tipos de mensagens de controle
Destinatario não pode ser alcancado Tempo excedido Parâmetro com problema Dispositivo refreando (Source quench) Redirecionamento Eco/resposta do eco Hora/resposta com hora Pedido/resposta de informação Pedido/resposta máscara de endereço
Mapeamento de nomes em endereços Mapeamento de nomes em endereços InternetInternet
Os computadores conectados à rede recebem nomes
penta.ufrgs.br tchepoa nic.ddn.mil O mapeamento dos nomes para os endereços
Internet pode ser feitos de várias maneiras: manualmente preenchendo uma tabela
/etc/hosts dinamicamente mediante consulta a um
servidor de nomes
Mapeamento de nomes em IPMapeamento de nomes em IP NIS-Network Information System também conhecido como Yellow Pages (YP) originalmente desennvolvido pela SUN aplicação que armazena suas informações em uma tabela máquinas são organizadas em grupos lógicos
denominados domínios cada domínio tem um servidor mestre que armazena
todos os dados servidores escravos podem opcionalemnte conter cópias
dos dados
Consulta ao servidor de nomesConsulta ao servidor de nomes
clientes consultam os servidores para obter o mapeamento
cada novo host adicionado na rede deve ser registrado no servidor (nome e IP)
requer arquivos de configuração e deamons especiais
Mapeamento de nomes em IP Mapeamento de nomes em IP DNS-Domain Name System prove um sistema hierárquico global de nomeação sistema totalmente distribuído cada servidor mestre contem toda a informação
concernente a seu domínio
Pode-se consultar o DNS usando o utilitário nslookup em ambiente UNIX
ExemplosExemplospenta% nslookupDefault Server: vortex.ufrgs.brAddress: 143.54.1.7
> pentaServer: vortex.ufrgs.brAddress: 143.54.1.7Name: penta.ufrgs.brAddress: 143.54.1.20
> bugiuServer: vortex.ufrgs.brAddress: 143.54.1.7*** vortex.ufrgs.br can't find bugiu: Non-existent domainAddress: 143.54.2.20
> bugiu.inf.ufrgs.brServer: vortex.ufrgs.brAddress: 143.54.1.7*** No address information is available for
bugiu.inf.ufrgs.br
> bugio.inf.ufrgs.brServer: vortex.ufrgs.brAddress: 143.54.1.7Name: bugio.inf.ufrgs.brAddress: 143.54.10.3
> 143,54,2,6Name: tripoli.if.ufrgs.brAddress: 143.54.2.6
> fapq.fapesp.brServer: vortex.ufrgs.brAddress: 143.54.1.7Non-authoritative answer:Name: fapq.fapesp.brAddress: 143.108.10.2
> nic.ddn.milServer: vortex.ufrgs.brAddress: 143.54.1.7Non-authoritative answer:Name: nic.ddn.milAddress: 192.112.36.5
Mapeamento de nomes em IPMapeamento de nomes em IP
A tradução de nomes em números IP pode ser invocada automaticamente quando um programa faz referência a um nome. Isto é função do name resolver
Se um sistema não tiver um name resolver, precisa ter uma tabela de hosts (host table) para consultar
Pode existir um sistema que tenha host table (para os nomes locais mais usados) e name resolver (para os demais)
Domain Name Service (DNS)Domain Name Service (DNS)
Prove um serviço de conversão de nomes em endereços Ip para TCP/IP.
Três componentes Um servidor de nomes um resolvedor de nomes banco de dados
ServidorServidorde nomesde nomes
198.1.1.1198.1.1.1198.1.1.2198.1.1.2 Banco de dados contendoBanco de dados contendoo mapeamento parao mapeamento paraSun_Server 198.1.1.1Sun_Server 198.1.1.1
(1) Name Query “Sun_Server”(1) Name Query “Sun_Server”(2) Query Response “198.1.1.1”(2) Query Response “198.1.1.1”
(3) Connection(3) Connection
ResolvedorResolvedorde DNSde DNS
TELNETTELNETSun_serverSun_server
110001110001 101010101010
Estrutura do DNSEstrutura do DNS
Estrutura hiarárquica Cada nível prove definições adicionais Cada ramo é denominado um nível (63 caracteres de
comprimento) O registro Internet provê unicidade nos nomes Um domínio é atribuído e pode ser posteriormente
definido no local onde é usado
Componentes do DNSComponentes do DNS
Domain Name Space e registros de recursos Servidores de nome Resolvedores
Estrutura dos DomíniosEstrutura dos Domínios
Root ServerRoot Server
comcom eduedu comcom govgov milmil netnet
.firm.firm .arts.arts .nom.nom .rec.rec .info.info .web.web .store.store
Outros Outros top-level domains (TLDs)top-level domains (TLDs) tem sido propostos e adotados tem sido propostos e adotadospelos ccTLD (Country code Top Level Domain) pelos ccTLD (Country code Top Level Domain) No Brasil o registro no domínio .br é feito pela FAPESP por delegação No Brasil o registro no domínio .br é feito pela FAPESP por delegação do Conitê Gestor Internet/BRdo Conitê Gestor Internet/BRhttp://www.cg.org.brhttp://www.cg.org.br
Servidores de nomeServidores de nome
graydon.comgraydon.com
.engineering.graydon.com.engineering.graydon.com
.marketing.graydon.com.marketing.graydon.com
.hr.graydon.com.hr.graydon.com
.manufacturing.graydon.com.manufacturing.graydon.com
marketing zonemarketing zone
engineering zoneengineering zone
hr zonehr zone
manufacturing zonemanufacturing zone
vax.vax. mail.mail. host.host.
vax 192.32.1.15vax 192.32.1.15mail MX vaxmail MX vax
host 192.32.1.17host 192.32.1.17
Upstream nameUpstream nameserver for other domainsserver for other domains
Database fileDatabase file
Name Servers (continued)Name Servers (continued)
Consulta Consulta “labhost.bnr.ca.us”“labhost.bnr.ca.us”
IP address of “labhost.bnr.ca.us”IP address of “labhost.bnr.ca.us”
Name ServerName Server
Query “labhost.bnr.ca.us”Query “labhost.bnr.ca.us”
Query “labhost.bnr.ca.us”Query “labhost.bnr.ca.us”
Query “labhost.bnr.ca.us”Query “labhost.bnr.ca.us”
Query “labhost.bnr.ca.us”Query “labhost.bnr.ca.us”
Endereço IP de Endereço IP de “labhost.bnr.ca.us”“labhost.bnr.ca.us”
Referral to bnr.ca.us serverReferral to bnr.ca.us server
Referral to ca.us serverReferral to ca.us server
Referral to us serverReferral to us server
Root serverRoot server
.us server.us server
.ca.us server.ca.us server
bnr.ca.us serverbnr.ca.us server
Tipo de funções de consultaTipo de funções de consulta
Dois tipos de consultas: recursiva e iterativa. Recursão significa que o servidor deve encontrar a resposta ou retornar um código de
erro O resolvedor é um exemplo de consulta recursiva Iteração permite ao servidor retornar a melhor informação conhecida Servidores são exemplos tanto de recursão quanto de iteração
Query “Host”Query “Host”
Response “Can’t find it”Response “Can’t find it”
Query “Host.jj.com”Query “Host.jj.com” Root serverRoot server
jj.comjj.com
Name ServerName Server jj.comjj.com
host.jj.com
host.jj.com
Response “IP Address”Response “IP Address”
Examplo de banco de dados DNS Examplo de banco de dados DNS
Registros no bando de dados incluem: A–endereço IP de hosts PTR–nome do domínio do host CNAME–nome canônico do host, host identificado por
um outro nome de domínio MX–intercambiador de correio eletrònico NS–servidores de nome SOA–Indica autoridade para o domínio TXT–registro com texto genérico SRV–registro de localização de serviço RP–nome textual da pessoa responsável pelo DNS do
domínio
SOA RecordSOA Record
Naugle.comNaugle.com ININ SOASOA ns1.Naugle.com. Matt.NT1Server.Naugle.com. (ns1.Naugle.com. Matt.NT1Server.Naugle.com. (15671567 ;Serial;Serial1800018000 ;Refresh after five hours;Refresh after five hours36003600 ;Retry after 1 hour;Retry after 1 hour604800604800 ;Expire after one week;Expire after one week86400)86400) ;Minimum TTL of 1 day;Minimum TTL of 1 day
Authoritative for domainAuthoritative for domainName server for domainName server for domain
Person responsiblePerson responsibleInformation for the secondary serverInformation for the secondary server
Name Server RecordsName Server Records
Naugle.com. IN NS ns0.Naugle.com. Naugle.com. IN NS ns1.Naugle.com.
Naugle.com. IN NS ns2.Naugle.com. Naugle.com. IN NS ns3.Naugle.com. Naugle.com. IN NS ns4.Naugle.com.
Address RecordsAddress RecordsLocalHost.Naugle.com. IN A 127.0.0.1DatabaseServer.Naugle.com. IN A 128.1.1.1HRServer.Naugle.com. IN A 128.1.15.1EngServer.Naugle.com. IN A 128.1.59.150NS0.Naugle.com.IN A 128.1.1.2NS1.Naugle.com.IN A 128.1.15.2NS2.Naugle.com.IN A 128.1.16.190NS3.Naugle.com.IN A 128.1.59.100NS4.Naugle.com.IN A 128.1.59.101;AliasesNT1.Naugle.com.INCNAME DBServer.Naugle.comNT2.Naugle.com.INCNAME HRServer.Naugle.com.
Mail Exchange Records (MX)Mail Exchange Records (MX)
engineering.naugle.com. IN MX 5 mail.naugle.com.
engineering.naugle.com. IN MX 5 mail1.naugle.com.
engineering.naugle.com. IN MX 10 mail2.naugle.com.
Usando o banco de dadosUsando o banco de dados
nslookup <domain name> <IP Address> www.registro.br Pode ser usado para ver se um nome de
domínio já está atribuído
Comando WHOIS Comando WHOIS Possibilita obter mais informação sobre nomes de domínios,
redes etc “whois ascend.com” (without the quotes). Details Ascend.com domain such as:
Administrative contact (who to call) Domain servers
Can determine IP address blocks. WHOIS net 192.1 BBN Corporation NETBLK-BBN-CNETBLK BBN-
NCETBLK 192.1.0.0-192.1.255.255
Mais informação sobre DNSMais informação sobre DNS 2136 PS: P. Vixie, S. Thomson, Y. Rekhter, J. Bound, “Dynamic Updates in the
Domain Name System (DNS UPDATE)”, 04/21/97 (26 pages). 2137 PS: D. Eastlake, “Secure Domain Name System Dynamic Update,” 04/21/97
(11 pages) (.txt format). 1996 PS: P. Vixie, “A Mechanism for Prompt Notification of Zone Changes (DNS
NOTIFY),” 08/28/96 (7 pages) (.txt format). 1995 PS: M. Ohta, “Incremental Zone Transfer in DNS”, 08/28/96 (8 pages) (.txt
format). http://penta.ufrgs.br/rc952/trab1/dns.html www.isc.org DNS and BIND
Book by Paul Albitz and Cricket Liu - ISBN 1-56592-236-0