struct hash *upstream_hash;
struct timer_wheel *upstream_sg_wheel;
+ /*
+ * RP information
+ */
struct list *rp_list;
+ struct route_table *rp_table;
- struct list *ifchannel_list;
int iface_vif_index[MAXVIFS];
struct list *channel_oil_list;
struct hash *channel_oil_hash;
struct pim_msdp msdp;
+
+ struct list *ssmpingd_list;
+ struct in_addr ssmpingd_group_addr;
+
+ unsigned int keep_alive_time;
+ unsigned int rp_keep_alive_time;
+
+ bool ecmp_enable;
+ bool ecmp_rebalance_enable;
+
+ /* If we need to rescan all our upstreams */
+ struct thread *rpf_cache_refresher;
+ int64_t rpf_cache_refresh_requests;
+ int64_t rpf_cache_refresh_events;
+ int64_t rpf_cache_refresh_last;
+ int64_t scan_oil_events;
+ int64_t scan_oil_last;
+
+ int64_t nexthop_lookups;
+ int64_t nexthop_lookups_avoided;
+ int64_t last_route_change_time;
};
void pim_vrf_init(void);