1 / 30

Third Party Call Control(3pcc)

Third Party Call Control. Third Party Call Control(3pcc). Alexandre Ling Lee COMS W4995 VoIP Security Instruction : Prof. Schulzrinne. Third Party Call Control. Outline. 3pcc intro 3pcc call establishment Error handling Early media SDP precondition Case study.

jtillison
Download Presentation

Third Party Call Control(3pcc)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Third Party Call Control Third Party Call Control(3pcc) Alexandre Ling Lee COMS W4995 VoIP Security Instruction : Prof. Schulzrinne

  2. Third Party Call Control Outline • 3pcc intro • 3pcc call establishment • Error handling • Early media • SDP precondition • Case study

  3. Third Party Call Control 3pcc Intro • 3pcc • the ability of one entity to create a call in which communication is actually between other parties. • use the mechanisms specified within the Session Initiation Protocol (SIP). • Examples of use: • Operator services • conferencing

  4. Third Party Call Control 3pcc Intro-Controller • A controller • a SIP User Agent that wishes to create a Session between two other user agents. • issue either its own or other’s party “forged” From address. • does not carry the media stream sent over the call channels. • often called back-2-back user agent

  5. Third Party Call Control Logical view of 3PCC for a two-party session http://www.lucent.com/livelink/0900940380044981_White_paper.pdf

  6. Third Party Call Control 3pcc call establishment • Flow I~ Flow IV • Establishment of this session is created by a third party, referred to as the controller. • benefits and drawbacks to each of these flows

  7. B A Third Party Call Control Flow I – Simply and Elegant Flow INVITE no SDP 1 <ring> 2 200 offer1 <answer> INVITE offer1 3 <ring> 200 OK answer1 4 <answer> ACK 5 ACK answer1 6 7 RTP Media Timeline

  8. Third Party Call Control Flow I – Simply and Elegant Flow • Pros: • simple • no manipulation of the SDP by the controller • works for any media types supported by both endpoints. • Cons: • timeout problem

  9. B A Third Party Call Control Flow II-Alternative flow with bh sdp bh= Black hole connection address=0.0.0.0 1 INVITE bh sdp1 <ring> 2 200 sdp2 <answer> 3 INVITE sdp2 <ring> ACK 4 200 OK sdp3 <answer> 5 6 ACK INVITE sdp3 7 200 OK sdp2 8 ACK 9 10 RTP Media Timeline

  10. Third Party Call Control Flow II-Alternative flow with bh sdp • Pros: • all final responses are immediately ACKed. • no timeout and message inefficiency problems of flow 1. • Cons: • the controller need know the media types to be used for the call • bh sdp sent and bh sdp response • Infinite loop of re-INVITEs

  11. B A Third Party Call Control Flow III 1 INVITE no SDP <ring> 2 200 offer1 <answer> ACKanswer1(bh) 3 4 INVITE no SDP <ring> 200 OK offer2 5 <answer> INVITEoffer2’ 6 200answer2’ 7 8 ACK answer2 ACK 9 10 RTP Media Timeline

  12. Third Party Call Control Flow III • Pros: • operate without any spurious retransmissions or timeouts. • the controller need not guess the media that will be used by the participants. • Cons: • Controller need to perform SDP manipulations. • Reorder and trim SDP X is done by controller, so that the media lines match up with those in some other SDP, Y. • The controller need to detect and terminate the call with different codecs and media line. • the flow is far more complicated than Flow I

  13. B A Third Party Call Control Flow IV - a variation on Flow III 1 INVITE offer1 no media 2 200 answer1 no media 3 ACK 4 INVITE no SDP <ring> 200 OK offer2 5 <answer> INVITE offer2’ 6 <ring> 200 answer2’ 7 <answer> 8 ACK answer2 9 ACK 10 RTP Media Timeline

  14. Third Party Call Control Flow IV - a variation on Flow III • Pros: • the media manipulations by controller is more simply. • Cons: • user A will be alerted without any media having been established yet. • If there is no media in common, • user annoyance and possibly resulting in billing events.

  15. Third Party Call Control Recommendation • FlowI • the simplest and the most efficient flow • User B is actually an automata that will answer the call immediately. • media servers, conferencing servers, and messaging servers • Flow II • SHOULD NOT be used

  16. Third Party Call Control Recommendation • Flow III • MAY be used instead of FlowIV, but it provides no additional benefits over Flow IV. • Flow IV • For calls to unknown entities, or to entities known to represent people, it is RECOMMENDED

  17. Third Party Call Control Error handling • Condition1: • one call is established to A, and B would fail。 • User B is busy • no media in common • the request time out • Solution: • the controller send a BYE to A. • Reason header--carries the status code from the error response.

  18. B A Third Party Call Control Error handling • Condition2: 180: Ringing 491: Request pending 1 INVITE offer1 no media <ring> 200 answer1 no media 2 <ring> ACK 3 4 INVITE no SDP INVITE offer2 6 180 5 491 7 ACK 8 Timeline

  19. Third Party Call Control Continued Processing • Central point of signaling between users • Help to create a new BYE to finish the session • Forward the re-INVITE receive from one participants

  20. C B A Third Party Call Control 1 BYE 2 200 OK 3 INV no media 4 200 no media 5 ACK 6 INV no SDP 7 200 offer3 8 INV offer3’ 9 200 answer3’ 10 ACK 11 ACK answer3 12 RTP Media Timeline

  21. Third Party Call Control Third Party Call Control and -Early Media -SDP Preconditions

  22. Third Party Call Control Early Media • The condition of where the session is established. • Before the call is setup, the msg(tones or anouncements) that about this call

  23. Third Party Call Control SDP Preconditions • SIP extension • Signaling, resource reservation • Precondition about the users is needed by the controller • Controller can cut the session if it is necessary(no overlapping codec or media) • There may be another possible the precondition is needed by the participant

  24. B A Third Party Call Control 183 Session in Progress 1 INVITE offer1 no media 2 183 answer1 no media PRACK 3 200 OK 4 INVITE no SDP 5 183 offer2 Des=sendrecv Conf=recv Cur=none 6 7 UPDATE offer2’ Des=sendrecv Conf=recv Cur=none 200 UPDATE answer2’ Des=sendrecv Conf=recv Cur=none 8 PRACK answer2 Des=sendrecv Conf=recv Cur=none 9 10 200 PRACK reservation 11 Timeline

  25. B A Third Party Call Control reservation 12 UPDATE offer3 Des=sendrecv Conf=recv Cur=recv 13 UPDATE offer3’ Des=sendrecv Conf=recv Cur=recv 14 15 200 UPDATE answer3’ Des=sendrecv Conf=recv Cur=send 200 UPDATE answer3 Des=sendrecv Conf=recv Cur=send 16 UPDATE offer4 Des=sendrecv Conf=recv Cur=sendrecv 17 UPDATE offer4’ Des=sendrecv Conf=recv Cur=sendrecv <ring> 18 200 UPDATE answer4’ Des=sendrecv Conf=recv Cur=sendrecv 19 <ring> Timeline

  26. B A Third Party Call Control 200 UPDATE answer4 Des=sendrecv Conf=recv Cur=sendrecv 20 180 INVITE 21 <answer> 22 180 INVITE 23 200 INVITE 24 ACK <answer> 25 200 INVITE 26 ACK Timeline

  27. Third Party Call Control Case Study Click-to-dial

  28. User’s Phone Third Party Call Control Click-to-dial 1 HTTP OK 2 HTTP 200 OK 3 INV offer1 no media 4 INV answer1 no media 5 ACK 6 INV no SDP 7 200 OK offer2 8 INV offer2’ 9 200 answer2 10 ACK answer2 11 ACK’ 12 RTP Media Timeline

  29. Third Party Call Control Recommendation • Offers and answers that contain a connection line with an address of 0.0.0.0. • Re-INVITE requests that change the port to which media should be sent o Re-INVITEs that change the connection address • Re-INVITEs that add a media stream • Re-INVITEs that remove a media stream (setting its port to zero) • Re-INVITEs that add a codec amongst the set in a media stream • SDP Connection address of zero o Initial INVITE requests with a connection address of zero • Initial INVITE requests with no SDP • Initial INVITE requests with SDP but no media lines • Re-INVITEs with no SDP

  30. Third Party Call Control Reference • J. Rosenberg, J. Peterson, H. Schulzrinne, G. Camarillo,” Best Current Practices for Third Party Call Control (3pcc) in the Session Initiation Protocol (SIP)”, RFC3725, Apr, 2004 • T. Chiang, V. Gurbani, J.Reid,”The Need for Third-Party Call Control”,Lucent Tech., 2002

More Related