Definir configurações no sistema operacional host
Este capítulo fornece informações sobre como ajustar as configurações no sistema operacional host para habilitar recursos avançados ou aumentar a escala da funcionalidade do cRPD.
Configurar o dimensionamento ARP
O número máximo de entrada ARP é controlado pelo kernel do host Linux. Você pode ajustar os limites de entrada ARP ou NDP usando o sysctl comando no host Linux.
Por exemplo, para ajustar o máximo de entradas ARP usando IPv4:
root@host:~# sysctl -w net.ipv4.neigh.default.gc_thresh1=4096
root@host:~# sysctl -w net.ipv4.neigh.default.gc_thresh2=8192
root@host:~# sysctl -w net.ipv4.neigh.default.gc_thresh3=8192
Por exemplo, para ajustar o máximo de entradas NDP usando IPv6:
root@host:~# sysctl -w net.ipv6.neigh.default.gc_thresh1=4096
root@host:~# sysctl -w net.ipv6.neigh.default.gc_thresh2=8192
root@host:~# sysctl -w net.ipv6.neigh.default.gc_thresh3=8192
Associação IGMP no Linux
Para permitir um maior número de adjacências OSPFv2/v3 com cRPD, aumente o limite de associação IGMP:
root@host:~# sysctl -w net.ipv4.igmp_max_memberships=1000
Módulos do kernel
Você precisa carregar os seguintes módulos de kernel no host antes de implantar o cRPD no modo de Camada 3. Esses módulos geralmente estão disponíveis em linux-modules-extra ou kernel-modules-extra pacotes. Execute os comandos a seguir para adicionar os módulos do kernel.
-
modprobe tun -
modprobe fou -
modprobe fou6 -
modprobe ipip -
modprobe ip_tunnel -
modprobe ip6_tunnel -
modprobe mpls_gso -
modprobe mpls_router -
modprobe mpls_iptunnel -
modprobe vrf -
modprobe vxlan
Configurar MPLS
Para configurar o MPLS no kernel Linux:
Seleção de campo de hash para balanceamento de carga ECMP no Linux
Você pode selecionar a política de hash ECMP (fib_multipath_hash_policy) para tráfego encaminhado e gerado localmente (IPv4/IPv6).
Tráfego IPv4
wECMP Usando BGP no Linux
O balanceamento de carga de custo desigual é uma maneira de distribuir o tráfego de forma desigual entre diferentes caminhos (compreendendo o próximo salto multipath); quando os caminhos têm recursos de largura de banda diferentes. O protocolo BGP marca cada rota/caminho com a largura de banda do link usando a comunidade estendida de largura de banda do link. A largura de banda do link correspondente pode ser codificada como parte dessa comunidade de largura de banda do link. O RPD usa essas informações de largura de banda de cada caminho para programar os próximos hops multipath com linux::weights apropriados. Um next-hop com linux::weight permite que o kernel Linux balanceie a carga do tráfego de forma assimétrica.
O BGP forma um próximo salto multipath e usa os valores de largura de banda de caminhos individuais para descobrir a proporção de tráfego que cada um dos next-hops que formam o next-hop ECMP deve receber. Os valores de largura de banda especificados na largura de banda do link não precisam ser a largura de banda absoluta da interface. Esses valores precisam refletir a largura de banda relativa de um caminho em relação ao outro. Para obter detalhes, consulte Noções básicas sobre como definir comunidades BGP e comunidades estendidas e como as comunidades BGP e comunidades estendidas são avaliadas em condições de correspondência de política de roteamento.
Considere uma rede com R1 recebendo caminhos de custo igual de R2 e R3 para um destino R4. Se você quiser enviar 90% do tráfego com balanceamento de carga pelo caminho R1-R2 e os 10% restantes do tráfego pelo caminho R1-R3 usando wECMP. Você precisa marcar as rotas recebidas dos dois pares BGP com a comunidade de largura de banda do link configurando policy-optionso .
Habilitar SRv6 no cRPD
Você pode habilitar o recurso IPv6 SR no cRPD usando o seguinte comando sysctl: