JP2019500812A - リンク検出の方法、装置、ネットワークデバイス、及び、コントローラ - Google Patents
リンク検出の方法、装置、ネットワークデバイス、及び、コントローラ Download PDFInfo
- Publication number
- JP2019500812A JP2019500812A JP2018534545A JP2018534545A JP2019500812A JP 2019500812 A JP2019500812 A JP 2019500812A JP 2018534545 A JP2018534545 A JP 2018534545A JP 2018534545 A JP2018534545 A JP 2018534545A JP 2019500812 A JP2019500812 A JP 2019500812A
- Authority
- JP
- Japan
- Prior art keywords
- address
- link
- detection
- message
- network device
- 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
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 643
- 238000000034 method Methods 0.000 claims abstract description 47
- 230000004044 response Effects 0.000 claims abstract description 16
- 230000005540 biological transmission Effects 0.000 claims abstract description 15
- 238000005538 encapsulation Methods 0.000 claims description 36
- 238000012546 transfer Methods 0.000 claims description 11
- 238000002372 labelling Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 28
- 238000005516 engineering process Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 239000000284 extract Substances 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
-
- 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/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- 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/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
- H04L41/122—Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/106—Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/20—Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
-
- 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/22—Alternate routing
-
- 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/24—Multipath
-
- 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/42—Centralised routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
リンク検出の方法、装置、ネットワークデバイス、及び、コントローラを本出願で提供する。方法は、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む検出メッセージを、検出リンク上の開始ネットワークデバイスから終了ネットワークデバイスまで、各ネットワークデバイスに、順次送信することと、検出メッセージに応答して検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含むリンク状態情報を受信することと、リンク状態情報に含まれる第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行って、デバイスIPアドレスに基づいて検出リンク上のネットワークデバイスが配置されたネットワーク位置を突き止めることとを含む。本出願の技術的解決法は、障害リンクを素早く識別し、突き止めるために、コントローラが、検出リンク上の全てのリンクのリンク状態情報を知るのを可能にし得る。
Description
本出願は、通信技術分野に関し、詳細には、リンク検出の方法、装置、ネットワークデバイス、及び、コントローラに関する。
VXLANネットワークにおいては、2つのVXLANトンネルエンドポイント(VTEP)の間に、負荷共有のために、複数の等価経路が存在してよい。複数の等価経路のうち、あるリンクに障害が生じると、障害リンクにトラフィックが送信されないように素早く障害リンクを検出する必要がある。既存技術においては、リンク間に存在し得る複数の等価経路を検出するために、開始点のVTEPは、全ての経路をトラバースする目的で、メッセージの順序に従って、カプセル化された検出メッセージの外層のUDPヘッダの送信元ポートを1つずつ順次増やす。カスケード接続している複数の等価経路が存在する(例えば、ノードAは、ノードBとノードCに個々に2つの等価経路を有し、ノードBも、ノードDとノードEに個々に2つの等価経路を有し、ノードAとノードB両方のハッシュ経路選択アルゴリズムが、送信元ポートを含む)状況において、ノードAは、奇数の送信元ポートを有する検出メッセージ(送信元と宛先のIPは変わらないままである)をノードBに送信してよく、偶数の送信元ポートを有する検出メッセージをノードCに送信してよく、一方、ノードBは、奇数の送信元ポートを有する検出メッセージをノードCに送信する。よって、ノードBからノードDへのリンクを検出メッセージは通らない。分かるように、既存技術は、ノードデバイスのハッシュ経路選択アルゴリズムに主に依存するので、全ての経路をトラバースすることを保証できない。
上記目的を達成するために、本出願は、以下の技術的解決を提供する。
本出願の第1の態様によると、リンク検出方法が提案され、コントローラに適用される。方法は、検出リンク上で、開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む検出メッセージを順次送信することと、検出メッセージに応答して検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含むリンク状態情報を受信することと、リンク状態情報に含まれた第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行い、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスが配置されたネットワーク位置を突き止めることを含む。
本出願の第2の態様によると、リンク検出方法が提案され、ネットワークデバイスに適用される。方法は、受信されたネットワークメッセージが検出メッセージであるか否かを決定することと、ネットワークメッセージが検出メッセージである場合、検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、ネットワークデバイスのデバイスIPアドレスと、検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、そのリンク状態情報をコントローラに報告することと、検出メッセージから宛先VTEPアドレスを解析し、宛先VTEPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索し、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製することと、少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、検出メッセージのMACヘッダをカプセル化し、検出メッセージを少なくとも1つの次のジャンプ先に送信することを含む。
本出願の第3の態様によると、リンク検出装置が提案され、コントローラに適用される。装置は、検出リンク上で、開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む検出メッセージを順次送信するために使用される第1の送信モジュールと、第1の送信モジュールによって送信された検出メッセージに応答して、検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含むリンク状態情報を、受信するように使用される第1の受信モジュールと、第1の受信モジュールによって受信されたリンク状態情報に含まれる第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行い、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスが配置されたネットワーク位置を突き止めるために使用される整合モジュールを含む。
本出願の第4の態様によると、リンク検出装置が提案され、ネットワークデバイスに適用される。装置は、受信されたネットワークメッセージが検出メッセージであるか否かを決定するために使用される第4の決定モジュールと、ネットワークメッセージが検出メッセージであると第4の決定モジュールが決定する場合、検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、ネットワークデバイスのデバイスIPアドレスと、検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、そのリンク状態情報をコントローラに報告するために使用されるリンク情報生成モジュールと、第4の決定モジュールによって決定される検出メッセージから宛先VTEPアドレスを解析し、宛先VTEPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索し、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製するために使用される検索モジュールと、検索モジュールによって見つけられた少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、検出メッセージのMACヘッダをカプセル化し、検出メッセージを少なくとも1つの次のジャンプ先に送信するために使用される第1のカプセル化モジュールを含む。
本出願の第5の態様によると、コントローラが提案される。コントローラは、第1のプロセッサによって実行可能な命令の第1の記憶装置を記憶するために使用される第1のプロセッサと、第1のネットワークインタフェースとを含み、第1のネットワークインタフェースは、検出リンク上で、開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む検出メッセージを順次送信するために、また、検出メッセージに応答して検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含むリンク状態情報を受信するために使用され、第1のプロセッサは、リンク状態情報に含まれた第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行い、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスが配置されたネットワーク位置を突き止めるために使用される。
本出願の第6の態様によると、ネットワークデバイスが提案される。ネットワークデバイスは、第2のプロセッサによって実行可能な命令の記憶装置を記憶するために使用される第2のプロセッサと、第2のネットワークインタフェースとを含み、第2のプロセッサは、受信されたネットワークメッセージが検出メッセージであるか否かを決定することと、ネットワークメッセージが検出メッセージである場合、検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、ネットワークデバイスのデバイスIPアドレスと、検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、そのリンク状態情報を第2のインタフェースを通してコントローラに送信することと、第1の宛先IPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索し、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製することと、少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、検出メッセージのMACヘッダをカプセル化し、検出メッセージを第2のインタフェースを通して少なくとも1つの次のジャンプ先に送信するために使用される。
技術的解決法から分かるように、本出願は、検出リンクの全ての経路をトラバースでき、コントローラが、検出リンク上の全てのリンクのリンク状態情報を知るのを可能にして、障害リンクを素早く識別し、突き止めるのを助ける。
例示的な実施形態を、その例を添付の図面で表して、ここに詳細に記載する。添付の図面が、以下の記載に関わる時、異なる添付図面の同じ番号は、別段の記載のない限り、同じまたは類似の要素を表す。以下の例示的な実施形態に記載された実施態様は、本出願と一致する全ての実施態様を表すものではなく、本出願に一致し、添付の請求項に詳細に記載する装置及び方法の例に過ぎない。
本出願書で使用される専門用語は、特定の実施形態を記載する目的で使用されるにすぎず、本出願を制限することを意図していない。本出願書と添付の請求項で使用される「a」、「前記(said)」、及び「the」等の単数形は、複数形を含むことを意図している。文脈で明らかに他の意味を示さない限り、本明細書で使用される「及び/または」という句は、列挙された1つまたは複数の関連する項目の任意または全ての組み合わせを指す。
本出願書は、第1の、第2の、第3の等の語を使用して、様々な情報を記載する場合があるが、これらの情報は、これらの語に制限されないことは理解されたい。これらの語は、同じ種類の情報を区別するために使用されるにすぎない。例えば、本出願の範囲を逸脱することなく、第1の情報は、第2の情報と呼ぶこともできる。同様に、第2の情報は、第1の情報と呼ぶこともできる。文脈に応じて、本出願書で使用される「if」という語は、「の時に」、「の時」、または、「であると決定することに応答して」として解釈できる。
図1は、本発明の例示的な実施形態に適したネットワークのフレームワーク図である。管理者が、仮想マシン(VMと略される)11とVM12の間でコントローラ10を通してリンク検出を行うことを選択すると、コントローラ10は、VM11とVM12のIPアドレスを読み出すことができ、VM11のIPアドレスを第1の送信元IPアドレスに設定でき、VM12のIPアドレスを第1の宛先IPアドレスに設定でき、検出メッセージの識別に使用される第1の識別子(ID)を生成でき、第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージを作成できる。コントローラ10は、検出メッセージを開始点VTEP13に送信する。検出メッセージがL3デバイス14、L3デバイス151、及び、L3デバイス152によって順次転送された後、検出メッセージは、終点VTEP16に到達する。開始点VTEP13、L3デバイス14、L3デバイス151、L3デバイス152、及び、終点VTEP16は、検出メッセージを受信すると、各リンク状態情報をコントローラ10に報告する。コントローラ10は、各デバイスによって報告されたリンク状態情報を記録する。ある実施形態においては、コントローラ10は、ソフトウェア定義ネットワーク(SDNと略される)コントローラであってよい。リンクの開始点、または、あるネットワーク中間ノードの転送テーブルが複数の等価経路を有する場合、検出メッセージは、次のジャンプ先の数に従って複製され、対応する経路に転送される。例えば、図1に示すL3デバイス14は、次のジャンプ先(L3デバイス151及びL3デバイス152)への2つの等価経路を有する。L3デバイス14は、検出メッセージを複製してよく、次に、その複製メッセージをL3デバイス151とL3デバイス152に送信してよい。従って、本出願は、コントローラを通してリンクを管理、維持でき、また、リンクの全ての経路をトラバースできるので、リンクの全ての経路をトラバースできないという既存技術の欠点を解決する。
本出願をさらに詳細に記載するために、以下の実施形態を提供する。
図2は、本発明の第1の例示の実施形態による、リンク検出方法のフローチャートであり、図1に示すコントローラ10に適用できる。本実施形態を、図1に示す実施形態と関連して記載し、示す。図2に示すように、以下のステップが含まれる。
ステップ201は、検出リンク上を、開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに順次、検出メッセージを送信する。検出メッセージは、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む。
ある実施形態においては、検出リンクは、ネットワーク管理者によって選択されてよい。図1に示すように、コントローラ10は、検出リンクの2つの端(例えば、VM11とVM12)のIPアドレスを読み出し、検出リンクの一方の端(例えば、VM11)のIPアドレスを第1の送信元IPアドレスに設定し、他方の端(例えば、VM12)のIPアドレスを第1の宛先IPアドレスとして設定する。ある実施形態においては、第1の識別子は、連番を検出メッセージに割り当てて生成されてよい。検出リンクのリンク検出を行う規定期間(規定期間の範囲は10ミリ秒と1秒の間)内で、コントローラ10は、検出メッセージをVTEP13に間欠的に送信でき、第1の識別子を連続的に1ずつ、すなわち、ID+1、検出期間が終了するまで増加させる。検出メッセージの第1の識別子を1ずつ増加させることによって、同じ検出リンク上の検出メッセージのIDの一意性を保証でき、コントローラ10が、検出リンク上のネットワークデバイスによって報告されたリンク状態情報の整合を便利に行うのを可能にし得る。同じ検出リンク上の検出メッセージの数を数えることによって、コントローラ10が、検出リンクで送信される検出メッセージの数を計算するのを可能にし得る。
ある実施形態においては、図1に示すように、検出メッセージを受信すると、VTEP13は、検出メッセージの第1の宛先IPアドレスに基づいて、対応する転送テーブルを調べることができ、宛先VNIと宛先VTEPアドレス等の転送テーブルの情報に基づいて、検出メッセージにVXLANカプセル化を行うことができる。VXLANヘッダのPDフラグビットが、同時に1に設定されて、ネットワークデバイスが、PDフラグに基づいて、受信されたネットワークメッセージが検出メッセージか否かを識別するのを可能にする。VXLANカプセル化後の検出メッセージのVXLANヘッダのコンテンツは、以下の説明に記載するメッセージフォーマットを参照できる。ある実施形態においては、VTEP13は、宛先VTEPアドレスに基づいて次のジャンプ先を検索でき、次のジャンプ先の数に基づいて、検出メッセージを複製する必要があるか否かと、必要とされる検出メッセージの複製数とを決定できる。次のジャンプ先が1つのみの場合、検出メッセージは、検出メッセージのMACヘッダをカプセル化した後、VTEP13の次のジャンプ先に直接転送できる。複数の等価の次のジャンプ先が存在する場合、VXLANカプセル化が行われた検出メッセージは、次のジャンプ先の数に従って複製される。各検出メッセージのMACヘッダは、各次のジャンプ先のMACアドレスに従ってカプセル化され、カプセル化された検出メッセージは、VTEP13の対応する次のジャンプ先に送信される。
例えば、検出メッセージ受信後、VTEP13の次のジャンプ先であるL3デバイス14は、リンク状態情報をコントローラ10に報告する。リンク状態情報は、L3デバイス14のデバイスIPアドレスを含んでよい。従って、コントローラ10は、検出メッセージを送信してきたネットワークデバイスを、デバイスIPアドレスを用いて識別できる。L3デバイス14は、検出メッセージの宛先VTEPアドレスに基づいて、次のジャンプ先を検索し、次のジャンプ先の数に基づいて、検出メッセージを複製する必要があるか否かと、必要とされる検出メッセージの複製数とを決定する。次のジャンプ先が1つのみの場合、検出メッセージは、検出メッセージのMACヘッダをカプセル化した後、次のジャンプ先に直接転送できる。複数の等価の次のジャンプ先(図1に示すL3デバイス151とL3デバイス152等が存在する場合)、検出メッセージは、次のジャンプ先の数に従って複製される。L3デバイス151及びL3デバイス152は、検出メッセージが終了ネットワークデバイスVTEP16に転送されるまで、L3デバイス14と同じ動作を行う。
ステップ202は、検出メッセージに従って検出リンク上のネットワークデバイスによって報告されたリンク状態情報を受信する。リンク状態情報は、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含む。
ステップ203は、第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行い、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスのネットワーク位置を突き止める。
図1に示すように、ある実施形態においては、コントローラ10は、ステップ203及びステップ204で、ネットワークデバイス(L3デバイス14)によって報告された各リンク状態情報を受信する。コントローラ10は、受信したリンク状態情報から、第1の送信元IPアドレス、第1の宛先IPアドレス、L3デバイス14のデバイスIPアドレス、及び、検出メッセージの第1の識別子等のリンク状態情報の情報を抽出できる。リンク状態情報の第1の送信元IPアドレス、第1の宛先IPアドレス、及び、検出メッセージの第1の識別子に基づいて、対応する検出リンクを見つける。検出リンク上のL3デバイス14のネットワーク位置が、デバイスIPアドレスに基づいて突き止められる。ある実施形態においては、コントローラ10は、コントローラ10によって維持されるトポロジ構造マップの対応するノードにリンク状態情報を記録してもよく、それによって、管理者は検出リンク全体のリンク状態を見るのが容易になる。
上記記載から分かるように、本発明の実施形態は、ステップ201から204を通して、検出リンクの全ての経路をトラバースでき、コントローラが検出リンク上の全ての経路のリンク状態情報を知って、障害リンクを素早く識別し、突き止めるのを助けるのを可能にする。
図3は、本発明の第2の例示の実施形態による、リンク検出方法のフローチャートである。本実施形態は、説明的な記載として、コントローラが、検出リンクのリンク状態情報を受信した後、リンク状態情報を用いて障害リンクの決定の仕方の例を使用する。図3に示すように、以下のステップが含まれる。
ステップ301は、検出リンク上の任意の1つのネットワークデバイスのリンク状態情報のタイムスタンプを決定する。
ステップ302は、検出リンク上の任意の1つのネットワークデバイスの次のジャンプ先のネットワークデバイスによって報告されたリンク状態情報が、タイムスタンプ後、規定時間内に受信されるか否かを決定する。
ステップ303は、次のジャンプ先のネットワークデバイスのリンク状態情報が規定時間内に受信されない場合、次のジャンプ先のネットワークデバイスのデバイスIPアドレスを決定する。
ステップ304は、次のジャンプ先のネットワークデバイスのデバイスIPアドレスに基づいて、検出リンクに障害リンクが存在することを示す警告情報を生成する。
ステップ305は、次のジャンプ先のネットワークデバイスのデバイスIPアドレスに基づいて、現在のネットワークデバイスの転送テーブルをリフレッシュし、その結果、現在のネットワークデバイスは、リフレッシュされた転送テーブルに基づいて、ネットワークメッセージの障害リンクへの送信を停止する。
図1に示すように、検出リンク上の任意の1つのネットワークデバイスによって報告されたリンク状態情報を受信した後、コントローラ10は、検出メッセージが受信された時のネットワークデバイスのタイムスタンプ、ネットワークデバイスのデバイスIPアドレス、検出メッセージの入力ポート、第1の送信元IPアドレス、第1の宛先IPアドレス、及び、検出メッセージの第1の識別子等の情報を、リンク状態情報から抽出もできる。例えば、L3デバイス14(本出願書においては現在のネットワークデバイス)によって報告されるリンク状態情報を受信後、コントローラ10は、L3デバイス14がリンク状態情報から検出メッセージを受信したタイムスタンプを抽出する。L3デバイス152によって報告されるリンク状態情報がタイムスタンプ後の次の時間内に受信されない場合、コントローラ10は、L3デバイス152のデバイスIPアドレスを決定し、L3デバイス152のデバイスIPアドレスに基づいて、検出リンクに障害リンクが存在することを示す警告情報を生成する。よって、管理者は、L3デバイス14とL3デバイス152の間のリンクに障害が生じたことを知ることができる。コントローラ10は、さらに、L3デバイス14の転送テーブルをリフレッシュしてよく、その結果、L3デバイス14が、 L3デバイス14とL3デバイス152の間の障害リンクにトラフィックを送信するのを防止できる。
本実施形態は、上記実施形態の有益な効果に加えて、2つの隣り合うネットワークデバイス間の障害リンクを管理者が知るのを可能にでき、ネットワークデバイスが、障害リンクにトラフィックを送信するのを回避して、ネットワークデバイスのトラフィック転送の効率を向上させることができる。
図4は、本発明の第3の例示の実施形態による、リンク検出方法のフローチャートである。本実施形態を、図1に関連して示し記載する。図4に示すように、以下のステップが含まれる。
ステップ401は、受信されたネットワークメッセージが検出メッセージであるか否かを決定する。ネットワークメッセージが検出メッセージである場合、ステップ402が行われる。ネットワークメッセージが通常のネットワークメッセージである場合、ステップ401が再度行われる。
ある実施形態においては、VXLANカプセル化が、コントローラ10によって生成された検出メッセージに対して行われてよい。コントローラ10によって生成された検出メッセージのVXLANカプセル化を行うことによって、検出メッセージは、VXLANネットワークのネットワークデバイスによって転送できる。ある実施形態においては、ネットワークメッセージが検出メッセージであるか否かの決定は、VXLANカプセル化された検出メッセージのPDフラグを用いて行うことができる。例えば、PDフラグが1であることは、関連付けられたネットワークメッセージが検出メッセージであることを示し、PDフラグがゼロであることは、関連付けられたネットワークメッセージが通常のネットワークメッセージであることを示す。
ステップ402は、ネットワークメッセージが検出メッセージである場合、検出メッセージに含まれた第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、検出メッセージの第1の識別子に基づいて、リンク状態情報を生成し、そのリンク状態情報をコントローラに報告する。
ある実施形態においては、ネットワークデバイスは、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスを検出メッセージの内側メッセージから抽出でき、ネットワークデバイスのデバイスIPアドレスを第2の送信元IPアドレスとして設定でき、コントローラのIPアドレスを第2の宛先IPアドレスとして設定できる。ネットワークデバイスは、リンク状態情報をコントローラに報告する。第1の送信元IPアドレス及び第1の宛先IPアドレスは、検出メッセージの内層の情報であり、負荷の部分である。第2の送信元IPアドレスは、リンク状態情報の実際の送信元IPアドレスである。第2の宛先IPアドレスは、リンク状態情報の実際の宛先IPであり、検出メッセージフォーマットの外層のIPヘッダの情報である。これについては、以下に記載する。
ステップ403は、検出メッセージからの宛先VTEPアドレスを解析し、宛先VTEPアドレスに基づいて、ネットワークデバイスの転送テーブルを調べ、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製する。
ある実施形態においては、宛先VTEPアドレスは、検出リンク上の開始ネットワークデバイスによって、検出メッセージの外層の宛先IPアドレスとしてカプセル化される。ある実施形態においては、少なくとも1つの次のジャンプ先の数が、出口ポートの数から決定できる。
ステップ404は、少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに従って、検出メッセージのMACヘッダをカプセル化し、検出メッセージを少なくとも1つの次のジャンプ先に転送する。
ある実施形態においては、MACアドレスを用いて検出メッセージのMACヘッダをカプセル化する例は、検出メッセージフォーマットを参照できる。これについては、以下に記載するが、ここで最初に詳細に記載はしない。
上記ステップ401〜404を通して、本出願の実施形態は、現在のネットワークデバイスが、コントローラから来る検出メッセージを少なくとも1つの次のジャンプ先の数に従って複製するのを可能することができ、検出メッセージを検出リンク上の全ての経路に送信できるのを確実にし、それによって、検出リンク上の全ての経路のトラバースを達成する。こうして、コントローラは、検出リンク上の全てのリンクのリンク状態情報を知ることができ、コントローラが、リンク状態情報に基づいてリンクを維持するのを容易にする。
図5は、本発明の第4の例示の実施形態による、リンク検出方法のフローチャートである。本実施形態を、図1と、VTEP13による検出メッセージ転送を実施する例に関連して示し記載する。図5に示すように、以下のステップが含まれる。
ステップ501は、受信されたネットワークメッセージが検出メッセージであるか否かを決定する。ネットワークメッセージが検出メッセージである場合、ステップ502が行われる。ネットワークメッセージが通常のネットワークメッセージである場合、ステップ501が再度行われる。
ステップ501の詳細な記載は、ステップ401の記載を参照できるので、ここでは繰り返して記載しない。
ステップ502は、検出メッセージの第1の宛先IPアドレスに基づいて、対応する転送テーブルを検索する。
ある実施形態においては、検出メッセージがコントローラ10からVTEP13に直接、送信される場合、検出メッセージは、検出リンクの第1の送信元IPアドレス(図1に示すVTEP13のデバイスIPアドレス)と、第1の宛先IPアドレス(図1に示すVTEP16のデバイスIPアドレス)と、検出メッセージの第1の識別子とを含む。ある実施形態においては、VTEP13が、コントローラ10から検出メッセージを受信する場合、これは、VTEP13が、検出リンクの開始点のデバイスであることを示す。
ステップ503は、転送テーブルのVXLANネットワーク識別子及び宛先VTEPアドレスに基づいて、検出メッセージのVXLANカプセル化を行う。
ある実施形態においては、VXLANカプセル化された検出メッセージは、メッセージフォーマットを参照できる。これについては、以下に記載するが、ここで最初に詳細に記載はしない。
ステップ504は、VXLANメッセージヘッダの検出メッセージにラベルを付ける。
ある実施形態においては、PDフラグビットは、VXLANヘッダのVNIフィールドの後の予備フィールドに定義されてよい。PDフラグビットが1である時、これは、ネットワークメッセージが検出メッセージであることを示す。
ステップ505は、現在のネットワークデバイスが複数の等価の次のジャンプ先を有するか否かを決定する。複数の次のジャンプ先が存在する場合、ステップ506が行われる。次のジャンプ先が1つのみの場合、ステップ507が行われる。
ある実施形態においては、少なくとも1つの次のジャンプ先の数が、ネットワークデバイスの出口ポートの数を用いて決定できる。
ステップ506は、等価の次のジャンプ先の数に従って、検出メッセージを複製する。
ステップ507は、各検出メッセージの対応するMACヘッダをカプセル化し、検出メッセージを次のジャンプ先に転送する。
ある実施形態においては、カプセル化されたMACヘッダは、メッセージフォーマットを参照できる。これについては、以下に記載するが、ここで最初に詳細に記載はしない。
本実施形態においては、VTEP13は、コントローラから来る検出メッセージを、少なくとも1つの次のジャンプ先の数に従って複製し、それによって、検出メッセージが検出リンク上の全ての経路に確実に送信できるようにし、検出リンク上のVTEP13に対応する全ての経路のトラバースを達成する。こうして、コントローラは、VTEP13に対応する経路のリンク状態情報を知ることができる。
図6は、本発明の第5の例示の実施形態による、リンク検出方法のフローチャートである。図1と、L3デバイス14による検出メッセージ転送を実施する例とに関連して、本実施形態を示し記載する。図6に示すように、以下のステップが含まれる。
ステップ601は、受信されたネットワークメッセージが検出メッセージであるか否かを決定する。ネットワークメッセージが検出メッセージである場合、ステップ602が行われる。ネットワークメッセージが通常のネットワークメッセージである場合、ステップ601が再度行われる。
ステップ601の詳細な記載は、ステップ401の記載を参照できるので、ここでは繰り返して記載しない。
ステップ602は、検出メッセージの入力ポートインデックスと、検出メッセージの第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子と、現在のタイムスタンプとを抽出する。
ステップ603は、第1の送信元IPアドレス、第1の宛先IPアドレス、第1の識別子、及び、現在のタイムスタンプに基づいて、リンク状態情報を生成し、そのリンク状態情報をコントローラに報告する。
ステップ604は、検出メッセージの宛先VTEPアドレスに基づいて、転送テーブルを検索する。
ある実施形態においては、宛先VTEPアドレスを用いて転送テーブルを検索する方法は、既存技術の関連する記載を参照できるので、ここでは詳細に記載しない。
ステップ605は、現在のネットワークデバイスが複数の等価の次のジャンプ先を有するか否かを検出メッセージの宛先VTEPアドレスに基づいて、クエリする。複数の次のジャンプ先が存在する場合、ステップ606が行われる。次のジャンプ先が1つのみの場合、ステップ607が行われる。
ある実施形態においては、次のジャンプ先(複数可)は、宛先VTEPアドレスに基づいて見つけることができる。次のジャンプ先の数は、検出メッセージを複製する必要があるか否かと、検出メッセージの複製が幾つ必要かを決定するために使用できる。
ステップ606は、等価の次のジャンプ先の数に従って、検出メッセージを複製する。
ステップ607は、検出メッセージの対応するMACヘッダをカプセル化し、検出メッセージを転送する。
ある実施形態においては、カプセル化されたMACヘッダは、メッセージフォーマットを参照でき、これについては、以下に記載するが、ここで最初に詳細に記載はしない。
本実施形態においては、L3デバイスは、コントローラから来る検出メッセージを、少なくとも1つの次のジャンプ先の数に従って複製でき、これによって、検出メッセージを確実に検出リンク上の全ての経路に送信できるようにし、検出リンク上のL3デバイスに対応する全ての経路のトラバースを達成する。こうして、L3デバイスに対応する経路のリンク状態情報をコントローラが知るのを可能にする。
図7は、本発明の第6の例示の実施形態による、リンク検出方法のフローチャートである。
図1と、VTEP16によって検出メッセージ転送を終了させる例と関連して、本実施形態を示し記載する。図7に示すように、以下のステップが含まれる。
ステップ701は、受信されたネットワークメッセージが検出メッセージか否かを決定する。ネットワークメッセージが検出メッセージである場合、ステップ702が行われる。ネットワークメッセージが通常のネットワークメッセージである場合、ステップ701が再度行われる。
ステップ701の詳細な記載は、ステップ401の記載を参照できる。検出メッセージから検出メッセージの外側メッセージにカプセル化された第1の宛先IPアドレスの解析の仕方は、ここでは繰り返し記載しない。
ステップ702は、宛先VTEPアドレスがローカルネットワークデバイスのデバイスIPアドレスと同じか否かを決定する。宛先VTEPアドレスがローカルネットワークデバイスのデバイスIPアドレスと同じである場合、ステップ703が行われる。宛先VTEPアドレスが、ローカルネットワークデバイスのデバイスIPアドレスと異なる場合、図6の実施形態の方法は、検出メッセージの転送を参照できるので、ここでは繰り返して記載しない。
宛先VTEPアドレスが、ローカルネットワークデバイスのデバイスIPアドレスと同じ場合、ステップ703は、検出メッセージの入力ポートインデックスと、ローカルネットワークデバイスの現在のタイムスタンプとを決定する。
ステップ704は、入力ポートインデックス及び現在のタイムスタンプをリンク状態情報に追加し、そのリンク状態情報をコントローラに報告する。
ステップ705は、検出メッセージを廃棄する。
本実施形態においては、検出メッセージを受信後、終了点のネットワークデバイスは、検出メッセージを廃棄し、それによって、検出リンク上でトラバースされた全ての経路のリンク検出を実施して、経路をトラバースできないという既存技術の欠陥を解決する。
図8は、本発明の第7の例示の実施形態による、様々なシステム間の信号伝達のフローチャートである。コントローラ10がVM11とVM12の間のリンクの状態をどのように検出するかの例が、説明及び記載のために使用される。図8に示すように、以下のステップが含まれる。
ステップ801:コントローラ10は、リンク検出の実行を必要とするVXLANトンネルのVTEP13に検出メッセージを送信する。一方向のリンク検出のみが必要な場合、この方向の開始点のVTEP13にのみ、検出メッセージを送信できる。両方向のリンク検出が必要な場合、検出メッセージは、トンネルの両端のVTEPに送信される。
ステップ802:検出メッセージ受信後、VTEP13は、検出メッセージの宛先IPに基づいて、転送テーブルを検索し、転送テーブルの宛先VNI及びVTEPアドレス(本出願書のVTEP16のIPアドレス)等の情報に基づいて、検出メッセージのVXLANカプセル化を行い、VXLANヘッダのPDフラグを1に設定する。
ステップ803:VTEP13は、宛先VTEPアドレスに基づいて、次のジャンプ先(複数可)を見つける。次のジャンプ先が1つのみの場合、MACヘッダのカプセル化後、メッセージは、次のジャンプ先に直接送信される。複数の等価の次のジャンプ先が存在する場合、VXLANカプセル化が行われた検出メッセージは、次のジャンプ先の数に従って複製される。メッセージのMACヘッダは、各次のジャンプ先のMACアドレスに基づいてカプセル化され、カプセル化された検出メッセージは、各対応する次のジャンプ先に送信される。カプセル化されたVXLANメッセージのVXLANヘッダのフィールド(複数可)のコンテンツの詳細は、メッセージフォーマットで見つけることができる。これについては、以下に記載する。
ステップ804:VTEPの次のジャンプ先であるL3デバイス14は、カプセル化されたVXLAN検出メッセージを受信し、ネットワークメッセージのPDフラグに基づいて、関連付けられたネットワークメッセージが検出メッセージであると決定した後、リンク状態情報をコントローラ10に報告する。リンク状態情報は、タイムスタンプ、メッセージ入力ポート等のフィールドを含む。
ステップ805:L3デバイス14は、メッセージの宛先VTEPアドレスに基づいて、次のジャンプ先(複数可)を見つける。次のジャンプ先が1つのみの場合、メッセージは、MACヘッダのカプセル化後、次のジャンプ先に直接送信される。複数の等価の次のジャンプ先が存在する場合、VXLANカプセル化が行われた検出メッセージは、次のジャンプ先の数に従って複製される。メッセージのMACヘッダは、各次のジャンプ先のMACアドレスに基づいてカプセル化され、検出メッセージは、現在のL3デバイスに対応する次のジャンプ先であるL3デバイス151に送信される。L3デバイス151の処理プロセスは、L3デバイス14の処理プロセスと同じなので、ここでは、詳細に繰り返して記載しない。
ステップ806:終点VTEP16は、検出メッセージを受信し、メッセージのPDフラグに基づいて、メッセージが検出メッセージであると決定した後、リンク状態情報を報告する。リンク状態情報は、タイムスタンプ、メッセージ入力ポート等のフィールドを含む。
ステップ807:終点VTEP16は、検出メッセージを廃棄する。
検出メッセージのフォーマットを以下に示す。
0123456789012345
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 外層のMACヘッダ − 14バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のIPヘッダ − 20バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 外層のUDPヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VXLANヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のメッセージ 〜 変数
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0123456789012345
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 外層のMACヘッダ − 14バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のIPヘッダ − 20バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 外層のUDPヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VXLANヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のメッセージ 〜 変数
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
VXLANヘッダのフォーマットを以下に示す。
01234567890123456789012345678901
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|R|R|R|R|I|R|R|R| 予備フィールド |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
VXLANネットワーク識別子(VNI)|R|R|R|R|R|R|R|PD|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
01234567890123456789012345678901
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|R|R|R|R|I|R|R|R| 予備フィールド |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
VXLANネットワーク識別子(VNI)|R|R|R|R|R|R|R|PD|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PDフラグビットは、VXLANネットワーク識別子(VNIと略される)のフィールドの後の予備フィールドで定義される。このPDフラグビットが1の時、これは、関連付けられたメッセージが検出メッセージであることを示す。
検出メッセージの内側メッセージフォーマットを以下に示す。
0123456789012345
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のMACヘッダ − 14バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のIPヘッダ − 20バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 内層のUDPヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 検出メッセージID | 4バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0123456789012345
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のMACヘッダ − 14バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のIPヘッダ − 20バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 内層のUDPヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 検出メッセージID | 4バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
コントローラ10は、第1の送信元IPアドレス、第1の宛先IPアドレス、及び、検出メッセージIDに基づいて、検出メッセージを識別する。検出リンク上の中間のネットワークデバイスによってコントローラ10に報告されたリンク状態情報は、検出メッセージの第1の送信元IPアドレス及び第1の宛先IPアドレスと、第2の宛先IPアドレスと、検出メッセージのID情報とを含み、それによって、コントローラが、検出リンクを検出メッセージに対応させ、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスを突き止めるのを助ける。
上記実施形態を通して、コントローラは、検出メッセージの構築と、検出リンク上のリンク開始点(例えば、図1に示すVTEP13)と、中間ネットワークノード(例えば、図1に示すL3デバイス14、L3デバイス151、及び、L3デバイス1512)への検出メッセージの送信を担当し、リンク開始点と、中間ネットワークノードは、個々に、それに対応する転送テーブルを調べて、検出メッセージをジャンプを繰り返して、リンクの終了点(例えば、図1に示すVTEP16)に転送する。さらに、各ノードは、各リンク状態情報をコントローラに報告し、コントローラは、検出リンクの状態を記録する。検出リンク上のリンク開始点または任意の中間ネットワークノードの転送テーブルが、複数の等価経路を有する場合、検出メッセージは、その次のジャンプ先の数に従って複製され、対応する経路に転送される。よって、本出願は、検出リンク上の全ての経路をトラバースできる。
上記リンク検出方法に関して、本出願は、図9に示す本出願の例示の実施形態による、コントローラの概略構造図も提案する。図9を参照すると、コントローラは、ハードウェア層に、第1のプロセッサと、内部バスと、第1のネットワークインタフェースと、メモリと、第1のプロセッサによって実行可能な命令を記憶する第1の記憶装置とを含む。他のサービスによって必要とされるハードウェア構成要素も含まれてよいことは明らかである。
第1のネットワークインタフェースは、検出リンク上の開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む検出メッセージを順次送信するために、また、検出メッセージに応答して検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含むリンク状態情報を受信するために使用される。
第1のプロセッサは、リンク状態情報に含まれた第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行い、検出リンク上のネットワークデバイスのネットワーク位置をデバイスIPアドレスに基づいて突き止めるために使用される。
上記リンク検出方法に関して、本出願は、図10に示す本出願の例示の実施形態による、ネットワークデバイスの概略構造図も提案する。図10を参照すると、ネットワークデバイスは、ハードウェア層に、第2のプロセッサと、内部バスと、第2のネットワークインタフェースと、メモリと、第2のプロセッサによって実行可能な命令を記憶する第2の記憶装置とを含む。他のサービスによって必要なハードウェア構成要素も含まれてよいことは明らかである。
第2のプロセッサは、受信されたネットワークメッセージが検出メッセージであるか否かを決定することと、ネットワークメッセージが検出メッセージである場合、検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、ネットワークデバイスのデバイスIPアドレスと、検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、そのリンク状態情報を第2のインタフェースを通してコントローラに報告することと、第1の宛先IPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索し、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製することと、少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、検出メッセージのMACヘッダをカプセル化し、検出メッセージを第2のインタフェースを通して少なくとも1つの次のジャンプ先に送信するために使用される。
図11は、本発明の第1の例示の実施形態によるリンク検出装置の概略構造図である。図11に示すように、リンク検出装置は、第1の送信モジュール111、第1の受信モジュール112、及び、整合モジュール113を含んでよい。
第1の送信モジュール111は、検出リンク上の開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出メッセージを順次送信するために使用され、検出メッセージは、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む。
第1の受信モジュール112は、第1の送信モジュールによって送信された検出メッセージに応答して検出リンク上のネットワークデバイスによって報告されたリンク状態情報を受信するように使用され、リンク状態情報は、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含む。
整合モジュール113は、第1の受信モジュールによって受信されたリンク状態情報に含まれる第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行うために、また、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスが配置されたネットワーク位置を突き止めるために使用される。
図12は、本発明の第2の例示の実施形態による、リンク検出装置の概略構造図である。図12に示すように、ある実施形態においては、図11に示す実施形態に基づいて、装置は、第1の受信モジュール112によって受信された検出リンク上の任意の1つのネットワークデバイスのリンク状態情報のタイムスタンプを決定するために使用される第1の決定モジュール114と、任意の1つのネットワークデバイスの次のジャンプ先のネットワークデバイスによって報告されたリンク状態情報が、タイムスタンプの後、規定時間内に受信されたか否かを決定するために使用される第2の決定モジュール115と、次のジャンプ先のネットワークデバイスのリンク状態情報が規定時間内に受信されていないと第2の決定モジュール115が決定する場合、次のジャンプ先のネットワークデバイスのデバイスIPアドレスを決定するために使用される第3の決定モジュール116と、第3の決定モジュール116によって決定された次のジャンプ先のネットワークデバイスのデバイスIPアドレスに基づいて、検出リンクに障害リンクが存在することを示す警告情報を生成するために使用される警告情報生成モジュール117とをさらに含んでよい。
ある実施形態においては、装置は、第3の決定モジュール116によって決定された次のジャンプ先のネットワークデバイスのデバイスIPアドレスに基づいて、現在のネットワークデバイスの転送テーブルをリフレッシュして、リフレッシュされた転送テーブルに基づいて、現在のネットワークデバイスが、ネットワークメッセージの障害リンクへの送信を停止するのを可能にするために使用されるリフレッシュモジュール118をさらに含んでよい。
ある実施形態においては、装置は、第3の決定モジュール116によって決定されたリンク状態情報を、コントローラによって維持されるトポロジ構造マップの対応するノードに記録するために使用される記録モジュール119をさらに含んでよい。
図13は、本発明の第3の例示の実施形態による、リンク検出装置の概略構造図である。図13に示すように、リンク検出装置は、第4の決定モジュール131、リンク情報生成モジュール132、検索モジュール133、及び、第1のカプセル化モジュール134を含んでよい。
第4の決定モジュール131は、受信されたネットワークメッセージが検出メッセージであるか否かを決定するために使用される。
リンク情報生成モジュール132は、ネットワークメッセージが検出メッセージであると第4の決定モジュール131が決定する場合、検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、ネットワークデバイスのデバイスIPアドレスと、検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、そのリンク状態情報をコントローラに報告するために使用される。
検索モジュール133は、第4の決定モジュール131によって決定された検出メッセージから宛先VTEPアドレスを解析し、宛先VTEPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索し、また、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製するために使用される。
第1のカプセル化モジュール134は、検索モジュール133によって見つけられた少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、検出メッセージのMACヘッダをカプセル化し、且つ、検出メッセージを少なくとも1つの次のジャンプ先に送信するために使用される。
図14は、本発明の第4の例示の実施形態による、リンク検出装置の概略構造図である。図14に示すように、ある実施形態においては、図13に示す実施形態に基づいて、装置は、検索モジュール133によって見つけられた転送テーブルの宛先VXLANネットワーク識別子及び宛先VTEPアドレスに基づいて、検出メッセージのVXLANカプセル化を行うために使用される第2のカプセル化モジュール135と、VXLANヘッダの検出メッセージにラベルを付けるために使用されるラベル付けモジュール136とをさらに含んでよい。検索モジュール133は、検出メッセージの第1の宛先IPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索するステップを行う。
ある実施形態においては、検出メッセージが、検出リンク上のネットワークデバイスによって転送される場合、装置は、第4の決定モジュール131によって決定される検出メッセージの入力ポートインデックスと、ローカルネットワークデバイスの現在のタイムスタンプとを決定するために使用される第5の決定モジュール137と、第5の決定モジュール137によって決定された入力ポートインデックスと現在のタイムスタンプとをリンク状態情報に追加するために使用される第1の追加モジュール138とをさらに含んでよい。
ある実施形態においては、装置は、宛先VTEPアドレスがローカルネットワークデバイスのIPアドレスと同じであるか否かを決定するために使用される第6の決定モジュール139と、宛先VTEPアドレスがローカルネットワークデバイスのIPアドレスと同じであると第6の決定モジュール139が決定する場合、検出メッセージの入力ポートインデックスとローカルネットワークデバイスの現在のタイムスタンプとを決定するために使用される第7の決定モジュール140と、第7の決定モジュール140によって決定された入力ポートインデックスと現在のタイムスタンプをリンク状態情報に追加するために使用される第2の追加モジュール141とをさらに含んでよい。
ある実施形態においては、装置は、第4の決定モジュール131によって決定された検出メッセージを廃棄するために使用される廃棄モジュール142をさらに含んでよい。
ある実施形態においては、第4の決定モジュール131は、受信されたネットワークメッセージのVXLANメッセージヘッダのフラグを決定するために使用される第1の決定ユニット1311と、第1の決定ユニット1311によって決定されるVXLANメッセージヘッダのフラグに基づいて、ネットワークメッセージが検出メッセージであるか否かを決定するために使用される第2の決定ユニット1312とを含んでよい。
上記実施形態から分かるように、コントローラは、検出メッセージの構築と、検出リンク上のリンク開始点及び中間ネットワークノードへの検出メッセージの送信を担当し、リンク開始点及び中間ネットワークノードは、個々に、その対応する転送テーブルを調べて、検出メッセージをジャンプを繰り返してリンクの終了点に転送する。さらに、各ノードは、各リンク状態情報をコントローラに報告し、コントローラは、検出リンクの状態を記録する。検出リンク上のリンク開始点または任意の中間ネットワークノードの転送テーブルが、複数の等価経路を有する場合、検出メッセージは、その次のジャンプ先の数に従って複製され、対応する経路に転送される。よって、本出願は、検出リンク上の全ての経路をトラバースできる。
本明細書を検討し、本明細書に開示の発明を実施すると、当業者は、本出願の他の実施態様の解決法を容易に考え付くことができる。本出願は、本出願の修正、使用法、または、適応的な変更のいずれも含むことを意図している。これらの修正、使用法、または、適応的な変更は、本出願の一般的原理に従い、本出願には記載されていない本技術分野の周知の知識または、一般的な技術的手段を含む。明細書及び実施形態は、単に説明的なものとみなされる。本出願の真の範囲及び精神は、添付の請求項によって示される。
「含む(include)」、「含む(contain)」または任意の他の変形等の用語は、非排他的な包含を網羅することを意図し、例えば、一連の要素を含むプロセス、方法、製品、または、デバイスは、これらの要素を含むだけでなく、明示的に列挙されていない他の要素も含み、プロセス、方法、製品、または、デバイスに内在する要素も含むことも留意されたい。さらなる制限が無ければ、「を含む(include a ・・・)」という句によって規定される要素は、プロセス、方法、製品、または、デバイスが、それと同じ追加の要素(複数可)をさらに含むことを妨げない。
上記記載は、本出願の好ましい実施形態にすぎず、本出願に対する制限とは解釈されない。本出願の精神及び原理内で行われる全ての修正、同等の置き換え及び改良等は、本出願の保護の範囲に含まれる。
本出願は、通信技術分野に関し、詳細には、リンク検出の方法、装置、ネットワークデバイス、及び、コントローラに関する。
VXLANネットワークにおいては、2つのVXLANトンネルエンドポイント(VTEP)の間に、負荷共有のために、複数の等価経路が存在してよい。複数の等価経路のうち、あるリンクに障害が生じると、障害リンクにトラフィックが送信されないように素早く障害リンクを検出する必要がある。既存技術においては、リンク間に存在し得る複数の等価経路を検出するために、開始点のVTEPは、全ての経路をトラバースする目的で、メッセージの順序に従って、カプセル化された検出メッセージの外層のUDPヘッダの送信元ポートを1つずつ順次増やす。カスケード接続している複数の等価経路が存在する(例えば、ノードAは、ノードBとノードCに個々に2つの等価経路を有し、ノードBも、ノードDとノードEに個々に2つの等価経路を有し、ノードAとノードB両方のハッシュ経路選択アルゴリズムが、送信元ポートを含む)状況において、ノードAは、奇数の送信元ポートを有する検出メッセージ(送信元と宛先のIPは変わらないままである)をノードBに送信してよく、偶数の送信元ポートを有する検出メッセージをノードCに送信してよく、一方、ノードBは、奇数の送信元ポートを有する検出メッセージをノードCに送信する。よって、ノードBからノードDへのリンクを検出メッセージは通らない。分かるように、既存技術は、ノードデバイスのハッシュ経路選択アルゴリズムに主に依存するので、全ての経路をトラバースすることを保証できない。
上記目的を達成するために、本出願は、以下の技術的解決を提供する。
本出願の第1の態様によると、リンク検出方法が提案され、コントローラに適用される。方法は、検出リンク上で、開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む検出メッセージを順次送信することと、検出メッセージに応答して検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含むリンク状態情報を受信することと、リンク状態情報に含まれた第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行い、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスが配置されたネットワーク位置を突き止めることを含む。
本出願の第2の態様によると、リンク検出方法が提案され、ネットワークデバイスに適用される。方法は、受信されたネットワークメッセージが検出メッセージであるか否かを決定することと、ネットワークメッセージが検出メッセージである場合、検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、ネットワークデバイスのデバイスIPアドレスと、検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、そのリンク状態情報をコントローラに報告することと、検出メッセージから宛先VTEPアドレスを解析し、宛先VTEPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索し、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製することと、少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、検出メッセージのMACヘッダをカプセル化し、検出メッセージを少なくとも1つの次のジャンプ先に送信することを含む。
本出願の第3の態様によると、リンク検出装置が提案され、コントローラに適用される。装置は、検出リンク上で、開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む検出メッセージを順次送信するために使用される第1の送信モジュールと、第1の送信モジュールによって送信された検出メッセージに応答して、検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含むリンク状態情報を、受信するように使用される第1の受信モジュールと、第1の受信モジュールによって受信されたリンク状態情報に含まれる第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行い、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスが配置されたネットワーク位置を突き止めるために使用される整合モジュールを含む。
本出願の第4の態様によると、リンク検出装置が提案され、ネットワークデバイスに適用される。装置は、受信されたネットワークメッセージが検出メッセージであるか否かを決定するために使用される第4の決定モジュールと、ネットワークメッセージが検出メッセージであると第4の決定モジュールが決定する場合、検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、ネットワークデバイスのデバイスIPアドレスと、検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、そのリンク状態情報をコントローラに報告するために使用されるリンク情報生成モジュールと、第4の決定モジュールによって決定される検出メッセージから宛先VTEPアドレスを解析し、宛先VTEPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索し、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製するために使用される検索モジュールと、検索モジュールによって見つけられた少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、検出メッセージのMACヘッダをカプセル化し、検出メッセージを少なくとも1つの次のジャンプ先に送信するために使用される第1のカプセル化モジュールを含む。
本出願の第5の態様によると、コントローラが提案される。コントローラは、第1のプロセッサと、第1のプロセッサによって実行可能な命令を記憶する第1の記憶装置と、第1のネットワークインタフェースとを含み、第1のネットワークインタフェースは、検出リンク上で、開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む検出メッセージを順次送信するために、また、検出メッセージに応答して検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含むリンク状態情報を受信するために使用され、第1のプロセッサは、リンク状態情報に含まれた第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行い、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスが配置されたネットワーク位置を突き止めるために使用される。
本出願の第6の態様によると、ネットワークデバイスが提案される。ネットワークデバイスは、第2のプロセッサと、第2のプロセッサによって実行可能な命令を記憶する記憶装置と、第2のネットワークインタフェースとを含み、第2のプロセッサは、受信されたネットワークメッセージが検出メッセージであるか否かを決定することと、ネットワークメッセージが検出メッセージである場合、検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、ネットワークデバイスのデバイスIPアドレスと、検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、そのリンク状態情報を第2のインタフェースを通してコントローラに送信することと、第1の宛先IPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索し、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製することと、少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、検出メッセージのMACヘッダをカプセル化し、検出メッセージを第2のインタフェースを通して少なくとも1つの次のジャンプ先に送信するために使用される。
技術的解決法から分かるように、本出願は、検出リンクの全ての経路をトラバースでき、コントローラが、検出リンク上の全てのリンクのリンク状態情報を知るのを可能にして、障害リンクを素早く識別し、突き止めるのを助ける。
例示的な実施形態を、その例を添付の図面で表して、ここに詳細に記載する。添付の図面が、以下の記載に関わる時、異なる添付図面の同じ番号は、別段の記載のない限り、同じまたは類似の要素を表す。以下の例示的な実施形態に記載された実施態様は、本出願と一致する全ての実施態様を表すものではなく、本出願に一致し、添付の請求項に詳細に記載する装置及び方法の例に過ぎない。
本出願書で使用される専門用語は、特定の実施形態を記載する目的で使用されるにすぎず、本出願を制限することを意図していない。本出願書と添付の請求項で使用される「a」、「前記(said)」、及び「the」等の単数形は、複数形を含むことを意図している。文脈で明らかに他の意味を示さない限り、本明細書で使用される「及び/または」という句は、列挙された1つまたは複数の関連する項目の任意または全ての組み合わせを指す。
本出願書は、第1の、第2の、第3の等の語を使用して、様々な情報を記載する場合があるが、これらの情報は、これらの語に制限されないことは理解されたい。これらの語は、同じ種類の情報を区別するために使用されるにすぎない。例えば、本出願の範囲を逸脱することなく、第1の情報は、第2の情報と呼ぶこともできる。同様に、第2の情報は、第1の情報と呼ぶこともできる。文脈に応じて、本出願書で使用される「if」という語は、「の時に」、「の時」、または、「であると決定することに応答して」として解釈できる。
図1は、本発明の例示的な実施形態に適したネットワークのフレームワーク図である。管理者が、仮想マシン(VMと略される)11とVM12の間でコントローラ10を通してリンク検出を行うことを選択すると、コントローラ10は、VM11とVM12のIPアドレスを読み出すことができ、VM11のIPアドレスを第1の送信元IPアドレスに設定でき、VM12のIPアドレスを第1の宛先IPアドレスに設定でき、検出メッセージの識別に使用される第1の識別子(ID)を生成でき、第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージを作成できる。コントローラ10は、検出メッセージを開始点VTEP13に送信する。検出メッセージがL3デバイス14、L3デバイス151、及び、L3デバイス152によって順次転送された後、検出メッセージは、終点VTEP16に到達する。開始点VTEP13、L3デバイス14、L3デバイス151、L3デバイス152、及び、終点VTEP16は、検出メッセージを受信すると、各リンク状態情報をコントローラ10に報告する。コントローラ10は、各デバイスによって報告されたリンク状態情報を記録する。ある実施形態においては、コントローラ10は、ソフトウェア定義ネットワーク(SDNと略される)コントローラであってよい。リンクの開始点、または、あるネットワーク中間ノードの転送テーブルが複数の等価経路を有する場合、検出メッセージは、次のジャンプ先の数に従って複製され、対応する経路に転送される。例えば、図1に示すL3デバイス14は、次のジャンプ先(L3デバイス151及びL3デバイス152)への2つの等価経路を有する。L3デバイス14は、検出メッセージを複製してよく、次に、その複製メッセージをL3デバイス151とL3デバイス152に送信してよい。従って、本出願は、コントローラを通してリンクを管理、維持でき、また、リンクの全ての経路をトラバースできるので、リンクの全ての経路をトラバースできないという既存技術の欠点を解決する。
本出願をさらに詳細に記載するために、以下の実施形態を提供する。
図2は、本発明の第1の例示の実施形態による、リンク検出方法のフローチャートであり、図1に示すコントローラ10に適用できる。本実施形態を、図1に示す実施形態と関連して記載し、示す。図2に示すように、以下のステップが含まれる。
ステップ201は、検出リンク上を、開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに順次、検出メッセージを送信する。検出メッセージは、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む。
ある実施形態においては、検出リンクは、ネットワーク管理者によって選択されてよい。図1に示すように、コントローラ10は、検出リンクの2つの端(例えば、VM11とVM12)のIPアドレスを読み出し、検出リンクの一方の端(例えば、VM11)のIPアドレスを第1の送信元IPアドレスに設定し、他方の端(例えば、VM12)のIPアドレスを第1の宛先IPアドレスとして設定する。ある実施形態においては、第1の識別子は、連番を検出メッセージに割り当てて生成されてよい。検出リンクのリンク検出を行う規定期間(規定期間の範囲は10ミリ秒と1秒の間)内で、コントローラ10は、検出メッセージをVTEP13に間欠的に送信でき、第1の識別子を連続的に1ずつ、すなわち、ID+1、検出期間が終了するまで増加させる。検出メッセージの第1の識別子を1ずつ増加させることによって、同じ検出リンク上の検出メッセージのIDの一意性を保証でき、コントローラ10が、検出リンク上のネットワークデバイスによって報告されたリンク状態情報の整合を便利に行うのを可能にし得る。同じ検出リンク上の検出メッセージの数を数えることによって、コントローラ10が、検出リンクで送信される検出メッセージの数を計算するのを可能にし得る。
ある実施形態においては、図1に示すように、検出メッセージを受信すると、VTEP13は、検出メッセージの第1の宛先IPアドレスに基づいて、対応する転送テーブルを調べることができ、宛先VNIと宛先VTEPアドレス等の転送テーブルの情報に基づいて、検出メッセージにVXLANカプセル化を行うことができる。VXLANヘッダのPDフラグビットが、同時に1に設定されて、ネットワークデバイスが、PDフラグに基づいて、受信されたネットワークメッセージが検出メッセージか否かを識別するのを可能にする。VXLANカプセル化後の検出メッセージのVXLANヘッダのコンテンツは、以下の説明に記載するメッセージフォーマットを参照できる。ある実施形態においては、VTEP13は、宛先VTEPアドレスに基づいて次のジャンプ先を検索でき、次のジャンプ先の数に基づいて、検出メッセージを複製する必要があるか否かと、必要とされる検出メッセージの複製数とを決定できる。次のジャンプ先が1つのみの場合、検出メッセージは、検出メッセージのMACヘッダをカプセル化した後、VTEP13の次のジャンプ先に直接転送できる。複数の等価の次のジャンプ先が存在する場合、VXLANカプセル化が行われた検出メッセージは、次のジャンプ先の数に従って複製される。各検出メッセージのMACヘッダは、各次のジャンプ先のMACアドレスに従ってカプセル化され、カプセル化された検出メッセージは、VTEP13の対応する次のジャンプ先に送信される。
例えば、検出メッセージ受信後、VTEP13の次のジャンプ先であるL3デバイス14は、リンク状態情報をコントローラ10に報告する。リンク状態情報は、L3デバイス14のデバイスIPアドレスを含んでよい。従って、コントローラ10は、検出メッセージを送信してきたネットワークデバイスを、デバイスIPアドレスを用いて識別できる。L3デバイス14は、検出メッセージの宛先VTEPアドレスに基づいて、次のジャンプ先を検索し、次のジャンプ先の数に基づいて、検出メッセージを複製する必要があるか否かと、必要とされる検出メッセージの複製数とを決定する。次のジャンプ先が1つのみの場合、検出メッセージは、検出メッセージのMACヘッダをカプセル化した後、次のジャンプ先に直接転送できる。複数の等価の次のジャンプ先(図1に示すL3デバイス151とL3デバイス152等が存在する場合)、検出メッセージは、次のジャンプ先の数に従って複製される。L3デバイス151及びL3デバイス152は、検出メッセージが終了ネットワークデバイスVTEP16に転送されるまで、L3デバイス14と同じ動作を行う。
ステップ202は、検出メッセージに従って検出リンク上のネットワークデバイスによって報告されたリンク状態情報を受信する。リンク状態情報は、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含む。
ステップ203は、第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行い、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスのネットワーク位置を突き止める。
図1に示すように、ある実施形態においては、コントローラ10は、ステップ203で、ネットワークデバイス(L3デバイス14)によって報告された各リンク状態情報を受信する。コントローラ10は、受信したリンク状態情報から、第1の送信元IPアドレス、第1の宛先IPアドレス、L3デバイス14のデバイスIPアドレス、及び、検出メッセージの第1の識別子等のリンク状態情報の情報を抽出できる。リンク状態情報の第1の送信元IPアドレス、第1の宛先IPアドレス、及び、検出メッセージの第1の識別子に基づいて、対応する検出リンクを見つける。検出リンク上のL3デバイス14のネットワーク位置が、デバイスIPアドレスに基づいて突き止められる。ある実施形態においては、コントローラ10は、コントローラ10によって維持されるトポロジ構造マップの対応するノードにリンク状態情報を記録してもよく、それによって、管理者は検出リンク全体のリンク状態を見るのが容易になる。
上記記載から分かるように、本発明の実施形態は、ステップ201から203を通して、検出リンクの全ての経路をトラバースでき、コントローラが検出リンク上の全ての経路のリンク状態情報を知って、障害リンクを素早く識別し、突き止めるのを助けるのを可能にする。
図3は、本発明の第2の例示の実施形態による、リンク検出方法のフローチャートである。本実施形態は、説明的な記載として、コントローラが、検出リンクのリンク状態情報を受信した後、リンク状態情報を用いて障害リンクの決定の仕方の例を使用する。図3に示すように、以下のステップが含まれる。
ステップ301は、検出リンク上の任意の1つのネットワークデバイスのリンク状態情報のタイムスタンプを決定する。
ステップ302は、検出リンク上の任意の1つのネットワークデバイスの次のジャンプ先のネットワークデバイスによって報告されたリンク状態情報が、タイムスタンプ後、規定時間内に受信されるか否かを決定する。
ステップ303は、次のジャンプ先のネットワークデバイスのリンク状態情報が規定時間内に受信されない場合、次のジャンプ先のネットワークデバイスのデバイスIPアドレスを決定する。
ステップ304は、次のジャンプ先のネットワークデバイスのデバイスIPアドレスに基づいて、検出リンクに障害リンクが存在することを示す警告情報を生成する。
ステップ305は、次のジャンプ先のネットワークデバイスのデバイスIPアドレスに基づいて、現在のネットワークデバイスの転送テーブルをリフレッシュし、その結果、現在のネットワークデバイスは、リフレッシュされた転送テーブルに基づいて、ネットワークメッセージの障害リンクへの送信を停止する。
図1に示すように、検出リンク上の任意の1つのネットワークデバイスによって報告されたリンク状態情報を受信した後、コントローラ10は、検出メッセージが受信された時のネットワークデバイスのタイムスタンプ、ネットワークデバイスのデバイスIPアドレス、検出メッセージの入力ポート、第1の送信元IPアドレス、第1の宛先IPアドレス、及び、検出メッセージの第1の識別子等の情報を、リンク状態情報から抽出もできる。例えば、L3デバイス14(本出願書においては現在のネットワークデバイス)によって報告されるリンク状態情報を受信後、コントローラ10は、L3デバイス14がリンク状態情報から検出メッセージを受信したタイムスタンプを抽出する。L3デバイス152によって報告されるリンク状態情報がタイムスタンプ後の次の時間内に受信されない場合、コントローラ10は、L3デバイス152のデバイスIPアドレスを決定し、L3デバイス152のデバイスIPアドレスに基づいて、検出リンクに障害リンクが存在することを示す警告情報を生成する。よって、管理者は、L3デバイス14とL3デバイス152の間のリンクに障害が生じたことを知ることができる。コントローラ10は、さらに、L3デバイス14の転送テーブルをリフレッシュしてよく、その結果、L3デバイス14が、 L3デバイス14とL3デバイス152の間の障害リンクにトラフィックを送信するのを防止できる。
本実施形態は、上記実施形態の有益な効果に加えて、2つの隣り合うネットワークデバイス間の障害リンクを管理者が知るのを可能にでき、ネットワークデバイスが、障害リンクにトラフィックを送信するのを回避して、ネットワークデバイスのトラフィック転送の効率を向上させることができる。
図4は、本発明の第3の例示の実施形態による、リンク検出方法のフローチャートである。本実施形態を、図1に関連して示し記載する。図4に示すように、以下のステップが含まれる。
ステップ401は、受信されたネットワークメッセージが検出メッセージであるか否かを決定する。ネットワークメッセージが検出メッセージである場合、ステップ402が行われる。ネットワークメッセージが通常のネットワークメッセージである場合、ステップ401が再度行われる。
ある実施形態においては、VXLANカプセル化が、コントローラ10によって生成された検出メッセージに対して行われてよい。コントローラ10によって生成された検出メッセージのVXLANカプセル化を行うことによって、検出メッセージは、VXLANネットワークのネットワークデバイスによって転送できる。ある実施形態においては、ネットワークメッセージが検出メッセージであるか否かの決定は、VXLANカプセル化された検出メッセージのPDフラグを用いて行うことができる。例えば、PDフラグが1であることは、関連付けられたネットワークメッセージが検出メッセージであることを示し、PDフラグがゼロであることは、関連付けられたネットワークメッセージが通常のネットワークメッセージであることを示す。
ステップ402は、ネットワークメッセージが検出メッセージである場合、検出メッセージに含まれた第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、検出メッセージの第1の識別子に基づいて、リンク状態情報を生成し、そのリンク状態情報をコントローラに報告する。
ある実施形態においては、ネットワークデバイスは、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスを検出メッセージの内側メッセージから抽出でき、ネットワークデバイスのデバイスIPアドレスを第2の送信元IPアドレスとして設定でき、コントローラのIPアドレスを第2の宛先IPアドレスとして設定できる。ネットワークデバイスは、リンク状態情報をコントローラに報告する。第1の送信元IPアドレス及び第1の宛先IPアドレスは、検出メッセージの内層の情報であり、負荷の部分である。第2の送信元IPアドレスは、リンク状態情報の実際の送信元IPアドレスである。第2の宛先IPアドレスは、リンク状態情報の実際の宛先IPであり、検出メッセージフォーマットの外層のIPヘッダの情報である。これについては、以下に記載する。
ステップ403は、検出メッセージからの宛先VTEPアドレスを解析し、宛先VTEPアドレスに基づいて、ネットワークデバイスの転送テーブルを調べ、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製する。
ある実施形態においては、宛先VTEPアドレスは、検出リンク上の開始ネットワークデバイスによって、検出メッセージの外層の宛先IPアドレスとしてカプセル化される。ある実施形態においては、少なくとも1つの次のジャンプ先の数が、出口ポートの数から決定できる。
ステップ404は、少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに従って、検出メッセージのMACヘッダをカプセル化し、検出メッセージを少なくとも1つの次のジャンプ先に転送する。
ある実施形態においては、MACアドレスを用いて検出メッセージのMACヘッダをカプセル化する例は、検出メッセージフォーマットを参照できる。これについては、以下に記載するが、ここで最初に詳細に記載はしない。
上記ステップ401〜404を通して、本出願の実施形態は、現在のネットワークデバイスが、コントローラから来る検出メッセージを少なくとも1つの次のジャンプ先の数に従って複製するのを可能することができ、検出メッセージを検出リンク上の全ての経路に送信できるのを確実にし、それによって、検出リンク上の全ての経路のトラバースを達成する。こうして、コントローラは、検出リンク上の全てのリンクのリンク状態情報を知ることができ、コントローラが、リンク状態情報に基づいてリンクを維持するのを容易にする。
図5は、本発明の第4の例示の実施形態による、リンク検出方法のフローチャートである。本実施形態を、図1と、VTEP13による検出メッセージ転送を実施する例に関連して示し記載する。図5に示すように、以下のステップが含まれる。
ステップ501は、受信されたネットワークメッセージが検出メッセージであるか否かを決定する。ネットワークメッセージが検出メッセージである場合、ステップ502が行われる。ネットワークメッセージが通常のネットワークメッセージである場合、ステップ501が再度行われる。
ステップ501の詳細な記載は、ステップ401の記載を参照できるので、ここでは繰り返して記載しない。
ステップ502は、検出メッセージの第1の宛先IPアドレスに基づいて、対応する転送テーブルを検索する。
ある実施形態においては、検出メッセージがコントローラ10からVTEP13に直接、送信される場合、検出メッセージは、検出リンクの第1の送信元IPアドレス(図1に示すVTEP13のデバイスIPアドレス)と、第1の宛先IPアドレス(図1に示すVTEP16のデバイスIPアドレス)と、検出メッセージの第1の識別子とを含む。ある実施形態においては、VTEP13が、コントローラ10から検出メッセージを受信する場合、これは、VTEP13が、検出リンクの開始点のデバイスであることを示す。
ステップ503は、転送テーブルのVXLANネットワーク識別子及び宛先VTEPアドレスに基づいて、検出メッセージのVXLANカプセル化を行う。
ある実施形態においては、VXLANカプセル化された検出メッセージは、メッセージフォーマットを参照できる。これについては、以下に記載するが、ここで最初に詳細に記載はしない。
ステップ504は、VXLANメッセージヘッダの検出メッセージにラベルを付ける。
ある実施形態においては、PDフラグビットは、VXLANヘッダのVNIフィールドの後の予備フィールドに定義されてよい。PDフラグビットが1である時、これは、ネットワークメッセージが検出メッセージであることを示す。
ステップ505は、現在のネットワークデバイスが複数の等価の次のジャンプ先を有するか否かを決定する。複数の次のジャンプ先が存在する場合、ステップ506が行われる。次のジャンプ先が1つのみの場合、ステップ507が行われる。
ある実施形態においては、少なくとも1つの次のジャンプ先の数が、ネットワークデバイスの出口ポートの数を用いて決定できる。
ステップ506は、等価の次のジャンプ先の数に従って、検出メッセージを複製する。
ステップ507は、各検出メッセージの対応するMACヘッダをカプセル化し、検出メッセージを次のジャンプ先に転送する。
ある実施形態においては、カプセル化されたMACヘッダは、メッセージフォーマットを参照できる。これについては、以下に記載するが、ここで最初に詳細に記載はしない。
本実施形態においては、VTEP13は、コントローラから来る検出メッセージを、少なくとも1つの次のジャンプ先の数に従って複製し、それによって、検出メッセージが検出リンク上の全ての経路に確実に送信できるようにし、検出リンク上のVTEP13に対応する全ての経路のトラバースを達成する。こうして、コントローラは、VTEP13に対応する経路のリンク状態情報を知ることができる。
図6は、本発明の第5の例示の実施形態による、リンク検出方法のフローチャートである。図1と、L3デバイス14による検出メッセージ転送を実施する例とに関連して、本実施形態を示し記載する。図6に示すように、以下のステップが含まれる。
ステップ601は、受信されたネットワークメッセージが検出メッセージであるか否かを決定する。ネットワークメッセージが検出メッセージである場合、ステップ602が行われる。ネットワークメッセージが通常のネットワークメッセージである場合、ステップ601が再度行われる。
ステップ601の詳細な記載は、ステップ401の記載を参照できるので、ここでは繰り返して記載しない。
ステップ602は、検出メッセージの入力ポートインデックスと、検出メッセージの第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子と、現在のタイムスタンプとを抽出する。
ステップ603は、第1の送信元IPアドレス、第1の宛先IPアドレス、第1の識別子、及び、現在のタイムスタンプに基づいて、リンク状態情報を生成し、そのリンク状態情報をコントローラに報告する。
ステップ604は、検出メッセージの宛先VTEPアドレスに基づいて、転送テーブルを検索する。
ある実施形態においては、宛先VTEPアドレスを用いて転送テーブルを検索する方法は、既存技術の関連する記載を参照できるので、ここでは詳細に記載しない。
ステップ605は、現在のネットワークデバイスが複数の等価の次のジャンプ先を有するか否かを検出メッセージの宛先VTEPアドレスに基づいて、クエリする。複数の次のジャンプ先が存在する場合、ステップ606が行われる。次のジャンプ先が1つのみの場合、ステップ607が行われる。
ある実施形態においては、次のジャンプ先(複数可)は、宛先VTEPアドレスに基づいて見つけることができる。次のジャンプ先の数は、検出メッセージを複製する必要があるか否かと、検出メッセージの複製が幾つ必要かを決定するために使用できる。
ステップ606は、等価の次のジャンプ先の数に従って、検出メッセージを複製する。
ステップ607は、検出メッセージの対応するMACヘッダをカプセル化し、検出メッセージを転送する。
ある実施形態においては、カプセル化されたMACヘッダは、メッセージフォーマットを参照でき、これについては、以下に記載するが、ここで最初に詳細に記載はしない。
本実施形態においては、L3デバイスは、コントローラから来る検出メッセージを、少なくとも1つの次のジャンプ先の数に従って複製でき、これによって、検出メッセージを確実に検出リンク上の全ての経路に送信できるようにし、検出リンク上のL3デバイスに対応する全ての経路のトラバースを達成する。こうして、L3デバイスに対応する経路のリンク状態情報をコントローラが知るのを可能にする。
図7は、本発明の第6の例示の実施形態による、リンク検出方法のフローチャートである。
図1と、VTEP16によって検出メッセージ転送を終了させる例と関連して、本実施形態を示し記載する。図7に示すように、以下のステップが含まれる。
ステップ701は、受信されたネットワークメッセージが検出メッセージか否かを決定する。ネットワークメッセージが検出メッセージである場合、ステップ702が行われる。ネットワークメッセージが通常のネットワークメッセージである場合、ステップ701が再度行われる。
ステップ701の詳細な記載は、ステップ401の記載を参照できる。検出メッセージから検出メッセージの外側メッセージにカプセル化された第1の宛先IPアドレスの解析の仕方は、ここでは繰り返し記載しない。
ステップ702は、宛先VTEPアドレスがローカルネットワークデバイスのデバイスIPアドレスと同じか否かを決定する。宛先VTEPアドレスがローカルネットワークデバイスのデバイスIPアドレスと同じである場合、ステップ703が行われる。宛先VTEPアドレスが、ローカルネットワークデバイスのデバイスIPアドレスと異なる場合、図6の実施形態の方法は、検出メッセージの転送を参照できるので、ここでは繰り返して記載しない。
宛先VTEPアドレスが、ローカルネットワークデバイスのデバイスIPアドレスと同じ場合、ステップ703は、検出メッセージの入力ポートインデックスと、ローカルネットワークデバイスの現在のタイムスタンプとを決定する。
ステップ704は、入力ポートインデックス及び現在のタイムスタンプをリンク状態情報に追加し、そのリンク状態情報をコントローラに報告する。
ステップ705は、検出メッセージを廃棄する。
本実施形態においては、検出メッセージを受信後、終了点のネットワークデバイスは、検出メッセージを廃棄し、それによって、検出リンク上でトラバースされた全ての経路のリンク検出を実施して、経路をトラバースできないという既存技術の欠陥を解決する。
図8は、本発明の第7の例示の実施形態による、様々なシステム間の信号伝達のフローチャートである。コントローラ10がVM11とVM12の間のリンクの状態をどのように検出するかの例が、説明及び記載のために使用される。図8に示すように、以下のステップが含まれる。
ステップ801:コントローラ10は、リンク検出の実行を必要とするVXLANトンネルのVTEP13に検出メッセージを送信する。一方向のリンク検出のみが必要な場合、この方向の開始点のVTEP13にのみ、検出メッセージを送信できる。両方向のリンク検出が必要な場合、検出メッセージは、トンネルの両端のVTEPに送信される。
ステップ802:検出メッセージ受信後、VTEP13は、検出メッセージの宛先IPに基づいて、転送テーブルを検索し、転送テーブルの宛先VNI及びVTEPアドレス(本出願書のVTEP16のIPアドレス)等の情報に基づいて、検出メッセージのVXLANカプセル化を行い、VXLANヘッダのPDフラグを1に設定する。
ステップ803:VTEP13は、宛先VTEPアドレスに基づいて、次のジャンプ先(複数可)を見つける。次のジャンプ先が1つのみの場合、MACヘッダのカプセル化後、メッセージは、次のジャンプ先に直接送信される。複数の等価の次のジャンプ先が存在する場合、VXLANカプセル化が行われた検出メッセージは、次のジャンプ先の数に従って複製される。メッセージのMACヘッダは、各次のジャンプ先のMACアドレスに基づいてカプセル化され、カプセル化された検出メッセージは、各対応する次のジャンプ先に送信される。カプセル化されたVXLANメッセージのVXLANヘッダのフィールド(複数可)のコンテンツの詳細は、メッセージフォーマットで見つけることができる。これについては、以下に記載する。
ステップ804:VTEPの次のジャンプ先であるL3デバイス14は、カプセル化されたVXLAN検出メッセージを受信し、ネットワークメッセージのPDフラグに基づいて、関連付けられたネットワークメッセージが検出メッセージであると決定した後、リンク状態情報をコントローラ10に報告する。リンク状態情報は、タイムスタンプ、メッセージ入力ポート等のフィールドを含む。
ステップ805:L3デバイス14は、メッセージの宛先VTEPアドレスに基づいて、次のジャンプ先(複数可)を見つける。次のジャンプ先が1つのみの場合、メッセージは、MACヘッダのカプセル化後、次のジャンプ先に直接送信される。複数の等価の次のジャンプ先が存在する場合、VXLANカプセル化が行われた検出メッセージは、次のジャンプ先の数に従って複製される。メッセージのMACヘッダは、各次のジャンプ先のMACアドレスに基づいてカプセル化され、検出メッセージは、現在のL3デバイスに対応する次のジャンプ先であるL3デバイス151に送信される。L3デバイス151の処理プロセスは、L3デバイス14の処理プロセスと同じなので、ここでは、詳細に繰り返して記載しない。
ステップ806:終点VTEP16は、検出メッセージを受信し、メッセージのPDフラグに基づいて、メッセージが検出メッセージであると決定した後、リンク状態情報を報告する。リンク状態情報は、タイムスタンプ、メッセージ入力ポート等のフィールドを含む。
ステップ807:終点VTEP16は、検出メッセージを廃棄する。
検出メッセージのフォーマットを以下に示す。
0123456789012345
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 外層のMACヘッダ − 14バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のIPヘッダ − 20バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 外層のUDPヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VXLANヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のメッセージ 〜 変数
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0123456789012345
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 外層のMACヘッダ − 14バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のIPヘッダ − 20バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 外層のUDPヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VXLANヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のメッセージ 〜 変数
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
VXLANヘッダのフォーマットを以下に示す。
01234567890123456789012345678901
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|R|R|R|R|I|R|R|R| 予備フィールド |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
VXLANネットワーク識別子(VNI)|R|R|R|R|R|R|R|PD|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
01234567890123456789012345678901
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|R|R|R|R|I|R|R|R| 予備フィールド |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
VXLANネットワーク識別子(VNI)|R|R|R|R|R|R|R|PD|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PDフラグビットは、VXLANネットワーク識別子(VNIと略される)のフィールドの後の予備フィールドで定義される。このPDフラグビットが1の時、これは、関連付けられたメッセージが検出メッセージであることを示す。
検出メッセージの内側メッセージフォーマットを以下に示す。
0123456789012345
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のMACヘッダ − 14バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のIPヘッダ − 20バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 内層のUDPヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 検出メッセージID | 4バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0123456789012345
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のMACヘッダ − 14バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
− 内層のIPヘッダ − 20バイト
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 内層のUDPヘッダ | 8バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 検出メッセージID | 4バイト
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
コントローラ10は、第1の送信元IPアドレス、第1の宛先IPアドレス、及び、検出メッセージIDに基づいて、検出メッセージを識別する。検出リンク上の中間のネットワークデバイスによってコントローラ10に報告されたリンク状態情報は、検出メッセージの第1の送信元IPアドレス及び第1の宛先IPアドレスと、第2の宛先IPアドレスと、検出メッセージのID情報とを含み、それによって、コントローラが、検出リンクを検出メッセージに対応させ、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスを突き止めるのを助ける。
上記実施形態を通して、コントローラは、検出メッセージの構築と、検出リンク上のリンク開始点(例えば、図1に示すVTEP13)と、中間ネットワークノード(例えば、図1に示すL3デバイス14、L3デバイス151、及び、L3デバイス1512)への検出メッセージの送信を担当し、リンク開始点と、中間ネットワークノードは、個々に、それに対応する転送テーブルを調べて、検出メッセージをジャンプを繰り返して、リンクの終了点(例えば、図1に示すVTEP16)に転送する。さらに、各ノードは、各リンク状態情報をコントローラに報告し、コントローラは、検出リンクの状態を記録する。検出リンク上のリンク開始点または任意の中間ネットワークノードの転送テーブルが、複数の等価経路を有する場合、検出メッセージは、その次のジャンプ先の数に従って複製され、対応する経路に転送される。よって、本出願は、検出リンク上の全ての経路をトラバースできる。
上記リンク検出方法に関して、本出願は、図9に示す本出願の例示の実施形態による、コントローラの概略構造図も提案する。図9を参照すると、コントローラは、ハードウェア層に、第1のプロセッサと、内部バスと、第1のネットワークインタフェースと、メモリと、第1のプロセッサによって実行可能な命令を記憶する第1の記憶装置とを含む。他のサービスによって必要とされるハードウェア構成要素も含まれてよいことは明らかである。
第1のネットワークインタフェースは、検出リンク上の開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む検出メッセージを順次送信するために、また、検出メッセージに応答して検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含むリンク状態情報を受信するために使用される。
第1のプロセッサは、リンク状態情報に含まれた第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行い、検出リンク上のネットワークデバイスのネットワーク位置をデバイスIPアドレスに基づいて突き止めるために使用される。
上記リンク検出方法に関して、本出願は、図10に示す本出願の例示の実施形態による、ネットワークデバイスの概略構造図も提案する。図10を参照すると、ネットワークデバイスは、ハードウェア層に、第2のプロセッサと、内部バスと、第2のネットワークインタフェースと、メモリと、第2のプロセッサによって実行可能な命令を記憶する第2の記憶装置とを含む。他のサービスによって必要なハードウェア構成要素も含まれてよいことは明らかである。
第2のプロセッサは、受信されたネットワークメッセージが検出メッセージであるか否かを決定することと、ネットワークメッセージが検出メッセージである場合、検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、ネットワークデバイスのデバイスIPアドレスと、検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、そのリンク状態情報を第2のインタフェースを通してコントローラに報告することと、第1の宛先IPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索し、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製することと、少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、検出メッセージのMACヘッダをカプセル化し、検出メッセージを第2のインタフェースを通して少なくとも1つの次のジャンプ先に送信するために使用される。
図11は、本発明の第1の例示の実施形態によるリンク検出装置の概略構造図である。図11に示すように、リンク検出装置は、第1の送信モジュール111、第1の受信モジュール112、及び、整合モジュール113を含んでよい。
第1の送信モジュール111は、検出リンク上の開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出メッセージを順次送信するために使用され、検出メッセージは、検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、検出メッセージの第1の識別子とを含む。
第1の受信モジュール112は、第1の送信モジュールによって送信された検出メッセージに応答して検出リンク上のネットワークデバイスによって報告されたリンク状態情報を受信するように使用され、リンク状態情報は、第1の送信元IPアドレス、第1の宛先IPアドレス、ネットワークデバイスのデバイスIPアドレス、及び、第1の識別子を含む。
整合モジュール113は、第1の受信モジュールによって受信されたリンク状態情報に含まれる第1の送信元IPアドレス、第1の宛先IPアドレス、及び、第1の識別子に基づいて、検出メッセージと検出リンクとの整合を行うために、また、デバイスIPアドレスに基づいて、検出リンク上のネットワークデバイスが配置されたネットワーク位置を突き止めるために使用される。
図12は、本発明の第2の例示の実施形態による、リンク検出装置の概略構造図である。図12に示すように、ある実施形態においては、図11に示す実施形態に基づいて、装置は、第1の受信モジュール112によって受信された検出リンク上の任意の1つのネットワークデバイスのリンク状態情報のタイムスタンプを決定するために使用される第1の決定モジュール114と、任意の1つのネットワークデバイスの次のジャンプ先のネットワークデバイスによって報告されたリンク状態情報が、タイムスタンプの後、規定時間内に受信されたか否かを決定するために使用される第2の決定モジュール115と、次のジャンプ先のネットワークデバイスのリンク状態情報が規定時間内に受信されていないと第2の決定モジュール115が決定する場合、次のジャンプ先のネットワークデバイスのデバイスIPアドレスを決定するために使用される第3の決定モジュール116と、第3の決定モジュール116によって決定された次のジャンプ先のネットワークデバイスのデバイスIPアドレスに基づいて、検出リンクに障害リンクが存在することを示す警告情報を生成するために使用される警告情報生成モジュール117とをさらに含んでよい。
ある実施形態においては、装置は、第3の決定モジュール116によって決定された次のジャンプ先のネットワークデバイスのデバイスIPアドレスに基づいて、現在のネットワークデバイスの転送テーブルをリフレッシュして、リフレッシュされた転送テーブルに基づいて、現在のネットワークデバイスが、ネットワークメッセージの障害リンクへの送信を停止するのを可能にするために使用されるリフレッシュモジュール118をさらに含んでよい。
ある実施形態においては、装置は、第2の決定モジュール115によって決定されたリンク状態情報を、コントローラによって維持されるトポロジ構造マップの対応するノードに記録するために使用される記録モジュール119をさらに含んでよい。
図13は、本発明の第3の例示の実施形態による、リンク検出装置の概略構造図である。図13に示すように、リンク検出装置は、第4の決定モジュール131、リンク情報生成モジュール132、検索モジュール133、及び、第1のカプセル化モジュール134を含んでよい。
第4の決定モジュール131は、受信されたネットワークメッセージが検出メッセージであるか否かを決定するために使用される。
リンク情報生成モジュール132は、ネットワークメッセージが検出メッセージであると第4の決定モジュール131が決定する場合、検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、ネットワークデバイスのデバイスIPアドレスと、検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、そのリンク状態情報をコントローラに報告するために使用される。
検索モジュール133は、第4の決定モジュール131によって決定された検出メッセージから宛先VTEPアドレスを解析し、宛先VTEPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索し、また、ネットワークデバイスの少なくとも1つの次のジャンプ先が転送テーブルに存在する場合、少なくとも1つの次のジャンプ先の数に従って、検出メッセージを複製するために使用される。
第1のカプセル化モジュール134は、検索モジュール133によって見つけられた少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、検出メッセージのMACヘッダをカプセル化し、且つ、検出メッセージを少なくとも1つの次のジャンプ先に送信するために使用される。
図14は、本発明の第4の例示の実施形態による、リンク検出装置の概略構造図である。図14に示すように、ある実施形態においては、図13に示す実施形態に基づいて、装置は、検索モジュール133によって見つけられた転送テーブルの宛先VXLANネットワーク識別子及び宛先VTEPアドレスに基づいて、検出メッセージのVXLANカプセル化を行うために使用される第2のカプセル化モジュール135と、VXLANヘッダの検出メッセージにラベルを付けるために使用されるラベル付けモジュール136とをさらに含んでよい。検索モジュール133は、検出メッセージの第1の宛先IPアドレスに基づいて、ネットワークデバイスの転送テーブルを検索するステップを行う。
ある実施形態においては、検出メッセージが、検出リンク上のネットワークデバイスによって転送される場合、装置は、第4の決定モジュール131によって決定される検出メッセージの入力ポートインデックスと、ローカルネットワークデバイスの現在のタイムスタンプとを決定するために使用される第5の決定モジュール137と、第5の決定モジュール137によって決定された入力ポートインデックスと現在のタイムスタンプとをリンク状態情報に追加するために使用される第1の追加モジュール138とをさらに含んでよい。
ある実施形態においては、装置は、宛先VTEPアドレスがローカルネットワークデバイスのIPアドレスと同じであるか否かを決定するために使用される第6の決定モジュール139と、宛先VTEPアドレスがローカルネットワークデバイスのIPアドレスと同じであると第6の決定モジュール139が決定する場合、検出メッセージの入力ポートインデックスとローカルネットワークデバイスの現在のタイムスタンプとを決定するために使用される第7の決定モジュール140と、第7の決定モジュール140によって決定された入力ポートインデックスと現在のタイムスタンプをリンク状態情報に追加するために使用される第2の追加モジュール141とをさらに含んでよい。
ある実施形態においては、装置は、第4の決定モジュール131によって決定された検出メッセージを廃棄するために使用される廃棄モジュール142をさらに含んでよい。
ある実施形態においては、第4の決定モジュール131は、受信されたネットワークメッセージのVXLANメッセージヘッダのフラグを決定するために使用される第1の決定ユニット1311と、第1の決定ユニット1311によって決定されるVXLANメッセージヘッダのフラグに基づいて、ネットワークメッセージが検出メッセージであるか否かを決定するために使用される第2の決定ユニット1312とを含んでよい。
上記実施形態から分かるように、コントローラは、検出メッセージの構築と、検出リンク上のリンク開始点及び中間ネットワークノードへの検出メッセージの送信を担当し、リンク開始点及び中間ネットワークノードは、個々に、その対応する転送テーブルを調べて、検出メッセージをジャンプを繰り返してリンクの終了点に転送する。さらに、各ノードは、各リンク状態情報をコントローラに報告し、コントローラは、検出リンクの状態を記録する。検出リンク上のリンク開始点または任意の中間ネットワークノードの転送テーブルが、複数の等価経路を有する場合、検出メッセージは、その次のジャンプ先の数に従って複製され、対応する経路に転送される。よって、本出願は、検出リンク上の全ての経路をトラバースできる。
本明細書を検討し、本明細書に開示の発明を実施すると、当業者は、本出願の他の実施態様の解決法を容易に考え付くことができる。本出願は、本出願の修正、使用法、または、適応的な変更のいずれも含むことを意図している。これらの修正、使用法、または、適応的な変更は、本出願の一般的原理に従い、本出願には記載されていない本技術分野の周知の知識または、一般的な技術的手段を含む。明細書及び実施形態は、単に説明的なものとみなされる。本出願の真の範囲及び精神は、添付の請求項によって示される。
「含む(include)」、「含む(contain)」または任意の他の変形等の用語は、非排他的な包含を網羅することを意図し、例えば、一連の要素を含むプロセス、方法、製品、または、デバイスは、これらの要素を含むだけでなく、明示的に列挙されていない他の要素も含み、プロセス、方法、製品、または、デバイスに内在する要素も含むことも留意されたい。さらなる制限が無ければ、「を含む(include a ・・・)」という句によって規定される要素は、プロセス、方法、製品、または、デバイスが、それと同じ追加の要素(複数可)をさらに含むことを妨げない。
上記記載は、本出願の好ましい実施形態にすぎず、本出願に対する制限とは解釈されない。本出願の精神及び原理内で行われる全ての修正、同等の置き換え及び改良等は、本出願の保護の範囲に含まれる。
Claims (22)
- リンク検出方法であって、コントローラに適用され、
検出リンク上の開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出メッセージであって、前記検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、前記検出メッセージの第1の識別子とを含む前記検出メッセージを順次送信することと、
前記検出メッセージに応答して前記検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、前記第1の送信元IPアドレス、前記第1の宛先IPアドレス、前記ネットワークデバイスのデバイスIPアドレス、及び、前記第1の識別子を含む前記リンク状態情報を受信することと、
前記リンク状態情報に含まれる前記第1の送信元IPアドレス、前記第1の宛先IPアドレス、及び、前記第1の識別子に基づいて、前記検出メッセージと前記検出リンクとの整合を行い、前記デバイスIPアドレスに基づいて、前記検出リンク上の前記ネットワークデバイスが配置されたネットワーク位置を突き止めることと、
を含む、前記方法。 - 前記方法は
前記検出リンク上の任意の1つのネットワークデバイスのリンク状態情報のタイムスタンプを決定することと、
前記検出リンク上の前記任意の1つのネットワークデバイスの次のジャンプ先のネットワークデバイスによって報告されるリンク状態情報が、前記タイムスタンプ後の規定時間内に受信されたか否かを決定することと、
前記次のジャンプ先のネットワークデバイスのリンク状態情報が前記規定時間内に受信されない場合、前記次のジャンプ先のネットワークデバイスのデバイスIPアドレスを決定することと、
前記次のジャンプ先のネットワークデバイスの前記デバイスIPアドレスに基づいて、前記検出リンクに障害リンクが存在することを示す警告情報を生成することと、
をさらに含む、請求項1に記載の方法。 - 前記方法は、前記次のジャンプ先のネットワークデバイスの前記デバイスIPアドレスに基づいて、現在のネットワークデバイスの転送テーブルをリフレッシュすることをさらに含み、その結果、前記現在のネットワークデバイスは、前記リフレッシュされた転送テーブルに基づいて、ネットワークメッセージの前記障害リンクへの送信を停止する、請求項2に記載の方法。
- 前記方法は、前記コントローラによって維持されるトポロジ構造マップの対応するノードに前記リンク状態情報を記録することをさらに含む、請求項1に記載の方法。
- リンク検出方法であって、ネットワークデバイスに適用され、
受信されたネットワークメッセージが検出メッセージであるか否かを決定することと、
前記ネットワークメッセージが検出メッセージである場合、前記検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、前記ネットワークデバイスのデバイスIPアドレスと、前記検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、前記リンク状態情報をコントローラに報告することと、
前記検出メッセージから宛先VTEPアドレスを解析し、前記宛先VTEPアドレスに基づいて、前記ネットワークデバイスの転送テーブルを検索し、前記ネットワークデバイスの少なくとも1つの次のジャンプ先が前記転送テーブルに存在する場合、前記少なくとも1つの次のジャンプ先の数に従って、前記検出メッセージを複製することと、
前記少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、前記検出メッセージのMACヘッダをカプセル化し、前記検出メッセージを前記少なくとも1つの次のジャンプ先に送信することと、
を含む、前記方法。 - 前記検出メッセージが、前記コントローラから直接送信される場合、前記方法は、
前記転送テーブルの宛先VXLANネットワーク識別子と前記宛先VTEPアドレスとに基づいて、前記検出メッセージのVXLANカプセル化を行うことと、
VXLANヘッダの前記検出メッセージにラベルを付け、前記検出メッセージの前記宛先VTEPアドレスに基づいて、前記ネットワークデバイスの前記転送テーブルの前記検索を行うことと
をさらに含む、請求項5に記載の方法。 - 前記検出メッセージが、前記検出リンク上のネットワークデバイスによって転送される場合、前記方法は、
前記検出メッセージの入力ポートインデックスと、ローカルネットワークデバイスの現在のタイムスタンプとを決定することと、
前記入力ポートインデックスと前記現在のタイムスタンプとを前記リンク状態情報に追加することと、
をさらに含む、請求項5に記載の方法。 - 前記方法は、
前記宛先VTEPアドレスがローカルネットワークデバイスのデバイスIPアドレスと同じであるか否かを決定することと、
前記宛先VTEPアドレスが、ローカルネットワークデバイスの前記デバイスIPアドレスと同じである場合、前記検出メッセージの入力ポートインデックスと、ローカルネットワークデバイスの現在のタイムスタンプを決定することと、
前記入力ポートインデックスと前記現在のタイムスタンプとを前記リンク状態情報に追加することと、
をさらに含む、請求項5に記載の方法。 - 前記方法は、前記検出メッセージを廃棄することをさらに含む、請求項8に記載の方法。
- 前記受信されたネットワークメッセージが前記検出メッセージであるか否かを決定することは、
前記受信されたネットワークメッセージのVXLANヘッダのフラグを決定することと、
前記VXLANヘッダの前記フラグに基づいて、前記ネットワークメッセージが前記検出メッセージであるか否かを決定することと、
を含む、請求項5に記載の方法。 - リンク検出装置であって、コントローラに適用され、
検出リンク上を開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出メッセージであって、前記検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、前記検出メッセージの第1の識別子とを含む前記検出メッセージを順次送信するために使用される第1の送信モジュールと、
第1の送信モジュールによって送信された前記検出メッセージに応答して、前記検出リンク上のネットワークデバイスによって報告されるリンク状態情報であって、前記第1の送信元IPアドレス、前記第1の宛先IPアドレス、前記ネットワークデバイスのデバイスIPアドレス、及び、前記第1の識別子を含む前記リンク状態情報を受信するために使用される第1の受信モジュールと、
前記第1の受信モジュールによって受信された前記リンク状態情報に含まれる前記第1の送信元IPアドレス、前記第1の宛先IPアドレス、及び、前記第1の識別子に基づいて、前記検出メッセージと前記検出リンクとの整合を行い、前記デバイスIPアドレスに基づいて、前記検出リンク上の前記ネットワークデバイスが配置されたネットワーク位置を突き止めるために使用される整合モジュールと、
を含む、前記リンク検出装置。 - 前記装置は、
前記第1の受信モジュールによって受信された前記検出リンク上の任意の1つのネットワークデバイスのリンク状態情報のタイムスタンプを決定するために使用される第1の決定モジュールと、
前記任意の1つのネットワークデバイスの次のジャンプ先のネットワークデバイスによって報告されるリンク状態情報は、前記タイムスタンプ後の規定時間内に受信されたか否かを決定するために使用される第2の決定モジュールと、
前記次のジャンプ先のネットワークデバイスのリンク状態情報が前記規定時間内に受信されていないと、前記第2の決定モジュールが決定する場合、前記次のジャンプ先のネットワークデバイスのデバイスIPアドレスを決定するために使用される第3の決定モジュールと、
前記第3の決定モジュールによって決定された前記次のジャンプ先のネットワークデバイスの前記デバイスIPアドレスに基づいて、前記検出リンクに障害リンクが存在することを示す警告情報を生成するために使用される警告情報生成モジュールと、
をさらに含む、請求項11に記載の装置。 - 前記装置は、前記第3の決定モジュールによって決定された前記次のジャンプ先のネットワークデバイスの前記デバイスIPアドレスに基づいて、現在のネットワークデバイスの転送テーブルをリフレッシュして、前記現在のネットワークデバイスが、前記リフレッシュされた転送テーブルに基づいて、ネットワークメッセージの前記障害リンクへの送信を停止するのを可能にするために使用されるリフレッシュモジュールをさらに含む、請求項12に記載の装置。
- 前記装置は、前記第3の決定モジュールによって決定された前記リンク状態情報を、コントローラによって維持されるトポロジ構造マップの対応するノードに記録するために使用される記録モジュールをさらに含む、請求項11に記載の装置。
- リンク検出装置であって、ネットワークデバイスに適用され、
受信されたネットワークメッセージが検出メッセージであるか否かを決定するために使用される第4の決定モジュールと、
前記ネットワークメッセージが検出メッセージであると前記第4の決定モジュールが決定する場合、前記検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、前記ネットワークデバイスのデバイスIPアドレスと、前記検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、前記リンク状態情報をコントローラに報告するために使用されるリンク情報生成モジュールと、
前記第4の決定モジュールによって決定された前記検出メッセージから宛先VTEPアドレスを解析し、前記宛先VTEPアドレスに基づいて、前記ネットワークデバイスの転送テーブルを検索し、前記ネットワークデバイスの少なくとも1つの次のジャンプ先が前記転送テーブルに存在する場合、前記少なくとも1つの次のジャンプ先の数に従って、前記検出メッセージを複製するために使用される検索モジュールと、
前記検索モジュールによって見つけられた前記少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、前記検出メッセージのMACヘッダをカプセル化し、前記検出メッセージを前記少なくとも1つの次のジャンプ先に送信するために使用される第1のカプセル化モジュールと、
を含む、前記装置。 - 前記検出メッセージが、前記コントローラから直接送信される場合、前記装置は、
前記転送テーブルの宛先VXLANネットワーク識別子及び前記宛先VTEPアドレスに基づいて、前記検出メッセージのVXLANカプセル化を行うために使用される第2のカプセル化モジュールと、
VXLANヘッダの前記検出メッセージにラベルを付けるために使用されるラベル付けモジュールと、をさらに含み、前記検索モジュールは、前記検出メッセージの前記第1の宛先IPアドレスに基づいて、前記ネットワークデバイスの前記転送テーブルの前記検索を行う、請求項15に記載の装置。 - 前記検出メッセージが、前記検出リンク上のネットワークデバイスによって転送された場合、前記装置は、
前記検出メッセージの入力ポートインデックスと、ローカルネットワークデバイスの現在のタイムスタンプとを決定するために使用される第5の決定モジュールと、
前記入力ポートインデックス及び前記現在のタイムスタンプを前記リンク状態情報に追加するために使用される第1の追加モジュールと、
をさらに含む、請求項15に記載の装置。 - 前記装置は、
前記宛先VTEPアドレスがローカルネットワークデバイスのIPアドレスと同じであるか否かを決定するために使用される第6の決定モジュールと、
前記宛先VTEPアドレスが前記ローカルネットワークデバイスの前記IPアドレスと同じであると前記第6の決定モジュールが決定する場合、前記検出メッセージの入力ポートインデックスと、前記ローカルネットワークデバイスの現在のタイムスタンプとを決定するために使用される第7の決定モジュールと、
前記第7の決定モジュールによって決定された前記入力ポートインデックスと前記現在のタイムスタンプとを前記リンク状態情報に追加するために使用される第2の追加モジュールと、
をさらに含む、請求項15に記載の装置。 - 前記装置は、前記第4の決定モジュールによって決定された前記検出メッセージを廃棄するように使用される廃棄モジュールをさらに含む、請求項18に記載の装置。
- 前記第4の決定モジュールは、
前記受信されたネットワークメッセージのVXLANメッセージヘッダのフラグを決定するために使用される第1の決定ユニットと、
前記第1の決定ユニットによって決定された前記VXLANメッセージヘッダの前記フラグに基づいて、前記ネットワークメッセージが前記検出メッセージであるか否かを決定するために使用される第2の決定ユニットと、
を含む、請求項15に記載の装置。 - コントローラであって、
第1のプロセッサによって実行可能な命令の第1の記憶装置を記憶するために使用される前記第1のプロセッサと、第1のネットワークインタフェースとを含み、
前記第1のネットワークインタフェースは、検出リンク上で開始ネットワークデバイスから終了ネットワークデバイスまで各ネットワークデバイスに、検出メッセージであって、前記検出リンクの第1の送信元IPアドレス及び第1の宛先IPアドレスと、前記検出メッセージの第1の識別子とを含む前記検出メッセージを順次送信するために、また、前記検出メッセージに応答して前記検出リンク上のネットワークデバイスによって報告されたリンク状態情報であって、前記第1の送信元IPアドレス、前記第1の宛先IPアドレス、前記ネットワークデバイスのデバイスIPアドレス、及び、前記第1の識別子を含む前記リンク状態情報を受信するために使用され、
前記第1のプロセッサは、前記リンク状態情報に含まれた前記第1の送信元IPアドレス、前記第1の宛先IPアドレス、及び、前記第1の識別子に基づいて、前記検出メッセージと前記検出リンクとの整合を行い、前記デバイスIPアドレスに基づいて前記検出リンク上の前記ネットワークデバイスが配置されたネットワーク位置を突き止めるために使用される、
前記コントローラ。 - ネットワークデバイスであって、
第2のプロセッサによって実行可能な命令の記憶装置を記憶するために使用される前記第2のプロセッサと、第2のネットワークインタフェースとを含み、前記第2のプロセッサは、受信されたネットワークメッセージが検出メッセージであるか否かを決定することと、前記ネットワークメッセージが検出メッセージである場合、前記検出メッセージに含まれた第1の送信元IPアドレス及び第1の宛先IPアドレスと、前記ネットワークデバイスのデバイスIPアドレスと、前記検出メッセージの第1の識別子とに基づいて、リンク状態情報を生成し、前記リンク状態情報を前記第2のインタフェースを通してコントローラに報告することと、前記第1の宛先IPアドレスに基づいて、前記ネットワークデバイスの転送テーブルを検索し、前記ネットワークデバイスの少なくとも1つの次のジャンプ先が前記転送テーブルに存在する場合、前記少なくとも1つの次のジャンプ先の数に従って、前記検出メッセージを複製することと、前記少なくとも1つの次のジャンプ先の各次のジャンプ先のMACアドレスに基づいて、前記検出メッセージのMACヘッダをカプセル化し、前記検出メッセージを前記第2のインタフェースを通して前記少なくとも1つの次のジャンプ先に送信するために使用される、前記ネットワークデバイス。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511022938.4 | 2015-12-30 | ||
CN201511022938.4A CN106936655A (zh) | 2015-12-30 | 2015-12-30 | 链路检测方法、装置及网络设备、控制器 |
PCT/CN2016/110257 WO2017114181A1 (zh) | 2015-12-30 | 2016-12-16 | 链路检测方法、装置及网络设备、控制器 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019500812A true JP2019500812A (ja) | 2019-01-10 |
Family
ID=59224491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018534545A Pending JP2019500812A (ja) | 2015-12-30 | 2016-12-16 | リンク検出の方法、装置、ネットワークデバイス、及び、コントローラ |
Country Status (5)
Country | Link |
---|---|
US (1) | US10530633B2 (ja) |
EP (1) | EP3399699B1 (ja) |
JP (1) | JP2019500812A (ja) |
CN (1) | CN106936655A (ja) |
WO (1) | WO2017114181A1 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10628186B2 (en) * | 2014-09-08 | 2020-04-21 | Wirepath Home Systems, Llc | Method for electronic device virtualization and management |
CN108111432B (zh) * | 2017-12-27 | 2021-07-02 | 新华三技术有限公司 | 报文转发方法及装置 |
TWI650978B (zh) * | 2018-03-21 | 2019-02-11 | 和碩聯合科技股份有限公司 | 封包辨識方法及封包辨識裝置 |
CN116208524B (zh) * | 2018-06-06 | 2024-09-17 | 华为技术有限公司 | 一种数据报文的检测方法、设备及系统 |
CN110858810B (zh) * | 2018-08-24 | 2021-07-30 | 中国移动通信集团四川有限公司 | 网络链路状态监测方法、设备、系统及介质 |
US11252192B1 (en) * | 2018-09-28 | 2022-02-15 | Palo Alto Networks, Inc. | Dynamic security scaling |
US10880208B1 (en) * | 2019-02-11 | 2020-12-29 | Google Llc | Offloads for multicast virtual network packet processing in a network interface card |
CN109981409B (zh) * | 2019-03-26 | 2021-05-07 | 新华三技术有限公司 | 报文转发方法、装置及转发设备 |
WO2021051418A1 (en) * | 2019-09-21 | 2021-03-25 | Huawei Technologies Co., Ltd. | Methods and network nodes for reliability measurement |
CN114205263B (zh) * | 2021-12-08 | 2023-10-13 | 中国信息通信研究院 | 用于Ether CAT网络的通信方法、系统和存储介质 |
CN114465931B (zh) * | 2021-12-30 | 2023-12-29 | 深信服科技股份有限公司 | 网络探测方法、装置、电子设备及存储介质 |
CN114095420B (zh) * | 2022-01-20 | 2022-05-31 | 苏州浪潮智能科技有限公司 | 链路聚合方法、装置、电子设备及存储介质 |
CN116016265B (zh) * | 2022-12-12 | 2024-03-29 | 广州文远知行科技有限公司 | 消息全链路监控方法、装置、系统、设备和存储介质 |
CN115866106B (zh) * | 2023-02-21 | 2023-06-02 | 麒麟软件有限公司 | 多网卡绑定的冗余网络通信系统数据处理方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7009980B1 (en) * | 2000-03-13 | 2006-03-07 | Lucent Technologies Inc. | Apparatus and method for automatic port identity discovery in hierarchical heterogenous systems |
US20030167348A1 (en) * | 2001-07-02 | 2003-09-04 | Globespanvirata, Inc. | Communications system using rings architecture |
WO2010103432A2 (en) | 2009-03-11 | 2010-09-16 | International Business Machines Corporation | Method and spacer for assembling flexible optical waveguide ribbons, and assembled stack of such ribbons |
CN101616094B (zh) * | 2009-08-10 | 2012-04-18 | 杭州华三通信技术有限公司 | 报文转发路径的获取方法和设备 |
US8804719B2 (en) * | 2010-06-29 | 2014-08-12 | Cisco Technology, Inc. | In-band multicast trace in IP and MPLS networks |
US8811409B2 (en) * | 2012-06-04 | 2014-08-19 | Telefonaktiebolaget L M Ericsson (Publ) | Routing VLAN tagged packets to far end addresses of virtual forwarding instances using separate administrations |
US9509603B2 (en) * | 2014-03-31 | 2016-11-29 | Arista Networks, Inc. | System and method for route health injection using virtual tunnel endpoints |
CN104270298B (zh) * | 2014-09-30 | 2018-10-09 | 新华三技术有限公司 | 一种vxlan网络中的报文转发方法及装置 |
CN104660469B (zh) * | 2015-02-15 | 2018-11-16 | 华为技术有限公司 | 一种二层网络的连通性检测方法及相关设备 |
CN106612211B (zh) * | 2015-10-23 | 2020-02-21 | 华为技术有限公司 | VxLAN中的路径探测方法,控制器和网络设备 |
-
2015
- 2015-12-30 CN CN201511022938.4A patent/CN106936655A/zh active Pending
-
2016
- 2016-12-16 WO PCT/CN2016/110257 patent/WO2017114181A1/zh active Application Filing
- 2016-12-16 JP JP2018534545A patent/JP2019500812A/ja active Pending
- 2016-12-16 EP EP16880971.3A patent/EP3399699B1/en active Active
-
2018
- 2018-06-28 US US16/022,576 patent/US10530633B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP3399699A1 (en) | 2018-11-07 |
EP3399699B1 (en) | 2023-06-28 |
CN106936655A (zh) | 2017-07-07 |
EP3399699A4 (en) | 2019-06-19 |
US10530633B2 (en) | 2020-01-07 |
US20180309617A1 (en) | 2018-10-25 |
WO2017114181A1 (zh) | 2017-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2019500812A (ja) | リンク検出の方法、装置、ネットワークデバイス、及び、コントローラ | |
US10659253B2 (en) | Path detection method and apparatus | |
WO2016008322A1 (zh) | 一种路径连通性检测方法及装置 | |
US9001644B2 (en) | Ethernet virtual private network system for providing fast protection for access rings | |
US9647921B2 (en) | Statistics and failure detection in a network on a chip (NoC) network | |
US10063467B2 (en) | Virtual extensible local area network performance routing | |
JP2006245849A (ja) | 通信装置 | |
JP2008263393A (ja) | ネットワークシステム及びノード装置 | |
US10862735B2 (en) | Method and apparatus for implementing operation, administration, and maintenance function | |
EP3207671A1 (en) | Traceroute in virtual extenisble local area networks | |
US20140293798A1 (en) | Mpls-tp network and link trace method thereof | |
CN106130819B (zh) | Vtep异常的检测方法及装置 | |
US20090282291A1 (en) | Internal maintenance association end point (mep) for sharing state information | |
CN104852809B (zh) | 信号劣化故障的处理方法及系统 | |
CN112291116A (zh) | 链路故障检测方法、装置及网络设备 | |
WO2011124178A2 (zh) | 故障检测方法、路由节点及系统 | |
CN105897580B (zh) | 一种协议无关转发网络快速故障检测与流量保护切换方法 | |
CN102308524B (zh) | 动态隧道故障诊断方法及设备和系统 | |
CN107682261A (zh) | 流量转发方法及装置 | |
CN117176546A (zh) | 故障处理方法、相关设备和系统 | |
TWI728044B (zh) | 鏈路檢測方法、裝置及網路設備、控制器 | |
WO2015120581A1 (en) | Traffic loop detection in a communication network | |
CN112311905B (zh) | 一种实现动态arp学习的方法及设备 | |
WO2020001576A9 (zh) | 一种网络中获取设备转发信息库的方法、设备和系统 | |
CN111327535A (zh) | 一种报文转发方法及装置、转发设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180703 |