1
What if we use a Mobile computer in an internet straight away?
Host sends the IP packet with the destination address and other fields.
The destination address determines the sub-net that the host belongs to
and also the host address.
Ex., 129.13.42.99 specifies that the physical subnet with prefix
129.13.42 is to be connected to.
If the receiver has moved outside the subnet area, the packet will not
reach.
Thus, a host needs a topologically correct address. But if the host keeps
changing the physical address, it is impossible to keep track of it.
**** Mobile IP is the answer to these issues******
Mobile Network Layer
2
Routing
based on IP destination address, network prefix (e.g. 129.13.42)
determines physical subnet
change of physical subnet implies change of IP address to have a
topological correct address (standard IP) or needs special entries in
the routing tables
Specific routes to end-systems?
change of all routing table entries to forward packets to the right
destination
does not scale with the number of mobile hosts and frequent
changes in the location, security problems
Changing the IP-address?
adjust the host IP address depending on the current location
almost impossible to find a mobile system, DNS updates take to long
time
TCP connections break, security problems
Mobile Network Layer
3
Requirements to Mobile IP
Transparency
mobile end-systems keep their IP address, Mobility to be transparent to
higher layers.
continuation of communication after interruption of link possible
point of connection to the fixed network can be changed
Compatibility
support of the same layer 2 protocols as IP
no changes to current end-systems and routers required
mobile end-systems can communicate with fixed systems
Security
authentication of all registration messages
Efficiency and scalability
only little additional messages to the mobile system required (connection
typically via a low bandwidth radio link)
world-wide support of a large number of mobile systems in the whole
Internet
4
Terminology
Mobile Node (MN)
system (node) that can change the point of connection
to the network without changing its IP address
Home Agent (HA)
system in the home network of the MN, typically a router
registers the location of the MN, tunnels IP datagrams to the COA
The tunnel for the packets for the MN starts at the HA.
HA maintains a location registry. The current COA informs the HA about the current
location of the MN.
Foreign Agent (FA)
system in the current foreign network of the MN, typically a router
forwards the tunneled datagrams to the MN, typically also the default router for the MN
Care-of Address (COA)
address of the current tunnel end-point for the MN (at FA or MN)
actual location of the MN from an IP point of view
can be chosen, e.g., via DHCP
Correspondent Node (CN)
communication partner, CN can be a fixed or a mobile node.
5
Two Possibilities for COA Location
Foreign Agent COA : COA located at the FA.
COA is the IP address of the FA. FA is the tunnel end point
and forwards packets to the MN.
Many MNs using the FA can share the COA.
Co-located COA
If the MN temporarily acquires an additional IP address, this
IP address can act as COA. One problem with co-located
MNs is that it uses additional IP address which is scarce
generally.
6
Example network
Internet
router
router
router
end-system
FA
HA
MN
home network
foreign
network
(physical home network
for the MN)
(current physical network
for the MN)
CN
7
Data transfer to the mobile system
Internet
sender
FA
HA
MN
home network
foreign
network
receiver
1
2
3
1. Sender sends to the IP address of MN,
HA intercepts packet (proxy ARP)
2. HA tunnels packet to COA, here FA,
by encapsulation
3. FA forwards the packet
to the MN
CN
8
Data transfer from the mobile system
Internet
receiver
FA
HA
MN
home network
foreign
network
sender
1
1. Sender sends to the IP address
of the receiver as usual,
FA works as default router
CN
9
Overview
CN
router
HA
router
FA
Internet
router
1.
2.
3.
home
network
MN
foreign
network
4.
CN
router
HA
router
FA
Internet
router
home
network
MN
foreign
network
COA
10
Further definitions…
Mobile Node(MN):
-It is a mobile device or Router that can change its point of attachment to internet
by the use of Mobile IP.
Correspondent Node(CN) : This is a partner needed for communication. CN can be
fixed or mobile.
Home Network : Subnet that the MN belongs to. No mobile IP support is needed
within the home network.
Foreign Network : Current network that the mobile is visiting.
- Can have a Care of Address (COA) that can act as a tunnel for sending the
packets to an MN.
- Can be a default router for the MN
- Can provide security
- Typically, it is implemented on the router for the subnet that the MN attaches to.
COA : Marks the tunnel end point; IT is the IP address of the FA.
11
Further definitions…
IP Packet Delivery
-CN wants to send an IP packet to MN
-CN does not need to know the IP address of MN. MN is the destination
address.
-The internet routes the packet to the router of the home network that the
packet belongs to.
-HA intercepts the packet, being aware that MN is not in its home
network.
-The packet is encapsulated and tunneled to the COA. A new header is
put in front of the old IP header showing COA as the new destination and
HA as the source of the encapsulated packet.
-The Foreign Agent(FA) now decapsulates the packet, I.e, removes the
additional header and forwards the original packet with CN as source and
MN as destination to MN.
12
Network Integration
Agent Advertisement
HA and FA periodically send advertisement messages into their physical
subnets
MN listens to these messages and detects, if it is in the home or a foreign
network (standard case for home network)
MN reads a COA from the FA advertisement messages
Registration (always limited lifetime!)
MN signals COA to the HA via the FA, HA acknowledges via FA to MN
these actions have to be secured by authentication
Advertisement
HA advertises the IP address of the MN (as for fixed systems), i.e. standard
routing information
routers adjust their entries, these are stable for a longer time (HA responsible
for a MN over a longer period of time)
packets to the MN are sent to the HA,
independent of changes in COA/FA
13
Agent Advertisement
Foreign Agents(FSs) and Home Agents(HAs) Advertise their presents
periodically via the Agent Advt Messages. - beacon broadcast to the
subnet.
Upper part of the packet represents the ICMP (Advt Intenet Control
Message Protocol)
Lower part represents the mobility.
14
Agent Advertisement
type = 16
length = 6 + 4 * #COAs
R: registration required
B: busy, no more registrations
H: home agent
F: foreign agent
M: minimal encapsulation
G: GRE encapsulation
r: =0, ignored (former Van Jacobson compression)
T: FA supports reverse tunneling
reserved: =0, ignored
preference level 1
router address 1
#addresses
type
addr. size lifetime
checksum
COA 1
COA 2
type = 16 sequence numberlength
0 78 1516 312423
code
preference level 2
router address 2
. . .
registration lifetime
. . .
RBHFMGr reservedT
ICMP : Internet Control Message Protocol
Mobility Extension
15
Agent Advt Packet
Type : set to 9
Code =0 if the agent also routes packets from non-mobile nodes
=16 if it does not route anything other than mobiles nodes
#addresses: no. of addresses advertised with this packet
Addresses follow.
Life time: length of time that these advts are valid.
Mobile extensions :
- type : set to 16
- length = 6 + 4*no. of addresses.
- sequence no. : total no. of advts sent since initialisation.
- COA 1, COA 2… : COAs advertised.
16
Agent Solicitation
If no advertisements are received in a specified interval, and if an MN
has not received a COA by any other means, MN must send Agent
Solicitation messages.
MN searches for a FN through these messages. When MNs are moving
at a good pace, <1 sec interval solicitations are required so that packets
are not lost.
If a MN does not receive reply to its solicitations, it must reduce the
solicitation interval to avoid flooding of network traffic.
At the End of Advts and Solicitation:
MN receives a COA, either for a FA or for a co-located COA.
17
Registration
The main purpose of Registration is to inform HA of the current
location for correct forwarding of packets.
If the COA is at the FA
- MN sends a registration request via contained in COA to FA.
-FA forwards this request to HA.
-HA sets up a mobility binding that contains MN’s home IP
address and the current COA.
-Registration expires after the life time.
-After setting up mobility, the FA sends a reply back to FA that
forwards the same to MN
18
Registration
If the COA is collocated…
MN sends the request directly to HA and vice versa.
19
Registration
t
MN HA
registration
request
registration
reply
t
MN FA HA
registration
request
registration
request
registration
reply
registration
reply
Registration of the MN via FA
(Case 1)
Registration Directly (If COA is
collocated) (Case 2)
20
Registration
Case-1:
MN sends the Reg request to FA. FA forwards this to HA
HA sets up a mobility binding that contains MN’s home IP
address and the current COA.
After setting up mobility binding, the HA sends a reply back to FA
and FA forwards the same to MN.
Case –2:
MN sends a Reg. Request to HA and HA replies to this request.
21
Mobile IP Registration Request (UDP packet format)
home agent
home address
type = 1 lifetime
0 78 1516 312423
T x
identification
COA
extensions . . .
SBDMGr
S: simultaneous bindings
B: broadcast datagrams
D: decapsulation by MN
M mininal encapsulation
G: GRE encapsulation
r: =0, ignored
T: reverse tunneling requested
x: =0, ignored
Having received a COA, MN has to register with HA. The main purpose of registration is to inform the HA of the
current location for for correct forwarding of packets.
22
Mobile IP Registration Request (UDP packet format)
Type set to 1 : Registration required
S bit enabled : MN can specify if it wants the HA to retain the prior
mobility bindings, It allows simultaneous bindings
B set to 1 : indicates that MN also wants to receive the broadcast
packets which have been received by the HA in the home network.
D Bit : indicates that the MN uses a collocated COA and it carries out
decapsulation at tunel end point.
M & G : Whether minimal encapsulation or general encapsulation is
required.
T indicates reverse tunneling. R & x are set to zero in this case.
23
Mobile IP Registration Reply
home agent(addr of HA)
home address(addr of MN)
type = 3 lifetime
0 78 1516 31
code
Identification(64 bit - to match reg. Req with replies)
extensions . . . Example codes:
registration successful
0 registration accepted
1 registration accepted, but simultaneous mobility bindings unsupported
registration denied by FA
65 administratively prohibited
66 insufficient resources
67 mobile node failed authentication
68 home agent failed authentication
69 requested Lifetime too long
registration denied by HA
129 administratively prohibited
131 mobile node failed authentication
133 registration Identification mismatch
135 too many simultaneous mobility bindings
24
Encapsulation
original IP headeroriginal data
new datanew IP header
outer header inner header original data
Original Header + Original Data
COA
25
Encapsulation-1 – IP-in-IP Encapsulation
Care-of address COA
IP address of HA
TTL
IP identification
IP-in-IP IP checksum
flagsfragment offset
lengthDS (TOS)ver.IHL
IP address of MN
IP address of CN
TTL
IP identification
lay. 4 prot. IP checksum
flagsfragment offset
lengthDS (TOS)ver.IHL
TCP/UDP/ ... payload
Encapsulation of one packet into another as payload
e.g. IPv6 in IPv4 (6Bone), Multicast in Unicast (Mbone)
here: e.g. IP-in-IP-encapsulation, minimal encapsulation or GRE (Generic Record
Encapsulation)
IP-in-IP-encapsulation (mandatory, RFC 2003)
tunnel between HA and COA
New
Header
Original
Header
26
Encapsulation-1 – IP-in-IP Encapsulation
Ver : Ipv Ver 4
IHL : Internet Header Length (length of the outer header in 32 bits)
DS(TOS-Type of Service) : Copied from the inner header
Length : length of completed encapsulated packet
IP Id, Flags, Fragmented Offset : No special meaning for Mobile IP
TTL (Time to Live) : Must be high enough so that packet can reach the tunnel end point.
IP-In-IP : Type of the protocol : 4 for IPv4
IP Address of HA : Source Address
Care of Addr of COA : Tunnel exit point as destination address.
27
Encapsulation-II
care-of address COA
IP address of HA
TTL
IP identification
min. encap. IP checksum
flagsfragment offset
lengthDS (TOS)ver.IHL
IP address of MN
original sender IP address (if S=1)
Slay. 4 protoc. IP checksum
TCP/UDP/ ... payload
reserved
Minimal encapsulation (optional)
avoids repetition of identical fields
e.g. TTL, IHL, version, DS (RFC 2474, old: TOS)
only applicable for unfragmented packets, no space left for fragment
identification
28
Generic Routing Encapsulation (GRE)
original
header
original data
new datanew header
outer header
GRE
header
original data
original
header
Care-of address COA
IP address of HA
TTL
IP identification
GRE IP checksum
flagsfragment offset
lengthDS (TOS)ver.IHL
IP address of MN
IP address of CN
TTL
IP identification
lay. 4 prot. IP checksum
flagsfragment offset
lengthDS (TOS)ver.IHL
TCP/UDP/ ... payload
routing (optional)
sequence number (optional)
key (optional)
offset (optional)checksum (optional)
protocolrec.rsv.ver.CRKSs
RFC 1701
RFC 2784
reserved1 (=0)checksum (optional)
protocolreserved0 ver.C
•Supports other other network layer
protocols in addition to IP.
•Allows encapsulation of the packets of
one protocol suite into the payload
portion of another protocol suite.
29
Issue with Routing – Need for Optimization
Japanese
German
Meeting at a
conference in
Hawaii
30
Issue with Routing – Need for Optimization
Japanese sends a data to German
Japanese computer sends a data to HA of German
HA in Germany encapsulates the packet and tunnels to the COA of the German Lap Top in Hawaii.
This is very inefficient since the lap tops are just meters apart.
The scheme is called Triangular Routing (CN->HA, HA->COA/MN, MN->back to CN).
31
Optimization of Packet Forwarding
Triangular Routing
sender sends all packets via HA to MN
higher latency and network load
“Solutions”
sender learns the current location of MN
direct tunneling to this location
HA informs a sender about the location of MN
big security problems!
Change of FA
packets on-the-fly during the change can be lost
new FA informs old FA to avoid packet loss, old FA now forwards
remaining packets to new FA
this information also enables the old FA to release resources for the
MN
32
Change of Foreign Agent
CN HA FA
old
FA
new
MN
MN changes
location
t
Data
Data
Data
Update
ACK
Data
Data
Registration
Update
ACK
Data
Data
Data
Warning
Request
Update
ACK
Data
Data
33
Change of Foreign Agent
Binding Request : CN sends a request to HA for the current location of HA
Binding Update : If MN has allowed dissemination of the current location, it can send
an update.
Binding ACK : CN acknowledges this update message and stores the mobility
binding. CN can directly send the data to the current foreign
agent(Faold). Faold forwards the packets to MN.
Binding Warning : If a node decapsulates a packet for MN but it is not the correct FA
for the MN, this node sends a binding warning. The recipient knows
that it has to get a fresh binding.
Tunneling and Encapsulation is now done by CN and not HA.
34
Change of Foreign Agent
MN changes the Location :
MN changes location and registers with a new foreign agent FAnew.
This registration is forwarded to HA for Location Database Update. FAnew informs
FAold about the current registration of MN. This is done via an update message.
Faold acknowledges it.
CN acknowledges this update and stores the mobility binding.
Now, CN can send the Data directly to FAold.
35
Reverse Tunneling
Internet
receiver
FA
HA
MN
home network
foreign
network
sender
3
2
1
1. MN sends to FA
2. FA tunnels packets to HA
by encapsulation
3. HA forwards the packet to the
receiver (standard case)
CN
36
Mobile IP with Reverse Tunneling
Router accept often only “topological correct“ addresses (firewall!)
a packet from the MN encapsulated by the FA is now topological
correct
furthermore multicast and TTL problems solved (TTL in the home
network correct, but MN is to far away from the receiver)
Reverse tunneling does not solve
problems with firewalls, the reverse tunnel can be abused to
circumvent security mechanisms (tunnel hijacking)
optimization of data paths, i.e. packets will be forwarded through the
tunnel via the HA to a sender (double triangular routing)
The standard is backwards compatible
the extensions can be implemented easily and cooperate with current
implementations without these extensions
Agent Advertisements can carry requests for reverse tunneling
37
Mobile IP and IPv6
Mobile IP was developed for IPv4, but IPv6 simplifies the protocols
security is integrated and not an add-on, authentication of
registration is included
COA can be assigned via auto-configuration (DHCPv6 is one
candidate), every node has address autoconfiguration
no need for a separate FA, all routers perform router advertisement
which can be used instead of the special agent advertisement;
addresses are always co-located
MN can signal a sender directly the COA, sending via HA not needed
in this case (automatic path optimization)
„soft“ hand-over, i.e. without packet loss, between two subnets is
supported
MN sends the new COA to its old router
the old router encapsulates all incoming packets for the MN and
forwards them to the new COA
authentication is always granted
38
Problems with Mobile IP
Security
authentication with FA problematic, for the FA typically belongs to
another organization
no protocol for key management and key distribution has been
standardized in the Internet
patent and export restrictions
Firewalls
typically mobile IP cannot be used together with firewalls, special set-
ups are needed (such as reverse tunneling)
QoS
many new reservations in case of RSVP
tunneling makes it hard to give a flow of packets a special treatment
needed for the QoS
Security, firewalls, QoS etc. are topics of current research and
discussions!
39
Security in Mobile IP
Security requirements (Security Architecture for the Internet Protocol,
RFC 1825)
Integrity
any changes to data between sender and receiver can be detected
by the receiver
Authentication
sender address is really the address of the sender and all data
received is really data sent by this sender
Confidentiality
only sender and receiver can read the data
Non-Repudiation
sender cannot deny sending of data
Traffic Analysis
creation of traffic and user profiles should not be possible
Replay Protection
receivers can detect replay of messages
40
IP Security Architecture-I
not encrypted encrypted
Two or more partners have to negotiate security mechanisms to setup a
security association
typically, all partners choose the same parameters and mechanisms
Two headers have been defined for securing IP packets:
Authentication-Header
guarantees integrity and authenticity of IP packets
if asymmetric encryption schemes are used, non-repudiation can also
be guaranteed
Encapsulation Security Payload
protects confidentiality between communication partners
Authentification-HeaderIP-Header UDP/TCP-Paketauthentication headerIP header UDP/TCP data
ESP headerIP header encrypted data
41
IP Security Architecture-II
registration reply
registration request
registration request
MH FA HA
registration reply
MH-HA authentication
MH-FA authentication FA-HA authentication
Mobile Security Association for registrations
parameters for the mobile host (MH), home agent (HA), and foreign agent
(FA)
Extensions of the IP security architecture
extended authentication of registration
prevention of replays of registrations
time stamps: 32 bit time stamps + 32 bit random number
nonces: 32 bit random number (MH) + 32 bit random number (HA)
42
Key Distribution
Home agent distributes session keys
foreign agent has a security association
with the home agent
mobile host registers a new binding at
the home agent
home agent answers with a new session
key for foreign agent and mobile node
foreign agent has a security association with the home agent
mobile host registers a new binding at the home agent
home agent answers with a new session key for foreign agent and mobile node
FA MH
HA
response:
E
HA-FA
{session key}
E
HA-MH
{session key}
43
IP Micro Mobility Support
Micro-mobility support:
Efficient local handover inside a foreign domain
without involving a home agent
Reduces control traffic on backbone
Especially needed in case of route optimization
Example approaches:
Cellular IP
HAWAII
Hierarchical Mobile IP (HMIP)
Important criteria:
Security Efficiency, Scalability, Transparency, Manageability
44
Cellular IP
CIP Gateway
Internet
BS
MN1
data/control
packets
from MN 1
Mobile IP
BSBS
MN2
packets from
MN2 to MN 1
Operation:
„CIP Nodes“ maintain routing
entries (soft state) for MNs
Multiple entries possible
Routing entries updated based on
packets sent by MN
CIP Gateway:
Mobile IP tunnel endpoint
Initial registration processing
Security provisions:
all CIP Nodes share
„network key“
MN key: MD5(net key, IP addr)
MN gets key upon registration
45
Cellular IP : Security
Advantages:
Initial registration involves authentication of MNs
and is processed centrally by CIP Gateway
All control messages by MNs are authenticated
Replay-protection (using timestamps)
Potential problems:
MNs can directly influence routing entries
Network key known to many entities
(increases risk of compromise)
No re-keying mechanisms for network key
No choice of algorithm (always MD5, prefix+suffix mode)
Proprietary mechanisms (not, e.g., IPSec AH)
46
Cellular IP : Other Issues
Advantages:
Simple and elegant architecture
Mostly self-configuring (little management needed)
Integration with firewalls / private address support possible
Potential problems:
Not transparent to MNs (additional control messages)
Public-key encryption of MN keys may be a problem
for resource-constrained MNs
Multiple-path forwarding may cause inefficient use of
available bandwidth
47
HAWAII (Handoff Aware wireless access internet infrastructure)
Operation:
MN obtains co-located COA
and registers with HA
Handover: MN keeps COA,
new BS answers Reg. Request
and updates routers
MN views BS as foreign agent
Security provisions:
MN-FA authentication mandatory
Challenge/Response Extensions mandatory
BS
3
Backbone
Router
Internet
BS
MN
BS
MN
Crossover
Router
DHCP
Server
HA
DHCP
Mobile IP
Mobile IP
1
2
4
3
48
HAWAII (Handoff Aware wireless access internet infrastructure)
Step 1: On entering the HAWAII domain, MN obtains the colocated COA
Step 2: MN Registers with HA
Step 3: When moving to another cell within a foreign domain, MN sends a
Registration request to the new base station as to a foreign agent (mixing the
concepts of colocated COA and foreign agent COA)
Step 4: The Base station intercepts the registration request and sends out a Handoff
update message. Thus, all routers are reconfigured from the path from old and the
new Base Sattions to the so-called cross-over router.
When routing has been reconfigured successfully, the base station sends a
registration reply to the mobile node, again as if it were a foreign agent.
49
HAWAII: Security
Advantages:
Mutual authentication and C/R extensions mandatory
Only infrastructure components can influence routing entries
Potential problems:
Co-located COA raises DHCP security issues
(DHCP has no strong authentication)
Decentralized security-critical functionality
(Mobile IP registration processing during handover)
in base stations
Authentication of HAWAII protocol messages unspecified
(potential attackers: stationary nodes in foreign network)
MN authentication requires PKI or AAA infrastructure
50
HAWAII: Other issues
Advantages:
Mostly transparent to MNs
(MN sends/receives standard Mobile IP messages)
Explicit support for dynamically assigned home
addresses
Potential problems:
Mixture of co-located COA and FA concepts may
not be
supported by some MN implementations
No private address support possible
because of co-located COA
51
Hierarchical Mobile IPv6 (HMIPv6)
Operation:
Network contains mobility anchor point (MAP)
mapping of regional COA (RCOA) to link COA (LCOA)
Upon handover, MN informs
MAP only
gets new LCOA, keeps RCOA
HA is only contacted if MAP
changes
Security provisions:
no HMIP-specific
security provisions
binding updates should be
authenticated
MAP
Internet
AR
MN
AR
MN
HA
binding
update
RCOA
LCOA
oldLCOA
new
52
Hierarchical Mobile IP: Security
Advantages:
Local COAs can be hidden,
which provides some location privacy
Direct routing between CNs sharing the same link is
possible (but might be dangerous)
Potential problems:
Decentralized security-critical functionality
(handover processing) in mobility anchor points
MNs can (must!) directly influence routing entries
via binding updates (authentication necessary)
53
Hierarchical Mobile IP: Other issues
Advantages:
Handover requires minimum number
of overall changes to routing tables
Integration with firewalls / private address support
possible
Potential problems:
Not transparent to MNs
Handover efficiency in wireless mobile scenarios:
Complex MN operations
All routing reconfiguration messages
sent over wireless link
54
DHCP: Dynamic Host Configuration
Protocol
Application
simplification of installation and maintenance of networked computers
supplies systems with all necessary information, such as IP address, DNS
server address, domain name, subnet mask, default router etc.
enables automatic integration of systems into an Intranet or the Internet, can
be used to acquire a COA for Mobile IP
Client/Server-Model
the client sends via a MAC broadcast a request to the DHCP server (might be
via a DHCP relay)
client relay
clientserver
DHCPDISCOVER
DHCPDISCOVER
55
DHCP - protocol mechanisms
time
server
(not selected)
client
server
(selected)
initialization
collection of replies
selection of configuration
initialization completed
release
confirmation of
configuration
delete context
determine the
configuration
DHCPDISCOVER
DHCPOFFER
DHCPREQUEST
(reject)
DHCPACK
DHCPRELEASE
DHCPDISCOVER
DHCPOFFER
DHCPREQUEST
(options)
determine the
configuration
56
DHCP characteristics
Server
several servers can be configured for DHCP, coordination not
yet standardized (i.e., manual configuration)
Renewal of configurations
IP addresses have to be requested periodically, simplified
protocol
Options
available for routers, subnet mask, NTP (network time
protocol) timeserver, SLP (service location protocol) directory,
DNS (domain name system)
Big security problems!
no authentication of DHCP information specified