特許第6977690号(P6977690)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電信電話株式会社の特許一覧

<>
  • 特許6977690-転送装置および転送方法 図000002
  • 特許6977690-転送装置および転送方法 図000003
  • 特許6977690-転送装置および転送方法 図000004
  • 特許6977690-転送装置および転送方法 図000005
  • 特許6977690-転送装置および転送方法 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6977690
(24)【登録日】2021年11月15日
(45)【発行日】2021年12月8日
(54)【発明の名称】転送装置および転送方法
(51)【国際特許分類】
   H04L 12/723 20130101AFI20211125BHJP
   H04L 12/717 20130101ALI20211125BHJP
【FI】
   H04L12/723
   H04L12/717
【請求項の数】6
【全頁数】13
(21)【出願番号】特願2018-172065(P2018-172065)
(22)【出願日】2018年9月14日
(65)【公開番号】特開2020-47968(P2020-47968A)
(43)【公開日】2020年3月26日
【審査請求日】2021年1月12日
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】110001807
【氏名又は名称】特許業務法人磯野国際特許商標事務所
(72)【発明者】
【氏名】豊鷲見 和都
(72)【発明者】
【氏名】高橋 賢
(72)【発明者】
【氏名】熊川 成正
【審査官】 鈴木 肇
(56)【参考文献】
【文献】 特開2018−037983(JP,A)
【文献】 国際公開第2010/150575(WO,A1)
【文献】 特開2015−159486(JP,A)
【文献】 特開2016−116024(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/00−12/955
(57)【特許請求の範囲】
【請求項1】
セグメントルーティングによって送信元ノードから宛先ノードへのパケットの転送を可能とするために必要となる情報を制御する転送装置であって、
前記送信元ノードまたは前記宛先ノードとして機能するノードごとに、当該ノードのSIDリスト取得方法を示すノード管理情報を記憶する記憶部と、
前記宛先ノードから受信パケットを受信するパケット受信部と、
前記ノード管理情報に基づいて、前記宛先ノードの宛先側SIDリスト取得方法と、前記送信元ノードの送信元側SIDリスト取得方法とが一致しない場合には、前記送信元側SIDリスト取得方法の実行に必要な情報を前記受信パケットに設定する情報設定部と、
前記設定がなされた前記受信パケットを前記送信元ノードに送信するパケット送信部と、を備える、
ことを特徴とする転送装置。
【請求項2】
前記記憶部は、前記送信元側SIDリスト取得方法ごとに、前記送信元ノードが前記送信元側SIDリスト取得方法を実行するために保有している情報と、前記宛先ノードから受信する前記受信パケットに設定される識別子と、前記送信元側SIDリスト取得方法の実行に必要な情報と、を関連付けた変換条件情報を記憶しており、
前記情報設定部は、前記変換条件情報に基づいて、前記送信元側SIDリスト取得方法の実行に必要な情報を前記受信パケットに設定する、
ことを特徴とする請求項1に記載の転送装置。
【請求項3】
前記送信元側SIDリスト取得方法の実行に必要な情報がSIDリストを含む場合には、当該SIDリストとして、外部システムが生成したSIDリストを含む、
ことを特徴とする請求項1または請求項2に記載の転送装置。
【請求項4】
セグメントルーティングによって送信元ノードから宛先ノードへのパケットの転送を制御する転送装置における転送方法であって、
前記転送装置の記憶部は、前記送信元ノードまたは前記宛先ノードとして機能するノードごとに、当該ノードのSIDリスト取得方法を示すノード管理情報を記憶しており、
前記転送装置は、
前記宛先ノードから受信パケットを受信する受信ステップと、
前記ノード管理情報に基づいて、前記宛先ノードの宛先側SIDリスト取得方法と、前記送信元ノードの送信元側SIDリスト取得方法とが一致しない場合には、前記送信元側SIDリスト取得方法の実行に必要な情報を前記受信パケットに設定する設定ステップと、
前記設定がなされた前記受信パケットを前記送信元ノードに送信する送信ステップと、を実行する、
ことを特徴とする転送方法。
【請求項5】
前記記憶部は、前記送信元側SIDリスト取得方法ごとに、前記送信元ノードが前記送信元側SIDリスト取得方法を実行するために保有している情報と、前記宛先ノードから受信する前記受信パケットに設定される識別子と、前記送信元側SIDリスト取得方法の実行に必要な情報と、を関連付けた変換条件情報を記憶しており、
前記転送装置は、
前記設定ステップにおいて、前記変換条件情報に基づいて、前記送信元側SIDリスト取得方法の実行に必要な情報を前記受信パケットに設定する、
ことを特徴とする請求項4に記載の転送方法。
【請求項6】
前記送信元側SIDリスト取得方法の実行に必要な情報がSIDリストを含む場合には、当該SIDリストとして、外部システムが生成したSIDリストを含む、
ことを特徴とする請求項4または請求項5に記載の転送方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、転送装置および転送方法に関する。
【背景技術】
【0002】
ネットワークのパスを明示的に指定するルーティング技術として、転送ラベルを用いたものがある。代表的なルーティング技術には、非特許文献1に示すセグメントルーティング(SR:Segment Routing)がある。SRでは、送信元ノードが、転送ラベルとして、SID(セグメントID)リストと呼ばれる転送ラベルリストに従い、転送を実行する。
【0003】
従来から、送信元ノードが用いるSIDリストを、送信元ノードが取得する方法は数多く存在する。例えば、MP−BGP(Multi Protocol - Border Gateway Protocol)によって、宛先ノードが、SIDリストの生成に必要な識別子を送信元ノードに転送し、送信元ノードが当該識別子を基にSIDリストを生成する方法(非特許文献2参照)、PCEP(Path Computation Element Protocol)を用いたPCE(Path Computation Element)(非特許文献3参照)や、BGPを用いたBGPコントローラ(非特許文献4参照)等の外部システムが生成したSIDリストを、送信元ノードが取得する方法、などがある。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】“Segment Routing Architecture, IETF RFC8402”、[online]、[平成30年8月28日検索]、インターネット〈URL:https://tools.ietf.org/html/rfc8402〉
【非特許文献2】“Multiprotocol Extensions for BGP-4, IETF RFC2283”、[online]、[平成30年8月28日検索]、インターネット〈URL:https://tools.ietf.org/html/rfc2283〉
【非特許文献3】“PCEP Extensions for Segment Routing”、[online]、[平成30年8月28日検索]、インターネット〈URL:https://datatracker.ietf.org/doc/draft-ietf-pce-segment-routing/〉
【非特許文献4】“The BGP Encapsulation Subsequent Address Family Identifier (SAFI) and the BGP Tunnel Encapsulation Attribute, IETF RFC5512”、[online]、[平成30年8月28日検索]、インターネット〈URL:https://tools.ietf.org/html/rfc5512〉
【発明の概要】
【発明が解決しようとする課題】
【0005】
所定のサービス運用に伴い、度重なるネットワーク構成変更などによって、異なるSIDリスト取得方法が適用されたノード群が混在したネットワークが形成される場合がある。しかし、異なるSIDリスト取得方法が適用されたノード間では、SRによる転送を実行することができない可能性がある。このため、従来では、SRによる転送が実行されるネットワークの拡張性が制限されるという問題があった。非特許文献1〜4には、このような問題の対策について記載も示唆も無い。
【0006】
このような背景に鑑みて、本発明は、セグメントルーティングによる転送が実行されるネットワークの拡張性を向上させることを課題とする。
【課題を解決するための手段】
【0007】
前記した課題を解決するため、請求項1に記載の発明は、セグメントルーティングによって送信元ノードから宛先ノードへのパケットの転送を可能とするために必要となる情報を制御する転送装置であって、前記送信元ノードまたは前記宛先ノードとして機能するノードごとに、当該ノードのSIDリスト取得方法を示すノード管理情報を記憶する記憶部と、前記宛先ノードから受信パケットを受信するパケット受信部と、前記ノード管理情報に基づいて、前記宛先ノードの宛先側SIDリスト取得方法と、前記送信元ノードの送信元側SIDリスト取得方法とが一致しない場合には、前記送信元側SIDリスト取得方法の実行に必要な情報を前記受信パケットに設定する情報設定部と、前記設定がなされた前記受信パケットを前記送信元ノードに送信するパケット送信部と、を備える、ことを特徴とする。
【0008】
また、請求項4に記載の発明は、セグメントルーティングによって送信元ノードから宛先ノードへのパケットの転送を制御する転送装置における転送方法であって、前記転送装置の記憶部は、前記送信元ノードまたは前記宛先ノードとして機能するノードごとに、当該ノードのSIDリスト取得方法を示すノード管理情報を記憶しており、前記転送装置は、前記宛先ノードから受信パケットを受信する受信ステップと、前記ノード管理情報に基づいて、前記宛先ノードの宛先側SIDリスト取得方法と、前記送信元ノードの送信元側SIDリスト取得方法とが一致しない場合には、前記送信元側SIDリスト取得方法の実行に必要な情報を前記受信パケットに設定する設定ステップと、前記設定がなされた前記受信パケットを前記送信元ノードに送信する送信ステップと、を実行する、ことを特徴とする。
【0009】
請求項1,4に記載の発明によれば、転送装置の情報設定によって、送信元ノードと宛先ノードとの間でのSIDリスト取得方法が異なっていても、送信元ノードは、SIDリスト取得方法の変更なしでSIDリストを取得することができ、宛先ノードへのセグメントルーティングによる転送を確実に実行することができる。つまり、転送装置1は、SIDリスト取得方法が異なるノード間の、セグメントルーティングによる転送を実現することができる。
したがって、セグメントルーティングによる転送が実行されるネットワークの拡張性を向上させることができる。
【0010】
また、請求項2に記載の発明は、請求項1に記載の転送装置であって、前記記憶部は、前記送信元側SIDリスト取得方法ごとに、前記送信元ノードが前記送信元側SIDリスト取得方法を実行するために保有している情報と、前記宛先ノードから受信する前記受信パケットに設定される識別子と、前記送信元側SIDリスト取得方法の実行に必要な情報と、を関連付けた変換条件情報を記憶しており、前記情報設定部は、前記変換条件情報に基づいて、前記送信元側SIDリスト取得方法の実行に必要な情報を前記受信パケットに設定する、ことを特徴とする。
【0011】
また、請求項5に記載の発明は、請求項4に記載の転送方法であって、前記記憶部は、前記送信元側SIDリスト取得方法ごとに、前記送信元ノードが前記送信元側SIDリスト取得方法を実行するために保有している情報と、前記宛先ノードから受信する前記受信パケットに設定される識別子と、前記送信元側SIDリスト取得方法の実行に必要な情報と、を関連付けた変換条件情報を記憶しており、前記転送装置は、前記設定ステップにおいて、前記変換条件情報に基づいて、前記送信元側SIDリスト取得方法の実行に必要な情報を前記受信パケットに設定する、ことを特徴とする。
【0012】
請求項2,5に記載の発明によれば、送信元ノードがSIDリストを取得するのに必要な情報を転送装置で管理することができ、送信元ノードのSIDリスト取得方法がどのような方法であっても、送信元ノードは、SIDリスト取得方法の変更なしでSIDリストを取得することができる。
【0013】
また、請求項3に記載の発明は、請求項1または請求項2に記載の転送装置であって、前記送信元側SIDリスト取得方法の実行に必要な情報がSIDリストを含む場合には、当該SIDリストとして、外部システムが生成したSIDリストを含む、ことを特徴とする。
【0014】
また、請求項6に記載の発明は、請求項4または請求項5に記載の転送方法であって、前記送信元側SIDリスト取得方法の実行に必要な情報がSIDリストを含む場合には、当該SIDリストとして、外部システムが生成したSIDリストを含む、ことを特徴とする。
【0015】
請求項3,6に記載の発明によれば、送信元ノードが、外部システムが生成したSIDリストを取得することができるため、転送装置と外部システムとが連携した、柔軟な転送制御を実現することができる。
【発明の効果】
【0016】
本発明によれば、セグメントルーティングによる転送が実行されるネットワークの拡張性を向上させることができる。
【図面の簡単な説明】
【0017】
図1】本実施形態の転送装置を含む転送システムの機能構成図である。
図2】ノード管理情報のデータ構造図である。
図3】変換条件情報のデータ構造図である。
図4】本実施形態の転送制御処理を示すフローチャートである。
図5】本実施形態の具体例の説明図である。
【発明を実施するための形態】
【0018】
以下、図面を参照して本発明を実施するための形態(以下、「本実施形態」という)について説明する。
【0019】
≪構成≫
図1に示すように、本実施形態の転送システムは、転送装置1と、外部システム2と、ノードr1〜r3、n1〜n4と、ホストh1〜h6とを備える。転送装置1と、外部システム2と、ノードr1〜r3、n1〜n4と、ホストh1〜h6とは、通信可能に接続されている。
【0020】
転送装置1は、ノードr1〜r3、n1〜n4を含むノード間の、SRによる転送を可能とするために必要となる情報を制御する転送装置である。転送装置1は、例えば、ルートリフレクタとすることができるが、これに限定されない。転送装置1は、入出力用のI/F(インターフェイス)などで構成される入出力部、ハードディスク、フラッシュメモリ、RAM(Random Access Memory)などで構成される記憶部、CPU(Central Processing Unit)などで構成される制御部といったハードウェアを備えるコンピュータである。制御部は、例えば、記憶部に記憶されているプログラムを記憶部の記憶領域に展開し実行することにより、上記の処理が実行される。本実施形態の転送装置1は、このようなソフトウェアとハードウェアの協働を実現することができる。転送装置1の詳細は、後記する。
【0021】
外部システム2は、SIDリストを生成し、転送装置1に送信する装置である。外部システム2は、例えば、PCEPを用いたPCEや、BGPを用いたBGPコントローラとすることができるが、これに限定されない。転送装置1は、外部システム2から受信したSIDリストを送信先ノードに送信することができる。
【0022】
ノードr1〜r3は、SRによって転送されるパケットを終端する装置である。ノードr1〜r3は、例えば、PE(Provider Edge)ルータ、または、BGPルータとすることができるが、これらに限定されない。ノードr1〜r3は、転送するパケットの送信元ノードまたは宛先ノードとして機能することができる。本実施形態では、ノードr1,r2が送信元ノードであり、ノードr3が宛先ノードであるとして説明する。
【0023】
なお、図1に示すノードr1〜r3は、ネットワークに配置されているすべてのPEルータ等の一部である。また、図1に示すように、ノードr1の識別子は「X」であり、ノードr2の識別子は「Y」であり、ノードr3の識別子は「Z」である。
【0024】
ノードn1〜n4は、SRによってパケットを転送する装置である。ノードn1〜n4は、例えば、コアルータであり、ノードr1〜r3間でやり取りされるパケットと中継する。なお、図1に示すノードn1〜n4は、ネットワークに配置されているすべてのコアルータの一部である。
【0025】
ホストh1〜h6は、所定のサービスを提供する汎用計算機である。ホストh1,h2は、ノードr1に収容されている。ノードr1は、ホストh1,h2の各々に対応するVRF(Virtual Routing and Forwarding。図示せず。)を有しており、SIDリストに従い、VRFごとにパケットを送信することができる。また、ホストh3,h4は、ノードr2に収容されている。ノードr2は、ホストh3,h4の各々に対応するVRF(図示せず)を有しており、SIDリストに従い、VRFごとにパケットを送信することができる。また、ホストh5,h6は、ノードr3に収容されている。ノードr3は、ホストh5,h6の各々に対応するVRF(図示せず)を有しており、SIDリストに従い、VRFごとにパケットを送信することができる。
【0026】
なお、転送されるパケットは、SIDリストに従い、転送先を判断し、宛先ノードにまで転送される。また、転送されるパケットには、RT(Route Target)を付与することができる。RTは、経路広告の際、どのVRFに対応する経路であるかを識別する識別子である。つまり、RTは、どのVRFを利用するかを識別することができる。
【0027】
[転送装置1の詳細]
図1に示すように、転送装置1は、パケット受信部11と、情報格納部12と、情報変換部13と、情報設定部14と、パケット送信部15とを備える。ノードr1〜r3、n1〜n4の各々は、転送装置1とBGPピア(非特許文献2参照)を張っている。
【0028】
パケット受信部11は、ノードr1〜r3からパケットを受信する。特に、パケット受信部11は、SRによるパケットの転送が実現される前段階で、宛先ノードとなるノードr3からパケットを受信する。受信するパケットは、例えば、BGPパケットであるが、これに限定されない。パケット受信部11がノードr1〜r3の各々から受信するパケットには、当該ノードr1〜r3のSIDリスト取得方法を識別する「タイプ」を示すタイプ情報が設定されている。
【0029】
情報格納部12は、ノードr1〜r3の各々に適用されるSIDリスト取得方法を、ノード管理情報T1として格納する。図2に示すように、ノード管理情報T1は、ノードr1〜r3の識別子が格納される「PE」欄と、SIDリスト取得方法のタイプを示す値が格納される「タイプ番号」欄とを関連付けるエントリを、ノードr1〜r3ごとに有している。転送装置1は、情報格納部12に、ノード管理情報T1を予め設定(Config)してもよいし、ノードr1〜r3から受信したBGPパケットに設定されているタイプ情報からタイプを読み出し、ノード管理情報T1に格納してもよい。
情報格納部12は、転送装置1の記憶部として機能することができ、転送装置1の記憶部は、ノード管理情報T1を記憶する。
【0030】
情報変換部13は、宛先ノードから受信したパケットに対して、ノード管理情報T1を参照し、宛先ノードから受信したパケットに設定される情報を、送信元ノードがSIDリストを取得するために必要となる情報に変換する。情報変換部13による変換は、情報変換部13が有する変換条件情報T2に従う。転送装置1の記憶部は、変換条件情報T2を記憶する。
【0031】
図3に示すように、変換条件情報T2は、「タイプ番号」欄と、「送信元ノード保有情報」欄と、「宛先ノードからの識別子情報」欄と、「タイプ変換情報」欄とを関連付けるエントリを、送信元ノードとして機能するノードのSIDリスト取得方法(送信元側SIDリスト取得方法)を識別するタイプごとに有している。
「タイプ番号」欄には、SIDリスト取得方法のタイプを示す値が格納され、ノード管理情報T1(図2)の「タイプ番号」欄と同じである。
「送信元ノード保有情報」欄には、送信元ノードが、自身のSIDリスト取得方法を実行するために保有している情報が格納されている。
「宛先ノードからの識別子情報」欄には、宛先ノードとして機能するノードから受信するパケットに設定される識別子が格納される。格納される識別子は、例えば、ノードがSIDリストを生成するために必要な情報を含む。
「タイプ変換情報」欄には、送信元ノードがSIDリストを取得するのに必要な情報(送信元側SIDリスト取得方法の実行に必要な情報)であって、情報変換部13によって、追加、削除等の変換の対象となる情報が格納される。
【0032】
図3に示す「Color」は、宛先までの転送経路をどのように指定するかを決めるSRポリシが複数存在し、各SRポリシを識別するための識別子である。Colorは、RFC5512(非特許文献4)で定義される、BGPのExtended Communityであり、所定の数値で表現される。
【0033】
また、図3に示す「メトリック」は、各ノードのインタフェースに割り当てられたコストに基づいて、当該ノードの経由する転送経路を使用してSRルーティングを行った場合のコストを識別する値である。コストの算出方法は、周知の方法を用いることができ、説明を省略する。
【0034】
変換条件情報T2において、タイプ番号が「1」のエントリは、送信元ノードがColorおよびメトリックの情報を保有しており、宛先ノードから受信するパケットに設定される識別子としてColorが設定されている場合には([a]Color)、変換は必要ない([c]-)ことを示している。また、宛先ノードから受信するパケットに設定される識別子が存在しない場合には([b]情報なし)、パケットにColorを付加することを示している([d]Color)。
なお、付加されるColorは、例えば、予め決められておりデフォルトのColorとすることができる。
【0035】
タイプ番号が「2」のエントリは、送信元ノードがColorおよびSIDリストを保有しており、宛先ノードから受信するパケットに設定される識別子としてColorが設定されている場合には([a]Color)、変換は必要ない([c]-)ことを示している。また、宛先ノードから受信するパケットに設定される識別子が存在しない場合には([b]情報なし)、パケットにColorを付加することを示している([d]Color)。
なお、付加されるColorは、例えば、予め決められておりデフォルトのColorとすることができる。
【0036】
タイプ番号が「3」のエントリは、送信元ノードがColorを保有しており、宛先ノードから受信するパケットに設定される識別子としてColorが設定されている場合には([a]Color)、パケットにSIDリストを付加することを示している([c]SIDリスト)。また、宛先ノードから受信するパケットに設定される識別子が存在しない場合には([b]情報なし)、パケットにColorおよびSIDリストを付加することを示している([d]Color,SIDリスト)。
なお、付加されるColorは、例えば、予め決められておりデフォルトのColorとすることができるが、これに限定されない。また、付加されるSIDリストは、例えば、(1)転送装置1が外部システム2で生成し、取得したSIDリスト、(2)転送装置1の内部計算(例:BGP−LS(BGP-Link State)によるトポロジ把握)で生成したSIDリスト、(3)Configにより生成したSIDリストがあるが、これらに限定されない。
【0037】
タイプ番号が「4」のエントリは、送信元ノードが、該当のSIDリスト取得方法を実行するために必要となる情報を何も保有せず、宛先ノードから受信するパケットに設定される識別子としてColorが設定されている場合には([a]Color)、パケットにSIDリストを付加するとともに、当該Colorは削除することを示している([c]SIDリスト(Colorは削除))。また、宛先ノードから受信するパケットに設定される識別子が存在しない場合には([b]情報なし)、パケットにSIDリストを付加することを示している([d]SIDリスト)。
なお、付加されるSIDリストは、例えば、(1)転送装置1が外部システム2で生成し、取得したSIDリスト、(2)転送装置1の内部計算(例:BGP−LSによるトポロジ把握)で生成したSIDリスト、(3)Configにより生成したSIDリストがあるが、これらに限定されない。
【0038】
タイプ番号が「5」のエントリは、送信元ノードがSIDリストを保有しており、宛先ノードから受信するパケットに設定される識別子としてColorが設定されている場合には([a]Color)、当該Colorは削除することを示している([c]Colorは削除)。また、宛先ノードから受信するパケットに設定される識別子が存在しない場合には([b]情報なし)、変換は必要ない([d]-)ことを示している。
【0039】
情報変換部13は、宛先ノードから受信したパケットを、送信元ノードのタイプに合わせるように変換することができる。
【0040】
情報設定部14は、情報変換部13の変換に従って、宛先ノードから受信したパケットに、送信元ノードがSIDリストを取得するために必要となる情報を設定する。
【0041】
パケット送信部15は、宛先ノードから受信したパケットを送信元ノードに送信する。送信元ノードに送信されるパケットは、情報設定部14が設定した情報を含む。
送信元ノードは、パケット送信部15から受信したパケットから、送信元ノードがSIDリストを取得するために必要となる情報を読み出し、送信元ノードに実装されているSIDリスト取得方法で、SIDリストを取得することができる。よって、送信元ノードは、すべてのタイプのSIDリスト取得方法を実行する宛先ノードと、SRによる転送を実行することができる。
【0042】
≪処理≫
本実施形態の転送装置1が実行する処理について、図4を参照して説明する。図4の処理は、例えば、宛先ノードで所定の機能更新(Update)が発生した場合に開始するが、開始契機はこれに限定されない。図4の処理は、宛先ノード側の更新内容を、宛先ノードが配置されているネットワークに配置されている他のノード、つまり、送信元ノードに通知することを目的とする処理である。
なお、宛先ノード、および、送信元ノードは、転送装置1とBGPピアを張っている。
【0043】
まず、転送装置1は、パケット受信部11によって、宛先ノードからの受信パケットとして、例えば、BGPパケットを受信する(ステップS1)。受信するBGPパケットは、例えば、UPDATEパケットであり、宛先ヘッダには、送信元ノードの識別子(例:IPアドレス)が設定されている。
【0044】
次に、転送装置1は、受信したBGPパケットから、宛先ノードのタイプ、つまり、宛先ノードが実行するSIDリスト取得方法のタイプが設定されている場合には当該タイプを読み出して、情報格納部12にノード管理情報T1の形式で格納する(ステップS2)。ただし、情報格納部12が、管理対象となるネットワークにされているノードについて、ノード管理情報T1を予め設定している場合には、ステップS2を省略してもよい。
【0045】
次に、転送装置1は、情報変換部13によって、宛先ノードのタイプを確認する(ステップS3)。宛先ノードのタイプの確認は、情報変換部13が、宛先ノードから受信したBGPパケットに設定されている、宛先ノードのタイプを読み出すことで実現することができる。また、宛先ノードから受信したBGPパケットに宛先ノードのタイプが設定されていない場合には、情報変換部13が、情報格納部12のノード管理情報T1を参照することで実現することができる。
【0046】
次に、転送装置1は、情報変換部13によって、宛先ノードのタイプ(宛先ノードが実行するSIDリスト取得方法のタイプ:宛先ノードの宛先側SIDリスト取得方法)と、送信元ノードのタイプ(送信元ノードが実行するSIDリスト取得方法のタイプ:送信元ノードの送信元側SIDリスト取得方法)とが一致するか否か判定する(ステップS4)。送信元ノードのタイプの確認は、情報変換部13が、受信したBGPパケットの宛先ヘッダに設定されている、送信元ノードの識別子をキーにして、情報格納部12のノード管理情報T1を参照することで実現することができる。
【0047】
宛先ノードのタイプと、送信元ノードのタイプとが一致する場合(ステップS4でYes)、情報変換部13による変換は不要であることを意味する。よって、転送装置1は、パケット送信部15によって、宛先ノードから受信したBGPパケットを、送信元ノードに送信し(ステップS5)、図4の処理を終了する。
【0048】
宛先ノードのタイプと、送信元ノードのタイプとが一致しない場合(ステップS4でNo)、転送装置1は、情報変換部13によって、宛先ノードから受信したBGPパケットに設定されている情報を、変換条件情報T2に従って変換する(ステップS6)。具体的には、情報変換部13は、宛先ノードから受信したBGPパケットに対して、SIDリストの付加や、Colorの付加または削除を行う(図3参照)。
【0049】
次に、転送装置1は、情報設定部14によって、情報変換部13が変換した情報である変換後情報を、宛先ノードから受信したBGPパケットに設定する(ステップS7)。
変換後情報とは、送信元ノードがSIDリストを取得するために必要となる情報であり、具体的には、SIDリストの付加や、Colorの付加または削除がなされた情報である。情報設定部14は、宛先ノードから受信したBGPパケットに送信元ノードのタイプに合う情報をBGPパケットに設定する。換言すれば、情報設定部14は、変換条件情報T2に基づいて、送信元側SIDリスト取得方法の実行に必要な情報をBGPパケットに設定することができる。その後、転送装置1は、パケット送信部15によって、情報設定部14による設定がなされたBGPパケットを、送信元ノードに送信し(ステップS5)、図4の処理を終了する。
【0050】
図4の処理によれば、宛先ノードのSIDリスト取得方法の種類によらず、送信元ノードは、当該送信元ノードに元々実装されているSIDリスト取得方法で、SRによるパケットを転送することができる。
【0051】
≪具体例≫
図5を参照して、本実施形態の具体例について説明する。本具体例は、タイプ番号(図3参照)が「2」であるノードr3(識別子「Z」。図1。)と、タイプ番号が「4」であるノードr1(識別子「X」。図1。)との通信を実現するための例である。つまり、ノードr3は、送信元ノードとして機能するとき、SIDリスト取得方法の実行に必要となる情報はColorであり(図3の変換条件情報T2のタイプ番号「2」のエントリ中の[d]colorを参照)、ノードr1は、送信元ノードとして機能するとき、SIDリスト取得方法の実行に必要となる情報は、SIDリストである(図3の変換条件情報T2のタイプ番号「2」のエントリ中の[d]SIDリストを参照)。
【0052】
図5の上側に示すように、ノードr3にて、所定のテーブルの更新(Update)が発生すると(ステップA1)、ノードr3は、宛先ノードとして機能し、BGPパケットp1(図5では「BGP UPDATE」と記載)を転送装置1に送信する(ステップA2)。BGPパケットp1には、ノードr1が有するVRFを利用することを示す「10:10」という値が設定されたRT、ノードr3が用いるSRポリシを示す「1」という値が設定されたColor、および、ノードr3のタイプ番号として「2」という値が設定されたタイプといった情報が含まれている。BGPパケットp1に含まれる他の情報(SIDリストの生成に寄与しない情報)の図示は省略する。
【0053】
転送装置1は、ノードr3から受信したBGPパケットp1からタイプ番号「2」を読み出して、情報格納部12にノード管理情報T1の形式で格納する(図4のステップS2参照)。ノードr3,r1の間でタイプが異なるため、転送装置1は、情報変換部13および情報設定部14によって、BGPパケットp1の情報を変換および設定し、送信元ノードとして機能するノードr1のタイプ(タイプ番号「4」相当)に合わせる。具体的には、転送装置1は、BGPパケットp1のタイプの情報を削除し、また、BGPパケットp1のColorを削除するとともに、ラベルの列を示す「16001,16002,・・・」が生成されたSIDリストを付加し、BGPパケットp2(図5では「BGP UPDATE」と記載)を生成する。
【0054】
転送装置1は、パケット送信部15によって、BGPパケットp2をノードr1に送信する(ステップA3)。ノードr1は、転送装置1から受信したBGPパケットp2からSIDリストを取得することができ、取得したSIDリストを用いて、ノードr1に対して、SRによる転送を実行することができる。
【0055】
また、図5の下側に示すように、ノードr1にて、所定のテーブルの更新(Update)が発生すると(ステップB1)、ノードr1は、宛先ノードとして機能し、BGPパケットp3(図5では「BGP UPDATE」と記載)を転送装置1に送信する(ステップB2)。BGPパケットp3には、ノードr3が有するVRFを利用することを示す「10:20」という値が設定されたRT、および、ノードr1のタイプ番号として「4」という値が設定されたタイプといった情報が含まれている。BGPパケットp3に含まれる他の情報(SIDリストの生成に寄与しない情報)の図示は省略する。
【0056】
転送装置1は、ノードr1から受信したBGPパケットp3からタイプ番号「4」を読み出して、情報格納部12にノード管理情報T1の形式で格納する(図4のステップS2参照)。ノードr3,r1の間でタイプが異なるため、転送装置1は、情報変換部13および情報設定部14によって、BGPパケットp3の情報を変換および設定し、送信元ノードとして機能するノードr3のタイプ(タイプ番号「2」相当)に合わせる。具体的には、転送装置1は、BGPパケットp3のタイプの情報を削除するとともに、予め決定されたデフォルトの値として「2」という値で識別されるcolorを付加し、BGPパケットp4(図5では「BGP UPDATE」と記載)を生成する。
【0057】
転送装置1は、パケット送信部15によって、BGPパケットp4をノードr3に送信する(ステップB3)。ノードr3は、転送装置1から受信したBGPパケットp4に設定されているcolor(「2」という値で識別されるcolor)に従い、元々有しているSIDリストを用いて、ノードr1に対して、SRによる転送を実行することができる。
【0058】
≪まとめ≫
本実施形態によれば、転送装置1の情報設定によって、送信元ノードと宛先ノードとの間でのSIDリスト取得方法が異なっていても、送信元ノードは、SIDリスト取得方法の変更なしでSIDリストを取得することができ、宛先ノードへのセグメントルーティングによる転送を確実に実行することができる。つまり、転送装置1は、SIDリスト取得方法が異なるノード間の、セグメントルーティングによる転送を実現することができる。
したがって、セグメントルーティングによる転送が実行されるネットワークの拡張性を向上させることができる。
【0059】
また、従来では、SIDリスト取得方法が異なるノード群が配置されていたネットワークに対して大規模な更改や見直しを必要としたが、本実施形態によれば、そのような更改や見直しを不要とすることができ、既存環境に大きな影響を与えることなく、セグメントルーティングによる転送を実現することができる。
また、本実施形態によれば、ノードを製造する複数のメーカのうち特定のメーカに依存しないように組み合わせたノード群を選択することができ、機能、性能、コストの面で最適となるネットワークを容易に構築することができ、ネットワークの柔軟性を向上させることができる。
【0060】
また、本実施形態によれば、送信元ノードがSIDリストを取得するのに必要な情報を転送装置1で管理することができ、送信元ノードのSIDリスト取得方法がどのような方法であっても、送信元ノードは、SIDリスト取得方法の変更なしでSIDリストを取得することができる。
また、本実施形態によれば、送信元ノードが、外部システム2が生成したSIDリストを取得することができるため、転送装置1と外部システム2とが連携した、柔軟な転送制御を実現することができる。
【0061】
(その他)
(a)宛先ノードから受信する受信パケットにcolorを付加するように変換および設定する場合、付加するcolorは、本実施形態のようにデフォルトのcolorとするのではなく、送信先ノードに設定されているcolorとしてもよい。
(b)各実施形態で説明した種々の技術を適宜組み合わせた技術を実現することもできる。
【符号の説明】
【0062】
1 転送装置
2 外部システム
11 パケット受信部
12 情報格納部
13 情報変換部
14 情報設定部
15 パケット送信部
T1 ノード管理情報
T2 変換条件情報
r1〜r3、n1〜n4 ノード
h1〜h6 ホスト
図1
図2
図3
図4
図5