トラフィック制御 / SD-WANロードバランス
SD-WANロードバランスは、複数のVPN回線を利用してトラフィック負荷を分散させる機能です。
本機能は、各VPN回線(トンネルインターフェース)のジッター、レイテンシー、パケットロスを監視して回線状況を評価するリンク監視機能と、既存のポリシーベースルーティング(PBR)機能を組み合わせることで実現します。PBRの基本機能により、始点・終点アドレスだけでなく、アプリケーションごとの制御も可能です。
本機能はPBRとリンク監視機能を組み合わせて実現しますので、以下では「SD-WANロードバランス」を、「PBRルール」のネクストホップに「リンク監視グループ」と「リンク監視プロファイル」を指定している場合という意味で使用します。
本解説編ではおもにリンク監視機能の設定について述べます。PBRの詳細については「トラフィック制御」/「ポリシーベースルーティング」をご参照ください。
SD-WANロードバランス機能の基本仕様は次のとおりです。
- SD-WANロードバランスでは、対向する装置間に複数のVPN回線(トンネル)が張られている構成において、該当トンネルインターフェース間でトラフィックを分散させることが可能です。
- アプリケーションコントロール(DPI)を利用してトラフィックを分類する場合は、IPsec保護なしのGREトンネルのみをサポートします。DPIを併用しない場合はIPsecも使用可能です。
- SD-WANロードバランスの対象はIPv4トラフィックだけです。
- ロードバランス対象トラフィックにNATを適用することはできません。
- ロードバランスはフロー単位で行われます。1つのフローが同時に複数の回線を使用して送信されることはありません。
- ロードバランス対象VPN回線(トンネルインターフェース)の下位層(PPP、Ethernetなど)は別途冗長化してください(例:複数の異なるISPに接続する、VRRPを使う、など)。
基本設定
SD-WANロードバランスの設定は、リンク監視機能、PBRルールの順に行います。
以下、それぞれの手順について説明します。
なお、具体的なネットワーク構成については、「設定例集」/「SD-WANロードバランス」をご覧ください。
リンク監視機能
リンク監視機能は、Ping(ICMP Echo)パケットを使って各VPN回線の状況を継続的に監視し、ジッター、レイテンシー、パケットロス等の情報を収集する機能です。
SD-WANロードバランスでは、この情報をポリシーベースルーティング(PBR)のネクストホップ選択時に使用することで、VPN回線の状況に応じたトラフィック分散を実現します。
リンク監視機能の設定は次の流れで行います。
- システム全体でリンク監視機能を有効にします。これには、linkmon probe enableコマンドを使います。
awplus(config)# linkmon probe enable ↓
- 使用するVPN回線ごとに、監視パケット(Ping)の送信先を「リンク監視プローブ」として定義します。これには、linkmon probeコマンドを使います。
awplus(config)# linkmon probe name TUNNEL1 type ping destination 172.16.0.1 ↓
awplus(config)# linkmon probe name TUNNEL2 type ping destination 172.17.0.1 ↓
- 各VPN回線の状況を評価するための基準を「リンク監視プロファイル」として定義します。
これには、linkmon profileコマンドでプロファイルを作成し、latency bad-above、jitter bad-above、pktloss bad-aboveコマンドでしきい値を設定します。また、preferenceコマンドで優先的に使う情報を指定することもできます。
awplus(config)# linkmon profile tunnelquality ↓
awplus(config-linkmon-profile)# latency bad-above 100 ↓
awplus(config-linkmon-profile)# jitter bad-above 30 ↓
awplus(config-linkmon-profile)# pktloss bad-above 1.0 ↓
awplus(config-linkmon-profile)# preference pktloss ↓
awplus(config-linkmon-profile)# exit ↓
- ロードバランス対象のVPN回線を「リンク監視グループ」として束ねます。これには、linkmon groupコマンドでグループを作成し、memberコマンドで各VPN回線に対応するネクストホップアドレスとリンク監視プローブを指定します。
awplus(config)# linkmon group GROUP1 ↓
awplus(config-linkmon-group)# member 10 destination 172.16.0.1 probe TUNNEL1 ↓
awplus(config-linkmon-group)# member 20 destination 172.17.0.1 probe TUNNEL2 ↓
awplus(config-linkmon-group)# exit ↓
以上でリンク監視機能の設定は完了です。
あとは、PBRルールのネクストホップとして、通常のネクストホップアドレスではなく、「リンク監視グループ」と「リンク監視プロファイル」を指定することで、プロファイルに応じた各VPN回線の評価が行われ、PBRルールにマッチするトラフィックはもっとも状況のよい回線経由で送信されるようになります。
■ リンク監視機能の設定は、show linkmon probeコマンドで確認できます。
awplus# show linkmon probe ↓
Link Health Monitoring is enabled
Probe Name : TUNNEL1
Type : ping
Destination : 172.16.0.2
DSCP : 0
Packet Size : 100 bytes
Interval : 1000ms
Sample Size : 5
Latest metrics
Latency : 1ms
Jitter : 0ms
Packet Loss : 0.0%
Probe Name : TUNNEL2
Type : ping
Destination : 172.17.0.2
DSCP : 0
Packet Size : 100 bytes
Interval : 1000ms
Sample Size : 5
Latest metrics
Latency : 76ms
Jitter : 49ms
Packet Loss : 0.0%
PBRルール
■ リンク監視機能を利用したPBRルールを作成するには、ip policy-routeコマンドのlinkmon-groupパラメーターとlinkmon-profileパラメーターを使います。
たとえば、ゾーン「branch」から「center」へのトラフィックを、リンク監視グループ「GROUP1」所属のVPN回線間で、リンク監視プロファイル「tunnelquality」にもとづく回線状況に応じて負荷分散するには、次のようなPBRルールを作成します。
awplus(config)# policy-based-routing ↓
awplus(config-pbr)# policy-based-routing enable ↓
awplus(config-pbr)# ip policy-route 10 from branch to center linkmon-group GROUP1 linkmon-profile tunnelquality ↓
本PBRルールにおいて、リンク監視グループ「GROUP1」に所属する各VPN回線は、リンク性能プロファイル「tunnelquality」で指定されたしきい値にもとづき、good(良)、bad(不良)の2段階でリアルタイムに評価されます。
そして、このPBRルールにマッチするトラフィックは、その時点でgood(良)と判定されているVPN回線のうち、パケットロス率がもっとも低い回線(ネクストホップ)経由で送信されます(リンク性能プロファイルのpreferenceコマンドでpktlossを指定しているため)。もし2つの回線のパケットロス率が等しい場合は、リンク監視グループにおけるメンバーID(memberコマンドの<1-128>パラメーター)の小さいほうが選択されます。
■ リンク監視機能を利用したPBRの設定はshow pbr linkmonコマンドで確認できます。
awplus> show pbr linkmon all ↓
awplus> show pbr linkmon rule 10 ↓
awplus> show pbr linkmon group GROUP1 ↓
awplus> show pbr linkmon profile tunnelquality ↓
ポリシーベースルーティングの詳細は「トラフィック制御」/「ポリシーベースルーティング」を、ゾーンなどのエンティティー定義については「UTM」/「エンティティー定義」をご参照ください。
また、具体的な設定例については、設定例集をご覧ください。
(C) 2015 - 2019 アライドテレシスホールディングス株式会社
PN: 613-002765 Rev.A