Hi,
The gre/vxlan tunneling network should create an udp socket in the
kernel.
When you add a gre/vxlan port, a gre/vlxan net_device struct will been
registered. UDP socket will been created when you open the port.
The gre/vxlan packets are processed in the udp_queue_rcv_skb kernel code -
net/ipv4/udp.c. This is an encapsulation socket so pass the skb to the socket's
udp_encap_rcv() hook. Otherwise, just fall through and pass this up the UDP
socket.
if (up->encap_type)
ret = (*up->encap_rcv)(sk, skb);
Then, packet processing flow depends on how you setup the flow entry.
Thanks,
nickcooper-zhangtonghao
_______________________________________________
discuss mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/discuss