dtn::core::UDPConvergenceLayer Class Reference

#include <UDPConvergenceLayer.h>

Inheritance diagram for dtn::core::UDPConvergenceLayer:

dtn::utils::Service dtn::core::ConvergenceLayer

List of all members.

Public Member Functions

 UDPConvergenceLayer (string bind_addr, unsigned short port, bool broadcast=false, unsigned int mtu=1280)
virtual ~UDPConvergenceLayer ()
virtual TransmitReport transmit (const Bundle &b)
virtual TransmitReport transmit (const Bundle &b, const Node &node)
virtual void tick ()

Private Member Functions

void receiveBundle ()

Private Attributes

int m_socket
unsigned int m_maxmsgsize
string m_selfaddr
unsigned int m_selfport
Mutex m_writelock

Static Private Attributes

static const int DEFAULT_PORT = 4556


Detailed Description

This class implement a ConvergenceLayer for UDP/IP. Each bundle is sent in exact one UDP datagram.

Constructor & Destructor Documentation

dtn::core::UDPConvergenceLayer::UDPConvergenceLayer ( string  bind_addr,
unsigned short  port,
bool  broadcast = false,
unsigned int  mtu = 1280 
)

Constructor

Parameters:
[in] bind_addr The own eid for broadcasting discovery bundles.
[in] port The udp port to use.
[in] broadcast If true, the broadcast feature for this socket is enabled.
[in] mtu The maximum bundle size.

References m_socket.

dtn::core::UDPConvergenceLayer::~UDPConvergenceLayer (  )  [virtual]

Desktruktor

References m_socket, and m_writelock.


Member Function Documentation

TransmitReport dtn::core::UDPConvergenceLayer::transmit ( const Bundle b  )  [virtual]

TransmitReport dtn::core::UDPConvergenceLayer::transmit ( const Bundle b,
const Node node 
) [virtual]

void dtn::core::UDPConvergenceLayer::tick (  )  [virtual]

See also:
Service::tick()

Implements dtn::utils::Service.

References receiveBundle().

void dtn::core::UDPConvergenceLayer::receiveBundle (  )  [private]


Member Data Documentation

const int dtn::core::UDPConvergenceLayer::DEFAULT_PORT = 4556 [static, private]

Referenced by receiveBundle(), and transmit().

Referenced by transmit().

Referenced by transmit().

Referenced by transmit(), and ~UDPConvergenceLayer().


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

Generated on Wed Mar 25 12:41:40 2009 for IBR-DTN by  doxygen 1.5.6