Re: New draft :draft-ietf-dccp-serv-codes-01.txt

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



My immediate goal is to make sure I understand how RFC4340 should be read:

* If my understanding is correct, RFC4340 says exactly ONE application (we do not indicate which) can be associated with a specific SC of zero on a particular server port.

Yes.

* Which set of ports do you expect SC=0 to be valid for? All?

Welllllll --- I'm not sure what you mean by "valid for". I do not intend for any Port Number registration to explicitly list SC=0. But implementations are NOT expected to check Service Code associations against the Port Number registry. In that sense, SC=0 can be valid for any port, just as ANY valid Service Code is valid for any port. I hope this is clear.

The next rev will use this description of RFC4340.

However, at the moment, I can still see issues with multiple applications using SC=0. Is this indeed what we want: It would help me a lot, if you can propose a use-case where SC=0 is more useful than simply SC=?foo (with ?foo chosen by developer). The latter seems at least an attempt to assure both client and server are using what they this is the "?foo" service.

I don't know what you mean by "useful".

SC=0 allows Unix-like implementations to associate a valid Service Code with every socket, without changing the procedure used for opening sockets (i.e., without adding extra setsockopt calls or adding members to struct sockaddr). Linux for a time used SC=0 this way; it may still do. Linux could use a Private Use service code, such as SC=?LNX, to get the same effect; an explicit service code for "no information about the application" seems cleaner.

I am happy for the draft to say "SHOULD NOT use SC=0". "MUST" or "MUST NOT" doesn't make sense to me.

I do not think this draft should revise RFC4340.

5.1

=> I would cut this section. I disagree with it. In particular I do not think we should recommend a change in the way OSes allocate DCCP port numbers.

Could you say more?

I think that's really all I had to say. I see no reason to recommend a change in the way OSes allocate DCCP port numbers. I think changing this procedure from TCP/UDP/SCTP to DCCP,
 >
To me (no WG Chair hat - just asking questions to get the draft correct), it seems we still have a (short) time to reflect on whether we got this right - we're seeing the first real applications emerge, and the first implementations that are near complete.

especially when they all share a port numbers registry, asks for confusion, with no corresponding gain of usability except something theoretical/religious.

The overloading of a registry with two different approaches would concern me to. If we go forward with any of the new ideas, the use of a single common registry would be something that would need to be thought through.

OK. Well, I think the common registry has huge advantages. The arguments for a different allocation strategy do not convince me. I don't see what practical problem is solved by a different allocation strategy, especially when we have Service Codes to disambiguate multiple registrations on a port.

RTP has common headers, I believe.
 >
Indeed.

So a middlebox can DTRT with an RTPV service code; based on the service code the middlebox can parse the contents, to first order.
 >
That for me is what service codes fundamentally mean. If the headers fundamentally differ, so should the service code. If middleboxes can't use the service code to differentiate parsers, what good is it for?

It can parse as far as it is able to interpret (seeing the SDP would help) - unless for example, it is encrypted.

I am still thinking: I think there *IS* still value in encrypted content being assigned an appropriate midbox treatment (based on SDP and/or SC) and then possibly also checking if it conforms to the expected characteristics.

That would seem to suggest to me, that knowing traffic was being used for benchmarking would be better than using a private SC. Clearly one separate SC for each performance tool/technique would also be possible, although in this case, I wonder if there is anything "more" in benchmarking headers that it would be worthwhile to parse.

If you have several benchmarks in mind with incompatible headers, then add multiple registrations for them to this draft. Those registrations will act as guides for other developers. A catchall SC for "other undefined benchmarking programs", with a note about "Any particular benchmarking program that sends specifically formatted SHOULD allocate its own Service Code; this Service Code is intended for use by benchmarking programs where (1) the contents of any Data packet is meaningless, and (2) only the client generates data", would be OK.

E


[Index of Archives]     [Linux Kernel Development]     [Linux DCCP]     [IETF Annouce]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [DDR & Rambus]

  Powered by Linux