Multimedia Communication in the Internet VoIP and SIP - PowerPoint PPT Presentation

1 / 46
About This Presentation
Title:

Multimedia Communication in the Internet VoIP and SIP

Description:

re-INVITEs used to change session state. ACK confirms session establishment ... 180 Ringing (processed locally) 181 Call is Being Forwarded. 2yz Success. 200 ok ... – PowerPoint PPT presentation

Number of Views:153
Avg rating:3.0/5.0
Slides: 47
Provided by: GMD1
Category:

less

Transcript and Presenter's Notes

Title: Multimedia Communication in the Internet VoIP and SIP


1
Multimedia Communication in the InternetVoIP
and SIP
  • Dr. Dorgham Sisalem

2
Description of Multimedia
3
Session Description Protocol (SDP)
  • Convey sufficient information to enable
    participation in a multimedia session
  • SDP includes description of
  • Media to use (codec, sampling rate)
  • Media destination (IP address and port number)
  • Session name and purpose
  • Times the session is active
  • Contact information
  • Note indeed SDP is a data format rather than a
    protocol.

RFC2327
4
Example Session Description Protocol (SDP)
  • v0
  • osisalem 28908044538 289080890 IN IP4
    193.175.132.118
  • sSIP Tutorial
  • esisalem_at_fokus.gmd.de
  • cIN IP4 126.16.69.4
  • t28908044900 28908045000
  • maudio 49170 RTP/AVP 0 98
  • artpmap98 L16/11025/2

Receivers IP address
Supported RTP payload types
Receivers port number
I am ready to receive G.711 (0) and L16 (98)
audio at IP address 126.16.69.4, port number
49170.
5
IP Telephony
  • What is IP-Telephony?

6
Why Another Phone System?
  • Carrying voice on IP-based packet networks first
    identified by Cohen in 1977
  • Commercialization and standardization began in
    1995 Vocaltec the first company to ship IP2PSTN
    gateways (proprietary)
  • ITU-T standardized H.323 to recreate ISDN
  • SIP standardization began in IETF in 1995
  • Adoption of SIP for use in 3GPP in late nineties
  • Motivation
  • Cost saving through telco by-passing
  • Service Integration

7
Why Another Phone System?
  • Lower transport costs
  • Routing is cheaper than switching (lower
    equipment and line prices)
  • Network is not only dedicated to voice
  • More efficient bandwidth usage
  • Variable compression (often lower than 64kb/s)
  • Usage of silence suppression
  • Application integration
  • Support voice, video or text all at the same time
    with the same network
  • Integrate intelligent applications easily
    (initiate a call when something happens)

8
IP-Telephony is not just Telephony!!!!
  • IP-Telephony signaling is not about
  • Reengineering PSTN
  • Carrying PSTN over IP
  • Providing QoS
  • Solving the business model dilemma
  • Introducing world peace
  • IP-Telephony is just another Internet application
    but with special requirements
  • More stringent QoS requirements but so would
    video conferencing and distributed gaming
  • Interaction with legacy technology
  • Regulatory issues
  • Comparisons to legacy services

9
Basic Internet Telephony Scenarios
  • PC-to-PC (MS NetMeeting, appliances)
  • PC-to-phone (net2phone.com)
  • phone-to-phone (Paegas)
  • phone-to-PC as well

10
PC-to-phone/PC Scenario
Egress PSTN Gateway
PSTN Phone
IP SoftPhone
IP Hard-Phone
  • Benefits
  • Cost-savings
  • Service integration Many todays installation
    serve as PBX replacement today.

IP SoftPhone
11
Phone-2-phone Scenario
PSTN Phone
Ingress PSTN Gateway
PSTN Phone
  • Benefit
  • Cost savings through telco bypass. Most of the
    voice path in the Internet which has no notion of
    distance and duration in its charging model.

Egress PSTN Gateway
12
Shift in Motivation Since Nineties
  • Telco prices dropping, cost saving not as
    appealing as in the past
  • Berlin-Prague before market liberalization in
    1995 1DM a minute
  • Berlin-Prague today 4.50 cents (factor of 11)
  • Expectations set high on service integration
  • Voicemail2email, click-to-dial, conferencing,
    instant messaging and presence, etc.
  • Shift in business mode be telco on your own
    doable without large investments and operational
    costs. Seen as an opportunity for small
    businesses.

Source http//www.billigertelefonieren.de/
13
Completed Work
  • Since beginning, lot of focus has been paid to
    quality of service to assure nice voice
  • Network provisioning
  • QoS Signaling (RSVP, diffserv)
  • Packet-loss concealment
  • Less concern today backbones overprovisioned,
    end-devices improved and burned in hardware
  • Signaling for IP Telephony Well Understood Today
  • Session Initiation Protocol (RFC3261)
  • Gateways to PSTN

14
SIP Implementations Widely Available
SNOM Pingtel Allied Telesyn
Cisco
Intertex Cisco Siemens
Mitel Microsoft
Free SIP server with capacity that can server
VoIP signaling for Bay Area.
and many more http//www.iptel.org/info/product
s/
15
Integrated Applications
  • Distributed games
  • SIP Quake sighted!
  • Virtual reality
  • Web-pages and applets
  • Links in e-mails
  • Web-IVRs
  • Click-to-dial
  • Directory Services
  • Video conferencing
  • Instant Messaging
  • voicemail notifications
  • stock notifications
  • callback notification
  • Calendars
  • pre-setup conference calls
  • Unified Messaging
  • voicemail2email

etc.
16
Example Trial Site
  • Provides just signaling services
  • gives users a unique globally reachable address
  • resembles Web-hosting in IP world or NetCentrex
    in PSTN world
  • no media transport -- only signaling relayed,
    media does not hit the server at all
  • To set it up, we needed
  • PC
  • Freely available software
  • IP access
  • one part-time undergraduate student
  • Users need
  • IP phone (either in SW or HW)
  • Complimentary services may be easily provided by
    other parties, users just need to set up their
    signaling preferences
  • bridging to PSTN, voicemail--2-email, etc.

17
Protocols
18
What Problems Do Need to Be Solved for VoIP?
  • Session management
  • Users may move from terminal to terminal with
    different capabilities and change their
    willingness to communicate
  • To set-up a communication session between two or
    more users, a signaling protocol is needed
  • Session Initiation Protocol (SIP) supports
    locating users, session negotiation
    (audio/video/instant messaging, etc.) and
    changing session state
  • Media Transport
  • Getting packetized voice over lossy and congested
    network in real-time
  • RTP protocol for transmitting real-time data
    such as audio, video and games
  • End-to-end delivery underlying IP connects the
    whole world
  • Supporting protocols DNS, IP , routing protocol,
    AAA, gateway location, QoS, etc.
  • IETF Practice Decomposition Principle Separate
    protocols are used for separate purposes.
    Signaling protocol separate from media and QoS
    signaling. All of them on top of IP.

19
Protocol Zoo (Hourglass Model)
Media
RTP
H.323
SIP
RTCP
HTTP
UDP
SCTP
TCP
IPv4/IPv6
AALx
PPP
GPRS
V.x
SONET
Ethernet
ATM
20
Packetized Communication
Signaling Protocol
Call Server
Media Transport
End Users
End Users
IP Router
  • Note
  • Every packet may take a completely different path
  • Signaling takes typically different path than
    media does
  • Both signaling and media as well as other
    applications (FTP, web, email, ) look alike
    up to transport layer and share the same fate

21
Components Integration with SIP
PSTN Gateway
  • All components use SIP
  • They are glued together using a proxy server that
    implements a routing policy for signaling

SMS Gateway
IP Phone Pool
Softphones And Messaging applications
SIP proxy
Applications
Other domains
22
SIP (RFC3261) - General Purpose Presence Protocol
  • SIP is not limited to Internet telephony
  • SIP establishes user presence
  • SIP messages can convey arbitrary signaling
    payload session description, instant messages,
    JPEGs, any MIME types
  • Suitable for applications having a notion of
    session
  • distributed virtual reality systems,
  • network games (Quake II/III implementations),
  • video conferencing, etc.
  • Applications may leverage SIP infrastructure
    (Call Processing, User Location, Authentication)
  • Instant Messaging and Presence
  • SIP for Appliances

23
SIP Is Not
  • Transport Protocol
  • QoS Reservation Protocol
  • Gateway Control Protocol
  • It does NOT dictate ...
  • Product features and services (color of your
    phone and distinctive ringing melodies, number of
    simultaneous calls your phone can handle, dont
    disturb feature, ...)
  • network configuration

24
SIP Workhorses
  • SIP Proxy Server
  • relays call signaling, i.e. acts as both client
    and server
  • operates in a transactional manner, i.e., it
    keeps no session state
  • transparent to end-devices
  • does not generate messages on its own (except ACK
    and CANCEL)
  • Allows for additional services (call forwarding,
    AAA, forking, etc.)
  • SIP Redirect Server
  • redirects callers to other servers
  • SIP Registrar
  • accept registration requests from users
  • maintains users whereabouts at a Location Server
  • (like GSM HLR)

25
SIP End-devices
  • User Agent (user application)
  • UA Client (originates calls)
  • UA Server (listens for incoming calls)
  • Types of UAs
  • Softphone and hardphones
  • Messaging clients
  • PSTN gateways
  • Media servers (voicemail)
  • Etc.

26
SIP Addresses
  • SIP gives you a globally reachable address.
  • Callees bind their temporary address to the
    global one using SIP REGISTER method.
  • Callers use this address to establish real-time
    communication with callees.
  • URLs used as address data format examples
  • sipjiri_at_iptel.org
  • sipvoicemail_at_iptel.org?subjectcallme
  • sipsales_at_hotel.xy geo.position48.54_-123.84_12
    0
  • must include host, may include user name, port
    number, parameters (e.g., transport), etc.
  • may be embedded in Webpages, email signatures,
    printed on your business card, etc.
  • address space unlimited
  • non-SIP URLs can be used as well (mailto, http,
    ...)

27
SIP RFC3261 Methods
  • INVITE initiates sessions
  • session description included in message body
  • re-INVITEs used to change session state
  • ACK confirms session establishment
  • can only be used with INVITE
  • BYE terminates sessions
  • CANCEL cancels a pending INVITE
  • OPTIONS capability inquiry
  • REGISTER binds a permanent address to current
    location may convey user data (CPL scripts)

28
SIP Extension Methods
  • UPDATE precondition met
  • (draft-ietf-sip-manyfolks-resource)
  • PRACK provisional reliable responses
    acknowledgement
  • (draft-ietf-sip-100rel)
  • INFO mid-call signaling
  • (RFC 2976)
  • SUBSCRIBE/ instant messaging
  • NOTIFY/ (draft-ietf-simple-)
  • MESSAGE

29
SIP Response Codes
  • Borrowed from HTTP xyz explanatory text
  • Receivers need to understand response class (x)
  • x80 and higher codes avoid conflicts with future
    HTTP response codes
  • 1yz Informational
  • 100 Trying
  • 180 Ringing (processed locally)
  • 181 Call is Being Forwarded
  • 2yz Success
  • 200 ok
  • 3yz Redirection
  • 300 Multiple Choices
  • 301 Moved Permanently
  • 302 Moved Temporarily

30
SIP Response Codes (cont.)
  • 4yz Client error
  • 400 Bad Request
  • 401 Unauthorized
  • 482 Loop Detected
  • 486 Busy Here
  • 5yz Server failure
  • 500 Server Internal Error
  • 6yz Global Failure
  • 600 Busy Everywhere

31
SIP Message Structure
Response
Request
SIP/2.0 200 OK Via SIP/2.0/UDP
here.com5060 From BigGuy ltsipUserA_at_here.comgt To
LittleGuy ltsipUserB_at_there.comgttag65a35 Call-I
D 12345601_at_here.com CSeq 1 INVITE Subject
Happy Christmas Contact LittleGuy
ltsipUserB_at_there.comgt Content-Type
application/sdp Content-Length 134
INVITE sipUserB_at_there.com SIP/2.0 Via
SIP/2.0/UDP here.com5060 From BigGuy
ltsipUserA_at_here.comgt To LittleGuy
ltsipUserB_at_there.comgt Call-ID 12345600_at_here.com C
Seq 1 INVITE Subject Happy Christmas Contact
BigGuy ltsipUserA_at_here.comgt Content-Type
application/sdp Content-Length 147
Message Header Fields
v0 oUserB 2890844527 2890844527 IN IP4
there.com sSession SDP cIN IP4
110.111.112.113 t0 0 maudio 3456 RTP/AVP 0
artpmap0 PCMU/8000
v0 oUserA 2890844526 2890844526 IN IP4
here.com sSession SDP cIN IP4
100.101.102.103 t0 0 maudio 49172 RTP/AVP
0 artpmap0 PCMU/8000
Payload
receive RTP G.711-encoded audio at
100.101.102.10349172
32
SIP Registration
  • Bind a SIP address to an IP number
  • Registration sent to SIP registrar responsible
    for the domain
  • Sisalem_at_iptel.org -gt registrar iptel.org
  • Find registrar through DNS
  • Registration is needed to receive calls
  • Not necessarily needed for initiating calls

33
SIP Registrar
This registration example establishes presence
of user with address jiri_at_iptel.org and binds
this address to users current location
195.37.78.173.
Location Server
SIP Registrar (domain iptel.org)
34
Basic SIP Call-Flow (Proxy Mode)
Location Server
Proxy
sipjiri_at_195.37.78.173
Caller_at_sip.com
35
Proxy Server Functionality
  • Serve as rendezvous point at which callees are
    globally reachable
  • Perform routing function, i.e., determine to
    which SIP hop (UA/proxy/redirect) signaling
    should be relayed
  • Allow for call processing logic.
  • users signaling preferences
  • AAA
  • firewall control
  • etc.
  • Forking Several destinations may be tried for a
    request sequentially or in parallel.

36
Proxy Chaining
  • SIP proxies may be arbitrarily chained and add
    different values along the signaling path
  • least-cost gateway routing
  • load distribution
  • processing users preferences
  • etc.
  • In some case a local outbound proxy may be
    involved
  • provides locally important call processing logic
    (e.g., identifying nearest 911)
  • manages firewall
  • provides least-gateway-cost routing service
  • IP phones must know address of the proxymay be
    configured manually or with a configuration
    protocol (DHCP, TFTP, ... )
  • Servers have to avoid loops and recognize spirals

37
Proxy Chaining - an Example
Callers administrative domain
Administrative domain of a PSTN gateway operator
gw01.asia.pstn.com
pstn.com
asia.pstn.com
4
3
2
1
Callers outbound proxy accomplishes firewall
traversal.
Destinations first-hit proxy identifies a
proxy serving dialed area.
Proxy in the target area distributes load in a
gateway farm.
Note signaling (in red) may take a completely
different path from media (in blue).
38
Ability to Try Multiple Destinations Forking
  • A proxy may fork a request to multiple
    destinations either in parallel (reach me
    everywhere) or serially (forward no reply).
  • A proxy can cancel pending parallel searches
    after a successful response is received.
  • A proxy can iterate through redirection responses
    (recursive forking).
  • The first OK is taken.

39
Stateful versus Stateless Proxy Operational Mode
  • SIP Proxies may operate either in stateful or
    stateless mode which of the modes is used
    depends on implementation or configuration.
  • stateless mode
  • Usage good for heavy-load scenarios -- works
    well for example if they act as application-layer
    load distributors.
  • Behavior
  • proxies just receive messages, perform routing
    logic, send messages out and forget anything they
    knew
  • they should cache results of SIP routing logic as
    it is not able to distinguish between
    retransmissions and new requests -- and would
    result in new execution of SIP routing logic for
    every retransmission

40
Stateful versus Stateless Proxy Operational Mode
  • stateful mode
  • Usage good for implementing some services (e.g.,
    forward on no reply)
  • Behavior
  • proxies maintain state during entire transaction
    they remember outgoing requests as well as
    incoming requests that generated them until
    transaction is over
  • a forking proxy should be stateful
  • reduce retransmission time by acting on behalf of
    sender closer to destination

41
Stateful Proxy Refers to Transactions
SIP state forgotten as soon as transaction over
  • SIP proxies deliver a one-time rendezvous
    service (as opposed to state storage service).
  • Thus a stateful proxy just keeps state during a
    SIP rendezvous transaction and completely
    forgets it afterwards.
  • A SIP proxy is not aware of existing calls. In
    case of failure, existing calls are NOT affected!

INVITE a_at_a.com
Legend SIP signaling SIP state media
42
Tell Other Parties Where You Are Contact Header
Field
  • In general, it indicates where users may be
    reached for subsequent requests
  • Minimize proxys involvement in transactions
    once all parties know each others contact
    address they can communicate directly and proxy
    server is no more needed
  • used for the next-try in 3xx redirection
    responses
  • may include multiple weighted addresses
  • if behind a firewall, the Contact header field
    carries public servers address
  • In REGISTER method
  • indicates current SIP address of requestor
  • if different from current registration, it is
    added to current registration list
  • if equal, contact parameters including updated
    and expiration timer updated
  • 2xx replies return a list of current
    registrations
  • Expires 0 removes an entry, if along with
    Contact all entries are removed
  • Note Multiple header fields with the same
    field-name may be present in a message if and
    only if the entire field-value for that header
    field is defined as a comma-separated list (i.e.,
    (values)).

43
SIP Operation in Redirect Mode
Location Server
Caller_at_sip.com
Proxy
Callee_at_home.com
44
SIP Server -- Proxy versus Redirection
  • A SIP server may either proxy or redirect a
    request
  • Which of the two method applies is an
    implementation or configuration issue. It may be
    statically configured or dynamically determined
    (CPL).
  • Redirection useful if a user moves or changes her
    provider (PSTN The number you have dialed is
    not available.) -- caller does not need to try
    the original server next time.
  • Redirection stateless.
  • Proxy useful if forking, AAA, firewall control
    needed. In general, proxying grants more control
    to the server.
  • Signaling using a proxy faster if RTT between
    call originator and destination domain is the
    major delay contributor.

45
Routing Basics
  • Requests could be sent directly to the contact
    address
  • Media addresses are exchanged in SDP
  • Replies follow the same path as the requests
  • Each proxy adds a VIA header indicating its
    address
  • Receiver gets a list in the form of
  • VIA proxy_1, proxy_2 .....proxy_n
  • Receiver sends the reply back to le last proxy in
    the via header (proxy_n) which forwards the reply
    to proxy_n-1
  • Proxies that want to see all future requests of a
    user add a RecordRoute header
  • Receiver get a list of RR proxy_1, proxy_2
    ..proxy_n
  • RR list is included in reply
  • Sender directs its future requests to proxy_1,
    which forwards it to proxy_2 ....

46
Summary of SIP Properties
  • Textual (HTTP-like) client-server protocol
  • Easy to debug, extend and process with textual
    operating systems
  • End-2-end
  • It puts most of intelligence into end-devices
    good for scalability and extensibility
  • Internet addressing using URIs
  • E.g., sipjiri_at_iptel.org
  • Non-SIP URIs possible to (e.g., they may be used
    to redirect a caller to webpage)
  • Address space unlimited and may be used to create
    services (sipsales_at_hotel.xy geo.position48.54_
    -123.84_120)
  • It delivers mobility User can register from one
    or more locations with IP connectivity
Write a Comment
User Comments (0)
About PowerShow.com