We have developed the Mobile IP programs such as Home Agent, Foreign Agent, and Mobile node program in Windows 95 environment. These Programs operate in foreign agent care-of address solicitation mode and have proxy ARP and gratuitous ARP function. In addition, it access kernel mode (ring 0) to get packets from network driver.
1. Features of mobile IP program for windows
We developed two programs to test the operation of mobile IP. One is the agent program broadcasting agent advertisement message regularly, saving mobility binding(home address and care-of address) of mobile node, transmitting reply message for registration and tunneling datagrams to the care-of-address. The other one is a mobile node program. It aquires current position by catching agent advertisment message and transmits message of requiring registration if mobile node moved into other network.
2. Solution of address problem in link layer
A host transmitting datagrams executes ARP to obtain link layer address of destination node. If the destination is on the same network as the source, ARP is executed for the destination IP, otherwise ARP is done for gateway. When a source node in the home network of destination is going to send datagrams in a situation that the mobile node has moved to foreign network, the source node can execute directly ARP for a mobile node whose location is considered in home network. In such a case, the source node can not receive the reply. To cope with this problem, home agent executes a proxy ARP function for a mobile node which has registered on the binding list in home agent. Thus home agent can reply the request instead of the mobile node.
When a mobile node is trying to send datagrams from a foreign network to a node which is in a home network of the mobile node, it executes a direct ARP for a destination because the mobile node is likely to recognize that the destination is in a same network as itself. To solve this problem, we add on the ARP-response fuction to foreign agent in our program. In other words, foreign agent can response with its link layer address for all ARP for mobile nodes which has registered with the foreign agent. Hosts on internet can manage the cache ARP table, so that a mobile node needs to update these cache table in hosts on the previous network after its movement to other network. To achieve this procedure, mobility agent must have Gratuitous ARP function.
3. Testing program
In the figure.1 below, we set up agent programs to 220.127.116.11 node on network B, 18.104.22.168 and 22.214.171.124 node on network A, 126.96.36.199 . Then, we connected 188.8.131.52 node to network B. TCP/IP application, such as Telnet and WWW, ran or node A to check the internetworking after the node moved from its home network A to foreign network B. Following figures 2, 3, 4 show output messages of foreign agent program, mobile node program and home agent program during registration and tunneling, respectively.
|Figure 4. Related Link|
|SUNY at Binghamton|
|University of Singapore|
|Carnegie Mellon University|