(57)【要約】      （修正有）【課題】粗粒度の負荷分散と細粒度の負荷分散との間でブリッジする。【解決手段】コンピューティングノード１１０は、ネットワークコントローラ１２０から受信したフロー情報に基づきフローエントリをローカルフローテーブルに追加する。コンピューティングノードは、フロー情報およびネクストホップ情報を他のコンピューティングノードに送信する。コンピューティングノードはまた、他のコンピューティングノードから受信したマルチキャストネットワークパケットに基づき、異なるフローエントリをローカルフローテーブルに追加し、ネクストホップエントリをローカルネクストホップテーブルに追加する。コンピューティングノードは、追加された複数のフローエントリに基づき、リモートコンピューティングデバイス１３０から受信したネットワークパケットをローカルに処理し、受信したネットワークパケットを他のコンピューティングノードに転送する。【選択図】図１
2016071860.tif 000002
【特許請求の範囲】
【請求項１】
粗粒度の負荷分散と細粒度の負荷分散との間でブリッジするクラスタコンピューティングデバイスのコンピューティングノードであって、
（１）複数のネットワークフローエントリを格納するローカルフローテーブルと、（２）前記複数のネットワークフローエントリのうちの１または複数に関する転送情報を格納するローカルネクストホップテーブルとを含むメモリと、
（１）ネットワークコントローラからネットワークフロー情報を受信し、（２）前記ネットワークコントローラから受信された前記ネットワークフロー情報に基づいてネットワークフローエントリを前記ローカルフローテーブルに追加し、（３）前記ネットワークコントローラから受信された前記ネットワークフロー情報と、前記コンピューティングノードと関連付けられたインターネットプロトコルアドレスとを含むマルチキャストネットワークパケットを生成し、（４）前記マルチキャストネットワークパケットに基づいて、異なるネットワークフローエントリを互いのコンピューティングノードのローカルフローテーブルに追加すること、及び、ネクストホップエントリを互いのコンピューティングノードのローカルネクストホップテーブルに追加することを促すべく、前記マルチキャストネットワークパケットを前記クラスタコンピューティングデバイスの互いのコンピューティングノードに送信するフロー管理モジュールと
を備える、コンピューティングノード。
【請求項２】
前記コンピューティングノードの前記ローカルフローテーブルに追加された前記ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、前記コンピューティングノードの前記ローカルフローテーブルに格納された前記複数のネットワークフローエントリの互いのネットワークフローエントリから前記追加されたネットワークフローエントリを一意に識別するフロー識別子と、前記コンピューティングノードの前記ローカルネクストホップテーブルにおける関連付けられたネクストホップエントリを識別するネクストホップインデックスと、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが、前記コンピューティングノードによってローカルに処理されるべきか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含み、
前記ネットワークコントローラから受信された前記ネットワークフロー情報は、前記フロータプル及び前記フロー識別子を含む、請求項１に記載のコンピューティングノード。
【請求項３】
前記フロー管理モジュールは更に、（１）前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記コンピューティングノードによってローカルに処理されるべきであることを示すべく、前記ローカルフローテーブルに追加された前記ネットワークフローエントリの前記ネクストホップタイプを設定し、（２）前記ローカルフローテーブルに追加された前記ネットワークフローエントリの前記ネクストホップインデックスをヌル値で設定する、請求項２に記載のコンピューティングノード。
【請求項４】
前記フロー管理モジュールは更に、前記クラスタコンピューティングデバイスの１または複数の他のコンピューティングノードと通信可能に連結された、前記コンピューティングノードのインターフェースと関連付けられたローカルインターネットプロトコルアドレスを決定し、
前記コンピューティングノードと関連付けられた前記インターネットプロトコルアドレスは、前記コンピューティングノードの前記インターフェースと関連付けられた前記ローカルインターネットプロトコルアドレスを含む、請求項１または２に記載のコンピューティングノード。
【請求項５】
前記コンピューティングノードの前記ローカルフローテーブルの各ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、前記コンピューティングノードの前記ローカルフローテーブルに格納された前記複数のネットワークフローエントリの互いのネットワークフローエントリから、前記ネットワークフローエントリを一意に識別するフロー識別子と、前記ネットワークフローエントリと関連付けられた前記コンピューティングノードの前記ローカルネクストホップテーブルに格納された複数のネクストホップエントリからネクストホップエントリを識別するネクストホップインデックスと、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが、前記コンピューティングノードによってローカルに処理されるべきか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む、請求項１に記載のコンピューティングノード。
【請求項６】
（１）リモートコンピューティングデバイスからネットワークパケットを受信し、（２）５タプルの前記受信されたネットワークパケットを決定し、（３）前記５タプルの受信されたネットワークパケットと一致する前記フロータプルを含む前記複数のネットワークフローエントリのうちのネットワークフローエントリを決定すべく、前記コンピューティングノードの前記ローカルフローテーブルでフロールックアップ操作を実行し、（４）前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記コンピューティングノードによってローカルに処理されるべきであることを示すか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すかを決定し、（５）前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記コンピューティングノードによってローカルに処理されるべきであることを示すとの決定に応じて、前記ネットワークパケットを処理し、（６）前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すとの決定に応じて、前記受信されたネットワークパケットを前記クラスタコンピューティングデバイスのネクストホップコンピューティングノードに転送する、フロー制御モジュールを更に備える、請求項５に記載のコンピューティングノード。
【請求項７】
前記フロー制御モジュールは更に、（１）前記複数のネクストホップエントリのうち一致するネクストホップエントリを決定すべく、前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップインデックスに応じて、前記コンピューティングノードの前記ローカルネクストホップテーブルでネクストホップルックアップ操作を実行し、（２）前記一致するネクストホップエントリに応じて、前記受信されたネットワークパケットを処理する前記クラスタコンピューティングデバイスの前記ネクストホップコンピューティングノードを決定する、請求項６に記載のコンピューティングノード。
【請求項８】
前記フロー制御モジュールは更に、（１）前記コンピューティングノードの前記ローカルネクストホップテーブルの前記一致するネクストホップエントリに基づいて、前記ネクストホップコンピューティングノードの媒体アクセス制御アドレスを決定し、（２）前記受信されたネットワークパケットの宛先媒体アクセス制御アドレスを前記ネクストホップコンピューティングノードの前記決定された媒体アクセス制御アドレスと置き換え、
前記受信されたネットワークパケットを前記ネクストホップコンピューティングノードに転送することは、前記受信されたネットワークパケットの前記置き換えられた宛先媒体アクセス制御アドレスに基づいて、前記受信されたネットワークパケットを前記ネクストホップコンピューティングノードに転送することを含む、請求項７に記載のコンピューティングノード。
【請求項９】
粗粒度の負荷分散と細粒度の負荷分散との間でブリッジする方法であって、
クラスタコンピューティングデバイスのコンピューティングノードが、複数のネットワークフローエントリを前記コンピューティングノードのローカルフローテーブルに格納する段階と、
前記コンピューティングノードが、前記複数のネットワークフローエントリのうちの１または複数に関する転送情報を、前記コンピューティングノードのローカルネクストホップテーブルに格納する段階と、
前記コンピューティングノードが、ネットワークコントローラからネットワークフロー情報を受信する段階と、
前記コンピューティングノードが、前記ネットワークコントローラから受信された前記ネットワークフロー情報に基づいて、ネットワークフローエントリを前記コンピューティングノードの前記ローカルフローテーブルに追加する段階と、
前記コンピューティングノードが、前記ネットワークコントローラから受信された前記ネットワークフロー情報、及び、前記コンピューティングノードと関連付けられたインターネットプロトコルアドレスを含むマルチキャストネットワークパケットを生成する段階と、
前記コンピューティングノードが、前記マルチキャストネットワークパケットに基づいて、異なるネットワークフローエントリを互いのコンピューティングノードのローカルフローテーブルに追加し、ネクストホップエントリを互いのコンピューティングノードのローカルネクストホップテーブルに追加することを促すべく、前記マルチキャストネットワークパケットを前記クラスタコンピューティングデバイスの互いのコンピューティングノードに送信する段階と
を含む方法。
【請求項１０】
前記コンピューティングノードの前記ローカルフローテーブルに追加された前記ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、前記コンピューティングノードの前記ローカルフローテーブルに格納された前記複数のネットワークフローエントリの互いのネットワークフローエントリから前記追加されたネットワークフローエントリを一意に識別するフロー識別子と、前記コンピューティングノードの前記ローカルネクストホップテーブルにおける関連付けられたネクストホップエントリを識別するネクストホップインデックスと、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが、前記コンピューティングノードによってローカルに処理されるべきか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む、請求項９に記載の方法。
【請求項１１】
前記コンピューティングノードの前記ローカルフローテーブルの各ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、前記コンピューティングノードの前記ローカルフローテーブルに格納された前記複数のネットワークフローエントリの互いのネットワークフローエントリから、前記ネットワークフローエントリを一意に識別するフロー識別子と、前記ネットワークフローエントリと関連付けられた前記コンピューティングノードの前記ローカルネクストホップテーブルに格納された複数のネクストホップエントリからネクストホップエントリを識別するネクストホップインデックスと、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが、前記コンピューティングノードによってローカルに処理されるべきか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む、請求項９に記載の方法。
【請求項１２】
前記コンピューティングノードが、リモートコンピューティングデバイスからネットワークパケットを受信する段階と、
前記コンピューティングノードが、５タプルの前記受信されたネットワークパケットを決定する段階と、
前記コンピューティングノードが、前記５タプルの前記受信されたネットワークパケットと一致する前記フロータプルを含む前記複数のネットワークフローエントリのうちのネットワークフローエントリを決定すべく、前記コンピューティングノードの前記ローカルフローテーブルでフロールックアップ操作を実行する段階と、
前記コンピューティングノードが、前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記コンピューティングノードによってローカルに処理されるべきであることを示すか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すかを決定する段階と、
前記コンピューティングノードが、前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記コンピューティングノードによってローカルに処理されるべきであることを示すとの決定に応じて、前記ネットワークパケットを処理する段階と、
前記コンピューティングノードが、前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すとの決定に応じて、前記受信されたネットワークパケットを前記クラスタコンピューティングデバイスのネクストホップコンピューティングノードに転送する段階と
を更に含む、請求項１１に記載の方法。
【請求項１３】
前記コンピューティングノードが、前記複数のネクストホップエントリのうち一致するネクストホップエントリを決定すべく、前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップインデックスに応じて、前記コンピューティングノードの前記ローカルネクストホップテーブルでネクストホップルックアップ操作を実行する段階と、
前記コンピューティングノードが、前記一致するネクストホップエントリに応じて、前記受信されたネットワークパケットを処理する前記クラスタコンピューティングデバイスの前記ネクストホップコンピューティングノードを決定する段階と
を更に含む、請求項１２に記載の方法。
【請求項１４】
コンピューティングノードに、請求項９から１３のいずれか一項に記載の方法を実行させるためのプログラム。
【請求項１５】
粗粒度の負荷分散と細粒度の負荷分散との間でブリッジするクラスタコンピューティングデバイスのコンピューティングノードであって、
複数のネットワークフローエントリを前記コンピューティングノードのローカルフローテーブルに格納する手段と、
前記複数のネットワークフローエントリのうちの１または複数に関する転送情報を、前記コンピューティングノードのローカルネクストホップテーブルに格納する手段と、
ネットワークコントローラからネットワークフロー情報を受信する手段と、
前記ネットワークコントローラから受信された前記ネットワークフロー情報に基づいて、ネットワークフローエントリを前記コンピューティングノードの前記ローカルフローテーブルに追加する手段と、
前記ネットワークコントローラから受信された前記ネットワークフロー情報、及び、前記コンピューティングノードと関連付けられたインターネットプロトコルアドレスを含むマルチキャストネットワークパケットを生成する手段と、
前記マルチキャストネットワークパケットに基づいて、異なるネットワークフローエントリを互いのコンピューティングノードのローカルフローテーブルに追加し、ネクストホップエントリを互いのコンピューティングノードのローカルネクストホップテーブルに追加することを促すべく、前記マルチキャストネットワークパケットを前記クラスタコンピューティングデバイスの互いのコンピューティングノードに送信する手段と
を備えるコンピューティングノード。
【請求項１６】
前記コンピューティングノードの前記ローカルフローテーブルの各ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、前記コンピューティングノードの前記ローカルフローテーブルに格納された前記複数のネットワークフローエントリの互いのネットワークフローエントリから前記ネットワークフローエントリを一意に識別するフロー識別子と、前記ネットワークフローエントリと関連付けられた前記コンピューティングノードの前記ローカルネクストホップテーブルに格納された複数のネクストホップエントリからネクストホップエントリを識別するネクストホップインデックスと、前記ネットワークフローと関連付けられた複数のネットワークパケットが、前記コンピューティングノードによってローカルに処理されるべきか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプと、を含み、
リモートコンピューティングデバイスからネットワークパケットを受信する手段と、
５タプルの前記受信されたネットワークパケットを決定する手段と、
前記５タプルの前記受信されたネットワークパケットと一致する前記フロータプルを含む、前記複数のネットワークフローエントリのうちのネットワークフローエントリを決定すべく、前記コンピューティングノードの前記ローカルフローテーブルでフロールックアップ操作を実行する手段と、
前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが、前記コンピューティングノードによってローカルに処理されるべきであることを示すか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すか、を決定する手段と、
前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記コンピューティングノードによってローカルに処理されるべきであることを示すとの決定に応じて、前記ネットワークパケットを処理する手段と、
前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すとの決定に応じて、前記受信されたネットワークパケットを前記クラスタコンピューティングデバイスのネクストホップコンピューティングノードに転送する手段と
を更に含む、請求項１５に記載のコンピューティングノード。
【請求項１７】
粗粒度の負荷分散と細粒度の負荷分散との間をブリッジするクラスタコンピューティングデバイスのコンピューティングノードであって、
（１）前記クラスタコンピューティングデバイスの異なるコンピューティングノードから、前記異なるコンピューティングノードを示すネクストホップ情報及びネットワークフロー情報を含むマルチキャストネットワークパケットを受信し、（２）前記異なるコンピューティングノードから受信された前記マルチキャストネットワークパケットからの前記ネットワークフロー情報に基づいて、ネットワークフローエントリを前記コンピューティングノードのローカルフローテーブルに追加し、（３）前記異なるコンピューティングノードから受信された前記マルチキャストネットワークパケットからの前記ネクストホップ情報に基づいて、ネクストホップエントリを前記コンピューティングノードのローカルネクストホップテーブルに追加するフロー管理モジュールを備え、前記コンピューティングノードの前記ローカルネクストホップテーブルに追加された前記ネクストホップエントリは、前記コンピューティングノードの前記ローカルフローテーブルに追加された前記ネットワークフローエントリと関連付けられる、コンピューティングノード。
【請求項１８】
前記コンピューティングノードの前記ローカルネクストホップテーブルは、複数のネクストホップエントリを含み、前記複数のネクストホップエントリの各ネクストホップエントリは、前記ローカルフローテーブルの複数のネットワークフローエントリのうちの異なるネットワークフローエントリと関連付けられ、
前記異なるコンピューティングノードから受信された前記マルチキャストネットワークパケットの前記ネクストホップ情報は、前記異なるコンピューティングノードと関連付けられたインターネットプロトコルアドレスを含み、
前記コンピューティングノードの前記ローカルネクストホップテーブルに追加された前記ネクストホップエントリは、前記異なるコンピューティングノードと関連付けられた前記インターネットプロトコルアドレスと、前記コンピューティングノードの前記ローカルネクストホップテーブルに格納された前記複数のネクストホップエントリにおける互いのネクストホップエントリから、前記追加されたネクストホップエントリを一意に識別するネクストホップインデックスと、前記異なるコンピューティングノードと関連付けられた前記インターネットプロトコルアドレスに対応する媒体アクセス制御アドレスと、を含む、請求項１７に記載のコンピューティングノード。
【請求項１９】
前記フロー管理モジュールは更に、（１）前記異なるコンピューティングノードと関連付けられた前記インターネットプロトコルアドレスに対応する前記媒体アクセス制御アドレスを決定し、（２）前記決定された媒体アクセス制御アドレスと共に前記ローカルネクストホップテーブルに追加された前記ネクストホップエントリの前記媒体アクセス制御アドレスを設定する、請求項１８に記載のコンピューティングノード。
【請求項２０】
前記コンピューティングノードの前記ローカルフローテーブルに追加された前記ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、前記コンピューティングノードの前記ローカルフローテーブルに格納された前記複数のネットワークフローエントリの互いのネットワークフローエントリから前記追加されたネットワークフローエントリを一意に識別するフロー識別子と、前記コンピューティングノードの前記ローカルフローテーブルに追加された前記ネットワークフローエントリと関連付けられた前記ローカルネクストホップテーブルの前記複数のネクストホップエントリから前記ネクストホップエントリを一意に識別する前記ネクストホップインデックスと、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが、前記コンピューティングノードによってローカルに処理されるべきか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプと、を含み、
前記異なるコンピューティングノードから受信された前記マルチキャストネットワークパケットの前記ネットワークフロー情報は、前記フロータプル及び前記フロー識別子を含む、
請求項１８に記載のコンピューティングノード。
【請求項２１】
前記フロー管理モジュールは更に、前記異なるコンピューティングノードからの前記マルチキャストネットワークパケットの受信に応答して、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すべく、前記ローカルフローテーブルに追加された前記ネットワークフローエントリの前記ネクストホップタイプを設定する、請求項２０に記載のコンピューティングノード。
【請求項２２】
前記ローカルフローテーブルは複数のネットワークフローエントリを含み、前記コンピューティングノードの前記ローカルフローテーブルの各ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、前記コンピューティングノードの前記ローカルフローテーブルに格納された前記複数のネットワークフローエントリの互いのネットワークフローエントリから、前記ネットワークフローエントリを一意に識別するフロー識別子と、前記ネットワークフローエントリと関連付けられた前記ローカルネクストホップテーブルの複数のネクストホップエントリからネクストホップエントリを一意に識別するネクストホップインデックスと、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが、前記コンピューティングノードによってローカルに処理されるべきか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む、請求項１７に記載のコンピューティングノード。
【請求項２３】
（１）リモートコンピューティングデバイスからネットワークパケットを受信し、（２）５タプルの前記受信されたネットワークパケットを決定し、（３）前記５タプルの受信されたネットワークパケットと一致する前記フロータプルを含む前記複数のネットワークフローエントリのうちのネットワークフローエントリを決定すべく、前記コンピューティングノードの前記ローカルフローテーブルでフロールックアップ操作を実行し、（４）前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記コンピューティングノードによってローカルに処理されるべきであることを示すか、又は、前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すかを決定し、（５）前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記コンピューティングノードによってローカルに処理されるべきであることを示すとの決定に応じて、前記ネットワークパケットを処理し、（６）前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップタイプが、前記ネットワークフローと関連付けられた前記複数のネットワークパケットが前記クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すとの決定に応じて、前記受信されたネットワークパケットを前記クラスタコンピューティングデバイスのネクストホップコンピューティングノードに転送する、フロー制御モジュールを更に備える、請求項２２に記載のコンピューティングノード。
【請求項２４】
前記フロー制御モジュールは更に、（１）前記複数のネクストホップエントリのうち一致するネクストホップエントリを決定すべく、前記決定されたネットワークフローエントリと関連付けられた前記ネクストホップインデックスに応じて、前記コンピューティングノードの前記ローカルネクストホップテーブルでネクストホップルックアップ操作を実行し、（２）前記一致するネクストホップエントリに応じて、前記受信されたネットワークパケットを処理する前記クラスタコンピューティングデバイスの前記ネクストホップコンピューティングノードを決定する、請求項２３に記載のコンピューティングノード。
【請求項２５】
前記ネクストホップコンピューティングノードを決定することは、前記ローカルネクストホップテーブルに追加された前記ネクストホップエントリと一致することに基づいて、前記異なるコンピューティングノードが前記ネクストホップコンピューティングノードであると決定することを含む、請求項２４に記載のコンピューティングノード。
【発明の詳細な説明】
【背景技術】
【０００１】
クラスタシステム又はクラスタデバイスは、連動してリモートコンピューティングデバイスから受信するネットワークトラフィックを処理するように設定された一群の相互接続コンピューティングノードである（例えば、既成のサーバ、デスクトップコンピュータなど）。しばしば、着信ネットワークトラフィックの処理は、細粒度の負荷分散スキームによって、クラスタシステムの複数のコンピューティングノード間で分散され得る。しかしながら、クラスタシステムの外部におけるコンピューティングデバイスの視点では、一群の相互接続コンピューティングノードは、複数インターフェースを備える単一の論理エンティティとして表れる。幾つかの環境において、単一の論理エンティティの複数のインターフェース間で着信ネットワークトラフィックを分散すべく、ネットワークロードバランサが用いられる。
【０００２】
ネットワークロードバランサは、とりわけ、処理作業負荷の平衡を保たせ、冗長性を提供し、拡張可能性を提供し、有用性を上げる、２つ又は３つ以上のコンピューティングデバイス間で、ネットワークトラフィックを分散する。そのようにすべく、ネットワークロードバランサは一般的に、粗粒度の負荷分散スキーム（例えば、等コストマルチパスルーティング（ＥＣＭＰ）、ラウンドロビンなど）によって、複数のコンピューティングデバイス間で着信ネットワークパケットを分散する。しかしながら、そのようなネットワークロードバランサは、一般的なクラスタシステムの物理的トポロジに気付かず、その結果、そのシステムで利用されている細粒度の負荷分散スキームを理解していないことになる。
【図面の簡単な説明】
【０００３】
本明細書で説明される複数の概念は、添付の図面において例として示されるのであって、限定として示されるのではない。説明の簡略化及び明確化を目的として、図面で示される複数の要素は、必ずしも縮尺通りに描かれていない。適切であると考えられる場合は、対応する又は類似する複数の要素を示すべく、複数の参照符号が複数の図面間で繰り返されている。
【図１】多数のコンピューティングノードを含むクラスタコンピューティングデバイスで粗粒度の負荷分散と細粒度の負荷分散との間をブリッジするシステムの少なくとも１つの実施形態の簡略ブロック図である。
【図２】図１のシステムのクラスタコンピューティングデバイスにおける、複数のコンピューティングノードの少なくとも１つの実施形態の簡略ブロック図である。
【図３】図１のシステムのクラスタコンピューティングデバイスにおける、複数のコンピューティングノードの環境の少なくとも１つの実施形態の簡略ブロック図である。
【図４】図１のシステムのクラスタコンピューティングデバイスにおけるコンピューティングノードによって実行され得る、ネットワークコントローラからのネットワークフロー情報を受信する方法の、少なくとも１つの実施形態の簡略フロー図である。
【図５】図４の方法を実行する図１のシステムのクラスタコンピューティングデバイスにおける、コンピューティングノードによって実行され得る疑似コードの例示的実施形態である。
【図６】図１のシステムのクラスタコンピューティングデバイスのコンピューティングノードによって実行され得る、クラスタコンピューティングデバイスの他のコンピューティングノードからのネットワークフロー情報を受信する方法の、少なくとも１つの実施形態の簡略フロー図である。
【図７】図６の方法を実行する図１のシステムのクラスタコンピューティングデバイスのコンピューティングノードによって実行され得る、疑似コードの例示的実施形態である。
【図８】図１のシステムのクラスタコンピューティングデバイスのコンピューティングノードによって実行され得る、リモートコンピューティングデバイスから受信されるネットワークパケットを処理する方法の、少なくとも１つの実施形態の簡略フロー図である。
【図９】図１のシステムのクラスタコンピューティングデバイスのコンピューティングノードによって実行され得る、リモートコンピューティングデバイスから受信されるネットワークパケットを処理する方法の、少なくとも１つの実施形態の簡略フロー図である。
【図１０】図８および９の方法を実行する図１のシステムのクラスタコンピューティングデバイスのコンピューティングノードによって実行され得る、疑似コードの例示的実施形態である。
【図１１】ネットワーク機能仮想化（ＮＦＶ）環境で動作する多数のコンピューティングノードを含むクラスタコンピューティングデバイスで、粗粒度の負荷分散と細粒度の負荷分散との間をブリッジするシステムの少なくとも１つの実施形態の簡略ブロック図である。
【発明を実施するための形態】
【０００４】
本開示の複数の概念は、様々な変更及び代替的な形態の対象たり得るものである一方で、それらの複数の具体的実施形態は、図面において例として示され、本明細書において詳細に説明されるだろう。しかしながら、本開示の複数の概念を開示される複数の特定形態に制限する意図は無く、それどころか、本開示及び添付の特許請求の範囲と相反しない全ての変更、均等物及び代替案を包含する意図であることを理解されるべきである。
【０００５】
明細書における「一実施形態」、「実施形態」、「例示的実施形態」などについての複数の言及は、説明される実施形態が特定の機能、構造または特性を含み得ることを示しているが、いずれの実施形態も、それら特定の機能、構造または特性を含んでもよく、又は、必ずしも含まなくてもよい。更に、そのような複数の表現は、必ずしも同一の実施形態について言及していない。更に、特定の機能、構造または特性が実施形態に関連して説明される場合、明示的に説明されているか否かに拘らず、他の複数の実施形態に関連してそのような特徴、構造または特性を達成することは、当業者の知識の範囲内であるとされる。加えて、「Ａ、ＢおよびＣの少なくとも１つ」という形の一覧に含まれている複数のアイテムは、（Ａ）、（Ｂ）、（Ｃ）、（ＡおよびＢ）、（ＡおよびＣ）、（ＢおよびＣ）、又は、（Ａ、ＢおよびＣ）を意味し得ることが理解されるべきである。同様に、「Ａ、ＢまたはＣの少なくとも１つ」という形で列挙されている複数のアイテムは、（Ａ）、（Ｂ）、（Ｃ）、（ＡおよびＢ）、（ＡおよびＣ）、（ＢおよびＣ）、又は、（Ａ、ＢおよびＣ）を意味し得る。
【０００６】
開示される複数の実施形態は、場合によっては、ハードウェア、ファームウェア、ソフトウェア、又は、それらの任意の組み合わせにおいて実装されてもよい。開示される複数の実施形態はまた、１または複数のプロセッサによって読み取られて実行され得る、１または複数の一時的又は非一時機械可読（例えばコンピュータ可読）記憶媒体によって伝達又は格納される複数の命令として実装されてもよい。機械可読記憶媒体は、情報を機械で読み取り可能な形で格納又は送信する、任意のストレージデバイス、メカニズム、又は、他の物理的構造として具現化されてもよい（例えば、揮発性若しくは非揮発性メモリ、メディアディスク、又は、他のメディアデバイス）。
【０００７】
図面において、幾つかの構造的又は方法的な特徴は、複数の具体的な構成及び／又は順序で示され得る。しかしながら、そのような複数の具体的な構成及び／又は順序が必要とされなくてもよいことが理解されるべきである。むしろ、幾つかの実施形態において、そのような複数の特徴は、例示的な図面で示されるものと異なる方法及び／又は順序で配置されてもよい。加えて、特定の図面において構造的又は方法的な特徴を含ませることは、そのような特徴が全ての実施形態において必要とされることを暗示するつもりではなく、幾つかの実施形態においては含まれなくても良く、又は、他の複数の特徴と組み合わされてもよい。
【０００８】
ここで、図１を参照すると、例示的実施形態において、粗粒度の負荷分散と細粒度の負荷分散との間でブリッジするシステム１００は、複数のコンピューティングノード１１０を有するクラスタコンピューティングデバイス１０２と、ネットワークコントローラ１２０と、リモートコンピューティングデバイス１３０と、ネットワークロードバランサ１４０とを備え、これらの各々は、ソフトウェアデファインドネットワーキング（ＳＤＮ）環境及び／又はネットワーク機能仮想化（ＮＦＶ）環境で動作可能であってもよい。ネットワークロードバランサ１４０は、別個の複数の通信リンク（例えば、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、ライトガイドなど）を介して、クラスタコンピューティングデバイス１０２の２つ又は３つ以上のコンピューティングノード１１０（例えば、コンピューティングノードＡ１１２およびコンピューティングノードＢ１１４）に通信可能に連結されてもよい。使用する場合、ネットワークロードバランサ１４０は、例えばリモートコンピューティングデバイス１３０のような１または複数のコンピューティングデバイスから、クラスタコンピューティングデバイス１０２に向かう複数のネットワークパケットを受信する。ネットワークロードバランサ１４０は、粗粒度の負荷分散スキーム（例えば等コストマルチパスルーティング（ＥＣＭＰ）、ラウンドロビンなど）によって、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０を渡って、受信された複数のネットワークパケットを分散してもよい。しかしながら、受信された複数のネットワークパケットを処理する負担は（例えば、複数のパケット転送操作を実行する、複数のパケットルーティング操作を実行する、複数のローカルパケット処理操作を実行するなど）、細粒度の負荷分散スキームによって、複数のコンピューティングノード１１０間で分配されてもよい。
【０００９】
従って、幾つかの実施形態において、受信されたネットワークパケットは、ネットワークロードバランサ１４０によって、ネットワークパケットを処理する責任がある特定のコンピューティングノード１１０に拘らず、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０のいずれか一つ（例えば、コンピューティングノードＡ１１２、コンピューティングノードＢ１１４、コンピューティングノードＣ１１６）に転送されてもよい。そのような複数の実施形態において、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の各々は、それが、受信されたネットワークパケットを処理する責任があるコンピューティングノード１１０かどうか、又は、クラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０が責任あるかどうかを決定するように設定されてもよい。そのような決定は、ネットワークコントローラ１２０から、又は、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の他の１つから受信されるネットワークフロー情報に基づいて行われてもよい。幾つかの実施形態において、そのような決定はまた、ネットワークコントローラ１２０と、任意の数の他のコンピューティングデバイス、コンピューティングノード及び／又は複数のコンピューティングエンティティとから受信される複合情報に基づいて行われてもよい。例えば、そのような複数の実施形態において、クラスタコンピューティングデバイス１０２のコンピューティングノード１１０の各々は、それが又は異なるコンピューティングノード１１０が、複数のコンピューティングノード１１０の他の１つから、及び／又は、クラスタコンピューティングデバイス１０２の複数のコンピューティングエンティティ（例えば作業負荷制御エンティティなど）から受信される情報と組み合わせて、ネットワークコントローラ１２０から受信されるネットワークフロー情報に基づいて特定のネットワークパケットを処理する責任があるかどうかを決定するように設定されてもよい。
【００１０】
もしネットワークロードバランサ１４０からネットワークパケットを受信するコンピューティングノード１１０がネットワークパケットを処理する責任のあるコンピューティングノード１１０であれば、ネットワークパケットはローカルに更に処理されるだろう。しかしながら、もしネットワークロードバランサ１４０からネットワークパケットを受信するコンピューティングノード１１０がネットワークパケットを処理する責任のあるコンピューティングノード１１０ではないならば、コンピューティングノード１１０は、クラスタコンピューティングデバイス１０２の他の複数のコンピューティングノード１１０のいずれがネットワークパケットを処理する責任があるかを決定する。次に、受信されたネットワークパケットは、更に処理する責任がある、クラスタコンピューティングデバイス１０２のコンピューティングノード１１０に転送される。
【００１１】
動作中に、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、粗粒度の負荷分散スキームに基づいて、ネットワークロードバランサ１４０によって転送されるネットワークパケットを受信してもよい。コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、ネットワークパケットを処理する責任があるクラスタコンピューティングデバイス１０２のコンピューティングノード１１０であるかどうかを決定してもよい。そのようにすべく、幾つかの実施形態において、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、受信されたネットワークパケットの発信元情報および宛先情報（例えば５タプル）を、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）によって維持されるローカルフローテーブルと比較してもよい。幾つかの実施形態において、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、受信されたネットワークパケットと関連付けられる全ての発信元情報および宛先情報（例えば５タプルの全てのフィールド）を比較してもよく、又は、受信されたネットワークパケットと関連付けられる発信元情報および宛先情報のサブセット（例えば５タプルの複数のフィールドの一部）を比較してもよい。そのような複数の実施形態において、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）によって比較される（例えば５タプルの複数のフィールドの）特定の発信元情報および宛先情報は、ネットワークコントローラ１２０、及び／又は、クラスタコンピューティングデバイス１０２の異なるコンピューティングノード若しくはエンティティ（例えば、複数のコンピューティングノード１１０の他の１つ、作業負荷制御エンティティなど）によって選択されてもよく、そうでなければ、決定されてもよい。それに拘らず、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、受信されたネットワークパケットの発信元情報および宛先情報が、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）によって維持されるローカルフローテーブルに含まれる複数のネットワークフローエントリのうちのあるネットワークフローエントリと一致するかどうかを決定する。受信されたネットワークパケットの発信元情報および宛先情報がローカルフローテーブル内のネットワークフローエントリと一致するという決定に応じて、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、一致するネットワークフローエントリと関連付けられるネクストホップタイプを決定する。もし、一致するネットワークフローエントリのネクストホップタイプが、ネクストホップ（例えばネクストホップコンピューティングデバイス）がローカルにあることを示していると、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）が決定するならば、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、受信されたネットワークパケットをローカルに処理する。しかしながら、もしその代わりに、一致するネットワークフローエントリのネクストホップタイプが、ネクストホップが遠隔にあることを示していると、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）が決定するならば、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）によって維持されているローカルネクストホップテーブルに格納された、関連付けられたネクストホップエントリに基づいて、更に処理する責任がある、クラスタコンピューティングデバイス１０２のコンピューティングノード１１０に、受信されたネットワークパケットを転送する。
【００１２】
幾つかの実施形態において、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、ネットワークコントローラ１２０からネットワークフロー情報を受信する。ネットワークフロー情報は、ネットワークフロー、及び、ネットワークフローと関連付けられる任意のネットワークパケットに対応する。そのような複数の実施形態において、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、ネットワークフローエントリを自身のローカルフローテーブルに追加する。そのようにしている間に、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、ネットワークフローエントリと一致する受信された複数のネットワークパケットがローカルに処理されるべきであることを示す、追加されたネットワークフローエントリのネクストホップタイプを更新する。続いて、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、マルチキャストネットワークパケットを生成し、クラスタコンピューティングデバイス１０２の他の複数のコンピューティングノード１１０に送信する。コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）によって生成されるマルチキャストネットワークパケットは、ネットワークコントローラ１２０から受信されたネットワークフロー情報と、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）と関連付けられたインターネットプロトコル（ＩＰ）アドレスとを含む。幾つかの実施形態において、他の複数のコンピューティングノード１１０は、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）から受信されたマルチキャストネットワークパケットに基づいて、対応するネットワークフローエントリをそれら自身のローカルフローテーブルに追加し、関連付けられたネクストホップエントリをそれら自身のローカルネクストホップテーブルに追加する。しかしながら、そのような複数の実施形態において、他の複数のコンピューティングノード１１０によってそれら各々のローカルフローテーブルに追加されたローカルネットワークフローエントリは、ネットワークフローエントリと一致する受信された複数のネットワークパケットが（例えばコンピューティングノードＡ１１２によって）遠隔から処理されるべきであることを示すネクストホップタイプを含む。
【００１３】
幾つかの実施形態において、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）はまた、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０（例えばコンピューティングノードＢ１１４）の他の１つによって生成されて送信されるマルチキャストネットワークパケットを受信する。受信されたマルチキャストネットワークパケットは、ネットワークフロー、及び、ネットワークフローと関連付けられた任意のネットワークパケットに対応するネットワークフロー情報を含んでもよい。幾つかの実施形態において、受信されたマルチキャストネットワークパケットはまた、含まれるネットワークフロー情報に対応するネットワークフローと関連付けられた、複数のネットワークパケットを処理する責任があるコンピューティングノード１１０（例えばコンピューティングノードＢ１１４）を示すネクストホップ情報を含む。そのような複数の実施形態において、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、受信されたマルチキャストネットワークパケットのネットワークフロー情報およびネクストホップ情報に基づいて、新しいネットワークフローエントリを自身のローカルフローテーブルに追加し、関連付けられたネクストホップエントリを自身のローカルネクストホップテーブルに追加してもよい。そのようにしている間に、コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）は、ネットワークフローエントリと一致する任意の受信された複数のネットワークパケットが、遠隔から処理されるべく他のコンピューティングノード１１０（例えばコンピューティングノードＢ１１４）に転送される予定であることを示す、追加されたネットワークフローエントリのネクストホップタイプを更新する。
【００１４】
クラスタコンピューティングデバイス１０２（例えば分散コンピューティングデバイス）は、本明細書で説明される複数の機能を実行するように一斉に動作する個別のコンピューティングノード１１０のグループとして具現化されてもよい。図１に例示的に示されるように、クラスタコンピューティングデバイス１０２は、十分に接続されたメッシュネットワーキングトポロジに従って、互いに通信可能に連結された複数のコンピューティングノード１１０を含んでもよい。しかしながら、各コンピューティングノード１１０は、任意の他のネットワーキングトポロジに従って、他の複数のコンピューティングノード１１０と通信可能に連結されてもよいことが理解されるべきである。例えば、各コンピューティングノード１１０は、とりわけ、交換ネットワークトポロジ、ＣＬＯＳネットワークトポロジ、バスネットワークトポロジ、スターネットワークトポロジ、リングネットワークトポロジ、及び／又は、それらの任意の組み合わせに従って、他の複数のコンピューティングノード１１０と通信可能に連結されてもよい。クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の各々は、クラスタコンピューティングデバイス１０２に対する複数のパケット処理操作（例えば、パケット転送操作、パケットルーティング操作、ローカルパケット処理操作など）の任意の部分を実行するように設定されてもよい。例えば、複数のコンピューティングノード１１０の各々は、ネットワークコントローラ１２０から受信されたネットワークフロー情報に少なくとも部分的に基づいて、そうでなければ当該情報に応じて、特定のネットワークフローと関連付けられた複数のネットワークパケットをローカルに処理するように設定されてもよい。加えて、又は、代替的に、複数のコンピューティングノード１１０の各々は、マルチキャストネットワークパケットによって他のコンピューティングノード１１０から受信されたネットワークフロー情報及びネクストホップ情報に少なくとも部分的に基づいて、そうでなければこれらの情報に応じて、更に処理する目的で、クラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０に、特定のネットワークフローと関連付けられた複数のネットワークパケットを転送またはルーティングするように設定されてもよい。
【００１５】
ここで、図２を参照すると、複数のコンピューティングノード１１０の各々は、これらに限定されないが、サーバコンピュータ、デスクトップコンピュータ、ラップトップコンピューティングデバイス、民生用電子機器、モバイルコンピューティングデバイス、携帯電話、スマートフォン、タブレットコンピューティングデバイス、パーソナルデジタルアシスタント、ウェアラブルコンピューティングデバイス、スマートテレビ、スマート機器、及び／又は、他のタイプのコンピューティングデバイスを含めて、本明細書で説明される複数の機能を実行可能な任意のタイプのコンピューティングデバイスとして具現化されてもよく、そうでなければこれらを含んでもよい。図２に例示的に示されるように、複数のコンピューティングノード１１０の各々は、プロセッサ２１０、メモリ２１４、入出力（Ｉ／Ｏ）サブシステム２２０、データストレージ２２４、及び、通信回路２２６を含む。勿論、複数のコンピューティングノード１１０は、他の複数の実施形態において、コンピュータ内で一般的に見出されるもの（例えば様々な入出力デバイス）のような、他の又は追加の複数のコンポーネントを含んでもよい。加えて、幾つかの実施形態において、複数の例示的コンポーネントのうちの１または複数は、他のコンポーネントの中に組み込まれてもよく、そうでなければ他のコンポーネントの一部の形であってもよい。例えば、メモリ２１４、又は、その複数の部分は、幾つかの実施形態において、プロセッサ２１０内に組み込まれてもよい。複数のコンピューティングノード１１０の各々は、プロセッサ２１０、メモリ２１４、入出力（Ｉ／Ｏ）サブシステム２２０、データストレージ２２４、及び、通信回路２２６を含むが、複数の例示的コンポーネントの以下の説明は、説明の明確化を目的として、単一のコンピューティングノード１１２を特定参照して説明されることが理解されるべきである。
【００１６】
プロセッサ２１０は、本明細書で説明される複数の機能を実行可能な任意のタイプのプロセッサとして具現化されてもよい。例えば、幾つかの実施形態において、プロセッサ２１０は、シングルコアプロセッサ、デジタルシグナルプロセッサ、マイクロコントローラ、又は、他のプロセッサ若しくは処理／制御回路として具現化されてもよい。他の複数の実施形態において、図２に例示的に示されるもののように、プロセッサ２１０は、複数のプロセッサコア２１２を有するマルチコアプロセッサとして具現化されてもよい。そのような複数の実施形態において、プロセッサ２１０の各プロセッサコア２１２は、１または複数のアプリケーションを実行可能である。
【００１７】
メモリ２１４は、本明細書で説明される複数の機能を実行可能な、任意のタイプの揮発性若しくは非揮発性メモリ又はデータストレージとして具現化されてもよい。動作中、メモリ２１４は、複数のオペレーティングシステム、複数のアプリケーション、複数のプログラム、複数のライブラリ、及び、複数のドライバなどの、コンピューティングノード１１２の動作中に用いられる様々なデータ及びソフトウェアを格納してもよい。メモリ２１４は、Ｉ／Ｏサブシステム２２０を介してプロセッサ２１０と通信可能に連結される。Ｉ／Ｏサブシステム２２０は、プロセッサ２１０、メモリ２１４、及び、コンピューティングノード１１２の他の複数のコンポーネントとの複数の入出力操作を促す回路及び／又は複数のコンポーネントとして具現化されてもよい。例えば、Ｉ／Ｏサブシステム２２０は、複数のメモリコントローラハブ、複数の入出力制御ハブ、複数のファームウェアデバイス、複数の通信リンク（すなわち、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、ライトガイド、プリント回路基板トレースなど）、及び／又は、複数の入出力操作を促す他の複数のコンポーネント並びに複数のサブシステムとして具現化されてもよく、そうでなければこれらを含んでもよい。幾つかの実施形態において、Ｉ／Ｏサブシステム２２０は、システムオンチップ（ＳｏＣ）の一部を形成してもよく、プロセッサ２１０、メモリ２１４、及び、コンピューティングノード１１２の他の複数のコンポーネントと共に単一の集積回路チップに組み込まれてもよい。
【００１８】
幾つかの実施形態において、メモリ２１４は、ローカルフローテーブル２１６を含む。以下でより詳細に説明されるように、ローカルフローテーブル２１６は、各々が異なるネットワークフローに対応する情報を有する複数のネットワークフローエントリを含む。例えば、ローカルフローテーブル２１６の各ネットワークフローエントリは、異なるネットワークフローと関連付けられてもよく、そのネットワークフローに対応する、フロー識別子、フロータプル、ネクストホップタイプおよびネクストホップインデックスを含んでもよい。各ネットワークフローエントリのフロー識別子は、コンピューティングノード１１２のローカルフローテーブル２１６に格納された複数のネットワークフローエントリのうちの他の複数のネットワークフローエントリから、ネットワークフローエントリを一意に識別する。各ネットワークフローエントリのフロータプルは、対応するネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示してもよい。例えば、幾つかの実施形態において、フロータプルは、他の複数のタイプの情報の中でも、発信元インターネットプロトコル（ＩＰ）アドレス、発信元ポート番号、宛先ＩＰアドレス、宛先ポート番号、及び、対応するネットワークフローと関連付けられる複数のネットワークパケットのプロトコルを含んでもよい。
【００１９】
各ネットワークフローエントリのネクストホップタイプは、対応するネットワークフローと関連付けられる複数のネットワークパケットが、コンピューティングノード１１２によってローカルに処理されるべきか、又は、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の他の１つによって遠隔から処理されるべきかを示す。各ネットワークフローエントリのネクストホップインデックスは、そのネットワークフローエントリと関連付けられるコンピューティングノード１１２における、ローカルネクストホップテーブル２１８の特定ネクストホップエントリを示し、そうでなければそれを識別する。以下で説明されるように、ネクストホップインデックスは、コンピューティングノード１１２のローカルネクストホップテーブル２１８に格納された複数のネクストホップエントリから、関連付けられたネクストホップエントリを一意に識別する。加えて、以下で説明されるように、ローカルフローテーブル２１６における１または複数のネットワークフローエントリのネクストホップインデックスは、対応するネットワークフローと関連付けられる複数のネットワークパケットがコンピューティングノード１１２によってローカルに処理されるべきであることを、対応するネットワークフローエントリのネクストホップタイプが示している複数の実施形態において、ヌル値を含んでもよい。そのような複数の実施形態において、ローカルネクストホップテーブル２１８は、関連付けられたネクストホップエントリを含まなくてもよい。加えて、幾つかの実施形態において、ローカルフローテーブル２１６に格納された複数のフローエントリのうちの１または複数は、複数のネットワークパケットが既にコンピューティングノード１１２によって受信されているネットワークフローに対応してもよい。加えて、又は、代替的に、ローカルフローテーブル２１６に格納された複数のフローエントリのうちの１または複数は、複数のネットワークパケットがまだコンピューティングノード１１２によって受信されていないネットワークフローに対応してもよい。すなわち、幾つかの実施形態において、ローカルフローテーブル２１６に格納された複数のフローエントリのうちの１または複数は、複数のネットワークパケットがその後に受信され得るネットワークフローに対応してもよい。
【００２０】
幾つかの実施形態において、メモリ２１４はまた、ローカルネクストホップテーブル２１８を含む。以下でより詳細に説明されるように、ローカルネクストホップテーブル２１８は、各々がローカルフローテーブル２１６の異なるネットワークフローエントリと関連付けられ、受信された複数のネットワークパケットを更に処理する責任があるネクストホップコンピューティングノード１１０（例えば、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の他の１つ）を決定すること、そうでなければ識別することに関する情報を含む、複数のネクストホップエントリを含む。例えば、ローカルネクストホップテーブル２１８の各ネクストホップエントリは、ローカルフローテーブル２１６の異なるネットワークフローエントリと関連付けられてもよく、フロー識別子、ネットワークフローに対応する受信された複数のネットワークパケットを更に処理する責任があるネクストホップコンピューティングノード１１０と関連付けられたＩＰアドレス、及び、ネットワークフローに対応する受信された複数のネットワークパケットを更に処理する責任があるネクストホップコンピューティングノード１１０と関連付けられた媒体アクセス制御（ＭＡＣ）アドレスを含んでもよい。各ネクストホップエントリのネクストホップインデックスは、コンピューティングノード１１２のローカルネクストホップテーブル２１８に格納された複数のネクストホップエントリの他の複数のネクストホップエントリから、ネクストホップエントリを一意に識別する。
【００２１】
幾つかの実施形態において、特定のネットワークフロー用のネットワークフロー情報（例えば、各ネットワークフローエントリのフロータプル、ネクストホップタイプ、ネクストホップインデックスおよびネクストホップ識別子）及びネクストホップ情報（例えば、フロー識別子、ネクストホップコンピューティングノード１１０のＩＰアドレス、及び、各ネクストホップエントリのネクストホップコンピューティングノード１１０のＭＡＣアドレス）は、別個のテーブルよりもむしろ同一のテーブルに格納され又は維持されてもよい。勿論、特定のネットワークフローに関するネットワークフロー情報およびネクストホップ情報は、例示的実施形態において１または複数のテーブルに格納されるものとして説明されるが、ネットワークフロー情報及び／又はネクストホップ情報は、他の複数の実施形態において、異なるフォーマットを有するデータ構造（例えば、ドキュメント、ファイル、データベースなど）に格納されてもよいことが理解されるべきである。例えば、特定のネットワークフローに関するネットワークフロー情報及び／又はネクストホップ情報は、コンマ区切り（ＣＳＶ）ファイル、テキストファイル、暗号化済みデータファイル、１または複数の拡張マークアップ言語（ＸＭＬ）要素を有するＸＭＬドキュメント、又は、ネットワーク情報並びに／若しくはネクストホップ情報を格納するのに適した任意の他のフォーマットとして具現化されてもよい。加えて、ローカルフローテーブル２１６およびローカルネクストホップテーブル２１８は、例示的実施形態において、コンピューティングノード１１２のメモリ２１４に格納されるものとして説明されるが、ローカルフローテーブル２１６およびローカルネクストホップテーブル２１８は、他の複数の実施形態において、コンピューティングノード１１２の他の複数のデータストレージデバイスに格納されてもよいことが理解されるべきである。例えば、幾つかの実施形態において、ローカルフローテーブル２１６及び／又はローカルネクストホップテーブル２１８の全て、又は、それらの一部は、プロセッサ２１０のキャッシュメモリ（不図示）に格納されてもよい。
【００２２】
複数のコンピューティングノード１１０の通信回路２２６は、１または複数の通信ネットワーク（例えば、複数のローカルエリアネットワーク、複数のパーソナルエリアネットワーク、複数のワイドエリアネットワーク、複数のセルラーネットワーク、インターネットのようなグローバルネットワークなど）を介して、クラスタコンピューティングデバイス１０２のコンピューティングノード１１２並びに他の複数のコンピューティングノード１１０、ネットワークコントローラ１２０、ネットワークロードバランサ１４０、及び／又は、他の複数のコンピューティングデバイス間における複数の通信を実現可能な任意のタイプの通信回路、デバイスまたはそれらの集合として具現化されてもよい。通信回路２２６は、任意の１または複数の通信技術（例えば、無線又は有線通信）、及び、そのような通信に影響する複数の関連付けられたプロトコル（例えば、イーサネット（登録商標）、Ｗｉ−Ｆｉ（登録商標）、ＷｉＭＡＸ（登録商標）など）を用いるように設定されてもよい。例示的実施形態において、通信回路２２６は、１または複数の通信インターフェース２２８を含み、そうでなければ、それらと通信可能に連結される。複数の通信インターフェース２２８は、複数のコンピューティングノード１１０を、任意の数の他の複数のコンピューティングノード１１０、ネットワークコントローラ１２０、ネットワークロードバランサ１４０、複数のネットワーク（例えば物理的又は論理的ネットワーク）、及び／又は、複数の外部コンピューティングデバイス（例えば、リモートコンピューティングデバイス１３０のような、クラスタコンピューティングデバイス１０２の一部でない複数のコンピューティングデバイス）と通信可能に連結するように設定されてもよい。
【００２３】
データストレージ２２４は、例えば、複数のメモリデバイス並びに複数のメモリ回路、複数のメモリカード、複数のハードディスクドライブ、複数のソリッドステートドライブ、又は、他の複数のデータストレージデバイスなどの、データの短期間又は長期間保存用に設定された任意のタイプのデバイスまたは複数のデバイスとして具現化されてもよい。例えば、データストレージ２２４は、複数のコンピューティングノード１１０によって初期化及び／又は実行される１または複数のオペレーティングシステムを格納するように設定されてもよい。幾つかの実施形態において、オペレーティングシステムの複数の部分は、より速い処理のため、及び／又は、任意の他の理由で、複数の動作中にメモリ２１４にコピーされてもよい。
【００２４】
ここで、再び図１を参照すると、ネットワークコントローラ１２０は、これらに限定されないが、サーバコンピュータ、デスクトップコンピュータ、ラップトップコンピューティングデバイス、民生用電子機器、モバイルコンピューティングデバイス、携帯電話、スマートフォン、タブレットコンピューティングデバイス、パーソナルデジタルアシスタント、ウェアラブルコンピューティングデバイス、スマートテレビ、スマート機器、及び／又は、他のタイプのコンピューティング若しくはネットワーキングデバイスを含めて、本明細書で説明される複数の機能を実行可能な任意のタイプのコンピューティングデバイスとして具現化されてもよく、そうでなければこれらを含んでもよい。そのように、ネットワークコントローラ１２０は、複数のプロセッサ、複数のメモリデバイス、通信回路、及び、複数のデータストレージなどの、複数の同様のコンピューティングデバイス又はネットワークコントローラにおいて一般的に見出される複数のデバイス及び複数の構造を含んでもよく、説明の明確化を目的として、図１ではこれらを不図示としている。例示的実施形態において、ネットワークコントローラ１２０は、ソフトウェアデファインドネットワーキング（ＳＤＮ）環境、及び／又は、ネットワーク機能仮想化（ＮＦＶ）環境（例えば図１１に例示的に示されているシステム１１００）において動作可能である。そのように、ネットワークコントローラ１２０は、ネットワークフロー情報を、複数のコンピューティングノード１１０、及び／又は、ＳＤＮ環境及び／又はＮＦＶ環境で動作可能な他の複数のコンピューティングデバイスに送信（send）（例えば送信（transmit）など）してもよい。例えば、ネットワークコントローラ１２０は、例えば、ネットワークフローと関連付けられた複数のネットワークパケットのフロー識別子及びフロータプル（例えば、発信元ＩＰアドレス、発信元ポート番号、宛先ＩＰアドレス、宛先ポート番号、及び、プロトコル）のようなネットワークフロー情報を送信してもよい。幾つかの実施形態において、ネットワークコントローラ１２０は、細粒度の負荷分散スキームによって、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０間で複数の異なるネットワークフローを処理する負担を分配してもよい。例えば、幾つかの実施形態において、ネットワークコントローラ１２０は、１つのコンピューティングノード１１０（例えばコンピューティングノードＡ１１２）が第１ネットワークフローと関連付けられた複数のネットワークパケットを処理する（例えば、複数のパケット転送操作を実行する、複数のパケットルーティング操作を実行する、複数のローカルパケット処理操作を実行するなど）責任があるべきか、及び、第２コンピューティングノード１１０（例えばコンピューティングノードＢ１１４）が第２ネットワークフローと関連付けられた複数のネットワークパケットを処理する責任があるべきかを決定してもよい。そのような複数の実施形態において、ネットワークコントローラ１２０は、第１ネットワークフローに対応するネットワークフロー情報を第１コンピューティングノード１１０（例えばコンピューティングノードＡ１１２）に送信し、第２ネットワークフローに対応するネットワークフロー情報を第２コンピューティングノード１１０（例えばコンピューティングノードＢ１１４）に送信するように設定されてもよい。
【００２５】
リモートコンピューティングデバイス１３０は、これらに限定されないが、デスクトップコンピュータ、ラップトップコンピューティングデバイス、サーバコンピュータ、民生用電子機器、モバイルコンピューティングデバイス、携帯電話、スマートフォン、タブレットコンピューティングデバイス、パーソナルデジタルアシスタント、ウェアラブルコンピューティングデバイス、スマートテレビ、スマート機器、及び／又は、他のタイプのコンピューティングデバイスを含めて、本明細書で説明される複数の機能を実行可能な任意のタイプのコンピューティングデバイスとして具現化されてもよく、そうでなければこれらを含んでもよい。そのように、リモートコンピューティングデバイス１３０は、複数のプロセッサ、複数のメモリデバイス、通信回路、及び、複数のデータストレージなど、複数のコンピューティングデバイスにおいて一般的に見出される複数のデバイス及び複数の構造を含んでもよく、説明の明確化を目的として、図１ではこれらを不図示としている。幾つかの実施形態において、リモートコンピューティングデバイス１３０は、複数のネットワークパケットを、クラスタコンピューティングデバイス１０２、及び／又は、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０に／から、送信及び／又は受信するように設定されてもよい。
【００２６】
ネットワークロードバランサ１４０は、これらに限定されないが、ネットワークロードバランサ、ネットワークスイッチ、ネットワークルータ、ネットワークハブ、無線アクセスポイント、デスクトップコンピュータ、ラップトップコンピューティングデバイス、サーバコンピュータ、民生用電子機器、モバイルコンピューティングデバイス、携帯電話、スマートフォン、タブレットコンピューティングデバイス、パーソナルデジタルアシスタント、ウェアラブルコンピューティングデバイス、スマートテレビ、スマート機器、及び／又は、他のタイプのコンピューティングデバイスを含む、本明細書で説明される複数の機能を実行可能な任意のタイプのネットワーキング又はコンピューティングデバイスとして具現化されてもよく、そうでなければそれらを含んでもよい。そのように、ネットワークロードバランサ１４０は、複数のプロセッサ、複数のメモリデバイス、通信回路、及び、複数のデータストレージのようなネットワークロードバランサ又は複数の同様のコンピューティングデバイスで一般的に見出される複数のデバイス及び複数の構造を含んでもよく、これらは説明の明確化を目的として図１では不図示としている。例示的実施形態において、ネットワークロードバランサ１４０は、他の複数のデバイスの中でも、クラスタコンピューティングデバイス１０２、クラスタコンピューティングデバイス１０２のコンピューティングノード１１０、及び、ネットワークコントローラ１２０を含み得る、ソフトウェアデファインドネットワーキング（ＳＤＮ）環境及び／又はネットワーク機能仮想化（ＮＦＶ）環境で動作可能である。
【００２７】
幾つかの実施形態において、ネットワークロードバランサ１４０は、別個の複数の通信リンク（例えば、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、ライトガイドなど）を介して、クラスタコンピューティングデバイス１０２の２つ又は３つ以上のコンピューティングノード１１０（例えば、コンピューティングノードＡ１１２およびコンピューティングノードＢ１１４）に通信可能に連結されてもよい。そのような複数の実施形態において、ネットワークロードバランサ１４０は、リモートコンピューティングデバイス１３０から１または複数のネットワークパケットを受信してもよい。リモートコンピューティングデバイス１３０から受信された複数のネットワークパケットは、クラスタコンピューティングデバイス１０２に仕向けられてもよい。そのように、ネットワークロードバランサ１４０は、粗粒度の負荷分散スキーム（例えば等コストマルチパスルーティング（ＥＣＭＰ）、ラウンドロビンなど）によって、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０を渡って、受信された複数のネットワークパケットを分散する。しかしながら、上記で説明されたように、受信された複数のネットワークパケットを処理する負担は（例えば、複数のパケット転送操作を実行する、複数のパケットルーティング操作を実行する、複数のローカルパケット処理操作を実行するなど）、細粒度の負荷分散スキームによって、複数のコンピューティングノード１１０間で分配されてもよい。そのように、幾つかの実施形態において、ネットワークロードバランサ１４０は、ネットワークパケットを処理する責任がないクラスタコンピューティングデバイス１０２のコンピューティングノード１１０にネットワークパケットを分散してもよい。そのような複数の実施形態において、以下でより詳細に説明されるように、各コンピューティングノード１１０は、クラスタコンピューティングデバイス１０２のいずれのコンピューティングノード１１０に受信されたネットワークパケットを処理する責任があるかを決定し、受信されたネットワークパケットをそのコンピューティングノード１１０に転送するように設定されてもよい。
【００２８】
ここで、図３を参照すると、使用する場合、複数のコンピューティングノード１１０の各々は、動作中の環境３００を確立する。例示的環境３００は、フロー管理モジュール３０２とフロー制御モジュール３０４とを含む。幾つかの実施形態において、フロー制御モジュール３０４は、１次フロー制御モジュール３０６と２次フロー制御モジュール３０８とを含む。環境３００の複数のモジュール、ロジックおよび他の複数のコンポーネントの各々は、ハードウェア、ソフトウェア、ファームウェア、又は、それらの組み合わせとして具現化されてもよい。例えば、環境３００の複数のモジュール、ロジックおよび他の複数のコンポーネントの各々は、各コンピューティングノード１１０のプロセッサ２１０または他の複数のハードウェアコンポーネントの一部を形成してもよく、そうでなければそれらによって確立されてもよい。各コンピューティングノード１１０は、コンピューティングデバイスにおいて一般的に見出される他の複数のコンポーネント、複数のサブコンポーネント、複数のモジュールおよび複数のデバイスを含んでもよく、これらは説明の明確化を目的として図３では示されていないことが理解されるべきである。加えて、複数のコンピューティングノード１１０の各々は動作中に例示的環境３００を確立してもよいが、その例示的環境３００の以下の説明は、説明の明確化を目的として、単一のコンピューティングノード１１２を特定参照して説明されることが理解されるべきである。
【００２９】
フロー管理モジュール３０２は、ネットワークコントローラ１２０からネットワークフロー情報を受信するように設定される。ネットワークフロー情報は、ネットワークフロー、及び、そのネットワークフローと関連付けられた任意のネットワークパケットに対応する。例えば、幾つかの実施形態において、ネットワークフロー情報は、特定のネットワークフローと関連付けられた複数のネットワークパケットのフロー識別子及びフロータプル（例えば、発信元ＩＰアドレス、発信元ポート番号、宛先ＩＰアドレス、宛先ポート番号、及び、プロトコル）を含む。ネットワークフロー情報は、特定のネットワークフローに対応する任意の他のタイプの情報を含んでもよいことが理解されるべきである。
【００３０】
フロー管理モジュール３０２はまた、ネットワークコントローラ１２０から受信されたネットワークフロー情報に基づいて、複数のネットワークフローエントリをコンピューティングノード１１２のローカルフローテーブル２１６に追加するように設定される。例えば、フロー管理モジュール３０２は、特定のネットワークフローに対応する、ネットワークコントローラ１２０からのネットワークフロー情報の受信に応答して、ネットワークフローエントリをコンピューティングノード１１２のローカルフローテーブル２１６に追加するように設定されてもよい。ローカルフローテーブル２１６に追加されたネットワークフローエントリは、受信されたネットワークフロー情報と関連付けられたネットワークフローに対応する、フロー識別子、フロータプル、ネクストホップタイプ、及び、ネクストホップインデックスを含む。フロー管理モジュール３０２がネットワークコントローラ１２０からネットワークフロー情報を受信する複数の実施形態において、フロー管理モジュール３０２は、特定のネットワークフローに対応する複数のネットワークパケットがコンピューティングノード１１２によってローカルに処理されるべきであることを示す、ローカルフローテーブル２１６に追加されたネットワークフローエントリのネクストホップタイプを更新するように、そうでなければそれを設定するように設定される。そのような複数の実施形態において、フロー管理モジュール３０２はまた、ヌル値を含むローカルフローテーブル２１６に追加されたネットワークフローのネクストホップインデックスを更新するように、そうでなければそれを設定するように設定されてもよい。
【００３１】
幾つかの実施形態において、フロー管理モジュール３０２は、１または複数のＯｐｅｎＦｌｏｗメッセージとして、ネットワークコントローラ１２０からネットワークフロー情報を受信するように設定されてもよい。加えて、又は、代替的に、フロー管理モジュール３０２は、１または複数の簡易オブジェクトアクセスプロトコル（ＳＯＡＰ）メッセージとして、ネットワークコントローラ１２０からネットワーク情報を受信するように設定されてもよい。勿論、任意の他の適切なメッセージング及び／又は通知プロトコル（例えばＲｅｐｒｅｓｅｎｔａｔｉｏｎａｌ Ｓｔａｔｅ Ｔｒａｎｓｆｅｒ（ＲＥＳＴ）メッセージ、拡張マークアップ言語（ＸＭＬ）など）は、ネットワークコントローラ１２０からネットワークフロー情報を受信するフロー管理モジュール３０２によって用いられてもよいことが理解されるべきである。
【００３２】
フロー管理モジュール３０２はまた、ネットワークコントローラ１２０から受信されたネットワークフロー情報に基づいて、マルチキャストネットワークパケットを生成するように設定される。フロー管理モジュール３０２によって生成されるマルチキャストネットワークパケットは、ネットワークフローに対応するフロータプル（例えば、発信元ＩＰアドレス、発信元ポート番号、宛先ＩＰアドレス、宛先ポート番号、及び、プロトコル）を含んでもよい。フロー管理モジュール３０２によって生成されるマルチキャストネットワークパケットはまた、特定のネットワークフローに対応する複数のネットワークパケットを処理する責任のあるコンピューティングノード１１０としてコンピューティングノード１１２を示す、そうでなければ識別するネクストホップインターネットプロトコル（ＩＰ）アドレスを含む。幾つかの実施形態において、フロー管理モジュール３０２はまた、クラスタコンピューティングデバイス１０２の１または複数の他のコンピューティングノード１１０と通信可能に連結されるコンピューティングノード１１２のインターフェース２２８に対応するローカルＩＰアドレスを決定するように設定されてもよい。そのような複数の実施形態において、マルチキャストネットワークパケットの範囲内に含まれるネクストホップＩＰアドレスは、コンピューティングノード１１２のインターフェース２２８に対応するローカルＩＰアドレスとして具現化されてもよい。フロー管理モジュール３０２は、生成されるマルチキャストネットワークパケットを、マルチキャスト通信伝達、ブロードキャスト通信伝達、ユニキャスト通信伝達、及び／又は、マルチキャストネットワークパケットを他の複数のコンピューティングノード１１０の各々に送信するのに適した任意の他のタイプの通信伝達（例えばリモート・ダイレクト・メモリ・アクセス（ＲＤＭＡ）など）によって、クラスタコンピューティングデバイス１０２の他の複数のコンピューティングノード１１０の各々に送信するように設定される。
【００３３】
加えて、又は、代替的に、フロー管理モジュール３０２は、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の他の１つからマルチキャストネットワークパケットを受信するように設定されてもよい。受信されたマルチキャストネットワークパケットは、特定のネットワークフローに対応する、フロー識別子、フロータプル、及び、ネクストホップＩＰアドレスを含んでもよい。ネクストホップＩＰアドレスは、更に処理することを目的として、特定のネットワークフローに対応する複数のネットワークパケットが転送されるべきクラスタコンピューティングデバイス１０２の特定のコンピューティングノード１１０を示し、そうでなければそれを識別する。幾つかの実施形態において、複数のコンピューティングノード１１０の他の１つからマルチキャストネットワークパケットを受信されたことに応じて、フロー管理モジュール３０２は、受信されたマルチキャストネットワークパケットに基づいて、ネットワークフローエントリをコンピューティングノード１１２のローカルフローテーブル２１６に追加するように設定されてもよい。フロー管理モジュール３０２が複数のコンピューティングノード１１０の他の１つからマルチキャストネットワークパケットを受信する複数の実施形態において、フロー管理モジュール３０２は、特定のネットワークフローに対応する複数のネットワークパケットがクラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の他の１つによって遠隔から処理されるべきであることを示す、ローカルフローテーブル２１６に追加されたネットワークフローエントリのネクストホップタイプを更新するように、そうでなければそれを設定するように設定される。
【００３４】
加えて、フロー管理モジュール３０２が複数のコンピューティングノード１１０の他の１つからマルチキャストネットワークパケットを受信する複数の実施形態において、フロー管理モジュール３０２は、受信されたマルチキャストネットワークパケットに基づいて、ネクストホップエントリをコンピューティングノード１１２のローカルネクストホップテーブル２１８に追加するように設定される。ローカルネクストホップテーブル２１８に追加されたネクストホップエントリは、他のコンピューティングノード１１０から受信されたマルチキャストネットワークパケットからの、ネクストホップ識別子およびネクストホップＩＰアドレスを含む。ネクストホップインデックスは、コンピューティングノード１１２のローカルネクストホップテーブル２１８に格納された、そうでなければ維持された、複数の他のネクストホップエントリから、追加されたネクストホップエントリを一意に識別する。幾つかの実施形態において、ローカルネクストホップテーブル２１８に追加されたネクストホップエントリはまた、更に処理することを目的として、特定のネットワークフローに対応する複数のネットワークパケットが転送されるべきクラスタコンピューティングデバイス１０２の特定のコンピューティングノード１１０と関連付けられた媒体アクセス制御（ＭＡＣ）アドレスを含む。そのような複数の実施形態において、フロー管理モジュール３０２は、アドレス解決プロトコル（ＡＲＰ）テーブルおよびネクストホップＩＰアドレスに基づいて、ネットワークフローに対応する複数のネットワークパケットを処理する責任のあるコンピューティングノード１１０のＭＡＣアドレスを決定するように設定されてもよい。
【００３５】
フロー制御モジュール３０４は、ネットワークロードバランサ１４０、及び／又は、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の他の１つからネットワークパケットを受信するように設定される。幾つかの実施形態において、フロー制御モジュール３０４は、コンピューティングノード１１２、又は、クラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０のいずれが受信されたネットワークパケットを処理する責任があるかを決定するように設定される。そのようにすべく、フロー制御モジュール３０４は、受信されたネットワークパケットと関連付けられた発信元情報および宛先情報（例えば５タプル）を決定するように設定される。フロー制御モジュール３０４は更に、コンピューティングノード１１２のローカルフローテーブル２１６でフロールックアップ操作を実行するように設定されてもよい。動作中、フロー制御モジュール３０４は、受信されたネットワークパケットと関連付けられた発信元情報および宛先情報（例えば５タプル）をローカルフローテーブル２１６の複数のネットワークフローエントリの複数のフロータプルと比較するように設定される。
【００３６】
受信されたネットワークパケットと関連付けられた発信元情報および宛先情報（例えば５タプル）と一致する、又は、それらと実質的に同様であるフロータプルを含む、ローカルフローテーブル２１６のネットワークフローエントリを識別することに応じて、フロー制御モジュール３０４は、識別されたフローエントリのネクストホップタイプを決定するように設定される。例えば、幾つかの実施形態において、フロー制御モジュール３０４は、識別されたフローエントリのネクストホップタイプが、受信されたネットワークパケットがコンピューティングノード１１２によってローカルに処理されるべきかどうか、又は、受信されたネットワークパケットがクラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０によって遠隔から処理されるべきかどうか、のいずれを示すか決定するように設定されてもよい。
【００３７】
フロー制御モジュール３０４はまた、識別されたフローエントリの決定されたネクストホップタイプに基づいて、受信されたネットワークパケットを処理するように設定されてもよい。そのようにすべく、幾つかの実施形態において、フロー制御モジュール３０４は、１次フロー制御モジュール３０６と２次フロー制御モジュール３０８とを含む。１次フロー制御モジュール３０６は、受信されたネットワークパケットがローカルに処理されるべきであるとの決定に応じて、受信されたネットワークパケットをローカルに処理するように設定されてもよい。例えば、幾つかの実施形態において、１次フロー制御モジュール３０６は、受信されたネットワークパケットをコンピューティングノード１１２のローカルメモリ待ち行列に保存するか、そうでなければ転送し、続いて、コンピューティングノード１１２によって実行されるアプリケーションに、受信されたネットワークパケットが処理されるべく利用可能であることを（例えば割り込み又はポーリングによって）知らせるように設定されてもよい。
【００３８】
２次フロー制御モジュール３０８は、受信されたネットワークパケットがクラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０によって遠隔から処理されるべきとの決定に応じて、受信されたネットワークパケットを更に処理する責任があるネクストホップコンピューティングノード１１０を決定するように設定されてもよい。そのようにすべく、２次フロー制御モジュール３０８は、ローカルネクストホップテーブル２１８に格納された対応するネクストホップエントリを取得すべく、ローカルフローテーブル２１６の識別されたフローエントリのネクストホップインデックスを利用するように設定されてもよい。幾つかの実施形態において、２次フロー制御モジュール３０８はまた、ローカルネクストホップテーブル２１８に格納された対応するネクストホップエントリからネクストホップコンピューティングノード１１０の対応するＭＡＣアドレスを取得するように設定されてもよい。加えて、２次フロー制御モジュール３０８は、受信されたネットワークパケットを決定されたネクストホップコンピューティングノード１１０に送信(transmit)（例えば、転送、ルーティング、送信（send）など）するように設定されてもよい。
【００３９】
ここで、図４を参照すると、クラスタコンピューティングデバイス１０２のコンピューティングノード１１０は、ネットワークコントローラ１２０からネットワークフロー情報を受信する方法４００を実行してもよい。方法４００に対応する疑似コード５００の一実施形態は、コンピューティングノード１１０によって実行されてもよく、図５に例示的に示されている。勿論、コンピューティングノード１１０は、方法４００を実行する場合に、異なる及び／又は追加の指示または指令を実行してもよいことが理解されるべきである。
【００４０】
方法４００は、コンピューティングノード１１０がネットワークコントローラ１２０から、ネットワークフローと関連付けられたネットワークフロー情報を受信するブロック４０２で開始する。ネットワークフロー情報は、ネットワークフローと関連付けられた複数のネットワークパケットを処理する責任がある、クラスタコンピューティングデバイス１０２の特定のコンピューティングノード１１０を示してもよい。幾つかの実施形態において、ネットワークコントローラ１２０から受信してネットワークフロー情報は、ネットワークフローに対応するフロー識別子及びフロータプル（例えば、発信元ＩＰアドレス、発信元ポート番号、宛先ＩＰアドレス、宛先ポート番号およびプロトコル）を含む。そのような複数の実施形態において、ブロック４０４で、コンピューティングノード１１０は、受信されたネットワーク情報からフロー識別子及びフロータプルを抽出してもよい。
【００４１】
ブロック４０６で、コンピューティングノード１１０は、ネットワークコントローラ１２０から受信されたネットワークフロー情報に基づいて、ネットワークフロー用のネットワークフローエントリを自身のローカルフローテーブル２１６に追加する。ローカルフローテーブル２１６に追加されたネットワークフローエントリは、受信されたネットワークフロー情報と関連付けられたネットワークフローに対応する、フロー識別子、フロータプル、ネクストホップタイプ、及び、ネクストホップインデックスを含む。追加されたネットワークフローエントリのフロー識別子は、コンピューティングノード１１０のローカルフローテーブル２１６に格納され、そうでなければ維持される他の複数のネットワークフローエントリから、追加されたネットワークフローエントリを一意に識別する。追加されたネットワークフローエントリのネクストホップタイプは、対応するネットワークフローと関連付けられる複数のネットワークパケットが、コンピューティングノード１１０によってローカルに処理されるべきか、又は、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の他の１つによって遠隔から処理されるべきかを示す。幾つかの実施形態において、ブロック４０８で、コンピューティングノード１１０は、対応するネットワークフローと関連付けられた複数のネットワークパケットがローカルに処理されるべきであることを示す、追加されたネットワークフローエントリのネクストホップタイプを更新し、そうでなければそれを設定する。例えば、コンピューティングノード１１０は、ネットワークコントローラ１２０からのネットワークフロー情報の受信に応答して、「NHOP_LOCAL」値（または同様の値）を含む、そうでなければそれを示すネクストホップタイプを更新してもよい。対応するネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノード１１０によってローカルに処理されるべきであることを示すべく、任意の他の値又は識別子が用いられてもよいことが理解されるべきである。加えて、コンピューティングノード１１０が、ネットワークコントローラ１２０からネットワークフロー情報を受信して、対応するネットワークフローと関連付けられた複数のネットワークパケットがローカルに処理されるべきであることを示すべく、自身のローカルフローテーブル２１６に追加されたネットワークフローエントリのネクストホップタイプフィールドを更新する複数の実施形態において、コンピューティングノード１１０は、対応するネットワークフローと関連付けられた複数のネットワークパケットを処理する１次責任を引き受けてもよい。
【００４２】
ブロック４１０で、コンピューティングノード１１０は、ネットワークコントローラ１２０から受信されたネットワーク情報を含むマルチキャストネットワークパケットを生成する。例えば、コンピューティングノード１１０は、ネットワークフローに対応するフロー識別子及びフロータプル（例えば、発信元ＩＰアドレス、発信元ポート番号、宛先ＩＰアドレス、宛先ポート番号およびプロトコル）を含む、マルチキャストネットワークパケットを生成する。幾つかの実施形態において、コンピューティングノード１１０によって生成されるマルチキャストネットワークパケットはまた、更に処理する目的でネットワークフローに対応する受信された複数のネットワークパケットが転送されるべき、クラスタコンピューティングデバイス１０２の特定のコンピューティングノード１１０を示す、そうでなければ識別するネクストホップインターネットプロトコル（ＩＰ）アドレスを含む。コンピューティングノード１１０がネットワークフローに対応するネットワークパケットを処理する１次責任を引き受ける複数の実施形態において、ネクストホップＩＰアドレスは、コンピューティングノード１１０と関連付けられたＩＰアドレスであってもよい。例えば、ブロック４１２で、コンピューティングノード１１０は、クラスタコンピューティングデバイス１０２の１または複数の他のコンピューティングノード１１０と通信可能に連結されたコンピューティングノード１１０のインターフェース２２８に対応するローカルＩＰアドレスを決定してもよい。そのような複数の実施形態において、マルチキャストネットワークパケットの範囲内に含まれるネクストホップＩＰアドレスは、複数のコンピューティングノード１１０のインターフェース２２８に対応するローカルＩＰアドレスとして具現化されてもよい。コンピューティングノード１１０によって生成されるネットワークパケットは、例示的実施形態でマルチキャストネットワークパケットとして説明されるが、他の複数の実施形態においては、任意の他のタイプのパケット（例えばブロードキャストなど）がコンピューティングノード１１０によって生成されてもよいことが理解されるべきである。
【００４３】
ブロック４１４で、コンピューティングノード１１０は、マルチキャストネットワークパケットをクラスタコンピューティングデバイス１０２の他の複数のコンピューティングノード１１０に送信する。幾つかの実施形態において、マルチキャストネットワークパケットは、マルチキャスト通信伝達、ブロードキャスト通信伝達、ユニキャスト通信伝達、及び／又は、マルチキャストネットワークパケットを他の複数のコンピューティングノード１１０の各々に送信するのに適した任意の他のタイプの通信伝達（例えばリモート・ダイレクト・メモリ・アクセス（ＲＤＭＡ）など）によって、クラスタコンピューティングデバイス１０２の他の複数のコンピューティングノード１１０の各々に送信されてもよい。説明されるように、コンピューティングノード１１０からのマルチキャストネットワークパケットの受信に応答して、クラスタコンピューティングデバイス１０２の他の複数のコンピューティングノード１１０の各々は、対応するフローエントリをそれら自身が所有するローカルフローテーブル２１６に追加し、及び、関連付けられたネクストホップエントリをそれら自身が所有するローカルネクストホップテーブル２１８に追加するように設定されてもよい。
【００４４】
ここで、図６を参照すると、クラスタコンピューティングデバイス１０２のコンピューティングノード１１０は、クラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０からネットワークフロー情報を受信する方法６００を実行してもよい。方法６００に対応する疑似コード７００の一実施形態は、コンピューティングノード１１０によって実行されてもよく、図７に例示的に示されている。勿論、コンピューティングノード１１０は、方法６００を実行する場合に、異なる及び／又は追加の指示または指令を実行してもよいことが理解されるべきである。方法６００は、コンピューティングノード１１０が、マルチキャストネットワークパケットがクラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０から受信されたかどうかを決定する決定ブロック６０２で開始する。幾つかの実施形態において、コンピューティングノード１１０は、ネットワークコントローラ１２０からのネットワークフローに対応するネットワーク情報を受信する他のコンピューティングノード１１０に応じて、他のコンピューティングノード１１０からマルチキャストネットワークパケットを受信してもよい。決定ブロック６０２で、もしコンピューティングノード１１０が、マルチキャストネットワークパケットがクラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０から受信されていないと決定するならば、方法６００は決定ブロック６０２にループバックし、コンピューティングノード１１０は、マルチキャストネットワークパケットが受信されたかどうかを判断し続ける。しかしながら、もしコンピューティングノード１１０が決定ブロック６０２で代わりに、マルチキャストネットワークパケットが他のコンピューティングノード１１０から受信されたと決定するならば、方法６００はブロック６０４に進む。
【００４５】
ブロック６０４で、コンピューティングノードは、クラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０から受信してマルチキャストネットワークパケットに基づいて、ネクストホップエントリを自身のローカルネクストホップテーブル２１８に追加する。受信されたマルチキャストネットワークパケットは、ネットワークフローに対応する、フロー識別子、フロータプル、及び、ネクストホップＩＰアドレスを含んでもよい。ローカルネクストホップテーブル２１８に追加されたネクストホップエントリは、他のコンピューティングノード１１０から受信されたマルチキャストネットワークパケットからの、ネクストホップ識別子およびネクストホップＩＰアドレスを含む。ネクストホップインデックスは、複数のコンピューティングノード１１０のローカルネクストホップテーブル２１８に格納された、そうでなければ維持された、複数の他のネクストホップエントリから、追加されたネクストホップエントリを一意に識別する。ネクストホップＩＰアドレスは、ネットワークフローに対応する複数のネットワークパケットが更に処理されるように転送されるべき、クラスタコンピューティングデバイス１０２の特定のコンピューティングノード１１０を示し、そうでなければそれを識別する。すなわち、ネクストホップＩＰアドレスは、ネットワークロードバランサ１４０を介してリモートコンピューティングデバイス１３０から受信され得る、ネットワークフローに対応する複数のネットワークパケットを処理する１次責任を有する、そうでなければそれを引き受ける、クラスタコンピューティングデバイス１０２のコンピューティングノード１１０と関連付けられてもよい。そのような複数の実施形態において、ブロック６０６で、コンピューティングノード１１０は、受信されたマルチキャストネットワークパケットからネクストホップＩＰアドレスを抽出してもよい。
【００４６】
幾つかの実施形態において、ネットワークフローに対応する受信された複数のネットワークパケットを、複数のネットワークパケットを処理する１次責任を有するクラスタコンピューティングデバイス１０２のコンピューティングノード１１０に転送するのを促すことを目的として、ローカルネクストホップテーブル２１８に追加されたネクストホップエントリはまた、複数のネットワークパケットを処理する１次責任を有するクラスタコンピューティングデバイス１０２のコンピューティングノード１１０と関連付けられた媒体アクセス制御（ＭＡＣ）アドレスを含んでもよい。そのような複数の実施形態において、ブロック６０８で、コンピューティングノード１１０は、ネットワークフローに対応する複数のネットワークパケットを処理する１次責任を有するクラスタコンピューティングデバイス１０２のコンピューティングノード１１０のＭＡＣアドレスを決定してもよい。そのようにすべく、コンピューティングノード１１０は、ネクストホップＩＰアドレスに基づいて、ネットワークフローに対応する複数のネットワークパケットを処理する１次責任を有するコンピューティングノード１１０のＭＡＣアドレスをルックアップすべく、アドレス解決プロトコル（ＡＲＰ）テーブルを利用してもよい。続いて、コンピューティングノード１１０は、１次責任を有するクラスタコンピューティングデバイス１０２のコンピューティングノード１１０のＭＡＣアドレスを含むローカルネクストホップテーブル２１８に追加された、ＭＡＣアドレスフィールド、及び／又は、ネクストホップエントリ値を更新してもよい。以下で説明されるように、複数のコンピューティングノード１１０のローカルネクストホップテーブル２１８に追加されたネクストホップエントリは、複数のコンピューティングノード１１０のローカルフローテーブル２１６に追加されたネットワークフローエントリと関連付けられる。
【００４７】
ブロック６１０で、コンピューティングノード１１０は、クラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０から受信されたマルチキャストネットワークパケットに基づいて、ネットワークフロー用のネットワークフローエントリを自身のローカルフローテーブル２１６に追加する。ローカルフローテーブル２１６に追加されたネットワークフローエントリは、他のコンピューティングノード１１０から受信されたマルチキャストネットワークパケットからのフロー識別子及びフロータプルを含む。加えて、ローカルフローテーブル２１６に追加されたネットワークフローエントリは、ネットワークフローに対応する、ネクストホップインデックスおよびネクストホップタイプを含む。説明されるように、複数のコンピューティングノード１１０のローカルネクストホップテーブル２１８に追加されたネクストホップエントリは、複数のコンピューティングノード１１０のローカルフローテーブル２１６に追加されたネットワークフローエントリと関連付けられる。幾つかの実施形態において、ブロック６１２で、コンピューティングノード１１０は、ローカルネクストホップテーブル２１８に追加されたネクストホップエントリと関連付けられたネクストホップインデックスを含むローカルフローテーブル２１６を追加された、ネットワークフローエントリのネクストホップインデックスを更新する。そのように、コンピューティングノード１１０は、ローカルネクストホップテーブル２１８からネクストホップ情報（例えば、ネクストホップＩＰ及び／又は対応するＭＡＣアドレス）の全て又はその一部を取得すべく、ローカルフローテーブル２１６に追加されたネットワークフローエントリのネクストホップインデックスを利用してもよい。
【００４８】
説明したように、追加されたネットワークフローエントリのネクストホップタイプは、対応するネットワークフローと関連付けられる複数のネットワークパケットが、コンピューティングノード１１０によってローカルに処理されるべきか、又は、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の他の１つによって遠隔から処理されるべきかを示す。幾つかの実施形態において、他のコンピューティングノード１１０からのマルチキャストネットワークパケットの受信に応答して、ブロック６１４で、コンピューティングノード１１０は、対応するネットワークフローと関連付けられた複数のネットワークパケットが遠隔から処理されるべきであることを示す、追加されたネットワークフローエントリのネクストホップタイプを更新し、そうでなければそれを設定する。例えば、コンピューティングノード１１０は、クラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０からのマルチキャストネットワークパケットの受信に応答して、「NHOP_REMOTE」値（又は同様の値）を含む、そうでなければそれを示すネクストホップタイプを更新してもよい。対応するネットワークフローと関連付けられた複数のネットワークパケットが、クラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０によって遠隔から処理されるべきであることを示すべく、任意の他の値又は識別子が用いられてもよいことが理解されるべきである。加えて、コンピューティングノード１１０が、他のコンピューティングノード１１０からマルチキャストネットワークパケットを受信して、対応するネットワークフローと関連付けられた複数のネットワークパケットが遠隔から処理されるべきであることを示すべく、自身のローカルフローテーブル２１６に追加されたネットワークフローエントリのネクストホップタイプフィールドを更新する複数の実施形態において、コンピューティングノード１１０は、対応するネットワークフローと関連付けられた複数のネットワークパケットを処理する２次責任を引き受けてもよい。すなわち、コンピューティングノード１１０は、更に処理する目的で、対応するネットワークフローと関連付けられた複数のネットワークパケットを他のコンピューティングノード１１０に転送してもよい。
【００４９】
ここで、図８及び図９を参照すると、クラスタコンピューティングデバイス１０２のコンピューティングノード１１０は、リモートコンピューティングデバイス１３０から受信されたネットワークパケットを処理する方法８００を実行してもよい。方法８００に対応する疑似コード１０００の一実施形態は、コンピューティングノード１１０によって実行されてもよく、図１０に例示的に示されている。勿論、コンピューティングノード１１０は、方法８００を実行する場合に、異なる及び／又は追加の指示または指令を実行してもよいことが理解されるべきである。方法８００は、コンピューティングノード１１０が、ネットワークパケットがリモートコンピューティングデバイス１３０から受信されたかどうかを決定する、決定ブロック８０２で開始する。幾つかの実施形態において、ネットワークパケットは、ネットワークロードバランサ１４０を介して、リモートコンピューティングデバイス１３０から受信されてもよい。説明されたように、ネットワークロードバランサ１４０は、粗粒度の負荷分散スキーム（例えば、等コストマルチパスルーティング（ＥＣＭＰ）、ラウンドロビンなど）によって、リモートコンピューティングデバイス１３０からのネットワークパケットをコンピューティングノード１１０に転送してもよい。決定ブロック８０２で、もしコンピューティングノード１１０が、ネットワークパケットがリモートコンピューティングデバイス１３０から受信されていないと決定するならば、方法８００は決定ブロック８０２にループバックし、コンピューティングノード１１０は、ネットワークパケットが受信されたかどうかを判断し続ける。しかしながら、もしコンピューティングノード１１０が、ネットワークパケットがリモートコンピューティングデバイス１３０から受信されたと決定するならば、方法８００は、コンピューティングノード１１０が受信されたネットワークパケットの発信元情報および宛先情報（例えば５タプル）を決定するブロック８０４に進む。
【００５０】
ブロック８０６で、コンピューティングノード１１０は、受信されたネットワークパケットの発信元情報および宛先情報（例えば５タプル）に基づいて、ローカルフローテーブル２１６でフロールックアップを実行する。そのようにすべく、幾つかの実施形態において、ブロック８０８で、コンピューティングノード１１０は、受信されたネットワークパケットの決定された発信元情報および宛先情報（例えば５タプル）と、ローカルフローテーブル２１６の複数のネットワークフローエントリの複数のフロータプルとを比較する。比較に基づいて、コンピューティングノード１１０は、受信されたネットワークパケットの５タプルに一致する、そうでなければ実質的に同様であるフロータプルを含む、ローカルフローテーブル２１６のネットワークフローエントリを決定する。
【００５１】
ブロック８１０で、コンピューティングノード１１０は、受信されたネットワークパケットの５タプルに一致する、そうでなければ実質的に同様であるフロータプルを含む、ローカルフローテーブル２１６のフローエントリのネクストホップタイプを決定する。決定ブロック８１２で、コンピューティングノード１１０は、ローカルフローテーブル２１６の一致するフローエントリのネクストホップタイプが、ネットワークパケットがローカルに処理されるべきであることを示すかどうかを決定する。そのようにすべく、幾つかの実施形態において、コンピューティングノード１１０は、ローカルフローテーブル２１６の一致するフローエントリのネクストホップタイプが、「NHOP_LOCAL」値（又は同様の値）を含むかどうか、そうでなければそれを示すかどうかを決定してもよい。説明されたように、ローカルフローテーブル２１６の一致するフローエントリが、ネットワークパケットがローカルに処理されるべきであることを示す複数の実施形態において、コンピューティングノード１１０は、対応するネットワークフローと関連付けられた複数のネットワークパケット（及び、続いて受信された複数のネットワークパケット）を処理する１次責任を引き受ける。しかしながら、ローカルフローテーブル２１６の一致するフローエントリが、ネットワークパケットが遠隔から処理される（例えばクラスタコンピューティングデバイス１０２の異なるコンピューティングノード１１０によって処理される）べきであることを示す複数の実施形態において、コンピューティングノード１１０は、対応するネットワークフローと関連付けられた複数のネットワークパケット（及び、続いて受信された複数のネットワークパケット）を処理する２次責任を引き受ける。すなわち、コンピューティングノード１１０は、更に処理する目的で、対応するネットワークフローと関連付けられたネットワークパケット（及び、続いて受信された複数のネットワークパケット）を、クラスタコンピューティングデバイス１０２の他のコンピューティングノード１１０に転送してもよい。決定ブロック８１２で、もしコンピューティングノード１１０が、一致するフローエントリのネクストホップタイプが、ネットワークパケットがローカルに処理されるべきであることを示すと決定するならば、方法８００はブロック８１４に進む。しかしながら、決定ブロック８１２で、もしコンピューティングノード１１０が、一致するフローエントリのネクストホップタイプが、ネットワークパケットがローカルに処理されるべきであることを示さないと決定するならば（例えばネットワークパケットが遠隔から処理されるべきである）、方法８００は代わりに、ブロック８１６に進む。
【００５２】
ブロック８１４で、コンピューティングノード１１０は、受信されたネットワークパケットをローカルに処理する。例えば、幾つかの実施形態において、コンピューティングノード１１０は、一致するフローエントリのフロー識別子を、コンピューティングノード１１０のアプリケーション層に渡す。他の例において、コンピューティングノード１１０は、受信されたネットワークパケットをローカルメモリ待ち行列に保存し、そうでなければそこに転送し、コンピューティングノード１１０によって実行されるアプリケーションに、受信されたネットワークパケットが処理されるべく利用可能であることを（例えば割り込み又はポーリングによって）知らせる。
【００５３】
ブロック８１６で、コンピューティングノード１１０は、ローカルフローテーブル２１６およびローカルネクストホップテーブル２１８に基づいて、受信されたネットワークパケットを更に処理する責任があるネクストホップコンピューティングノード１１０（例えば、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０の他の１つ）を決定する。そのようにすべく、幾つかの実施形態において、コンピューティングノード１１０は、ローカルネクストホップテーブル２１８に格納された対応するネクストホップエントリを取得すべく、一致するフローエントリのネクストホップインデックスを利用する。説明されたように、一致するフローエントリに対応するネクストホップエントリは、ネクストホップコンピューティングノード１１０のネクストホップＩＰ及び／又は対応するＭＡＣアドレスを含む。ネクストホップエントリがネクストホップコンピューティングノード１１０のＭＡＣアドレスを含む複数の実施形態において、ブロック８１８で、コンピューティングノード１１０は、ローカルネクストホップテーブル２１８からネクストホップコンピューティングノード１１０のＭＡＣアドレスを取得する。
【００５４】
ブロック８２０で、コンピューティングノード１１０は、受信されたネットワークパケットを決定されたネクストホップコンピューティングノード１１０に送信（transmit）（例えば、転送、ルーティング、送信（send）など）する。そのようにすべく、幾つかの実施形態において、ブロック８２２で、コンピューティングノード１１０は、受信されたネットワークパケットの宛先ＭＡＣアドレスに代えて、ネクストホップコンピューティングノード１１０のＭＡＣアドレスを用いる、そうでなければそれに置換する。説明されたように、ネクストホップコンピューティングノード１１０（例えば、クラスタコンピューティングデバイス１０２の異なるコンピューティングノード１１０）は、受信されたネットワークパケットを更に処理するように設定されてもよい。
【００５５】
ここで、図１１を参照すると、例示的実施形態において、粗粒度の負荷分散と細粒度の負荷分散との間をブリッジするシステム１１００は、複数のコンピューティングノード１１０と、ネットワークコントローラ１２０と、リモートコンピューティングデバイス１３０と、ネットワークロードバランサ１４０とを有するクラスタコンピューティングデバイス１０２を備え、それらの各々は、ネットワーク機能仮想化（ＮＦＶ）環境で動作可能であってもよい。図１１に示される、クラスタコンピューティングデバイス１０２、クラスタコンピューティングデバイス１０２の複数のコンピューティングノード１１０（例えばコンピューティングノードＡ１１２およびコンピューティングノードＢ１１４）、リモートコンピューティングデバイス１３０、及び、ネットワークロードバランサ１４０は、図１から図３を参照して上記で説明された、クラスタコンピューティングデバイス１０２、コンピューティングノード１１０、リモートコンピューティングデバイス１３０、及び、ネットワークロードバランサ１４０と実質的に同様の、機能性、複数の特徴、及び／又は、構造を含んでもよいことが理解されるべきである。図１１に例示的に示されるように、システム１１００はまた、フロー管理モジュール（ＦＭＭ）３０２とフロー制御モジュール（ＦＣＭ）３０４とを含んでもよい。図１１に示されるフロー管理モジュール３０２及びフロー制御モジュール３０４は、図３を参照して上記で説明されたフロー管理モジュール３０２及びフロー制御モジュール３０４と同様の、機能性及び／又は複数の特徴を含んでもよいことが理解されるべきである。動作中、コンピューティングノードＡ１１２およびコンピューティングノードＢ１１４は各々、任意の数の仮想ネットワーク機能１１０２を与えるべく、１または複数の仮想機械（又は、仮想環境）を含んでもよい。システム１１００の複数のコンピューティングノード１１０（例えばコンピューティングノードＡ１１２およびコンピューティングノードＢ１１４）の各々におけるフロー管理モジュール３０２及びフロー制御モジュール３０４は、複数のコンピューティングノード１１０の各々が、それぞれ提供する複数の仮想ネットワーク機能１１０２に対応する複数のネットワークパケットを処理する１次責任を引き受けることを可能にするように設定されてもよい。加えて、システム１１００の複数のコンピューティングノード１１０（例えばコンピューティングノードＡ１１２およびコンピューティングノードＢ１１４）の各々におけるフロー管理モジュール３０２及びフロー制御モジュール３０４は、複数のコンピューティングノード１１０の各々が、クラスタコンピューティングデバイス１０２の他の複数のコンピューティングノード１１０によって提供される複数の仮想ネットワーク機能１１０２に対応する複数のネットワークパケットを処理する２次責任を引き受けることを可能にするように設定されてもよい。
【００５６】
［複数の例］
【００５７】
本明細書で開示される複数の技術の複数の例示的な例が以下で提供される。複数の技術の実施形態は、以下で説明される任意の１または複数の例、及び、それらの任意の組み合わせを含んでもよい。
【００５８】
例１は、粗粒度の負荷分散と細粒度の負荷分散との間でブリッジするクラスタコンピューティングデバイスのコンピューティングノードを含み、コンピューティングノードは、（１）複数のネットワークフローエントリを格納するローカルフローテーブルと、（２）複数のネットワークフローエントリのうちの１または複数に関する転送情報を格納するローカルネクストホップテーブルとを含むメモリ、及び、（１）ネットワークコントローラからネットワークフロー情報を受信し、（２）ネットワークコントローラから受信されたネットワークフロー情報に基づいてネットワークフローエントリをローカルフローテーブルに追加し、（３）ネットワークコントローラから受信されたネットワークフロー情報と、コンピューティングノードと関連付けられたインターネットプロトコルアドレスとを含むマルチキャストネットワークパケットを生成し、（４）マルチキャストネットワークパケットに基づいて、異なるネットワークフローエントリを互いのコンピューティングノードのローカルフローテーブルに追加すること、及び、ネクストホップエントリを互いのコンピューティングノードローカルネクストホップテーブルに追加することを促すべく、マルチキャストネットワークパケットをクラスタコンピューティングデバイスの互いのコンピューティングノードに送信するフロー管理モジュールを備える。
【００５９】
例２は、例１の主題を含み、コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから追加されたネットワークフローエントリを一意に識別するフロー識別子と、コンピューティングノードのローカルネクストホップテーブルにおける関連付けられたネクストホップエントリを識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む。
【００６０】
例３は例１および２のいずれかの主題を含み、ネットワークコントローラから受信されたネットワークフロー情報は、フロータプル及びフロー識別子を含む。
【００６１】
例４は例１から３のいずれかの主題を含み、フロー管理モジュールは更に、（１）ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すべく、ローカルフローテーブルに追加されたネットワークフローエントリのネクストホップタイプを設定し、（２）ローカルフローテーブルに追加されたネットワークフローエントリのネクストホップインデックスをヌル値で設定する予定である。
【００６２】
例５は例１から４のいずれかの主題を含み、フロー管理モジュールは更に、クラスタコンピューティングデバイスの１または複数の他のコンピューティングノードと通信可能に連結された、コンピューティングノードのインターフェースと関連付けられたローカルインターネットプロトコルアドレスを決定する予定であり、コンピューティングノードと関連付けられたインターネットプロトコルアドレスは、コンピューティングノードのインターフェースと関連付けられたローカルインターネットプロトコルアドレスを含む。
【００６３】
例６は例１から５のいずれかの主題を含み、コンピューティングノードのローカルフローテーブルの各ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから、ネットワークフローエントリを一意に識別するフロー識別子と、ネットワークフローエントリと関連付けられたコンピューティングノードのローカルネクストホップテーブルに格納された複数のネクストホップエントリからネクストホップエントリを識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む。
【００６４】
例７は例１から６のいずれかの主題を含み、（１）リモートコンピューティングデバイスからネットワークパケットを受信し、（２）５タプルの受信されたネットワークパケットを決定し、（３）５タプルの受信されたネットワークパケットと一致するフロータプルを含むネットワークフローエントリを複数のネットワークフローエントリから決定すべく、コンピューティングノードのローカルフローテーブルでフロールックアップ操作を実行し、（４）決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すかを決定し、（５）決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すとの決定に応じて、ネットワークパケットを処理し、（６）決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがクラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すとの決定に応じて、受信されたネットワークパケットをクラスタコンピューティングデバイスのネクストホップコンピューティングノードに転送する、フロー制御モジュールを更に含む。
【００６５】
例８は例１から７のいずれかの主題を含み、フロー制御モジュールは更に、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定する予定である。
【００６６】
例９は例１から８のいずれかの主題を含み、フロー制御モジュールは更に、複数のネクストホップエントリのうち一致するネクストホップエントリを決定すべく、決定されたネットワークフローエントリと関連付けられたネクストホップインデックスに応じて、コンピューティングノードのローカルネクストホップテーブルでネクストホップルックアップ操作を実行する予定であり、ネクストホップコンピューティングノードを決定することは、一致するネクストホップエントリに応じて、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定することを含む。
【００６７】
例１０は例１から９のいずれかの主題を含み、フロー制御モジュールは更に、（１）コンピューティングノードのローカルネクストホップテーブルの一致するネクストホップエントリに基づいて、ネクストホップコンピューティングノードの媒体アクセス制御アドレスを決定し、（２）受信されたネットワークパケットの宛先媒体アクセス制御アドレスをネクストホップコンピューティングノードの決定された媒体アクセス制御アドレスと置き換える予定であり、受信されたネットワークパケットをネクストホップコンピューティングノードに転送することは、受信されたネットワークパケットの置き換えられた宛先媒体アクセス制御アドレスに基づいて、受信されたネットワークパケットをネクストホップコンピューティングノードに転送することを含む。
【００６８】
例１１は、粗粒度の負荷分散と細粒度の負荷分散との間でブリッジする方法を含み、当該方法は、クラスタコンピューティングデバイスのコンピューティングノードが、複数のネットワークフローエントリをコンピューティングノードのローカルフローテーブルに格納する段階と、コンピューティングノードが、複数のネットワークフローエントリのうちの１または複数に関する転送情報を、コンピューティングノードのローカルネクストホップテーブルに格納する段階と、コンピューティングノードが、ネットワークコントローラからネットワークフロー情報を受信する段階と、コンピューティングノードが、ネットワークコントローラから受信されたネットワークフロー情報に基づいて、ネットワークフローエントリをコンピューティングノードのローカルフローテーブルに追加する段階と、コンピューティングノードが、ネットワークコントローラから受信されたネットワークフロー情報、及び、コンピューティングノードと関連付けられたインターネットプロトコルアドレスを含むマルチキャストネットワークパケットを生成する段階と、コンピューティングノードが、マルチキャストネットワークパケットに基づいて、異なるネットワークフローエントリを互いのコンピューティングノードのローカルフローテーブルに追加し、ネクストホップエントリを互いのコンピューティングノードのローカルネクストホップテーブルに追加することを促すべく、マルチキャストネットワークパケットをクラスタコンピューティングデバイスの互いのコンピューティングノードに送信する段階と、を含む。
【００６９】
例１２は、例１１の主題を含み、コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから追加されたネットワークフローエントリを一意に識別するフロー識別子と、コンピューティングノードのローカルネクストホップテーブルにおける関連付けられたネクストホップエントリを識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む。
【００７０】
例１３は例１１および１２のいずれかの主題を含み、ネットワークコントローラから受信されたネットワークフロー情報は、フロータプル及びフロー識別子を含む。
【００７１】
例１４は例１１から１３のいずれかの主題を含み、コンピューティングノードが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すべく、ローカルフローテーブルに追加されたネットワークフローエントリのネクストホップタイプを設定する段階と、コンピューティングノードが、ヌル値と共にローカルフローテーブルに追加されたネットワークフローエントリのネクストホップインデックスを設定する段階とを更に含む。
【００７２】
例１５は、例１１から１４の主題を含み、コンピューティングノードが、クラスタコンピューティングデバイスの１または複数の他のコンピューティングノードと通信可能に連結された、コンピューティングノードのインターフェースと関連付けられたローカルインターネットプロトコルアドレスを決定する段階を更に含み、コンピューティングノードと関連付けられたインターネットプロトコルアドレスは、コンピューティングノードのインターフェースと関連付けられたローカルインターネットプロトコルアドレスを含む。
【００７３】
例１６は例１１から１５のいずれかの主題を含み、コンピューティングノードのローカルフローテーブルの各ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから、ネットワークフローエントリを一意に識別するフロー識別子と、ネットワークフローエントリと関連付けられたコンピューティングノードのローカルネクストホップテーブルに格納された複数のネクストホップエントリからネクストホップエントリを識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む。
【００７４】
例１７は例１１から１６のいずれかの主題を含み、コンピューティングノードが、リモートコンピューティングデバイスからネットワークパケットを受信する段階と、コンピューティングノードが、５タプルの受信されたネットワークパケットを決定する段階と、コンピューティングノードが、５タプルの受信されたネットワークパケットと一致するフロータプルを含むネットワークフローエントリを複数のネットワークフローエントリから決定すべく、コンピューティングノードのローカルフローテーブルでフロールックアップ操作を実行する段階と、コンピューティングノードが、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すかを決定する段階と、コンピューティングノードが、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すとの決定に応じて、ネットワークパケットを処理する段階と、コンピューティングノードが、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがクラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すとの決定に応じて、受信されたネットワークパケットをクラスタコンピューティングデバイスのネクストホップコンピューティングノードに転送する段階と、を更に含む。
【００７５】
例１８は例１１から１７の主題を含み、コンピューティングノードが、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定する段階を更に含む。
【００７６】
例１９は例１１から１８のいずれかの主題を含み、複数のネクストホップエントリのうち一致するネクストホップエントリを決定すべく、コンピューティングノードが、決定されたネットワークフローエントリと関連付けられたネクストホップインデックスに応じて、コンピューティングノードのローカルネクストホップテーブルでネクストホップルックアップ操作を実行する段階を更に含み、ネクストホップコンピューティングノードを決定する段階は、一致するネクストホップエントリに応じて、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定する段階を含む。
【００７７】
例２０は、例１１から１９のいずれかの主題を含み、コンピューティングノードが、コンピューティングノードのローカルネクストホップテーブルの一致するネクストホップエントリに基づいて、ネクストホップコンピューティングノードの媒体アクセス制御アドレスを決定する段階と、コンピューティングノードが、受信されたネットワークパケットの宛先媒体アクセス制御アドレスをネクストホップコンピューティングノードの決定された媒体アクセス制御アドレスと置き換える段階と、を更に含み、受信されたネットワークパケットをネクストホップコンピューティングノードに転送する段階は、受信されたネットワークパケットの置き換えられた宛先媒体アクセス制御アドレスに基づいて、受信されたネットワークパケットをネクストホップコンピューティングノードに転送する段階を含む。
【００７８】
例２１は、粗粒度の負荷分散と細粒度の負荷分散との間をブリッジするクラスタコンピューティングデバイスのコンピューティングノードを含み、コンピューティングノードは、プロセッサと、プロセッサによって実行された場合にコンピューティングノードに例１１から２０のいずれかの方法を実行させる複数の命令をその内部に格納したメモリとを備える。
【００７９】
例２２は、実行されたことに応じて、結果としてクラスタコンピューティングデバイスのコンピューティングノードが例１１から２０のいずれかの方法を実行することになる、そこに格納された複数の命令を備える、１または複数の機械可読媒体を含む。
【００８０】
例２３は、粗粒度の負荷分散と細粒度の負荷分散との間でブリッジするクラスタコンピューティングデバイスのコンピューティングノードを含み、コンピューティングノードは、複数のネットワークフローエントリをコンピューティングノードのローカルフローテーブルに格納する手段と、複数のネットワークフローエントリのうちの１または複数に関する転送情報を、コンピューティングノードのローカルネクストホップテーブルに格納する手段と、ネットワークコントローラからネットワークフロー情報を受信する手段と、ネットワークコントローラから受信されたネットワークフロー情報に基づいて、ネットワークフローエントリをコンピューティングノードのローカルフローテーブルに追加する手段と、ネットワークコントローラから受信されたネットワークフロー情報、及び、コンピューティングノードと関連付けられたインターネットプロトコルアドレスを含むマルチキャストネットワークパケットを生成する手段と、マルチキャストネットワークパケットに基づいて、異なるネットワークフローエントリを互いのコンピューティングノードのローカルフローテーブルに追加し、ネクストホップエントリを互いのコンピューティングノードのローカルネクストホップテーブルに追加することを促すべく、マルチキャストネットワークパケットをクラスタコンピューティングデバイスの互いのコンピューティングノードに送信する手段と、を備える。
【００８１】
例２４は、例２３の主題を含み、コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから追加されたネットワークフローエントリを一意に識別するフロー識別子と、コンピューティングノードのローカルネクストホップテーブルにおける関連付けられたネクストホップエントリを識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む。
【００８２】
例２５は例２３および２４のいずれかの主題を含み、ネットワークコントローラから受信されたネットワークフロー情報は、フロータプル及びフロー識別子を含む。
【００８３】
例２６は例２３から２５のいずれかの主題を含み、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すべく、ローカルフローテーブルに追加されたネットワークフローエントリのネクストホップタイプを設定する手段と、ヌル値と共にローカルフローテーブルに追加されたネットワークフローエントリのネクストホップインデックスを設定する手段とを更に含む。
【００８４】
例２７は例２３から２６のいずれかの主題を含み、クラスタコンピューティングデバイスの１または複数の他のコンピューティングノードと通信可能に連結された、コンピューティングノードのインターフェースと関連付けられたローカルインターネットプロトコルアドレスを決定する手段を更に含み、コンピューティングノードと関連付けられたインターネットプロトコルアドレスは、コンピューティングノードのインターフェースと関連付けられたローカルインターネットプロトコルアドレスを含む。
【００８５】
例２８は例２３から２７のいずれかの主題を含み、コンピューティングノードのローカルフローテーブルの各ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから、ネットワークフローエントリを一意に識別するフロー識別子と、ネットワークフローエントリと関連付けられたコンピューティングノードのローカルネクストホップテーブルに格納された複数のネクストホップエントリからネクストホップエントリを識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む。
【００８６】
例２９は例２３から２８のいずれかの主題を含み、リモートコンピューティングデバイスからネットワークパケットを受信する手段と、５タプルの受信されたネットワークパケットを決定する手段と、５タプルの受信されたネットワークパケットと一致するフロータプルを含むネットワークフローエントリを複数のネットワークフローエントリから決定すべく、コンピューティングノードのローカルフローテーブルでフロールックアップ操作を実行する手段と、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すかを決定する手段と、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すとの決定に応じて、ネットワークパケットを処理する手段と、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがクラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すとの決定に応じて、受信されたネットワークパケットをクラスタコンピューティングデバイスのネクストホップコンピューティングノードに転送する手段と、を更に含む。
【００８７】
例３０は例２３から２９のいずれかの主題を含み、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定する手段を更に含む。
【００８８】
例３１は例２３から３０のいずれかの主題を含み、複数のネクストホップエントリのうち一致するネクストホップエントリを決定すべく、決定されたネットワークフローと関連付けられたネクストホップインデックスに応じて、コンピューティングノードのローカルネクストホップテーブルでネクストホップルックアップ操作を実行する手段を更に含み、ネクストホップコンピューティングノードを決定する手段は、一致するネクストホップエントリに応じて、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定する手段を含む。
【００８９】
例３２は例２３から３１のいずれかの主題を含み、コンピューティングノードのローカルネクストホップテーブルの一致するネクストホップエントリに基づいて、ネクストホップコンピューティングノードの媒体アクセス制御アドレスを決定する手段と、受信されたネットワークパケットの宛先媒体アクセス制御アドレスをネクストホップコンピューティングノードの決定された媒体アクセス制御アドレスと置き換える手段とを更に含み、受信されたネットワークパケットをネクストホップコンピューティングノードに転送する手段は、受信されたネットワークパケットの置き換えられた宛先媒体アクセス制御アドレスに基づいて、受信されたネットワークパケットをネクストホップコンピューティングノードに転送する手段を含む。
【００９０】
例３３は粗粒度の負荷分散と細粒度の負荷分散との間をブリッジするクラスタコンピューティングデバイスのコンピューティングノードを含み、コンピューティングノードは、（１）クラスタコンピューティングデバイスの異なるコンピューティングノードから、異なるコンピューティングノードを示すネットワークフロー情報及びネクストホップ情報を含むマルチキャストネットワークパケットを受信し、（２）異なるコンピューティングノードから受信されたマルチキャストネットワークパケットからのネットワークフロー情報に基づいて、ネットワークフローエントリをコンピューティングノードのローカルフローテーブルに追加し、（３）異なるコンピューティングノードから受信されたマルチキャストネットワークパケットからのネクストホップ情報に基づいて、ネクストホップエントリをコンピューティングノードのローカルネクストホップテーブルに追加するフロー管理モジュールを含み、コンピューティングノードのローカルネクストホップテーブルに追加されたネクストホップエントリは、コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリと関連付けられる。
【００９１】
例３４は例３３の主題を含み、コンピューティングノードのローカルネクストホップテーブルは、複数のネクストホップエントリを含み、複数のネクストホップエントリの各ネクストホップエントリは、ローカルフローテーブルの複数のネットワークフローエントリのうちの異なるネットワークフローエントリと関連付けられ、異なるコンピューティングノードから受信されたマルチキャストネットワークパケットのネクストホップ情報は、異なるコンピューティングノードと関連付けられたインターネットプロトコルアドレスを含み、コンピューティングノードのローカルネクストホップテーブルに追加されたネクストホップエントリは、異なるコンピューティングノードと関連付けられたインターネットプロトコルアドレスと、コンピューティングノードのローカルネクストホップテーブルに格納された複数のネクストホップエントリにおける互いのネクストホップエントリから、追加されたネクストホップエントリを一意に識別するネクストホップインデックスと、異なるコンピューティングノードと関連付けられたインターネットプロトコルアドレスに対応する媒体アクセス制御アドレスと、を含む。
【００９２】
例３５は例３３および３４のいずれかの主題を含み、フロー管理モジュールは更に、（１）異なるコンピューティングノードと関連付けられたインターネットプロトコルアドレスに対応する媒体アクセス制御アドレスを決定し、（２）決定された媒体アクセス制御アドレスと共にローカルネクストホップテーブルに追加されたネクストホップエントリの媒体アクセス制御アドレスを設定する。
【００９３】
例３６は例３３から３５のいずれかの主題を含み、コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから、追加されたネットワークフローエントリを一意に識別するフロー識別子と、コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリと関連付けられたローカルネクストホップテーブルにおける複数のネクストホップエントリからネクストホップエントリを一意に識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプと、を含む。
【００９４】
例３７は例３３から３６のいずれかの主題を含み、異なるコンピューティングノードから受信されたマルチキャストネットワークパケットのネットワークフロー情報は、フロータプル及びフロー識別子を含む。
【００９５】
例３８は例３３から３７のいずれかの主題を含み、フロー管理モジュールは更に、異なるコンピューティングノードからのマルチキャストネットワークパケットの受信に応答して、ネットワークフローと関連付けられた複数のネットワークパケットがクラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔からから処理されるべきであることを示すべく、ローカルフローテーブルに追加されたネットワークフローエントリのネクストホップタイプを設定する予定である。
【００９６】
例３９は例３３から３８のいずれかの主題を含み、ローカルフローテーブルは複数のネットワークフローエントリを含み、コンピューティングノードのローカルフローテーブルの各ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから、ネットワークフローエントリを一意に識別するフロー識別子と、ネットワークフローエントリと関連付けられたローカルネクストホップテーブルの複数のネクストホップエントリからネクストホップエントリを一意に識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む。
【００９７】
例４０は例３３から３９のいずれかの主題を含み、（１）リモートコンピューティングデバイスからネットワークパケットを受信し、（２）５タプルの受信されたネットワークパケットを決定し、（３）５タプルの受信されたネットワークパケットと一致するフロータプルを含むネットワークフローエントリを複数のネットワークフローエントリから決定すべく、コンピューティングノードのローカルフローテーブルでフロールックアップ操作を実行し、（４）決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すかを決定し、（５）決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すとの決定に応じて、ネットワークパケットを処理し、（６）決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがクラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すとの決定に応じて、受信されたネットワークパケットをクラスタコンピューティングデバイスのネクストホップコンピューティングノードに転送する、フロー制御モジュールを更に含む。
【００９８】
例４１は例３３から４０のいずれかの主題を含み、フロー制御モジュールは更に、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定する予定である。
【００９９】
例４２は例３３から４１のいずれかの主題を含み、フロー制御モジュールは更に、複数のネクストホップエントリのうち一致するネクストホップエントリを決定すべく、決定されたネットワークフローエントリと関連付けられたネクストホップインデックスに応じて、コンピューティングノードのローカルネクストホップテーブルでネクストホップルックアップ操作を実行する予定であり、ネクストホップコンピューティングノードを決定することは、一致するネクストホップエントリに応じて、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定することを含む。
【０１００】
例４３は例３３から４２のいずれかの主題を含み、ネクストホップコンピューティングノードを決定することは、ローカルネクストホップテーブルに追加されたネクストホップエントリに一致することに基づいて、異なるコンピューティングノードがネクストホップコンピューティングノードであると決定することを含む。
【０１０１】
例４４は粗粒度の負荷分散と細粒度の負荷分散との間をブリッジする方法を含み、当該方法は、クラスタコンピューティングデバイスの第１コンピューティングノードが、クラスタコンピューティングデバイスの第２コンピューティングノードから、第２コンピューティングノードを示すネットワークフロー情報及びネクストホップ情報を含むマルチキャストネットワークパケットを受信する段階と、第１コンピューティングノードが、第２コンピューティングノードから受信されたマルチキャストネットワークパケットからのネットワークフロー情報に基づいて、ネットワークフローエントリを第１コンピューティングノードのローカルフローテーブルに追加する段階と、第１コンピューティングノードが、第２コンピューティングノードから受信されたマルチキャストネットワークパケットからのネクストホップ情報に基づいて、ネクストホップエントリを第１コンピューティングノードのローカルネクストホップテーブルに追加する段階と、を含み、第１コンピューティングノードのローカルネクストホップテーブルに追加されたネクストホップエントリは、第１コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリと関連付けられる。
【０１０２】
例４５は例４４の主題を含み、第１コンピューティングノードのローカルネクストホップテーブルは、複数のネクストホップエントリを含み、複数のネクストホップエントリの各ネクストホップエントリは、ローカルフローテーブルの複数のネットワークフローエントリのうちの異なるネットワークフローエントリと関連付けられ、第２コンピューティングノードから受信されたマルチキャストネットワークパケットのネクストホップ情報は、第２コンピューティングノードと関連付けられたインターネットプロトコルアドレスを含み、第１コンピューティングノードのローカルネクストホップテーブルに追加されたネクストホップエントリは、第２コンピューティングノードと関連付けられたインターネットプロトコルアドレスと、第１コンピューティングノードのローカルネクストホップテーブルに格納された複数のネクストホップエントリにおける互いのネクストホップエントリから、追加されたネクストホップエントリを一意に識別するネクストホップインデックスと、第２コンピューティングノードと関連付けられたインターネットプロトコルアドレスに対応する媒体アクセス制御アドレスと、を含む。
【０１０３】
例４６は例４４および４５の主題を含み、第１コンピューティングノードが、第２コンピューティングノードと関連付けられたインターネットプロトコルアドレスに対応する媒体アクセス制御アドレスを決定する段階と、第１コンピューティングノードが、決定された媒体アクセス制御アドレスと共にローカルネクストホップテーブルに追加されたネクストホップエントリの媒体アクセス制御アドレスを設定する段階と、を更に含む。
【０１０４】
例４７は例４４から４６のいずれかの主題を含み、第１コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、第１コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから、追加されたネットワークフローエントリを一意に識別するフロー識別子と、第１コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリと関連付けられたローカルネクストホップテーブルにおける複数のネクストホップエントリからネクストホップエントリを一意に識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、第１コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプと、を含む。
【０１０５】
例４８は例４４から４７のいずれかの主題を含み、第２コンピューティングノードから受信されたマルチキャストネットワークパケットのネットワークフロー情報は、フロータプル及びフロー識別子を含む。
【０１０６】
例４９は例４４から４８のいずれかの主題を含み、第１コンピューティングノードが、第２コンピューティングノードからのマルチキャストネットワークパケットの受信に応答して、ネットワークフローと関連付けられた複数のネットワークパケットがクラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔からから処理されるべきであることを示すべく、ローカルフローテーブルに追加されたネットワークフローエントリのネクストホップタイプを設定する段階を更に含む。
【０１０７】
例５０は例４４から４９のいずれかの主題を含み、ローカルフローテーブルは複数のネットワークフローエントリを含み、第１コンピューティングノードのローカルフローテーブルの各ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、第１コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから、ネットワークフローエントリを一意に識別するフロー識別子と、ネットワークフローエントリと関連付けられたローカルネクストホップテーブルの複数のネクストホップエントリからネクストホップエントリを一意に識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、第１コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む。
【０１０８】
例５１は例４４から５０のいずれかの主題を含み、第１コンピューティングノードが、リモートコンピューティングデバイスからネットワークパケットを受信する段階と、第１コンピューティングノードが、５タプルの受信されたネットワークパケットを決定する段階と、第１コンピューティングノードが、５タプルの受信されたネットワークパケットと一致するフロータプルを含むネットワークフローエントリを複数のネットワークフローエントリから決定すべく、第１コンピューティングノードのローカルフローテーブルでフロールックアップ操作を実行する段階と、第１コンピューティングノードが、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットが第１コンピューティングノードによってローカルに処理されるべきであることを示すか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すかを決定する段階と、第１コンピューティングノードが、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すとの決定に応じて、ネットワークパケットを処理する段階と、第１コンピューティングノードが、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがクラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すとの決定に応じて、受信されたネットワークパケットをクラスタコンピューティングデバイスのネクストホップコンピューティングノードに転送する段階と、を更に含む。
【０１０９】
例５２は例４４から５１の主題を含み、第１コンピューティングノードが、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定する段階を更に含む。
【０１１０】
例５３は例４４から５２のいずれかの主題を含み、複数のネクストホップエントリのうち一致するネクストホップエントリを決定すべく、第１コンピューティングノードが、決定されたネットワークフローエントリと関連付けられたネクストホップインデックスに応じて、第１コンピューティングノードのローカルネクストホップテーブルでネクストホップルックアップ操作を実行する段階を更に含み、ネクストホップコンピューティングノードを決定する段階は、一致するネクストホップエントリに応じて、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定する段階を含む。
【０１１１】
例５４は例４４から５３のいずれかの主題を含み、ネクストホップコンピューティングノードを決定する段階は、ローカルネクストホップテーブルに追加されたネクストホップエントリに一致することに基づいて、第２コンピューティングノードがネクストホップコンピューティングノードであると決定する段階を含む。
【０１１２】
例５５は、粗粒度の負荷分散と細粒度の負荷分散との間をブリッジするクラスタコンピューティングデバイスのコンピューティングノードを含み、コンピューティングノードは、プロセッサと、プロセッサによって実行された場合にコンピューティングノードに例４４から５４のいずれかの方法を実行させる複数の命令をその内部に格納したメモリとを備える。
【０１１３】
例５６は、実行されたことに応じて、結果としてクラスタコンピューティングデバイスのコンピューティングノードが例４４から５４のいずれかの方法を実行することになる、そこに格納された複数の命令を備える、１または複数の機械可読媒体を含む。
【０１１４】
例５７は粗粒度の負荷分散と細粒度の負荷分散との間をブリッジするクラスタコンピューティングデバイスのコンピューティングノードを含み、コンピューティングノードは、クラスタコンピューティングデバイスの異なるコンピューティングノードから、異なるコンピューティングノードを示すネットワークフロー情報及びネクストホップ情報を含むマルチキャストネットワークパケットを受信する手段と、異なるコンピューティングノードから受信されたマルチキャストパケットからのネットワークフロー情報に基づいて、ネットワークフローエントリをコンピューティングノードのローカルフローテーブルに追加する手段と、異なるコンピューティングノードから受信されたマルチキャストパケットからのネクストホップ情報に基づいて、ネクストホップエントリをコンピューティングノードのローカルネクストホップテーブルに追加する手段と、を含み、コンピューティングノードのローカルネクストホップテーブルに追加されたネクストホップエントリは、コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリと関連付けられる。
【０１１５】
例５８は例５７の主題を含み、コンピューティングノードのローカルネクストホップテーブルは、複数のネクストホップエントリを含み、複数のネクストホップエントリの各ネクストホップエントリは、ローカルフローテーブルの複数のネットワークフローエントリのうちの異なるネットワークフローエントリと関連付けられ、異なるコンピューティングノードから受信されたマルチキャストネットワークパケットのネクストホップ情報は、異なるコンピューティングノードと関連付けられたインターネットプロトコルアドレスを含み、コンピューティングノードのローカルネクストホップテーブルに追加されたネクストホップエントリは、異なるコンピューティングノードと関連付けられたインターネットプロトコルアドレスと、コンピューティングノードのローカルネクストホップテーブルに格納された複数のネクストホップエントリにおける互いのネクストホップエントリから、追加されたネクストホップエントリを一意に識別するネクストホップインデックスと、異なるコンピューティングノードと関連付けられたインターネットプロトコルアドレスに対応する媒体アクセス制御アドレスと、を含む。
【０１１６】
例５９は例５７および５８のいずれかの主題を含み、異なるコンピューティングノードと関連付けられたインターネットプロトコルアドレスに対応する媒体アクセス制御アドレスを決定する手段と、決定された媒体アクセス制御アドレスと共にローカルネクストホップテーブルに追加されたネクストホップエントリの媒体アクセス制御アドレスを設定する手段と、を更に含む。
【０１１７】
例６０は例５７から５９のいずれかの主題を含み、コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから、追加されたネットワークフローエントリを一意に識別するフロー識別子と、コンピューティングノードのローカルフローテーブルに追加されたネットワークフローエントリと関連付けられたローカルネクストホップテーブルにおける複数のネクストホップエントリからネクストホップエントリを一意に識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプと、を含む。
【０１１８】
例６１は例５７から６０のいずれかの主題を含み、異なるコンピューティングノードから受信されたマルチキャストパケットから受信されたネットワークフロー情報は、フロータプル及びフロー識別子を含む。
【０１１９】
例６２は例５７から６１のいずれかの主題を含み、異なるコンピューティングノードからのマルチキャストネットワークパケットの受信に応答して、ネットワークフローと関連付けられた複数のネットワークパケットがクラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔からから処理されるべきであることを示すべく、ローカルフローテーブルに追加されたネットワークフローエントリのネクストホップタイプを設定する手段を更に含む。
【０１２０】
例６３は例５７から６２のいずれかの主題を含み、ローカルフローテーブルは複数のネットワークフローエントリを含み、コンピューティングノードのローカルフローテーブルの各ネットワークフローエントリは、ネットワークフローと関連付けられた複数のネットワークパケットの発信元及び宛先を示すフロータプルと、コンピューティングノードのローカルフローテーブルに格納された複数のネットワークフローエントリの互いのネットワークフローエントリから、ネットワークフローエントリを一意に識別するフロー識別子と、ネットワークフローエントリと関連付けられたローカルネクストホップテーブルの複数のネクストホップエントリからネクストホップエントリを一意に識別するネクストホップインデックスと、ネットワークフローと関連付けられた複数のネットワークパケットが、コンピューティングノードによってローカルに処理されるべきか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきかを示すネクストホップタイプとを含む。
【０１２１】
例６４は例５７から６３のいずれかの主題を含み、リモートコンピューティングデバイスからネットワークパケットを受信する手段と、５タプルの受信されたネットワークパケットを決定する手段と、５タプルの受信されたネットワークパケットと一致するフロータプルを含むネットワークフローエントリを複数のネットワークフローエントリから決定すべく、コンピューティングノードのローカルフローテーブルでフロールックアップ操作を実行する手段と、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すか、又は、クラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すかを決定する手段と、決定されたネットワークフローエントリと関連付けられたネクストホップタイプが、ネットワークフローと関連付けられた複数のネットワークパケットがコンピューティングノードによってローカルに処理されるべきであることを示すとの決定に応じて、ネットワークパケットを処理する手段と、決定されたネットワークフローエントリと関連付けられたネクストホップエントリが、ネットワークフローと関連付けられた複数のネットワークパケットがクラスタコンピューティングデバイスの他のコンピューティングノードによって遠隔から処理されるべきであることを示すとの決定に応じて、受信されたネットワークパケットをクラスタコンピューティングデバイスのネクストホップコンピューティングノードに転送する手段と、を更に含む。
【０１２２】
例６５は例５７から６４のいずれかの主題を含み、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定する手段を更に含む。
【０１２３】
例６６は例５７から６５のいずれかの主題を含み、複数のネクストホップエントリのうち一致するネクストホップエントリを決定すべく、決定されたネットワークフローエントリと関連付けられたネクストホップインデックスに応じて、コンピューティングノードのローカルネクストホップテーブルでネクストホップルックアップ操作を実行する手段を更に含み、ネクストホップコンピューティングノードを決定する手段は、一致するネクストホップエントリに応じて、受信されたネットワークパケットを処理するクラスタコンピューティングデバイスのネクストホップコンピューティングノードを決定する手段を含む。
【０１２４】
例６７は例５７から６６のいずれかの主題を含み、ネクストホップコンピューティングノードを決定する手段は、ローカルネクストホップテーブルに追加されたネクストホップエントリと一致することに基づいて、異なるコンピューティングノードがネクストホップコンピューティングノードであると決定する手段を含む。
【図１】
2016071860.tif 000003
【図２】
2016071860.tif 000004
【図３】
2016071860.tif 000005
【図４】
2016071860.tif 000006
【図５】
2016071860.tif 000007
【図６】
2016071860.tif 000008
【図７】
2016071860.tif 000009
【図８】
2016071860.tif 000010
【図９】
2016071860.tif 000011
【図１０】
2016071860.tif 000012
【図１１】
2016071860.tif 000013
【外国語明細書】
2016071860000001.pdf