I’m writing today to announce the launch of libSigComp, an Open-Source SigComp Framework. This project is intended to develop a complete and compliant SigComp Framework to speed-up SigComp integration in Open-Source IMS projects.
As many operators have begun to commercially deploy IMS, the relevance of using SigComp to lower bandwidth usage will come quickly. In my own opinion I think that most operators (especially those using RCS) will question how to reduce SIP signaling (registration, billing, presence, messaging …) bandwidth usage (who will pay bits?).
These questions will especially concern using SIP (or all other text-based protocols) in wireless handsets as part of 2.5G and 3G cellular networks.
SigComp stands for Signaling Compression and has been defined in RFC 3320 by Internet Engineering Task Force (IETF) ROHC working group.
Many application protocols used for multimedia communications are text-based and engineered for bandwidth rich links. As a result the messages have not been optimized in terms of size. For example, typical IMS/SIP messages range from a few hundred bytes up to two thousand bytes or more. For this reason, SigComp is a mandatory part of 3GPP IMS.
SigComp could also be useful for RCS (Rich Communication Suite) networks because of the size of the SIP packets (more than three thousand bytes for presence publication). Using SigComp in IMS/RCS context will reduce the round-trip over slow radio links.
The goal of this project is to provide a SigComp framework which:
- Could be used as an external API or Framework
- Highly portable (Coded in C/C++ without any external dependencies)
- Easily configurable (memory usage, priorities in static dictionaries, stateful/stateless modes, dynamic/static/shared compression types …)
- Easy to integrate with any existing SIP/IMS stack, Proxy-CSCF, PoC client …
- Allow to easily plug your own compressor (DEFLATE –RFC 1951- will be the default)
- Robust
- Efficiently run on mobile handsets (small footprint)
- Use small memory (UDVM decompression)
- Run fast without high CPU usage
COMPLIANCE:
RFC 3320: Signaling Compression (SigComp)
RFC 3321: Signaling Compression (SigComp) - Extended Operations
RFC 4464: Signaling Compression (SigComp) Users' Guide
RFC 4465: Signaling Compression (SigComp) Torture Tests
RFC 4077: A Negative Acknowledgement Mechanism for Signaling Compression
RFC 3485: The Session Initiation Protocol (SIP) and Session Description Protocol
(SDP) Static Dictionary for Signaling Compression (SigComp)
RFC 5112: The Presence-Specific Static Dictionary for Signaling Compression (Sigcomp)
RFC 1951: DEFLATE Compressed Data Format Specification version
3GPP TR23.979 Annex C: Required SigComp performance
MORE INFORMATION:
- To have feedbacks or if you are interested for IOTs don’t hesitate to contact me at diopmamadou{at yahoo}dot fr.
- libSigComp homepage: http://code.google.com/p/libsigcomp/