Copyright (c) 2011-2015 Regents of the University of California. More...
Namespaces | |
cs | |
detail | |
face | |
fib | |
fw | |
general | |
measurements | |
name_tree | |
pit | |
rib | |
scheduler | |
scope_prefix | |
contain name prefixes that affect namespace-based scope control | |
strategy_choice | |
tcp | |
tlv | |
udp | |
unix_stream | |
websocket | |
Classes | |
class | ByteCounter |
represents a counter of number of bytes More... | |
class | Channel |
class | CommandAuthenticator |
provides ControlCommand authorization according to NFD configuration file More... | |
class | ConfigFile |
configuration file parsing utility More... | |
class | DeadNonceList |
represents the Dead Nonce list More... | |
class | EthernetFactory |
class | FaceManager |
implement the Face Management of NFD Management Protocol. More... | |
class | FaceTable |
container of all faces More... | |
class | FibManager |
implement the FIB Management of NFD Management Protocol. More... | |
class | Forwarder |
main class of NFD More... | |
class | ForwarderCounters |
counters provided by Forwarder More... | |
class | ForwarderStatusManager |
implement the Forwarder Status of NFD Management Protocol. More... | |
class | ManagerBase |
a collection of common functions shared by all NFD managers and RIB manager, such as communicating with the dispatcher and command validator. More... | |
class | Network |
class | NetworkInterfaceInfo |
contains information about a network interface More... | |
class | NetworkInterfacePredicate |
Represents a predicate to accept or reject a NetworkInterfaceInfo. More... | |
class | NetworkRegionTable |
stores a collection of producer region names More... | |
class | Nfd |
Class representing NFD instance This class can be used to initialize all components of NFD. More... | |
class | NfdManagerBase |
a collection of common functions shared by all NFD managers, such as communicating with the dispatcher and command validator. More... | |
class | NfdRunner |
Executes NFD with RIB manager. More... | |
class | PacketCounter |
represents a counter of number of packets More... | |
class | PrivilegeHelper |
class | ProtocolFactory |
Abstract base class for all protocol factories. More... | |
class | RttEstimator |
implements the Mean-Deviation RTT estimator More... | |
class | SimpleCounter |
represents a counter that encloses an integer value More... | |
class | SizeCounter |
provides a counter that observes the size of a table More... | |
class | StrategyChoiceManager |
implement the Strategy Choice Management of NFD Management Protocol. More... | |
class | StrategyInfoHost |
base class for an entity onto which StrategyInfo items may be placed More... | |
class | TablesConfigSection |
handles 'tables' config section More... | |
class | TcpChannel |
Class implementing TCP-based channel to create faces. More... | |
class | TcpFactory |
class | UdpChannel |
Class implementing UDP-based channel to create faces. More... | |
class | UdpFactory |
class | UnixStreamChannel |
Class implementing a local channel to create faces. More... | |
class | UnixStreamFactory |
class | WebSocketChannel |
Class implementing WebSocket-based channel to create faces. More... | |
class | WebSocketFactory |
Typedefs | |
typedef boost::property_tree::ptree | ConfigSection |
typedef function< void(const ConfigSection &, bool, const std::string &)> | ConfigSectionHandler |
callback for config file sections More... | |
typedef function< void(const std::string &, const std::string &, const ConfigSection &, bool)> | UnknownConfigSectionHandler |
callback for config file sections without a subscribed handler More... | |
typedef function< void(const shared_ptr< Face > &newFace)> | FaceCreatedCallback |
Prototype for the callback that is invoked when the face is created (as a response to incoming connection or after connection is established) More... | |
typedef function< void(uint32_t status, const std::string &reason)> | FaceCreationFailedCallback |
Prototype for the callback that is invoked when the face fails to be created. More... | |
Functions | |
It | find_last_if (It first, It last, Pred p) |
template<typename E > | |
std::string | getExtendedErrorMessage (const E &exception) |
detail::SimulatorIo & | getGlobalIoService () |
static void | parseList (std::set< std::string > &set, const boost::property_tree::ptree &list, const std::string §ion) |
static bool | doesMatchRule (const NetworkInterfaceInfo &nic, const std::string &rule) |
std::vector< NetworkInterfaceInfo > | listNetworkInterfaces () |
List configured network interfaces on the system and their info. More... | |
std::ostream & | operator<< (std::ostream &os, const Network &network) |
std::istream & | operator>> (std::istream &is, Network &network) |
std::mt19937 & | getGlobalRng () |
void | connectFaceClosedSignal (Face &face, const std::function< void()> &f) |
invokes a callback when the face is closed More... | |
static bool | compare_InRecord_expiry (const pit::InRecord &a, const pit::InRecord &b) |
static void | insertNonceToDnl (DeadNonceList &dnl, const pit::Entry &pitEntry, const pit::OutRecord &outRecord) |
static const time::milliseconds | STATUS_FRESHNESS (5000) |
static ndn::util::NetworkMonitor * | makeNetworkMonitor () |
static void | ignoreRibAndLogSections (const std::string &filename, const std::string §ionName, const ConfigSection §ion, bool isDryRun) |
void | cleanupOnFaceRemoval (NameTree &nt, Fib &fib, Pit &pit, const Face &face) |
cleanup tables when a face is destroyed More... | |
Variables | |
PrivilegeHelper | |
TcpChannel | |
TcpFactory | |
UdpChannel | |
UdpFactory | |
UnixStreamChannel | |
WebSocketChannel | |
FaceTable | |
Forwarder | |
NFD | |
CommandAuthenticator | |
FaceManager | |
FibManager | |
StrategyChoiceManager | |
Nfd | |
static const std::string | INTERNAL_CONFIG = "internal://nfd.conf" |
Copyright (c) 2011-2015 Regents of the University of California.
Copyright (c) 2014, Regents of the University of California, Arizona Board of Regents, Colorado State University, University Pierre & Marie Curie, Sorbonne University, Washington University in St.
Copyright (c) 2014 Regents of the University of California, Arizona Board of Regents, Colorado State University, University Pierre & Marie Curie, Sorbonne University, Washington University in St.
Copyright (c) 2014-2016, Regents of the University of California, Arizona Board of Regents, Colorado State University, University Pierre & Marie Curie, Sorbonne University, Washington University in St.
Copyright (c) 2014-2015, Regents of the University of California, Arizona Board of Regents, Colorado State University, University Pierre & Marie Curie, Sorbonne University, Washington University in St.
This file is part of ndnSIM. See AUTHORS for complete list of ndnSIM authors and contributors.
ndnSIM is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
ndnSIM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with ndnSIM, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.
Louis, Beijing Institute of Technology, The University of Memphis.
This file is part of NFD (Named Data Networking Forwarding Daemon). See AUTHORS.md for complete list of NFD authors and contributors.
NFD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
NFD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with NFD, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.
Louis, Beijing Institute of Technology
This file is part of NFD (Named Data Networking Forwarding Daemon). See AUTHORS.md for complete list of NFD authors and contributors.
NFD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
NFD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with NFD, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.
Louis, Beijing Institute of Technology, The University of Memphis
This file is part of NFD (Named Data Networking Forwarding Daemon). See AUTHORS.md for complete list of NFD authors and contributors.
NFD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
NFD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with NFD, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.
Louis, Beijing Institute of Technology, The University of Memphis.
This file is part of NFD (Named Data Networking Forwarding Daemon). See AUTHORS.md for complete list of NFD authors and contributors.
NFD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
NFD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with NFD, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/. This file declares the global pseudorandom number generator (PRNG).
All random numbers generated by NFD should use this global generator, so that it can be properly seeded when necessary.
This PRNG is not suitable for security purposes; security-critical code must use a cryptographically secure PRNG, such as those provided by OpenSSL and Crypto++.
typedef boost::property_tree::ptree nfd::ConfigSection |
Definition at line 38 of file ndn-l3-protocol.hpp.
typedef function<void(const ConfigSection& , bool , const std::string& )> nfd::ConfigSectionHandler |
callback for config file sections
Definition at line 40 of file config-file.hpp.
typedef function<void(const std::string& , const std::string& , const ConfigSection& , bool )> nfd::UnknownConfigSectionHandler |
callback for config file sections without a subscribed handler
Definition at line 46 of file config-file.hpp.
typedef function<void(const shared_ptr<Face>& newFace)> nfd::FaceCreatedCallback |
Prototype for the callback that is invoked when the face is created (as a response to incoming connection or after connection is established)
Definition at line 38 of file channel.hpp.
typedef function<void(uint32_t status, const std::string& reason)> nfd::FaceCreationFailedCallback |
Prototype for the callback that is invoked when the face fails to be created.
Definition at line 44 of file channel.hpp.
It nfd::find_last_if | ( | It | first, |
It | last, | ||
Pred | p | ||
) |
Definition at line 49 of file algorithm.hpp.
Referenced by nfd::cs::Cs::find().
std::string nfd::getExtendedErrorMessage | ( | const E & | exception | ) |
Definition at line 36 of file extended-error-message.hpp.
References ndn::security::file.
Referenced by main(), and nfd::NfdRunner::run().
detail::SimulatorIo & nfd::getGlobalIoService | ( | ) |
Definition at line 48 of file global-io.cpp.
Referenced by nfd::FaceTable::addReserved(), nfd::face::asyncReceive(), nfd::TcpChannel::connect(), nfd::UdpFactory::createMulticastFace(), nfd::face::StreamTransport< boost::asio::local::stream_protocol >::doClose(), nfd::face::DatagramTransport< boost::asio::ip::udp, Multicast >::doClose(), nfd::face::EthernetTransport::doClose(), nfd::face::TcpTransport::handleError(), nfd::rib::Service::initialize(), nfd::UnixStreamChannel::listen(), nfd::UdpChannel::listen(), makeNetworkMonitor(), nfd::NfdRunner::run(), nfd::NfdRunner::terminate(), and nfd::WebSocketChannel::WebSocketChannel().
|
static |
Definition at line 47 of file network-interface-predicate.cpp.
References ndn::util::ethernet::Address::fromString(), ndn::util::ethernet::Address::isNull(), and nfd::Network::isValidCidr().
Referenced by nfd::NetworkInterfacePredicate::parseBlacklist(), and nfd::NetworkInterfacePredicate::parseWhitelist().
|
static |
Definition at line 98 of file network-interface-predicate.cpp.
References nfd::Network::doesContain(), nfd::NetworkInterfaceInfo::etherAddress, nfd::NetworkInterfaceInfo::ipv4Addresses, nfd::NetworkInterfaceInfo::name, and ndn::util::ethernet::Address::toString().
Referenced by nfd::NetworkInterfacePredicate::operator()().
std::vector< NetworkInterfaceInfo > nfd::listNetworkInterfaces | ( | ) |
List configured network interfaces on the system and their info.
Definition at line 73 of file network-interface.cpp.
References ndn::util::ethernet::ADDR_LEN, nfd::NetworkInterfaceInfo::broadcastAddress, nfd::NetworkInterfaceInfo::etherAddress, nfd::NetworkInterfaceInfo::flags, nfd::NetworkInterfaceInfo::index, nfd::NetworkInterfaceInfo::ipv4Addresses, nfd::NetworkInterfaceInfo::ipv6Addresses, nfd::NetworkInterfaceInfo::isBroadcastCapable(), nfd::NetworkInterfaceInfo::name, NFD_LOG_DEBUG, NFD_LOG_TRACE, and NFD_LOG_WARN.
Referenced by nfd::NetworkInterfaceInfo::isUp(), and nfd::FaceManager::setConfigFile().
std::ostream & nfd::operator<< | ( | std::ostream & | os, |
const Network & | network | ||
) |
Definition at line 93 of file network.cpp.
std::istream & nfd::operator>> | ( | std::istream & | is, |
Network & | network | ||
) |
Definition at line 99 of file network.cpp.
std::mt19937 & nfd::getGlobalRng | ( | ) |
Definition at line 32 of file random.cpp.
Referenced by nfd::fw::asf::ProbingModule::afterForwardingProbe(), nfd::fw::Strategy::afterReceiveNack(), and nfd::fw::NccStrategy::doPropagate().
void nfd::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 41 of file channel.cpp.
References nfd::face::Face::afterStateChange.
Referenced by nfd::FaceTable::addReserved(), nfd::EthernetFactory::createMulticastFace(), nfd::UdpFactory::createMulticastFace(), nfd::Channel::getUri(), nfd::UdpChannel::listen(), nfd::TcpChannel::size(), and nfd::WebSocketChannel::WebSocketChannel().
|
inlinestatic |
Definition at line 541 of file forwarder.cpp.
References nfd::scheduler::cancel(), nfd::pit::FaceRecord::getExpiry(), nfd::pit::Entry::m_stragglerTimer, nfd::pit::Entry::m_unsatisfyTimer, ndn::time::steady_clock::now(), and nfd::scheduler::schedule().
|
inlinestatic |
Definition at line 582 of file forwarder.cpp.
References nfd::DeadNonceList::add(), nfd::pit::Entry::getInterest(), nfd::pit::FaceRecord::getLastNonce(), nfd::DeadNonceList::getLifetime(), ndn::Interest::getMustBeFresh(), nfd::pit::Entry::getName(), nfd::pit::Entry::getOutRecord(), and nfd::pit::Entry::getOutRecords().
|
static |
Referenced by nfd::ForwarderStatusManager::ForwarderStatusManager().
|
inlinestatic |
Definition at line 49 of file nfd.cpp.
References getGlobalIoService(), and NFD_LOG_WARN.
|
inlinestatic |
Definition at line 124 of file nfd.cpp.
References nfd::CommandAuthenticator::create(), nfd::TablesConfigSection::ensureConfigured(), nfd::face::FACEID_INTERNAL_FACE, FaceManager, FibManager, nfd::face::makeInternalFace(), nfd::ConfigFile::parse(), nfd::TablesConfigSection::setConfigFile(), nfd::general::setConfigFile(), StrategyChoiceManager, and nfd::ConfigFile::throwErrorOnUnknownSection().
Referenced by nfd::Nfd::reloadConfigFile().
cleanup tables when a face is destroyed
This function enumerates the NameTree, calls Fib::removeNextHop for each FIB entry, calls Pit::deleteInOutRecords for each PIT entry, and finally deletes any name tree entries that have become empty.
Definition at line 31 of file cleanup.cpp.
References nfd::pit::Pit::deleteInOutRecords(), and nfd::fib::Fib::removeNextHop().
Referenced by nfd::Forwarder::Forwarder().
Definition at line 34 of file privilege-helper.cpp.
Definition at line 33 of file tcp-channel.cpp.
Definition at line 34 of file tcp-factory.cpp.
Definition at line 33 of file udp-channel.cpp.
Definition at line 42 of file udp-factory.cpp.
Definition at line 36 of file unix-stream-channel.cpp.
Referenced by nfd::UnixStreamChannel::Error::Error().
Definition at line 33 of file websocket-channel.cpp.
Definition at line 34 of file face-table.cpp.
Definition at line 37 of file forwarder.cpp.
Referenced by nfd::Nfd::initialize().
Definition at line 37 of file command-authenticator.cpp.
Definition at line 61 of file face-manager.cpp.
Referenced by ignoreRibAndLogSections(), and ns3::ndn::L3Protocol::setCsReplacementPolicy().
Definition at line 33 of file fib-manager.cpp.
Referenced by ignoreRibAndLogSections(), and ns3::ndn::L3Protocol::setCsReplacementPolicy().
Definition at line 32 of file strategy-choice-manager.cpp.
Referenced by ignoreRibAndLogSections(), and ns3::ndn::L3Protocol::setCsReplacementPolicy().