Re: [rtcweb] SDP Offer/Answer draft-jennings-rtcweb-signaling - Scope

2011/10/18 Christer Holmberg <>:
>>> - Section 5.1 says: "ROAP messages are typically carried
>>> over a **reliable transport** (likely HTTP via XMLHttpRequest
>>> or WebSockets),..."
>> Yes, that is because JavaScript code running in a browser can
>> only communicate via HTTP or WebSocket.
> Yes, but the JS app and browser don't communicate with each other using HTTP or WebSockets.

Of course, the signaling must go over a server.

>>> - Section 5.3.3 defines an "OK" message, which is used to cease **re-transmissions** of the ANSWER.
>> I expect that is a "guideline" for the signaling protocol implementor.
>> There is no need for such "OK" message to be received from
>> the peer or server. The own JS code could generate it when
>> appropriate and pass it to its RTCweb stack.
> Why? The browser is not going to re-transmit anything, is it?

That depends on the chosen signaling protocol. ROAP gives guidelines
to make a like-VoIP protocol and in VoIP networks retransmissions are
sometimes needed. So it's resposability of the JavaScript code to send
a retransmission when required.

>>> - In addition, there is text talking about **ROAP signaling
>>> messages** (and gateways translating between those and SIP messages).
>> That just means that, of course, ROAP must be carried within
>> some signaling protocol (obvious) so, in case of
>> interoperating with a SIP network a gateway is required
>> (unless you use SIP over WebSocket).
> Yes, so that means ROAP messages will be carried over some signaling protocol - meaning ROAP is not only a protocol between the JS app and browser.

Right, but ROAP does not define the protocol and the message exchange
on the wire. Just gives some requirements for it (requirements that
are common to any VoIP protocol).

> I just want to make sure everybody has the same understanding of the scope, because at least to me it is a little unclear.

IMHO it's clear by reading "Introduction" section:

The protocol specified here defines the state machines, semantic
behaviors, and messages that are exchanged between instances of the
state machines. However, it does not specify the actual on-the-wire
transport of these messages. Rather, it assumes that the
implementation of this protocol would occur within the browser itself,
and then browser APIs would allow the application's JavaScript to
request creation of messages and insert messages into the state
machine. The actual transfer of these messages would be the
responsibility of the web application, and would utilize protocols
such as HTTP and WebSockets.

But maybe it could be improved so there are no doubts about what ROAP


Iñaki Baz Castillo

Received on Tuesday, 18 October 2011 10:53:35 UTC