]> git.baikalelectronics.ru Git - kernel.git/commit
fou: Support for foo-over-udp RX path
authorTom Herbert <therbert@google.com>
Wed, 17 Sep 2014 19:25:56 +0000 (12:25 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 19 Sep 2014 21:15:31 +0000 (17:15 -0400)
commit3045cb8aee2af51682e9bb9578eb68508d3ccd24
treebd19f9ee79a5c2e8e899c6dfb25da38911515777
parentf1f8f16ebbbf0f3b7e4346e23ee0e5b7eefc062d
fou: Support for foo-over-udp RX path

This patch provides a receive path for foo-over-udp. This allows
direct encapsulation of IP protocols over UDP. The bound destination
port is used to map to an IP protocol, and the XFRM framework
(udp_encap_rcv) is used to receive encapsulated packets. Upon
reception, the encapsulation header is logically removed (pointer
to transport header is advanced) and the packet is reinjected into
the receive path with the IP protocol indicated by the mapping.

Netlink is used to configure FOU ports. The configuration information
includes the port number to bind to and the IP protocol corresponding
to that port.

This should support GRE/UDP
(http://tools.ietf.org/html/draft-yong-tsvwg-gre-in-udp-encap-02),
as will as the other IP tunneling protocols (IPIP, SIT).

Signed-off-by: Tom Herbert <therbert@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/uapi/linux/fou.h [new file with mode: 0644]
net/ipv4/Kconfig
net/ipv4/Makefile
net/ipv4/fou.c [new file with mode: 0644]