カテゴリー
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アクセスランキング にほんブログ村 にほんブログ村 ブログブログへ
にほんブログ村

関連する記事:

最近の記事:

カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 技術一般 認定資格

AWSを学ぶ(8)CloudFront って何だろう

Amazon CloudFront とは

Amazon CloudFront(以下CloudFront)は、HTMLファイル、CSS、画像、動画といった静的コンテンツやストリーミングといった動的コンテンツをキャッシュし、オリジンサーバー(本来のアクセス先)の代わりに配信する、AWSのCDNサービスです。

CloudFrotでは、エッジローケーションと呼ばれるデータセンターを通じてコンテンツ配信が行われます。世界中に120を超えるエッジローケーションがあり、CloudFront を使うと、ユーザーから最も近いエッジローケーションからコンテンツを配信できます。

例えば、日本のユーザーが北米にあるサーバーにアクセスすることを考えてみましょう。

CloudFront を使わない場合、エンドユーザーは、オリジンサーバーとなる北米にあるサーバーにアクセスすることになります。距離遅延としては、180ミリ秒くらいありレスポンスが非常に遅いです。

CloudFront を使う場合、エンドユーザーは最寄りの CloudFront に接続できます。日本のユーザーは日本にある CloudFront にアクセスができるため、距離遅延を非常に小さく抑えられます。

※ 実際の距離遅延は、利用している回線や利用状況によっても変動します。

CoudFront ですが、代表的なところですと、以下のようなサービスで利用されています。

Amazon Prime Video

  • NFLのサーズデーナイトフットボールを、世界200カ国以上でスムーズに配信するためにCloudFrontを利用
  • 遅延の少ないライブ映像を提供することができるため、ユーザーに最新の試合の様子を迫力のある状態で提供

Hulu

  • CloudFrontをはじめとしたAWSのインフラストラクチャーで、定額制動画配信サービスライブ映像を配信
  • 急に視聴者が増えてトラフィック量が増大したとしても、スムーズにサービスを提供が可能

CloudFront の構成

CloudFront には、以下の構成要素があります。

1. バックエンド
  • オリジンサーバーのことを言います。
  • オリジンサーバーとして、ELB、 EC2、 S3、 オンプレのサーバーを指定できます。
  • URLのパスに応じて、異なるオリジンサーバーを指定することも可能となります。
  • これにより、1つのドメインで複数のサービスを提供することも可能となります。
2. エッジサーバー
  • CloudFront のことを言います。
3. キャッシュ
  • ユーザーからリクエストを受けたエッジサーバーは、要求されたファイルが自分の中にキャッシュとしてあるかを確認します。
  • キャッシュとしてない場合、オリジンサーバからファイルを取得し、それをキャッシュとして保持します。
4. キャッシュルール
  • 拡張子やURLパス毎に、キャッシュ期間を指定するとこが可能となります。
  • デフォルトでは24時間キャッシュが保持されます。

具合的に何ができるのか?

CloudFront を利用すると、オリジンサーバーの代わりに、ユーザーに対してレスポンスを返すことができます。これにより、以下のメリットがあります。

ユーザーへのコンテンツ配信
  • 静的ファイルや動的ファイルを、ユーザーに最も近いサーバーから配信できる。
ストリーミングの配信
  • 動画や音声といったストリーミングデータの配信を、ユーザーから最も近いサーバーから行える。
  • Adobe MEdia Serverなど複数の製品に対応している。
CDNデータキャッシュ
  • 初回のアクセスの際に、オリジンサーバから取得したコンテンツをキャッシュする。
  • 次回以降は、キャッシュの期限が切れるまで、キャッシュしたコンテンツを配信する。
エッジセキュリティー
  • AWSのさまざまな組み込み保護機能を利用可能となり、ネットワークレベル、アプリケーションレベルの両方でのセキュリティーが提供される。
  • オリジンサーバーを、DDOS攻撃から守ることができる。
レポーティング
  • キャッシュが使われた割合やエラー率といった統計情報を、レポートとして参照できる。

CloudFront を利用することにより、以下の4つの課題を解決できます。

・サーバーの負荷

画像や動画など、ファイルサイズが大きいコンテンツへのアクセスの度にオリジンサーバーへアクセスさせると、サーバーの負荷が高くなりますが、CloudFront を使うことで、その負荷を減らすこともできます。

・ネットワーク遅延の低減

サーバーを日本国内に設置してサービスを提供したとして、海外からのアクセスが多い場合、距離遅延の値が大きくなります。CloudFront を使ってユーザーに近いところから配信すれば、その遅延を低減できます。

・コストの削減

初期費用は無料で始められ、「リクエスト数+送信量」での従量課金となります。新規ユーザーは12ヶ月間、500GB のデータ送信と2,000,000回のHTTP/HTTPS リクエストが無料になります。

・可用性の向上

予想外のアクセスがあっても、オリジンサーバーの高負荷やサーバーダウンによるサービスの影響を避けられます。

ディストリビューション

ディストリビューションは、CloudFront による配信の方式です。方式としては2つあります。

1. ダウンロードディストリビューション
  • 静的なコンテンツ向け
  • HTTP/HTTPSを利用して、HTML、CSS、画像などのデータを配信
2. ストリーミングディストリビューション
  • 動的なコンテンツ向け
  • HLS(Apple HTTP Live Streaming)や RTMP(Real Time Messaging Protocol)を利用して、動画のストリーミングを配信

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト【電子書籍】[ 佐々木 拓郎 ]

価格:2,618円
(2020/8/12 12:20時点)
感想(0件)