Class implementing UDP-based channel to create faces. More...
#include <udp-channel.hpp>


Public Member Functions | |
| UdpChannel (const udp::Endpoint &localEndpoint, time::nanoseconds idleTimeout, bool wantCongestionMarking, size_t defaultMtu) | |
Create a UDP channel on the given localEndpoint. More... | |
| bool | isListening () const final |
| Returns whether the channel is listening. More... | |
| size_t | size () const final |
| Returns the number of faces in the channel. More... | |
| void | connect (const udp::Endpoint &remoteEndpoint, const FaceParams ¶ms, const FaceCreatedCallback &onFaceCreated, const FaceCreationFailedCallback &onConnectFailed) |
Create a unicast UDP face toward remoteEndpoint. More... | |
| void | listen (const FaceCreatedCallback &onFaceCreated, const FaceCreationFailedCallback &onFaceCreationFailed) |
| Start listening. More... | |
Public Member Functions inherited from nfd::face::Channel | |
| virtual | ~Channel () |
| const FaceUri & | getUri () const |
| size_t | getDefaultMtu () const |
| Returns the default MTU for all faces created by this channel. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from nfd::face::Channel | |
| void | setUri (const FaceUri &uri) |
| void | setDefaultMtu (size_t mtu) |
Class implementing UDP-based channel to create faces.
Definition at line 40 of file udp-channel.hpp.
| nfd::face::UdpChannel::UdpChannel | ( | const udp::Endpoint & | localEndpoint, |
| time::nanoseconds | idleTimeout, | ||
| bool | wantCongestionMarking, | ||
| size_t | defaultMtu | ||
| ) |
Create a UDP channel on the given localEndpoint.
To enable creation of faces upon incoming connections, one needs to explicitly call UdpChannel::listen method. The created socket is bound to localEndpoint.
Definition at line 39 of file udp-channel.cpp.
References NFD_LOG_CHAN_INFO, nfd::face::Channel::setDefaultMtu(), and nfd::face::Channel::setUri().
|
inlinefinalvirtual |
Returns whether the channel is listening.
Implements nfd::face::Channel.
Definition at line 56 of file udp-channel.hpp.
Referenced by listen().
|
inlinefinalvirtual |
Returns the number of faces in the channel.
Implements nfd::face::Channel.
Definition at line 62 of file udp-channel.hpp.
References connect(), listen(), and websocketpp::transport::asio::socket::error::socket.
| void nfd::face::UdpChannel::connect | ( | const udp::Endpoint & | remoteEndpoint, |
| const FaceParams & | params, | ||
| const FaceCreatedCallback & | onFaceCreated, | ||
| const FaceCreationFailedCallback & | onConnectFailed | ||
| ) |
Create a unicast UDP face toward remoteEndpoint.
Definition at line 54 of file udp-channel.cpp.
References NFD_LOG_CHAN_DEBUG.
Referenced by size().
| void nfd::face::UdpChannel::listen | ( | const FaceCreatedCallback & | onFaceCreated, |
| const FaceCreationFailedCallback & | onFaceCreationFailed | ||
| ) |
Start listening.
Enable listening on the local endpoint, waiting for incoming datagrams, and creating a face when a datagram is received from a new remote host.
Faces created in this way will have on-demand persistency.
| onFaceCreated | Callback to notify successful creation of a face |
| onFaceCreationFailed | Callback to notify errors |
Definition at line 76 of file udp-channel.cpp.
References nfd::face::FaceParams::baseCongestionMarkingInterval, nfd::face::connectFaceClosedSignal(), nfd::face::FaceParams::defaultCongestionThreshold, ndn::nfd::FACE_PERSISTENCY_ON_DEMAND, nfd::face::Channel::getDefaultMtu(), nfd::getGlobalIoService(), isListening(), nonstd::optional_lite::std11::move(), nfd::face::FaceParams::mtu, NFD_LOG_CHAN_DEBUG, NFD_LOG_CHAN_TRACE, NFD_LOG_CHAN_WARN, websocketpp::transport::error::operation_aborted, nfd::face::FaceParams::persistency, nfd::face::DatagramTransport< Protocol, Addressing >::receiveDatagram(), websocketpp::transport::asio::socket::error::socket, nfd::face::FaceParams::wantCongestionMarking, and nfd::face::FaceParams::wantLpReliability.
Referenced by size().