LIN6

[lang_jp]

ID/Locator分離の概念

ID/Locator分離方式の概念を図1に示す.図1の右側は現在のインターネットにおける送信処理の流れを表す.アプリケーション層が通信相手ノードをLocator (ここではIPアドレス)を用いて識別している.トランスポート層も同様に相手ノードをLocatorを用いて識別している.ネットワーク層はLocatorを用いてIPパケットを転送している.

一方で,図1の左側はID/Locator分離方式による送信処理の流れを表す.アプリケーション層とトランスポート層は通信相手ノードをIDを用いて識別している.ネットワーク層は”IDサブレイヤ”と”フォワーディングサブレイヤ”という2つのサブレイヤに分割される.IDサブレイヤでは,通信相手ノードのIDとLocatorのマッピング (対応関係)を管理している.フォワーディングサブレイヤでは,Locatorを用いてパケットの転送を行う.

LIN6 ID, LIN6汎用識別子,LIN6アドレス

LIN6汎用識別子,LIN6アドレス,IPv6アドレスを図2に示す.LIN6では,ノードは少なくとも1つ以上のLIN6 IDと呼ばれるグローバルユニークな識別子を割り当てられる.LIN6 IDのビット長は64ビットである.LIN6汎用識別子はLIN6プレフィックスとLIN6 IDで構成される.LIN6プレフィックスは64ビットの固定値である.このため,ノードが別のサブネットに移動しても,LIN6汎用識別子は変化しない.アプリケーション層とトランスポート層はこのLIN6汎用識別子を用いて通信相手ノードの識別を行う.

LIN6アドレスはネットワークプレフィックスとLIN6 IDで構成される.IDサブレイヤは,LIN6 IDと現在接続しているネットワークのネットワークプレフィックスのマッピングを管理する.フォワーディングサブレイヤはLIN6アドレスを用いてパケットの転送を行う.LIN6アドレスとIPv6アドレスは同一のフォーマットをとる.

LIN6における送信/受信手順

LIN6における送信/受信手順を図3に示す.図3の左側は送信手順を表す.トランスポート層はLIN6汎用識別子を用いて通信相手ノードの識別を行う.IDサブレイヤでは,LIN6汎用識別子からLIN6 IDの部分を抽出する.LIN6 IDはネットワークプレフィックスにマッピングされている.ネットワークプレフィックスとLIN6 IDを連結することでLIN6アドレスを生成し,フォワーディングサブレイヤでパケットの転送を行う.

図3の右側に受信手順を示す.IDサブレイヤがLIN6アドレスからLIN6 IDを抽出し,これをLIN6プレフィックスと連結させることでLIN6汎用識別子を生成する.結果として,トランスポート層にはLIN6汎用識別子が渡される.

このように,トランスポート層では,LIN6汎用識別子を用いて通信を行う.LIN6汎用識別子はノードが他サブネットに移動しても変化しない.

LIN6における登録/送信手順

LIN6はMapping Agent (MA)と呼ばれるサーバを導入している.MAはLIN6 IDとネットワークプレフィックスのマッピングを管理している.LIN6における登録/送信手順を図4に示す.

  1. モバイルノード (mn.ics.keio.ac.jp)が自身のLIN6 IDとネットワークプレフィックスをMapping Updateメッセージを用いてMAに登録する.
  2. CNがMNにパケットを送信する際,まずはMNのLIN6IDを得るべくDNSにクエリを送信する.その際,CNはMNのLIN6 IDだけでなく,MNのマッピング情報を管理しているMAのIPv6アドレスも取得する.
  3. CNがMNのネットワークプレフィックスを得るべくMAにクエリを送信する.
  4. CNがMAから取得したMNのネットワークプレフィックスとDNSから取得したLIN6 IDを連結してLIN6アドレスを生成し,MNにパケットを送信する.

MNが他サブネットに移動した場合,MNはMapping UpdateメッセージをMAに送信し,Mapping RefreshメッセージをCNに送信する.Mapping RefreshメッセージがCNによって受信されると,CNはMNに再度クエリを送信し,MNのマッピング情報に関するキャッシュを更新する.

ネットワークモビリティサポート

LIN6はノードモビリティだけでなくネットワークモビリティもサポートしている.ネットワークモビリティとは,ネットワークを構成する機器がまるごと移動することを表す.ネットワークモビリティサポートプロトコルでは,シグナリングメッセージ数と最適ルーティングにはトレードオフの関係があるが,LIN6は最適なバランスを目指している.表1にLIN6と関連研究との比較を示す.

  1. LIN6では,モバイルネットワークのネスト数に関係なくパケットは一度だけリレーされるため,モバイルノードへのパケットはほぼ最適な経路を通る.
  2. LIN6では,シグナリングメッセージ数はモバイルネットワーク内のノード数に依存しない.
  3. LIN6は通常のIPv6ノードもサポートしている.
  4. LIN6ではMAを分散配置できるため,耐故障性に優れている.

[/lang_jp][lang_en-us]

Concept of ID/Locator Split

Figure 1 shows the concept of ID/Locator split. The right side of the figure shows the transmission procedure in the current Internet. The application layer specifies the target node by its locator, i.e., the IP address. The transport layer also recognizes the target node by its locator. The network layer forwards the IP packet based on the locator.

On the other hand, the left of the figure shows the transmission procedure in the ID/Locator split approach. The application and transport layers recognize the target node by its ID. The network layer is divided into two sublayers: the ID sublayer and the forwarding sublayer. In the ID sublayer, the ID is mapped to the corresponding locator. The forwarding sublayer forwards the packet based on the locator.

LIN6ID, LIN6 generalized ID, and LIN6 Address

Figure 2 shows the LIN6 generalized ID, the LIN6 address, and the IPv6 address. In LIN6, a node has at least one global unique identifier called the LIN6ID. The length of LIN6ID is 64 bits. The LIN6 generalized ID is composed of the LIN6 prefix and the LIN6ID. The LIN6 prefix is a 64-bit constant value.  Thus, the LIN6 generalized ID remains unchanged even if the node moves to another subnet. The application layer and the transport layer use the LIN6 generalized ID to specify the node.

The LIN6 address is composed of the network prefix and the LIN6ID. The ID sublayer maps the LIN6ID to the network prefix of the subnet to which the node is connected. The forwarding sublayer forwards the packet based on the LIN6 address. From the format viewpoint, the format of the LIN6 address is the same as the IPv6 address.

Transmission and Reception Procedures in LIN6

Figure 3 shows the transmission and reception procedures in LIN6. The left side of the figure shows the transmission procedure. The transport layer specifies the target node by the LIN6 generalized ID. In the ID sublayer, the LIN6ID is extracted from the LIN6 generalized ID and the LIN6ID is mapped to the corresponding network prefix. The LIN6 address is generated by concatenating the network prefix and the LIN6ID. The forwarding sublayer forwards the packet to the target node.

The right side of the figure shows the reception procedure. The ID sublayer extracts the LIN6 ID from the LIN6 address and generates the LIN6 generalized ID by concatenating the LIN6 prefix and the LIN6ID. As a result, the LIN6 generalized ID is passed to the transport layer.

Thus, from the transport layer viewpoint, the packet is transmitted between the LIN6 generalized IDs, which remain unchanged even if the nodes move to another subnet.

Registration and Transmission Procedure in LIN6

LIN6 introduces an agent called the Mapping Agent (MA) that manages the mapping between the LIN6ID and the corresponding network prefix. Figure 4 shows the registration and transmission procedure in LIN6.

  1. The mobile node (mn.ics.keio.ac.jp) registers its LIN6ID and the network prefix with the MA by the Mapping Update message.
  2. When the CN tries to send a packet to the MN, it first sends a query to the DNS to obtain the LIN6ID of the MN. In addition to the LIN6ID of the MN, the CN can obtain the IPv6 address of the MA that manages the mapping of the MN.
  3. The CN sends a query to the MA to obtain the network prefix of the MN.
  4. The CN generates the LIN6 address of the MN by concatenating the network address obtained from the MN and the LIN6ID of the MN, and then sends the packet to the MN.

When the MN moves to another subnet, the MN sends the Mapping Update message to the MA to update the mapping and sends a Mapping Refresh message to the CN. Upon receiving the Mapping Refresh message, the CN sends a query to the MN again to update its cache of MN’s mapping.

Network Mobility Support

In addition to node mobility, LIN6 can support network mobility in which a set of nodes that compose a network move together in the Internet. Since there is trade-off between the number of signaling messages and optimized routing in network mobility support, LIN6 aims at good balance of them. Table 1 shows the comparison of LIN6 and other proposals.

  1. In LIN6, the packet to a mobile node is routed on optimal path while the packet to a mobile network is relayed only once regardless of the nested level.
  2. In LIN6, the number of signaling messages when a mobile network moves is irrespective to the number of the nodes in the mobile network.
  3. LIN6 can support ordinary IPv6 nodes.
  4. LIN6 is tolerant to crash of the location management agents (MAs) because the MAs can be distributed.

[/lang_en-us]

Posted In: