Voice over Internet Protocol (VoIP) using Asterisk

46 

Full text

(1)

Voice over Internet Protocol 

(VoIP) using Asterisk

Dr. Sameer Verma, Ph.D.

Associate Professor

Information Systems

San Francisco State University

San Francisco, CA USA 94132

sverma@sfsu.edu

(2)
(3)

teach: those of us who can't do...

research: diffusion and adoption (open source, mobility)

fun: ubuntu, maemo/nokia770, olpc/sugar, mythtv, 

nocat...

(4)

    demo

agenda

(5)

openpbx

family tree

telephony

free and open source

proprietary

asterisk

gnu bayonne

yate

(6)

VoIP

more about networking... 

...less about telephony

(7)

acronyms

VoIP – Voice over Internet Protocol

POTS – Plain Old Telephone Service

ATA – Analog Telephone Adapter

DTMF – Dual Tone Multi Frequency

SIP – Session Initiation Protocol

IAX – Inter­Asterisk eXchange

PBX – Private Branch eXchange

(8)

advantages

Network based – digital by design

IP based – economies of scale and scope

Crossover to e­mail, IM, etc.

CRM integration – e.g. SugarCRM

No toll boundaries – IP goes everywhere

(9)

disadvantages

New – adoption issues

Migration from legacy systems will cost $$$

Innovative – requires a big change 

How will telcos overbill?

???

(10)

design as a network application

If you assess your requirements from a network 

perspective, the design is more intuitive

Think of VoIP as an application along the lines of e­

mail

Accounts follow a 

<name>@<registrar>

 syntax

(11)

asterisk – the project

Asterisk was originally written by Mark Spencer 

of Digium, Inc.

Released under GPL.

Project began in 1999 or so.

Core PBX + support services such as 

voicemail, call­forwarding, conference calling, 

etc. 

(12)

three scenarios

Home use

Small business use

(13)

scenario 1

Home use

No POTS lines involved. 

Extensions for family and friends. 

All calls happen on PCs or ATAs.

(14)

scenario 2

Small business

One or two POTS lines for incoming/outgoing calls.

Extensions for Tech Support, Sales, Customer 

Service. 

Generic operator extension.

Numeric extensions and voice mail for employees.

(15)

scenario 3

Small to mid­size business

Multiple POTS and VoIP lines for incoming/outgoing 

calls.

Aggregation of lines for multiple calls (rollover 

dialing).

Specific lines and providers for long­distance and 

international calling.

(16)

dial plan

(17)

sample dial plan

Extension 101

Me

Extension 201

Wife

Extension 301

Daughter

Asterisk

101

Ekiga SoftPhone 

on Ubuntu

201

X­Lite 

on Windows XP

301

Telephone + ATA

SIP

SIP

IAX

(18)

presence­based dial plan

Extension 101

me

Extension 102

myself

Extension 103

Asterisk

Laptop (mobile)

Desktop (office)

IAX

SIP

(19)

sample family dial plan

Extension

Member

Protocol

Location

101

Myself

SIP

San Francisco

201

Wife

SIP

San Francisco

301

Kid

IAX

San Francisco

102

Mom

SIP

Chattanooga

202

Dad

IAX

Chattanooga

302

Brother

IAX

New Delhi

103

Sister

IAX

Hyderabad

203

Cousin

SIP

Aberdeen

(20)

Extension

Member

Protocol

Location

1

Sales

SIP

San Francisco, CA

2

Customer Service

SIP

San Francisco, CA

3

Technical Support

SIP

Hyderabad, India

101

VP Biz Dev

SIP

San Jose, CA

102

VP Ops

SIP

Columbus,OH

111

Dev Team Lead

IAX

Bangalore, India

222

QA Team

IAX

Dhaka, Bangladesh

333

CRM team

IAX

London, UK

555

Asia Rep

IAX

Singapore

(21)

astlinux

Linux 2.6

Soekris and WRAP

Asterisk 1.2

mini_httpd + PHP in CGI mode

OpenSSH

OpenSSL

"keydisk" support

traffic shaper (iptables+tc)

tftp server

"PBX Only Mode" ­ Asterisk 

only

ftp server (vsftpd)

Sangoma A101/102/104/S518 

support

SNMPD for lm_sensors

rp­pppoe

(22)

astlinux

Embedded Linux for Asterisk

Live CD ISO is about 70 MB

CF card fits under 64 MB

Targeted for Soekris or WRAP SBCs

Needs Pentium class 266 MHz or better

GUI via web browser

(23)
(24)
(25)
(26)

astlinux config

CD iso

VMWare 

image

Compact 

Flash

USB Keydisk

OS Image

config+log+voicemail

(27)
(28)
(29)
(30)

edit config

astlinux requires hand editing config files

extensions.conf

sip.conf

(31)

astlinux config

extensions.conf

sip.conf

(32)
(33)
(34)
(35)
(36)
(37)
(38)
(39)

more complex solutions

Trixbox

Used to be Asterisk @ Home

Combines several open source projects into one 

distro.

CentOS based

Caution: Wipes out the entire hard drive!!!

If you simply want to “play” with VoIP, use 

(40)

trixbox dial plan

Extension

Phone

Protocol

Location

101

SIP

Mobile

102

SIP

Mobile

103

SIP

San Francisco

104

IAX

105

X­Lite on Laptop

SIP

Mobile

111

Desk Phone

SIP

SF State

Ekiga on Laptop

Gizmo on Nokia

Ekiga at Home

(41)

trixbox

Trixbox 

at 

SF State

101

Ekiga on Ubuntu 

(Laptop)

102

Gizmo on Nokia 770

103

Ekiga on Ubuntu 

104

POTS Phone via IAXy

(PenLUG)

111

POTS Phone at 

SF State

105

X­Lite on Windows 

(Laptop)

(42)
(43)
(44)

resources

http://www.asterisk.org/

http://www.digium.com/

http://www.openpbx.org/

http://www.astlinux.org/

http://trixbox.org/

http://www.xorcom.com/rapid/index.html

(45)

resources

http://yate.null.ro/pmwiki/

 

http://www.gnu.org/software/bayonne/

 

http://www.voip­info.org/wiki/

http://www.voip­info.org/wiki/view/AstLinux

http://www.sureteq.com/asterisk/trixboxv1.2.htm

http://dumbme.voipeye.com.au/trixbox/trixbox_without_tears.htm

 

(46)

Figure

Updating...