176
R&C+R&I 1 / ISTEC –14/15
5.1 -Comunicação virtual entre camadas
Suporte a novos serviços: VoIP (Voice Over IP)
•Desempenho imprevisível na internet
•Desempenho bom em redes de operadores
•Melhor controlo da ocupação da rede
•IP possibilita um serviço mais económico e flexível (PS: Packet
Switch) do que redes tradicionais (CS: Circuit Switch)
177
R&C+R&I 1 / ISTEC –14/15
5.2 -Protocolo IP e a criação de uma internet
178
R&C+R&I 1 / ISTEC –14/15
Protocolo IP (Internet Protocol -RFC 791):
*Comutaçãodepacotes(datagramas):
*Encaminhamentodepacotesentreredesheterogéneas
*Suporteacomunicaçãoentrequaisquercomputadores/redes
*EndereçamentoUniversal
*Nãoorientadoàligação:
*Diferentespacotespodemfazerdiferentescaminhos
*Nãofiável
*Nãodetectanemrecuperaerros
*NãogaranteQoS(IPv4)BestEffort
5.2 -Protocolo IP e a criação de uma internet
179
R&C+R&I 1 / ISTEC –14/15
5.3 -Datagramas IP e os protocolos de transporte
Cabeçalho IP
180
R&C+R&I 1 / ISTEC –14/15
Pacote IP
Versão Comprimento Total (bytes)
32 bits
IHL Tipo de serviço
Identificação Offsetdo fragmento
D
F
M
F
Tempo de vida Checksumdo cabeçalhoProtocolo
Endereço IP de Origem
Endereço IP de Destino
Opções (se existentes)
Dados
5.3 -Datagramas IP e os protocolos de transporte
181
R&C+R&I 1 / ISTEC –14/15
*Versão-Garantircompatibilidadeentrediferentesversões
*IHL(IPHeaderLength)-Tamanhodocabeçalho
*Min.=5;Max.=15(wordsde32bits)
*Tipodeserviço-Possibilitardefiniçãodediferentesrequisitosde:
*Velocidade/Atrasodepacote
*Dimensãototal-Incluicabeçalhoemensagem(máximo=64K)
*Identificação-Identificadordepacoteaquepertenceestefragmento
*DF(Don’tFragment)-Seestivera‘1’informarouterquenãodeve
fragmentaropacote,poisodestinonãosaberáreconstruí-lo
*MF(Morefragments)-Seestivera‘1’indicaquenãoéaindaoúltimo
fragmento(dopacote)
*Offsetdofragmento-Posiçãonopacotedestefragmento(x8bytes)
*13bitsmáximo=8192fragmentosporpacote(exceptoúltimo)
*8192*8bytes=64K,tamanhodinamica/variável,emfunçãode
aplicação+MTUdarede
5.3 -Datagramas IP e os protocolos de transporte
182
R&C+R&I 1 / ISTEC –14/15
*Tempo de vida-Contador de tempo de vida de pacote
*Decrementado em cada transmissão entre routers
*Previne possibilidade de pacotes se “perderem” na rede
*Erros nas tabelas de routing
*Endereço corrompido
*Quando atinge o valor 0 o fragmento é destruído e enviada uma
mensagem a notificar a sua origem.
*Valor máximo = 255
*Protocolo-Especificaoprotocolodecamadasuperior:TCP,UDP
*Checksum–Controlodeerrosdocabeçalhodopacote
*Opções-Possibilitaractualizaçãonoprotocolo(futurasversões)
*Ex.poderespecificarcaminhospretendidos,pediraosrouters
quemarquemoseuendereçoedata/horadepassagem,etc
5.3 -Datagramas IP e os protocolos de transporte
183
R&C+R&I 1 / ISTEC –14/15
5.3 -Datagramas IP e os protocolos de transporte
184
R&C+R&I 1 / ISTEC –14/15
5.4 -Fragmentação de Datagramas IP
Variável para
cada rede
185
R&C+R&I 1 / ISTEC –14/15
5.3 -Datagramas IP e os protocolos de transporte
Fragmentação
186
R&C+R&I 1 / ISTEC –14/15
5.4 -Estrutura de Endereços IP
Limite Teórico: ~4,3
biliões de endereços
Limite Prático: ~250
milhões de endereços
(RFC 3194: Esquema de
alocação de endereços)
187
R&C+R&I 1 / ISTEC –14/15
5.4 -Estrutura de Endereços IP
Permite atribuir
~67 biliões de endereços
por cm
2
do planeta
188
R&C+R&I 1 / ISTEC –14/15
5.5 -Unicidade de Endereços IP
ISOC: Internet SOCiety
IANA -Internet Assigned Numbers Authorithy
189
R&C+R&I 1 / ISTEC –14/15
5.6 -Representação dos Endereços IP
190
R&C+R&I 1 / ISTEC –14/15
Data de
esgotamento de
atribuição de
Endereços IP v4 a
RIRs (Regional
Internet Registry)
APNIC: Asia Pacific NW Information Center
RIPENCC: RIPE NW Coordination Center
ARIN: American Registery for Interner Nbrs
LACNIC: Latin America and Caribbean NIC
AFRINIC: African Network Information Center
Data estimada para
esgotamento de
atribuição de
Endereços IP v4 por
RIRs
5.7 -Atribuição de Endereços IP
191
R&C+R&I 1 / ISTEC –14/15
5.7 -Atribuição de Endereços IP
192
R&C+R&I 1 / ISTEC –14/15
Endereços IP
*Todososelementosderede(Computadores/Routers)possuemum
endereçoIPunívoco,atribuídoporentidadecoordenadora:
*IANA-InternetAssignedNumbersAuthorithy,quedelegaem:
*Europa:RIPE-ReseauxIPEuropéens(RIR:RegionalInternetRegistry)
*Portugal:FCCN–FundaçãoparaComputaçãoCientificaNacional
*TodososendereçosIP(v4)possuemumcomprimentode32bits,
divididosem3campos:
*Identificadordeclassedeendereço
*NúmerodeidentificaçãodeRede
*NumerodeidentificaçãodeHost(ElementoTerminaldeRede)
•Ex: 00000001 00000010 00001111 11111111 = 1.2.15.255 d
0 Rede Terminal (Host)
7 bits 24bits
5.7 -Classes de Endereços IP
Considerar apenas campo “Rede”
para simplificar
193
R&C+R&I 1 / ISTEC –14/15
Endereços IP
*Representaçãoderedesdediferentesdimensões:
Definiçãodeclassesdeendereços
*Definidos5tiposdeformato,distinguidospelotamanho:
•Classe A -127 redes com ~16 milhões de terminaiscada
•Classe B -~16 mil redes com ~65 mil terminaiscada
•Classe C -~2 milhões de redes com 254 terminaiscada
•Classe D -Endereços para multicasting
•Classe E -Reservado para uso futuro
5.7 -Classes de Endereços IP
194
R&C+R&I 1 / ISTEC –14/15
Classe
E
32 bits
Gama de endereços
A0Rede (7 bits) Terminal (24 bits)
1.0.0.0 a
127.255.255.255
1 0B Rede (14bits) Terminal (16bits)
128.0.0.0 a
191.255.255.255
1 1 0C Rede (21 bits) Terminal (8 bits)
192.0.0.0 a
223.255.255.255
1 1 1 0D Multicast -Grupo de Terminais (28 bits )
225.0.0.0 a
239.255.255.255
1 1 1 1 0 Reservado para uso futuro
240.0.0.0 a
247.255.255.255
5.7 -Classes de Endereços IP
195
R&C+R&I 1 / ISTEC –14/15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0Endereço
desconhecido (boot)
Endereços IP especiais
0 0 0 . . . 0 0 0 Terminalna própria rede
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1Broadcast na rede local
Broadcast em rede remota
0 1 1 1 1 1 1 1 x x x x x x x x x x x x x x x x x x x x x x x x xTeste de loopback
127.xx.yy.zz
Terminal
Rede 1 1 1 . . . 1 1 1
32 bits
5.7 -Classes de Endereços IP
196
R&C+R&I 1 / ISTEC –14/15
Endereços IP
*Problemas do endereçamento IP v4:
*Capacidade disponível cada vez menor
*Tabelas de Routing com dimensão limitada
*Soluções Temporárias:
*Subnets -Segmentação e redefinição de campo “Terminal”
*Supernets -Agregação de endereços
*NAT -Conversão de endereços Públicos/Privados
*Endereços Dinâmicos
*Solução Efectiva:
*IP v6 -nova versão com endereços de 128 bits
5.7 -Classes de Endereços IP
197
R&C+R&I 1 / ISTEC –14/15
Subnets
*Facilitar gestão de redes (autónomas)
*Definição de segmentos e de Terminais/Segmento
*Redução/Separação de tráfego (por Subnet) Melhor Desempenho
*Simplificação de tabelas de Routers da rede interna (empresa)
*Routerc\ligação a Subnetk
Conhecer (apenas) terminais de Subnetk
Tabelas ARP: Conversão Endereços IP/MAC +Reduzidas
*Invisível para redes exteriores
*Facilitar controlo de acessos Subnetdefine domínio de broadcat
*Divisão de campo Nº Terminal, em 2:
*Nº Subnet+ Nº Terminal
*Determinação de Subnet (para encaminhamento de pacotes):
*Máscara “1’s” bitsde Rede e Subnet, “0’s” bitsde Terminal
*Cálculo de Subnet“Endereço de Pacote” AND“Máscara”
5.8 -Subnets
Uso de Máscara:
Retirar endereço
de Rede+Subnet
198
R&C+R&I 1 / ISTEC –14/15
Subnets
*Nº de Terminais ou Subnets(SN)= 2
n
-2, n = nºde bits
*n= 2 => 4 -2 = 2 Terminaisou Subnets(00, 01, 10, 11)
*00 -todo o segmento ; 11 -broadcaste multicastreservados
*Ex. Classe B = 16 mil redes com 64 mil terminais, numa LAN
Se 6 bitsde Subnet 16 mil redes/62 SNs/1022 terminais
1 0B Rede Terminal (10 bits)Subnet (6 bits)
32 bits
5.8 -Subnets
199
R&C+R&I 1 / ISTEC –14/15
VLSM -VariableLenghtSubnetMask:
*Possibilidade de criar vários níveis hierárquicos de subnetsde
dimensão variável dentro de uma mesma rede. Exemplo:
*Nível 1 (SN
N1): 2 bits de Subnet 2 SNs/8190 terminais
*Nível2 (SN
N2):2 LANs, com 4bits de Subnet 14 subnets/1022
terminais
5.8 -Subnets
B
B
1 0 Rede Terminal (14 bits)
2 bits
32 bits
1 0 Rede Terminal (10 bits)
4 bits
SN
N1
SN
N1 SN
N2
200
R&C+R&I 1 / ISTEC –14/15
Exemplo de Subnet
INTERNET
Subnet5: 130.50.5.0 Subnet8: 130.50.8.0
* Empresa com Endereço de Rede = 130.50.0.0 (Classe B)
* 254 Subnets=> 8 bitspara representar Subnet=> Subnet Mask= 255.255.255.0
* Cálculo de Subnetdestino por Router: Ex. pacote c\endereço = 130.50.5.1
130.50.5.1 AND255.255.255.0 = 130.50.5.0 => Destino = Subnet5
Router
130.50.5.1130.50.5.254
* * * * * *
130.50.8.254
130.50.8.1
5.8 -Subnets
Operador lógico AND:
0 1 1 0
AND1 0 1 0
0 0 1 0
201
R&C+R&I 1 / ISTEC –14/15
C
Terminal (8 +1 bits)
Supernets (CIDR-Classless Inter-Domain Routing)
*Solução para ultrapassar falta de endereços de classe B
*Utilização de múltiplos endereços de classe C, contínuos e pares
*Ex. Rede com 500 terminais
*Sem CIDR Endereço classe B desperdício de ~65 mil End.
*Com CIDR Agregação de 2 endereços classe C, contínuos
*Ex. 200.1.128.0 e 200.1.129.0
*Encaminhamento deixa de ser feito com base em classes
Utilizada máscara (semelhante a subnet) de 32 bits sem respeitar
fronteiras (8,16,24 bits) “1’s” bitsde Rede, “0’s” bitsde Terminal
*Facilitar tabelas de routing 1 só entrada para endereços agregados
*Melhor utilização de espaço de endereçamento
1 0 1 Rede (21 -1 bits)
32 bits
5.9 -Supernets
Uso de Máscara:
Retirar endereço
Supernet
202
R&C+R&I 1 / ISTEC –14/15
Supernets
*Compatibilidade com Subnets
* Notação CIDR (Prefixo IP):
*a.b.c.d / x
*x = nº de bitsque identificam rede
*a.b.c.d = bits comuns para identificação de endereço de rede
*Exemplos:
*Classe C: 192.168.0.0 a 192.168.255.255 2
16
endereços Ter.
Supernetc\254 Redes: 192.168.0.0/16, Máscara = 255.255.0.0
*Classe C: 200.1.128.0 a 200.1.129.255 2
9
endereços Terminal
Supernetc\2 Redes = 200.1.128.0/23 , Máscara = 255.255.254.0
1 1 0C Rede Terminal (9 bits)
32 bits
5.10 -Supernets
203
R&C+R&I 1 / ISTEC –14/15
Exemplo de Supernet
INTERNET
Subnet2: 200.1.129.0 Subnet 1: 200.1.128.128
Router 2
200.1.129.126
Router 1
SuperNet: 200.1.128.0/23
* * * * * *
200.1.129.1 200.1.128.254200.1.128.129
INTERNET
* Empresa com Endereço de Rede = 200.1.128.0/23 (2 endereços classe C)
* 9 bitspara representar Terminais => Net Mask= 255.255.254.0
* Cálculo de SuperNetdestino por Router1: Ex. pacote c\endereço = 200.1.129.126
200.1.129.126 AND255.255.254.0 = 200.1.128.0 = Rede Destino
* SuperNetcom 2 SubNets=> 2 bitspara SubNet=> SubNet Mask= 255.255.255.128
* Cálculo de SubNetdestino por Router2: Ex. pacote c\endereço = 200.1.129.126
200.1.129.126 AND255.255.255.128 = 200.1.129.0 => Destino = Subnet2
5.10 -Supernets
204
R&C+R&I 1 / ISTEC –14/15
NAT -Network Address Translation
*Conversão de endereços privados (não públicos) em endereços públicos
*Ex. máquinas de intranets ligadas ao exterior por firewalls
*Comunicação interna (maior tráfego):
*Utilização de endereços privados
* IANA recomenda: 10.x.x.x, 172.[16..31].x.x, 192.168.x.x
*Comunicação para exterior (menor tráfego):
*Mapeamento de endereço privado em endereço público
* Endereço privado Endereço público / Porto TCP/UDP
* Possibilidade de utilizar apenas um endereço público (PAT)
* Conversão de endereço privado<->público efetuado em Router/Proxy
* Maior segurança utilização de endereços privados para mascarar
identidade de rede/terminais
5.11 -NAT
205
R&C+R&I 1 / ISTEC –14/15
PAT -PortAddressTranslation:
* Possibilitar que vários terminais de uma rede partilhem endereços IP
públicos, sendo identificados pelo porto TCP/UDP
5.11 -NAT
Servidor WEB
End. Público
205.134.98.123
Internet
Router/Proxy
NAT/PAT
Cliente
End. Privado
10.0.0.1
Rede 192.157.137.0
1)
2)
3)
4)
1)Pedido de terminal Cliente para se ligar a Servidor WEB:
SourceAddress= 10.0.0.1 / SourcePort= 1250
DestinationAddress= 205.134.98.123 / DesinationPort=80
2) Router converte endereço/porto privado de Cliente em publico
SourceAddress= 192.157.137.5 / SourcePort= 5128
Dest. Address= 205.134.98.123 / DestinationPort=80
3) Resposta de Servidor a pedido de Cliente:
SourceAddress= 205.134.98.123 / SourcePort=80
DestinationAddress= 192.157.137.5 / DestinationPort= 5128
4) Routerconsultatabela de PAT e converte endereço/porto publico de Cliente em privado
SourceAddress= 205.134.98.123 / SourcePort=80
DestinationAddress= 10.0.0.1/ DestinationPort= 1250
Porto
Público
Porto
Privado
IP
Privado
Tabela de PAT em Router:
206
R&C+R&I 1 / ISTEC –14/15
Endereços Dinâmicos
*Objetivo Poupança de endereços, quando:
*Nº total de users> Nº endereços IP > Nº total de usersactivos
*Utilizado por ISP’s
*Usa protocolo DHCP (DynamicHostConfigurationProtocol/ RFC 2131)
*Facilitar gestão de atribuição de endereços em redes IP
*Acesso a Internet
*Clientes requisitam endereço variável e temporário (leasetime) a
servidor DHCP do ISP
*Endereço atribuído corresponde a gama de endereços do ISP
*No fim do acesso (ou expiração de leasetime) o endereço é
libertado para outros clientes (se leasetimeexpirar com cliente
ainda ligado leasetimerenovado e endereço mantido)
* Endereço variável maior segurança contra planos de ataques
* Cliente não disponibilizar serviços públicos (ex. Web Server)
* Necessário atualização de DNS
5.12 -Endereços Dinâmicos