Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

ジュニパー® クラウドネイティブルーターとは

概要

ジュニパークラウドネイティブルーターは、JCNRコントローラ(cRPDベースの制御プレーン)と JCNR-vRouterを組み合わせたコンテナベースのソフトウェアソリューションです。クラウドネイティブルーターを使用すると、拡張転送機能でJunos OSベースのルーティングやスイッチング制御を有効にできます。

Kubernetes コンピューティング ホスト上で動作する JCNR コントローラは、コントロール プレーン管理機能を備え、Linux カーネルまたは JCNR-vRouter によって提供されるルーティング機能または転送機能を使用します。

Dataplane Development Kit(DPDK)は、ライブラリとドライバーのオープン ソース セットです。DPDKは、ネットワークインターフェイスカード(NIC)が直接メモリアクセス(DMA)パケットをアプリケーションのアドレス空間に直接送信できるようにすることで、高速パケット処理を可能にします。アプリケーションは、NIC からの割り込みのオーバーヘッドを回避するために、パケットをポーリングします。DPDK と統合することで、vRouter がカーネル モジュールとして実行される場合よりも、1 秒あたりにより多くのパケットを処理できます。

この統合ソリューションでは、JCNR-Controller は gRPC ベースのサービスを使用してメッセージ交換や JCNR-vRouter との通信を行い、完全に機能するクラウドネイティブ ルーターを作成します。この緊密な通信により、以下が可能になります。

  • ファブリックとワークロードインターフェイスの詳細

  • 必要に応じて、Kubernetesポッド用のDPDKまたはカーネルベースインターフェイスをプロビジョニングする

  • ポッドのIPv4およびIPv6アドレス割り当てを設定する

  • ルーティング テーブルへのルートのインストール

  • ISIS、BGP、OSPF などのルーティング プロトコルを実行する

利点

  • DPDK ベースの JCNR-vRouter によるパケット転送パフォーマンスの向上

  • Helmを使用した汎用コンピューティングデバイスでの導入、削除、アップグレードが容易

  • ソフトウェア内の完全なルーティング、スイッチング、転送スタック

  • MAC 学習、MAC エージング、MAC 制限、L2 統計などの基本的な L2 機能

  • 管理トラフィック用の無線ユニット(RU)への L2 到達可能性

  • 5G ミリ波 DU や 4G DU などの物理分散ユニット(DU)への L2 または L3 到達可能性

  • VLAN タギング

  • ブリッジ ドメイン

  • トランク ポートとアクセス ポート

  • イーサネットNICで複数の仮想機能(VF)をサポート

  • 接着 VF インターフェイスのサポート

  • 設定可能なL2アクセスコントロールリスト(ACL)

  • ファブリックインターフェイス上のエグレスブロードキャスト、不明なユニキャスト、マルチキャストトラフィックのレート制限

  • IPv4およびIPv6ルーティング

  • すぐに利用可能なソフトウェアベースのオープン無線アクセスネットワーク(O-RAN)のサポート

  • コンテナ化された導入で迅速にスピンアップ

  • 拡張性に優れたソリューション

図 1:ジュニパークラウドネイティブルーター Components of Juniper Cloud-Native Routerのコンポーネント
Kubernetes
メモ:

ジュニパーネットワークスは、プライマリ ノードとバックアップ ノードを指します。Kubernetes はマスター ノードとワーカー ノードを指します。このガイドの一次およびバックアップを Kubernetes の世界のマスターとワーカーと相互に関連付ける方法について説明します。

Kubernetes は、クラスター化コンピューティング環境でコンテナ化されたアプリケーションを実行するためのオーケストレーション プラットフォームです。コンテナ化されたアプリケーションの自動導入、拡張、ネットワーク、管理を提供します。

Kubernetesポッドは、1つ以上のコンテナで構成され、各ポッドはアプリケーションのインスタンスを表します。ポッドは、Kubernetesが管理できる最小ユニットです。ポッド内のすべてのコンテナは、同じネットワーク名スペースを共有します。

Kubernetessを利用して、クラウドネイティブルーターの運用に必要なインフラストラクチャをオーケストレーションしています。ただし、このマニュアルでは、Kubernetesのインストールや管理手順は提供していません。Kubernetesのドキュメントについては、 https://kubernetes.io を参照してください。現在、ジュニパークラウドネイティブルーターでは、Kubernetesクラスタをスタンドアロンクラスターにする必要があります。つまり、Kubernetesのプライマリ機能とバックアップ機能の両方が単一のノードで実行されます。

ジュニパークラウドネイティブルーターコンポーネント

ジュニパークラウドネイティブルーターコントローラ

JCNR-Controller(cRPD)は、クラウドネイティブルーターソリューションのコントロールプレーン部分です。コントローラは、クラウドネイティブルーターの他の要素と通信するために使用します。導入時にコントローラに設定した設定、ポリシー、およびルールは、実装のために、主に JCNR-vRouter エージェントと JCNR-vRouter の他のコンポーネントに通信されます。

例えば、cRPDでファイアウォールフィルター(ACL)がサポートされており、拒否ルールを持つL2アクセスリストを設定します。cRPD は、設定情報を JCNR-vRouter エージェントを介して JCNR-vRouter に送信します。

ジュニパークラウドネイティブルーターコントローラの機能:

  • NETCONF プロトコルを使用して外部の自動化およびオーケストレーション システムからアクセスできる Junos OS 互換 CLI 設定および操作コマンドを公開します。

  • 高速転送プレーンとして JCNR-vRouter をサポートします。これにより、DPDK フレームワークを使用して構築されたアプリケーションは、カーネルを通過せずに、アプリケーションと JCNR-vRouter に直接パケットを送受信できます。

  • 物理機能(PF)、仮想機能(VF)、virtio、アクセス、トランク インターフェイス上の VLAN タグ付きサブインターフェイスの設定を DPDK 対応 JCNR-vRouter で管理するためのサポート

  • ブリッジ ドメインの設定をサポート

  • 主に BGP および IS-IS でルーティング プロトコルを使用して、コア ネットワークへの DPDK アプリケーションの到達可能性をアドバタイズします。

  • クラスタ内および外部のポッドのL3ネットワーク到達可能性情報を配信します。

ジュニパークラウドネイティブルーターvRouter

JCNR-vRouter は、Linux カーネル内の Linux ブリッジまたは OVS(Open vSwitch)モジュールの代替手段です。JCNR-vRouterコンテナを収容するポッドには、JCNR-vRouterエージェントコンテナも格納されています。JCNR-vRouter の機能は次のとおりです。

  • L2 転送の実行

  • L2 レート制限の実行

  • DPDK ベースの転送を使用できる

  • L2 ACL(アクセスコントロールリスト)の適用

  • レイヤー 3 仮想プライベート ネットワークでルーティングを実行する

ジュニパークラウドネイティブルーターコンテナネットワークインターフェイス(JCNR-CNI)

JCNR-CNIは、ジュニパーが開発した新しいCNIで、JCNR-vRouterエージェント、JCNR-vRouterエージェントDPDKなどのジュニパー開発ポッド、DPDK対応アプリケーションポッド、クラウドネイティブルーターコントローラを扱います。JCNR-CNIは、アプリケーションポッドのネットワークインターフェイスをプロビジョニングするために、各ノードにインストールされたKubernetes CNIプラグインです。ポッド作成時に、Kubernetes はポッド インターフェイスの作成と設定を JCNR-CNI に委任します。JCNR-CNIは、cRPDおよびJCNR-vrouterと対話し、DPDKインターフェイスを設定します。ポッドが削除されると、JCNR-CNIが呼び出され、Kubernetesおよびクラウドネイティブルーターコンポーネントのポッドインターフェイス、設定、および関連する状態のプロビジョニングを解除します。JCNR-CNIは、Multus CNIと連携して、ポッドインターフェイスを追加および設定します。

JCNR-CNI は、以下の機能を提供します。

  • IPアドレスの割り当て、MACアドレスの割り当て、Kubernetesクラスター内のポッドとホスト間のインターフェイスの設定など、Kubernetesポッドのネットワークタスクを管理します。

  • L2 ACL の適用 – データ プレーンに適用するためにポリシーが JCNR-vRouter に送信されます。

  • 追加や削除などのポッドイベントに対する行為

  • cRPD 設定を生成します。

Syslog-NG

ジュニパークラウドネイティブルーターは、syslog-ngポッドを使用して、cRPDとvRouterからイベントログを収集し、ログをJSONベースの通知に変換します。通知はファイルに記録され、そのファイルからアクセスできます。