NDN-DPDK
High-Speed Named Data Networking Forwarder
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
passthru.h
Go to the documentation of this file.
1 #ifndef NDNDPDK_ETHFACE_PASSTHRU_H
2 #define NDNDPDK_ETHFACE_PASSTHRU_H
3 
6 #include "../iface/rxloop.h"
7 
8 typedef struct EthGtpip EthGtpip;
9 
10 enum {
15 };
16 
22 typedef struct EthPassthru {
24  uint16_t tapPort;
28 
35 __attribute__((nonnull)) void
36 EthPassthru_FaceRxInput(Face* face, int rxThread, FaceRxInputCtx* ctx);
37 
44 __attribute__((nonnull)) void
46 
53 __attribute__((nonnull)) uint16_t
54 EthPassthru_TxLoop(Face* face, int txThread);
55 
56 #endif // NDNDPDK_ETHFACE_PASSTHRU_H
uint16_t FaceID
Numeric face identifier.
Definition: faceid.h:13
@ PktInterest
Definition: enum.h:37
@ PktData
Definition: enum.h:38
uint16_t EthPassthru_TxLoop(Face *face, int txThread)
Process outgoing Ethernet frames on a pass-through face.
Definition: passthru.c:101
@ EthPassthru_cntNPkts
FaceRx/TxThread.nFrames[cntNPkts] counts non-GTP-IP packets.
Definition: passthru.h:12
@ EthPassthru_cntNGtpip
FaceRx/TxThread.nFrames[cntNGtpip] counts GTP-IP packets.
Definition: passthru.h:14
void EthPassthru_TapPortRxBurst(RxGroup *rxg, RxGroupBurstCtx *ctx)
Receive Ethernet frames on a TAP ethdev associated with a pass-through face.
Definition: passthru.c:74
struct EthPassthru EthPassthru
Ethernet pass-through face and its associated TAP port.
void EthPassthru_FaceRxInput(Face *face, int rxThread, FaceRxInputCtx *ctx)
Process a burst of received Ethernet frames on a pass-through face.
Definition: passthru.c:38
GTP-IP handler.
Definition: gtpip.h:12
Ethernet pass-through face and its associated TAP port.
Definition: passthru.h:22
RxGroup base
Definition: passthru.h:23
uint16_t tapPort
Definition: passthru.h:24
EthGtpip * gtpip
Definition: passthru.h:26
FaceID n3Face
Definition: passthru.h:25
Face_RxInputFunc inputs and outputs.
Definition: face.h:14
Generic network interface.
Definition: face.h:98
Context of RxGroup_RxBurstFunc operation.
Definition: rxloop.h:12
Receive channel for faces.
Definition: rxloop.h:39