towards junking the pbx: deploying ip telephony wenyu jiang, jonathan lennox, henning schulzrinne...

28
Towards Junking the PBX: Towards Junking the PBX: Deploying IP Telephony Deploying IP Telephony u Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Sin Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu We describe our departmental IP telephony installation

Post on 21-Dec-2015

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

Towards Junking the PBX: Towards Junking the PBX: Deploying IP TelephonyDeploying IP Telephony

Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan SinghColumbia University

{wenyu,lennox,hgs,kns10}@cs.columbia.edu

We describe our departmental IP telephony installation

Page 2: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

2

OutlineOutline

• Introduction to IP telephony

• System architecture

• Call flows

• System configuration

• Security

• Scalability

Page 3: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

3

Traditional Telecommunication Traditional Telecommunication InfrastructureInfrastructure

7043

7040

7041

7042

External line

Telephoneswitch

Private BranchExchange

212-8538080

Anotherswitch

Corporate/Campus

InternetCorporate/Campus LAN

Page 4: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

4

What is IP Telephony ?What is IP Telephony ?

External line

7043

7040

7041

7042

PBX

Corporate/Campus

InternetLAN

8154

8151

8152

8153

PBX

Another campus

LAN

IP Phone Client

VoIP Gateway VoIP Gateway

Page 5: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

5

IP Telephony ProtocolsIP Telephony Protocols

Call “[email protected]

• Contact “office.com” asking for “bob”

• Locate Bob’s current phone and ring

office.comhome.com

• Bob picks up the ringing phone

• Send and receive audio packets

Session Initiation Protocol- SIP

Real time Transport Protocol- RTP

SIP server

audio over RTP

Page 6: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

6

ArchitectureArchitecture

SIP proxy,redirectserver

SQLdatabase

sipd

SIPH.323convertor

NetMeetingsip323

H.323

rtspd

SIP/RTSPUnified

messaging

RTSP media server

sipum

Quicktime

RTSP clients

RTSP

SIP conference

server

sipconf

T1/E1 RTP/SIP

Telephone

Cisco 2600 gateway

Telephoneswitch

Web based configuration

Web server

Cisco 7960

3Com

e*phone

sipc

Software SIP user agents

Hardware Internet (SIP)

phones

Pingtel

SNMP

Page 7: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

7

SIP proxy,redirectserver

SQLdatabase

sipd

e*phone

sipc

Software SIP user agents

Hardware Internet (SIP)

phones

Web based configuration

Web server

cs.columbia.edu

Call Bob

Example Call (IP only)Example Call (IP only)• Bob signs up for the service from the web as “[email protected]

• He registers from multiple phones

• Alice tries to reach Bob INVITE sip:[email protected]

• sipd canonicalizes the destination to sip:[email protected]

• sipd rings both e*phone and sipc

• Bob accepts the call from sipc and starts talking

Page 8: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

8

CanonicalizationCanonicalization

Bob.Wilson

canonicalize

bob@cs

Page 9: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

9

Other ServicesOther Services

• Programmable servers– Time-of-day, caller identification– CPL, SIP CGI

• Unified messaging– Centralized voice mail– SIP, RTSP

• Conferencing– Dial-in bridges; centralized audio mixing– Audio, video and chat

Page 10: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

10

PSTN to IP Call (Direct Inward Dial)PSTN to IP Call (Direct Inward Dial)

PBXPSTN

External T1/CAS

Regular phone(internal)

Call 93971341

SIP server

sipd

Ethernet

3

SQLdatabase

4 7134 => bob

sipc

5

Bob’s phone

• DID - direct and simple• No-DID - dial extension, supports more users

GatewayInternal T1/CAS(Ext:7130-7139)

Call 71342

713x is called a part of Coordinated Dial Plan (CDP) in a Nortel PBX

Page 11: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

11

IP to PSTN CallIP to PSTN Call

Gateway(10.0.2.3)

3

SQLdatabase

2Use sip:[email protected]

Ethernet

SIP server

sipdsipc

1Bob calls 5551212

PSTN

External T1/CASCall 55512125

5551212

PBX

Internal T1/CASCall 85551212 4

Regular phone(internal, 7054)

Note: In this direction there is no distinction between DID and non-DID calls.

Page 12: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

12

T1 Line Configuration T1 Line Configuration (From the PBX Side)(From the PBX Side)

• Electrical/physical settings– T1 type: Channelized, PRI– Characteristics: line coding - AMI, B8ZS; framing

- D4, ESF

• Trunk type: DID, TIE

• Channel type: Data, Voice-only, Data/Voice

• Access permissions: adjust NCOS for internal T1 trunk and CDP routing entry (713x)

Page 13: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

13

VoIP Configuration in the VoIP Configuration in the Gateway: Dial PeersGateway: Dial Peers

• Dial Peer for PSTN to IP calls:dial-peer voice 1 voip destination-pattern 713. voice-class codec 1 session protocol sipv2 session target ipv4:128.59.19.141

• Dial Peer for IP to PSTN calls:dial-peer voice 1000 pots destination-pattern ((70..)|(71[0-24-9].)) no digit-strip port 1/0:1

• Regular expressions to avoid ambiguity

Page 14: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

14

Dial Peers for non-DID callsDial Peers for non-DID calls

• Example for a mix of DID and non-DIDtranslation-rule 7138 rule 1 71381.% 1 ANY abbreviateddial-peer voice 1 voip destination-pattern 713[0-79] …dial-peer voice 2 voip destination-pattern 7138T translate-outgoing called 7138 …

• Caller dial 939-7138, then punch in a 3-digit extension of the form 1xx.

Page 15: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

15

VoIP Configuration in VoIP Configuration in sipdsipd:: Dial PlanDial Plan

sip:7134@sipd-hostcanonicalize using dial plan

tel:+12129397134Find tel: uid in SQL PrimaryUser Table

Locate user’scontact information

sip:5551212@sipd-host

• PSTN to IP call • IP to PSTN call

sip:bob@sipd-host

canonicalize using dial plan

tel:+12125551212

Verify caller’sprivilege

Locate propergateway

sip:85551212@gw

Page 16: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

16

Example Dial PlanExample Dial Plan

• Dial plan mapping for IP to PSTN calls# Intra-department calls7[01]?? tel:+1212939$# Local (same area code) calls??????? tel:+1212$# Remove dial-out prefix ‘8’(8)???????tel:+1212$# International numbers(011)* tel:+$(8011)* tel:+$

Page 17: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

17

SecuritySecurity

• Goal: prevent unauthorized users from making certain (e.g., long-distance) calls

• Where to put authentication modules:– In the gateway (requires vendor’s support)– Or, its associated SIP proxy server

• Prevent direct calls that bypasses the proxy• Enforce signaling path using IOS access control

• SIP authentication– Digest, Basic, PGP

Page 18: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

18

Gateway Selection and PrivilegesGateway Selection and Privileges

• Approaches– RFC 2916: ENUM, E.164 based on DNS

– RFC 2871: TRIP, allows optimization

– Static routing file, used in sipd(+1212939)7[01]?? full,guest sip:[email protected]

– full and guest are user’s gateway classes

– The server may terminate the call if caller has no sufficient privileges.

Page 19: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

19

Sample Access Control List (ACL)Sample Access Control List (ACL)• Configure NIC to use ACL 101 (in packets)

interface FastEthernet0/0 ip address 128.59.19.28 255.255.248.0 ip access-group 101 in

• Definition of ACL 101access-list 101 permit ip host 128.59.19.141 anyaccess-list 101 permit udp 128.59.16.0 0.0.7.255 \ range biff 65535 host 128.59.19.28 neq 5060

• SIP requests (destination port 5060) allowed from only the designated proxy host

• Multimedia (RTP) packets treated otherwise

Page 20: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

20

CINEMA: Columbia InterNet CINEMA: Columbia InterNet Extensible Multimedia ArchitectureExtensible Multimedia Architecture

• Web interface– Administration– User configuration

• Unified Messaging

– Notify by email

– rtsp or http

• Portal Mode– 3rd party IpTelSP

Page 21: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

21

Scalability via DNS SRVScalability via DNS SRV

• A simple load balancing schemeexample.com_sip._udp 0 40 a.example.com

0 40 b.example.com0 20 c.example.com1 0 backup.somewhere.com

• a and b each receives 40% of total request

• c receives remaining 20%

• backup server for fault tolerance

Page 22: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

22

Scalability ContinuedScalability Continued

• 2-stage load balancing based on DNS SRV

• Stage 1: stateless routing based on hashing

• Stage 2: – Hashed clusters

– Stateful proxy

• Redirect feature

Page 23: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

23

Scalability of Media ServersScalability of Media Servers

• Media packets => more load than signaling

• rtspd: multiple server selection: static/dynamic

• sipconf: tree structure• Bandwidth savings similar to multicast

• Added packetization and playout delay

Page 24: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

24

Scalability of Gateway and LANScalability of Gateway and LAN

• 1 T1 line = maximum 24 voice channels– Multiple T1 lines or gateways– IP Centrex service by carrier PBX with ethernet

• LAN bandwidth limitations (gateway calls)

• Silence Suppression: 40-45% activity factor

• Faster Ethernet interface (10 => 100 Mb/s)

Codec Bit-rate Net bandwidth Gross (IP/RTP/UDP)

PCM µ-law 64 kb/s 3.072 Mb/s 3.84 Mb/s

G.729, 20ms 8 384 kb/s 1.152 Mb/s

G.729, 40ms .. .. 768 kb/s

Page 25: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

25

SNMP Support in SNMP Support in sipdsipd

• sipd status

• Details of active transactions

• User contact info

Page 26: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

26

Detailed SNMP MIBsDetailed SNMP MIBs

• Details of active transactions

• User contact info

Page 27: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

27

Future WorkFuture Work• Additional services

– PIN numbers for telephone users– Automated, electronic billing– Instant messaging– VoiceXML (e.g., email access via PSTN)

• Performance and scalability: – sipd, rtspd, sipconf– SQL main-memory vs. disk database

• Firewall/NAT interoperability• Details of system to appear in Tech Report

Page 28: Towards Junking the PBX: Deploying IP Telephony Wenyu Jiang, Jonathan Lennox, Henning Schulzrinne and Kundan Singh Columbia University {wenyu,lennox,hgs,kns10}@cs.columbia.edu

6/26/2001 Columbia University, Deploying IP Telephony

28

ConclusionConclusion

• Initial field test experience with deploying IP telephony in a campus environment

• The architecture and installation experience can be used at other organizations

• Issues raised for further study:– Service availability/reliability– Quality of Service (QoS)– Privacy/encryption– Electronic billing policies