Skip to content

Commit e9b05a3

Browse files
authored
[vnetorch] ECMP for vnet tunnel routes with endpoint health monitor (sonic-net#1955)
What I did Add functions to create/remove next hop groups for vnet tunnel routes. Count the reference count of next hop groups to create and remove as needed. Share the counter of next hop groups with routeorch. Adapt route endpoint according to the BFD state of endpoints. Why I did it To add support for overlay ECMP. How I verified it Verify ECMP groups are properly created and removed with the functions.
1 parent bcb7d61 commit e9b05a3

File tree

4 files changed

+949
-18
lines changed

4 files changed

+949
-18
lines changed

orchagent/orchdaemon.cpp

+2-3
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,8 @@ bool OrchDaemon::init()
122122
TableConnector stateDbFdb(m_stateDb, STATE_FDB_TABLE_NAME);
123123
TableConnector stateMclagDbFdb(m_stateDb, STATE_MCLAG_REMOTE_FDB_TABLE_NAME);
124124
gFdbOrch = new FdbOrch(m_applDb, app_fdb_tables, stateDbFdb, stateMclagDbFdb, gPortsOrch);
125+
TableConnector stateDbBfdSessionTable(m_stateDb, STATE_BFD_SESSION_TABLE_NAME);
126+
gBfdOrch = new BfdOrch(m_applDb, APP_BFD_SESSION_TABLE_NAME, stateDbBfdSessionTable);
125127

126128
vector<string> vnet_tables = {
127129
APP_VNET_RT_TABLE_NAME,
@@ -309,9 +311,6 @@ bool OrchDaemon::init()
309311

310312
gMacsecOrch = new MACsecOrch(m_applDb, m_stateDb, macsec_app_tables, gPortsOrch);
311313

312-
TableConnector stateDbBfdSessionTable(m_stateDb, STATE_BFD_SESSION_TABLE_NAME);
313-
gBfdOrch = new BfdOrch(m_applDb, APP_BFD_SESSION_TABLE_NAME, stateDbBfdSessionTable);
314-
315314
gNhgMapOrch = new NhgMapOrch(m_applDb, APP_FC_TO_NHG_INDEX_MAP_TABLE_NAME);
316315

317316
/*

0 commit comments

Comments
 (0)