Date created: Wednesday, September 9, 2015 7:39:40 PM. Last modified: Tuesday, October 10, 2017 8:33:22 PM

Etherate Examples and Use Cases

So far Etherate has been used to test the following scenarios;

Check that interface MTU sizes are large enough:

 ./etherate -f 1500

Check that jumbo frames are supported as per vendor or carrier advertised:

# Run an MTU sweep test around common jumbo frame limit sizes
 ./etherate -u 8900 9300

Check that ethertype filters are working as expected:

 ./etherate -e 8848

Check that broadcast/multicast/unknown unicast filters are working as expected:

 ./etherate -d FF:FF:FF:FF:FF:FF
./etherate -d 01:00:5E:00:00:00
./etherate -d 11:22:33:44:55:66

Check that VLANs are being filtered as expected:

 ./etherate -v 1234

Check that the maximum number of MAC addresses are being restricted as expected:

 ./etherate -d 11:22:33:44:55:66 

Check that only the permitted MAC addresses are being permitted as expected:

 ./etherate -d 11:22:33:44:55:66

Check that expected link speeds are attainable:

# Default mode is maximum speed test
 ./etherate

Check that links with a queuing speed restriction on them (such as shapers) are limiting traffic as expected:

# Default mode is a maximum speed test
 ./etherate

Check that links with hard speed limiter on them (such as policers) are limiting traffic as expected:

# Default mode is maximum speed test
 ./etherate

Check that interface counters and NMS' support 64 bit values for network statistic gathering:

# 32 bit bytes counters @1Gbps = 4294967295/(1000000000/8) = 35 seconds 
./etherate -t 36

# 32 bit byte counters @10Gbps = 4294967295/(10000000000/8) = 4 seconds
./etherate -t 5

# 64 bit byte counters @1Gbps = (18446744073709551615/(1000000000/8)) /60/60/24/7/52 = 4692.4 years
./etherate :-(

# 64 bit byte counters @10Gbps = 469.2 years
./etherate :-(

# 32 bit frame/packet counters @1Gbps = (4294967295/((1000000000/8)/1500)) /60/60 = 14.5 hours
./etherate -t 52200

# 32 bit frame/packet counters @10Gbps = (4294967295/((10000000000/8)/1500)) /60/60 = 1.5 hours
./etherate -t 5400

# 64 bit frame/packet counters @ 1Gbps = (18446744073709551615/((1000000000/8)/1500)) /60/60/24/7/52 = 7038592.3 years
./etherate :-(

# 64 bit frame/packet counters @10Gbps = (18446744073709551615/((10000000000/8)/1500)) /60/60/24/7/52 = 703859.3 years
./etherate :-(

# 32 bit speed counters = 4294967295/1000/1000 = 4295 Mbps
./etherate -m 4296000000

# 64 bit speed ccounters = 18446744073709551615/1000/1000/1000/1000 = 18446744 Tbps
./etherate :-(

Check RTT over layer 2 to evade higher layer policy configurations:

 # Run the latency test mode which measures RTT
./etherate -q 1000 1000

Check packet loss over layer 2 to evade higher layer policy configurations:

 # Run the latency test mode which measures packet loss
./etherate -q 1000 1000

Planned test cases include;

Check that SVLAN/CVLAN rewrites are happening as expected
Check that MTU sizes are being honoured over pseudowires
Check Drop Eligible Indicator is honoured
Check the maximum MPLS label stack size
Check that only MPLS labelled packets within the permitted label range are being switched



Previous page: Etherate
Next page: Etherate FAQs