モダンアプリプロキシに不可欠な3つの特性

F5エコシステム | 2015年9月14日

熱い側は熱いまま、冷たい側は冷たいままに保ちます。

昔、McDonald’sが一部商品のパッケージについて、「温かいものは温かく、冷たいものは冷たく」保てると宣伝していたキャンペーンを覚えている方もいるかもしれません(覚えている年代の方でも、挙手をお願いしたりはしませんのでご安心ください)。

温かい側は温かく、冷たい側は冷たく

実にシンプルな発想でした。温かいものと冷たいものを分けながら、持ち運びやすいよう1つの容器に収めるというものです。

同じ「コンテナ」内で分離するという考え方こそ、アプリプロキシをプロキシたらしめる基本です。クライアント側はクライアントのまま、アプリ側は……アプリのままに保ちます。

なるほど、やはり思ったほどきれいには伝わらないかもしれません。

それでも、この概念は妥当であり、アプリプロキシを理解するうえで重要です。

基本的に、プロキシとは、通信を行う2者の間に論理的に配置されるソフトウェアです。アプリプロキシは、アプリとクライアントの間に配置されます。ただし、すべてのプロキシがフルプロキシであるとは限りません。フルプロキシでは、内部で両側を分離する必要があります。つまり、1台のデバイス内に独立した2つのネットワークスタックを備えています。クライアント側(ホットサイド)とアプリ側(コールドサイド)です。

クライアント側、アプリ側

このたとえ、あまりうまくいっていませんよね。分かっています。でも今のところ、これしか思いつかないので、もう少しお付き合いください。

これがアプリプロキシの要件である(または要件とすべき)理由は、プロキシがクライアントとサーバー間の通信に関与できるようになるためです。これは、アプリのパフォーマンスを向上させるミニファイ、データスクラビングなどのセキュリティ機能、TCP多重化(最適化)をはじめ、幅広いサービスを提供するために必要です。

クライアント側とアプリ側の間にある内部の「ギャップ」で、重要な処理が行われます。基本的な負荷分散から高度なアプリケーションファイアウォール、アプリケーションアクセス制御まで、さまざまなサービスがここで機能します。リクエストは、実質的にアプリプロキシのクライアント側で終端されます。その後、サービスチェイニングによく似た処理が行われますが、すべて内部バスとプロセッサの速度(ほぼ常にネットワーク速度を上回ります)で内部的に実行されます。検査が行われ、ポリシーが適用されます。変換処理を経て判断が下されます。さらに、プロキシとアプリの間に別の接続が確立され、リクエストが送信されます。

そのリクエストがプロキシに戻ると、逆の処理が行われます。検査が実施され、データがクレンジングされ、ポリシーが適用されます。その後、クライアント側に戻り、クライアントへ転送されます。

これらはすべてプロキシ内部で処理されるため、1秒未満で完了します。

アプリプロキシの目的は、可用性、セキュリティ、モビリティ、アイデンティティとアクセス、パフォーマンスといった幅広いアプリサービスを提供することです。そのため、アプリプロキシにはフルプロキシが適しています。すべてのリクエストとレスポンスに関与するよう設計されているのは、フルプロキシだけです。シンプルなプロキシ(詳しく言えば、実際にはステートレスプロキシです)が関与するのは、クライアントとアプリの接続を確立する最初のやり取りだけです。その目的は、アプリインスタンスを選択し、両者の接続を「つなぎ合わせる」ことです。それ以降、プロキシは関与しません。プロキシは「フロー」(SDNについての議論で耳にしたことがあるかもしれないレイヤー4のTCP構造ですが、これについてはまた別の機会に取り上げます)として認識し、熱いものと冷たいものを無差別に混ぜながら、パケットを単純に双方向へ転送します。(ほら、このたとえも最後にはうまくいくと思っていました。)

以上を踏まえると、最新の(かつスケーラブルな)アプリプロキシはフルプロキシであり、プログラマビリティ、パフォーマンス、プロトコルという3つの主要な特性を備えている必要があります。

最新のデータセンターやクラウドで自動化、オーケストレーション、標準化を支えるには、プログラマビリティが不可欠です。また、データパスにおいて、ビジネスや運用に独自の価値をもたらすセキュリティとサービスを実現するうえでも重要であり、カスタムプロトコルへの対応や既存プロトコルの拡張を可能にします。パフォーマンスは単純な要件に思えますが、実際はそうではありません。アプリプロキシはすべてのリクエストを処理するため、単に高速なだけでなく、極めて高速でなければなりません。通信にアプリ体験を損なう遅延を加えることなく、必要な処理を迅速に実行する必要があります。これは言葉で表すほど簡単ではありません。特に、導入基盤として汎用コンピューティングを使用する動きが強まるなかでは、なおさらです。

最後に、プロトコルも重要です。「アプリ」と聞いて最初に思い浮かぶのは、おそらくHTTPでしょう。それも当然です。HTTPは新たなTCPであり、インターネットの共通言語だからです。しかし、使用されているプロトコルはHTTPだけではありません。特に、インターネットを介した通信が普及した現在では、SIPやUDPも使用されています。もちろん、SMTP(今でもメールを送信しますよね?)やLDAPもあります。SSLとTLSも忘れてはなりません。SSL Everywhereを文字どおりあらゆる場所で実現することへの関心と緊急性が高まるなか、アプリプロキシにはSSL/TLSを極めて流暢に扱うことが、これまで以上に求められています。そうでなければ、パフォーマンス要件を満たせない可能性があるためです。

アプリプロキシは、最新のデータセンターに必要なプラットフォームを提供し、セキュリティとパフォーマンスの課題への対応、運用コスト削減に向けた自動化とオーケストレーション、一般消費者と法人のお客さま双方に最適なアプリ体験の確保を支援します。ただし、あらゆるアプリに対応するには、プログラマビリティ、パフォーマンス、プロトコルサポートを備えたフルプロキシ型のアプリプロキシでなければなりません。

共有
タグ: 2015

著者について

Lori Mac Vittie
Lori Mac Vittie特別技術者兼チーフエバンジェリスト | F5

Lori MacVittieは、F5のOffice of the CTOに所属するDistinguished Engineer兼Chief Evangelistであり、アプリケーションデリバリ、自動化戦略、インフラストラクチャに関する深い専門知識を有しています。AIエージェントのガードレール策定、脆弱なマルチクラウドアーキテクチャの分析、スケーラブルなシステムの限界の検証など、複雑な事柄を明快にすることで知られています。アプリケーション開発、ITアーキテクチャ、ネットワークおよびシステム運用の分野で、30年以上にわたる業界経験を有しています。F5入社前は、受賞歴のあるテクノロジー編集者として活躍していました。 MacVittieはコンピューターサイエンスの修士号を取得しており、セキュリティ、クラウド、エンタープライズアーキテクチャにわたる分野で多数の著作を発表しています。また、テーブルトークゲームとビデオゲームをこよなく愛し、チーズについては遠慮なく強いこだわりを語ります。

Lori Mac Vittieのその他のブログ記事

関連するブログ記事

F5 Application Study Tool:OpenTelemetryによるF5 BIG-IP環境の監視
F5エコシステム | 2025/04/15

F5 Application Study Tool:OpenTelemetryによるF5 BIG-IP環境の監視

F5の新しいオープンソースツールは、BIG-IP環境を詳細に可視化し、データを追跡するとともに、強力でカスタマイズ可能なインサイトを得るための基盤を提供します。

F5 BIG-IPでAI防御を実現
F5エコシステム | 2024/11/13

F5 BIG-IPでAI防御を実現

F5 BIG-IP Advanced WAF、BIG-IP APM、BIG-IP SSL Orchestratorが、生成AIアプリ向けに包括的なセキュリティソリューションを提供する仕組みをご覧ください。

F5 Advanced WAFによるGraphQL APIの保護
F5エコシステム | 2021/08/31

F5 Advanced WAFによるGraphQL APIの保護

ここ数年、多くの組織がデジタルトランスフォーメーションを進めており、COVID-19のパンデミックによってその動きは加速しています。

アプリケーションサービスの現状 通信業界版:リーダーとしての台頭
F5エコシステム | 2019/02/19

アプリケーションサービスの現状 通信業界版:リーダーとしての台頭

通信ネットワークが進化し、さまざまな業界の幅広いユースケースに対応するなか、通信業界の回答者がテクノロジーリーダーとしての存在感を高めていることがわかります。

デジタルトランスフォーメーションは、単なるペーパーレス化ではない
F5エコシステム | 2017/07/10

デジタルトランスフォーメーションは、単なるペーパーレス化ではない

デジタルトランスフォーメーションは、単なるペーパーレス化ではありません。真のモダナイゼーションにアプリケーションアーキテクチャとセキュリティの再構築が必要な理由を、F5ブログでご覧ください。

やめましょう。もう本当にやめましょう。HTTPSはHTTPより高速ではありません。
F5エコシステム | 2016/09/19

やめましょう。もう本当にやめましょう。HTTPSはHTTPより高速ではありません。

もうやめましょう。HTTPSはHTTPより高速ではありません。プロトコルのパフォーマンスに関する微妙な違いと、暗号化トラフィックを適切に最適化する方法については、F5ブログをご覧ください。