I'm working on a Go implementation of the QUIC protocol (
https://github.com/lucas-clemente/quic-go). QUIC specifies how to use ECN 
(Explicit Congestion Notification) to detect and respond to congestion in 
the network (see 
https://tools.ietf.org/html/draft-ietf-quic-transport-29#section-13.4 for 
details on that).

As far as I can see, there's no way to read (and write) the ECN bits from 
the IP header, unless I use a raw socket, which would be a suboptimal 
solution for many reasons.
The closest I could get to extracting information from the IP header was by 
using *UDPConn.ReadFromUDP* and then using *golang.org/x/net/ipv4* to parse 
the *oob* bytes into an *ipv4.ControlMessage* (or equivalently for IPv6). 
This at least gives me access to the TTL field. It seems like this approach 
is insufficient to get access to the ECN bits though.

Can anyone help me with this?

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/3c96ecc4-e507-48d1-a912-9e3caf6ecd11o%40googlegroups.com.

Reply via email to