Classes | |
| class | Channel |
| represent a channel that communicates on a local endpoint More... | |
| class | DatagramTransport |
| Implements Transport for datagram-based protocols. More... | |
| class | EthernetChannel |
| Class implementing Ethernet-based channel to create faces. More... | |
| class | EthernetFactory |
| protocol factory for Ethernet More... | |
| class | EthernetTransport |
| Base class for Ethernet-based Transports. More... | |
| class | Face |
| generalization of a network interface More... | |
| class | FaceCounters |
| gives access to counters provided by Face More... | |
| class | FaceLogHelper |
| for internal use by FaceLogging macros More... | |
| class | FaceSystem |
| entry point of the face system More... | |
| class | GenericLinkService |
| GenericLinkService is a LinkService that implements the NDNLPv2 protocol. More... | |
| class | GenericLinkServiceCounters |
| counters provided by GenericLinkService More... | |
| class | InternalClientTransport |
| implements a client-side transport that can be paired with another More... | |
| class | InternalForwarderTransport |
| implements a forwarder-side transport that can be paired with another More... | |
| class | InternalTransportBase |
| abstracts a transport that can be paired with another More... | |
| class | LinkService |
| the upper part of a Face More... | |
| class | LinkServiceCounters |
| counters provided by LinkService More... | |
| class | LpFragmenter |
| fragments network-layer packets into NDNLPv2 link-layer packets More... | |
| class | LpReassembler |
| reassembles fragmented network-layer packets More... | |
| class | LpReliability |
| provides for reliable sending and receiving of link-layer packets More... | |
| struct | Multicast |
| class | MulticastEthernetTransport |
| A multicast Transport that uses raw Ethernet II frames. More... | |
| class | MulticastUdpTransport |
| A Transport that communicates on a UDP multicast group. More... | |
| class | PcapHelper |
| Helper class for dealing with libpcap handles. More... | |
| class | ProtocolFactory |
| Provides support for an underlying protocol. More... | |
| struct | ProtocolFactoryCtorParams |
| Parameters to ProtocolFactory constructor. More... | |
| class | StreamTransport |
| Implements Transport for stream-based protocols. More... | |
| class | TcpChannel |
| Class implementing TCP-based channel to create faces. More... | |
| class | TcpFactory |
| protocol factory for TCP over IPv4 and IPv6 More... | |
| class | TcpTransport |
| A Transport that communicates on a connected TCP socket. More... | |
| class | Transport |
| the lower part of a Face More... | |
| class | TransportCounters |
| counters provided by Transport More... | |
| class | UdpChannel |
| Class implementing UDP-based channel to create faces. More... | |
| class | UdpFactory |
| protocol factory for UDP over IPv4 and IPv6 More... | |
| struct | Unicast |
| class | UnicastEthernetTransport |
| A unicast Transport that uses raw Ethernet II frames. More... | |
| class | UnicastUdpTransport |
| A Transport that communicates on a unicast UDP socket. More... | |
| class | UnixStreamChannel |
| Class implementing a local channel to create faces. More... | |
| class | UnixStreamFactory |
| protocol factory for stream-oriented Unix sockets More... | |
| class | UnixStreamTransport |
| A Transport that communicates on a stream-oriented Unix domain socket. More... | |
| class | WebSocketChannel |
| Class implementing WebSocket-based channel to create faces. More... | |
| class | WebSocketFactory |
| protocol factory for WebSocket More... | |
| class | WebSocketTransport |
| A Transport that communicates on a WebSocket connection. More... | |
| class | WebSocketTransportCounters |
| counters provided by WebSocketTransport More... | |
Typedefs | |
| typedef function< void(const shared_ptr< Face > &newFace)> | FaceCreatedCallback |
| Prototype for the callback that is invoked when a face is created (in response to an incoming connection or after a connection is established) More... | |
| typedef function< void(uint32_t status, const std::string &reason)> | FaceCreationFailedCallback |
| Prototype for the callback that is invoked when a face fails to be created. More... | |
| typedef uint64_t | FaceId |
| identifies a face More... | |
| typedef TransportState | FaceState |
| indicates the state of a face More... | |
Enumerations | |
| enum | TransportState { TransportState::NONE, TransportState::UP, TransportState::DOWN, TransportState::CLOSING, TransportState::FAILED, TransportState::CLOSED } |
| indicates the state of a transport More... | |
Functions | |
| std::ostream & | operator<< (std::ostream &os, const Face &face) |
| void | connectFaceClosedSignal (Face &face, const std::function< void()> &f) |
| invokes a callback when the face is closed More... | |
| NFD_REGISTER_PROTOCOL_FACTORY (EthernetFactory) | |
| std::ostream & | operator<< (std::ostream &os, const FaceLogHelper< Face > &flh) |
| std::tuple< shared_ptr< Face >, shared_ptr< ndn::Face > > | makeInternalFace (ndn::KeyChain &clientKeyChain) |
| make a pair of forwarder-side face and client-side face that are connected with each other More... | |
| static void | asyncReceive (InternalTransportBase *recipient, const Block &packet) |
| std::ostream & | operator<< (std::ostream &os, const FaceLogHelper< LinkService > &flh) |
| template<typename T > | |
| std::enable_if< std::is_base_of< LinkService, T >::value &&!std::is_same< LinkService, T >::value, std::ostream & >::type | operator<< (std::ostream &os, const FaceLogHelper< T > &flh) |
| std::ostream & | operator<< (std::ostream &os, const FaceLogHelper< LpFragmenter > &flh) |
| std::ostream & | operator<< (std::ostream &os, const FaceLogHelper< LpReassembler > &flh) |
| shared_ptr< Face > | makeNullFace (const FaceUri &uri) |
| NFD_REGISTER_PROTOCOL_FACTORY (TcpFactory) | |
| std::ostream & | operator<< (std::ostream &os, TransportState state) |
| std::ostream & | operator<< (std::ostream &os, const FaceLogHelper< Transport > &flh) |
| template<typename T > | |
| std::enable_if< std::is_base_of< Transport, T >::value &&!std::is_same< Transport, T >::value, std::ostream & >::type | operator<< (std::ostream &os, const FaceLogHelper< T > &flh) |
| NFD_REGISTER_PROTOCOL_FACTORY (UdpFactory) | |
| static ndn::optional< ndn::net::NetworkAddress > | getV4Address (const ndn::net::NetworkInterface &netif) |
| NFD_REGISTER_PROTOCOL_FACTORY (UnixStreamFactory) | |
| NFD_REGISTER_PROTOCOL_FACTORY (WebSocketFactory) | |
| static bool | isLoopback (const boost::asio::ip::address &addr) |
| typedef function<void(const shared_ptr<Face>& newFace)> nfd::face::FaceCreatedCallback |
Prototype for the callback that is invoked when a face is created (in response to an incoming connection or after a connection is established)
Definition at line 35 of file channel.hpp.
| typedef function<void(uint32_t status, const std::string& reason)> nfd::face::FaceCreationFailedCallback |
Prototype for the callback that is invoked when a face fails to be created.
Definition at line 44 of file channel.hpp.
| typedef uint64_t nfd::face::FaceId |
| typedef TransportState nfd::face::FaceState |
|
strong |
indicates the state of a transport
| Enumerator | |
|---|---|
| NONE | |
| UP |
the transport is up and can transmit packets |
| DOWN |
the transport is temporarily down, and is being recovered |
| CLOSING |
the transport is being closed gracefully, either by the peer or by a call to close() |
| FAILED |
the transport is being closed due to a failure |
| CLOSED |
the transport is closed, and can be safely deallocated |
Definition at line 41 of file transport.hpp.
|
inline |
Definition at line 89 of file ndn-common.hpp.
References nfd::face::Face::getLocalUri().
| void nfd::face::connectFaceClosedSignal | ( | Face & | face, |
| const std::function< void()> & | f | ||
| ) |
invokes a callback when the face is closed
| face | the face |
| f | the callback to be invoked when the face enters CLOSED state |
This function connects a callback to the afterStateChange signal on the face, and invokes f when the state becomes CLOSED.
Definition at line 40 of file channel.cpp.
References nfd::face::Face::afterStateChange, and CLOSED.
Referenced by nfd::FaceTable::addReserved(), nfd::face::TcpChannel::connect(), nfd::face::EthernetFactory::createMulticastFace(), nfd::face::UdpFactory::createMulticastFace(), nfd::face::Channel::getUri(), nfd::face::UdpChannel::listen(), nfd::face::UnixStreamChannel::listen(), nfd::face::EthernetChannel::listen(), and nfd::face::WebSocketChannel::WebSocketChannel().
| nfd::face::NFD_REGISTER_PROTOCOL_FACTORY | ( | EthernetFactory | ) |
| std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
| const FaceLogHelper< Face > & | flh | ||
| ) |
Definition at line 47 of file face.cpp.
References nfd::face::Face::getId(), nfd::face::Face::getLocalUri(), and nfd::face::Face::getRemoteUri().
| std::tuple< shared_ptr< Face >, shared_ptr< ndn::Face > > nfd::face::makeInternalFace | ( | ndn::KeyChain & | clientKeyChain | ) |
make a pair of forwarder-side face and client-side face that are connected with each other
Network-layer packets sent by one face will be received by the other face after io.poll().
| clientKeyChain | A KeyChain used by client-side face to sign prefix registration commands. |
Definition at line 35 of file internal-face.cpp.
References nfd::face::GenericLinkService::Options::allowLocalFields.
Referenced by nfd::ignoreRibAndLogSections(), and ns3::ndn::L3Protocol::setCsReplacementPolicy().
|
static |
Definition at line 77 of file internal-transport.cpp.
References nfd::getGlobalIoService(), nfd::detail::SimulatorIo::post(), and nfd::face::InternalTransportBase::receiveFromLink().
Referenced by nfd::face::InternalClientTransport::connectToForwarder().
| std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
| const FaceLogHelper< LinkService > & | flh | ||
| ) |
Definition at line 124 of file link-service.cpp.
References nfd::face::Face::getId(), nfd::face::Face::getLocalUri(), and nfd::face::Face::getRemoteUri().
| std::enable_if<std::is_base_of<LinkService, T>::value && !std::is_same<LinkService, T>::value, std::ostream&>::type nfd::face::operator<< | ( | std::ostream & | os, |
| const FaceLogHelper< T > & | flh | ||
| ) |
Definition at line 248 of file link-service.hpp.
| std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
| const FaceLogHelper< LpFragmenter > & | flh | ||
| ) |
Definition at line 150 of file lp-fragmenter.cpp.
| std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
| const FaceLogHelper< LpReassembler > & | flh | ||
| ) |
Definition at line 164 of file lp-reassembler.cpp.
Definition at line 37 of file null-face.cpp.
References ndn::nfd::FACE_SCOPE_LOCAL.
Referenced by nfd::Nfd::initialize(), and ns3::ndn::L3Protocol::~L3Protocol().
| nfd::face::NFD_REGISTER_PROTOCOL_FACTORY | ( | TcpFactory | ) |
| std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
| TransportState | state | ||
| ) |
| std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
| const FaceLogHelper< Transport > & | flh | ||
| ) |
Definition at line 214 of file transport.cpp.
References nfd::face::Transport::getFace(), nfd::face::Face::getId(), nfd::face::Transport::getLocalUri(), nfd::face::Transport::getRemoteUri(), and INVALID_FACEID.
| std::enable_if<std::is_base_of<Transport, T>::value && !std::is_same<Transport, T>::value, std::ostream&>::type nfd::face::operator<< | ( | std::ostream & | os, |
| const FaceLogHelper< T > & | flh | ||
| ) |
Definition at line 468 of file transport.hpp.
| nfd::face::NFD_REGISTER_PROTOCOL_FACTORY | ( | UdpFactory | ) |
|
static |
Definition at line 391 of file udp-factory.cpp.
References nfd::face::ProtocolFactory::addFace, nfd::face::UdpFactory::createMulticastFace(), ndn::net::NetworkInterface::getNetworkAddresses(), INVALID_FACEID, nfd::face::ProtocolFactory::netmon, NFD_LOG_DEBUG, and ndn::nullopt.
| nfd::face::NFD_REGISTER_PROTOCOL_FACTORY | ( | UnixStreamFactory | ) |
| nfd::face::NFD_REGISTER_PROTOCOL_FACTORY | ( | WebSocketFactory | ) |
|
static |
Definition at line 34 of file websocket-transport.cpp.
Referenced by nfd::face::WebSocketTransport::WebSocketTransport().
Definition at line 38 of file ethernet-channel.cpp.
Definition at line 35 of file ethernet-factory.cpp.
Definition at line 38 of file ethernet-transport.cpp.
Definition at line 34 of file face-system.cpp.
| const FaceId nfd::face::INVALID_FACEID = 0 |
indicates an invalid FaceId
Definition at line 42 of file face.hpp.
Referenced by nfd::FaceTable::add(), nfd::FaceTable::addReserved(), nfd::fw::AccessStrategy::afterReceiveInterest(), nfd::fw::AccessStrategy::beforeSatisfyInterest(), nfd::face::EthernetFactory::createMulticastFace(), nfd::Forwarder::Forwarder(), getV4Address(), operator<<(), ns3::ndn::L3RateTracer::Print(), ns3::ndn::L3RateTracer::SatisfiedInterests(), nfd::FaceManager::setConfigFile(), and ns3::ndn::L3RateTracer::TimedOutInterests().
| const FaceId nfd::face::FACEID_INTERNAL_FACE = 1 |
identifies the InternalFace used in management
Definition at line 44 of file face.hpp.
Referenced by nfd::ignoreRibAndLogSections(), and ns3::ndn::L3Protocol::setCsReplacementPolicy().
| const FaceId nfd::face::FACEID_CONTENT_STORE = 254 |
identifies a packet comes from the ContentStore
Definition at line 46 of file face.hpp.
Referenced by nfd::Forwarder::Forwarder(), and nfd::Nfd::initialize().
| const FaceId nfd::face::FACEID_NULL = 255 |
identifies the NullFace that drops every packet
Definition at line 48 of file face.hpp.
Referenced by nfd::Nfd::initialize(), and ns3::ndn::L3Protocol::~L3Protocol().
| const FaceId nfd::face::FACEID_RESERVED_MAX = 255 |
upper bound of reserved FaceIds
Definition at line 50 of file face.hpp.
Referenced by nfd::FaceTable::add(), and nfd::FaceTable::addReserved().
Definition at line 32 of file generic-link-service.cpp.
Definition at line 32 of file internal-transport.cpp.
Definition at line 74 of file internal-transport.cpp.
Definition at line 32 of file link-service.cpp.
Definition at line 33 of file lp-fragmenter.cpp.
|
static |
maximum overhead on a single fragment, not counting other NDNLPv2 headers
Definition at line 44 of file lp-fragmenter.cpp.
|
static |
maximum overhead of adding fragmentation to payload, not counting other NDNLPv2 headers
Definition at line 52 of file lp-fragmenter.cpp.
Referenced by nfd::face::LpFragmenter::fragmentPacket().
Definition at line 33 of file lp-reassembler.cpp.
Definition at line 49 of file multicast-ethernet-transport.cpp.
Definition at line 32 of file multicast-udp-transport.cpp.
Definition at line 32 of file multicast-udp-transport.cpp.
Definition at line 32 of file multicast-udp-transport.cpp.
Definition at line 34 of file tcp-channel.cpp.
Definition at line 35 of file tcp-factory.cpp.
Definition at line 31 of file tcp-transport.cpp.
Definition at line 31 of file tcp-transport.cpp.
Definition at line 32 of file transport.cpp.
| const ssize_t nfd::face::MTU_UNLIMITED = -1 |
indicates the transport has no limit on payload size
Definition at line 95 of file transport.hpp.
Referenced by nfd::face::InternalForwarderTransport::InternalForwarderTransport(), nfd::face::LpReliability::piggyback(), nfd::face::Transport::receive(), nfd::face::Transport::send(), nfd::face::GenericLinkService::setOptions(), nfd::face::TcpTransport::TcpTransport(), nfd::face::UnixStreamTransport::UnixStreamTransport(), and nfd::face::WebSocketTransport::WebSocketTransport().
| const ssize_t nfd::face::MTU_INVALID = -2 |
(for internal use) indicates MTU field is unset
Definition at line 99 of file transport.hpp.
Definition at line 34 of file udp-channel.cpp.
Definition at line 46 of file udp-factory.cpp.
Definition at line 33 of file unicast-ethernet-transport.cpp.
Definition at line 39 of file unicast-udp-transport.cpp.
Definition at line 37 of file unix-stream-channel.cpp.
Referenced by nfd::face::UnixStreamChannel::Error::Error().
Definition at line 33 of file unix-stream-factory.cpp.
Definition at line 31 of file unix-stream-transport.cpp.
Definition at line 34 of file websocket-channel.cpp.
Definition at line 33 of file websocket-factory.cpp.
Definition at line 31 of file websocket-transport.cpp.