400 likes | 570 Views
네트워크 인지적 Dual-Stack IP 이동성 및 멀티호밍 기술. Youn-Hee Han yhhan@kut.ac.kr Korea University of Technology and Education Internet Computing Laboratory http://icl.kut.ac.kr. Outline. 2 /40. Web 2.0 and IPv6 PMIPv6’s Dual-Stack Support (DS-PMIP) Network Cognition in DS-PMIP Part 1: Subnet Model
E N D
네트워크 인지적 Dual-Stack IP 이동성 및 멀티호밍 기술 Youn-Hee Han yhhan@kut.ac.kr Korea University of Technology and EducationInternet Computing Laboratory http://icl.kut.ac.kr
Outline 2/40 • Web 2.0 and IPv6 • PMIPv6’s Dual-Stack Support (DS-PMIP) • Network Cognition in DS-PMIP • Part 1: Subnet Model • Part 2: Multihoming & Vertical Handover Determination • Conclusions & Discussion
Web2.0 and IPv6 3/40
Carrier-Grade NAT (CGN) Internet Internet Global v4 address Global v4 address Access Concentrator Access Concentrator With NAT FTTH ADSL Private IPv4 address Global v4 address CPE With NAT CPE With NAT Private v4 address Private v4 address End Host End Host Source: 72th IETF (July 2008) 4/40 • Most conservative access model changes • introducing “Carrier-Grade NAT (CGN)”
CGN’s Limitation 5/40 • CGN looks v6 is not needed? • No. CGN has serious restrictions. • IPv6 is needed ! • Each customer can have only some “limited” numbers of sessions simultaneously. • “port number” is just 2bytes which means 64K • For example, if 2000 customer shares same Global IPv4 address (please note that this is just for example), only 25 or 30 so sessions can be used by each customer at the worst case. • Which means that:
CGN’s Limitation - Web 2.0 and IPv6 Max 30 Connections Max 20 Connections Max 15 Connections Max 10 Connections Source: 72th IETF (July 2008) 6/40
XMLHttpRequest() UI JavaScript Engine HTML / CSS data XML data JavaScript Code – the Ajax Engine HTML rendering engine Other data (e.g. images) Web 2.0 Application’s Operation concurrent sessions Browser UI: Ajax: time server-side server processing server-side systems browser request web server data stores backend etc. html + css + xml data mgmt 7/40 “Ajax” web application Desktop UI“session” management
Web 2.0 and IPv6 Source: 72th IETF (July 2008) 8/40 • Examples of # of concurrent sessions of web 2.0 sites • AJAX applications of Web 2.0 break behind NAT • Too many connections exhaust public IP port space
PMIPv6 Overview LMA: Localized Mobility AgentMAG: Mobile Access Gateway IP Tunnel IP-in-IP tunnel between LMA and MAG LMA Home Network MN’s Home Network (Topological Anchor Point) MAG LMA Address (LMAA) That will be the tunnel entry-point LMM (Localized Mobility Management)Domain MAG movement Proxy Binding Update/Ack. (PBU/PBA) Control message sent by MAG to LMA to establish a binding between MN-HoA and Proxy-CoA MN’s Home Network Prefix (MN-HNP) CAFE:2:/64 MN’ Home Address (MN-HoA) MN continues to use it as long as it roams within a same domain Proxy Care of Address (Proxy-CoA) The address of MAG That will be the tunnel end-point 10/40 • RFC 5213
IPv4 Support for PMIPv6 • Two functions supported • IPv4 Transport Network Support • IPv4 Home Address Mobility • The new WG draft for IPv4 support for PMIPv6 • R. Wakikawa (Toyota ITC) and S. Gundavelli (Cisco), “IPv4 Support for Proxy Mobile IPv6”, draft-ietf-netlmm-pmip6-ipv4-support-04.txt, July 14, 2007 + RFC 5213 = DS-PMIP 11/40
WiBro IP Network Cellular IP network Expected MobilityScenarios RAS MAG LMA MN IPv4 MAG LTE BS IPv6 WLANIP Network NAT Private IPv4 AAA WLAN AP MAG 12/40 • DS-PMIP이 고려하는 전송네트워크 이질성 • IP Transport Network Heterogeneity • IPv6/IPv4/Private IPv4 Transport Network Support
WiBro IP Network Cellular IP network Expected MobilityScenarios RAS MAG LMA MN IPv6 Application(VoD, IP-Phone…) IPv4 MAG IPv4 LTE BS IPv6 IPv6 WLANIP Network NAT AAA Private IPv4 WLAN AP MAG IPv6 Application(VoD, IP-Phone…) 13/40 • DS-PMIP이 고려하는 어플리케이션 이질성 (1/2) • IPv6 Home Address Mobility
WiBro IP Network Cellular IP network Expected MobilityScenarios IPv4 Application(VoD…) RAS MAG DSMIPv6HA MN IPv4 Application(VoD…) IPv4 IPv6 Application(IP-Phone…) MAG IPv4 LTE BS IPv6 IPv6 WLANIP Network NAT AAA Private IPv4 WLAN AP MAG IPv6 Application(IP-Phone…) 14/40 • DS-PMIP이 고려하는 어플리케이션 이질성 (2/2) • IPv4 Home Address Mobility
Signaling & Tunneling in DS-PMIP • MAG와 LMA 사이의 시그널링 및 터널 설정 LMA (바인딩 관리: IPv6 HoA & IPv4 HoA IPv4 or IPv6 Proxy-CoA ) IPv4-UDP-IPv6-PBU IPv4-UDP-IPv6-PBU IPv6-PBU IPv6-PBAck IPv4-UDP-IPv6-PBAck IPv4-UDP-IPv6-PBAck NAT 6-in-6Tunnel 4-in-6Tunnel 6-in-4Tunnel 4-in-4Tunnel 6-in-udp-in-4Tunnel 4-in-udp-in-4Tunnel MAG MAG MAG MN 이 IPv6 네트워크로 이동할 때 MN 이 IPv4 네트워크로 이동할 때 MN 이 PrivateIPv4 네트워크로 이동할 때 15/40
DS-PMIP 종합 테스트베드 (2007, 2008) v4/v6 VoD Server CN eth1) 192.168.2.1 3ffe:2::1/64 In ETRI LMA V4/V6 network MN has Dual Stack and both addresses are always enabled eth0) 192.168.2.2 3ffe:2::2/64 LMA가 MN에게 할당할 Prefix Pool 3ffe:1:3:1::/64 ~ 3ffe:1:3:ffff::/64 eth0) 192.168.1.1 3ffe:1::1/64 NAT 192.168.1.3 Private V4 network V6 network eth0) 10.0.0.1 MAG3 V4 network eth0) 3ffe:1::2/64 MAG1 eth0) 192.168.1.2 MAG2 ra0) 10.0.1.1 3ffe:1:3::1/64 fe80::1 ra0) 192.168.101.1 3ffe:1:1::1/64 fe80::1 ra0) 192.168.102.1 3ffe:1:2::1/64 fe80::1 SSID: PMIP3 SSID: PMIP1 SSID: PMIP2 초기 실행: v4 VoD Client 초기 실행: v6 VoD Client 17/40
DS-PMIP in only Private IPv4 Network and IPv4 App. (2007) Subnet 4 VoD (PC4) 192.168.4.1 192.168.4.2 LMA (PC0) 192.168.3.1 192.168.1.1 192.168.3.2 192.168.1.2 802.11g 802.11a NAT2 NAT1 10.0.1.1 10.0.2.1 10.0.1.1 10.0.1.2 10.0.2.2 10.0.1.2 Subnet 1 Subnet 2 Subnet 3 MAG1 (PC1) MAG2 (PC2) MAG3 (PC3) 10.0.101.1 10.0.102.1 10.0.101.1 192.168.5.1 192.168.5.2 192.168.5.1 192.168.5.1 Notebook1 Notebook1 Notebook2 Notebook1 In KT 18/40
Subnet and Link 20/40 • Definitions (RFC 4903, June 2007) • Link • a topological area of an IP network delimited by routers. • Subnet • a topological area of an IP network that uses the same unsubdivided address prefix. • The consensus in IETF • A link with multiple subnet prefix: YES • A subnet with multiple links (Multi-link Subnet): NO ONE SUBNET SPANS ONLY ONE LINK • However… • The design of NETLMM would lay a single subnet on the entire NETLMM domain.
NetLMM Subnet Model MN’s subnet has to follow the movements of the MN. Per-MN Subnet 같은 MN이네?그럼 똑같은 Subnet을 만들어 주어야지 LMA LMA PBA(Home Network Prefix #1) PBA(Home Network Prefix #1) MAG MAG MAG MAG RA(Home Network Prefix #1) RA(Home Network Prefix #1) MN MN 21/40 • Two Contradictory Constraints • MN’s subnet does not change when the MN moves in domain(MN’s subnet spans on the entire NetLMM Domain) • MN’s subnet does not span more than one link.
Network Cognition in DS-PMIPPart 2: Multihoming & Vertical Handover Support 22/40
List of PBU Options • PBU Options • Mandatory Options • MN-ID: MN-NAI • Home Network Prefix (HNP) • Handoff Indicator (HI) • Access Technology Type (ATT) • Additional Options • MN-LL (Link-layer)-ID • Link-local Address (of MAG) • Timestamp They are used when MAG/LMA support Multihoming & Horizontal/Vertical Handover 23/40
How MAG determines HNP Option Values? • Home Network Prefix (HNP) option • NON_ZERO (Pre-assigned HNP): Binding Refreshment • ALL_ZERO: Initial Attachment / Handoff Binding 정보를 다시 보내서 Lifetime을 늘려야겠다. LMA LMA LMA PBU(HNP=ALL_ZERO) PBU(HNP=HNP #1) PBU(HNP=ALL_ZERO) MAG MAG MAG MAG MAG MAG 핸드오프 !(핸드오프가 아니라 초기 접속이라도…) 초기접속이군 ! MN MN MN 24/40
How MAG determines ATT Option Values? • Access Technology Type (ATT) option • 1: Virtual • 2: PPP (3GPP/3GPP2) • 3: IEEE 802.3 • 4: IEEE 802.11a/b/g • 5: IEEE 802.16e • MAC must knows the ATT by which MN is currently attached • How to now? • link-specific methods • manual setting • or other methods LMA PBU(ATT=5) MAG MAG ATT is IEEE 802.16e !!! WiBro MN 25/40
How MAG determines MN-LL-ID Option Values? • MN-Link Layer (LL)-ID option • E.g., IEEE 802 MAC Address • If MAG can know MN-LL-ID, it must insert it into PBU (Recommended) • If MAG cannot know MN-LL-ID, it must not insert it into PBU • How to now? • link-specific methods • or other methods • MN-LL-ID is used to determine the handoff state LMA PBU(MN-LL-option=XXX) MAG MAG IEEE 802 MAC: XXX WiBro(IEEE 802 MAC: XXX) 3G MN 26/40
How MAG determines HI Option Values? • Handoff Indicator (HI) option • 1: Attachment over a new interface • 2: Handoff between two different interfaces of the MN • 3: Handoff between MAGs for the same interface • 4: Handoff state unknown • 5: Handoff state not change (BindingRefresh) LMA LMA PBU(HI=1) PBU(HI=1) 다른 인터페이스의 스위치를 올려서 단순하게 접속만 시도했군 !세션이동성도 없고… MAG MAG MAG MAG 초기접속이군 ! WiBro 3G WiBro 3G WiBro 3G WiBro 3G MN MN 27/40
How MAG determines HI Option Values? • Handoff Indicator (HI) option • 1: Attachment over a new interface • 2: Handoff between two different interfaces of the MN • 3: Handoff between MAGs for the same interface • 4: Handoff state unknown • 5: Handoff state not change (BindingRefresh) LMA LMA PBU(HI=1) PBU(HI=2) 새로운 인터페이스로 세션을 이동하고 있네?Vertical 핸드오버군 ! MAG MAG MAG MAG WiBro 3G WiBro 3G WiBro 3G WiBro 3G MN MN 28/40
How MAG determines HI Option Values? • Handoff Indicator (HI) option • 1: Attachment over a new interface • 2: Handoff between two different interfaces of the MN • 3: Handoff between MAGs for the same interface • 4: Handoff state unknown • 5: Handoff state not change (BindingRefresh) LMA LMA PBU(HI=1) PBU(HI=3) 같은 인터페이스로 세션을 이동하고 있네?Horizontal 핸드오버군 ! MAG MAG MAG MAG WiBro WiBro WiBro WiBro WiBro 3G WiBro 3G MN MN 29/40
How MAG determines HI Option Values? • Handoff Indicator (HI) option • 1: Attachment over a new interface • 2: Handoff between two different interfaces of the MN • 3: Handoff between MAGs for the same interface • 4: Handoff state unknown • 5: Handoff state not change (BindingRefresh) LMA LMA PBU(HI=1) PBU(HI=4) 도저히상황파악을 못하겠다…??? MAG MAG MAG MAG WiBro WiBro WiBro WiBro WiBro 3G WiBro 3G MN MN 30/40
How MAG determines HI Option Values? • Handoff Indicator (HI) option • 1: Attachment over a new interface • 2: Handoff between two different interfaces of the MN • 3: Handoff between MAGs for the same interface • 4: Handoff state unknown • 5: Handoff state not change (BindingRefresh) LMA LMA PBU(HI=1) PBU(HI=5) 단순하게 Binding 정보를 다시 보내서 Lifetime을 늘려야겠다. MAG MAG MAG MAG WiBro WiBro WiBro WiBro WiBro 3G WiBro 3G MN MN 31/40
How MAG determines HI Option Values? • Howto know the value of Handoff Indicator (HI) option? • [Case1] Link-specific Method • [Case2] Context Transfer between MAGs • [Case3] New Signaling Interface between MN and MAG • MN sends the exact indication to MAG • MN’s Layer 2 or 3 modification needed [Case2] [Case3] [Case1] LMA LMA LMA Context Transfer MAG MAG MAG MAG MAG MAG Link-specificMethod New Signaling MN MN MN 32/40
LMA’s Policy • LMA’s Procedure when it receives PBU (1/3) NO (바인딩 갱신) HNP=ALL_ZERO ? YES (초기접속 or 핸드오프) NO [MN-ID & ATT & MN-LL-ID] matches in BCE ? MN-ID matches in BCE & HI=2 ? MN-LL-ID exist in PBU? YES YES 세가지 정보가모두 일치하는가? NO YES NO 초기접속인 경우 (Scenario 1) VerticalHandoff 인 경우(Scenario 3) HorizontalHandoff 인 경우 (Scenario 2) New BCE Entry Creation & New HNP(새로운 Mobility Session으로관리) The Existing BCE Entry Update(기존 Mobility Session 유지관리) Initial Attachment Handoff 33/40
LMA’s Policy • LMA’s Procedure when it receives PBU (2/3) NO (바인딩 갱신) HNP=ALL_ZERO ? YES (초기접속 or 핸드오프) NO MN-ID matches in BCE &HI=2 or HI=3 ? MN-LL-ID exist in PBU? YES YES NO New BCE Entry Creation & New HNP(새로운 Mobility Session으로관리) The Existing BCE Entry Update(기존 Mobility Session 유지관리) Initial Attachment Handoff 34/40
LMA’s Policy • LMA’s Procedure when it receives PBU (3/3) NO (바인딩 갱신) HNP=ALL_ZERO ? YES (초기접속 or 핸드오프) NO YES HNP and MN-ID matches in BCE ? Binding Refreshment 인 경우 (Scenario 4) New BCE Entry Creation & New HNP(새로운 Mobility Session으로관리) Lifetime Update in the Exiting BCE Entry Initial Attachment Binding Refreshment 35/40
Procedure Summary • Scenario 1: Initial Attachment (and Multihoming) • LMA creates a new BCE entry • LMA allocates a new HNP • LMA manages a new different session LMA LMA PBU (MN-ID=MN, HNP=ALL_ZERO, HI=1, ATT=5, MN-LL-ID=XXX) PBU (MN-ID=MN,HNP=ALL_ZERO, HI=1, ATT=2, MN-LL-ID=YYY) PBA (HNP=HNP#2) PBA (HNP=HNP#1) MAG MAG MAG MAG WiBro 3G WiBro 3G RA (Prefix=HNP#2) RA (Prefix=HNP#1) HNP#1 HNP#1 HNP#2 WiBro(IEEE 802 MAC: XXX) 3G(LL-ID: YYY) WiBro(IEEE 802 MAC: XXX) 3G(LL-ID: YYY) MN MN 36/40
Procedure Summary • Scenario 2: Horizontal Handoff • LMA updates the existing BCE entry • LMA allocates the same HNP • LMA keeps the existing session LMA LMA PBU (MN-ID=MN, HNP=ALL_ZERO, HI=1, ATT=5, MN-LL-ID=XXX) PBU (MN-ID=MN,HNP=ALL_ZERO, HI=3, ATT=5, MN-LL-ID=XXX) PBA (HNP=HNP#1) PBA (HNP=HNP#1) MAG MAG MAG MAG WiBro WiBro WiBro WiBro RA (Prefix=HNP#1) RA (Prefix=HNP#1) HNP#1 HNP#1 WiBro(IEEE 802 MAC: XXX) 3G(LL-ID: YYY) WiBro(IEEE 802 MAC: XXX) 3G(LL-ID: YYY) MN MN 37/40
Procedure Summary • Scenario 3: Vertical Handoff • LMA updates the existing BCE entry • LMA allocates the same HNP • LMA keeps the existing session LMA LMA PBU (MN-ID=MN, HNP=ALL_ZERO, HI=1, ATT=5, MN-LL-ID=XXX) PBU (MN-ID=MN,HNP=ALL_ZERO, HI=2, ATT=2, MN-LL-ID=YYY) PBA (HNP=HNP#1) PBA (HNP=HNP#1) MAG MAG MAG MAG WiBro 3G WiBro 3G RA (Prefix=HNP#1) RA (Prefix=HNP#1) HNP#1 HNP#1 WiBro(IEEE 802 MAC: XXX) 3G(LL-ID: YYY) WiBro(IEEE 802 MAC: XXX) 3G(LL-ID: YYY) MN MN 38/40
Procedure Summary • Scenario 4: Binding Refreshment • LMA updates lifetime of the existing BCE entry • LMA keeps the existing session LMA LMA PBU (MN-ID=MN, HNP=ALL_ZERO, HI=1, ATT=5, MN-LL-ID=XXX) PBU (MN-ID=MN, HNP=HNP#1, HI=5, ATT=5, MN-LL-ID=XXX) PBA (HNP=HNP#1) PBA (HNP=HNP#1) MAG MAG MAG MAG WiBro 3G WiBro 3G RA (Prefix=HNP#1) RA (Prefix=HNP#1) HNP#1 HNP#1 WiBro(IEEE 802 MAC: XXX) 3G(LL-ID: YYY) WiBro(IEEE 802 MAC: XXX) 3G(LL-ID: YYY) MN MN 39/40
Conclusions • IPv4 and NAT is limited! • Web 2.0 & IPv6 • DS-PMIP (Dual-Stack Proxy Mobile IPv6) • IPv4/v6 Transport Network Heterogeneity • IPv4/v6 Home Address Mobility • Network Cognition in DS-PMIP • Subnet Model • Multihoming & Vertical Handover Determination • DS-PMIP’s Network Cognition Behavior is one of early examples of future “Cognitive Networks” 40/40