Changing number of combined channels.ΒΆ

Change number of combined channels and check that RSS indirection table works as expected after that.

  1. Log initial state of RSS indirection table.

  2. Reset RSS indirection table to default state. This is done to ensure that if the number of combined channels is reduced so that some Rx queues disappear, it will not result in failure.

    • If IPv6 is checked, enable keep_addr_on_down setting for the IUT interface to avoid IPv6 address disappearance after changing number of channels.

  3. Change number of combined channels for the IUT interface. If two_power is TRUE, the new number should be a power of two.

  4. Log the new state of RSS indirection table.

  5. Check that now RSS indirection table is filled in an expected way: for every record N, Rx queue specified in it should be N modulo the number of combined channels.

  6. Test RSS indirection table on IUT by repeating a few times the following steps:

    • Create a connected pair of sockets of type sock_type on IUT and Tester, choosing ports randomly.

    • Send a few packets from Tester; find the Rx queue that received them on IUT. Check that this Rx queue matches the entry of RSS indirection table determined by addresses and ports of connected sockets.

  7. Change records of RSS indirection table on IUT.

  8. Again check RSS indirection table on IUT in the same way as before.

Parameters:

env

Testing environment:

sock_type

Socket type:

  • SOCK_STREAM

  • SOCK_DGRAM

two_power

If TRUE, new number of combined channels should be a power of two.