OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
TorAgentParam Class Reference

#include <tor_agent_param.h>

Inheritance diagram for TorAgentParam:
Collaboration diagram for TorAgentParam:

Classes

struct  TorInfo
 

Public Types

enum  TorType { INVALID, OVS }
 
- Public Types inherited from AgentParam
enum  AgentMode { VROUTER_AGENT, TSN_AGENT, TSN_NO_FORWARDING_AGENT, TOR_AGENT }
 
enum  GatewayMode { VCPE, SERVER, PBB, NONE }
 
enum  HypervisorMode {
  MODE_INVALID, MODE_KVM, MODE_XEN, MODE_VMWARE,
  MODE_DOCKER
}
 
enum  VmwareMode { ESXI_NEUTRON, VCENTER }
 
enum  Platform { VROUTER_ON_HOST, VROUTER_ON_HOST_DPDK, VROUTER_ON_NIC }
 
typedef std::vector< Ip4AddressAddressList
 

Public Member Functions

 TorAgentParam ()
 
virtual ~TorAgentParam ()
 
virtual int Validate ()
 
void AddOptions ()
 
std::string tor_id () const
 
std::string tor_protocol () const
 
Ip4Address tor_ip () const
 
Ip4Address tsn_ip () const
 
uint16_t tor_port () const
 
std::string ssl_cert () const
 
std::string ssl_privkey () const
 
std::string ssl_cacert () const
 
int keepalive_interval () const
 
int ha_stale_route_interval () const
 
- Public Member Functions inherited from AgentParam
 AgentParam (bool enable_flow_options=true, bool enable_vhost_options=true, bool enable_hypervisor_options=true, bool enable_service_options=true, AgentMode agent_mode=VROUTER_AGENT)
 
virtual ~AgentParam ()
 
bool IsVHostConfigured ()
 
const std::string & vhost_name () const
 
const Ip4Addressvhost_addr () const
 
void set_vhost_addr (const Ip4Address &ip)
 
const Ip4Addressvhost_prefix () const
 
const int vhost_plen () const
 
const Ip4Addressvhost_gw () const
 
const AddressListgateway_list () const
 
const std::string & xen_ll_name () const
 
const void set_xen_ll_name (const std::string &name)
 
const Ip4Addressxen_ll_addr () const
 
const Ip4Addressxen_ll_prefix () const
 
const int xen_ll_plen () const
 
const Ip4Addressxen_ll_gw () const
 
const std::string & agent_name () const
 
const std::vector< std::string > & eth_port_list () const
 
const bool & eth_port_no_arp () const
 
const std::string & eth_port_encap_type () const
 
const AddressListeth_port_addr_list () const
 
const std::vector< int > & eth_port_plen_list () const
 
void BuildAddrList (const std::string &val, AddressList &addr_list)
 
const std::string & crypt_port () const
 
const bool & crypt_port_no_arp () const
 
const std::string & crypt_port_encap_type () const
 
const std::vector< std::string > controller_server_list () const
 
const std::string & subcluster_name () const
 
const std::vector< std::string > dns_server_list () const
 
const std::vector< std::string > tsn_server_list () const
 
const uint16_t dns_client_port () const
 
const uint32_t dns_timeout () const
 
const uint32_t dns_max_retries () const
 
const uint16_t mirror_client_port () const
 
const Ip4Addressmgmt_ip () const
 
const std::string & tunnel_type () const
 
const std::string & metadata_shared_secret () const
 
uint16_t metadata_proxy_port () const
 
const bool metadata_use_ssl () const
 
std::string metadata_client_cert () const
 
std::string metadata_client_cert_type () const
 
std::string metadata_client_key () const
 
std::string metadata_ca_cert () const
 
float max_vm_flows () const
 
uint32_t linklocal_system_flows () const
 
uint32_t linklocal_vm_flows () const
 
uint32_t flow_cache_timeout () const
 
uint16_t flow_index_sm_log_count () const
 
uint32_t flow_add_tokens () const
 
uint32_t flow_ksync_tokens () const
 
uint32_t flow_del_tokens () const
 
uint32_t flow_update_tokens () const
 
uint32_t stale_interface_cleanup_timeout () const
 
bool dhcp_relay_mode () const
 
bool xmpp_auth_enabled () const
 
std::string xmpp_server_cert () const
 
std::string xmpp_server_key () const
 
std::string xmpp_ca_cert () const
 
bool xmpp_dns_auth_enabled () const
 
bool simulate_evpn_tor () const
 
std::string si_netns_command () const
 
std::string si_docker_command () const
 
const int si_netns_workers () const
 
const int si_netns_timeout () const
 
std::string si_lb_ssl_cert_path () const
 
std::string si_lbaas_auth_conf () const
 
std::string nexthop_server_endpoint () const
 
const std::string & config_file () const
 
const std::string & program_name () const
 
const std::string log_file () const
 
const int log_files_count () const
 
const long log_file_size () const
 
bool log_local () const
 
bool log_flow () const
 
const std::vector< std::string > & get_sample_destination ()
 
const std::vector< std::string > & get_slo_destination ()
 
const std::string & log_level () const
 
const std::string & log_category () const
 
const std::string & log_property_file () const
 
const bool use_syslog () const
 
const std::string syslog_facility () const
 
const std::vector< std::string > collector_server_list () const
 
const std::map< std::string,
std::map< std::string,
std::string > > 
derived_stats_map () const
 
uint16_t http_server_port () const
 
uint16_t rest_port () const
 
const std::string & host_name () const
 
int agent_stats_interval () const
 
int flow_stats_interval () const
 
int vrouter_stats_interval () const
 
void set_agent_stats_interval (int val)
 
void set_flow_stats_interval (int val)
 
void set_vrouter_stats_interval (int val)
 
void set_subnet_hosts_resolvable (bool val)
 
VirtualGatewayConfigTablevgw_config_table () const
 
const std::string & vmware_physical_port () const
 
HypervisorMode mode () const
 
bool isXenMode () const
 
bool isKvmMode () const
 
bool isDockerMode () const
 
bool isVmwareMode () const
 
bool isVmwareVcenterMode () const
 
VmwareMode vmware_mode () const
 
Platform platform () const
 
bool vrouter_on_nic_mode () const
 
bool vrouter_on_host_dpdk () const
 
bool vrouter_on_host () const
 
bool subnet_hosts_resolvable () const
 
void Init (const std::string &config_file, const std::string &program_name)
 
void ReInit ()
 
void DebugInit ()
 
void LogConfig () const
 
void LogFilteredConfig () const
 
void PostValidateLogConfig () const
 
void InitVhostAndXenLLPrefix ()
 
void InitPlatform ()
 
void set_test_mode (bool mode)
 
bool test_mode () const
 
void AddOptions (const boost::program_options::options_description &opt)
 
void ConfigAddOptions (const boost::program_options::options_description &opt)
 
void ParseArguments (int argc, char *argv[])
 
const
boost::program_options::variables_map & 
var_map () const
 
boost::program_options::options_description options () const
 
AgentMode agent_mode () const
 
bool isTsnAgent () const
 
bool isTorAgent () const
 
bool IsForwardingEnabled () const
 
bool isServerGatewayMode () const
 
bool isVcpeGatewayMode () const
 
bool isPbbGatewayMode () const
 
GatewayMode gateway_mode () const
 
const AddressListcompute_node_address_list () const
 
void BuildAddressList (const std::string &val)
 
void SplitByDelimiter (const std::string &txt, std::vector< std::string > &strs, char ch)
 
std::string exception_packet_interface () const
 
const std::vector< std::string > & physical_interface_pci_addr_list () const
 
const std::vector< std::string > & physical_interface_mac_addr_list () const
 
std::string agent_base_dir () const
 
const std::string & bgp_as_a_service_port_range () const
 
const std::vector< uint16_t > & bgp_as_a_service_port_range_value () const
 
uint32_t services_queue_limit ()
 
uint32_t bgpaas_max_shared_sessions () const
 
void set_bgpaas_max_shared_sessions (uint32_t val)
 
const SandeshConfigsandesh_config () const
 
uint16_t flow_thread_count () const
 
void set_flow_thread_count (uint16_t count)
 
bool flow_trace_enable () const
 
void set_flow_trace_enable (bool val)
 
bool flow_use_rid_in_hash () const
 
uint16_t flow_task_latency_limit () const
 
void set_flow_task_latency_limit (uint16_t count)
 
uint16_t max_sessions_per_aggregate () const
 
uint16_t max_aggregates_per_session_endpoint () const
 
uint16_t max_endpoints_per_session_msg () const
 
std::string ksync_thread_cpu_pin_policy () const
 
uint32_t tbb_thread_count () const
 
uint32_t tbb_exec_delay () const
 
uint32_t tbb_schedule_delay () const
 
uint32_t tbb_keepawake_timeout () const
 
uint32_t task_monitor_timeout_msec () const
 
uint16_t min_aap_prefix_len () const
 
uint16_t vmi_vm_vn_uve_interval () const
 
uint32_t vmi_vm_vn_uve_interval_msecs () const
 
uint16_t fabric_snat_hash_table_size () const
 
bool restart_backup_enable () const
 
void set_restart_backup_enable (bool val)
 
uint64_t restart_backup_idle_timeout () const
 
const std::string & restart_backup_dir () const
 
uint16_t restart_backup_count () const
 
bool restart_restore_enable () const
 
uint64_t restart_restore_audit_timeout () const
 
const std::string huge_page_file_1G (uint16_t index) const
 
const std::string huge_page_file_2M (uint16_t index) const
 
uint32_t pkt0_tx_buffer_count () const
 
void set_pkt0_tx_buffer_count (uint32_t val)
 
bool measure_queue_delay () const
 
void set_measure_queue_delay (bool val)
 
const std::set< uint16_t > & nic_queue_list () const
 
uint16_t get_nic_queue (uint16_t queue)
 
uint16_t default_nic_queue () const
 
void add_nic_queue (uint16_t queue, uint16_t nic_queue)
 
const LlgrParamsllgr_params () const
 
void set_mac_learning_thread_count (uint32_t threads)
 
uint32_t mac_learning_thread_count () const
 
void set_mac_learning_add_tokens (uint32_t add_tokens)
 
uint32_t mac_learning_add_tokens () const
 
void set_mac_learning_update_tokens (uint32_t update_tokens)
 
uint32_t mac_learning_update_tokens () const
 
void set_mac_learning_delete_tokens (uint32_t delete_tokens)
 
uint32_t mac_learning_delete_tokens ()
 
bool qos_priority_tagging () const
 
bool IsConfiguredTsnHostRoute (std::string addr) const
 
bool mvpn_ipv4_enable () const
 
void set_mvpn_ipv4_enable (bool val)
 
bool cat_is_agent_mocked () const
 
bool cat_is_dpdk_mocked () const
 
std::string cat_ksocketdir () const
 
float vr_object_high_watermark () const
 
const Ip4Addressloopback_ip () const
 

Private Member Functions

virtual void ProcessArguments ()
 
virtual void ParseTorArguments ()
 
 DISALLOW_COPY_AND_ASSIGN (TorAgentParam)
 

Private Attributes

TorInfo tor_info_
 
uint16_t local_port_
 

Additional Inherited Members

- Public Attributes inherited from AgentParam
std::map< std::string, uint32_t > trace_buff_size_map
 
std::map< std::string,
uint32_t >::iterator 
trace_buff_size_iter
 
- Static Public Attributes inherited from AgentParam
static const uint32_t kAgentStatsInterval = (30 * 1000)
 
static const uint32_t kFlowStatsInterval = (1000)
 
static const uint32_t kVrouterStatsInterval = (30 * 1000)
 
- Protected Member Functions inherited from AgentParam
void set_hypervisor_mode (HypervisorMode m)
 
virtual void InitFromSystem ()
 
virtual void InitFromConfig ()
 
virtual void ReInitFromConfig ()
 
virtual void DebugInitFromConfig ()
 
virtual void ProcessTraceArguments ()
 
boost::property_tree::ptree & tree ()
 
template<typename ValueType >
bool GetValueFromTree (ValueType &var, const std::string &val)
 
bool GetIpAddress (const std::string &str, Ip4Address *addr)
 
bool ParseIp (const std::string &key, Ip4Address *server)
 
bool ParseServerList (const std::string &key, Ip4Address *s1, Ip4Address *s2)
 
bool ParseAddress (const std::string &addr_string, Ip4Address *server, uint16_t *port)
 
bool ParseServerList (const std::string &key, Ip4Address *server1, uint16_t *port1, Ip4Address *server2, uint16_t *port2)
 
void ParseIpArgument (const boost::program_options::variables_map &var_map, Ip4Address &server, const std::string &key)
 
bool ParseServerListArguments (const boost::program_options::variables_map &var_map, Ip4Address &server1, Ip4Address &server2, const std::string &key)
 
bool ParseServerListArguments (const boost::program_options::variables_map &var_map, Ip4Address *server1, uint16_t *port1, Ip4Address *server2, uint16_t *port2, const std::string &key)
 
void ParseTestFrameworkArguments (const boost::program_options::variables_map &var_map)
 

Detailed Description

Definition at line 13 of file tor_agent_param.h.

Member Enumeration Documentation

Enumerator
INVALID 
OVS 

Definition at line 15 of file tor_agent_param.h.

Constructor & Destructor Documentation

TorAgentParam::TorAgentParam ( )
explicit

Definition at line 20 of file tor_agent_param.cc.

TorAgentParam::~TorAgentParam ( )
virtual

Definition at line 24 of file tor_agent_param.cc.

Member Function Documentation

void TorAgentParam::AddOptions ( )

Definition at line 27 of file tor_agent_param.cc.

Here is the call graph for this function:

TorAgentParam::DISALLOW_COPY_AND_ASSIGN ( TorAgentParam  )
private
int TorAgentParam::ha_stale_route_interval ( ) const
inline

Definition at line 56 of file tor_agent_param.h.

int TorAgentParam::keepalive_interval ( ) const
inline

Definition at line 55 of file tor_agent_param.h.

void TorAgentParam::ParseTorArguments ( )
privatevirtual

Definition at line 63 of file tor_agent_param.cc.

Here is the call graph for this function:

void TorAgentParam::ProcessArguments ( )
privatevirtual

Reimplemented from AgentParam.

Definition at line 57 of file tor_agent_param.cc.

Here is the call graph for this function:

std::string TorAgentParam::ssl_cacert ( ) const
inline

Definition at line 54 of file tor_agent_param.h.

std::string TorAgentParam::ssl_cert ( ) const
inline

Definition at line 52 of file tor_agent_param.h.

std::string TorAgentParam::ssl_privkey ( ) const
inline

Definition at line 53 of file tor_agent_param.h.

std::string TorAgentParam::tor_id ( ) const
inline

Definition at line 47 of file tor_agent_param.h.

Ip4Address TorAgentParam::tor_ip ( ) const
inline

Definition at line 49 of file tor_agent_param.h.

uint16_t TorAgentParam::tor_port ( ) const
inline

Definition at line 51 of file tor_agent_param.h.

std::string TorAgentParam::tor_protocol ( ) const
inline

Definition at line 48 of file tor_agent_param.h.

Ip4Address TorAgentParam::tsn_ip ( ) const
inline

Definition at line 50 of file tor_agent_param.h.

int TorAgentParam::Validate ( )
virtual

Reimplemented from AgentParam.

Definition at line 82 of file tor_agent_param.cc.

Member Data Documentation

uint16_t TorAgentParam::local_port_
private

Definition at line 65 of file tor_agent_param.h.

TorInfo TorAgentParam::tor_info_
private

Definition at line 64 of file tor_agent_param.h.


The documentation for this class was generated from the following files: