85
Lecture 09 Location Management 第 9 第 第第第第第第 §9.1 LM Basics §9.2 LM in Cellular Networks §9.3 LM in Ad Hoc Networks §9.4 Mobile IP

Lecture 09 Location Management 第 9 讲 移动位置管理

  • Upload
    jaimie

  • View
    122

  • Download
    1

Embed Size (px)

DESCRIPTION

Lecture 09 Location Management 第 9 讲 移动位置管理. §9.1 LM Basics §9.2 LM in Cellular Networks §9.3 LM in Ad Hoc Networks §9.4 Mobile IP. What’s It?. Location is useful Communication: c all forwarding , data forwarding Location based services Location is? Geographical coordinate Cell ID - PowerPoint PPT Presentation

Citation preview

Page 1: Lecture 09 Location Management 第 9 讲 移动位置管理

Lecture 09 Location Management第 9 讲 移动位置管理

§9.1 LM Basics

§9.2 LM in Cellular Networks

§9.3 LM in Ad Hoc Networks

§9.4 Mobile IP

Page 2: Lecture 09 Location Management 第 9 讲 移动位置管理

What’s It?

Location is usefulCommunication: call forwarding , data forwardingLocation based services

Location is?Geographical coordinateCell IDIP addr…

Location management.The maintenance of the binding between the logical identifier and physical location of the user.

LBS App.

Location Management

Localization Module

Geographic Information

System

A special kind of data value in a mobile data management system.A data item whose value changes with respect to time.

Page 3: Lecture 09 Location Management 第 9 讲 移动位置管理

Key Issues in Location Management

A mobile user creates uncertainty of his/her exact location. How to know the current location?

From localization/positioning system

Where to store the location information?Location database

What to do for new location?Location update

Who to maintain and provide location information?Location server, with cooperation from clients

Page 4: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Services

Location services are provided by a location server. Location server manages a location database, which holds

user location.It receives user position updates and stores into the location database.

Location database (also called moving object database) contains location information about mobile users.

Mobile users or moving objects have their identity.

Current user locations are stored in multiple databases or replicated databases.

Location information is queried by different agency at different places to achieve their functionality, e.g. location-based services.

Page 5: Lecture 09 Location Management 第 9 讲 移动位置管理

Locating Moving Objects

Moving objects:Mobile devices, Mobile users, Mobile software

Two extremes to find their current location:Store everywhere: Cost of location update is very high.

Full replication of location

Allow search to be performed locally (fast).

Search everywhere: No cost of updateNo location information is stored anywhere.

Searching is performed on demand everywhere (expensive).

One should balance between search and update costs.Perform location update to certain key places

Search within some area

Page 6: Lecture 09 Location Management 第 9 讲 移动位置管理

Locating Moving Objects

Availability

Nowhere

At all sites

At selected sites (e.g., at frequently calling cells)

Occurrence

Never update

Always update (at each movement)Preci

sion

Exact location

The whole network

Set of locations

Periodic update

Page 7: Lecture 09 Location Management 第 9 讲 移动位置管理

Locating Moving Objects

Three design issues:Where: availability

At all sites, at selected (frequently visited) sites or at no site.When: occurrence

Stored location is always updated, updated periodically, or never updated.What: precision

Exact location, within a set of possible locations, or any location within network.

Two basic operations:Paging

Search initiated by system to find the mobile unit.Server broadcasts a search message and target replies via uplink channel.

UpdateImpose an upper bound on the location uncertainty.Mobile unit sends update message via uplink channel.

Page 8: Lecture 09 Location Management 第 9 讲 移动位置管理

Cost of Location Management

Cost of Location Management System (LMS) includes Number of database updatesNumber of messages, size of messages and distance the messages need to travel.

Major parameters Relative frequency of the move.Call operations of each user.

Call to Mobility Ratio (CMR):the number of calls made to a user during a period / the number of location updates generated by the user.High CMR “always update”Low CMR “paging” is better.

Page 9: Lecture 09 Location Management 第 9 讲 移动位置管理

Paging

To locate a mobile user by querying/searchingLook up the location database if it is accurate.

Simultaneous pagingTo page simultaneously in the cells where the user may be located.

Short response time

Sequential pagingPaging cells in the order of descending probability

Low paging cost

A hierarchical solutionGroup related or neighboring cells within the area served by the Message Service Center (MSC) into location areas.

Simultaneous in one area, sequential among areas

Page 10: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Update

Observation: it is not necessary to always update, since an object is likely to be near its last location.The vicinity of the last update information gives the most probable location of the mobile user.

Static scheme vs. Dynamic schemePredefined update occurrenceDynamic decided update occurrence

Page 11: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Update

Static update scheme: global information is needed.

Group cells into location areas as before.All location areas contain non-overlapping groups of cells.

Mobile user sends update when it crosses a location area boundary.

Advantage: low update cost.

Disadvantage: accuracy is only to location area.

Selection of designated reporting cells.Mobile user must send in updates when they enter some designated cells.

Advantage: optimal set of reporting cells can be computed.

Disadvantage: determining the optimal set is expensive.

Page 12: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Update

Dynamic update scheme: update based on local information and initiated by client, i.e., the place where the update takes place is dynamic, as determined by client.Distance-based

Update when the Euclidean distance (or Manhattan distance) to the previously updated location exceeds a threshold.

Movement-basedUpdate when the number of cell boundaries crossed since last reporting reaches a threshold.

Time-basedUpdate when the time to the previous update exceeds a threshold (i.e., periodic updates).

Page 13: Lecture 09 Location Management 第 9 讲 移动位置管理

§9.2 LM in Cellular Networks

General scheme Location Management Architecture

Two-tier.

Hierarchical

Centralized Techniques for Efficiency

Caching

Replication

Forwarding pointer

Page 14: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Management in GSM

The Mobility Management layer (MM) is built on top of the Radio Resources Management (RR) layer.

MM handles the functions due to mobility of subscriber and authentication and security aspects.

A mobile phone that is powered on is informed of an incoming call by a paging message sent over the PAGCH channel of a cell.

Paging vs. update:Page each cell in the network for each call

Costly paging, suitable for few call but much movement

Page exactly one cell but requires the mobile phone to send updates each time it changes cell:

Costly update, suitable for many calls but little movement

Page 15: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Management in GSM

Compromised solution used in GSM is to group cells into location areas.

A location area is a collection of adjacent cells.

Update required only when moving between location areas.

To search, mobile units are paged in the cells of their current location area.

HLR: home location register VLR: visitor location register

AuC- Authentication CenterEIR – Equipment Identity Register

Page 16: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Management in GSM

HLR (Home Location Register) Maintains the current location of a user as part of the user’s profile.

At a network location pre-specified for each user U (the home zone).

When U moves from zone A to zone B, the HLR for U is updated.

To locate a user U, the HLR for U is queried to get U’s current location.

VLR (Visitor Location Register) Holds information about a visiting user who moves out of its home zone.

VLR contains a copy of the profile of a visiting user V.

(To reduce the expensive querying cost at remote HLR)

When V moves from zone A to zone B, Entry for V will be removed from the VLR at zone A and

The corresponding entry will be inserted to the VLR at zone B.

Page 17: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Update in GSM

When mobile phone moves to a new location area:

Location update msg is sent to new MSC/VLR via base station.

If mobile phone is authorized in the new MSC/VLR, it determines the subscriber’s HLR from the mobile identification number.

HLR sends reg. ack. msg to new MSC/VLR and

sends reg. cancellation msg to old MSC/VLR to cancel its VLR entry

Periodic location updating

After the updating time period, if the mobile phone has not registered, it is then deregistered.

Page 18: Lecture 09 Location Management 第 9 讲 移动位置管理

Call Delivery in GSM

Calling phone sends call initiation signal to MSC via a base station.

MSC determines address of HLR of called phone and sends it a location req. msg.

HLR sends a route req. msg to the MSC/VLR currently serving the phone.

MSC/VLR allocates a temporary local directory number to the called phone and replies HLR with this number.

HLR forwards this info. to the MSC of calling phone. The MSC of calling phone requests a call setup to the MSC of

called phone.

Page 19: Lecture 09 Location Management 第 9 讲 移动位置管理

MSC 1

To otherMSCs

HL

R VL

R

MSC 2

MSC2

CURRLOC

A

INFO

USER

A

INFOUSER

VLR

A

INFOUSER

VLR

HLR

Fixed Network

HL

R VL

R

MSC 3

HL

R VL

R

Change from MSC2 to MSC3on second movement

Page 20: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Management in GSM

IMSI: international mobile subscriber identity TMSI: temporary mobile subscriber identity

Page 21: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Management in 3G

Besides HLR and VLR, there is GLR Gateway Location Register:

Between HLR and VLR, like the agent in the CAS model.GLR contains roamer’s profile and location information. GLR can interact with multiple VLR in the visitor network.

GLR handles location update from VLR by behaving like HLR. Local location update: at GLR

Page 22: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Management Architecture

Two-tier.Only HLR and VLR.HLR contains actual location of user.To search, contact VLR first. If not found, ask HLR.

Hierarchical.Inserts multiple layers between HLR and VLR.HLR contains actual location of user (direct or indirect).To search, contact leaf. If not found, traverse up the tree.

Centralized database.A single location database containing all location info.

Page 23: Lecture 09 Location Management 第 9 讲 移动位置管理

Two-Tier Scheme

HLR

VLR

MSCHLR

VLR

MSC

VLR

MSC

VLR

MSC

Page 24: Lecture 09 Location Management 第 9 讲 移动位置管理

Two-Tier Scheme

Advantage:Simple architecture and management.A maximum of 2 operations for each lookup.Only 3 operations for each update.

Disadvantage:Does not support locality.

Searching in nearby locations is impossible.Always need to register with HLR at a possibly far distance upon a move, even if the move is just to a neighboring cell.

Home Location Register is permanent.Resettlement is not supported: users who had moved to new region permanently still contact old HLR.Does not scale well to larger distributed systems since HLR is always contacted.

Page 25: Lecture 09 Location Management 第 9 讲 移动位置管理

Hierarchical Scheme

To avoid contacting remote HLR and to serve neighboring search, multiple registers are used.

A hierarchy of location databases is maintained.

Internal node contains information about user registered in the set of zones in its subtree.Leaf node contains actual location of objects in its coverage.Internal node contains information about users registered and their location, which are covered by the children nodes.Two types of schemes:

Pointers to lower level database (e.g., find X via pointers to 12).Actual location of each object (find Y directly at 16).

18 19 20

7

15 16 17

6

12 13 14

5

8 9 10

4

2 3

1X

X

X

X 12 Y 16

Y 16

Y 16

Y 16pointer scheme location scheme

Page 26: Lecture 09 Location Management 第 9 讲 移动位置管理

Hierarchical Scheme

Let LCA(i, j) denote the least common ancestor of nodes i and j.

To search for object Y which is currently at node i (i.e., 16) initiated by a user at node j (e.g., 19).

Go up the tree from j until LCA(i, j) is reached, where Y is found, with its actual location at 16.

To lookup for object X at node i (i.e., 12) initiated by a user at node j (e.g., 8).

Go up the tree from j to LCA(i, j) is reached, where X is found.

Follow the pointer for X until X is really found at 12.

18 19 20

7

15 16 17

6

12 13 14

5

8 9 10

4

2 3

1X

X

X

X 12 Y 16

Y 16

Y 16

Y 16

LCA(8,12)LCA(19,16)

Page 27: Lecture 09 Location Management 第 9 讲 移动位置管理

Hierarchical Scheme

With pointer, to update X from i to j:Databases along path i, …, LCA(i, j), …, j are to be updated.

Entries for X from i to the node just below LCA(i, j) are deleted.Entries for X are created from the node just below LCA(i, j) to j, each pointing to the proper child.Entries for X at LCA(i, j) is updated to point to the proper child.

For example X moves from 12 to 14. With location, to update Y from i to j:

Databases from i to LCA(i, j) and from root to j are to be updated.

Entries for X from i to the node just below LCA(i, j) are deleted.Entries for X are created from the node just below LCA(i, j) to point to j.Entries for X from root to LCA(i, j) are updated to point to j.

For example Y moves from 16 to 17.18 19 20

7

15 16 17

6

12 13 14

5

8 9 10

4

2 3

1X

X

X

Y 16

Y 16

Y 16

X Y

17

17

17

Page 28: Lecture 09 Location Management 第 9 讲 移动位置管理

Hierarchical Scheme

AdvantageMobile object is not bound to HLR.

Locality of moves and lookups is possible.

It is fast to search for a user nearby.

DisadvantageSeemingly increased number of communication messages.

Increased load and storage requirements for intermediate databases.

Intermediate databases store location information (actual location or a pointer) for all objects covered by its children.

Root database stores location information for ALL objects.

Page 29: Lecture 09 Location Management 第 9 讲 移动位置管理

Centralized Database

To simplify location query and update, a centralized database can be assumed to contain the location of all objects.

Centralized database solution is often adopted for simplicity if the object moves continuously, reporting its location.

Recall in previous schemes, location of object is only accurate up to the cell.

A spatial database is often used to store an object location for fast querying, with additional features for moving objects.

Additional operations supported include nearest neighbor search (find the closest gas station), range query (find restaurants within 5 minutes drive), and k-nearest neighbors.

Recall that in the centralized database, there could be numerous objects. Cost of full scan is prohibitive and update is expensive.

Specially designed databases are needed for that purpose.

Page 30: Lecture 09 Location Management 第 9 讲 移动位置管理

Centralized Database

To reduce update cost, object movement can be predicted.Predicting object movement, then an object that does not deviate from its predicted location does not need to send in an update.

Trade off can be made with respect to the frequency of updates for lower accuracy.

Send an update only when distance, movement, or time elapsed exceed certain threshold.

Group-based approach:A group of objects that stay close to one another can have their aggregated location reported together via the group leader.

Safe-region approach:As long as an object stays within its safe region, no update is needed, since server knows that object is within that safe region.Size of safe region may be adjusted dynamically according to actual query need (an object seldom interested should update location less).

Page 31: Lecture 09 Location Management 第 9 讲 移动位置管理

Centralized Database

Time-based, movement-based and combined updating example.

a b c

hg

f e

d

Page 32: Lecture 09 Location Management 第 9 讲 移动位置管理

a b c

hg

f e

d

Centralized Database

Distance-based example.

4

5

85

6

3

2

2

35

7

Location a b c d c b d g f e f g d b a

Distance-based (D=3)

a b - d - b d g f e f g d b a

Distance-based (D=4)

a b - - - - - g f e f g d - a

Distance-based (D=6)

a - c - - - - g - e f - d - a

Page 33: Lecture 09 Location Management 第 9 讲 移动位置管理

Centralized Database

Group-based example with 3 groups.There are algorithms to form and maintain the group membership.

Page 34: Lecture 09 Location Management 第 9 讲 移动位置管理

Techniques for Efficiency

One may perform caching of location of moving object to reduce need to send in query.

Cache the moving object location (e.g. callee’s location) at the caller site.This is effective with large CMR.

One may extend caching into replication with multiple copies of the location.

Replicate location of a moving object at its frequent callers.This is also effective with large CMR.

Forwarding pointers is used to reduce updates to VLR and HLR.

Do not update VLR and HLR.Just leave a forwarding pointer from old VLR to new VLR.This is effective with small CMR.

Page 35: Lecture 09 Location Management 第 9 讲 移动位置管理

Caching

To locate a user U, the cache at the VLR of caller’s zone is queried first, before contacting U ’s HLR.

In two-tier scheme, caching enhances VLR and HLR.If user U at L1 is called by user A at L2. VLR at L1contains U.

Cache at L2 can then indicate that U is at L1.

Subsequent calls originated from L2 can directly contact U without having to look for U’s HLR.

Two caching schemes:Eager caching: when a user is moved to a new location, all cache entries for this user’s location are updated.

Lazy caching: a move operation does not automatically translate to a cache update.

With lazy caching, during a lookup, either user is still in indicated location (cache hit) or has moved out (cache miss).

Page 36: Lecture 09 Location Management 第 9 讲 移动位置管理

Replication

One can create copies about this information at selected sites (e.g., at hubs).

Improve lookup response time.

Reduce network load during lookup.

Generate additional overhead during location update.

Replication should be made judiciously for high CMR.More precisely, if Local CMR (LCMRi,j), i.e., number of lookups for user X in zone i from zone j during a period / number of location updates of X is greater than a threshold ( = cost of update / cost saving with local lookup).

Replication may also be performed to indicate the approximate user location (e.g., current partition).

Page 37: Lecture 09 Location Management 第 9 讲 移动位置管理

Replication

Working set replication is applicable to two-tier scheme.

For each user X, replicas are kept at frequent callers of X. This is called the working set of X.

Ensure that for all j, LCMRi,j for X in zone i from zone j cost of update / cost saving with local lookup.

When a call to X is made from zone k:If k is in working set, no update is needed.If k is not in working set but the above inequality holds for k, k is added to the set.

When X moves, the inequality is evaluated for each member k in the working set of X:

If it does not hold for k, k is removed. Performance is affected by CMR.

1

3

4

5

2

8 7

9

X1

5

6(1)? 66

X

(2, 3) are in working set.

Y (at 6) queries X (at 1).

6 is added to working set if inequality is true.

Now X moves to 5. The working set (2, 3,

6) needs updating.

Page 38: Lecture 09 Location Management 第 9 讲 移动位置管理

VLRi-X|HLRi…

VLR…|HLR-X

VLRk-X|HLRk…VLRi…|HLRi…VLRi-X |HLRi…

VLR…|HLR-X

VLRk-X |HLRk…

Forwarding Pointers

Invalidation to caching and replication can be expensive, with low CMR (e.g., CMR < 0.5).

One can provide forwarding pointers to point to the potential current location (ProbLoc). This reduces communication overhead and query load at remote HLR.

In two-tier scheme, when X moves from i to k, a pointer is added at VLR at i to point to VLR at k without informing HLR.

During lookup if no information on X is found at current VLR, HLR of X is queried for proper VLR and follow the forwarding pointers.

Chain of pointers should not exceed a length of K. Typical value of K < 5.

VLRn-X|HLRn…

X moves from i to k.

Instead of changing HLR for X, setup forwarding pointer at i to k.

Now X moves to n again, and forwarding pointer is added to k.

Page 39: Lecture 09 Location Management 第 9 讲 移动位置管理

Forwarding Pointers

Forwarding pointers can be used also in hierarchical scheme.

Recall how a location update is done: entries along path from old cell to LCA then new cell, plus those coming from root need to be updated.

Use similar idea as bypass pointers in caching, create forwarding pointers to point to new location.

18 19 20

7

15 16 17

6

12 13 14

5

8 9 10

4

2 3

1X

X

X

X

X

X

LCA(12,15)

X moves from 12 to 15 without forwarding.

Page 40: Lecture 09 Location Management 第 9 讲 移动位置管理

Forwarding Pointers

18 19 20

7

15 16 17

6

12 13 14

5

8 9 10

4

2 3

1X

X

X

X

Example that X moves from 12 to 15 with pointer and location schemes.

X 12

18 19 20

7

15 16 17

6

12 13 14

5

8 9 10

4

2 3

1X 12

X 12

X 12

X 15X 15

Page 41: Lecture 09 Location Management 第 9 讲 移动位置管理

Pointer Purging

There is a need to purge the forwarding pointers.Save storage.Avoid storing stale information.Improve lookup efficiency by compressing forwarding chain.

User X moves from 11 to 18 to 26 then to 14. Pointers in 11, 18, 26 can be purged. Pointers in interior nodes leading to these nodes can be purged.

Page 42: Lecture 09 Location Management 第 9 讲 移动位置管理

Other Issues

Concurrency controlLocation and pointer updates occur asynchronously. It is possible that a user has moved but a caller follows the old pointer down (and cannot reach the user).Transactions for update are too expensive (lock too many entries).

RecoveryNodes may crash, and information should be restored upon node recovery. This demands periodic checkpointing of information at HLR and paging for mobile users by VLR.

Precision, currency and performance tradeoffFiner location granularity within cell is possible, with more frequent reporting from client. Both translate into higher update cost.Server can keep a predication of the client location/trajectory, and client detects whether it is within allowable distance from the predication. Update/paging is only sent when deviation is too large.

Service discoveryServices provided by a host are similar to its location, i.e., can be registered with service (location) database for lookup. In mobile computing, host providing services may move. Calls (e.g., remote procedure calls) need to be routed to the moving host.

Page 43: Lecture 09 Location Management 第 9 讲 移动位置管理

§9.3 LM in Ad Hoc Networks

Location in Mobile Ad Hoc NetworksUsed as basic of routing protocol

Location based services (LBS)

Location dependent applicationsE.g. data collection

Major IssuesDistributed location data storage

Distributed query

Failure resilience

Scalability

Page 44: Lecture 09 Location Management 第 9 讲 移动位置管理

Categorization of LM in Ad Hoc Networks

Proactive LM: periodically exchange location informationSome-for-some

Some-for-all

All-for-someHome region based

Quorum node based

All-for-all Location dissemination

Reactive LM: discover location on demand

Page 45: Lecture 09 Location Management 第 9 讲 移动位置管理

Host Region based Approach

Similar to HLR/VLR in cellular networks Region: a rectangle or a circle area Nodes Region location server Location initialization

Broadcast or mapping function Trigger of update

timer-based (i.e., periodic updates), distance-based (i.e., moved more than a threshold) predictive distance-based

Threshold of difference between predication and actual location

Location updateSend update to nodes in home regionVia a geographical forwarding protocolProblems

?

Page 46: Lecture 09 Location Management 第 9 讲 移动位置管理

Quorum-based Approach

Quorum?The minimum number of votes that a distributed transaction has to obtain in order to be allowed to perform an operation – Wikipedia

Quorum for location managementUpdate: to what nodes to send location update

Query: to what nodes to query location information

There must be intersection between the nodes get the update and the nodes be queried.

Please Give a naive example of quorum.

Page 47: Lecture 09 Location Management 第 9 讲 移动位置管理

Uniform Quorum System (UQS)

Quorum constructionA subset of the network nodes are chosen that best serve as the network's virtual backbone

Quorums are then defined as subsets of the VB nodes, such that any two quorums intersect.

Location updateSends new location information to the nearest VB node

The VB node forward the update to a quorum of nodes Location query

Similar to update

Page 48: Lecture 09 Location Management 第 9 讲 移动位置管理

Column/Row Quorum

A node's column All the nodes to the north and south of the node's current location

The thickness of the column can be configured A node’s row

Similar to column, but in west and east direction Update

To the column nodes Query

To the row nodes

Page 49: Lecture 09 Location Management 第 9 讲 移动位置管理

Column/Row Quorum

The void region problem: special mechanism to address it.

Page 50: Lecture 09 Location Management 第 9 讲 移动位置管理

Grid Location Service (GLS)

The set of location servers is determined by a predefined geographic grid and the ordering of node id.

Key issuesLocation server selection,

Location query request, and

Location server update

Page 51: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Server Selection in GLS

Hierarchical grids

Order-1

Order-2

Order-3

Page 52: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Server Selection in GLS

A node x choose three servers in each grid order

The node that has the least ID greater than x in that order square.

Page 53: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Query Request in GLS

Query request is forwarded to a node with ID the least greater than or equal to the destination ID, within the order-2 and then higher square

using geographic forwarding

Page 54: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Server Update in GLS

When a node moves a given threshold, it must send an update packet to all of its location servers.

To avoid excessive update traffic, the update frequency is calculated using a threshold distance and the location servers' square order

Location query failures when? How to handle it?

Page 55: Lecture 09 Location Management 第 9 讲 移动位置管理

Doubling Circles

Similar to GLS Arranges the network into circles of increasing size

centered on a node's location; The radius of each subsequent circle is one meter

larger than the radius of the previous circle.

Page 56: Lecture 09 Location Management 第 9 讲 移动位置管理

Location Info. Dissemination Approach

LEAP, Legend Exchange and Augmentation Protocol Two location tables

Local table at each node

Legend, token like table Two messages

Hello: exchange location info. between neighbors

Legend: traverse the networkWith list of locations collected

To collect location info.

To disseminate location info.

Page 57: Lecture 09 Location Management 第 9 讲 移动位置管理

Reactive LM

A location table at each node To locate a node

Check the location table, then

Ask neighbors in a specific scope (with TTL), then

Flood request packet in the entire network.

Page 58: Lecture 09 Location Management 第 9 讲 移动位置管理

§9.4 Mobile IP

IP assumes end hosts are in fixed physical locationsWhat happens if we move a host between networks?

IP addresses enable IP routing algorithms to get packets to the correct network

Each IP address has network part and host partThis keeps host specific information out of routers

DHCP is used to get packets to end hosts in networksThis still assumes a fixed end host

What if a user wants to roam between networks?

Page 59: Lecture 09 Location Management 第 9 讲 移动位置管理

IP Routing Breaks Under Mobility

Why this hierarchical approach? Answer: Scalability!Millions of network addresses, billions of hosts!

137.30.2.*

.50 .52 .53

router

router

139.20.3.*

.200

Page 60: Lecture 09 Location Management 第 9 讲 移动位置管理

Mobile IP Basics

To allow a mobile host to move about without changing its permanent IP address

StandardsMobile IPv4: IETF RFC 5944, IETF RFC 4721

Mobile IPv6: RFC 6275

Page 61: Lecture 09 Location Management 第 9 讲 移动位置管理

Mobile IP Entities

Mobile Node (MN)The entity that may change its point of attachment from network to network in the Internet

Detects it has moved and registers with “best” FA

Assigned a permanent IP called its home address to which other hosts send packets regardless of MN’s location

Since this IP doesn’t change it can be used by long-lived applications as MN’s location changes

Home Agent (HA)This is router with additional functionalityLocated on home network of MNDoes mobility binding of MN’s IP with its COAForwards packets to appropriate network when MN is away

Does this through encapsulation

Page 62: Lecture 09 Location Management 第 9 讲 移动位置管理

Mobile IP Entities

Foreign Agent (FA)Another router with enhanced functionalityIf MN is away from HA the it uses an FA to send/receive data to/from HAAdvertises itself periodicallyForward’s MN’s registration requestDecapsulates messages for delivery to MN

Care-of-address (COA)Address which identifies MN’s current locationSent by FA to HA when MN attachesUsually the IP address of the FA

Correspondent Node (CN)End host to which MN is corresponding (eg. a web server)

Page 63: Lecture 09 Location Management 第 9 讲 移动位置管理

Mobile IP Operations

1. MN travels to a foreign network and gets a new CoA.2. MN performs a binding update to HA (new CoA registered ). 3. A CN wants to contact the MN. HA intercepts packets.4. The HA then tunnels all packets to the MN5. MN answers the CN

Page 64: Lecture 09 Location Management 第 9 讲 移动位置管理

Mobile IP Support Services

Agent DiscoveryTo determine where a MN is

RegistrationTo registers MN’s COA with its HA

TunnelingTo tunnel the data between CN and MN

Page 65: Lecture 09 Location Management 第 9 讲 移动位置管理

Agent/Location Discovery

Each mobile node is responsible for ongoing discovery process.

Must determine if it is attached to its home network or a foreign network.

FA Periodically broadcasts the ICMP Router Discovery Protocol (IRDP) message

MNListens for agent advertisement messages.

…Compares the network portion of the router's IP address with the network portion of the home address.

Page 66: Lecture 09 Location Management 第 9 讲 移动位置管理

Agent Advertisement

Page 67: Lecture 09 Location Management 第 9 讲 移动位置管理

Agent Advertisement

IRDP :Type 9 = Agent Advertisement, 10 = Agent Solicitation

Code 0 = Advertising Agent is a fully capable router. 16 = only a Mobile IP agent

Num Addrs The number of router addresses advertised in this message

Addr Entry Size The number of 32-bit words of information per each router address

LifetimeThe maximum number of seconds that the router addresses may be considered valid.

Router Address[i]The sending router's IP address (es) on the i = 1..Num Addrs interface from which this message is sent.

Preference Level[i] The preferability of each Router Address[i]Mobility Adv. Ext. :Type 16 (Mobility Advertisement Extension)

Length6+4*#COAs (6 = the sequence number, Registration Lifetime, Flags, and Reserved fields + another 4 bytes per each COA)

Sequence Number The count of Agent Adv. messages sent since the agent was initialized.

Registration LifetimeThe longest lifetime in seconds that the Registration Request will be accepted by this agent. 0xffff = infinity.

Page 68: Lecture 09 Location Management 第 9 讲 移动位置管理

Agent Solicitation

Foreign agents are expected to issue agent advertisement messages periodically.

„If a mobile node needs the agent information immediately, it can issue an ICMP router solicitation message.

…Any agent receiving this message will then issue an agent advertisement.

Page 69: Lecture 09 Location Management 第 9 讲 移动位置管理

Care-of Addresses

The address to forward data between MN and CN/HA Two choices

The address of the FA

Foreign agent delivers packets forwarded from home agent to mobile host

Co-located addressIP address obtained by the MN on the foreign network

Temporary IP address obtained through an Internet service, e.g. DHCP

… May be owned by the mobile node as a long-term address for roaming

Home agent tunnels packets directly to the temporary IP address

Regardless, care-of address must be registered with home agent

Page 70: Lecture 09 Location Management 第 9 讲 移动位置管理

Move Detection

How can a MN detect it has moved away? Algorithms to detect move:

Use of lifetime fielda mobile node uses the lifetime field as a timer for agent advertisements.

…Use of network prefixa mobile node checks if any newly received agent advertisement messages are on the same network as the node's current care-of address.

Page 71: Lecture 09 Location Management 第 9 讲 移动位置管理

Registration

Via UDP, port 434

Page 72: Lecture 09 Location Management 第 9 讲 移动位置管理

Registration Messages

Page 73: Lecture 09 Location Management 第 9 讲 移动位置管理

Registration Procedure Security

Mobile IP is designed to resist attacks:A node pretending to be a foreign agent sends a registration request to a home agent to divert the mobile node’s traffic to itself.

An agent replays an old registration messages to cut the �mobile node from the network.

The registration request and reply contain an authentication extension

Fields = type, length, security parameter index (SPI), authenticator

Page 74: Lecture 09 Location Management 第 9 讲 移动位置管理

Registration Procedure Security

Type 31 = Mobile-Home, 33 = Mobile-Foreign, 34 = Foreign-Home

Length 4 plus the number of bytes in the Authenticator

Security parameter index (SPI)

Identifies the Security Association (SA) for datagrams between two nodes. SPI selects the authentication algorithm and secret keys either shared or public to compute the Authenticator

AuthenticatorA code used to authenticate the message. (variable length)Default is 128-byte keyed MD5

A random number (64 bits) for avoid replay attacks

Page 75: Lecture 09 Location Management 第 9 讲 移动位置管理

Tables Maintained on Routers

Mobility Binding TableMaintained on HA of MN

Visitor ListMaintained on FA

Page 76: Lecture 09 Location Management 第 9 讲 移动位置管理

IP Tunneling

HA intercepts all packets destined for MNThis is simple unless sending application is on or near the same network as the MN

HA masquerades as MN HA forwards these packets to FA

IP tunneling FA decapsulates packets addressed to MN and forwards them

via hardware addressMN can perform FA functions if co-CoA is used

Bidirectional communications require tunneling in each direction

Page 77: Lecture 09 Location Management 第 9 讲 移动位置管理

IP Tunneling

Page 78: Lecture 09 Location Management 第 9 讲 移动位置管理

IP-in-IP TunnelingNot support IP fragmentationPath MTU discovery must be enabled

Page 79: Lecture 09 Location Management 第 9 讲 移动位置管理

Generic Routing Encapsulation (GRE)

Page 80: Lecture 09 Location Management 第 9 讲 移动位置管理

Routing Inefficiency

home agentcorrespondent host

Mobile host and correspondent hostmight even be on the same network!!

Page 81: Lecture 09 Location Management 第 9 讲 移动位置管理

Route Optimizations

Possible Solution:Home agent sends current care-of address to correspondent host

Correspondent host caches care-of address

Future packets tunneled directly to care-of address

But!An instance of the cache consistency problem arises...

Cached CoA becomes stale when the mobile host moves

Potential security issues with providing CoA to CN

Page 82: Lecture 09 Location Management 第 9 讲 移动位置管理

Possible Route Optimization

Page 83: Lecture 09 Location Management 第 9 讲 移动位置管理

Other Mobile IP Problems

Single HA model is fragilePossible solution – have multiple HA

Frequent reports to HA if MN is movingPossible solution – support of FA clustering

SecurityConnection hijacking, snooping…

Many open research questions

Page 84: Lecture 09 Location Management 第 9 讲 移动位置管理

Mobility in IPv6

Route Optimization is a fundamental part of Mobile IPv6 Mobile IPv4 it is an optional set of extensions that may not be supported by all nodes

Foreign Agents are not needed in Mobile IPv6MNs can function in any location without the services of any special router in that location

SecurityNodes are expected to employ strong authentication and encryption

Other details…

Page 85: Lecture 09 Location Management 第 9 讲 移动位置管理

A Summary

Concept of location management Key issues in LM LM in cellular networks LM in ad hoc networks LM via MIP