ROFL-pipeline
v0.6.0dev
|
OpenFlow v1.0, 1.2 and 1.3.2 statistics subsystem. More...
#include <inttypes.h>
#include <sys/time.h>
#include <string.h>
#include "rofl.h"
#include "of1x_group_types.h"
#include "../../../platform/lock.h"
Go to the source code of this file.
Data Structures | |
struct | __of1x_stats_flow_tid |
struct | of1x_stats_flow |
union | of1x_stats_flow::__of1x_stats_flow_tids |
struct | __of1x_stats_table_tid |
struct | of1x_stats_table |
union | of1x_stats_table::__of1x_stats_table_tids |
struct | __of1x_stats_bucket_tid |
struct | __of1x_stats_bucket |
union | __of1x_stats_bucket::__of1x_stats_bucket_tids |
struct | __of1x_stats_group_tid |
struct | of1x_stats_group |
union | of1x_stats_group::__of1x_stats_group_tids |
struct | of1x_stats_single_flow_msg |
Single flow entry stats message. More... | |
struct | of1x_stats_flow_msg |
Linked list containing all the individual flow stats. More... | |
struct | of1x_stats_flow_aggregate_msg |
Aggregated flow stats message. More... | |
struct | of1x_stats_group_msg |
struct | of1x_stats_bucket_desc_msg |
struct | of1x_stats_group_desc_msg |
Macros | |
#define | OF1X_STATS_NS_IN_A_SEC 1000000000 |
Typedefs | |
typedef struct __of1x_stats_flow_tid | __of1x_stats_flow_tid_t |
typedef struct of1x_stats_flow | of1x_stats_flow_t |
typedef struct __of1x_stats_table_tid | __of1x_stats_table_tid_t |
typedef struct of1x_stats_table | of1x_stats_table_t |
typedef struct __of1x_stats_bucket_tid | __of1x_stats_bucket_tid_t |
typedef __of1x_stats_bucket_tid_t | of1x_stats_bucket_t |
typedef struct __of1x_stats_bucket | __of1x_stats_bucket_t |
typedef struct __of1x_stats_group_tid | __of1x_stats_group_tid_t |
typedef struct of1x_stats_group | of1x_stats_group_t |
typedef struct of1x_stats_single_flow_msg | of1x_stats_single_flow_msg_t |
Single flow entry stats message. More... | |
typedef struct of1x_stats_flow_msg | of1x_stats_flow_msg_t |
Linked list containing all the individual flow stats. More... | |
typedef struct of1x_stats_flow_aggregate_msg | of1x_stats_flow_aggregate_msg_t |
Aggregated flow stats message. More... | |
typedef struct of1x_stats_group_msg | of1x_stats_group_msg_t |
typedef struct of1x_stats_bucket_desc_msg | of1x_stats_bucket_desc_msg_t |
typedef struct of1x_stats_group_desc_msg | of1x_stats_group_desc_msg_t |
Functions | |
ROFL_BEGIN_DECLS void | __of1x_init_flow_stats (struct of1x_flow_entry *entry) |
operations in statistics.c More... | |
void | __of1x_destroy_flow_stats (struct of1x_flow_entry *entry) |
of1x_stats_flow_destroy basically destroys the mutex More... | |
void | __of1x_push_single_flow_stats_to_msg (of1x_stats_flow_msg_t *msg, of1x_stats_single_flow_msg_t *sfs) |
of1x_stats_single_flow_msg_t * | __of1x_init_stats_single_flow_msg (struct of1x_flow_entry *entry) |
void | __of1x_destroy_stats_single_flow_msg (of1x_stats_single_flow_msg_t *msg) |
of1x_stats_flow_msg_t * | __of1x_init_stats_flow_msg (void) |
void | of1x_destroy_stats_flow_msg (of1x_stats_flow_msg_t *msg) |
Destroy a flow_stats message. More... | |
of1x_stats_flow_aggregate_msg_t * | __of1x_init_stats_flow_aggregate_msg (void) |
void | of1x_destroy_stats_flow_aggregate_msg (of1x_stats_flow_aggregate_msg_t *msg) |
Destroy aggreagated flow_stats message. More... | |
void | of1x_stats_flow_get_duration (struct of1x_flow_entry *entry, uint32_t *sec, uint32_t *nsec) |
Get the duration of the flow_entry. More... | |
void | __of1x_stats_flow_reset_counts (struct of1x_flow_entry *entry) |
of1x_stats_flow_reset_counts More... | |
static void | __of1x_stats_flow_consolidate (of1x_stats_flow_t *stats, __of1x_stats_flow_tid_t *c) |
static void | __of1x_stats_copy_flow_stats (of1x_stats_flow_t *origin, of1x_stats_flow_t *copy) |
void | __of1x_stats_table_init (struct of1x_flow_table *table) |
Initializes table statistics state. More... | |
void | __of1x_stats_table_destroy (struct of1x_flow_table *table) |
Destroys table statistics state. More... | |
static void | __of1x_stats_table_consolidate (of1x_stats_table_t *stats, __of1x_stats_table_tid_t *c) |
void | __of1x_init_group_stats (of1x_stats_group_t *group_stats) |
void | __of1x_destroy_group_stats (of1x_stats_group_t *group_stats) |
static void | __of1x_stats_group_consolidate (of1x_stats_group_t *stats, __of1x_stats_group_tid_t *c) |
static void | __of1x_stats_bucket_consolidate (__of1x_stats_bucket_t *stats, __of1x_stats_bucket_tid_t *c) |
void | __of1x_stats_group_inc_reference (of1x_stats_group_t *gr_stats) |
void | __of1x_stats_group_dec_reference (of1x_stats_group_t *gr_stats) |
of1x_stats_group_msg_t * | of1x_get_group_stats (struct of1x_pipeline *pipeline, uint32_t id) |
Retrieves the statistics of a groupReturns a structure with the statistics that needs to be freed by the calling element. More... | |
void | of1x_destroy_stats_group_msg (of1x_stats_group_msg_t *msg) |
Frees memory of statistics messageNeeds to be called after retrieving the statistics of the groups. More... | |
void | __of1x_init_bucket_stats (__of1x_stats_bucket_t *bc_stats) |
void | __of1x_destroy_buckets_stats (__of1x_stats_bucket_t *bc_stats) |
of1x_stats_flow_msg_t * | of1x_get_flow_stats (struct of1x_pipeline *pipeline, uint8_t table_id, uint32_t cookie, uint32_t cookie_mask, uint32_t out_port, uint32_t out_group, struct of1x_match_group *matchs) |
Retrieves individual flow stats. More... | |
of1x_stats_flow_aggregate_msg_t * | of1x_get_flow_aggregate_stats (struct of1x_pipeline *pipeline, uint8_t table_id, uint32_t cookie, uint32_t cookie_mask, uint32_t out_port, uint32_t out_group, struct of1x_match_group *matchs) |
Retrieves aggregated flow stats. More... | |
void | of1x_destroy_group_desc_stats (of1x_stats_group_desc_msg_t *msg) |
Frees the memory for a of1x_stats_group_desc_msg_t structure. More... | |
of1x_stats_group_desc_msg_t * | of1x_get_group_desc_stats (struct of1x_pipeline *pipeline) |
Retrieves a copy of the group and bucket structure. More... | |
OpenFlow v1.0, 1.2 and 1.3.2 statistics subsystem.
Definition in file of1x_statistics.h.
void __of1x_destroy_flow_stats | ( | struct of1x_flow_entry * | entry | ) |
of1x_stats_flow_destroy basically destroys the mutex
Definition at line 46 of file of1x_statistics.c.
ROFL_BEGIN_DECLS void __of1x_init_flow_stats | ( | of1x_flow_entry_t * | entry | ) |
operations in statistics.c
operations in statistics.c
Need to see in which are the input parameters that make it easyer and logic of1x_stats_flow_init stores the time when the flow entry was created
Definition at line 29 of file of1x_statistics.c.
void __of1x_stats_flow_reset_counts | ( | struct of1x_flow_entry * | entry | ) |
of1x_stats_flow_reset_counts
Definition at line 187 of file of1x_statistics.c.
void __of1x_stats_table_destroy | ( | struct of1x_flow_table * | table | ) |
Destroys table statistics state.
Definition at line 221 of file of1x_statistics.c.
void __of1x_stats_table_init | ( | struct of1x_flow_table * | table | ) |
Initializes table statistics state.
Definition at line 210 of file of1x_statistics.c.