[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1249847327-6792-9-git-send-email-gerrit@erg.abdn.ac.uk>
Date: Sun, 9 Aug 2009 21:48:45 +0200
From: Gerrit Renker <gerrit@....abdn.ac.uk>
To: dccp@...r.kernel.org
Cc: netdev@...r.kernel.org, Gerrit Renker <gerrit@....abdn.ac.uk>
Subject: dccp-test-tree [PATCH 8/10] ccid-2: Ack Vector ECN support
This adds Ack Vector support for registering ECN packets marked as
congestion-experienced (CE), and a FIXME to look after the Ack
Vector Nonce Sum (RFC 4340, 12.2 and RFC 3450, 3.).
Signed-off-by: Gerrit Renker <gerrit@....abdn.ac.uk>
---
net/dccp/ackvec.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
--- a/net/dccp/ackvec.c
+++ b/net/dccp/ackvec.c
@@ -250,6 +250,16 @@ void dccp_ackvec_input(struct dccp_ackvec *av, struct sk_buff *skb)
u64 seqno = DCCP_SKB_CB(skb)->dccpd_seq;
enum dccp_ackvec_states state = DCCPAV_RECEIVED;
+ if (DCCP_SKB_CB(skb)->dccpd_ecn == INET_ECN_CE)
+ state = DCCPAV_ECN_MARKED;
+ else if (DCCP_SKB_CB(skb)->dccpd_ecn == INET_ECN_ECT_1)
+ /*
+ * FIXME: As long as we get ECT(0), the nonce sum is 0 as per
+ * RFC 3540, sec. 3. Supporting ECT(1) requires more work, as
+ * e.g. older Ack Vector cells must then be summed over again.
+ */
+ DCCP_WARN("Ack Vector Nonce sum does not yet support ECT(1)\n");
+
if (dccp_ackvec_is_empty(av)) {
dccp_ackvec_add_new(av, 1, seqno, state);
av->av_tail_ackno = seqno;
--
1.6.0.rc2
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists