WikiStart
Version 41 (Adrian Georgescu, 01/26/2008 08:21 am)
| 1 | 19 | Adrian Georgescu | |
|---|---|---|---|
| 2 | 19 | Adrian Georgescu | = MSRP Relay = |
| 3 | 1 | ||
| 4 | 22 | Ruud Klaver | [[Image(http://msrprelay.org/chrome/site/files/scenario-simple.png, align=right)]] |
| 5 | 21 | Adrian Georgescu | |
| 6 | 37 | Adrian Georgescu | This project implements an MSRP relay, which is an extension to the MSRP protocol. Its main role is to help NAT traversal of IM and file transfer media sessions between SIP User Agents located behind NAT. |
| 7 | 10 | Adrian Georgescu | |
| 8 | 37 | Adrian Georgescu | == Background == |
| 9 | 1 | ||
| 10 | 37 | Adrian Georgescu | A series of related instant messages between two or more parties can be viewed as part of a "message session", that is, a conversational exchange of messages with a definite beginning and end. This is in contrast to individual messages each sent independently. Messaging schemes that track only individual messages can be described as "page-mode" messaging, whereas messaging that is part of a "session" with a definite start and end is called "session-mode" messaging. |
| 11 | 1 | ||
| 12 | 37 | Adrian Georgescu | Page-mode messaging is enabled in SIP via the SIP MESSAGE method, as defined in [http://tools.ietf.org/html/rfc3428 RFC 3428]. Session-mode messaging has a number of benefits over page-mode messaging, however, such as explicit rendezvous, tighter integration with other media-types, direct client-to-client operation, and brokered privacy and security. |
| 13 | 37 | Adrian Georgescu | |
| 14 | 37 | Adrian Georgescu | Message Session Relay Protocol (MSRP) is a protocol for transmitting a series of related instant messages in the context of a session. Message sessions are treated like any other media stream when set up via a rendezvous or session creation protocol such as the Session Initiation Protocol (SIP). MSRP Sessions are defined in [http://tools.ietf.org/html/rfc4975 RFC 4975]. |
| 15 | 37 | Adrian Georgescu | |
| 16 | 37 | Adrian Georgescu | This project implements an MSRP relay ,which is an extension to the MSRP protocol. Its main role is to help NAT traversal of media sessions between endpoints located behind NAT. This extension is defined in [http://tools.ietf.org/html/rfc4976 RFC 4976]. |
| 17 | 37 | Adrian Georgescu | |
| 18 | 5 | Ruud Klaver | == Documentation == |
| 19 | 5 | Ruud Klaver | |
| 20 | 39 | Adrian Georgescu | * [wiki:MSRPRelayScenarios MSRP Relay scenarios] - This document describes several use case scenarios of how MSRP relay functionality may be deployed in the field |
| 21 | 39 | Adrian Georgescu | * [wiki:MSRPRelayDesign MSRP Relay design] - The internal logic of the MSRPRelay is described as a series of message flow diagrams |
| 22 | 41 | Adrian Georgescu | * [wiki:InstallationGuide Installation guide] - How to install the software |
| 23 | 40 | Adrian Georgescu | |
| 24 | 40 | Adrian Georgescu | |
| 25 | 29 | Adrian Georgescu | == Download == |
| 26 | 29 | Adrian Georgescu | |
| 27 | 29 | Adrian Georgescu | The software can be downloaded from: |
| 28 | 29 | Adrian Georgescu | |
| 29 | 30 | Adrian Georgescu | [http://download.ag-projects.com/MSRPRelay/ http://download.ag-projects.com/MSRPRelay/] |
| 30 | 9 | Adrian Georgescu | |
| 31 | 9 | Adrian Georgescu | == Credits == |
| 32 | 9 | Adrian Georgescu | |
| 33 | 34 | Adrian Georgescu | * Funding: [http://www.nlnet.nl NLNet foundation] |
| 34 | 38 | Adrian Georgescu | * Project management: Adrian Georgescu |
| 35 | 34 | Adrian Georgescu | * Author: Ruud Klaver |
| 36 | 35 | Adrian Georgescu | * Contributors: Dan Pascu's [http://cheeseshop.python.org/pypi/python-gnutls python-gnutls] |
| 37 | 36 | Adrian Georgescu | * Many thanks to the IETF community for advise and support |