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
discuss@openvswitch.org
http://openvswitch.org/mailman/listinfo/discuss

Reply via email to