Add redirect_l2 test case #5406
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The redirect_l2 P4 program redirects an IPv4 packet to a specific port and changes the packet's source and destination mac addresses. It does that whenever the source IP address of the parsed packet matches a table entry. The entry's associated action will specify the new source and destination mac addresses along with the port where the program should redirect to.
In this test case, we add a table entry which redirects packets with source IP address 10.0.0.1 to port 1 and changes the mac source and destination addresses, respectively, to 00:01:02:03:04:05 and 06:07:08:09:11:12. The test case will send an IPv4 packet with source address 10.0.0.1 to port 0 and check whether the redirected IPv4 packet was sent to port 1