mirror of
https://github.com/openvswitch/ovs
synced 2025-09-05 08:45:23 +00:00
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>
This commit is contained in:
@@ -745,6 +745,9 @@ get_vport_type(const struct dpif_netlink_vport *vport)
|
||||
case OVS_VPORT_TYPE_IP6GRE:
|
||||
return "ip6gre";
|
||||
|
||||
case OVS_VPORT_TYPE_GTPU:
|
||||
return "gtpu";
|
||||
|
||||
case OVS_VPORT_TYPE_UNSPEC:
|
||||
case __OVS_VPORT_TYPE_MAX:
|
||||
break;
|
||||
@@ -778,6 +781,8 @@ netdev_to_ovs_vport_type(const char *type)
|
||||
return OVS_VPORT_TYPE_IP6GRE;
|
||||
} else if (!strcmp(type, "gre")) {
|
||||
return OVS_VPORT_TYPE_GRE;
|
||||
} else if (!strcmp(type, "gtpu")) {
|
||||
return OVS_VPORT_TYPE_GTPU;
|
||||
} else {
|
||||
return OVS_VPORT_TYPE_UNSPEC;
|
||||
}
|
||||
|
Reference in New Issue
Block a user