• 検索結果がありません。

IP ネットワークをフラット化する通信アダプターの提案と実装

N/A
N/A
Protected

Academic year: 2021

シェア "IP ネットワークをフラット化する通信アダプターの提案と実装"

Copied!
49
0
0

読み込み中.... (全文を見る)

全文

(1)

IP

ネットワークをフラット化する通信アダプターの提案と実装

尾久史弥1 鈴木秀和1 内藤克浩2 渡邊晃1

1名城大学大学院理工学研究科 2愛知工業大学情報科学部

1 はじめに

IPインフラは隅々まで普及し,ほとんどのシステムが IPネットワークを前提として構築されている.しかし,

IPネットワークには,NAT越え問題,IPv4/IPv6非互換 性,移動透過性,セキュリティなどに係る様々な課題が ある.これらの課題を除去し,実ネットワークの制約に 左右されないフラットなネットワークを構築できると有 用である.

フラットなネットワークを構築するための技術とし て,DSMIPv6(Dual Stack IPv6), HIP(Host Identity Proto- col)NTMobile(Network Traversal with Mobility)[1] ある.DSMIPv6HIPは,それぞれ固有の課題を抱え るとともに,カーネル空間に実装するのが前提であるた め,スマートフォンのような端末への適用が困難である.

NTMobileは,上記のような課題は無く,スマートフォ ンにも適用できるため,システムを構築する上で有用な 技術である.しかし,組み込み機器やアプリケーション サーバーのようにプログラムの改造が一切できない通 信装置が存在する.そこで,これらの通信装置に対して も,NTMobileの利用を可能とするアダプターの提案と 実装を行った.

2 既存技術の概要と課題 2.1 DSMIPv6

DSMIPv6は,MobileIPv6 IPv4/IPv6混在環境に 拡張した技術である.HA(Home Agent) IPv4/IPv6 デュアルスタックネットワーク上に設置し,移動端末 MN(Mobile Node)との間でトンネルを構築することに より,あらゆる通信環境での通信接続性と移動透過性を 実現することができる.しかし,移動端末がグローバル IPv4アドレスを消費するという課題があり,グローバ IPv4アドレスが枯渇した今日においては,現実的な 方式ではない.また,カーネルにて本機能をサポートす るのが前提であり,スマートフォンでは利用できない.

Proposal and Implementation of Communication Adapter that makes IP Network Flat

Fumiya Ogyu†1, Hidekazu Suzuki†2, Katsuhiro Naito†2 and Akira Watanabe

1Graduate School of Science, Meijo University

†2Faculty of Information Science, Aichi Institute of Technology

2.2 HIP

HIPは,ネットワーク層とトランスポート層の間に,新 たにHIP層を定義し,端末識別子としてHI(Host Identi- fir)を用いるのが特徴で,既存のNAT越え技術やセキュ リティ技術を組み合わせて,通信接続性と移動透過性を 実現する.しかし,NATが存在する環境では移動透過 性の実現のためのオーバーヘッドが大きい.また,カー ネルを改造する必要があるため,スマートフォンでは適 用できない.

3 NTMobile

NTMobileは,システム内で重複しない仮想IPアド レス (VIPVirtual IP Address)を導入し,全ての通信 を実 IPアドレス(RIP : Real IP Address)でカプセル 化する.NTMobileを利用するには,NTMobile frame- work(NTMfw)[2]と呼ぶライブラリを利用してアプリ ケーションを開発する(以下,NTMappと呼ぶ)

NTMobileは,NTMappをインストールしたNTM 末と,NTM端末のVIPや位置情報等を管理し,UDP ンネルの構築指示を出すDC(Direction coordinator)で構 成される.通信開始時の名前解決をトリガとし,DC NTM端末の間でシグナリングを実行して最適なトンネ ル経路を構築する.以後の全ての通信は,VIPに基づい たパケットをRIPのパケットでカプセル化することに より通信を行う.

NTMobileは,DSMIPv6HIPが抱えるような課題 がなく,スマートフォンでも実現できる.ただし,組み 込み機器やアプリケーションサーバーなどは,プログラ ムの改造ができないため,NTMobileを利用できない課 題がある.

4 提案システム 4.1 アダプタの構成

本稿は,プログラムの改造が一切できない通信装置と ネットワークの間に直列に設置することにより,NTMo- bile通信を可能とするNTMA(NTMobile Adaptor)を提 案する.NTMAは,イニシエータ側(NTMAini),レス ポンダ側(NTMAr es)のどちら側でも利用できる.

NTMA NIC 2 枚 用 意 し ,一 方 を 一 般 端 末 GN(General Node) に,他方をIPネットワークに接続 する.以後イニシエータ側のGNGN1,レスポンダ 側のGNGN2とする.

(2)

4.2 動作シーケンス

1 に提案システムの動作シーケンスと通信パケッ トのアドレス遷移を示す.通信開始前に,NTMAini NTMAr es は,DCからVIPの割り当てを受け,GN1 GN2には,適切なIPアドレスを設定しておく.ま た,図1では,説明の簡略化のためにNATの存在及び NTNMobileシグナリングの詳細を省略している.

通信開始時にGN1は,NTMAr esFQDNをターゲッ トとするDNSクエリを送信する.NTMAini は,DNS クエリを受信後,NTMobileシグナリングを実行し,DC の指示の基でNTMAiniNTMAr es間でトンネル構築 をする.トンネル構築後にNTMAiniは,NTMAr es VIPr esDNSレスポンスに載せてGN1に返す.GN1 は,NTMAr esVIPr esを通信相手と認識してパケット を送信する.NTMAiniは,送信元RIPG N1VIPini 変換する.さらに,NTMAiniNTMAr esRIPでカプ セル化してNTMAr esへ送信する.NTMAr es はパケッ トを受信後して,デカプセル化する.その後,VIPr es RIPG N2に変換して,GN2へパケットを中継する.GN2 からの応答は,上記と逆の手順で中継する.

5 実装

2NTMAのモジュール構成図を示す.NIC0は,

ネットワーク側の端末との通信に使用し,NTMfwによ NTMobileのパケットを扱う.NIC1GNとの通信 に使用し,RAWソケットによりパケットをIPヘッダか ら受信して,データとして扱う.

NTMfwは,NTMobileシグナリングをGNに代わっ て実行する.また,通信パケットに対しては,NTMobile 通信を識別するNTMヘッダの生成/除去を行い,Linux カーネルにて,実IPパケットのカプセル/デカプセル 化処理を行う.NTMappは,NTMfwに対して初期化処 (Init)を指示する.GNからのDNSクエリに対して,

NTMfwにシグナリングを指示し,その結果をDNS スポンスとしてGNに送信する.さらに通信パケットに 対して,RAWソケットとNTMソケットを経由した中 継処理をする.

6 評価

6.1 動作検証

NTMAini Raspberry Pi上で実現し,NTMAr es LINUX PC上に実装した.NTMAini NTMAr esをそ れぞれNAT配下に設置し,GN1GN2に接続した.

GNは,一般のUDP/TCP通信を行うアプリケーショ ンを使用して動作検証を行い,NATが介在するネット ワークにおいても自由に通信を行えることを確認した.

6.2 性能評価

性能評価は,動作検証と同一条件で,Raspberry Pi 実装したNTMAを用いてパケットの中継時間を測定し

DNSクエリ

DNSレスポンス

パケット送信

NTMobileシグナリング GN1

RIPGN1

General Application

NTMAini RIPini VIPini

NTMA Application

SRC : RIPGN1, DST :VIPres

IPヘッダ オリジナル

IPヘッダ RIP : Real IP Adress VIP : Virtual IP Adress

SRC : RIPini, DST : RIPres SRC : VIPini, DST : VIPres

NTMAres RIPres VIPres NTMA Application

GN2 RIPGN2

General Application DC

SRC : RIPres, DST : RIPini SRC : VIPres, DST : VIPini

SRC : RIPGN2, DST : VIPini SRC : VIPini, DST : RIPGN2

SRC : VIPres, DST : RIPGN1

FQDNres

パケット送信

パケット送信

パケット送信

1 NTMAの通信シーケンスとパケットのアドレス遷移

Relay to GN Init

NTMfw

UDP Socket RAW Socket

NTMobile Socket

NIC1 NIC0

DNS Query/Response Packet UDP/TCP Packet Data flow

User Space Kernel Space

NTMapp

Packet Manipulation Modual

2 NTMAのモジュール構成

1 NTMAのパケット中継時間 区分 時間(us) GNからIPネットワーク 505 IPネットワークからGN 697

た.表1NTMAがパケットの中継に要した時間を示 す.GNからIPネットワーク,及びIPネットワークか GNへパケットを中継するのに要する時間は,それぞ 505マイクロ秒,697マイクロ秒であった.この時間 には,NTMobileによる暗号化/復号化処理も含まれる.

この結果により,アダプタが介在することによる伝送遅 延は,実用上問題ないことが分かった.

7 まとめ

本稿では,プログラムの改造が一切できない通信装置 に対して,NTMobileによるフラットなネットワーク上 で通信を行うことができるNTMAを提案した.実装及 び性能評価の結果,NTMAによる伝送遅延は少なく,実 用上問題ないことを確認した.

参考文献

[1]上醉尾一真ほか:情報処理学会論文誌,Vol54No10 pp2288–2299(2013).

[2] 納堂博史ほか:実用化に向けたNTMobileフレーム ワークの実装と評価,信学技報,Vol.116, No.509, pp.281- 288 (2017).

(3)

尾久 史弥 (1) 鈴木 秀和 (1) 内藤 克浩 (2) 渡邊 晃 (1)

(1)名城大学 理工学研究科 , (2)愛知工業大学 情報科学部

(4)

1

IP インフラが普及し,多くのシステムが IP 通信を利用

IP

ネットワークの現状

(5)

2

IP インフラが普及し,多くのシステムが IP 通信を利用

NAT越え問題 IPv4/IPv6の非互換性 移動透過性 セキュリティ

IP

ネットワークの現状

IPネットワークの課題

(6)

3

IP インフラが普及し,多くのシステムが IP 通信を利用

NAT越え問題 IPv4/IPv6の非互換性 移動透過性 セキュリティ

通信プロトコルレベルで課題を 解決できると有用

NTMobile (Network Traversal with Mobility) DSMIPv6 (Dual Stack Mobile IPv6)

HIP (Host Idetity Protocol)

IP

ネットワークの現状

IPネットワークの課題

解決策

技術例

H. Soliman: Mobile IPv6 Support for Dual Stack Hosts and Routers, RFC5555, IETF (2009).

R. Moskowitz, et al.: Host Identity Protocol Version 2 (HIPv2), RFC7401, Updated by RFC8002, IETF (2015).

(3)納堂博史, ほか: NTMobileの実用化に向けた統合的枠組の検討, 情報処理学会研究報告, Vol.2015-MBL-77, No.20, pp.1–8(2015).

(1) (2) (3)

(1) (2)

(7)

4

カーネル空間に改造が必要

既存技術との併用可能

Mobile IPv4の課題を引き継ぐ

通信開始時に経路探索のオーバーヘッドが大きい DSMIPv6 Mobile IPv4 と MobileIPv6 を統合した技術

IPv4/IPv6 混在環境において移動透過性を提供する

移動端末に IPv4 グローバルを割り当てる必要がある HIP エンドポイント間でのセキュリティプロトコル

概要

課題

概要 課題

共通の課題

(8)

宛 先:

RIPdst

送信元:

RIPsrc

5

宛 先

:VIPdst

送信元:VIPsrc

DATA NTMobile

パケットフォーマット

仮想

IP

パケット 実

IP

パケット

仮想IPネットワーク

アプリケーションレイヤで利用可能

特徴

DSMIPv6やHIPなどが抱える課題が存在しない

(9)

NTMobile framework(NTMfw)と呼ばれる通信ライブラリを利用 アプリケーション開発者は,NTMソケットAPIを利用する

6

ntmfw_getaddrinfo(...);

ntmfw_socket(...);

ntmfw_sendto(...);

ntmfw_recvfrom(...);

NTMobileアプリケーション

(10)

7

NTM

端末

A

NTM端末 B IPv4 Network NAT

NTM

端末

C NAT

DC RS

直接通信できない場合の 通信中継装置

NTM

端末

DC (Direction Coordinator) RS (Relay Server)

IPv6 Network IPv4 Network

Dual Stack Network

NTMfw

を実装した端末 仮想

IP

アドレスの配布,

通信経路の指示をする

(11)

NTM

端末

A

NTM端末 B IPv4 Network NAT

NTM

端末

C NAT

DC RS

NTMfw

を実装した端末 仮想

IP

アドレスの配布,

通信経路の指示をする

直接通信できない場合の 通信中継装置

NTM

端末

DC (Direction Coordinator) RS (Relay Server)

IPv6 Network IPv4 Network

Dual Stack Network

(12)

9

NTM

端末

A

NTM端末 B IPv4 Network NAT

NTM

端末

C NAT

DC RS

直接通信できない場合の 通信中継装置

NTM

端末

DC (Direction Coordinator) RS (Relay Server)

IPv6 Network IPv4 Network

Dual Stack Network

仮想

IP

アドレスの配布,

通信経路の指示をする

NTMfw

を実装した端末

(13)

直接通信できない場合の 通信中継装置

NTM

端末

DC (Direction Coordinator) RS (Relay Server)

NTM

端末

A

NTM端末 B IPv4 Network NAT

NTM

端末

C NAT

DC RS

IPv6 Network IPv4 Network

Dual Stack Network

仮想

IP

アドレスの配布,

通信経路の指示をする

NTMfw

を実装した端末

(14)

11

Virtual IP Network (Overlay Network)

NTM

端末

A

NTM端末 B IPv4 Network NAT

NTM

端末

C NAT

DC RS

IPv6 Network IPv4 Network

Dual Stack Network

IP ネットワーク上に

仮想IPネットワークを構築

(15)

Virtual IP Network (Overlay Network)

NTM

端末

A

NTM端末 B IPv4 Network NAT

NTM

端末

C NAT

DC RS

IPv6 Network IPv4 Network

Dual Stack Network

NTM 端末に仮想 IP アドレスと FQDNを割り当てる

FQDN : FQDNA

仮想

IP :VIPA

FQDN : FQDNB

仮想

IP :VIPB

FQDN : FQDNC

仮想

IP :VIPC

(16)

13

Virtual IP Network (Overlay Network)

NTM

端末

A

NTM端末 B IPv4 Network NAT

NTM

端末

C NAT

DC RS

IPv6 Network IPv4 Network

Dual Stack Network

仮想 IP ネットワークに NTM端末をマッピング

NTM

端末

A

NTM

端末

B

NTM端末 C

(17)

Virtual IP Network (Overlay Network)

NTM

端末

A

NTM端末 B IPv4 Network NAT

NTM

端末

C NAT

DC RS

IPv6 Network IPv4 Network

Dual Stack Network

NTMobileプロトコルにより

両エンド端末間でエンドツーエンド通信

NTM

端末

A

NTM

端末

B

NTM端末 C

(18)

15

Virtual IP Network (Overlay Network)

NTM

端末

A

NTM端末 B IPv4 Network NAT

NTM

端末

C NAT

DC RS

IPv6 Network IPv4 Network

Dual Stack Network

Hand Over

NTM

端末

A

移動端末を仮想IPネットワークに 再度マッピングすることで通信を継続

NTM

端末

A

NTM

端末

B

NTM端末 C

(19)

16

組み込み型機器 プログラムの書き換えが不可能

アプリケーションサーバー アプリケーションの改造が許可されない 既存の機器が NTMobile 通信を使いたい

アプリケーションの改造が許可されない通信装置の存在

(20)

17

組み込み型機器 プログラムの書き換えが不可能

アプリケーションサーバー アプリケーションの改造が許可されない 既存の機器が NTMobile 通信を使いたい

NTMobile を利用できない通信装置 (GN : General Node) でも サーポートを可能にできると有用

研究目的

NTMobile Adaptor(NTMA) の提案

アプリケーションの改造が許可されない通信装置の存在

(21)

Virtual IP Network (Overlay Network)

GN1

GN2 IPv4 Network NAT

NTM

端末

NAT

DC RS

IPv6 Network IPv4 Network

Dual Stack Network

NTMAとGNを直接つなげることで GN を仮想 IP ネットワークにマッピング

GN1 GN2

NTM端末 C

NTMA

NTMA

(22)

19

NTMobile の仮想 IP パケット生成処理に着目

仮想IPヘッダ生成フェーズをNTMfwの機能から 分離して一般端末で代行

1.

2.

(23)

20

仮想IPヘッダ生成フェーズをNTMfwの機能から 分離して一般端末で代行

1.

2.

NTMobile の仮想 IP パケット生成処理に着目

(24)

NTMobile

アプリケーション

• NTM

ソケット

API

で記述されたアプリケーション

NTMソケットAPI

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMfw

NTMobile Application

仮想

IP

スタック

IP UDP NTM

仮想

IP MAC

仮想

IP

仮想

TCP

データ

データ

NTM

仮想

IP MAC

(25)

22

NTM

ソケット

API

• BSD

ソケット

API

互換のソケット

API

アプリケーションデータを仮想

IP

スタックへ渡す

NTMソケットAPI

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMfw

NTMobile Application

仮想

IP

スタック

IP UDP NTM

仮想

IP MAC

仮想

IP

仮想

TCP

データ

データ

NTM

仮想

IP MAC

(26)

23

仮想

IP

スタック

アプリケーションデータから仮想

TCP/IP

パケットを生成

NTMソケットAPI

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMfw

NTMobile Application

仮想

IP

スタック

IP UDP NTM

仮想

IP MAC

仮想

IP

仮想

TCP

データ

データ

NTM

仮想

IP MAC

(27)

24

パケット操作モジュール

• NTM

ヘッダの付与

• MAC

付与

/

検証等

NTMソケットAPI

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMfw

NTMobile Application

仮想

IP

スタック

IP UDP NTM

仮想

IP MAC

仮想

IP

仮想

TCP

データ

データ

NTM

仮想

IP MAC

(28)

25

BSD

ソケット

API

• C

言語のソケット

API

データパケットの送受信

(

カプセル化

/

デカプセル化

)

NTMソケットAPI

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMfw

NTMobile Application

仮想

IP

スタック

IP UDP NTM

仮想

IP MAC

仮想

IP

仮想

TCP

データ

データ

NTM

仮想

IP MAC

(29)

26

仮想

IP

スタック

アプリケーションデータから仮想

TCP/IP

パケットを生成

NTMソケットAPI

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMfw

NTMobile Application

仮想

IP

スタック

IP UDP NTM

仮想

IP MAC

仮想

IP

仮想

TCP

データ

データ

NTM

仮想

IP MAC

(30)

27

仮想IPヘッダ生成フェーズをNTMfwの機能から 分離して一般端末で代行

1.

2.

NTMobile の仮想 IP パケット生成処理に着目

(31)

IP

スタック

28

NTMfw

の変更点

NTMソケットAPI

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMfw

仮想

IP

スタック

• NTMfw

から仮想

IP

スタックの処理をスキップ

GN

IP TCP

NIC

NTMobile Adaptor

RAW

ソケット

仮想

IP

スタックの処理を

GN

で代行

(32)

29

RAW

ソケット

生のパケットをダイレクトに送受信

NTMソケットAPI

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMfw NTMobile Adaptor

仮想

IP

スタック

RAW

ソケット

自インターフェース宛以外のパケットも送受信できるように設定

IP TCP

NIC IP

スタック

GN

(33)

30

NTMA

アプリケーション

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMobile Adaptor

IP UDP NTM

仮想

IP MAC

仮想

IP

仮想

TCP

データ

NTM

仮想IP

MAC

NTM

ソケット

API

仮想

IP

スタック

NTMfw

• NTM

端末との通信は,仮想

IP

スタックをスキップする

NTM

ソケット

API

で送受信

• GNとの通信は,RAWソケットで送受信

(34)

31

NTMfw

ソケット

API

仮想

IP

スタックの処理をスキップする

NTMfw

API

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMobile Adaptor

IP UDP NTM

仮想

IP MAC

仮想

IP

仮想

TCP

データ

NTM

仮想IP

MAC

NTMソケットAPI

仮想

IP

スタック

パケット操作モジュールへ処理を渡す

NTMfw

(35)

32

パケット操作モジュール

• NTMfw

と同様の処理

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMobile Adaptor

IP UDP NTM

仮想

IP MAC

仮想

IP

仮想

TCP

データ

NTM

仮想IP

MAC

NTMソケットAPI

仮想

IP

スタック

NTMfw

(36)

33

BSD

ソケット

API

• NTMfw

と同様の処理

トンネルテーブル パケット操作 モジュール

ネゴシエーション モジュール

BSD

ソケット

API NIC

NTMobile Adaptor

IP UDP NTM

仮想

IP MAC

仮想

IP

仮想

TCP

データ

NTM

仮想IP

MAC

NTMソケットAPI

仮想

IP

スタック

NTMfw

(37)

34

GN1

RIP GN1

NTMAres RIP res

NTMAini DC RIP ini

GN1

RIP GN1

DNS

クエリ

NTMobile

シグナリング

DNS

レスポンス

パケット送信

NTMobile

通信

パケット送信

SRC:RIP GN1 ,DST:VIPres

SRC:VIP ini ,DST:RIP GN2

SRC:RIP GN2 ,DST:VIPini SRC:VIPres,DST:RIP GN1

パケット送信

SRC:VIP ini ,DST:VIP res

SRC:RIP ini ,DST:RIP res

SRC:VIP res ,DST:VIPini SRC:RIP res ,DST:RIP ini

NTMobile

通信

(38)

35

GN1

RIP GN1

NTMAres RIP res

VIP res

NTMAini DC RIP ini

VIP ini

FQDN res

GN1

RIP GN1

DNS

クエリ

NTMobile

シグナリング

DNS

レスポンス

パケット送信

NTMobile

通信

パケット送信

SRC:RIP GN1 ,DST:VIPres

SRC:VIP ini ,DST:RIP GN2

SRC:RIP GN2 ,DST:VIPini SRC:VIPres,DST:RIP GN1

パケット送信

SRC:VIP ini ,DST:VIP res

SRC:RIP ini ,DST:RIP res

SRC:VIP res ,DST:VIPini SRC:RIP res ,DST:RIP ini

NTMobile

通信

FQDN res

(39)

36

GN1

RIP GN1

NTMAres RIP res

VIP res

NTMAini DC RIP ini

VIP ini

FQDN res

GN1

RIP GN1

DNS

クエリ

NTMobile

シグナリング

DNS

レスポンス

パケット送信

NTMobile

通信

パケット送信

SRC:RIP GN1 ,DST:VIPres

SRC:VIP ini ,DST:RIP GN2

SRC:RIP GN2 ,DST:VIPini SRC:VIPres,DST:RIP GN1

パケット送信

SRC:VIP ini ,DST:VIP res

SRC:RIP ini ,DST:RIP res

SRC:VIP res ,DST:VIPini SRC:RIP res ,DST:RIP ini

NTMobile

通信

FQDN res

(40)

37

GN1

RIP GN1

NTMAres RIP res

VIP res

NTMAini DC RIP ini

VIP ini

FQDN res

GN1

RIP GN1

DNS

クエリ

NTMobile

シグナリング

DNS

レスポンス

パケット送信

NTMobile

通信

パケット送信

SRC:RIP GN1 ,DST:VIPres

SRC:VIP ini ,DST:RIP GN2

SRC:RIP GN2 ,DST:VIPini SRC:VIPres,DST:RIP GN1

パケット送信

SRC:VIP ini ,DST:VIP res

SRC:RIP ini ,DST:RIP res

SRC:VIP res ,DST:VIPini SRC:RIP res ,DST:RIP ini

NTMobile

通信

FQDN res

(41)

38

GN1

RIP GN1

NTMAres RIP res

VIP res

NTMAini DC RIP ini

VIP ini

FQDN res

GN1

RIP GN1

DNS

クエリ

NTMobile

シグナリング

DNS

レスポンス

パケット送信

NTMobile

通信

パケット送信

SRC:RIP GN1 ,DST:VIPres

SRC:VIP ini ,DST:RIP GN2

SRC:RIP GN2 ,DST:VIPini SRC:VIPres,DST:RIP GN1

パケット送信

SRC:VIP ini ,DST:VIP res

SRC:RIP ini ,DST:RIP res

SRC:VIP res ,DST:VIPini SRC:RIP res ,DST:RIP ini

NTMobile

通信

FQDN res

(42)

39

GN1

RIP GN1

NTMAres RIP res

VIP res

NTMAini DC RIP ini

VIP ini

FQDN res

GN1

RIP GN1

DNS

クエリ

NTMobile

シグナリング

DNS

レスポンス

パケット送信

NTMobile

通信

パケット送信

SRC:RIP GN1 ,DST:VIPres

SRC:VIP ini ,DST:RIP GN2

SRC:RIP GN2 ,DST:VIPini SRC:VIPres,DST:RIP GN1

パケット送信

SRC:VIP ini ,DST:VIP res

SRC:RIP ini ,DST:RIP res

SRC:VIP res ,DST:VIPini SRC:RIP res ,DST:RIP ini

NTMobile

通信

FQDN res

(43)

40

GN1

RIP GN1

NTMAres RIP res

VIP res

NTMAini DC RIP ini

VIP ini

FQDN res

GN1

RIP GN1

DNS

クエリ

NTMobile

シグナリング

DNS

レスポンス

パケット送信

NTMobile

通信

パケット送信

SRC:RIP GN1 ,DST:VIPres

SRC:VIP ini ,DST:RIP GN2

SRC:RIP GN2 ,DST:VIPini SRC:VIPres,DST:RIP GN1

パケット送信

SRC:VIP ini ,DST:VIP res

SRC:RIP ini ,DST:RIP res

SRC:VIP res ,DST:VIPini SRC:RIP res ,DST:RIP ini

NTMobile

通信

FQDN res

(44)

41

GN1

RIP GN1

NTMAres RIP res

VIP res

NTMAini DC RIP ini

VIP ini

FQDN res

GN1

RIP GN1

DNS

クエリ

NTMobile

シグナリング

DNS

レスポンス

パケット送信

NTMobile

通信

パケット送信

SRC:RIP GN1 ,DST:VIPres

SRC:VIP ini ,DST:RIP GN2

SRC:RIP GN2 ,DST:VIPini SRC:VIPres,DST:RIP GN1

パケット送信

SRC:VIP ini ,DST:VIP res

SRC:RIP ini ,DST:RIP res

SRC:VIP res ,DST:VIPini SRC:RIP res ,DST:RIP ini

NTMobile

通信

FQDN res

(45)

42

GN1

RIP GN1

NTMAres RIP res

VIP res

NTMAini DC RIP ini

VIP ini

FQDN res

GN1

RIP GN1

DNS

クエリ

NTMobile

シグナリング

DNS

レスポンス

パケット送信

NTMobile

通信

パケット送信

SRC:RIP GN1 ,DST:VIPres

SRC:VIP ini ,DST:RIP GN2

SRC:RIP GN2 ,DST:VIPini SRC:VIPres,DST:RIP GN1

パケット送信

SRC:VIP ini ,DST:VIP res

SRC:RIP ini ,DST:RIP res

SRC:VIP res ,DST:VIPini SRC:RIP res ,DST:RIP ini

NTMobile

通信

FQDN res

(46)

43

NAT越え

移動透過性

DC RS

NTM端末 GN NTMA

NAT NAT

NAT NAT

GN NTMA

GN

NTMA

NTM端末

DC RS

(47)

44

NTMAのパケット中継に要する時間

マイコン

Raspberry Pi3

OS Raspbian

Memory 1 GB

CPU 1.2 Ghz

ネットワーク

1000BASE-T

評価諸元

1 2

1 2

NTMA 中継時間

Wiresharkで 1 2

の時間取得

GN NTMA

NAT

NTM

端末

NAT

DC RS

Wireshark

SW Hub

ポート ミラーリング

1

2

(48)

45

GN

NTMA NTM端末

505us

パケット処理時間

505us

応答パケット処理時間

697us SW Hub

処理時間

358us

パケット送信

UDPトンネル通信

パケット処理時間

10 回の平均値

UDPトンネル通信

パケット送信 応答パケット処理時間

697us

* NTMobile

の暗号化 などの処理時間も含む

パケット処理時間

147us

応答パケット処理時間

339us

SW Hub

との処理時間を 比較しても非常に高速

(49)

◆ NTMobile アダプタの実現方式の検討

➢ 一般端末に NTMA を設置

• 一般通信を NTMobile 通信に変換

• 一般端末のプログラムに手を加えない

◆ 今後の方針

➢NTMAの実装の完了

46

参照

関連したドキュメント

Mobile IPv6 and Location Independent network for IPv6, which are mobile node com- munication support protocol , are proposed to support such a connection environment..

(例) IPv6 over IPv4, L2TP, IPsec, Mobile

We have been proposing Network Traversal with Mobility NTMobile that can achieve connectivity and mobility at the same time in IPv4 networks that use NAT.. In this paper,

Therefore we have proposed NAT-f (NAT-free protocol) which realizes NAT traversal problem, and Mobile PPC (Mobile Peer-to-Peer Communication) which realizes mobility to solve

本稿では, IPv4/IPv6 ネットワークにおいて移動透過性と NAT 越えを同時に実現する NTMobile ( Network Traversal with Mobility )

これらの課題を解決するため, NAT に改造を加えることなく NAT 越え問題の解決と移動 透過性を同時に実現する NTMobile ( Network Traversal with Mobility

( Network Traversal with Mobility ) [1][2] を提案してい る. NTMobile は,仮想 IP アドレスを用いており,アプリ ケーションには仮想 IP

z リソースの制限などから,全ての IPv6 ノードが Dual Stack になれるとは限らない.. → IPv6/IPv4