SIP vs. IMS: What's the difference?


SIP is a just one protocol.  IMS is a whole architecture that describes how a set of components (PCCF, HSS, etc.) can be assembled together to provide scalable services.  IMS specifies a set of interfaces (protocols) between these components.  Only two of these interfaces (Gm & Mw) are based on SIP.  The following points apply to these two interfaces.

IMS/SIP provides Quality of Service for voice and video calls.  This is important to the carriers because they want to control the QoS to their subscribers: it should be just right, not too good and not too bad. The QoS parameters in IMS/SDP are interpreted by the carrier and are used to select appropriate bearer (wireless channel) qualities (like bandwidth, error rates, latency, etc.). 

Several 3GPP sponsored SIP extensions that were authored by 3GPP and shoved through the IETF to result in RFCs.  These extensions are required by carriers to provide reasonable commercial service. Examples:

  • SigComp: header compression to reduce signaling overhead

  • Private Headers, to convey additional information between IMS components.

  • Service-route, to control the route of SIP requests

IMS adds Presence services, using the new SUBSCRIBE & NOTIFY methods.

IMS adds Privacy & Encryption support for SIP headers.

IMS uses SIP to support applications, like getting decent YouTube on your phone. The intent is to provide a QoS for application communications.  

IMS is a standard within the telecommunications world.  Carriers who build service networks buy components from telecommunications vendors.  When they purchase components, carriers usually issue RFPs that specify parts of the IMS standards as requirements.  Vendors build products that comply with the requirements.

For competitive reasons, one carrier’s implementation of IMS may not be identical to that of another.  They may interoperate, but only to the extent that a carrier feels is necessary for their own success.

In conclusion, IMS is a ‘Carrier Supported Internal Standard”.  SIP is an “Open Standard” and is too open to be well supported by carriers.  On a carrier provided mobile handset, the native phone service would use IMS for the reasons listed above.  A Third Party provided voice application may use SIP or something else.  It is unlikely that a carrier would willingly open up full access to its IMS services to arbitrary Third Party developed applications.  If I were the carrier, unless there was an FCC requirement, I wouldn’t either.  The risks are just not worth it.