97
Rd d C d Redes de Computadores Nível Rede Nível Rede Li it E ª If áti Licenciatura Engª Inf ormática 2º Semestre 2009/2010 Prof. José Rogado jose dot rogado at ulusofona dot pt Universidade Lusófona Nível Rede 41

RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Embed Size (px)

Citation preview

Page 1: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

R d d C dRedes de Computadores

Nível RedeNível Rede

Li i t E ª I f átiLicenciatura Engª Informática

2º Semestre 2009/2010

Prof. José Rogadojose dot rogado at ulusofona dot pt

Universidade Lusófona

Nível Rede4‐1

Page 2: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Nível Rede

Objectivos:Descrever os princípios e os serviços associados ao nível rede:

Características dos circuitos de rede

Routing (escolha de rotas)g ( )

Endereçamento

Funcionamento de um router

IPv6, mobilidade

Implementação na InternetImplementação na Internet

Nível Rede4-2

Page 3: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Nível RedeIntrodução

Circuitos virtuais e 

Algoritmos de routingLink state

datagramas

IP: Internet Protocol

Vector distância

Routing hierárquico

Formato dos datagramas

Esquema de endereçamento IPv4

Routing na InternetRIP

OSPFIPv4

ICMP

IPv6

OSPF

BGP

Routing em brodacast eFuncionamento de um Router

Routing em brodacast e multicast

Nível Rede4-3

Page 4: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Serviços do Nível RedeEncapsular os segmentos em datagramas no emissor 

Encaminhar segmentos do emissor ao receptor

Entregar os segmentos ao nível de transporte no receptorreceptor 

Os protocolos do nível rede estão em todos os hosts eestão em todos os hosts e routers

O router examina o headerde todos os datagramas

Nível Rede4‐4

Page 5: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Funcionalidades principaisForwarding:mover pacotes no interior do

Analogias:pacotes no interior do router desde a interface de entrada até à 

Forwarding: escolha da direcção certa numa

interface de saída apropriada

direcção certa numa rotunda

Routing: determinar a rota a seguir pelos 

d d i

Routing: planeamento de uma viagem desde a 

pacotes desde a origem até ao destino 

gorigem ao destino

Utilização de algoritmos de Routing

Nível Rede4‐5

Page 6: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Relação entre routing e forwarding

Nível Rede4‐6

Page 7: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Modelo de Serviço do Nível Rede

Modelo de Serviço associado ao encaminhamento de datagramas através de um canal entre um emissor e datagramas através de um canal entre um emissor e um receptor:Serviços associados a Serviços associados a umServiços associados a 

datagramas isolados:

Garantir a entrega

Serviços associados a um fluxo de datagramas:

Entrega ordenadaGarantir a entrega

Garantir a entrega dentro de um intervalo específico

Entrega ordenada

Garantia de largura de banda mínimapRestrições nos tempos de separação entre a entrega dos pacotes (jitter)

Nível Rede4-7

Page 8: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Nível RedeIntrodução

Circuitos virtuais e 

Algoritmos de routingLink state

datagramas

IP: Internet Protocol

Vector distância

Routing hierárquico

Formato dos datagramas

Esquema de endereçamento IPv4

Routing na InternetRIP

OSPFIPv4

ICMP

IPv6 Funcionamento de um

OSPF

BGP

Routing em broadcast eIPv6 Funcionamento de um Router

Routing em broadcast e multicast

Nível Rede4-8

Page 9: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Tipos de Serviço do Nível Rede

Em algumas arquitecturas de rede, existe uma funcionalidade adicional associada ao nível redefuncionalidade adicional associada ao nível rede

ATM, X.25, Frame Relay (ver cap. V)

Antes do envio dos datagramas, dois hosts e os routers g ,(ou switches na terminologia ATM) envolvidos estabelecem uma ligação virtual

Participação activa dos routers (ou switches)Participação activa dos routers (ou switches)

Existem assim dois tipos de serviços do nível rede:Circuito Virtual que fornece serviços com conexãoCircuito Virtual que fornece serviços com conexão

Datagrama que fornece serviços sem conexão 

Nível Rede4-9

Page 10: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Arquitectura ATM O ATM é um protocolo de comutação de pacotes (células) que utiliza Circuitos Virtuais para realizar o encaminhamento entre i d iorigem e destino

Situa‐se em principio no nível 2 embora forneça funcionalidades de encaminhamento

Mais detalhes no próximo capítulo…

Nível Rede4‐10

Page 11: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Características dos Modelos de Serviço

Network Service CongestionGuarantees ?

ç

NetworkArchitecture

I t t

ServiceModel

b t ff t

Bandwidth

none

Loss

no

Order TimingCongestionfeedback

(i f dInternet

ATM

best effort

CBR

none

constant

no

yes

no

yes

no

yes

no (inferredvia loss)no

ATM VBRrateguaranteedrate

yes yes yescongestionnocongestion

Constant Bit Rate

Variable Bit Rate

ATM

ATM

ABR

UBR

guaranteed minimumnone

no

no

yes

yes

no

no

gyes

noAvailable Bit Rate

ATM UBR o e o yes no noUnspecified Bit Rate

Nível Rede4-11

Page 12: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Circuitos Virtuais (CV)

CV: Semelhante a um circuito telefónicoA nível da performance

Ao nível das acções realizadas pela rede ao longo do caminho

Estabelecimento e finalização de ligação separadas da transmissão dosEstabelecimento e finalização de ligação separadas da transmissão dos dados

Cada pacote transporta o identificador do CV e não o endereço de d tidestino

Cada router no caminho mantém um estado para cada conecção estabelecida

Recursos da ligação e dos routers (largura de banda e buffers) podem ser alocados a um dado CV

Nível Rede4-12

Page 13: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Implementação de Circuitos Virtuais

Um CV consiste de:1 Um caminho da origem ao destino1. Um caminho da origem ao destino2. Número de CV: um número para cada segmento da ligação 3. Tabelas de encaminhamento em cada router utilizado

Cada pacote que circula num CV é identificado pelo número do circuitoO número de CV do pacote muda em cada ligaçãoO número de CV do pacote muda em cada ligação

O número de cada novo CV é obtido da tabela de encaminhamento

Os routers (ou switches) mantêm informação de estado associada a cada circuito virtual

Cada vez que é criado um novo CV é inserido um elemento naCada vez que é criado um novo CV é inserido um elemento na tabela de encaminhamento de cada router

Nível Rede4-13

Page 14: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Tabelas de EncaminhamentoNúmero de CV

12 22 32

Número de interface

Elementos das tabelas de encaminhamento nos routers R1 e R2R t If d E t d CV d i If d S íd CV d d tiRouter If. de Entrada CV de origem If. de Saída CV de destino

R1 1 12 2 22 … … … … …

… … … …R2 1 22 2 32

Nível Rede4-14

… … … … …

Page 15: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Protocolos de Sinalização

Utilizados para criar, manter e remover circuitos virtuais

Utili d ATM X 25 F R lUtilizados em ATM, X.25 e Frame‐Relay

Não utilizados no Internet Protocol

applicationapplication

1. Initiate call 2. Incoming call

3. Accept call4. Call connected

transportnetworkdata link

applicationtransportnetwork

5. Data flow begins 6. Receive data

data linkphysical data link

physical

Nível Rede4‐15

Page 16: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Redes DatagramaNão existe estabelecimento de conecção no nível rede

Não existe o conceito de conecção

Os routers não guardam estado relativamente às conecções end‐to‐endOs routers não guardam estado relativamente às conecções end to end

Os pacotes são encaminhados utilizando o endereço do host de destinoPacotes sucessivos entre os mesma origem e destino podem seguir 

i h ( ) difcaminhos (rotas) diferentes

applicationli ti

pptransportnetworkdata link

applicationtransportnetwork1. Send data 2 Receive datadata link

physical data linkphysical

2. Receive data

Nível Rede4‐16

Page 17: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Routing em Redes Datagrama

A determinação do caminho a seguir em cada router é determinada pela análise do endereço de destino

Em cada router existe uma tabela de encaminhamento

Cada elemento da tabela associa um intervalo de endereços a um interface de saídainterface de saída

O router faz seguir (forward) o pacote pela interface associada ao intervalo a que pertence o endereço de destino

0000-0111 11000 1011 2

12 1000-1011 2

1100-1111 3

2

3

Nível Rede4-17

Page 18: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Exemplo232: 4 mil milhões de possibilidadesRouter com 4 interfaces de saída

Endereço de 32 bits

Intervalo do Endereço de Destino Interface de saída

11001000 00010111 00010000 00000000até 0

11001000 00010111 00010111 11111111

11001000 00010111 00011000 00000000até 1

11001000 00010111 00011000 1111111111001000 00010111 00011000 11111111

11001000 00010111 00011001 00000000até 2até 2

11001000 00010111 00011111 11111111

senão 3

Nível Rede4-18

senão 3

Page 19: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Redução do número de elementos

P fi I t f d íd

Prefix Matching: comparação de parte mais significativa do endereço

Prefixo Interface de saída

11001000 00010111 00010 0

11001000 00010111 00011 1

11001000 00010111 00011000 2

senão 3

Exemplos

Q i f ?

ED: 11001000 00010111 00011000 10101010

ED: 11001000  00010111  00010110  10100001  Que interface?

Que interface?

0

2ED: 11001000  00010111  00011000  10101010  Que interface?

É escolhida a interface que corresponde ao maior prefixo comum ! 

2

Nível Rede4‐19

Page 20: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Redes Datagrama ou Circuito Virtual?

InternetTransferência de dados entre computadores

ATMEvoluiu a partir da telefonia

Analogia com o diálogo humanocomputadores

Serviço “flexível”, sem requisitos temporais rigorosos 

Si t fi i “i t li t ”

Analogia com o diálogo humano

Requisitos temporais e de fiabilidade rigorosos 

Sistemas finais “inteligentes”  (computadores)

Podem adaptar‐se, realizar controle ã d

Necessidade de garantir níveis de serviço

Sistemas finais “pouco espertos” e correcção de erros

Simplicidade no interior da rede, complexidade na “periferia”

Telefones

Redes inteligentes

Complexidade no interior da redeSuporta múltiplos tipos de ligação 

Diferentes características

Difícil estabelecer um serviço

Complexidade no interior da rede

Difícil estabelecer um serviço uniforme

Nível Rede4-20

Page 21: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Comparação Redes Datagrama – Circuito Virtual

Nível Rede4-21

Page 22: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Nível RedeIntrodução

Circuitos virtuais e 

Algoritmos de routingLink state

datagramas

IP: Internet Protocol

Vector distância

Routing hierárquico

Formato dos datagramas

Esquema de endereçamento IPv4

Routing na InternetRIP

OSPFIPv4

ICMP

IPv6

OSPF

BGP

Routing em brodacast eFuncionamento de um Router

Routing em brodacast e multicast

Nível Rede4-22

Page 23: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Internetworking

Internet: o protocolo IP permite interligar uma enorme 

Nível Rede4‐23

diversidade de redes heterogéneas

Page 24: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

O Nível Rede da InternetFuncionalidades do nível rede (Hosts e Routers):

IP protocol

Transport layer: TCP, UDP

Routing protocols•path selection•RIP, OSPF, BGP

IP protocol•addressing conventions•datagram format•packet handling conventionsNível

forwardingtable

ICMP protocol•error reporting

Rede

•router “signaling”

Link layer

Physical layer

Nível Rede4‐24

Page 25: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Formato dos Datagramas IP

ver length

32 bitsIP protocol version

numberheader length

total datagramlength (bytes)head. type ofver length

16‐bit identifier

Headertime to

(bytes)

max number

forfragmentation/reassembly

len service“type” of data 

flgsfragmentoffset

upper Headerchecksum

time tolive

32 bit source IP address

max numberremaining hops

(decremented at each router)

yupperlayer

eac oute )

upper layer protocolto deliver payload to

32 bit destination IP address

Options (if any) E.g. timestamp,

Data (variable length,

record routetaken, specifylist of routers 

i i

Overhead TCP+IP:

20 bytes of TCP( g ,typically a TCP or UDP segment)

to visit.20 bytes of IP

= 40 bytes + app layer overhead

Nível Rede4‐25

y

Page 26: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

O Header IP

O cabeçalho do Protocolo Internet IPv4O cabeçalho do Protocolo Internet IPv4

Total: 20 bytes

Nível Rede4-26

Page 27: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

O Header IP (I)Version” ‐ versão do protocolo IP  utilizada. Já disponível versão 6, utiliza‐se contudo maioritariamente a versão 4.IHL ‐ IP Header Length: Número de conjuntos de 32 bits que o cabeçalho tem, sendo o valor mínimo 5 (valor por defeito).( p )TOS ‐ Type of Service: permite a indicação do tipo de serviço pretendido

Actualmente começam a ser utilizados pelos DiffServ (Serviços Diferenciados) e ECN (explicit Congestion Notification)V di it li d i i t t l id d fi bilid dVoz digitalizada ‐mais importante a velocidade que a fiabilidade.Transferência de ficheiros ‐mais importante a ausência de erros que a velocidade.Os primeiros três bits do campo são a “precedence” de 0 – normal a 7 – (Network control packet) de seguida existem três flags D, T e R (Delay, Throughput e p ) g g , ( y, g pReliability). Informação deveria ser utilizada pelos routers para escolher quel a encaminhamento a escolher (satélite, linha alugada, etc.) na prática os routers ignoram este campo.

Total length  ‐ comprimento total do datagrama. máximo de 65.535 bytes.g p g yIdentification – para o host destino determinar a que datagrama um novo fragmento pertence. Todos os fragmentos do mesmo datagrama contêm o mesmo valor no campo “Identification”.DF Don’t Fragment bit indica que a máquina destino deve receber o datagrama na suaDF – Don t Fragment bit indica que a máquina destino deve receber o datagrama na sua totalidade e não em fragmentos, todas as máquinas devem estar preparadas para aceitar fragmentos de 576 bytes ou menos.

Nível Rede4-27

Page 28: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

O Header IP (II)MF – More Fragments bit, serve para indicar que que o datagrama contém mais fragmentos, apenas o último dos fragmentos não terá este bit posicionado a 1.Fragment Offset ‐ posição que o fragmento deve ocupar no corrente datagrama. Fragmentos excepto último são múltiplos de 8 bytes Máx de 8192Fragmentos, excepto último são múltiplos de 8 bytes. Máx de 8192 fragmentos/datagrama‐máx de 65.536 bytes mais um que max Total length.Time to live ‐ contador para limitar o tempo de vida útil de um pacote na rede. (segundos ‐máximo de 255 s. Decrementado em cada nó ou fila de espera até atingir o valor zero quando é eliminado pela redequando é eliminado pela rede.Protocol ‐ indica a que protocolo de transporte o datagrama pertence. (TCP e UDP ‐definidos no RFC 1700).Header Checksum ‐ detecção erros de transmissão no cabeçalho. Recalculado em cada ç çnó da rede uma vez que pelo menos o campo Time to Live é modificado.Source Address e Destination Address ‐ endereços origem e destino.Options ‐ acrescentado até um múltiplo de quatro bytes. (Security, Source Routing, Record route TimestampRecord route, Timestamp.

Nível Rede4-28

Page 29: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Fragmentação e Assemblagem IPNem todas as ligações de rede utilizadas pelo IP têm o mesmo tamanho de trama

MTU: Max. Transfer Unit

Ethernet: 1500 bytes

ATM: 48 bytes

Os datagramas IP são divididos em “fragmentos” pela rede

Cada fragmento é enviado num novo datagrama

Os fragmentos são assemblados no destino

Os bits do header IP são utilizados para identificar e ordenar os fragmentosordenar os fragmentos relacionados

Nível Rede4-29

Page 30: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Fragmentação e Assemblagem IP

ID=x

offset=0

fragflag=0

length=4000Exemplo

O datagrama inicial é fragmentado em vários datagramas de comprimento inferior

Exemplo

Datagrama de 4000 bytes

ID=x

offset=0

fragflag=1

length=1500

MTU = 1500 bytes

1480 bytes de dados  x 011500

ID=x

offset=185

fragflag=1

length=1500

(1500 – 20 do header)

offset = 1480/8 

ID=x

offset=370

fragflag=0

length=1040

O flag é posicionado em todos os fragmentos excepto 

O offset é indicado em múltiplos de 8 bytes !

g pno último

Nível Rede4‐30

Page 31: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Endereçamento IP: IntroduçãoEndereço IP: identificador de 32bits de cada interface de rede dos hosts e routersrede dos hosts e routers

Interface: dispositivo que realiza a ligação entre o g çhost/router e o meio físico

Os routers têm geralmente múltiplos interfacesmúltiplos interfaces

Os hosts geralmente têm um só interface

d f dCada interface tem um endereço IP associado

223.1.1.1 = 11011111 00000001 00000001 00000001

Nível Rede4-31223 1 11

Page 32: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Partições Rede com 3 partições

ti ãO endereço IP é dividido em duas zonas:

partição

N.º de rede (bits de maior peso)

N.º de host (bits de menor (peso) 

O que é uma partição ?É caracterizada pelo facto deÉ caracterizada pelo facto de todos as interfaces terem o mesmo número de rede

Nã d t li dNão poderem estar ligadas fisicamente sem ser através de um router

networkaddress

hostaddress

11011111 00000001 00000001 00000000

223.1.1.0/24

Nível Rede4-32

Page 33: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Partições do Laboratório (com gateways)

Nível Rede4-33

Page 34: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Partições do Laboratório (com router)

Sala Q3.1

Sala Q3.2

Sala Q2.5

Nível Rede4-34

Sala Q2.5

Page 35: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Partições do Laboratório (conectividade)

Nível Rede4-35

Page 36: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Tabela de Roteamento do Laboratório

Tabela do roteamento do Router

Nível Rede4-36

Page 37: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Versão com Gateways

Nível Rede4-37

Page 38: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Tabela de Roteamento Gateway1Gateway de acesso à rede 192.168.10.0/24

Cada servidor de bancada tem uma tabela de roteamento equivalente

Nível Rede4-38

Page 39: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Tabela de Roteamento Gateway2Gateway de acesso à rede 192.168.20.0/24

Cada servidor de bancada tem uma tabela de roteamento equivalente

Nível Rede4-39

Page 40: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

IP: Classes de Endereçamento

Nível Rede4-40

Page 41: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Endereços IP

XXX.XXX.XXX.XXX      =>    nnn.nnn.hhh.hhh em que XXX ‐ Valor de 0 a 255 ( 00 a FF em Hexadecimal)nnn – REDE   e  hhh – HOST

CLASSES       DECIMAL          HEXADECIMAL                  FORMATOA 0 127 00 7F hhh hhh hhhA              0   a 127                00 ‐ 7F                       nnn.hhh.hhh.hhh

127 Redes com 16.516.350 Hosts

B 128 a 191 80 8B nnn nnn hhh hhhB              128 a 191              80 ‐ 8B                       nnn.nnn.hhh.hhh16.002 Redes com 64.770 Hosts

C 192 a 223 C0 ‐ DF nnn.nnn.nnn.hhhC              192 a 223             C0  DF                       nnn.nnn.nnn.hhh1.999.996 Redes com 254 Hosts

Aproximadamente 2 Biliões de Endereços Tcp/IpE não chegam !!

Aproximadamente 100 Triliões de Endereços Ethernet

Nível Rede4-41

Page 42: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Endereços IP Especiais

Nível Rede4-42

Page 43: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Endereçamento IP: CIDR

CIDR: Classless InterDomain RoutingCIDR: Classless InterDomain RoutingA zona atribuída à subnet é de tamanho arbitrário

O formato utilizado é a b c d/x onde x é o número deO formato utilizado é a.b.c.d/x , onde x é o número de bits utilizados pela zona da subnet

subnetpart

hostpart

11001000 00010111 00010000 00000000p

200 23 16 0/23200.23.16.0/23

Nível Rede4-43

Page 44: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Mascaras de Rede (Netmasks)As mascaras de rede (netmasks) permitem extrair o número de rede de um endereço IP através de uma operação lógica simples (AND)

Netmask classe A ‐> 255.0.0.0Netmask classe A   255.0.0.0

Netmask classe B ‐> 255.255.0.0

Netmask classe C ‐> 255.255.255.0

N k CIDR

Exemplo:IP: 192.168.10.12

Netmask: 255.255.255.0Netmask CIDR

192.168.10.0/22 ‐> 255.255.252.0

192.168.20.0/26 ‐> 255.255.255.192

Netmask: 255.255.255.0

Rede: 192.168.10.0

HostNetwork Endereço IP

11111111111111111111 000000000000000000 Netmask

(AND)

Network 000000000000000000

(AND)

Nº de Rede

Nível Rede4-44

Page 45: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

NAT: Network Address TranslationJustificação: Os endereços IP são escassos em IPv4 !

A utilização do NAT permite que uma rede local utilize apenasA utilização do NAT permite que uma rede local utilize apenas um endereço IP para aceder ao exterior:

Evita a necessidade de alocação de uma gama de endereços IP por parte ç g ç p pdo ISP: apenas um endereço é utilizado para todos os dispositivos

É possível modificar endereços dos dispositivos na rede local sem notificar o mundo exteriornotificar o mundo exterior

Pode‐se mudar de ISP sem mudar os endereços dos dispositivos na rede local

Os dispositivos no interior da rede local não endereçáveis explicitamente podem ser acedidos a partir da rede externa ‐> segurança adicional.

Nível Rede4-45

Page 46: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

NAT: Network Address Translation

d l lR d

Exemplo

10.0.0.1

Rede local(ex., rede doméstica)

10.0.0/24

Resto daInternet

10.0.0.210.0.0.4

138 76 29 7

10.0.0.3

138.76.29.7

Todos os datagramas à saída de uma rede local têm o mesmo e único d d i IP 138 76 29 7

Os datagramas com origem ou destino na rede local

endereço de origem IP: 138.76.29.7 e diferentes números de portos de 

origem

têm 10.0.0.x como endereços de origem ou destino

Nível Rede4‐46

Page 47: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

NAT: ImplementaçãoUm router que implemente NAT efectua as seguintes operações:

À saída: substituir os campos (endereço IP de origem, n.º de ) d d d íd ( d IP NATporto) em todos os datagramas de saída por (endereço IP‐NAT, 

novo n.º de porto)Os clientes/servidores remotos responderão utilizando / p(endereço IP‐NAT, novo n.º de porto) como endereço destino.

Memorizar (na tabela de translação NAT) todos as correspondências entre (endereço IP de origem n º de porto) ecorrespondências entre (endereço IP de origem, n.º de porto) e (endereço IP‐NAT, novo n.º de porto)À entrada: substituir os campos (endereço destino IP‐NAT, novo º d t ) d t d d t d h d ln.º de porto) de todos os datagramas de chegada pelos 

correspondentes (endereço IP de origem, n.º de porto) armazenados na tabela NAT

Nível Rede4-47

Page 48: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

NAT: Funcionamento

1: host 10.0.0.1 i d t

NAT translation tableWAN side addr LAN side addr2: router NAT

envia datagrama para 128.119.40.186, 80

WAN side addr        LAN side addr

138.76.29.7, 5001   10.0.0.1, 3345……                                         ……

Muda o source addrdo datagrama de10.0.0.1, 3345 para

10.0.0.1

S: 10.0.0.1, 3345D: 128.119.40.186, 80

1

138.76.29.7, 5001,e actualiza tabela

10.0.0.2

1

10.0.0.4

138 76 29 7

S: 138.76.29.7, 5001D: 128.119.40.186, 802

10.0.0.3

138.76.29.7 S: 128.119.40.186, 80 D: 10.0.0.1, 3345 4

S: 128.119.40.186, 80 D: 138.76.29.7, 5001 3

3: Chega resposta4: router NATM d d dd d3: Chega resposta

para dest. address:138.76.29.7, 5001

Muda o dest addr dodatagrama de 138.76.29.7, 5001 para 10.0.0.1, 3345

Nível Rede4‐48

Page 49: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Diferentes tipos de NAT (I)Source: http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_7-3/anatomy.html

NAT SimétricoÉ estabelecido um mapeamento entre um endereço e porto internos e um endereço e porto externo

Esse mapeamento só pode ser utilizado pelos dois intervenientes para enviar e receber dados

Nível Rede4-49

Page 50: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Diferentes tipos de NAT (II)Source: http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_7-3/anatomy.html

Full Cone NATÉ estabelecido um mapeamento entre um endereço e porto internos e um endereço e porto externo

Esse mapeamento pode ser utilizado por qualquer endereço e portos externos para enviar dados 

d t i tpara o endereço e porto internos

Outros tipos de NAT:Address Restricted Cone NAT

Port Restricted Cone NAT

Ver link para mais detalhes

Nível Rede4-50

Page 51: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Considerações sobre a utilização do NAT

Campo número de porto tem 16‐bits:É possível ter cerca de 60.000 ligações simultâneas com um único endereço de à saída LAN!

A utilização do NAT é controversa:Os routers devem apenas processar protocolos só até ao nível 3p p p• O router modifica o porto que é um conceito do nível 4 !

Viola argumentos a favor do ponto‐a‐ponto• a possibilidade NAT deve ser tida em conta por designers de aplicações, i.e., p p g p ç , ,aplicações P2P

• Cria problemas ao VoIP

As limitações de endereçamento IP deveriam ser resolvidas ç çpelo IPv6

Mas a realidade é que o NAT é utilizado por todo o lado !

Nível Rede4-51

Page 52: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

ICMP: Internet Control Message Protocol

Utilizado por hosts e routers para comunicar informação ao nível redeao nível rede

Comunicação de erros: unreachable host, network, port, protocolp , p

Echo request/reply (utilizado pelo ping)

Implementado “em cima” do IP:Implementado em cima do IP:

As mensagens ICMP são transportadas em datagramas IP

Mensagem ICMP: contém “type”, “code” mais os 8 primeiros bytes do datagrama IP que causou o erro

Nível Rede4-52

Page 53: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

ICMP – Tipos de Mensagens

5-61

Nível Rede4-53

Page 54: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Comando Traceroute e ICMPOrigem envia séries de segmentos UDP para destino

Quando a mensagem ICMP chega, a origem calcula o RTT

1º tem TTL=1

2º tem TTL=2, etc.

Traceroute faz isto 3 vezes

N.º de porto incoerente

Quando o datagrama n chega ao router n:

Critério de paragem

Segmento UDP acaba por chegar ao host de destinorouter n:

O router descarta o datagrama

ao host de destino

O n.º de porto enviado não corresponde a nenhum válidog

Envia para a origem uma mensagem ICMP 11: “Time to 

p

Destinatário devolve um pacote ICMP “host unreachable” (type 3, d )Live Expired”

Mensagem inclui nome do router e endereço IP

code 3)

Quando a origem obtém este ICMP pára

Nível Rede4-54

router e endereço IP ICMP, pára.

Page 55: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Nível RedeIntrodução

Circuitos virtuais e 

Algoritmos de routingLink state

datagramas

IP: Internet Protocol

Vector distância

Routing hierárquico

Formato dos datagramas

Esquema de endereçamento IPv4

Routing na InternetRIP

OSPFIPv4

ICMP

IPv6

OSPF

BGP

Routing em brodacast eFuncionamento de um Router

Routing em brodacast e multicast

Nível Rede4-55

Page 56: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

IPv6Origem em 1990, para suceder ao IPv4

RFC 2460

h // f f / / / d h lhttp://www.rfc‐ref.org/RFC‐TEXTS/2460/index.html

Motivação inicial: espaço de endereçamento de 32‐bit está esgotadoesgotado.

Motivação adicional:Formato do cabeçalho ajuda a acelerarFormato do cabeçalho ajuda a acelerar processamento/encaminhamento

Cabeçalho muda para facilitar QoS

Formato datagrama IPv6:Cabeçalho de comprimento fixo 40 bytes

A gestão da fragmentação é retirada do header principal e gerida separadamente num header adicional

Nível Rede4-56

Page 57: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Datagrama IPv6

Principais característicasT h d b lh fi d 40 b tTamanho de cabeçalho fixo de 40 bytesOs campos de endereços passaram para 128 bitsIntrodução do conceito de fluxo e tipo de tráfego

Nível Rede4-57

ç p gNão tem campo de checksum nem de gestão de fragmentos

Page 58: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

IPv6: Outras Mudanças

Checksum: eliminada totalmente para reduzir o tempo de processamento em cada hopprocessamento em cada hop.Fragmentation: gerida ponto a ponto pelo emissor e receptor dos pacotes e não pelos routersOptions: permitidas, mas fora do cabeçalho, indicado pelo campo “Next Header”ICMPv6: nova versão do ICMPICMPv6: nova versão do ICMP

Tipos de mensagens adicionais, i. e. “Packet Too Big”Grupo multicast de funções de gestão

Nível Rede4-58

Page 59: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Fragmentação IPv6

Fragment Header

Nível Rede4-59

Page 60: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Protocolo IPv6Convergência Internet e Redes de Telecomunicações (comutação IP) => processo de transição  IPv4 => IPv6Version – mantém‐se do IPv4 terá sempre o valor fixo 6.pTraffic Class ‐ distingue entre pacotes com diferentes requisitos de entrega em tempo real. 

Campo sempre presente mesmo no IPv4 (TOS), nunca usado de forma generalizada. Sugestão: 0 e 7 para transmissões que sejam capazes de reduzir a sua actividade emSugestão: 0 e 7 para transmissões que sejam capazes de reduzir a sua actividade em caso de congestão. 8 e 15 para tráfego em tempo real, com taxa de envio constante (Por exemplo Áudio e Vídeo). Sug. 1 para News, 4 para FTP e 6 para Telnet.

Flow Label ‐ Permite quer ao emissor quer ao destinatário definir uma pseudo‐ligação com propriedades e requisitos particulares como por exemplo um fluxoligação com propriedades e requisitos particulares, como por exemplo um fluxo de pacotes de um processo de um host origem para um processo num hostdestino com determinados requisitos em termos de atraso e de largura de banda. Payload length ‐ indica quantos bytes se seguem ao cabeçalho de 40 bytes e corresponde ao campo “Total Length” do protocolo IPv4, o nome foi mudado em virtude do seu significado ter mudado ligeiramente (os bytes do cabeçalho não são contados como eram anteriormente).)

Nível Rede4-60

Page 61: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Header IPv6Next Header ‐ existe para permitir a indicação de quais dos possíveis seis cabeçalhos de extensão que seguem, caso existam. Se este cabeçalho é o último cabeçalho então o campo next header indica para que protocolo de t t d d t (TCP UDP )transporte deve ser passado o pacote (TCP, UDP, …).Hop Limit ‐ utilizado para prevenir que os pacotes permaneçam para sempre na rede, substitui o campo “Time to Live” do protocolo IPv4, mudou de nome por ser originalmente definido para representar segundos e não ser assim que é g p p g qefectivamente utilizado, mas sim decrementado em cada nó da rede. Source Address e Destination Address ‐ Endereços origem e destino de 16 bytes para substituir os endereços de 4 bytes do IPv4. Definida uma nova notação com oito grupos de quatro dígitos hexadecimais (16 bits) com “:” entrenotação com oito grupos de quatro dígitos hexadecimais (16 bits) com  :  entre cada grupo. Zeros à esquerda podem ser omitidos e um ou mais grupos de 16 bits zero podem ser substituídos por dois “:”Endereço 8000:0000:0000:0000:0123:4567:89AB:CDEF poderá ser 

t drepresentado por 8000::123:4567:89AB:CDEF

Os endereços IPv4 podem ser representados ::192.31.20.46

Nível Rede4-61

Page 62: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Protocolo IPv6: Extensões“Extension Headers”

Alguns campos adicionais podem ser necessáriosO IPv6 introduziu a possibilidade de utilizar “extensionheaders” opcionais que são incluídos depois do header inicial e referidos pelo campo “Next Header”p p

Nível Rede4-62

Page 63: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Transição de IPv4 Para IPv6

A compatibilidade de IPv6 com IPv4 é possível mas o contrário nãocontrário nãoNem todos os routers podem ser actualizados simultaneamentesimultaneamente

É impossível declarar um dia em que se faria a mudança de todo o parque informático global

Dual Stack: elementos activos capazes de falar os dois protocolosTunneling: IPv6 transportado como dados no datagrama IPv4 entre routers IPv4

Nível Rede4-63

Page 64: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Dual Stack

No caso de haver um troço de rede com IPv4 entre a origem e o destino as características do IPv6 não são mantidas de ponto a pontodestino, as características do IPv6 não são mantidas de ponto a ponto

Nível Rede4-64

Page 65: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Tunneling

No caso do tunneling, as características do IPv6 são mantidas ponto a ponto, excepto no troço em que só há IPv4

A-to-B:IP 6

E-to-F:IP 6B-to-C: B-to-C:

Nível Rede4-65

IPv6 IPv6IPv6 insideIPv4

IPv6 insideIPv4

Page 66: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Nível RedeIntrodução

Circuitos virtuais e 

Algoritmos de routingLink state

datagramas

IP: Internet Protocol

Vector distância

Routing hierárquico

Formato dos datagramas

Esquema de endereçamento IPv4

Routing na InternetRIP

OSPFIPv4

ICMP

IPv6

OSPF

BGP

Routing em brodacast eFuncionamento de um Router

Routing em brodacast e multicast

Nível Rede4-66

Page 67: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

RoutersRouter ‐ Equipamento activo que liga várias redes e realiza o encaminhamento de pacotes com base em algoritmos e tabelas de encaminhamento.de encaminhamento.

Também pode impedir ou filtrar a passagem de certos tipos de pacotes.

Actua no nível rede (nível 3 do modelo OSI).

Nível Rede4-67

Page 68: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Resumo da Arquitectura de um Router

Q Duas funções chave:Correr algoritmos/protocolos de routing (RIP, OSPF, BGP)

Quatro componentes:Portas de EntradaMalha de Comutação

encaminhar datagramas da ligação de chegada para a de saída

Ma ha mutaçãProcessador de encaminhamentoPortas de Saída

Malha

dede

Comutação

Nível Rede4-68

Page 69: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Funcionalidade das Portas de Chegada

Nível Físico:

Processamento do Pacote:Conhecido o destino de um datagrama a porta

recepção nível bit

Nível Ligação:d l t Conhecido o destino de um datagrama, a porta 

de saída é seleccionada através das tabelas de encaminhamento.Objectivo: completar o processamento do pacote 

desencapsulamento

j p p pde chegada à ‘velocidade da linha’Queuing: se os datagramas chegam mais rapidamente que a taxa de encaminhamento na 

Nível Rede4-69

malha de comutação.

Page 70: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Três tipos de malha de comutaçãop ç

Nível Rede4-70

Page 71: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Comutação através de Memória

InputPort

OutputPort

Memory

Routers de primeira geração:

System Bus

p m g çComputadores tradicionais com comutação realizada através de controle directo do CPU Pacotes copiados para a memória do sistemaA velocidade é limitada pelo tempo de acesso da p pmemória

O encaminhamento de um datagrama implica dois acessos à ó i ( it l it )

Nível Rede4-71

à memória (escrita e leitura)

Page 72: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Comutação através de Bus

O datagrama passa da memória de entrada para a memória de saída através de um Bus partilhadoContenção no Bus: a velocidade de comutação está limitada pela largura de banda do BusCisco 1900: Bus com 1 Gbps, suficiente para routers p pempresariais mas não para routers regionais ou de backbones

Nível Rede4-72

Page 73: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Comutação através de Crossbar

Ultrapassa as limitações da largura de banda do buslargura de banda do busRedes de interligação inicialmente desenvolvidas para máquinas paralelasmáquinas paralelasDesign avançado: os datagramas são fragmentados em células de 

i fi ãcomprimento fixo que são comutadas através da malhaCisco 12000: permite débitos de p~100 Gbps através da rede de interligação

Nível Rede4-73

Page 74: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Funcionalidade das Portas de Saída

Buffering necessário quando os datagramas chegam mais rapidamente do que a taxa de emissão de saídarapidamente do que a taxa de emissão de saída

Algoritmo de escalonamento selecciona datagrama da fila de espera para emissãode espera para emissão

Nível Rede4-74

Page 75: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Nível RedeIntrodução

Circuitos virtuais e 

Algoritmos de routingLink State

datagramas

IP: Internet Protocol

Vector Distância

Routing Hierárquico

Formato dos datagramas

Esquema de endereçamento IPv4

Routing na InternetRIP

OSPFIPv4

ICMP

IPv6 Funcionamento de um

OSPF

BGP

Routing em broadcast eIPv6 Funcionamento de um Router

Routing em broadcast e multicast

Nível Rede4-75

Page 76: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Algoritmos de Routing

Determinam as rotas ou caminhos entre um router de origem e umaentre um router de origem e uma rede de destino

Permitem construir as tabelas de i h t i t tencaminhamento existentes em 

todos os routers de uma rede

A quantidade de routers e sub‐redes existentes na Internet implica a utilização de vários níveis de algoritmosalgoritmos

Algoritmos inter‐organizacionais

Algoritmos intra‐organizacionais

O i ã A SOrganização: Autonomous System (AS)

Nível Rede4-76

Page 77: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Abstracção utilizada: Grafos

• Os algoritmos de routing abstraem a topologia da rede sob a forma de grafos• Utilizam a noção de custo para Utilizam a noção de custo para determinar o “peso” de uma ligação na determinação de uma rota• Custo da ligação (x1, x2) = c(x1, x2) g ç ( 1, 2) ( 1, 2)• Ex: c(w,z) = 5• O custo pode ser 1 por cada troço, ou ser inversamente relacionado com a largura de banda ou factor de congestão

Custo do caminho (x1, x2, x3,…, xp) = c(x1,x2) + c(x2,x3) + … + c(xp-1,xp)

Pergunta: Qual é o caminho de menor custo entre u e z ?

Algoritmo de Routing: calcula os caminhos de menor custo entre os nós de um grafo de uma rede

Nível Rede4-77

menor custo entre os nós de um grafo de uma rede

Page 78: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Classificação dos Algoritmos de Routing

Informação central ou descentralizada?

Estáticos ou dinâmicos?

Central:Todos os routers têm completa informação sobre a topologia e custo

Estáticos:As rotas mudam pouco frequentemente no tempo

informação sobre a topologia e custo de toda a redeAlgoritmos “Link State”‐ LS

Dinâmicos:As rotas mudam mais frequentemente

Descentralizada:Os routers só conhecem os vizinhos a que estão fisicamente ligados e os custos dessas ligações

qNecessidade de actualização periódica em resposta a mudanças de topologia ou custos de ligação

custos dessas ligaçõesProcesso iterativo de cálculo e troca de informação entre routers vizinhosAlgoritmos “Distance Vector”‐ DVg

Nível Rede4-78

Page 79: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Routing Hierárquico

A aproximação utilizada pelos algoritmos LS e DV não é realnão é real

Os routers não são todos idênticosA rede não é um grafo linear -> antes uma rede de redes

Problemas de escala:Mais de 200 milhões de

Autonomia administrativaInternet = rede de redes

g

Mais de 200 milhões de destinos:

Não se podem guardar todos numa tabela de routingO l d d d it t

Internet = rede de redesCada administrador de rede pode querer implementar uma política de routing específica na sua organização

O volume de dados respeitante a trocas de tabelas poderia saturar a rede !

A solução é dividir o espaço de roteamento global em parcelas mais pequenas e aplicar os algoritmos a vários níveis

Nível Rede4-79

Page 80: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Routing Hierárquico: princípios

Agregação de routers em regiões denominadas “Autonomous Systems” (AS)m y m ( )

Correspondendo a uma organização ou domínioOs routers numa mesma AS utilizam o mesmo protocolo interno

Protocolo de routing “intra-AS”O AS di i d ili dif Os routers em AS distintos podem utilizar diferentes protocolos

Um ou mais routers de um AS são designados Um ou mais routers de um AS são designados Gateway Router e estabelecem ligações permanentes com os routers correspondentes dos p pAS a que estão ligados

Protocolo de routing “inter-AS”

Nível Rede4-80

Page 81: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Interligação de ASs??

A tabela de routing é configurada pelos algoritmos inter e intra-AS

Intra AS configura as rotas para Intra-AS configura as rotas para os destinos internosIntra-AS e Inter-AS colaboram

fi ã d s t s na configuração das rotas para destinos externos

Nível Rede4-81

Page 82: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Nível RedeIntrodução

Circuitos virtuais e 

Algoritmos de routingLink State

datagramas

IP: Internet Protocol

Vector Distância

Routing Hierárquico

Formato dos datagramas

Esquema de endereçamento IPv4

Protocolos de RoutingRIP

OSPFIPv4

ICMP

IPv6 Funcionamento de um

OSPF

BGP

Routing em broadcast eIPv6 Funcionamento de um Router

Routing em broadcast e multicast (não há tempo…)

Nível Rede4-82

Page 83: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Routing Intra‐ASg

Também conhecidos como Interior Gateway ProtocolsTambém conhecidos como Interior Gateway Protocols (IGP)

Protocolos Intra‐AS mais comuns:

RIP: Routing Information Protocol

OSPF: Open Shortest Path First

IGRP: Interior Gateway Routing Protocol (desenvolvidoIGRP: Interior Gateway Routing Protocol (desenvolvido pela Cisco)

Nível Rede4-83

Page 84: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

RIP (Routing Information Protocol)Um d s p im i s p t c l s d utin utili d s n Int n tUm dos primeiros protocolos de routing utilizados na Internet

Várias versões: RFCs 1058, 2453, 2080Utiliza um algoritmo de Distance Vector (descentralizado)g ( )Incluído na versão BSD-UNIX Distribution (BSD) em 1982Métrica utilizada: n.º de hops (saltos) entre redes

Max. = 15 hopsA partir do router A:

Nível Rede4-84

Page 85: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

RIP: ImplementaçãoAs tabelas de routing do RIP são geridas por um processo de As tabelas de routing do RIP são geridas por um processo de nível aplicação denominado routed (unix daemon)As mensagens entre routers (advertisements) são enviadas em pacotes UDP e repetidas periodicamentepacotes UDP e repetidas periodicamente

Todos os 30 segundos: lista de destinos dentro da ASSe um router não envia advertisements durante mais de 180 sec. é considerado desligado e retirado das tabelasé considerado desligado e retirado das tabelas

Nível Rede4-85

Page 86: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

RIP: Exemplo (i)

wx yA CB

zt

Destination Network Next Router Num. of hops to dest.

D

Destination Network Next  Router      Num. of hops to dest.x ‐‐ 1y B 2w B 3z B 4t 1t ‐‐ 1

Tabela de Routing em A

Nível Rede4‐86

Page 87: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Dest     Next  hops

RIP: Exemplo (ii)v ‐ 1t ‐ 1z E     2

Advertisementde D para A

wx yA CB

…. …    ...

y

ztv

Destination Network Next  Router      Num. of hops to dest.1

D E

x ‐‐ 1y B 2w B 3w B 3z B D 4 3t ‐‐ 1

Nível Rede4‐87

Tabela de Routing em A

Page 88: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

RIP: ImplementaçãoAs t b l s d ti d RIP sã id s ss d As tabelas de routing do RIP são geridas por um processo de nível aplicação denominado route-d (unix daemon)As mensagens entre routers (advertisements) são enviadas em

t UDP tid i di tpacotes UDP e repetidas periodicamenteTodos os 30 segundosSe um router não envia advertisements durante mais de 180 sec. é id d d li d ti d d t b lé considerado desligado e retirado das tabelas

routed routed

Transport(UDP)

Transport(UDP)

li k

network forwarding(IP) table

li k

network(IP)

( )forwarding

table

physicallink

physicallink

Nível Rede4-88

Page 89: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

OSPF (Open Shortest Path First)Concebido para ser o sucessor do RIP

“Open”: protocolo aberto, acessível publicamenteInumeras versões: RFCs 1131 2328 4750Inumeras versões: RFCs 1131, 2328, 4750.

Utiliza um algoritmo de Link State – Dijkstra (centralizado)Cada nó estabelece um mapa topológico de “toda” a rede do ASR li i di t di i ã d t d Li k St t (30 )Realiza periodicamente disseminação de pacotes de Link State (30mn.) para todos os elementos do AS (flooding)As mensagens OSPF são enviadas directamente em cima de IP

C té f i lid d d l ã RIPContém funcionalidades avançadas em relação ao RIPSegurança: todas as mensagens OSPF são autenticadas Permite caminhos múltiplos com o mesmo custoPara cada ligação, permite múltiplas métricas para diferentes TOS (tipos de serviços)• ex: link satélite pode ter custo baixo para melhor esforço, e alto para tempo real

Integra suporte de unicast e multicastPermite uma organização hierárquica em domínios extensos

Nível Rede4-89

Page 90: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

OSPF Hierárquico

Hierarquia em dois níveis: áreas locais e backbones.

C d ó t t l i d á ó h i h i t B dCada nó tem a topologia da área e só conhece o caminho mais curto para o BorderRouter

Internal Routers: efectuam o roteamento interno na sua área

Area Border Routers: realizam a interface entre uma área e o backbone exportando asArea Border Routers: realizam a interface entre uma área e o backbone, exportando as rotas para as redes internas à área

Backbone routers: efectuam o roteamento entre áreas ligadas ao backbone

Boundary routers: realizam roteamento inter AS com outros AS podendo utilizar outros

Nível Rede4‐90

Boundary routers: realizam roteamento inter‐AS com outros AS, podendo utilizar outros protocolos tais como o BGP

Page 91: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Routing Inter‐AS: BGP

BGP (Border Gateway Protocol): o standard de facto na Internet (RFC 4271)O BGP fornece aos administradores dos Autonomous System (ASs) meios para:

Obt i f ã d ibilid d à b d d AS i i h1. Obter informação de acessibilidade às subredes dos ASs vizinhos2. Propagar a informação de acessibilidade a todos os routers 

internos de um mesmo AS3. Determinar a “boas” rotas entre sub‐redes baseadas em 

informação de acessibilidade e de estratégia (administrativa, comercial, etc.)

4. O BGP não impõe políticas mas fornece mecanismos

Permite a uma sub‐rede anunciar a sua existência ao resto da Internetda Internet

Nível Rede4‐91

Page 92: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Conceitos Básicos do BGP

Pares de routers (peers) trocam informação através de ligações TCP semi‐permanentes: sessões BGPsemi‐permanentes: sessões BGP

Sessões internas (iBGP) e externas (eBGP)

O BGP permite a cada AS conhecer os destinos que são acessíveis através dos ASs a que está ligadoatravés dos ASs a que está ligadoOs destinos não são routers mas (grupos de) sub‐redes expressos em notação CIDR

Nível Rede4‐92

Page 93: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Políticas de routing com o BGP

Exemplo:

A,B,C são redes de providers (ISPs)

XWY são redes de clientes (desses ISPs)X,W,Y são redes de clientes (desses ISPs)

A rede X tem duplo acesso: está ligada a duas redes

O ISP B pode publicar o acesso BAW ao cliente X mas não ao seu t C d fconcorrente C de forma a que:

A acesso de X a W seja feito através de B

O acesso dos clientes de C a W não utilize a sua rede pois nesse caso 

Nível Rede4‐93

está a suportar tráfego não contratado

Page 94: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

Inter e Intra‐AS routing: Diferenças 

Administração:Inter AS: administradores podem controlar como éInter‐AS: administradores podem controlar como é encaminhado o seu tráfego, e quem está autorizado a encaminhar através das suas redes. 

ó á ú áIntra‐AS: como só há um único AS, não são necessárias políticas de encaminhamento

Escala:Escala:Encaminhamento hierárquico reduz o tamanho das tabelas e o seu tráfego de actualização

Performance:Intra‐AS: enfoque na performanceInter AS: enfoque na administraçãoInter‐AS: enfoque na administração

Nível Rede4-94

Page 95: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

DHCP: Dynamic Host Configuration ProtocolProtocolo de atribuição dinâmica de endereço IPProtocolo de atribuição dinâmica de endereço IPUtiliza o broadcast MAC

Nível Rede4‐95

Page 96: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

DHCP: Funcionamento

Nível Rede4-96

Page 97: RdRedes de CdC omputadores - Laboratório de Sistemas e Redesnetlab.ulusofona.pt/rc/teoricas/RC2012-04-Network.pdf · Redes Datagrama ou Circuito Virtual? Internet Transferência

ConclusãoEntrámos no interior da rede…

Aprendemos os fundamentos da camada que cria o nível deAprendemos os fundamentos da camada que cria o nível de abstracção e permite a homogeneizar a camada de ligação (Internetworking)( g)

Aprendemos os detalhes do endereçamento IPEssencial para comunicar entre hosts

Fundamental para tarefas de administração de rede

Abordámos os conceitos básicos dos algoritmos de encaminhamento

Muito ficou ainda para verOutros protocolos…

Complementos de Redes !!

Nível Rede4-97