ジュニパーBNG CUPS加入者グループの利用
加入者グループの概要
TR 459 CUPS、Reference Architecture、Deployment Models、Interface、and Protocolを備えたマルチサービスディスアグリゲーションBNG(TR-459)仕様では、BNGのディスアグリゲーションが加入者の耐障害性をどのように向上させるかが説明されています。これは、細分化されたコントロールプレーン(この場合はBNG CUPSコントローラ)に、その制御下にあるすべての細分化されたユーザープレーン(BNGユーザープレーン)のための一元化されたマスター状態データベースが含まれているためです。図1(TR-459より)は、BNGカップコントローラが任意の加入者セッションのマスター状態を保持するBNGユーザープレーン全体で、BNGユーザープレーンがいかに耐障害性を提供するかを示しています。BNGユーザープレーンは、特定の加入者セッションのアクティブな転送状態、またはバックアップ転送状態を保持します。
同じ復元機能の対象となる加入者セッションは、同じ加入者グループに配置されます。加入者をグループ化することで、コアルーティングの効率を向上させることができます。
加入者グループを使用することでメッセージングが最小限に抑えられるため、障害(またはアクティブからバックアップへの切り替えの要求)の検出からサービスの復旧までの経過時間が短縮されます。
アクティブまたはバックアップ状態は、加入者グループレベルで設定され、BNG CUPSコントローラによって関連するBNGユーザープレーンに通知されます。加入者セッションは、セッションが確立されたときに属する加入者グループでタグ付けされます。すべての耐障害性アクションは、セッションレベルではなく、加入者グループレベルで伝達されます。
加入者グループは、BNGユーザープレーンインターフェイスに基づいて作成されます。
耐障害性に優れた加入者グループには、以下の特性があります。
- 少なくとも 2 つの BNG ユーザー プレーンにまたがる。
- 1つ以上の冗長性インターフェイスが含まれます。冗長性インターフェイスは、各BNGユーザープレーン上の1つのインターフェイスで構成されています。
- 一度に1つのBNGユーザープレーンでのみアクティブです。加入者は、加入者のアクティブなBNGユーザープレーンによってのみサービスされます。また、加入者グループのすべてのインターフェイスが同時に移動します。
- BNGユーザープレーンには、複数の加入者グループを関連付けることができます。
加入者アドレス管理は、以下のように加入者グループで動作します。
- 加入者のIPアドレスは、その加入者グループで定義されたアドレスドメイン(プレフィックスで構成)から取得する必要があります。ドメインは、RADIUS VSA、SGRP名、ルーティングインスタンスに基づいて動的に作成されます。
- アドレスプレフィックスは、 アクティブ BNGユーザープレーンと バックアップ BNGユーザープレーンで異なる方法でアドバタイズされます。
加入者管理スイッチオーバーは、以下で構成されています。
- スイッチオーバーは、BNG CUPSコントローラまたはBNGユーザープレーンのいずれかで制御できます。
- ルートアドバタイズメトリックは、加入者グループのスイッチオーバー中に変更されます。
アドレスドメインプレフィックスとそれに関連するメトリックにより、BNGユーザープレーンごとにポリシーを適用できます。これは、ルーティングポリシーがあらゆる地域的な差異に収まるようにするためであり、加入者グループの切り替え時に優先メトリックを適用できます。
BNG CUPSコントローラー上での加入者グループは、以下の設定で構成します。
- 加入者グループ名と加入者グループ識別子(一意の32ビット符号なし整数)
- 状態—アクティブ、バックアップ、またはトラック論理ポート
- アクティブBNGユーザープレーンとバックアップBNGユーザープレーン
- 論理ポートと仮想MACアドレス
- プレフィックスとタグ
BNG CUPSコントローラでは、BNGユーザープレーンに関する詳細と各BNGユーザープレーンの論理ポートのリストを使用して、加入者グループが設定されます。BNG CUPSコントローラが管理する加入者グループでは、BNG CUPSコントローラは、 アクティブ または バックアップ の状態とそれぞれのポートリストのいずれかを含む加入者グループ通知をBNGユーザープレーンに送信します。
耐障害性のある加入者グループでは、加入者が加入者セッションにログインすると、両方のBNGユーザープレーンで同時にサービスが作成されます。サービスには、加入者グループIDもタグ付けされます。このとき、バックアップBNGユーザープレーンに関連付けられた加入者セッションは、双方向のすべてのパケットを破棄します。
加入者グループには、BNG CUPSコントローラが管理する加入者グループとBNGユーザープレーンが管理する加入者グループの2種類があります。
BNGユーザープレーンで管理される加入者グループは、単一の論理ポートペアを持ち、その状態が Track-Logical-Port (TLP)に設定されている耐障害性のある加入者グループです。TLPまたはBNGユーザープレーンが管理する加入者グループ(加入者グループタイプTLPとも呼ばれる)では、BNG CUPSコントローラがアクティブとバックアップの両方のBNGユーザープレーンインスタンスで加入者グループの状態を Track-Logical-Port に設定する必要があります。BNGユーザープレーンが状態を追跡する論理ポートを指定します。BNGユーザープレーンは、論理ポート上のアクセスネットワークの接続の運用状態を追跡します。これにより、スイッチオーバーが発生するかどうか、またいつ行われるかが決定されます。BNGユーザープレーン管理対象加入者グループに属する2つのBNGユーザープレーンは、アクセス側のアクティブ接続からバックアップ接続によってリンクされていると見なされます。2つのBNGユーザープレーンは、2つのどちらがセッションを処理するかを独自に決定します。この決定は、関連する論理ポートに基づいて行われます。
以下の例は、BNG CUPSコントローラでのBNGユーザープレーン管理対象加入者グループの設定を示しています。
BNG CUPSコントローラが管理する加入者グループではなく、BNGユーザープレーンが管理する加入者グループを使用することを推奨します。BNGユーザープレーンで管理対象の加入者グループでは、BNGユーザープレーンとアクセスネットワークの間で実行されているプロトコルが、ネットワーク接続でアクティブリンクとバックアップリンクを確立するため、これを推奨します。つまり、BNGユーザープレーンは、アクセスネットワークの運用状態の変化や障害を追跡し、ネットワークの変化直後に加入者グループのスイッチオーバーを開始します。
[edit groups bbe-bng-director bng-controller]
subscriber-group {
SGRP-TLP {
virtual-mac aa:bb:01:01:01:01;
user-plane-managed-mode {
redundancy-interface GAMMA {
logical-ports up:boston:ps1,up:nashua:ps3;
}
}
user-plane boston {
backup-mode hot;
}
user-plane nashua {
backup-mode hot;
}
}
}
user-plane-profileスタンザの変更とbng-controllerスタンザの変更は、異なる設定commitアクションで区切る必要があります。1 つのコミット・アクションを使用して、user-plane-profileとスタンザの変更bng-controllerをコミットすることはできません。
加入者グループを設定する前に、 user-plane 論理ポートが user-plane-profileですでに設定されていることを確認してください。
BNG CUPSコントローラが管理する加入者グループは、1つ以上の論理ポートペアを持つ耐障害性のある加入者グループであり、BNG CUPSコントローラは、BNGユーザープレーン(加入者グループタイプA/Bとも呼ばれる)上のアクティブおよびバックアップ状態のみをプログラムします。ベストプラクティスとして、BNG CUPSコントローラ加入者グループは、単一の冗長性インターフェイス(または単一のポートペア)で設定する必要があります。
以下の例は、BNG CUPSコントローラ加入者グループの設定を示しています。
[edit groups bbe-bng-director bng-controller]
subscriber-group {
SGRP-AB {
virtual-mac aa:01:01:01:01:01;
control-plane-managed-mode {
preferred-user-plane-name jersey;
redundancy-interface GAMMA {
logical-ports up:jersey:xe-1/0/0,up:boston:xe-2/0/0;
}
}
}
}
ホットバックアップのサポートにより、スイッチオーバー時に、パケット損失をほとんどなくして、加入者のアクティビティとトラフィックに影響はありません。
BNG CUPSコントローラ上の加入者グループの状態を確認するには、 show subscriber-group コマンドを実行します。
user@host> show subscriber-group SGRP-AB Name: SGRP-AB ID: 5 User-Plane: jersey (active) (hot) User-Plane: boston (backup) (hot) Health status: healthy Mode: Control Plane VMAC: AA:01:01:01:01:01 Logical port mapping: BB device Name Logical-port Sessions Logical-port Sessions bb0.6 GAMMA up:jersey:xe-1/0/0 2 up:boston:xe-2/0/0 2 Address domains: Name Prefixes User-Plane Programmed User-Plane Programmed suburbs:SGP-AB:default 1 jersey 1 boston 1
スイッチオーバーは、加入者グループの使用をトリガーします。スイッチオーバーは、BNG CUPSコントローラが開始するスイッチオーバーとBNGユーザープレーンが開始するスイッチオーバーに分割できます。
request subscriber-group switchoverコマンドを使用して、BNG CUPSコントローラが開始するスイッチオーバーを開始します。
request subscriber-group switchover SGRP-AB
BNG CUPSコントローラがスイッチオーバーを開始すると、BNGユーザープレーン ジャージ はアクティブなBNGユーザープレーンではなく、バックアップBNGユーザープレーンになります。次の show subscriber-group コマンド出力を参照してください。
user@host> show subscriber-group SGRP-AB Name: SGRP-AB ID: 5 User-Plane: boston (active) (hot) User-Plane: jersey (backup) (hot) Health status: healthy Mode: Control Plane VMAC: AA:01:01:01:01:01 Logical port mapping: BB device Name Logical-port Sessions Logical-port Sessions bb0.6 GAMMA up:boston:xe-2/0/0 2 up:jersey:xe-1/0/0 2 Address domains: Name Prefixes User-Plane Programmed User-Plane Programmed suburbs:SGP-AB:default 1 jersey 1 boston 1
デフォルトの加入者グループ
デフォルトの加入者グループは、BNGユーザープレーンがBNG CUPSコントローラに関連付けられているときに自動的に作成される加入者グループです。デフォルトの加入者グループに追加のBNGユーザープレーンが割り当てられていない場合、その加入者グループは耐障害性がありません。
ヒットレス(つまり、パケット損失がほとんどまたはまったくなく、加入者のアクティビティとトラフィックが影響を受けない)メンテナンスユースケースでは、バックアップBNGユーザープレーンは、サービスを受けているBNGユーザープレーンのデフォルト加入者グループに自動的に追加されます。このアクションは、BNGユーザープレーンでメンテナンスが実行されている間、既存の加入者トラフィックと状態を保持します。メンテナンスが完了すると、バックアップBNGユーザープレーンは、サービスされたBNGユーザープレーンのデフォルト加入者グループから削除されます。
追加の加入者グループ情報
各加入者グループには、他の加入者グループのアドレスプレフィックスと重複しない独自のアドレスプレフィックスがあります。
加入者がログアウトするか、加入者グループを削除して加入者クリーンアップがトリガーされると、BNG CUPSコントローラはバックアップとアクティブなBNGユーザープレーンの両方から最終的な統計情報を収集します。
BNGユーザープレーン管理対象加入者グループでは、アクセスネットワークでアクティブおよびバックアップ疑似回線またはEVPNを使用できます。
BNG CUPSコントローラマネージドスイッチオーバーとBNGユーザープレーンマネージドスイッチオーバーは、アクセスネットワークの技術によっては相互に排他的である場合があります。
ヒットレスメンテナンスのユースケースでは、加入者のアクティビティにほとんどまたはまったく中断はなく、BNGユーザープレーンがサービスされている間、ネットワークトラフィックは中断されない必要があります。ヒットレスメンテナンスは、BNG CUPSコントローラが管理する加入者グループとBNG CUPSコントローラが開始したスイッチオーバーを使用するユースケースの1つです。
設定された加入者グループ(加入者グループとサービスはすでに加入者グループのバックアップBNGユーザープレーンにインストール済み)を使用してメンテナンス操作を実行するには、BNG CUPSコントローラが開始するスイッチオーバーを使用して、メンテナンス中のBNGユーザープレーンを含む加入者グループのバックアップBNGユーザープレーンにトラフィックをシームレスに移動します。
メンテナンスが完了したら、BNG CUPSコントローラが開始するスイッチオーバーを再実行すると、サービスを受けたBNGユーザープレーンが加入者グループのアクティブなBNGユーザープレーンになります。
特定の加入者グループのアクティブ状態を1つのBNGユーザープレーンから別のBNGユーザープレーンに変更するスイッチオーバートリガーは数多くあります。
- BNG CUPSコントローラの管理インターフェイスを介したオペレーター駆動型トリガー。
- BNGユーザープレーン全体の障害。
- 一連のアクティブな加入者セッションに影響を与えるBNGユーザープレーンのコンポーネントの障害。
- BNGユーザープレーンに直接接続されたリンクまたはインターフェイスの障害が、論理ポートとアクティブな加入者セッションに影響を与える。
- BNGユーザープレーンとアグリゲーションネットワーク間の耐障害性のある接続のネゴシエートされたステータスの変更
- BNGユーザープレーンをネットワークの残りの部分から分離するIPコアネットワークの変更。
加入者グループとDHCPリレー
BNG CUPSは、DHCPリレーL3ホールセール型モデルをサポートしています。このモデルをサポートするために、小売業者ごとに専用のルーティングインスタンスが設定され、加入者グループに割り当てられます。DHCP リレー L3 ホールセール型モデルでは、小売業者の DHCP サーバーがアドレス割り当てを担当します。小売業者によって加入者に割り当てられたIPv4およびIPv6アドレスのプールを表すIPv4およびIPv6プレフィックスは、 prefix-advertisement コマンドを使用して加入者グループの一部として設定されます。また、ルートアドバタイズを目的として、オプションのルートタグを使用して prefix-advertisement コマンドを設定することもできます。
以下の例は、加入者グループ設定での prefix-advertisement コマンドの設定を示しています。
[edit groups bbe-bng-director bng-controller]
subscriber-group
subscriber-group-name subscriber-group-name
routing-instances
boston {
prefix-advertisement {
family inet {
tag 300;
backup-tag 400;
prefix 1.2.0.0/16;
prefix 1.3.0.0/16;
}
family inet6 {
tag 310;
backup-tag 410;
prefix 2:3::0/64;
prefix 2:4::0/64;
}
}
}
}
BNGユーザープレーンの前にDCHPリレーがあるDHCPローカルサーバーをサポートするには、アドレス指定モデルをサポートするために静的IPアドレスプールを使用する必要があります。加入者グループは、静的に設定されたアドレス割り当てプールの割り当てを許可します。静的に設定されたアドレス割り当てプールは、SGRPの外部で次のように定義されます。
IPv4プール—access address-assignment pool pool-name family inet network prefix
IPv6プール—access address-assignment pool pool-name family inet6 prefix prefix
静的IPアドレスプールのグローバル名は、 static-address-pools コマンドを使用して加入者グループ設定で参照されます。ネットワークプレフィックスはアドレスプールから派生し、設定されたルートタグを使用してアドバタイズされます(オプション)。
以下の例は、加入者グループ設定での static-address-pools コマンドの設定を示しています。
static-address-poolsコマンドの詳細については、static-address-poolsを参照してください。
[edit groups bbe-bng-director bng-controller]
subscriber-group
subscriber-group-name subscriber-group-name
routing-instances {
default {
static-address-pools {
pool-1-name {
tag 100;
backup-tag 200;
}
pool-2-name {
tag 110;
}
}
}
}