Design and Implementation: Large Scale IPv6 Multimedia

Download Report

Transcript Design and Implementation: Large Scale IPv6 Multimedia

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._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 Server1 gets overload, SIP server2’s location
bits is adjusted to 100:
_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
Test
Parameter
Network Connection
1Gps
SIP Load Generator
Sipp2.0(no DNS SRV
support)
Load Generator hardware
Sun X2200
retransmission timer
500ms
Registration test
Pre-created
account(10000) expire
timer: 20s
Invitation test
Pre-registration(10000
account) call duration:
1ms
Registration Test
• Number of Test
– 200,000
registration
• Test Duration
– 1m 46s
• Average cps
– 1879
Table 1. Registration response time distribution
Call Duration
Call Number
0ms <= n <= 10ms
0
10ms <= n <= 50ms
612
50ms <= n <= 100ms
169074
100ms <= n <= 150ms
11202
150ms <= n <= 200ms
1
200ms <= n <= 500ms
444
500ms <= n <=1000ms
8492
1000ms <= n <= 2000ms
5760
n >= 2000ms
3126
Invitation Test
• Test Number
– 40,000 calls
• Test Duration
– 42seconds
• Average cps
– 982
Table2. Call Duration Distribution
Call Duration
Call Number
0ms <= n <= 10ms
30
10ms <= n <= 50ms
1272
50ms <= n <= 100ms
4479
100ms <= n <= 150ms
10864
150ms <= n <= 200ms
11072
200ms <= n <= 500ms
8653
500ms <= n <=1000ms
8492
1000ms <= n <= 2000ms
3481
n >= 2000ms
356
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
Thank you && Questions?