O Multilink PPP, pode ser abreviado para MLP, MP, ou MLPPP, define o método para combinar múltiplos serial links em Layer 2. A motivação original para usar MLP é combinar múltiplos ISDN B-channels sem necessitar de qualquer tipo de balanceamento em Layer 3. O MLP pode ser usado para balancear tráfego sob qualquer tipo de link serial ponto-a-ponto.
O MPL faz lanceamento do tráfego fragmentando cada data link layer frame, ou com base no número de ligações paralelas ou no fragmentation delay configurado. Por exemplo, com 3 links paralelos, o MLP framenta cada frame em 3 fragmentos, enviado cada um deles por um dos links. Para permitir o reassembly no destino, o MLP adiciona um header (4 ou 2 bytes) a cada fragmento. O header inclui a Sequence Number field também a Flag bits designando o inicio e fim dos fragmentos.
O MLP pode ser configurado usando interfaces multilink ou virtual templates.
MLP Link Fragmentation and Interleaving
O termo Link Fragmentation and Interleaving (LFI) refere-se a um tipo QoS tool que previne que pacotes sensíveis ao delay tenham de aguardar tanto tempo. Para isto, as LFI tools fragmentam os pacotes maiores, e envia os pacotes sensíveis ao delay após uma porção do original, pacote longo. Os elementos chave incluem fragmentation, a capacidade para interleave parts de um pacote entre fragmentos de outro pacote, e um queuing scheduler que interleave os pacotes.
O exemplo seguinte, é um pacote com 1500 bytes que é fragmentado e um pacote de 60 bytes é interleaved entre fragmentos pelo queuing scheduler após os 1ºs 2 fragmentos
Os elementos chave do LFI são:
- O comando ppp multilink interleave indica ao router para permitir interleaving
- O comando ppp multilink fragment-delay size define o tamanho do fragmento indiretamente, com base na fórmula. A unidade para o delay é ms.
tamanho= size * bandwidth - MPL LFI pode ser usado com 1 ou vários links
- O queuing scheduler numa interface multilink determina o próximo pacote a ser enviado; como resultado muitas das implementações usam o LLQ, que fazem sempre interleave do tráfego sensível ao delay entre fragmentos
Exemplo:
Nota: Tambem e possível usar MLP em frame-relay recorrendo a um virtual-template usando o seguinte comando:
frame-relay interface-dlci dlci [ietf | cisco] [voice-cir cir] [ppp virtual-template-name]
Ligações:
R1-s2/0-| |-s2/0-R2
———–|mlp1|———–
R1-s2/3-| |-s2/3-R2
R1#
interface Multilink1
ip address 192.168.2.1 255.255.255.0
ppp multilink
ppp multilink group 1
interface Serial2/0
no ip address
encapsulation ppp
ppp multilink
ppp multilink group 1
interface Serial2/3
no ip address
encapsulation ppp
serial restart-delay 0
ppp multilink
ppp multilink group 1
R2#
interface Multilink1
ip address 192.168.2.2 255.255.255.0
ppp multilink
ppp multilink group 1
interface Serial2/0
no ip address
encapsulation ppp
serial restart-delay 0
ppp multilink
ppp multilink group 1
interface Serial2/3
no ip address
encapsulation ppp
serial restart-delay 0
ppp multilink
ppp multilink group 1
R1#sh ppp multilink
Multilink1
Bundle name: R2
Remote Endpoint Discriminator: [1] R2
Local Endpoint Discriminator: [1] R1
Bundle up for 00:11:32, total bandwidth 3088, load 1/255
Receive buffer limit 24000 bytes, frag timeout 1000 ms
0/0 fragments/bytes in reassembly list
0 lost fragments, 1009 reordered
0/0 discarded fragments/bytes, 0 lost received
0x813 received sequence, 0x822 sent sequence
Member links: 2 active, 0 inactive (max not set, min not set)
Se2/0, since 00:11:32
Se2/3, since 00:11:32
No inactive multilink interfaces
R1#ping 192.168.2.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.2.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/24/48 ms