170 likes | 200 Views
Open Source Open Standards. Example of OpenSER with OSP. Jim.Dalton@TransNexus.com. Open Standards. Open Source Projects based on Open Standards offer: Low cost Flexibility No Risk of being locked into a Proprietary Solution SIP applications Web Standards that enable new SIP applications
E N D
Open SourceOpen Standards Example of OpenSER with OSP Jim.Dalton@TransNexus.com
Open Standards • Open Source Projects based on Open Standards offer: • Low cost • Flexibility • No Risk of being locked into a Proprietary Solution • SIP applications • Web Standards that enable new SIP applications • HTTP (SHTTP) • XML
OpenSER OpenSER is an Open Source SIP Proxy • Very high reliability and performance • Very widely deployed • Very flexible History • 2002 SIP Express Router (SER) Project • 2005 OpenSER forked from SER • 2008 June • OpenSER changes names to Kamailio • OpenSIPS forked from OpenSER
OpenSER V1.2 Performance • OpenSER has very high performance with OSP routing and accounting. • OpenSER on a server with two, dual core Xeon CPUs can route and collect CDRs for over 500 million minutes per month of wholesale VoIP traffic. OpenSER Performance on a single core of an Intel 5140 2.33 CPU
SIP Trunking & DID Services • Value proposition begins with low price • Flexibility and innovation becomes a competitive advantage • Load balance high call rates across multiple carriers • Call Centers • Call Broadcasts • Campaigns • School systems • DID services
OSP Server SIP Trunking & DID Services PSTN Carrier 1 PSTN Carrier 5 PSTN Carrier 4 Enterprise Enterprise Enterprise Enterprise PSTN Carrier 2 PSTN Carrier 3
OSP Peering Protocol XML Presentation HTTP V1.0 SSL / TLS TCP port 80 TCP port 443 IP Overview of OSP Server • ETSI OSP protocol defines standardized messages for the secure exchange IP based sessions. • An OSP server is a web server • Resembles SOAP, VXML and CCXML • Message Formats • Multipurpose Internet Mail Extensions (MIME) • eXtensible Markup Language (XML) • Secure MIME • Communication Protocols
OpenSER and OSP OSP Server Routing Query & Response Call Detail Records OpenSER Destination Network Source Network
Internet VoIP VPN Enterprise VoIP VPN • Secure peering architecture provides VoIP VPN 1. Centralized routing 2. Secure inter-office access control 3. Centralized accounting 4. Autonomous local operation 1. Centralized routing 2. Secure inter-office access control 1. Centralized routing 2. Secure inter-office access control 3. Centralized accounting 4. Autonomous local operation 5. Minimum bandwidth 1. Centralized routing 2. Secure inter-office access control 3. Centralized accounting 1. Centralized routing OSP Server Branch Office Internet Headquarters Manufacturing Sales Office Call Center 2. Route Authorization 3. SIP INVITE with Digitally Signed Token 4. CDR collection 1. Enrollment
Inter-Network Peering OSP Server Routing Query & Response Call Detail Records OpenSER OpenSER Destination Network Source Network Validate Peering Token
OSP Server OSP Server OSP Server OSP Server 4. Auth. Response 2. Auth. Request 3. Auth. Response SIP INVITE with token for Purple network 1. Auth. Request Tiered Peering • Secure peering among multiple peering networks. Peering Server Peering Server Internet Purple Peering Network Yellow Peering Network
OSP Server OSP Server OSP Server OSP Server Dest. CDR Source CDR Dest. CDR Source CDR Cascading Settlements • Secure, end to end accounting ensures every network is compensated. Peering Server Peering Server Internet Purple Peering Network Yellow Peering Network
OSP Message Example HTTP/1.1 200 OK Server: IP address of OSP server Date: Thu, 12 May 2005 18:32:59 GMT Connection: Keep-Alive Keep-Alive: timeout=3600, max=5000 Content-Length: 1996 Content-Type: text/plain <?xml version='1.0'?> <Message messageId='11703738491' random='21655'> <AuthorizationResponse componentId='11703738490'> <Timestamp>2005-05-12T18:32:59Z</Timestamp> <TransactionId>4785098287068543017</TransactionId> <Destination> <CallId encoding='base64'>MTExNTkxOTE3Ny45</CallId> <DestinationInfo type='e164'>Called Number</DestinationInfo> <DestinationSignalAddress>[IP Address:Port]</DestinationSignalAddress> HTTP Header OSP Message
OSP Message Example (cont.) Unique Transaction ID per call <AuthorizationResponse componentId='11703738490'> <Timestamp>2005-05-12T18:32:59Z</Timestamp> <TransactionId>4785098287068543017</TransactionId> <Destination> <CallId encoding='base64'>MTExNTkxOTE3Ny45</CallId> <DestinationInfo type='e164'>Called Number</DestinationInfo> <DestinationSignalAddress>[IP Address: Port]</DestinationSignalAddress> <UsageDetail> <Amount>14400</Amount> <Unit>s</Unit> </UsageDetail> <ValidAfter>2005-05-12T18:27:59Z</ValidAfter> <ValidUntil>2005-05-12T18:37:59Z</ValidUntil> <DestinationProtocol>sip</DestinationProtocol> <SourceInfo type='e164'>Calling Number</SourceInfo> <Token encoding='base64'> Vj0xCnI9MjE2NTUKYz0KQz03Nzc3Nzc3Nzc3Cmk9TVRFeE5Ua3hPVEUzTnk0NQphPT IwMDUtMDUtMTJUMTg6Mjc6NTlaCnU9MjAwNS0wNS0xMlQxODozNzo1OVoKST00Nz Call ID from source device Called Number may be translated Call authorized for 14440 seconds IP Address of Called Number Call authorized to start in 10 minute window Protocol may be SIP, H323, IAX, … Digitally signed of token
More About OSP & OpenSER • Instructions for building OpenSER with OSP support: http://www.transnexus.com/White%20Papers/Multi-Lateral_Peering_with_SER_V2.0.pdf • OSP client library: http://sourceforge.net/projects/osp-toolkit/ • OpenSER performance with OSP: http://www.transnexus.com/White%20Papers/OpenSER-SER_Comparison.htm