CINEMA (Columbia InterNet Extensible Multimedia Architecture) presented by – Kundan Singh, Joint work with Wenyu Jiang, Jonathan Lennox, Sankaran Narayanan, Henning Schulzrinne, Xiaotao Wu More information at http://www.cs.columbia.edu/IRT/cinema/ Project Objectives Approach Develop protocols (SIP, RTSP, RTP,…) Implement common reusable libraries Provide distributed servers components Integrate with web, email, phone systems Performance A flexible architecture to support clients and servers for wide range of multimedia communication applications such as video conferencing, Internet telephony/radio, interactive voice response, unified messaging, presence and multimedia collaboration. Session Initiation Protocol (SIP)-based enterprise VoIP infrastructure Load sharing and failover in SIP P CINEMA servers Local/long distance e.g., 1-212-5551212 sipconf: conference server Telephone switch PSTN RTSP RTSP clients e.g., Quicktime SQL database cgi Web server vxml SIP/PSTN Gateway e.g., Cisco 2600 Web based configuration VXML 7134 H.323 siph323: SIP-H.323 translator alice@cs.columbia.edu (software phone) Bob’s phone 2 7 4 3 High quality Web server CGI, servlet, JSP Call request SIP phone SIP-based VoiceXML browser (sipvxml) SIP phone +1 212 9397040 Press 1 to listen to next message, 2 to forward … PSTN interworking Telephone subscriber Telephone network SIP/PSTN gateway SIP server (sipd) Bi-directional replication Slave Master P2 PUA sip2.cs.columbia.edu REGISTER _sip._udp SRV 0 0 5060 phone.cs.columbia.edu SRV 1 0 5060 sip2.cs.columbia.edu Overview Multimedia communication Internet Telephony Interactive voice response Internet Radio/TV Messaging and Presence Multi-devices Collaboration proxy1 = phone.cs backup = sip2.cs Multimedia application components Audio, video, text, screen sharing, … PSTN interworking, IVR Unified messaging Video conferencing Voicemail, discussion forum,… SQL Media SIP RTSP G.711 MPEG SAP RSVP RTCP Application layer RTP Other Applications Libraries (C/C++) Transport (TCP, UDP) Network (IPv4, IPv6) RTSP API RTP Interface Quality of service Signaling Media transport Link layer RTSP server RTSP tr SIPUA API SIP proxy Physical layer Program Call routing Voice XML DTMF Mixing Speech/ text SDP SIP transaction HTTP Message Parsing Client Branch Transport layer (TCP/UDP) sip:7141@cs.columbia.edu S P1 IP-phone, telephone, X10, Ncast, … SIP, RTP, audio mixing, DB interface, SNMP interface, RTSP, DNS SRV/NAPTR, win32 portability,… sip:wenyu@cs b2 b.example.com _sip._udp SRV 0 0 b1 SRV 1 0 b2 D2 Master Slave REGISTER H.323 Media server IP endpoint M Web scripts PUA + PA Programmable SIP proxy cgi CPL b1 phone.cs.columbia.edu A signaling translator between ITU-T’s multistage H.323 and IETF’s SIP that supports different dialing modes, has a built-in gatekeeper and is transparent to media path. Programmable call routing based on time of day, caller id, etc., using server side Call processing language, Common Gateway interface (CPL), Java servlets or client side Language for End System services (LESS) scripts S a.example.com _sip._udp SRV 0 0 a1 SRV 1 0 a2 D1 gatekeeper SIP a2 Web scripts PUA registrar sipd M sip:bob@b.example.com s3 SUBSCRIBE Programmable IP telephony services vxml s2 Presence server alice@home.com SIP-H.323 gateway a1 sip:bob@example.com bob@office.com NOTIFY A SIP/RTP-based centralized conference server to support audio mixing, video forwarding, text chat and screen sharing among heterogeneous endpoints such as PC and phones. It has playout delay adjustment for wide area Internet, web-based conference setup, high quality audio (G.722, G.711) as well as low bit rate codecs (GSM, DVI). s1 P PA Interactive voice response (IVR) SIP/PSTN gateway P office.com SIP/PSTN PSTN phone P First stage stateless proxy server farm Presence and event notification H.323 clients e.g., NetMeeting Low bitrate P Second stage proxy/registrar (sipd) rtspd Multimedia conferencing SIP323 example.com _sip._udp SRV 0 0 s1 SRV 0 0 s2 SRV 0 0 s3 SRV 1 0 ex Peer-to-peer Internet telephony avoids the configuration and maintenance cost of server-based architecture and dependency on controlled infrastructure such as DNS. We use Chord algorithm on top of SIP for an interoperable, scalable and robust P2P-SIP endpoint. sipum 1. Alice (caller) calls Bob 2. The SIP server forks the call to Bob’s phone and the mail server 3. After 10 seconds, the mail server sets up RTSP sessions to playback welcome message and to record mail 4. Mail server accepts the call 5. SIP server cancels the other branch 6. SIP server forwards the acceptance 7. Media packets are sent directly between the RTSP server and caller SIP 7136 5 6 Alice’s phone P2P VoIP using SIP 2 sipd 1 sipum: unified messaging sipd: proxy, redirect, registrar 713x Unified messaging using SIP and RTSP rtspd: media server Department PBX Internal Telephone e.g., 7040 sipstone: benchmark for SIP servers Different signaling vs. media components Black-box measurement and white-box profiling Load balancing, thread pooling, and reactive system to improve performance Novel peer-to-peer IP telephony using SIP Layered Architecture … moving from IP telephony to real-time multimedia collaboration…