Design and Implementation of an Integration Platform for Heterogeneous Network Roaming Systems
碩士 === 國立交通大學 === 資訊工程系所 === 93 === As wireless networks and mobile terminal technologies advance, most mobile devices, such as notebooks, tablet PCs, PDAs, or smart phones, may have more than one network interface, including wired LAN, wireless LAN, GPRS, PHS, and even 3G, and can access Internet w...
Main Authors: | , |
---|---|
Other Authors: | |
Format: | Others |
Language: | zh-TW |
Published: |
2005
|
Online Access: | http://ndltd.ncl.edu.tw/handle/88849542452557838341 |
id |
ndltd-TW-093NCTU5392039 |
---|---|
record_format |
oai_dc |
collection |
NDLTD |
language |
zh-TW |
format |
Others
|
sources |
NDLTD |
description |
碩士 === 國立交通大學 === 資訊工程系所 === 93 === As wireless networks and mobile terminal technologies advance, most mobile devices, such as notebooks, tablet PCs, PDAs, or smart phones, may have more than one network interface, including wired LAN, wireless LAN, GPRS, PHS, and even 3G, and can access Internet with any appropriate interface. However, although the hardware of the mobile devices gradually becomes more and more mature, there is still lack of software that can manage these heterogeneous network interfaces and help users adopt the most suitable media to retain the ongoing sessions when mobile devices change the points of network attachment.
In this thesis, we present the design and implementation of a software platform for integrating multiple heterogeneous network interfaces on a mobile device of Microsoft Windows XP. The integration platform provides the functionalities of gathering the statuses of network interfaces, automatically selecting the most appropriate interface, routing/intercepting packets to/from a designated interface and retaining the ongoing sessions for the mobile device. Because interface selection is a complex decision depending on the connectivity, bandwidths and tariffs of the interfaces, and/or sometimes the user preferences, this thesis focuses only on the techniques issues of interface management and routings. For the demonstration purpose, we also implement a priority-based handoff decision software module, which operates in the user space, to select an appropriate interface automatically for the mobile device.
First, in order to select an appropriate interface, the handoff decision module needs to obtain the statuses of the network interfaces. The network statuses consists of layer-2 information, such as link status and signal strength, and layer-3 information, such as DHCP address, DHCP gateway, routing table, and ARP cache. The layer-3 information can be accessed by the handoff decision module by calling the IPHLPAPI library. However the layer-2 information provided by network interfaces can only be accessed by the NDIS drivers. Therefore we implement an NdisProt kernel driver to collect layer-2 information and provide interfaces for the user level program to acquire the layer-2 information. Furthermore, in order to speedup the handoff process, we also implement layer-2 triggers in NdisProt and hook layer-3 DHCP events with the IPHLPAPI library to reduce the waiting time for the handoff decision module to detect the changes in interface statuses.
Second, we also implement Mobile IP to support session continuity when a mobile device switches from one network interface to another. We adopt the co-located care-of address (Co-CoA) mode of Mobile IP so that our system can treat each network simply as an access network and does not need any supports from the network providers. However, in Co-CoA mode, the mobile IP software needs to encapsulate packets sent by user programs before routing the packets to a designated interface, and decapsulate packets received from an interface before sending the packets to user programs. Therefore, in order to intercept packets, either sent by a user level program or received from a network interface, from Windows NDIS framework for further encapsulation and decapsulation, we also develop two kernel drivers NdisFlt and IpFlt in the platform. Moreover, because Windows XP after the Service Pack 2 does not provide raw socket for the mobile IP software anymore to send the encapsulated/decapsulated packets, the mobile IP software also needs to perform Ethernet frame encapsulation itself and send the frame directly to the miniport driver of the designated interface.
Furthermore, mobile IP needs to bind the home IP address statically to one of the mobile device’s interfaces that may acquire Co-CoAs dynamically as the mobile device moves. Therefore the integration platform applies IP alias technique and binds the home IP address and a Care-of Address simultaneously with an interface card of the mobile device. However the Media Sense function of Windows NDIS will notify the TCP/IP protocol driver when an interface becomes inactive. Upon receiving the notification, the TCP/IP protocol driver will remove the IP address configuration of the inactive interface. In order to retain the home IP permanently, the integration platform also inserts an intermediate driver to prevent TCP/IP protocol driver from knowing the link status of the interface bound with the home IP address.
Finally, the integration platform also implements the IETF IP-in-UDP tunnel standard for the mobile nodes to roam under private networks. Nevertheless, because IP-in-UDP tunnel introduces too much header encapsulation and IP fragmentation overhead, we also propose a novel NAT traversal mechanism for mobile IP. The performance results show that our NAT traversal mechanism outperforms the IETF one.
|
author2 |
Chien-Chao Tseng |
author_facet |
Chien-Chao Tseng Jung-Hsuan Fan 范榮軒 |
author |
Jung-Hsuan Fan 范榮軒 |
spellingShingle |
Jung-Hsuan Fan 范榮軒 Design and Implementation of an Integration Platform for Heterogeneous Network Roaming Systems |
author_sort |
Jung-Hsuan Fan |
title |
Design and Implementation of an Integration Platform for Heterogeneous Network Roaming Systems |
title_short |
Design and Implementation of an Integration Platform for Heterogeneous Network Roaming Systems |
title_full |
Design and Implementation of an Integration Platform for Heterogeneous Network Roaming Systems |
title_fullStr |
Design and Implementation of an Integration Platform for Heterogeneous Network Roaming Systems |
title_full_unstemmed |
Design and Implementation of an Integration Platform for Heterogeneous Network Roaming Systems |
title_sort |
design and implementation of an integration platform for heterogeneous network roaming systems |
publishDate |
2005 |
url |
http://ndltd.ncl.edu.tw/handle/88849542452557838341 |
work_keys_str_mv |
AT junghsuanfan designandimplementationofanintegrationplatformforheterogeneousnetworkroamingsystems AT fànróngxuān designandimplementationofanintegrationplatformforheterogeneousnetworkroamingsystems AT junghsuanfan yìzhìwǎnglùmànyóuxìtǒngzhěnghépíngtáizhīshèjìyǔshízuò AT fànróngxuān yìzhìwǎnglùmànyóuxìtǒngzhěnghépíngtáizhīshèjìyǔshízuò |
_version_ |
1718294331239956480 |
spelling |
ndltd-TW-093NCTU53920392016-06-06T04:10:40Z http://ndltd.ncl.edu.tw/handle/88849542452557838341 Design and Implementation of an Integration Platform for Heterogeneous Network Roaming Systems 異質網路漫遊系統整合平台之設計與實作 Jung-Hsuan Fan 范榮軒 碩士 國立交通大學 資訊工程系所 93 As wireless networks and mobile terminal technologies advance, most mobile devices, such as notebooks, tablet PCs, PDAs, or smart phones, may have more than one network interface, including wired LAN, wireless LAN, GPRS, PHS, and even 3G, and can access Internet with any appropriate interface. However, although the hardware of the mobile devices gradually becomes more and more mature, there is still lack of software that can manage these heterogeneous network interfaces and help users adopt the most suitable media to retain the ongoing sessions when mobile devices change the points of network attachment. In this thesis, we present the design and implementation of a software platform for integrating multiple heterogeneous network interfaces on a mobile device of Microsoft Windows XP. The integration platform provides the functionalities of gathering the statuses of network interfaces, automatically selecting the most appropriate interface, routing/intercepting packets to/from a designated interface and retaining the ongoing sessions for the mobile device. Because interface selection is a complex decision depending on the connectivity, bandwidths and tariffs of the interfaces, and/or sometimes the user preferences, this thesis focuses only on the techniques issues of interface management and routings. For the demonstration purpose, we also implement a priority-based handoff decision software module, which operates in the user space, to select an appropriate interface automatically for the mobile device. First, in order to select an appropriate interface, the handoff decision module needs to obtain the statuses of the network interfaces. The network statuses consists of layer-2 information, such as link status and signal strength, and layer-3 information, such as DHCP address, DHCP gateway, routing table, and ARP cache. The layer-3 information can be accessed by the handoff decision module by calling the IPHLPAPI library. However the layer-2 information provided by network interfaces can only be accessed by the NDIS drivers. Therefore we implement an NdisProt kernel driver to collect layer-2 information and provide interfaces for the user level program to acquire the layer-2 information. Furthermore, in order to speedup the handoff process, we also implement layer-2 triggers in NdisProt and hook layer-3 DHCP events with the IPHLPAPI library to reduce the waiting time for the handoff decision module to detect the changes in interface statuses. Second, we also implement Mobile IP to support session continuity when a mobile device switches from one network interface to another. We adopt the co-located care-of address (Co-CoA) mode of Mobile IP so that our system can treat each network simply as an access network and does not need any supports from the network providers. However, in Co-CoA mode, the mobile IP software needs to encapsulate packets sent by user programs before routing the packets to a designated interface, and decapsulate packets received from an interface before sending the packets to user programs. Therefore, in order to intercept packets, either sent by a user level program or received from a network interface, from Windows NDIS framework for further encapsulation and decapsulation, we also develop two kernel drivers NdisFlt and IpFlt in the platform. Moreover, because Windows XP after the Service Pack 2 does not provide raw socket for the mobile IP software anymore to send the encapsulated/decapsulated packets, the mobile IP software also needs to perform Ethernet frame encapsulation itself and send the frame directly to the miniport driver of the designated interface. Furthermore, mobile IP needs to bind the home IP address statically to one of the mobile device’s interfaces that may acquire Co-CoAs dynamically as the mobile device moves. Therefore the integration platform applies IP alias technique and binds the home IP address and a Care-of Address simultaneously with an interface card of the mobile device. However the Media Sense function of Windows NDIS will notify the TCP/IP protocol driver when an interface becomes inactive. Upon receiving the notification, the TCP/IP protocol driver will remove the IP address configuration of the inactive interface. In order to retain the home IP permanently, the integration platform also inserts an intermediate driver to prevent TCP/IP protocol driver from knowing the link status of the interface bound with the home IP address. Finally, the integration platform also implements the IETF IP-in-UDP tunnel standard for the mobile nodes to roam under private networks. Nevertheless, because IP-in-UDP tunnel introduces too much header encapsulation and IP fragmentation overhead, we also propose a novel NAT traversal mechanism for mobile IP. The performance results show that our NAT traversal mechanism outperforms the IETF one. Chien-Chao Tseng 曾建超 2005 學位論文 ; thesis 126 zh-TW |