Press Release - SmartBridge: SIP forking?
SIP forking refers to the process of "forking" a single SIP call to multiple SIP endpoints. This is a very powerful feature of SIP. A single call can ring many endpoints at the same time. With SIP forking you can have your desk phone ring at the same time as your softphone or a SIP phone on your mobile. For example, you would use SIP forking to ring your deskphone and your Android SIP Phone at the same time, allowing you to take the call from either device easily. No forwarding rules would be necessary as both devices would ring. In the same manner SIP forking can be used in an office and allow the secretary to answer calls to the extension of his/her boss when he is away or unable to take the call. One of the most powerful features built into the core of the SIP protocol is called “forking.” Forkingallows any SIP proxy to send an inbound request – such as an INVITE request – to more than one destination. It can send these multiple requests either all at This feature allows the implementation of services such as “find me, follow me,” parallel ringing, delivery of instant messages to multiple devices, and several other interesting capabilities. When SIP forking occurs during session establishment, the INVITE messages involved in setting up the call actually travel all the way to the called party’s devices, and establish a protocol relationship directly between the calling device and the called The reason this was built into the core of the SIP protocol is that, unlike many other technologies used for real-time communication, SIP inherently supports the concept of having a single user potentially available via several devices simultaneously. Callers are generally interested in contacting a user, not a device – so, to support mapping from one user to several devices, we decided to inherently provide functionality for contacting several devices. While it is immensely useful, SIP forking has proven to be one of the most difficult challenges we face when developing SIP protocol extensions in general. SIP-I and SIP-T are no exception: forking causes problems for both signaling and for audio. The signaling problem arises from the fact that ISUP and BICC have no inherent protocol behavior that is analogous to SIP forking. Implementation of parallel ringing services in an ISUP network requires termination of the call at an application server, which re-initiates the call towards the various target devices. So, for example, if a parallel ringing call alerts three devices, there are four ISUP calls involved: one from the caller to the application server, and one from the application server to each of the three devices. There is no direct relationship, from an ISUP perspective, between the caller and the devices.
|
Enquiry Form |
|
|