310 likes | 315 Views
IPv6 Mobility. David Bush. Correspondent Node Operation. DEF: Correspondent node is any node that is trying to communicate with a mobile node. This node can be either station or mobile itself. Receiving Packets.
E N D
IPv6 Mobility David Bush
Correspondent Node Operation • DEF: Correspondent node is any node that is trying to communicate with a mobile node. • This node can be either station or mobile itself.
Receiving Packets • When receiving a packet from a mobile node, the Home Address option will be used. • The correspondent node must then copy the Home Address into the IPv6 header. • This processing must be done only after any other options are processed.
Validating any Binding Update Request • Before dealing with any Binding Update, the request must be validated. • In order to be considered valid, the packet must fulfill the following: • The packet has to have valid AH or ESP header that will provide user authentication. • The Home Address option must be valid. • The Sequence number must be greater that any previous requests. • Any request not satisfying these requirements is silently dropped.
Request to Cache a Binding • When a correspondent node receives this request, it is to enter the update into it’s Binding Cache (or update if the entry is already there) • In addition, a Lifetime period is specified and the Binding Update must be deleted after this time period.
Request to Delete a Binding • When a request for deletion is received, the correspondent node must delete the Binding Update associated with the mobile node from it’s Binding Cache.
Sending Binding Acknowledgements • A packet with any Binding Update request may include a request for an acknowledgement. • If this is the case, the correspondent node should send an acknowledgement to the mobile node. • A value in the status field of less than 128 means acceptance, and more than 128 means rejection.
Sending Binding Request • Since there is a Lifetime period, the Binding Update must be deleted after this time period. • However, if the correspondent node knows the Binding Cache entry is still active, it can send a request to the mobile node to update the Binding entry. • This can even be done is any packet that is part of normal communication.
Cache Replacement Policy • When the Binding Cache of a correspondent node becomes full, the node may choose to delete any entry except for a “home registration” entry. • If a new request cannot be fulfilled because of lack of storage, the node will return a Binding Acknowledgement with status field set to value 131.
Sending Packet to a Mobile Node • Before any packets are sent, the Binding Cache is searched for a matching entry. • If there is an entry, the node will use a Routing header to send the packet to the mobile node’s care-of-address that is in the entry. • If there is no entry, the packet will be send as usual.
Home Agent Operation • DEF: A Home Agent is a router that is on the mobile node’s home link which the mobile node has registered with.
Receiving Router Advertisement Messages • Home agents periodically send out multicast advertisements with the Home Agent bit set. • This allows Home Agents to maintain a list of other Home Agents that it is connected to. • If the Home Agent is not already in the list, it is added and the lifetime set. If it is in the list, the lifetime is reset.
Primary Care-of-Address Registration • If a node receives a request to become a mobile node’s home agent and the node does not implement home agent functionality or is not servicing the mobile node’s subnet, it must reject the request. • Otherwise, the home agent accepts the care-of-address registration and becomes the node’s Home Agent.
Primary Care-of-Address Registration Cont. • The Home Agent then enters the care-of-address into it’s Binding Cache and marks it as a “home registration.” The Prefix Length is also saved. • If the Acknowledge bit is set, an acknowledgement is sent to the node. • Lastly, the Home Agent starts to intercept packets for the mobile node.
Primary Care-of-Address Deregistration • If the node doesn’t have an entry in it’s Binding Cache for the mobile node that is a “home registration” the request is rejected. • Otherwise, the entry is deleted, an acknowledgement sent and the node stops intercepting packets for that mobile node.
Intercepting Packets for a Mobile Node • When a Home Agent receives a packet destined for a mobile node that has registered with it, the node must tunnel the packet to the mobile node using IPv6 encapsulation.
Tunneling Intercepted Packets to a Mobile Node • An intercepted packet cannot be just forwarded to the mobile node using a Routing header. • Instead the packet is tunneled to the mobile node using the Home Agents IP address as the source address and the care-of-address as the destination address.
Tunneling Intercepted Packets to a Mobile Node Cont. • The mobile node receives the packet and processes it resulting in its decapsulation and processing of the original packet. • Any packets addressed to the mobile node’s link-local address are not tunneled to the mobile node. • Instead, an ICMP Destination Unreachable message is returned to the sender.
Mobile Node Operation • DEF: A Mobile Node is any device implementing IP that can change it’s location while still communicating.
Sending Packets While Away from Home • While away from home, the mobile node will be using it’s home address plus any number of care-of-addresses. • If the care-of-address is used, no special processing is needed. • If the home address is used and the mobile node is not at home, special processing must be used.
Sending Packets While Away from Home Cont. • Mobile IP is invisible to higher layers so the original packet is formed with the home address as the source address. • First the Home Address option is set and the Home Address is copied into the Home Address field. • Then the Source Address is changed to on of the node’s care-of-address.
Forming New Care-of-Addresses • A Mobile Node obtains a new care-of-address when it moves to a new link. • It may also get one whenever it wants, but it may not do so more than once per second.
Sending Binding Updates to the Home Agent • If a Mobile Node changes it’s primary care-of-address, it must register the new address with it’s Home Agent. • To do so, it sends a Binding Update to the Home Agent with the Home Registration bit set, the Acknowledgement bit set and the care-of-address as the source address.
Sending Binding Updates to Correspondent Nodes • A Mobile Node may choose to send a Binding Update to a Correspondent Node so that it’s current care-of-address will be cached. • The Mobile Node then must put the IP address of the node, it’s Home Address and the remaining lifetime in it’s Binding Update List.
Retransmitting Binding Updates • If a Mobile node sends a Binding Update with the Acknowledge bit set and does not receive an acknowledgement within one second, it should retransmit the update with the same sequence number. • An exponential back-off process is used for all sequential failures. The max time however is 256 seconds.
Rate Limiting for Sending Binding Updates • A Mobile Node may send Binding Updates once per second at most. • If 5 consecutive Binding Updates are sent and fail, the node must reduce its rate to sending only once every 10 seconds. • It may continue at this rate indefinitely.
Receiving Binding Acknowledgements • If a Binding Acknowledgement that indicates success is received, the Mobile Node updates the appropriate entry in it’s Binding Update List and stops sending update requests. • If the Acknowledgement indicates failure, the appropriate entry is removed from the list and the node stops sending updates.
Receiving Binding Requests • A Mobile Node may receive a request for a Binding Update from a correspondent node. • The Mobile Node can then send a Binding Update with a new lifetime to the node. • Or the Mobile Node can send the Update with a lifetime of zero to deny the request.
Using Multiple Care-of-Addresses • When a Mobile Node has several care-of-addresses, it will select one to be it’s primary care-of-address. • To do so, the node sends a Binding Update to it’s Home Agent with the Home Registration and Acknowledge bits set. • After changing the primary care-of-address, the node must still accept packet from that address.
Returning Home • Once a Mobile Node returns to it’s home link, it will notify it’s Home Agent by sending it a Binding Update. • The Update will have it’s home address as the care-of-address and the Home Registration and Acknowledge bits set. • Also, the node must multicast onto the home link to advertise that is has returned.
Security Concern • Even with the validation of Binding Updates, Home Registration, etc. there is still concern. • Mobile Nodes are more suseptible to theft than non-mobile nodes and so additional security methods need to be used especially where encryption keys or authentication information are stored on the node itself.