240 likes | 399 Views
Design and Implementation: Large Scale IPv6 Multimedia Communication System based on SIP. David Gong 27,8. 2007. Outline. Background Available Research System Design Key Implementation-SIP6 Performance Test Conclusion Future Work. Background. What is SIP?
E N D
Design and Implementation:Large Scale IPv6 Multimedia Communication System based on SIP David Gong 27,8. 2007
Outline • Background • Available Research • System Design • Key Implementation-SIP6 • Performance Test • Conclusion • Future Work
Background • What is SIP? • SIP is a protocol defined to establish, modify and tear down multimedia communications over Internet • CERNET2 • Currently the largest pure IPv6 network of world, various kinds of applications are explored on CNGI • Existing SIP Deployment • SIP.edu • VoIPv6 of 6Init • SIP over IPv6 in Taiwan • SIP Server would turn out to be a performance bottleneck when largely deployed
Existed Researches • Increases capacity of single SIP server • A hybrid transaction proxy algorithm • Load Balancing • DNS SRV • IP Virtual Server • CINEMA[2] • Performance Optimization or need extra resources • P2P based SIP systems • CASIP • P2PSIP • P2PSIP using OPENDHT | Chord • Still far from large scale deployed
System Design • Design Principles • System Architecture • Global Unique Identifier • Load Balancing Mechanism • High Available AoR Database Mechanism
Design Principles • Pure IPv6 Solution • All key components run on IPv6 stack • Take advantage of IPv6 • Expose any potential disadvantage of IPv6 • Scalability, Robustness and Roaming Support • Geographically distribution of subscribers • Roaming Potential • Rapid deployment of WIFI network in China
System Architecture • Hybrid arch: distributed routing, centralized AAA
Global Unique Identifier • The identifier of subscriber has to be global effective to support roaming and load balancing • Every SIP server has to know where to lookup the AoR of destination and where the next hop is • A Global Unique Identifier is indispensable xx-xxxx-xxxxx
Load Balancing Mechanism-1 • DNS SRV Mechanism • Advantage: standard, support by SIP… • Disadvantage: Local user gets served by distant server -> poor QoS • Our Proposal • Carrying location information of SIP servers in SRV’s weight field DNS SRV weight field “a012” Location bits “a0” Weight bits “12”
Load Balancing Mechanism-2 • Allocation of location bits • Each region is mapped to a scope of location bits • The location bits are adjusted according to the actual load • Load bits of overloaded SIP server will slide to adjacent location bits
High Available AoR Database Mechanism • General Hash Mechanism • GNI hashed to various databases • Failure of any node would influence a series of users • Out Scheme • Store redundant AoR in different databases • Primary database and secondary database are introduced • Primary index and Secondary index are determined by GNI • Primary index is related to location, to optimize performance • Secondary index is hashed as distributed as possible • Usage • Store: parallel, both • Fetch: serial, stop if the fetch of primary database succeed
Key Implementation • Network Environment • Hardware and Software Platform • Global Unique Identifier of SIP6 • DNS SRV mechanism for SIP6 • AoR Databases Mechanism for SIP6 • Current Progress
KImp - Network Environment • All components connected to backbone of CERNET2 directly • Domain Name: sip6.edu.cn
Hardware and software Platform • Hardware • Sun X2200 • OS • Redhat AS 4.1 • SIP Server • Fully support of IPv6 • Extended DNS SRV mechanism • High Available AoR Database Support • OPENSER • Database • POSTGRESQL
Global Unique Identifier • Potential users would be aggregated around universities • The GUI of users from certain univ. is designed be consecutive. 86-0001-12345 Country Code University index Subscriber ID
DNS SRV for SIP6 • 3 Region in the first deployment stage • Initial distribution of location bits: • 0 - 120; 80 – 200; 160 – 256; • SIP Server1 gets overload, SIP server2’s location bits is adjusted to 100: • _sip._udp 3600 SRV 15370 0 5060 sip-server1.sip6.edu.cn. • _sip._udp 3600 SRV 35850 0 5060 sip-server2.sip6.edu.cn. • _sip._udp 3600 SRV 56330 0 5060 sip-server3.sip6.edu.cn. • _sip._udp 3600 SRV 25610 0 5060 sip-server2.sip6.edu.cn
Current Progress • Website: http://register.sip6.edu.cn • IPv6 SIP User Agent: CoolSIP • Voice, Video, IM, PSTN…
Performance Test • Test Case • Registration test • Invitation test • The test result is average value of single server
Registration Test • Number of Test • 200,000 registration • Test Duration • 1m 46s • Average cps • 1879 Table 1. Registration response time distribution
Invitation Test • Test Number • 40,000 calls • Test Duration • 42seconds • Average cps • 982 Table2. Call Duration Distribution
Conclusion • Presented an innovate SIP architecture • Totally IPv6 Solution • Extended DNS SRV Mechanism • High Available AoR Database Mechanism • Exhibited SIP6’s deployment on CERNET2 • Take advantage of the distribution of subscribers • Take advantage of open source software • Performance Test • Registration test • Invitation test
Future Work • Test and Analysis of performance decrease due to introduction of second database mechanism • The influence on SIP Traffic caused by DNS SRV self adjustment • Using a DNS SRV enabled sipp to do further test • Develop a DNS SRV supporting patch for sipp • Collect running data from operational system • Analysis the influence of message and presence
Reference • SIP: Session Initiation Protocol, RFC3261 • SIP.edu http://www.internet2.edu/sip.edu/ • Mauricio Cortes, Jairo Esteban, and Hyewon Jun, Towards Stateless Core: Improving SIP Proxy Scalability, In IEEE Globecom Conference, November, 2006 • Kundan Singh and Henning Schulzrinne, Failover and load sharing in SIP telephony, Technical Report 2005 • P2P SIP, http://www.p2psip.org/ietf.php