JP7188602B2 - L2スイッチ、通信制御方法、および、通信制御プログラム - Google Patents
L2スイッチ、通信制御方法、および、通信制御プログラム Download PDFInfo
- Publication number
- JP7188602B2 JP7188602B2 JP2021538585A JP2021538585A JP7188602B2 JP 7188602 B2 JP7188602 B2 JP 7188602B2 JP 2021538585 A JP2021538585 A JP 2021538585A JP 2021538585 A JP2021538585 A JP 2021538585A JP 7188602 B2 JP7188602 B2 JP 7188602B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- switch
- port
- mac address
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2816—Controlling appliance services of a home automation network by calling their functionalities
- H04L12/2818—Controlling appliance services of a home automation network by calling their functionalities from a device located outside both the home and the home network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/66—Layer 2 routing, e.g. in Ethernet based MAN's
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/72—Routing based on the source address
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Description
本発明は、L2スイッチ、通信制御方法、および、通信制御プログラムに関する。
ネットワークを経由した通信、例えば、端末、サーバ間の通信において、複数のネットワーク機能(NF:Network Function)により、ロードバランサ、ファイアウォール等の機能を提供する技術がある。上記の技術において、ネットワークに大容量トラヒックの転送が行われる場合等には、複数台のNFに処理を分散させるスケールアウトの手法が用いられる。ここで、NFが上記のファイアウォール等の機能を提供するものである場合等、上りの通信と当該通信の下りの通信とで同じNFを経由する必要がある場合もある。
このような場合、上りの通信と当該通信の下りの通信とで同じNFを経由するようにするため、NFの後段にL2(レイヤ2)スイッチを配置する。そして、このL2スイッチは、受信した上り通信のセッション情報を格納しておく。そして、L2スイッチが当該上り通信の下り通信を受信した場合、当該上り通信のセッション情報をもとに、当該上り通信が経由したNFと同じNFに当該下り通信を転送する技術が提案されている(特許文献1参照)。
ここで、上記のL2スイッチに故障が発生した場合に備えて、L2スイッチを冗長構成にする場合がある。このような場合、冗長構成のL2スイッチのうち、マスターのL2スイッチが故障すると、本来、マスターのL2スイッチに転送されるべき下り通信は、スレーブのL2スイッチに転送される。しかし、スレーブのL2スイッチには、マスターのL2スイッチが受信した上り通信に関するセッション情報がない。そのため、スレーブのL2スイッチは、上り通信が経由したNFと同じNFに下り通信を転送することができない。その結果、下り通信のセッションが断絶したり、パケットドロップが発生したりするという問題があった。
そこで、本発明は、前記した問題を解決し、NFに接続されるL2スイッチのうち、マスターのL2スイッチに故障が発生した場合でも、セッションの断絶やパケットドロップの発生を低減することを課題とする。
前記した課題を解決するため、本発明は、ネットワーク装置から送信される上り通信を中継する他のL2(レイヤ2)スイッチから、前記上り通信のコピーを受信する受信部と、ネットワーク装置それぞれに設定される1以上のMACアドレスを示した装置情報と、前記受信した上り通信のコピーに含まれる送信元MACアドレスとに基づき、前記上り通信の送信元のネットワーク装置を特定する装置特定部と、前記装置情報と、自身のL2スイッチのポートごとに当該ポートにより接続される装置のMACアドレスを示したMACアドレス情報とを参照して、前記特定された上り通信の送信元のネットワーク装置に接続する前記自身のL2スイッチのポートと、前記ポートにより接続される前記上り通信の送信元のMACアドレスとを特定し、前記受信した上り通信のコピーに設定されたヘッダ情報に、前記特定されたポートおよびMACアドレスの情報を対応付けた前記上り通信のセッション情報を記憶部に記録するセッション情報処理部と、前記上り通信に対する下り通信を受信した場合、前記記憶部に記録された前記上り通信のセッション情報に示されるポートおよびMACアドレスを用いて、前記下り通信を、前記上り通信の送信元のネットワーク装置に転送する転送部と、を備えることを特徴とする。
本発明によれば、NFに接続されるL2スイッチのうち、マスターのL2スイッチに故障が発生した場合でも、セッションの断絶やパケットドロップの発生を低減することができる。
以下、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。まず、図1、図2を用いて各実施形態のL2(レイヤ2)スイッチ10の基本的動作を説明する。本発明は以下に説明する各実施形態に限定されない。
図1に示すように、L2スイッチ10は、例えば、複数のNF装置(NF B-1~NF B-3、NF C-1~NF C-3)に接続され、いずれかのNF装置(ネットワーク装置)から受信した通信を次のNF装置に転送する。ここで、NF装置が、例えば、ロードバランサや、ファイアウォールの機能を提供する装置の場合、上り通信と下り通信とで同じNF装置を経由する必要がある。
そこで、L2スイッチ10は、上り通信に対する下り通信を受信した場合、下り通信を、上り通信と同じNF装置宛に転送するため、以下の処理を行う。すなわち、L2スイッチ10は、上り通信の受信時に当該上り通信の送信元を示すヘッダ情報(例えば、NF B-1のMACアドレス)をセッション情報DB(データベース)(図3参照)に格納する((1))。その後、L2スイッチ10は、下り通信の受信時にセッション情報DB(図3参照)を参照し、下り通信のヘッダ情報を書き換える((2))。
例えば、L2スイッチ10は、下り通信のヘッダ情報における宛先MACアドレスをNF B-1のMACアドレスに書き換える。これにより、L2スイッチ10から出力された下り通信は、上り通信と同じNF装置(NF B-1)に到達する。
ここで、各実施形態の通信システムは、上記のL2スイッチ10に故障が発生した場合に備え、L2スイッチ10を冗長構成とする。すなわち、通信システムは、マスターのL2スイッチ10に加え、当該マスターのL2スイッチ10が故障したときに用いられるスレーブのL2スイッチ10を備える。以下の説明において、マスターのL2スイッチ10をL2スイッチ10Aとし、スレーブのL2スイッチ10をL2スイッチ10Bとする。
例えば、L2スイッチ10Aが、図2に示す上り通信を転送した後で、故障が発生した場合、当該上り通信に対する下り通信はスレーブのL2スイッチ10Bに転送される。
なお、L2スイッチ10(10A,10B)は、NF装置の間に設置されてもよいし、NF装置とNF装置以外の装置(例えば、サーバ)との間に設置されてもよい。
[第1の実施形態]
[概要]
まず、図3を用いて、第1の実施形態の通信システムの動作概要を説明する。
[概要]
まず、図3を用いて、第1の実施形態の通信システムの動作概要を説明する。
例えば、第1の実施形態の通信システムにおけるL2スイッチ10Aは、NF B-1から、IP A→IP Dの上り通信を受信すると、セッション情報DB14AにおけるHash Index(5tuple)に上記の上り通信のIP A、IP D,…を記録し、当該上り通信に関する保持情報として当該上り通信の送信元MACアドレス(MAC 1-1)および入力ポート(Port M-1)を記録する((1):5tuple、入力MACアドレス、入力ポートを記録)。
また、L2スイッチ10Aは、上り通信のパケットをコピーし、スレーブのL2スイッチ10Bへ転送する((2))。
L2スイッチ10Bは、上り通信のパケットのコピーを受信すると、受信したパケットに基づき、セッション情報DB14Bにセッション情報を記録する。
例えば、コピーパケットがL2スイッチ10BのPort s-4から入力された場合、L2スイッチ10Bは、セッション情報DB14Bに、上記のコピーパケットの5tuple(IP A、IP D等)と、当該コピーパケットのソースMACアドレス(MAC 1-1)および入力ポート(Port s-4)とを対応付けたセッション情報(符号301参照)を記録する。
その後、L2スイッチ10Bは、入力パケット(上記のコピーパケット)のソースMACアドレスから、上り通信で経由したNF装置を特定する((3-1))。
例えば、L2スイッチ10Bは、入力パケットのソースMACアドレスと、装置情報DB(装置ごとに当該装置で用いられるMACアドレスを示した情報)とを参照して、上り通信で経由したNF装置がNF B-1であることを特定する。
次に、L2スイッチ10Bは、(3-1)で特定したNF装置と同じNF装置内のMACアドレスと、MAC学習DB15Bに登録されているMACアドレスとを比較し、スレーブのL2スイッチ10Bに接続されているMACアドレスを特定する((3-2))。なお、MAC学習DB15Bは、当該L2スイッチ10Bの用いるポートごとに当該ポートにより接続される装置のMACアドレスを示した情報である。
例えば、L2スイッチ10Bは、図3に示す装置情報DBとMAC学習DB15Bとを参照して、NF B-1内のMACアドレスのうち、L2スイッチ10Bに接続されているMACアドレス(例えば、MAC 1-2)を特定する。
次に、L2スイッチ10Bは、MAC学習DB15Bを参照して、(3-2)で特定したMACアドレスに接続するポートを特定する((3-3))。
例えば、L2スイッチ10Bは、MAC学習DB15Bを参照して、NF B-1のMAC 1-2に接続するPort s-1を特定する。
そして、L2スイッチ10Bは、(3-2)で特定したMACアドレスの情報と、(3-3)で特定したポートの情報とを用いてセッション情報DB14Bを更新する((3-4))。
例えば、L2スイッチ10Bは、符号301に示す情報におけるMACアドレスとポートとを符号302に示すように更新する。すなわち、L2スイッチ10Bは、セッション情報DB14Bに格納される、下り通信のHash Index(5tuple)(IP A、IP D,…)のセッション情報における保持情報を、MAC 1-2、Port s-1に更新する。
その後、L2スイッチ10Bは、L2スイッチ10Aの故障により、NF C-1から下り通信を受信した場合、上記の更新後のセッション情報DB14Bに基づき、当該下り通信をNF B-1へ転送する((4))。つまり、L2スイッチ10Bは、上記の更新後のセッション情報(符号302参照)に基づき、下り通信の宛先MACアドレスをMAC 1-2に変更し、Port s-1から送信する。これにより、下り通信は、上り通信が経由したNF B-1に到達する。
[構成]
次に、図4を用いて、第1の実施形態の通信システムにおけるL2スイッチ10AおよびL2スイッチ10Bの構成例を説明する。なお、図4において、装置情報DBは、L2スイッチ10A,10Bの外部に配置されるものとして描いているが、L2スイッチ10A,10Bの内部に配置されていてもよい。
次に、図4を用いて、第1の実施形態の通信システムにおけるL2スイッチ10AおよびL2スイッチ10Bの構成例を説明する。なお、図4において、装置情報DBは、L2スイッチ10A,10Bの外部に配置されるものとして描いているが、L2スイッチ10A,10Bの内部に配置されていてもよい。
まず、L2スイッチ10Aの構成例を説明する。L2スイッチ10Aは、セッション学習部(セッション情報作成部)11Aと、L2転送部12Aと、情報通知部13Aと、セッション情報DB14Aと、MAC学習DB(MACアドレス情報)15Aとを備える。なお、破線で示す故障判断部16Aは装備される場合と装備されない場合とがあり、装備される場合について第2の実施形態で述べる。
セッション学習部11Aは、他の装置から受信した通信(例えば、上り通信)のヘッダ情報に基づき、当該通信のセッション情報(例えば、当該通信の5tupleと、送信元MACアドレスおよび入力ポートを示した情報)を作成する。そして、セッション学習部11Aは、作成したセッション情報をセッション情報DB14Aに格納する。
L2転送部12Aは、他の装置から受信した通信を転送する。また、L2転送部12Aは、下り通信を受信した場合、セッション情報DB14Aに示される当該通信のセッション情報に基づき、下り通信を転送する。
例えば、L2転送部12Aは、下り通信を受信すると、当該下り通信の5tupleに基づき、セッション情報DB14Aから当該通信のセッション情報を検索する。そして、L2転送部12Aは、当該下り通信の宛先MACアドレスを、当該通信のセッション情報に示されるMACアドレスに変更する。そして、L2転送部12Aは、宛先MACアドレスを変更した下り通信を、当該通信のセッション情報に示されるポートから送信する。
情報通知部13Aは、L2転送部12Aが転送する通信(例えば、上り通信)のパケットをコピーし、当該コピーしたポケット(コピーパケット)をL2スイッチ10Bへ転送する。
セッション情報DB14Aは、当該L2スイッチ10Aで受信した通信の5tupleに対し、当該通信の送信元MACアドレスおよび入力ポートを対応付けた情報である(図3参照)。
MAC学習DB15Aは、当該L2スイッチ10Aのポートごとに当該ポートにより接続される装置のMACアドレスを示した情報である(図3参照)。
なお、上記のセッション情報DB14AおよびMAC学習DB15Aは、L2スイッチ10Aの記憶部(図示省略)の所定領域に装備される。
L2スイッチ10Bは、セッション学習部(セッション情報作成部)11Bと、情報アップデート部(装置特定部およびセッション情報処理部)111Bと、L2転送部12Bと、情報通知部13Bと、セッション情報DB14Bと、MAC学習DB(MACアドレス情報)15Bとを備える。なお、破線で示す故障判断部16Bは装備される場合と装備されない場合とがあり、装備される場合について第2の実施形態で述べる。
セッション学習部11Bは、他の装置から受信した通信のヘッダ情報に基づき、当該通信のセッション情報を作成する。そして、セッション学習部11Bは、作成したセッション情報をセッション情報DB14Bに格納する。
例えば、セッション学習部11Bは、L2スイッチ10Aから上り通信のコピーパケットを受信すると、当該コピーパケットのヘッダ情報に基づき、当該コピーパケットの通信のセッション情報(例えば、当該通信の5tupleと、送信元MACアドレスおよび入力ポートを示した情報)を作成する。そして、セッション学習部11Bは、作成したセッション情報をセッション情報DB14Bに格納する。
情報アップデート部111Bは、セッション情報DB14Bに格納されるセッション情報の更新処理を行う。
例えば、情報アップデート部111Bは、まず、情報通知部13Bで受信した上り通信のコピーパケットの送信元MACアドレスと、装置情報DBとを参照して、上り通信で経由したNF装置を特定する。
次に、情報アップデート部111Bは、装置情報DBとMAC学習DB15Bとを参照して、特定したNF装置のMACアドレスのうち、当該L2スイッチ10Bに接続されているMACアドレス(例えば、図3に示す、NF B-1のMAC 1-2)を特定する。
そして、情報アップデート部111Bは、MAC学習DB15Bを参照して、特定したMACアドレスに接続するポートを特定する。その後、情報アップデート部111Bは、セッション情報DB14Bに格納される当該通信のセッション情報を、上記の特定したMACアドレスとポートの情報とを用いて更新する。
L2転送部12Bは、他の装置から受信した通信を転送する。また、L2転送部12Bは、下り通信を受信した場合、セッション情報DB14Bに示される当該通信のセッション情報に基づき、下り通信を転送する。
例えば、L2転送部12Bは、下り通信を受信すると、当該下り通信の5tupleに基づき、セッション情報DB14Bから当該通信のセッション情報を検索する。そして、L2転送部12Bは、当該下り通信の宛先MACアドレスを、当該通信のセッション情報に示されるMACアドレスに変更する。そして、L2転送部12Bは、宛先MACアドレスを変更した下り通信を、当該通信のセッション情報に示されるポートから送信する。
なお、セッション情報DB14Bのセッション情報が情報アップデート部111Bにより更新された場合、L2転送部12Bは、更新後のセッション情報に基づき、上記の転送処理を行う。これにより、L2転送部12Bは、下り通信を受信した場合、当該下り通信を上り通信の経由したNF装置へ転送することができる。
情報通知部13Bは、L2スイッチ10Aから送信されたコピーパケットを受信する。
セッション情報DB14Bは、当該L2スイッチ10Bで受信した通信のセッション情報を格納する(図3参照)。
MAC学習DB15Bは、当該L2スイッチ10Bのポートごとに当該ポートにより接続される装置のMACアドレスを示した情報である(図3参照)。
なお、上記のセッション情報DB14BおよびMAC学習DB15Bは、L2スイッチ10Bの記憶部(図示省略)の所定領域に装備される。
[処理手順]
次に、図5を用いて、通信システムの処理手順の例を説明する。例えば、通信システムのL2スイッチ10AのL2転送部12Aが上り通信を受信すると(S1)、セッション学習部11Aは、当該通信のセッション情報(5tupleとMACアドレス、スイッチの物理ポート)をセッション情報DB14Aに格納する(S2)。
次に、図5を用いて、通信システムの処理手順の例を説明する。例えば、通信システムのL2スイッチ10AのL2転送部12Aが上り通信を受信すると(S1)、セッション学習部11Aは、当該通信のセッション情報(5tupleとMACアドレス、スイッチの物理ポート)をセッション情報DB14Aに格納する(S2)。
次に、L2スイッチ10Aの情報通知部13Aは、受信した上り通信のパケットをコピーし(S3)、スレーブのL2スイッチ10Bへ転送する(S4)。また、L2転送部12Aは、S1で受信した上り通信については、転送情報に従い正規のルートへ転送する(S5)。
なお、S4で送信されたコピーパケットは、L2スイッチ10Bの情報通知部13Bが受信する。そして、L2スイッチ10Bのセッション学習部11Bは、受信したコピーパケットのセッション情報(5tupleとMACアドレス、スイッチの物理ポート)をセッション情報DB14Bに格納する。
S5の後、L2スイッチ10Bの情報アップデート部111Bは、装置情報DB、MAC学習DB15Bに基づき、セッション情報DB14Bに格納されるセッション情報の更新を行う。
例えば、情報アップデート部111Bは、装置情報DB、MAC学習DB15Bを参照し(S6)、セッション情報DB14Bに保存されている送信元IPおよびMACアドレスと、装置情報DBとを用いて、同じNF装置のMACアドレスを特定し、MAC学習DB15Bから、特定したMACアドレスへの物理ポートを特定する(S7)。
例えば、情報アップデート部111Bは、セッション情報DB14Bに格納されるコピーパケットの通信に関するセッション情報から、コピーパケットの送信元のNF装置と当該NF装置に設定されるMACアドレスを特定する。そして、情報アップデート部111Bは、特定したMACアドレスのうちL2スイッチ10Bと接続されるMACアドレスと、当該MACアドレスへの物理ポートとを特定する。
S7の後、情報アップデート部111Bは、S7で特定したMACアドレスと物理ポートとを用いてセッション情報DB14Bを更新する(S8)。
S8の後、L2スイッチ10BのL2転送部12Bは、下り通信を受信すると(S9)、S8で更新されたセッション情報DB14Bに基づき、当該下り通信の宛先MACアドレスを変更し(S10)、該当物理ポートから転送する(S11)。
このような通信システムによれば、上り通信を転送したL2スイッチ10Aに故障が発生した場合でも、L2スイッチ10Bは、下り通信を当該上り通信が経由したNF装置に転送することができる。
[第2の実施形態]
次に、第2の実施形態の通信システムを説明する。第2の通信システムは、L2スイッチ10Bが、L2スイッチ10Aに故障が発生したか否かを監視し、L2スイッチ10Aに故障が発生したと判断した場合、セッション情報DB14Bの更新を行うことを特徴とする。
次に、第2の実施形態の通信システムを説明する。第2の通信システムは、L2スイッチ10Bが、L2スイッチ10Aに故障が発生したか否かを監視し、L2スイッチ10Aに故障が発生したと判断した場合、セッション情報DB14Bの更新を行うことを特徴とする。
[概要]
図6を用いて、第2の実施形態の通信システムの動作概要を説明する。第2の実施形態の通信システムは、図3で説明した(1)および(2)と同じ手順により、L2スイッチ10Bのセッション情報DB14Bに、Hash Index(5tuple)「IP A,IP D,…」に保持情報「MAC 1-1、Port s-4」を対応付けたセッション情報(図3の符号301に示すセッション情報と同じセッション情報)を格納する。
図6を用いて、第2の実施形態の通信システムの動作概要を説明する。第2の実施形態の通信システムは、図3で説明した(1)および(2)と同じ手順により、L2スイッチ10Bのセッション情報DB14Bに、Hash Index(5tuple)「IP A,IP D,…」に保持情報「MAC 1-1、Port s-4」を対応付けたセッション情報(図3の符号301に示すセッション情報と同じセッション情報)を格納する。
その後、L2スイッチ10Bが、下り通信を受信すると、L2スイッチ10Aに故障が発生したか否かを確認する。そして、L2スイッチ10Bが、L2スイッチ10Aに故障が発生したと判断した場合(故障の場合)、第1の実施形態と同様にセッション情報を更新する。すなわち、L2スイッチ10Bは、装置情報DBおよびMAC学習DB15Bを参照して、Hash Index(5tuple)「IP A,IP D,…」のセッション情報における保持情報を「MAC 1-2、Port s-1」に更新する。
なお、図6において説明を省略しているが、L2スイッチ10Bは下り通信を受信したけれども、L2スイッチ10Aに故障が発生していないと判断した場合、下り通信は、更新前のセッション情報に基づきPort s-4からL2スイッチ10Aに転送される。そして、L2スイッチ10Aは、転送された下り通信について、セッション情報DB14Aにおける上り通信のセッション情報に基づき、NF B-1に転送する。
[構成]
次に、図1に戻って、第2の実施形態の通信システムにおけるL2スイッチ10AおよびL2スイッチ10Bの構成例を説明する。第1の実施形態と同じ構成は同じ符号を付して説明を省略する。まず、L2スイッチ10Aの構成例を説明する。
次に、図1に戻って、第2の実施形態の通信システムにおけるL2スイッチ10AおよびL2スイッチ10Bの構成例を説明する。第1の実施形態と同じ構成は同じ符号を付して説明を省略する。まず、L2スイッチ10Aの構成例を説明する。
L2スイッチ10Aは、故障判断部16Aを備える。また、L2スイッチ10Bは、故障判断部16Bを備える。故障判断部16A,16Bは、例えば、相手方のL2スイッチ10にパケットを送信することで、相手方のL2スイッチ10に故障が発生しているか否かを判断する。
例えば、L2スイッチ10Bの故障判断部16Bは、L2スイッチ10Aの故障判断部16Aに所定間隔で監視パケット(例えば、ping等)を送信し、応答を確認することにより、L2スイッチ10Aに故障が発生していないかを監視する。そして、故障判断部16BがL2スイッチ10Aの故障を検知すると、情報アップデート部111Bへその旨を通知する。
情報アップデート部111Bは、故障判断部16BによりL2スイッチ10Aに故障が発生した旨の通知を受信すると、第1の実施形態と同様に、セッション情報DB14Bを更新する。
すなわち、情報アップデート部111Bは、情報通知部13Bで受信したコピーパケットの送信元MACアドレスと、装置情報DBとを参照して、上り通信で経由したNF装置を特定する。
次に、情報アップデート部111Bは、装置情報DBとMAC学習DB15Bとを参照して、上記の特定したNF装置のMACアドレスのうち、当該L2スイッチ10Bに接続されているMACアドレス(例えば、図6に示す、NF B-1のMAC 1-2)を特定する。
次に、情報アップデート部111Bは、MAC学習DB15Bを参照して、特定したMACアドレスに接続するポートを特定する。その後、情報アップデート部111Bは、セッション情報DB14Bに格納される当該通信のセッション情報を、上記の特定したMACアドレスとポートの情報とを用いて更新する。
[処理手順]
次に、図7を用いて、第2の通信システムの処理手順の例を説明する。図7のS1~S5は、図5のS1~S5と同様なので説明を省略し、図7のS21から説明する。
次に、図7を用いて、第2の通信システムの処理手順の例を説明する。図7のS1~S5は、図5のS1~S5と同様なので説明を省略し、図7のS21から説明する。
図7のS5の後、L2スイッチ10BのL2転送部12Bが、下り通信を受信すると(S21)、故障判断部16Bは、マスターのL2スイッチ10Aに故障が発生しているか否かを判断する(S22)。
ここで、故障判断部16BがマスターのL2スイッチ10Aに故障が発生していると判断した場合(S22でYes)、故障判断部16Bは、情報アップデート部111BへL2スイッチ10Aに故障が発生した旨の通知を行う。そして、情報アップデート部111Bは、S23~S25の処理を実行する。このS23~S25の処理は、図5のS6~S8の処理と同様であり、図7のS26,S27の処理は、図5のS10,S11の処理と同様であるので、説明を省略する。
一方、S22において、故障判断部16BがマスターのL2スイッチ10Aに故障が発生していないと判断した場合(S22でNo)、S23~S25の処理をスキップし、S26へ進む。つまり、L2スイッチ10Aに故障が発生していない場合、L2スイッチ10BのL2転送部12Bは、L2スイッチ10Aからのコピーパケットに基づき作成されたセッション情報に基づき、下り通信をL2スイッチ10Aへ返す。そして、L2スイッチ10AのL2転送部12Aは、当該下り通信を受信すると、セッション情報DB14Aに基づき、当該下り通信を上り通信の経由したNF装置へ転送する。
このような通信システムによっても、L2スイッチ10Bは、下り通信を上り通信の経由したNF装置へ転送することができる。
[その他の実施形態]
なお、L2スイッチ10Bは、以下に示す方法1,2により、下り通信をL2スイッチ10Aへ転送してもよい。
なお、L2スイッチ10Bは、以下に示す方法1,2により、下り通信をL2スイッチ10Aへ転送してもよい。
図8を用いて、方法1,2における通信システムの動作概要を説明する。まず、方法1における通信システムの動作概要を説明する。
方法1における通信システムは、図3で説明した(1)と同じ手順によりセッション情報DB14Aに、上り通信のセッション情報を格納する。また、通信システムは、(2)と同じ手順により、L2スイッチ10Bのセッション情報DB14Bに、図8の符号301に示すセッション情報を格納する。
そして、L2スイッチ10Bは、下り通信を受信すると、符号301に示すセッション情報に基づき、下り通信をマスターのL2スイッチ10Aへ転送する(方法1:(3))。
その後、L2スイッチ10Aは、L2スイッチ10Bから下り通信を受信すると、セッション情報DB14Aに基づき、当該下り通信を上り通信と同じNF装置(NF B-1)へ転送する(方法1:(4))。
次に、方法2における通信システムの動作概要を説明する。方法2における通信システムも、図3で説明した(1)と同じ手順によりセッション情報DB14Aに、上り通信のセッション情報を格納する。また、L2スイッチ10Bは、L2スイッチ10Aへのポートを事前に設定しておく(方法2:(2))。
そして、L2スイッチ10Bが下り通信のパケットを受信した場合、(2)における設定どおりに、当該下り通信をマスターのL2スイッチ10Aに転送する(方法2:(3))。その後、L2スイッチ10Aは、方法1の(4)と同様に、L2スイッチ10Bから下り通信を受信すると、セッション情報DB14Aに基づき、当該下り通信を上り通信と同じNF装置(NF B-1)へ転送する(方法2:(4))。
[処理手順]
図9を用いて上記の方法1の処理手順の例を説明する。図9のS1~S21は、図7のS1~S21と同じなので、図9のS32から説明する。
図9を用いて上記の方法1の処理手順の例を説明する。図9のS1~S21は、図7のS1~S21と同じなので、図9のS32から説明する。
方法1において、L2スイッチ10BのL2転送部12Bは、図9のS21で受信した下り通信について、セッション情報DB14Bに基づき、マスターのL2スイッチ10Aへ転送する(S32)。そして、マスターのL2スイッチ10AのL2転送部12Aは、S32で転送された下り通信のパケットを、セッション情報DB14Aに基づき転送する(S33:マスターのL2スイッチで転送処理を実施)。
次に、図10を用いて上記の方法2の処理手順の例を説明する。図10のS1、S2は、図7のS1、S2と同じなので、図10のS41から説明する。
方法2において、L2スイッチ10AのL2転送部12Aは、S1で受信した上り通信のパケットを次のNF装置へ転送する(S41)。その後、L2スイッチ10BのL2転送部12Bが下り通信を受信すると(S42)、事前に設定された物理ポート(L2スイッチ10Aに接続されるポート)へ、当該下り通信のパケットを転送する(S43)。
そして、マスターのL2スイッチ10AのL2転送部12Aは、図9のS33と同様に、転送された下り通信のパケットを、セッション情報DB14Aに基づき転送する(S44:マスターのL2スイッチで転送処理を実施)。
このようにすることでも、通信システムは、下り通信を上り通信の経由したNF装置へ転送することができる。なお、上記の方法1,2で説明した方法は、例えば、L2スイッチ10Aに発生した故障が、装置自体の故障ではなく、ポートの故障(例えば、L2スイッチ10Aと後段のNF装置とを接続するポートの故障)であった場合に有効である。
また、通信システムのL2スイッチ10Bは、例えば、図11に示すように、下り通信のパケットをL2スイッチ10Bの全てのポートにコピーし、転送してもよい。
例えば、L2スイッチ10Bが、下り通信を受信するポートから、パケットを受信した場合、当該下り通信のパケットをすべてのポートにコピーし、転送する((1))。つまり、L2スイッチ10Bは、下り通信のパケットを、図11に示すL2スイッチ10AおよびNF B-1~B3に送信する。ここで、パケットの送信先の装置が故障している場合、パケットは破棄される((2))。よって、例えば、L2スイッチ10Aが故障している場合、L2スイッチ10Aに送信した下り通信のパケットは破棄される。また、NF装置は、自身のNF装置が処理対象としないパケット(不要パケット)を受信した場合、当該パケットをドロップする((3))。これにより、下り通信は、上り通信で経由したNF装置に到達する。
次に、図11を用いて上記の通信システムの処理手順の例を説明する。図11のS1、S2、S41、S42は、図10のS1、S2、S41、S42と同じなので、図11のS51から説明する。
L2スイッチ10BのL2転送部12Bは、S42で受信した下り通信のパケットをコピーし(S51)、全てのポートへ転送する(S52)。その後、当該パケットを受信した各NF装置で、不要パケットを廃棄する(S53)。
このようにすることでも、通信システムは、下り通信を上り通信の経由したNF装置へ転送することができる。
なお、前記した各実施形態においてL2スイッチ10Aの情報通知部13Aは、L2スイッチ10Bに、上り通信のコピーパケットを送信することとしたがこれに限定されない。例えば、情報通知部13Aは、セッション情報DB14Aに格納される上り通信のセッション情報をL2スイッチ10Bに送信してもよい。
[プログラム]
また、上記の実施形態で述べたL2スイッチ10Bの機能を実現するプログラムを所望の情報処理装置(コンピュータ)にインストールすることによって実装できる。例えば、パッケージソフトウェアやオンラインソフトウェアとして提供される上記のプログラムを情報処理装置に実行させることにより、情報処理装置をL2スイッチ10Bとして機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータ、ラック搭載型のサーバコンピュータ等が含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistants)等がその範疇に含まれる。また、L2スイッチ10Bを、クラウドサーバに実装してもよい。
また、上記の実施形態で述べたL2スイッチ10Bの機能を実現するプログラムを所望の情報処理装置(コンピュータ)にインストールすることによって実装できる。例えば、パッケージソフトウェアやオンラインソフトウェアとして提供される上記のプログラムを情報処理装置に実行させることにより、情報処理装置をL2スイッチ10Bとして機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータ、ラック搭載型のサーバコンピュータ等が含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistants)等がその範疇に含まれる。また、L2スイッチ10Bを、クラウドサーバに実装してもよい。
図13を用いて、上記のプログラム(通信制御プログラム)を実行するコンピュータの一例を説明する。図13に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011およびRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。ディスクドライブ1100には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1110およびキーボード1120が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1130が接続される。
ここで、図13に示すように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。前記した実施形態で説明したセッション情報DB14B、MAC学習DB15Bは、例えばハードディスクドライブ1090やメモリ1010に装備される。
そして、CPU1020が、ハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
なお、上記の通信制御プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、上記のプログラムに係るプログラムモジュール1093やプログラムデータ1094は、LANやWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10,10A,10B L2スイッチ
11A,11B セッション学習部
12A,12B L2転送部
13A 情報通知部
14A,14B セッション情報DB
15A,15B MAC学習DB
16A,16B 故障判断部
111B 情報アップデート部
11A,11B セッション学習部
12A,12B L2転送部
13A 情報通知部
14A,14B セッション情報DB
15A,15B MAC学習DB
16A,16B 故障判断部
111B 情報アップデート部
Claims (5)
- ネットワーク装置から送信される上り通信を中継する他のL2(レイヤ2)スイッチから、前記上り通信のコピーを受信する受信部と、
ネットワーク装置それぞれに設定される1以上のMACアドレスを示した装置情報と、前記受信した上り通信のコピーに含まれる送信元MACアドレスとに基づき、前記上り通信の送信元のネットワーク装置を特定する装置特定部と、
前記装置情報と、自身のL2スイッチのポートごとに当該ポートにより接続される装置のMACアドレスを示したMACアドレス情報とを参照して、前記特定された上り通信の送信元のネットワーク装置に接続する前記自身のL2スイッチのポートと、前記ポートにより接続される前記上り通信の送信元のMACアドレスとを特定し、前記受信した上り通信のコピーに設定されたヘッダ情報に、前記特定されたポートおよびMACアドレスの情報を対応付けた前記上り通信のセッション情報を記憶部に記録するセッション情報処理部と、
前記上り通信に対する下り通信を受信した場合、前記記憶部に記録された前記上り通信のセッション情報に示されるポートおよびMACアドレスを用いて、前記下り通信を、前記上り通信の送信元のネットワーク装置に転送する転送部と、
を備えることを特徴とするL2スイッチ。 - 前記他のL2スイッチに故障が発生したか否かを判断する故障判断部をさらに備え、
前記故障判断部により前記他のL2スイッチに故障が発生したと判断された場合、
前記装置特定部は、前記上り通信の送信元のネットワーク装置を特定し、
前記セッション情報処理部は、前記特定された上り通信の送信元のネットワーク装置に接続する前記自身のL2スイッチのポートと、前記ポートにより接続される前記上り通信の送信元のMACアドレスとを特定し、前記上り通信のコピーに設定されたヘッダ情報に、前記特定されたポートおよびMACアドレスの情報を対応付けた、前記上り通信のセッション情報を前記記憶部に記録する
ことを特徴とする請求項1に記載のL2スイッチ。 - 前記他のL2スイッチから受信した上り通信のコピーに設定されたヘッダ情報に、前記上り通信のコピーの受信に用いた自身のL2スイッチのポートおよび前記上り通信のコピーに含まれる送信元MACアドレスを対応付けた、前記上り通信のセッション情報を作成するセッション情報作成部をさらに備え、
前記転送部は、前記故障判断部により前記他のL2スイッチに故障が発生したと判断された場合において、前記上り通信に対する下り通信を受信したとき、前記作成された通信のセッション情報に示されるポートおよびMACアドレスを用いて、前記下り通信を、前記他のL2スイッチに転送すること
ことを特徴とする請求項2に記載のL2スイッチ。 - L2スイッチにより実行される通信制御方法であって、
ネットワーク装置から送信される上り通信を中継する他のL2(レイヤ2)スイッチから、前記上り通信のコピーを受信する工程と、
ネットワーク装置それぞれに設定される1以上のMACアドレスを示した装置情報と、前記受信した上り通信のコピーに含まれる送信元MACアドレスとに基づき、前記上り通信の送信元のネットワーク装置を特定する工程と、
前記装置情報と、自身のL2スイッチのポートごとに当該ポートにより接続される装置のMACアドレスを示したMACアドレス情報とを参照して、前記特定された上り通信の送信元のネットワーク装置に接続する前記自身のL2スイッチのポートと、前記ポートにより接続される前記上り通信の送信元のMACアドレスとを特定する工程と、
前記受信した上り通信のコピーに設定されたヘッダ情報に、前記特定されたポートおよびMACアドレスの情報を対応付けた前記上り通信のセッション情報を記憶部に記録するセッション情報処理部と、
前記上り通信に対する下り通信を受信した場合、前記記憶部に記録された前記上り通信のセッション情報に示されるポートおよびMACアドレスを用いて、前記下り通信を、前記上り通信の送信元のネットワーク装置に転送する工程と、
を含むことを特徴とする通信制御方法。 - ネットワーク装置から送信される上り通信を中継する他のL2(レイヤ2)スイッチから、前記上り通信のコピーを受信するステップと、
ネットワーク装置それぞれに設定される1以上のMACアドレスを示した装置情報と、前記受信した上り通信のコピーに含まれる送信元MACアドレスとに基づき、前記上り通信の送信元のネットワーク装置を特定するステップと、
前記装置情報と、自身のL2スイッチのポートごとに当該ポートにより接続される装置のMACアドレスを示したMACアドレス情報とを参照して、前記特定された上り通信の送信元のネットワーク装置に接続する前記自身のL2スイッチのポートと、前記ポートにより接続される前記上り通信の送信元のMACアドレスとを特定するステップと、
前記受信した上り通信のコピーに設定されたヘッダ情報に、前記特定されたポートおよびMACアドレスの情報を対応付けた前記上り通信のセッション情報を記憶部に記録するセッション情報処理部と、
前記上り通信に対する下り通信を受信した場合、前記記憶部に記録された前記上り通信のセッション情報に示されるポートおよびMACアドレスを用いて、前記下り通信を、前記上り通信の送信元のネットワーク装置に転送するステップと、
をコンピュータに実行させることを特徴とする通信制御プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/030889 WO2021024377A1 (ja) | 2019-08-06 | 2019-08-06 | L2スイッチ、通信制御方法、および、通信制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2021024377A1 JPWO2021024377A1 (ja) | 2021-02-11 |
JP7188602B2 true JP7188602B2 (ja) | 2022-12-13 |
Family
ID=74502843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021538585A Active JP7188602B2 (ja) | 2019-08-06 | 2019-08-06 | L2スイッチ、通信制御方法、および、通信制御プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US11936490B2 (ja) |
JP (1) | JP7188602B2 (ja) |
WO (1) | WO2021024377A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003174473A (ja) | 2001-12-06 | 2003-06-20 | Fujitsu Ltd | サーバ負荷分散システム |
JP2011250185A (ja) | 2010-05-27 | 2011-12-08 | Alaxala Networks Corp | ネットワークシステム及びネットワーク装置 |
JP2018117300A (ja) | 2017-01-20 | 2018-07-26 | 富士通株式会社 | 制御装置、制御プログラムおよび制御方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2005036831A1 (ja) * | 2003-10-07 | 2006-12-28 | 富士通株式会社 | フレーム中継装置 |
JP5056341B2 (ja) * | 2006-11-07 | 2012-10-24 | 富士通株式会社 | 通信中継装置、通信中継方法および通信中継処理プログラム |
US7941837B1 (en) * | 2007-04-18 | 2011-05-10 | Juniper Networks, Inc. | Layer two firewall with active-active high availability support |
JP4861293B2 (ja) * | 2007-11-01 | 2012-01-25 | 富士通株式会社 | 通信装置、通信方法および通信プログラム |
US8554075B2 (en) * | 2009-01-13 | 2013-10-08 | Hitachi, Ltd. | Communication system, subscriber accommodating apparatus and communication method |
JP5434808B2 (ja) * | 2010-06-09 | 2014-03-05 | 住友電気工業株式会社 | データ中継装置及びその機能制御方法 |
JP5573955B2 (ja) * | 2010-09-07 | 2014-08-20 | 富士通株式会社 | フレーム連結装置 |
US8948179B2 (en) * | 2012-08-21 | 2015-02-03 | Futurewei Technologies, Inc. | Method of multiprotocol label switching encapsulation for united router farm forwarding |
US8943490B1 (en) * | 2012-09-28 | 2015-01-27 | Juniper Networks, Inc. | Intelligent non-stop software upgrade |
JP6451546B2 (ja) * | 2015-08-05 | 2019-01-16 | 株式会社デンソー | 通信ネットワーク及び中継装置 |
JP6693925B2 (ja) * | 2017-10-02 | 2020-05-13 | 日本電信電話株式会社 | サーバ、通信制御システム、および、通信制御方法 |
JP7088075B2 (ja) * | 2019-02-22 | 2022-06-21 | 株式会社デンソー | 電子制御装置 |
-
2019
- 2019-08-06 JP JP2021538585A patent/JP7188602B2/ja active Active
- 2019-08-06 WO PCT/JP2019/030889 patent/WO2021024377A1/ja active Application Filing
- 2019-08-06 US US17/632,942 patent/US11936490B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003174473A (ja) | 2001-12-06 | 2003-06-20 | Fujitsu Ltd | サーバ負荷分散システム |
JP2011250185A (ja) | 2010-05-27 | 2011-12-08 | Alaxala Networks Corp | ネットワークシステム及びネットワーク装置 |
JP2018117300A (ja) | 2017-01-20 | 2018-07-26 | 富士通株式会社 | 制御装置、制御プログラムおよび制御方法 |
Non-Patent Citations (1)
Title |
---|
石井 大介、奥野 通貴,拡張性と高信頼性を備えた通信ノードにおける情報処理機能部の冗長系再構築方式の一検討,電子情報通信学会技術研究報告,一般社団法人電子情報通信学会,2013年10月10日,Vol.113 No.244,p.13-18 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2021024377A1 (ja) | 2021-02-11 |
US20220294660A1 (en) | 2022-09-15 |
WO2021024377A1 (ja) | 2021-02-11 |
US11936490B2 (en) | 2024-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10735509B2 (en) | Systems and methods for synchronizing microservice data stores | |
US10592464B2 (en) | Methods for enabling direct memory access (DMA) capable devices for remote DMA (RDMA) usage and devices thereof | |
JP5660211B2 (ja) | 通信経路制御システム、及び通信経路制御方法 | |
US8732270B2 (en) | Controlling communication among multiple industrial control systems | |
KR100889881B1 (ko) | 인접 캐시 테이블 동기화를 위한 장치 및 방법 | |
JP4974964B2 (ja) | ロードバランス型ネットワーク環境におけるインテリジェントフェイルオーバー | |
US9992058B2 (en) | Redundant storage solution | |
JP6007152B2 (ja) | 通信システム及び通信システムの冗長化の方法 | |
US10430304B2 (en) | Communication continuation during content node failover | |
US11403319B2 (en) | High-availability network device database synchronization | |
US9442672B2 (en) | Replicating data across controllers | |
JP2014026321A (ja) | ストレージ装置、情報処理装置、情報処理システム、アクセス制御方法、およびアクセス制御プログラム | |
US20140351210A1 (en) | Data processing system, data processing apparatus, and storage medium | |
JP7188602B2 (ja) | L2スイッチ、通信制御方法、および、通信制御プログラム | |
CN109981437B (zh) | 一种基于vpc的多数据中心互通方法及相关设备 | |
CN117061535A (zh) | 多活构架数据同步方法、装置、计算机设备和存储介质 | |
US20190354449A1 (en) | Enhanced failover handling in data centers | |
JP4806382B2 (ja) | 冗長化システム | |
JP2014178828A (ja) | 二重化システム | |
US20200322260A1 (en) | Systems and methods for automatic traffic recovery after vrrp vmac installation failures in a lag fabric | |
JP5669179B2 (ja) | 情報処理システム | |
JP6680709B2 (ja) | ルータおよび通信制御方法 | |
US10397029B2 (en) | Relay apparatus | |
JP2006155398A (ja) | データ仲介方法およびデータ仲介装置 | |
JP6094317B2 (ja) | ストレージシステム、ファイルサーバ、キャッシュ管理方法およびキャッシュ管理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211119 |
|
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: 20221101 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221114 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7188602 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |