#include <bfd_proto.h>
|
| BfdProto (Agent *agent, boost::asio::io_context &io) |
|
virtual | ~BfdProto () |
|
ProtoHandler * | AllocProtoHandler (boost::shared_ptr< PktInfo > info, boost::asio::io_context &io) |
|
void | Shutdown () |
|
bool | Enqueue (boost::shared_ptr< PktInfo > msg) |
|
void | ProcessStats (PktStatsType::Type type) |
|
bool | ProcessBfdKeepAlive (boost::shared_ptr< PktInfo > msg) |
|
void | HandleReceiveSafe (boost::asio::const_buffer pkt, const boost::asio::ip::udp::endpoint &local_endpoint, const boost::asio::ip::udp::endpoint &remote_endpoint, const BFD::SessionIndex &session_index, uint8_t pkt_len, boost::system::error_code ec) |
|
bool | BfdHealthCheckSessionControl (HealthCheckTable::HealthCheckServiceAction action, HealthCheckInstanceService *service) |
|
void | NotifyHealthCheckInstanceService (uint32_t interface, IpAddress address, std::string &data) |
|
BfdCommunicator & | bfd_communicator () |
|
void | IncrementSent () |
|
void | IncrementReceived () |
|
void | IncrementReceiveDropCount () |
|
void | IncrementKaEnqueueCount () |
|
const BfdStats & | GetStats () const |
|
uint32_t | ActiveSessions () const |
|
| Proto (Agent *agent, const char *task_name, PktHandler::PktModuleName mod, boost::asio::io_context &io) |
|
virtual | ~Proto () |
|
virtual bool | Validate (PktInfo *msg) |
|
void | FreeBuffer (PktInfo *msg) |
|
bool | ProcessProto (boost::shared_ptr< PktInfo > msg_info) |
|
bool | RunProtoHandler (ProtoHandler *handler) |
|
void | set_trace (bool val) |
|
void | set_free_buffer (bool val) |
|
boost::asio::io_context & | get_io_service () const |
|
Agent * | agent () const |
|
const ProtoWorkQueue * | work_queue () const |
|
virtual void | TokenAvailable (TokenPool *pool) |
|
Definition at line 56 of file bfd_proto.h.
◆ Sessions
◆ SessionsPair
◆ BfdProto()
BfdProto::BfdProto |
( |
Agent * |
agent, |
|
|
boost::asio::io_context & |
io |
|
) |
| |
◆ ~BfdProto()
◆ ActiveSessions()
uint32_t BfdProto::ActiveSessions |
( |
| ) |
const |
|
inline |
◆ AllocProtoHandler()
ProtoHandler * BfdProto::AllocProtoHandler |
( |
boost::shared_ptr< PktInfo > |
info, |
|
|
boost::asio::io_context & |
io |
|
) |
| |
|
virtual |
◆ bfd_communicator()
◆ BfdHealthCheckSessionControl()
◆ DISALLOW_COPY_AND_ASSIGN()
BfdProto::DISALLOW_COPY_AND_ASSIGN |
( |
BfdProto |
| ) |
|
|
private |
◆ Enqueue()
bool BfdProto::Enqueue |
( |
boost::shared_ptr< PktInfo > |
msg | ) |
|
|
virtual |
◆ GetStats()
const BfdStats& BfdProto::GetStats |
( |
| ) |
const |
|
inline |
◆ HandleReceiveSafe()
void BfdProto::HandleReceiveSafe |
( |
boost::asio::const_buffer |
pkt, |
|
|
const boost::asio::ip::udp::endpoint & |
local_endpoint, |
|
|
const boost::asio::ip::udp::endpoint & |
remote_endpoint, |
|
|
const BFD::SessionIndex & |
session_index, |
|
|
uint8_t |
pkt_len, |
|
|
boost::system::error_code |
ec |
|
) |
| |
◆ IncrementKaEnqueueCount()
void BfdProto::IncrementKaEnqueueCount |
( |
| ) |
|
|
inline |
◆ IncrementReceived()
void BfdProto::IncrementReceived |
( |
| ) |
|
|
inline |
◆ IncrementReceiveDropCount()
void BfdProto::IncrementReceiveDropCount |
( |
| ) |
|
|
inline |
◆ IncrementSent()
void BfdProto::IncrementSent |
( |
| ) |
|
|
inline |
◆ NotifyHealthCheckInstanceService()
void BfdProto::NotifyHealthCheckInstanceService |
( |
uint32_t |
interface, |
|
|
IpAddress |
address, |
|
|
std::string & |
data |
|
) |
| |
◆ ProcessBfdKeepAlive()
bool BfdProto::ProcessBfdKeepAlive |
( |
boost::shared_ptr< PktInfo > |
msg | ) |
|
◆ ProcessStats()
◆ Shutdown()
void BfdProto::Shutdown |
( |
| ) |
|
|
inline |
◆ BfdCommunicator
◆ client_
◆ communicator_
◆ handler_
◆ kMinRxInterval
const uint32_t BfdProto::kMinRxInterval = 500000 |
|
static |
◆ kMinTxInterval
const uint32_t BfdProto::kMinTxInterval = 500000 |
|
static |
◆ kMultiplier
const uint32_t BfdProto::kMultiplier = 2 |
|
static |
◆ msg_
boost::shared_ptr<PktInfo> BfdProto::msg_ |
|
private |
◆ mutex_
tbb::mutex BfdProto::mutex_ |
|
private |
◆ rx_mutex_
tbb::mutex BfdProto::rx_mutex_ |
|
private |
◆ server_
◆ sessions_
◆ stats_
The documentation for this class was generated from the following files: