JP6240158B2 - ソフトウェア定義型ネットワーキングを用いたインラインサービスの連鎖化 - Google Patents

ソフトウェア定義型ネットワーキングを用いたインラインサービスの連鎖化 Download PDF

Info

Publication number
JP6240158B2
JP6240158B2 JP2015506339A JP2015506339A JP6240158B2 JP 6240158 B2 JP6240158 B2 JP 6240158B2 JP 2015506339 A JP2015506339 A JP 2015506339A JP 2015506339 A JP2015506339 A JP 2015506339A JP 6240158 B2 JP6240158 B2 JP 6240158B2
Authority
JP
Japan
Prior art keywords
packet
service
port
service set
received
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015506339A
Other languages
English (en)
Other versions
JP2015517272A (ja
Inventor
ルフェーヴル、ジェフリー
ルボウ、エリク
マンギルマラニ、ラヴィ
Original Assignee
テレフオンアクチーボラゲット エルエム エリクソン(パブル)
テレフオンアクチーボラゲット エルエム エリクソン(パブル)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by テレフオンアクチーボラゲット エルエム エリクソン(パブル), テレフオンアクチーボラゲット エルエム エリクソン(パブル) filed Critical テレフオンアクチーボラゲット エルエム エリクソン(パブル)
Publication of JP2015517272A publication Critical patent/JP2015517272A/ja
Application granted granted Critical
Publication of JP6240158B2 publication Critical patent/JP6240158B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS

Description

本発明は、一般に、ソフトウェア定義型ネットワーキング(Software Defined Networking)を用いたインラインサービスのチェーンを通じてトラフィックを誘導するためのシステム及び方法に関する。
モバイル及び固定のネットワーク事業者は、彼らのネットワークを横断するネットワークトラフィックを検査し及び改変するために、多様なタイプのミドルボックス又はインラインサービスを使用する。本文書においてサービスとして言及されることになるそれらミドルボックスは、エンドユーザにとっては透過的であり、透過的キャッシング(transparent caching)、ウィルススキャン、及びディープパケットインスペクションといった機能性を提供する。これらサービスは、通常はパッケージ化され、(物理的又は仮想的のいずれかの)専用の製品として販売され、しばしば高価である。
事業者は、トラフィック需要における急激な増加に直面しており、彼らのネットワークを収益化する新たな手法を検討している。サービス製品の高コストに起因して、事業者は、それらサービスのキャパシティをその成長に一致させることを回避しようと望む。事業者は、むしろ、全てのトラフィックにあらゆるサービスを通過させる代わりに、トラフィックを特定のサービスのセットへと選択的に方向付ける能力を有するであろう。この能力は、近年のトラフィックの激増の源であるビデオトラフィックを、事業者がディープトラフィックインスペクションといった高価なサービスから離して誘導することを可能とし、よって、新たなサービス製品に投資する必要性が低減される。
特定のクラスのトラフィックを予め定義されるサービスのセットを通過するように誘導する能力は、事業者のための収益の新たなストリームを可能にするためにも使用されることができる。事業者は、ウィルススキャン又はコンテンツフィルタリングといったサービスを、そうしたサービスに支払いをすることを選択する顧客にオファーし得る。
サービスチェーン又はパスは、順序付きのサービスのセットである。トラフィックの誘導(traffic steering)は、トラフィックを分類し、様々なクラスのトラフィックを特定のサービスチェーンを通過するように方向付けるアクションである。大まかな3つのクラスの解決策が、今日、何らかの形態のトラフィックの誘導及びサービスの連鎖化(chaining)を実装するために使用されている。
第1のアプローチは、拡張可能なルータ又はゲートウェイの一部としてサービスを統合することである。事業者は、追加のサービスカードをそのルータ又はゲートウェイに追加することにより、新たなサービスを追加することができる。
第2のアプローチは、各サービスがそのチェーン内の次のサービスにトラフィックを送信するように構成される、1つ以上の静的サービスチェーンを構成することである。ポリシーベースルーティング(PBR)を使用するルータは、着信(incoming)トラフィックを分類し、分類結果に基づいて各チェーンの先頭にあるサービスにそれを転送する。
第3のアプローチは、PBRを使用するルータを使用し、各サービスがトラフィックの処理後ルータにトラフィックを返すように構成されることである。ルータは、各サービスホップの後でトラフィックを分類し、分類結果に基づいて適当なサービスにそれを転送する。
3つのクラスの解決策全てが、欠点を有する。第1のアプローチは、既存のサードパーティサービス製品の統合をサポートしない。この解決策は、プロプライエタリであり、サービスベンダーは、ルータ又はゲートウェイによりサポートされるソフトウェア及びハードウェア構成にそれらのアプリケーションを移植しなければならない。この解決策は、サービスの数として拡張性の問題を潜在的に抱えており、合計の帯域幅がルータのキャパシティにより制限される。
第2のアプローチは、一元的な方法でのポリシーの定義をサポートせず、代わりに各サービスがトラフィックを分類し適当な次のサービスに誘導するように構成されることを必要とする。このアプローチは、大量のサービス固有の構成を必要とし、エラーを起こしやすい可能性がある。また、第2のアプローチは、加入者一人毎のトラフィックの誘導をサポートせず、構成され得る様々なサービスチェーンを制限するため、柔軟性にも欠ける。これらの制限を避けて通ることは、トラフィックを分類し誘導するための各サービスにおける追加的な構成、及びネットワークに接続する加入者として動的にこれらの構成をプッシュするための自動化された方法を必要とするであろう。
第3のアプローチも、全てのサービスを経てトラフィックにルータを通過させるため、拡張性の問題を抱える。N−1個のサービスを有するチェーンをサポートするために、ルータは、N倍の着信トラフィックライン速度をハンドリングすることが可能でなければならない。
したがって、上述した問題を未然に防ぎ、又は軽減するシステム及び方法を提供することが望ましいであろう。
本発明の目的は、少なくとも1つの従来技術の欠点を未然に防ぎ、又は軽減することである。
本発明の第1の態様では、パケットを受信すること及び受信されたパケットが伝播している方向を判定することを含む、パケットトラフィックを誘導するための方法が提供される。受信されたパケットは、サービスセットに関連付けられ、関連付けられたサービスセット上のパケットの位置が判定される。関連付けられたサービスセット上の次のサービスは、判定された方向及びパケットの位置に従って選択される。選択された次のサービスに従って、新たな宛て先がパケットに割り当てられる。
本発明の第1の態様の実施形態では、受信されたパケットが伝播している方向は、パケットが受信された入口ポートに従って判定され得る。当該方向は、アップストリーム又はダウンストリームであると判定され得る。
別の実施形態では、受信されたパケットをサービスセットに関連付けるステップは、受信されたパケットに適用されるサービスの順序付きリストを割り当てることを含み得る。必要に応じて、受信されたパケットは、判定された方向及びパケットの第1のヘッダフィールドに従って、サービスセットに関連付けられ得る。第1のヘッダフィールドは、送信元アドレス、宛て先アドレス、送信元ポート、宛て先ポート及びプロトコルを含む群から選択され得る。
別の実施形態では、受信されたパケットをサービスセットに関連付けるステップは、加入者に関連付けられるアドレスに従って、デフォルトのサービスを受信されたパケットに割り当てることを含み得る。加入者に関連付けられるアドレスは、判定された方向に従って、受信されたパケットの送信元アドレス又は宛て先アドレスから選択され得る。必要に応じて、デフォルトのサービスセットは、受信されたパケットの第2のヘッダフィールドに従って修正され得る。第2のヘッダフィールドは、送信元アドレス、宛て先アドレス、送信元ポート、宛て先ポート及びプロトコルを含む群から選択され得る。
別の実施形態では、関連付けられたサービスセット上のパケットの位置は、パケットが受信された入口ポートに従って判定され得る。必要に応じて、上記方法は、受信されたパケットに既に適用されたサービスを除去するために、判定された方向及びパケットの位置に従って、関連付けられたサービスセットを修正するステップを含み得る。
別の実施形態では、パケットに新たな宛て先を割り当てるステップは、パケットの宛て先アドレスを書き換えることを含み得る。上記方法は、必要に応じて、割り当てられた新たな宛て先にパケットを転送するステップを含み得る。転送するステップは、割り当てられた新たな宛て先アドレスに関連付けられるポートを選択することと、選択されたポート上でパケットを送信することと、を含み得る。
本発明の第2の態様では、プロセッサに動作可能に接続される複数のポートを含むスイッチが提供される。複数のポートの各々は、パケットを受信及び送信するためのものである。プロセッサは、第1のポートで受信されたパケットをサービスセットに関連付けるための、関連付けられたサービスセット上の受信されたパケットの位置を検出するための、検出された位置に従って、関連付けられたサービスセット上の次のサービスを判定するための、複数のポートから第2のポートを選択するための、及び選択された第2のポートで、判定された次のサービスにパケットを送信するためのものである。
本発明の第2の態様の実施形態では、選択された第2のポートは、判定された次のサービスに関連付けられ得る。必要に応じて、複数のポートは、サービスノーからダウンストリームに伝播するパケットを受信するための及びサービスノードに対しアップストリームに伝播するパケットを送信するためのアップストリーム対向ポートと、サービスノードからアップストリームに伝播するパケットを受信するための及びサービスノードに対しダウンストリームに伝播するパケットを送信するためのダウンストリーム対向ポートと、を含み得る。

別の実施形態では、プロセッサは、受信されたパケットが伝播している方向を第1のポートに従って判定し得る。必要に応じて、プロセッサは、判定された方向及び受信されたパケットの第1のヘッダフィールドに従って、受信されたパケットをサービスセットに関連付け得る。
別の実施形態では、プロセッサは、加入者に関連付けられたアドレスに従って、デフォルトのサービスセットを受信されたパケットに割り当て得る。加入者に関連付けられたアドレスは、受信されたパケットの送信元アドレス又は宛て先アドレスのうちの1つであり得る。必要に応じて、プロセッサは、受信されたパケットの第2のヘッダフィールドに従って、デフォルトのサービスセットを修正し得る。
別の実施形態では、プロセッサは、第1のポートに従って、関連付けられたサービスセット上の受信されたパケットの位置を判定し得る。
別の実施形態では、プロセッサは、判定された次のサービスに従って、受信されたパケットに新たな宛て先を割り当て得る。
別の実施形態では、上記スイッチは、関連付けられた方向を有しないパケットを受信するためのトランジットポートをさらに含むことができる。プロセッサは、専らその宛て先アドレスに従って、関連付けられた方向を有しないパケットを転送し得る。
本発明の他の態様及び特徴は、添付図面と共に以下の本発明の特定の実施形態の説明を検討することにより、当業者に明らかとなるであろう。
添付図面を参照して、ほんの一例として本発明の実施形態がここで説明されるであろう。
サービスネットワークの実施形態のブロック図であろう。 例示的なデータパス方法のフローチャートである。 構成データの例である。 例示的な方向テーブルである。 例示的なMACテーブルである。 例示的な加入者テーブルである。 例示的なアプリケーションテーブルである。 例示的なパス状態テーブルである。 例示的な次の宛て先テーブルである。 本発明の実施形態を示すフローチャートである。 本発明の別の実施形態を示すフローチャートである。 例としてのスイッチのブロック図である。
本発明は、サービスのセットを通じてトラフィックを誘導するためのシステム及び方法を対象とする。
参照が添付図面に従って付番された、以下の特定の要素に対してなされ得る。以下の議論は、本発明の範囲を限定するものとしてではなく、本来例示的であるものとして取られるべきである。本発明の範囲は、特許請求の範囲において定義され、当業者が理解するように、同等の機能的要素を有する要素を置換することによって修正されることができ、以下に述べる実装の詳細によって限定されるものと考えられるべきではない。
本開示のいくつかの実施形態は、OpenFlowプロトコルを使用するものとして議論されるであろうが、他の種類のソフトウェア定義型ネットワーキング(SDN:Software Defined Networking)を用いて実装されてもよい。OpenFlowは、ネットワークを介してネットワークスイッチ又はルータの転送プレーンにアクセスできるようにする、通信プロトコルである。OpenFlow1.1は、複数のテーブル及びテーブル間で情報を交換するためのメタデータフィールドをサポートする。本開示は、これらの特徴を利用して、複数ステップでの分類をフラット化する場合に起こる組合せ積(cross-products)を回避することによって、ルールの数を減少させる。
サービスネットワークにおいて、事業者は、トラフィッククラスを特定するサービスポリシー、及び各クラスが横断すべきサービスのチェーンを定義することができる。これらのポリシーは、コントローラによってサービスネットワーク内のスイッチ上にプログラムされたルールに変換される。これらのルールは、ポリシーにより特定されたものとして、順序付きのサービスのチェーンを通じてネットワークトラフィックを誘導する。
本発明の実施形態は、修正なしで既存の及びサードパーティのサービスの統合をサポートするため、柔軟性を提供する。サービスインスタンスは、事業者によって任意の方法でその位置が特定され(located)、及び連鎖化されることができ、各サービスインスタンスは、複数のサービスチェーンの一部であり得る。加入者及びトラフィックの種類の粒度においてトラフィックを誘導する能力もまた、提供される。
ここで議論されるアプローチは、3つの異なる方法で拡張性を提供する。第1に、それは、ルールの組合せ積を回避し、替わりにメタデータと組み合わされる複数のテーブルを用いてテーブル間の情報を通信することによって、スイッチ内に格納されることを要するルールの数を減少させる。第2に、依然として集中制御を維持しつつも、単一の集中型ルータ又はロードバランサを使用する替わりに、スイッチのネットワークに負荷を分散させる。第3に、分類及びヘッダ書き換えといったコストのかかる転送動作が、サービスネットワークの境界(perimeter)にプッシュされ、これは様々な意味で有益であり得る。これらの動作は、サービス間のスイッチホップの数に関わらず、サービス間で一度だけしか実行される必要がない。さらに、ネットワークにおいてトラフィックが複数のスイッチ上に分散され、合計のスループットに対する要求は、ネットワークの境界においてより少ないことが多い。商品(commodity)サーバ上で動作する仮想製品の使用と組み合わされる本発明は、仮想マシンモニタ(virtual machine monitor)上で動作するソフトウェアスイッチの上に全てのコストのかかる動作をプッシュすることを可能とする。
転送プレーンは、所与のサービスポリシーのセットをサポートするために必要とされるルールの総数を減少させるために、複数のテーブルを使用するように設計され得る。
メタデータフィールド内のサービスパスの符号化は、多数のサービスチェーンをサポートし、サービス毎に複数のインスタンスをサポートするように設計され得る。符号化は、柔軟であることができ、各サービスが独立して拡大縮小されることを可能にする。
サービス間のスイッチホップの数に関わらず、分類及びヘッダ書き換えといったコストの掛かる動作がサービス間で一度だけしか行われる必要がないように、ネットワークの組織化が提供され得る。
ここに記載されるトラフィック誘導メカニズムは、ネットワークの構成及びそれを横断するトラフィックの種類に関して、以下を前提とする。1)あらゆるサービスは、2つのポートを使用するスイッチに接続される。ルータ及びブリッジと同様に、インラインサービスは定義によってトラフィックにより横断されるので、これは当然の要件である。サービスは、アップストリーム及びダウンストリームトラフィックのはっきりとした概念(notion)を有する必要があり、2つのポートの使用を必要とする。2)サービスネットワークは、各端で単一のゲートウェイにより境界される(bounded)。単一のルータがアクセスネットワークをサービスネットワークに接続し、単一のルータがサービスネットワークをインターネットに接続する。3)全てのサービスがイーサネットレイヤでアドレス可能である。いくつかのサービスはブリッジのように振る舞い、この前提に違反するかもしれない。4)サービスネットワークを通過する全てのトラフィックが加入者トラフィックである。5)IPSec(Internet Protocol Security)ゲートウェイ及びCDN(Content Delivery Network)サーバといった、通信エンドポイントである終端サービスが、ゲートウェイノードの1つに接続される別個のサブネット上に位置される。
ここで図1を参照して、例としてのサービスネットワーク100は、ネットワークの境界における境界スイッチPS1 102、PS2 104及びPS3 106、並びにネットワークの内部における内部スイッチSW1 108を含む。境界スイッチ102、104、106は、OpenFlowスイッチで実装されることができ、一方、内部スイッチ108は、OpenFlowスイッチ又は単純なイーサネットスイッチのいずれかで実装されることができる。(サービスノードS1 109、S2 110、S3 112、S4 114といった)サービス及び(R1 116、R2 118といった)ルータは全てサービスネットワーク100の境界に接続されている。誘導ネットワーク全体が単一のレイヤ2ドメインである。サービスの複数のインスタンスが存在することができ、各サービスインスタンスは、(潜在的に異なるスイッチ上にあり、)サービスネットワーク100に接続される、各トラフィック方向のための2つの通信インタフェースを有する。2つより多くのインタフェースを有するサービスもまた、提案されるトラフィック誘導メカニズムによりサポートされる。
境界スイッチ102、104、106は、2種類の入力/出力ポート:ノードポート及びトランジットポートを有することができる。サービス及びルータは、ノードポートに接続される。トランジットポートは、他の境界スイッチ又は内部スイッチに接続する。例示的なサービスネットワーク100では、各境界スイッチ102、104、106は、少なくとも1つのアップストリーム対向ノードポート、少なくとも1つのダウンストリーム対向ノードポート及び少なくとも1つのトランジットポートを有する。各サービスノードS1 109、S2 110、S3 112及びS4 114は、境界スイッチに接続される。境界スイッチ102、104、106は、内部スイッチ108を介して接続される。
108のような内部スイッチは、専らトランジットポートで構成され、単純にそれらの宛て先MAC(Media Access Control)アドレスに基づいてトラフィックを転送する。したがって、これらのスイッチは、単純なイーサネットスイッチで実装され得る。必要に応じて、内部サービスネットワーク100においてOpenFlowスイッチを使用してマルチパスサポートといった特徴を有効にすることに利点がある可能性がある。
(ルータR1 116及びR2 118といった)ゲートウェイノードから入ってくるもの、又はサービスから戻ってくるもののいずれかの着信トラフィックは、常に、境界スイッチを介しノードポートを通過してサービスネットワーク100に入る。ノードポートを通過して到着するパケットは、それらの割り当てられたサービスパスにおいて、(サービス又はゲートウェイであり得る)次のノードに向けて処理され誘導される。トランジットポートに到着するパケットは、それらの宛て先MACアドレスを用いて単に転送される。
ルータ116は、サービスネットワーク100をユーザ機器120及び122に接続することができる。ルータ118は、サービスネットワーク100を内部ネットワーク124及び/又はインターネット126に接続することができる。
高いレベルにおいて、トラフィック誘導は、2つのステップ処理で記述されることができる。第1のステップは、着信パケットを分類し、予め定義されたポリシーに基づいて着信パケットをサービスパスに割り当てる。第2のステップは、その割り当てられたサービスパスに沿った現在の位置に基づいて“次の”サービスにパケットを転送する。この2つのステップのトラフィック誘導処理は、パケットがノードポートに到着するときに任意の2つのノード(サービス又はルータ)間のスイッチの数に関わらず、2つのノード間で1度だけしか実行される必要がない。
ここで述べるトラフィック誘導処理は、加入者ベースのポリシー、アプリケーションベースのポリシー、及びフローベースのポリシーの3種類のサービスポリシーをサポートする。これらのポリシーは、事業者により特定されることができ、集中型コントローラ(図1に示さず)により関連するスイッチにプッシュされ得る。
加入者ベースのポリシーは、加入者毎に定義されているポリシーである。これらのポリシーは、加入者のIPアドレス及び特定の加入者のトラフィック各々が横断すべきサービスのセットを特定する。
アプリケーションは、YouTube(登録商標)等のエンドユーザインターネットアプリケーション、HTTP(Hypertext Transfer Protocol)等のトラフィックの種類、又は両者の組み合わせを表す。これらの種類のポリシーは、IPアドレスブロック及び/又はUDP(User Datagram Protocol)/TCP(Transmission Control Protocol)ポートのいずれかの観点で定義される。それらは、アプリケーションごとに特定され、全ての加入者に適用する。アプリケーションベースのポリシーは、加入者ベースのポリシーにおいて指定されたサービスのセットからサービスを追加又は除去することにより、加入者ベースのポリシーを精細化する。
フローベースのポリシーは、単一のフロー又はIP5タプル(即ち、送信元IPアドレス、宛て先IPアドレス、プロトコル、送信元ポート、宛て先ポート)に特有のポリシーである。それらは、特定のフローについて加入者及びアプリケーションポリシーを動的に覆すために使用される。これらのポリシーから派生する転送ルールは、コントローラにより動的にプッシュされ、フローの中間でさえ、異なるサービスのセットに向けてフローを効果的に再誘導し得る。
さらに、サービスを順序付けするポリシーがサポートされることができる。サービスを順序付けするポリシーは、上述した3つの種類のサービスポリシーとは異なる。それらは、トラフィックとサービスとのマッピングを指定しないが、代わりに、各トラフィックの方向(アップストリーム及びダウンストリーム)に対するサービス間の相対的な順序付けを指定する。コントローラは、これらの相対的な順序付けを全体的な順序付けに変形することができ、この順序付けを用いてサービスポリシーにおいて指定されるサービスのセットを順序付けされたサービスチェーンに変換することができる。
本発明の実施形態の誘導メカニズムを実装するデータパスが、テーブル探索の数に関与する。転送の決定は、パケットが受信された入口ポートと同様に、パケットのレイヤ2−レイヤ4コンテンツに基づいてなされることができる。一実施形態では、テーブルのような単一のTCAM(Ternary Content Addressable Memory)が、ポリシーベースのルーティングでのように、必要とされる機能を特定するのに用いられ得る。しかしながら、これは、同一テーブル内の加入者、アプリケーション及びポートの組合せ積を伴うであろうから、拡張可能な解決策ではないであろう。パケット方向及び複数のテーブルを用いて、これを複数のステップに分離することが可能であり、それにより各テーブルの線形的な拡張(scaling)という結果がもたらされる。テーブルにわたって機能を分離するための複数の方法がある。それが拡張性の問題を導入しないならば、いくつかのテーブルが結合されてもよい。
1つのテーブルからの中間結果は、メタデータを用いて他のテーブルに通信されることができる。メタデータは、後続の探索キーの一部として用いられ、又はさらに修正されることができる。メタデータの1つの重要な部分は、トラフィックの方向である。サービスネットワークを横断する全てのパケットは、アップストリーム又はダウンストリームのいずれかに伝播していると考えられる。誘導ネットワークにおける各ノードポートは、アップストリーム又はダウンストリームのいずれかに対向している。図1に戻って参照すると、ダウンストリーム対向ポート及びアップストリーム対向ポートの両方を有する境界スイッチ102、104、106の例が示されている。ダウンストリーム対向ポートに到着する全てのパケットは、アップストリームに伝播し、その逆もまた同様である。トランジットポートに到着するパケットは、いずれの方向にも伝播し得る。それらの方向は宛て先MACアドレスに基づいて知られ、宛て先MACアドレスはアップストリーム対向又はダウンストリーム対向サービス及び/又はルータポートのいずれかに相当するであろう。
メタデータの別の部分は、適用されるインラインサービスのセットである。このメタデータは、1ビットが可能性のある各サービスに対応する、ビットベクターとして符号化されることができる。より洗練された符号化は、複数のサービスインスタンス上のロードバランシングのような、より高度な特徴を有効にするために用いられることができる。データパスにおいて、このメタデータは、セットされその後修正されることができ、適用されるべき次のサービスを選択するのに最終的に用いられ得る。
図2は、本発明の実施形態に係るデータパス機能のハイレベルなフローチャートである。図2は、マルチテーブル探索アプローチを使用して、境界スイッチにより受信されるパケットを処理及び分類するための例としての方法論を示す。パケットに関連付けられるサービスセット及び方向の情報は、セットされ、各テーブル探索の結果に基づいて修正されることができる。
パケットはスイッチにより受信され、調べられるべき最初のテーブルは、方向テーブル202である。それは、テーブル探索のためのキーとしてパケットが受信された入口ポートを使用し、2つの目的を果たす。第1に、パケットがノードポート又はトランジットポートに到着したかを判定することである。第2に、パケットがノードポートに到着した場合、パケットがどの方向に向かっているかを判定することである。パケットがダウンストリーム対向ポートに到着した場合、それはアップストリームに伝播するものと判定される。パケットがアップストリーム対向ポートに到着した場合、それはダウンストリームに伝播するものと判定される。方向ビットは、ステップ204でそれに応じてセットされる。パケットがトランジットポートに到着した場合、それは、方向テーブルに“不一致(miss)”となり、処理は、MACテーブル206に進むであろう。
MACテーブル206についての探索キーは、パケットの宛て先MACアドレスである。このテーブルのコンテンツに基づき、パケットは、別のトランジット若しくはノードポートのいずれかに直接転送208され、又は破棄210される。
方向テーブル202において一致、即ち“ヒット”があった場合、調べられるべき次のテーブルは、マイクロフローテーブル212である。このテーブル探索のためのキーは、パケットの5タプル(送信元及び宛て先IPアドレス、IPプロトコルフィールド、並びにTCP/UDP送信元及び宛て先ポート)と共に方向ビットである。マイクロフローテーブル212は、特定のTCP/UDPフローの選択的な動的誘導のために用いられる完全に一致するエントリを含む。マイクロフローテーブル212にヒットがある場合、サービスセットは、ステップ214でそれに応じてセットされる。
マイクロフローテーブル212に完全な一致がない場合、調べられるべき次のテーブルは、加入者テーブル216である。加入者テーブル216は、現在の方向に対する加入者のデフォルトのサービスセットを取得するために使用される。このテーブルに対するキーは、加入者のIPアドレスと共に方向ビットである。加入者のIPアドレスは、パケットの方向に依存して、送信元又は宛て先IPアドレスフィールドのいずれか1つから生じる。例えば、パケットの方向が“アップストリーム”である場合、加入者のIPアドレスは、パケットの送信元IPアドレスであると判定される。このテーブルは、最長プレフィックス一致(LPM:longest-prefix match)探索テーブルであり得る。加入者テーブル216で“不一致”であれば、デフォルトのアクションは、ステップ218でパケットを破棄することである。加入者テーブル216に一致がある場合、サービスセットのメタデータが、220において加入者のデフォルトのサービスにセットされる。
加入者テーブル216に続くのはアプリケーションテーブル222である。このコンテキストでは、“アプリケーション”は、遠隔通信エンドポイントをIPアドレス並びに/又はプロトコル及び/若しくはポート番号により識別されるものとして言及する。それは、任意の静的レイヤ3−レイヤ4のアプリケーションポリシーに従って、加入者のデフォルトのサービスセットを修正するために使用される。加入者テーブル216について述べられるのと同様に、アプリケーションIPアドレスは、パケットの方向に依存して、パケットの送信元又は宛て先IPアドレスであり得る。ワイルドカード、プレフィックス、及び範囲がこのテーブル探索において許容され得る。この情報に基づいて、特定のサービスが、ステップ224でサービスセットから除外され、又は追加され得る。アプリケーションテーブル222において不一致である場合、パケットは破棄されず、サービスセットは修正されない。
パス状態テーブル226が、アプリケーションテーブル222又はマイクロフローテーブル212の後に続く。パステーブル226の目的は、サービスセット内のどのサービスが既にパケットに適用されたか、ひいてはサービスパス上のパケットの位置、を判定することである。パケットは同一の境界スイッチを複数回横断する可能性があるため、これは重要であり、パケットは毎回異なった扱いを受けるべきである。パケットが受信された入口ポートは、この情報を提供するには十分である。パス状態テーブル226に達する場合、パケットがサービス又はルータに直接接続されるノードポートに到着したことを意味する。入口ポートは、どのサービスがちょうど適用されたか、及び、もしあれば方向についての情報を提供する。サービスセットの各方向(互いに正反対であるかもしれず、又はそうでないかもしれない)において、サービスの全体的な順序付けが存在する。方向及び前のサービスに基づいて、サービスセットフィールドは、前のサービス及びそれに先行する全ての他のサービスを除外するために228で修正される。
ノードポートパスに沿った最後のテーブルは、次の宛て先テーブル230である。それは、キーとして方向ビット及びサービスセットフィールドを使用する。次の宛て先テーブル230は、任意のビットマスク及びルール優先順位を有する、TCAMのようなテーブルであり得る。方向ビットに基づいて、その方向における全体的なサービス順序付けに従って、サービスセット内のビットをスキャンすることができる。それが発見する最初の又は最も優先順位が高いサービスが次の宛て先となるであろう。サービスセットが空の場合、方向ビットに依存して、次の宛て先はアップストリーム又はダウンストリームいずれかのルータとなるであろう。次の宛て先は、現在のスイッチ又は別のスイッチに接続され得る。宛て先が異なるスイッチに接続される場合、宛て先MACアドレスは、そのサービス又はルータに対応する値にセットされ、パケットは、適当なトランジットポートに送出232される。宛て先が直接接続される場合、MACアドレスは、必要に応じて更新され、パケットは、対応するノードポートに送出232される。
表1は、各々に導入されるルールの種類を特定する、上述したテーブルの概要である。
Figure 0006240158
MACアドレスは、必要に応じて標準のイーサネットLANにわたって、遠隔の境界スイッチ上の特定のノードポートにパケットを方向付ける手段として論じられた。インラインサービスボックスと同様、イーサネットコア(存在する場合)と相互運用し、効果的に使用するために、MACアドレスを扱うのに特別な注意を払うべきである。
その転送タスクに使用する必要があるであろう全てのMACアドレスを知るために、メカニズムがイーサネットコアネットワークに提供され得る。これを達成する1つの方法は、誘導ネットワークコントローラが、イーサネットコアに接続される境界スイッチのトランジットポートから、全てのサービス及びこれらのトランジットポートを通して到達されるべきルータポートのMACアドレスに対応する送信元MACアドレスと共に、特別に作られたイーサネットフレームを定期的に送信させることである。イーサネットスイッチと境界スイッチとの間に複数のリンクを有し、各リンクが異なるサービスに向かうトラフィックを運ぶことが可能である。
トランジットポートに送信される他のパケット(即ち、ユーザトラフィック)は、コアイーサネットスイッチのブリッジテーブルを混乱させるべきではない。これは、イーサネットコアに接続される各トランジットポートが、ユーザトラフィックに対し異なる送信元MACアドレスを使用するべきであるということを意味する。これは、宛て先として使用されない一意のMACアドレスであり得る。又は、それが、そのトランジットポートに対応するサービスのうち1つのMACアドレスであり得る。これは、事実上標準のイーサネットコアがあると仮定する。境界スイッチは、また、互いに直接接続されてもよい。イーサネットコアがない場合、トランジットポートにわたる送信元MACアドレスは重要とならないであろう。
サービスそれ自体がMACアドレスについて特別な要求を有するかもしれない。例えば、サービスインタフェースは、MACアドレスで構成されることができ、サービスは、それに向かうパケットが正確な宛て先MACアドレスを有することを期待できる。この場合、送信元及び宛て先MACアドレスは、これに適応するためにセットされなければならない。他方、サービスは、イーサネットレイヤにおいて透過的であることができる。この場合、サービスは、単に1つのポートから他のポートにトラフィックを通過させるかもしれず、あるいは、サービスは一種のMACラーニングを採用するかもしれない。サービスがMACラーニングを実行する場合、誘導ネットワークは、アップストリームパケットを1つの送信元MACアドレスと共に、ダウンストリームパケットを別の送信元MACアドレスと共に送信することにより、それに適応しなければならない。宛て先MACアドレスは、望ましくは反対方向において送信元であるであろう。
図2に記載されたデータパスは、簡単化の目的のため、加入者データトラフィックに着目されていた。同様に、様々な種類の制御トラフィックを扱う必要があるかもしれない。最低でも、アドレス解決プロトコル(ARP:Address Resolution Protocol)がルータポートにおいて、及び恐らく同様にサービスポートにおいてもサポートされるべきである。これらの制御プロトコルをサポートするために、第1のテーブルが、イーサタイプ、IPプロトコルといった様々なレイヤ2−レイヤ4フィールドにおける一致、及びコントローラに対しパケットを捕捉する能力を許容するために強化されることができる。
代替的なシナリオでは、2人の加入者が互いに通信することができる。この場合、特にセキュリティ関連のサービスが存在する場合、各加入者のトラフィックの全ての関連サービスを適用することが依然として必要である。ダウンストリームルータは、この状況で誘導するネットワークを迂回するべきではない。これが起こる場合、トラフィックは、2つのエンドポイント間で2回、1度はアップストリーム、1度はダウンストリームに誘導ネットワークを横断するであろう。アップストリーム方向で、ある加入者のサービスが適用されるであろう。ダウンストリーム方向で、他の加入者のサービスが適用されるであろう。これは、ここで述べるメカニズムにおいて説明される。アップストリームルータは、トラフィックを誘導ネットワークに戻すことを期待され得る。
いくつかのサービスノードが、同一のパケットを2回見る必要はないかもしれない。さらに、(例えば、サービスがルーティングを実行する場合、)サービスの両側で加入者IPアドレスを見ることに関連する問題がある恐れがある。アプリケーションテーブルにおけるルールは、加入者間のトラフィックについてサービスを1方向に迂回させるために、実装されることができる。
OpenFlow1.1プロトコル転送モデルを使用する図2の例示的なデータバスの実装は、当業者により容易に理解されるであろう。メタデータの項目(方向及びサービスセット)は、OpenFlowの64ビットのメタデータフィールド内に符号化される。これは、方向について1ビットを必要とし、最大で63の異なるサービスを許容するサービスセットを符号化するために63ビットまで残す。OpenFlow1.1は、次の等式に基づき、任意のマスクを使用してメタデータフィールド上の一致をサポートし、メタデータフィールドの更新をサポートする:meta=(meta&〜mask)|(value&mask)。この値(value)及びマスク(mask)は、任意の64ビットの数であり得る。
表2は、上述した例としてのOpenFlow1.1スイッチテーブルアクションの概要である。
Figure 0006240158
図2のフローチャートの加入者テーブルは、パケットの方向に基づいて加入者のIPアドレスを抽出したことに留意すべきである。表2のOpenFlow実装例では、送信元IPアドレス及び宛て先IPアドレスの両方が、方向ビットを有するメタデータフィールドと共に、照合フィールドとして代わりに含まれる。このテーブルに導入されるルールは、メタデータフィールド内の方向ビットに対応して、ワイルドカードとして送信元又は宛て先IPアドレスのいずれか、及び全てのマスクされた他のメタデータビットを有するであろう。
加入者テーブル内に記載されている同一のコンセプトが、アプリケーションテーブルにも同様に適用される。OpenFlow1.1は、ポートの範囲又はマスクをサポートしないため、誘導メカニズムの現在の実装は、送信元及び/又は宛て先ポートについては完全一致に限定される。
本開示の実施形態をさらに示すために、図1のトポロジーに基づく例について説明する。図3は、境界スイッチPS2 104のデータパスについてのテーブル全体を導き出すために、図1のトポロジーと組み合わせて使用される構成情報を含む構成データ300の例を示す。構成データ300は、加入者情報、サービス情報、ルータ情報、アプリケーション情報及び全体的なサービス順序付けを含む。テーブルの大部分が、構成が変わる場合にのみ変化するという意味で、ほとんど固定である。
図4a−4fは、図3の構成情報に従って、図1のトポロジー内の境界スイッチ104に投入され格納されるであろうテーブルエントリの例を示す。この例で明確に示されていない1つのテーブルは、マイクロフローテーブルである。これは、マイクロフロー情報が、静的な構成からではなくむしろ動的なフロー分析から得られるものだからである。特定のマイクロフローが再誘導されるべきであると、動的ポリシー(即ち、レイヤ5−レイヤ7の情報に基づく)が決定づける場合、対応するマイクロフロールールを関連するスイッチに導入するであろう。例では、メタデータフィールドが各テーブルについてどのように照合され又は更新されるかが提示されるであろう。これらの例は、方向を表す最も重要なビットを有する5ビットのメタデータフィールド(1方向ビット、4サービスビット)に基づく。
図4aは、方向テーブル410の例を示す。方向テーブル410は列412を含み、列412は各々入口ポート412a及び関連付けられたアクション412bを含む。パケットの方向(アップストリーム又はダウンストリーム)は、パケットが到着する入口ポートにより判定される。例えば、入口ポート1で受信されるパケットについて、方向メタデータは、列412’に示されるように“ダウンストリーム”にセットされる。この実施形態では、値1がアップストリーム方向を表し、値0がダウンストリーム方向を表す。2番目のルールでは、列412”において、メタデータフィールドは以下のように更新されるであろう。
Figure 0006240158
図4bは、MACテーブル420の例を示す。MACテーブル420は、列422を含み、列422は各々宛て先MACアドレス422a及び関連付けられたアクション422bを含む。MACテーブル420についてのアクションは、対応する宛て先MACアドレスに基づいて、送信元MACアドレス(smac)をセットすること、及びパケットを送信するポートを選択することである。
図4cは、加入者テーブル430の例である。加入者テーブル430は、列432を含み、列432は各々方向432a、IPアドレス432b、及びアクション432cを含む。加入者テーブルについてのアクションは、方向ビットは修正されないままで、加入者のIPアドレスに対し適切なサービスセットに基づいて、メタデータフィールド内のサービスビットをセットする。1番目のルールについて、S1及びS3についてのサービスビットは、以下のようにセットされる。
Figure 0006240158
図4dは、アプリケーションテーブル440の例である。アプリケーションテーブル440は、列442を含み、列442は各々方向442a、IPアドレス442b、プロトコル442c、ポート442d、及び関連付けられたアクション442eを含む。アプリケーションテーブルについてのアクションは、このテーブルで一致がある場合、サービスビットを更新又は修正することである。サービスビットのサブセットは、セットされているか又はクリアされているかのいずれかである。方向ビットは修正されない。1番目のルールについて、S2についてのビットはセットされ、S3についてのビットはクリアされる。追加又は除去されているサービスに対応するビットは、マスクフィールド内でセットされる。値フィールドは、これらのサービスについて新たな状態(存在する又はしない)を含む。
Figure 0006240158
図4eは、パス状態テーブル450の例である。パス状態テーブル450は、列452を含み、列452は各々入口ポート452a及び関連付けられたアクション452bを含む。パス状態テーブルについてのアクションは、割り当てられたサービスセット内の前のサービス及びそれに先行する全てのサービスに対応するビットをクリアすることである。3番目のルールについて、メタデータフィールドは、以下のように更新されるであろう。
Figure 0006240158
図4fは、次の宛て先テーブル460である。次の宛て先テーブル460は、列462を含み、列462は各々方向462a、サービスセット462b及び関連付けられたアクション462cを含む。いずれの前のサービスに対応するビットもパス状態テーブルにおいてクリアされており、次の宛て先テーブルにおける探索では、チェーン内の次のサービスを判定するために最上位の残りのビットを見つける。例として、最初の3つのルールについてのメタデータフィールドにおける一致は、次のようになるであろう(Xにセットされたビットは、マッチングの間マスクされている)。
Figure 0006240158
上記例に対するいくつかの可能性のある拡張についてここで論じる。単一の物理サービスミドルボックスが、必要とされるスループットを供給するのに不十分である場合、そのサービスの複数のインスタンスが、誘導ネットワークに接続されることができ、別個のロードバランサの必要性なしで誘導ネットワークがそれらの間でトラフィックを分散させることができる。これは、説明した転送プレーンのメカニズムを修正することなく行われ得る。
加入者テーブル430及びマイクロフローテーブル(図示せず)は、サービスセットのメタデータをコントローラ指定の値にセットする能力を有し得る。アプリケーションテーブル440及びパス状態テーブル450は、サービスセットのメタデータ中の選択コントローラ指定のビットを修正する能力を有し得る。次の宛て先テーブル460は、サービスセットのメタデータ内の選択コントローラ指定のビットをマスクし、照合する能力を有し得る。したがって、コントローラは、これらのビットのフォーマットをいじることができる。簡単な場合では、説明したように、1ビットが(それが適用されるべきか否かを示す)サービスを表し、各サービスのインスタンスが1つだけ存在する。この符号化は、選択サービスがメタデータに含まれるインスタンス識別子を追加的に有することができるように拡張されることができる。nビットがそのような識別子に割り当てられる場合、2までのサービスインスタンスが表され得る。利用可能な固定数のビットで、これはサービスの最大数とサービスごとのインスタンスの数との間のトレードオフである。各サービスは、インスタンス識別子のために異なるビット数を使用することができる。
例示的な符号化スキームでは、メタデータフィールドは64ビット幅である。1ビットは、アップストリーム又はダウンストリームトラフィックを示す方向ビットである。3ビットは未使用である。サービスチェーンは、13の異なるサービスのセットからなる。サービスのうち2つは、8ビット(1適用ビット、7ビットはインスタンス識別子として使用される)を使用して表され、サービス毎に128個までのインスタンスを許容する。残りの11個のサービスは、4ビット(1適用ビット、3インスタンス識別子ビット)を使用して表され、サービス毎に8個までのインスタンスを許容する。
インスタンス識別子は、加入者テーブル430内のデフォルトのサービスセットと共にセットされることができる。一度セットされると、インスタンス識別子ビットは、後続のアプリケーションテーブル440によって修正されない。アプリケーションテーブル440は、サービスが適用されるべきかを示すフラグビットを修正するだけである。これは、サービスが加入者のデフォルトのサービスセットの一部でない場合でも、加入者の粒度においてロードバランシングを可能にする。多数の加入者を仮定すると、このロードバランシングの粒度は十分であろうことが期待される。
ここで述べたようなサービスパスの符号化は、2つの潜在的な制限に対処するために拡大され得る。第1に、サービスの順序付けは、各方向(アップストリーム対ダウンストリーム)に課され得る。所与の方向について、以下の順序付けの制約A→B及びB→Cが定義されている場合、順序付けの制約C→Aは却下されるであろう。第2に、サポートされるサービスの総数は、サービスパス内で符号化され得るサービスの最大数に制限され得る。
これらの2つの制限は、パスグループの選択肢を導入することにより緩和され得る。方向ビットは、各方向における複数グループのサービスパスをサポートするために、追加ビットで強化され得る。例えば、7個の追加ビットを使用することにより、各方向において128個までのパスグループを定義することができるようになる。異なるセットのサービス及び順序付けの制約は、各パスグループについて定義され得る。所与のサービスのインスタンスを表すのに使用されるビット数は、さらなる柔軟性を提供するパスグループ間で変えることもできる。
以前に指定された順序付けの制約に起因して許容されないサービスパスを定義するために、第1の制限に対処する新たなパスグループが、それ自身の順序付け制約のセットで定義され得る。パスグループの使用は、サービスパスの一部であり得るサービスの最大数を変更しないが、サービスのプールのサイズを増加させるであろう。当該サービスのプールからサービスが1つ以上のサービスパスの一部であるように選択される。パスグループを使用することにより、状態テーブル及び宛て先テーブルのサイズを増加させることができる。これらのテーブルの両方が、定義されるパスグループの数を直線的に増大させるであろう。
ここで説明された誘導メカニズムは、加入者毎に2つのルールを使用し、潜在的に大きな加入者ポリシールールテーブルをもたらす結果となる。IPアドレスが、加入者の予め定義されたサービスセットに基づいて加入者に割り当てられた場合、このテーブルのサイズは低減され得る。このアプローチを用いると、加入者毎のルールは、サービスセット毎のルールにより置き換えられ、ルールの数を大いに低減する。この種のソリューションは、多くの加入者が動的IPアドレスを割り当てられるネットワークにおいて、潜在的に展開可能であるかもしれない。
ルータは、そのルーティングテーブルを使用してネクストホップを判定し、それに応じて宛て先MACアドレスをセットするであろう。サービスネットワークは、サービスに向かってパケットを誘導するためにMACアドレスを書き換え、それにより宛て先ゲートウェイノードが上書きされ、したがって透過的なレイヤ2セグメントとして扱われることができない。各端において単一のルータの場合、既知のトラフィック方向が宛て先ルータを識別するのに十分であるからこれは問題ではない。複数のルータの場合、適切なルータにトラフィックを方向付けるために何らかのメカニズムが必要とされる。
誘導ネットワークは、本質的にはルータとして扱われ得る。接続されたルータは、その後、誘導ネットワークにトラフィックを方向付けるルートを有するであろう。そして誘導ネットワークは、そこからトラフィックを方向付けることができる。加入者トラフィックについて、既存の誘導メカニズムは、単一のアップストリーム及び単一のダウンストリームルータより多くを許容するために用いられ得る。これは、複数のサービスインスタンスのコンセプトと同様であるとみなすことができる。ルータ識別子(サービスインスタンス識別子と同様)は、(ダウンストリームトラフィックについての)加入者テーブル430、(アップストリームトラフィックについての)アプリケーションテーブル440において、又は(アップストリーム及びダウンストリームトラフィックについての)マイクロフローテーブルにおいてさえも、セットされることができる。これは、メタデータ符号化の問題であり、いくつかの数のビットがこれに割り当てられ得る。各ルータは、依然として加入者トラフィックのためのアップストリーム又はダウンストリームルータであると考えられる。あるいは、ルーティング情報を含む別のテーブルが追加され得る。
ここに記載される例としての実施形態について、誘導ネットワークにより転送される全てのトラフィックは、加入者トラフィックであると仮定されている。非加入者トラフィックについて、我々は誘導ネットワークを単純なルータとして扱うことができる。加入者テーブル430において見つからないパケットを破棄する替わりに、従来の宛て先IPベースの転送を行う通常のルートテーブルにそれらは送信されてもよい。ルート探索に基づき、同一のメカニズムが、ローカルノードポートに出力されるため、又はレイヤ2コアネットワークをわたって遠隔のノードポートにそれを送信するために使用され得る。非加入者トラフィックは、いかなるインラインサービスも横断しないであろう。
スイッチポートは物理ポートであると仮定されているが、VLANタグ及びサービス上の仮想インタフェースを使用して、仮想ポートを同様にサポートすることもできる。仮想ポートは、必要とされる物理ポートの数を低減するために使用されることができる。
ここに記載した誘導メカニズムは、複数のテーブル、及び複数テーブルを通じてパケットを処理するときに情報を交換するのに使用されることができるメタデータフィールドをサポートするプロトコルを用いて実装され得る。誘導メカニズムは、各スイッチに格納されるルールの総数を低減するため、及び高価なTCAM技術に頼ることを可能な限り回避するためにこれらの2つの特徴を活用する。誘導メカニズムは、加入者テーブル及びマイクロフローテーブルといった大きなテーブルを有する可能性があるが、これらは、RAM内に効果的に実装され得る最長プレフィックス一致及び完全一致テーブルである。単一のテーブルのみサポートする代替的な実装で、入力ポート、加入者及びアプリケーションポリシーの全ての有効な組み合わせが、個々のルールとして符号化されなければならない。このルールの組合せ積は、非常に大きなテーブルをもたらす結果となるであろう。また、これらのルールはワイルドカード及びマスクを含むことから、このテーブルは拡張性及び/又はパフォーマンスの問題を抱えることとなるであろう。
代替的なアプローチは、当業者によって容易に理解されるように、トラフィックを誘導するために実装され得る。1つのアプローチは、サービスチェーン又は訪れるべきサービスのセットを識別する追加情報を各パケットにタグ付けすることである。この追加情報は、サービスパス全体を識別するフラットラベル又は、訪れるべきサービスを各ラベルが識別するラベルのスタック、のいずれかであり得る。
フラットラベルアプローチでは、パケットが着信ポートとラベルの値に基づいて誘導される。パケットは、最初にサービスネットワークに入るときに一度分類される。仮想ローカルエリアネットワーク(VLAN)タグは、フラットラベルとして使用することができるが、このアプローチは問題となる恐れがある。多くのサービスは、レイヤ2ヘッダを削除(strip)してVLANタグを廃棄し、その後再分類を推し進める。VLANタグは、12ビット幅であり、サービスパスの数を4096に制限する。一旦方向を考慮し、複数のサービスインスタンスをサポートする必要を考慮すると、この数は、制限になる可能性がある。
スタックラベルアプローチでは、訪れるべき順序付きサービスのセットが、ラベルのスタックとして記述される。スタックの一番上のラベルは、訪れるべき次のサービスを識別し、各サービスの後、このラベルはスタックから取り出される。一旦そのスタックが空になると、パケットはネットワークを出る。このアプローチは、MPLS(Multiprotocol Label Switching)ラベルを使用して実装され得る。レイヤ2ヘッダを削除する(stripping away)サービスの問題に加えて、多くのサービスは、MPLSヘッダを有するパケットをハンドリングすることができない恐れがある。
別の代替的な実施形態では、パケットは、境界スイッチで一度だけそれを行う代わりに、サービス間のすべてのスイッチホップで再分類されることができる。このアプローチは、宛て先MACアドレスの書き換えを必要としないが、全てのスイッチホップでの再分類を必要とし、内部ネットワーク内の単純な転送メカニズムを使用することを妨げ、この場合合計の帯域幅の要件は境界においてよりも高い。このアプローチは、また、同一のサービスパス内で複数回横断されるリンクのための(例えば、トンネルを使用するような)別個のラベリングメカニズムの使用を必要とする。
図5は、本発明の方法を示すフローチャートである。パケットがネットワーク内の境界スイッチにより受信されると、方法がステップ500において開始される。パケットはステップ510で分類され、分類動作に従ってサービスチェーンが受信されたパケットに割り当てられる。割り当てられたサービスチェーン上の受信されたパケットの位置は、520において判定される。サービスチェーン上の位置は、パケットが受信されたポートに従って判定されることができる。受信されたパケットの方向も、パケットが受信されたポートに基づいて必要に応じて判断されることができる。530で、受信されたパケットの判定された位置に従って、パケットは割り当てられたサービスチェーン上の次のサービスへ転送される。次のサービスは、判定されたサービスチェーン上の位置に加えて判定された方向に従い、必要に応じて判定され得る。ステップ530は、実行されるべき次のサービスに従って、新たな宛て先アドレスを受信されたパケットに割り当てることを含み得る。パケットは、次のサービスに関連付けられたポートを選択することにより、次のサービスに転送されることができる。
図6は、本発明の別の実施形態を示すフローチャートである。ステップ600においてパケットを受信することにより処理が開始する。パケットが伝播する方向が610で判定される。受信されたパケットが伝播する方向はアップストリーム又はダウンストリームであることができ、パケットが受信された入口ポートに従って判定され得る。
620で、受信されたパケットがサービスセットに関連付けられる。パケットをサービスセットに関連付けることは、パケットの少なくとも1つのヘッダフィールドに従って、パケットに適用されるべきサービスの順序付きリストを割り当てることを含み得る。少なくとも1つのヘッダフィールドは、送信元アドレス、宛て先アドレス、送信元ポート、宛て先ポート又はプロトコルを含む群から選択され得る。サービスセットも、判定されたパケットが向かう方向に従って割り当てられ得る。割り当てられたサービスの順序付きリストは、メタデータとして受信されたパケットに添付され得る。
デフォルトのサービスセットは、加入者に関連付けられたアドレスに従って、パケットに関連付けられ得る。加入者アドレスは、判定された方向に従って、受信されたパケットの送信元アドレス又は宛て先アドレスとして識別され得る。デフォルトのサービスセットは、受信されたパケットの少なくとも1つのヘッダフィールドに従って、必要に応じて修正されることができる。
ステップ630で、関連付けられたサービスセット上のパケットの位置が判定される。サービスセット上のパケットの位置は、パケットが受信された入口ポートに従って判定され得る。最後に適用されたサービス及び前に適用された全てのサービスの両方が、サービスセット内のパケットの現在位置及びパケットが向かっている方向に基づいて判定され得る。関連付けられたサービスセット上のパケットに適用される次のサービスがステップ640で選択される。次のサービスは、判定されたパケットの方向及び位置に従って選択される。関連付けられたサービスセットは、パケットに既に適用されたサービスを除去するために、判定されたパケットの方向及び位置に従って必要に応じて修正されることができる。
ステップ650で、選択された次のサービスに従って、新たな宛て先がパケットに割り当てられる。パケットに新たな宛て先を割り当てることは、パケットに関連付けられた宛て先アドレスを書き換えることを含み得る。必要に応じて、660で、パケットは新たな宛て先に転送される。パケットを転送するステップは、新たな宛て先に関連付けられるポートを選択すること、及び選択された次のサービスに当該ポートを通じてパケットを送信することを含み得る。
図7は、本発明の実施形態に係るスイッチ700のブロック図である。スイッチ700は、サービスネットワーク内の境界スイッチであり、ここで述べられた機能性を実装することができる。スイッチ700は、パケットを送信及び受信するための複数の入力/出力ポートを含む。複数のポートは、第1のポート702及び第2のポート704を含む。第1のポート702及び第2のポート704は、単一の物理通信インターフェースとして実装されてもよい。プロセッサ706は、入力ポート702、出力ポート及びメモリ又はデータリポジトリ708に動作可能に接続される。メモリ708は、スイッチ700の内部又は外部にあることができ、プロセッサ706によりアクセス可能である。
プロセッサ706は、第1のポート702で受信されたパケットをサービスセットと関連付けるように構成される。プロセッサ706は、受信されたパケットの関連付けられたサービスセット上の位置を検出し、検出された位置に従って、関連付けられたサービスセット上の次のサービスを判定する。プロセッサ706は、判定された次のサービスにパケットを送信するための第2のポート704を選択することができる。第2のポート704は、次のサービスと関連付けられることができ、複数のポートから選択される。
複数のポートは、ダウンストリームに伝播するパケットをサービスノードに送信し、サービスノードからアップストリームに伝播するパケットを受信するために指定された少なくとも1つのポートを含み得る。少なくとも1つの他のポートは、アップストリームに伝播するパケットを同一のサービスノードに送信し、同一のサービスノードからダウンストリームに伝播するパケットを受信するために指定されることができる。
プロセッサ706は、パケットが受信された第1のポート702に従って、受信されたパケットが向かっている方向(アップストリーム又はダウンストリーム)を判定することができる。プロセッサ706は、判定されたパケットの方向及びヘッダフィールドに基づいて、受信されたパケットをサービスセットに関連付けることができる。
サービスセットに関連付けられたパケットの一部として、プロセッサ706は、加入者に関連付けられたアドレスに従って、デフォルトのサービスセットをパケットに割り当てることができる。加入者は、パケットが向かっている方向に依存して、パケットの送信元アドレス又は宛て先アドレスのいずれかにより識別され得る。プロセッサ706は、さらに、パケットの少なくとも1つの他のヘッダフィールドに従って、デフォルトのサービスセットを修正することができる。
プロセッサ706は、パケットが受信された第1のポート702に基づいて、関連付けられたサービスセット上の受信されたパケットの位置を判定することができる。プロセッサ706は、判定された次のサービスに従って、受信されたパケットに新たな宛て先を割り当てることができる。
スイッチ700は、また、アップストリーム又はダウンストリーム方向と関係しないパケットを受信するためのトランジットポートを必要に応じて含み得る。プロセッサ706は、専ら宛て先アドレスに従ってトランジットポートで受信されたパケットを転送する。スイッチ700は1つ又は数個のトランジットポートを含み得る。トランジットポートで受信されたパケットは、複数のポート(第1のポート702及び第2のポート704を含む)又はトランジットポートを介して、それらの宛て先に転送され得る。
本発明の実施形態は、機械可読媒体(コンピュータ可読媒体、プロセッサ可読媒体又はその中に具体化されたコンピュータ可読プログラムコードを有するコンピュータ使用可能媒体とも呼ばれる)内に格納されるソフトウェア製品として表され得る。機械可読媒体は、ディスケット、CD−ROM(compact disk read only memory)、DVD−ROM(digital versatile disc read only memory)、(揮発性又は不揮発性)メモリ装置又は類似の記憶メカニズムを含む、磁気、光学又は電気記憶媒体を含む任意の適切な有形媒体であり得る。機械可読媒体は、実行されたときに本発明の実施形態に係る方法におけるステップをプロセッサに実行させる、命令、コードシーケンス、構成情報又は他のデータの様々な集合を含み得る。当業者は、記載された発明を実装するのに必要な他の命令及び動作もまた、機械可読媒体上に格納され得ることを理解するであろう。機械可読媒体から実行されるソフトウェアは、記載されたタスクを実行するための回路とインタフェースし得る。
上述した本発明の実施形態は、例としてのみであることが意図される。変更、修正及び変形は、専ら添付の特許請求の範囲によって定義される本発明の範囲から逸脱することなく当業者によって特定の実施形態にもたらされ得る。

Claims (25)

  1. スイッチングエレメントによりネットワークのパケットトラフィックを誘導するための方法であって、
    パケットを受信することと、
    アップストリーム又はダウンストリームである、受信された前記パケットが伝播している方向を判定することと、
    受信された前記パケットをサービスセットに関連付けることと、
    前記サービスセット内のどのサービスが前記パケットに適用されたかを判定することにより、関連付けられた前記サービスセット内の前記パケットの位置を判定することと、
    判定された方向と前記パケットの位置とに従って、関連付けられた前記サービスセット内の次のサービスを選択することと、
    選択された前記次のサービスに従って、前記パケットに新たな宛て先を割り当てることと、
    を含む方法。
  2. 受信された前記パケットが伝播している前記方向は、前記パケットが受信された入口ポートに従って判定される、請求項1の方法。
  3. 受信された前記パケットを前記サービスセットに関連付けるステップは、受信された前記パケットに適用されるべきサービスの順序付きリストを割り当てることを含む、請求項1の方法。
  4. 受信された前記パケットは、判定された前記方向及び前記パケットの第1のヘッダフィールドに従って、前記サービスセットに関連付けられる、請求項1の方法。
  5. 前記第1のヘッダフィールドは、送信元アドレス、宛て先アドレス、送信元ポート、宛て先ポート及びプロトコルを含む群から選択される、請求項4の方法。
  6. 受信された前記パケットを前記サービスセットに関連付けるステップは、加入者に関連付けられるアドレスに従って、デフォルトのサービスを受信された前記パケットに割り当てることを含む、請求項1の方法。
  7. 前記加入者に関連付けられる前記アドレスは、判定された前記方向に従って、受信された前記パケットの送信元アドレス又は宛て先アドレスから選択される、請求項6の方法。
  8. 受信された前記パケットの第2のヘッダフィールドに従って、前記デフォルトのサービスセットを修正するステップをさらに含む、請求項6の方法。
  9. 前記第2のヘッダフィールドは、送信元アドレス、宛て先アドレス、送信元ポート、宛て先ポート及びプロトコルを含む群から選択される、請求項8の方法。
  10. 関連付けられた前記サービスセット内の前記パケットの前記位置は、前記パケットが受信された入口ポートに従って判定される、請求項1の方法。
  11. 受信された前記パケットに既に適用されたサービスを除去するために、判定された方向及び前記パケットの位置に従って、関連付けられた前記サービスセットを修正するステップをさらに含む、請求項1の方法。
  12. 前記パケットに新たな宛て先を割り当てるステップは、前記パケットの宛て先アドレスを書き換えることを含む、請求項1の方法。
  13. 割り当てられた前記新たな宛て先に前記パケットを転送するステップをさらに含む、請求項1の方法。
  14. 転送する前記ステップは、割り当てられた前記新たな宛て先アドレスに関連付けられるポートを選択することと、選択された前記ポート上で前記パケットを送信することと、を含む、請求項13の方法。
  15. 各々がネットワークのパケットトラフィックを受信及び送信するための複数のポートと、
    前記複数のポートに動作可能に接続されるプロセッサであって、アップストリーム又はダウンストリームである第1のポートで受信されたパケットが伝播している方向を判定し、前記パケットをサービスセットに関連付け、前記サービスセット内のどのサービスが前記パケットに適用されたかを判定することにより、関連付けられた前記サービスセット上の受信された前記パケットの位置を検出し、判定された前記方向と検出された前記位置に従って、関連付けられた前記サービスセット上の次のサービスを判定し、前記複数のポートから第2のポートを選択し、及び選択された前記第2のポート上で、判定された前記次のサービスに前記パケットを送信するための前記プロセッサと、
    を含むスイッチ。
  16. 選択された前記第2のポートは、判定された前記次のサービスに関連付けられる、請求項15のスイッチ。
  17. 複数のポートは、サービスノーからダウンストリームに伝播するパケットを受信するための及びサービスノードに対しアップストリームに伝播するパケットを送信するためのアップストリーム対向ポートと、サービスノードからアップストリームに伝播するパケットを受信するための及びサービスノードに対しダウンストリームに伝播するパケットを送信するためのダウンストリーム対向ポートと、を含む、請求項15のスイッチ。
  18. 前記プロセッサは、受信された前記パケットが伝播している前記方向を、前記第1のポートに従って判定するように構成される、請求項15のスイッチ。
  19. 前記プロセッサは、判定された前記方向及び受信された前記パケットの第1のヘッダフィールドに従って、受信された前記パケットを前記サービスセットに関連付ける、請求項18のスイッチ。
  20. 前記プロセッサは、加入者に関連付けられたアドレスに従って、デフォルトのサービスセットを受信された前記パケットに割り当てるように構成される、請求項15のスイッチ。
  21. 前記加入者に関連付けられた前記アドレスは、受信された前記パケットの送信元アドレス又は宛て先アドレスのうちの1つである、請求項20のスイッチ。
  22. 前記プロセッサは、受信された前記パケットの第2のヘッダフィールドに従って、前記デフォルトのサービスセットを修正するように構成される、請求項20のスイッチ。
  23. 前記プロセッサは、前記第1のポートに従って、関連付けられた前記サービスセット上の受信された前記パケットの前記位置を判定するように構成される、請求項15のスイッチ。
  24. 前記プロセッサは、判定された前記次のサービスに従って、受信された前記パケットに新たな宛て先を割り当てるように構成される、請求項15のスイッチ。
  25. 関連付けられた方向を有しないパケットを受信するためのトランジットポートをさらに含み、
    前記プロセッサは、専らその宛て先アドレスに従って、関連付けられた方向を有しない前記パケットを転送する、請求項15のスイッチ。
JP2015506339A 2012-04-16 2013-04-16 ソフトウェア定義型ネットワーキングを用いたインラインサービスの連鎖化 Active JP6240158B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261624823P 2012-04-16 2012-04-16
US61/624,823 2012-04-16
US13/556,456 2012-07-24
US13/556,456 US10097452B2 (en) 2012-04-16 2012-07-24 Chaining of inline services using software defined networking
PCT/IB2013/053017 WO2013156931A1 (en) 2012-04-16 2013-04-16 Chaining of inline services using software defined networking

Publications (2)

Publication Number Publication Date
JP2015517272A JP2015517272A (ja) 2015-06-18
JP6240158B2 true JP6240158B2 (ja) 2017-11-29

Family

ID=49325022

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015506339A Active JP6240158B2 (ja) 2012-04-16 2013-04-16 ソフトウェア定義型ネットワーキングを用いたインラインサービスの連鎖化

Country Status (7)

Country Link
US (1) US10097452B2 (ja)
EP (1) EP2839616B1 (ja)
JP (1) JP6240158B2 (ja)
CN (1) CN104247348B (ja)
AU (1) AU2013250796B2 (ja)
CA (1) CA2870326C (ja)
WO (1) WO2013156931A1 (ja)

Families Citing this family (159)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009151863A2 (en) * 2008-06-10 2009-12-17 Myers Wolin, Llc A network gateway for time-critical and mission-critical networks
US8743885B2 (en) 2011-05-03 2014-06-03 Cisco Technology, Inc. Mobile service routing in a network environment
US9130977B2 (en) 2012-04-18 2015-09-08 Radware, Ltd. Techniques for separating the processing of clients' traffic to different zones
US9055006B2 (en) 2012-06-11 2015-06-09 Radware, Ltd. Techniques for traffic diversion in software defined networks for mitigating denial of service attacks
CN103546304B (zh) 2012-07-11 2017-08-25 华为技术有限公司 业务处理方法、设备及系统
US9432268B2 (en) 2013-01-28 2016-08-30 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for placing services in a network
US9584371B2 (en) 2012-07-24 2017-02-28 Telefonaktiebolaget Lm Ericsson (Publ) System and method for assigning multi-instance services in a provider network
US9608901B2 (en) 2012-07-24 2017-03-28 Telefonaktiebolaget Lm Ericsson (Publ) System and method for enabling services chaining in a provider network
US8837486B2 (en) * 2012-07-25 2014-09-16 Cisco Technology, Inc. Methods and apparatuses for automating return traffic redirection to a service appliance by injecting traffic interception/redirection rules into network nodes
US8937945B2 (en) * 2012-09-12 2015-01-20 Alcatel Lucent Method and apparatus for optimizing usage of ternary content addressable memory (TCAM)
US9306840B2 (en) * 2012-09-26 2016-04-05 Alcatel Lucent Securing software defined networks via flow deflection
US9426063B1 (en) * 2012-11-15 2016-08-23 Qlogic, Corporation Systems and methods for routing by network devices
WO2014093900A1 (en) * 2012-12-13 2014-06-19 Huawei Technologies Co., Ltd. Content based traffic engineering in software defined information centric networks
US9413667B2 (en) * 2013-02-15 2016-08-09 Telefonaktiebolaget Lm Ericsson (Publ) Methods and network nodes for traffic steering based on per-flow policies
US9660905B2 (en) * 2013-04-12 2017-05-23 Futurewei Technologies, Inc. Service chain policy for distributed gateways in virtual overlay networks
US9344350B2 (en) * 2013-04-18 2016-05-17 Cisco Technology, Inc. Virtual service topologies in virtual private networks
US9794379B2 (en) 2013-04-26 2017-10-17 Cisco Technology, Inc. High-efficiency service chaining with agentless service nodes
US9407540B2 (en) 2013-09-06 2016-08-02 Cisco Technology, Inc. Distributed service chaining in a network environment
US9497094B2 (en) 2013-05-09 2016-11-15 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for providing network applications monitoring
US9503311B2 (en) 2013-05-09 2016-11-22 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for providing network applications monitoring
US9491063B2 (en) 2013-05-15 2016-11-08 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for providing network services orchestration
US9826025B2 (en) * 2013-05-21 2017-11-21 Cisco Technology, Inc. Chaining service zones by way of route re-origination
CN103346974B (zh) 2013-06-03 2015-04-08 华为技术有限公司 一种业务流程的控制方法及网络设备
US9178812B2 (en) 2013-06-05 2015-11-03 Cisco Technology, Inc. Stacking metadata contexts for service chains
US9444675B2 (en) 2013-06-07 2016-09-13 Cisco Technology, Inc. Determining the operations performed along a service path/service chain
CN104243302B (zh) * 2013-06-20 2018-03-16 华为技术有限公司 业务路由报文处理方法、装置及网络系统
US9509614B2 (en) 2013-06-20 2016-11-29 Cisco Technology, Inc. Hierarchical load balancing in a network environment
US9906436B2 (en) * 2013-08-05 2018-02-27 Futurewei Technologies, Inc. Scalable name-based centralized content routing
US9762532B2 (en) * 2013-08-14 2017-09-12 Coriant Oy Method and network device for configuring a data transfer network
CN104468357B (zh) * 2013-09-16 2019-07-12 中兴通讯股份有限公司 流表的多级化方法、多级流表处理方法及装置
US9491094B2 (en) 2013-09-25 2016-11-08 Cisco Techonology, Inc. Path optimization in distributed service chains in a network environment
US20150085870A1 (en) * 2013-09-25 2015-03-26 Cisco Technology, Inc. Co-operative load sharing and redundancy in distributed service chains in a network environment
US10757632B2 (en) * 2013-09-30 2020-08-25 Qualcomm Incorporated Public land mobile network identifier for non-mobile network operator networks
US10079897B2 (en) * 2013-10-29 2018-09-18 Telefonaktiebolaget Lm Ericsson (Publ) Control of a chain of services
US9363180B2 (en) 2013-11-04 2016-06-07 Telefonkatiebolaget L M Ericsson (Publ) Service chaining in a cloud environment using Software Defined Networking
US9847951B2 (en) 2013-11-04 2017-12-19 Ciena Corporation Dynamic bandwidth allocation systems and methods using content identification in a software-defined networking controlled multi-layer network
US9300585B2 (en) 2013-11-15 2016-03-29 Cisco Technology, Inc. Shortening of service paths in service chains in a communications network
EP3075134B1 (en) * 2013-11-26 2019-01-09 Telefonaktiebolaget LM Ericsson (publ) A method and system of supporting service chaining in a data network
CN104702519B (zh) * 2013-12-06 2018-02-13 华为技术有限公司 流量卸载的方法、装置及系统
WO2015082016A1 (en) 2013-12-06 2015-06-11 Huawei Technologies Co., Ltd. Method and controller for chaining applications in a software defined network
CN106063200B (zh) * 2013-12-09 2019-11-01 华为技术有限公司 一种用于内容缓存的装置、方法
CN105814843B (zh) 2013-12-10 2019-05-03 华为技术有限公司 一种流表的生成方法和装置
US10505838B2 (en) * 2013-12-19 2019-12-10 Sandvine Corporation System and method for diverting established communication sessions
US9825856B2 (en) * 2014-01-06 2017-11-21 Futurewei Technologies, Inc. Service function chaining in a packet network
WO2015106249A1 (en) * 2014-01-13 2015-07-16 Futurewei Technologies, Inc. Packet labeling in a virtual network
JP6382322B2 (ja) * 2014-01-17 2018-08-29 クゥアルコム・インコーポレイテッドQualcomm Incorporated 通信ネットワーク内でのメッセージの転送
US9520961B2 (en) * 2014-01-17 2016-12-13 Telefonaktiebolaget L M Ericsson (Publ) System and methods for optical lambda flow steering
CN104811326A (zh) * 2014-01-24 2015-07-29 中兴通讯股份有限公司 一种管理业务链的方法、系统及装置
CN105122741B (zh) * 2014-03-14 2019-01-25 华为技术有限公司 业务流的业务链控制方法和装置
US20170142010A1 (en) * 2014-03-20 2017-05-18 Hewlett Packard Enterprise Development Lp Network operation rule
CN104954274B (zh) 2014-03-25 2018-03-16 华为技术有限公司 生成转发信息的方法、控制器和业务转发实体
CN104954245B (zh) * 2014-03-27 2019-07-16 中兴通讯股份有限公司 业务功能链处理方法及装置
US10439944B2 (en) 2014-03-31 2019-10-08 Telefonaktiebolaget Lm Ericsson (Publ) Handling of traffic flows in a communications system
US9654395B2 (en) 2014-03-31 2017-05-16 Kulcloud SDN-based service chaining system
US9503391B2 (en) 2014-04-11 2016-11-22 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for network function placement
WO2015166506A1 (en) 2014-04-29 2015-11-05 Hewlett-Packard Development Company, L.P. Network service insertion
CN105099960B (zh) * 2014-04-30 2018-03-16 国际商业机器公司 用于实现服务链的方法和装置
CN105099917B (zh) * 2014-05-08 2018-09-28 华为技术有限公司 业务报文的转发方法和装置
US20150333930A1 (en) * 2014-05-15 2015-11-19 Akamai Technologies, Inc. Dynamic service function chaining
US9379931B2 (en) 2014-05-16 2016-06-28 Cisco Technology, Inc. System and method for transporting information to services in a network environment
US9479443B2 (en) 2014-05-16 2016-10-25 Cisco Technology, Inc. System and method for transporting information to services in a network environment
US9832168B2 (en) * 2014-07-01 2017-11-28 Cable Television Laboratories, Inc. Service discovery within multi-link networks
CN105450552B (zh) * 2014-07-02 2018-12-14 阿尔卡特朗讯 基于sdn网络对应用服务链的策略与计费控制方法与设备
US9455908B2 (en) * 2014-07-07 2016-09-27 Cisco Technology, Inc. Bi-directional flow stickiness in a network environment
CN105453493B (zh) * 2014-07-23 2019-02-05 华为技术有限公司 业务报文转发方法及装置
US9479409B2 (en) 2014-08-18 2016-10-25 Telefonaktiebolaget L M Ericsson (Publ) Passive reachability measurement for inline service chaining
CN105471726B (zh) 2014-09-05 2019-08-27 华为技术有限公司 转发参数传递的方法及设备
US10826835B2 (en) 2014-09-19 2020-11-03 Nokia Solutions And Networks Oy Chaining of network service functions in a communication network
BR112017006377A2 (pt) * 2014-09-30 2018-06-26 Huawei Tech Co Ltd “aparelho e método de geração de trajeto de serviço
CN105577579B (zh) * 2014-10-17 2020-09-01 中兴通讯股份有限公司 业务功能链中协议报文的处理方法、系统及业务功能节点
US9923815B2 (en) * 2014-11-11 2018-03-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Network based service function chaining on top of rack switches
US10417025B2 (en) 2014-11-18 2019-09-17 Cisco Technology, Inc. System and method to chain distributed applications in a network environment
US9705775B2 (en) 2014-11-20 2017-07-11 Telefonaktiebolaget Lm Ericsson (Publ) Passive performance measurement for inline service chaining
US9838286B2 (en) 2014-11-20 2017-12-05 Telefonaktiebolaget L M Ericsson (Publ) Passive performance measurement for inline service chaining
US9660909B2 (en) 2014-12-11 2017-05-23 Cisco Technology, Inc. Network service header metadata for load balancing
US9571405B2 (en) 2015-02-25 2017-02-14 Cisco Technology, Inc. Metadata augmentation in a service function chain
USRE48131E1 (en) 2014-12-11 2020-07-28 Cisco Technology, Inc. Metadata augmentation in a service function chain
WO2016095142A1 (zh) * 2014-12-17 2016-06-23 华为技术有限公司 软件定义网络sdn中数据转发的方法、设备和系统
CN105871572B (zh) * 2015-01-20 2019-06-25 中国移动通信集团公司 业务链策略优化方法、装置及系统
JP6562573B2 (ja) * 2015-01-31 2019-08-21 華為技術有限公司Huawei Technologies Co.,Ltd. サービスフローパケットのための処理方法および装置
US10924298B2 (en) * 2015-02-11 2021-02-16 Hewlett Packard Enterprise Development Lp Network service chain construction
EP3249863B1 (en) * 2015-02-13 2019-06-19 Huawei Technologies Co., Ltd. Access control apparatus, system and method
US9736063B2 (en) * 2015-02-17 2017-08-15 Huawei Technologies Co., Ltd. Service chaining using source routing
US9628380B2 (en) * 2015-03-06 2017-04-18 Telefonaktiebolaget L M Ericsson (Publ) Method and system for routing a network function chain
US9935834B1 (en) 2015-03-13 2018-04-03 Cisco Technology, Inc. Automated configuration of virtual port channels
US9503363B2 (en) 2015-03-16 2016-11-22 Cisco Technology, Inc. Segment routing label switch paths in network functions virtualization communications networks
US10043002B2 (en) 2015-03-27 2018-08-07 Big Switch Networks, Inc. Optimization of service in-line chain traffic
US9954783B1 (en) 2015-03-31 2018-04-24 Cisco Technology, Inc. System and method for minimizing disruption from failed service nodes
US10110668B1 (en) 2015-03-31 2018-10-23 Cisco Technology, Inc. System and method for monitoring service nodes
US10305816B1 (en) 2015-03-31 2019-05-28 Cisco Technology, Inc. Adjustable bit mask for high-speed native load balancing on a switch
US10079725B1 (en) 2015-04-01 2018-09-18 Cisco Technology, Inc. Route map policies for network switches
US9985894B1 (en) 2015-04-01 2018-05-29 Cisco Technology, Inc. Exclude filter for load balancing switch
US10103995B1 (en) 2015-04-01 2018-10-16 Cisco Technology, Inc. System and method for automated policy-based routing
US9769069B2 (en) 2015-04-10 2017-09-19 At&T Intellectual Property I, L.P. Methods and apparatus to provide a consumer services cloud in a communications network
US10033631B1 (en) 2015-04-23 2018-07-24 Cisco Technology, Inc. Route distribution for service appliances
US10469389B1 (en) 2015-04-23 2019-11-05 Cisco Technology, Inc. TCAM-based load balancing on a switch
US10075377B1 (en) 2015-04-23 2018-09-11 Cisco Technology, Inc. Statistical collection in a network switch natively configured as a load balancer
US9853898B1 (en) * 2015-04-29 2017-12-26 Juniper Networks, Inc. Dynamic service chain provisioning
US9473396B1 (en) 2015-05-06 2016-10-18 Freescale Semiconductor, Inc. System for steering data packets in communication network
US9935882B2 (en) 2015-05-13 2018-04-03 Cisco Technology, Inc. Configuration of network elements for automated policy-based routing
US9954799B2 (en) 2015-05-14 2018-04-24 International Business Machines Corporation Adaptive service chain management
US9762402B2 (en) 2015-05-20 2017-09-12 Cisco Technology, Inc. System and method to facilitate the assignment of service functions for service chains in a network environment
US10103976B2 (en) * 2015-07-09 2018-10-16 Cisco Technology, Inc. Service bitmask-based service application in service function chaining
US9929945B2 (en) 2015-07-14 2018-03-27 Microsoft Technology Licensing, Llc Highly available service chains for network services
US10505846B2 (en) * 2015-07-22 2019-12-10 Cisco Technology, Inc. Resilient segment routing service hunting with TCP session stickiness
US9979639B2 (en) 2015-07-28 2018-05-22 Futurewei Technologies, Inc. Single network interface for multiple interface virtual network functions
US9979629B2 (en) 2015-08-21 2018-05-22 Cisco Technology, Inc. Distribution of segment identifiers in network functions virtualization and software defined network environments
US11082515B2 (en) * 2015-09-26 2021-08-03 Intel Corporation Technologies for offloading data object replication and service function chain management
US9838284B2 (en) * 2015-10-14 2017-12-05 At&T Intellectual Property I, L.P. Dedicated software-defined networking network for performance monitoring of production software-defined networking network
US10116553B1 (en) 2015-10-15 2018-10-30 Cisco Technology, Inc. Application identifier in service function chain metadata
US10305725B2 (en) * 2015-10-31 2019-05-28 Nicira, Inc. Local controller agent for converting logical pipeline data
KR20170052002A (ko) * 2015-11-03 2017-05-12 한국전자통신연구원 가상 네트워크 기능 체이닝 시스템 및 방법
CN105430113B (zh) * 2015-11-03 2018-07-03 上海斐讯数据通信技术有限公司 Sdn网络arp报文处理方法、系统、控制器及交换机
US10812393B2 (en) 2015-12-28 2020-10-20 Hewlett Packard Enterprise Development Lp Packet distribution based on an identified service function
US10063468B2 (en) 2016-01-15 2018-08-28 Cisco Technology, Inc. Leaking routes in a service chain
US11044203B2 (en) 2016-01-19 2021-06-22 Cisco Technology, Inc. System and method for hosting mobile packet core and value-added services using a software defined network and service chains
US10812376B2 (en) 2016-01-22 2020-10-20 Red Hat, Inc. Chaining network functions to build complex datapaths
US10164875B2 (en) 2016-02-22 2018-12-25 Cisco Technology, Inc. SR app-segment integration with service function chaining (SFC) header metadata
US10374922B2 (en) 2016-02-24 2019-08-06 Cisco Technology, Inc. In-band, health-based assessments of service function paths
US9954774B2 (en) 2016-03-10 2018-04-24 Cisco Technology, Inc. Propagating flow characteristics in service function chaining (SFC) headers
US10187306B2 (en) 2016-03-24 2019-01-22 Cisco Technology, Inc. System and method for improved service chaining
US10931793B2 (en) 2016-04-26 2021-02-23 Cisco Technology, Inc. System and method for automated rendering of service chaining
US10027746B2 (en) 2016-05-26 2018-07-17 International Business Machines Corporation Mechanism for overlay virtual networking
KR102541641B1 (ko) 2016-06-07 2023-06-08 한국전자통신연구원 분산 서비스 기능 포워딩 시스템 및 방법
US10104187B2 (en) 2016-06-15 2018-10-16 Futurewei Technologies, Inc. System, computer program, and method for dividing services into subsets based on interdependencies
US10419550B2 (en) 2016-07-06 2019-09-17 Cisco Technology, Inc. Automatic service function validation in a virtual network environment
US10320664B2 (en) 2016-07-21 2019-06-11 Cisco Technology, Inc. Cloud overlay for operations administration and management
US10218616B2 (en) 2016-07-21 2019-02-26 Cisco Technology, Inc. Link selection for communication with a service function cluster
US10225270B2 (en) 2016-08-02 2019-03-05 Cisco Technology, Inc. Steering of cloned traffic in a service function chain
US10218593B2 (en) * 2016-08-23 2019-02-26 Cisco Technology, Inc. Identifying sources of packet drops in a service function chain environment
US10361969B2 (en) 2016-08-30 2019-07-23 Cisco Technology, Inc. System and method for managing chained services in a network environment
US10178026B2 (en) * 2016-09-27 2019-01-08 Gigamon Inc. Flexible inline arrangements for guiding traffic through network tools
US10361915B2 (en) * 2016-09-30 2019-07-23 International Business Machines Corporation System, method and computer program product for network function optimization based on locality and function type
US10848432B2 (en) 2016-12-18 2020-11-24 Cisco Technology, Inc. Switch fabric based load balancing
TWI644536B (zh) * 2017-02-24 2018-12-11 中華電信股份有限公司 User group-based process item management system and method thereof for SDN network
US10225187B2 (en) 2017-03-22 2019-03-05 Cisco Technology, Inc. System and method for providing a bit indexed service chain
US10884807B2 (en) 2017-04-12 2021-01-05 Cisco Technology, Inc. Serverless computing and task scheduling
US10257033B2 (en) 2017-04-12 2019-04-09 Cisco Technology, Inc. Virtualized network functions and service chaining in serverless computing infrastructure
US10333855B2 (en) 2017-04-19 2019-06-25 Cisco Technology, Inc. Latency reduction in service function paths
US10554689B2 (en) 2017-04-28 2020-02-04 Cisco Technology, Inc. Secure communication session resumption in a service function chain
US10735275B2 (en) 2017-06-16 2020-08-04 Cisco Technology, Inc. Releasing and retaining resources for use in a NFV environment
US10798187B2 (en) 2017-06-19 2020-10-06 Cisco Technology, Inc. Secure service chaining
US10397271B2 (en) 2017-07-11 2019-08-27 Cisco Technology, Inc. Distributed denial of service mitigation for web conferencing
US10673698B2 (en) 2017-07-21 2020-06-02 Cisco Technology, Inc. Service function chain optimization using live testing
US11063856B2 (en) 2017-08-24 2021-07-13 Cisco Technology, Inc. Virtual network function monitoring in a network function virtualization deployment
US10791065B2 (en) 2017-09-19 2020-09-29 Cisco Technology, Inc. Systems and methods for providing container attributes as part of OAM techniques
US11184286B2 (en) 2017-09-29 2021-11-23 Wipro Limited Method and system for adaptive and context-aware service function chaining in communication networks
US11082312B2 (en) 2017-10-04 2021-08-03 Cisco Technology, Inc. Service chaining segmentation analytics
US10965596B2 (en) 2017-10-04 2021-03-30 Cisco Technology, Inc. Hybrid services insertion
US10965598B1 (en) 2017-10-04 2021-03-30 Cisco Technology, Inc. Load balancing in a service chain
US11018981B2 (en) 2017-10-13 2021-05-25 Cisco Technology, Inc. System and method for replication container performance and policy validation using real time network traffic
US10541893B2 (en) 2017-10-25 2020-01-21 Cisco Technology, Inc. System and method for obtaining micro-service telemetry data
US10439933B2 (en) * 2018-01-09 2019-10-08 Entry Point, Llc Isolating services across a single physical network interface
US10798015B2 (en) * 2018-01-25 2020-10-06 Cisco Technology, Inc. Discovery of middleboxes using traffic flow stitching
US10666612B2 (en) 2018-06-06 2020-05-26 Cisco Technology, Inc. Service chains for inter-cloud traffic
WO2020165466A1 (es) * 2019-02-12 2020-08-20 Telefónica Digital España, S.L.U Método y sistema para controlar el acceso de tráfico a servicios de una red definida por software (sdn)
US20200389435A1 (en) * 2019-03-01 2020-12-10 Syntegrity Networks Inc. Auditing smart bits
US11611584B2 (en) 2019-03-01 2023-03-21 Cloudentity, Inc. Smart bits
US11343189B2 (en) * 2019-10-21 2022-05-24 Arista Networks, Inc. Systems and methods for augmenting TCAM bank processing with exact match

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3982691B2 (ja) * 2001-05-07 2007-09-26 テレフオンアクチーボラゲット エル エム エリクソン(パブル) サービス起動(triggering)フレームワーク
US20030126196A1 (en) * 2001-12-27 2003-07-03 Todd Lagimonier System for optimizing the invocation of computer-based services deployed in a distributed computing environment
JP2003256391A (ja) * 2002-03-04 2003-09-12 Nippon Telegr & Teleph Corp <Ntt> サービス探索方法、サービス実行方法、それらのプログラム及び該プログラムを記録した記録媒体
FR2843259B1 (fr) 2002-08-01 2004-12-17 Cit Alcatel Procede pour fournir un ensemble de services elementaires pour l'utilisation d'un reseau de telecommunications
US20050289244A1 (en) 2004-06-28 2005-12-29 Himansu Sahu Method for service chaining in a communication network
US20060155862A1 (en) * 2005-01-06 2006-07-13 Hari Kathi Data traffic load balancing based on application layer messages
US8284664B1 (en) * 2007-09-28 2012-10-09 Juniper Networks, Inc. Redirecting data units to service modules based on service tags and a redirection table
US7945725B2 (en) 2008-04-11 2011-05-17 Broadcom Corporation Access control list rule compression using meter re-mapping
US7860100B2 (en) 2008-10-01 2010-12-28 Cisco Technology, Inc. Service path selection in a service network
EP2226970A1 (fr) 2009-03-05 2010-09-08 Alcatel Lucent Procédé dans un environnement de réseaux interconnectés de communication, de sélection d'une chaîne de contrats de service
US8867349B2 (en) 2009-05-18 2014-10-21 Cisco Technology, Inc. Regulation of network traffic in virtual private networks
US8170038B2 (en) * 2009-05-27 2012-05-01 International Business Machines Corporation Two-layer switch apparatus to avoid first layer inter-switch link data traffic in steering packets through bump-in-the-wire service applications
US20110055845A1 (en) 2009-08-31 2011-03-03 Thyagarajan Nandagopal Technique for balancing loads in server clusters
US20120084423A1 (en) 2010-10-04 2012-04-05 Openwave Systems Inc. Method and system for domain based dynamic traffic steering
WO2012092263A1 (en) * 2010-12-28 2012-07-05 Citrix Systems, Inc. Systems and methods for policy based routing for multiple next hops
US8743885B2 (en) * 2011-05-03 2014-06-03 Cisco Technology, Inc. Mobile service routing in a network environment

Also Published As

Publication number Publication date
US10097452B2 (en) 2018-10-09
EP2839616B1 (en) 2016-04-13
JP2015517272A (ja) 2015-06-18
CA2870326C (en) 2019-12-31
CN104247348B (zh) 2018-02-23
AU2013250796A1 (en) 2014-11-06
CA2870326A1 (en) 2013-10-24
EP2839616A1 (en) 2015-02-25
CN104247348A (zh) 2014-12-24
US20130272305A1 (en) 2013-10-17
AU2013250796B2 (en) 2015-09-03
WO2013156931A1 (en) 2013-10-24

Similar Documents

Publication Publication Date Title
JP6240158B2 (ja) ソフトウェア定義型ネットワーキングを用いたインラインサービスの連鎖化
CN108702331B (zh) Sr应用段与服务功能链(sfc)报头元数据的集成
US8094659B1 (en) Policy-based virtual routing and forwarding (VRF) assignment
US9800491B1 (en) Application based packet forwarding
US20160219131A1 (en) L2/l3 multi-mode switch including policy processing
US7813337B2 (en) Network packet processing using multi-stage classification
US8559429B2 (en) Sequential frame forwarding
US10805216B2 (en) Shared service access for multi-tenancy in a data center fabric
US8345688B2 (en) System and method for managing flow of packets
US20180083876A1 (en) Optimization of multi-table lookups for software-defined networking systems
US20080198853A1 (en) Apparatus for implementing actions based on packet classification and lookup results
US20070115966A1 (en) Compact packet operation device and method
FI119166B (fi) Menetelmä ja laitteisto palvelunlaatuluokasta riippuvan reitityspäätöksen muodostamiseksi
US7624226B1 (en) Network search engine (NSE) and method for performing interval location using prefix matching
US6763394B2 (en) Virtual egress packet classification at ingress
US10637778B1 (en) Systems, methods and devices for scalable expansion of rules-based forwarding paths in network communications devices for distributed computing systems
US9853903B1 (en) Simultaneous redirecting and load balancing
US20160330117A1 (en) Scalable network address translation at high speed in a network environment
KR20130093707A (ko) 패킷 분류 장치 및 그것의 패킷 분류 방법
CN114401222A (zh) 一种基于策略路由的数据转发方法、装置及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160316

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170123

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170420

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171102

R150 Certificate of patent or registration of utility model

Ref document number: 6240158

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250