カテゴリー
2021年 Riverbed SD-WAN クラウド コンピューター 技術一般

SD-WAN を試す (2) Controller のインストール

PVアクセスランキング にほんブログ村 にほんブログ村 ブログブログへ
にほんブログ村

某お客様で SD-WAN を導入したいという話がありました。そこでリバーベッドテクノロジー社の SD-WAN 製品であるSteelConnect EX を提案しました。

その時にいろいろと動作確認しましたので、メモとして残しておこうと思いました。

今回は、Controller の初期設定についてです。

PVアクセスランキング にほんブログ村 にほんブログ村 IT技術ブログへ
にほんブログ村

Controller の初期設定

ヘッドノードの1つである Controller のインストールです。

リバーベッドテクノロジー社のサポートサイトから、OVA ファイルが手に入りますので、それをダウンロードし、ESXi にインストールします。

Controller には、最低3つのネットワークアダプターが必要となりますが、今回の構成では4つのネットワークアダプターで構成します。

OVA ファイルからインストールすると、ネットワークアダプタは1つしかありませんので、三つ追加しておきます。

  • ネットワークアダプタ1

Management Switch に接続させます。これが North-bound になります。

  • ネットワークアダプタ2

Control Switch に接続させます。これが South-bound になります。

  • ネットワークアダプター3

インターネットに接続させます。インターネット越しに接続しにきたSDWANルーターにポリシーを適用します。

  • ネットワークアダプター4

Logical WAN に接続させます。WANとして設定しますが、実際はLAN内のセグメントの1つです。

それでは、Controller インスタンスを起動させ、ログインします。デフォルトのログインアカウントは、admin/versa123 です。

ログインできました。

まず、インターフェースの設定を行います。これは、/etc/network/interfaces ファイルを編集していきます。

エディターソフトとしてvim がインストールされていますので、それを使います。

sudo vim /etc/network/interfaces

初期状態は、以下のように設定されています。

これを、以下のように編集していきます。

ここで設定するのは、eth0 の設定です。

eth0 は、Management Switch に接続されますので、私の環境では、10.100.3.0/24 のセグメントになります。

auto eth0
iface eth0 inet static
address 10.100.3.201
netmask 255.255.255.0
gateway 10.100.3.254

ファイルの編集が完了したら、:wq で保存します。

cat コマンドを使って、interfaces ファイルの内容を表示させて確認してみます。

cat /etc/network/interfaces

記入間違いがなければOKです。

次に、インターフェースの設定情報を表示させます。

ifconfig

eth0 には、まだIPアドレスが設定されてませんね。先ほどの設定内容を反映させる必要があります。

eth0 インターフェースをDownさせます。

sudo ifdown eth0

そして、eth0 インターフェースをUpさせます。

sudo ifup eth0

再度、インターフェースの設定情報を表示させてみます。

eth0インターフェースに、IPアドレスが設定されましたね。

ここでIPアドレスが見えない場合、interfacesファイルの記述が間違っている可能性がありますので、内容を見直してください。

Director のeth0が同じセグメントに接続されています。そのIPアドレスに対してPingを打ってみます。

ping 10.100.3.200

echo reply が返ってきましたね。通信可能ということです。

これで、Controller の初期設定は完了です。次は、Director とController を接続させて設定していきます。

Director からの設定

Director と Controller を連携させていきます。設定は全て、Director 上で行います。

Director のウェブ管理画面にログインします。

  • Name: Controllerのホスト名を入力します。今回は「CTL-02」としています。
  • Provider Organization: Director の初期設定の時に作成したOrganizationの名前をプルダウンメニューから選びます。
  • Global Controller ID: 始めの Controller であれば、「1」が表示されます。通番で、Controller が追加される度に数字が上がります。
  • Staging Controller: このコントローラーをステージング(SDWAN ルーターにコンフィグを渡す作業)で使用するため、チェックボックスにチェックを入れます。
  • IP Address: Controller の Eth0 の IPアドレスを入力します。入力後、接続性チェックが走ります。エラーになった場合は、Director と Controller 間の接続性を確認してください。
  • Analytics Cluster: Analytics サーバーをヘッドノードに追加する場合は、Analytic Cluster の名前をプルダウンメニューから選択します。

「Continue」で次に進みます。

次に、Controller の所在地を指定します。

住所を入力後、「Get Coordinates」をクリックすると、正確な位置情報が表示されます。

「Continue」で次に進みます。

Control ネットワーク向けのインターフェースの設定です。

  • Network Name: Control Switch に接続されるインターフェースの名前です。eth1が使われます。
  • Interface: vni-0/0 をそのまま使います。
  • VLAN ID: 今回の構成ではVLANは使ってませんので、0のままにします。
  • IP Address/Prefix: eth1のIPアドレスとサブネットマスクを指定します。
  • Gateway: eth1のデフォルトゲートウェイを指定します。今回の構成では、特に必要ないので空白にしています。
  • DHCP: eth1のIPアドレスをDHCPを使って動的アドレスで設定したい場合は、このオプションを有効にします。

「Continue」をクリックして次に進みます。

WAN インターフェースの設定です。

ここではNetwork Nameを指定していく必要があるのですが、初期状態は選択できるものがないため、最初に作成していきます。

画面右上の「+WAN Interface」をクリックします。

最初に作成するのは、「Internet」です。

  • Name: Internet と入力します。
  • Description: このWANインターフェースの説明を入力します。
  • Transport Domain: プルダウンメニューから「Internet」を選択します。

「OK」をクリックして、設定を保存します。

次に、「Logical WAN」を作成します。

再度、画面右上の「+WAN Interface」をクリックします。

  • Name: Logical_WAN と入力します。
  • Description: このWANインターフェースの説明を入力します。
  • Transport Domain: プルダウンメニューには「Logical WAN」がありませので、新規作成します。

「+ Transport Domain」をクリックします。

  • Name: Transport Domain の名前です。ここでは、Transport と入力します。
  • Description: このTransport Domain の説明を入力します。
  • Transport Domain ID: 22 と入力します。

「OK」をクリックして、設定を保存します。

Transpor Domain のプルダウンメニューから、「Transport」が選択できるようになりました。

「OK」をクリックして、設定を保存します。

それでは、WAN interfaces を設定していきます。

vni-0/0: 

Control ネットワークへの接続で使いますので、触らないようにします。

vn1-0/1:

インターネットに接続します。

  • Network Name: プルダウンメニューから、Internet を選択します。
  • IPv4 Address: インターネットへ接続するアドレスです。ここでは、11.0.0.2/24 としています。
  • IPv4 Gateway: 上記IPアドレスのデフォルトゲートウェイのアドレスです。ここでは、11.0.0.254としています。
  • Public IP Address: Inbound NATでこのインターフェースにアクセスさせたい場合は、ここにパブリックIPアドレスを指定します。今回は使用しません。
  • WAN Staging: ステージングの通信を行いたいインターフェースであれば、このオプションを有効にします。

vni-0/2:

Logical WAN に接続します。

  • Network Name: プルダウンメニューから、Logical WAN を選択します。
  • IPv4 Address: Logical WANセグメントと通信するためのアドレスです。ここでは、10.100.6.201/24 としています。
  • IPv4 Gateway: 上記IPアドレスのデフォルトゲートウェイのアドレスです。ここでは、10.100.6.254としています。
  • Public IP Address: Inbound NATでこのインターフェースにアクセスさせたい場合は、ここにパブリックIPアドレスを指定します。今回は使用しません。
  • WAN Staging: ステージングの通信を行いたいインターフェースであれば、このオプションを有効にします。

「Deploy」をクリックして、設定を適用します。

画面右下にプログレスバーが出力されますので、100%になるまで待ちます。

設定の適用が完了したら、画面右上のTasks(ベルマークの隣のメモ帳のようなアイコン)をクリックします。

ここに、ログが表示されます。

Controller のDeploy のログを確認します。エラーが出力されていなければOKです。

Administration > Appliances の順にクリックします。

アプライアンスのリストに、CTL-02の名前のController が表示されます。

Config SynchronizationとReachabilityが緑マーク、ServiceがUpになていることを確認します。

Controller にログイン

最後の仕上げです。

Controller に、コンソール、またはSSHでログインします。

Controller を再起動し、設定を反映させます。

sudo shutdown -r now

システムの起動が完了したら、Controller にログインします。

関連する記事:

最近の記事:

カテゴリー
2021年 Riverbed SD-WAN クラウド コンピューター 技術一般

SD-WAN を試す (1) Director のインストール

某お客様で SD-WAN を導入したいという話がありました。そこでリバーベッドテクノロジー社の SD-WAN 製品であるSteelConnect EX を提案しました。

その時にいろいろと動作確認しましたので、メモとして残しておこうと思いました。

PVアクセスランキング にほんブログ村 にほんブログ村 IT技術ブログへ
にほんブログ村

Director の初期設定

まずは、ヘッドノードの1つである Director のインストールです。

リバーベッドテクノロジー社のサポートサイトから、OVA ファイルが手に入りますので、それをダウンロードし、ESXi にインストールします。

Director には、最低2つのネットワークアダプターが必要となります。OVA ファイルからインストールすると、ネットワークアダプタは1つしかありませんので、もう一つ追加しておきます。

  • ネットワークアダプタ1

Management Switch に接続させます。これが North-bound になります。

  • ネットワークアダプタ2

Control Switch に接続させます。これが South-bound になります。

ネットワークアダプターが 2つにになりましたので、早速、Director の仮想アプライアンスを起動させます。

Director にログインします。

デフォルトのログインアカウントは、Administrator/versa123 です。

ログインできたら、初期設定をしていきます。

Do you want to enter setup? (y/n)?

セットアップを開始しますか?

y で進みます。

[sudo] password for Administrator

Administrator のパスワードを入力してください。

ログインした時のパスワードを入力します。

Do you want to setup hostname for system? (y/n)?

システムのホスト名を設定しますか?

y で進みます。

Enter hostname:

ホスト名を入力してください。

Director のホスト名を入力します。ここでは「DIR-01」としてます。

Do you want to set up network interface configuration? (y/n)?

ネットワークインターフェースの設定を行いますか?

y で進みます。

Enter interface name [eg. eth0]

設定するインターフェース名を指定してください。

eth0 と入力し、このインターフェースの設定を行います。

Enter IP Address:

IPアドレスを入力してください。

今回は、10.100.3.200 とします。これは、Managementネットワークに所属するアドレスです。

このネットワーク経由で、ウェブ管理画面へのアクセスや、SSH でのアクセスを行います。

Enter Netmask Address:

ネットマスクを入力してください。

今回は、255.255.255.0 (24 bit) とします。

Configure Gateway Address? (y/n)?

ゲートウェイのアドレスを設定しますか?

y で進みます。

Enter Gateway Address:

ゲートウェイのアドレスを入力してください。

今回は、10.100.3.254 とします。

Configure another interface? (y/n)?

別のインターフェースを設定しますか?

y で進みます。

Enter interface name [eg. eth0]

インターフェースの名前を入力してください。

eth1 と入力します。

Enter IP Address:

IPアドレスを入力してください。

今回は、10.100.4.200 とします。これは、Control ネットワークのアドレスです。

Enter Netmask Address:

ネットマスクを入力してください。

今回は、255.255.255.0 とします。

Configure another interface? (y/n)?

別のインターフェースを設定しますか?

今回の構成では、ネットワークインターフェースは 2つになりますので、n で進みます。

Configure North-Bound interface (If not configured, default 0.0.0.0 will be accepted)(y/n)?

North-Bound インターフェースを設定しますか?(もし設定しない場合、デフォルトの0.0.0.0が適用されます)

y で進みます。North-Bound インターフェースに、デフォルトルートが適用されます。

North-Bound インターフェースの設定です。

Enter interface name [eg. eth0]

インターフェース名を入力してください。

今回の構成では、eth0 を North-Bound インターフェースとします。eth0 を指定します。

South-Bound インターフェースの設定です。

Enter interface name [eg. eth0]

インターフェース名を入力してください。

今回の構成では、eth1 を South-Bound インターフェースとします。eth1 を指定します。

Configure another South-Bound interface? [y/n]?

別のSouth-Bound インターフェースを設定しますか?

今回の構成では、South-Bound インターフェースは 1つとします。n で進みます。

Enable secure mode for Director HA ports [y/n]?

Director HA ポート向けにセキュアモードを有効にしますか?

今回の構成では、Director は HA 構成とはしません。n で進みます。

Secure Director HA communication? [y/n]?

Director のHAコミュニケーションを暗号化しますか?

今回の構成では、Director は HA 構成とはしません。n で進みます。

Prompt to set new password at first time UI login [y/n]?

最初にウェブ管理画面にアクセスした時に、パスワード変更の連絡を出力させますか?

ウェブ管理画面に初めてアクセスした際に、ログインパスワードを変更したい場合、y とします。

今回は変更しませんので、n で進みます。

設定が適用され、各種サービスが停止し始めます。

設定が完了し、各種サービスが起動ました。

Press ENTER to continue

エンターキーを押し進んでください。

Enter キーを押します。

ログインプロンプトが表示されますので、Director にログインします。

設定を完了させるため、システムを再起動します。

Linux のシャットダウンコマンドです。実行するためには、「sudo」を付けておく必要があります。

sudo shutdown -r now

ウェブブラウザーに、Director の eth0 の IPアドレスを指定し、Director のウェブ管理画面にアクセスします。

http://10.100.3.200

ログインできました。

Organization の作成

Organization とは、これから追加する Controller や SD-WAN ルーターが所属する組織(いわゆるグループ)のことです。

この Organization を一括りにして管理することができます。

SteelConnect EX は、マルチテナントをサポートしています。つまり、この Organization が複数作成できます。そして、Organization-1 は Organization-2 にはアクセスできず、設定も別となるというセキュリティー範囲の単位でもあります。

ちなみにこのOrganizationですが、階層型をサポートしており、Sub Organization を複数配下に作成していくことも可能です。

Administration > Organization の順にクリックして進みます。

初めてのアクセスの際に、Confirm Add Organization のポップアップウィンドウが表示されます。

OK」をクリックします。

「Add Organization」の設定画面のウィンドウが表示されます。

  • Name: Organizationの名前を指定します。
  • Description: この Organization の説明を入力します。
  • Global Organization ID: 初めての Organization の作成であれば「1」になります。通番ですので、通常は特に意識することはないです。
  • Subscription Profile: 通常は、Default-All-Service-Plan を選択しておきます。
  • Authentication Connector: Analytics サーバーも使用する場合は、ここで Analytics Cluster の名前を指定します。

Supported User Rules」タブをクリックします。

Available」のところに、さまざまな役割が表示されます。

Add All」をクリックして、全ての項目を「Selected」の方へ移動させます。

全ての項目が移動したのを確認し、「OK」をクリックします。

Organization のリストに、作成した名前が表示されれば完了です。

次回は、Controller を設定していきます。

関連する記事:

最近の記事:

カテゴリー
2021年 Riverbed SD-WAN クラウド コンピューター 技術一般

SD-WAN を試す (0)

PVアクセスランキング にほんブログ村 にほんブログ村 IT技術ブログへ
にほんブログ村

某お客様で SD-WAN を導入したいという話がありました。そこでリバーベッドテクノロジー社の SD-WAN 製品であるSteelConnect EX を提案しました。

その時にいろいろと動作確認しましたので、メモとして残しておこうと思いました。

SD-WAN ですが、ヘッドノードのサーバーで構成されるコントロールプレーンと、実際にユーザーデーターを転送するデータプレーンの 2つで構成されます。

ヘッドノードは、ハードウェア版と仮想版があるのですが、今回は、仮想版を使用しました。VMWare ESXi上で動作します。

SD-WAN ヘッドノードですが、

  1. Director
  2. Controller
  3. Analytics

という 3つのサーバーから構成されます。

このうち、1 と 2 はヘッドノードとして必須コンポーネントとなり、3 はオプションとなります。

注意点は、ヘッドノードを構成して運用が始まった後に、Analyticsサーバーを後から追加するためには、設定を全て初期化する必要があります。

そのため、Analyticsが必要であるかどうかは、最初によく検討しておく必要があります。

SD-WAN がなぜ求められるのか

SD-WAN と言っても、結局は、ルーターやスィッチです。

ですが、コントロールプレーンとデータプレーンを分け、設定や管理は全てコントロールプレーンで集中管理し、データプレーンはデータを転送することのみに集中しているという点が異なります。

これにより、データプレーンの機器は比較的安価なもので良くなり、中央管理できるので、運用管理のコストも下げられます。

また、クラウドを利用することが当たり前になった今、ローカルブレークアウトを使うことも普通になりました。

このためには、アプリケーションをポート番号レベルではなく、L7(アプリケーション)レベルで認識する必要があります。

このアプリケーション情報を使って、アプリ1 はインターネット、アプリ2 は MPLS、アプリ3 はインタネットVPN、という感じで経路を使い分けることができます。

これは、従来のルーターやスィッチでは難しかったことです。

PBR (Policy Based Routing) で、経路を使い分けることはできました。ですが、PBR のポリシーは、ACL (Access Control List) で定義されます。ACL は、IPアドレスとポート番号の組み合わせで成り立っています。

現在のアプリケーション、特にインターネット向けは、85% 以上が暗号化されています。つまり HTTPS(TCP/443)です。

ポート番号でしか指定できないと、HTTPS が一括りでしか制御できず、経路選択の意味がほとんどないという状態になります。

ここで Ciscoは、PfR (Performance Routing) と NBAR (Network Based Application Recognition) を組み合わせた設定を推していましたが、これを使うためには、ルーターにパワーが必要です。大型の機器になってしまうのです。

こういった点でも、SD-WAN ならお手軽に実現できます。

リバーベッドテクノロジー社の SD-WAN

リバーベッドテクノロジー社の SD-WAN ですが、最初はドイツの Ocedo社を買収しています。これを自社製品として、SteelConnect CX として販売をしました。

ですが、この製品は、エンタープライズクラスのルーティング向けには機能が足りないことが分かり、今度は、Versa Networks社と技術提携し、OEM 販売をしています。これが今回の SteelConnect EX です。

Versa Networks ですが、元々 Juniper Networks にいた人たちが結成した会社であり、ルーティング機能は非常にしっかりしています。エンタープライズルーティングという面でバッチリです。

そして、Next-Gen Firewall、URL フィルタリング、Anti Virus、IPS/IDS といったセキュリティー機能も豊富に搭載しています。リバーベッドテクノロジー社はこれを OEM 販売しているため、SteelConnect EX にも、同じ強みと特徴があります。

そして、リバーベッドテクノロジー社と言えば、WAN最適化のSteelHeadです。リバーベッドテクノロジー社の SD-WAN ルーターには、SteelHead の機能も搭載できます。

SteelConnect EX には、エンタープライズルーティング、セキュリティー、WAN最適化という SD-WAN に求められる 3つの機能の全てが搭載されているという訳です。

私のお客様も、SteelHead 大好きユーザーの1つでして、SD-WAN を検討された際に、SteelConnect EX 以外は考えられないと言われてました。

次回から、SteelConnect EX のヘッドノードをインストールした際のメモを紹介していきます。

関連する記事:

最近の記事:

カテゴリー
2021年 Linux Riverbed SaaS Windows キャッシュ クラウド コンピューター 技術一般 自動化 証明書

モバイル PC で SaaS の快適アクセス

Riverbed TechnologyのClient Accelerator(旧SteelHead Mobile) という製品を触ってみました。

なぜ、この製品を触ってみたかというと、バージョン 6.2.2 にSSL Agent (SSL Simplification)という機能が搭載され、最適化動作にサーバ証明書の管理が不要となったためです。これは便利!と思い、早速、評価してみました。

SteelHead Appliance とは

業界をリードする WAN 最適化装置です。WAN越し、インターネット越しのアプリケーションアクセスのパフォーマンスを向上させます。WAN やインターネットに流れるデータを、特別なキャッシュの技術を使ってデータ削減します。

リバーベッドテクノロジー社初心者向け技術トレーニング資料より抜粋

Client Acceleratorとは

SteelHead アプライアンスをソフトウェアにした製品です。Windows や Mac のラップトップにインストールして使えます。

リバーベッドテクノロジー社初心者向け技術トレーニング資料より抜粋

なぜ、SSL Agentが良いのか?

インターネットの通信の 85%以上が SSL 通信(HTTPS)であると言われています。つまり、暗号化されているのです。

こういった暗号化された通信を制御する製品では、通信を一旦終端し、暗号化を解く必要があります。

この暗号化には、サーバ証明書を使用しています。

企業内にホスティングされている Web サーバーであれば、そのサーバーの管理者に依頼すれば、サーバー証明書を入手することは可能です。

ですが、これがインターネット上のサーバーだったら、どうでしょうか。誰が管理者か分からないし、管理者が仮に分かっても、サーバ証明書は通常得られません。

インターネット上サーバーの証明書は、管理者に依頼しなくても、サーバ証明書の内容は入手することは可能です。ですが、いつそれらの証明書の内容が変更になるかは分からないという点は変わりません。その内容に合わせて代理証明書を作っても、元の証明書の内容が変更になるたびに代理証明書の方も変更する必要があり、管理が大変です。

WAN 最適化装置も、クライアント PC と Web サーバーの間の通信に入り込んで動作しますので、暗号化された通信は一度復号化する必要があります。そこに、サーバ証明書を使っています。

企業内の Web サーバーであれば、管理者に依頼してサーバー証明書を入手し、その証明書を WAN 最適化装置にもインストールしれば良いので対応できます。

しかし、これが Microsoft 365(Office 365)へのアクセスだったらどうでしょうか。マイクロソフトからサーバー証明書はもらえません。

復号化ができませんので、最適化動作(特に問題になるのはデータ削減)ができなくなります。

仮に、先ほどの方法で内容を把握し、自分で代理証明書を作成することは可能ですが、その内容が変更になったら、証明書がないのと同じです。マイクロソフトは、M365 の証明書をかなり頻繁に変更しています。

SSL Agent の登場

こういった問題を解決できるのが、SSL Agent です。この機能を使えば、サーバ証明書のインストールは不要になります。どうやったら証明書が入手できるのかとか、いつ変更になるのかを気にする必要はもうありません。

動作確認の構成

テスト構成はこんな感じです。

Client Accelerator と SteelHead の間に WAN シミュレーターを入れ、ここで疑似インターネットを作っています。WAN シミュレーターで、帯域幅や遅延、パケットロスが設定できます。今回のテストでは、100ミリ秒の遅延を入れています。

WAN シミュレーターには、WANemを使っています。

そして、アクセス先は、実際の M365 を使っています。私が個人で契約して使っているものですので、東京リージョンになります。M365 へのアクセスは、実インターネットの通信です。

データ削減の効果

OneDrive に保存してある 68MB のパワーポイントのドキュメントをダウンロードしてみました。

以下のグラフの一番上のコネクションが、OneDrive からのダウンロードのコネクションです。転送データの内、41% のデータが重複排除され削減されています。通信の宛先ポート番号がTCP/443(HTTPS)になってますね。サーバ証明書なしで、データ削減ができています。

キャッシュの無い一回目のデータ転送でも半分弱のデータが削減されてます。すごい効果ですね。40秒ほどで、ダウンロードが完了しています。

今度は、二回目の転送です。以下のグラフの上から2番目のコネクションが、OneDrive からのダウンロードのコネクションです。

同じパワーポイントのファイルを再度転送しています。91% のデータ削減です。もうほとんど、疑似インターネット上にはデータが流れてません。流れるデータの量が減れば、とうぜん体感のスピードだって上がりますよね。数秒でダウンロードは完了しています。

同じファイルなんだからデータが減って当たり前、という考え方もあります。

ですが、Riverbed 社のキャッシュは、ファイルキャッシュではなく、バイトキャッシュを使っています。

約100バイトの大きさにデータを細切れにし、その中の「0」と「1」の配列が同じであれば、1つにするという方式で、データ削減を行っています。

リバーベッドテクノロジー社初心者向け技術トレーニング資料より抜粋

つまり、この「0」 と「1」の配列が同じであれば良いだけで、パワーポイントで得たキャッシュで、エクセルでも PDF でも、データ削減が出来ちゃうという訳です。すごい技術を持ってます。

もう一つのテスト構成

Web プロキシーサーバーというものは、企業でよく使われています。これがあった場合でも、この WAN 最適化の仕組みは動くのだろうか?という疑問が湧きましたので、追加で動作も見てみました。

Web プロキシーサーバーには、 Unveil Technology 社のOpen Squidbox を使ってます。Linux でお馴染みの Squid なんですが、仮想アプライアンスみたいになってて、手軽に使えます。GUI の画面からグラフを見られて便利です。

Web プロキシー経由での、一回目のデータダウンロードです。以下のグラフの上から2番目のコネクションです。今度は、宛先ポート番号がTCP/3128(Squid)になってますね。

一回目のキャッシュなしのダウンロードで、44%のデータ削減が実現しています。

今度は二回目のダウンロードです。以下のグラフの下から4番目のコネクションです。94%のデータ削減が実現しています。Web プロキシーを経由しても、データ削減の効果は得られていますし、変わらない結果が得られました。

評価のまとめ

  • キャッシュを使ってのデータ削減と差分データ転送の効果は高い。
  • 運用すればするほどキャッシュは溜まるので、一回目のデータ転送時のデータ削減効果は高くなることが期待できる。
  • SaaS アプリケーションだけでなく、Yahoo や Facebook など、インターネット上にある Web サーバーは何でも最適化対象にできる。
  • ただし、ある程度の転送データ量があるコネクション(OneDrive や SharePoint のアクセス)を対象にしないと、投資効果が合わない。
  • ダイレクトアクセスでも、Web プロキシー経由のアクセスでも、通信を最適化することができる。

私のオーストラリアの某お客様が、シンガポールのデータセンターにある Web プロキシーを経由して Microsoft 365にアクセスしているが遅いといっていますので、早速、この SSL Agent を提案してみたいと思います!

SSL Agent の設定

最後に、設定内容もメモとして記載しておきます。

SteelHead アプライアンス側設定

SSL Main Setting のところで、SSL Optimization を有効にします。

SSL Advanced Settings のところで、TLS Blade を有効にします。

Client Accelerator Controller の自己証明書をコピーし、SteelHead アプライアンスのMobile Trust のリストに追加します。

これは、Client Accelerator ソフトウェアとSteelHead アプライアンス間(最適化通信のコネクション)を暗号化するためです。

Client Accelerator Controller 側のポリシーの設定

Port Label で、「Web」というラベルを作成し、TCP/80, 443, 3128を対象としています。Port Label とは、複数のポート番号をグループ化して名前で管理できるようにするものです。

In-Path ルールで、Webでまとめたポート番号向けの通信を全て最適化対象とするというルールを設定します。

今回使用しているルールの内容です。

Peering 証明書のところに、SteelHeadアプライアンスの自己証明書をコピーして追加します。Client Accelerator ソフトウェアとSteelHeadアプライアンス間の最適化通信を暗号化するためです。

SSL 設定のところで、SSL Optimization を有効にします。

その設定ページの下の方にあるTLS Optimization を有効にします。

Client Accelerator の評価版は、こちらから申請して試すことが可能です。

PVアクセスランキング にほんブログ村 にほんブログ村 ブログブログへ
にほんブログ村

関連する記事:

最近の記事:

カテゴリー
2021年 Linux NPM Raspberry Pi Riverbed SNMP コンピューター 可視化 技術一般

Raspberry Pi で SNMP エージェントを動かす

PVアクセスランキング にほんブログ村 にほんブログ村 ブログブログへ
にほんブログ村

Network Performance Monitoring(NPM)製品の動作確認をしていて、SNMPポーリングから、対象機器の情報を取得してトポロジーマップを作成するという機能を知りました。

私は、家の各部屋に Cisco スィッチ、インターネットルーターも Cisco ルーターを使っているので、それぞれの機器に SNMP の設定をしたのですが、今回は、Raspberry Pi にも SNMP の設定をしてみました。

私の Raspberry Pi では、Softether VPN サーバーが動いてますので、是非ともトポロジーマップに含めて、どのように表示されるのかが見たかったためです。

今回は、Raspberry Pi で SNMP エージェントを動かす設定を試した時のメモです。

Raspberry Pi OS は、Debian という Linux なので SNMPのエージェントには、Net-SNMP が使われています。

ですが、デフォルトではインストールはされていないようです。

追加インストールします。

$ sudo apt install snmpd

これでインストールは完了です。

次に、Net-SNMP の設定を行います。

設定ファイルは、「snmpd.conf」というファイルになります。保存場所は、/etc/snmp ディレクトリー配下になります。

ファイルを編集する前に、バックアップを取っておきましょう。これは Linux の設定を変更する時の基本ですね。

snmpd.conf ファイルが保存されているディレクトリーに移動します。

cd /etc/snmp

cp (Copy) コマンドで、バックアップファイルを作成します。

sudo cp ./snmpd.conf ./snmpd.conf.bak

作成されましたね。これでいつでも戻せます。

それでは、ファイルを編集して、設定をしていきます。

個人的には、編集の際には、vim を入れておくと便利だと思います。

「AGENT BEHAVIOUR」という項目の、以下の部分のコメントアウトを削除して、有効化します。

sudo vim ./snmpd.conf

コメントアウトを外します。

次に、MIB のアクセス範囲を広げておきます。

「ACCESS CONTROL」の項目の一行目に、以下のように記入しておきます。

最後に、「SYSTEM INFORMATION」の項目で、SysLocation と SysContact を入力しておきます。

基本的にはこれで完了です。

設定を変更しましたので、反映させるために、SNMP のプロセスを再起動しておきます。

sudo service snmpd restart

自分で使っているSNMPマネージャーでアクセスしてみましょう。

私が今回使っているのは、リバーベッドテクノロジー社のSteelCentral シリーズの NetIM という製品です。こいつから、Raspberry Pi に対して、SNMP ポーリングを行います。

Raspberry Pi が表示されました。

対象機器の情報を取得するまでに時間がかかるので、情報取得後に、トポロジーマップを確認してみたいと思います。

関連する記事:

最近の記事:

カテゴリー
2020年 CDN Microsoft Riverbed WebRTC キャッシュ コンピューター 技術一般

WebRTC とは -メディア通信の最適化

PVアクセスランキング にほんブログ村 にほんブログ村 IT技術ブログへ
にほんブログ村

先日、Kollective Technology の ECDN というコンテンツ配信製品を、社内で検討する機会がありました。

Microsoft Teams、Stream、Windows Update を使用した場合、使用する人数が増えるほど、WAN 回線の帯域幅を消費してしまい、回線が逼迫してしまうケースがあります。

ECDNがない場合の通信

Kollective 社の ECDN 製品を使用すると、WAN回線越しに流れてくるデータストリームを少なく(ケースにより1つにする)することができます。

データストリームを受けたブラウザーがそのデータをキャッシュし、同じ場所にいる別の端末に共有します。これにより、WAN 回線を効率的に使用することができる様になります。

ECDNがない場合の通信

この製品で、WebRTC という技術が使われています。

WebRTC は名前が聞いたことはあったのですが、詳細までは知らなかったので、いい機会なので調べてみました。

WebRTC とは?

WebRTC は、Web Real Time Communications の略で、プラグインを追加することなく、ブラウザ上で簡単にリアルタイムコミュニケーションを可能にします。2011年頃に Google によって提唱され、そこから少しずつ技術開発されてます。

HTML5 で新しく策定された API の規格で、P2P通信を利用した端末間の相互接続も行うことができ、P2P 通信によるビデオチャットやファイル共有を、Web ブラウザだけで実現することができます。

Web ブラウザーを使って、簡単に使うことができるのですが、使用できるブラウザーは限定されている様です。その理由は、ブラウザーが WebRTC をサポートしている必要があるからです。

WebRTC 対応ブラウザー

  • Chrome
  • Firefox
  • Opera
  • Edge
  • Safari

IE はサポートしてないんですね。今でも IE を使ってる企業はまだまだ多いですが、もう古いブラウザーなので、Edge を使えってことでしょう。

ちなみに、Kollective社 の製品では、以下のブラウザーとプラットフォームをサポートしています。

対応ブラウザー

  • Edge
  • Chrome
  • Firefox
  • Safari

対応モバイル端末

  • Android
  • iPad

iPhone は、WebRTC をサポートしてないらしいです。なお、対応ブラウザーが使えない場合、Teams アプリを使用すれば、WebRTC が使えるそうです。

対応 OS対応ブラウザー
Windows / MacChrome 26以降
Firefox 22以降
Opera 15以降
AndroidChrome 29以降
iOS開発中

WebRTC で実現できること

WebRTC を実装することで、実現することのできる機能は、以下のものがあります。

  • 端末上のカメラやマイクからのデータの取り込み

Media Capture and Stream

  • ストリームデータの P2P 通信

WebRTC 1.0: Real-time Communication Between Browsers

  • テキストデータやバイナリデータの P2P 通信

WebRTC 1.0: Real-time Communication Between Browsers

WebRTC では、クライアントがサーバにデータの要求をするクライアント/サーバモデルでななく、複数端末間での通信です。

つまり、それぞれのPCがデータを保持し、他のPCに対して直接、データの送信・要求を行うPeer to Peerの形をとります。

また、通信プロトコルには基本的に「TCP/IP」の代わりに、「UDP/IP」を用いて通信のリアルタイム性を担保しているのも特徴です。状況によってプロトコルを使い分けるみたいです。

Kollective社の製品では、上記の「WebRTC 1.0: Real-time Communication Between Browsers」を使用しているのですね。

P2P 通信に必要な情報

P2P 通信を行うためには、ブラウザ間で共有しなければならない情報があります。

P2P 通信を開始するには接続先のグローバルアドレス情報が必要になるので、NAT traversal として、STUN(Simple Traversal of UDP through NATs)やICE(Interactive Connectivity Establishment)といった技術がサポートされており、NAT が割り当てたグローバル IP アドレスとポート番号を取得できるようになっています。

Session Description Protocol (SDP)

  • 通信に必要な各ブラウザの情報を示す文字列 (セッションの属性、メディアの形式、IP アドレス、ポート番号、通信帯域など)のことです。
  • 片方の PC が他方 PC に対し SDP を Offer し、それに対して Answer SDP を返すという形で通信を行います。

Interactive Connectivity Establishment (ICE)

  • 通信相手のブラウザに到達する通信経路に関する情報を提供します。
  • この通信経路を探す際、環境によっては、NAT やファイアウォールなどで直接的に PC 同士の情報を渡せないこともあり得ます。
  • そのため、STUN サーバや TURN サーバというものを用いて通信経路を検知し、それらの経路候補を ICE Candidate として、ブラウザ間で共有する必要があります。

WebRTC の JavaScript API

WebRTC は、以下の 3つの JavaScript API を提供しています。

getUserMedia

  • Web ブラウザから端末に取り付けられているカメラやマイクにアクセス
  • ストリームデータを取得する

RTCPeerConnection

  • マルチメディアセッションを確立
  • UDP/IP を使用して Web ブラウザ同士で直接ストリームデータを送受信
  • コーデック(オーディオおよびビデオの符号化および復号化)、暗号化、帯域管理(帯域幅の変化にストリームを適応させるなど)の各機能も提供

RTCDataChannel

  • テキストデータやバイナリデータの P2P によるデータ通信のための API
  • ファイル転送やテキストチャットなどを実現
  • UDP/IP を使用しているので、TCP/IP とは異なりパケット再送は行わない

メディア系の技術は名前を知っている程度で、触れる機会がなかったのですが、今回は良いチャンスです。これを機会に学んでみようと思います。

追記:

リバーベッドテクノロジーの SaaS Accelerator という製品が、この WebRTC をサポートしたとの話を聞きました。今度、機会のある時に試してみたいと思います。

関連する記事:

最近の記事: