JP2014121041A - サブネット内の回線分断時におけるパケット中継方法 - Google Patents

サブネット内の回線分断時におけるパケット中継方法 Download PDF

Info

Publication number
JP2014121041A
JP2014121041A JP2012276650A JP2012276650A JP2014121041A JP 2014121041 A JP2014121041 A JP 2014121041A JP 2012276650 A JP2012276650 A JP 2012276650A JP 2012276650 A JP2012276650 A JP 2012276650A JP 2014121041 A JP2014121041 A JP 2014121041A
Authority
JP
Japan
Prior art keywords
packet
router
network
subnet
line
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.)
Pending
Application number
JP2012276650A
Other languages
English (en)
Inventor
Tetsumi Yamada
哲視 山田
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 JP2012276650A priority Critical patent/JP2014121041A/ja
Publication of JP2014121041A publication Critical patent/JP2014121041A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】
IPネットワークにおいてサブネットが分断されないようにする。
【解決手段】
第一のルータは、サブネット内回線の断を検出すると、外部ネットワークに対してはサブネットのネットワークアドレスと異なるアドレスを持つ。また、第一のルータ配下の装置からのパケットのうち、第二のルータ配下の装置を宛先とするパケットに対して代理でARP応答する。また、第二のルータから受信したパケットの宛先ネットワークアドレスを元に戻して第一のルータ配下の装置へ転送する。第二のルータは、外部ネットワークから受信したパケットのうち、第一のルータ配下の装置を宛先とするパケットの宛先ネットワークアドレスを変更して転送する。また、第二のルータ配下の装置からのパケットのうち、第一のルータ配下の装置を宛先とするパケットに対して代理でARP応答し、宛先ネットワークアドレスを変更して転送する。
【選択図】図7

Description

本発明は、インターネットプロトコル(IP)を用いたネットワークにおけるサブネット内の回線分断時におけるパケット中継方法に関する。
インターネットプロトコル(IP;Internet Protocol)を利用したネットワークは、サブネットと呼ばれる一部のアドレス空間を利用するネットワークにより分割することができ、各サブネットのネットワーク機器はルータを介して他のサブネットのネットワーク機器と情報をやり取りする。
図22はIPネットワーク30の構成を説明する図である。図22において、ネットワークアドレス10.0.0.0/24を持つサブネット10が、ルータ1とルータ2とを介して外部のネットワーク20に接続されている。図22のIPネットワークにおいて、回線6のA点で回線分断が発生して通信が遮断されサブネット10が分断すると、ルータ1配下の端末とルータ2配下の端末との間の通信が不通となる。
回線分断が発生してもサブネット10内の通信が途絶しないためには、サブネット10内に回線6とは異なる冗長回線を設ける必要がある。しかし、回線の敷設条件や費用等の制約によっては、冗長回線が形成できないケースや、本回線と冗長回線が近接して配置されているために双方の回線が同時に分断されてしまうケースがある。したがって、ネットワーク内に複数の冗長回線を設けるだけでは、回線の分断に伴うサブネット10内の通信途絶に対する対策としては不十分である。
また、複数のセグメントを回線により接続することで同一ネットワークを構成している状況で、該回線の分断に伴うネットワーク内の通信途絶を防止する従来技術として、カプセル化したパケットを外部ネットワークを経由して伝送することで分断されたサブネット同士の通信を行う技術が知られている。例えば、回線分断を検出したルータは、サブネット内の端末から送信されたパケットを受信し、分断された同一サブネットに接続したルータのIPアドレスを持つヘッダでカプセル化して中継する(例えば、特許文献1参照)。
特開2007−150972号公報
IPネットワークに使用される通信方式には、1対1の通信であるユニキャスト通信の他に、PIM−SM(protocol Independent Multicast−Sparse Mode)などを利用した1対多の通信であるマルチキャスト通信がある。したがって、上述のサブネット内において回線分断が発生した場合には、分断に対応した冗長構成は、ユニキャスト通信だけではなくマルチキャスト通信についても考慮する必要がある。
マルチキャスト通信では、各ルータが同じパケットを複数回受信することを防ぐために、送信元からの最短経路にあたるインタフェースから到着したパケットのみを受信するRPF(Reverse Path Forwarding)と呼ばれるアルゴリズムが用いられる。具体的には、RPFにおいて、各ルータは予めマルチキャストパケットの送信元アドレス(Source Adress;SA)とインタフェースを対応付けて記憶する。そして、マルチキャストパケットを受信したルータは、該パケットを受信したインタフェースと、受信した該パケットのSAに対応付けられたインタフェースとが一致するか判別し、一致しない場合は該パケットを破棄する。
図23はマルチキャスト通信を用いたネットワーク例を表した図である。図23において、矢印8はサブネット10内の端末(図示せず)からルータ4,5配下の端末(図示せず)へマルチキャストパケットを送信した場合におけるマルチキャストパケットの流れを表している。具体的には、サブネット10内の端末から送信されたマルチキャストパケットは、ルータ1を経由してルータ3に到達し、ルータ3に到達したマルチキャストパケットは複製され、ルータ4とルータ5とにそれぞれ伝送される。
また、サブネット10はルータ1配下のネットワークセグメントとルータ2配下のネットワークセグメントとが回線等により接続されることにより同一のサブネットが構成されたネットワークであり、ルータ1及びルータ2はそれぞれ外部のネットワーク20と接続されている。
図23に示されたマルチキャスト通信を用いたネットワークにおいて、例えばルータ3がサブネット10からの最短経路としてルータ1側のインタフェースを登録していた場合について考える。このような場合、サブネット分断前はサブネット10内の端末から送信されるマルチキャストパケットは、該端末がどちらのルータ配下のネットワークセグメントに属しているかに関わらず、ルータ1を経由して外部ネットワーク20へ送信される。
ここで、回線6の分断等によりサブネット10が分断された場合は、ルータ2配下のネットワークセグメントに属する端末から送信されるマルチキャストパケットはルータ2を経由してルータ3へ送信されるが、ルータ3はルータ2から届くマルチキャストパケットを、サブネット10からの最短経路からのものではないと判断して破棄してしまう。したがって、サブネット内の回線に分断が発生すると、サブネットが分断されサブネット内の通信が途絶するだけでなく、一部のマルチキャスト通信も途絶する。
また、特許文献1等に記載された技術によりマルチキャストパケットをルータ1のアドレスを持つヘッダでカプセル化し、ルータ2からルータ1を経由してルータ3へ送信する場合について考える。このような場合、例えば、図23においては、ルータ1とルータ3とを結ぶ回線7のトラフィックが増加し、回線分断が起こる前と比較して回線7輻輳が起こりやすくなる。そのため、回線分断前からトラフィックに余裕がないネットワークにおいては、安定した通信を確保することができない。したがって、特許文献1等に記載されたIPパケットのカプセル化では、マルチキャスト通信を利用したネットワークにおけるサブネット内の回線分断に対応可能なのはトラフィックに余裕があるときに限られ、冗長構成としては十分ではない。
そこで、本発明の一側面では、IPネットワークにおいてサブネット内の回線が分断したとき、物理的な接続を追加せずにすべての通信を自動的に復旧し、サブネットが分断されないようにすることを目的とする。
上記の目的を達成するために、本発明にかかるサブネット内の回線分断時におけるパケット中継方法は、第一のルータにより外部ネットワークと接続された第一のネットワークセグメントと、第二のルータにより外部ネットワークと接続された第二のネットワークセグメントと、前記第一および第二のネットワークセグメントを接続する接続回線と、を有し、前記第一および第二のネットワークセグメントが第一のネットワークアドレスを有する同一のサブネットに属するように、前記第一および第二のルータが設定されているネットワークシステムにおいて、前記第一のルータが前記接続回線が分断されたことを検知すると、前記第一のルータは、前記外部ネットワークに対しては、前記第一のネットワークアドレスと異なる第二のネットワークアドレスを持ち、前記第一のルータは、前記第一のセグメント内の通信装置からのパケットのうち、前記第二のネットワークセグメント内の通信装置を宛先とするパケットに対しては、代理でARP応答するとともに、該パケットを前記外部ネットワークを介して前記第二のルータに回送し、前記第二のルータから前記第二のネットワークアドレスを宛先とするパケットを受信したとき、該パケットの宛先を前記第一のネットワークアドレスに書き換えて前記第一のネットワークセグメント内の通信装置に回送し、前記第二のルータが前記接続回線が分断されたことを検知すると、前記第二のルータは、前記外部ネットワークから前記サブネットへのパケットを受信したとき、前記第一のネットワークセグメント内の通信装置を宛先とするパケットに対しては、前記パケットの宛先を前記第二のネットワークアドレスに書き換えて、該パケットを前記外部ネットワークを介して前記第一のルータに回送し、前記第二のネットワークセグメント内の通信装置からのパケットのうち、前記第一のネットワークセグメント内の通信装置を宛先とするパケットに対しては、代理でARP応答するとともに、該パケットの宛先を前記第二のネットワークアドレスに書き換えて、該パケットを前記外部ネットワークを介して前記第一のルータに回送する。
なお、本発明の目的及び利点は、請求項において特に指摘されたエレメント及び組み合わせにより実現され、かつ達成されるものである。また、上記の一般的な記述及び下記の詳細な記述のいずれも、例示的かつ説明的なものであり、請求項のように本発明を制限するものではないことを理解されたい。
IPネットワークにおいてサブネットが分断したとき、物理的な接続を追加せずにすべての通信を自動的に復旧する。
本実施例にかかるIPネットワークの全体構成を説明する図 本実施例にかかるルータ100のハードウェア構成例を示すブロック図。 本実施例にかかるルータ100の機能構成例を表す機能ブロック図。 本実施例にかかるルータ200のハードウェア構成例を示すブロック図。 本実施例にかかるルータ200の機能構成例を表す機能ブロック図。 回線の分断前後における各ルータの各ポートのネットワークアドレスの一覧表。 サブネットが分断された状態を説明する図。 本発明にかかるルータ100の処理手順の一例を示すフローチャート。 ルータ100によるパケット転送処理の詳細を示すフローチャート。 ルータ100によるパケット転送処理の詳細を示すフローチャート。 ルータ100によるパケット転送処理の詳細を示すフローチャート。 ルータ100によるパケット転送処理の詳細を示すフローチャート。 ルータ100によるパケット転送処理の詳細を示すフローチャート。 本発明にかかるルータ200の処理手順の一例を示すフローチャート。 ルータ200によるパケット転送処理の詳細を示すフローチャート。 ルータ200によるパケット転送処理の詳細を示すフローチャート。 ルータ200によるパケット転送処理の詳細を示すフローチャート。 ルータ200によるパケット転送処理の詳細を示すフローチャート。 ルータ200によるパケット転送処理の詳細を示すフローチャート。 回線が分断していない状態におけるパケットの移動経路を表した図。 回線が分断した状態におけるパケットの移動経路を表した図。 IPネットワークの構成を説明する図。 マルチキャスト通信を用いたネットワーク例。
以下に添付図面を参照して、本実施例にかかるサブネット内の回線分断時におけるパケットの中継方法の実施例について詳細に説明する。以降の説明では、ソフトウェアルータやL3スイッチ等、宛先のIPアドレスを参照してパケットの経路を選択するルーティング機能を有する装置を総称して「ルータ」と呼称する。また、以降の説明では、L2スイッチ等、宛先のMACアドレスを参照してパケットの経路を選択する機能を有する装置を総称して「スイッチ」と呼称する。さらに、以降の説明では、レイヤ2のPDU(Protocol Data Unit)とレイヤ3のPDUとを総称して「パケット」と呼称する。
図1は、本実施例にかかるルータ100及びルータ200を含むIPネットワーク1000の全体構成を説明する図である。図1において、ネットワークセグメント1002と1003とが回線1005によって接続され1つのサブネット1001を形成している。
ルータ100、ルータ200及びルータ300は、受信したパケットをルーティングする機能と、ARP(Address Resolution Protocol)パケットの送受信機能とを有する。ルータ100は2つのネットワークセグメントが回線1005によって接続されたサブネット1001内において回線1005が分断したとき、外部ネットワーク1004側のI/Fに割り当てられたネットワークアドレスを変更しないルータである。また、ルータ200は回線1005が分断したとき、外部ネットワーク1004側のI/Fに割り当てられたネットワークアドレスを代替ネットワークアドレスに変更するルータである。
本実施例においては、ARP要求パケットとARP応答パケットとを総称して「ARPパケット」と呼称する。なお、図1において回線1005分断時にネットワークアドレスを変更しないルータ100とネットワークアドレスを変更するルータ200とが図示されているが、実際には2つのネットワークセグメントに接続されたルータのうちどちらか1つのルータのネットワークアドレスを変更すればよい。
スイッチ110及びスイッチ210は、受信したパケットの宛先MACアドレスを参照し、該パケットを適切な経路へ転送する機能を有する。端末120、220及び320は、パケットの送受信機能と、ARPパケットの送受信機能を有するコンピュータである。ここで、ルータ100、ルータ200、スイッチ110、スイッチ210、端末120及び端末220はそれぞれ共通のサブネット1001に属しており、サブネット1001はルータ100とルータ200とを介して外部ネットワーク1004と接続している。本実施例では説明のためサブネット1001に属するスイッチ及び端末はそれぞれ2台ずつとするが、実際にはそれぞれ任意の数をとってよい。
ルータ100はIPアドレス10.0.0.1/24および172.16.0.1/24が割り当てられたポートを、ルータ200はIPアドレス10.0.0.2/24および172.17.0.1/24が割り当てられたポートをそれぞれ備え、端末120はIPアドレス10.0.0.11/24が割り当てられたポートを、端末220はIPアドレス10.0.0.12/24が割り当てられたポートをそれぞれ備える。つまり、サブネット1001のネットワークアドレスは10.0.0.0/24である。また、端末320はIPアドレス192.168.0.11/24が割り当てられたポートを備える。
また、図1に示されたIPネットワーク1000では、スイッチ110−スイッチ210、ルータ100−スイッチ110、ルータ200−スイッチ210、スイッチ110−端末120、スイッチ210−端末220、ルータ100−ルータ300、ルータ200−ルータ300、ルータ300−端末320がそれぞれ相互に通信可能に接続されている。そして、各ルータ、スイッチがパケットを中継することにより、端末間の相互通信が可能となっている。
図1に示されるルータ100および200の構成及びブロック図を、それぞれ図2および図3と、図4及び図5により説明する。
[ルータ100の構成例]
図2は、本実施例にかかるルータ100のハードウェア構成例を示すブロック図である。図2において、ルータ100は、演算装置111、メモリ112および113、入出力ポート114および115、NIC(Network Interface Card)116および117を有する。また、演算装置111、メモリ112および113、NIC116および117はバス118によってそれぞれ電気的に接続されている。
ここで、演算装置111は、ルータ100を制御するものであり、たとえば、CPU(Central Processing Unit)やASIC(Application Specific Integrated Cirquit)等が用いられる。メモリ112としては、たとえば、フラッシュメモリ等の半導体メモリ素子、またはHDD(Hard Disc Drive)、ROM(Read Only Memory)、光ディスク等が用いられる。メモリ113は、RAM(Random Access Memory)等の記憶装置である。
入出力ポート114および115は、それぞれNIC116および117に接続されており、入出力ポート114は外部ネットワーク1004と接続され、入出力ポート115はサブネット1001内部のネットワークセグメント1002と接続されており、それぞれIPアドレス172.16.0.1/24および10.0.0.1/24を割り当てられている。
メモリ112には、ルータ100を制御するプログラムや、該プログラムの動作に関連した設定データ等が記憶されている。メモリ113には、ルータ100の動作のために一時的に利用されるデータが記憶され、例えば、ルーティングテーブルやARPテーブルが記憶される。
図3は、本実施例にかかるルータ100の機能構成例を表す機能ブロック図である。図3において、ルータ100は、送受信部101および102と、パケット種別判定部103と、I/F(Interface)判定部104と、宛先抽出部105と、回線断検出部106と、ARPカウンタ108と、記憶部109とを含む。
送受信部101は、図1に示されるサブネット1001の外部から送信されたパケットを受信する機能と、サブネット1001の外部へパケットを送信する機能を有する。また、送受信部102は、サブネット1001の内部から送信されたパケットを受信する機能と、サブネット1001の内部へパケットを送信する機能を有する。
パケット種別判定部103は、送受信部101または送受信部102が受信したパケットが、データパケットであるかARPパケットであるかを判定する。I/F判定部104は、送受信部101または送受信部102が受信したパケットが送受信部101が受信した、すなわち、外部ネットワーク004を経由したパケットであるか、送受信部102が受信したパケット、すなわち、サブネット1001を経由したパケットであるかを判定する機能を有する。
宛先抽出部105は、送受信部101または送受信部102が受信したパケットの宛先IPアドレスを抽出する。回線断検出部106は、サブネット1001内部のネットワークセグメント1002と1003とを接続する回線1005障害が発生して回線1005が分断されたとき、回線分断を検出する。回線分断の検出方法については、OSPF(Open Shortest Path First)パケットを用いた方法や、ルータ100から定期的にサブネット1001内へブロードキャストされた監視パケットに対する各端末からの応答のタイムアウトを検出する方法など、周知の方法を適用することができる。
また、ルータ100は、サブネット1001内の回線が分断した旨の情報を含むパケットをルータ200から外部ネットワーク1004を介して受信することで回線の分断を認識するよう構成されていてもよく、その場合ルータ100は回線断検出部106を備えていなくてもよい。さらに、ルータ100は、後述の代替ネットワークアドレスをルータ200から受信したことをもって回線の分断を認識するよう構成されていてもよく、その場合もルータ100は回線断検出部106を備えていなくてもよい。
ARPカウンタ108は、送受信部102が同一のARP要求パケットを連続して受信したとき、該ARP要求パケットの受信回数をインクリメントする。そして、ARPカウンタ108は、ARP要求パケットの受信回数が所定の数を超えたとき、送受信部102に、該ARP要求パケットの送信元MACアドレスへARP応答パケットを送信させる。
記憶部109は、代替ネットワークアドレスと、ルータ100のIPアドレスと、ルーティングテーブルと、ARPテーブルとを記憶する。ここで、ルーティングテーブルとは、宛先IPアドレスと、該宛先IPアドレスを持つパケットを送信すべきルータもしくは端末のIPアドレスとが対応付けられたテーブル情報である。また、ARPテーブルとは、宛先IPアドレスと、該宛先IPアドレスを持つパケットを送信すべきルータもしくは端末のMACアドレスとが対応付けられたテーブル情報である。
図3に示した記憶部109の機能は、図2のメモリ112および113により実現される。また、図3に示した送受信部101、102の機能は、図2のメモリ112に格納されたプログラムを読み出した演算装置111が、NIC116および117をインタフェースとして入出力ポート114および115を介してパケットを送受信する処理を実行することにより実現される。
また、図3に示したパケット種別判定部103、I/F判定部104、宛先抽出部105、回線断検出部106及びARPカウンタ108の機能は、図2のメモリ112に格納されたプログラムを読み出した演算装置111が、該プログラムに基づいた処理を実行することにより実現される。なお、演算装置111はその処理過程において、メモリ113をワークエリアとして利用する。
[ルータ200の構成例]
図4は、本実施例にかかるルータ200のハードウェア構成例を示すブロック図である。図4に示されるルータ200の各部の構成は、図2に示されるルータ100の構成と同様であるので詳細な説明は省略する。
図5は、本実施例にかかるルータ200の機能構成例を表す機能ブロック図である。図5において、ルータ200は、図3に示されるルータ100の各機能ブロックに加えて、代替アドレス配布部207を含む。
代替アドレス配布部207は、回線断検出部206によってサブネット1001内の回線の分断が検出されたとき、記憶部209から代替ネットワークアドレスを読み出して入出力ポート214に割り当てる機能と、代替ネットワークアドレスを送受信部201に配布させる機能とを有する。本実施例では、代替アドレス配布部207は、記憶部209から代替ネットワークアドレス10.0.1.0/24を読み出して入出力ポート214に割り当て、さらに代替ネットワークアドレスを送受信部201に配布させる。
ARPカウンタ208の機能は、図3のメモリ212に格納されたプログラムを読み出した演算装置211が、該プログラムに基づいた処理を実行することにより実現される。なお、そのほかの機能ブロックの機能は図3に示されるルータ100の機能と同様であるので詳細な説明は省略する。
[サブネット内の回線分断時におけるパケットの中継手順]
ここで、本発明にかかるルータ100及びルータ200によるサブネット内の回線分断時におけるパケットの中継手順について説明する。図6は、ネットワークセグメント1002および1003を接続する回線1005が分断された状態を説明する図である。以下の説明では、図6に示すように回線1005のA点において回線分断が発生し、サブネット1001がネットワークセグメント1002とネットワークセグメント1003とに分割された場合について説明する。また、以下「送信元IPアドレス」のことを「SA(Source Adress)」、「宛先IPアドレス」のことを「DA(Destination Adress)」と呼称する。
図7は、回線1005の分断前後におけるルータ100およびルータ200の各入出力ポートに割り当てられたネットワークアドレスの一覧表である。図7において、上段は分断前のネットワークアドレスを表し、図1に対応する。下段は分断後のネットワークアドレスを表し、図6に対応する。図7に示されているように、サブネット内回線が分断すると、ルータ200において外部ネットワークと接続された入出力ポート(入出力ポート214)に割り当てられているネットワークアドレスのみが代替ネットワークアドレスに変更される。
[ルータ100の処理]
図8は、本発明にかかるルータ100によるサブネット内の回線分断時におけるパケット中継手順の一例を示すフローチャートである。図8のフローチャートにおいて、まず、回線断検出部106は、ネットワークセグメント1002と1003とを接続する回線1005が分断されているか否か判定する(ステップS101)。回線1005が分断されていない場合(ステップS101:No)、回線断検出部106はステップS101の判定処理に戻る。
回線1005が分断されている場合(ステップS101:Yes)、送受信部101は、ルータ200から代替ネットワークアドレスを受信したか否か判定する(ステップS102)。回線分断用ネットワークを受信していない場合(ステップS102:No)、送受信部101はステップS102の判定処理に戻る。
ルータ200から代替ネットワークアドレスを受信した場合(ステップS102:Yes)、ルータ100の各機能部は、サブネット1001内の回線分断が解消されるまで後述する回線分断時のパケット転送処理を行う(ステップS103)。サブネット1001内の回線分断が解消された場合、回線分断時におけるルータ100の一連の処理を終了する。
[ルータ100によるパケット中継処理の詳細手順]
図9ないし図13は、本発明にかかるルータ100によるサブネット内の回線分断時におけるパケット中継処理の詳細手順を示すフローチャートである。図9のフローチャートにおいて、まず、送受信部101または送受信部102がパケットを受信(ステップS104)したら、パケット種別判定部103は、該パケットがデータパケットであるかARPパケットであるか判定する(ステップS105)。受信したパケットがARPパケットである場合(ステップS105:Yes)、図10のフローチャート(端子A)に進む。
図10のフローチャートにおいて、まず、宛先抽出部105は、受信したARPパケットに含まれている情報に基づいて、該ARPパケットはルータ100が応答すべきものであるかを判定する(ステップS106)。具体的には、宛先抽出部105は、外部ネットワークから受信したARPパケットのDAから抽出したネットワークアドレスが、サブネット1001のネットワークアドレスと一致するとき、該ARPパケットはルータ100が応答すべきものと判断する。また、宛先抽出部105は、ネットワークセグメント1002から受信したARPパケットのDAから抽出したネットワークアドレスが、サブネット1001のネットワークアドレスと一致しないとき、該ARPパケットはルータ100が応答すべきものと判断する。
前記ARPパケットはルータ100が応答すべきものであると判定された場合(ステップS106:Yes)、送受信部101または送受信部102は、該ARPパケットが示すSAにARP応答パケットを送信する(ステップS107)。前記ARPパケットはルータ100が応答すべきものでないと判定された場合(ステップS106:No)、図11のフローチャート(端子B)に進む。
図11のフローチャートにおいて、まず、ARPカウンタ108は、送受信部102が前記ARPパケットを所定の回数連続して受信したか否か判定する(ステップS108)。判定の結果が真である場合(ステップS108:Yes)、ARPカウンタ108は、前記ARPパケットの宛先はネットワークセグメント1003内の端末であると判断し、送受信部102に、該端末の代わりに該ARP要求に応答させる(ステップS109)。具体的には、ARPカウンタ108は、送受信部102に、該ARPパケットの送信元MACアドレスへ、ルータ100のMACアドレスが格納されたARP応答パケットを送信させる。
判定の結果が真でない場合(ステップS108:No)、ARPカウンタ108は、該ARPパケットの受信回数をインクリメントする(ステップS110)。
前記ステップS105において、受信したパケットがデータパケットである場合(ステップS105:No)、図12のフローチャート(端子C)に進む。図12のフローチャートにおいて、I/F判定部104は、前記パケットを受信したのはネットワークセグメント(図面中ではNWセグメントと記載)1002側のI/Fであるか否か判定する(ステップS111)。具体的には、I/F判定部104は、前記パケットを受信したのは送受信部102であるか否か判定する。
判定の結果が真である場合(ステップS111:Yes)、宛先抽出部105は、前記パケットに含まる情報に基づいて、該パケットがネットワークセグメント1003(図面中ではNWセグメントと記載)宛のパケットであるか否か判定する(ステップS112)。具体的には、宛先抽出部105は、前記パケットのDAから抽出したネットワークアドレスが、サブネット1001のネットワークアドレスと一致するとき、該パケットはネットワークセグメント1003宛のパケットであると判定する。また、宛先抽出部105は、前記パケットのDAから抽出したネットワークアドレスが、サブネット1001のネットワークアドレスと一致しないとき、該パケットはネットワークセグメント1003宛のパケットではないと判定する。
前記パケットがネットワークセグメント1003宛のパケットであると判定された場合(ステップS112:Yes)、送受信部101は、該パケットの宛先ネットワークアドレスを代替ネットワークアドレスに変更して送信する(ステップS113)。例えば、前記パケットのDAが10.0.0.12/24であるとき、送受信部101は、宛先ネットワークアドレス10.0.0.0/24を代替ネットワークアドレス10.0.1.0/24に変更する。つまり、この例において前記パケットのDAは10.0.0.12/24から10.0.1.12/24に変更されたことになる。
前記パケットがネットワークセグメント1003宛のパケットではないと判定された場合(ステップS112:No)、送受信部101は、該パケットのDAに応じたルータまたは端末へ該パケットを送信する(ステップS114)。
前記ステップS111において、判定の結果が真でない場合(ステップS111:No)、図13のフローチャート(端子D)に進む。図13のフローチャートにおいて、送受信部102は、ARP要求パケットを送信して該ARP要求パケットに対する応答の有無を判定する(ステップS115)。ARP要求パケットに対する要求がないと判定された場合(ステップS115:Yes)、送受信部101は、前記パケットはネットワークセグメント1003宛のパケットであると判断し、該パケットの宛先ネットワークアドレスを代替ネットワークアドレスに変更して送信する(ステップS116)。
前記ARP要求パケットに対する応答があった場合(ステップS115:No)、送受信部102は、ARP応答パケットに格納されたMACアドレスへ前記パケットを送信する(ステップS117)。
[ルータ200の処理]
図14は、本発明にかかるルータ200によるサブネット内の回線分断時におけるパケット中継手順の一例を示すフローチャートである。図8のフローチャートにおいて、まず、記憶部209は、代替ネットワークアドレスを記憶する(ステップS201)。このとき、代替ネットワークアドレスは、管理者等が適宜設定してもよい。
次に、回線断検出部206は、ネットワークセグメント1002と1003とを接続する回線1005が分断されているか否か判定する(ステップS202)。回線1005が分断されていない場合(ステップS202:No)、回線断検出部206はステップS202の判定処理に戻る。回線1005が分断されている場合(ステップS202:Yes)、代替アドレス配布部208は記憶部209から代替ネットワークアドレスを読み出して入出力ポート214に割り当て、さらに送受信部201に外部ネットワークへ代替ネットワークアドレスを配布させる(ステップS203)。
次に、ルータ200の各機能部は、サブネット1001内の回線分断が解消されるまで後述する回線分断時のパケット転送処理を行う(ステップS204)。サブネット1001内の回線分断が解消された場合、回線分断時におけるルータ200の一連の処理を終了する。
[ルータ200によるパケット中継処理の詳細手順]
図15ないし図19は、本発明にかかるルータ200によるサブネット内の回線分断時におけるパケット中継処理の詳細手順を示すフローチャートである。図15のフローチャートにおいて、まず、送受信部201または送受信部202がパケットを受信(ステップS205)したら、パケット種別判定部203は、該パケットがデータパケットであるかARPパケットであるか判定する(ステップS206)。受信したパケットがARPパケットである場合(ステップS206:Yes)、図16のフローチャート(端子E)に進む。
図16のフローチャートにおいて、まず、宛先抽出部205は、受信したARPパケットに含まれる情報に基づいて、該ARPパケットはルータ200が応答すべきものであるか判定する(ステップS207)。具体的には、宛先抽出部205は、外部ネットワークから受信したARPパケットのDAから抽出したネットワークアドレスが、ネットワークセグメント1002のネットワークアドレスと一致するとき、該ARPパケットはルータ200が応答すべきものと判断する。また、宛先抽出部205は、ネットワークセグメント1003から受信したARPパケットのDAから抽出したネットワークアドレスが、サブネット1001のネットワークアドレスと一致しないとき、該ARPパケットはルータ200が応答すべきものと判断する。
前記ARPパケットはルータ200が応答すべきものであると判定された場合(ステップS207:Yes)、送受信部201または送受信部202は、該ARPパケットが示すSAにARP応答パケットを送信する(ステップS208)。前記ARPパケットはルータ200が応答すべきものでないと判定された場合(ステップS207:No)、図17のフローチャート(端子F)に進む。
図17のフローチャートにおいて、まず、ARPカウンタ208は、送受信部202が前記ARPパケットを所定の回数連続して受信したか否か判定する(ステップS209)。判定の結果が真である場合(ステップS209:Yes)、ARPカウンタ208は、前記ARPパケットの宛先はネットワークセグメント1002内の端末であると判断し、送受信部202に、該端末の代わりに該ARP要求に応答させる(ステップS210)。具体的には、ARPカウンタ208は、送受信部202に、該ARPパケットの送信元MACアドレスへ、ルータ200のMACアドレスが格納されたARP応答パケットを送信させる。
判定の結果が真でない場合(ステップS209:No)、ARPカウンタ208は、該ARPパケットの受信回数をインクリメントする(ステップS211)。
前記ステップS206において、受信したパケットがデータパケットである場合(ステップS206:No)、図18のフローチャート(端子G)に進む。図18のフローチャートにおいて、I/F判定部204は、前記パケットを受信したのはネットワークセグメント1003側のI/Fであるか否か判定する(ステップS212)。具体的には、I/F判定部204は、前記パケットを受信したのは送受信部202であるか否か判定する。
判定の結果が真である場合(ステップS212:Yes)、パケット種別判定部203は、前記パケットがマルチキャストパケットであるか否か判定する(ステップS213)。前記パケットがマルチキャストパケットであると判定された場合(ステップS213:Yes)、送受信部201は、該パケットの送信元ネットワークアドレスを代替ネットワークアドレスに変更して送信する(ステップS214)。具体的には、前記パケットのSAが10.0.0.12/24であるとき、送受信部201は、送信元ネットワークアドレス10.0.0.0/24を代替ネットワークアドレス10.0.1.0/24に変更する。つまり、この例において前記パケットのSAは10.0.0.12/24から10.0.1.12/24に変更されたことになる。
前記パケットがマルチキャストパケットではないと判定された場合(ステップS213:No)、送受信部201は、該パケットのDAに応じたルータまたは端末へ該パケットを送信する(ステップS215)。
前記ステップS212において、判定の結果が真でない場合(ステップS212:No)、図19のフローチャート(端子H)に進む。図19のフローチャートにおいて、宛先抽出部205は、前記パケットのDAから抽出した宛先ネットワークアドレスが、代替ネットワークアドレスと一致するか否か判定する(ステップS216)。
前記パケットの宛先ネットワークアドレスが代替ネットワークアドレスである場合(ステップS216:Yes)、送受信部202は、該パケットの宛先ネットワークアドレスをサブネット1001のネットワークアドレスに変更して送信する(ステップS217)。具体的には、前記パケットのDAが10.0.1.12/24であるとき、送受信部202は、宛先ネットワークアドレス10.0.1.0/24をサブネット1001のネットワークアドレス10.0.0.0/24に変更する。つまり、この例において前記パケットのDAは10.0.1.12/24から10.0.0.12/24に変更されたことになる。
前記パケットの宛先ネットワークアドレスが代替ネットワークアドレスでない場合(ステップS216:No)、送受信部202は、該パケットのDAへ該パケットを送信する(ステップS218)。
図20(a)は回線1005が分断していない状態における、サブネット1001内の端末同士の通信を説明する図であり、端末220と端末120とが通信を行う場合のパケットの移動経路を表したている。図20(a)に示すように、端末220から端末120に宛てたパケットは、スイッチ210、110を経由して端末120へ到達する。同様に、端末120から端末220へ宛てたパケットは、スイッチ110、210を経由して端末220へ到達する。
図20(b)は回線1005が分断していない状態における、サブネット1001内の端末と外部ネットワーク1004内の端末との通信を説明する図であり、端末220と端末320が通信を行う場合のパケットの移動経路を表している。図20(b)に示すように、端末220から端末320へ宛てたパケットは、スイッチ210、110、ルータ100、300を(あるいは、スイッチ210、ルータ200、300を)経由して端末320へ到達する。同様に、端末320から端末220へ宛てたパケットは、ルータ300、200、スイッチ110、210を(あるいは、ルータ300、200、スイッチ210を)経由して端末220へ到達する。
図21(a)は回線1005が分断した状態における、サブネット1001内の端末同士の通信を説明する図であり、端末220と端末120とが通信を行う場合のパケットの移動経路を表している。図21(a)に示すように、端末220から端末120に宛てたパケットは、スイッチ210、ルータ200、300、100、スイッチ110を経由して端末120へ到達する。同様に、端末120から端末220へ宛てたパケットは、スイッチ110、ルータ100、300、200、スイッチ210を経由して端末220へ到達する。
図21(b)は回線1005が分断した状態における、サブネット1001内の端末と外部ネットワーク1004内の端末との通信を説明する図であり、端末220と端末320が通信を行う場合のパケットの移動経路を表している。図21(b)に示すように、端末220から端末320へ宛てたパケットは、スイッチ210、ルータ200、300を経由して端末320へ到達する。端末320から端末220へ宛てたパケットは、ルータ300、100、300、200、スイッチ210を経由して端末220へ到達する。
以上説明したように、本発明にかかるサブネット内の回線分断時におけるパケット中継方法によれば、夫々ルータを介して外部ネットワークと接続された複数のネットワークセグメントが回線で接続され形成されたサブネットにおいて該回線が分断したとき、いずれかのネットワークセグメントに接続されたルータの外部ネットワークに対するネットワークアドレスを図6に示される代替ネットワークアドレスに変更する。そして、サブネットに接続された各ルータが図20及び図21に示すような経路でパケットを中継することで、サブネット内部の端末同士の通信およびサブネット内外の端末同士の通信が回線断によって途絶することを防ぐことができる。
また、本発明にかかるサブネット内の回線分断時におけるパケット中継方法によれば、ネットワークアドレスを変更したルータは、該ルータに接続されたネットワークセグメント内の端末からマルチキャストパケットを受信すると、該マルチキャストパケットの送信元ネットワークアドレスを図6に示される代替ネットワークアドレスに変更して中継することで、マルチキャスト通信の途絶を防ぐことができる。
上記手法によれば、IPネットワークにおいてサブネット内の回線が分断したとき、物理的な接続を追加せずにすべての通信を自動的に復旧し、サブネットが分断されることを抑止できる。
1 ルータ
2 ルータ
3 ルータ
4 ルータ
5 ルータ
6 回線
7 回線
8 矢印
10 サブネット
11 インタフェース
20 外部ネットワーク
30 IPネットワーク
100 ルータ
101 送受信部
102 送受信部
103 パケット種別判定部
104 I/F判定部
105 宛先抽出部
106 回線断検出部
108 ARPカウンタ
109 記憶部
110 スイッチ
111 演算装置
112 メモリ
113 メモリ
114 入出力ポート
115 入出力ポート
116 NIC
117 NIC
118 バス
120 端末
200 ルータ
201 送受信部
202 送受信部
203 パケット種別判定部
204 I/F判定部
205 宛先抽出部
206 回線断検出部
207 代替アドレス配布部
208 ARPカウンタ
209 記憶部
210 スイッチ
211 演算装置
212 メモリ
213 メモリ
214 入出力ポート
215 入出力ポート
216 NIC
217 NIC
218 バス
220 端末
300 ルータ
320 端末
1000 IPネットワーク
1001 サブネット
1002 ネットワークセグメント
1003 ネットワークセグメント
1004 外部ネットワーク
1005 回線

Claims (3)

  1. 第一のルータにより外部ネットワークと接続された第一のネットワークセグメントと、
    第二のルータにより外部ネットワークと接続された第二のネットワークセグメントと、
    前記第一および第二のネットワークセグメントを接続する接続回線と、を有し、
    前記第一および第二のネットワークセグメントが第一のネットワークアドレスを有するサブネットに属するように、前記第一および第二のルータが設定されているネットワークシステムにおいて、
    前記第一のルータが前記接続回線が分断されたことを検知すると、
    前記第一のルータは、前記外部ネットワークに対しては、前記第一のネットワークアドレスと異なる第二のネットワークアドレスを持ち、
    前記第一のルータは、
    前記第一のネットワークセグメント内の通信装置からのパケットのうち、前記第二のネットワークセグメント内の通信装置を宛先とするパケットに対しては、代理で応答するとともに、該パケットを前記外部ネットワークを介して前記第二のルータに回送し、
    前記第二のルータから前記第二のネットワークアドレスを宛先とするパケットを受信したとき、該パケットの宛先を前記第一のネットワークアドレスに書き換えて前記第一のネットワークセグメント内の通信装置に回送し、
    前記第二のルータが前記接続回線が分断されたことを検知すると、
    前記第二のルータは、
    前記外部ネットワークから前記サブネットへのパケットを受信したとき、前記第一のネットワークセグメント内の通信装置を宛先とするパケットに対しては、前記パケットの宛先を前記第二のネットワークアドレスに書き換えて、該パケットを前記外部ネットワークを介して前記第一のルータに回送し、
    前記第二のネットワークセグメント内の通信装置からのパケットのうち、前記第一のネットワークセグメント内の通信装置を宛先とするパケットに対しては、代理で応答するとともに、該パケットの宛先を前記第二のネットワークアドレスに書き換えて、該パケットを前記外部ネットワークを介して前記第一のルータに回送する
    ことを特徴とする、パケット中継方法。
  2. 前記第二のルータは、前記接続回線が分断された旨の情報を含むパケットを前記第一のルータから前記外部ネットワークを介して受信することで、前記接続回線が分断されたことを検知する
    ことを特徴とする、請求項1記載のパケット中継方法。
  3. 前記第一のルータは、前記第一のネットワークセグメント内の通信装置からのパケットのうち、マルチキャストパケットに対しては、該マルチキャストパケットの送信元ネットワークアドレスを前記第二のネットワークアドレスに書き換えて前記外部ネットワークと接続されたルータに回送する
    ことを特徴とする、請求項1または2のいずれか1項に記載のパケット中継方法。
JP2012276650A 2012-12-19 2012-12-19 サブネット内の回線分断時におけるパケット中継方法 Pending JP2014121041A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012276650A JP2014121041A (ja) 2012-12-19 2012-12-19 サブネット内の回線分断時におけるパケット中継方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012276650A JP2014121041A (ja) 2012-12-19 2012-12-19 サブネット内の回線分断時におけるパケット中継方法

Publications (1)

Publication Number Publication Date
JP2014121041A true JP2014121041A (ja) 2014-06-30

Family

ID=51175486

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012276650A Pending JP2014121041A (ja) 2012-12-19 2012-12-19 サブネット内の回線分断時におけるパケット中継方法

Country Status (1)

Country Link
JP (1) JP2014121041A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108107764A (zh) * 2017-12-28 2018-06-01 深圳市安鼎信息技术有限公司 一种可以定时关闭的路由器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108107764A (zh) * 2017-12-28 2018-06-01 深圳市安鼎信息技术有限公司 一种可以定时关闭的路由器

Similar Documents

Publication Publication Date Title
US10917262B2 (en) VXLAN packet forwarding method, device, and system
CN107819677B (zh) 一种报文转发方法及装置
US9858163B2 (en) Dual adjacency between edge devices at a network site
US10320658B2 (en) Method and system for asymmetric redundancy mechanisms in multi-homed network access topologies
JP5131651B2 (ja) 負荷分散システム、負荷分散方法、及びプログラム
US9215175B2 (en) Computer system including controller and plurality of switches and communication method in computer system
CN110061915B (zh) 跨多个架构交换机的虚拟链路聚合的方法和系统
US11546254B2 (en) Method, node, and medium for establishing connection between a source and endpoint via one or more border nodes
WO2017099971A1 (en) Interconnection of switches based on hierarchical overlay tunneling
US20150334057A1 (en) Packet forwarding
EP2667544B1 (en) Media access control bridging in a mesh network
CN108259635B (zh) 一种arp表项学习方法和dr设备
CN108337158B (zh) 单播报文转发方法和装置
US20150172194A1 (en) Traffic forwarding between geographically dispersed network sites
US11212240B2 (en) Efficient convergence in network events
US8908702B2 (en) Information processing apparatus, communication apparatus, information processing method, and relay processing method
US10530873B1 (en) Techniques for optimizing EVPN-IRB for IPv6-enabled data centers with top-of-rack deployments
CN112822097A (zh) 报文转发的方法、第一网络设备以及第一设备组
CN110120906B (zh) 用于实现双活接入trill园区边缘的方法和设备
US10205661B1 (en) Control messages for scalable satellite device clustering control in a campus network
EP3439248B1 (en) Configuration of link aggregation group
JP7273125B2 (ja) BIERv6パケットを送信するための方法および第1のネットワークデバイス
JP2014121041A (ja) サブネット内の回線分断時におけるパケット中継方法
CN117811995A (zh) 用于确定节点的方法及装置
WO2015009855A1 (en) Edge extension of an ethernet fabric switch