380 likes | 476 Views
Edge Mobility Architecture. Alan O’Neill, BT Adastral Park Scott Corson, University of Maryland George Tsirtsis, BT Adastral Park May 2000. Objectives. Solve IP mobile routing and fast restoration Homogeneous hand-over between heterogeneous technologies Very large-scale domains Why?
E N D
Edge Mobility Architecture Alan O’Neill, BT Adastral Park Scott Corson, University of Maryland George Tsirtsis, BT Adastral Park May 2000
Objectives • Solve IP mobile routing and fast restoration • Homogeneous hand-over between heterogeneous technologies • Very large-scale domains • Why? • VoIP with high availability, real-time services • 3G migration to Internet architecture • Fixed/Mobile Convergence
Bluetooth Radio LAN’s Cellular Mobile Convergence - UMTS ++ Corporate Access Fixed Mobile Converged Domain Dial Access
Update Hand-over? (AAA) Temp Tunnel Update EMA Hand-over Architecture OAR NAR
Break before Make OAR NAR OAR NAR OAR NAR OAR NAR OAR NAR tunnel tunnel tunnel MH MH MH MH MH (a) before handover (b) sensing new link, (c) tunnel data on break (d) inject new routing on make, (e) routing converges, build tunnel forward cached data (if any) tear down tunnel Make before Break OAR NAR OAR NAR OAR NAR OAR NAR OAR NAR tunnel tunnel MH MH MH MH MH (a) before handover (b) sensing new link, (c) inject new routing on make (d) routing converges, (e) break occurs build tunnel tear down tunnel
To CoA (native or RH) Mobile IPv6 & EMA HA CN 1. EMA AAR OAR NAR • AAR is CoR for MN-HA and HA for CoA • TORA MER moves CoA within domain • One CoA, Reg and BU per domain • Improved speed, reduced delay
Tunnels Native Inter-domain Mobile IP 2. OSPF 1. EMA NAR AAR OAR SAR • Native forwarding in EMA domains • MIP tunnels / bindings inter-domain • MIP tunnels / bindings in OSPF domains
Public Address Allocators GTP Tunnelling Local Services Web hosting Multicast, QoS Local Traffic Present GPRS/UMTS SGSN GGSNx Private GPRS Domain ISPx ISPy SGSN GGSNy
GGSN v4/v6 GGSN v4/v6 RNC RNC SGSN* AAA/DHCP Local Services Web hosting Multicast, QoS Local Traffic IP in the RNCSGSN out of data-path DHCP/PPP joe@bt.com+Key EMA Domain Routing ISP E.gWaveLan DSLAM Corp xDSL
Tora -> Localization = Scalability Handover • no far-reaching control messages • eliminates convergence problem
Tora -> local decisions & loop-free SOURCES DEST • Totally-ordered heights -> “gravity” • Packets have to go uphill to form loop
Tora Fast Restore SOURCES DEST - Rapidly detects link/node failures
Tora Fast Restore SOURCES DEST • immediate localized reaction • critical for premium VoIP etc
Hierarchical Mesh Topology CR CR CR IR IR IR IR IR ER ER ER ER ER ER ER ER ER AR AR AR AR AR AR AR AR AR AR AR AR AR AR AR AR AR AR AR • CRs form full mesh (clique) at top level • IRs, ERs and ARs dual-homed for robustness • Order of magnitude increase in routers at each level • (e.g. 10 CRs, 100 IRs, 1000 ERs, 10000 ARs, etc.)
CR CR CR IR IR IR ER ER ER AR AR AR Prefix DAG per Access Router • Inject prefix(es) into ‘unordered’ domain from Access Router
(0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) Prefix DAG per Access Router • ‘Order’ all links towards each AR - aggregated DAG • DAG rooted at receiving mobile host (MH) i. • Relevant node heights with initial hop count shown
(0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) AAR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) IP address per active IP session AAA MH (0,0,0,0,i) • Mobile Host (MH) wants to send / receive IP packets • Gets allocated IP address from AAR prefix
In-session (active) Mobility Profile PD/T(d) profile is a function of T MH (probability) d d (distance moved) • D = geographical distance moved • T = session duration (IP address effective lifetime) • Assumption: Movement Localized (in probability) • Session begins at any Access Router • Session terminated on inactivity timer
Host Route Injection CR CR CR IR IR IR IR IR ER ER ER ER ER ER ER ER ER AR AR AR AR AR AR AR AR AR AR AR AR AR AR AR AR AR AR AR MH • Movement further from AAR deepens • injection towards core
(0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) Ongoing call to mobile MH MH (0,0,0,0,i) “Make Before Break” • Shows data flow from MH to MH via default DAG
(0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) TIN MH MH (-1,0,0,0,i) • Mobile senses signal but has no new link (yet) • Sends “Tunnel Initiation” (TIN) packet to old AR • Computes its new height and sends it in TIN packet
tunnel (0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) TIN (-1,0,0,1,i) AR AR AR (0,0,0,5,i) (0,0,0,0,i) (0,0,0,5,i) MH MH (-1,0,0,0,i) • Old AR establishes tunnel link to new ARs • Sets its view of tunnel height equal to (-1,0,0,1,i) • Old AR forwards TIN packet to new AR
tunnel (0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) (-1,0,0,1,i) AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) MH MH (-1,0,0,0,i) • TIN most likely arrives and is cached. • On L2 ‘make’, generate UUPD if TIN cached, • or generate when TIN or L3M arrives at new AR
tunnel (0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) UUPD AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) (-1,0,0,1,i) L3M (if mobile assist) MH MH (-1,0,0,0,i) • Make event occurs, send UUPD • If UUPD travels fast enough, data tunnel not needed
tunnel (0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) (-1,0,0,2,i) AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) (-1,0,0,1,i) MH MH (-1,0,0,0,i) • Loss of link--old AR forwards data through tunnel • Tunnel exists to prevent TORA reaction at old AR • TORA UUPD continues propagation
tunnel (0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) (-1,0,0,3,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) (-1,0,0,2,i) AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) (-1,0,0,1,i) MH MH (-1,0,0,0,i) • TORA update hits a crossover router
tunnel (0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) (-1,0,0,3,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) (-1,0,0,4,i) (-1,0,0,2,i) (-1,0,0,1,i) AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) (-1,0,0,1,i) MH MH (-1,0,0,0,i) • Crossover routers re-order links and divert data • Tunnel ‘holdsdown’ TORA reaction at old AR • Tunnel state removed when UUPD hits old AR
(0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) (-1,0,0,3,i) ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) (-1,0,0,4,i) (-1,0,0,2,i) AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) (-1,0,0,5,i) (-1,0,0,1,i) MH MH (-1,0,0,0,i) • Old AR updates height and tears down tunnel • Only (5) nodes in green have updated heights • UUPD-Ack propogates back to new AR (not shown)
(0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR CR (0,0,0,6,i) IR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) (0,0,0,6,i) (-1,0,0,3,i) ER ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) (0,0,0,7,i) (-1,0,0,4,i) (-1,0,0,2,i) AR AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) (0,0,0,8,i) (-1,0,0,5,i) (-1,0,0,1,i) MH MH (-1,0,0,0,i) • Subsequent movement...
(0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR CR (0,0,0,6,i) (-2,0,0,4,i) IR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) (0,0,0,6,i) (-1,0,0,3,i) (-2,0,0,5,i) (-2,0,0,3,i) ER ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) (0,0,0,7,i) (-2,0,0,6,i) (-2,0,0,2,i) (-1,0,0,4,i) AR AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) (0,0,0,8,i) (-1,0,0,5,i) (-2,0,0,7,i) (-2,0,0,1,i) MH MH (-2,0,0,0,i) • ... results in similar behavior
DAG Erasure (0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR CR (0,0,0,6,i) (-2,0,0,4,i) IR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) (0,0,0,6,i) (-1,0,0,3,i) (-2,0,0,5,i) (-2,0,0,3,i) ER ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) (0,0,0,7,i) (-1,0,0,4,i) (-2,0,0,6,i) (-2,0,0,2,i) UDEU AR AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) (0,0,0,8,i) (-1,0,0,5,i) (-2,0,0,7,i) MH (0,0,0,0,i) • When mobile powers off, DAG is erased • Current AR hands address back to home AR • ‘Unicast-Directed Erase Update’ (UDEU)
(0,0,0,4,i) (0,0,0,4,i) (0,0,0,5,i) CR CR CR CR (0,0,0,6,i) IR IR IR IR (0,0,0,3,i) (0,0,0,3,i) (0,0,0,5,i) (0,0,0,7,i) UDEU ER ER ER ER (0,0,0,4,i) (0,0,0,2,i) (0,0,0,4,i) (0,0,0,8,i) AR AR AR AR (0,0,0,5,i) (0,0,0,1,i) (0,0,0,5,i) (0,0,0,9,i) EUA EUAA MH (0,0,0,0,i) • DAG restored to original condition. • Home AR sends Erase Update Ack (EUA) • Current AR completes 3-way handshake (EUA-Ack)
Scalable Native-Routed Mobility CRs IRs ERs ARs dual-homed topology Scaled for 200 hosts per AR - 4CRs, 16IRs, 160ERs, 1600ARs - 320000 mobile hosts in domain • Approx. 2000 Routers and 320000 mobile hosts • Max. Avg. Route Table Size approx. 13200 routes • with native IP routing.
Active Mobile Route Injection CRs IRs ERs ARs single-homed topology • Scaled for 200 hosts per AR • Number of host routes per router increases • towards core
Domain Scaling Effects CRs IRs ERs ARs single-homed topology • Number of host routes per router decreases • as domain size increases
Effect of Dual-Homed Topology CRs IRs ERs ARs dual-homed topology • Dual-homed: host state disappears from Core Routers • redistributed to more numerous Edge Routers
Comparison with HAWAII Domain Router (for 140 ARs) CRs IRs (for 1600 ARs) ERs ARs dual-homed topology Scaled for 277 mobiles per AR (BS) - 4CRs, 16IRs, 160ERs, 1600ARs - 442514active mobiles in domain • Max. Avg. Route Table Size approx. 17600 routes. • cf. HAWAII with 140 ARs (BSs) has 38,720 mobile • host routes per domain router