DCCP protocol discussions
 help / color / mirror / Atom feed
* RFD: Ack Vectors
@ 2007-07-30  8:34 Gerrit Renker
  2007-07-31 21:16 ` Ian McDonald
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Gerrit Renker @ 2007-07-30  8:34 UTC (permalink / raw)
  To: dccp

|          * the spec and the code allow to have different CCIDs for forward and return path;
|          * this is foremost a theoretical thing - it is like having e.g. TCP Reno for the data and
|            TCP Hybla for the Acks that come back;
|          * but the practical implementation causes no end of headaches:
|            - With regard to Ian's suggestion, Ack Vectors must be enabled if at least one CCID is CCID2.
|            - If CCID2 talks to CCID3 then CCID2 will want to have its Ack Vectors from the CCID3 peer.
|              However, there is no CCID3 code to support Ack Vectors at the moment (and in the spec this
|              is only implicit).
|            - If CCID3 talks to CCID2 then CCID3 will want its X_recv and loss rate from the CCID2 peer.
|              But how? CCID2 doesn't know these things.
The above is not correct, so please forget it. Furthermore, code which assumes that TX/RX CCID are always
the same is ugly and will sooner or later break, so it is also not an option. 

With regard to the Ack Vectors, my suggestion however is
 * to remove the sysctl - it is confusing;
 * to make the use of Ack Vectors dependent on the current RX CCID;
 * the TX CCID need not be considered for the Ack Vector allocation, since the `Send Ack Vector' 
   feature is server-priority (RFC 4340, 6.4) and thus negotiated by the side which has the RX CCID;
 * optional and for debugging: disabling of Ack Vectors in the Kconfig menu.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: RFD: Ack Vectors
  2007-07-30  8:34 RFD: Ack Vectors Gerrit Renker
@ 2007-07-31 21:16 ` Ian McDonald
  2007-08-01 16:18 ` Gerrit Renker
  2007-08-01 22:12 ` Ian McDonald
  2 siblings, 0 replies; 4+ messages in thread
From: Ian McDonald @ 2007-07-31 21:16 UTC (permalink / raw)
  To: dccp

On 7/30/07, Gerrit Renker <gerrit@erg.abdn.ac.uk> wrote:
> With regard to the Ack Vectors, my suggestion however is
>  * to remove the sysctl - it is confusing;

Agree in current form provided the next bullet point is carried out.

>  * to make the use of Ack Vectors dependent on the current RX CCID;

It should be on for CCID2, off for CCID3. It is required for CCID2
according to RFC4341. It is optional for CCID3 according to RFC4342.
However last time I checked with our CCID3 it breaks it. I haven't
checked recently though....

>  * the TX CCID need not be considered for the Ack Vector allocation, since the `Send Ack Vector'
>    feature is server-priority (RFC 4340, 6.4) and thus negotiated by the side which has the RX CCID;

OK.

>  * optional and for debugging: disabling of Ack Vectors in the Kconfig menu.
>
This implies it is on by default. I think it should be off by default
for CCID3. The information is not actually needed from an ack vector
and actually creates more traffic. It seems like
draft-kohler-dccp-ccid3-drops-01.txt is a replacement for ack vectors
in CCID3 if you need extra info...

Ian
-- 
Web1: http://wand.net.nz/~iam4/
Web2: http://www.jandi.co.nz
Blog: http://iansblog.jandi.co.nz

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: RFD: Ack Vectors
  2007-07-30  8:34 RFD: Ack Vectors Gerrit Renker
  2007-07-31 21:16 ` Ian McDonald
@ 2007-08-01 16:18 ` Gerrit Renker
  2007-08-01 22:12 ` Ian McDonald
  2 siblings, 0 replies; 4+ messages in thread
From: Gerrit Renker @ 2007-08-01 16:18 UTC (permalink / raw)
  To: dccp

Quoting Ian McDonald:
|  > With regard to the Ack Vectors, my suggestion however is
|  >  * to remove the sysctl - it is confusing;
|  
|  Agree in current form provided the next bullet point is carried out.
|  
|  >  * to make the use of Ack Vectors dependent on the current RX CCID;
|  
|  It should be on for CCID2, off for CCID3. It is required for CCID2
|  according to RFC4341. It is optional for CCID3 according to RFC4342.
|  However last time I checked with our CCID3 it breaks it. I haven't
|  checked recently though....
|  
|  >  * the TX CCID need not be considered for the Ack Vector allocation, since the `Send Ack Vector'
|  >    feature is server-priority (RFC 4340, 6.4) and thus negotiated by the side which has the RX CCID;
|  
|  OK.
Omission on my side - I have just checked and found out that the negotiation of the "Send ack vector
feature" is not yet implemented. It is not something which can be done with a hack, since the CCIDs
can also be negotiated, so that enabling Ack Vectors depends on the end result of negotiating the
CCID. 
I think at the moment we should add this as a ToDo. If I get some time I'll try to implement the
above, but it is more work than anticipated and so depends on available time.
 
|  >  * optional and for debugging: disabling of Ack Vectors in the Kconfig menu.
|  >
|  This implies it is on by default. I think it should be off by default
|  for CCID3. 
This is resolved, since the Kconfig implementation was quite cleverly done (not by me):
config IP_DCCP_CCID2
        tristate "CCID2 (TCP-Like) (EXPERIMENTAL)"
        depends on IP_DCCP
        def_tristate IP_DCCP
        select IP_DCCP_ACKVEC

=> When CCID2 is enabled, then support for Ack Vectors is automatically compiled in.
   (I would like to return in the discussion to the `Null CCID' issue and will send RFC).

As said, auto-disabling Ack Vectors depending on the CCID is a bit more complicated than
anticipated.


|  The information is not actually needed from an ack vector 
|  and actually creates more traffic. It seems like
|  draft-kohler-dccp-ccid3-drops-01.txt is a replacement for ack vectors
|  in CCID3 if you need extra info.
Never figured that one out - doesn't the Data Dropped option do the same thing? 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: RFD: Ack Vectors
  2007-07-30  8:34 RFD: Ack Vectors Gerrit Renker
  2007-07-31 21:16 ` Ian McDonald
  2007-08-01 16:18 ` Gerrit Renker
@ 2007-08-01 22:12 ` Ian McDonald
  2 siblings, 0 replies; 4+ messages in thread
From: Ian McDonald @ 2007-08-01 22:12 UTC (permalink / raw)
  To: dccp

On 8/2/07, Gerrit Renker <gerrit@erg.abdn.ac.uk> wrote:
> Omission on my side - I have just checked and found out that the negotiation of the "Send ack vector
> feature" is not yet implemented. It is not something which can be done with a hack, since the CCIDs
> can also be negotiated, so that enabling Ack Vectors depends on the end result of negotiating the
> CCID.
> I think at the moment we should add this as a ToDo. If I get some time I'll try to implement the
> above, but it is more work than anticipated and so depends on available time.
>

Well I think the discussion is useful as a future reference. There's
no hurry on any of this really.

> |  The information is not actually needed from an ack vector
> |  and actually creates more traffic. It seems like
> |  draft-kohler-dccp-ccid3-drops-01.txt is a replacement for ack vectors
> |  in CCID3 if you need extra info.
> Never figured that one out - doesn't the Data Dropped option do the same thing?
>
Data Dropped is more when receiver gets it but discards for some
reason as I read it.

Ian
-- 
Web1: http://wand.net.nz/~iam4/
Web2: http://www.jandi.co.nz
Blog: http://iansblog.jandi.co.nz

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2007-08-01 22:12 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-30  8:34 RFD: Ack Vectors Gerrit Renker
2007-07-31 21:16 ` Ian McDonald
2007-08-01 16:18 ` Gerrit Renker
2007-08-01 22:12 ` Ian McDonald

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox