Happy Diwali A Festival of Light Diwali or Deepaawali means an Array of Lamps i.e.Rows of diyas (Deep = Lamp, Vali =Array). Of all the festivals celebrated.

Slides:



Advertisements
Similar presentations
SIP, Presence and Instant Messaging
Advertisements

Johan Garcia Karlstads Universitet Datavetenskap 1 Datakommunikation II Signaling/Voice over IP / SIP Based on material from Henning Schulzrinne, Columbia.
BAI613 Module 2 - Voice over IP Technology. Module Objectives 1. Describe the benefits of IP Telephony/Packet Telephony/VoIP over traditional telephone.
Building Applications Using SIP Scott Hoffpauir Vice President, Engineering Fall 1999 VON, Atlanta.
©2012 ClearOne Communications. Confidential and proprietary. COLLABORATE ® Video Conferencing Networking Basics.
July 20, 2000H.323/SIP1 Interworking Between SIP/SDP and H.323 Agenda Compare SIP/H.323 Problems in interworking Possible solutions Conclusion Q/A Kundan.
Chapter 5 standards for multimedia communications
Agenda Introduction Requirements Architecture Issues Implementation Q/A Kundan Singh and Henning Schulzrinne, Columbia University.
Session Initiation Protocol Winelfred G. Pasamba.
SIPComm review Feb Henning Schulzrinne IRT Lab Columbia University.
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.
A Generic Event Notification System Using XML and SIP Knarig Arabshian and Henning Schulzrinne Department of Computer Science Columbia University
Building Applications Using SIP Scott Hoffpauir Vice President, Engineering Fall 1999 VON, Atlanta.
Internet E-911 System Henning Schulzrinne and Knarig Arabshian Department of Computer Science Columbia University
Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University
The Internet Real-Time Laboratory Henning Schulzrinne CS Seminar September 10, 2001.
Internet Telephony Helen J. Wang Network Reading Group, Jan 27, 99 Acknowledgement: Jimmy, Bhaskar.
IRT Lab IP Telephony Columbia 1 Henning Schulzrinne Wenyu Jiang Sankaran Narayanan Xiaotao Wu Columbia University Department of Computer Science.
E*phone sipc Software SIP user agents Hardware Internet (SIP) phones SIP proxy, redirect server SQL database sipd SIPH.323 converter NetMeeting siph323.
Scott Hoffpauir BroadSoft, Inc. Vice President, Engineering OPENSIG October 15, 1999 The Enhanced Services Layer in a Distributed Packet Network.
Using SIP for Ubiquitous and Location-Based Communications Henning Schulzrinne (with Stefan Berger, Jonathan Lennox, Maria Papadopouli, Stelios Sidiroglou,
Session Initialization Protocol (SIP)
Architecture SIP proxy, redirect server SQL database sipd Proxy, Redirect, Registration server. Authentication Programmable (SIP- CGI) OpenSource SQL database:
Architecture Proxy, Redirect, Registration server. Authentication Programmable (SIP- CGI) OpenSource SQL database: MySQL User information:
Multimedia over Internet  Paper 1 H. Schulzrinne, "A comprehensive multimedia control architecture for the Internet", Proc. of the Int. Workshop on Network.
October 4, 2000 © 2000, Columbia University Kundan Singh Internet Real-Time Lab. Columbia University What it means ? What can we do ? How can we do ? What.
©2000, Columbia University SIP/SDP user agent library with C++ interface.
Agenda Introduction Architecture Issues Implementation features Future plan Demo.
CINEMA’s UbiComp Subsystem Stefan Berger and Henning Schulzrinne Department of Computer Science Columbia University
CINEMA Columbia InterNet Extensible Multimedia Architecture
IP telephony overview and demonstration
CINEMA – The Columbia Internet Multimedia Architecture Henning Schulzrinne IRT Lab, Dept. of Computer Science November 2001.
Sipdsip323sipconfsipumsipvxmlrtspd CINEMA Libraries libNT Win32 stub libcine Utilities parsing IPv6 libsip Basic SIP library libsip++ SIP UA library libmixer.
Integrating VoiceXML with SIP services
Call Control with SIP Brian Elliott, Director of Engineering, NMS.
Applied Communications Technology Voice Over IP (VOIP) nas1, April 2012 How does VOIP work? Why are we interested? What components does it have? What standards.
Session Initiation Protocol (SIP). What is SIP? An application-layer protocol A control (signaling) protocol.
©2000, Columbia University “A flexible architecture to support wide range of multimedia communication applications, both clients and servers” Presented.
Appendix A UM in Microsoft® Exchange Server 2010.
Presented By Team Netgeeks SIP Session Initiation Protocol.
Internet Real-Time Laboratory demonstration Internet telephony, ubiquitous computing and ad-hoc networking Prof. Henning Schulzrinne (Presented by Ajay.
©2000, Columbia University “A flexible architecture to support wide range of multimedia communication applications, both clients and servers”
Demonstration of Columbia IP telephony test bed Presented by Wenyu Jiang, Kundan Singh and Xiaotao Wu Remote participant: Yi Qin.
Omar A. Abouabdalla Network Research Group (USM) SIP – Functionality and Structure of the Protocol SIP – Functionality and Structure of the Protocol By.
IP Columbia Prof. Henning Schulzrinne Internet Real-Time Laboratory Department of Computer Science Columbia University.
Project Objectives A multi-function programmable SIP user agent for multimedia communications, such as audio, video, white board, desktop sharing, shared.
Andmeside IRT 0030 loeng 719. okt Avo Ots telekommunikatsiooni õppetool raadio- ja sidetehnika instituut
1 Internet Telephony: Architecture and Protocols an IETF Perspective Authors:Henning Schulzrinne, Jonathan Rosenberg. Presenter: Sambhrama Mundkur.
IP Columbia Internet Real-Time Laboratory Department of Computer Science Columbia University.
Postech DP&NM Lab Session Initiation Protocol (SIP) Date: Seongcheol Hong DP&NM Lab., Dept. of CSE, POSTECH Date: Seongcheol.
Introduction to Session Initiation Protocol (SIP) Xiaotao Wu and Kundan Singh Columbia University October 24, 2002.
SIP-based VoiceXML browser (sipvxml)
Happy Diwali A Festival of Light
Towards Junking the PBX: Deploying IP Telephony
SIP based VoiceXML browser
Deploying IP Telephony
Architecture OpenSource SQL database: MySQL
Session Initiation Protocol (SIP)
Internet Real-Time Laboratory demonstration
Prof. Henning Schulzrinne Internet Real-Time Laboratory
SIP/RTSP based unified messaging
Pervasive Pixels Network Services
Integrating VoiceXML with SIP services
Internet Real-Time Laboratory demonstration
Internet Real-Time Laboratory demonstration
Architecture rtspd SIP/RTSP Unified messaging RTSP media server sipum
CINEMA clouds sipc e*phone Netmeeting H.323 sipd SIP RTSP MGCP PSTN
sipc e*phone sipd Netmeeting e*phone e*phone Clouds H.323 SIP RTSP
Internet telephony products
Henning Schulzrinne Dept. of Computer Science Columbia University
Presentation transcript:

Happy Diwali A Festival of Light Diwali or Deepaawali means an Array of Lamps i.e.Rows of diyas (Deep = Lamp, Vali =Array). Of all the festivals celebrated in India, Diwali is by far the most glamorous and important. Enthusiastically enjoyed by people of every religion, its magical and radiant touch creates an atmosphere of joy and festivity. As a family festival, it is celebrated 20 days after Dussehra, on the 13th day of the dark fortnight of the month of Ashwin (October / November). This year it falls on 14 th Nov. It is a festival of lights symbolizing the victory of righteousness and the lifting of spiritual darkness. It celebrates the victory of good over evil - and the glory of light. This festival commemorates Lord Rama's return to his kingdom Ayodhya after completing his 14-year exile. Homes are decorated, sweets are distributed by everyone and thousands of lamps lit to create a world of fantasy. Diwali is a time for fun and revelry. Diwali is also a time for pooja and tradition.

An Overview of CINEMA Implementation Overview Modules Applications Performance Misc –Compilation –Installation –Portability Current and Future work Presented by: Kundan Singh Joint work with Wenyu Jiang, Jonathan Lennox, Sankaran Narayanan, Henning Schulzrinne and Min Yan Nov 14, 2001 IRT Group Meeting

3 Overview Multimedia Communication Protocols Physical layer Link layer Network (IPv4, IPv6) Transport (TCP, UDP) Application layer H.323RTSPRSVPRTCP RTP Media G.711 MPEG SIP Signaling Quality of service Media transport Internet Telephony Internet Radio/TV Messaging and Presence Interactive voice response Unified messaging Video conferencing

4 Overview CINEMA - Columbia InterNet Extensible Multimedia Architecture CINEMA Libraries CINEMA Applications A flexible architecture to support wide range of multimedia communication applications, both clients and servers Proxy server, media server, voice mail, conferencing, etc. Parsing, SIP, SDP, RTP, mySQL interface, SNMP interface, Portability stubs, etc.

5 Overview SIP and sipd Address based on Columbia.edu Cisco.com home.com office.com Alice Bob 1.DNS home.com  pc1.home.com pc1.home.com  INVITE 3.INVITE (proxy mode) (2) (3) m2.home.com sipd

6 Overview sipd – Example scenario Bob (1) (2) (3) (4) (5) (6) (7) Alice (8) (9) (10) (11) (12) (13)

7 An Overview of CINEMA Implementation Overview ModulesModules Applications Performance Misc –Compilation –Installation –Portability Current and Future work Various CINEMA libraries and their functionality

8 Modules Functionality Message parsing: SIP, RTSP Transaction state and client branch User agent call state Interface to external modules: database, SNMP Higher level policy: sip-cgi Canonicalize: e.g., Henning.Schulzrinne => hgs Authentication: basic, digest

9 Modules Message Parsing (libcine) HTTPRTSPSIP GET /sip HTTP/1.0 Host: … DESCRIBE rtsp://… RTSP/1.0 Accept: application/sdp … INVITE sip:… SIP/2.0 From: … Utilities for URL, headers, constructing and parsing messages

10 Modules Transaction state (libsip) A request and all its responses RTSP vs SIP requests Request can be Proxied Redirected Generated Terminated

11 Modules Call state (libsip++)

12 Modules canonicalization [libcanon] Bob.Wilson canonicalize

13 Modules Libraries sipdsip323sipconfsipumsipvxmlrtspd CINEMA Libraries libNT Win32 stub libcine Utilities parsing IPv6 libsip Basic SIP library libsip++ SIP UA library libmixer RTP audio mixer libdict Hash table libdb++ mySQL intf RTSP media server SIP proxy server SIP/H.323 gateway SIP/RTP conferencing SIP/RTSP unified messaging SIP/VoiceXML browser LDAP Xerces-C OpenH323 MySQL PWLib Resparse librtsp RTSP client librtp RTP library libsnmp SIP MIB ViaVoice Xerces-C CINEMA Applications Parsing, SIP, SDP, RTP, mySQL interface, SNMP interface, Portability stubs, etc.

14 Modules Layered structure Transport layer (TCP/UDP) RTP Interface HTTP Message Parsing RTSP transaction SIP transaction Client Branch RTSP API RTSP server SIPUA API SIP proxy Other Applications

15 An Overview of CINEMA Implementation Overview Modules ApplicationsApplications Performance Misc –Compilation –Installation –Portability Current and Future work Our test-bed architecture and its components

16 Test-bed Architecture SIP proxy, redirect server SQL database sipd Proxy, Redirect, Registration server. Authentication Programmable (SIP- CGI) OpenSource SQL database: MySQL User information: Contact location Profile (e.g., password) Aliases Address book System information Configuration

17 Test-bed Architecture SIP proxy, redirect server SQL database sipd Web based configuration Web server User profile can be modified using web browser. Creating new user (admin/normal) Changing profile and contact information (“follow me” service). Web CGI scripts Both sipd and web scripts use the database

18 Test-bed Architecture SIP proxy, redirect server SQL database sipd e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Web based configuration Web server IP phones connected to the departmental LAN. Users are identified by id, e.g., Software (sipc) for desktop. Allows audio, video, chat, white board, device control, instant message, presence and desktop sharing.

19 Test-bed Architecture SIP proxy, redirect server SQL database sipd e*phone sipc Software SIP user agents Hardware Internet (SIP) Phones Web based configuration Web server Phones register themselves with sipd when powered up. Sipd stores the contact information in the database table: => There can be multiple contacts. All registered phones ring, and the first to pick up is connected. Registration can also be altered from the web interface

20 Test-bed Architecture SIP proxy, redirect server SQL database sipd e*phone sipc Software SIP user agents Hardware Internet (SIP) Phones Web based configuration Web server (2) Phone rings, the user picks up the call and can talk to the caller. (1) When somebody calls sipd gets the INVITE message and “proxies” the call to the current location. Another IP phone Based on user profile, sipd may ask for caller authentication.

21 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Test-bed Architecture SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server Cisco 2600 router with SIP/PSTN gateway connects the departmental LAN with the PBX. Departmental PBX (Nortel Meridian) connects both internal and external lines to the gateway. Telephone switch Internal T1 External T1 (Extension:713x) Dial “8” to reach outside line

22 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Test-bed Architecture SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server (2) The gateway forwards all PSTN calls to sipd; (1) When PBX receives a call for , it forwards the call to extension is assigned to the gateway. Telephone switch Internal T1 (Extension:713x) Dials (3) Sipd looks into the dialplan, finds a mapping and forwards the call to the current location of “hgs”.

23 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Test-bed Architecture SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server (2) Sipd authenticates the caller and checks permissions. Sipd maps the number to adding the prefix “8” and the gateway address. (3) PBX forwards the call to external line. Telephone switch (1) The IP user dials Dial “8” to reach outside line External T1 (4) PSTN user receives the call.

24 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Test-bed Architecture SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server Can use no-DID (direct inward dialing) mode for more numbers. Telephone number mappings and privileges modifiable from the web Telephone switch Internal T1 External T1

25 Additional Services Advantage: cost savings + new services “Think of receiving your voic messages in an that you can later play out in a conference to show it to others” Easy integration of , web, instant messaging, etc. Open architecture vs Close architecture (traditional telephones)

26 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Test-bed Architecture SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server Programmable server: SIP-CGI and Call Processing Language (CPL) Telephone switch Scripts can be uploaded by clients also.

27 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Test-bed Architecture SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server SNMP agent for SIP MIB. Allows remote monitoring and control of the SIP server. (e.g., prompt when an unauthorized registration is attempted) Telephone switch SNMP (Network Management)

28 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Test-bed Architecture SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server Telephone switch SNMP (Network Management) SIPH.323 convertor NetMeeting siph323 H.323 Allows an H323 client (Netmeeting) to use the services of our SIP infrastructure.

29 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Test-bed Architecture SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server Telephone switch SNMP (Network Management) SIPH.323 convertor NetMeeting siph323 H.323 Provides a voice mail and answering machine service to all the registered users. Has web interface for accessing voice mails. rtspd SIP/RTSP Unified messaging RTSP media server sipum Quicktime RTSP clients RTSP Generic media server for playback and recording of messages. Can work with existing RTSP client, Apple’s QuickTime.

30 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Test-bed Architecture SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server Telephone switch SNMP (Network Management) SIPH.323 convertor NetMeeting siph323 H.323 rtspd SIP/RTSP Unified messaging RTSP media server sipum Quicktime RTSP clients RTSP Centralized conferencing server for audio and video. Users can join from IP as well as PSTN. SIP conference server sipconf

31 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Test-bed Architecture SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server Telephone switch SNMP (Network Management) SIPH.323 convertor NetMeeting siph323 H.323 rtspd SIP/RTSP Unified messaging RTSP media server sipum Quicktime RTSP clients RTSP Netmeeting user dials SIP conference server sipconf SIP user dials PSTN user dials Sipd maps 7139=>

32 e*phone sipc Software SIP user agents Hardware Internet (SIP) phones Our IP telephony test-bed SIP proxy, redirect server SQL database sipd T1/E1 RTP/SIP Telephone SIP/PSTN Gateway Department PBX Web based configuration Web server Telephone switch SNMP (Network Management) SIPH.323 convertor NetMeeting siph323 H.323 rtspd SIP/RTSP Unified messaging RTSP media server sipum Quicktime RTSP clients RTSP SIP conference server sipconf Device GW X 10 W. Jiang, J. Lennox, H. Schulzrinne and K. Singh, “Towards Junking the PBX: Deploying IP Telephony". NOSSDAV 2001,

33 PSTN to IP Call PBX PSTN External T1/CAS Regular phone (internal) Call SIP server sipd Ethernet 3 SQL database => bob sipc 5 Bob’s phone Direct Inward Dial (DID) - direct and simple No-DID - dial extension, supports more users Gateway Internal T1/CAS (Ext: ) Call x is called a part of Coordinated Dial Plan (CDP) in a Nortel PBX

34 IP to PSTN Call Gateway ( ) 3 SQL database 2 Use Ethernet SIP server sipd sipc 1 Bob calls PSTN External T1/CAS Call PBX Internal T1/CAS Call Regular phone (internal, 7054) Note: In this direction there is no distinction between DID and non- DID calls.

35 An Overview of CINEMA Implementation Overview Modules Applications PerformancePerformance Misc –Compilation –Installation –Portability Current and Future work Discussion of some performance issues and solutions

36 Performance Why is it important ? Reduce server cost per user => more users per server Registration: 100 requests/s => registered users (1 hr refresh time, digest authentication) Call: 100 requests/s => calls per hour (record route) Bandwidth: 1 Gb/s => (approx) 6250 bi-directional G.711 simultaneous participants in a conference.

37 Performance For which components ? Signaling: proxy, registrar (sipd) –Receive message –Act on it (canonicalize, database lookup) –Proxy the message –Send/proxy response back Media: sipconf, rtspd –Some processing for each media stream –File I/O –Encode/decode (audio mixing) –Forward packets (video)

38 Performance Threads One thread per request –For 1MB virtual memory per thread on 32 bit machine: max limit of 4000 threads. OS limits (for regular user 1024 pthreads on solaris) –30 second wait per stateful INVITE request; limits to 130 R/s –Thread creation overhead 1.Customize stack size 2.Use thread pool or event model

39 Performance Thread pool Request are put in an event queue Worker threads pick up the event and execute Fix the number of worker threads G/G/T/N queue Use thread pool for all requests Need to rewrite sleep/wakeup so that 30 sec wait does not waste a thread Will multiple process help? may be for stateless proxies

40 Performance In-memory DB Every query to database affects turn-around time Duplicate the DB in main memory; hash-table Less than 4k per user (?) Replacement algorithm? Not needed Synchronization: separate threads –Primary user table, aliases: relatively static, readonly by sipd, refresh every 30 min –Contacts table: read-write, refreshed every 2 min –Read only modified records since last read, write back only modified records

41 Performance Database NFS issues (log, scripts, database files?) SQL logging: currently serialized; use lazy write back; logging at the end of request processing, so it does not affect response time but consumes resources (worker thread) for longer time per request DB on same machine or on remote machine?

42 Performance Bandwidth Assuming avg message length 130 bytes; on 100 Mb/s with effective 40%, 3000 requests/s Affects more to media components –Number of simultaneous media streams served by rtspd –Number of participants in a conference by sipconf –Number of simultaneous three party conferences by sipconf

43 Performance General Comments Measure performance on various platforms (Linux, Solaris Netra, Dec Alpha) Compare stateless vs stateful proxy Compare in-memory (fastsql) vs database (sql)

44 An Overview of CINEMA Implementation Overview Modules Applications Performance MiscMisc –Compilation –Installation –Portability Current and Future work

45 Compilation Autoconf, configure and make for Unix platforms –Solaris, Linux, FreeBSD, Tru64 $./configure –with-mysql=… --with-… $ make sipconf Microsoft VC for Windows NT/2000 Makefile.in (global), module.mk (per module)

46 Installation And software distribution GUI based configuration Package manager (Sun, Linux, FreeBSD,…), Installation scripts, windows install shield Monitor scripts, RC

47 Portability Cross platform support Endian-ness: Big endian (Sparc, DEC), little endian (Intel) 32 bit vs 64 bit Unix vs Windows standard libraries (threads) Re-entrant APIs (gethostbyname_r, strtok_r) NTutils for win32 Shared libraries compilation (?)

48 Documentation software documentation: – Overview: –Paper: –Tech report (incomplete): Compilation instructions: –README, README.build, NT/README.win32 files This presentation: – (will be put up shortly)

49 Current and Future Work Improved installation Address book Calendar and event notification Conference recording (local file, media server) File sharing in a conference from web Voice dialogs for conferencing and voic Load balancing on multiple conference servers Conference (floor) control from web

50 Current and Future Work From a multimedia communication test bed to a multimedia collaboration portal environment Scaling to large call volumes and users

51 Publications For more information W. Jiang, J. Lennox, H. Schulzrinne and K. Singh, “Towards Junking the PBX: Deploying IP Telephony". NOSSDAV 2001, H. Schulzrinne, S. Narayanan, J. Lennox and M. Doyle, “SIPstone – Benchmarking SIP Server Performance”. Aug Kundan Singh, Gautam Nair and Henning Schulzrinne, "Centralized Conferencing using SIP". Proceedings of the 2nd IP-Telephony Workshop (IPTel'2001), April K. Singh, H.Schulzrinne, "Interworking Between SIP/SDP and H.323". Proceedings of the 1st IP-Telephony Workshop (IPTel'2000), April Kundan Singh and Henning Schulzrinne, "Unified Messaging using SIP and RTSP". IP Telecom Services Workshop 2000, Sept Atlanta, Georgia, U.S.A.