summaryrefslogtreecommitdiff
path: root/include/openvswitch/meta-flow.h
diff options
context:
space:
mode:
authorWilliam Tu <u9012063@gmail.com>2019-11-25 11:19:23 -0800
committerWilliam Tu <u9012063@gmail.com>2020-03-25 20:26:51 -0700
commit3c6d05a02e0fd2cde2f988a0e41a19f47c3d6947 (patch)
tree89708e0fa3d945542cc67740c97d5906a7cd0d25 /include/openvswitch/meta-flow.h
parentf598f46212d698f091408abd6ff6905a16980169 (diff)
downloadopenvswitch-3c6d05a02e0fd2cde2f988a0e41a19f47c3d6947.tar.gz
userspace: Add GTP-U support.
GTP, GPRS Tunneling Protocol, is a group of IP-based communications protocols used to carry general packet radio service (GPRS) within GSM, UMTS and LTE networks. GTP protocol has two parts: Signalling (GTP-Control, GTP-C) and User data (GTP-User, GTP-U). GTP-C is used for setting up GTP-U protocol, which is an IP-in-UDP tunneling protocol. Usually GTP is used in connecting between base station for radio, Serving Gateway (S-GW), and PDN Gateway (P-GW). This patch implements GTP-U protocol for userspace datapath, supporting only required header fields and G-PDU message type. See spec in: https://tools.ietf.org/html/draft-hmm-dmm-5g-uplane-analysis-00 Tested-at: https://travis-ci.org/github/williamtu/ovs-travis/builds/666518784 Signed-off-by: Feng Yang <yangfengee04@gmail.com> Co-authored-by: Feng Yang <yangfengee04@gmail.com> Signed-off-by: Yi Yang <yangyi01@inspur.com> Co-authored-by: Yi Yang <yangyi01@inspur.com> Signed-off-by: William Tu <u9012063@gmail.com> Acked-by: Ben Pfaff <blp@ovn.org>
Diffstat (limited to 'include/openvswitch/meta-flow.h')
-rw-r--r--include/openvswitch/meta-flow.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/include/openvswitch/meta-flow.h b/include/openvswitch/meta-flow.h
index 1f81d830e..d529a9f0d 100644
--- a/include/openvswitch/meta-flow.h
+++ b/include/openvswitch/meta-flow.h
@@ -506,6 +506,34 @@ enum OVS_PACKED_ENUM mf_field_id {
*/
MFF_TUN_ERSPAN_HWID,
+ /* "tun_gtpu_flags".
+ *
+ * GTP-U tunnel flags.
+ *
+ * Type: u8.
+ * Maskable: bitwise.
+ * Formatting: hexadecimal.
+ * Prerequisites: none.
+ * Access: read-only.
+ * NXM: none.
+ * OXM: NXOXM_ET_GTPU_FLAGS(15) since v2.13.
+ */
+ MFF_TUN_GTPU_FLAGS,
+
+ /* "tun_gtpu_msgtype".
+ *
+ * GTP-U tunnel message type.
+ *
+ * Type: u8.
+ * Maskable: bitwise.
+ * Formatting: decimal.
+ * Prerequisites: none.
+ * Access: read-only.
+ * NXM: none.
+ * OXM: NXOXM_ET_GTPU_MSGTYPE(16) since v2.13.
+ */
+ MFF_TUN_GTPU_MSGTYPE,
+
#if TUN_METADATA_NUM_OPTS == 64
/* "tun_metadata<N>".
*