2 Documentation Suite checks if StatMngr is able to collect flows with linear spread over the switches and linear spread over tables within the switch
4 Library OperatingSystem
8 Library RequestsLibrary
9 Library ../../../../csit/libraries/Common.py
10 Library ../../../../csit/libraries/ScaleClient.py
11 Variables ../../../../csit/variables/Variables.py
12 Resource ../../../../csit/variables/openflowplugin/Variables.robot
14 Suite Setup Connect Switches
15 Suite Teardown Stop Switches
23 @{cntls} ${ODL_SYSTEM_IP}
28 ${flows} ${notes}= Generate New Flow Details
31 ... swspread=${swspread}
32 ... tabspread=${tabspread}
34 ${res}= Configure Flows flow_details=${flows} controllers=@{cntls} nrthreads=5
36 Set Suite Variable ${flows}
38 Check Configured Are Operational
39 Wait Until Keyword Succeeds 110s 20s Check Flows Inventory ${flows} ${ODL_SYSTEM_IP}
42 ${res}= Deconfigure Flows flow_details=${flows} controllers=@{cntls} nrthreads=5
45 Check No Flows In Operational
46 ${noflows}= Create List
47 Wait Until Keyword Succeeds 110s 20s Check Flows Inventory ${noflows} ${ODL_SYSTEM_IP}
52 [Documentation] Starts mininet with requested number of switches (${swnr})
53 Log Starting mininet with ${swnr} switches
54 Open Connection ${TOOLS_SYSTEM_IP} prompt=${TOOLS_SYSTEM_PROMPT} timeout=600
55 Login With Public Key ${TOOLS_SYSTEM_USER} ${USER_HOME}/.ssh/${SSH_KEY} any
56 Execute Command sudo ovs-vsctl set-manager ptcp:6644
57 Execute Command sudo mn -c
58 Write sudo mn --controller=remote,ip=${ODL_SYSTEM_IP} --topo linear,${swnr} --switch ovsk,protocols=OpenFlow13
60 Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS_XML}
61 Wait Until Keyword Succeeds 10s 1s Are Switches Connected Topo
64 [Documentation] Stops mininet
69 Read Until ${TOOLS_SYSTEM_PROMPT}
72 Are Switches Connected Topo
73 [Documentation] Checks wheather switches are connected to controller
74 ${resp}= GET On Session session url=${RFC8040_OPERATIONAL_TOPO_FLOW1_API} headers=${ACCEPT_XML}
76 ${count}= Get Element Count ${resp.content} xpath=node
77 Should Be Equal As Numbers ${count} ${swnr}
80 [Arguments] ${fldets} ${cntl}
81 ${res}= Flow Stats Collected flow_details=${fldets} controller=${cntl}