You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

An LNet router is the node with only LNet running and without Lustre FS mounted on it. With the Multi-Rail feature added and other changes on the LNet, it is significant to test the LNet routers and ensure they work as expected.

Test Cases

1. Router Configuration Tests

1.1 Add/Delete routes on the router using lnetctl

UT ID: rtr_test_cfg_01

Description:

        - Add routes
        - Ensure that routes are added
        - Delete routes
        - Ensure that routes are deleted


def lcmd_test_add_route():
        rc, out = commands.getstatusoutput(LNETCTL + 'route add --net'+ argv[1] '--gateway' + argv[2])
        if (rc != 0): 
                print out 
                return False
        print "\nConfigured route successfully."

        rc, out = commands.getstatusoutput(LNETCTL+'route show')
        print out 
        if (rc != 0): 
                return False

def lcmd_test_del_route():
        rc, out = commands.getstatusoutput(LNETCTL + 'route del --net'+ argv[1] '--gateway' + argv[2])
        if (rc != 0): 
                print out 
                return False
        print "\nRoute deleted."

        rc, out = commands.getstatusoutput(LNETCTL+'route show')
        print out 
        if (rc != 0): 
                return False


1.2 Priority configuration test

UT ID: rtr_test_cfg_02

Description:

		- Configure priority on the router.
		- check if the correct priority is set on the router


1.3 Hop count configuration

UT ID: rtr_test_cfg_03

Description:

		- Configure hop on the router
		- check if the hop is set on the router


2. Route health check


UT ID: rtr_test_cfg_04
Description:

		- Configure a route on the router
		- check if the route works by passing traffic through it.


3. Multiple Routes Configuration Tests

3.1 Test for routes being used per Round-Robin

UT ID: rtr_test_cfg_05
Description:

		- Add 2 or more similar routes on the router
		- Pass traffic through the router
		- Ensure that all the routes are used in round-robin fashion


3.2 Test for routes being used per priority

UT ID: rtr_test_cfg_06

Description:

		- Add 2 or more routes on the router
		- Set different priorities on the routes
		- Pass traffic through the router
		- Test to ensure the highest priority route is used.


3.3 Test for routes be preferred per least hop count

UT ID: rtr_test_cfg_07

Description:

		- Add 2 or more routes on the router
		- Set different hop counts on the routes
		- Pass traffic through the router
		- Test to ensure the route with least hop count is used.



4. Routes Failover Tests

4.1 Bringing down a route

UT ID: rtr_test_cfg_08

Description:

		- Add 2 or more routes on the router
		- Run traffic through the router
		- Bring down one route.
		- Check the other routes take over
		- Make sure there are no dropped packets


4.2 Add a new route dynamically

UT ID: rtr_test_cfg_09

Description:

		- Add a route on the router
		- Run traffic through the router
		- Add a new route with same priority and hop count as the older route.
		- Check that traffic runs through new route as well
		- Check for the send statistics for the new route.


5. Router Buffer Pools Configuration Test

5.1 Configure router buffers

UT ID: rtr_test_cfg_10

Description:

		- Add a route on the router
		- Configure tiny, small and large buffer with different values on the router
		- Run varying size traffic through the router
		- Ensure the buffers are used


5.2 Reset Buffers

UT ID: rtr_test_cfg_11

Description:

		- Add a route on the router
		- Configure tiny, small and large buffer with value 0
		- Check the buffers value are set to system defaults



5.2 Test Buffers pools configuration with edge values

UT ID: rtr_test_cfg_12

Description:

		- Add a route on the router
		- Configure tiny, small and large buffer with less than minimum values
		- Check the 



6. Enabling/Disabling Routing Test

6.1 Enable/Disbale routing dynamically 

UT ID: rtr_test_cfg_13

Description:

		- Add a route on the router
		- Enable routing using lnetctl
		- Run traffic through the router
		- Ensure messages are sent and check the statistics
		- Disbale routing dynamically
		- Run traffic
		- Check the messages are not sent
		- Check dropped packets count
  • No labels