IPv6 Neighbor Cache Update Hiroshi KITAMURA NEC Corporation

IPv6 Neighbor Cache Update Hiroshi KITAMURA NEC Corporation [email protected] 1 Index • Introduction / Background • Problems – on (Not-Used) ...
0 downloads 2 Views 92KB Size
IPv6 Neighbor Cache Update

Hiroshi KITAMURA NEC Corporation [email protected] 1

Index • Introduction / Background • Problems – on (Not-Used) Long Remained NC entries.

• Proposed Solutions (Neighbor Cache Update (Delete)) – Heuristic Type: (w/o any ND message extensions) – Explicit Type: (w/ small extension (NA flags)) – Explicit + Heuristic Combined Type

• Implementation

2

Introduction / Background IP address’s “Using Status” Status is frequently changed

“Used” “Not Used” •

Disconnecting / Connecting nodes from/to networks at mobile environments • Suspending / Hibernating / Resuming nodes – Turn Off / On PCs – Release / Discover IP address by DHCP • Utilize Changeable-type Addresses: Temporary Address / Ephemeral Address* * 3

Problems on (Not-Used) Remained Neighbor Cache Entries • What’s happens when (IP address is gone) IP address’s Using Status is changed form “Used” to “Not Used” ? • Related Neighbor Cache Entries (that are created for the “Gone IP addresses”) are not deleted and still remained for a long time (typically 24 hours). 4

Example: (Not-Used) Long Remained NC entries 1/2 Neighbor Cache IP_1 Client

Server X

Server Y

Server side Edge Router

Internet

Client side IP_R Edge Router

A

IP_R

L2_R

IP_2

Client B

IP_R

L2_R

IP_3

Client C

IP_R

L2_R

D

IP_R

L2_R

Client E

IP_R

L2_R

Neighbor Cache Server Z

IP

L2

IP_1

L2_A

IP_2

L2_B

IP_3

L2_C

IP_4

L2_D

IP_5

L2_E

IP_4 Client

IP_5

5

Example: (Not-Used) Long Remained NC entries 2/2 IP_1 Client

Server X

Server Y

Server side Edge Router

Internet

Gone (NotUsed)

Client side IP_R Edge Router

A

IP_2

Client B

IP_3

Client C

Neighbor Cache Server Z

(Not-Used) NC entries Still Remained for a long time

IP

L2

IP_1

L2_A

IP_2

L2_B

IP_3

L2_C

IP_4

L2_D

IP_5

L2_E

IP_4 Client

bu

D

t IP_5

Client E

6

Why Not-Used NC entries are remained? • NC state procedures are showed in right figure that is defined in ND specification [RFC4861].

• Not-Used NC entries are remained at STALE state for a long time and finally they are deleted by the “garbage collections”.

Edge Router

Client

NC State NS

INCOMPLETE

NA

REACHABLE

IP address is Gone STALE

bu

t

(Not-Used) NC entry

Remained long time 7

Characteristics on (Not-Used) Long Remained NC entries

It is clear: – from efficient resource management viewpoint: NOT Good. – from security enhancement viewpoint: NOT Good.

8

What should we do? • We have to follow the manner:

“Leave everything neat and tidy when you go behind you” • When using status of an IP address is changed from “Used” to “Not-Used”, its related cache entry should be deleted cooperatively. • We have to provide quick and clear neighbor cache update (delete) functions. 9

Proposed Solutions: Neighbor Cache Update (Delete) Methods Three types of Neighbor Cache Update (delete) methods are proposed. 1. Heuristic Type: Does NOT require any ND message extensions 2. Explicit Type: Requires small extensions (NA message Flags) 3. Explicit + Heuristic Combined Type: Any types of nodes are supported effectively 10

Heuristic Type Neighbor Cache Update • Stimulate the remaining STALE (inactivated) NC entry by sending the special NS message (source = Gone IP address) from client node. • (The target NC entry is activated by issuing NA.) Its state is proceeded to next state DELAY and finally the target NC entry is deleted. • Takes short time periods for DELAY and PROBE states.

Edge Router

NC State NS

INCOMPLETE

NA

REACHABLE u-NA

DELAY

IP addr is Gone.

NS

STALE

PROBE

• No ND message extensions are required.

Client

NA

Stimulate

NS NS NS

NC entry deleted 11

Explicit Type: Neighbor Cache Update • Issue an Extended NA message (+extended flags) to delete target NC entry from client node. • If a receiver node understands the extended flags, the target NC entry is quickly deleted. • If the node does not understand, the message is simply ignored. (the NC entry is not deleted and errors are not reported.)

Edge Router

Client

NC State NS

INCOMPLETE

NA

REACHABLE u-NA

STALE

IP addr is Gone.

NA for delete

NC entry deleted

12

Explicit Type: NA Message Flags Extensions 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Code | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |R|S|O|D|F| Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + + | | + Target Address + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Options ... +-+-+-+-+-+-+-+-+-+-+-+-

D: Delete flag (Delete entry except its state is REACHABLE) F: Force Delete flag (Force to delete entry at any states) 13

Explicit + Heuristic Combined Type Neighbor Cache Update Edge Router

• Support both types of nodes that do and do not understand the NA extensions effectively.

NC State NS

INCOMPLETE

NA

– Nodes do understand extensions: the entry is deleted quickly by REACHABLE the 1st Explicit operation. – Nodes do not understand extensions: STALE the entry is deleted shortly by NC deleted ? the 2nd Heuristic operation.

• In any node cases, the target NC entry is surely deleted.

Client

DELAY

PROBE Surely NC deleted

u-NA

IP addr is Gone.

NA for delete NS NA

Stimulate

NS NS NS

14

Implementations • Proposed all “Neighbor Cache Update ” specification has been implemented and verified. • Delete Responder (Edge Router) type: – Explicit Type: • FreeBSD

– Heuristic Type: • IOS, Linux, FreeBSD, MacOS X, Windows, etc.

• Delete Initiator (Client) type: – Explicit / Heuristic Type: (Verified) • FreeBSD

– Explicit / Heuristic Type: (Under Developing) • Linux, MacOS X, Windows, etc.

15

Consensus Verification to Proposed Methods Which methods do you prefer? 1. Heuristic Type: Does NOT require any ND message extensions 2. Explicit Type: Requires small extensions (NA message Flags) 3. Explicit + Heuristic Combined Type: Any types of nodes are supported effectively [Authors recommend this type method]

16

Related Issues • Same types of problems can be found in IPv4 ARP table entries. • How do we have to deal with it?

17

Suggest Documents