Message Session Relay Protocol (MSRP) is a protocol for exchanging a series of related instant messages across an IP network in the context of a session. The protocol can also be used to transfer large files or images or sharing remote desktops or whiteboards.
A session starts with a Session Initiation Protocol (SIP) INVITE transaction, which carries a Session Description Protocol (SDP) offer/answer exchange to establish the session. An MSRP session is terminated with a SIP BYE request.
The MSRP protocol is defined in RFC 4975. An example of a client that uses MSRP is Blink, a real-time communications client that runs on Windows, Linux and OS X. MSRP is also implemented in popular libraries, including Java's MSRP Peer library and Python MSRPlib.