Skip to content

Improve Route performance HLD#1659

Open
liuh-80 wants to merge 15 commits intosonic-net:masterfrom
liuh-80:dev/liuh/zmq_route
Open

Improve Route performance HLD#1659
liuh-80 wants to merge 15 commits intosonic-net:masterfrom
liuh-80:dev/liuh/zmq_route

Conversation

@liuh-80
Copy link
Contributor

@liuh-80 liuh-80 commented Apr 15, 2024

Improve Route performance HLD

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines will not run the associated pipelines, because the pull request was updated after the run command was issued. Review the pull request again and issue a new run command.

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

@liuh-80 liuh-80 requested a review from qiluo-msft March 20, 2025 03:04
@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

@liuh-80 liuh-80 changed the title Improve Route performance with ZMQ Improve Route performance Mar 20, 2025
@liuh-80 liuh-80 changed the title Improve Route performance Improve Route performance HLD Mar 20, 2025
@qiluo-msft qiluo-msft requested a review from rlhui March 21, 2025 00:48
@liuh-80 liuh-80 requested a review from abdosi March 21, 2025 02:12
@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

qiluo-msft pushed a commit to sonic-net/sonic-buildimage that referenced this pull request May 6, 2025
…route_zmq_enabled. (#22451)

Add Orchagent ZMQ table feature flag: orch_dash_zmq_enabled and orch_route_zmq_enabled

Why I did it
On current image, orchagent only enable ZMQ on Dash tables, so use -q option to control the ZMQ feature is enough.

However, we plan to improve route performance by enable ZMQ between fpmsyncd and orchagent. sonic-net/SONiC#1659

Then there will be 2 features on orchagent share same ZMQ address, so using -q to control the Dash ZMQ feature is not enough.

For Dash, we plan to migrate to enable/disable with the 'orch_dash_zmq_enabled' feature flag. There will be another PR in orchagent to make Dash enable/disable ZMQ with this flag.

And for improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag.

Work item tracking
Microsoft ADO (number only):32582830
How I did it
Add orch_dash_zmq_enabled and orch_route_zmq_enabled field to DEVICE_METADATA table in config_db.

orch_dash_zmq_enabled:
Control enable/disable ZMQ on Dash feature.

orch_route_zmq_enabled:
Control enable/disable ZMQ between fpmsyncd and orchagent for improve route performance.

How to verify it
Pass all test case.

Manually verified orch_zmq_tables.conf can generate correctly according to CONFIG_DB

Description for the changelog
Add Orchagent ZMQ table feature flag: orch_dash_zmq_enabled and orch_route_zmq_enabled
prsunny pushed a commit to sonic-net/sonic-swss that referenced this pull request Jun 18, 2025
Improve orchagent to enable Dash ZMQ by feature flag.

Why I did it
On current image, orchagent only enable ZMQ on Dash tables, so use -q option to control the ZMQ feature is enough.

However, we plan to improve route performance by enable ZMQ between fpmsyncd and orchagent. sonic-net/SONiC#1659

Then there will be 2 features on orchagent share same ZMQ address, so using -q to control the Dash ZMQ feature is not enough.

For Dash, we plan to migrate to enable/disable with the 'orch_dash_zmq_enabled' feature flag. There will be another PR in orchagent to make Dash enable/disable ZMQ with this flag.

And for improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag.

ZMQ feature flag add by following PR:
sonic-net/sonic-buildimage#22451
divyagayathri-hcl pushed a commit to divyagayathri-hcl/sonic-swss that referenced this pull request Jun 22, 2025
Improve orchagent to enable Dash ZMQ by feature flag.

Why I did it
On current image, orchagent only enable ZMQ on Dash tables, so use -q option to control the ZMQ feature is enough.

However, we plan to improve route performance by enable ZMQ between fpmsyncd and orchagent. sonic-net/SONiC#1659

Then there will be 2 features on orchagent share same ZMQ address, so using -q to control the Dash ZMQ feature is not enough.

For Dash, we plan to migrate to enable/disable with the 'orch_dash_zmq_enabled' feature flag. There will be another PR in orchagent to make Dash enable/disable ZMQ with this flag.

And for improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag.

ZMQ feature flag add by following PR:
sonic-net/sonic-buildimage#22451
divyagayathri-hcl pushed a commit to divyagayathri-hcl/sonic-swss that referenced this pull request Jun 23, 2025
Improve orchagent to enable Dash ZMQ by feature flag.

Why I did it
On current image, orchagent only enable ZMQ on Dash tables, so use -q option to control the ZMQ feature is enough.

However, we plan to improve route performance by enable ZMQ between fpmsyncd and orchagent. sonic-net/SONiC#1659

Then there will be 2 features on orchagent share same ZMQ address, so using -q to control the Dash ZMQ feature is not enough.

For Dash, we plan to migrate to enable/disable with the 'orch_dash_zmq_enabled' feature flag. There will be another PR in orchagent to make Dash enable/disable ZMQ with this flag.

And for improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag.

ZMQ feature flag add by following PR:
sonic-net/sonic-buildimage#22451
prsunny pushed a commit to sonic-net/sonic-swss that referenced this pull request Jun 23, 2025
* Improve route orch performance by enable ZMQ

Why I did it
For improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag, HLD: sonic-net/SONiC#1659

ZMQ feature flag add by following PR, because ZMQ flag renamed. may need another PR to update:
sonic-net/sonic-buildimage#22451
liuh-80 added a commit to liuh-80/sonic-swss that referenced this pull request Aug 31, 2025
Improve orchagent to enable Dash ZMQ by feature flag.

Why I did it
On current image, orchagent only enable ZMQ on Dash tables, so use -q option to control the ZMQ feature is enough.

However, we plan to improve route performance by enable ZMQ between fpmsyncd and orchagent. sonic-net/SONiC#1659

Then there will be 2 features on orchagent share same ZMQ address, so using -q to control the Dash ZMQ feature is not enough.

For Dash, we plan to migrate to enable/disable with the 'orch_dash_zmq_enabled' feature flag. There will be another PR in orchagent to make Dash enable/disable ZMQ with this flag.

And for improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag.

ZMQ feature flag add by following PR:
sonic-net/sonic-buildimage#22451
liuh-80 added a commit to liuh-80/sonic-swss that referenced this pull request Aug 31, 2025
* Improve route orch performance by enable ZMQ

Why I did it
For improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag, HLD: sonic-net/SONiC#1659

ZMQ feature flag add by following PR, because ZMQ flag renamed. may need another PR to update:
sonic-net/sonic-buildimage#22451
Janetxxx pushed a commit to Janetxxx/sonic-swss that referenced this pull request Nov 10, 2025
Improve orchagent to enable Dash ZMQ by feature flag.

Why I did it
On current image, orchagent only enable ZMQ on Dash tables, so use -q option to control the ZMQ feature is enough.

However, we plan to improve route performance by enable ZMQ between fpmsyncd and orchagent. sonic-net/SONiC#1659

Then there will be 2 features on orchagent share same ZMQ address, so using -q to control the Dash ZMQ feature is not enough.

For Dash, we plan to migrate to enable/disable with the 'orch_dash_zmq_enabled' feature flag. There will be another PR in orchagent to make Dash enable/disable ZMQ with this flag.

And for improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag.

ZMQ feature flag add by following PR:
sonic-net/sonic-buildimage#22451
Janetxxx pushed a commit to Janetxxx/sonic-swss that referenced this pull request Nov 10, 2025
* Improve route orch performance by enable ZMQ

Why I did it
For improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag, HLD: sonic-net/SONiC#1659

ZMQ feature flag add by following PR, because ZMQ flag renamed. may need another PR to update:
sonic-net/sonic-buildimage#22451
balanokia pushed a commit to balanokia/sonic-swss that referenced this pull request Nov 17, 2025
Improve orchagent to enable Dash ZMQ by feature flag.

Why I did it
On current image, orchagent only enable ZMQ on Dash tables, so use -q option to control the ZMQ feature is enough.

However, we plan to improve route performance by enable ZMQ between fpmsyncd and orchagent. sonic-net/SONiC#1659

Then there will be 2 features on orchagent share same ZMQ address, so using -q to control the Dash ZMQ feature is not enough.

For Dash, we plan to migrate to enable/disable with the 'orch_dash_zmq_enabled' feature flag. There will be another PR in orchagent to make Dash enable/disable ZMQ with this flag.

And for improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag.

ZMQ feature flag add by following PR:
sonic-net/sonic-buildimage#22451
balanokia pushed a commit to balanokia/sonic-swss that referenced this pull request Nov 17, 2025
* Improve route orch performance by enable ZMQ

Why I did it
For improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag, HLD: sonic-net/SONiC#1659

ZMQ feature flag add by following PR, because ZMQ flag renamed. may need another PR to update:
sonic-net/sonic-buildimage#22451
@stepanblyschak
Copy link
Contributor

@liuh-80 RouteOrch also publishes route to APPL_STATE_DB - https://github.com/sonic-net/sonic-swss/blob/master/orchagent/routeorch.cpp#L3162 for route programming feedback to zebra.
This is using Redis Pipeline, do you plan to move it to ZMQ?

@qiluo-msft
Copy link
Contributor

@liuh-80 RouteOrch also publishes route to APPL_STATE_DB - https://github.com/sonic-net/sonic-swss/blob/master/orchagent/routeorch.cpp#L3162 for route programming feedback to zebra. This is using Redis Pipeline, do you plan to move it to ZMQ?

No plan to move RouteOrch->APPL_STATE_DB to ZMQ.

theasianpianist pushed a commit to theasianpianist/sonic-swss that referenced this pull request Feb 4, 2026
Improve orchagent to enable Dash ZMQ by feature flag.

Why I did it
On current image, orchagent only enable ZMQ on Dash tables, so use -q option to control the ZMQ feature is enough.

However, we plan to improve route performance by enable ZMQ between fpmsyncd and orchagent. sonic-net/SONiC#1659

Then there will be 2 features on orchagent share same ZMQ address, so using -q to control the Dash ZMQ feature is not enough.

For Dash, we plan to migrate to enable/disable with the 'orch_dash_zmq_enabled' feature flag. There will be another PR in orchagent to make Dash enable/disable ZMQ with this flag.

And for improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag.

ZMQ feature flag add by following PR:
sonic-net/sonic-buildimage#22451

Signed-off-by: Lawrence Lee <lawlee@microsoft.com>
theasianpianist pushed a commit to theasianpianist/sonic-swss that referenced this pull request Feb 4, 2026
* Improve route orch performance by enable ZMQ

Why I did it
For improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag, HLD: sonic-net/SONiC#1659

ZMQ feature flag add by following PR, because ZMQ flag renamed. may need another PR to update:
sonic-net/sonic-buildimage#22451

Signed-off-by: Lawrence Lee <lawlee@microsoft.com>
baorliu pushed a commit to baorliu/sonic-swss that referenced this pull request Feb 23, 2026
Improve orchagent to enable Dash ZMQ by feature flag.

Why I did it
On current image, orchagent only enable ZMQ on Dash tables, so use -q option to control the ZMQ feature is enough.

However, we plan to improve route performance by enable ZMQ between fpmsyncd and orchagent. sonic-net/SONiC#1659

Then there will be 2 features on orchagent share same ZMQ address, so using -q to control the Dash ZMQ feature is not enough.

For Dash, we plan to migrate to enable/disable with the 'orch_dash_zmq_enabled' feature flag. There will be another PR in orchagent to make Dash enable/disable ZMQ with this flag.

And for improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag.

ZMQ feature flag add by following PR:
sonic-net/sonic-buildimage#22451

Signed-off-by: Baorong Liu <96146196+baorliu@users.noreply.github.com>
baorliu pushed a commit to baorliu/sonic-swss that referenced this pull request Feb 23, 2026
* Improve route orch performance by enable ZMQ

Why I did it
For improve route performance by enable ZMQ between fpmsyncd and orchagent, it will be controlled by the 'orch_route_zmq_enabled' flag, HLD: sonic-net/SONiC#1659

ZMQ feature flag add by following PR, because ZMQ flag renamed. may need another PR to update:
sonic-net/sonic-buildimage#22451

Signed-off-by: Baorong Liu <96146196+baorliu@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants