28 NTMobile Java Proposal and Implementation of Java Wrapper for NTMobile ( : ) :

Similar documents
Dual Stack Virtual Network Dual Stack Network RS DC Real Network 一般端末 GN NTM 端末 C NTM 端末 B IPv4 Private Network IPv4 Global Network NTM 端末 A NTM 端末 B

IPSJ SIG Technical Report Vol.2015-DPS-163 No.4 Vol.2015-MBL-75 No /5/28 IEEE Android 1,a) 1,b) 2 1 IP NTMobile Network Traversal with Mo

赤堀蒼磨, 納堂博史, 鈴木秀和, 内藤克浩, 渡邊晃 名城大学理工学部 愛知工業大学情報科学部

PowerPoint プレゼンテーション

Alliance [1] HNW; Home Network DLNA HNW IPv4 NAT HNW DMS Digital Media Server DLNA DLNA SIP Session Initiation Protocol [2] HNW [3], [4], [5] Web DMS

NAT-f SIP NAT 1 1, 2 1 IP SIP NAT NAT NAT NAT-f NAT-free protocol NAT-f SIP Session Initiation Protocol NAT-f SIP NAT Researches on NAT traversal for

, NAT,, (NAT ) 9) NAT, Mobile PPC 10) Mobile PPC, IPv4,, NAT, IP, IP, Mobile PPC IP, NTMobile(NAT Traversal with Mobility) NTMobile, NTMobile (DS) IP,

2ACL DC NTMobile ID ACL(Access Control List) DC Direction Request DC ID Access Check Request DC ACL Access Check Access Check Access Check Response DC

IPSJ SIG Technical Report NTMobile SIP SIP Session Initiation Protocol IP NAT Network Address Translation NTMobile Network Traversal with Mo

NTMobile SIP 1 SIP Session Initiation Protocol IP IP NAT Network Address Translation NTMobile Network Traversal with Mobility NTMobile RST Relay Serve

NTMobile LAN NT- Mobile(Network Traversal with Mobility) [1] NTMobile LAN 2. NTMobile NTMobile NTMobile NTM IP DC(Direction Coordinator)

IP IPv4-IPv6

中村隼大 鈴木秀和 内藤克浩 渡邊晃 名城大学理工学部愛知工業大学情報科学部

IPSJ SIG Technical Report IPv4 IP IP 2011 IANA Internet Assigned Numbers Authority *1 IPv4 RIR Regional Internet Registry IPv4 [1] IPv4 NAT Network Ad

WebRTC P2P,. Web,. WebRTC. WebRTC, P2P, i

平成18年度電気関係学会東海支部連合大会

DEIM Forum 2019 I7-2 WebRTC, UCLA Computer Science Department 3803 Boelter Hall, Los Angeles, CA

LAN LAN LAN LAN LAN LAN,, i

IPSJ SIG Technical Report * Wi-Fi Survey of the Internet connectivity using geolocation of smartphones Yoshiaki Kitaguchi * Kenichi Nagami and Yutaka


Vol.54 No (June 2013) GSRAv2 1,a) 1,b) 1,c) 1,d) , IPsec-VPN SSL-VPN OpenVPN PacketiX VPN GSRA Group-based Secure Remote

Vol. 52 No (Sep. 2011) NAT 1, IPsec DPRP Dynamic Process Resolution Protocol DPRP NAT Network Address Translation NAT-f NAT-free pr

1 I/F I/F 1 6) MobileIP 7) 8) MN: Monile Node MN AR Mobility Anchor Point(MAP) MobileIP HMIP HMIP HA-MAP MN MAP MN MAP HMIP MAP MN 2 MobileIP Mo


WMN Wi-Fi MBCR i

1 Table 1: Identification by color of voxel Voxel Mode of expression Nothing Other 1 Orange 2 Blue 3 Yellow 4 SSL Humanoid SSL-Vision 3 3 [, 21] 8 325

untitled

Web Web Web Web i

wide93.dvi

PeerPool IP NAT IP UPnP 2) Bonjour 3) PeerPool CPU 4) 2 UPnP Bonjour PeerPool CPU PeerPool PeerPool PPv2 PPv2 2. PeerPool 2.1 PeerPool PeerPool PoolGW

21 VoIP An encrypted VoIP communication system for mobile telephones

WebRTC P2P Web Proxy P2P Web Proxy WebRTC WebRTC Web, HTTP, WebRTC, P2P i

fiš„v5.dvi

[1] [2] [3] (RTT) 2. Android OS Android OS Google OS 69.7% [4] 1 Android Linux [5] Linux OS Android Runtime Dalvik Dalvik UI Application(Home,T

IPv6における

wide97.dvi


IPv4aaSを実現する技術の紹介

17 Proposal of an Algorithm of Image Extraction and Research on Improvement of a Man-machine Interface of Food Intake Measuring System

IP IP DHCP..

25 About what prevent spoofing of misusing a session information

スライド 0

GPGPU

ルータ(IPv6)掲示用池田.PDF

P2P P2P peer peer P2P peer P2P peer P2P i

, IT.,.,..,.. i

IPSJ SIG Technical Report , 2 Andorid Capture-A-Moment Capture-A-Moment Capturing System by SmartPhone to Record Real-Time Scene Kohei Takada,

i TCP/IP NIC Intel 3com NIC TCP/IP *1 20 IPv4 IPv6 IPv6 TCP/IP TCP/IP *1 3

3_39.dvi

IPSJ SIG Technical Report Vol.2014-EIP-63 No /2/21 1,a) Wi-Fi Probe Request MAC MAC Probe Request MAC A dynamic ads control based on tra

内閣官房情報セキュリティセンター(NISC)

Title: WIDE WG 2010 Author(s):,,, Date:

untitled

Web Basic Web SAS-2 Web SAS-2 i


IPSJ SIG Technical Report Vol.2011-IOT-12 No /3/ , 6 Construction and Operation of Large Scale Web Contents Distribution Platfo

NATディスクリプタ機能

,., ping - RTT,., [2],RTT TCP [3] [4] Android.Android,.,,. LAN ACK. [5].. 3., 1.,. 3 AI.,,Amazon, (NN),, 1..NN,, (RNN) RNN

(Microsoft PowerPoint - 2.\(\220\274\222J\202\263\202\361\)JANOG ppt [\214\335\212\267\203\202\201[\203h])

,,.,.,,.,.,.,.,,.,..,,,, i

ア 接続 管理 ーバ ー GPS インター ッ S C バス位置情報 バス ー ータ ー バス運行情報 & ニ ース 1 S バス停 ー C コンセン ータ CATV/FTTH GPS Web 2.2 Linux GPS Linux GPS c 2015 Infor

ヤマハ ルーター ファイアウォール機能~説明資料~

AirMac ネットワーク構成の手引き

Wi-Fi Wi-Fi Wi-Fi Wi-Fi SAS SAS-2 Wi-Fi i

untitled

Mac OS X Server QuickTime Streaming Server 5.0 の管理(バージョン 10.3 以降用)

Web Web Web Web Web, i

Input image Initialize variables Loop for period of oscillation Update height map Make shade image Change property of image Output image Change time L

VNSTProductDes3.0-1_jp.pdf

TCP/IP IEEE Bluetooth LAN TCP TCP BEC FEC M T M R M T 2. 2 [5] AODV [4]DSR [3] 1 MS 100m 5 /100m 2 MD 2 c 2009 Information Processing Society of

"CAS を利用した Single Sign On 環境の構築"

rzat10pdf.ps

,,,,., C Java,,.,,.,., ,,.,, i

卒業論文2.dvi

B HNS 7)8) HNS ( ( ) 7)8) (SOA) HNS HNS 4) HNS ( ) ( ) 1 TV power, channel, volume power true( ON) false( OFF) boolean channel volume int

2011 NTT Information Sharing Platform Laboratories

Vol. 48 No. 4 Apr LAN TCP/IP LAN TCP/IP 1 PC TCP/IP 1 PC User-mode Linux 12 Development of a System to Visualize Computer Network Behavior for L

total-all-nt.dvi

SA46T:IPv4 IPv6 IPv4 APNIC RIR IPv4 IPv4 IPv4 IPv6 only IPv4 SA46T SA46T 2 (1) IPv4 IPv6 (2) IPv6 IPv4 4.3 IPv4 IPv6 LAN SA46T SA46T SA46T IPv6 IPv4 I

Microsoft PowerPoint - ykashimu_dslite_JANOG26_rev

( ) ( ) Asian Institute of Technology (AIT) Adjunct Assistant Professor ( ) IT

AV 1000 BASE-T LAN 90 IEEE ac USB (3 ) LAN (IEEE 802.1X ) LAN AWS (Amazon Web Services) AP 3 USB wget iperf3 wget 40 MBytes 2 wget 40 MByt

23 Fig. 2: hwmodulev2 3. Reconfigurable HPC 3.1 hw/sw hw/sw hw/sw FPGA PC FPGA PC FPGA HPC FPGA FPGA hw/sw hw/sw hw- Module FPGA hwmodule hw/sw FPGA h

Android LAN 1 1,, Google Android. Android, Android,. Android x86 CPU,,,. A study of performance improvement of a wireless LAN bases on Android termina

LAN

The 15th Game Programming Workshop 2010 Magic Bitboard Magic Bitboard Bitboard Magic Bitboard Bitboard Magic Bitboard Magic Bitboard Magic Bitbo

PowerPoint プレゼンテーション

3. LISP B EID RLOC ETR B 4. ETR B ITR A 1: LISP 5. ITR A B EID RLOC 6. A SYN 7. ITR A ITR A B EID RLOC SYN ITR A RLOC ETR B RLOC 8. ETR B SYN ETR B B

template.dvi

28 Docker Design and Implementation of Program Evaluation System Using Docker Virtualized Environment

<Documents Title Here>

2). 3) 4) 1.2 NICTNICT DCRA Dihedral Corner Reflector micro-arraysdcra DCRA DCRA DCRA 3D DCRA PC USB PC PC ON / OFF Velleman K8055 K8055 K8055

BIG‑IP Access Policy Manager | F5 Datasheet

ActionScript Flash Player 8 ActionScript3.0 ActionScript Flash Video ActionScript.swf swf FlashPlayer AVM(Actionscript Virtual Machine) Windows

組込みシステムシンポジウム2011 Embedded Systems Symposium 2011 ESS /10/20 FPGA Android Android Java FPGA Java FPGA Dalvik VM Intel Atom FPGA PCI Express DM

,,.,,., II,,,.,,.,.,,,.,,,.,, II i

IPSJ SIG Technical Report NetMAS NetMAS NetMAS One-dimensional Pedestrian Model for Fast Evacuation Simulator Shunsuke Soeda, 1 Tomohisa Yam

名称未設定

TCP/IP Internet Week 2002 [2002/12/17] Japan Registry Service Co., Ltd. No.3 Internet Week 2002 [2002/12/17] Japan Registry Service Co., Ltd. No.4 2

DTN DTN DTN DTN i

Transcription:

28 NTMobile Java Proposal and Implementation of Java Wrapper for NTMobile ( : 130441077) : 29 2 10

NTMobile Network Traversal with Mobility NTMobile Linux NTMobile C Java NTMobile Java Java JNA Java Native Access NTMobile Java Java API NTMobile Abstract NTMobile(Network Traversal with Mobility) is a next generation technology which realizes mobility and connectivity simultaneously. We implemented previous Studies about NTMobile to Linux Kernel. Currently, it is being ported to Applications. This is called NTMobile Framework. NTMobile Framework is coded in C-language. However, Application is coded in Java frequently. Therefore, in this study, we propose Java Wrapper for NTMobile Framework and present the results of implementation. JNA(Java Native Access) makes it possible to use NTMobile Framework Library on Java Wrapper. Another thing, an Application developer realizes that NTMobile Communication with Java API by using Java Wrapper. i

1 1 2 Java 3 2.1 JNA Java Native Access............................... 3 2.2 Java...................................... 4 3 NTMobile 6 3.1 NTMobile.................................... 6 3.2 NTMobile.................................... 6 3.3 NTMobile.................................... 7 3.3.1................................... 7 3.3.2................................... 7 3.3.3................................. 8 3.4 NTMobile............................... 8 4 NTMobile Java 12 4.1...................................... 12 4.2..................................... 12 5 15 5.1......................................... 15 5.2......................................... 15 6 18 19 21 23 iii

1 IP IP IP IPv4 NAT Network Address Translation NAT NAT NAT NAT NAT IP IPv6 IPv6 IPv4 IPv4 IPv6 IPv4 MIPv4 Mobile IPv4 [1] MIPv6 Mobile IPv6 [2] DSMIP Dual Stack Mobile IPv6 [3] HA Home Agent NAT STUN Session Traversal Utilities for NATs [4] TURN Traversal Using Relay around NAT [5] ICE Interactive Connectivity Establishment [6,7] STUN TURN ICE NAT NTMobile Network Traversal with Mobility [8 10] NTMobile IP IP NAT IP IPv4 /IPv4 /IPv6 NTMobile Linux NTMobile 1

NTMobile [11] NTMobile C Java Java NTMobile NTMobile Java NTMobile Java Java API NTMobile NTMobile NTMobile Java Java NTMobile NTMobile 2 Java Java 3 NT- Mobile 4 NTMobile Java 5 Java 6 2

2 Java JNA Java Native Access Java 2.1 JNA Java Native Access JNA 1 JNA API C Java API JNA 2 (i) (ii) (i) Java 1 C Java JNA Native loadlibrary JNA loadlibrary Java アプリケーション JNA 共有ライブラリ 1 (ii) API Java 2 JNA C 1 https://github.com/java-native-access 3

Java C Java インターフェース method 1 method 2 method 3 method n マッピング C 言語 共有ライブラリ method 1 method 2 method 3 method n 2 (i) (ii) Java C 2.2 Java Java 2.1 JNA 3 Java int Integer 2 Java int String int Integer tostring(int i) 3 int 4330 tostring(4330) Integer Integer String 4330 2 https://docs.oracle.com/javase/8/docs/api/java/lang/integer.html 4

int 型 Integer クラス 4330 int 型 4330 4330 String 型 型変換 4330 String 型 4330 4330 3 int 5

3 NTMobile NTMobile 3.1 NTMobile NTMobile IP IP IP IP 3.2 NTMobile 4 NTMobile NTMobile NTMobile NTM NTM DC Direction Coordinator RS Relay Server DC RS NTMobile NTM IP IP DC DNS NTM NAT DC Keep Alive NAT IP IP IP IP RS RS RS 1 6

NAT Router General Communication Encrypted Communication Through UDP Tunnel DC RS Internet NAT Router Wi-Fi Handover GN RS DC 4G Network NTM Node (fixed Node) NTM Node (after move) NTM Node (before move) 4 NTMobile 3.3 NTMobile NTM MN Mobile Node NTM CN Correspondent Node NTM N IPv4 RIPN IPv4 VIPN NTM N DC DCN 3.3.1 5 MN DCMN RIPMN DCMN MN MN VIPMN VIPMN DC Keep Alive 3.3.2 6 MN DCMN CN DCMN DNS DCCN DCCN CN DCMN MN CN MN CN MN CN DCMN MN CN 7

MN DCMN Registration Request RIPMN Application ID Registration Response VIPMN UDP Keep Alive 5 MN CN NAT NAT RS MN/CN RS 3.3.3 7 MN IP VIPMN VIPCN IP NTMobile IP RIPMN RIPCN CN MN CN NTMobile IP CN MN CN IP IP 3.4 NTMobile 8 NTMobile NTMobile API NTMobile NTMobile NTMobile API 8

MN DCMN DCCN CN Direction Request FQDNCN Node Information Request FQDNCN Node Information Response CN s Information Route Direction Route Direction NTM ACK NTM ACK Route Direction Tunnel Request Tunnel Response UDP Tunnel 6 ntmfw ntm init ntmfw getaddrinfo UDP / ntmfw sendto/ntmfw recvfrom TCP / ntmfw send/ntmfw recv ntmfw ntm init 5 ntmfw getaddrinfo 6 ntmfw sendto/ntmfw recvfrom ntmfw send/ntmfw recv 9

RIP:RIPMN VIP:VIPMN RIP:RIPCN VIP:VIPCN MN CN Application NTMobile NTMobile Application UDP Tunnel VIPMN VIPCN RIPMN RIPCN VIPMN VIPCN VIPMN VIPCN UDP Tunnel VIPMN VIPCN RIPMN RIPCN VIPMN VIPCN VIPMN VIPCN 7 10

Application NTMobile Framework NTMobile Framework Socket API lwip Library Capuslated Module Negotiation Module Tunnel Module Kernel Socket 8 NTMobile 11

4 NTMobile Java NTMobile Java NTMobile NTMobile Java JNA Java Native Access Java C Java NTMobile Java NTMobile Java API NTMobile 4.1 9 NTMobile Java Java 3 (i) api (ii) net (iii) structure (i) api NTMobile API 3.3.1 3.3.2 ntmfw ntm init ntmfw getaddrinfo api (ii) net Java API DatagramSocket NTMobile net Java API Java API DatagramSocket 1 setdatagramsocketimplfactory (iii) structure NTMobile Java structure NTMobile 4.2 Java NTM 10 Java NTMobile ntmfw ntm init ntmfw getaddrinfo UDP TCP 1 https://docs.oracle.com/javase/8/docs/api/java/net/datagramsocket.html 12

Java ラッパー api net structure 9 NTMobile Java ntmfw ntm init init ntmfw getaddrinfo getbyname api Java NTMobile ntmfw ntm init ntmfw getaddrinfo Java Java api init getbyname Java C JNA NTMobile ntmfw ntm init ntmfw getaddrinfo Java API Java Java API Java NTMobile NTMobile 13

Java アプリケーション Java ラッパー api net structure Java API JNA NTMobile フレームワーク 10 Java NTM 14

5 4 NTMobile Java NTMobile Java NTMobile NTM NTMobile Java NTMobile 5.1 1 2 NTM 11 1 VMware Workstation Player 1 DC MN CN DC MN CN IPv4 NTMobile Java 1 OS CPU Memory Windows 10 64bit Intel Core i7-4770 3.40GHz 8.00GB 2 NTM MN CN OS Ubuntu 14.04 32bit Ubuntu 14.04 32bit Linux Kernel 3.13.0-24-generic 3.13.0-24-generic CPU 1Core 1Core Memory 2.00GB 2.00GB 5.2 MN CN 3 4 11 3 4 1 http://www.vmware.com 15

Private Network MN CN DC 11 12 3 4 MN CN Java System 2 nanotime MN CN 7 2 5 2 Java 3 4 Linux NTMobile Java API UDP DatagramSocket send/receive / 12 Java NTMobile Linux 3 NTMobile [ms] NTMobile [ms] Java - 0.13 NTMobile - 2.91 Linux 0.07 0.07 0.07 3.11 4 NTMobile [ms] NTMobile [ms] Java - 0.16 NTMobile - 2.37 Linux 0.01 0.01 0.01 2.54 3 NTMobile 3.1 NTMobile Java 2 https://docs.oracle.com/javase/8/docs/api/java/lang/system.html 16

Java アプリケーション Java ラッパー Javaラッパー api net structure Java API JNA NTMobile フレームワーク NTMobile フレームワーク Linux Linux 12 0.13 4 NTMobile 2.5 NTMobile Java 0.16 NTMobile / 17

6 NTMobile Java Java NTMobile Java API NTMobile Java Java NTMobile Linux NTMobile Java Java NTMobile Java Java API NTMobile 18

19

[1] Perkins, C.: IP Mobility Support for IPv4, RFC 5944, IETF (2010). [2] Perkins, C., Johnson, D. and Arkko, J.: Mobility Support in IPv6, RFC 6275, IETF (2011). [3] Soliman, H.: Mobile IPv6 Support for Dual Stack Hosts and Routers, RFC 5555, IETF (2009). [4] Rosenberg, J., Mahy, R., Matthews, P. and Wing, D.: Session Traversal Utilities for NAT(STUN), RFC 5389, IETF (2008). [5] Mahy, R., Matthews, P. and Rosenberg, J.: Traversal Using Relays around NAT(TURN)): Relay Extensions to Session Traversal Utilities for NAT(STUN), RFC 5766, IETF (2010). [6] Rosenberg, J.: Interactive Connectivity Establishment(ICE): A Protocol for Network Address Translator(NAT) Traversal for Offer/Answer Protocols, RFC 5245, IETF (2010). [7] Westerlund, M. and Perkins, C.: IANA Registry for Interactive Connectivity Establishment(ICE) Options, RFC 6336, IETF (2011). [8] NTMobile Vol. 54, No. 1, pp. 367 379 (2013). [9] NTMobile Vol. 54, No. 1, pp. 380 397 (2013). [10] IPv4/IPv6 NTMobile Vol. 54, No. 2013, pp. 2288 2299 (2013). [11] Naito, K., Kamienoo, K., Suzuki, H., Watanabe, A., Mori, K. and Kobayashi, K.: End-to-end IP mobility platform in application layer for ios and Android OS, Proc. of IEEE CCNC (2014). 21

1 NTMobile SIP IPv4 28 Vol. 2016 B2-5, Sep. 2016. 23