Voice Over IP Friday Science Seminar 02/16/07 Southern Oregon University
Objectives A technical overview of the devices and protocols that enable Voice over IP (VoIP) Demo Packet8 and Skype Discuss network administrator concerns
Who Am I? Priscilla Oppenheimer SOU Adjunct Faculty in Computer Science 27 years experience developing data communications and networking systems MS in Information Science from the University of Michigan
What Is VoIP? Voice over the Internet Protocol (IP) Sending voice (telephone) conversations over the Internet Or over any internetwork or intranet that uses IP Also known as IP telephony
Why Is This Cool? Saves you money! You can choose your area code Mobility Voice mail to notification Lots of other features
Many VoIP Implementations 1.Enterprises are merging their voice and data networks 2.Vonage, Packet 8, BroadVoice, and others offer VoIP to broadband home users 3.Software applications such as Skype and Gizmo implement peer-to-peer VoIP
Enterprise VoIP Source: Cisco Systems
VoIP at Home with Phone Adapter Source: BroadVoice
Peer-to-Peer VoIP Skype Gizmo Software that runs on PCs, Macs, and Unix The caller logs into an authentication server, finds target, and then the voice is sent directly to the callee
Our Telephony Legacy
On-Hook to Off-Hook Source: Cisco Systems The weight of the receiver opens a spring-loaded switch hook inside the phone thereby disconnecting the idle phone from the telephone line. Lifting the receiver closes the switch hook and allows current to flow which causes the phone switch to send the dial tone signal.
Dialing and Switching Source: Cisco Systems
Ringing Source: Cisco Systems
Talking Source: Cisco Systems
VoIP Emulates Our Legacy System Handles: On-hook Off-hook Dial tone Dialing Switching Ringing Voice Legacy: from Latin legatus 1.A gift by will especially of money or other personal property 2.Something transmitted by or received from an ancestor or predecessor
VoIP with Analog Phones Router 1 Configuration voice-port 1/0/0 ring-frequency 30 ring cadence pattern01 ! dial-peer voice 1 pots destination-pattern port 1/0/0 ! dial-peer voice 10 voip destination-pattern session target ipv4: codec g711ulaw Source: Cisco Systems
Digital IP Phones Carry Legacy into the Future! Have an IP address Have Ethernet interface(s) Have an analog-to-digital converter Have sex appeal!
VoIP Functionality Realms Digitizing and packetizing voice Signaling Off-hook, dial tone, dialed digits, ring, ringback Call setup and teardown Public Switched Telephone Network (PSTN) integration
VoIP Protocol Suites Sending digitized voice Realtime Transport Protocol (RTP) Signaling Session Initiation Protocol (SIP) H.323 PSTN Integration Media Gateway Control Protocol (MGCP) Electronic Number Mapping System (ENUM)
Digitizing an Analog Signal Source: Forouzan, "Data Communications and Networking"
Digitizing Voice: Nyquist Theorem The sampling rate must be at least two times the highest frequency contained in the analog signal The highest frequency for voice is 4000 Hz Sample 8000 times per second Store in an 8-bit byte 64,000 bps bandwidth required
Quantizing Mapping a continuum of possible amplitudes into a finite number of discrete values Can be uniform or non-uniform Non-uniform (picture on right) uses smaller step functions at lower amplitudes
Encoding Wave form coders Non-uniform approximation of wave form G.711 = ITU-T standard for non-uniform representation of 64 Kbps Pulse Code Modulation (PCM) Predictive algorithms (encode differences between samples) Vocoders (synthesize voice)
Conjugate Structure Code-Excited Linear Prediction Uses codebook and feedback to learn and predict voice wave form ITU-T G.729 best-known example Works on 10-millisecond audio Generates an 80-bit payload Uses 8 Kbps bandwidth Supports silence suppression
Packetizing the Digitized Voice Place two 80-bit payloads in one RTP/UTP/IP packet
Realtime Transport Protocol (RTP) Developed by the IETF (RFC 1889) Carries realtime audio and video Runs above UDP/IP Adds sequence number and timestamp Uses a UDP even port number The RTP Control Protocol (RTCP) uses the next higher odd port number Ports are used
Session Initiation Protocol (SIP) Developed by the IETF (RFC 3261) Most common VoIP signaling protocol on the Internet Call setup, teardown, ring, ringback, etc. A SIP address is similar to an address
SIP Protocol Behavior Can use TCP or UDP port 5060 Other ports seen in the wild Request/response protocol with ASCII text messages REGISTER, INVITE, BYE, etc. Similar to HTTP Shares some of HTTP's status codes 200 OK 404 Not Found
SIP Invite
Media Gateway Control Protocol (MGCP) Developed by the IETF (RFC 3435) Protocol and architecture Source: NCTT
ENUM Developed by the IETF (RFC 3761) Maps E.164 telephone number to Domain Name System (DNS) name Retrieves an NAPTR record stored in a DNS database $ORIGIN e164.arpa. IN NAPTR "u" "sip+E2U" IN NAPTR "u" "smtp+E2U"
VoIP Network Design Voice is sensitive to Delay and jitter Dropped packets Use TestYourVoIP from Brix Networks to test your network performanceTestYourVoIP
Test Your VoIP with G.711 From AFN to Boston From Boston to AFN
Test Your VoIP Signaling Delay From AFN to Boston From Boston to AFN
Test Your VoIP with G.729 From AFN to Boston From Boston to AFN
VoIP Concerns Local number portability (LNP) Power outages Does your VoIP provider know where you are? Legal (and illegal?) "wire tapping" by law enforcement
More VoIP Concerns Security Confidentiality Integrity Availability Authentication Rerouting calls through a service that is less expensive Is Phreaking back?
And More VoIP Concerns VoIP may not work with firewalls Some VoIP applications don't "play by the rules" and cause concerns for security and privacy experts Skype behavior is hard to distinguish from a hacker's attack Skype also causes some nodes to be "super nodes" without their knowledge
VoIP Summary Can be implemented many ways Emulates our legacy telephone system Uses RTP for voice transport Uses SIP for call setup and teardown It's cool and can save you money! Time to SIP some beers at Standing Stone?