Hi Brian,

Thanks for your review! Reply inline.

------------------------------------------

Comment:
--------

> In case there are W3C people reading this review, let me clarify that Gen-ART 
> reviews are by generalists 
> who are often encountering a topic for the first time. I haven't classified 
> the issues into "major" and "minor" 
> but some of them really do need attention before the document advances. There 
> are also some nits noted at the end.

Thanks for the clarification :)

------------------------------------------

Issues:
-------

>>   The following considerations are applicable to all use cases:
>>
>>   o  Clients can be on IPv4-only
>>
>>   o  Clients can be on IPv6-only
>>
>>   o  Clients can be on dual-stack
>
> It isn't clear whether this is intended to include the case where an 
> IPv4-only client communicates with an IPv6-only node (or vice versa).

IP version interworking (in case one client is IPv4-only and the other is 
IPv6-only) is outside the scope.

> It also isn't clear about cases in which a mobile client's connectivity 
> changes dynamically during a session (e.g. from IPv4 to IPv6). This is partly 
> clarified later by F17, but only partly.

That is also outside the scope.


>>   o  Clients can be on networks with a NAT using any type of Mapping
>>      and Filtering behaviors (as described in RFC4787).
>
> That document is scoped for UDP only. Is that sufficient? As I understand the 
> RTCWEB transport drafts, it is aiming at connection-oriented transport.
> (How many NATs support SCTP, for example?)

We are mainly referring to the different NAT behaviors, to the transport 
protocols.


------------------------------------------


>> 3.2.  Common requirements
>>
>>   The requirements retrived from the Simple Video Communication Service
>>   use-case (Section 3.3.1) by default apply to all other use-cases, and
>>   are considred common.  For each individual use-case, only the
>>   additional requirements are listed.
>
> In fact you duplicate the additional requirements in each use case where they 
> occur. That seems like overkill. 

I was asked to do it during WG review.

>Also there's at least one mix-up as a result, noted below.


------------------------------------------


>> 3.3.1.2.  Common Requirements
>>...
>>  F3      Transmitted streams and data must be rate
>>          controlled (meaning that the browser must, regardless
>>          of application behavior, reduce send rate when
>>          there is congestion).
>
> I think that needs to be broken into two more atomic requirements.
> Something like
>
>   F3.1    There must be a mechanism by which the transport layer
>           can signal the occurrence of congestion to the browser.
>
>    F3.2    Transmitted streams and data must be rate
>          controlled (meaning that the browser must, regardless
>           of application behavior, reduce send rate while
>           there is congestion).
>
> The change from "when" to "while" is intentional, since the browser should 
> allow the rate to increase when there is no congestion.

I think your suggestion goes too much into implementation details. 

However, I agree to change "when" to "while".


------------------------------------------

>>   F11     It must be possible to protect streams and data
>>           from wiretapping [RFC2804].
>
> I don't see the relevance of the reference (of which I am a co-author), which 
> mainly states that the IETF won't consider requirements *for* wiretapping.
> I'm sure you can find a reference that says encryption is a Good Thing.

We reference RFC 2804 only for the wiretapping definition.


------------------------------------------

>>   F14     The browser must make it possible to set up a
>>           call between two parties without one party
>>           learning the other party's host IP address.
>
> It is not clear how to interpret that. I assume it's supposed to be a 
> restatement of the earlier comment:

I agree that the text is a little unclear. It is not meant to say that a 
browser always must be able to hide its IP address, but that it should be 
possible to set up a call even if the browser does not know the other party's 
IP address.

I suggest to modify the text to:

        "F14     The browser must make it possible to set up a
                        call between two parties even if one party
                        does not know the other party's host IP address."

------------------------------------------


>>   The application gives the users the opportunity to stop it from
>>   exposing the host IP address to the application of the other user.
>
> But -- assuming the implementation model is peer-to-peer communication 
> between the two hosts, rather than 
> client1-server-client2 communication -- I'm afraid I don't see how F14 can be 
> guaranteed, since the peers must be 
> aware of each others' IP address. Even if the browser and app hide the remote 
> address, a little Wiresharking will 
> reveal it immediately.
> There's not much point stating a requirement that cannot be met.

------------------------------------------


> I realised at this point in the document that you need to be very explicit 
> about whether communication is indeed 
> intended to be peer-to-peer or via the server. And assuming it is meant to be 
> peer-to-peer, what is the model for 
> the rendez-vous between the peers? What requirements do you need to solve the 
> resulting referral problem?
> (http://tools.ietf.org/html/draft-carpenter-referral-ps-02)
>
> This topic belongs in the Common Requirements.

The rendez-vous is outside the scope of the document. RTCWEB will not say 
anything about the external signaling protocol.

------------------------------------------

>> 3.3.7.1.  Description
>> ...
>>   The user in the previous use case that starts a trip is behind a
>>   common residential router that supports prioritization of traffic.
>
> Please talk about differentiated services (RFC 2474 etc.). IP doesn't have 
> simple priority. That's exactly why the DART WG was just formed.

That's a good point. I suggest:

        "The user in the previous use case that starts a trip is behind a
        common residential router that supports differentiated services."


------------------------------------------

>> 3.3.7.2.  Additional Requirements
>>
>>   ----------------------------------------------------------------
>>   REQ-ID      DESCRIPTION
>>   ----------------------------------------------------------------
>>   F17     The communication session must survive across a
>>           change of the network interface used by the
>>           session
>>   ----------------------------------------------------------------
>>   F22     The browser must be able to receive streams and
>>           data from multiple peers concurrently.
>>   ----------------------------------------------------------------
>
> This seems completely messed up. The reader expects requirements for QoS at 
> this point. Isn't this "F22" really F24?

It shall be F22, but the requirement text needs to be corrected. The correct 
F22 text is:

        "F22     The browser should be able to take advantage
                        of available capabilities (supplied by network
                        nodes) to prioritize voice, video and data
                        appropriately."


------------------------------------------


>> 3.3.10.2.  Additional Requirements
>>
>>   ----------------------------------------------------------------
>>   REQ-ID      DESCRIPTION
>>   ----------------------------------------------------------------
>>   F22     The browser should be able to take advantage
>>           of available capabilities (supplied by network
>>           nodes) to prioritize voice, video and data
>>           appropriately.
>
> Again, please cite differentiated services rather than prioritization.

Ok.

> Also, you now have two different F22s. This one seems to fit 3.3.7.2 better.

Correct. This is the right F22 requirement.

>Below, you also have two F25s. And other duplicates. Wasn't the idea just to 
>add *new* requirements when they arose?

As indicated earlier, the WG decision was to explicitly add the additional 
requirements in each use-case where they occur.

>As F22 shows, the duplication is error-prone.

We'll double check.


------------------------------------------


>> 6.  Security Considerations
>
>I am really surprised that there isn't a sub-section on Privacy 
>Considerations. RFC 6973 describes the various types of threat and they seem 
>specially relevant here.

The WG decided to cover privacy considerations in a separate draft 
(rtcweb-security). We could add a reference to that draft in the use-cases 
draft.


------------------------------------------

Nits:
-----

>> 2.  Conventions
>>
>>   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
>>   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
>>   document are to be interpreted as described in BCP 14, RFC 2119
>>   [RFC2119].
>
> The change log says you removed this. Also there is no change log since 
> version 10.

We will remove the statement saying that the "Conventions" are removed.


> RFC 4787 is mentioned but not listed as an Informative Reference.

We will add 4784 to the Informative References.


>>    A17, A23
>>    A13, A14, A15, A16
>
> What are these lines that occur in a few places?

Those are API requirements (see Annex A) for each use-case.

However, the WG decided not to copy/paste the API requirement descriptions, but 
simply to list the requirements. I suggest to add "API requirements:" in front 
of the list associated with each use-case.


> RFC 2804 and RFC 5479 are Informational documents so cannot reasonably be 
> Normative References.

We will mote those to the Informative Reference section.


Thanks!

Regards,

Christer


_______________________________________________
Gen-art mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/gen-art

Reply via email to