EPL476 Mobile Networks

mashpeemoveMobile - Wireless

Nov 24, 2013 (3 years and 8 months ago)

86 views

EPL476 Mobile Networks



Mobile Network Protocols


Instructor: Dr. Vasos Vassiliou


Slides adapted from Prof. Dr.
-
Ing. Jochen H. Schiller and W. Stallings

2

MOBILE NETWORK LAYER

Mobile IP

3

Mobile IP (I)


Mobile IP adds mobility support to the Internet network
layer protocol IP.


The Internet started at a time when no
-
one had a concept of
mobile computers.


The Internet of today lacks mechanisms for the support of users
traveling through the world.


IP is the common base for thousands of applications and runs over dozens of
different networks; this is the reason for supporting mobility at the IP layer.


Motivation for Mobile IP:


Routing


based on IP destination address, network prefix 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

4

Mobile IP (II)


Create specific routes to end
-
systems


mobile nodes?


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


Changing the IP address?


adjust the host IP address depending on the current location


almost impossible to find a mobile host, DNS has not been built
for frequent updates


TCP connection break

5

Mobile IP (III)


Requirements to Mobile IP:


Transparency


mobile end
-
systems keep their IP address


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 does


no changes to current end
-
systems and routers required


Mobile end
-
systems can communicate with fixed systems

6

Mobile IP (IV)


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

7

Real
-
life Solution


Take up the analogy of you moving from one
apartment to another. What do you do?


Leave a forwarding address with your old post
-
office


The old post
-
office forwards mail to your new
post
-
office, which then delivers it to you

8

Mobile IP
-

Definition



“Mobile IP (MIP) is a modification to IP
that allows nodes to continue to receive
datagrams no matter where they happen to
be attached to the Internet”

9

Mobile IP (V)


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


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 of the MN

10

Mobile IP (VI)


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

11

Mobile IP in detail …


Combination of 3 separable mechanisms:


Discovering the care
-
of address


Registering the care
-
of address


Tunneling to the care
-
of address


12

CN
2. HA Discovery Request
3. HA Discovery Reply
4. HA Registration through FA
5. HA Registration
Ack
.
1. CoA Discovery
MN
HA
1
2
3
--
MN is Registered with HA
--
4
5
5
--
CoA and HA Discovery
--
--
Registration Procedure
--
--
CN starts communication with MN
--
6. Data Packet
7. IP
-
in
-
IP Encapsulation
8. Tunneled Data
--
Signals 6
-
10a as above
--
8
7
7
6a. Data Packet
--
MN starts communication with CN
--
8a
Detunnelled
Data
9. Binding Update
6a
6a
--
Discovery and Registration as above
--
FA
8a
6
6
10
10. IP
-
in
-
IP tunneling
9
9
10a
10a.
Detunnelled
Data
CN
2. HA Discovery Request
3. HA Discovery Reply
4. HA Registration BU
5. HA Registration BU
Ack
.
1. CoA Discovery
MN
HA
1
2
3
--
MN is Registered with HA
--
4
5
5
--
CoA and HA Discovery
--
--
Registration Procedure
--
--
CN starts communication with MN
--
6. Data Packet
7. IP
-
in
-
IP Encapsulation
8. Tunneled Data
--
Signals 6
-
10 as above
--
8
7
7
6a. Data Packet
--
MN starts communication with CN
--
9. Binding Update
6a
6a
--
Discovery and Registration as above
--
FA
6
6
10
10. Binding
Ack
9
9
MIPv4

MIPv6

Mobile IP in detail

13

Discovering the care
-
of address


Discovery process built on top of an existing
standard protocol: router advertisements


Router advertisements extended to carry available
care
-
of addresses called: agent advertisements


Foreign agents (and home agents) send agent
advertisements periodically


A mobile host can choose not to wait for an
advertisement, and issue a solicitation message

14

Agent advertisements


Foreign agents send advertisements to advertise
available care
-
of addresses


Home agents send advertisements to make
themselves known


Mobile hosts can issue agent solicitations to
actively seek information


If mobile host has not heard from a foreign agent
its current care
-
of address belongs to, it seeks
for another care
-
of address

15

Registering the Care
-
of
Address


Once mobile host receives care
-
of address, it
registers it with the home agent


A registration request is first sent to the home
agent (through the foreign agent)


Home agent then approves the request and sends a
registration reply back to the mobile host


Security?

16

Registration Illustration

17

Home agent discovery


If the mobile host is unable to
communicate with the home agent, a
home
agent discovery

message is used


The message is sent as a broadcast to the
home agents in the home network

18

Tunneling to the Care
-
of address


When home agent receives packets addressed to
mobile host, it forwards packets to the care
-
of
address


How does it forward it?
-

encapsulation


The default encapsulation mechanism that must
be supported by all mobility agents using mobile IP
is IP
-
within
-
IP


Using IP
-
within
-
IP, home agent inserts a new IP
header in front of the IP header of any datagram

19

Tunneling (contd.)


Destination address set to the care
-
of
address


Source address set to the home agent’s
address


After stripping out the first header, IP
processes the packet again

20

Tunneling Illustration

21

(current physical network

for the MN)

home network

(physical home network

for the MN)

Mobile IP (VII)


Example network

Internet

router

HA

MN

router

FA

foreign

network

router

end
-
system

CN

22

Mobile IP (VIII)


Data transfer to the mobile system

Internet

home network

foreign

network

FA

HA

MN

receiver

1

2

3

sender

CN

1. Sender sends to the IP address of MN,


HA intercepts packet

2. HA tunnels packet to COA, here FA,


by encapsulation

3. FA forwards the packet to the MN

23

foreign

network

home network

Mobile IP (IX)


Data transfer from the mobile system

Internet

HA

MN

sender

receiver

CN

1. Sender sends to the IP address


of the receiver as usual,


FA works as default router

FA

1

24

Mobile IP (XIII)


Optimization of packet forwarding:


Triangular routing


sender sends all packets via HA to MN


higher latency and network load


Solutions


optimization


HA informs a sender about the location of MN


sender learns the current location of MN


direct tunneling to this location


big security problems!

25

Mobile IP (XIV)


Change of FA


Packets on
-
the
-
fly during the change can be lost


new FA informs old FA to avoid packet loss, old FA forwards
remaining packets to new FA


this information also enables the old FA to release resources
for the MN

26

Mobile IP (XV)


Change of the foreign agent with the optimized mobile
IP

CN

HA

FA
old

FA
new

MN

t

request

update

ACK

data

data

MN changes

location

registration

update

ACK

data

data

data

warning

update

ACK

data

data

registration

27

Mobile IP (XVI)


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

28

Mobile IP (XVII)


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

29

[modified from Ericsson Tech. Rep. 11/0362
-
FCB, Dec 2000
]


Mobile IP in detail

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

Agent advertisement

preference level 1

router address 1

#addresses

type

addr. size

lifetime

checksum

COA 1

COA 2

type = 16

sequence number

length

0

7

8

15

16

31

24

23

code

preference level 2

router address 2

. . .

registration lifetime

. . .

R

B

H

F

M

G

r


reserved

T

Registration

t

MN

HA

t

MN

FA

HA

Mobile IP registration request

home agent

home address

type = 1

lifetime

0

7

8

15

16

31

24

23

T x

identification

COA

extensions . . .

S

B

D

M

G

r

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

Mobile IP registration reply

home agent

home address

type = 3

lifetime

0

7

8

15

16

31

code

identification

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

Encapsulation

original IP header

original data

new data

new IP header

outer header

inner header

original data

Encapsulation I


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

Care
-
of address COA

IP address of HA

TTL

IP identification

IP
-
in
-
IP

IP checksum

flags

fragment offset

length

DS (TOS)

ver.

IHL

IP address of MN

IP address of CN

TTL

IP identification

lay. 4 prot.

IP checksum

flags

fragment offset

length

DS (TOS)

ver.

IHL

TCP/UDP/ ... payload

Encapsulation II


Minimal encapsulation (optional)


avoids repetition of identical fields


e.g. TTL, IHL, version, DS (RFC 2474, old: TOS)


only applicable for non fragmented packets, no space left for fragment
identification

care
-
of address COA

IP address of HA

TTL

IP identification

min. encap.

IP checksum

flags

fragment offset

length

DS (TOS)

ver.

IHL

IP address of MN

original sender IP address
(if S=1)

S

lay. 4 protoc.

IP checksum

TCP/UDP/ ... payload

reserved

Generic Routing Encapsulation

original

header

original data

new data

new header

outer header

GRE

header

original data

original

header

Care
-
of address COA

IP address of HA

TTL

IP identification

GRE

IP checksum

flags

fragment offset

length

DS (TOS)

ver.

IHL

IP address of MN

IP address of CN

TTL

IP identification

lay. 4 prot.

IP checksum

flags

fragment offset

length

DS (TOS)

ver.

IHL

TCP/UDP/ ... payload

routing (optional)

sequence number (optional)

key (optional)

offset (optional)

checksum (optional)

protocol

rec.

rsv.

ver.

C

R

K

S

s

RFC 1701

RFC 2784 (updated by 2890)

reserved1 (=0)

checksum (optional)

protocol

reserved0

ver.

C

38

Route Optimizations


Enable direct notification of the
corresponding host


Direct tunneling from the corresponding
host to the mobile host


Binding cache maintained at corresponding
host

39

Route optimizations (contd.)



4 types of messages


Binding update


Binding request


Binding warning


Binding acknowledge

40

Binding Update


When a home agent receives a packet to be
tunneled to a mobile host, it sends a binding
update message to the corresponding host


When a home agent receives a binding request
message, it replies with a binding update message


Also used in the the smooth
-
handoffs optimization

41

Binding Update (Contd.)


Corresponding host caches binding and uses it for
tunneling subsequent packets


Lifetime of binding?


Corresponding host that perceives a near
-
expiry
can choose to ask for a binding confirmation using
the binding request message


Home agent can choose to ask for an
acknowledgement to which a corresponding host
has to reply with a binding ack message

42

Binding warning


When a foreign agent receives a tunneled
message, but sees no visitor entry for the mobile
host, it generates a binding warning message to
the appropriate home agent


When a home agent receives a warning, it issues an
update message to the corresponding host


What if the foreign agent does not have the home
agent address (why?) ?

43

Binding Update and Warning

Home Agent

Foreign Agent

Corresponding Host

Mobile Host

BU

BW

BW

BR

BA

Optimization of packet
forwarding


Problem: 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

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

Reverse tunneling (RFC 3024, was: 2344)

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

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

48

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

49

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!

50

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

not encrypted

encrypted

IP security architecture I


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
-
Header

IP
-
Header

UDP/TCP
-
Paket

authentication header

IP header

UDP/TCP data

ESP header

IP header

encrypted data


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)


registration reply

registration request

registration request

IP security architecture II

MH

FA

HA

registration reply

MH
-
HA authentication

MH
-
FA authentication

FA
-
HA authentication

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

FA

MH

HA

response:

E
HA
-
FA

{session key}

E
HA
-
MH

{session key}


54

Recap


Host mobility and Internet addresses


Post
-
office analogy


Home agent, foreign agent, care
-
of address, home
address


Registration and Tunneling


Mobile IP problems


Mobile IP Optimizations


Other options