Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

35
Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility

Transcript of Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Page 1: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 1

Lesson 12

IPv6 Mobility

Page 2: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 2

Lesson Objectives

Components of IPv6 mobility IPv6 mobility messages and options IPv6 mobility data structures Communication between the mobile

node and the correspondent node Communication between the mobile

node and the home agent IPv6 mobility processes IPv6 mobility changes to the host

sending and receiving algorithms

Page 3: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 3

IPv6 Mobility Overview

IPv6 mobility allows an IPv6 node to be mobile—to arbitrarily change its location on the IPv6 Internet—and still maintain existing connections

Connection maintenance for mobile nodes is handled at the Internet layer

Page 4: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 4

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

Care-ofAddress

HomeAddress

VirtualMobile Node

Components of IPv6 Mobility

Page 5: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 5

IPv6 Mobility Messages And Options

Destination Options Header options Binding Update Binding Acknowledgement Binding Request Home Address

ICMPv6 messages Home Agent Address Discovery Request Home Agent Address Discovery Reply

Page 6: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 6

TypeCode

ChecksumIdentifier

Reserved

Home Address

= 150

= 0

= 0

ICMPv6 Home Agent Address Discovery Request Message

Page 7: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 7

Type

Code

Checksum

Identifier

Reserved

Home Agent Address 1

Home Agent Address n

= 151

= 0

. . .

ICMPv6 Home Agent Address Discovery Reply Message

Page 8: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 8

IPv6 Mobility Messages And Options

Neighbor Discovery messages and options Modified Router Advertisement message

Home Agent (H) flag

Modified Prefix Information option Router Address (R) flag New definition of Prefix field

New Advertisement Interval option New Home Agent Information option

Page 9: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 9

IPv6 Mobility Data Structures

Binding cache Contains the current bindings for mobile nodes Maintained by each correspondent node and

home agent

Binding update list Lists the most recent binding updates sent for

the home agent and correspondent nodes Maintained by a mobile node

Home agents list Lists the routers that sent a router

advertisement with the Home Agent (H) bit set Maintained by home agents and mobile nodes

Page 10: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 10

IPv6 Mobility Communication

Between a mobile node and a correspondent node

Between a mobile node and a home agent

Page 11: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 11

Communication Between a Mobile Node and a Correspondent Node

From the mobile node to the correspondent node Binding updates Data

From the correspondent node to the mobile node Binding maintenance Data

Page 12: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 12

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

IPv6 Header• Source Address is CoA• Destination Address is CNADestination Options Header• Home Address Option

• Home Address is HA• Binding Update Option

CoAHA

CNAVirtual

Mobile Node

Binding Update from Mobile Node to Correspondent Node

Page 13: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 13

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

IPv6 Header• Source Address is CoA• Destination Address is CNADestination Options Header• Home Address Option

• Home Address is HAUpper Layer PDU

CoAHA

CNAVirtual

Mobile Node

Data from Mobile Node to Correspondent Node

Page 14: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 14

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

IPv6 Header• Source Address is CNA• Destination Address is CoARouting Header• Segments Left is 1• Address 1 is HADestination Options Header• Binding Acknowledgement or Request

CoAHA

CNAVirtual

Mobile Node

Binding Maintenance from Correspondent Node to Mobile Node

Page 15: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 15

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

IPv6 Header• Source Address is CNA• Destination Address is CoARouting Header• Segments Left is 1• Address 1 is HAUpper Layer PDU

CoAHA

CNAVirtual

Mobile Node

Data from Correspondent Node to Mobile Node-Binding Cache Entry Present

Page 16: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 16

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

IPv6 Header• Source Address is CNA• Destination Address is HAUpper Layer PDU

HA

CNA

CoA

VirtualMobile Node

Data from Correspondent Node to Mobile Node-Binding Cache Entry not Present

Page 17: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 17

Communication Between a Mobile Node and a Home Agent

From the mobile node to the home agent Binding updates ICMPv6 Home Agent Address Discovery

Request message

From the home agent to the mobile node Binding maintenance ICMPv6 Home Agent Address Discovery Reply

message Tunneled data

Page 18: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 18

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

IPv6 Header• Source Address is CoA• Destination Address is HAADestination Options Header• Home Address Option

• Home Address is HA• Binding Update Option

• Home Registration flag set

CoA

HAA

HA

CNAVirtual

Mobile Node

Binding Update from Mobile Node to Home Agent

Page 19: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 19

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

IPv6 Header• Source Address is CoA• Destination Address is Mobile IPv6 Home

Agents anycast address ICMPv6 Message• Home Agent Address Discovery Request

CoA

HAA

HA

CNAVirtual

Mobile Node

ICMPv6 Home Agent Address Discovery Request Message

Page 20: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 20

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

IPv6 Header• Source Address is HAA• Destination Address is CoARouting Header• Segments Left is 1• Address 1 is HADestination Options Header• Binding Acknowledgment or Request

CoA

HAA

HA

CNAVirtual

Mobile Node

Binding Maintenance from the Home Agent to the Mobile Node

Page 21: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 21

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

IPv6 Header• Source Address is HAA• Destination Address is CoAICMPv6 Message• Home Agent Address Discovery Reply

CoA

HAA

HA

CNAVirtual

Mobile Node

ICMPv6 Home Agent Address Discovery Reply Message

Page 22: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 22

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

HomeLink

ForeignLink

IPv6 Header• Source Address is HAA• Destination Address is CoAIPv6 Header• Source Address is CNA• Destination Address is HAUpper Layer PDU

CoA

HAA

HA

CNAVirtual

Mobile Node

IPv6 Over IPv6 Tunnel

Tunneled Data from the Home Agent to the Mobile Node

Page 23: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 23

IPv6 Mobility Processes

Attaching to the home link Moving from the home link to a foreign

link Moving from a foreign link to another

foreign link Returning home

Page 24: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 24

Attaching to the Home Link

Once on the home link, a mobile node can store: Home subnet prefix Home address Global address of their home agent

Methods of configuring mobile node for home link: Manual configuration Pseudo-automatic configuration Automatic configuration

Page 25: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 25

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

1. Multicast Router Solicitation2. Unicast Router Advertisement3. Home Agent Address Discovery Request4. Home Agent Address Discovery Reply5. Binding Update to Home Agent6. Multicast Neighbor Advertisement7. Binding Acknowledgment

ƒ„…

†‡

HomeLink

ForeignLink

Mobile Node Attaches to its First Foreign Link

Page 26: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 26

IPv6 Mobility Communication with Mobile Node

Mobile node initiates a TCP connection with a new correspondent node

Mobile node initiates non-TCP communication with a new correspondent node

New correspondent node initiates a TCP connection with a mobile node

Home link host sends data to a mobile node

Page 27: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 27

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

1. TCP SYN with Home Address and Binding Update options

2. TCP SYN-ACK with Binding Acknowledgment3. TCP ACK

ƒ

HomeLink

ForeignLink

Mobile Node Initiates a TCP Connection with a New Correspondent Node

Page 28: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 28

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

1. Initial message with Home Address option2. Response message to home address3. Tunneled response message to Mobile Node4. Second message with Binding Update5. Binding Acknowledgment

IPv6 Over IPv6 Tunnel

ƒ

HA

VirtualMobile Node

HomeLink

ForeignLink

Mobile Node Initiates non-TCP Communication with a New Correspondent Node

Page 29: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 29

IPv6 Internet

Mobile Node

Correspondent Node

HomeAgent

1. TCP SYN to Home Address2. TCP SYN tunneled to Care-of Address3. TCP SYN-ACK with Binding Update4. TCP ACK with Binding Acknowledgment

IPv6 Over IPv6 Tunnel

ƒ„

HomeLink Foreign

Link

HA

VirtualMobile Node

New Correspondent Node Initiates a TCP Connection with a Mobile Node

Page 30: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 30

IPv6 Internet

Mobile NodeHomeAgent

1. Multicast Neighbor Solicitation2. Proxied unicast Neighbor Advertisement3. TCP SYN to Home Agent’s link-layer address4. Tunneled packet to Mobile Node5. TCP SYN-ACK with Binding Update6. TCP ACK with Binding Acknowledgment

Host

IPv6 Over IPv6 Tunnel

… †ƒ

HomeLink Foreign

Link

Home Link Host Sends Data to a Mobile Node

Page 31: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 31

Mobile Node

Correspondent Node

HomeAgent

1. Multicast Router Solicitation2. Unicast Router Advertisement3. Binding Update to Home Agent4. Binding Update to Correspondent Node5. Binding Acknowledgments

IPv6 Internet

ƒ

HomeLink

ForeignLink

Mobile Node Changes to a New Foreign Link

Page 32: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 32

Mobile Node

Correspondent Node

HomeAgent

1. Multicast Router Solicitation2. Unicast Router Advertisement3. Binding Update to Home Agent4. Binding Update to Correspondent Node5. Binding Acknowledgments6. Multicast Neighbor Advertisement

IPv6 Internet

ƒ

HomeLink

Mobile Node Returns Home

Page 33: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Check destination cache for an entry matching the destination address.

Entry found in destination cache?

Yes

No

Does entry contain a pointer to a

binding cache entry?

No

Yes

Entry found in neighbor cache?

Yes

No

Use address resolution to determine the link-layer address

of the next-hop address.

Was address resolution

successful?

Yes

No

Indicate an error.

Update neighbor cache.

Send packet using link-layer address of neighbor cache entry.

Check neighbor cache for an entry matching the next-hop address.

Is there a longestmatching route?

No

Yes

Check routing table for longestmatching route to the destination.

Set the next-hop address to the next-hop address of the route.

Update destination

cache.

Start

Set destination to destination node’s care-of address. Insert Routing

header. Obtain next-hop address from the destination cache entry for

the care-of address.

Is sending host away from

home? No

Yes

Set source address to sending host’s care-of address. Insert

Destination Options header with Home Address option.

Set the next-hop address to the destination address.

Obtain the next-hop address from

the destination cache entry.

IPv6 Mobility Host Sending Algorithm

Page 34: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

IPv6 Mobility Host Receiving Algorithm

Is a Routingheader present?

Yes

No

Silently discard the packet.

Does the protocol

for the Next Header field value

exist?

No

Yes

Send ICMPv6 Parameter Problem-Unrecognized Next Header Type

Encountered message and discard the packet.

Is the upper layer PDU a UDP

message?

Yes

No

Is the upper layer PDU a TCP

segment?

Yes

No

Is there an application listeningon the destination

UDP port?

No

Yes

Is there an application listeningon the destination

TCP port?

Yes

No

Pass upper layer PDU to upper layer protocol.

Send ICMPv6 Destination Unreachable-Port Unreachable

message and discard the packet.

Send TCP Connection Reset segment.

Process contents.

No

Yes

Set source address to home address in Home Address option.

Start

Is destination address assigned to

a local interface?

Yes

No

Is the packet tunneled from the

home agent?

Yes

No

Is there a Home Address Option in the Destination

Options header?

Process Routing header. Set destination

address to value in Address 1 field.

Set destination address to destination address in

inner IPv6 header. Queue binding update to source address in inner IPv6 header.

Page 35: Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.

Understanding IPv6 Slide: 35

Review

Components of IPv6 mobility IPv6 mobility messages and options IPv6 mobility data structures Communication between the mobile

node and the correspondent node Communication between the mobile

node and the home agent IPv6 mobility processes IPv6 mobility changes to the host

sending and receiving algorithms