Class implementing UDP-based channel to create faces. More...
#include <udp-channel.hpp>
Public Member Functions | |
UdpChannel (const udp::Endpoint &localEndpoint, const time::seconds &timeout) | |
Create UDP channel for the local endpoint. More... | |
size_t | size () const |
Get number of faces in the channel. More... | |
void | connect (const udp::Endpoint &remoteEndpoint, ndn::nfd::FacePersistency persistency, const FaceCreatedCallback &onFaceCreated, const FaceCreationFailedCallback &onConnectFailed) |
Create a face by establishing connection to remote endpoint. More... | |
void | listen (const FaceCreatedCallback &onFaceCreated, const FaceCreationFailedCallback &onReceiveFailed) |
Enable listening on the local endpoint, accept connections, and create faces when remote host makes a connection. More... | |
bool | isListening () const |
Public Member Functions inherited from nfd::Channel | |
virtual | ~Channel () |
const FaceUri & | getUri () const |
Additional Inherited Members | |
Protected Member Functions inherited from nfd::Channel | |
void | setUri (const FaceUri &uri) |
Class implementing UDP-based channel to create faces.
Definition at line 40 of file udp-channel.hpp.
nfd::UdpChannel::UdpChannel | ( | const udp::Endpoint & | localEndpoint, |
const time::seconds & | timeout | ||
) |
Create UDP channel for the local endpoint.
To enable creation of faces upon incoming connections, one needs to explicitly call UdpChannel::listen method. The created socket is bound to the localEndpoint. reuse_address option is set
UdpChannel::Error | if bind on the socket fails |
Definition at line 37 of file udp-channel.cpp.
References nfd::Channel::setUri().
size_t nfd::UdpChannel::size | ( | ) | const |
Get number of faces in the channel.
Definition at line 47 of file udp-channel.cpp.
void nfd::UdpChannel::connect | ( | const udp::Endpoint & | remoteEndpoint, |
ndn::nfd::FacePersistency | persistency, | ||
const FaceCreatedCallback & | onFaceCreated, | ||
const FaceCreationFailedCallback & | onConnectFailed | ||
) |
Create a face by establishing connection to remote endpoint.
UdpChannel::Error | if bind or connect on the socket fail |
Definition at line 53 of file udp-channel.cpp.
References NFD_LOG_WARN.
void nfd::UdpChannel::listen | ( | const FaceCreatedCallback & | onFaceCreated, |
const FaceCreationFailedCallback & | onReceiveFailed | ||
) |
Enable listening on the local endpoint, accept connections, and create faces when remote host makes a connection.
onFaceCreated | Callback to notify successful creation of the face |
onReceiveFailed | Callback to notify when channel fails |
Once a face is created, if it doesn't send/receive anything for a period of time equal to timeout, it will be destroyed
UdpChannel::Error | if called multiple times |
Definition at line 75 of file udp-channel.cpp.
References nfd::connectFaceClosedSignal(), ndn::nfd::FACE_PERSISTENCY_ON_DEMAND, ndn::nfd::FACE_PERSISTENCY_PERMANENT, nfd::getGlobalIoService(), isListening(), ndn::MAX_NDN_PACKET_SIZE, NFD_LOG_DEBUG, NFD_LOG_TRACE, NFD_LOG_WARN, and nfd::face::UnicastUdpTransport.
|
inline |
Definition at line 134 of file udp-channel.hpp.
Referenced by listen().