Capítulo 5: Camada de Enlace e

170  Download (0)

Full text

(1)

Kelvin Lopes Dias kld@cin.ufpe.br

Capítulo 5: Camada de Enlace e

Redes Locais

(2)

Repetidores, Hubs, Pontes, Switches,

Roteadores e Gateways

(3)

Camada de Enlace: Introdução

Algumas terminologias:

Estações e roteadores são nós (pontes e comutadores também)

Canais de comunicação que conectam nós adjacentes através de um

caminho são enlaces:

Enlaces cabeados (wired links)

Enlaces sem fio (wireless links)

LANs (Local Area Networks)

O PDU (PacketData Unit) é um quadro/frame, que encapsula datagramas

“enlace”

(4)

Camada de enlace: contexto

 Datagrama transferido por diferentes protocolos

através de diferentes enlaces:

e.g., Ethernet no primeiro enlace, frame relay no enlace intermediário, 802.11 no último enlace.

 Cada protocolo da camada de enlace fornece serviço diferente

e.g., pode ou não fornecer

Analogia com transporte

 viagem de Caruaru para São Paulo

carro: Caruaru para Recife

avião: Recife para Rio

trem: Rio para São Paulo

 turista = datagrama

 segmento de transporte = enlace de comunicação

 modo de transporte =

protocolo da camada de enlace

 agente de viagem = algoritmo

(5)

Protocolos da Camada de Enlace

(6)

Serviços da Camada de Enlace

 Enquadramento (Delimitação do quadro) e acesso ao enlace:

encapsula datagrama num quadro adicionando cabeçalho e cauda,

implementa acesso ao canal se meio for compartilhado,

‘endereços físicos (MAC)’ são usados nos cabeçalhos dos quadros para identificar origem e destino de quadros em enlaces multiponto

 Entrega confiável entre nós adjacentes:

Visto no Capítulo 3

raramente usada em canais com baixas taxas de erro (fibra óptica, alguns tipos de pares trançados)

Canais sem fio: altas taxas de erros

(7)

Serviços da Camada de Enlace (mais)

 Controle de Fluxo:

compatibilizar taxas de produção e consumo de quadros entre remetentes e receptores

 Detecção de Erros:

erros são causados por atenuação do sinal e por ruído

receptor detecta presença de erros

• receptor sinaliza ao remetente para retransmissão, ou simplesmente descarta o quadro em erro

 Correção de Erros:

mecanismo que permite que o receptor localize e corrija o(s) erro(s) sem precisar da retransmissão

(8)

Comunicação entre Adaptadores

 camada de enlace implementada no “adaptador” (NIC - Net)

placa Ethernet, cartão 802.11

 lado transmissor:

Encapsula o datagrama em um quadro

 Lado receptor

verifica erros, transporte confiável, controle de

fluxo, etc.

extrai o datagrama, passa- o para o nó receptor

transm.

quadro

receptor datagrama

quadro

adaptador adaptador

Protocolo da camada de enlace

(9)

Taxonomia dos Protocolos MAC

Três classes gerais:

 Particionamento do Canal

divide o canal em pequenos “pedaços” (slots de tempo, freqüência, código)

aloca pedaço a um dado nó para uso exclusivo deste

 Acesso Aleatório

canal não é dividido, podem ocorrer colisões

“recuperação” das colisões

 Revezamento

Nós se alternam em revezamento, mas nós que possuem mais dados a transmitir podem demorar mais quando chegar a sua vez

(10)

Protocolos de Particionamento do Canal

TDMA (Multiplexação por Divisão de Tempo):

canal dividido em N intervalos de tempo (“slots”), um para cada usuário; ineficiente com usuários de pouco demanda ou quando

carga for baixa.

FDMA (Multiplexação por Divisão de Freqüência):

freqüência subdividida.

CDMA (Múltiplo Acesso por Divisão por Código):

explora esquema de codificação de espectro espalhado - DS (Direct Sequence) ou FH

(11)

Protocolos de Acesso Aleatório

 Uma estação transmite aleatoriamente (ié, sem

coordenação a priori entre estações) ocupando toda a capacidade R do canal.

 Se houver “colisão” entre as transmissões de duas ou mais estações, elas retransmitem depois de espera aleatória

 O protocolo MAC de acesso aleatório especifica como detectar colisões e como recuperar delas (através de retransmissões retardadas, por exemplo)

 Exemplos de protocolos MAC de acesso randômico:

CSMA e CSMA/CD

(12)

Protocolos MAC de “revezamento”

Até aqui já vimos:

 Protocolos MAC de particionamento de canal (TDMA,

FDMA e CDMA) podem compartilhar o canal eqüitativamente;

porém, uma única estação não consegue usar toda a capacidade do canal

 Protocolos MAC de acesso aleatório permitem que um único usuário utilize toda a capacidade do canal; entretanto, eles não conseguem compartilhar o canal de maneira justa

(13)

Protocolos MAC de “revezamento”

 Protocolos MAC de revezamento conseguem tanto justiça como acesso individual a toda a capacidade do enlace, ao custo de maior complexidade de controle

(a) Polling: uma estação Mestre numa rede local “convida”

em ordem as estações escravas a transmitir seus pacotes (até algum Máximo).

Problemas: latência, ponto único de falha (Mestre) (b) Passagem de ficha de permissão: a ficha de

permissão é passada seqüencialmente de estação a estação.

É possível aliviar a latência e melhorar tolerância a falhas (numa configuração de barramento de fichas). Entretanto,

(14)

Sumário de protocolos MAC

 O que se pode fazer com um meio compartilhado?

Particionamento do canal, por tempo, freqüência ou código

• TDMA, FDMA, CDMA, WDMA (wave division)

Particionamento randômico (dinâmico),

• ALOHA, S-ALOHA, CSMA, CSMA/CD

Revezamento

• polling de um nó central, passagem de ficha de permissão

(15)

Endereços físicos e ARP

Endereço IP: usado para levar o pacote à rede destino

Endereço físico (ou MAC): usado para levar o pacote até o cartão de interface de rede local (cartão de adaptador) da estação de destino na rede local

Endereço MAC de 48 bits

Vendor Code Serial Number

24 bits 24 bits

0000.0c12. 3456

(16)

Endereço físico (cont)

 Alocação de endereços MAC administrada pelo IEEE

 Um fabricante compra uma parte do espaço de endereços (para garantir unicidade)

 Analogia:

(a) endereço MAC: como número do CPF (b) endereço IP: como endereço postal

 endereço MAC sem estrutura (flat ) => portabilidade

 endereço IP hierárquico NÃO é portátil (requer IP

(17)

ARP: Address Resolution Protocol

 Cada nó IP (Estação, Roteador) na rede local possui módulo e Tabela ARP

 Tabela ARP (cache): mapeamento entre endereços IP/MAC para alguns nós na rede local

< endereço IP; endereço MAC; TTL>

< ……….. >

 TTL (Time To Live):

temporizador,

tipicamente alguns poucos minutos (<5)

(18)

ARP (cont)

 Nó A quer enviar pacote para endereço IP de destino XYZ na mesma rede local

 Nó de origem primeiro verifica se sua própria Tabela ARP contém o endereço IP XYZ

 Se XYZ não estiver na Tabela ARP, o módulo ARP difunde pacote ARP:

< XYZ, MAC (?) >

 TODOS nós na rede local aceitam e inspecionam o pacote ARP

 Nó XYZ responde ao nó A com pacote ARP unicast

(ponto a ponto) informando seu próprio endereço

(19)

Ethernet

 Muitíssimo difundida porque:

Muito barata! R$30 para 100Mbps!

A mais antiga das tecnologias de rede local

Mais simples e menos cara que redes usando ficha ou ATM

Acompanhou o aumento de velocidade: 10, 100, 1000 Mbps

Muitas tecnologias E-net (cabo, fibra, etc). Mas todas compartilham características comuns

Metcalfe’s Ethernet sketch

(20)

Ethernet

1976 - Desenvolvido pela XEROX nos anos 70

Bob Metcalfe – Fundador da 3COM

Taxa original - 2,94 Mbps

1980 - Definido como um padrão pela DIGITAL, INTEL e XEROX, chamado padrão DIX – Ethernet a 10Mbps

1985 - Tornou-se padrão IEEE 802.3

1995 – Fast Ethernet 100Mbps

1998 – Gigabit Ethernet 1Gbps

1999 – 10 Gigabit Ethernet 10Gbps

Diferentes formatos de quadro entre o Ethernet e o

(21)

Estrutura de Quadro Ethernet

 Adaptador remetente encapsula

datagrama

IP (ou pacote de outro protocolo da camada de rede) num Quadro

Ethernet que contém campos de Preâmbulo, Cabeçalho, Dados e CRC

Preâmbulo: 7 bytes com o padrão 10101010 seguidos por um byte com o padrão 10101011; usado para sincronizar receptor ao relógio do remetente (relógios nunca são exatos, é muito provável que exista algum desvio entre eles)

(22)

Estrutura de Quadro Ethernet (cont)

Cabeçalho contém Endereços de Destino e Origem e um campo Tipo

Endereços: 6 bytes, o quadro é recebido por todos adaptadores numa rede local e descartado se não casar o endereço de destino com o do receptor

Tipo: indica o protocolo da camada superior, usualmente IP, mas existe suporte para outros

CRC: verificado pelo receptor: se for detetado um

erro, o quadro será descartado

(23)

01010101 ... SOH dest addr data FCS

7 sync bytes

length

Data, padded to at least 46 B src addr

32-bit CRC

Type field in Ethernet

Length of data in IEEE 802.3 (Length at most 1500).

Bytes: 7 1 6 6 2 46 to 1500 4

In Ethernet: 01010101 In IEEE 802.3: 01010111

Source and destination addresses

6 byte ethernet addr

Formato do quadro Ethernet e 802.3

(24)

Codificação Manchester de Banda Básica

 Banda-base: adaptador envia um sinal digital diretamente no canal broadcast.

 significa que não se usa modulação de portador(interface não faz deslocamento do sinal para outra banda de

freqüência); ao invés disto, bits são codificados usando codificação Manchester e transmitidos diretamente, modificando a voltagem de sinal de corrente contínuo

(25)

Codificação Manchester de Banda Básica

 Codificação Manchester (camada física) garante que ocorra uma transição de voltagem a cada intervalo de bit, ajudando

sincronização entre relógios do remetente e receptor

(26)

 Thick (Cabo coaxial grosso)

10Base5, 10Mbps/Banda Base/500m

 Thin (Cabo coaxial fino)

10Base2, 10Mbps/Banda Base/185m

Cabeamento Ethernet

Taxa de dados em Mbps

Sinalização Banda Base

Comprimento máximo do segmento em centenas

10 Base X

(27)

Tecnologias Ethernet: 10Base2

10=>10Mbps; 2=> comprimento máximo de segmento de menos de 200 metros; também chamada de “Cheapernet”

Utiliza cabo coaxial fino em topologia de barramento

Repetidores são usados para interligar múltiplos segmentos (até 5 em qualquer caminho); um repetidor repete os bits escutados em uma interface para sua(s) outra(s) interface(s), ié, ele é apenas um dispositivo da camada física!

(28)

10Base5

Terminador

Repetidor Comprimento máximo do segmento = 500 m

Número máximo de estações por segmento = 100

Coaxial 0,5”

vampire tap

transceiver

Cabo AUI

transceiver : envia/recebe, detecção de colisão

AUI : Attachment Unit Interface

Network Interface Card - NIC 50m

(29)

10Base2

Coaxial 0.25 “

Conector T BNC

Network Interface Card - NIC

conector BNC

(Bayonet-Neill-Concelman)

Uso em escritórios

Comprimento máximo do segmento = 185m Número máximo de estações por segmento = 30

Distância mínima entre as estações = 0.5 m

Terminador Repetidor

(30)

10BaseT e 100BaseT

 Taxas de transmissão de 10 e 100 Mbps; este último é chamado de “fast ethernet”

 T significa Par Trançado

 Usa concentrador (“hub”) ao qual os nós estão ligados por cabos individuais de 2 pares trançados, mostrando, portanto uma “topologia em estrela”

 Distância máxima do nó ao hub é de 100 metros

 Hub pode desligar da rede um adaptador falho (“jabbering”);

10Base2 não funcionaria se um adaptador não pára de transmitir no cabo

 Hub pode coletar informação e estatísticas de

(31)

10BaseT e 100BaseT (Qual o limite?)

(32)

10BaseT e 100BaseT

(33)

Gbit Ethernet

 Usa formato do quadro Ethernet padrão

 Admite enlaces ponto-a-ponto e canais de difusão compartilhados

 Em modo compartilhado, usa-se CSMA/CD; para ser eficiente, as distâncias entre os nós devem ser curtas (poucos metros)

 Full-Duplex em 1 Gbps para enlaces ponto-a-ponto

(34)

CSMA – Carrier Sense Multiple Access

Controle descentralizado

Carrier sense – todos os computadores podem distinguir entre um link ocioso ou ocupado

Acesso múltiplo – vários computadores disputam o acesso ao meio

Presença da Portadora – os computadores que

desejam transmitir escutam o meio antes de transmitir

(35)

Deteção de Colisão - CD

 Mesmo com CSMA dois computadores podem transmitir ao mesmo tempo

 A estação transmite um frame e continua a escutar o meio para notar se houve colisão

 Se o nível médio de tensão excede um limiar, a colisão é percebida

(36)

Recuperação da Colisão

 A estação que percebe a colisão envia um sinal especial para forçar todas as outras interfaces também perceberem a colisão

 Os computadores esperam por um tempo aleatório antes de tentar transmitir novamente

 Após esse tempo o computador escuta o meio novamente antes de transmitir para evitar colisões sucessivas

 Mesmo com esse tempo aleatório colisões ainda podem acontecer

 As estações dobram o tempo de espera a cada colisão sucessiva

(37)

Transmissão do quadro

composição quadro

Portadora presente ?

Espere o intervalo de tempo entre quadros Início transmissão

colisão detectada?

N

N Y

Y envio seqüência JAM Incrementa tentativa

Limite tentativa ?

N Computador para transmissão feita?

N

(38)

Recepção do Frame

Recepção ok ? Y

Y N

N

Descarta frame N

Início recepção

Confere DA

FCS e frame size OK?

(39)

Backoff Binário

detectada colisão?

Y envia frame

descarte quadro Y

Espera aleatória entre 0 e atraso-1 dobra atraso

limitado atraso <1024

>16 tentativa N atraso= 2

transmissão feita?

transmissão OK N

Y

N

1a espera 0 ou 1 slot de tempo 2a espera 0,1,2 or 3 slots de tempo 3a espera 0,1,2,..7 slots tempo ka espera 0.. 2k slots de tempo

(40)

Tamanho mínimo do quadro

(1) pacote inicia no tempo 0

(2) Pacote quase em B em t-α

(3) B envia pacote;

colisão ocorre em t (4) Sinal jam chega de volta A em 2t

O quadro deve levar mais que 2t para ser enviado a fim de prevenir a situação que o transmissor conclui incorretamente que o frame foi transmitido com sucesso.

A e B estão nas extremidades do cabo

A B A B

A B A B

(41)

Tempo de colisão no pior caso

500 metros

(42)

Código Polinomial ou Código de Redundância Cíclica (CRC)

Polinômio

• 110001 → x

5

+ x

4

+ x

0

(6 bits → grau n

= 5)

A subtração corresponde ao ou exclusivo

01010101 10101111 11111010

---

-

(43)

 Procedimento

Seja G(x) o gerador polinomial de grau r. Acrescente r bits ao quadro

Divida o novo quadro pelo gerador

Acrescente ao quadro original o resto da divisão

Código Polinomial ou Código de Redundância Cíclica (CRC)

mensagem M

T = quadro transmitido n+1 bits

CRC k bits

(44)
(45)

Interconnecting LANs Q: Why not just one big LAN?

 Limited amount of supportable traffic: on single LAN, all stations must share bandwidth

 limited length: 802.3 specifies maximum cable length

 large “collision domain” (can collide with many stations)

 limited number of stations: 802.5 have token

passing delays at each station

(46)

Repetidores, Hubs, Pontes, Switches,

Roteadores e Gateways

(47)

Repeater

Transmits data to all connected computers

Hub

Transmits data to all connected computers in a star topology

Repeaters and Hubs

Repeater

Hub

(48)

Hubs

 Physical Layer devices: essentially repeaters

operating at bit levels: repeat received bits on one interface to all other interfaces

 Hubs can be arranged in a hierarchy (or multi-tier

design), with backbone hub at its top

(49)

Hubs (more)

 Each connected LAN referred to as LAN segment

 Hubs do not isolate collision domains: node may collide with any node residing at any segment in LAN

 Hub Advantages:

 simple, inexpensive device

 Multi-tier provides graceful degradation: portions of the LAN continue to operate if one hub

malfunctions

 extends maximum distance between node pairs

(50)

Hub limitations

 single collision domain results in no increase in max throughput

 multi-tier throughput same as single segment throughput

 individual LAN restrictions pose limits on number of nodes in same collision domain and on total

allowed geographical coverage

 cannot connect different Ethernet types (e.g.,

10BaseT and 100baseT)

(51)

Bridges

Bridge

(52)

Endereço MAC

Vendor Code Serial Number

24 bits 24 bits

0000.0c12. 3456

ROM RAM

(53)

Bridges

 Link Layer devices: operate on Ethernet frames, examining frame header and selectively

forwarding frame based on its destination

 Bridge isolates collision domains since it buffers frames

 When frame is to be forwarded on segment,

bridge uses CSMA/CD to access segment and

transmit

(54)

Características

(55)

Bridges (more)

 Bridge advantages:

 Isolates collision domains resulting in higher total max throughput, and does not limit the number of nodes nor geographical coverage

 Can connect different type Ethernet since it is a store and forward device

 Transparent: no need for any change to hosts

LAN adapters

(56)

Bridges: frame filtering, forwarding

 bridges filter packets

 same-LAN -segment frames not forwarded onto other LAN segments

 forwarding:

 how to know which LAN segment on which to forward frame?

 looks like a routing problem (more shortly!)

(57)

Bridge Filtering

 filtering procedure:

if destination is on LAN on which frame was received

then drop the frame

else { lookup filtering table

if entry found for destination

then forward the frame on interface indicated;

else flood; /* forward on all but the interface on which the frame arrived*/

}

(58)

Operação da ponte

A ponte “aprende” endereços de rede das estações em cada porta da LAN observando o endereço fonte no pacote.

Endereços “aprendidos” (backward learning) são mantidos em uma tabela na memória.

Endereços antigos são descartados após um

intervalo de tempo pré-configurado para permitir

(59)

LAN A LAN B

Inicializa - -

U V U -

V U U, V -

Z Broadcast U, V Z

Y V U, V Z, Y

Y X U, V Z, Y

Funcionamento das Pontes

Ponte

U V W X Y Z

LAN A LAN B

(60)

Operação da ponte

src hub

LAN B

. . .

LAN C LAN A

Endereço Porta 001048cda9 LAN B . . .

dest

bridge

(61)

Pontes transparentes

Sempre que um quadro chega em uma porta, a ponte procura pelo endereço de destino na tabela.

A ponte encaminha o quadro somente para a porta (i.e., LAN C) contendo o destino.

Se as portas da fonte e destino são as mesmas,

a ponte não faz nada.

(62)

Pontes transparentes

src hub

LAN B

. . .

LAN C LAN A

dest

bridge

Endereço Porta 001048cda9 LAN B

(63)

Pontes transparentes

Se o endereço de destino não é conhecido, encaminha o quadro para todas as portas, isto é chamado flooding.

Quadros de difusão (broadcast ) também são

encaminhados para todas portas.

(64)

Pontes transparentes

Endereço Porta 001048cda9 LAN B

src hub

LAN B

. . .

LAN C LAN A

dest

bridge

(65)

Armazenamento na ponte

Uma ponte pode armazenar (buffer) quadros porque:

•Porta de saída pode estar ocupada

•Em redes token ring, deve aguardar pelo token

•Diferenças de velocidade

•Conversão de protocolos: armazena quadro para mudar seu formato.

•Armazenar para eliminar fragmentos e quadros

(66)

Armazenamento na ponte

hub LAN B

. . .

LAN C LAN A

Endereço Porta 001048cda9 LAN B

Buffer

(67)

Bridges Spanning Tree

 for increased reliability, desirable to have

redundant, alternate paths from source to dest

 with multiple simultaneous paths, cycles result - bridges may multiply and forward frame forever

 solution: organize bridges in a spanning tree by disabling subset of interfaces

Disabled

(68)

Um ciclo de Pontes

 Para aumentar a confiabilidade, utilizar duas ou mais pontes em paralelo entre os pares de LANs

 Pode haver laços infinitos na topologia – loop

⇒ um problema

(69)

Um ciclo de Pontes

(70)

Pontes Spanning Tree

 Prevenir o problema de laços infinitos (loop)

 Árvore geradora (LANs = vértice e Pontes = arestas)

(71)

Construindo uma Spanning Tree

 Utilizam um protocolo para estabelecer uma spanning tree

 802.1D

 Escolhe-se uma ponte para ser a raiz da árvore

 Broadcast do número de série

 A ponte com menor número de série é a raiz da árvore

 Calcula o menor caminho de cada ponte/LAN até a raiz

 Gera a árvore de cobertura/amplitude/geradora

 Recalculado se uma ponte/LAN falhar

(72)

Algoritmo Spanning Tree

Cada nó mantém 3 pedaços de informação para cada porta:

R = ID do nó raiz atual d = distância do nó raiz

N = nó mais próximo do nó raiz

Denote isto como (R, d, N):

(73)

Algoritmo Spanning Tree

10 20

40

75 80

(20,0,-)

(10,0,-)

(80,0,-) (75,0,-)

(40,0,-) (40,0,-)

(80,0,-) (75,0,-)

(40,0,-)

(10,0,-)

(74)

Algoritmo Spanning Tree

Nós enviam atualizações de árvore geradora em cada porta.

Por exemplo, nó 40 enviaria as atualizações

mostradas à direita.

(75)

Algoritmo Spanning Tree

10 20

40

(40,0,40)

(40,0,40)

(40,0,40)

(76)

Algoritmo Spanning Tree

Outros nós também enviam atualizações de configuração.

A figura mostra as atualizações enviadas

pelos nós 10 e 75.

(77)

Algoritmo Spanning Tree

10 20

40

(10,0,10)

(75,0,75) (10,0,10)

(78)

Algoritmo Spanning Tree

Quando um nó recebe uma atualização de um outro nó, ele atualiza a informação de sua própria porta se:

• atualização identifica um nó raiz com um ID menor

• atualização identifica um nó raiz com mesmo ID mas com uma distância menor

• nó raiz e distância são os mesmos, mas nó que

enviou tem um menor ID

(79)

Algoritmo Spanning Tree

10 20

40

75 80

(20,0,-)

(10,0,-)

(10,1,10) (40,1,40)

(40,0,-) (20,1,20)

(75,1,75) (75,0,-)

(10,1,10)

(10,0,-)

(80)

Algoritmo Spanning Tree

Depois que um nó recebe as atualizações de

configuração, seleciona a melhor configuração

e descarta as demais.

(81)

Algoritmo Spanning Tree

10 20

40

(20,0,-)

(10,0,-)

(10,1,10) (40,1,40)

(40,0,-) (20,1,20)

(10,1,10)

(10,0,-)

(82)

Algoritmo Spanning Tree

Quando nó recebe uma mensagem de configuração que contém um ID de raiz menor, então ele conclui que não é o nó raiz da árvore.

Dessa forma, pára de enviar suas próprias mensagens de configuração e encaminha apenas as mensagens

recebidas (com a distância incrementada e nó

(83)

Algoritmo Spanning Tree

10 20

40

75 80

(20,0,-)

(10,0,-)

(10,1,10) (40,1,40)

(10,1,10)

(10,0,-)

(84)

Algoritmo Spanning Tree

Na próxima iteração, nós que concluíram que não eram o nó raiz, encaminham

atualizações do raiz para outros nós.

(85)

Algoritmo Spanning Tree

10 20

40

75 80

(10,1,40)

(10,0,-)

(10,1,10) (10,1,40)

(10,1,10)

(10,0,-)

(10,1,80)

(40,1,75)

(86)

Algoritmo Spanning Tree

Quando as atualizações estabilizam, apenas o nó raiz gera mensagens de atualização.

Outros nós estão encaminhando mensagens

apenas sobre os enlaces que fazem parte da

árvore geradora -- ponte designada

(87)

Algoritmo Spanning Tree

10 20

40

75 80

(10,2,40)

(10,0,-)

(10,1,10) (10,2,40)

(10,1,10)

(10,0,-)

(88)

Atualizações Spanning Tree

Nós continuam enviando atualizações spanning tree ocasionalmente.

Recuperação de falha: se um nó não recebe uma

atualização dentro de um intervalo de tempo, ele

novamente afirma ser um nó

10 20

40

(10,1,40)

(10,0,10) (10,1,40)

(10,0,10)

(89)

Interconexão com Switches

 Aumento da largura de Banda disponível por usuário

 Switches são similares às pontes com alta densidade de portas

 Provêem um único segmento de rede em cada porta, separando os domínios de colisão

 Alta velocidade de processamento (Hardware)

 Modo de operação Store and Forward ou Cut Through (comutação acelerada)

 Transparente aos protocolos de nível superior

 Spanning Tree (eliminar loops)

(90)

Switches

Switch

(91)

Hubs e comutadores Ethernet

 Hubs de meio compartilhado

 Comutadores/Switches

(92)

Ethernet Switches

 Transmissão em camada 2

(quadros) com filtragem usando endereços de LAN

 Switching: A-para-B a A’-para-B’

simultaneamente, sem colisões

 grande número de interfaces

 muitas vezes: hosts individuais são conectados em estrela no switch (1 host para cada porta)

 Ethernet, mas sem

colisões!

(93)

Ethernet Switches

 cut-through switching: o quadro é enviado da entrada para a saída sem esperar pela montagem do quadro inteiro

 pequena redução da latência

 combinações de interfaces de 10/100/1000 Mbps, dedicadas e compartilhadas

(94)

Switch Store-and-Forward

SuperStack II Switch 3300

R

O Switch recebe o pacote completo e depois reenvia

A B

(95)

Switch Cut-Through

SuperStack II Switch 3300

R

O Switch recebe o cabeçalho do pacote e inicia o envio a estação destino.

H

A B

(96)

Ethernet Switches (mais)

Dedicated

Shared

Para Internet Externa

(97)

Routers

Router Router Router Router

(98)

Interconexão com Roteadores

 Conecta múltiplas LANs

 É um dispositivo que opera na camada de rede do modelo OSI

 Cria domínios de broadcast

 Dependente de protocolo

 Função de enviar pacotes entre redes

 Controla o fluxo entre duas estações

 Utiliza o endereço de rede e não de host para

rotear a informação

(99)

Switches vs. Routers

 both store-and-forward devices

 routers: network layer devices (examine network layer headers)

 bridges are Link Layer devices

 routers maintain routing tables, implement routing algorithms

 switches maintain filtering tables, implement

filtering, learning and spanning tree algorithms

(100)

Routers vs. Switches

Switches + and -

+ Switch operation is simpler requiring less processing bandwidth

- Topologies are restricted with switches: a spanning tree must be built to avoid cycles

- switches do not offer protection from broadcast

storms (endless broadcasting by a host will be

forwarded by a bridge)

(101)

Routers vs. switches

Routers + and -

+ arbitrary topologies can be supported, cycling is

limited by TTL counters (and good routing protocols) + provide firewall protection against broadcast storms - require IP address configuration (not plug and play) - require higher processing bandwidth

 switches do well in small (few hundred hosts) while

routers used in large networks (thousands of hosts)

(102)

Comparação resumo

hubs roteadores comutadores isolamento

de tráfego

não sim sim

Plug-and- play

sim não sim

roteamento ótimo

não sim não

(103)

Interconexão com Gateways

 Conexão de redes que executam protocolos diferentes, atuando como conversores de protocolos

 É um dispositivo que opera em todas as

camadas do modelo OSI, principalmente, na camada de aplicação, conectando aplicações em ambientes diferenciados

 Interconexão de mundos incompatíveis por exemplo: entre redes proprietárias ou

proprietárias e abertas - DEC e IBM ou

TCP/IP/Ethernet e SNA/IBM

(104)

Interconexão com Gateways

 Exemplo:

Ligação de uma rede ethernet a um mainframe IBM

TCP/IP

Mainframe

IBM

Controladora de

Gateway

SDLC

(105)

Camada de Enlace

 5.1 Introdução e serviços

 5.2 Detecção e correção de erros

 5.3 Protocolos de Acesso Múltiplo

 5.4 Endereçamento da Camada de Enlace

 5.5 Ethernet

 5.6 Interconexões: Hubs e switches

 5.7 PPP

 5.8 Virtualização do enlace: ATM e MPLS

(106)

Controle de Enlace de Dados Ponto a Ponto

 um transmissor, um receptor, um canal: mais fácil que um canal de difusão:

sem controle de acesso ao meio (MAC)

sem necessidade de endereçamento MAC explícito

ex.: canal discado, canal ISDN/RDSI

 protocolos de enlace ponto a ponto populares:

PPP (point-to-point protocol)

HDLC: High level data link control - Controle de Enlace de Dados de Alto Nível (enlace de dados era considerado

“alto nível” na pilha de protocolos”)

(107)

Requisitos de Projeto do PPP [RFC 1557]

 delimitação dos pacotes: encapsulamento de datagramas da camada de rede em quadro da camada de enlace

 transporta dados da camada de rede de qualquer protocolo de camada de rede (não apenas do IP) simultaneamente

 habilidade de demultiplexar para cima

 transparência de bits: deve transportar qualquer padrão de bits no campo de dados

 detecção de erros (sem correção)

 manutenção da conexão: detecta, indica falhas do enlace para a camada de rede

 Negociação do endereço da camada de rede: pontos

(108)

não-requisitos do PPP

 não faz correção/recuperação de erros

 sem controle de fluxo

 entrega fora de ordem OK

 sem necessidade de dar suporte a canais multiponto (ex., polling )

Recuperação de erros, controle de fluxo e reordenamento

dos dados todos relegados a camadas superiores!

(109)

Quadro de Dados do PPP

 Flag: delimitador (enquadramento)

 Endereço: não faz nada (apenas uma opção)

 Controle: não faz nada; no futuro pode ter múltiplos campos de controle

 Protocolo: protocolo da camada superior para o

qual o quadro deve ser entregue (ex.: PPP-LCP, IP,

IPCP, etc)

(110)

Quadro de Dados do PPP

 info: dados da camada superior que estão sendo transportados

 verificação ( check ): código de redundância cíclica

para verificação de erros

(111)

Enchimento de Bytes ( Byte Stuffing )

requisito de “transparência dos dados”: campo de dados deve poder incluir o padrão do flag

<01111110>

P: o <01111110> recebido é dados ou flag?

 Transmissor: adiciona (“enche”) com byte

<01111110> extra após cada byte < 01111110> de dados

 Receptor:

dois bytes 01111110 em seqüência: descarta o primeiro byte, continua com a recepção dos dados

apenas um 01111110: byte de flag

(112)

Enchimento de Bytes

padrão do byte de flag nos dados a serem

transmitidos

padrão de byte do flag

(113)

Protocolo de Controle de Dados PPP

Antes de trocar dados da

camada de rede, os parceiros do enlace de dados devem

 configurar o enlace PPP (compr. max. quadro, authentication)

 Obtém/configura

informações da camada de rede

para IP: transporta msgs do Protocolo de Controle IP (IPCP) (campo de protocolo: 8021) para configurar/obter o endereço IP

(114)

Virtualização das redes/camada de enlace Virtualização dos recursos: uma abstração

poderosa para a engenharia de sistemas:

 Exemplos em computação: memória virtual, dispositivos virtuais

 Máquinas virtuais: ex., java

 Abstrações em camadas: não apresenta os detalhes das camadas inferiores, lida com as camadas inferiores apenas de forma

abstrata

(115)

A Internet: virtualizando as redes

1974: múltiplas redes desconectadas

ARPAnet

redes de dados sobre cabos

redes de pacotes via satélites (Aloha)

redes de pacote via rádio

… com diferenças em:

convenções de endereçamento

formato dos pacotes

recuperação de erros

roteamento

(116)

A Internet: virtualizando as redes

gateway

Camada Interedes (IP - Internetwork layer ):

endereçamento: rede

interconectada aparece como uma entidade única, uniforme, apesar da heterogeneidade das redes locais

rede de redes

Gateway:

“encapsula os pacotes interredes no formato do pacote local”

encaminha (na camada interrede) para o próximo gateway

(117)

Arquitetura Interredes de Cerf & Kahn O que foi virtualizado?

 duas camadas de endereçamento: interrede e rede local

 nova camada (IP) torna tudo homogêneo na camada interrede

 tecnologia de rede local

Cabo

Satélite

Modem de 56Kbps

X.25 e Frame-relay

Hoje: ATM e MPLS

 … “invisível” para a camada interrede. Para o IP parecem como tecnologias da camada de enlace!

(118)

ATM e MPLS

 ATM e MPLS são redes separadas com tudo o que têm direito!

modelos de serviços, endereçamento e roteamento diferentes dos usados na Internet

 vistos pela Internet como sendo um enlace lógico interconectando roteadores IP

da mesma forma que um enlace discado é na verdade parte de uma rede separada (a telefônica)

 ATM e MPLS: interesse técnico por seus próprios

méritos

(119)

Virtual Circuit Tables

Each node maintains a table of virtual circuit identifiers and associated ports.

Examples:

A frame arriving on port 0, VC 8 will be forwarded to port 2, using VC 6.

A frame arriving on port 1, VC 2 will be forwarded to port 3 using VC 2.

VC identifiers do not have to be unique: different ports can use same VCI w/o confusion.

0 1 3

2

Switch 1

Input Output

Port VC Port VC

0 11 1 7

0 12 2 5

0 8 2 6

1 2 3 2

Virtual Circuit Forwarding Table

(120)

Virtual Circuit Identifiers

 Incoming and outgoing VCI may be different.

 VCI is the same on both switches connected by a link.

 When a frame arrives on an incoming VC, the switch looks up outgoing VC in a VCI table. It changes the frame’s VCI to the outgoing VCI.

0 1 3

2

Switch 1

0 1 3

2

Switch 2

VCI=11 VCI=7 VCI=5

(121)

Virtual Circuit Identifiers

 VCI do not have global significance -- each switch chooses its own VCI.

 Two switches connected by a link agree on a VCI during circuit setup (e.g., the downstream switch tells the VCI to upstream switch).

 A virtual circuit can be unidirectional or bidirectional.

Input Output

Port VC Port VC

3 11 1 7

Switch 2

Input Output

Port VC Port VC

3 7 1 5

Switch 1

(122)

Virtual Circuit Setup

Suppose host A wants to communicate with host B.

How does it establish a virtual circuit?

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Port VC Port VC

Input Output Port VC Port VC

Input Output Port VC Port VC

(123)

Virtual Circuit Setup

Host A sends a VC request to Switch 1.

The request includes A and B’s complete global address.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Port VC Port VC

Input Output Port VC Port VC

Input Output Port VC Port VC VC Request: A B

(124)

Virtual Circuit Setup (cont.)

Switch 1 gets the request and (tentatively) creates a new VCI

#9 from port 2 to port 1. It forwards request and VCI to Switch 2. It doesn’t yet know the VCI for this link.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Input Output Input Output

VC Request: A B

(125)

Virtual Circuit Setup (cont.)

Switch 2 determines (somehow) that the request must go to Switch 3. It chooses VCI 9 for the incoming link and forwards the request to Switch 3.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Port VC Port VC

Input Output Port VC Port VC

Input Output Port VC Port VC VC Request: A B

(126)

Virtual Circuit Setup (cont.)

Switch 3 determines (somehow) that Host B is on port 1 It chooses VCI 8 for the incoming link and forwards the request to Host B.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Input Output Input Output

VC Request: A B

(127)

Virtual Circuit Setup (cont.)

Host B accepts the connection and chooses VCI 7 for the connection to Host A, which it records in its own table. It sends a reply back to Host A using VCI #7.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Port VC Port VC

Input Output Port VC Port VC

Input Output Port VC Port VC

Reply on VC#7

(128)

Virtual Circuit Setup (cont.)

Now Switch 3 learns the VCI chosen by Host B.

Switch 3 forwards the reply to Switch 2 on VCI 8.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Input Output Input Output

Reply on VC#8

(129)

Virtual Circuit Setup (cont.)

Now Switch 2 learns the VCI chosen by Switch 3.

Switch 2 forwards the reply to Switch 1 on VCI 9.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Port VC Port VC

Input Output Port VC Port VC

Input Output Port VC Port VC Reply on VC#9

(130)

Virtual Circuit Setup (cont.)

Now Switch 1 learns the VCI chosen by Switch 2.

It records this and forwards the reply to Host A on VCI 10.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Input Output Input Output

Reply on VC#10

(131)

Virtual Circuit Setup (cont.)

Now Host A knows that it can communicate with Host B, and the VCI it should use (VCI 10).

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Port VC Port VC

Input Output Port VC Port VC

Input Output Port VC Port VC Reply on VC#10

(132)

Virtual Circuit Use

Host A can send frames to Host B using only the VCI in the address (doesn’t need to use B’s global address).

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Input Output Input Output

Frame on VC#10

(133)

Virtual Circuit Use (cont.)

Switches forward frames and change the VCI on each link according to their own VC table.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Port VC Port VC

Input Output Port VC Port VC

Input Output Port VC Port VC Frame on VC#9 Frame on VC#8

(134)

Virtual Circuit Teardown

When Host A and Host B are done communicating, they

exchange “close” messages and send a request to tear down the VCI.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Input Output Input Output

Close VCI 10

(135)

Virtual Circuit Teardown

Switch 1 forwards the tear down request on VCI 9, then deletes the VCI from its table.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Port VC Port VC

Input Output Port VC Port VC

Input Output Port VC Port VC Close VCI 9

(136)

Virtual Circuit Teardown

Switch 2 also forwards the tear down request and deletes it from its VCI table.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Input Output Input Output

Close VCI 8

(137)

Virtual Circuit Teardown

Switch 3 forwards the tear down message to Host B, and the VCI is history.

0 1 3

2 Host A

Switch 2 0

1 3

2

Switch 1 0

1 3

2

Switch 3 Host B

Input Output Port VC Port VC

Input Output Port VC Port VC

Input Output Port VC Port VC

Close VCI 7

(138)

ATM: Asynchronous Transfer Mode

padrão de alta velocidade dos anos 1990’s/00 (155Mbps a 622 Mbps e superiores) arquitetura da RDSI-FL (Broadband Integrated Service Digital Network)

 Objetivo: transporte fim-a-fim integrado para voz, vídeo e dados

atendendo os requisitos de sincronismo e QoS para voz e vídeo (versus o modelo de melhor esforço da Internet)

“próxima geração” da telefonia: raízes técnicas no mundo da telefonia

Comutação de pacotes (pacotes de comprimento fixos, denominados de “células”) usando circuitos virtuais

(139)

 Evolução das redes de telecomunicações (no início )

Rede Telefônica (comutada por circuitos)

Rede de Dados (comutada por pacotes)

Figure

Updating...

References

Related subjects :