NDN-DPDK
High-Speed Named Data Networking Forwarder
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
gtpip.h
Go to the documentation of this file.
1 #ifndef NDNDPDK_ETHFACE_GTPIP_H
2 #define NDNDPDK_ETHFACE_GTPIP_H
3 
6 #include "../dpdk/hashtable.h"
7 #include "../dpdk/mbuf.h"
8 #include "../iface/faceid.h"
9 #include <rte_ether.h>
10 
12 typedef struct EthGtpip {
19  uint8_t n6Mac[2 * RTE_ETHER_ADDR_LEN];
20 
29  struct rte_hash* ipv4;
31 
42 __attribute__((nonnull)) uint64_t
43 EthGtpip_ProcessDownlinkBulk(EthGtpip* g, struct rte_mbuf* pkts[], uint32_t count);
44 
54 __attribute__((nonnull)) uint64_t
55 EthGtpip_ProcessUplinkBulk(EthGtpip* g, struct rte_mbuf* pkts[], uint32_t count);
56 
57 #endif // NDNDPDK_ETHFACE_GTPIP_H
uint16_t FaceID
Numeric face identifier.
Definition: faceid.h:13
uint64_t EthGtpip_ProcessUplinkBulk(EthGtpip *g, struct rte_mbuf *pkts[], uint32_t count)
Process uplink packets.
Definition: gtpip.c:192
uint64_t EthGtpip_ProcessDownlinkBulk(EthGtpip *g, struct rte_mbuf *pkts[], uint32_t count)
Process downlink packets.
Definition: gtpip.c:106
struct EthGtpip EthGtpip
GTP-IP handler.
GTP-IP handler.
Definition: gtpip.h:12
FaceID n6Face
N6 face.
Definition: gtpip.h:18
uint8_t n6Mac[2 *RTE_ETHER_ADDR_LEN]
Definition: gtpip.h:19
struct rte_hash * ipv4
Mapping from UE IPv4 address to FaceID.
Definition: gtpip.h:29