(57)【要約】【課題】トラフィックを平滑化してフレームロスの抑制を図る。【解決手段】通信装置１ａは、中継コネクタ３を介して通信装置１ｂから送信された負荷情報を受信し、負荷情報にもとづき振分情報である重み付けをフレーム処理装置２−１、・・・、２−ｎに設定して重み付けにもとづいて第１のフレームをフレーム処理装置２−１、・・・、２−ｎに送信する。さらに通信装置１ａは、第１のフレームの送信状態を示す送信情報を、中継コネクタ３を介して通信装置１ｂへ出力する。通信装置１ｂは、送信情報にもとづく重み付けの設定を指示するための負荷情報を生成し、中継コネクタ３を介して通信装置１ａへ負荷情報を出力する。【選択図】図１
2019106653.tif 000002
【特許請求の範囲】
【請求項１】
第１の通信装置と、第２の通信装置と、前記第１の通信装置から受信した第１のフレームを処理して第２のフレームを生成し、前記第２のフレームを前記第２の通信装置に送信する複数のフレーム処理装置と、
を備え、
前記第１の通信装置は、
振分情報にもとづいて前記第１のフレームを前記複数のフレーム処理装置に振り分けて送信し、前記複数のフレーム処理装置への前記第１のフレームの送信に関する送信情報を生成し、前記送信情報を前記第２の通信装置に通知し、前記第２の通信装置から通知される前記複数のフレーム処理装置の負荷状況に関する負荷情報にもとづいて前記振分情報を更新する第１の制御部を備え、
前記第２の通信装置は、
前記複数のフレーム処理装置から受信した前記第２のフレームの受信状況に関する受信情報と、前記第１の通信装置から通知される前記送信情報とから前記負荷情報を生成し、前記負荷情報を前記第１の通信装置に通知する第２の制御部を備える、
通信システム。
【請求項２】
前記フレーム処理装置は、変換、逆変換のフレーム処理を行う請求項１記載の通信システム。
【請求項３】
前記送信情報は、前記第１のフレームをいずれの前記フレーム処理装置に送信したかを示す送信先情報と、前記送信先情報に対応する前記フレーム処理装置への前記第１のフレームの送信時刻とを少なくとも含む請求項１記載の通信システム。
【請求項４】
前記第２の制御部は、
前記送信時刻と、前記送信先情報に対応する前記フレーム処理装置から受信した前記第２のフレームの受信時刻との差分を算出し、
前記差分を累積した累積値と閾値とを比較して、前記累積値が前記閾値以上の場合、前記負荷情報を通知する、
請求項３記載の通信システム。
【請求項５】
前記送信情報は、前記第１のフレームをいずれの前記フレーム処理装置に送信したかを示す送信先情報を少なくとも含む請求項１記載の通信システム。
【請求項６】
前記第２の制御部は、
前記送信先情報に対応する前記フレーム処理装置から受信した前記第２のフレームのフレーム数を累積し、
累積した累積値と閾値とを比較して、前記累積値が前記閾値以上の場合、前記負荷情報を通知する、
請求項５記載の通信システム。
【請求項７】
第１のフレームを処理して第２のフレームを生成する複数のフレーム処理装置に対して通信を行う通信装置において、
前記複数のフレーム処理装置へ前記第１のフレームを送信して自装置が送信側通信装置になる場合、振分情報にもとづいて前記第１のフレームを前記複数のフレーム処理装置に振り分けて送信し、前記複数のフレーム処理装置への前記第１のフレームの送信に関する送信情報を生成し、前記送信情報を受信側通信装置に通知し、前記受信側通信装置から通知される前記複数のフレーム処理装置の負荷状況に関する負荷情報にもとづいて前記振分情報を更新し、前記複数のフレーム処理装置から送信された前記第２のフレームを受信して自装置が前記受信側通信装置になる場合、前記第２のフレームを受信して生成した前記第２のフレームの受信状況に関する受信情報と、前記送信側通信装置から通知される前記送信情報とから前記負荷情報を生成し、前記負荷情報を前記送信側通信装置に通知する制御部、
を有する通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システムおよび通信装置に関する。
【背景技術】
【０００２】
通信ネットワークでは、レイヤ２のレベルで通信が行われることがある。レイヤ２通信は、スイッチ等のレイヤ２ノードを介して、イーサネット（登録商標、以下省略）等のレイヤ２プロトコルで流れる技術である。レイヤ２通信では、中継する通信装置によってフレームに所定の変換を施し、他通信装置に送信することがある。
【０００３】
フレームを変換する理由としては、例えば、フレームをカプセル化／暗号化して盗聴を防ぐ場合や、特定のプロトコルのデータをレイヤ２フレーム化することで、レイヤ２ネットワークに対応することができるようにする場合などが挙げられる。
【０００４】
一方、近年の通信ネットワークは、伝送容量の増大に伴ってトラフィックの負荷も著しく増加している。このため、負荷に耐え切れずにネットワークダウンが生じることのないよう、負荷を分散させる負荷分散の技術が開発されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−２４２７５１号公報
【特許文献２】特開２００５−２７３０４号公報
【特許文献３】特開２０１０−１０３６１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
レイヤ２通信では、例えば、レイヤ２のスイッチの複数のポート毎に通信装置が接続され、複数の通信装置でフレームの変換が行われる。また、スイッチには、負荷分散を行うために、リンクアグリゲーション（Link Aggregation）が設定されている。リンクアグリゲーションは、複数の物理回線を仮想的な１つの回線とみなす接続方式である。
【０００７】
しかし、リンクアグリゲーションは、ＭＡＣ（Media Access Control）アドレスやＩＰ（Internet Protocol）アドレスを元に算出されたハッシュ値からスイッチのポートを分散してフレームを出力するので、通信状態によっては負荷が効率よく分散されない場合がある。
【０００８】
例えば、送信元ＭＡＣアドレスにもとづいてリンクアグリゲーションによる負荷分散が行われる場合、特定の端末からフレームが出力され続けると、負荷が分散されずにトラフィックに偏りが生じる。
【０００９】
このようなことがレイヤ２通信を行うシステムで生じると、トラフィックの偏りによって特定の通信装置にトラフィックが集中し、該通信装置でフレームを処理できずにフレームロスが発生してしまう。
【００１０】
１つの側面では、本発明は、トラフィックを平滑化してフレームロスの抑制を図った通信システムおよび通信装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、通信システムが提供される。通信システムは、第１の通信装置と、第２の通信装置と、第１の通信装置から受信した第１のフレームを処理して第２のフレームを生成し、第２のフレームを第２の通信装置に送信する複数のフレーム処理装置とを備える。第１の通信装置は第１の制御部を備え、第２の通信装置は第２の制御部を備える。
【００１２】
第１の制御部は、振分情報にもとづいて第１のフレームを複数のフレーム処理装置に振り分けて送信し、複数のフレーム処理装置への第１のフレームの送信に関する送信情報を生成し、送信情報を第２の通信装置に通知し、第２の通信装置から通知される複数のフレーム処理装置の負荷状況に関する負荷情報にもとづいて振分情報を更新する。第２の制御部は、複数のフレーム処理装置から受信した第２のフレームの受信状況に関する受信情報と、第１の通信装置から通知される送信情報とから負荷情報を生成し、負荷情報を第１の通信装置に通知する。
【００１３】
また、上記課題を解決するために、上記第１、第２の通信装置と同様の制御を実行する通信装置が提供される。
【発明の効果】
【００１４】
１側面によれば、トラフィックを平滑化してフレームロスの抑制を図ることが可能になる。
【図面の簡単な説明】
【００１５】
【図１】通信システムの構成の一例を示す図である。
【図２】トラフィック偏りが生じる場合の通信システムの構成の一例を示す図である。
【図３】通信システムの構成の一例を示す図である。
【図４】通信装置のハードウェア構成の一例を示す図である。
【図５】通信装置の機能ブロックの一例を示す図である。
【図６】通信システムの動作シーケンスの一例を示す図である。
【図７】負荷分散側の通信装置の動作の一例を示すフローチャートである。
【図８】非負荷分散側の通信装置の動作の一例を示すフローチャートである。
【図９】フレームフォーマットの一例を示す図である。
【図１０】フレームフォーマットの一例を示す図である。
【図１１】フレームフォーマットの一例を示す図である。
【図１２】送信情報フレームのフォーマットの一例を示す図である。
【図１３】送信情報フレームのフォーマットの一例を示す図である。
【図１４】通信システムの変形例の動作シーケンスを示す図である。
【図１５】非負荷分散側の通信装置で形成されるテーブルの一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本実施の形態について図面を参照して説明する。
［第１の実施の形態］
第１の実施の形態の通信システムについて図１を用いて説明する。図１は通信システムの構成の一例を示す図である。通信システム１−１は、通信装置１ａ（第１の通信装置）、通信装置１ｂ（第２の通信装置）およびフレーム処理装置２−１、・・・、２−ｎを備える。
【００１７】
また、通信装置１ａは、制御部１ａ−１（第１の制御部）を含み、通信装置１ｂは、制御部１ｂ−１（第２の制御部）を含む。また、通信装置１ａ、１ｂは、中継コネクタ３を介して互いに接続されている。なお、フレーム処理装置の接続に使用するポートに空きがあれば、中継コネクタ３を介さずに、その空きポートを介して通信装置１ａ、１ｂが互いに接続する構成にしてもよい。
【００１８】
〔ステップＳ１〕制御部１ａ−１は、振分情報にもとづいて、重み付けをフレーム処理装置２−１、・・・、２−ｎに設定し、設定した重み付けでフレーム処理装置２−１、・・・、２−ｎに対して、第１のフレームを送信する。
【００１９】
〔ステップＳ２〕制御部１ａ−１は、中継コネクタ３を介して送信情報を通信装置１ｂに通知する。送信情報は、第１のフレームの送信状態を示す情報である（例えば、第１のフレームの送信時刻等）。
【００２０】
〔ステップＳ３〕フレーム処理装置２−１、・・・、２−ｎは、第１のフレームを受信すると、フレーム処理を行い（例えば、フレームの変換処理等）、第２のフレームを生成して通信装置１ｂに送信する。
【００２１】
〔ステップＳ４〕制御部１ｂ−１は、第２のフレームおよび送信情報を受信する。
〔ステップＳ５〕制御部１ｂ−１は、フレーム処理装置２−１、・・・、２−ｎから受信したフレームの受信状況に関する受信情報と、中継コネクタ３を介して通信装置１ａから通知された送信情報と、にもとづいて負荷情報を生成する。なお、受信情報は、通信装置１ｂの各ポートにおけるフレーム受信履歴である。制御部１ｂ−１は、例えば、フレーム受信履歴の数が所定数を超えるポートを検出した場合、負荷情報の生成を行う。
【００２２】
〔ステップＳ６〕制御部１ｂ−１は、中継コネクタ３を介して通信装置１ａへ負荷情報を通知する。
〔ステップＳ７〕制御部１ａ−１は、中継コネクタ３を介して通信装置１ｂから通知された負荷情報を受信する。
【００２３】
〔ステップＳ８〕制御部１ａ−１は、負荷情報にもとづき振分情報を更新する。すなわち、通信装置１ａは、通知された負荷情報にもとづいて、現状の重み付け設定を変更し、変更後の重み付けを設定する。そして、通信装置１ａは、変更後の重み付けでフレーム処理装置２−１、・・・、２−ｎに対して、第１のフレームを送信することになる。
【００２４】
このように、通信システム１−１は、通信装置１ａではフレームの送信と、該フレームの送信状態を示す送信情報の通知とを行い、通信装置１ｂは、送信情報にもとづいて負荷情報を通信装置１ａにフィードバック出力する。
【００２５】
これにより、通信システム１−１は、受信側から通知された負荷情報にもとづいて重み付けを変更してフレーム送信を行うので、フレーム処理装置２−１、・・・、２−ｎに対して効率よく負荷分散を行ってトラフィックを平滑化することができ、フレームロスを抑制することが可能になる。
【００２６】
＜トラフィック偏りが生じる場合の通信システムの構成＞
本発明の技術の詳細を説明する前に、トラフィック偏りが生じるシステム構成について図２を用いて説明する。
【００２７】
図２はトラフィック偏りが生じる場合の通信システムの構成の一例を示す図である。通信システム２００は、レイヤ２スイッチ２０ａ、２０ｂ、端末３１、・・・、３７、通信装置２１、・・・、２７およびネットワーク（例えば、レイヤ２ネットワーク）ｎｗを備える。
【００２８】
レイヤ２スイッチ２０ａは、ネットワークｎｗと、通信装置２５、２６、２７に接続する。レイヤ２スイッチ２０ｂは、端末３５、３６、３７と、通信装置２５、２６、２７に接続する。
【００２９】
通信装置２１は、ネットワークｎｗと、端末３１に接続し、通信装置２２は、ネットワークｎｗと、端末３２に接続する。通信装置２３は、ネットワークｎｗと、端末３３に接続し、通信装置２４は、ネットワークｎｗと、端末３４に接続する。
【００３０】
一方、レイヤ２スイッチ２０ａには、通信装置２５、２６、２７との通信に対してリンクアグリゲーションＬＡ１が設定されている。また、レイヤ２スイッチ２０ｂには、通信装置２５、２６、２７との通信に対してリンクアグリゲーションＬＡ２が設定されている。
【００３１】
〔ステップＳ１０〕端末３１、・・・、３４は、フレームｆ１、・・・、ｆ４をそれぞれ送信する。
〔ステップＳ１１〕通信装置２１は、端末３１から送信されたフレームｆ１を受信すると、フレームｆ１を変換して変換後フレームｃ１を生成して、ネットワークｎｗに向けて送信する。
【００３２】
〔ステップＳ１２〕通信装置２２は、端末３２から送信されたフレームｆ２を受信すると、フレームｆ２を変換して変換後フレームｃ２を生成して、ネットワークｎｗに向けて送信する。
【００３３】
〔ステップＳ１３〕通信装置２３は、端末３３から送信されたフレームｆ３を受信すると、フレームｆ３を変換して変換後フレームｃ３を生成して、ネットワークｎｗに向けて送信する。
【００３４】
〔ステップＳ１４〕通信装置２４は、端末３４から送信されたフレームｆ４を受信すると、フレームｆ４を変換して変換後フレームｃ４を生成して、ネットワークｎｗに向けて送信する。
【００３５】
〔ステップＳ１５〕ネットワークｎｗからレイヤ２スイッチ２０ａへ向けて変換後フレームｃ１、・・・、ｃ４が流れる。
〔ステップＳ１６〕レイヤ２スイッチ２０ａは、変換後フレームｃ１、・・・、ｃ４を受信すると、リンクアグリゲーションＬＡ１によって指定されるポートから変換後フレームｃ１、・・・、ｃ４を出力する。図２の例では、レイヤ２スイッチ２０ａは、受信した変換後フレームｃ１、・・・、ｃ４すべてを同一ポート（通信装置２５に接続されるポート）から出力している。
【００３６】
〔ステップＳ１７〕通信装置２５は、変換後フレームｃ１、・・・、ｃ４を受信すると、変換後フレームｃ１、・・・、ｃ４の逆変換を行ってフレーム（変換前フレーム）ｆ１、・・・、ｆ４を生成し、フレームｆ１、・・・、ｆ４をレイヤ２スイッチ２０ｂへ送信する。
【００３７】
〔ステップＳ１８〕レイヤ２スイッチ２０ｂは、フレームｆ１、・・・、ｆ４を受信すると、宛先毎にスイッチング出力する。
図２の例では、レイヤ２スイッチ２０ｂは、端末３１から送信されたフレームｆ１を端末３５へ送信し、端末３２から送信されたフレームｆ２を端末３６へ送信している。また、レイヤ２スイッチ２０ｂは、端末３３から送信されたフレームｆ３を端末３６へ送信し、端末３４から送信されたフレームｆ４を端末３７へ送信している。
【００３８】
上記のように、レイヤ２通信を行う通信システム２００では、複数の通信装置がレイヤ２スイッチに並列に接続され、また、レイヤ２に設定されたリンクアグリゲーションによって負荷分散が行われる。
【００３９】
しかし、レイヤ２スイッチに設定されるリンクアグリゲーションでは、負荷の集中度に関係なく、単にＭＡＣアドレスを元に算出されたハッシュ値から該スイッチのポートを分散して出力しているだけである。
【００４０】
このため、トラフィックに偏りが生じて、特定の通信装置にトラフィックが集中する可能性があり、図２の例では通信装置２５にトラフィックが集中している。この場合、通信装置２５の性能が受信フレームの処理に及ばなく、すべての受信フレームを処理できない場合、フレームロスが発生して通信品質の低下を引き起こすことになる。
【００４１】
本発明はこのような点に鑑みてなされたものであり、トラフィックを平滑化してフレームロスの抑制を図った通信システムおよび通信装置を提供するものである。
［第２の実施の形態］
次に第２の実施の形態について説明する。まず、システム構成について説明する。図３は通信システムの構成の一例を示す図である。通信システム１−２は、通信装置１０ａ、１０ｂ、通信装置２１、・・・、２７、端末３１、・・・、３７およびネットワークｎｗを備える。
【００４２】
通信装置１０ａは、図１の通信装置１ａの機能を有し、通信装置１０ｂは、図１の通信装置１ｂの機能を有する。また、通信装置１０ａ、１０ｂは、レイヤ２スイッチのスイッチング機能を有する。通信装置２１、・・・、２７は、フレームの変換／逆変換を行い、図１のフレーム処理装置２−１、・・・、２−ｎにそれぞれ対応する。
【００４３】
通信装置１０ａは、ネットワークｎｗに接続し、さらにポートｐ１、ｐ２、ｐ３を通じて通信装置２５、２６、２７にそれぞれ接続する。通信装置１０ｂは、端末３５、３６、３７に接続し、さらにポートｐ４、ｐ５、ｐ６を通じて通信装置２５、２６、２７にそれぞれ接続する。また、通信装置１０ａ、１０ｂは、中継コネクタ（中継ライン）３で互いに接続される。
【００４４】
通信装置２１は、ネットワークｎｗと、端末３１に接続し、通信装置２２は、ネットワークｎｗと、端末３２に接続する。通信装置２３は、ネットワークｎｗと、端末３３に接続し、通信装置２４は、ネットワークｎｗと、端末３４に接続する。
【００４５】
ここで、端末同士は、透過的にフレームの送受信を行う。また、通信装置は自身の配下にどの端末が接続されているかを学習するため、端末側では特に意識することなく通信を行うことができる。なお、以降の説明では、通信装置１０ａ、１０ｂを総称する場合は通信装置１０、通信装置２５、２６、２７を総称する場合は通信装置２０と呼ぶ場合がある。
【００４６】
＜ハードウェア構成＞
図４は通信装置のハードウェア構成の一例を示す図である。通信装置１０は、プロセッサ１００によって装置全体が制御されている。すなわち、プロセッサ１００は、通信装置１０の制御部として機能する。
【００４７】
プロセッサ１００には、バス１０３を介して、メモリ１０１および複数の周辺機器が接続されている。プロセッサ１００は、マルチプロセッサであってもよい。プロセッサ１００は、例えば、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＰＬＤ（Programmable Logic Device）である。またプロセッサ１００は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【００４８】
メモリ１０１は、通信装置１０の主記憶装置として使用される。メモリ１０１には、プロセッサ１００に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ１０１には、プロセッサ１００による処理に要する各種データが格納される。
【００４９】
また、メモリ１０１は、通信装置１０の補助記憶装置としても使用され、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。メモリ１０１は、補助記憶装置として、フラッシュメモリやＳＳＤ（Solid State Drive）等の半導体記憶装置やＨＤＤ（Hard Disk Drive）等の磁気記録媒体を含んでもよい。
【００５０】
バス１０３に接続されている周辺機器としては、入出力インタフェース１０２およびネットワークインタフェース１０４がある。入出力インタフェース１０２は、プロセッサ１００からの命令にしたがって通信装置１０の状態を表示する表示装置として機能するモニタ（例えば、ＬＥＤ（Light Emitting Diode）やＬＣＤ（Liquid Crystal Display）等）が接続されている。
【００５１】
また、入出力インタフェース１０２は、キーボードやマウス等の情報入力装置を接続可能であって、情報入力装置から送られてくる信号をプロセッサ１００に送信する。
さらにまた、入出力インタフェース１０２は、周辺機器を接続するための通信インタフェースとしても機能する。例えば、入出力インタフェース１０２は、レーザ光等を利用して、光ディスクに記録されたデータの読み取りを行う光学ドライブ装置を接続することができる。光ディスクには、Ｂｌｕ−ｒａｙＤｉｓｃ（登録商標）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（Rewritable）等がある。
【００５２】
また、入出力インタフェース１０２は、メモリ装置やメモリリーダライタを接続することができる。メモリ装置は、入出力インタフェース１０２との通信機能を搭載した記録媒体である。メモリリーダライタは、メモリカードへのデータの書き込み、またはメモリカードからのデータの読み出しを行う装置である。メモリカードは、カード型の記録媒体である。
【００５３】
ネットワークインタフェース１０４は、図３に示したネットワークｎｗや通信装置２０とのインタフェース制御を行い、例えば、ＮＩＣ（Network Interface Card）、無線ＬＡＮ（Local Area Network）カード等が使用できる。ネットワークインタフェース１０４で受信されたデータは、メモリ１０１やプロセッサ１００に出力される。
【００５４】
以上のようなハードウェア構成によって、通信装置１０の処理機能を実現することができる。例えば、通信装置１０は、プロセッサ１００がそれぞれ所定のプログラムを実行することで本発明の制御を行うことができる。
【００５５】
通信装置１０は、例えば、コンピュータで読み取り可能な記録媒体に記録されたプログラムを実行することにより、本発明の処理機能を実現する。通信装置１０に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。
【００５６】
例えば、通信装置１０に実行させるプログラムを補助記憶装置に格納しておくことができる。プロセッサ１００は、補助記憶装置内のプログラムの少なくとも一部を主記憶装置にロードし、プログラムを実行する。
【００５７】
また、光ディスク、メモリ装置、メモリカード等の可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えば、プロセッサ１００からの制御により、補助記憶装置にインストールされた後、実行可能となる。またプロセッサ１００が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００５８】
＜機能ブロック＞
図５は通信装置の機能ブロックの一例を示す図である。通信装置１０は、制御部１１、記憶部１２およびインタフェース部１３を備える。また、通信装置１０は、上述の中継コネクタ３が接続される中継ポート３ａと、複数の通信装置２０およびネットワークｎｗに接続されるポートｐ１、・・・、ｐｍとを備える。
【００５９】
インタフェース部１３は、中継ポート３ａおよびポートｐ１、・・・、ｐｍを通じて受信したフレームやデータの受信インタフェース処理を行い、また制御部１１から送信されるフレームやデータの送信インタフェース処理を行う。
【００６０】
制御部１１は、フレーム送受信制御を行い、フレーム送信制御部１１ａとフレーム受信制御部１１ｂを含む。
フレーム送信制御部１１ａは、複数の通信装置２０へ第１のフレームを送信して自装置が送信側通信装置（通信装置１０ａ）になる場合、振分情報にもとづいて第１のフレームを複数の通信装置２０に振り分けて送信する。
【００６１】
また、フレーム送信制御部１１ａは、複数の通信装置２０への第１のフレームの送信に関する送信情報を生成し、送信情報を受信側通信装置（通信装置１０ｂ）に通知し、受信側通信装置から通知される複数の通信装置２０の負荷状況に関する負荷情報にもとづいて振分情報を更新する。
【００６２】
フレーム受信制御部１１ｂは、複数の通信装置２０から送信された第２のフレームを受信して自装置が受信側通信装置になる場合、第２のフレームを受信して生成した第２のフレームの受信状況に関する受信情報と、送信側通信装置から通知される送信情報とから負荷情報を生成する。そして、フレーム受信制御部１１ｂは、負荷情報を送信側通信装置に通知する。記憶部１２は、負荷分散を行う際の重み付け係数の値や、通信装置１０の動作にかかわる制御情報等を記憶する。
【００６３】
なお、制御部１１は、図４に示したプロセッサ１００によって実現され、記憶部１２は、図４に示したメモリ１０１によって実現される。また、インタフェース部１３は、図４に示したネットワークインタフェース１０４によって実現される。
【００６４】
＜通信システムの動作＞
次に通信システム１−１の動作について説明する。図６は通信システムの動作シーケンスの一例を示す図である。
【００６５】
〔ステップＳ２１〕通信装置１０ａは、ネットワークｎｗを介して送信された変換後フレームを受信する。
〔ステップＳ２２〕通信装置１０ａは、複数の通信装置２０に対して、ラウンドロビンにもとづいて順番に変換後フレームを送信する。なお、初期運用時、ラウンドロビンの重み付け係数（振分情報に該当）は、通信装置１０ａのすべてのポートにおいて同じ値であるとする。
【００６６】
例えば、通信装置１０ａの３つのポートｐ１、ｐ２、ｐ３それぞれに、通信装置２５、２６、２７が接続されている場合、初期運用時のラウンドロビンの重み付け係数は、通信装置２５、２６、２７において同じ値（比率）である。
【００６７】
〔ステップＳ２３ａ〕通信装置１０ａは、変換後フレームの通信装置２０への送信時、中継コネクタ３を介して送信情報を通信装置１０ｂに送信する。送信情報は、変換後フレームをどの通信装置に送信したかを示す送信先情報と、該送信先情報に対応する通信装置への変換後フレームの送信時刻とが少なくとも含まれる。
【００６８】
なお、通信装置１０ａの１つのポートに１台の通信装置が接続されるので、変換後フレームをどの通信装置に送信したかを示す送信先情報は、通信装置が接続されているポートの番号に対応付けることができる。したがって、以降の説明では、上記の送信先情報はポート番号として説明する。
【００６９】
〔ステップＳ２３ｂ〕通信装置１０ｂは、中継コネクタ３を介して送信情報を受信する。
〔ステップＳ２４〕通信装置２０は、変換後フレームを受信した場合、変換後フレームの逆変換を行い、変換前フレームを生成する。
【００７０】
〔ステップＳ２５ａ〕通信装置２０は、変換前フレームを通信装置１０ｂに送信する。
〔ステップＳ２５ｂ〕通信装置１０ｂは、変換前フレームを受信する。
〔ステップＳ２６〕通信装置１０ｂは、変換前フレームを受信すると、送信情報に含まれるポート番号に該当するポート毎に差分時間を累積する。
【００７１】
なお、送信情報に含まれるポート番号に該当するポート（通信装置１０ａのポート）と、変換前フレームを受信した通信装置１０ｂのポートとは１：１に対応するので、結局、変換前フレームを受信したポート毎に差分時間を累積することになる。
【００７２】
差分時間は、送信情報に含まれる変換後フレームの送信時刻と、変換前フレームの受信時刻との差分である。この差分時間は、通信装置１０ａが変換後フレームを通信装置２０に送信してから、通信装置２０で逆変換され、通信装置２０から送信された変換前フレームを通信装置１０ｂで受信するまでに要する時間に相当する。
【００７３】
〔ステップＳ２７〕通信装置１０ｂは、ポート毎の差分時間を所定時間累積し、差分時間の累積値と、あらかじめ設定した閾値とを比較する。
〔ステップＳ２８〕通信装置１０ｂは、あるポートの累積値が閾値以上になった場合、該ポートに接続されている通信装置に対するラウンドロビンの重み付け係数の変更指示（負荷情報に該当）を、中継コネクタ３を介して通信装置１０ａに対して送信する。
【００７４】
例えば、通信装置１０ａのポートｐ２における累積値が閾値以上になった場合、通信装置１０ｂは、通信装置１０ａのポートｐ２に接続される通信装置２６のトラフィックが他の通信装置２５、２７よりも大きくなっていることを検出する。
【００７５】
この場合、通信装置１０ｂは、通信装置２６へ送信されている変換後フレームを他の通信装置２５、２７に振り分けるために、通信装置２６に対する重み付け係数の値を小さくするための変更指示を通信装置１０ａに送信する。
【００７６】
〔ステップＳ２９〕通信装置１０ａは、重み付け係数の変更指示を受信すると、変更指示にもとづいて、ラウンドロビンの重み付け係数の設定を変更する。
すなわち、通信装置１０ａは、ポートｐ２に接続される通信装置２６に対する重み付け係数の値を小さくするための変更指示を受信した場合、例えば、通信装置２５：通信装置２６：通信装置２７＝１０：９：１０となるように重み付け係数の比率を変更する。このような制御が繰り返されることにより、通信装置２５、２６、２７への変換後フレームのトラフィックが平滑化される。したがって、特定の通信装置にトラフィックが集中することを防ぐことができ、フレームロスを抑制することができる。
【００７７】
＜通信装置の動作＞
次に通信装置１０ａ、１０ｂの動作について図７、図８を用いて説明する。図７は負荷分散側の通信装置の動作の一例を示すフローチャートである。負荷分散側の通信装置１０ａの動作を示している。
【００７８】
〔ステップＳ３１〕通信装置１０ａは、ネットワークｎｗを介して送信された変換後フレームを受信する。
〔ステップＳ３２〕通信装置１０ａは、複数の通信装置２０に対して、ラウンドロビンにもとづいて順番に変換後フレームを送信する。
【００７９】
〔ステップＳ３３〕通信装置１０ａは、どのポートから変換後フレームが送信されたかを示すポート番号と、変換後フレームの送信時刻とが少なくとも含まれる送信情報を、中継コネクタ３を介して通信装置１０ｂに送信する。
【００８０】
〔ステップＳ３４〕通信装置１０ａは、通信装置１０ｂから中継コネクタ３を介して送信された重み付け係数の変更指示を受信する。
〔ステップＳ３５〕通信装置１０ａは、受信した変更指示にもとづいて、ラウンドロビンの重み付け係数の設定を変更する。
【００８１】
図８は非負荷分散側の通信装置の動作の一例を示すフローチャートである。非負荷分散側の通信装置１０ｂの動作を示している。
〔ステップＳ４１〕通信装置１０ｂは、中継コネクタ３を介して、通信装置１０ａから送信された送信情報を受信する。
【００８２】
〔ステップＳ４２〕通信装置１０ｂは、通信装置２０から送信された変換前フレームを受信する。
〔ステップＳ４３〕通信装置１０ｂは、変換前フレームを受信すると、送信情報に含まれる送信時刻と、変換前フレームの受信時刻とにもとづいて、ポート毎に差分時間を所定時間累積する。
【００８３】
〔ステップＳ４４〕通信装置１０ｂは、ポート毎に累積した差分時間の累積値と、あらかじめ設定した閾値とを比較する。累積値が閾値以上の場合、ステップＳ４５へ処理が進み、累積値が閾値未満の場合、ステップＳ４３へ処理が戻る。
【００８４】
〔ステップＳ４５〕通信装置１０ｂは、あるポートの累積値が閾値以上になった場合、該ポートに接続されている通信装置に対するラウンドロビンの重み付け係数の変更指示を、中継コネクタ３を介して通信装置１０ａに対して送信する。
【００８５】
＜フレームフォーマット＞
次にフレームフォーマットについて図９から図１３を用いて説明する。なお、イーサネットフレームに適用した例について説明する。
【００８６】
図９はフレームフォーマットの一例を示す図である。端末から通信装置２０へ流れるフレームｆ１０のフォーマットを示している。フレームｆ１０は、ヘッダ部ｆ１１、データ部ｆ１２およびトレーラ部ｆ１３を含む。
【００８７】
ヘッダ部ｆ１１は、イーサネット通信を行う際に付加されるヘッダであり、宛先ＭＡＣアドレス、送信元ＭＡＣアドレスおよびタイプの各フィールドを含む。宛先ＭＡＣアドレスフィールドには、宛先となる端末のＭＡＣアドレスが設定される。送信元ＭＡＣアドレスフィールドには、送信元となる端末のＭＡＣアドレスが設定される。タイプフィールドには、フレームに使用される上位層プロトコルのＩＤが設定される（例えば、ＶＬＡＮ（Virtual Local Area Network）を示すＩＤが設定される）。
【００８８】
データ部ｆ１２は、ＩＰヘッダ（ＴＣＰ（Transmission Control Protocol）ヘッダがＩＰヘッダの後段に設置されてもよい）および送信したいサービス情報であるデータが設定される。トレーラ部ｆ１３は、フレームのエラーを検出するためのＦＣＳ（Frame Check Sequence）が設定されるフィールドである。
【００８９】
なお、ＦＣＳは、ヘッダ部およびデータ部の各フィールドから計算され、また、受信側でも同様にＦＣＳが計算され、ＦＣＳの値と一致しない場合はエラーが発生したと判断されて、そのフレームは破棄される。
【００９０】
図１０はフレームフォーマットの一例を示す図である。通信装置と通信装置との間を流れるフレームｆ２０のフォーマットを示している。フレームｆ２０は、ヘッダ部ｆ２１、データ部ｆ２２およびトレーラ部ｆ２３を含む。
【００９１】
ヘッダ部ｆ２１は、宛先ＭＡＣアドレス、送信元ＭＡＣアドレスおよびタイプの各フィールドを含む。宛先ＭＡＣアドレスフィールドには、宛先となる通信装置のＭＡＣアドレスが設定される。送信元ＭＡＣアドレスフィールドには、送信元となる通信装置のＭＡＣアドレスが設定される。タイプフィールドには、フレームに使用される上位層プロトコルのＩＤが設定される（例えば、ＶＬＡＮのＩＤ）。
【００９２】
データ部ｆ２２は、ヘッダおよび送信したいサービス情報であるデータが設定される。なお、ヘッダフィールドには、変換されたデータを逆変換するために要する情報が設定される。また、データには、図９で上述したフレームｆ１０が変換されたデータが含まれる。
【００９３】
フレームｆ２０の生成では、まず、フレームｆ１０にヘッダが付与されて変換のためのカプセル化が行わる。そして、カプセル化が施された情報に対して、通信装置間で要するヘッダ部ｆ２１およびトレーラ部ｆ２３が付与されて、フレームｆ２０が生成される。
【００９４】
図１１はフレームフォーマットの一例を示す図である。通信装置から端末へ流れるフレームｆ３０のフォーマットを示している。フレームｆ３０は、ヘッダ部ｆ３１、データ部ｆ３２およびトレーラ部ｆ３３を含む。
【００９５】
ヘッダ部ｆ３１は、宛先ＭＡＣアドレス、送信元ＭＡＣアドレスおよびタイプの各フィールドを含む。宛先ＭＡＣアドレスフィールドには、宛先となる端末のＭＡＣアドレスが設定される。送信元ＭＡＣアドレスフィールドには、送信元となる端末のＭＡＣアドレスが設定される。タイプフィールドには、フレームに使用される上位層プロトコルのＩＤが設定される（例えば、ＶＬＡＮを示すＩＤ）。
【００９６】
データ部ｆ３２は、ＩＰヘッダおよび送信したいサービス情報であるデータが設定される。トレーラ部ｆ３３は、フレームのエラーを検出するためのＦＣＳが設定される。
図１２は送信情報フレームのフォーマットの一例を示す図である。送信情報をフレーム化して送信する場合のフォーマット例である。送信情報フレームｆ４０は、中継コネクタ３を介して、通信装置１０ａから通信装置１０ｂへ送信され、ヘッダ部ｆ４１、データ部ｆ４２およびトレーラ部ｆ４３を含む。
【００９７】
ヘッダ部ｆ４１は、宛先ＭＡＣアドレス、送信元ＭＡＣアドレスおよびタイプの各フィールドを含む。宛先ＭＡＣアドレスフィールドおよび送信元ＭＡＣアドレスフィールドは、ダミーフィールドである。タイプフィールドには、任意の固定値が設定される。
【００９８】
データ部ｆ４２は、送信情報のポート番号および送信時刻が設定される。トレーラ部ｆ４３は、フレームのエラーを検出するためのＦＣＳが設定される。
図１３は送信情報フレームのフォーマットの一例を示す図である。送信情報をフレーム化して送信する場合のフォーマット例である。送信情報フレームｆ５０は、中継コネクタ３を介して、通信装置１０ｂから通信装置１０ａへ送信され、ヘッダ部ｆ５１、データ部ｆ５２およびトレーラ部ｆ５３を含む。
【００９９】
ヘッダ部ｆ５１は、宛先ＭＡＣアドレス、送信元ＭＡＣアドレスおよびタイプの各フィールドを含む。宛先ＭＡＣアドレスフィールドおよび送信元ＭＡＣアドレスフィールドは、ダミーフィールドである。タイプフィールドには、任意の固定値が設定される。
【０１００】
データ部ｆ５２は、重み付け係数の変更指示が設定される。トレーラ部ｆ５３は、フレームのエラーを検出するためのＦＣＳが設定される。
以上説明したように、第２の実施の形態によれば、通信装置１０ａは、並列に接続した通信装置に対してラウンドロビンで変換後フレームを順次送信すると同時に、対向の通信装置１０ｂに対して送信情報を、中継コネクタ３を介して送信する。
【０１０１】
また、通信装置１０ｂは、受信した送信情報にもとづき上記の差分時間を算出し、差分時間の累積値と閾値とを比較する。そして、通信装置１０ｂは、累積値が閾値以上の場合、通信装置１０ａに対して重み付け係数（重み付け比率）の変更依頼を行う。これにより、通信装置で行われる通信のトラフィックが平滑化される。
【０１０２】
なお、上記では、通信装置１０ａからの変換後フレーム出力、通信装置２０の逆変換による変換前フレーム出力、通信装置１０ｂの変換前フレーム受信という順に処理されるフレームの流れを対象にした場合の通信装置１０ａの重み付け設定変更について示した。
【０１０３】
これに対し、通信装置１０ｂからの変換前フレーム出力、通信装置２０の変換による変換後フレームの出力、通信装置１０ａの変換後フレーム受信という順に処理されるフレームの流れを対象にした場合の通信装置１０ｂの重み付け設定変更についても、上記と同様な制御が適用される。
【０１０４】
＜変形例＞
次に変形例の動作について説明する。上記では、変換後フレームの送信時刻と、変換前フレームの受信時刻との差分時間の累積値が閾値以上になった場合、通信装置に対するラウンドロビンの重み付け係数の変更を行うものとした。これに対し、変形例では、所定時間内に受信した変換前フレームの数が閾値以上になった場合、通信装置に対するラウンドロビンの重み付け係数の変更を行うものである。
【０１０５】
図１４は通信システムの変形例の動作シーケンスを示す図である。
〔ステップＳ５１〕通信装置１０ａは、ネットワークｎｗを介して送信された変換後フレームを受信する。
【０１０６】
〔ステップＳ５２〕通信装置１０ａは、複数の通信装置２０に対して、ラウンドロビンにもとづいて順番に変換後フレームを送信する。なお、初期運用時、ラウンドロビンの重み付け係数は、通信装置１０ａのすべてのポートにおいて同じ値であるとする。
【０１０７】
〔ステップＳ５３〕通信装置１０ａは、中継コネクタ３を介して送信情報を通信装置１０ｂに送信する。変形例における送信情報は、通信装置１０ａのどのポートから変換後フレームが送信されたかを示すポート番号が少なくとも含まれる。
【０１０８】
〔ステップＳ５４〕通信装置２０は、変換後フレームを受信した場合、変換後フレームの逆変換処理を行い、変換前フレームを生成する。
〔ステップＳ５５〕通信装置２０は、変換前フレームを通信装置１０ｂに送信する。
【０１０９】
〔ステップＳ５６〕通信装置１０ｂは、変換前フレームを受信すると、ポート番号が示すポート毎に（変換前フレームを受信したポート毎に）変換前フレームのフレーム数を累積する。
【０１１０】
〔ステップＳ５７〕通信装置１０ｂは、ポート毎に所定時間累積したフレーム数の累積値と、あらかじめ設定した閾値とを比較する。
〔ステップＳ５８〕通信装置１０ｂは、あるポートの累積値が閾値以上になった場合、該ポートに接続されている通信装置に対するラウンドロビンの重み付け係数の変更指示を、中継コネクタ３を介して通信装置１０ａに対して送信する。
【０１１１】
〔ステップＳ５９〕通信装置１０ａは、重み付け係数の変更指示を受信すると、変更指示にもとづいて、ラウンドロビンの重み付け係数の設定を変更する。
図１５は非負荷分散側の通信装置で形成されるテーブルの一例を示す図である。非負荷分散側の通信装置１０ｂは、送信情報を受信するとテーブルＴ１を形成する。テーブルＴ１は、図５に示した記憶部１２で管理される。
【０１１２】
テーブルＴ１は、項目として、通信装置、ポート番号およびフレーム数を含む。通信装置は、通信装置１０ｂに接続される通信装置が登録される。ポート番号は、通信装置１０ａが変換後フレームを送信する際の通信装置１０ａのポートの番号である。フレーム数は、通信装置１０ｂが受信する変換前フレームの数である。
【０１１３】
通信装置１０ｂは、通信装置１０ａから送信される送信情報内のポート番号にもとづいて、ポート番号が示すポートと、通信装置との接続関係を認識し、上記のようなテーブルＴ１を形成する。図１５の例では、通信装置２５は通信装置１０ａのポート番号ｐ１のポートに接続し、通信装置２６は通信装置１０ａのポート番号ｐ２のポートに接続し、通信装置２７は通信装置１０ａのポート番号ｐ３のポートに接続することが示されている。
【０１１４】
通信装置１０ｂは、テーブルＴ１を形成した後、通信装置から変換前フレームを受信すると、該当通信装置のフレーム数の欄にフレーム数をインクリメントしていく。また、通信装置１０ｂは、通信装置毎にフレーム数の閾値を有しており、所定時間内で蓄積したフレーム数と、閾値とを比較する。例えば、通信装置２６のフレーム数は９００を閾値とし、９００以上は過負荷とみなすとする。
【０１１５】
図１５の例では、テーブルＴ１の登録状態が６０秒後にテーブルＴ１ａになったとする。テーブルＴ１ａにおいて、通信装置２６のフレーム数は所定時間内（６０秒）で９００に達している。したがって、通信装置１０ｂは、通信装置２６にトラフィック偏りが生じていることを検出し、通信装置２６に対する重み付け係数の変更指示を通信装置１０ａに送信する。
【０１１６】
通信装置１０ａが、通信装置２６に対する重み付け係数の値を小さくするための変更指示を受信した場合、重み付け係数の比率を例えば、通信装置２５：通信装置２６：通信装置２７＝１０：９：１０となるように変更する。これにより、通信装置２５、２６、２７へ送信される変換後フレームのトラフィックが平滑化される。
【０１１７】
なお、上記の説明では、通信装置の差分時間にもとづいて特定の通信装置のトラフィック偏りを検出する場合と（第２の実施の形態）、通信装置が出力するフレーム数にもとづいて特定の通信装置のトラフィック偏りを検出する場合と（変形例）を別個に示したが、これらの検出動作をシリアルに行ってもよい。
【０１１８】
例えば、最初に通信装置の差分時間にもとづくトラフィック偏りの検出を行って、重み付け係数の設定変更を行い、その後は、通信装置が出力するフレーム数にもとづくトラフィック偏りの検出を行う。このように、異なる制御でトラフィック偏りの検出を行うことで、通信装置の性能に即したトラフィック状態をより高精度に評価することが可能になる。
【０１１９】
または、他の制御としては、リンクアグリゲーションを組み合わせてもよい。例えば、通信装置１０ａには当初リンクアグリゲーションが設定され、初期運用時は、リンクアグリゲーションにもとづいて負荷分散を行って、送信情報を通信装置１０ｂに送信する。
【０１２０】
その後、通信装置１０ｂでトラフィック偏りを検出した場合、通信装置１０ｂは、重み付け設定変更を通信装置１０ａに送信する。通信装置１０ａは、重み付け設定変更を受信すると、リンクアグリゲーションによるポート指定を解除し、通知された重み付け設定にもとづく負荷分散へ切り替える。このような制御を行うことでも、トラフィックを平滑化することができる。
【０１２１】
上記で説明した本発明の通信装置１０の処理機能は、コンピュータによって実現することができる。この場合、通信装置１０が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
【０１２２】
処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等がある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープ等がある。光ディスクには、ＣＤ−ＲＯＭ／ＲＷ等がある。光磁気記録媒体には、ＭＯ（Magneto Optical disk）等がある。
【０１２３】
プログラムを流通させる場合、例えば、そのプログラムが記録されたＣＤ−ＲＯＭ等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１２４】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。
【０１２５】
また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。また、上記の処理機能の少なくとも一部を、ＤＳＰ、ＡＳＩＣ、ＰＬＤ等の電子回路で実現することもできる。
【０１２６】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【符号の説明】
【０１２７】
１−１  通信システム
１ａ、１ｂ  通信装置
１ａ−１、１ｂ−１  制御部
２−１、・・・、２−ｎ  フレーム処理装置
３  中継コネクタ
【図１】
2019106653.tif 000003
【図２】
2019106653.tif 000004
【図３】
2019106653.tif 000005
【図４】
2019106653.tif 000006
【図５】
2019106653.tif 000007
【図６】
2019106653.tif 000008
【図７】
2019106653.tif 000009
【図８】
2019106653.tif 000010
【図９】
2019106653.tif 000011
【図１０】
2019106653.tif 000012
【図１１】
2019106653.tif 000013
【図１２】
2019106653.tif 000014
【図１３】
2019106653.tif 000015
【図１４】
2019106653.tif 000016
【図１５】
2019106653.tif 000017