Skip to content

BetaReleaseRegressionTests

Adam edited this page Jan 15, 2013 · 11 revisions

Table of Contents

Beta Release Regression Tests

 '''Regression Tests''' 

This page describes how each feature was tested. This document identifies the test number, notes the test developer that wrote each test, describes the test in detail, identifies the location in the automated regression suite that calls the test, lists any known bugs with the test, and provides the date when the task was completed.

Test 1: Linux Driver

All of the following tests should be conducted under CentOS 4.4. All tests should be tested on kernel versions XXX with both non-SMP and SMP versions.

Test 1.1: Driver compiles

Owner :
Glen
Description :
Driver compiles without any errors
Location :
projects/driver/regress/driver_compile
Regression suite :
Yes
Known bugs/issues :
None
Status
Target Release :
1.0
Due date :
Done

Test 1.2: Driver installs in the correct location

Owner :
Glen
Description :
make install installs the driver in the correct location

nf2.ko should be installed in /lib/modules/`uname -r`/kernel/drivers/nf2.ko

Location :
projects/driver/regress/driver_install
Regression suite :
Yes
Known bugs/issues :
None
Due date :
Done

Test 1.3: nf2c[0-3] interfaces present in system with one NetFPGA card

Owner :
Glen
Description :
Booting system with single NetFPGA board results in nf2c[0-3]

Test using ls /sys/class/net and searching for nf2c

Test using ifconfig -a and searching for nf2c

Prerequisites :
Driver should be compiled and installed Machine should have one NetFPGA cards installed
Location :
projects/driver/regress/verify_4_interfaces
Regression suite :
Yes
Release :
1.0
Known bugs/issues :
Due date :
Done

Test 1.4: Ability to load driver with modprobe

Owner :
Glen
Description :
The driver should be loadable with modprobe.


Note: Driver loading on boot uses modprobe. A success for test " nf2c[0-3] interfaces present in system with one NetFPGA card " implies success for this test.

Invocation :
None (Test covered by "nf2c[0-3] interfaces present in system with one NetFPGA card")
Output :
None
Regression suite :
Yes
Known bugs/issues :
Due date :
Done

Test 1.5: Driver advertises MTU of 1500 bytes

Owner :
Glen
Description :
The driver advertises a maximum MTU of 1500 bytes to kernel. (This MTU excludes the Ethernet header and the Ethernet FCS.)

On a system with at least 1 NetFPGA card and the driver installed, run:

 ifconfig nf2c0

One of the lines should display the MTU. The MTU should state 1500 bytes. Example:

UP BROADCAST RUNNING MULTICAST <b>MTU:1500</b> Metric:1

Location :
projects/driver/regress/verify_mtu
Regression suite :
yes
Known bugs/issues :
Due date :
Done

Test 1.6: IP address can be assigned to nf2cX interfaces

Owner :
Adam
Description :
Perl script that clears all IP addresses from nf2c0-nf2c4. Sets the IP address for each interface and then checks the ifconfig to verify that the IP was set.
Location :
 reference_router/regress/test_interface
Output :
 Testing IP assignment to nf2c0...Success
 Testing IP assignment to nf2c1...Success
 Testing IP assignment to nf2c2...Success
 Testing IP assignment to nf2c3...Success
Regression suite :
Yes
Target :
Alpha
Known bugs/issues :
Due date :
Complete

Test 2: Hardware Tests

NIC Tests

Test 2.1.1: Tx/Rx Random Length Packets and Check Tx/Rx Counters Using PHY Loopback

Owner :
Jad
Description :
Send packets 50000 random length (60-1514 w/o CRC) packets from software out to the device on each interface with the PHY set in external loopback back mode. Check that the packet/byte Tx/Rx counters are correct.
Prerequisites :
The user has root access to the machine that hosts the NetFPGA 4-port NIC
Invocation :
 cd ${NF2_ROOT}/projects/reference_nic/regress/test_loopback_random
 ./run
Output :
 Test PASSES.
Regression suite :
Yes
Known bugs/issues :
Due date :
10/3/2007

Test 2.1.2: Tx/Rx Maximum Length Packets and Check Tx/Rx Counters Using PHY Loopback

Owner :
Jad
Description :
Send packets 50000 Maximum length (1514 w/o CRC) packets from software out to the device from each interface with the PHY set in external loopback back mode. Check that the packet/byte Tx/Rx counters are correct.
Prerequisites :
The user has root access to the machine that hosts the NetFPGA 4-port NIC
Invocation :
 cd ${NF2_ROOT}/projects/reference_nic/regress/test_loopback_maxsize
 ./run
Output :
 Test PASSES.
Regression suite :
Yes
Known bugs/issues :
Due date :
10/3/2007

Test 2.1.3: Tx/Rx Minimum Length Packets and Check Tx/Rx Counters Using PHY Loopback

Owner :
Jad
Description :
Send packets 50000 minimum length (60 w/o CRC) packets from software out to the device from each interface with the PHY set in external loopback back mode. Check that the packet/byte Tx/Rx counters are correct.
Prerequisites :
The user has root access to the machine that hosts the NetFPGA 4-port NIC
Invocation :
 cd ${NF2_ROOT}/projects/reference_nic/regress/test_loopback_minsize
 ./run
Output :
 Test PASSES.
Regression suite :
Yes
Known bugs/issues :
Due date :
10/3/2007

Test 2.1.4: Tx/Rx Random Length Packets and with bad CRCs Check Tx/Rx Counters and Drop Counters Using PHY Loopback

Owner :
Jad
Description :
Send packets 10000 random length (60-1514 w/o CRC) packets from software out to the device with the PHY set in external loopback back mode. Check that the packet/byte Tx/Rx counters are correct and there are 0 dropped packets.

Send packets 10000 random length (60-1514 w/o CRC) packets from software out to the device with the PHY set in external loopback back mode and the MAC set to not generate the CRC. Check that the packet/byte Tx/Rx counters are correct and that all these packets were dropped.

Reenable CRC generation and send packets 10000 random length (60-1514 w/o CRC) packets from software out to the device with the PHY set in external loopback back mode. Check that the packet/byte Tx/Rx counters are correct and that none of these packets were dropped.

Prerequisites :
The user has root access to the machine that hosts the NetFPGA 4-port NIC
Invocation :
 cd ${NF2_ROOT}/projects/reference_nic/regress/test_loopback_crc
 ./run
Output :
 Test PASSES.
Regression suite :
Yes
Known bugs/issues :
Due date :
10/3/2007

Test 2.1.5 Packets dropped when internal queues overflow (loopback)

Owner :
Glen
Description :
Verify that packets are dropped correctly and only at the SRAM output queues. Test using loopback functionality on PHY.
    1. Set PHY to loopback via MDIO
    2. Disable output queues
    3. Send in 10,000 maximum sized packets (1514 bytes) equally distributed between all four ports. This should be sufficient to fill up all SRAM queues. (1,514 * 10,000 = 15,140,000 bytes = 15 MB approx).
    4. Read byte counters and verify:
      • Number of bytes received is correct
      • Number of bytes arriving at SRAM output queues is identical to bytes exiting Ethernet MAC queues
      • Number of bytes dropped + number of bytes stored = number of bytes sent
    5. Verify that packets can still be sent/received through NetFPGA interfaces
Location :
reference_nic/regress/test_loopback_drop
Regression suite :
yes
Known bugs/issues :
Due date :
10/03/07

Test 2.1.6: IP address can be assigned to nf2cX interfaces

Owner :
Adam
Description :
Perl script that clears all IP addresses from nf2c0-nf2c4. Sets the IP address for each interface and then checks the ifconfig to verify that the IP was set.
Invocation :
 cd ${NF2_ROOT}/projects/reference_nic/regress/test_interface
 ./run
Output :
 Testing IP assignment to nf2c0...Success
 Testing IP assignment to nf2c1...Success
 Testing IP assignment to nf2c2...Success
 Testing IP assignment to nf2c3...Success
Regression suite : Yes
Target : Alpha
Known bugs/issues :
Due date : Complete

Router Tests

Test 2.2.1: Sending packets from CPU

Owner :
Jad
Description :
Send 10000 packets from the CPU on each port and check they are received correctly on an external interface. Check the counters.
    1. Connect nf2c0 to eth1 and nf2c1 to eth2
    2. put the PHY for ports 2 and 3 in internal loopback mode
    3. Send 10000 packets of random lengths out of the nf2cX interfaces
    4. Check that all packets were received at eth1/2 for packets sent out of nf2c0/1
    5. Check that all packets were received at nf2c2/3 for packets sent out of nf2c2/3 (due to loopback and LPM miss)
    6. Check that the Tx MAC counters show 10000 packets sent on each port
    7. Check that the Tx MAC counters show the correct number of bytes sent on each port
    8. Check that output port lookup counters show 40000 packets sent from the CPU
Prerequisites :
Run as root
Location :
projects/reference_router/regress/test_router_sendcpu
Output :
 Test PASSES
Regression suite :
Yes
Known bugs/issues :
Due date :
Complete

Test 2.2.2: Dropping Packets with Wrong Destination MAC address

Owner :
Surender
Description :
Send 300 packets to each interface from an external card with MAC addresses that do not match the ports they are received on. Check the counters.
    1. Initialize netfpga hardware
    2. Send 300 packet with wrong DA with random size from external ethernet port to router port
    3. Get the drop counter for the router port.
    4. Check that drop counter is 300.
    5. Repeat test for other router port.
Prerequisites :
Location :
projects/reference_router/regress/test_wrong_dest_mac
Output :
  SUCCESS!
Regression suite :
Yes
Known bugs/issues :
Due date :
Done

Test 2.2.3: Receiving Non-IP Packets

Owner :
Surender
Description :
Send 300 packets to each interface from an external card with an Ethertype that is not IP. Packets should be sent to the CPU. Check the counters.
    1. Initialize netfpga hardware
    2. Send 300 packet with EtherType= 0x802 with random size from external ethernet port to router port
    3. Get the drop counter for the router port.
    4. Check that packet are forwarded to CPU
    5. Check that drop counter is 300.
    6. Repeat test for other router port.
Prerequisites :
Location :
projects/reference_router/regress/test_nonip_packet
Output :
  SUCCESS!
Regression suite :
Yes
Known bugs/issues :
Due date :
Done

Test 2.2.4: Receiving packets with IP options or non IPv4

Owner :
Surender
Description :
Send 300 packets to each interface from an external card with either IP header options or version other than 4. Packets should be sent to the CPU. Check the counters.
    1. Initialize netfpga hardware
    2. Send 300 packet with IP_Version = 0x5 with random size from external ethernet port to router port
    3. Check that packet are forwarded to CPU
    4. Get the drop counter for the router port.
    5. Check that drop counter is 300.
    6. Repeat test for other router port.
Prerequisites :
Location :
projects/reference_router/regress/test_nonipv4_packet
Output :
  SUCCESS! 
Regression suite :
Yes
Known bugs/issues :
Due date :
Done

Test 2.2.5: Receiving packets with IP TTL <= 1

Owner :
Surender
Description :
Send 300 packets to each interface from an external card with IP time-to-live=1 or 0. Packets should be sent to the CPU. Check the counters.
    1. Initialize netfpga hardware
    2. Send 300 packet with TTL = 0x0 with random size from external ethernet port to router port
    3. Check that packet are forwarded to CPU
    4. Get the drop counter for the router port.
    5. Check that drop counter is 300.
    6. Repeat test for other router port.
Prerequisites :
Location :
projects/reference_router/regress/test_invalidttl_packet
Output :
  SUCCESS!
Regression suite :
Yes
Known bugs/issues :
Due date :
Done

Test 2.2.6: LPM Misses

Owner :
Adam
Description :
Send 300 packets to each interface from an external card to an IP address that does not match in the routing table. Packets should be sent to the CPU. Check LPM miss counter.
Prerequisites :
Run as root, Reference Router bitfile is loaded
Location :
projects/reference_router/regress/test_lpm_misses
Output :
 SUCCESS!
Regression suite :
Yes
Known bugs/issues :
Ignore 'Scalars leaked: 1'
Due date :
Complete

Test 2.2.7: ARP Misses

Owner :
Adam
Description :
Send 300 packets to each interface from an external card such that the routing table matches, but the ARP table misses. Packets should be sent to the CPU. Check ARP miss counter.
Prerequisites :
Run as root, Reference Router bitfile is loaded
Location :
/projects/reference_router/regress/test_arp_misses
Output :
 SUCCESS!
Regression suite :
Yes
Known bugs/issues :
Ignore 'Scalars leaked: 1'
Due date :
Complete

Test 2.2.8: Dropping packets with bad IP Checksum

Owner :
Surender
Description :
Send 300 IP packets to each interface from an external card with a bad IP header checksum. Check that the packets are all dropped. Check the counters.
    1. Initialize netfpga hardware
    2. Send 300 packet with bad ip checksum with random size from external ethernet port to router port
    3. Get the drop counter for the router port.
    4. Check that drop counter is 300.
    5. Repeat test for other router port.
Prerequisites :
Location :
projects/reference_router/regress/test_badipchecksum_packet
Output :
  SUCCESS!
Regression suite :
Yes
Known bugs/issues :
Due date :
Done

Test 2.2.9: IP Destination Address Filter Hit

Owner : Surender
Description :
Send 300 packets to each interface from an external card destined to IP addresses in the destination IP filter table (such as the router's IP addresses). Packets should be sent to the CPU. Check the counters.
Prerequisites :
Location :
projects/reference_router/regress/test_ipdest_filter_hit
Output :
  SUCCESS
Regression suite :
Yes
Known bugs/issues :
Due date :
Done

Test 2.2.10: Packet Forwarding

Owner :
Adam
Description :
Send 1000 packets to each eth1 with the routing table and arp table entries to route the traffic to eth2. Send 1000 packets to each eth2 with the routing table and arp table entries to route the traffic to eth1. This generates a routing table and an ARP table hit.
Prerequisites :
Run as root, Reference Router bitfile loaded
Location :
/projects/reference_router/regress/test_packet_fowarding
Output :
 SUCCESS!
Regression suite :
Yes
Known bugs/issues :
Ignore 'Scalars leaked: 1'
Due date :
Complete

Test 2.2.11: Longest Prefix Matching

Owner :
Adam
Description :
Insert two entries in the table with one entry being a subnet of the other. Send 100 packets matching the longer prefix and check that it was received on the correct interface.
Prerequisites :
Run as root, Reference Router bitfile loaded
Location :
/project/reference_router/regress/test_lpm
Output :
 SUCCESS!
Regression suite :
Yes
Known bugs/issues :
Ignore 'Scalars leaked: 1'
Due date :
Complete

Test 2.2.12: Longest Prefix Matching Next Hop

Owner :
Adam
Description :
Insert an entry in the routing table with next hop 0.0.0.0 then send 100 packets to that subnet. Check that the packets are being sent with the next hop set as the destination address.
Prerequisites :
Run as root, Reference Router bitfile loaded
Location :
/project/reference_router/regress/test_lpm_next_hop
Output :
 SUCCESS!
Regression suite :
Yes
Known bugs/issues :
Ignore 'Scalars leaked: 1'
Due date :
Complete

Test 2.2.13: Packets dropped when internal queues overflow (loopback)

Owner :
Glen
Description :
Verify that packets are dropped correctly and only at the SRAM output queues. Test using loopback functionality on PHY.
    1. Set PHY to loopback via MDIO
    2. Disable output queues
    3. Send in 1000 maximum sized packets (1514 bytes) equally distributed between all four ports. This should be sufficient to fill up all SRAM queues. (1,514 * 1000 = 1,514,000 bytes = 1.5 MB approx. Each queue is 512 KB).
    4. Read byte counters and verify:
      • Number of bytes received is correct
      • Number of bytes arriving at SRAM output queues is identical to bytes exiting Ethernet MAC queues
      • Number of bytes dropped + number of bytes stored = number of bytes sent
    5. Verify that packets can still be sent/received through NetFPGA interfaces
Location :
reference_nic/regress/test_loopback_drop
Regression suite :
yes
Known bugs/issues :
Due date :
10/03/07

Test 2.2.14: Output Queue Packet Limiting

Owner : Jad
Description :
    1. Set the maximum number of packets in the output queues to 10
    2. Disable servicing the output queues
    3. Send 10 packets that should be forwarded out of each port
    4. Check the counters to verify that there are 10 packets in each output queue
    5. Send 10 more packets to each output queue
    6. Enable the output queues to receive the first 10 packets sent
    7. Check the counters to verify that 10 packets were dropped at each output queue
    8. Reset the output queues limits to 0xffffffff
Prerequisites :
Location :
projects/reference_router/regress/test_oq_limit
Output :
Test PASSES
Regression suite :
Yes
Known bugs/issues :
Due date :
Complete

Test 2.2.15: IP Destination Address Filtering

Owner :
Jad
Description :
    1. Insert 192.168.4.1, 192.168.5.1, and 143.123.123.123 into the IP Destination Address Filter table
    2. Send 10 packets to each of these IP addresses on each port.
    3. Check that the packets are received by the CPU from each port
    4. Remove 192.168.4.1 from the table, and add it in the routing table and the ARP table.
    5. Repeat step 2, and check that the packets destined to 192.168.4.1 are forwarded.
Prerequisites :
Location :
projects/reference_router/regress/test_ipdest_filter
Output :
 Test PASSES
Regression suite :
Yes
Known bugs/issues :
Due date :
Completed

Test 2.2.16: CPU Output Queue Resizing

Owner :
Jianying
Description :
    1. Clear the ARP table and the Routing Table
    2. Set nf2c2 and nf2c3 PHYs in the loopback mode
    3. Clear all four CPU Output Queues' dropped packet counter and dequeued packet counter
    4. Set all four CPU Output Queue sizes to 12KB each. Disable CPU Output Queue dequeuing service
    5. Generate 9 packets for each interface of eth1, eth2, nf2c2, nf2c3. Every packet is of size (1024-8)=1016 bytes. Send these packets out of the interfaces eth1, eth2, nf2c2, nf2c3
    6. Check each CPU Output Queue stored packet counter is 8 packet and the dropped packet counter is 1
    7. Then enable all four CPU Output Queue dequeuing service, check each CPU Output Queue dequeued packet counter is 8, and the first 8 packets sent out at eth1, eth2, nf2c2, nf2c3 match the 8 packets which the driver receives from the CPU Output Queues for nf2c0, nf2c1, nf2c2, nf2c3
Prerequisites :
Run as root
Location :
projects/reference_router/regress/test_oq_sram_sz_cpu
Output :
 Test PASSES
Regression suite :
Yes
Known bugs/issues :
Due date :
Completed

Test 2.2.17: MAC Output Queue Resizing

Owner :
Jianying
Description :
    1. Clear the ARP table and the Routing Table
    2. Set nf2c2 and nf2c3 PHYs in the loopback mode
    3. Clear all four MAC Output Queues' dropped packet counter and dequeued packet counter
    4. Set all four MAC Output Queue sizes to 8KB each. Disable MAC Output Queue dequeuing service
    5. Generate 5 packets for each interface of nf2c0, nf2c1, nf2c2, nf2c3. Every packet is of size (1024-8)=1016 bytes. Make the driver send these packets out of the interfaces nf2c0, nf2c1, nf2c2, nf2c3
    6. Check each MAC Output Queue stored packet counter is 4 packet and the dropped packet counter is 1
    7. Then enable all four MAC Output Queue dequeuing service, check each MAC Output Queue dequeued packet counter is 4, and the first 4 packets the driver sent out at nf2c0, nf2c1, nf2c2, nf2c3 match the 4 packets which the driver receives from eth1, eth2 and CPU Output Queues for nf2c2, nf2c3
Prerequisites :
Run as root
Location :
projects/reference_router/regress/test_oq_sram_sz_mac
Output :
 Test PASSES
Regression suite :
Yes
Known bugs/issues :
Due date :
Completed

Test 2.2.18: Port Saturation via Loopback, small

Owner :
Brandon
Description :
    1. Clear the ARP table and the routing Table
    2. Set all ports to loopback mode
    3. Clear all MAC counters
    4. Set ARP table and routing table to loop packets within an interface, until TTL goes to zero
    5. Send 128B packets for up to (timeout) seconds, attempting to load each queue to 75% full
    6. Send packets, attempting to maintain each queue at 75% full
    7. Wait for packets to finish looping
    8. Print statistics for each interface
    9. Reset PHY
Prerequisites :
Run as root
Location :
projects/reference_router/regress/test_burn_small
Output :
 Test PASSES
Regression suite :
Yes
Known bugs/issues :
Due date :
Completed

Test 2.2.19: Port Saturation via Loopback, medium

Owner :
Brandon
Description :
    1. Clear the ARP table and the routing Table
    2. Set all ports to loopback mode
    3. Clear all MAC counters
    4. Set ARP table and routing table to loop packets within an interface, until TTL goes to zero
    5. Send 512B packets for up to (timeout) seconds, attempting to load each queue to 75% full
    6. Send packets, attempting to maintain each queue at 75% full
    7. Wait for packets to finish looping
    8. Print statistics for each interface
    9. Reset PHY
Prerequisites :
Run as root
Location :
projects/reference_router/regress/test_burn_small
Output :
 Test PASSES
Regression suite :
Yes
Known bugs/issues :
Due date :
Completed

Test 2.2.20: Port Saturation via Loopback, large

Owner :
Brandon
Description :
    1. Clear the ARP table and the routing Table
    2. Set all ports to loopback mode
    3. Clear all MAC counters
    4. Set ARP table and routing table to loop packets within an interface, until TTL goes to zero
    5. Send 1496B packets for up to (timeout) seconds, attempting to load each queue to 75% full
    6. Send packets, attempting to maintain each queue at 75% full
    7. Wait for packets to finish looping
    8. Print statistics for each interface
    9. Reset PHY
Prerequisites :
Run as root
Location :
projects/reference_router/regress/test_burn_small
Output :
 Test PASSES
Regression suite :
Yes
Known bugs/issues :
Due date :
Completed

Test 3: Software Router

Test 3.0.1: Software Router Compiles

Owner :
David
Description :
Software Router Compiles without errors
Location :
/projects/scone/regress/test_build
Output :
Regression suite :
Target :
Known bugs/issues :
Due date :
Completed

Test 3.0.2: Setting the MAC addresses of the router's ports

Owner :
David
Description :
Ensure that the software router component sets the MAC address registers in the hardware
Location :
/projects/scone/regress/test_mac_set
Output :
Returns 0 else returns 1 and prints error message
Regression suite :
will be called by Glen's Master suite (regression)
Target :
Known bugs/issues :
Due date :
Completed

Test 3.0.3: Setting the IP addresses of the router's ports

Owner :
David
Description :
Ensure that the software router component sets the IP address registers in the hardware
Location :
/projects/scone/regress/test_ip_set
Output :
Regression suite :
Target :
Known bugs/issues :
Due date :
Nov 2, 2007

Test 3.0.4: Setting default routes

Owner :
David
Description :
Ensure that the software router component sets any default routes into the hardware. Set default routes in the rtable file, after the software component has launched ensure that the routes are pushed into the hardware route table registers
Location :
/projects/scone/regress/test_rtable_set
Output :
Regression suite :
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.1: Disabled Interfaces Drop Packets

Owner :
David
Description :
Create a route that accepts packets in eth0 (nf2c0) and forwards them out eth1 (nf2c1). Disable eth1 (nf2c1), send packets to eth0 (nf2c0) that based on the routing rules will come out eth1 (nf2c1), ensure no packets come out of eth1 (nf2c1)
Location :
/projects/scone/regress/test_disabled_interfaces
Output :
Regression suite :
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.2: Non ip/arp ethertype

Owner :
Jianying
Description :
Ensure that ethernet packets whose next protocol is not ip or arp are dropped
Location :
projects/scone/regress/test_noniparp_ethtype
Output :
SUCCESS
Regression suite :
Yes
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.3: Arp Reply

Owner :
Jianying
Description :
Sending an arp request in to the software router for one of the ip addresses of its interfaces returns a correct arp reply out the same interface the arp request was received on
Location :
projects/scone/regress/test_arp_rpl
Output :
SUCCESS
Regression suite :
Yes
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.4: No Arp Reply

Owner :
Jianying
Description :
Sending an arp request in to the software router for an ip address that is not one of its interfaces does not return an arp reply
Location :
projects/scone/regress/test_arp_norpl
Output :
SUCCESS
Regression suite :
Yes
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.5: Proper Arp Table Updates

Owner :
Jianying
Description :
Create a route from interface 1 to interface 2. Send a packet in interface 1 that is destined for an ip on the route out of interface 2, an arp request should come out interface 2, reply with an arp reply, then ensure that the arp cache table in hardware is updated.
Location :
projects/scone/regress/test_arp_quepkt
Output :
SUCCESS
Regression suite :
Yes
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.6: Queued packets awaiting Arp reply

Owner :
Jianying
Description :
Create a route from interface 1 to interface 2. Send 2 packets in interface 1 that are destined for an ip on the route out of interface 2, an arp request should come out interface 2, reply with an arp reply, then ensure that both packets are sent out of interface 2 with the correct ethernet mac destinations.
Location :
projects/scone/regress/test_arp_quepkt
Output :
SUCCESS
Regression suite :
Yes
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.7: Non IPv4, options, fragmentation, bad checksum

Owner :
Jianying
Description :
Create 4 individual packets, one that is IP but not version 4, one with IPv4 header option, one that is fragmented, one with a bad checksum, and ensure none of them is routed.
Location :
projects/scone/regress/test_ip_error
Output :
SUCCESS
Regression suite :
Yes
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.8: Rtable miss

Owner :
Jianying
Description :
Send a packet in to the software component that will not get an rtable hit and confirm that an icmp destination unreachable packet comes out
Location :
projects/scone/regress/test_ip_rtblmiss
Output :
SUCCESS
Regression suite :
Yes
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.9: Incoming interface is outgoing interface

Owner :
Jianying
Description :
Create an rtable entry for a specific IP address to interface 1. Send a packet in to interface 1 for that destination IP. The packet should be dropped because the incoming interface matches the outgoing interface. An ICMP packet of network unreachable is generated and sent out of interface 1.
Location :
projects/scone/regress/test_ip_intfc
Output :
SUCCESS
Regression suite :
Yes
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.10: TTL decrement check

Owner :
Jianying
Description :
Ensure routed packets have decremented TTL's
Location :
projects/scone/regress/test_arp_quepkt
Output :
SUCCESS
Regression suite :
Yes
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.11: IP checksum

Owner :
Sara
Description :
Ensure routed packets have correct ip checksums
Location :
projects/scone/regress/test_ip_checksum
Output :
SUCCESS
Regression suite :
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.12: TTL expired

Owner :
Sara
Description :
Ensure that a packet with ttl 1 sent to the software component received an icmp ttl expired message
Pseudocode
Location :
/projects/scone/regress/test_ttl_expired
Output :
Success
Regression suite :
Target :
Test issues :
Known bugs/issues :
Due date :
Nov 6

Test 3.1.13: Correctly sent packets

Owner :
Sara
Description :
Ensure that a packet moving through the software component that gets an rtable hit and an arp table hit is correctly sent out
Location :
/projects/scone/regress/test_send_receive
Output :
SUCCESS
Regression suite :
Target :
Known bugs/issues :
Due date :
Completed

Test 3.1.14: Arp Request

Owner :
Sara
Description :
Ensure a packet sent in to be routed that does not have an existing ARP table entry generates a proper arp request
Location :
/projects/scone/regress/test_arp_req
Output :
SUCCESS
Regression suite :
Target :
Known bugs/issues :
Due date :
Nov 6

Test 3.1.15: TCP Port 23/80 connections

Owner :
Sara
Description :
Ensure that the software component replies to a TCP connection setup packet to any of its ips to ports 23/80 for telnet and http
Location :
/projects/scone/regress/test_tcp_port
Output :
SUCCESS
Regression suite :
Target :
Known bugs/issues :
Due date :
Nov 6

Test 3.1.16: UDP port unreachable

Owner :
Sara
Description :
Ensure any udp packets destined to the interface's ips reply with port unreachable
Location :
/project/scone/regress/test_udp_packet
Output :
SUCCESS
Regression suite :
Target :
Known bugs/issues :
Completed

Test 3.1.17: Unknown IP packet types

Owner :
Sara
Description :
Ensure any IP packets that are not pwospf/tcp/udp/icmp get dropped
Location :
projects/scone/regress/test_unknown_ip
Output :
SUCCESS
Regression suite :
Target :
Known bugs/issues :
Due date :
Nov 6

Test 3.1.18: Ping replies

Owner :
Sara
Description :
Ensure the software component replies to software icmp echo requests check if echo reply icmp packet is generated
Location :
projects/scone/regress/test_icmp_echo
Output :
SUCCESS
Regression suite :
Target :
Known bugs/issues :

Test 3.1.19: ICMP packets destined to interface ip's that are not echo request/replies

Owner :
Sara
Description :
Ensure that icmp packets destined to the software router that are not echo request/replies get dropped
Pseudocode
Location :
projects/scone/regress/test_icmp_notecho
Output :
SUCCESS
Regression suite :
Target :
Known bugs/issues :
Due date :
Nov 6

Test 4: Java GUI

Test 4.1: Quick start function to start router

Owner :
Neda
Description :
Checks if the GUI window appears on the screen
Location :
projects/gui_scone/regress/test_main_frame
Regression suite :
Yes
Target :
RR Alpha 1.0
Known bugs/issues :
None
Due date :
Done

Test 4.2: Adding/Removing/Modifying the routing table entries

Owner :
Neda
Description :
Checks if changes in Routing Table are reflected in hardware
Location :
projects/gui_scone/regress/test_routing_table
Regression suite :
Yes
Target :
RR Alpha 1.0
Known bugs/issues :
Changes in the output port columns are not reflected in registers until user changes the selected (highlighted row).
Due date :
Done

Test 4.3: Adding/Removing/Modifying the ARP table entries

Owner :
Neda
Description :
Checks if changes in ARP Table are reflected in hardware.
Location :
projects/gui_scone/regress/test_arp_table
Regression suite :
Yes
Target :
RR Alpha 1.0
Known bugs/issues :
None
Due date :
Done

Test 4.4: Configuring Port MAC addresses

Owner :
Neda
Description :
Checks if changes in Configuration Table are reflected in hardware
Location :
projects/gui_scone/regress/test_port_config_table
Commands to Enter
Regression suite :
Yes
Target :
RR Alpha 1.0
Known bugs/issues :
None
Due date :
Done

Test 4.5: PopUp Test

Owner :
Neda
Description :
Checks if all windows can be opened
Location :
projects/gui_scone/regress/test_popup
Regression suite :
Yes
Target :
RR Alpha 1.0
Known bugs/issues :
None
Due date :
Done

Test 5: Router Kit

Test 00: Build

Owner :
David
Description :
Builds Router Kit in the host environment
Prerequisites :
Location :
projects/router_kit/regress/test_00_make
Output :
Regression suite :
Yes
Known bugs/issues :
Due date :
Complete

Test 01: Set IP Destination Filters

Owner :
David
Description :
Parses IP addresses from the nf2cX interfaces and sets them in the IP destination filter table on the NetFPGA
Prerequisites :
Location :
projects/router_kit/regress/test_01_ip_dst_filter
Output :
Regression suite :
Yes
Known bugs/issues :
Due date :
Complete

Test 02: Set Route Table

Owner :
David
Description :
Parses the Linux kernel's routing table and places any routes that have an nf2cX interface as the exit port into the route table on the NetFPGA
Prerequisites :
Location :
projects/router_kit/regress/test_02_route_table
Output :
Regression suite :
Yes
Known bugs/issues :
Due date :
Complete

Test 03: Set ARP Table

Owner :
David
Description :
Parses the Linux kernel's ARP table and places the entries into the ARP table on the NetFPGA
Prerequisites :
Location :
projects/router_kit/regress/test_03_arp_table
Output :
Regression suite :
Yes
Known bugs/issues :
Due date :
Complete

Test 04: IP Packet Forwarding test

Owner :
David
Description :
Tests the ability to forward packets generated on eth1 through the NetFPGA (the first couple through the Linux kernel), then back out of the NetFPGA to be detected on eth2
Prerequisites :
Location :
projects/router_kit/regress/test_04_ip_packets
Output :
Regression suite :
Yes
Known bugs/issues :
Due date :
Complete
Clone this wiki locally