Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
When correlated traffic TC is running, the traffic is
running only on uplink ports instead of both type of ports
(yardstick/network_services/traffic_profile/rfc2544.py +113).
Trex TG fails to get samples on downlink ports.
JIRA: YARDSTICK-1357
Change-Id: I66d78b73f2dc5bb531fe8607d0e46f60b828953e
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
|
|
JIRA: YARDSTICK-1196
Change-Id: I77b4772b9224ff5cd21fd9fc67eb7e4b821fcf77
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
|
|
When updating the IP packet in IxNextgen library, the IPv4 mask should
be defined in the following format: x.x.x.x
This mask defines the number of lower bits used to generate a random IP.
For example:
- mask length: 16
- mask string: 0.0.255.255
JIRA: YARDSTICK-1351
Change-Id: Ie3cbf0205aac83aea8d7f665bc068e8566238055
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
AclUknownActionTemplate -> AclUnknownActionTemplate
JIRA: YARDSTICK-1334
Change-Id: I796e080078c657c5e0e59144d24ec797e244a8f7
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
|
|
* changes:
Add IP mask to IxNetwork configuration
Improve NetworkServiceTestCase._get_ip_flow_range() function
|
|
Assign the IP mask to IxNetwork configuration, depending on the IP range
provided by the user in the traffic profile. In case of single IP, a
default mask will be provided:
- IP_VERSION_4_MASK = 24
- IP_VERSION_6_MASK = 64
JIRA: YARDSTICK-1351
Change-Id: I029473ab8b9966a76cf559ffef53b34ca11462ad
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
This new profile is based on the DPDK pktgen traffic generator. The traffic
generator is controlled using LUA [1]. Those string commands are sent to
the traffic generator using an open socket. Host address and open port are
needed parameters.
The following actions are implemented:
- start injection
- stop injection
- change injection rate
- clear all stats
- help message command
[1] http://pktgen-dpdk.readthedocs.io/en/latest/lua.html
JIRA: YARDSTICK-1345
Change-Id: I560a168d194cedc9fdba312ec84437933efc8d9b
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Add DPDK pktgen traffic generator. This traffic generator is designed
only to work in with a MQ aware runner. Implements two consumer methods:
- runner_method_start_iteration
- runner_method_stop_iteration
"run_traffic" method will only initialize the traffic profile object.
This traffic generator uses a socket port (LUA port, default 22022) to
send the command messages.
Link: http://pktgen-dpdk.readthedocs.io/en/latest/index.html
JIRA: YARDSTICK-1344
Change-Id: I89bba0f462fa1c22b33f1253f67f7c41e6e721a5
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Increase rounding digits in IXIA RFC2544 for:
- Drop percentage: 6 digits
- Rate: 5 digits, both for fps and % line rate.
JIRA: YARDSTICK-1338
Change-Id: Iae6e49dd3d15035452f28976af0b16222fa8e23c
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Accept line rate percentage or fps a initial rate for IXIA RFC2544 traffic profile:
traffic_profile:
traffic_type : IXIARFC2544Profile
frame_rate : 100%
traffic_profile:
traffic_type : IXIARFC2544Profile
frame_rate : 5000fps
JIRA: YARDSTICK-1336
Change-Id: I85b3dd0daf563bb7af098a3aa5bb872961fb009b
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
This new class is designed to be used in a ``GenericVNF`` object (VNF
or traffic generator) in a builder pattern. This consumer class will
be instantiated when initializing the ``GenericVNF`` derived object.
The ``GenericVNFConsumer`` endpoint is the ``GenericVNF``derived object
itself.
``GenericVNFEndpoint`` is an interface class to be inherited in a
``GenericVNF`` child object; the VNF object will implement the endpoints
methods.
NewVNF(GenericVNF, GenericVNFEndpoint):
def __init__(self, name, vnfd, task_id):
...
self._consumer = vnf_base.GenericVNFConsumer([task_id], self)
self._consumer.start_rpc_server()
JIRA: YARDSTICK-1293
Change-Id: I1bcd980352099e9ebefdab0c96d51aa46f6a1e54
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
|
|
"GenericTrafficGen.get_mq_producer_id" uses a wrong method to retrieve
the MQ producer ID. "MessagingProducer" ID is a property called "id".
JIRA: YARDSTICK-1312
Change-Id: Id72836b1cde59059359907bd3a315a1abb55778e
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
|
|
Refactor SSH handling and library mocks.
JIRA: YARDSTICK-1236
Change-Id: I591601f8ea8bf4bbd5c43300ff29d7930af5c3c6
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
SampleVNF source tree doesn't contain vPE VNF sources, thus the
installation of the vPE sampleVNF fails because of the changes.
Reverting.
This reverts commit 5bb855a82d960a4fb796e801ec9a9a22dc40b1ca.
Change-Id: I27e929e813a28847c2ca725031ec767633a36954
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
|
|
In Collector class [1], the information from the nodes is retrieved to
create a ResourceProfile object per node. If the node information is
empty, Collector should skip this node.
[1] https://github.com/opnfv/yardstick/blob/master/yardstick/network_services/collector/subscriber.py#L34
JIRA: YARDSTICK-1302
Change-Id: I84dff3e20881352263736b682a60a4f382960153
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
IxNet library is not setting correctly the IMIX definition per traffic
item. The correct input for "weightedRangePairs" parameter is:
[[64, 64, 10], [128, 128, 15], [512, 512, 5]]
JIRA: YARDSTICK-1296
Change-Id: Idb4034ce817250da5b9a434230b1be6dae0d3ba3
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
* changes:
Make "IterationIPC" MQ producer for VNF control messages
Enable traffic generator PID in "NSPerf" scenario setup
Enable the MQ producer in "SampleVNFTrafficGen" class
Add "TrafficGeneratorProducer" for "GenericTrafficGen" instances
Add "IterationIPC" runner
|
|
|
|
Now "NSPerf" scenario will inform about the traffic generator PIDs after
setup process. With this information, IterationIPC runner will be able
to receive the messages sent by those traffic generators and control
the main iteration loop.
The following example, using vFW as VNF and OpenStack as context, makes
use of this new runner implementation:
/samples/vnf_samples/nsut/vfw/
tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_iterationipc.yaml
JIRA: YARDSTICK-1127
Change-Id: I46b1368bc209680b88ff9fb5c3b9beadf6271ac9
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Now all traffic generators using the default implementation of
"ClientResourceHelper.run_traffic" will update the status of
the traffic injection using the MQ.
The available methods are listed in common.messsaging (VNF_METHOD_*):
- tg_method_started: VNF app started
- tg_method_finished: VNF app finished
- tg_method_iteration: VNF app execution loop started
JIRA: YARDSTICK-1127
Change-Id: I12829e1762fc20cc95da3b50767a66f031e25ee8
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Added "TrafficGeneratorProducer" class, a message producer specific for
"GenericTrafficGen" derived classes.
JIRA: YARDSTICK-1127
Change-Id: Icc87a6920155612e759a1d4d2f29028940c2e040
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
IXIA IxNetwork traffic profile defines an initial injection frame rate
for RFC2544 test cases:
schema: "isb:traffic_profile:0.1"
traffic_profile:
frame_rate : 20000
This value should be assigned to IXIARFC2544Profile.rate before the
initial injection period.
JIRA: YARDSTICK-1288
Change-Id: I29a334c7dbb863f680e45a1d3ab880aaf1fe166d
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Removed unneeded output and mock system calls.
JIRA: YARDSTICK-1270
Change-Id: I0e04a67cab592216280481c7145188c4f9045466
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
JIRA: YARDSTICK-1257
Change-Id: I6733bd49ac91985e8f3d7722e6990e8733bb430e
Signed-off-by: Chornyi, TarasX <tarasx.chornyi@intel.com>
|
|
JIRA: YARDSTICK-1219
The computed in/fwd throughputs displayed on the L2FWD,
L3FWD and VPE dashboards. The computed value is likely
4x the expected value.
It is required to return sampling information form Generator AND VNF at
least every 1 second.
Change-Id: I4435fd05ba3116ead836843a4c2fce133b767a28
Signed-off-by: Daniel Martin Buckley <daniel.m.buckley@intel.com>
|
|
JIRA: YARDSTICK-1252
CPU grouping in grafana for better representation
Throughput table is difficult to read as the tests
run longer the values can overlap
Default time in dashboard should be always last 1hour in
dashboard (auto refresh can be also checked)
Add one column in table with Gbps throughput (Rx
Throughput) plus code change in yardstick
Boxes are not aligned and big and small, need to be fixed
boxes are now aligned,
Added Seperate graphe for LINE Rate
Change-Id: Ief31777c2e7a18aab4bf21fb6ccc0e93a3bb9178
Signed-off-by: Daniel Martin Buckley <daniel.m.buckley@intel.com>
|
|
When setting interface_speed option in the test case, NSB/PROX
was still considering 100% as 10 Gbps.
With this fix, when interface_speed is set to for instance 25 Gbps
then NSB/PROX will start generate at 25 Gbps.
Yardstick logging info printed on the screen will show performance result
as percentage of interface_speed (e.g. 100% will be 25 Gbps).
This is done by sending the command "speed 250" to PROX (PROX cannot
know the underlying interface speed in all cases e.g. in virtio, and
hence considers 100% as 10Gbps).
JIRA: YARDSTICK-1217
Change-Id: I4989161b04a7afa5e347935ee7ccef7dfe5a504d
Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
|
|
JIRA: YARDSTICK-1105
Running a vPE test ends up with up to 25% drooped packets.
This is due to tolerated loss being incorrectly configured,
test duration was too short and test interval was too
short.
Note This is due to the fact that vPE use case have by
default a tolerated loss of 100%, Now changed to 0.001,
same as L2FWD
Also: Grafan dashboard has been updated to show all SUT
CPUS Utilization in 1 panel. And LINE rate MIN, MAX & TEST
Rate have been added
Change-Id: I7adae2199b3f656fe460705b6aeb3aa69c767d50
Signed-off-by: Daniel Martin Buckley <daniel.m.buckley@intel.com>
|
|
|
|
JIRA: YARDSTICK-1244
When sending the start or stop command to PROX. We sould not send the same core.
We should not send "start 1,1" instead we should send "start 1"
Change-Id: Ie600dc3ed808fd00341e92f13bd52199e68dc51f
Signed-off-by: Daniel Martin Buckley <daniel.m.buckley@intel.com>
|
|
JIRA: YARDSTICK-1219
Currently NSB for NFVI using PROX returns sampling information every 13
seconds.
This is too slow.
It is required to return sampling information form Generator AND VNF at
least every 1 second.
This change is depandant on JIRA: YARDSTICK-1212 and YARDSTICK-1220
Change-Id: Ica7ab795a2919d191d8cd846d028e15739e33fb7
Signed-off-by: Daniel Martin Buckley <daniel.m.buckley@intel.com>
|
|
|
|
JIRA: YARDSTICK-1221
In order to increase accuracy of result the following are done :-
- Improve Measurement Accuracy (YARDSTICK-1212)
- Improve Sampling Interval (YARDSTICK-1219)
- Allow 4 PROX ports to be read simultaneously (YARDSTICK-1220)
This change does the following :-
- Stores LINE Rate statistics of Sample
- Requires a confirmation retry before deciding to increase or
decrease this is configurable.
- Allows the user to disable Sampling or specify a sample interval
- Added Code Coverage of ProxDurationRunner based on YARDSTICK-1199
Change-Id: I27242ac1849c9a2712866385b5fbc05977c71516
Signed-off-by: Daniel Martin Buckley <daniel.m.buckley@intel.com>
|
|
Changed IxNextgen library load in IXIA RFC2544 traffic generator call.
JIRA: YARDSTICK-1116
Change-Id: Icbdc5f1255dd2676584f3a1be767287e55e71f4a
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
|
|
This patch allows user to configure ACL/vFW SampleVNF ACL
via configuration file provided in TC definition. The
Yardstick applies the rules to SampleVNF from specified config
file + rules generated by Yardstick (default rules).
The example of SampleVNF ACL CLI commands generated/applied
by Yardstick can be found at (using default ACL config file):
ACL VNF ACL CLI commands:
acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex.yaml
http://paste.openstack.org/show/723303/
vFW VNF ACL CLI commands:
vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex.yaml
http://paste.openstack.org/show/723304/
Change-Id: I76a630261a982083b628e3985fc3bec14ca495db
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
|
|
The TRex RFC2455 traffic profile configures the duration of the traffic
injection. Once the traffic is started, the traffic profile should poll
the traffic injector client for the injection status. When the injection
is finished, the traffic execution should end.
Instead of this, the traffic profile waits a fixed time (using time.sleep
method) and then stops the traffic. This approach is not accurate and may
cause shorter injection periods.
JIRA: YARDSTICK-1197
Change-Id: I5090df81ef4ec7945ff6c1aff070656b48e0fe77
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Add "duration" parameter to test case definition, in scenario:options
section. This parameter will be rendered in the traffic profile.
If the parameter is not present in the test case scenario options, the
default time written in the traffic profile options will be 30 seconds
(TrafficProfile.DEFAULT_DURATION = 30). If the traffic profile
injection time is not defined, the default injection time will be 30
seconds.
testcase:scenario:options:duration (default = 30)
render --> traffic_profile:duration
parse --> TrafficProfile.duration (default = 30)
Target traffic profiles (RFC2544):
- RFC2544Profile
- IXIARFC2544Profile
JIRA: YARDSTICK-1194
Change-Id: I968922e6bb882d7ee15aa1c4db4037face7a3492
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
This patch implements an active wait for the traffic injection. Once the
traffic is started, the traffic generator class will poll periodically the
IXIA traffic generator chassis to retrieve the status of the traffic
("started", "stopped").
Now the latency statistics are retrieved and reported for each injection
period.
JIRA: YARDSTICK-1116
Change-Id: I4422e2c88b4fc97b7cac3de8a82b2d75467c4117
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
|
|
This patch modifies IP packet parameters.
"IxNextgen.update_ip_packet" modifies the L3 packet according to the
test case and setup the IP addresses.
JIRA: YARDSTICK-1116
Change-Id: I46ff75ab1989d0e6f5cc876418a015386717e06f
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
|
|
This patch modifies the way the packet frame and the flow is configured
before the injection.
"IxNextgen.update_frame" modifies the L2 frame according to the
test case and setup the frame rate, frame size, traffic injection
duration and MAC addresses.
JIRA: YARDSTICK-1116
Change-Id: Ife08f15a4eda24d7835c92c4172b450854d112ee
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
|
|
This patch introduces a new way to configure the TCL IxNetwork server.
All the configuration is done using the TCL API, removing the need of
using the pre-saved configuration file.
"IxNextgen.assign_ports" creates and assigns the virtual ports for each
physical port defined in the test case.
"IxNextgen.create_traffic_item" creates one traffic item and two flow
groups per pair of ports, in both directions.
"IxNextgen.gt_statistics" retrieves only the required statistics to
generate the samples blob in the traffic generator.
JIRA: YARDSTICK-1116
Change-Id: I8f1c0c55e99c274b2ed8276ed9a385c502e16d93
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
|
|
'YARDSTICK-1215', 'YARDSTICK-1214'
* changes:
Move IncorrectConfig, IncorrectSetup and IncorrectNodeSetup to exceptions
Move ErrorClass definition to exceptions module
Convert SSH custom exceptions to Yardstick exceptions
Remove AnsibleCommon class method mock
|
|
* Fix pylint errors
* Add TODOs
Some errors are ignored locally, as they were a symptom of other problems.
These issues have been flagged with a TODO, and should be fixed later.
JIRA: YARDSTICK-837
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
Change-Id: I3d95537a64bde923703421510d27bac0d6dd92bd
|
|
JIRA: YARDSTICK-1212
Change-Id: Ic4d4a3c00e4e278f4de06cc176ff663892895569
Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
|
|
JIRA: YARDSTICK-1218
Change-Id: I804065e9bce3e728f5bf9e756a78df8fd28f74ac
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|