JP4621044B2 - 負荷分散装置および負荷分散方法 - Google Patents

負荷分散装置および負荷分散方法 Download PDF

Info

Publication number
JP4621044B2
JP4621044B2 JP2005073476A JP2005073476A JP4621044B2 JP 4621044 B2 JP4621044 B2 JP 4621044B2 JP 2005073476 A JP2005073476 A JP 2005073476A JP 2005073476 A JP2005073476 A JP 2005073476A JP 4621044 B2 JP4621044 B2 JP 4621044B2
Authority
JP
Japan
Prior art keywords
message
packet
router
unit
distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005073476A
Other languages
English (en)
Other versions
JP2006261805A (ja
Inventor
將人 奥田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005073476A priority Critical patent/JP4621044B2/ja
Priority to US11/208,735 priority patent/US7864750B2/en
Publication of JP2006261805A publication Critical patent/JP2006261805A/ja
Application granted granted Critical
Publication of JP4621044B2 publication Critical patent/JP4621044B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/60Router architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering

Description

この発明は、マルチキャストデータの転送処理の負荷分散をおこなう負荷分散装置および負荷分散方法に関し、特に、ルータに負担をかけることなくマルチキャストデータの転送処理の負荷分散を実現することができ、高速な転送開始動作をおこなうことが可能な負荷分散装置および負荷分散方法に関するものである。
TCP/IP(Transmission Control Protocol/Internet Protocol)をもちいたネットワークにおいて、多数の端末へ同じ情報を一斉に送信する必要がある場合、マルチキャストが利用されることが多い。具体的には、マルチキャストは、インターネットにおける映像配信などに利用されている。
ユニキャストによる通信では、同じデータを複数の端末へ送信する場合、同じ内容をもつパケットを端末の数だけ生成し、それぞれの端末のIPアドレスを指定して送信する必要がある。マルチキャストをもちいた通信では、マルチキャストアドレスとして割り当てられているアドレスを指定することにより、ひとつのパケットを複数の端末に送信することができる。このため、マルチキャストをもちいた通信では、ネットワークにかかる負荷を小さくすることができる。
複数のネットワークをまたがってマルチキャストによる通信をおこなう場合、マルチキャストルーティングプロトコルと呼ばれるプロトコルをもちいて経路制御をおこなう必要がある。代表的なマルチキャストルーティングプロトコルであるPIM−SM(Protocol Independent Multicast-Sparse Mode)は、Join/Pruneメッセージを使用して、マルチキャストツリーと呼ばれる通信経路を効率的に構築することができる。
PIM−SMを利用するルータ(中継装置)は、定期的に生存確認メッセージを送信して、近接するネットワークのルータに自身の存在を通知する。この生存確認メッセージには、マルチキャストデータの重複転送を防止する役割もある。LAN(Local Area Network)に複数のルータが接続されている場合、それぞれのルータがマルチキャストデータの中継をおこなうと、LAN上に同一のパケットが複数送出される恐れがある。これを防止するため、生存確認メッセージを受信し、同一LAN上に別のルータの存在を確認した場合、最も大きいIPアドレスをもつルータのみがDR(Designated Router)となり、マルチキャストデータの中継を担当する仕組みとなっている。
このように、DRのみがマルチキャストデータの中継をおこなうことにより、マルチキャストデータの重複転送を防止することができるが、大量のマルチキャストデータの処理が必要になった場合、DRの負荷が非常に高くなってしまう。この問題を解決するため、特許文献1では、VRRP(Virtual Router Redundancy Protocol)をもちいて複数のルータを仮想的に1台のルータとして動作させ、転送処理するマルチキャストアドレスを排他的に設定するためのメッセージを交換するように拡張する技術が開示されている。この技術をもちいれば、それぞれのルータが、自身に割り当てられたマルチキャストアドレスのデータの転送処理をおこなうようになり、負荷分散が実現される。
特開2003−23444号公報
しかしながら、特許文献1の技術をもちいる場合、ルータは、PIM−SM等のマルチキャストのための通常のプロトコル以外に、VRRPを動作させなければならず、その分だけ負荷が高くなる。また、ルータ間でメッセージの交換をして転送するマルチキャストアドレスの割当てを決定するため、メッセージ交換がオーバヘッドとなって高速な転送開始動作をおこなうことができない。
この発明は、上述した従来技術による問題点を解消するためになされたものであり、ルータに負担をかけることなくマルチキャストデータの転送処理の負荷分散を実現することができ、高速な転送開始動作をおこなうことが可能な負荷分散装置および負荷分散方法を提供することを目的とする。
上述した課題を解決し、目的を達成するため、本発明は、マルチキャストデータの転送処理をおこなう複数のルータに接続された負荷分散装置であって、受信したパケットの種別を識別するパケット識別手段と、前記パケット識別手段が参加メッセージもしくは離脱メッセージと識別したパケットを記憶手段に記憶された振り分けルールに基づいてルータに排他的に振り分けるメッセージ振り分け手段とを備えたことを特徴とする。
また、本発明は、マルチキャストデータの転送処理をおこなう複数のルータを制御する負荷分散方法であって、受信したパケットの種別を識別するパケット識別工程と、前記パケット識別工程が参加メッセージもしくは離脱メッセージと識別したパケットを記憶手段に記憶された振り分けルールに基づいてルータに排他的に振り分けるメッセージ振り分け工程とを含んだことを特徴とする。
この発明によれば、方路振り分けルールに基づいて端末からの参加メッセージおよび離脱メッセージをルータに振り分けるように構成したので、各ルータに負担をかけることなく転送処理の負荷分散を実現することができる。また、負荷分散のためにルータ間でメッセージの交換をおこなう必要がないので、高速な転送開始動作が可能となる。
また、本発明は、上記の発明において、前記パケット識別手段が生存確認メッセージと識別したパケットを破棄する生存確認メッセージ破棄手段をさらに備えたことを特徴とする。
この発明によれば、ルータから送信される生存確認メッセージを他のルータが受信する前に破棄するように構成したので、LANに複数のルータが接続されている場合に、すべてのルータがマルチキャストデータの転送をおこなう状態にすることができる。
また、本発明は、上記の発明において、前記メッセージ振り分け手段は、ルータの負荷が均等になるように考慮して前記振り分けルールを動的に追加することを特徴とする。
この発明によれば、負荷状況を判断して動的に方路振り分けルールを登録するように構成したので、各ルータの負荷を均等化することができる。
また、本発明は、上記の発明において、ルータの障害を検出する障害検出手段をさらに備え、前記メッセージ振り分け手段は、前記障害検出手段がルータの障害を検出した場合に、該ルータを振り分け先としている振り分けルールを更新し、振り分け先を他のルータに置き換えることを特徴とする。
この発明によれば、ルータの異常が検出された場合は、当該のルータが振り分け先となっている振り分けルールを他のルータを振り分け先として更新するように構成したので、ルータに障害が発生した場合に、転送処理をルータに肩代わりさせることができる。
本発明によれば、方路振り分けルールに基づいて端末からの参加メッセージおよび離脱メッセージをルータに振り分けるように構成したので、各ルータに負担をかけることなく転送処理の負荷分散を実現することができるという効果を奏する。また、負荷分散のためにルータ間でメッセージの交換をおこなう必要がないので、高速な転送開始動作が可能となるという効果を奏する。
また、本発明によれば、ルータから送信される生存確認メッセージを他のルータが受信する前に破棄するように構成したので、LANに複数のルータが接続されている場合に、すべてのルータがマルチキャストデータの転送をおこなう状態にすることができるという効果を奏する。
また、本発明によれば、負荷状況を判断して動的に方路振り分けルールを登録するように構成したので、各ルータの負荷を均等化することができるという効果を奏する。
また、本発明によれば、ルータの異常が検出された場合は、当該のルータが振り分け先となっている振り分けルールを他のルータを振り分け先として更新するように構成したので、ルータに障害が発生した場合に、転送処理をルータに肩代わりさせることができるという効果を奏する。
以下に添付図面を参照して、この発明に係る負荷分散装置および負荷分散方法の好適な実施の形態を詳細に説明する。以下、まず、マルチキャストの仕組みについて簡単に説明し、その後、この発明に係る負荷分散装置および負荷分散方法の説明をおこなうこととする。
(マルチキャストの仕組み)
まず、マルチキャストの仕組みについて簡単に説明する。図25は、マルチキャストをおこなう場合のネットワーク構成の一例を示すサンプル図である。データを送信するサーバ1000は、ルータ2001を介してインターネット100に接続されている。データを受信する端末3001〜3003は、LAN200に接続されている。そして、LAN200は、ルータ2002を介してインターネット100に接続されている。
サーバ1000から端末3001〜3003に対してマルチキャストでデータを送信するためには、ルータ2001とルータ2002の間、および、ルータ2002と端末3001〜3003の間で、所定の手続きをおこなう必要がある。ここで、ルータ2002と端末3001の間の手続きについて説明する。図26は、マルチキャストをおこなう場合の通信手順を示すシーケンス図である。
ルータ2002は、マルチキャストを受信する端末がいるか否かを問い合わせる参加問い合わせメッセージをLAN200上にマルチキャストする。同一のマルチキャストアドレスのデータを受信する端末をマルチキャストグループと呼ぶが、この参加問い合わせメッセージは、マルチキャストグループを特定せず、一定時間間隔で送信される。参加問い合わせメッセージを受信した端末3001は、受信するマルチキャストアドレスを宛先とした参加メッセージをマルチキャストする。そして、参加メッセージを受信したルータ2002は、指定されたマルチキャストアドレスのデータの転送を開始する。
マルチキャストの受信を終了する場合、端末3001は、離脱メッセージをマルチキャストする。離脱メッセージを受信したルータ2002は、離脱メッセージで指定されたマルチキャストアドレスのデータを受信するマルチキャストグループがLAN200上に残っているかどうかを確認するために、当該のマルチキャストグループを指定した参加問い合わせメッセージをマルチキャストする。そして、一定期間参加メッセージが応答されなければ、当該のマルチキャストアドレスのデータの送信を停止する。
ここで、LAN200に複数のルータに接続されている場合を考える。複数のルータが、それぞれマルチキャストの中継をおこなうと、同一のデータがLAN200上に重複して送信される可能性がある。これを防止するため、LANに複数のルータが接続されている場合、一つのルータのみがマルチキャストの中継をおこなう仕組みがとられている。図27は、ルータが複数存在する場合の動作を説明するための説明図である。
同図は、ルータ2002および2003という2台のルータがLAN200に接続されている例を示している。ルータ2002および2003は、それぞれ、一定時間間隔で生存確認メッセージをマルチキャストする。そして、最も大きいIPアドレスを有するルータ(図27の例ではルータ2002の方が大きいアドレスを有するものとする)のみがDRとなってマルチキャストの中継をおこなう。
このように、ひとつのルータのみがDRとなってマルチキャストデータの中継を担当することにより、同一のデータがLAN200上に重複して送信されることはなくなる。しかし、大量のマルチキャストデータの中継が必要になった場合、DRとなったルータ2002に負荷が集中し、ルータ2003の処理能力は有効に活用されない。
まず、本実施例に係る負荷分散方式の原理について説明する。図1は、本実施例に係る負荷分散方式の原理について説明するための説明図である。同図に示すように、本実施例に係る負荷分散方式では、ルータ2002とルータ2003の間に負荷分散装置4000を設け、負荷分散装置4000とLAN200とを接続した構成をとる。
負荷分散装置4000は、生存確認メッセージ遮断機能と、参加/離脱メッセージ振り分け機能とを備える。生存確認メッセージ遮断機能は、ルータ2002およびルータ2003が送出する生存確認メッセージを遮断し、他のルータに受信させないようにする機能である。生存確認メッセージを遮断することにより、一つのルータのみがDRとなることがなくなり、ルータ2002とルータ2003の双方がマルチキャストデータの転送処理をおこなうことになる。
参加/離脱メッセージ振り分け機能は、端末3001〜3003が送信する参加メッセージおよび離脱メッセージを所定のルールに基づいてルータ2002もしくはルータ2003のいずれかに振り分ける機能である。参加メッセージおよび離脱メッセージを振り分けることにより、転送するマルチキャストアドレスの分担が定まり、転送処理の負荷分散が実現する。負荷分散を実現するに際して、ルータは、特別な処理を何もおこなう必要がないため、ルータに負担がかかることもない。
また、負荷分散のためにルータ間でメッセージの交換をおこなう必要がないので、高速な動作が可能となる。また、負荷分散装置4000が参加メッセージおよび離脱メッセージを振り分けることにより、ルータ2002およびルータ2003は、自身とは関係のない参加メッセージおよび離脱メッセージを受信することがなくなるため、負荷が軽減される効果もある。
たとえば、端末3001がマルチキャストアドレスAのデータを受信するための参加メッセージを送信し、参加/離脱メッセージ振り分け機能がこのメッセージをルータ2002に振り分けた場合、ルータ2002がこのマルチキャストアドレスのデータの転送を担当する。この場合、端末3002や端末3003がマルチキャストアドレスAのデータを受信するための参加メッセージを送信したとしても、同じルールにより振り分けがなされ、メッセージはルータ2002へ振り分けられるため、ルータ2003が同じマルチキャストデータをLAN200に転送することはない。
また、端末3001〜3003のいずれかが、マルチキャストアドレスAの受信を中止する離脱メッセージを送信した場合も、同じルールにより振り分けがなされ、メッセージはルータ2002へ振り分けられるため、離脱メッセージも適切に処理される。このように、参加メッセージおよび離脱メッセージの振り分けは、負荷分散装置4000において排他的におこなわれ、各ルータ装置に特別な拡張を施す必要はない。
次に、本実施例に係る負荷分散装置の構成について説明する。図2は、本実施例に係る負荷分散装置の構成を示す機能ブロック図である。同図に示すように、負荷分散装置4000aは、ネットワークインターフェース部4100aと、パケット識別部4200aと、生存確認メッセージ破棄部4300aと、参加/離脱メッセージ振り分け部4400aと、パケット転送部4500aとを有する。
ネットワークインターフェース部4100aは、ネットワークを通じてパケットのやり取りをおこなうためのインターフェース部である。ネットワークインターフェース部4100aは、ルータに接続するための複数のポートとLANに接続するためのポートとを有する。なお、ルータに接続するためのポートは、必ずしも物理的に複数存在する必要は無く、VLAN(Virtual LAN)などにより仮想的に複数のポートに分割されていても構わない。
パケット識別部4200aは、ネットワークインターフェース部4100aが受信したパケットの種別を識別し、種別に応じた処理部へ引き渡す処理部である。具体的には、受信したパケットが生存確認メッセージであれば生存確認メッセージ破棄部4300aに引き渡し、参加メッセージもしくは離脱メッセージであれば参加/離脱メッセージ振り分け部4400aに引き渡し、その他のパケットであればパケット転送部4500aに引き渡す。
図3は、パケット識別部4200aの構成を示す機能ブロック図である。同図に示すように、パケット識別部4200aは、ヘッダ抽出部4210aと、識別ルール検索部4220aと、識別ルール記憶部4230aとを有する。ヘッダ抽出部4210aは、パケットのヘッダ部から、種別の識別に必要な情報を抽出する処理部である。識別ルール検索部4220aは、ヘッダ抽出部4210aが抽出した情報をキーとして、識別ルール記憶部4230aに記憶された識別ルールを検索し、振り分け先を決定する処理部である。
識別ルール記憶部4230aは、パケットの識別と振り分けのための識別ルールを記憶する記憶部である。図4は、識別ルールの一例を示すサンプル図である。同図に示すように、パケットの種別の識別は、宛先MAC(Media Access Control)アドレスと、宛先IPアドレスと、ペイロード部のTYPEフィールドの値に基づいておこなわれる。たとえば、宛先MACアドレスが01−00−5E−00−00−02であり、宛先IPアドレスが224.0.0.2であり、ペイロード部のTYPEフィールドの値が0x17であるパケットは離脱メッセージの一種であると識別され、参加/離脱メッセージ振り分け部4400aに振り分けられる。
生存確認メッセージ破棄部4300aは、生存確認メッセージを転送させずに破棄する処置部である。生存確認メッセージ破棄部4300aが生存確認メッセージを破棄することにより、生存確認メッセージがルータに受信されなくなるため、一つのルータのみがDRとなることがなくなり、すべてのルータがマルチキャストデータの転送をおこなうことができる状態となる。
参加/離脱メッセージ振り分け部4400aは、参加メッセージおよび離脱メッセージをどのルータ装置に振り分けるかを所定のルールに基づいて判定する処理部である。参加メッセージおよび離脱メッセージを振り分ける方式は、いくつか考えられるが、本実施例では、マルチキャストアドレスごとに振り分け先を定義した静的なテーブルに基づいて振り分けをおこなうものとする。
図5は、参加/離脱メッセージ振り分け部4400aの構成を示す機能ブロック図である。同図に示すように、参加/離脱メッセージ振り分け部4400aは、ヘッダ抽出部4410aと、方路振り分けルール検索部4420aと、方路振り分けルール記憶部4430aとを有する。ヘッダ抽出部4410aは、パケットのヘッダ部から、振り分け先の判定に必要な情報を抽出する処理部である。方路振り分けルール検索部4420aは、ヘッダ抽出部4410aが抽出した情報をキーとして、方路振り分けルール記憶部4430aに記憶された方路振り分けルールを検索し、振り分け先を判定する処理部である。
方路振り分けルール記憶部4430aは、パケットの振り分けのための方路振り分けルールを記憶する記憶部である。図6は、方路振り分けルールの一例を示すサンプル図である。同図に示すように、本実施例における方路振り分けルールは、マルチキャストアドレスと、当該のマルチキャストアドレスを有するパケットの出力方路とを対にして保持する。たとえば、マルチキャストアドレスAを有するパケットは、ネットワークインターフェース部4100aのポート1から出力される。
この方路振り分けルールは、予め、管理者等が設定しておく静的なものである。なお、マルチキャストアドレスは、IPアドレスであってもMACアドレスであってもよい。また、出力方路は、物理的なポートであってもよいし、VLAN等の論理的なポートであってもよい。
パケット転送部4500aは、パケット識別部4200aおよび参加/離脱メッセージ振り分け部4400aから引き渡されたパケットをネットワークインターフェース部4100aを介して転送する処理部である。参加/離脱メッセージ振り分け部4400aから引き渡されたパケットについては、参加/離脱メッセージ振り分け部4400aから指示されたポートにのみ転送をおこなう。
次に、負荷分散装置4000aの処理手順について説明する。図7は、負荷分散装置4000aの処理手順を示すフローチャートである。同図に示すように、負荷分散装置4000aは、パケットを受信したならば(ステップS1001)、パケット識別部4200aにおいてパケットの種別を識別する(ステップS1002)。そして、パケットが生存確認メッセージであれば(ステップS1003肯定)、生存確認メッセージ破棄部4300aにてパケットを破棄する(ステップS1004)。
パケットが生存確認メッセージではなく(ステップS1003否定)、参加メッセージもしくは離脱メッセージであれば(ステップS1005肯定)、参加/離脱メッセージ振り分け部4400aにおいて後述する転送先判定処理をおこなってどのルータに転送するかを判定し(ステップS1006)、パケット転送部4500aから転送をおこなう(ステップS1007)。パケットが参加メッセージでも離脱メッセージでもない場合は(ステップS1005否定)、そのままパケット転送部4500aから転送をおこなう(ステップS1007)。
次に、転送先判定処理の処理手順について説明する。図8は、転送先判定処理の処理手順を示すフローチャートである。同図に示すように、参加/離脱メッセージ振り分け部4400aは、パケットからマルチキャストアドレスを取得したならば(ステップS1101)、方路振り分けルール記憶部4430aに記憶されている方路振り分けルールを検索し、転送先の情報を取得し、これを転送先としてパケット転送部4500aに指定する(ステップS1102)。
上述してきたように、本実施例1では、ルータの間に負荷分散装置4000aを設け、生存確認メッセージ破棄部において生存確認メッセージを破棄するように構成したので、LANに複数のルータが接続されている場合に、すべてのルータがマルチキャストデータの転送をおこなう状態にすることができる。
また、本実施例1では、マルチキャストアドレスごとに転送先を定義した方路振り分けルールに基づいて端末からの参加メッセージおよび離脱メッセージをルータに振り分けるように構成したので、各ルータに負担をかけることなく転送処理の負荷分散を実現し、高速な転送開始動作を得ることができる。
本実施例では、生存確認メッセージの遮断を生存確認メッセージ破棄部4300aにておこなうこととしたが、レイヤ2スイッチのフィルタリングを利用して実現することもできる。この場合、負荷分散装置4000aは、生存確認メッセージ破棄部4300aを備える必要はない。
実施例1では、方路振り分けルールをマルチキャストアドレスに基づいて設定する場合について説明した。しかし、この場合、処理する可能性のある全てのマルチキャストアドレスのルールを設定しなければならないため、方路振り分けルールを設定する管理者に負担がかかる。また、ルールに設定されていないマルチキャストアドレスの参加メッセージおよび離脱メッセージについては、処理をおこなうことができない。そこで、本実施例2では、マルチキャストアドレスを演算処理し、この演算結果に基づいて振り分けをおこなう場合について説明する。
まず、本実施例に係る負荷分散装置の構成について説明する。本実施例に係る負荷分散装置の構成は、実施例1で説明した負荷分散装置4000aの参加/離脱メッセージ振り分け部4400aを、参加/離脱メッセージ振り分け部4400bに置き換えたものとなる。図9は、参加/離脱メッセージ振り分け部4400bの構成を示す機能ブロック図である。
同図に示すように、参加/離脱メッセージ振り分け部4400bは、ヘッダ抽出部4410bと、方路振り分けルール検索部4420bと、方路振り分けルール記憶部4430bと、ヘッダ情報演算部4440bとを有する。ヘッダ抽出部4410bは、パケットのヘッダ部から、マルチキャストアドレス等のアドレス情報を抽出する処理部である。ヘッダ情報演算部4440bは、ヘッダ抽出部4410bが抽出した情報をハッシュ計算等により数値化する処理部である。
方路振り分けルール検索部4420bは、ヘッダ情報演算部4440bが数値化した値を基にして、方路振り分けルール記憶部4430bに記憶された方路振り分けルールを検索し、振り分け先を判定する処理部である。
方路振り分けルール記憶部4430bは、パケットの振り分けのための方路振り分けルールを記憶する記憶部である。図10は、方路振り分けルールの一例を示すサンプル図である。同図に示すように、本実施例における方路振り分けルールは、ヘッダ情報演算部4440bの計算値と、当該の計算値が算出されたパケットの出力方路とを対にして保持する。たとえば、計算値が0となったパケットは、ポート1から出力される。
本実施例に係る方路振り分けルールは、マルチキャストアドレスを直接もちいずに数値化してもちいるため、適切に数値化をおこなうことにより、全てのマルチキャストアドレスごとにルールを設定する必要がない。
次に、本実施例に係る負荷分散装置の処理手順について説明する。処理手順は、転送先判定処理の処理手順が異なる以外は、実施例1と同一である。ここでは、転送先判定処理の処理手順について説明する。図11は、転送先判定処理の処理手順を示すフローチャートである。同図に示すように、参加/離脱メッセージ振り分け部4400bは、パケットからマルチキャストアドレスを取得したならば(ステップS2001)、これを演算処理する(ステップS2002)。そして、この演算処理で得た計算値をキーにして方路振り分けルール記憶部4430bに記憶されている方路振り分けルールを検索し、転送先の情報を取得し、これを転送先として指定する(ステップS2003)。
上述してきたように、本実施例2では、端末からの参加メッセージおよび離脱メッセージに含まれるマルチキャストアドレスを数値化し、この数値化された値に基づいて振り分け先を判定するように構成したので、全てのマルチキャストアドレスをルールに設定することなく振り分け処理を実現することができる。
実施例1では、予め定義された方路振り分けルールに基づいて参加メッセージおよび離脱メッセージの振り分けをおこなう場合について説明した。しかし、このように予め定義されたルールに基づいて振り分けをおこなうと、振り分け先が一方のルータに偏り、負荷分散が適切におこなわれない可能性がある。そこで、本実施例3では、方路振り分けルールを動的に設定し、負荷分散が均等におこなわれる例について説明することとする。
まず、本実施例に係る負荷分散装置の構成について説明する。本実施例に係る負荷分散装置の構成は、実施例1で説明した負荷分散装置4000aの参加/離脱メッセージ振り分け部4400aを、参加/離脱メッセージ振り分け部4400cに置き換えたものとなる。図12は、参加/離脱メッセージ振り分け部4400cの構成を示す機能ブロック図である。
同図に示すように、参加/離脱メッセージ振り分け部4400cは、ヘッダ抽出部4410cと、参加メッセージ処理部4421cと、離脱メッセージ処理部4422cと、タイマ4423cと、方路振り分けルール記憶部4430cと、方路別エントリ数記憶部4431cと、種別判定部4450cとを有する。ヘッダ抽出部4410cは、パケットのヘッダ部から、パケットの種別を判定するための情報を抽出する処理部である。
種別判定部4450cは、ヘッダ抽出部4410cが抽出した情報を基にして、パケットが参加メッセージであるのか、離脱メッセージであるのかを判断し、前者であればパケットを参加メッセージ処理部4421cへ引き渡し、後者であれば離脱メッセージ処理部4422cへ引き渡す処理部である。パケットの種別の判断は、図4に示した識別ルールと同様のルールに基づいておこなうことができる。
参加メッセージ処理部4421cは、種別判定部4450cから引き渡されたパケットの振り分け先を方路振り分けルール記憶部4430cに記憶された方路振り分けルールを参照して判定する処理部である。参加メッセージ処理部4421cは、当該のパケットを振り分けるためのルールが方路振り分けルール記憶部4430cに記憶されていない場合は、方路別エントリ数記憶部4431cに記憶されている方路別エントリ数情報を参照して、どの方路が最も空いているかを判断し、最も空いている方路に当該のパケットを振り分けるためのルールを方路振り分けルール記憶部4430cに追加し、方路別エントリ数記憶部4431cに記憶の方路別エントリ数情報を更新する。
このように、参加メッセージ処理部4421cが負荷状況を判断して動的に方路振り分けルールを登録することにより、各ルータの負荷分散が均等におこなわれることとなる。また、方路振り分けルールの登録が人手を介さずにおこなわれるため、管理者の負荷も軽減される。
離脱メッセージ処理部4422cは、種別判定部4450cから引き渡されたパケットの振り分け先を方路振り分けルール記憶部4430cに記憶された方路振り分けルールを参照して判定する処理部である。また、離脱メッセージ処理部4422cは、振り分けにもちいたルールに離脱メッセージを受信した旨を示すフラグを設定する。このフラグは、参加メッセージ処理部4421cが当該のルールを使用して参加メッセージの振り分けをおこなった際にクリアされる。一定の時間が経過してもフラグがクリアされない場合、離脱メッセージ処理部4422cは、当該のルールが既に使用されていないものとみなしてこれを削除し、方路別エントリ数記憶部4431cに記憶の方路別エントリ数情報を更新する。
このように、離脱メッセージ処理部4422cが使用されていないルールを削除し、方路別エントリ数情報に有効な負荷状況が保持されるようにすることにより、各ルータの負荷分散が均等に保たれることとなる。
タイマ4423cは、離脱メッセージ処理部4422cが方路振り分けルールに設定したフラグが一定時間クリアされないことを検出するためのタイマである。方路振り分けルール記憶部4430cは、パケットの振り分けのための方路振り分けルールを記憶する記憶部である。図13は、方路振り分けルールの一例を示すサンプル図である。同図に示すように、本実施例における方路振り分けルールは、マルチキャストアドレスと、当該のマルチキャストアドレスを有するパケットの出力方路とを対にして保持し、さらに離脱メッセージを受信した旨を示すフラグを保持できるようになっている。
方路別エントリ数記憶部4431cは、各ルータの負荷状態を示す方路別エントリ数情報を記憶する記憶部である。図14は、方路別エントリ数情報の一例を示すサンプル図である。同図に示すように、方路別エントリ数情報は、方路振り分けルールのエントリ数を出力ポートごとに集計した値を保持する。たとえば、1行目のデータは、ポート1に振り分けるルールが2エントリあることを示しているが、これは、ポート1に対応するルータに振り分けられているマルチキャストアドレスが2つあることを意味する。
次に、本実施例に係る負荷分散装置の処理手順について説明する。処理手順は、転送先判定処理の処理手順が異なる以外は、実施例1と同一である。ここでは、転送先判定処理の処理手順について説明する。図15〜16は、転送先判定処理の処理手順を示すフローチャートである。同図に示すように、参加/離脱メッセージ振り分け部4400cは、まず、種別判定部4450cにおいてパケットの種別を判定する(ステップS3001)。
そして、パケットが参加メッセージであれば(ステップS3002肯定)、参加メッセージ処理部4421cにおいて方路振り分けルールを検索し、転送先の情報を取得する(ステップS3003)。ここで、パケットに適合するルールを取得できた場合は(ステップS3004肯定)、取得したルールに定義された転送先を採用し、当該のルールのフラグを0に設定する。
パケットに適合するルールを取得できなかった場合は(ステップS3004否定)、方路別エントリ数情報を検索し、最もエントリの少ない方路を取得し(ステップS3006)、取得した方路を転送先として採用する(ステップS3007)。そして、方路振り分けルールにこの方路に振り分けをおこなうためのルールを追加し(ステップS3008)、方路別エントリ数情報のこの方路のエントリ数を1だけ加算する(ステップS3009)。
ステップS3001の結果、パケットが参加メッセージでなく、離脱メッセージだった場合は(ステップS3002否定)、離脱メッセージ処理部4422cにおいて方路振り分けルールを検索し、取得したルールに定義された転送先を採用する(ステップS3101)。そして、当該のルールのフラグを1に設定し(ステップS3102)、タイマをリセットして計時を開始する(ステップS3103)。
そして、タイマがタイムアウトし、フラグが1のままであれば(ステップS3201肯定)、当該のルールを方路振り分けルールから削除し(ステップS3202)、方路別エントリ数情報において、このルールの出力方路のエントリ数を1だけ減算する(ステップS3203)。タイムアウトしたときに、フラグが0にリセットされていれば(ステップS3201否定)、特に処理はおこなわない。
上述してきたように、本実施例3では、振り分け量の寡多を考慮しつつ方路振り分けルールを動的に設定するように構成したので、ルータの負荷分散を均等化することができる。
実施例3では、振り分けルールのエントリ数、すなわち、振り分けを担当させるマルチキャストアドレスの数を揃えることにより負荷分散を均等化させる例について説明したが、ネットワーク全体の負荷を考えた場合、この方法は不適切な場合がある。マルチキャストデータを送信するサーバからの経路が複数存在する場合、最短経路となる経路に接続されたルータ、もしくは、最も帯域の広い経路に接続されたルータに転送を任せるのが適切である。
最短経路となる経路や最も帯域の広い経路は、たとえば、ユニキャストのルーティング情報を参照することで取得することができる。ユニキャストのルーティング情報は、サーバのIPアドレスを基準として参照する必要があるため、方路振り分けルールもサーバのIPアドレスを基準としたものとすると都合がよい。本実施例4では、方路振り分けルールをサーバのIPアドレスを基準とした場合の例について説明する。
まず、本実施例に係る負荷分散装置の構成について説明する。本実施例に係る負荷分散装置の構成は、実施例1で説明した負荷分散装置4000aの参加/離脱メッセージ振り分け部4400aを、参加/離脱メッセージ振り分け部4400dに置き換えたものとなる。図17は、参加/離脱メッセージ振り分け部4400dの構成を示す機能ブロック図である。
同図に示すように、参加/離脱メッセージ振り分け部4400dは、送信元アドレス抽出部4410dと、方路振り分けルール検索部4420dと、方路振り分けルール記憶部4430dとを有する。送信元アドレス抽出部4410dは、パケットのヘッダ部から、マルチキャストデータの送信元のサーバのIPアドレスを抽出する処理部である。
方路振り分けルール検索部4420dは、送信元アドレス抽出部4410dが取得したIPアドレスをキーとして、方路振り分けルール記憶部4430dに記憶された方路振り分けルールを検索し、振り分け先を判定する処理部である。
方路振り分けルール記憶部4430dは、パケットの振り分けのための方路振り分けルールを記憶する記憶部である。図18は、方路振り分けルールの一例を示すサンプル図である。同図に示すように、本実施例における方路振り分けルールは、送信元のサーバのIPアドレスと、出力方路とを対にして保持する。なお、この情報は、ルーティング情報から自動生成してもよいし、管理者が手作業で設定してもよい。また、送信元のサーバのIPアドレスの代わりに、送信元のサーバが属しているネットワークのアドレスとサブネットマスクを保持するようにしてもよい。
次に、本実施例に係る負荷分散装置の処理手順について説明する。処理手順は、転送先判定処理の処理手順が異なる以外は、実施例1と同一である。ここでは、転送先判定処理の処理手順について説明する。図19は、転送先判定処理の処理手順を示すフローチャートである。同図に示すように、参加/離脱メッセージ振り分け部4400dは、パケットからデータの送信元のサーバのIPアドレスを取得したならば(ステップS4001)、これをキーにして方路振り分けルール記憶部4430dに記憶されている方路振り分けルールを検索し、転送先の情報を取得し、これを転送先として指定する(ステップS4002)。
上述してきたように、本実施例4では、データの送信元のIPアドレスを基準として方路振り分けルールを設定するように構成したので、ユニキャストのルーティング情報と方路振り分けルールとを連動させて、最適な経路でマルチキャストデータを転送させることができる。
LANに複数のルータが接続されている場合、これらのルータに負荷分散をおこなうだけでなく、一部のルータもしくは経路に障害が発生しても、他のルータがマルチキャストデータの転送を肩代わりするように冗長性をもたせることもできる。本実施例5では、障害に対する冗長性を実現する例について説明する。なお、負荷分散を実現する手法は、実施例1〜4のいずれをもちいてもよい。
まず、本実施例に係る負荷分散装置の構成について説明する。図20は、本実施例に係る負荷分散装置の構成を示す機能ブロック図である。同図に示すように、負荷分散装置4000eは、ネットワークインターフェース部4100eと、パケット識別部4200eと、生存確認メッセージ破棄部4300eと、参加/離脱メッセージ振り分け部4400eと、パケット転送部4500eと、障害検出部4600eと、参加メッセージ生成部4700eとを有する。
ネットワークインターフェース部4100eは、ネットワークを通じてパケットのやり取りをおこなうためのインターフェース部である。ネットワークインターフェース部4100eは、ルータに接続するための複数のポートとLANに接続するためのポートとを有する。なお、ルータに接続するためのポートは、必ずしも物理的に複数存在する必要は無く、VLANなどにより仮想的に複数のポートに分割されていても構わない。
パケット識別部4200eは、ネットワークインターフェース部4100eが受信したパケットの種別を識別し、種別に応じた処理部へ引き渡す処理部である。具体的には、受信したパケットが生存確認メッセージであれば生存確認メッセージ破棄部4300eに引き渡し、参加メッセージもしくは離脱メッセージであれば参加/離脱メッセージ振り分け部4400eに引き渡し、その他のパケットであればパケット転送部4500eに引き渡す。また、受信したパケットが生存確認メッセージであった場合は、障害検出部4600eにもパケットを引き渡す。
生存確認メッセージ破棄部4300eは、生存確認メッセージを転送させずに破棄する処置部である。参加/離脱メッセージ振り分け部4400eは、参加メッセージおよび離脱メッセージをどのルータ装置に振り分けるかを方路振り分けルールに基づいて判定する処理部である。また、参加/離脱メッセージ振り分け部4400eは、障害検出部4600eがいずれかのルータの障害を検出した場合は、当該のルータへ振り分けをおこなうように定義されている方路振り分けルールを更新し、他のルータに振り分けるように設定し直し、さらに、参加メッセージ生成部4700eに指示して新たに振り分け先となったルータに対して参加メッセージを送信させる。
このように、障害検出時に、方路振り分けルールを更新し、障害を検出したルータへ振り分けられていた参加メッセージを他のルータに振り分けることにより、障害に対する冗長性が実現される。また、参加メッセージ生成部4700eが新たに振り分け先となったルータに参加メッセージを送信することにより、マルチキャストデータの転送が早期に再開される。
障害検出部4600eは、ルータから送信される生存確認メッセージを監視し、一定時間生存確認メッセージが送信されないルータがあればそのルータに障害が発生したと判断し、参加/離脱メッセージ振り分け部4400eにその旨を通知する処理部である。図21は、障害検出部4600eの構成を示す機能ブロック図である。同図に示すように、障害検出部4600eは、メッセージ断検出部4610eと、タイマ4620eとを有する。
メッセージ断検出部4610eは、生存確認メッセージを受信したならば、そのメッセージを受信したポートに対応するタイマを起動する。そして、一定時間同じポートにおいて生存確認メッセージが受信されず、タイマがタイムアウトしたならば、そのポートに接続されているルータに障害が発生したものとみなして、判断し、参加/離脱メッセージ振り分け部4400eへの通知をおこなう。
参加メッセージ生成部4700eは、参加/離脱メッセージ振り分け部4400eから指示されたルータへの参加メッセージを生成し、パケット転送部4500eに転送を依頼する処理部である。パケット転送部4500eは、パケット識別部4200e、参加/離脱メッセージ振り分け部4400eおよび参加メッセージ生成部4700eから引き渡されたパケットをネットワークインターフェース部4100eを介して転送する処理部である。
次に、負荷分散装置4000eの処理手順について説明する。通常時の処理は実施例1〜4に準じるため、ここでは、異常時の処理手順について説明する。図22は、メッセージ断を検出した場合の処理手順を示すフローチャートである。
障害検出部4600eは、生存確認メッセージを受信したならば(ステップS5001)、そのメッセージを受信したポートを取得し(ステップS5002)、そのポートに対応するタイマを起動する(ステップS5003)。そして、一定時間同じポートで生存確認メッセージが受信されずにタイムアウトが発生したならば(ステップS5004肯定)、参加/離脱メッセージ振り分け部4400eにメッセージ断が発生した旨を通知する(ステップS5005)。
通知を受けた参加/離脱メッセージ振り分け部4400eは、方路振り分けルールを更新し、メッセージ断が検出されたポートを他のポートに置き換える(ステップS5101)。そして、新たに振り分け先として設定したポートに接続されているルータに参加メッセージを送信するように参加メッセージ生成部4700eに指示する(ステップS5102)。
指示を受けた参加メッセージ生成部4700eは、指示されたルータ向けの参加メッセージを生成し(ステップS5201)、これを新たに設定されたポート経由でルータに送信するようにパケット転送部4500eに依頼する(ステップS5202)。
上述してきたように、本実施例5では、ルータの異常を検出する処理部を追加し、ルータの異常が検出された場合は、当該のルータが振り分け先となっている振り分けルールを他のルータを振り分け先として更新するように構成したので、ルータに障害が発生した場合に、転送処理を他のルータに肩代わりさせることができ、冗長性が実現される。
なお、本実施例では、生存確認メッセージを監視することでルータの障害を検出する方式をとったが、マルチキャストデータを監視することでルータの障害を検出することとしてもよい。また、定期的に各ルータにPING等のエコー要求メッセージを送信し、一定時間内に応答が得られなければ障害が発生したとみなすようにしてもよい。
上記の実施例では全てのマルチキャストデータを平等に扱うことを前提としているが、帯域に制限がある場合などは、特定のマルチキャストデータを優先して扱うことが必要になる場合がある。そこで、本実施例6では、マルチキャストデータに優先順位を与える例について説明することとする。
まず、本実施例に係る負荷分散装置の構成について説明する。図23は、本実施例に係る負荷分散装置の構成を示す機能ブロック図である。同図に示すように、負荷分散装置4000fは、ネットワークインターフェース部4100fと、パケット識別部4200fと、生存確認メッセージ破棄部4300fと、参加/離脱メッセージ振り分け部4400fと、パケット転送部4500fと、離脱メッセージ生成部4800fとを有する。
ネットワークインターフェース部4100fは、ネットワークを通じてパケットのやり取りをおこなうためのインターフェース部である。ネットワークインターフェース部4100fは、ルータに接続するための複数のポートとLANに接続するためのポートとを有する。なお、ルータに接続するためのポートは、必ずしも物理的に複数存在する必要は無く、VLANなどにより仮想的に複数のポートに分割されていても構わない。
パケット識別部4200fは、ネットワークインターフェース部4100fが受信したパケットの種別を識別し、種別に応じた処理部へ引き渡す処理部である。具体的には、受信したパケットが生存確認メッセージであれば生存確認メッセージ破棄部4300fに引き渡し、参加メッセージもしくは離脱メッセージであれば参加/離脱メッセージ振り分け部4400fに引き渡し、その他のパケットであればパケット転送部4500fに引き渡す。
生存確認メッセージ破棄部4300fは、生存確認メッセージを転送させずに破棄する処置部である。参加/離脱メッセージ振り分け部4400fは、参加メッセージおよび離脱メッセージをどのルータ装置に振り分けるかを方路振り分けルールに基づいて判定する処理部である。
また、参加/離脱メッセージ振り分け部4400fは、新たなマルチキャストアドレスの参加メッセージを受信した場合に、既に転送処理をおこなっているマルチキャストアドレスの数が一定の数を超えており、新規のマルチキャストアドレスの優先順位が既存のものよりも高い場合は、同一方路で転送処理されるマルチキャストアドレスのうち最も優先順位の低いものを選択し、離脱メッセージ生成部4800fに指示して当該のマルチキャストアドレスを設定した離脱メッセージを送信させる。このように、負荷が一定の基準を超えている場合に優先順位の低いマルチキャストデータの転送を中止させることにより、優先順位の高いマルチキャストデータの帯域を確保することができる。
図24は、方路振り分けルールの一例を示すサンプル図である。同図に示すように、本実施例における方路振り分けルールは、マルチキャストアドレスと、当該のマルチキャストアドレスを有するパケットの出力方路とを対にして保持し、さらに優先度を保持できるようになっている。
離脱メッセージ生成部4800fは、参加/離脱メッセージ振り分け部4400fから指示されたルータへの離脱メッセージを生成し、パケット転送部4500fに転送を依頼する処理部である。パケット転送部4500fは、パケット識別部4200f、参加/離脱メッセージ振り分け部4400fおよび離脱メッセージ生成部4800fから引き渡されたパケットをネットワークインターフェース部4100fを介して転送する処理部である。
上述してきたように、本実施例6では、負荷が一定の基準を超えている場合に優先順位の低いマルチキャストデータの転送を中止させるように構成したので、優先順位の高いマルチキャストデータの帯域を確保することができる。
(付記1)マルチキャストデータの転送処理をおこなう複数のルータに接続された負荷分散装置であって、
受信したパケットの種別を識別するパケット識別手段と、
前記パケット識別手段が参加メッセージもしくは離脱メッセージと識別したパケットを記憶手段に記憶された振り分けルールに基づいてルータに排他的に振り分けるメッセージ振り分け手段と
を備えたことを特徴とする負荷分散装置。
(付記2)前記パケット識別手段が生存確認メッセージと識別したパケットを破棄する生存確認メッセージ破棄手段をさらに備えたことを特徴とする付記1に記載の負荷分散装置。
(付記3)前記メッセージ振り分け手段は、ルータの負荷が均等になるように考慮して前記振り分けルールを動的に追加することを特徴とする付記1または2に記載の負荷分散装置。
(付記4)前記メッセージ振り分け手段は、参加メッセージもしくは離脱メッセージに含まれるマルチキャストアドレスを演算処理し、所定の範囲の数値に変換した値を手がかりとして、前記振り分けルールから振り分け先の情報を取得することを特徴とする付記1または2に記載の負荷分散装置。
(付記5)前記メッセージ振り分け手段は、参加メッセージもしくは離脱メッセージに含まれるマルチキャストデータの送信元のIPアドレスを手がかりとして、前記振り分けルールから振り分け先の情報を取得することを特徴とする付記1または2に記載の負荷分散装置。
(付記6)ルータの障害を検出する障害検出手段をさらに備え、
前記メッセージ振り分け手段は、前記障害検出手段がルータの障害を検出した場合に、該ルータを振り分け先としている振り分けルールを更新し、振り分け先を他のルータに置き換えることを特徴とする付記1または2に記載の負荷分散装置。
(付記7)前記障害検出手段がルータの障害を検出し、前記メッセージ振り分け手段が振り分け先の置換えをおこなった場合に、新たに振り分け先となったルータに向けた参加メッセージを生成する参加メッセージ生成手段をさらに備えたことを特徴とする付記6に記載の負荷分散装置。
(付記8)前記障害検出手段は、ルータから送信される生存確認メッセージを監視することでルータの障害を検出することを特徴とする付記6または7に記載の負荷分散装置。
(付記9)前記障害検出手段は、ルータから送信されるマルチキャストデータを監視することでルータの障害を検出することを特徴とする付記6または7に記載の負荷分散装置。
(付記10)前記障害検出手段は、ルータに応答を求めるメッセージを定期的に送信し、所定の期間応答がない場合に当該のルータに障害が発生したとみなすことを特徴とする付記6または7に記載の負荷分散装置。
(付記11)前記メッセージ振り分け手段は、ルータの負荷が所定の閾値を超えた場合に、記憶手段に記憶された各マルチキャストアドレスの優先順位を参照し、最も優先順位が低いマルチキャストアドレスのデータの転送を中止するように当該のルータに指示することを特徴とする付記1または2に記載の負荷分散装置。
(付記12)マルチキャストデータの転送処理をおこなう複数のルータを制御する負荷分散方法であって、
受信したパケットの種別を識別するパケット識別工程と、
前記パケット識別工程が参加メッセージもしくは離脱メッセージと識別したパケットを記憶手段に記憶された振り分けルールに基づいてルータに排他的に振り分けるメッセージ振り分け工程と
を含んだことを特徴とする負荷分散方法。
以上のように、本発明にかかる負荷分散装置および負荷分散方法は、マルチキャストデータの転送処理の負荷分散に有用であり、特に、ルータに負担をかけることなくマルチキャストデータの転送処理の負荷分散を実現し、高速な転送開始動作をおこなうことが必要な場合に適している。
本実施例に係る負荷分散方式の原理について説明するための説明図である。 本実施例に係る負荷分散装置の構成を示す機能ブロック図である。 パケット識別部の構成を示す機能ブロック図である。 識別ルールの一例を示すサンプル図である。 参加/離脱メッセージ振り分け部の構成を示す機能ブロック図である。 方路振り分けルールの一例を示すサンプル図である。 図2に示した負荷分散装置の処理手順を示すフローチャートである。 転送先判定処理の処理手順を示すフローチャートである。 参加/離脱メッセージ振り分け部の構成を示す機能ブロック図である。 方路振り分けルールの一例を示すサンプル図である。 転送先判定処理の処理手順を示すフローチャートである。 参加/離脱メッセージ振り分け部の構成を示す機能ブロック図である。 方路振り分けルールの一例を示すサンプル図である。 方路別エントリ数情報の一例を示すサンプル図である。 転送先判定処理の処理手順を示すフローチャートである。 転送先判定処理の処理手順を示すフローチャートである。 参加/離脱メッセージ振り分け部の構成を示す機能ブロック図である。 方路振り分けルールの一例を示すサンプル図である。 転送先判定処理の処理手順を示すフローチャートである。 本実施例に係る負荷分散装置の構成を示す機能ブロック図である。 障害検出部の構成を示す機能ブロック図である。 メッセージ断を検出した場合の処理手順を示すフローチャートである。 本実施例に係る負荷分散装置の構成を示す機能ブロック図である。 方路振り分けルールの一例を示すサンプル図である。 マルチキャストをおこなう場合のネットワーク構成の一例を示すサンプル図である。 マルチキャストをおこなう場合の通信手順を示すシーケンス図である。 ルータが複数存在する場合の動作を説明するための説明図である。
符号の説明
100 インターネット
200 LAN
1000 サーバ
2001、2002、2003 ルータ
3001、3002、3003 端末
4000、4000a、4000e 負荷分散装置
4100a、4100e、4100f ネットワークインターフェース部
4200a、4200e、4200f パケット識別部
4210a ヘッダ抽出部
4220a 識別ルール検索部
4230a 識別ルール記憶部
4300a、4300e、4300f 生存確認メッセージ破棄部
4400a、4400b、4400c、4400e、4400f 参加/離脱メッセージ振り分け部
4410a、4410b、4410c ヘッダ抽出部
4410d 送信元アドレス抽出部
4420a、4420b、4420d 方路振り分けルール検索部
4421c 参加メッセージ処理部
4422c 離脱メッセージ処理部
4423c タイマ
4430a、4430b、4430c、4430d 方路振り分けルール記憶部
4431c 方路別エントリ数記憶部
4440b ヘッダ情報演算部
4450c 種別判定部
4500a、4500e、4500f パケット転送部
4600e 障害検出部
4610e メッセージ断検出部
4620e タイマ
4700e 参加メッセージ生成部
4800f 離脱メッセージ生成部

Claims (4)

  1. マルチキャストデータの転送処理をおこなう複数のルータと端末装置との間に接続された負荷分散装置であって、
    受信したパケットの種別を識別するパケット識別手段と、
    前記パケット識別手段が、前記端末装置から受信したパケットの種別を、当該端末装置自らが受信するマルチキャストアドレスを宛先としてルータに対してマルチキャストされる参加メッセージもしくは離脱メッセージと識別したパケットを記憶手段に記憶された振り分けルールに基づいてルータに排他的に振り分けるメッセージ振り分け手段と
    前記パケット識別手段が、受信したパケットの種別を、前記複数のルータからマルチキャストされた生存確認メッセージと識別したパケットを破棄する生存確認メッセージ破棄手段と、
    を備えたことを特徴とする負荷分散装置。
  2. 前記メッセージ振り分け手段は、ルータの負荷が均等になるように考慮して前記振り分けルールを動的に追加することを特徴とする請求項1に記載の負荷分散装置。
  3. ルータの障害を検出する障害検出手段をさらに備え、
    前記メッセージ振り分け手段は、前記障害検出手段がルータの障害を検出した場合に、該ルータを振り分け先としている振り分けルールを更新し、振り分け先を他のルータに置き換えることを特徴とする請求項1に記載の負荷分散装置。
  4. マルチキャストデータの転送処理をおこなう複数のルータと端末装置とを制御する負荷分散方法であって、
    受信したパケットの種別を識別するパケット識別工程と、
    前記パケット識別工程が、前記端末装置から受信したパケットの種別を、当該端末装置自らが受信するマルチキャストアドレスを宛先としてルータに対してマルチキャストされる参加メッセージもしくは離脱メッセージと識別したパケットを記憶手段に記憶された振り分けルールに基づいてルータに排他的に振り分けるメッセージ振り分け工程と
    前記パケット識別工程が、受信したパケットの種別を、前記複数のルータからマルチキャストされた生存確認メッセージと識別したパケットを破棄する生存確認メッセージ破棄工程と、
    を含んだことを特徴とする負荷分散方法。
JP2005073476A 2005-03-15 2005-03-15 負荷分散装置および負荷分散方法 Expired - Fee Related JP4621044B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005073476A JP4621044B2 (ja) 2005-03-15 2005-03-15 負荷分散装置および負荷分散方法
US11/208,735 US7864750B2 (en) 2005-03-15 2005-08-23 Load distributing apparatus and load distributing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005073476A JP4621044B2 (ja) 2005-03-15 2005-03-15 負荷分散装置および負荷分散方法

Publications (2)

Publication Number Publication Date
JP2006261805A JP2006261805A (ja) 2006-09-28
JP4621044B2 true JP4621044B2 (ja) 2011-01-26

Family

ID=37010203

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005073476A Expired - Fee Related JP4621044B2 (ja) 2005-03-15 2005-03-15 負荷分散装置および負荷分散方法

Country Status (2)

Country Link
US (1) US7864750B2 (ja)
JP (1) JP4621044B2 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7792984B2 (en) * 2003-01-23 2010-09-07 International Business Machines Corporation Systems and methods for the distribution of bulk data using multicast routing that mitigates network traffic on subnets
US9198084B2 (en) 2006-05-26 2015-11-24 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
US7813286B2 (en) * 2006-08-30 2010-10-12 Hewlett-Packard Development Company, L.P. Method and system of distributing multicast group join request in computer systems operating with teamed communication ports
US20090089408A1 (en) * 2007-09-28 2009-04-02 Alcatel Lucent XML Router and method of XML Router Network Overlay Topology Creation
US20090109859A1 (en) * 2007-10-31 2009-04-30 At&T Knowledge Ventures, Lp Method and System for Detecting a Fault Condition Based on Failed IGMP Join Attempts
JP4557028B2 (ja) * 2008-03-19 2010-10-06 ソニー株式会社 情報処理装置、情報処理方法、クライアント機器、情報処理システム
US8811294B2 (en) 2008-04-04 2014-08-19 Qualcomm Incorporated Apparatus and methods for establishing client-host associations within a wireless network
EP2338258B1 (fr) * 2008-09-16 2013-03-13 France Telecom Technique de protection dans un réseau de communication en mode connecte de noeuds feuilles d'un arbre point à multipoint
US20100085892A1 (en) * 2008-10-06 2010-04-08 Alcatel Lucent Overlay network coordination redundancy
US8891358B2 (en) * 2008-10-16 2014-11-18 Hewlett-Packard Development Company, L.P. Method for application broadcast forwarding for routers running redundancy protocols
US9398089B2 (en) 2008-12-11 2016-07-19 Qualcomm Incorporated Dynamic resource sharing among multiple wireless devices
AU2009339348B2 (en) * 2009-02-09 2015-05-28 Robert Bosch Gmbh Method for using a computer network
US9264248B2 (en) * 2009-07-02 2016-02-16 Qualcomm Incorporated System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment
JP5340062B2 (ja) 2009-07-14 2013-11-13 アラクサラネットワークス株式会社 ネットワーク中継装置およびネットワークシステム
US9582238B2 (en) 2009-12-14 2017-02-28 Qualcomm Incorporated Decomposed multi-stream (DMS) techniques for video display systems
JP5572052B2 (ja) * 2010-10-13 2014-08-13 日本電信電話株式会社 マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法
US10135900B2 (en) 2011-01-21 2018-11-20 Qualcomm Incorporated User input back channel for wireless displays
US9065876B2 (en) 2011-01-21 2015-06-23 Qualcomm Incorporated User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays
US8964783B2 (en) 2011-01-21 2015-02-24 Qualcomm Incorporated User input back channel for wireless displays
US9787725B2 (en) 2011-01-21 2017-10-10 Qualcomm Incorporated User input back channel for wireless displays
US20130013318A1 (en) 2011-01-21 2013-01-10 Qualcomm Incorporated User input back channel for wireless displays
US9413803B2 (en) 2011-01-21 2016-08-09 Qualcomm Incorporated User input back channel for wireless displays
US10108386B2 (en) 2011-02-04 2018-10-23 Qualcomm Incorporated Content provisioning for wireless back channel
US9503771B2 (en) 2011-02-04 2016-11-22 Qualcomm Incorporated Low latency wireless display for graphics
US8674957B2 (en) 2011-02-04 2014-03-18 Qualcomm Incorporated User input device for wireless back channel
US9071546B2 (en) * 2011-05-20 2015-06-30 Cisco Technology, Inc. Protocol independent multicast designated router redundancy
US9007923B2 (en) * 2011-10-31 2015-04-14 Itron, Inc. Quick advertisement of a failure of a network cellular router
US9525998B2 (en) 2012-01-06 2016-12-20 Qualcomm Incorporated Wireless display with multiscreen service
JP6392714B2 (ja) * 2015-08-04 2018-09-19 日本電信電話株式会社 送信制御システムおよび送信制御方法

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000013439A (ja) * 1998-06-22 2000-01-14 Fujitsu Ltd マルチリンク型ルーティング方法およびマルチリンク型ルータ
US20020038339A1 (en) * 2000-09-08 2002-03-28 Wei Xu Systems and methods for packet distribution
JP2002164930A (ja) * 2000-11-29 2002-06-07 Nippon Telegr & Teleph Corp <Ntt> 通信方法
JP2002204250A (ja) * 2000-12-28 2002-07-19 Fujitsu Ltd トラフィック情報収集装置およびトラフィック情報収集方法
JP2003023444A (ja) * 2001-07-06 2003-01-24 Fujitsu Ltd 仮想ルータを利用した動的な負荷分散システム
JP2003131961A (ja) * 2001-07-09 2003-05-09 Hitachi Ltd ネットワークシステム及び負荷分散方法
JP2003143193A (ja) * 2001-10-30 2003-05-16 Furukawa Electric Co Ltd:The ネットワーク間接続方法、その装置およびその装置を用いたネットワーク間接続システム
US6650640B1 (en) * 1999-03-01 2003-11-18 Sun Microsystems, Inc. Method and apparatus for managing a network flow in a high performance network interface
JP2003348136A (ja) * 2002-05-24 2003-12-05 Hitachi Ltd ルータ設定方法
WO2004040860A1 (ja) * 2002-10-31 2004-05-13 Fujitsu Limited Ipマルチキャスト通信システム
JP2004274112A (ja) * 2003-03-05 2004-09-30 Fujitsu I-Network Systems Ltd 経路切替装置
JP2005027304A (ja) * 2003-06-30 2005-01-27 Microsoft Corp 接続操作を用いるネットワーク負荷分散

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030009559A1 (en) * 2001-07-09 2003-01-09 Naoya Ikeda Network system and method of distributing accesses to a plurality of server apparatus in the network system
GB2389023B (en) * 2002-05-20 2004-04-28 Sun Microsystems Inc Computer system, method and network
JP3817205B2 (ja) 2002-07-31 2006-09-06 アンリツ株式会社 ネットワーク中継装置及び該装置の通信離脱方法
US20050111474A1 (en) * 2002-10-31 2005-05-26 Fujitsu Limited IP multicast communication system
JP4257509B2 (ja) * 2003-06-27 2009-04-22 日本電気株式会社 ネットワークシステム、ノード装置、冗長構築方法、および冗長構築プログラム
US7613822B2 (en) * 2003-06-30 2009-11-03 Microsoft Corporation Network load balancing with session information
US7590736B2 (en) * 2003-06-30 2009-09-15 Microsoft Corporation Flexible network load balancing
US7636917B2 (en) * 2003-06-30 2009-12-22 Microsoft Corporation Network load balancing with host status information

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000013439A (ja) * 1998-06-22 2000-01-14 Fujitsu Ltd マルチリンク型ルーティング方法およびマルチリンク型ルータ
US6650640B1 (en) * 1999-03-01 2003-11-18 Sun Microsystems, Inc. Method and apparatus for managing a network flow in a high performance network interface
US20020038339A1 (en) * 2000-09-08 2002-03-28 Wei Xu Systems and methods for packet distribution
JP2002164930A (ja) * 2000-11-29 2002-06-07 Nippon Telegr & Teleph Corp <Ntt> 通信方法
JP2002204250A (ja) * 2000-12-28 2002-07-19 Fujitsu Ltd トラフィック情報収集装置およびトラフィック情報収集方法
JP2003023444A (ja) * 2001-07-06 2003-01-24 Fujitsu Ltd 仮想ルータを利用した動的な負荷分散システム
JP2003131961A (ja) * 2001-07-09 2003-05-09 Hitachi Ltd ネットワークシステム及び負荷分散方法
JP2003143193A (ja) * 2001-10-30 2003-05-16 Furukawa Electric Co Ltd:The ネットワーク間接続方法、その装置およびその装置を用いたネットワーク間接続システム
JP2003348136A (ja) * 2002-05-24 2003-12-05 Hitachi Ltd ルータ設定方法
WO2004040860A1 (ja) * 2002-10-31 2004-05-13 Fujitsu Limited Ipマルチキャスト通信システム
JP2004274112A (ja) * 2003-03-05 2004-09-30 Fujitsu I-Network Systems Ltd 経路切替装置
JP2005027304A (ja) * 2003-06-30 2005-01-27 Microsoft Corp 接続操作を用いるネットワーク負荷分散

Also Published As

Publication number Publication date
US20060209787A1 (en) 2006-09-21
US7864750B2 (en) 2011-01-04
JP2006261805A (ja) 2006-09-28

Similar Documents

Publication Publication Date Title
JP4621044B2 (ja) 負荷分散装置および負荷分散方法
US8300646B2 (en) Message handling in a local area network having redundant paths
JP3714238B2 (ja) ネットワーク転送システム及び転送方法
US7751394B2 (en) Multicast packet relay device adapted for virtual router
JP4524686B2 (ja) クラスタシステム及びクラスタメンバ並びにプログラム
JP4693518B2 (ja) マルチキャスト通信装置及びこれを用いたponシステム
WO2005060187A1 (ja) クラスタシステム、クラスタメンバ、故障復旧方法及びプログラム
JPH0522345A (ja) 最大転送単位の最適値管理決定方式
JP2002374276A (ja) データ中継方法、その装置およびその装置を用いたデータ中継システム
JP2005244904A (ja) マルチキャストネットワーク装置,マルチキャストネットワークシステムおよびマルチキャスト方法
CN104106244A (zh) 控制装置、通信系统、通信方法和程序
AU2003204799A1 (en) Method for implementing router interface backup with Virtual Router Redundancy Protocol
US6208647B1 (en) Multicast extension to data link layer protocols
WO2005081473A1 (ja) 通信処理システム、パケット処理負荷分散装置及びそれに用いるパケット処理負荷分散方法
JP2003046547A (ja) パケット転送方法およびパケット送受信装置
JP5601193B2 (ja) ネットワーク中継システム、ネットワーク中継装置、輻輳状態通知方法、及びプログラム
JP2008103864A (ja) Ipマルチキャストサービスシステム、スイッチ装置及びそれらに用いるグループ選択送信方法
KR20130121164A (ko) 분산 시스템 아키텍처에서의 효율적인 멀티캐스팅 방법
JP2004297521A (ja) マルチキャスト通信ネットワークにおける通信方法、受信端末、l2スイッチおよびl3スイッチ
US10708163B1 (en) Methods, systems, and computer readable media for automatic configuration and control of remote inline network monitoring probe
JPH1084385A (ja) 複数サーバとの通信接続装置及び通信接続方法
Cisco Novell IPX Configuration Examples
WO2007118071A2 (en) Apparatus and methods for providing network security
JP4357310B2 (ja) 複数のネットワークに同時接続する通信方法および通信装置
KR100744935B1 (ko) Isp간 최적 경로 선정을 위한 라우터 자동 설정 시스템및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100706

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100929

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101026

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101029

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees