MultiProtocol Label Switching - MPLS Prof. S. Motoyama
Rede IP Tradicional ROT - roteador ROT ROT ROT ROT ROT ROT ROT ROT ROT uvem IP ROT ROT 2
Encaminhamento de pacote na rede tradicional Prefixo Enderereço Int. 53.55 Prefixo Enderereço Int. Prefixo Enderereço Int.... 53.55 2 53.55 63.85 2 63.85 2 Roteador...... 53.55 53.55.33.6 Dados Roteador 2 Roteador 53.55.33.6 Dados 53.55.33.6 Dados 53.55.33.6 Dados 2 Roteador 63.85 Pacote é enviado utilizando endereço IP. 3
MPLS - Elementos Básicos - Label Edge Router Roteador de borda - Classifica os pacotes - Rotula os pacotes - Label Switching Router Roteador de Rótulos - Comuta pacotes utilizando os rótulos uvem MPLS 4
MPLS - Princípio de Operação LSP Label Switched Path LSP LA. recebe o pacote de uma LA e acrescenta um rótulo. uvem MPLS LA 2. comuta pacote, através da permutação de rótulos. 3. de egresso remove o rótulo e entrega o pacote 5
Exemplo de Encaminhamento de pacote na rede MPLS Rot En Prefixo Enderereço Int. 53.55 2 63.85 2 Rot Sai 3 5 Rot En 3 5 Prefixo Enderereço Int. 53.55 63.85 2 Rot Sai 8 2 Rot En 8 Prefixo Enderereço Int. 53.55... Rot Sai...... 2 8 53.55.33.6 Dados 53.55 53.55.33.6 Dados 53.55.33.6 Dados 3 53.55.33.6 Dados 2 Roteador utiliza o rótulo para comutar. Troca o rótulo na saida. 63.85 6
MPLS Estabelecimento de LSP O estabelecimento de um caminho entre o nó origem e o nó destino é realizado utilizando, por ex o protocolo de roteamento OSPF. LA uvem MPLS LA 7
Exemplo de Distribuição de Informação de Roteamento Prefixo Enderereço Int. 53.55 Prefixo Enderereço Int. Prefixo Enderereço Int.... 53.55 2 53.55 63.85 2 63.85 2 Roteador...... 53.55 Roteador 2 53.55 pode ser alcançado através deste roteador Roteador 53.55 e 63.85 podem ser alcançados através deste roteador. Atualização de rotas utilizando o protocolo OSPF. 63.85 pode ser alcançado através deste roteador. 2 Roteador 63.85 8
MPLS Distribuição de Rótulos. Estabelece os rótulos a serem utilizados na rede para fins de comutação em cada roteador. O protocolo para essa finalidade pode ser LDP (Label Distribution Protocol), RSVP, BGP. LA uvem MPLS LA 9
Exemplo de Distribuição de Informação de Rótulos em MPLS Rot En Prefixo Enderereço Int. 53.55 2 63.85 2 Rot Sai 3 5 Rot En 3 5 Prefixo Enderereço Int. 53.55 63.85 2 Rot Sai 8 2 Rot En 8 Prefixo Enderereço Int. 53.55... Rot Sai...... 2 Roteador Roteador Roteador Use label 8 para 53.55 53.55 Use label 3 para 53.55 e 5 para 63.85 2 Distribuição de labels, utilizando o protocolo LDP. Use label 2 para 63.85 Roteador 63.85 0
Formato e Posição do Label O label pode ser colocado: - no lugar de VPI/VCI no caso de utilizar a infra-estrutura ATM - no lugar de DLCI no caso de utilizar o Frame Relay - entre a camada enlace de dados (L2) e a camada rede (L3). Formato quando está entre L2 e L3. 20 bits 3 8 bits Label CoS S TTL 4 bytes S = Bottom of Stack TTL = Time to Live CoS = Class of Service
Formato e Posição do Label Posição no cabeçalho da célula 4 bits 8 bits 6 bits 3 bits 8 bits 48 bits GFC VPI VCI PTI CLP HEC Dados Label 20 bits Posição no cabeçalho PPP PPP Header Label Header Layer 3 Header 2
Forwarding Equivalence Class - FEC Os pacotes nos roteadores de borda são discriminados em classes, através das informações contidas nos cabeçalhos. Os pacotes de uma mesma classe percorrem os mesmos caminhos, significando que os pacotes são tratados de uma mesma maneira nos roteadores da rede MPLS. O termo Multiprotocol significa que a tecnologia MPLS pode ser aplicada para qualquer protocolo do nível 3. 3
Comutadores IP 2 Comutador 2 3 IP 3 - Os pacotes são classificados em fluxos no roteador de borda (). - São acrescentados rótulos (labels) em cada pacote no roteador de borda. - Os pacotes são comutados utilizando as informações dos rótulos. 4
Estratégias de Armazenamento ecessidade de armazenamento: dois ou mais pacotes podem se encaminhar a uma mesma saída. Procedimentos para solução de conflito:. Colocar um buffer em cada enlace de entrada. Buffer na entrada (input buffering). 2. Colocar um buffer em cada enlace de saída. Buffer na saída (output buffering). 3. Colocar buffers nos enlaces de entrada e de saída. 4. Colocar buffers nos estágios intermediários. 5
Buffer na Entrada enfileiramento y y x x roteamento y x Algoritmo de roteamento para resolução de contenção pode ser do tipo discutido em comutadores ATM. Entretanto, o gerenciamento do buffer é mais difícil, porque o comprimento do pacote é variável. solicitação permissão árbitro (resolução de contenção) controle 6
Buffer na Saida roteamento enfileiramento Inconveniente: a velocidade de transferência na matriz de comutação (roteamento) deve ser maior (speed-up, no máximo, vezes). 7
Buffer de Saída Virtual Enfileiramento (VOQ) roteamento Saída Saída Saída O buffer de entrada de cada enlace é organizada em saídas virtuais. Facilita o escalonamento, pois, o escalonador fica sabendo quanto pacotes devem ser encaminhados para cada saída. Saída solicitação permissão escalonador controle 8
Buffer na Entrada e na Saída filas de entrada roteamento filas de saída S i S o S i S o Os pacotes são armazenados provisoriamente nos buffers de entrada, e são transferidos para buffers de saída. O armazenamento na entrada permite um tempo maior para o escalonamento 9
Exemplo de Implementação Barr.REQ ( bits) Escalonador (SCH) Escalonador (SCH) Escalonador (SCH) Barr. ACK ( bits) CRT Porta entrada CRT Porta entrada 2... CRT 2...m 2...m 2...m Porta entrada... Porta saída Porta saída 2 Porta saída 20
Descrição da estrutura - Cada porta de entrada possui um único buffer do tipo FIFO enquanto cada porta de saída possui um conjunto de m buffers também do tipo FIFO. -Cada buffer de entrada é conectado aos m buffers de saída através de m enlaces físicos. - Cada porta de entrada possui uma unidade de controle (CRT) enquanto cada porta de saída possui um escalonador (SCH) com finalidades de controle. - Cada CRT é conectado a cada SCH através de uma linha reservada para transportar a informação de solicitação (REQ). A informação REQ é enviada do CRT ao correspondente SCH quando um novo pacote tem que ser transportado do buffer de entrada para uma saída. - O escalonador ao receber os pedidos de REQs dos CRTs utiliza um algoritmo de agendamento para escolher até m CRTs para transmitir os seus pacotes aos m buffers de saída. Aos CRTs escolhidos o SCH envia um sinal de confirmação (ACK) através de uma linha reservada. - Ao terminar a transmissão do seu pacote, o CRT envia um outro sinal de informação de fim de transmissão (EOT) ao SCH. Este sinal pode ser enviado usando as mesmas linhas usadas para transmitir o sinal REQ. 2
Operação do Comutador CRT Porta entrada CRT Porta entrada 2 CRT Porta entrada 3 CRT Porta entrada 4 CRT Porta entrada 5 Escalonador (SCH) 2 3 - As portas de entradas i, i 2, i 3, i 4 e i 5 possuem em seus buffers pacotes endereçados a mesma porta de saída de endereço j. - O número de enlaces internos é igual a três (m=3). - O esquema de agendamento é do tipo round robin. - Após as entradas terem enviado o sinal REQ ao escalonador j, apenas as entrada i, i 2 e i 3 receberão o sinal ACK. - Simultaneamente o escalonador j irá escolher os enlaces internos, 2 e 3, enviará ACKs e habilitará os respectivos pontos de cruzamentos. - Assim que uma das portas i, i 2 ou i 3 terminar a sua transmissão e enviar o sinal de fim de transmissão (EOT) para o SCH, a entrada i 4 receberá o sinal ACK e irá ser servida usando um enlace interno livre. Porta de saída j 22
Análise - Modelagem Como a estrutura crossbar é simétrica, para a modelagem da estrutura do comutador podemos considerar apenas uma saída genérica j. Para a porta de saída j, as filas de entrada são filas distribuídas e podem ser modeladas como sendo uma única fila e os m enlaces como sendo m servidores. a porta de saída, o conjunto das m filas pode ser também considerado como uma única fila. Desta forma, o modelo completo do comutador pode ser representado por uma rede aberta de filas, como mostrado na figura abaixo. λ. 2 λ m 23
Análise apara a análise foram feitas as seguintes considerações: o número de enlaces de entrada ou de saída é, a chegada dos pacotes em cada enlace de entrada obedece a uma distribuição de Poisson com taxa média de chegada igual a λ, e o comprimento dos pacotes é exponencialmente distribuído com média /µ. A probabilidade de um pacote em uma entrada ser encaminhado a uma determinada saída é /. Os pacotes são servidos em um esquema FIFO. Assumindo as considerações anteriores, a rede aberta de filas pode ser modelada como uma fila M/M/m na entrada, e como uma fila M/M/ na saída. Utilizando o teorema de Burke para uma rede aberta de filas, a fila de entrada pode ser considerada independente da fila de saída. 24
25 Análise Tempo médio de atraso na fila de entrada. Para uma fila do tipo M/M/m, temos { } µ λ ρ ρ ρ ρ = =, ) ( 2, m E E m q ( ) m m k P m m k k ρ ρ ρ + = =!! 0 0 0 2,! ) ( P m m m E m m = ρ ρ ρ λ ρ } { } { e } { } { E T E E E q = + =
Análise Tempo de espera dos pacotes no buffer de entrada. Tempo de espera dos pacotes no buffer de saída. 0 0 8 x 0-4 Average Packet Waiting Time in Queu (sec.) 0-5 0-0 0-5 0-20 0-25 m= m=2 m=3 m=4 m=5 m=6 Link Capacity: 00 Mbps Packet Length: 8000 bits 0 0. 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 Loa d Average Waiting Time in Output Queue (s ec.) 7 6 5 4 3 2 Packet Length: 8000 bits 00 Mbps 50 Mbps 622 Mbps 2.4 Gbps 0 0 0. 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 Traffic Load 26