500 likes | 651 Views
T-110.5110 Computer Networks II Mobility Issues 28.09.2009. Prof. Sasu Tarkoma. Contents. Overview Mobile IP NEMO Transport layer solutions i3 SIP mobility. Mobility in the Internet. This topic pertains to mobility of Networks Hosts Transport connections Sessions
E N D
T-110.5110 Computer Networks IIMobility Issues28.09.2009 Prof. Sasu Tarkoma
Contents • Overview • Mobile IP • NEMO • Transport layer solutions • i3 • SIP mobility
Mobility in the Internet • This topic pertains to mobility of • Networks • Hosts • Transport connections • Sessions • Objects (passive, active) • Services • Users • Many solutions are needed on multiple layers • Link layer, network, transport, application • Vertical and horizontal handoffs
No mobility High mobility Moderate mobility mobile user, passing through multiple access point while maintaining ongoing connections (like cell phone) mobile user, connecting/ disconnecting from network using DHCP mobile wireless user, using same access point Mobility Classification Protocols
Example topology AS10 Transit A C A1 C1 B C3 A5 C2 A2 A3 B1 C4 Stub AS40 B2 A4 Stub AS20 B4 Overlay node Regular node Stub AS30 B3
Mobility • What happens when network endpoints start to move? • What happens when networks move? • Problem for on-going conversations • X no longer associated with address • Solution: X informs new address • Problem for future conversations • Where is X? what is the address? • Solution: X makes contact address available • In practice not so easy. Security is needed!
Classifying Mobility Protocols Mobility Global Macro Micro MIP (1996) Hierarchical MIP (1996) Cellular IP (1998) Hawaii (1999) Dynamic Mobility Agent (2000) Time (evolutionary path) MIPv6 (2001) TMIP (2001) HMIPv6 (2001) Intra-subnet Inter-domain Intra-domain
Routing vs. mobility • Topology data aggregation is necessary • Cannot track all hosts in the world • IP addresses determined by topology • Network gives the routing prefix • Mobile hosts must change their IP addresses • Causes sockets / connections to break • How to communicate address changes? • Two approaches: • Let routing handle it not scalable • Done by ad hoc routing protocols • Let end-systems handle it protocol is needed • Goal of a mobility protocol • Transport and applications do not see address changes • Mobility transparency
MH AP NAT GPRS/UMTS Access network Public Switched Data Network NAT Router Router BS BS Backbone LAN MAN Ad hoc MH MH R R R R Router Router Networks: Mobility R
Rendezvous • How to find the moving end-point? • Tackling double jump • What if both hosts move at the same time? • Requires a rendezvous point • Mobility management is needed! • Initial rendezvous • Can be based on directories • Requires fast updates to directories • Does not work well for DNS
Security issues • Address stealing • Alice and Bob communicate • Mallory tells Alice • Bob is now at C • Address flooding • Mallory downloads from Alice, Bob, etc. • Mallory tells everybody • I have moved to C
Mobile IP • Two versions • IPv4 (optional) • integrated into IPv6 (with IPSec security) • Home Agent (HA) • Home address • Initial reachability • Triangular routing / reverse tunneling • Route optimization • Tunnels to bypass HA • HA as a rendezvous point
DELAY! Mobility Example:Mobile IP Triangular Routing Ingress filtering causes problems for IPv4 (home address as source), IPv6 uses CoA so not a problem . Solutions: (reverse tunnelling) or route optimization Correspondent host Foreign agent left out of MIPv6. No special support needed with IPv6 autoconfiguration Foreign agent Home agent Home link Foreign link Mobile host Care-of-Address (CoA)
Ingress Filtering Packet from mobile host is deemed "topologically incorrect“ (as in source address spoofing) correspondent host home agent • With ingress filtering, routers drop source addresses that are not • consistent with the observed source of the packet
DELAY! Reverse Tunnelling Firewalls and ingress filtering no longer a problem Double triangular routing leads to overhead and increases congestion Correspondent host Router Home agent Home link Foreign link Mobile host Care-of-Address (CoA)
Mobility Example:Mobile IPv6 Route Optimization CH sends packets using routing header Correspondent host First, a Return Routability test to CH. CH sends home test and CoA test packets. When MH receives both, It sends the BU with the Kbm key. Router Secure tunnel (ESP) Home agent MH sends a binding update to CH when it receives a tunnelled packet. Home link Foreign link Mobile host
Differences between MIPv4 and MIPv6 • No FA is needed (no infrastructure change) • Address auto-configuration helps in acquiring COA • MH uses COA as the source address in foreign link, so no ingress filtering • Option headers, and neighbor discovery of IPv6 protocol are used to perform mobility functions • 128 bit IP addresses help deployment of mobile IP in large environments • Route optimization is supported by header options
MIPv6 • MIP6 utilizes IPv6 header options for signalling between the HA and CN. • The important changes are a new extension header (mobility header) for the creation and management of binding, a new routing header type to allow packets to be routed directly from CN to a MN CoA (home address in ext), and a new destination type (MN to CN, home address again) • MIP6 uses the new IPv6 autoconfiguration mechanism to determine the CoA, and thus does not need a FA. • Using autoconfiguration, the MN receives Router Advertisements that contain the routing prefixes of the visited network. This prefix information is then combined with the interface ID (MAC address) of the MN to obtain the CoA. • MIP6 also supports the dynamic discovery of the HA or HAs.
Extension Headers CN to MN MN to CN Upper Layer headers Data MH Mobility Header MH Type in Mobility Header: Binding Update, Binding Ack, Binding Err, Binding refresh MN, HA, and CN for Binding Source: Chittaranjan Hota, Computer Networks II lecture 22.10.2007
MIPv6 Operation: Mobile on a Foreign network 3 2 Foreign Network 4 Stateless address Auto configuration 1 Bidirectional tunnel Duplicate address detection, Proxy neighbor discovery, and Binding cache update (Acquiring COA) Update Binding Update List 5 Source: Chittaranjan Hota, Computer Networks II lecture 22.10.2007
MIPv6: Dynamic Home Agent Discovery Home Agents List Preference Value Home Agent 2 6 Home Agent 1 2 1 1 2 2 Mobile Node Home Agents List Preference Value Home Agent 2 6 Home Agent 1 2 Dynamic Home Agent Address Discovery request to anycast address 1 DHAAD reply with addresses of home agents with their preferences 2 Source: Chittaranjan Hota, Computer Networks II lecture 22.10.2007
Security in Mobile IP • MIPv6 RFC 3775/3776 • Protection of Binding Updates HA, CNs • IPsec extension headers or the binding authorization data option • Binding management key, Kbm, which is established through return routability procedure • Protection of mobile prefix discovery • Protection of the mechanisms that MIPv6 uses for transporting data • Protecting binding updates • Must be secured through IPsec • ESP is used for updates and acks • Shoulds: init messages, prefix discovery
Return Routability Mobile Node Correspondent Node Home Agent HOTI (HOme address Test Init) COTI (Care-Of address Test Init ) HOTI COT (Care-Of Test ) HOT (HOme Test) HOT BU ACK BU
1 2 4 3 Can see HOT but not COT Claim to own home address Use current address as CoA. Offpath attack using refresh Sends COTI and HOTI to CN, construct Kbm claim ownership of CoA send binding updates, break comms. with CN. Offpath attack CN HA Both HOTI and HOT are encrypted. Malicious node may be able to forward traffic to neighbor if has a valid HA MiTM attacks. Cannot construct Kbm. MN
Offpath attacks • DoS attacks: memory/processing capability exhaustion. Connection termination. • Reflection attacks. Victim’s IP address is spoofed, receiver will respond, causing messages sent to the victim • Ingress filtering can help • MiTM attacks. Attacker compromises routers on-path. Route injection.
MIP specific attacks • Prevent connections between CN and MN by picking a home address and RR • Attacker can move to another location and refresh binding, continue deny service to MN while offpath • Solutions • When location changes, MN runs RR (malicious node fails this if offpath) • Public keys and certificates, IKE • Cryptographically generated address (CGA)
CGA and MIP • Each node has a key-pair • Produce h(PK, data) 64 bits that can be used as the interface identifier • Put this into IPv6 address host part • cryptographically generated address • MN can prove it owns such an address by providing a signature inside a message • CGA can be used to prove that a noede owns a particular addres, but not that a node is currently located at this address • RR is needed
Other Issues in Mobile IP • How does a Mobile node acquire a care-of-address in the foreign network? • By DHCP, Router advertisements, Manually • If Home agent does not reply to registration request • Send the request to broadcast address (redundancy) • Reducing registration frequency (in high mobility scenario) • FAs into a multicast group, into an anycast group, Hierarchy • Source Routing Option to avoid Tunneling and triangular routing • Not feasible as the load on intermediate routers will be more • Security(denial of service attack by bogus registration request) • Authentication using MD5 hashes • Replay attacks are prevented by (timestamp or nonce)
Hierarchical Mobile IP • HMIPv6 is specified in RFC 4140 • Introduces local Mobility Anchor Points (MAP) that are essentially Home Agents • MAPs can be located at any level in a hierarchical network of routers, including the access routers. • The aim of the HMIPv6 is to minimize the signaling latency and reduce the number of required signaling messages. • As long as the MN stays inside one MAP domain it only needs to update its location with the MAP. • The localized mobility management can also be completely handled on the network side without MN's involvement at the IP mobility protocol level.
NEMO • It is also possible for a whole subnetwork to roam from one part of the Internet to another. • Network Mobility (NEMO) is specified in RFC 3963 • The technical solution of NEMO is based on MIP6. NEMO allows subnetworks to change their location in a network. • This is realized using a mobile router that manages the mobile network. The mobile router updates its HA regarding the CoA of the mobile router. • A NEMO compliant HA can act also as a MIP6 HA. The basic solution creates a bi-directional tunnel between the mobile router and the HA, which effectively keeps the mobile network reachable. • Hosts behind the mobile router do not need to be aware of mobility in any way.
NEMO: Nested Tunneling Nested Mobile networks: A PAN in a train or a car Problems: • Suboptimal routing (bidirectional tunnel) • Header overhead (many headers) • Resilience of HA (single HA) • Long packet delay (many tunnels)
Hierarchical Mobile IP (HMIP) MH@FA1 Localizing Registrations HA Internet MH@FA2 MH@FA3 FA1 MH@FA4 MH@FA6 MH@FA5 FA3 FA2 Lineage <FA4, FA2, FA1> FA6 FA5 MH@VL MH@VL <FA6, FA3, FA1> FA4 <FA5 FA2, FA1> Common ancestor = FA1 (nearest) Common ancestor = FA2 (nearest) Source: Chittaranjan Hota, Computer Networks II lecture 22.10.2007
Multi-layer Operation • Mobility and multi-homing can be realized on different layers • Network • Mobile IP, HMIP, NEMO • Between network and transport • Host Identity Protocol (HIP) • Transport (SCTP) • TCP extensions, SCTP (TrASH) • Application • SIP, Wireless CORBA, overlays • Re-establish TCP-sessions after movement
CN CN MN MN after movement (Migrate SYN, Migrate SYN/ACK, ACK) TCP Solutions to Mobility • When MN initiates a connection, it tells the CN it’s new IP address through SYN • CN uses DNS lookup to locate a MN • TCP Migrate option is used to migrate to a new connection • (s_ip, s_port, d_ip, d_port) to (s_ip, s_port, d_ip’,d_port’) • Segmented TCP, Indirect TCP (I-TCP) • SCTP multihoming can be used as well Source: Chittaranjan Hota, Computer Networks II lecture 22.10.2007
SIP Mobility • Session mobility allows a user to maintain and manage a media session across devices • Terminal mobility allows a device to move between IP subnets while continuing to be reachable for incoming requests and maintaining sessions across subnet changes • Personal mobility allows the addressing of a single user • Located at different terminals by using the same logical address • Service mobility allows users to maintain access to services while moving or changing devices and network service providers • SIP implements these using URLs, proxies, and redirect servers. The home domain keeps track of users and devices. Message forking
Mobility using SIP 4 SIP Redirect Server Mobile Host 5 SIP Proxy Server Foreign Network Home Network 3 1 2 6 7 1 INVITE 2 302 moved temporarily 3, 4 INVITE 5, 6 OK 7 Data Corresponding Host Benefits: Global mobility, No tunneling, No change to routing
Location Query Ok Multimedia session IMS CSCF = Call State Control Function HSS = Home Subscriber Service • Example of call routing Interrogating CSCF HSS Invite From: sip:userA@isp.com To: sip:userB@isp.com Call-ID Serving CSCF Serving CSCF User B User A
Host Identity Protocol • New cryptographic namespace • Connection endpoints mapped to 128 bit host identity tags (hashes of public keys) • Mapping at HIP layer • 4-phase Base Exchange with cryptographic puzzle for DoS prevention • IPSec for network-level security
Process Transport IP Layer Link Layer Identity/Locator split identifier ID Layer locator
UPDATE: HITs, new locator(s), sig UPDATE: HITs, RR challenge, sig UPDATE: HITs, RR response, sig ESP on both directions Mobility protocol Corresponding Mobile ESP from MN to CN
Rendezvous server Server Client Basic HIP rendezvous Rendezvous registration I1 R1 I2 R2
Application-layer mobility • Many application-layer protocols are, in principle, similar to Mobile IP • Moving entity may differ • Instead of host we have object, session, entity, or interests • For example: • Object mobility • Wireless CORBA • Session mobility • SIP • Interest mobility • Content-based routing • Generic mobility • i3 overlay, service composition
Application-layer mobility • Many application-layer protocols are, in principle, similar to Mobile IP • Moving entity may differ • Instead of host we have object, session, entity, or interests • For example: • Object mobility • Wireless CORBA • Session mobility • SIP • Interest mobility • Content-based routing • Generic mobility • i3 overlay, service composition
Internet Indirection Infrastructure (i3) • An Overlay infrastructure. • Every packet is associated with an identifier. • Receiver receives using identifier A Trigger Movement with a different address (Natural Support for Mobility) [Source: http://i3.cs.berkeley.edu/]
i3: How it Works? (A Receiver R inserts a trigger into i3) CHORD ensures O (log N ) no. of intermediate hops to reach at the destination (A Sender S sends a packet with same identifier 37, that is delivered to R) [http://i3.cs.berkeley.edu/]
Mobile Web Server Browser Webserver 2 1 3 2.5/3G Operator Firewall DNS Internet Gateway By courtesy of Johan Wikman Presented in EuroOSCON 2006
Indirection Points • Mobility may be characterized by indirection points • Mobile IP • Single fixed indirection point • Location / Identity split • Single indirection point • SIP • Single fixed indirection point (home domain) (other are possible) • Content-based routing • Many indirection points
Lessons to learn • Hierarchical routing likely to stay • Addresses carry topological information • Efficient and well established • Applications face changing connectivity • QoS varies • periods of non-connectivity • Identifiers and locators likely to split • Mobility management is needed • Probably changes in directory services • Overlays have been proposed
Summary • Topology based routing is necessary • Mobility causes address changes • Address changes must be signalled end-to-end • Alternative: use triangular routing as in Mobile IP • Mobility management needed • Initial rendezvous: maybe a directory service • Double jump problem: rendezvous needed • Many engineering trade-offs