DOCA-AR 1.0
 
Loading...
Searching...
No Matches
doca_ar_conntrack.h File Reference

simple connection tracking table module for recording flow info and modifying headers of packets forwarded by software More...

#include "doca_ar_env.h"
#include <cmdline.h>

Go to the source code of this file.

Data Structures

struct  doca_ar_conn_match
 match of hash table and l4-connection More...
 
struct  doca_ar_conn
 context of a connection More...
 

Macros

#define MAX_CONNTRACK   1 << 14
 maximum connections can be stored in rte_mempool and offloaded into eSwitch
 

Typedefs

typedef void(* ExpireCallback) (void *arg)
 user-defined callback function when expiring connection
 

Functions

int doca_ar_conntrack_init_env (int maxConntrack)
 init connection tracking table and mempool
 
int doca_ar_parse_conn (struct doca_ar_conn_match *match, struct rte_mbuf *m)
 pasrse conn match from rte_mbuf
 
void doca_ar_print_match (struct doca_ar_conn_match *match)
 debug api for pring match info
 
struct doca_ar_conndoca_ar_add_conn (struct doca_ar_conn_match *match, uint16_t bestPath)
 get conn from mempool and add conn into the conntrack table
 
struct doca_ar_conndoca_ar_find_conn (struct doca_ar_conn_match *match)
 find the conn from conntrack table
 
void doca_ar_del_conn (void *conn)
 del conn from the conntrack table and put back to mempool
 
void doca_ar_modify_conn (struct doca_ar_conn *conn, struct rte_mbuf *m)
 modify the sport of conn and offload cksum
 
void doca_ar_dump_conn (struct cmdline *cl)
 iterate the whole conntrack table and print all conns info onto cmdline
 

Variables

struct doca_ar_conn_match __rte_cache_aligned
 

Detailed Description

simple connection tracking table module for recording flow info and modifying headers of packets forwarded by software

Author
Mark Chen (markc.nosp@m.hen7.nosp@m.7888@.nosp@m.gmai.nosp@m.l.com)
Version
1.0
Date
2024-01-07

Macro Definition Documentation

◆ MAX_CONNTRACK

#define MAX_CONNTRACK   1 << 14

maximum connections can be stored in rte_mempool and offloaded into eSwitch

Typedef Documentation

◆ ExpireCallback

typedef void(* ExpireCallback) (void *arg)

user-defined callback function when expiring connection

Function Documentation

◆ doca_ar_add_conn()

struct doca_ar_conn * doca_ar_add_conn ( struct doca_ar_conn_match * match,
uint16_t bestPath )

get conn from mempool and add conn into the conntrack table

Parameters
match
bestPath
Returns
struct doca_ar_conn*

◆ doca_ar_conntrack_init_env()

int doca_ar_conntrack_init_env ( int maxConntrack)

init connection tracking table and mempool

Parameters
maxConntrack
Returns
int

◆ doca_ar_del_conn()

void doca_ar_del_conn ( void * conn)

del conn from the conntrack table and put back to mempool

Parameters
conn

◆ doca_ar_dump_conn()

void doca_ar_dump_conn ( struct cmdline * cl)

iterate the whole conntrack table and print all conns info onto cmdline

Parameters
cl

◆ doca_ar_find_conn()

struct doca_ar_conn * doca_ar_find_conn ( struct doca_ar_conn_match * match)

find the conn from conntrack table

Parameters
match
Returns
struct doca_ar_conn*

◆ doca_ar_modify_conn()

void doca_ar_modify_conn ( struct doca_ar_conn * conn,
struct rte_mbuf * m )

modify the sport of conn and offload cksum

Parameters
conn
m

◆ doca_ar_parse_conn()

int doca_ar_parse_conn ( struct doca_ar_conn_match * match,
struct rte_mbuf * m )

pasrse conn match from rte_mbuf

Parameters
match
m
Returns
int

◆ doca_ar_print_match()

void doca_ar_print_match ( struct doca_ar_conn_match * match)

debug api for pring match info

Parameters
match

Variable Documentation

◆ __rte_cache_aligned

struct doca_ar_conn __rte_cache_aligned