Hi Joe.

see below...

On 30.01.2015 20:23, Joe Touch wrote:
Hi, Mirja,

On 1/30/2015 3:46 AM, Mirja Kühlewind wrote:
Hi Joe,

I reply to the TCP part in this mail... see below.

On 19.12.2014 00:39, Joe Touch wrote:
Some feedback below. Although I focus on some TCP and UDP specifics,
some observations apply to other transports as well.

Joe

-----

3.1.1
     TCP segments fit into IP packets, but those packets are not
     necessarily constrained to fit into a lower-layer frame.
     They can be source fragmented.
  >
Yes, but this is handled by IP and not by the transport. Therefore I
believe that does not need to be mention here...?

The problem is in the first sentence:

     TCP partitions a continuous stream of bytes into segments, sized to
     fit in IP packets, constrained by the maximum size of lower layer
     frame.

The first part is true (TCP fits into IP), but the second is not (IP is
NOT constrained by the max size of the lower-layer frame). IP is
constrained only by the ability of IP (i.e., of L3 to reassemble at the
destination).

Okay, I've just removed the second part of the sentence to avoid confusion because it is actually not important in this doc. That's okay for you?


     PathMTU discovery is supported by TCP but may be inhibited
     by network conditions (ICMP blocking); PLMTUD is supposed
     to be supported as well.
  >
I added PLMTUD separately as well as the respective RFCs for both.
However, I'm not sure if we actually need to distinguish which mechanism
is used than rather just saying TCP supports path MTU discovery. (The
notation in the draft current is PathMTU discovery which references to a
specific mechanism but that be changes...).

"Path MTU discovery" is ambiguous; it can refer to any mechanism that
allows the path MTU to be known, or it can refer to the specific
mechanism by that name in RFC 1191.

If you mean the more general concept, it would be better to use a term
that is unambiguous in referring to both (e.g., discovery of the path
MTU). Once you tie the words together as "path MTU discovery", it could
be misinterpreted as meaning only RFC 1191.

However, IMO, in this doc it would be better to be more clear and
explicit by naming both mechanisms.

K. Done.


...
3.1.3
     TCP provides a byte-ordered reliable stream. How that
     is delivered - e.g., by segments - is irrelevant, if only
     because TCP can change those segment boundaries during
     operation (e.g., with path MTU updates).
  >
Yes but it is still something that TCP implements as a component.

TCP definitely does not. There is no required correlation between SEND
boundaries and segment boundaries.

Some TCP implementations do, but there is nothing to ensure that
boundaries controlled by the sending application are exposed to the
receiving application.

I don't think this doc should discuss how implementations go astray in
this way.

I think this is again a terminology problem. We agreed that a (transport protocol) component is something that a transport protocol implements. I don't think there are any TCP implementations that do not implement segmentation...? So it's a component.

A transport feature is something that you would reveal to the application. This is currently not the case and will probably also in future not be the case for segmentation. (However if you would want to reveal it, the functionality is already there you just need a different API...)

However, in this document we should still list all TCP components and then add a discussion which of these components should be revealed to the app and in which from. This discussion is not there yet, because I'd like to get the first step right for as much protocols as possible first.

Does this make sense to you?



...
     additionally, the ports ought to be discussed in more detail.
     ports in the SYN have a different meaning that ports in other
     segments. The SYN destination port indicates the receiving
`    service, which typically involves BOTH demuxing to a process
     within a host AND indicating the format of the stream. Ports
     there and in all other segments are only demultiplexing
     indicators.
  >
Added one sentence in section 3.1.1. and extended the connection setup
up point to

      "connection setup with feature negotiation and application-to-port
mapping"

Does that make sense to you?

The sentence does, but that doesn't sufficiently (IMO) address the
feedback I gave above.

TCP has two portions:
        - connection establishment
                feature negotiation
                service-to-port mapping
                connection identification

        - established connection data transfer
                which continues to use the connection identifier

At this point in the document it is not important for me anymore to have in mind with bit in the header is used for with kind of functionality. Therefore being able to identify a connection (or as we named it: 'port multiplexing') is one component while 'connection establishment' is another. As in your list 'connection identification' shows up in both bullets, I'd say it's sensible to list this as an own component. However, 'negotiation' and 'service-to-port mapping' are always bounded to the setup. Therefore it's not an own component. We already discussed if we need a finer granularity than components; Brian has been calling this an aspect... I'm still not convinced that declaring another confusion term will make our life easier...

So the only real different that see to what you propose above is that the currently list does not name 'data transfer' as a component. For me that's implicit a task of every transport protocol, so I would name it explicitly.

I'd like to leave it as it is for now and will be waiting for further options on this.

Mirja





Joe

_______________________________________________
Taps mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/taps


--
------------------------------------------
Dipl.-Ing. Mirja Kühlewind
Communication Systems Group
Institute TIK, ETH Zürich
Gloriastrasse 35, 8092 Zürich, Switzerland

Room ETZ G93
phone: +41 44 63 26932
email: [email protected]
------------------------------------------

_______________________________________________
Taps mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/taps

Reply via email to