Skip to content

Improve orchagent to enable Dash ZMQ by feature flag.#3619

Merged
prsunny merged 28 commits intosonic-net:masterfrom
liuh-80:dev/liuh/improve_zmq_parameter
Jun 18, 2025
Merged

Improve orchagent to enable Dash ZMQ by feature flag.#3619
prsunny merged 28 commits intosonic-net:masterfrom
liuh-80:dev/liuh/improve_zmq_parameter

Conversation

@liuh-80
Copy link
Contributor

@liuh-80 liuh-80 commented Apr 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

How I did it

Check feature flag when initialize orchagent

Work item tracking
  • Microsoft ADO: 30468564

How to verify it

Pass all test cases.

Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006
  • 202012
  • 202106
  • 202111

Description for the changelog

Improve orchagent to enable Dash ZMQ by feature flag.

Link to config_db schema for YANG module changes

A picture of a cute animal (not mandatory but encouraged)

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liuh-80 liuh-80 changed the title Improve orchagent ZMQ parameter to support more event type. Improve orchagent ZMQ parameter to support more tables. Apr 22, 2025
@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liuh-80 liuh-80 force-pushed the dev/liuh/improve_zmq_parameter branch from 828b23b to 10fa204 Compare April 27, 2025 08:28
@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liuh-80 liuh-80 force-pushed the dev/liuh/improve_zmq_parameter branch from 8a20722 to c87ff47 Compare May 6, 2025 04:02
@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liuh-80 liuh-80 changed the title Improve orchagent ZMQ parameter to support more tables. Improve orchagent to enable ZMQ by feature flag. May 6, 2025
@liuh-80 liuh-80 changed the title Improve orchagent to enable ZMQ by feature flag. Improve orchagent to enable Dash ZMQ by feature flag. May 6, 2025
@mssonicbld
Copy link
Collaborator

/azp run

Copy link
Contributor

@prabhataravind prabhataravind left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added a comment about the feature naming and logs to avoid confusion.

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liuh-80
Copy link
Contributor Author

liuh-80 commented Jun 16, 2025

Added a comment about the feature naming and logs to avoid confusion.

Fixed

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Contributor

@prabhataravind prabhataravind left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@KrisNey-MSFT
Copy link

ok to merge @prsunny and @prabhataravind ?

@prsunny prsunny merged commit 3423a49 into sonic-net:master Jun 18, 2025
15 checks passed
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
qiluo-msft pushed a commit to sonic-net/sonic-buildimage that referenced this pull request Jul 17, 2025
Enable ZMQ on orchagent route table.

Why I did it
To enhance route performance, sonic-swss introduces a new feature enabling ZMQ communication between fpmsyncd and orchagent. With this change, the orchagent.sh script must be updated to always pass the ZMQ address parameter.

Additionally, the feature flag changed during code review of sonic-net/sonic-swss#3619, so yang model and config also need update in this PR.

Work item tracking
Microsoft ADO (number only): 32582830
How I did it
Update orchagent.sh and yang module.

How to verify it
Pass all test case
Manually verified with latest image.
@liuh-80 liuh-80 deleted the dev/liuh/improve_zmq_parameter branch August 31, 2025 14:37
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
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
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
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>
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>
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.

8 participants