UDP Encapsulation in Linux
Tom Herbert · 2015
UDP encapsulation encompasses the techniques and protocols to encapsulate and decapsulate networking packets of various protocols inside UDP. UDP encapsulation has become prevalent in data centers, and in fact nearly all the solutions for network virtualization currently being proposed in IETF are based on UDP encapsulation. In this paper we present much of the recent work done by the Linux networking community to make UDP encapsulation a first class citizen. This cumulative work has resulted in greatly improved performance, robustness, and scalability. We begin by describing the basic support and model for UDP encapsulation. Next, we look at performance enhancements in the areas of load balancing, checksum offload, and segmentation offload. Finally, we examine two generic methods of UDP encapsulation: Foo-over-UDP and Generic UDP Encapsulation.