mirror of
https://github.com/openvswitch/ovs
synced 2025-10-29 15:28:56 +00:00
tunneling: Add userspace tunnel support for Geneve.
This adds basic userspace dataplane support for the Geneve tunneling protocol. The rest of userspace only has the ability to handle Geneve without options and this follows that pattern for the time being. However, when the rest of userspace is updated it should be easy to extend the dataplane as well. Signed-off-by: Jesse Gross <jesse@nicira.com> Acked-by: Pravin B Shelar <pshelar@nicira.com>
This commit is contained in:
@@ -733,6 +733,25 @@ struct geneve_opt {
|
||||
uint8_t opt_data[];
|
||||
};
|
||||
|
||||
struct genevehdr {
|
||||
#ifdef WORDS_BIGENDIAN
|
||||
uint8_t ver:2;
|
||||
uint8_t opt_len:6;
|
||||
uint8_t oam:1;
|
||||
uint8_t critical:1;
|
||||
uint8_t rsvd1:6;
|
||||
#else
|
||||
uint8_t opt_len:6;
|
||||
uint8_t ver:2;
|
||||
uint8_t rsvd1:6;
|
||||
uint8_t critical:1;
|
||||
uint8_t oam:1;
|
||||
#endif
|
||||
ovs_be16 proto_type;
|
||||
ovs_16aligned_be32 vni;
|
||||
struct geneve_opt options[];
|
||||
};
|
||||
|
||||
/* GRE protocol header */
|
||||
struct gre_base_hdr {
|
||||
ovs_be16 flags;
|
||||
|
||||
Reference in New Issue
Block a user