nginx レイヤー 4 プロキシとレイヤー 7 プロキシとは何を意味しますか? (推奨される学習: nginx チュートリアル )
ここでの層は OSI 7 層ネットワーク モデルです。OSI モデルは上から下にあります。下位層は次のとおりです。 7 層モデルは、物理層、データリンク層、ネットワーク層、トランスポート層、セッション層、プレゼンテーション層、アプリケーション層です。
nginx4 層は、トランスポート層の tcp/udp を指します。
nginx7 レイヤーはアプリケーション層を指し、通常は http です。
プロキシ原理:
4 番目の層は NAT テクノロジーを使用します。英語での NAT の正式名称は「Network Address Translation」で、中国語で「ネットワーク アドレス変換」を意味します。リクエストが受信されると、nginx はデータ パケット内のターゲットとソースの IP とポートを変更して、データ パケットを送信します。サーバーが処理を完了した後、nginx は別の変更を加えて、要求元のクライアントに返します。
レイヤー 7 プロキシ: http リクエストのコンテンツを読み取って解析し、特定のコンテンツ (URL、パラメータ、Cookie、リクエスト ヘッダー) に基づいて対応するサーバーに転送する必要があります。転送プロセスは次のとおりです。ターゲット マシンとの接続の確立 接続してから要求を転送し、応答データを受信して、要求元のクライアントに転送します。
利点と欠点の比較:
パフォーマンス:
理論的には、レイヤー 4 はレイヤー 7 よりも高速です。 7 プロキシ データ パケットの特定のコンテンツを解析する必要があるため、追加の CPU が必要になります。ただし、nginx には強力なネットワーク同時処理機能があり、一部の低速接続の場合、nginx は最初にネットワーク要求データをバッファリングし、それをすぐに上流のサーバーに転送できるため、上流のネットワーク同時処理機能が弱いサーバー (Tomcat など) では、これは Tomcat には影響しません。つまり、低速接続が高速接続になり (nginx から Tomcat は基本的に信頼できるイントラネットです)、それによってネットワーク データのバッファリング時間が節約され、同時実行パフォーマンスが提供されます。
柔軟性:
レイヤー 4 プロキシは NAT を使用するため、nginx はリクエストの具体的な内容を認識せず、nginx は何もできません。 7 層プロキシを使用すると、リクエストの内容 (URL、パラメータ、Cookie、リクエスト ヘッダー) に基づいて、次のような多くのことを行うことができます。
a: 動的プロキシ: 異なる URL が異なるサーバーに転送されます。
b. リスク管理: 外部 IP アドレスによる特定の機密 URL のリクエストをブロックし、パラメーターに基づいて特定の不正ユーザーをブロックします。
c. 監査: nginx レイヤーでリクエスト ログを記録します。
以上がnginx4 の 4 つのレイヤーとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。