Contiki 2.5
|
Implementation of a bloomfilter-based redundancy module. More...
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "contiki.h"
#include "logging.h"
#include "hash.h"
#include "redundancy.h"
Go to the source code of this file.
Macros | |
#define | REDUNDANCE_SIZE 128 |
How much RAM can we invest into detecting redundant bundles? | |
#define | REDUNDANCE_NUMBER 2 |
How many bloomfilter shall we use in parallel? | |
#define | REDUNDANCE_LIMIT 100 |
How many bundles should go into each of the filters? | |
Functions | |
uint32_t | bloomfilter_get_length () |
Get the length of each bloomfilter. More... | |
char * | bloomfilter_get_start (uint8_t filter) |
Returns the pointer to the start of a bloom filter. More... | |
void | bloomfilter_set (uint32_t bit, uint8_t filter) |
Sets a bit in a given bloom filter. More... | |
uint8_t | bloomfilter_get (uint32_t bit, uint8_t filter) |
Checks if a certain bit is set in a bloom filter. More... | |
void | bloomfilter_clear (uint8_t filter) |
Clears the content of a bloom filter. More... | |
uint8_t | redundancy_bloomfilter_check (uint32_t bundle_number) |
checks if bundle was delivered before More... | |
uint8_t | redundancy_bloomfilter_set (uint32_t bundle_number) |
saves the bundle in a list of delivered bundles More... | |
void | redundancy_bloomfilter_init (void) |
Initialize the bloomfilters and various other state. | |
Variables | |
char | redundance_filters [REDUNDANCE_SIZE] |
Holds the bloomfilter(s) | |
uint8_t | redundance_counter = 0 |
Counts the number of bundles in a bloom filter. | |
uint8_t | redundance_pointer = 0 |
Points to the filter that is currently in use. | |
Implementation of a bloomfilter-based redundancy module.
Definition in file redundancy_bloomfilter.c.