NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.5: NDN, CCN, CCNx, content centric networks
API Documentation
fib-manager.hpp
Go to the documentation of this file.
1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2
/*
3
* Copyright (c) 2014-2021, Regents of the University of California,
4
* Arizona Board of Regents,
5
* Colorado State University,
6
* University Pierre & Marie Curie, Sorbonne University,
7
* Washington University in St. Louis,
8
* Beijing Institute of Technology,
9
* The University of Memphis.
10
*
11
* This file is part of NFD (Named Data Networking Forwarding Daemon).
12
* See AUTHORS.md for complete list of NFD authors and contributors.
13
*
14
* NFD is free software: you can redistribute it and/or modify it under the terms
15
* of the GNU General Public License as published by the Free Software Foundation,
16
* either version 3 of the License, or (at your option) any later version.
17
*
18
* NFD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
19
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
20
* PURPOSE. See the GNU General Public License for more details.
21
*
22
* You should have received a copy of the GNU General Public License along with
23
* NFD, e.g., in COPYING.md file. If not, see <http://www.gnu.org/licenses/>.
24
*/
25
26
#ifndef NFD_DAEMON_MGMT_FIB_MANAGER_HPP
27
#define NFD_DAEMON_MGMT_FIB_MANAGER_HPP
28
29
#include "
manager-base.hpp
"
30
31
namespace
nfd
{
32
33
namespace
fib {
34
class
Fib
;
35
}
// namespace fib
36
37
class
FaceTable
;
38
43
class
FibManager
final :
public
ManagerBase
44
{
45
public
:
46
FibManager
(
fib::Fib
& fib,
const
FaceTable
& faceTable,
47
Dispatcher
& dispatcher,
CommandAuthenticator
& authenticator);
48
49
private
:
50
void
51
addNextHop(
const
Name
& topPrefix,
const
Interest
& interest,
52
ControlParameters
parameters,
53
const
ndn::mgmt::CommandContinuation
& done);
54
55
void
56
removeNextHop(
const
Name
& topPrefix,
const
Interest
& interest,
57
ControlParameters
parameters,
58
const
ndn::mgmt::CommandContinuation
& done);
59
60
void
61
listEntries(
const
Name
& topPrefix,
const
Interest
& interest,
62
ndn::mgmt::StatusDatasetContext
& context);
63
64
private
:
65
void
66
setFaceForSelfRegistration(
const
Interest
& request,
ControlParameters
& parameters);
67
68
private
:
69
fib::Fib
& m_fib;
70
const
FaceTable
& m_faceTable;
71
};
72
73
}
// namespace nfd
74
75
#endif // NFD_DAEMON_MGMT_FIB_MANAGER_HPP
nfd::ManagerBase
A collection of common functions shared by all NFD managers, such as communicating with the dispatche...
Definition:
manager-base.hpp:47
ndn::nfd::ControlParameters
represents parameters in a ControlCommand request or response
Definition:
control-parameters.hpp:81
ndn::mgmt::Dispatcher
represents a dispatcher on server side of NFD Management protocol
Definition:
dispatcher.hpp:130
manager-base.hpp
ndn::Interest
Represents an Interest packet.
Definition:
interest.hpp:48
nfd::FibManager
FibManager
Definition:
fib-manager.cpp:39
nfd::FaceTable
container of all faces
Definition:
face-table.hpp:38
nfd::FibManager
Implements the FIB Management of NFD Management Protocol.
Definition:
fib-manager.hpp:43
nfd
Copyright (c) 2011-2015 Regents of the University of California.
Definition:
ndn-common.hpp:39
nfd::fib::Fib
Represents the Forwarding Information Base (FIB)
Definition:
fib.hpp:47
ndn::Name
Represents an absolute name.
Definition:
name.hpp:41
ndn::mgmt::CommandContinuation
std::function< void(const ControlResponse &resp)> CommandContinuation
a function to be called after ControlCommandHandler completes
Definition:
dispatcher.hpp:95
nfd::CommandAuthenticator
Provides ControlCommand authorization according to NFD configuration file.
Definition:
command-authenticator.hpp:38
ndn::mgmt::StatusDatasetContext
Provides a context for generating the response to a StatusDataset request.
Definition:
status-dataset-context.hpp:34
ndnSIM
NFD
daemon
mgmt
fib-manager.hpp
Generated on Fri May 6 2022 12:34:13 for ndnSIM by
1.8.13