Improving latency for high priority data using QOSPF - a QoS extension to OSPF protocol
1. Configuration of OSPF
Device under test: Network Routers
Component Under test: Dijkstra's Algorithm Code
Action: Execute route command on each router
Test pass criteria: Output should display the main routing table at each network device and should show route to directly connected
routers and to each host in the network.
Observation platform: CLI
Observations Made: After running the Dijkstra’s algorithm, each router has next hop IP for every host in the network.
Result: Test passed
2. Verification of OSPF topology
Device under test: Network
Component Under test: Dijkstra's Algorithm Code
Action: Ping from one End (host) node to another end (host) node
Test pass criteria: Ping request and reply goes through the network successfully.
Observation platform: CLI
Observations made: Ping response received for requests sent.
Result: Test passed
3. Test congestion reporting
Device under test: Network Routers
Component under Test: Congestion Reporter-Link Utilization Calculator
Action: Start iperf client on traffic generator.
Start iperf server on host (end) node.
Start Congestion Reporter module on router on other end.
Test pass criteria: Cost of the interface sending the Iperf traffic should increase over time.
Observation: Cost of the interface is seen to increase
Observation platform: CLI
Result: Test passed
4.Test DSCP marker
Device under test: Host Node
Component Under Test: DSCP bit setter
Action: Use the following configuration command to set the DSCP bit to 1 for all Video packets.
sudo iptables -t mangle -A OUTPUT -p udp -m udp --sport 10000:65000 -j DSCP --set-dscp 1
Take tcpdump on the outgoing interface.
Test pass criteria: DSCP bit in IPv4 header in layer 3 is set to 1
Observation platfrom: Wireshark
Observations made: DSCP bit was set to 1.
Result: Test passed
5. Distribution of LSAs to all the routers in the topology.
Device under test: Network Routers
Component Under Test: LSA Handler
Action:
Run the LSA handler and QoS forwarding table creator on all network routers.
Test LSA sender is used to change the advertised link costs. (The link costs to be advertised are manually changed)
Link cost on the outgoing interface from Node 3 to Node 4 is changed.
Test pass criteria: All router nodes receive LSA and LSA should not loop in the network.
Observations Made:
1. LSA is originated by Node 3.
2. LSA is distributed to all the router Nodes i.e. Node 1, Node 2, node 4.
No loops are formed.
Observation platform: CLI
Result: Test passed
6.LSA sent to local host when congestion crosses a threshold.
Device under test: Network Routers
Component under test: Congestion Reporter-LSA Sender
Action: Check the path costs on devices in the topology
Introduce congestion on the some paths.
Check cost on the interfaces that send the traffic.
Test pass criteria: Cost of the interface that is sending traffic should increase
Observation platform: CLI and Wireshark
Observation: Cost of the interface that is sending traffic is seen to increase
Result: Test passed
7. Test creation of multiple routing tables
Device under test: Network Routers
Component under test: QoS Forwarding Table Creator.
Action: Check for the routing table using the following command on Node 4.
Test pass criteria: QoSRT table populated with route entries for Node 0 and Node 5 should be seen.
Observation platfrom: CLI
Observation: QoSRT routing table seen on Node 4
Result: Test passed
8. Test IP lookup and forwarding
Device under test: Network Routers
Component under test: QoS Forwarding Table Creator
Action: Send normal ping from Host A to Host B .
Send ping with DSCP set to 1 from host A to Host B.
Test pass criteria:The path followed by normal ping packet is different from the path followed by the ping packet with DSCP bit set to 1.
Observation platfrom: CLI
Observation: Packets follow the QoS routing table when the DSCP bit is set.
Result: Test passed
9. QoS 2 packet gets routed correctly
Device under test: Network Topology
Components under test: All Components
Action: Send Normal Ping from Node 0 to Node 1
Test pass criteria:The paths from main table at each router are followed by the packet
Observation platfrom: CLI
Observation: The ping packet follows the routes from the main table
Result: Test passed
10. QoS 1 packet gets routed correctly in congested network
Device under test: Network Topology
Components under test: All Components
Action: 1.Send Ping with DSCP bit set to 1 from Node 0 to Node 1.
2.Introduce congestion in network such that it intersects with the path originally follwed by QoS 1 packets.
3.Check the path followed by QoS1 packets before and after congestion is introduced.
Test pass criteria: QoS 1 packets should follow less congested path.
Observation platfrom: CLI, Wireshark capture on Node 4 interfaces connecting node 2 and node 3.
Observation: QoS1 packets change path : from node 5, node 4, node 3 , node 1 , node 0 to node 5, node 4 , node 2, node 1, node 0 .
As congestion is increased on the node 4 to node 3 interface.
Result: Test passed