1 / 5

Implementation of PRACK

Implementation of PRACK. Rohan Mahy rohan@ekabal.com. PRACK Implementation. RFC 3262 has been around since June 2002 Very few implementations outside of IMS and PacketCable IMS “lite” will remove PRACK from spec Complexity cited as main reason not used

pbarre
Download Presentation

Implementation of PRACK

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. Implementation of PRACK Rohan Mahyrohan@ekabal.com

  2. PRACK Implementation • RFC 3262 has been around since June 2002 • Very few implementations outside of IMS and PacketCable • IMS “lite” will remove PRACK from spec • Complexity cited as main reason not used • Have only begun to shake out implementation bugs at SIPit • Well behind other specs of similar age

  3. Why is it so hard/complex? • Several places where UA needs to queue/delay sending messages to allow state machine to synchronize: • can’t send subsequent 18x until first PRACK received • can’t send 200 to INVITE until answer received (could be in PRACK). • UAS needs retransmit queue of 18x responses • Initial RSeq can start from an arbitrary value • Adds 3 new offer/answer combos: • INVITE/18x • 18x/PRACK • PRACK/200 • Fundamental Problem: an independent transaction (PRACK/200) influences progress of another transaction. • Resulting state machine is “non-obvious”

  4. What do we do? • Make minor update to PRACK spec? • Write replacement for PRACK spec? • Live without? • Deprecate UDP? ;-) • Other suggestions?

More Related