Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multicast routing offload #156

Conversation

LKomaryanskiy
Copy link
Collaborator

@LKomaryanskiy LKomaryanskiy commented Aug 23, 2023

This PR implements offload for IPv4 multicast routing traffic.
The multicast offload can be disabled via sysfs the same as general L3 offload by writing zero to the following file:
echo 0 > /sys/devices/platform/soc/e68c0000.ethernet/l3_offload
Without offload, iperf shows about 25-30 Mbits/sec bandwidth while routing between TSNs. With offload it is increased up to 950-960 Mbits/sec.
Please, note: for testing multicast routing some multicast daemon (e.g.smcroute) should be launched with appropriate configuration.

@LKomaryanskiy LKomaryanskiy force-pushed the multicast-routing-offload branch 4 times, most recently from 5e37475 to 9b65075 Compare August 28, 2023 12:09
Copy link

@firscity firscity left a comment

Choose a reason for hiding this comment

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

Reviewed-by: Dmytro Firsov <[email protected]>

Implemented FIB multicast routing notifiers needed for offloading
multicast traffic. The notifier is triggered when kernel multicast
routing table is changed. Since exact addresses are passed as parameters
and it is possible to define interfaces for forwarding, unlike generic
L3 offloading, the notifier is able to add a rule to the L3 table at once.

Signed-off-by: Leonid Komarianskyi <[email protected]>
Reviewed-by: Dmytro Firsov <[email protected]>
@LKomaryanskiy
Copy link
Collaborator Author

@firscity thank you for your close review. Added RB tag.

@lorc lorc merged commit 73cab12 into xen-troops:v5.10.41/rcar-5.1.7.rc11-xt Sep 1, 2023
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.

3 participants