Comunicação em Rede Local

Transcrição

Comunicação em Rede Local
Packet over SDH/SONET
(POS)
Paulo Aguiar
DCC/UFRJ
1
IPOS





Originalmente, ATM foi planejado para transferência
de dados, voz e vídeo em alta velocidade
SDH/SONET foi concebido como uma camada física
de alta velocidade sobre fibra ótica principalmente
ATM foi implementado sobre SDH/SONET
“IP over SONET” permite que um datagrama IP seja
transferido em links de alta velocidade usando PPP
(point-to-point protocol)
Convergência para rede IP em alta velocidade torna
ATM totalmente descartável
2
Exemplo de Backbone SDH
3
Hierarquias e Taxas para POS
SONET
SDH
Velocidade
(Mbps)
USO PROVÁVEL
OC-3
STS-3c
155,52
Acesso ISP/Corporativo
OC-12
STS-12c
622,08
Backbone para
ISP/Corporativo
OC-48
STM-16
2488,32
Operadora ISP
OC-192
STM-64
9953,28
Backbones
39813120
Backbones
OC-768 STM-256
4
Enlace Serial: PPP

PPP é o padrão da Internet para transporte de
pacotes IP sobre enlaces seriais
– RFC 2615, PPP over SONET/SDH, 1999
– RFC 1662, PPP in HDLC-like Framing, 1994
– RFC 1661, The Point-to-Point Protocol (PPP), 1994

PPP depende de enlace bidirecional e tem 3 partes
– Encapsulamento dos dados
– Protocolo de controle do enlace (LCP-Link Control Protocol)
– Protocolo de controle de rede (NCP-Network Control
Protocol)
5
PPP características gerais


Encapsulamento PPP suporta multiprotocolos de nível superior
no enlace, podendo trafegar IP e outro protocolo simultaneamente
Controle de erro, autenticação, alocação dinâmica de IP
– Ideal para acesso discado a provedor
– Ideal para conexão dedicada entre roteadores de diferentes
fabricantes


Negocia opções na abertura da conexão
Quadro no formato HDLC
– Usa a opção básica de informação sem sequenciamento do HDLC
– Controle do enlace por software e independente de hardware


Síncrono ou assíncrono
Orientado a byte
– Usa byte stuffing
6
PPP formato do quadro






Flag: 0x7E (delimitador do quadro tipo-HDLC)
Endereço: 0xFF (sem função)
Controle: 0x03 (unumbered information do HDLC)
Protocolo: protocolo superior ao qual o conteúdo do quadro
deve ser entregue (ex.: PPP-LCP, IP, IPCP etc.)
Informação: dados da camada superior
Verificação: CRC (redundância cíclica para deteção de erros)
– Cobre tudo, exceto a própria verificação e os flags
7
Byte stuffing (exemplo)
byte com o
padrão do flag nos
dados a enviar
byte com padrão de flag (Ox7E) é precedido do
byte ESCAPE (0x7D) na transmissão no enlace
8
PPP protocolo de controle de dados

Antes de trocar dados da camada de rede
– Configurar o enlace PPP (LCP)

Tamanho máximo do quadro, autenticação, relatórios de qualidade,
compressão (campos de endereço e controle suprimidos), CRC 32 bits
– Aprender/configurar as informações da camada de rede (NCP)

Para IP: transportar mensagens do protocolo de controle IP (IPCP)
(campo de protocolo: 8021) para configurar/aprender os endereços IP
9
PPP é …





Sem correção ou recuperação de erros
Sem controle de fluxo
Sem garantia de entrega em ordem
Sem suporte a enlaces multiponto (ex., polling)
Recuperação de erros, controle de fluxo,
reordenação dos dados, tudo relegado para as
camadas mais altas!
10
Ações Essenciais em POS

Identificar a fronteira entre pacotes IP dentro do
campo de informação do SDH (payload)

Evitar que um usuário transmita sequências longas
de 0 ou de 1 de modo a perder sincronização ou
haver deteção errônea de falta de sinal (0 é falta de
luz) (segurança)
– Em POS, campos de informação do SDH poderão ser
preenchidos por pacotes de conteúdo qualquer vindos de
um único usuário
11
Solução para Segurança


Embaralhar campo de informação de POS com uso
de polinômio gerador para prevenir sequência longa
de 0s ou 1s
Usar embaralhamento para dificultar ataque
malicioso de usuário de POS
12
Embaralhamento: necessidade

SDH/SONET usa codificação NRZ: 1 = luz, 0 = ausência de luz
– Sequência longa de O’s ou 1’s pode causar perda de sincronização

Todos os bytes são embaralhados
– Polinômio 1 + x6 + x7 com semente 1111111 é usado para gerar
uma sequência pseudo-randômica (repete a cada 127 bits), que é
somada ou-exclusivo (XOR) aos bits de entrada

Implementado por registro de deslocamento inicializado com 1’s
– Exemplo: polinômio 1 + x6 + x7
13
Embaralhamento: necessidade

Polinômio 1+x6+x7 garante robustez frente a cargas hostis de
vários tributários, mas insuficiente quando a maior parte da
carga vem de um único usuário como em POS
– Se usuário malicioso gerar pacote IP repetitivamente com
conteúdo igual à saída randômica, existe uma chance de 1/127 de
sincronizar com o embaralhador
– Saída do polinômio é conhecida e apenas é necessário a
sincronização por tentativa para gerar grandes sequências de
ZEROS e falha de operação

Há a necessidade de se usar polinômios de maior
grau com POS
14
Embaralhamento: ataque malicioso

Ataque malicioso
– 21 datagramas de 1500 bytes podem gerar 2080 bits de 0’s (13
microssegundos em STS-3c) resultando em perda de sinal,
enquadramento e sincronismo [T1X1.5/97-134, 97-130]
– Padrão requer 2,3-100 microssegundos para detetar perda de sinal
– A maioria das interfaces opera em baixa velocidade e não
consegue manter sync após perda de 80 bits

Tarifas das operadoras baseadas em garantia contra erros e
falhas
– Ataque pode causar excesso de falhas sem que a operadora
consiga detetar
– Um único usuário pode transtornar um grande número de usuários

APS (recuperação automática) é disparado e interrupção pode
durar até 50 ms
15
Solução 1 para Fronteiras de
Pacotes: IP/PPP/HDLC/SDH

Encapsular pacotes IP com PPP e usar FLAGs do
HDLC para delimitar os pacotes
– Tem que usar byte stuffing do PPP para marcar flags (0x7E)
dentro do campo de informação, o que gera overhead
– CRC do HDLC (2 a 4 bytes) garante a integridade do pacote
IP
16
Pilha POS: IP/PPP/HDLC/SDH

A função básica do HDLC é delimitar o quadro PPP
17
Funcionamento de POS

O fluxo POS deve ser inserido no envelope de carga síncrono
do SONET/SDH (SPE-synchronous payload envelope) de forma
contínua, mas como pacotes são assíncronos por natureza,
necessário um método para gerar fluxo contínuo
– FLAGs (0x7E) inseridos durante os períodos ociosos
– Esses flags não são antecedidos de ESC e simplesmente são descartados

Como pacotes são de tamanho variável, não existe um
alinhamento específico no SPE, e quadros POS podem se
espalhar sobre dois quadros SDH
– Introduz atraso de armazenamento por hop da ordem de 0,125 ms,
pois a recepção completa de um pacote pode ter que esperar o
recebimento do próximo quadro SDH

Ponteiros do cabeçalho de linha localizam o contêiner virtual
18
Mapeamento de Quadros POS em
STS-12c (STM-4)

Fixed stuff corresponde a bytes de caminho que não são
usados para dados para compatibilidade com quadros SDH
STS-n não concatenados
19
Gerência POS
IP/PPP/HDLC/SDH

SDH/SONET gerenciados com CMIP, Roteadores IP
gerenciados via SNMP
– Não se pode configurar equipamento SDH a partir de
plataforma IP

Dificuldade para QoS
– Byte stuffing em PPP pode criar overhead imprevisível
– Sem prioridade ou preempção em IP/PPP/SDH

SDH permite múltiplos destinos a partir de um único
link usando quadros STS-n, mas PPP não suporta
esta facilidade, sendo estritamente ponto a ponto e
forçando esta operação quando utilizado em POS
20
Enquadramento tipo-HDLC
(HDLC-like)

Caracteres de FLAG, ESC e outros de controle no campo de carga do
pacote, são antecedidos de ESC e somados ou-exclusivo com 0x20
– Flags inseridos durante os períodos ociosos para manter o sincronismo não
são afetados

Na recepção, caracteres ESC são removidos e o byte seguinte é XOR
0x20 caso não seja FLAG
– ESCAPE seguido de FLAG significa para abortar o quadro
Dado original
Com ESCAPE
7E (FLAG)
7D 5E
7D (ESC)
7D 5D
21
Embaralhamento: mais robustez

ANSI T1X1.5 + IETF RFC-2615 recomenda usar 1+x43 para
PPP over SONET de STS-1 até STS-48 (STM-16 2,5 Gbps)
– Taxas mais altas requerem mais estudo, pois byte stuffing é lento

Um rótulo de caminho (byte C2 no SDH) indica POS como
conteúdo do campo de carga (payload)
– 22 (0x16) POS com embaralhamento (RFC-2615)
– 207 (0xCF) POS sem embaralhamento (RFC-1619)
22
STS-1: Overhead de Rota

Overhead de rota (9 bytes)
– (B3) Byte de paridade para carga útil (payload) anterior
– (C2) Byte de identificação de rota, identificando o protocolo
superior sendo carregado na carga (IP, ATM, etc.)
– (F2) Byte de usuário - canal de 64 kbps
– (G1) Byte de estado de rotas
Enviado
no canal reverso quando full duplex
– (H4) Byte indicador de quadro múltiplo (cargas grandes >
9x86 bytes)
– ( J1) Byte de rastreio de rota - canal de 64 kbps
Padrão
de 64 bytes contínuo
– (Z3-Z5) Bytes para uso futuro

Carga útil de 9x86 bytes
23
Quando embaralhar?



Caminho A (padrão): entre HDLC e SONET/SDH
Caminho B, seria outra solução, embaralhando antes do HDLC,
o que pode mascarar flags no campo de info, evitando ESC e
diminuindo o overhead
Embaralhamento pode impactar a deteção de erro de CRC no
HDLC e por isso o padrão é embaralhar depois do HDLC
– Algumas sequências de erro detectáveis sem o embaralhador
podem passar sem deteção com o embaralhador
– Usar CRC de 32 bits ao invés de 16 bits (ou usar 1+x23+x43)
24
Interface Física POS padrão:
embaralha após HDLC

CRC de 16 bits
– 1 + X5 + X12 + X16

CRC de 32 bits
– 1 + X + X2 + X4 + X5 + X7 + X8 + X10 + X11 + X12 + X16 + X22 + X23 + X26 + X32


O primeiro bit do CRC a ser transmitido é MSB do byte de maior ordem
A FIFO de 256 bytes provê separação entre o sincronismo da linha e o
sincronismo do enlace devido à remoção de caracteres ESC
25
Solução 2 para Fronteiras de
Pacotes: IP/PPP/SDL/SDH

Para taxas mais altas, proposto IP/PPP/SDL/SDH
– SDL = Simple Data Link (RFC-2823)
– SDL POS identificado por rótulo C2 = 23 (0x17)


SDL não usa FLAG para delimitar quadro e não usa
byte stuffing
Formato do quadro
26
IP/PPP/SDL/SDH

Info de comprimento (2 bytes) protegida por 2 bytes
de CRC
– Pode corrigir 1 bit de erro simples
– Tem que ser calculada antes, forçando store and forward!

CRC separado para a carga
– CRC do PPP desabilitado


Embaralhamento auto síncrono usando 1+x43 entre
SDL e SDH
Sincronização de quadro inicial usando ponteiro H4
(rota)
27
IP/PPP/SDL/SDH

Quando CRC falha, receptor entra em modo de caça
– Computa CRC continuamente, até detetar fronteira correta
– SDL pode recuperar de perda de fronteira de quadros com
BER de 10-8 no tempo de 4 pacotes com alta probabilidade

Comprimento = 4 (LENGTH e CRC apenas)
reservado para quadros transmitidos no período
ocioso para manter sincronismo
– Quadros com comprimento = 4 são descartados no receptor
28
PPP/SDL/SDH

SDL pode ser usado em fibra escura, sem SDH
– Envio de quadros ociosos gera um fluxo contínuo de bits
– Perda das funções de gerência do SDH/SONET
– Possivelmente PPP LCP poderia ser usado para monitorar o
estado do enlace

Uso comprometido com o baixo custo de conexões
10 Gbps em roteadores IP
29
Ethernet over SONET
30
Pilha de Protocolos para Ethernet
over SONET

Opção 1: Delinear quadros Ethernet antes de inserção no
SONET com encapsulamento em HDLC (como feito com PPP)
31
Pilha de Protocolos para Ethernet
over SONET

Opção 2: Delinear quadros Ethernet antes de inserção no
SONET com encapsulamento com campos de preâmbulo,
comprimento e CRC, e caracteres IDLE para enchimento de
ociosidade

Desvantagens
– Armazenar quadro para calcular o comprimento com antecedência
(forçando a operação store and forward) é ineficiente
– Corrupção do campo comprimento pode levar a perda das
fronteiras dos quadros e demora em resincronizar
32

Documentos relacionados