traffic['l2'] = {'framesize': packet_size}
if traffic['traffic_type'] == 'back2back':
+ self._duration = int(get_test_param('duration', 1))
+ self._trials = int(get_test_param('rfc2544_trials', 1))
result = self._traffic_gen_class.send_rfc2544_back2back(
traffic, trials=self._trials,
duration=self._duration)
If the number of received frames equals the number of frames that were
transmitted, the burst size should be increased and traffic is sent to
the DUT again. The value measured is the back-to-back value, that is the
- maximum burst size the DUT can handle without any frame loss.
+ maximum burst size the DUT can handle without any frame loss. Please note
+ a trial must run for a minimum of 2 seconds and should be repeated 50
+ times (at a minimum).
**Expected Result**:
The following are the metrics collected for this test:
- - The back-to-back value, which is the the number of frames in the
- longest burst that the DUT will handle without the loss of any
- frames.
+ - The average back-to-back value across the trials, which is
+ the number of frames in the longest burst that the DUT will
+ handle without the loss of any frames.
- CPU and memory utilization may also be collected as part of this
test, to determine the vSwitch's performance footprint on the system.
# the results file
return parse_ixnet_rfc_results(parse_result_string(output[0]))
- def send_rfc2544_back2back(self, traffic=None, trials=1, duration=20,
+ def send_rfc2544_back2back(self, traffic=None, trials=50, duration=2,
lossrate=0.0):
"""See ITrafficGenerator for description
"""
+ # NOTE 2 seconds is the recommended duration for a back 2 back
+ # test in RFC2544. 50 trials is the recommended number from the
+ # RFC also.
self.start_rfc2544_back2back(traffic, trials, duration, lossrate)
return self.wait_rfc2544_back2back()
- def start_rfc2544_back2back(self, traffic=None, trials=1, duration=20,
+ def start_rfc2544_back2back(self, traffic=None, trials=50, duration=2,
lossrate=0.0):
"""Start transmission.
"""
-destMacRetryDelay 5 \
-largeErrorThreshhold 2 \
-refreshLearnedInfoBeforeApply False \
- -enableMinFrameSize False \
+ -enableMinFrameSize True \
-macChangeOnFly False \
-waitTime 1 \
-enableInstantaneousStatsSupport False \
-inputParameters {{}}
ixNet setMultiAttrs $sg_rfc2544throughput/testConfig \
-protocolItem {} \
- -enableMinFrameSize False \
+ -enableMinFrameSize True \
-framesize $frameSize \
-reportTputRateUnit mbps \
-duration $duration \
-customLoadUnit percentMaxRate \
-randomLoadUnit percentMaxRate \
-incrementLoadUnit percentMaxRate \
- -binaryResolution 100 \
+ -binaryResolution 1000 \
-binaryBackoff 50 \
-binaryTolerance $tolerance \
-initialIncrementLoadRate 100 \
-countRandomLoadRate 1 \
-numFrames {100000} \
-loadRate 100 \
- -enableMinFrameSize False \
+ -enableMinFrameSize True \
-gap 3 \
-generateTrackingOptionAggregationFiles False \
-sendFullyMeshed False \