(57)【特許請求の範囲】
【請求項１】
送信ノードと受信ノードが複数の伝送路を介して接続され、該複数の伝送路に対応する複数ｎ個の物理リンクを１つの論理リンクとするリンクアグリゲーションを用い、パケット信号を各物理リンクに分割して送受信を行う並列パケット伝送装置において、
前記送信ノードは、前記ｎ個の物理リンクと同数のｎ個のパケット信号について、入力順にそれぞれのペイロード部のサイズＳ１〜Ｓｎを計算し、さらにそれぞれのペイロード部をｎ個に分割し、ｎ個のパケット信号のｎ分割したペイロード部を１つずつ連結して新たなｎ個のペイロード部を生成し、新たなｎ個のペイロード部に元のパケット信号のサイズＳ１〜Ｓｎの情報を付加して新たなｎ個のパケット信号を生成し、前記ｎ個の物理リンクに出力する手段を備え、
前記受信ノードは、前記ｎ個の物理リンクから前記新たなｎ個のパケット信号を受信し、前記新たなｎ個のパケット信号のペイロード部について、前記サイズＳ１〜Ｓｎをそれぞれｎで除算したデータ長で分割し、前記送信ノードでｎ分割したペイロード部を再構成して前記分割前の元のｎ個のパケット信号を復元する手段を備えた
ことを特徴とする並列パケット伝送装置。
【請求項２】
請求項１に記載の並列パケット伝送装置において、
前記新たなｎ個のパケット信号は、前記分割前の元のｎ個のパケット信号のそれぞれのヘッダ情報と、パケット信号ごとに新たに生成されたＦＣＳ情報が付加された構成である  ことを特徴とする並列パケット伝送装置。
【請求項３】
送信ノードと受信ノードが複数の伝送路を介して接続され、該複数の伝送路に対応する複数ｎ個の物理リンクを１つの論理リンクとするリンクアグリゲーションを用い、パケット信号を各物理リンクに分割して送受信を行う並列パケット伝送方法において、
前記送信ノードは、前記ｎ個の物理リンクと同数のｎ個のパケット信号について、入力順にそれぞれのペイロード部のサイズＳ１〜Ｓｎを計算し、さらにそれぞれのペイロード部をｎ個に分割し、ｎ個のパケット信号のｎ分割したペイロード部を１つずつ連結して新たなｎ個のペイロード部を生成し、新たなｎ個のペイロード部に元のパケット信号のサイズＳ１〜Ｓｎの情報を付加して新たなｎ個のパケット信号を生成し、前記ｎ個の物理リンクに出力する各手順を実行し、
前記受信ノードは、前記ｎ個の物理リンクから前記新たなｎ個のパケット信号を受信し、前記新たなｎ個のパケット信号のペイロード部について、前記サイズＳ１〜Ｓｎをそれぞれｎで除算したデータ長で分割し、前記送信ノードでｎ分割したペイロード部を再構成して前記分割前の元のｎ個のパケット信号を復元する各手順を実行する
ことを特徴とする並列パケット伝送方法。
【請求項４】
請求項３に記載の並列パケット伝送方法において、
前記新たなｎ個のパケット信号に、前記分割前の元のｎ個のパケット信号のそれぞれのヘッダ情報と、パケット信号ごとに新たに生成されたＦＣＳ情報を付加する手順を実行する
ことを特徴とする並列パケット伝送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを分割したパケット信号を複数の伝送経路を介して同時に伝送する並列パケット伝送装置および方法に関する。
【背景技術】
【０００２】
データ通信を行うネットワークとして、データをパケット信号に分割して転送するパケット通信ネットワークがある。イーサネット（登録商標）等の規格はその物理的な特性を規定しており、その１リンクの伝送においては、送信ノードにて可変長のパケット信号に通信データを分割して収容し、受信ノードにおいてそれらを連結して復元することで、データの正しい伝送を実現する。イーサネットは、主に一施設内程度の規模・距離までで用いられるＬＡＮ（Local Area Network）向けの技術であるが、広域イーサネットなどの名称でより広い範囲のネットワークにおいてもそのパケットのフォーマット（フレームフォーマット）が使用されることがある。
【０００３】
パケット通信ネットワークにおいて、その伝送速度は規格で定義された速度であり、例えばイーサネット 10Base-Ｔ規格においては10Ｍbps 、イーサネット 100Base-TX においては 100Ｍbps までとなる。伝送速度を増加するには、さらに高速度の規格に伝送路を変更することが普通であるが、例えば銅線から光ファイバケーブルへの変更のように伝送媒体の変更に伴って新規格ケーブルの設置工事が必要となる。また、数メートル単位〜数十キロメートル単位まで様々である伝送可能距離の変更に伴い、中継器の設置工事が必要となるため、伝送速度を増加するための伝送路の変更は容易ではない。
【０００４】
この他に、複数の物理ポートを用いて１つの論理ポートを構成するリンクアグリゲーション技術（ＬＡＧ）がある。この技術では、送信ノードで通信データを可変長のパケット信号へ分割収容した後、論理ポートを構成する物理ポートのいずれかへ何らかのルールに従って振り分ける。受信ノードにおいては論理ポートを構成する物理ポート群から受信されたパケット群を集約して論理ポートの出力とすることで、送信ノードと受信ノードの間に、使用された物理ポート群の伝送速度の和を最大とする論理的な伝送路を提供することができる。このようなリンクアグリゲーション技術は、同規格の伝送路を並列に増設し、論理ポートを構成する物理ポートに加えることで、比較的容易に高速な伝送速度を得ることができる。
【０００５】
リンクアグリゲーション技術および類似の伝送路並列化技術においては、送信ノードにおける振り分けのルール、受信ノードにおける集約のルールが伝送路の品質や特性を決定する上で重要である。以下に２つの例を示す。
【０００６】
第１の例として、Linux （登録商標）カーネルモジュールであるbonding で提供されるイーサネット用のbalance-rrアルゴリズムがある（非特許文献１）。これはラウンドロビン型の振り分けを提供し、イーサネットフレーム単位で出力する物理ポートを順番に選択して出力することで、使用された物理ポート群の伝送速度の和を最大とする伝送速度を達成することができる。実際にはイーサネットフレームが可変長であるため、物理ポートごとに負荷の偏りが生じ、最大速度が達成されることは少ない。ただし、単純なラウンドロビンを行う代わりに、物理ポートのキュー長やこれまでの投入データ量から物理ポートの負荷を計算し、その負荷などに基づいてフレームの割り当て確率を増減させる、重みづけラウンドロビン型のアルゴリズムに拡張し、パラメータを適切に定めることで、最大速度に近い速度を達成することが可能である。その振り分け例を図５に示す。
【０００７】
図５において、送信データはパケット列Ｐ1,Ｐ2,Ｐ3,…であり、各パケットには宛先等を含むヘッダ情報としてＯＨ1,ＯＨ2,ＯＨ3,…、ペイロード部としてＤ1,Ｄ2,Ｄ3,…、ＦＣＳ（Frame Check Sequence）部としてＦ1,Ｆ2,Ｆ3,…が付属している。各パケット列は、重み付けラウンドロビンにより各ポート＃１〜＃４に順に振り分けられる。ここで、パケット列Ｐ1 をポート＃１に振り分け、パケット列Ｐ2 〜Ｐ4 をポート＃２〜＃４に順に振り分け、パケット列Ｐ5 は負荷が増大したポート＃１を避けてポート＃２に振り分ける。
【０００８】
このようなラウンドロビン方式では、物理的な伝送路が個別に持つ伝送遅延やその揺らぎにより、送信ノードにおいて送信されたパケットの順序が受信側で逆転する場合がある。実際の通信においては伝送路上でＴＣＰ／ＩＰなどのコネクション管理を行うプロトコルを用いて通信することが多く、パケットの順序逆転が起こる伝送路上ではスループットが低下する問題がある。伝送路が長距離になるほどこの問題は顕著となることから、広域イーサネットに類するサービスでラウンドロビン型またはそれに類するアルゴリズムによるパケット振り分けを行うリンクアグリゲーション技術を用いて伝送路を構築することは適切ではない。
【０００９】
これを解決するため、送信時にパケットにシーケンス番号等順序の手がかりとなる情報（例えばシーケンス番号）を埋め込み、受信側でパケット群を一定時間バッファリングし、手がかりを元に順序逆転を回復して出力する方法も存在する。ただし、順序逆転を回復する装置は、論理ポートの速度と同等かそれ以上の動作速度を求められること、バッファリングのために大量のバッファメモリを必要とすることから、物理ポートの追加のみで高速化が得られる利点を相殺してしまう。また、シーケンス番号を埋め込んだ特殊なパケットフォーマットを採用する必要があり、物理リンク規格の改造が必要である。
【００１０】
第２の例として、コネクションに固有な情報、例えばＭＡＣアドレスや、ＴＣＰのポート番号などをハッシュ化した情報などを用いて、コネクションごとに同じ物理ポートに収容されるような振り分けを実施する方法がある。その一例を図６に示す。
【００１１】
図６において、シリアルデータをフレームごとではなく、フローごとに各ポートに振り分ける。フローとは、例えば「ＴＣＰ／ＩＰなどのある１コネクションに属するパケット群」として定義し、そのフローの中での順序逆転が起こらない限り、ＴＣＰスループットへの影響はないものとする。すなわち、フロー＃１のパケット列Ｐ1,Ｐ2,Ｐ3,Ｐ5,Ｐ6 をポート＃１に振り分け、フロー＃２のパケット列Ｐ4,Ｐ7 をポート＃２に振り分ける。
【００１２】
多数ユーザで伝送路を共有している場合、フロー毎に収容される物理リンクが分散されることで、伝送路全体としては使用された物理ポート群の伝送速度の和を最大とする伝送速度を達成することが期待される。この方法によれば、通常同一の物理ポート内ではパケットの順序逆転が発生しないため、フロー単位ではパケットの順序逆転が発生せず、したがってＴＣＰ／ＩＰ等を使用する場合のスループット低下を防ぐことができる。
【００１３】
しかし、１コネクションに割り当てられるハッシュ値が１値固定であることから、例えば１ユーザが当該伝送路を専有する時の最高速度は１物理ポートの速度に制限され、論理ポートの最大容量を得ることはできない。また、ハッシュ値の計算結果は物理ポート個別の負荷状況によらず常に一定であるため、通信負荷の高いコネクションが１つまたはいくつかのハッシュ値に集中する可能性があり、その場合は物理ポートごとに負荷の偏りが生じ、伝送路の容量は減耗する。
【先行技術文献】
【非特許文献】
【００１４】
【非特許文献１】湧川  他、「複数インターフェースを利用した並列通信手法の実ネットワークにおける検証」、信学技報、RCS2011-355 (2012-03)
【発明の概要】
【発明が解決しようとする課題】
【００１５】
図５に示すラウンドロビンまたはそれに類する振り分け法においては、物理リンク規格の流用が可能で、論理リンク速度の最大化が期待できるが、パケットの順序が保持されない課題がある。また、順序補償機能を加えたラウンドロビン型の手法では、論理リンク速度の最大化、パケットの順序保持が可能であるが、物理リンク規格の改造が必要になる課題がある。
【００１６】
図６に示すハッシュ値を用いる、またはそれに類する振り分け法では、物理リンク規格の流用が可能であり、パケットの順序保持が可能であるが、１ユーザが使用できる論理リンク速度は高々物理リンク速度１本分に制限されてしまう課題がある。
【００１７】
本発明は、リンクアグリゲーション技術を用いて物理リンク群を束ねた論理リンクを構成する時に、パケットの順序を保持した伝送特性と、物理リンク群のリンク速度総和に漸近する論理リンク速度と、物理リンク規格を流用し振り分け集約装置の追加のみで構成できる流用性を同時に得ることができる並列パケット伝送装置および方法を提供することを目的とする。
【課題を解決するための手段】
【００１８】
第１の発明は、送信ノードと受信ノードが複数の伝送路を介して接続され、該複数の伝送路に対応する複数ｎ個の物理リンクを１つの論理リンクとするリンクアグリゲーションを用い、パケット信号を各物理リンクに分割して送受信を行う並列パケット伝送装置において、送信ノードは、ｎ個の物理リンクと同数のｎ個のパケット信号について、入力順にそれぞれのペイロード部のサイズＳ１〜Ｓｎを計算し、さらにそれぞれのペイロード部をｎ個に分割し、ｎ個のパケット信号のｎ分割したペイロード部を１つずつ連結して新たなｎ個のペイロード部を生成し、新たなｎ個のペイロード部に元のパケット信号のサイズＳ１〜Ｓｎの情報を付加して新たなｎ個のパケット信号を生成し、ｎ個の物理リンクに出力する手段を備え、受信ノードは、ｎ個の物理リンクから新たなｎ個のパケット信号を受信し、新たなｎ個のパケット信号のペイロード部について、サイズＳ１〜Ｓｎをそれぞれｎで除算したデータ長で分割し、送信ノードでｎ分割したペイロード部を再構成して分割前の元のｎ個のパケット信号を復元する手段を備える。
【００１９】
第１の発明の並列パケット伝送装置において、新たなｎ個のパケット信号は、分割前の元のｎ個のパケット信号のそれぞれのヘッダ情報と、パケット信号ごとに新たに生成されたＦＣＳ情報が付加された構成である。
【００２０】
第２の発明は、送信ノードと受信ノードが複数の伝送路を介して接続され、該複数の伝送路に対応する複数ｎ個の物理リンクを１つの論理リンクとするリンクアグリゲーションを用い、パケット信号を各物理リンクに分割して送受信を行う並列パケット伝送方法において、送信ノードは、ｎ個の物理リンクと同数のｎ個のパケット信号について、入力順にそれぞれのペイロード部のサイズＳ１〜Ｓｎを計算し、さらにそれぞれのペイロード部をｎ個に分割し、ｎ個のパケット信号のｎ分割したペイロード部を１つずつ連結して新たなｎ個のペイロード部を生成し、新たなｎ個のペイロード部に元のパケット信号のサイズＳ１〜Ｓｎの情報を付加して新たなｎ個のパケット信号を生成し、ｎ個の物理リンクに出力する各手順を実行し、受信ノードは、ｎ個の物理リンクから新たなｎ個のパケット信号を受信し、新たなｎ個のパケット信号のペイロード部について、サイズＳ１〜Ｓｎをそれぞれｎで除算したデータ長で分割し、送信ノードでｎ分割したペイロード部を再構成して分割前の元のｎ個のパケット信号を復元する各手順を実行する。
【００２１】
第２の発明の並列パケット伝送方法において、新たなｎ個のパケット信号に、分割前の元のｎ個のパケット信号のそれぞれのヘッダ情報と、パケット信号ごとに新たに生成されたＦＣＳ情報を付加する手順を実行する。
【発明の効果】
【００２２】
本発明は、リンクアグリゲーション技術を用いて物理リンク群を束ねた論理リンクを構成する時に、物理リンク数ｎに応じたｎ個のパケット信号のペイロード部をそれぞれｎ分割し、ｎ分割したペイロード部を１つずつ連結して新たなｎ個のパケット信号を構成して各物理リンクに出力するので、パケットの順序を保持した伝送特性と、物理リンク群のリンク速度総和に漸近する論理リンク速度と、物理リンク規格を流用し振り分け集約装置の追加のみで構成できる流用性を同時に得ることができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の並列パケット伝送装置および方法の動作原理を説明する図である。
【図２】本発明の並列パケット伝送装置の構成例を示す図である。
【図３】送信ノードのＳＷ機能部１３の構成例を示す図である。
【図４】受信ノードのＳＷ機能部１３の構成例を示す図である。
【図５】重み付けラウンドロビン振り分け例を説明する図である。
【図６】ハッシュ振り分け例を説明する図である。
【発明を実施するための形態】
【００２４】
図１は、本発明の並列パケット伝送装置および方法の制御原理を示す。
ここでは、イーサネット形式のフレームを用いて説明するが、本発明はパケット通信型のフォーマットを持つ伝送技術一般に適用可能である。
【００２５】
論理ポートが物理ポート＃１〜＃ｎのｎポート（図１ではｎ＝４）で構成されているシステムを想定する。送信ノードにおいて、送信すべきデータはパケット列Ｐ1,Ｐ2,Ｐ3,…で到着する。各パケットには、宛先等を含むヘッダ情報としてＯＨ1,ＯＨ2,ＯＨ3,…、ペイロード部としてＤ1,Ｄ2,Ｄ3,…、ＦＣＳ部としてＦ1,Ｆ2,Ｆ3,…が付属しており、受信端においてこれが保持される必要がある。上位プロトコルには物理リンク規格がサポートする最大のＭＴＵ（Maximum Transfer Unit ）の値から２バイトを減算した値（イーサネットの場合は1500→1498）を通知しておくものとする。
【００２６】
本発明においては、送信ノードにおいて到着したパケット列を物理ポート数ｎに対応するｎ個ずつ区切り、Ｐ1 〜Ｐn 、Ｐ(n+1）〜Ｐ(2n ）、Ｐ(2n+1)〜Ｐ(3n ）、…のまとまりで取り扱う。送信ノードは、ｎ個のパケット列Ｐ1 〜Ｐn が全て到着するまでデータをバッファリングした後、物理ポート＃ｍ（ｍは１〜ｎ）に投入されるフレームは、ヘッダ情報としてＯＨm 、ｎ個のうちｍ番目のパケット列のペイロード部Ｄm のサイズを示す新たな２バイトの整数値フィールドとしてＳm 、ペイロード部としてＤm をそれぞれｎ分割したデータＤm-1 〜Ｄm-n の１つをつなげたもの、新しいフレーム情報で再生成したＦＣＳ部Ｆm'により構成される。
【００２７】
すなわち、
物理ポート＃１のフレームは、ＯＨ1 ＋Ｓ1 ＋Ｄ1-1 ＋Ｄ2-1 ＋Ｄ3-1 ＋Ｄ4-1 ＋Ｆ1'、物理ポート＃２のフレームは、ＯＨ2 ＋Ｓ2 ＋Ｄ1-2 ＋Ｄ2-2 ＋Ｄ3-2 ＋Ｄ4-2 ＋Ｆ2'、物理ポート＃３のフレームは、ＯＨ3 ＋Ｓ3 ＋Ｄ1-3 ＋Ｄ2-3 ＋Ｄ3-3 ＋Ｄ4-3 ＋Ｆ3'、物理ポート＃４のフレームは、ＯＨ4 ＋Ｓ4 ＋Ｄ1-4 ＋Ｄ2-4 ＋Ｄ3-4 ＋Ｄ4-4 ＋Ｆ4'となる。
【００２８】
本変換によって生成されるフレームは、元のフレームにおいて最小のＭＴＵ（イーサネットでは64bytes ）を運搬する時のサイズより小さくなることはなく、最大のＭＴＵを運搬する時のサイズを超えて大きくなることはない。よって、物理リンクの規格に変更を加えず伝送が可能である。
【００２９】
受信ノードでは、ｎ個に分割されたフレームが全て到着するまでバッファリングを行い、送信側と逆の変換を行うことで送信ノードで入力されたフレーム列を順序も含めて復元する。元のペイロード長はＳ1 〜Ｓn のサイズ情報を用いて判別することが可能である。  
【００３０】
図２は、本発明の並列パケット伝送装置の構成例を示す。ここでは、イーサネットスイッチに適用し、複数の物理ポート間でリンクアグリゲーションを行う構成を示す。
【００３１】
図２において、送受信ノードは、イーサネットスイッチ１０とＯＴＮ伝送装置５０により構成される。送受信ノード間の伝送路は、イーサネットパケットを運搬できるものであれば方式を問わない。例えば、広域イーサネットサービスを模した伝送路として、物理ポートの先を各々並列化されたＯＴＮ伝送装置５０を介して伝送される。
【００３２】
イーサネットスイッチ１０は、既知のイーサネットスイッチと同等の構成である。簡単のため片方向の通信経路のみを示すが、全てのモジュールは送受信の両方に対応して動作できるものとする。ＰＨＹ／ＭＡＣ機能部１１およびＭＡＣ／ＰＨＹ機能部１２は、物理的なポート毎に設けられ、イーサネットの物理層信号とイーサネットフレームを示す情報との間の変換を行う。ＳＷ機能部１３は、各物理ポートのイーサネットフレームからヘッダを読み出し、所定のルールにより宛先の物理ポートへの振り分けを行う。本発明は、このＳＷ機能部１３において、イーサネットフレームに図１に示す加工を行い、複数の物理ポートへの送出を行う構成である。また、受信ノードのＳＷ機能部１３において本発明の合流処理を行う。
【００３３】
図３は、送信ノードのＳＷ機能部１３の構成例を示す。ここでは、論理ポート下に４つの物理ポートを束ねて接続し、４つのイーサネットフレーム毎にサイズ平均化処理を行う構成を示す。
【００３４】
図３において、本発明で用いる複数の物理ポートがまとめられた論理ポートを宛先としたイーサネットフレームは、宛先ＭＡＣアドレスなどによってそれを表示し、入力ポート＃１〜＃ｓからＳＷ機能部１３に流入することで、ヘッダ識別・振分部３１によってＬＡＧ用仮想キュー３２に蓄積される。
【００３５】
蓄積されたフレームは、４並列されたデータ処理ルートに１フレームずつ順番に送出され、サイズ計算部３３で各々ペイロードのサイズ計算を受け、サイズをＳ１〜Ｓ４のメモリに格納する。次に、ヘッダ分解部３４で、ヘッダおよびフッタ（イーサネットにおいてはＦＣＳであり、ＦＣＳ以外のデータを元にリアルタイムに計算され付加される）を分離され、ヘッダ部はＯＨ１〜ＯＨ４のメモリに格納される。残ったペイロード部は４等分されてサイズ平均化メモリ３５の各列に格納される。ここで、サイズ平均化メモリ３５は、４×４の16マスの平面のアドレスが振られており、各マスはペイロード最大サイズの１／４のサイズを持つ。４つ目のデータ格納が終わった時点で出力が始まり、出力はヘッダ部ＯＨ１〜ＯＨ４、サイズ部Ｓ１〜Ｓ４、サイズ平均化メモリ３５のタテ列を順番に読み出して作成される。出力は４並列で実行され、変換されたフレームは改めてＦＣＳ部Ｆ1'〜Ｆ4'が付加され、本発明の方式で束ねられた物理ポート＃１〜＃４に同時に出力される。
【００３６】
図４は、受信ノードのＳＷ機能部１３の構成例を示す。
図４において、受信ノードのＳＷ機能部１３は、各並列化された物理ポートからの入力をヘッダ分離部４１に入力し、ヘッダを取り出してＯＨ１〜ＯＨ４メモリに保存する。次に、サイズ部Ｓ１〜Ｓ４を取り出し、各々を４で除算した値をデータ長さとしてペイロードを区切り、サイズ平均化メモリ４２の各行に順番に格納する。全てのデータがそろった時点でヘッダ部、ペイロードとしてサイズ平均化メモリ４２を横方向に１行分読み出し、ＦＣＳ部Ｆ１〜Ｆ４を改めて計算して付加することでフレームを復元する。並列・直列変換のためラウンドロビン型の読み出しを行い、ヘッダ識別・振分部４３でヘッダを識別して宛先ポート別にポート別仮想キュー４４に振り分けることで、送信側との論理リンクを確立する。
【符号の説明】
【００３７】
１０  イーサネットスイッチ
１１  ＰＨＹ／ＭＡＣ機能部
１２  ＭＡＣ／ＰＨＹ機能部
１３  ＳＷ機能部
３１  ヘッダ識別・振分部
３２  ＬＡＧ用仮想キュー
３３  サイズ計算部
３４  ヘッダ分解部
３５  サイズ平均化メモリ
４１  ヘッダ分離部
４２  サイズ平均化メモリ
４３  ヘッダ識別・振分部
４４  ポート別仮想キュー
５０  ＯＴＮ伝送装置
ＯＨ  ヘッダ部
Ｓ    サイズ部
Ｄ    ペイロード部
Ｆ    ＦＣＳ部
【図１】
0006377577.tif 000002
【図２】
0006377577.tif 000003
【図３】
0006377577.tif 000004
【図４】
0006377577.tif 000005
【図５】
0006377577.tif 000006
【図６】
0006377577.tif 000007