Pages

RCS Overview

When I heard RCS (Rich Communication Suite) first time, I thought "what would be differences between IMS and RCS". And also I was wondering what/who drives this RCS move on mobile handsets. It turned out cellular operators would promote RCS services on top of IMS rather than keeping conventional CS call or just letting other fancy massager app prevalent all around world. It had been launched as branded "joyn" in some European operators and nowadays it would seem implementing it embedded on devices, which allows subscribers to use it as default.

Services in RCS


Under this services, everything sounds like possible over packet services. If you have used Skype (or Lync), you might understand how it works in user experience perspective, Microsoft Skype uses its own proprietary protocol though. You can send files or chat with others while joining conference over the service, which would require several different applications in order to do the same things. 

Like IMS, any specifications regarding RCS are not found in a certain place but spread several places following. 
  • RCC11_RCS5_1_endorsement_of_oma_cpm_2_0_conversation_functions_v2.0
  • OMA document eg. OMA-TS-CPM_Conversation_Function-V2_0-20150113-C
  • And lots of associated RFC specifications eg. RFC3428 or RFC4975
Whether you have ever used Skype (or Lync) on your devices, reading GSMA document (RCC11_RCS5_1_endorsement_of_oma_cpm_2_0_conversation_functions_v2.0) would help you understand how each service works. According to this, there are bunch of services available under RCS. 
  • Standalone messaging
  • 1-to-1 Chat
  • Group Chat
  • File Transfer
  • Content sharing
  • Social Presence Information
  • IP Voice Call
  • IP Video Call
  • Geo-location services
Since most of recent LTE cellular devices have alternative call services like CSFB or VoLTE with SRVCC, IP Voice/Video Call under RCS might be considered lastly. Standalone messaging, Chat, and File Transfer would be major target services while keeping call services with VoLTE or CSFB. 4 different RCS Device Modes are defined in 2.2.1 RCS Device Modes in RCC07_RCS5_1_advanced_communications_specification_v3.0; RCS-VoLTE, RCS-VoHSPA, RCS-AA (Access Agnostic), and RCS-CS mode. A single device works as several different modes depending on network availability. Here is an example came from Table 2 in that specification.



This device above would use VoLTE for calling under LTE/HSPA coverage, use CS service call under 3G/2G, and RCS IP call anywhere else. You may notice that RCS services are compromised with other calling services. 

OMA CPM or OMA SIMPLE IM


Now what type of protocol would be used in RCS? There are so many types of message protocol defined. You may see how many in there with https://en.wikipedia.org/wiki/Comparison_of_instant_messaging_protocols. RCS uses SIP based session protocols with Media Plane handling. Unfortunately there are many protocols for Messaging but all effort to make it unified has failed. As long as you studies this, I have been struggling with terms like session vs. Session, or message vs. Message. I wonder why these terms are defined like too common names but it would be figured out while reading specifications. These terms made me so confused and hope you not do.
  • Short Message Service vs. Instant Messaging
  • message vs. Standalone Message
  • message vs Instant Messaging
  • message vs. SIP MESSAGE
  • (SIP) session vs. (CPM or IM) Session
  • CPM vs. CPIM
RCS protocol is defined by OMA (Open Mobile Alliance), which are OMA CPM (Converged IP Messaging underlying RCS) and OMA SIMPLE IM (SIP for Instant Messaging and Presence Leveraging Extensions Instant Messaging). SIMPLE IM seems like defined as evolved one with SIP session from conventional Instant Message protocol and it would handle non-real time media with MSRP (Message Session Replay Protocol) session. "IM Conference" would be available and it would be conference over Instant Messaging. CPM would put real time media like RTP/RTCP as well as MSRP so it would allow to use messaging or file transferring while real audio/video conferencing.   

Before going to what RCS is a bit more, what would be exactly different between RCS and other IMS services then? Well.. RCS seems narrow services leveraged by cellular providers and comes with RCC11_RCS5_1_endorsement_of_oma_cpm_2_0_conversation_functions_v2.0 specification. Before RCS came up on us, those CPM and SIMPLE IM are defined by OMA-TS-CPM_Conversation_Function-V2_0-20150113-C under RCS and OMA-TS-SIMPLE_IM-V2_0-20150310-A specifications. Here is what I understood along with reading those specifications below. Since RCS 5.1 is compatible with OMA CPM Only according to RCC11_RCS5_1_endorsement_of_oma_cpm_2_0_conversation_functions_v2.0, it describes what differences are between CPM and RCS 5.1 slightly.



OMA CPM (Converged IP Messaging underlying RCS) defines 3 different types of services in terms of protocol perspective with OMA-TS-CPM_Conversation_Function-V2_0-20150113-C under RCS services.
  • CPM Standalone Message
  • CPM Session
  • CPM File Transfer
Of course there are bunch of detailed subsets and different usage according to various conditions under each service, but these are major services we would have to look after.
Pager Mode CPM Standalone Message would deliver contents wrapped CPIM (Common Presence and Instant Messaging) message along with SIP MESSAGE request and would have limitation with maximum 1300 bytes, which is big differentiation from what Large Message Mode would do. Large Message Mode would handle Media Plane with MSRP (Message Session Relay Protocol) session after SIP session established. ICSI in CPM Feature Tag in the table below stands for IMS Communication Service Identifier by the way.



OMA SIMPLE IM (SIP for Instant Messaging and Presence Leveraging Extensions) also defines various types of services along with OMA-TS-SIMPLE_IM-V2_0-20150310-A. Here are major services.
  • IM Pager Mode and IM Large Mode Messaging
  • IM Session Mode Messaging
  • File Transfer
And here is a table how to differentiate each service briefly.
IM Pager Mode would handle contents in MIME (Multipurpose Internet Mail Extensions) within SDP (Session Description Protocol) body along with SIP MESSAGE request while Large Message Mode would deliver one-time MSRP session for handling Media Plane under SIP session.



While reading both specifications OMA-TS-CPM_Conversation_Function-V2_0-20150113-C and OMA-TS-SIMPLE_IM-V2_0-20150310-A, I felt SIMPLE IM specs seem like evolved from SIP and might be used for both IMS and RCS and CPM specs seem like developed for RCS dedicated in my opinion.



# References

  • RCC11_RCS5_1_endorsement_of_oma_cpm_2_0_conversation_functions_v2.0
  • RCC07_RCS5_1_advanced_communications_specification_v3.0
  • OMA-TS-CPM_Conversation_Function-V2_0-20150113-C
  • OMA-TS-SIMPLE_IM-V2_0-20150310-A