On 10/8/19 2:48 AM, Martin Varghese wrote: > From: Martin <martin.vargh...@nokia.com> > > The Bareudp tunnel module provides a generic L3 encapsulation > tunnelling module for tunnelling different protocols like MPLS, > IP,NSH etc inside a UDP tunnel. > > Signed-off-by: Martin Varghese <martinvargheseno...@gmail.com> > --- > Documentation/networking/bareudp.txt | 23 + > drivers/net/Kconfig | 13 + > drivers/net/Makefile | 1 + > drivers/net/bareudp.c | 930 > +++++++++++++++++++++++++++++++++++ > include/net/bareudp.h | 19 + > include/uapi/linux/if_link.h | 12 + > 6 files changed, 998 insertions(+) > create mode 100644 Documentation/networking/bareudp.txt > create mode 100644 drivers/net/bareudp.c > create mode 100644 include/net/bareudp.h > > diff --git a/Documentation/networking/bareudp.txt > b/Documentation/networking/bareudp.txt > new file mode 100644 > index 0000000..d2530e2 > --- /dev/null > +++ b/Documentation/networking/bareudp.txt > @@ -0,0 +1,23 @@ > +Bare UDP Tunnelling Module Documentation > +======================================== > + > +There are various L3 encapsulation standards using UDP being discussed to > +leverage the UDP based load balancing capability of different networks. > +MPLSoUDP (https://tools.ietf.org/html/rfc7510)is one among them.
add space after ')'. > + > +The Bareudp tunnel module provides a generic L3 encapsulation tunnelling > +support for tunnelling different L3 protocols like MPLS, IP, NSH etc. inside > +a UDP tunnel. > + > +Usage > +------ > + > +1. Device creation & deletion > + > +a. ip link add dev bareudp0 type bareudp dstport 6635 ethertype 0x8847 > + > +This creates a bareudp tunnel device which tunnels L3 traffic with ethertype > +0x8847 (MPLS traffic).The destination port of the UDP header will be set to > 6635 add space after '.'. add ending '.'. > +The device will listen on UDP port 6635 to receive traffic. > + > +b. ip link delete bareudp0 > diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig > index 48e209e..a389fac 100644 > --- a/drivers/net/Kconfig > +++ b/drivers/net/Kconfig > @@ -215,6 +215,19 @@ config GENEVE > To compile this driver as a module, choose M here: the module > will be called geneve. > > +config BAREUDP > + tristate "Bare UDP Encapsulation" drop one space between UDP and Encapsulation. > + depends on INET && NET_UDP_TUNNEL > + depends on IPV6 || !IPV6 > + select NET_IP_TUNNEL > + select GRO_CELLS > + help > + This adds a bare udp tunnel module for tunnelling different s/udp/UDP/ > + kind of traffic like MPLS, IP, etc. inside a UDP tunnel. > + > + To compile this driver as a module, choose M here: the module > + will be called bareudp. > + > config GTP > tristate "GPRS Tunneling Protocol datapath (GTP-U)" > depends on INET -- ~Randy