WIDE

Sprouting Research -研究の芽-

WIDEプロジェクトはさまざまな産学組織の研究者・技術者・運用者から成り立っています。組織の枠を超えたつながりの中で、インターネットをはじめとする広域分散処理技術を中心に、より便利で安全な未来を目指した技術開発と研究が進められています。ここでは、その中から若手研究者が取り組んでいる研究課題を取り上げ、これから世に出ていく新しい技術と、その研究開発に取り組む姿を紹介します。

01 より自由な経路制御を目指して

より高度で柔軟なトラフィックエンジニアリングやサービスファンクションチェイニングなどへの応用に向けて、新しい経路制御技術であるセグメントルーティングが注目を集めています。今回はその次世代経路制御技術に興味を持ち、セグメントルーティングが抱える規模性の解決に取り組む研究者を紹介します。

三島航

北陸先端科学技術大学院大学
篠田研究室 修士課程 三島 航(みしま わたる)

北陸先端科学技術大学院大学 篠田研究室 修士2年の三島航です。セグメントルーティングにおける階層化について研究を行なっています。WIDEプロジェクトには2017年の7月から参加しています。 WIDEでの主な活動としては、2018年春の研究会でインフラワークショップ開催、秋合宿で会場ネットワーク構築・ポスター発表を行いました。その他の活動としては、2018年のInterop ShowNetにSTMとして参加しました。普段の生活でも研究室ネットワークの管理・運用を行なっています。

セグメントルーティングとは

セグメントルーティング(以下、SR)とは、経路の各要素をセグメントと呼ばれる単位で表現し、経由先や宛先として指定することで柔軟な制御を実現する技術です。SRはシンプルかつ柔軟な経路制御技術として、トラフィックエンジニアリングやサービスチェイニングなどでの利用が期待されています。以下にSRの概念図を載せます。

SR概念図

SRではセグメントを表すため、セグメントID(SID)と呼ばれる識別子を用います。送信元ノードで、セグメントリストと呼ばれる経由セグメントのSIDリストをパケットに付加することで経路を指定し、転送を行うソースルーティングの一種です。

セグメントにはノードを示すNodeセグメントと、隣接関係を示すAdjacencyセグメントの二種類が存在します。Node SIDが指定された場合はそのノードへのアンダーレイネットワークにおける最短経路を用い転送が行われます。Adjacency SIDが指定された場合、Adjacency SIDが示すインターフェースから送出が行われます。

上の図にSRにより転送を行う様子を示しました。この例は、8番から5番のノードへと送信するパケットを、最短経路ではなく4、1のノードを経由するように経路制御した例となります。そのため転送対象のパケットに「8-4、1、5」というセグメントリストを付加しています。

SRに参加するノードの集合をSRドメインと呼びます。各ノードはSRドメインに参加する全ノードのNode SIDと、自らのインターフェースのAdjacency SIDを格納したSIDテーブルを保持しています。各ノードは受け取ったパケットのセグメントリストの先頭要素を確認し、SIDテーブルを参照することで次の宛先を決定し、送出を行います。

スケーラブルな運用を目指して

SRの問題点として、各ノードがSRドメインの全ノード分のNode SIDをSIDテーブルに持たなければならない点があります。これにより、参加ノードが増加すると各ノードが持つべきSIDテーブルの情報量が増加し、メモリ量と検索時間の負荷による規模性の問題が生じます。この対策として、私の研究ではSRの階層化を提案しています。提案手法である階層的SRの概念図を以下に示します。

階層化の概念図

左側が既存のSR、右側が階層的SRを示しています。階層的SRではSRドメインをサブドメインに分割し、各ノードに自らの属するサブドメイン内の情報のみを持たせることで情報量を削減し、規模性を確保します。図の例では、23番のノードはサブドメインC内部の21、22、24の情報のみに抑制できます。

情報量を削減した上で正しく転送を行うため、本研究では二種類の手法を提案しました。 以下にそれぞれの概念図を示します。

階層的SRのモデル分類

1つ目は上位SIDモデルです。このモデルでは各サブドメインにSIDを付与し、経由先として指定することでサブドメインを超えた転送を可能にします。図の例では、サブドメインにそれぞれ0、10、20というSIDを付与しています。このモデルはで上位SIDを指定可能なため、次に扱う展開モデルに比べセグメントリストを短く構成することが可能になりますが、サブドメインに付与したSIDを扱えるようデータプレーンの拡張が必要となります。

2つ目は展開モデルです。このモデルでは各ノードがサブドメイン内の情報のみで転送を行えるよう、セグメントリストを構築します。図の例では、23のノードはサブドメイン内の22へ、22のノードはAdjacency SIDを用い隣のサブドメインへ、というようにサブドメイン内の情報のみで転送する様子を示しています。このモデルでは既存のSRと同じSIDを利用するため、データプレーンの拡張は不要です。しかしサブドメイン間を移動する際必ずAdjacency SIDを指定する必要があるため、上位SIDモデルに比べセグメントリストは増大します。本研究では、まず実装負荷の低い展開モデルから実装を行なっています。

研究の魅力と手を動かす面白さ

この研究の面白い要素として、サブドメインサイズとパフォーマンスの兼ね合いや、アンダーレイプロトコルの規模性との兼ね合いなど、実際に動かしてみないとわからない要素が多い点があります。また、SRは新しいトピックであり、手を動かすことで切り開いていくというやりがいも大きいです。

現在、OSSのルーティングデーモンであるFRRoutingとLinux KernelのMPLSで実装を開始しています。今後は修了までに階層的SRの実装と評価を進めていきます。またその中で、MPLS-TEやSRv6なども扱って行きたいと考えています。進捗や調査項目などは研究ページ(https://watal.github.io/)に随時更新していきます。 FRRoutingを用いた実験方法を記事にまとめているので、ぜひ試してみてください。

次回は北陸先端科学技術大学院大学の宮崎駿さんの研究を紹介します。

02 SR2のタイトルタイトルタイトル

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Consectetur velit praesentium, et, amet modi numquam eos, omnis dignissimos recusandae porro quam! Ab doloremque natus sapiente laudantium vero perspiciatis odio, explicabo.

03 SR3のタイトルタイトルタイトル

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Excepturi a itaque sunt, dolores eligendi, tempore est perspiciatis incidunt pariatur reprehenderit eaque. Aperiam quam minima accusamus tempora corrupti, molestias reiciendis nihil.

04 SR4のタイトルタイトルタイトル

Lorem ipsum dolor sit amet, consectetur adipisicing elit. At libero optio rerum blanditiis magnam alias facilis, nostrum praesentium cumque quas perferendis sint excepturi doloribus aliquid, laudantium tempore unde soluta ad.

05 SR5のタイトルタイトルタイトル

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Molestias aspernatur quos ullam quasi non. Iste, laudantium ipsam debitis earum suscipit similique accusamus iusto eligendi eius, laborum impedit commodi reprehenderit pariatur!

06 SR6のタイトルタイトルタイトル

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Vitae aperiam placeat doloribus amet mollitia, fugiat dolore corporis, quaerat reiciendis, aliquid labore repellat. Libero animi voluptas laudantium sint perspiciatis doloremque praesentium?