NDN-DPDK
High-Speed Named Data Networking Forwarder
Loading...
Searching...
No Matches
rxepoll.h
Go to the documentation of this file.
1#ifndef NDNDPDK_SOCKETFACE_RXEPOLL_H
2#define NDNDPDK_SOCKETFACE_RXEPOLL_H
3
5
6#include "../iface/rxloop.h"
7#include <sys/epoll.h>
8
10typedef struct SocketRxEpoll {
12 struct rte_mempool* directMp;
13 uint64_t nTruncated;
14 int epfd;
15 uint16_t msgIndex;
16 struct rte_mbuf* mbufs[2 * MaxBurstSize];
17 struct iovec iov[2 * MaxBurstSize];
18 struct mmsghdr msgs[2 * MaxBurstSize];
20
21__attribute__((nonnull)) void
22SocketRxEpoll_PrepareEvent(struct epoll_event* e, FaceID id, int fd);
23
24__attribute__((nonnull)) void
26
27#endif // NDNDPDK_SOCKETFACE_RXEPOLL_H
uint16_t FaceID
Numeric face identifier.
Definition faceid.h:13
@ MaxBurstSize
Definition enum.h:7
void SocketRxEpoll_PrepareEvent(struct epoll_event *e, FaceID id, int fd)
Definition rxepoll.c:12
void SocketRxEpoll_RxBurst(RxGroup *rxg, RxGroupBurstCtx *ctx)
Definition rxepoll.c:70
Context of RxGroup_RxBurstFunc operation.
Definition rxloop.h:12
Receive channel for faces.
Definition rxloop.h:39
RX from datagram sockets using epoll.
Definition rxepoll.h:10
struct mmsghdr msgs[2 *MaxBurstSize]
Definition rxepoll.h:18
struct rte_mempool * directMp
Definition rxepoll.h:12
uint16_t msgIndex
Definition rxepoll.h:15
RxGroup base
Definition rxepoll.h:11
uint64_t nTruncated
Definition rxepoll.h:13
struct rte_mbuf * mbufs[2 *MaxBurstSize]
Definition rxepoll.h:16
struct iovec iov[2 *MaxBurstSize]
Definition rxepoll.h:17
int epfd
Definition rxepoll.h:14