SlideShare a Scribd company logo
1 of 22
MET CS 535
A COMPARATIVE STUDY OF THE
OPERATION OF MOBILE IPV4 AND
MOBILE IPV6
By:
Bishwa P. Pandey
1. Introduction
The number of mobile users have grown exponentially in the last decade, as have the number
of mobile users on these mobile devices. It is estimated that the number of internet users from
mobile subscribers is increasing by a magnitude of thousands each day [2]. This increasing
number of mobile internet subscribers has put a great emphasis on the need for mobility support
to provide seamless internet connectivity
Mobile IP is an extension to the standard Internet Protocol which is implemented for fixed
internet. The major issue surrounding mobility is that TCP/IP the predominant protocol for
fixed internet was not designed with mobility in mind [2]. The issue seen was that when a node
moved from one access point to another the node would re-connect and each time with a
different IP address, which made communication with that node extremely hard. Mobile IP
allows the node to keep its original IP address even when it moves away from its home
network.
MIPv4 is a popular mobility protocol and one of the most promising solution for mobility
management in the current IPv4 network. The basic operation of MIPv4 can be outlined as
follows: Mobility Agents send agent advising messages, after receiving such a message a
mobile node determines whether or not it is on its home network or not. If not, it send its home
agent a care address to which all datagrams addressed to it are to be forwarded to. The
datagrams are sent to the mobile node using a method called tunneling [2].
However it does have some problems. These problems are dealt with in MIPv6 which is the
mobility management protocol for the next generation of IPv6 protocol. MIPv6 does share
many features with MIPv4, it does have some minor differences from MIPv4. For example,
the role of the Foreign Agent in MIPv4 is replaced with an Access Router in MIPv6. Also there
were route optimization extensions were proposed for both MIPv4 and MIPv6, but were only
implemented in MIPv6 [3].
One more reason for the use of MIPv6 is the Internet of Things. The IPv4 address space was
completely depleted by February 1st 2011 [5]. IPv6 was seen to provide a solution for this by
providing a greater number of addresses.
Figure 2.
Growing Trends in Mobile Internet Connectivity [1].
2. Mobile Internet ProtocolVersion4 ( MIPv4)
IP version 4 assumes that node’s IP address uniquely identifies the node’s point of attachment
to the internet [2]. Hence a device will only receive datagrams addressed to it if it is located on
the network using the same IP address, else the datagrams will be lost. This is the problem that
is dealt with by MIPv4.
2.1. Terminologies
Mobile Node: This is the node which moves from its home network to other networks. It is
the destination of all the datagrams in out discussion. It has a permanent IP address to which
datagrams are sent to. These datagrams can be sent by other nodes over the internet to the IP
address that the node has on its Home Network.
Home Network: It is the network to which the mobile node is permanently connected. This
subnet corresponds to the home address of the mobile node as well as the home agent [1].
Home Agent: The home agent is tasked with forwarding the packets to the mobile node. This
means that when the mobile node is not on its home network it will intercept all the datagrams
that are addressed to the mobile node’s original IP address and tunnel them to the Care of
Address that the node has registered with the home network.
Foreign Network: This the network that the mobile node connects to when it is not connected
to the home network.
Foreign Agent: The foreign agent is a router on the foreign network to which the mobile node
is connected to. The foreign is configured to receive and forward packets which are destined
for the mobile node when the mobile node has a foreign care of address. When using collocated
care of address, this foreign agent is used as a default router or for registering with the foreign
network [1].
Care of Address: This is the address that the mobile node uses for communication with other
nodes when it is not on it is not on its home network. It is also the address to which the home
agent forwards datagrams which were sent to the mobile node’s IP address. This can either be
foreign agent care of address or a collocated care of address [1].
A. Foreign Agent Care of Address: The mobile node uses the foreign agent’s IP address
as its Care of Address.
B. Collocated Care of Address: The network interface of the mobile node is temporarily
assigned an IP number on the IP on the foreign network [1].
Correspondent Node: This is the node which communicates with the mobile node. This node
can be located on any network.
2.2 Mobile IPv4 Basic Operation:
There are three basic related functions to the functioning of Mobile IP:
 Agent Discovery: Mobile agents constantly advertise their availability on each of the
links to which they provide services.
 Registration: When the mobile node has determined that it is away from its home
network then it registers a care of address with its home network.
 Tunneling: This is the method the home agent uses to transport datagrams to the mobile
node while it is away from the foreign network.
The following will give a brief outline of the operation of the Mobile IP using these three
steps.
The Mobile Node is initially given an IP address at its Home Network and as long as it is in
the home network it is treated just as if it is was any other fixed node on the network, and
therefore doesn’t require any mobility support.
In the mean-time, Mobility agents are constantly advertising their availability using the ICMP
Router Advertisement Packet which can be seen in Figure 1. Home agents do not broadcast
Figure 2. Basic MIPv4 working[3].
Care of addresses, but they do have to broadcast mobility agent advertisements so the mobile
nodes are aware that they have returned to their home network.
Once a mobile node receives one such advertisement it determines whether or not it is still on
its home network. When a mobile node moves away from its home network it obtains a care
of address on the foreign network, for example, by soliciting or listening for agent
advertisements, or contacting Dynamic Host Configuration Protocol (DHCP) or Point-to –
Point Protocol (PPP) [2].
The mobile node registers its Care of Address with its home network by means of a foreign
agent using a Registration Request Message which is sent to the User Datagram Protocol
(UDP) port 434 of a dedicated entity on the Home Network called home agent. The Request
message informs the Home Network about the current Care of Address and also how long the
node intends to use the care of address. It also tells the home agent of any special features
that are made available by the foreign agent. The Registration Request Message can be seen
in Figure 2 [7]. The most important extension is the Mobile-Home authentication extension,
which is required in every registration in order to allow the home agent to prevent fraudulent
remote redirects [7]. The home agent maintains an up to date list of all mobility bindings
(pairs of Mobile Nodes home addresses and Care of Addresses) and confirms that the
registration has been accepted using the Registration Reply Message. This message is also
sent to the UDP port. The home agent must be configured such that it does not accept a mobile
node if it does not have the necessary resources. The home agent must always be ready to
serve the mobile agent that it serves. Also the foreign agent must constantly advertise its
availability packet, this way a mobile node will know that they have not moved away from
it. A mobile node may send out solicitation packets, but this must only be done in the absence
of agent advertisement packets and if a care of address has not been determined by link layer
protocol.
Registrations in Mobile IP must be made secure so as to prevent any fraudulent registrations
from being accepted. If this were to happen a malicious user could gain access to a session
and disrupt communication between the home agent and mobile node. To avoid any malicious
user gaining access, an unforgeable value along with the registration that changes for every
new registration. In order to make each one different, a time stamp or newly generated random
number is inserted into the identification field. The home agents and mobile nodes have to
agree on reasonable values for the timestamp, and protocol for resynchronization [7]. If a
registration reply with an invalid non-zero UDP checksum is received it must be silently
discarded.
There are three authentication extensions defined by mobile IP:
 Mobile-Home authentication extension
 Mobile-Foreign authentication extension
 Foreign-Home authentication extension
The Mobile-Home authentication extension is required in all requests and replies. The SPI
within any authentication extension defines the security context used to compare and check
the authentication algorithm [7]. The job of the SPI is to select an authentication algorithm
and mode and a shared or public/private key pair which is used to verify the mobile node.
Keyed-MD-5 in prefix suffix mode is the default authentication algorithm used.
Once a care of address has been registered with the home agent, all packets that are destined
for the mobile nodes original IP are intercepted by the home agent and sent to the care of
address using a technique called tunneling.
2.3 Tunneling, Routing and ARP
Tunneling is a process by which one IP packet is encapsulated within another IP packet and
transported over a channel. The tunneling can be done by various algorithms but the default
algorithm which must always be supported is simple IP within IP encapsulation by both the
home and foreign agents. If the care of address is a co-located then the mobile node must
also support IP within IP encapsulation. Minimal encapsulation and GRE encapsulation can
also be used.
The encapsulation can be seen in Figure 3. In it we can see that an IP datagram is
encapsulated by preceding it with a new IP header which is called the tunnel header. The
encapsulating header indicates the presence of another datagram within it by using the value
4 in the outer protocol field. No modifications are made to the inner datagram, except that its
TTL is reduced by1. Once a datagram is intercepted by the home agent it is encapsulated by
it and tunneled to the care of address, received at the tunnel end and finally delivered to the
node. In the reverse direction datagrams are sent and delivered using standard IP
configurations.
Figure 3. IP-within-IP
encapsulation [7].
It is the job of every Home Agent to intercept every packet that was addressed to the mobile
node. This is done using a variation of the Address Resolution Protocol (ARP), this is called
proxy ARP. Proxy ARP is a variation of ARP wherein a node responds on behalf of another
node to and ARP request. It is likely that most of the nodes which have been communicating
with mobile node on the home network have an ARP cache of that nodes address. This
address becomes invalid or stale once the node moves to a foreign network. If the home agent
receives an ARP request that ask for the mobile nodes link address it must reply to them
using the proxy ARP. It must be noted that the home agent will only carry out proxy ARP
for nodes for which it is the home agent. It makes sure of this by checking the destination
address on the ARP packet with the list of addresses for which it is the home agent. Once it
confirms it is required to reply home agent will flip the sender and target address of the ARP
packet. It must also set the link address of the sender as its own link address over which the
reply will be sent.
When a mobile node registers with a foreign node and registers a binding with the foreign
agent, the home agent is required to send out a gratuitous ARP message to all the nodes on
the home network of the home agent. This causes all the nodes in the network update their
cache which contains the link address of the mobile agent to the link address of the home
agent. This message is sent as a broadcast message, and should be sent a few times because
there is a possibility of the packet not being delivered on local networks such as Ethernet.
When the mobile node returns to its home network, it must send out a gratuitous ARP to
update the caches of the nodes on the home network. It is after doing this that the mobile
node will send out a (de)Registration Request to its home agent. Once the home agent
receives this packet it must send out its own gratuitous ARP packet with the mobile nodes
link address as the home address for the mobile node. One thing that the mobile must never
do while away from its home network is reply to an ARP message. It must also never send
out an ARP request message.
2.4 Security Considerations
One of the main things that needs to be considered while discussing Mobile IP is security.
Most devices using this protocol will be connected to the network wirelessly, and this is one
of the fundamental differences between this network and regular computing networks. This
also poses a greater security issue.
The default algorithm used for generation of keys is HMAC-MD5 with a key length of 128
bits or greater. This must be supported by all participating parties of the communication link
[8].
One major step taken to prevent a malicious host getting control of the communication, is
Replay Protections against Registration Requests. The identification field is used to let the
home agent verify that a request is a fresh one and not one which has been replayed by an
attacker. There are two methods by which this is done, Timestamps (mandatory) and Nonces
(optional).
1. Timestamp based Replay Protection: The basic operating principle for this method
is that the sending node inserts its current time when transmitting the packet. The
receiving node will check the time in the packet and compare it to its own current
time and see if the two values are close enough. Unless specified during the
registration the default value of 7 seconds can be used. Whenever a registration
request is received the home agent must compare the tie in the identification and its
own clock and check if it is close enough. It must also check that the time is after all
previously accepted timestamps for the particular mobile node.
2. Replay Protection using Nonces: The basic operating principle for this method is that
Node X sends a random number to Node Y, the next message that is sent by Node Y
to Node X must contain the same random number. An authentication code is used to
prevent any attacks from an attacker. Node Y can also send a nonce in each of its
messages to Node X which must be relayed in each message by node X for Ys
verification. If a registration is rejected due to an incorrect nonce, a new nonce is sent
in the reply. This way nonce protocol is self-synchronizing.
2.5Problems with MIPv4
 Security: One of the major problems that plagues MIPv4 is the security aspect.
Prefix+Suffix MD5 is quite easily cracked by a trained attacker and does not
provide enough security. Wherever possible Keyed MD5 should be used as an
additional algorithm since it precludes most of the attacks that are known to
happen to MIPv4 networks.
 Triangular Routing: Another major problem that faces MIPv4 is triangular
routing. In MIPv4 all communication to the mobile node must go through the
home agent. Therefore even in the case where the correspondent node is on the
same network as the mobile agent the message must will go through the home
agent before they are tunneled to the mobile agent. This reduces the efficiency of
the network and adds an unnecessary transmission time. This problem can be
solved using Route Optimization which is discussed later on.
Figure 4. Triangle Routing Problem [2].
 Duplicating fields in “IP within IP”: When we send a datagram in MIPv4, it is
encapsulated within another IP packet, thus the entire message consists of the
original datagram along with the outer header, and this creates unnecessary
overhead in the message size. Also a lot of fields from the inner datagram are
duplicated in the outer datagram which again adds to the overhead. One way to
overcome this problem is to use minimum encapsulation which will only replace
the original destination address with the care of address of the mobile node.
However this method cannot be used if the datagram is fragmented.
 Single Home Agent: This is one of the less complicated problems with MIPv4. If
the home agent was to stop functioning for some reason, then the mobile node
would become unreachable. A way to avoid this would be to have more than one
home agent for the mobile nodes.
3 Mobile Internet ProtocolVersion6
To overcome some of the shortcomings of MIPv4 the IETF has been developing MIPv6 as
an improvement. The key advantage offered by MIPv6 stems from the fact that it is based
on IPv6 in which IP addresses are 128 bits long, mobility support in MIPv6 solves many
problems such as tunneling and ingress. However it does not attempt to solve some
problems such as mobile routers, services discovery and distinguishing between packets
lost due bit errors and congestion.
3.1 Terms
A lot of the terms used in Mobile IPv6 are similar to the ones used in Mobile IPv4, the
important ones are listed here.
Binding: A binding is an association between a home agent and a mobile node. It contains
the mobile nodes care of address and the time for which the address is valid.
Cookie: It is a random number used by a mobile node to prevent spoofing by a bogus
correspondent node in the return routability procedure.
Return Routability Procedure: It authorizes registration based on cryptographic token
exchange.
Keygen Token: A number which is supplied by the correspondent node in the return
routability procedure for the mobile node to compute the necessary binding management
key so that a binding update can be authorized.
3.2 Basic Operation
In Mobile IPv6, mobile nodes assign their network interface with 3 addresses. These
addresses are required at times when they are roaming away from their home network. The
three addresses are, The Home address- the address which is permanently assigned to it just
like a stationary node on the internet. The second is the nodes current link local address and
the third is nodes care of address which it has acquired on the foreign network. The care of
address can acquired through standard Ipv6 mechanisms such as stateless or stateful auto-
configurations. As long as the mobile node remains on this foreign network all packets routed
to the care of address will be forwarded to the mobile node. An association between the
mobile node and its home node is known as a binding. When a mobile node leaves its home
network it asks a router on the home network to behave as a home agent for it as in MIPv4.
This is done by sending a binding update to the home agent who replies with a binding
acknowledgement.
Nodes that are communicating with the mobile node can also be informed of the mobile nodes
new care of address. This is done through correspondent registration. As a part of this
procedure return routability test is performed to confirm whether the correspondent node can
be trusted or not and whether a binding update should be sent to the correspondent node or
not.
There are two ways through which a correspondent node can communicate with a mobile
node. The first is a bidirectional tunnel, whose operation is similar to that of MIPv4. In this
method, the mobile node does not send a binding update to the correspondent node and the
node just normally sends packets to the mobile nodes IP address. The home agent tasked with
making sure that all such packets reach the mobile node intercepts the packet and tunnels it
to the care of address registered to it and the packet is delivered to the mobile node from there
on. Packets sent by the mobile node to the correspondent node are reverse tunneled to the
correspondent node. The mobile node sends a packet to the home agent who then forwards it
to the correspondent node. This method of communication is called “Bidirectional
Tunneling”.
The second method is called “Route Optimization”. The main idea behind route optimization
is that the routes from correspondent nodes to the mobile nodes can be improved if they if
the correspondent node has an up-to date mobility binding for the mobile node in its routing
table [7]. With an updated mobility binding the correspondent node can tunnel packets
directly to the mobile node by encapsulating the intended packet in a packet with the IP
header having the car-of address. This way it would avoid having to send packets and
datagrams to the home agent and then have it tunnel packets to the mobile node, thus
improving the efficiency of communication. However it must be taken into account that the
required that the correspondent node has to be sure of the authenticity of the updates. If not
then the correspondent node will be sending its packets to a malicious third party and thus it
will compromise the security of the communication.
A basic protocol proposed is as follows [7]:
 A binding warning control message may be sent to the home agent indicating that the
correspondent node does not know the new care of address of the mobile node.
 The correspondent node may send a binding request.
 The home agent will then send an authenticatedbinding update containing the mobile
nodes care of address.
 A binding acknowledgement is given by the recipient for smooth handoffs.
It should be noted that the binding updates and binding warning messages should not be sent
out blindly without any regards for past history.
MIPv6 also provides the option of having multiple home agents which prevents the mobile
node from being unreachable if its primary home agent goes down.
3.3 Return Routability Procedure
This process allows the correspondent node to determine that the mobile node is in fact
addressable at the care of address it advertised as well as its home address. Only once this
has been determined will the correspondent node be able to send all data for the mobile node
to the claimed care of address.
This is done by testing whether packets sent to both the addresses are routed to the mobile
node or not. The mobile node can only pass this test if it can prove that it has received certain
data, called keygens, which was sent by the correspondent node.
The message flow in this process is as follows:
1. The mobile agent will send a Home Test Init (HoTI) and Care of Test Init (CoTI)
message to the correspondent node.
2. The messages are received by the correspondent node and processed by it.
3. The correspondent node sends the messages back to mobile node one Home Test
(HoT) and one Care of Test (CoT).
Both the messages sent by the mobile node are sent at the same time and require little
processing on the part of the correspondent node.
The Home Test Init message is sent to the correspondent node via the Home Agent, and is
sent so that the mobile agent can obtain the home keygen token. The message contains only
the source address, destination address and the home init cookie. This cookie must be
returned to the mobile node later on. This message is reverse tunneled through the home
agent.
Figure 5. Return
Routability Test messages [9].
The Care of Test Init message is sent to the correspondent node directly. The message format
remains the same and the only difference is that in place of the Home Init Cookie a Care of
Init cookie is sent. Again the cookie must be returned to the mobile node. The mobile keeps
track of the values of the cookie, so that it can make sure that the messages it is sending are
in fact being processed by the desired correspondent node.
The Home Test message is in reply to the HoTI, and is sent via the home agent. This
messages contains first and foremost the Home Init Cookie, which has to be there to confirm
to the mobile node that the message is being sent by an intended correspondent node. The
message also contains the Home Keygen Token and Home Nonce Index.
The Home Keygen Token is as follows:
First (64, HMAC-SHA1(kcn(Home Addresss|nonce|0)))
Here the | indicates concatenation and the 0 is used to distinguish the Home Keygen from
the Care of Token. The keygen is made by using the first 64 bits of the MAC. The kcn is
used so that the correspondent node can verify that it has generated the home and care of
nonces, without forcing the node to remember all the values. The nonce index is also sent to
the mobile node so that the correspondent node can find the nonce value it used to generate
the home keygen token.
The Care of Keygen Token is as follows:
First(64, HMAC_SHA1(kcn( Home address|nonce|1)))
The 1 at the end of the message is sent to distinguish it from the Home Keygen Token. The
rest of the message is generated in more or less the same way. The message contains the
nonce index along with the Care of Cookie to verify it was in fact sent the message.
Once the Mobile Node receives both messages, the procedure is completed and it can send
a binding update to the correspondent node. This is done by hashing together the two tokens
to create a 20 octet binding key Kbm.
When a binding update is sent it contains a sequence number and MAC. Both these fields
prevent the participants from being subject to replay attacks and replayed binding updates.
Correspondent nodes however must be careful while discarding any bindings because some
bindings have nonces which are still valid and hence cannot be completely discarded.
Figure 6. Movement of Binding
messages [9].
In the case where both the mobile node and the correspondent node are mobile some
problems can arise. In this case return routability signaling is sent to the correspondents
home agent, if it has on, and not to its care of address.
Return Routability is a very important part of the MIPv6 protocol and therefore its security
is extremely important. To ensure that packets sent from the home agent to the mobile node
the packets must be encapsulated securely. Therefore the home agent must be capable of of
supporting IPsec ESP for tunneling these packets. Support of non-null encryptions transform
and authentication algorithms must also be supported [8].
3.4 Handoffs
Mobile nodes keep changing their point off attachments in the internet. Thus it is imperative
that the transition from one connection to another be done smoothly so as to not lose out on
any datagrams that were sent to an old care of address, but are now will be dropped because
the node has now moved to a different point in the internet. Moreover a study of TCPs
working shows that the dropping of datagrams is magnified greatly.
However, using route optimization we can attain smooth handoffs. Former foreign nodes can
maintain a binding with former mobile visitors. This way even if packets are delivered to the
old care of address the mobile host might still receive them courtesy of the binding that exists.
In order to maximize the benefit from using route optimization on handoffs, we should avoid
any involvement of the home agent. This is because the home agent is too far in most cases
and by the time it reacts there might be a large amount of data which is lost.
When a mobile node leaves one foreign agent for another, it can instruct the new foreign
agent to send a binding to its old one. If no fresh binding update is sent to the old foreign
agent it can just deliver the datagram to the home agent for further handling. Such action
could however in theory cause a routing loop. Instead route optimization defines a way to
use special tunnels, which indicate to the home agent the need for special handling. When a
foreign agent send a datagram to the home agent, it lists the source address as the care of
address of the foreign address in the newly encapsulated datagram. Now when the datagram
is received by the home agent, it compares the source address with the latest care of address
it has received from the last binding update. If the two addresses match then the home agent
is not required to resend the packet. However if they do not match it is required to tunnel the
decapsulated packet to the new care of address.
An important point to note is that whenever a binding update is transmitted, it must be
accompanied by an authentication extension. This is however when we consider smooth
tradeoffs, mainly because foreign agents are considered as anonymous identities who cannot
be trusted for anything other than following protocol. Thus a mobile node and a foreign agent
do not share any secret. However when a new binding update is sent to the foreign agent
from the mobile nodes new foreign agent, there must be some way to verify that this has not
been forged. Usually when the foreign agent advertises its availability, its flags give an
indication of the security that it can provide to the mobile node. The mobile node will select
one of the menu of possible actions. The foreign agent then responds to the mobile nodes
request and will later if necessary cooperate with the mobile node for a smooth handoffs.
Usually for security the home agent provides a security key. This can be done in two ways,
one if the home and foreign agent share a security association or if they do not have any such
association. In the former case, the home agent picks a suitable number and encrypts it using
the shared security association, and transmits it back to the foreign agent as part of the
registration reply. The home agent also notifies the mobile node about the key value. In the
latter case, usually the foreign agent sends a public key to the home agent along with the
registration request and the home agent follows the same steps as before. If the foreign agent
does not have a public key and does not have any security association with either the home
agent or the mobile node, a Diffie-Hellman key exchange is possible [7].
4 Comparative Analysis
A comparative study of the two protocols is now presented. The results shown a have been
obtained by simulations of both MIPv4 and MIPv6 protocols on the computer using
softwares. The papers used as reference for these results have been clearly cited and listed
in the bibliography.
A comparison of the two protocols is done on some important parameters such as
Throughput, Handover Latency, Percentage of Packets Delivered Correctly, End to End
Delay and Time of delivery. An analysis of all the results obtained has been provided to try
and determine the reasons for the results.
The simulation for MIPv4 is done using a software Network Simulation 2 (NS2.33) and he
one for MIPv6 is done on an NS2.33 extension MOBIWAN.
Figure 7.
Simulation Topology [4].
As can be seen from the simulation topology, there is one Mobile Host which is seen moving
through 4 networks. BS1 is acting as a Home agent while others act as Foreign Agents.
There is only on Correspondent Node which is trying to communicate with the Mobile
Agent.
Throughput: Throughput is defined as the rate at which data is processed in a specified
amount of time. The following figure shows the throughput of the two protocols as a function
of time.
Figure8. Throughput of
MIPv4 [4].
Figure 9.Throughput
of MIPv6 [4].
Analysis: As can be seen from the above diagrams the average through put of MIPv4 is
about 90,000bits/second and that of MIPv6 is just above 250,000bits/second. The graphs
however are not a clear representation of the actual case. This simulation was done in a
situation which maximised the throughput for both cases, however there are many cases
wherein MIPv4 outperforms MIPv6. MIPv6 will not perform well for messages smaller than
512 bytes, which is primarily due to the large overhead in the MIPv6 header [11].
Packet Delivery Ratio: Packet Delivery Ratio is the ratio of received packets to the number
packets transmitted.
Figure 10.PDR of the two protocols [4].
Analysis: As can be seen the delivery ratio is not that different between the two protocols.
This implies that both protocols are just as reliable in transmitting data over the internet. The
reason behind this high level of reliability is that the usual protocol used in conjunction with
IP is TCP. When a packet is dropped in TCP it is usually retransmitted to ensure all the data
is received by the destination. The few packets that are lost are usually due to noise burst
and fading in the channels.
Average End to End Delay: Delay is the amount of time it takes for the packet to get to the
mobile node from the correspondent node.
Figure 11.Average End-to-End Delay of the two protocols [4].
Analysis: As can be seen from the numbers there is stark contrast in the Average End-to-
End Delay between the two protocols. The reason for this is two-fold.
1. In MIPv4, packets have to go through the Home Agent to be sent to the Mobile Node.
This problem of Triangle Routing is the reason for the high average end-to-end delay.
Since all the packets first go through the have to traverse two separate links before
they reach their destination the delay increases. This also increases the chances of
packets being dropped due to a faulty channel and the chances of them being damaged
in transit, causing further delays in processing time which adds to the overall delay.
2. IN MIPv6, the main reason for improved performance in terms of delay is the
implementation of Route optimization. Route optimization allows the correspondent
node to communicate with the mobile node if it has a binding with that node. If it
does not then the correspondent node can request a binding from the mobile node.
This greatly reduces the transit time of the packets and improves the efficiency of the
protocol.
A second test setup was referred to examine the Handover Latency of the two Protocols.
This test setup is shown below.
Figure 12.Test Setup to Measure Handover Latency [12].
Handover Latency: When the mobile node moved away from the home network to a
foreign network and the mobile node loses connection with the node while it sets up a
connection foreign node is called Handover Latency. The results for the experiment using
the above setup is show below.
Figure 13.Handover Latency of MIPv4 on the left vs HandoverLatency of MIPv6 on the right [12].
Analysis: As can be seen from the two graphs the latency is definitely less in the MIPv4
graph, as indicated by the smaller valley in the graph. This is because in MIPv6 the node
will confirm that it is no longer in contact with its home agent or previous care of agent by
running a Neighbor Unreachability Test before starting a search for a new care of address.
Following this there is slightly more complex procedure for acquiring a new care of
address, therefore this increases the time for the mobile node to find a new care of address.
4.1 Comparison
MIPv4 MIPv6
Lower Handover Latency Higher Handover Latency
Suffers from Triangular Routing Supports Route Optimization to reduce
effect of Triangular Routing
Does not support multiple Home Agents Supports multiple Home Agents
Does not use IPsec and relies on its own
security mechanisms
Uses IPsec for all security requirements
including Binding Requests
Has better Throughput for messages less
than 512 bytes [11].
Better Throughput for messages greater
than 512 bytes [11].
5 A Critique of MIP Naming and Addressing
A major issue seen by people in the Internet and Router manufacturing industry is the
increasing size of the internet. No one expected it to be so popular and grow at such an
exponential rate. Now apart from the exhaustion of IPv4 addresses another problem
catching the eye of experts is the growing size of router tables. This issue is arising because
every time a node moves from one network to another it sends out a new binding which is
being updated in all the routers. Due to this the routing tables keep increasing with different
routes and addresses which causes an increase in hardware for routers, which also in turn
increases the complexity of the network.
A simpler model of naming and addressing was suggested by John Soch and expanded
upon by J. Saltzer. In this mode of addressing, each node will have three hierarchical
addresses whose scope increases with the level of the address.
The logic used was to structure the addresses in a way that was similar to the way operating
system addresses were done. The highest layer would be the Application Layer, this layer
would have a fixed name and would be location independent. The second layer would be
the Node Address and would be location dependent and finally Point of Attachment
Addresses would be route dependent.
The basic idea here is to eliminate some of the big flaws that plague the IP model of
addressing. In this model bindings only change the Point of attachment address and not the
network address and home address as in the case of MIP. Here when a node moves only
the POA is changed and updated to the directory. Routes are computed by finding the next
POA and a list of all POA of neighboring hosts is done to facilitate fast movement of
packets.
By having the application name location independent we can eliminate the role of the home
router since this address is always constant. If a particular node is looking for an application
and cannot find it, it can ask a second node if it has the applications address in its routing
table. If so the data is exchanged and communication is carried out. When routing is done,
instead of having multiple addresses in its address field (IP tunneling) it can just have one
address and let the POAs determine where the packet should be routed using data in their
directory. This will greatly reduce the packet size which can in turn improve the throughput
of the system since less redundant data is sent per packet. A simple way to avoid packets
reaching a POA after the device has changed its POA is for it to also carry the name of the
application so that if it has changed it can simultaneously be routed to the new POA which
would have been update in the current locations directory [12][13].
This is just a basic description of a larger idea which has a lot of potential to solve some
fundamental problems of the current addressing protocols being followed.
6 Conclusion and Future Work
With the exponential increase in number of mobile devices being connected to the internet
it was imperative for the IETF to come up with a mobility management protocol.
MIPv4 was a brilliant first attempt at Mobility Management. MIPv6 used the failings of
MIPv4 to develop into a slightly better protocol with many protocols coming as a
modification of MIPv6 such as Fast MIPv6 which deal with handoffs better than both the
previous protocols. MIPv6 is being tipped as the protocol for the future of mobility
management mainly due to the face that it can provide infinite addresses unlike MIPv4
which unfortunately was exhausted at the start of the decade.
With the future of the world being the Internet of Things, MIPv6 has been seen as the
solution for that primary problem. The issue being the overhead in the header creates a
problem and will be a big obstacle to overcome along with the requirement of IPsec to be
implemented in the protocol.
In line with this, a mobility management protocol called MMIP6 is developed in order to
control the mobility of vehicles [3]. MMIP6 is based on the principles of MIPv4 but
designed for MIPv6 organized in ad-hoc networks.
References:
[1] Janani Chandrasekaran, “ Mobile IP: Issues, Cahllenges and Solutions”.
[2] Fayza Nada, “Performance Analysis of Mobile IPv4 and Mobile IPv6”, The
International Arab Journal o Information Technology, Volume 4, N0.2, April 2007.
[3] Seyedeh Masoumeh Ahamadi, “Analysistowards Mobile IPv4 and Mobile IPv6 in
Computer Networks”, http://www.mecs-press.org/ April 2012.
[4] G B Himabindu, A.M Vedhagrani, S R Raj Kumar, “ Performance Evaluation of
Mobility Management using Mobile IPv4 and Mobile IPv6 protocols”, International
Journal of Computer Science and Information Technologies, Vol 5(5),2014.
[5] Antonio J Jara et all, “ The Internet of Everything through IPv6: An analysis of
Challenges, Solutions and Opportunities”, Journal of Wireless Mobile Networks,
Ubiquitous Computing and Dependable Applications, Volume 4, N0:3 pp 97-118.
[6] Sameer Chandragiri, “ Mobile IP- Security Issues and Solutions”.
[7] Charles E. Perkins, “ Mobile IP”, IEEE Communications Magazine, May 1997.
[8] Charles E. Perkins, “ IP Mobility Support for IPv4”, August 2002.
[9] Charles E. Perkins, “Mobility Support in IPv6”, July 2011.
[10] Albert Cabellos-Aparicio, Hector Julian-Bertomeu, Jose Núñez-Martínez, Loránd
Jakab, René Serral-Gracià, Jordi Domingo-Pascual, “Measurement-Based Comparison of
IPv4/IPv6 Mobility Protocols on a WLAN Scenario”.
[11] Yu-Kwong Ricky Kwok, Vincent K.N. Lau, “Wireless Internet and Mobile
Computing: Interoperability and Performance”.
[12] J. Saltzer, “ On the Naming and Binding of Network Destinations” August 1993.
[13] C. Sunshine, “ Addressing Problems in Multi-Network Systems”.
MET CS 535: A Comparative Study of MIPv4 and MIPv6

More Related Content

What's hot

77232345 cours-ip-mobile
77232345 cours-ip-mobile77232345 cours-ip-mobile
77232345 cours-ip-mobilezan
 
Mobile ip overview
Mobile ip overviewMobile ip overview
Mobile ip overviewpriya Nithya
 
Mobile ip presentation
Mobile ip presentationMobile ip presentation
Mobile ip presentationSifat Hossain
 
Mobile computing
Mobile computingMobile computing
Mobile computingSaranyaK68
 
Features of mobile ip
Features of mobile ipFeatures of mobile ip
Features of mobile ippriya Nithya
 
Performance of Various Mobile IP Protocols and Security Considerations
Performance of Various Mobile IP Protocols and Security ConsiderationsPerformance of Various Mobile IP Protocols and Security Considerations
Performance of Various Mobile IP Protocols and Security ConsiderationsCSCJournals
 
Ip packet delivery
Ip packet deliveryIp packet delivery
Ip packet deliveryrajisri2
 
A review study of handover performance in mobile ip
A review study of handover performance in mobile ipA review study of handover performance in mobile ip
A review study of handover performance in mobile ipIJCNCJournal
 
Mobile computing - SARASWATHI RAMALINGAM
Mobile computing - SARASWATHI RAMALINGAMMobile computing - SARASWATHI RAMALINGAM
Mobile computing - SARASWATHI RAMALINGAMSaraswathiRamalingam
 
Mobile
MobileMobile
MobileLE RUE
 
Mobility And Mobile I Pv4
Mobility And Mobile I Pv4Mobility And Mobile I Pv4
Mobility And Mobile I Pv4Ram Dutt Shukla
 
Unit iii - mobile ip and wireless access protocol
Unit iii - mobile ip and wireless access protocolUnit iii - mobile ip and wireless access protocol
Unit iii - mobile ip and wireless access protocolRamannagariKeerthana
 

What's hot (20)

Mobile ip
Mobile ipMobile ip
Mobile ip
 
Mobile ip np
Mobile ip npMobile ip np
Mobile ip np
 
Mobile ip
Mobile ipMobile ip
Mobile ip
 
77232345 cours-ip-mobile
77232345 cours-ip-mobile77232345 cours-ip-mobile
77232345 cours-ip-mobile
 
Mobile ip overview
Mobile ip overviewMobile ip overview
Mobile ip overview
 
Mobile IP 1
Mobile IP 1Mobile IP 1
Mobile IP 1
 
Mobile ip presentation
Mobile ip presentationMobile ip presentation
Mobile ip presentation
 
Mobile IP
Mobile IPMobile IP
Mobile IP
 
Mobile computing
Mobile computingMobile computing
Mobile computing
 
Features of mobile ip
Features of mobile ipFeatures of mobile ip
Features of mobile ip
 
Performance of Various Mobile IP Protocols and Security Considerations
Performance of Various Mobile IP Protocols and Security ConsiderationsPerformance of Various Mobile IP Protocols and Security Considerations
Performance of Various Mobile IP Protocols and Security Considerations
 
Ip packet delivery
Ip packet deliveryIp packet delivery
Ip packet delivery
 
A review study of handover performance in mobile ip
A review study of handover performance in mobile ipA review study of handover performance in mobile ip
A review study of handover performance in mobile ip
 
Mobile computing - SARASWATHI RAMALINGAM
Mobile computing - SARASWATHI RAMALINGAMMobile computing - SARASWATHI RAMALINGAM
Mobile computing - SARASWATHI RAMALINGAM
 
50120140505003
5012014050500350120140505003
50120140505003
 
Mobile
MobileMobile
Mobile
 
Mobility And Mobile I Pv4
Mobility And Mobile I Pv4Mobility And Mobile I Pv4
Mobility And Mobile I Pv4
 
Mobile I Pv6
Mobile I Pv6Mobile I Pv6
Mobile I Pv6
 
D0362035
D0362035D0362035
D0362035
 
Unit iii - mobile ip and wireless access protocol
Unit iii - mobile ip and wireless access protocolUnit iii - mobile ip and wireless access protocol
Unit iii - mobile ip and wireless access protocol
 

Similar to MET CS 535: A Comparative Study of MIPv4 and MIPv6

Unit 2.design mobile computing architecture
Unit 2.design mobile computing architectureUnit 2.design mobile computing architecture
Unit 2.design mobile computing architectureSwapnali Pawar
 
IT6601 Mobile Computing Unit II
IT6601 Mobile Computing Unit IIIT6601 Mobile Computing Unit II
IT6601 Mobile Computing Unit IIpkaviya
 
Extended Study on the Performance Evaluation of ISP MBG based Route Optimiza...
Extended Study on the Performance Evaluation of ISP MBG  based Route Optimiza...Extended Study on the Performance Evaluation of ISP MBG  based Route Optimiza...
Extended Study on the Performance Evaluation of ISP MBG based Route Optimiza...IOSR Journals
 
Seminar technical
Seminar technicalSeminar technical
Seminar technicalt4cashish
 
A Proposed Technique For Solving The Triangle Routing Problem In Mobile IP
A Proposed Technique For Solving The Triangle Routing Problem In Mobile IPA Proposed Technique For Solving The Triangle Routing Problem In Mobile IP
A Proposed Technique For Solving The Triangle Routing Problem In Mobile IPMartha Brown
 
IT8602 - Mobile Communication Unit IV
IT8602 - Mobile Communication   Unit IV IT8602 - Mobile Communication   Unit IV
IT8602 - Mobile Communication Unit IV pkaviya
 
Mobile internet protocol
Mobile internet protocolMobile internet protocol
Mobile internet protocolSaranyaK68
 

Similar to MET CS 535: A Comparative Study of MIPv4 and MIPv6 (20)

Unit 2.design mobile computing architecture
Unit 2.design mobile computing architectureUnit 2.design mobile computing architecture
Unit 2.design mobile computing architecture
 
Ip packet delivery
Ip packet deliveryIp packet delivery
Ip packet delivery
 
It2402 mobile communication unit 4
It2402 mobile communication unit 4It2402 mobile communication unit 4
It2402 mobile communication unit 4
 
Unit 2
Unit 2Unit 2
Unit 2
 
Mobileip 161105154557
Mobileip 161105154557Mobileip 161105154557
Mobileip 161105154557
 
Mobileip 161105154557
Mobileip 161105154557Mobileip 161105154557
Mobileip 161105154557
 
Unit 3
Unit 3Unit 3
Unit 3
 
IT6601 Mobile Computing Unit II
IT6601 Mobile Computing Unit IIIT6601 Mobile Computing Unit II
IT6601 Mobile Computing Unit II
 
Extended Study on the Performance Evaluation of ISP MBG based Route Optimiza...
Extended Study on the Performance Evaluation of ISP MBG  based Route Optimiza...Extended Study on the Performance Evaluation of ISP MBG  based Route Optimiza...
Extended Study on the Performance Evaluation of ISP MBG based Route Optimiza...
 
Mobile computing Unit III MANET Notes
Mobile computing Unit III MANET NotesMobile computing Unit III MANET Notes
Mobile computing Unit III MANET Notes
 
Bluetooth and mobile ip
Bluetooth and mobile ipBluetooth and mobile ip
Bluetooth and mobile ip
 
Mobile IP
Mobile IPMobile IP
Mobile IP
 
Seminar technical
Seminar technicalSeminar technical
Seminar technical
 
A Proposed Technique For Solving The Triangle Routing Problem In Mobile IP
A Proposed Technique For Solving The Triangle Routing Problem In Mobile IPA Proposed Technique For Solving The Triangle Routing Problem In Mobile IP
A Proposed Technique For Solving The Triangle Routing Problem In Mobile IP
 
IT8602 - Mobile Communication Unit IV
IT8602 - Mobile Communication   Unit IV IT8602 - Mobile Communication   Unit IV
IT8602 - Mobile Communication Unit IV
 
Mobile internet protocol
Mobile internet protocolMobile internet protocol
Mobile internet protocol
 
ACN.pptx
ACN.pptxACN.pptx
ACN.pptx
 
IT6601 MOBILE COMPUTING
IT6601 MOBILE COMPUTINGIT6601 MOBILE COMPUTING
IT6601 MOBILE COMPUTING
 
It6601 mobile computing unit2
It6601 mobile computing unit2It6601 mobile computing unit2
It6601 mobile computing unit2
 
Chapter#12
Chapter#12Chapter#12
Chapter#12
 

MET CS 535: A Comparative Study of MIPv4 and MIPv6

  • 1. MET CS 535 A COMPARATIVE STUDY OF THE OPERATION OF MOBILE IPV4 AND MOBILE IPV6 By: Bishwa P. Pandey
  • 2. 1. Introduction The number of mobile users have grown exponentially in the last decade, as have the number of mobile users on these mobile devices. It is estimated that the number of internet users from mobile subscribers is increasing by a magnitude of thousands each day [2]. This increasing number of mobile internet subscribers has put a great emphasis on the need for mobility support to provide seamless internet connectivity Mobile IP is an extension to the standard Internet Protocol which is implemented for fixed internet. The major issue surrounding mobility is that TCP/IP the predominant protocol for fixed internet was not designed with mobility in mind [2]. The issue seen was that when a node moved from one access point to another the node would re-connect and each time with a different IP address, which made communication with that node extremely hard. Mobile IP allows the node to keep its original IP address even when it moves away from its home network. MIPv4 is a popular mobility protocol and one of the most promising solution for mobility management in the current IPv4 network. The basic operation of MIPv4 can be outlined as follows: Mobility Agents send agent advising messages, after receiving such a message a mobile node determines whether or not it is on its home network or not. If not, it send its home agent a care address to which all datagrams addressed to it are to be forwarded to. The datagrams are sent to the mobile node using a method called tunneling [2]. However it does have some problems. These problems are dealt with in MIPv6 which is the mobility management protocol for the next generation of IPv6 protocol. MIPv6 does share many features with MIPv4, it does have some minor differences from MIPv4. For example, the role of the Foreign Agent in MIPv4 is replaced with an Access Router in MIPv6. Also there were route optimization extensions were proposed for both MIPv4 and MIPv6, but were only implemented in MIPv6 [3]. One more reason for the use of MIPv6 is the Internet of Things. The IPv4 address space was completely depleted by February 1st 2011 [5]. IPv6 was seen to provide a solution for this by providing a greater number of addresses.
  • 3. Figure 2. Growing Trends in Mobile Internet Connectivity [1]. 2. Mobile Internet ProtocolVersion4 ( MIPv4) IP version 4 assumes that node’s IP address uniquely identifies the node’s point of attachment to the internet [2]. Hence a device will only receive datagrams addressed to it if it is located on the network using the same IP address, else the datagrams will be lost. This is the problem that is dealt with by MIPv4. 2.1. Terminologies Mobile Node: This is the node which moves from its home network to other networks. It is the destination of all the datagrams in out discussion. It has a permanent IP address to which datagrams are sent to. These datagrams can be sent by other nodes over the internet to the IP address that the node has on its Home Network. Home Network: It is the network to which the mobile node is permanently connected. This subnet corresponds to the home address of the mobile node as well as the home agent [1]. Home Agent: The home agent is tasked with forwarding the packets to the mobile node. This means that when the mobile node is not on its home network it will intercept all the datagrams that are addressed to the mobile node’s original IP address and tunnel them to the Care of Address that the node has registered with the home network. Foreign Network: This the network that the mobile node connects to when it is not connected to the home network.
  • 4. Foreign Agent: The foreign agent is a router on the foreign network to which the mobile node is connected to. The foreign is configured to receive and forward packets which are destined for the mobile node when the mobile node has a foreign care of address. When using collocated care of address, this foreign agent is used as a default router or for registering with the foreign network [1]. Care of Address: This is the address that the mobile node uses for communication with other nodes when it is not on it is not on its home network. It is also the address to which the home agent forwards datagrams which were sent to the mobile node’s IP address. This can either be foreign agent care of address or a collocated care of address [1]. A. Foreign Agent Care of Address: The mobile node uses the foreign agent’s IP address as its Care of Address. B. Collocated Care of Address: The network interface of the mobile node is temporarily assigned an IP number on the IP on the foreign network [1]. Correspondent Node: This is the node which communicates with the mobile node. This node can be located on any network. 2.2 Mobile IPv4 Basic Operation: There are three basic related functions to the functioning of Mobile IP:  Agent Discovery: Mobile agents constantly advertise their availability on each of the links to which they provide services.  Registration: When the mobile node has determined that it is away from its home network then it registers a care of address with its home network.  Tunneling: This is the method the home agent uses to transport datagrams to the mobile node while it is away from the foreign network. The following will give a brief outline of the operation of the Mobile IP using these three steps. The Mobile Node is initially given an IP address at its Home Network and as long as it is in the home network it is treated just as if it is was any other fixed node on the network, and therefore doesn’t require any mobility support. In the mean-time, Mobility agents are constantly advertising their availability using the ICMP Router Advertisement Packet which can be seen in Figure 1. Home agents do not broadcast
  • 5. Figure 2. Basic MIPv4 working[3]. Care of addresses, but they do have to broadcast mobility agent advertisements so the mobile nodes are aware that they have returned to their home network. Once a mobile node receives one such advertisement it determines whether or not it is still on its home network. When a mobile node moves away from its home network it obtains a care of address on the foreign network, for example, by soliciting or listening for agent advertisements, or contacting Dynamic Host Configuration Protocol (DHCP) or Point-to – Point Protocol (PPP) [2]. The mobile node registers its Care of Address with its home network by means of a foreign agent using a Registration Request Message which is sent to the User Datagram Protocol (UDP) port 434 of a dedicated entity on the Home Network called home agent. The Request message informs the Home Network about the current Care of Address and also how long the node intends to use the care of address. It also tells the home agent of any special features that are made available by the foreign agent. The Registration Request Message can be seen in Figure 2 [7]. The most important extension is the Mobile-Home authentication extension, which is required in every registration in order to allow the home agent to prevent fraudulent remote redirects [7]. The home agent maintains an up to date list of all mobility bindings (pairs of Mobile Nodes home addresses and Care of Addresses) and confirms that the registration has been accepted using the Registration Reply Message. This message is also sent to the UDP port. The home agent must be configured such that it does not accept a mobile node if it does not have the necessary resources. The home agent must always be ready to serve the mobile agent that it serves. Also the foreign agent must constantly advertise its availability packet, this way a mobile node will know that they have not moved away from
  • 6. it. A mobile node may send out solicitation packets, but this must only be done in the absence of agent advertisement packets and if a care of address has not been determined by link layer protocol. Registrations in Mobile IP must be made secure so as to prevent any fraudulent registrations from being accepted. If this were to happen a malicious user could gain access to a session and disrupt communication between the home agent and mobile node. To avoid any malicious user gaining access, an unforgeable value along with the registration that changes for every new registration. In order to make each one different, a time stamp or newly generated random number is inserted into the identification field. The home agents and mobile nodes have to agree on reasonable values for the timestamp, and protocol for resynchronization [7]. If a registration reply with an invalid non-zero UDP checksum is received it must be silently discarded. There are three authentication extensions defined by mobile IP:  Mobile-Home authentication extension  Mobile-Foreign authentication extension  Foreign-Home authentication extension The Mobile-Home authentication extension is required in all requests and replies. The SPI within any authentication extension defines the security context used to compare and check the authentication algorithm [7]. The job of the SPI is to select an authentication algorithm and mode and a shared or public/private key pair which is used to verify the mobile node. Keyed-MD-5 in prefix suffix mode is the default authentication algorithm used. Once a care of address has been registered with the home agent, all packets that are destined for the mobile nodes original IP are intercepted by the home agent and sent to the care of address using a technique called tunneling. 2.3 Tunneling, Routing and ARP Tunneling is a process by which one IP packet is encapsulated within another IP packet and transported over a channel. The tunneling can be done by various algorithms but the default algorithm which must always be supported is simple IP within IP encapsulation by both the home and foreign agents. If the care of address is a co-located then the mobile node must also support IP within IP encapsulation. Minimal encapsulation and GRE encapsulation can also be used. The encapsulation can be seen in Figure 3. In it we can see that an IP datagram is encapsulated by preceding it with a new IP header which is called the tunnel header. The encapsulating header indicates the presence of another datagram within it by using the value 4 in the outer protocol field. No modifications are made to the inner datagram, except that its TTL is reduced by1. Once a datagram is intercepted by the home agent it is encapsulated by it and tunneled to the care of address, received at the tunnel end and finally delivered to the
  • 7. node. In the reverse direction datagrams are sent and delivered using standard IP configurations. Figure 3. IP-within-IP encapsulation [7]. It is the job of every Home Agent to intercept every packet that was addressed to the mobile node. This is done using a variation of the Address Resolution Protocol (ARP), this is called proxy ARP. Proxy ARP is a variation of ARP wherein a node responds on behalf of another node to and ARP request. It is likely that most of the nodes which have been communicating with mobile node on the home network have an ARP cache of that nodes address. This address becomes invalid or stale once the node moves to a foreign network. If the home agent receives an ARP request that ask for the mobile nodes link address it must reply to them using the proxy ARP. It must be noted that the home agent will only carry out proxy ARP for nodes for which it is the home agent. It makes sure of this by checking the destination address on the ARP packet with the list of addresses for which it is the home agent. Once it confirms it is required to reply home agent will flip the sender and target address of the ARP packet. It must also set the link address of the sender as its own link address over which the reply will be sent. When a mobile node registers with a foreign node and registers a binding with the foreign agent, the home agent is required to send out a gratuitous ARP message to all the nodes on the home network of the home agent. This causes all the nodes in the network update their cache which contains the link address of the mobile agent to the link address of the home agent. This message is sent as a broadcast message, and should be sent a few times because there is a possibility of the packet not being delivered on local networks such as Ethernet. When the mobile node returns to its home network, it must send out a gratuitous ARP to update the caches of the nodes on the home network. It is after doing this that the mobile node will send out a (de)Registration Request to its home agent. Once the home agent receives this packet it must send out its own gratuitous ARP packet with the mobile nodes link address as the home address for the mobile node. One thing that the mobile must never do while away from its home network is reply to an ARP message. It must also never send out an ARP request message. 2.4 Security Considerations One of the main things that needs to be considered while discussing Mobile IP is security. Most devices using this protocol will be connected to the network wirelessly, and this is one
  • 8. of the fundamental differences between this network and regular computing networks. This also poses a greater security issue. The default algorithm used for generation of keys is HMAC-MD5 with a key length of 128 bits or greater. This must be supported by all participating parties of the communication link [8]. One major step taken to prevent a malicious host getting control of the communication, is Replay Protections against Registration Requests. The identification field is used to let the home agent verify that a request is a fresh one and not one which has been replayed by an attacker. There are two methods by which this is done, Timestamps (mandatory) and Nonces (optional). 1. Timestamp based Replay Protection: The basic operating principle for this method is that the sending node inserts its current time when transmitting the packet. The receiving node will check the time in the packet and compare it to its own current time and see if the two values are close enough. Unless specified during the registration the default value of 7 seconds can be used. Whenever a registration request is received the home agent must compare the tie in the identification and its own clock and check if it is close enough. It must also check that the time is after all previously accepted timestamps for the particular mobile node. 2. Replay Protection using Nonces: The basic operating principle for this method is that Node X sends a random number to Node Y, the next message that is sent by Node Y to Node X must contain the same random number. An authentication code is used to prevent any attacks from an attacker. Node Y can also send a nonce in each of its messages to Node X which must be relayed in each message by node X for Ys verification. If a registration is rejected due to an incorrect nonce, a new nonce is sent in the reply. This way nonce protocol is self-synchronizing. 2.5Problems with MIPv4  Security: One of the major problems that plagues MIPv4 is the security aspect. Prefix+Suffix MD5 is quite easily cracked by a trained attacker and does not provide enough security. Wherever possible Keyed MD5 should be used as an additional algorithm since it precludes most of the attacks that are known to happen to MIPv4 networks.  Triangular Routing: Another major problem that faces MIPv4 is triangular routing. In MIPv4 all communication to the mobile node must go through the home agent. Therefore even in the case where the correspondent node is on the same network as the mobile agent the message must will go through the home agent before they are tunneled to the mobile agent. This reduces the efficiency of the network and adds an unnecessary transmission time. This problem can be solved using Route Optimization which is discussed later on.
  • 9. Figure 4. Triangle Routing Problem [2].  Duplicating fields in “IP within IP”: When we send a datagram in MIPv4, it is encapsulated within another IP packet, thus the entire message consists of the original datagram along with the outer header, and this creates unnecessary overhead in the message size. Also a lot of fields from the inner datagram are duplicated in the outer datagram which again adds to the overhead. One way to overcome this problem is to use minimum encapsulation which will only replace the original destination address with the care of address of the mobile node. However this method cannot be used if the datagram is fragmented.  Single Home Agent: This is one of the less complicated problems with MIPv4. If the home agent was to stop functioning for some reason, then the mobile node would become unreachable. A way to avoid this would be to have more than one home agent for the mobile nodes. 3 Mobile Internet ProtocolVersion6 To overcome some of the shortcomings of MIPv4 the IETF has been developing MIPv6 as an improvement. The key advantage offered by MIPv6 stems from the fact that it is based on IPv6 in which IP addresses are 128 bits long, mobility support in MIPv6 solves many problems such as tunneling and ingress. However it does not attempt to solve some problems such as mobile routers, services discovery and distinguishing between packets lost due bit errors and congestion. 3.1 Terms A lot of the terms used in Mobile IPv6 are similar to the ones used in Mobile IPv4, the important ones are listed here. Binding: A binding is an association between a home agent and a mobile node. It contains the mobile nodes care of address and the time for which the address is valid.
  • 10. Cookie: It is a random number used by a mobile node to prevent spoofing by a bogus correspondent node in the return routability procedure. Return Routability Procedure: It authorizes registration based on cryptographic token exchange. Keygen Token: A number which is supplied by the correspondent node in the return routability procedure for the mobile node to compute the necessary binding management key so that a binding update can be authorized. 3.2 Basic Operation In Mobile IPv6, mobile nodes assign their network interface with 3 addresses. These addresses are required at times when they are roaming away from their home network. The three addresses are, The Home address- the address which is permanently assigned to it just like a stationary node on the internet. The second is the nodes current link local address and the third is nodes care of address which it has acquired on the foreign network. The care of address can acquired through standard Ipv6 mechanisms such as stateless or stateful auto- configurations. As long as the mobile node remains on this foreign network all packets routed to the care of address will be forwarded to the mobile node. An association between the mobile node and its home node is known as a binding. When a mobile node leaves its home network it asks a router on the home network to behave as a home agent for it as in MIPv4. This is done by sending a binding update to the home agent who replies with a binding acknowledgement. Nodes that are communicating with the mobile node can also be informed of the mobile nodes new care of address. This is done through correspondent registration. As a part of this procedure return routability test is performed to confirm whether the correspondent node can be trusted or not and whether a binding update should be sent to the correspondent node or not. There are two ways through which a correspondent node can communicate with a mobile node. The first is a bidirectional tunnel, whose operation is similar to that of MIPv4. In this method, the mobile node does not send a binding update to the correspondent node and the node just normally sends packets to the mobile nodes IP address. The home agent tasked with making sure that all such packets reach the mobile node intercepts the packet and tunnels it to the care of address registered to it and the packet is delivered to the mobile node from there on. Packets sent by the mobile node to the correspondent node are reverse tunneled to the correspondent node. The mobile node sends a packet to the home agent who then forwards it to the correspondent node. This method of communication is called “Bidirectional Tunneling”. The second method is called “Route Optimization”. The main idea behind route optimization is that the routes from correspondent nodes to the mobile nodes can be improved if they if the correspondent node has an up-to date mobility binding for the mobile node in its routing table [7]. With an updated mobility binding the correspondent node can tunnel packets
  • 11. directly to the mobile node by encapsulating the intended packet in a packet with the IP header having the car-of address. This way it would avoid having to send packets and datagrams to the home agent and then have it tunnel packets to the mobile node, thus improving the efficiency of communication. However it must be taken into account that the required that the correspondent node has to be sure of the authenticity of the updates. If not then the correspondent node will be sending its packets to a malicious third party and thus it will compromise the security of the communication. A basic protocol proposed is as follows [7]:  A binding warning control message may be sent to the home agent indicating that the correspondent node does not know the new care of address of the mobile node.  The correspondent node may send a binding request.  The home agent will then send an authenticatedbinding update containing the mobile nodes care of address.  A binding acknowledgement is given by the recipient for smooth handoffs. It should be noted that the binding updates and binding warning messages should not be sent out blindly without any regards for past history. MIPv6 also provides the option of having multiple home agents which prevents the mobile node from being unreachable if its primary home agent goes down. 3.3 Return Routability Procedure This process allows the correspondent node to determine that the mobile node is in fact addressable at the care of address it advertised as well as its home address. Only once this has been determined will the correspondent node be able to send all data for the mobile node to the claimed care of address. This is done by testing whether packets sent to both the addresses are routed to the mobile node or not. The mobile node can only pass this test if it can prove that it has received certain data, called keygens, which was sent by the correspondent node. The message flow in this process is as follows: 1. The mobile agent will send a Home Test Init (HoTI) and Care of Test Init (CoTI) message to the correspondent node. 2. The messages are received by the correspondent node and processed by it. 3. The correspondent node sends the messages back to mobile node one Home Test (HoT) and one Care of Test (CoT). Both the messages sent by the mobile node are sent at the same time and require little processing on the part of the correspondent node. The Home Test Init message is sent to the correspondent node via the Home Agent, and is sent so that the mobile agent can obtain the home keygen token. The message contains only the source address, destination address and the home init cookie. This cookie must be returned to the mobile node later on. This message is reverse tunneled through the home agent.
  • 12. Figure 5. Return Routability Test messages [9]. The Care of Test Init message is sent to the correspondent node directly. The message format remains the same and the only difference is that in place of the Home Init Cookie a Care of Init cookie is sent. Again the cookie must be returned to the mobile node. The mobile keeps track of the values of the cookie, so that it can make sure that the messages it is sending are in fact being processed by the desired correspondent node. The Home Test message is in reply to the HoTI, and is sent via the home agent. This messages contains first and foremost the Home Init Cookie, which has to be there to confirm to the mobile node that the message is being sent by an intended correspondent node. The message also contains the Home Keygen Token and Home Nonce Index. The Home Keygen Token is as follows: First (64, HMAC-SHA1(kcn(Home Addresss|nonce|0))) Here the | indicates concatenation and the 0 is used to distinguish the Home Keygen from the Care of Token. The keygen is made by using the first 64 bits of the MAC. The kcn is used so that the correspondent node can verify that it has generated the home and care of nonces, without forcing the node to remember all the values. The nonce index is also sent to the mobile node so that the correspondent node can find the nonce value it used to generate the home keygen token. The Care of Keygen Token is as follows: First(64, HMAC_SHA1(kcn( Home address|nonce|1))) The 1 at the end of the message is sent to distinguish it from the Home Keygen Token. The rest of the message is generated in more or less the same way. The message contains the nonce index along with the Care of Cookie to verify it was in fact sent the message. Once the Mobile Node receives both messages, the procedure is completed and it can send a binding update to the correspondent node. This is done by hashing together the two tokens to create a 20 octet binding key Kbm.
  • 13. When a binding update is sent it contains a sequence number and MAC. Both these fields prevent the participants from being subject to replay attacks and replayed binding updates. Correspondent nodes however must be careful while discarding any bindings because some bindings have nonces which are still valid and hence cannot be completely discarded. Figure 6. Movement of Binding messages [9]. In the case where both the mobile node and the correspondent node are mobile some problems can arise. In this case return routability signaling is sent to the correspondents home agent, if it has on, and not to its care of address. Return Routability is a very important part of the MIPv6 protocol and therefore its security is extremely important. To ensure that packets sent from the home agent to the mobile node the packets must be encapsulated securely. Therefore the home agent must be capable of of supporting IPsec ESP for tunneling these packets. Support of non-null encryptions transform and authentication algorithms must also be supported [8]. 3.4 Handoffs Mobile nodes keep changing their point off attachments in the internet. Thus it is imperative that the transition from one connection to another be done smoothly so as to not lose out on any datagrams that were sent to an old care of address, but are now will be dropped because the node has now moved to a different point in the internet. Moreover a study of TCPs working shows that the dropping of datagrams is magnified greatly. However, using route optimization we can attain smooth handoffs. Former foreign nodes can maintain a binding with former mobile visitors. This way even if packets are delivered to the old care of address the mobile host might still receive them courtesy of the binding that exists. In order to maximize the benefit from using route optimization on handoffs, we should avoid any involvement of the home agent. This is because the home agent is too far in most cases and by the time it reacts there might be a large amount of data which is lost. When a mobile node leaves one foreign agent for another, it can instruct the new foreign agent to send a binding to its old one. If no fresh binding update is sent to the old foreign agent it can just deliver the datagram to the home agent for further handling. Such action could however in theory cause a routing loop. Instead route optimization defines a way to use special tunnels, which indicate to the home agent the need for special handling. When a foreign agent send a datagram to the home agent, it lists the source address as the care of
  • 14. address of the foreign address in the newly encapsulated datagram. Now when the datagram is received by the home agent, it compares the source address with the latest care of address it has received from the last binding update. If the two addresses match then the home agent is not required to resend the packet. However if they do not match it is required to tunnel the decapsulated packet to the new care of address. An important point to note is that whenever a binding update is transmitted, it must be accompanied by an authentication extension. This is however when we consider smooth tradeoffs, mainly because foreign agents are considered as anonymous identities who cannot be trusted for anything other than following protocol. Thus a mobile node and a foreign agent do not share any secret. However when a new binding update is sent to the foreign agent from the mobile nodes new foreign agent, there must be some way to verify that this has not been forged. Usually when the foreign agent advertises its availability, its flags give an indication of the security that it can provide to the mobile node. The mobile node will select one of the menu of possible actions. The foreign agent then responds to the mobile nodes request and will later if necessary cooperate with the mobile node for a smooth handoffs. Usually for security the home agent provides a security key. This can be done in two ways, one if the home and foreign agent share a security association or if they do not have any such association. In the former case, the home agent picks a suitable number and encrypts it using the shared security association, and transmits it back to the foreign agent as part of the registration reply. The home agent also notifies the mobile node about the key value. In the latter case, usually the foreign agent sends a public key to the home agent along with the registration request and the home agent follows the same steps as before. If the foreign agent does not have a public key and does not have any security association with either the home agent or the mobile node, a Diffie-Hellman key exchange is possible [7]. 4 Comparative Analysis A comparative study of the two protocols is now presented. The results shown a have been obtained by simulations of both MIPv4 and MIPv6 protocols on the computer using softwares. The papers used as reference for these results have been clearly cited and listed in the bibliography. A comparison of the two protocols is done on some important parameters such as Throughput, Handover Latency, Percentage of Packets Delivered Correctly, End to End Delay and Time of delivery. An analysis of all the results obtained has been provided to try and determine the reasons for the results. The simulation for MIPv4 is done using a software Network Simulation 2 (NS2.33) and he one for MIPv6 is done on an NS2.33 extension MOBIWAN.
  • 15. Figure 7. Simulation Topology [4]. As can be seen from the simulation topology, there is one Mobile Host which is seen moving through 4 networks. BS1 is acting as a Home agent while others act as Foreign Agents. There is only on Correspondent Node which is trying to communicate with the Mobile Agent. Throughput: Throughput is defined as the rate at which data is processed in a specified amount of time. The following figure shows the throughput of the two protocols as a function of time.
  • 16. Figure8. Throughput of MIPv4 [4]. Figure 9.Throughput of MIPv6 [4].
  • 17. Analysis: As can be seen from the above diagrams the average through put of MIPv4 is about 90,000bits/second and that of MIPv6 is just above 250,000bits/second. The graphs however are not a clear representation of the actual case. This simulation was done in a situation which maximised the throughput for both cases, however there are many cases wherein MIPv4 outperforms MIPv6. MIPv6 will not perform well for messages smaller than 512 bytes, which is primarily due to the large overhead in the MIPv6 header [11]. Packet Delivery Ratio: Packet Delivery Ratio is the ratio of received packets to the number packets transmitted. Figure 10.PDR of the two protocols [4]. Analysis: As can be seen the delivery ratio is not that different between the two protocols. This implies that both protocols are just as reliable in transmitting data over the internet. The reason behind this high level of reliability is that the usual protocol used in conjunction with IP is TCP. When a packet is dropped in TCP it is usually retransmitted to ensure all the data is received by the destination. The few packets that are lost are usually due to noise burst and fading in the channels. Average End to End Delay: Delay is the amount of time it takes for the packet to get to the mobile node from the correspondent node. Figure 11.Average End-to-End Delay of the two protocols [4]. Analysis: As can be seen from the numbers there is stark contrast in the Average End-to- End Delay between the two protocols. The reason for this is two-fold. 1. In MIPv4, packets have to go through the Home Agent to be sent to the Mobile Node. This problem of Triangle Routing is the reason for the high average end-to-end delay. Since all the packets first go through the have to traverse two separate links before they reach their destination the delay increases. This also increases the chances of packets being dropped due to a faulty channel and the chances of them being damaged in transit, causing further delays in processing time which adds to the overall delay. 2. IN MIPv6, the main reason for improved performance in terms of delay is the implementation of Route optimization. Route optimization allows the correspondent node to communicate with the mobile node if it has a binding with that node. If it does not then the correspondent node can request a binding from the mobile node.
  • 18. This greatly reduces the transit time of the packets and improves the efficiency of the protocol. A second test setup was referred to examine the Handover Latency of the two Protocols. This test setup is shown below. Figure 12.Test Setup to Measure Handover Latency [12]. Handover Latency: When the mobile node moved away from the home network to a foreign network and the mobile node loses connection with the node while it sets up a connection foreign node is called Handover Latency. The results for the experiment using the above setup is show below. Figure 13.Handover Latency of MIPv4 on the left vs HandoverLatency of MIPv6 on the right [12]. Analysis: As can be seen from the two graphs the latency is definitely less in the MIPv4 graph, as indicated by the smaller valley in the graph. This is because in MIPv6 the node will confirm that it is no longer in contact with its home agent or previous care of agent by running a Neighbor Unreachability Test before starting a search for a new care of address. Following this there is slightly more complex procedure for acquiring a new care of address, therefore this increases the time for the mobile node to find a new care of address. 4.1 Comparison MIPv4 MIPv6 Lower Handover Latency Higher Handover Latency
  • 19. Suffers from Triangular Routing Supports Route Optimization to reduce effect of Triangular Routing Does not support multiple Home Agents Supports multiple Home Agents Does not use IPsec and relies on its own security mechanisms Uses IPsec for all security requirements including Binding Requests Has better Throughput for messages less than 512 bytes [11]. Better Throughput for messages greater than 512 bytes [11]. 5 A Critique of MIP Naming and Addressing A major issue seen by people in the Internet and Router manufacturing industry is the increasing size of the internet. No one expected it to be so popular and grow at such an exponential rate. Now apart from the exhaustion of IPv4 addresses another problem catching the eye of experts is the growing size of router tables. This issue is arising because every time a node moves from one network to another it sends out a new binding which is being updated in all the routers. Due to this the routing tables keep increasing with different routes and addresses which causes an increase in hardware for routers, which also in turn increases the complexity of the network. A simpler model of naming and addressing was suggested by John Soch and expanded upon by J. Saltzer. In this mode of addressing, each node will have three hierarchical addresses whose scope increases with the level of the address. The logic used was to structure the addresses in a way that was similar to the way operating system addresses were done. The highest layer would be the Application Layer, this layer would have a fixed name and would be location independent. The second layer would be the Node Address and would be location dependent and finally Point of Attachment Addresses would be route dependent. The basic idea here is to eliminate some of the big flaws that plague the IP model of addressing. In this model bindings only change the Point of attachment address and not the network address and home address as in the case of MIP. Here when a node moves only the POA is changed and updated to the directory. Routes are computed by finding the next POA and a list of all POA of neighboring hosts is done to facilitate fast movement of packets. By having the application name location independent we can eliminate the role of the home router since this address is always constant. If a particular node is looking for an application and cannot find it, it can ask a second node if it has the applications address in its routing table. If so the data is exchanged and communication is carried out. When routing is done, instead of having multiple addresses in its address field (IP tunneling) it can just have one address and let the POAs determine where the packet should be routed using data in their directory. This will greatly reduce the packet size which can in turn improve the throughput of the system since less redundant data is sent per packet. A simple way to avoid packets reaching a POA after the device has changed its POA is for it to also carry the name of the application so that if it has changed it can simultaneously be routed to the new POA which would have been update in the current locations directory [12][13].
  • 20. This is just a basic description of a larger idea which has a lot of potential to solve some fundamental problems of the current addressing protocols being followed. 6 Conclusion and Future Work With the exponential increase in number of mobile devices being connected to the internet it was imperative for the IETF to come up with a mobility management protocol. MIPv4 was a brilliant first attempt at Mobility Management. MIPv6 used the failings of MIPv4 to develop into a slightly better protocol with many protocols coming as a modification of MIPv6 such as Fast MIPv6 which deal with handoffs better than both the previous protocols. MIPv6 is being tipped as the protocol for the future of mobility management mainly due to the face that it can provide infinite addresses unlike MIPv4 which unfortunately was exhausted at the start of the decade. With the future of the world being the Internet of Things, MIPv6 has been seen as the solution for that primary problem. The issue being the overhead in the header creates a problem and will be a big obstacle to overcome along with the requirement of IPsec to be implemented in the protocol. In line with this, a mobility management protocol called MMIP6 is developed in order to control the mobility of vehicles [3]. MMIP6 is based on the principles of MIPv4 but designed for MIPv6 organized in ad-hoc networks. References: [1] Janani Chandrasekaran, “ Mobile IP: Issues, Cahllenges and Solutions”. [2] Fayza Nada, “Performance Analysis of Mobile IPv4 and Mobile IPv6”, The International Arab Journal o Information Technology, Volume 4, N0.2, April 2007. [3] Seyedeh Masoumeh Ahamadi, “Analysistowards Mobile IPv4 and Mobile IPv6 in Computer Networks”, http://www.mecs-press.org/ April 2012. [4] G B Himabindu, A.M Vedhagrani, S R Raj Kumar, “ Performance Evaluation of Mobility Management using Mobile IPv4 and Mobile IPv6 protocols”, International Journal of Computer Science and Information Technologies, Vol 5(5),2014. [5] Antonio J Jara et all, “ The Internet of Everything through IPv6: An analysis of Challenges, Solutions and Opportunities”, Journal of Wireless Mobile Networks, Ubiquitous Computing and Dependable Applications, Volume 4, N0:3 pp 97-118. [6] Sameer Chandragiri, “ Mobile IP- Security Issues and Solutions”. [7] Charles E. Perkins, “ Mobile IP”, IEEE Communications Magazine, May 1997. [8] Charles E. Perkins, “ IP Mobility Support for IPv4”, August 2002. [9] Charles E. Perkins, “Mobility Support in IPv6”, July 2011.
  • 21. [10] Albert Cabellos-Aparicio, Hector Julian-Bertomeu, Jose Núñez-Martínez, Loránd Jakab, René Serral-Gracià, Jordi Domingo-Pascual, “Measurement-Based Comparison of IPv4/IPv6 Mobility Protocols on a WLAN Scenario”. [11] Yu-Kwong Ricky Kwok, Vincent K.N. Lau, “Wireless Internet and Mobile Computing: Interoperability and Performance”. [12] J. Saltzer, “ On the Naming and Binding of Network Destinations” August 1993. [13] C. Sunshine, “ Addressing Problems in Multi-Network Systems”.