IBR-DTNSuite  0.8
dtn::routing::NeighborDatabase Class Reference

#include <NeighborDatabase.h>

Inheritance diagram for dtn::routing::NeighborDatabase:
Collaboration diagram for dtn::routing::NeighborDatabase:

List of all members.

Classes

class  AlreadyInTransitException
class  BloomfilterNotAvailableException
class  NeighborEntry
class  NeighborNotAvailableException
class  NoMoreTransfersAvailable

Public Member Functions

 NeighborDatabase ()
virtual ~NeighborDatabase ()
NeighborDatabase::NeighborEntryget (const dtn::data::EID &eid) throw (NeighborNotAvailableException)
NeighborDatabase::NeighborEntrycreate (const dtn::data::EID &eid)
NeighborDatabase::NeighborEntryreset (const dtn::data::EID &eid)
void remove (const dtn::data::EID &eid)
void addBundle (const dtn::data::EID &neighbor, const dtn::data::MetaBundle &b)
void expire (const size_t timestamp)

Detailed Description

The neighbor database contains collected information about neighbors. This includes the last timestamp on which a neighbor was seen, the bundles this neighbors has received (bloomfilter with age).

Definition at line 29 of file NeighborDatabase.h.


Constructor & Destructor Documentation


Member Function Documentation

Add a bundle id to the bloomfilter of a neighbor

Definition at line 187 of file NeighborDatabase.cpp.

References dtn::routing::NeighborDatabase::NeighborEntry::add().

Referenced by dtn::routing::BaseRouter::raiseEvent().

Here is the call graph for this function:

Query a neighbor entry of the database. If the entry does not exists, a new entry is created and returned.

Parameters:
eidThe EID of the neighbor.
Returns:
The neighbor entry reference.

Definition at line 154 of file NeighborDatabase.cpp.

Referenced by dtn::routing::BaseRouter::raiseEvent().

void dtn::routing::NeighborDatabase::expire ( const size_t  timestamp)

trigger expire mechanisms for bloomfilter and bundle summary

Parameters:
timestamp

Definition at line 97 of file NeighborDatabase.cpp.

Referenced by dtn::routing::BaseRouter::raiseEvent().

Remove an entry of the database.

Parameters:
eidThe EID of the neighbor to remove.

Definition at line 182 of file NeighborDatabase.cpp.

reset bloom filter of this neighbor

Parameters:
eid
Returns:

Definition at line 175 of file NeighborDatabase.cpp.

References dtn::routing::NeighborDatabase::NeighborEntry::reset().

Referenced by dtn::routing::BaseRouter::raiseEvent().

Here is the call graph for this function:


The documentation for this class was generated from the following files: