*** Settings *** Documentation Test suite to determine the southbound Map-Request serving rate Suite Setup Prepare Environment Suite Teardown Destroy Environment Library Collections Library OperatingSystem Library RequestsLibrary Library String Resource ../../../libraries/Utils.robot Variables ../../../variables/Variables.py *** Variables *** ${MAPPINGS} 10000 ${LISP_SCAPY} https://raw.githubusercontent.com/intouch/py-lispnetworking/master/lisp.py ${TOOLS_DIR} ${CURDIR}/../../../../tools/odl-lispflowmapping-performance-tests/ ${PCAP_CREATOR} ${TOOLS_DIR}/create_map_request_pcap.py ${MAPPING_BLASTER} ${TOOLS_DIR}/mapping_blaster.py ${REPLAY_PPS} 100000 ${REPLAY_CNT} 1000 ${REPLAY_FILE} ${CURDIR}/encapsulated-map-requests-sequential.pcap ${RESULTS_FILE} pps.csv *** Test Cases *** Add Simple IPv4 Mappings Run Process With Logging And Status Check ${MAPPING_BLASTER} --host ${CONTROLLER} --mappings ${MAPPINGS} Generate Test Traffic Reset Stats ${result}= Run Process With Logging And Status Check /usr/local/bin/udpreplay --pps ${REPLAY_PPS} --repeat ${REPLAY_CNT} ... --port 4342 ${REPLAY_FILE} ${partial}= Fetch From Left ${result.stdout} s = Log ${partial} ${seconds}= Fetch From Right ${partial} ${SPACE} ${seconds}= Convert To Number ${seconds} Log ${seconds} Set Suite Variable ${seconds} Compute And Export MapReply Rate ${txmrep}= Get Transmitted Map-Requests Stats ${pps}= Evaluate ${txmrep}/${seconds} Log ${pps} Create File ${RESULTS_FILE} replies/s\n Append To File ${RESULTS_FILE} ${pps}\n *** Keywords *** Reset Stats ${resp}= RequestsLibrary.Post session ${LFM_SB_RPC_API}:reset-stats Log ${resp.content} Should Be Equal As Strings ${resp.status_code} 200 Get Transmitted Map-Requests Stats ${resp}= RequestsLibrary.Post session ${LFM_SB_RPC_API}:get-stats Log ${resp.content} ${output}= Get From Dictionary ${resp.json()} output ${stats}= Get From Dictionary ${output} control-message-stats ${ctrlmsg}= Get From Dictionary ${stats} control-message ${replies}= Get From List ${ctrlmsg} 2 ${txmrep}= Get From Dictionary ${replies} tx-count ${txmrep}= Convert To Integer ${txmrep} Log ${txmrep} [Return] ${txmrep} Prepare Environment Create Session session http://${CONTROLLER}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS} Run Process With Logging And Status Check wget -P ${TOOLS_DIR} ${LISP_SCAPY} Run Process With Logging And Status Check ${PCAP_CREATOR} --requests ${MAPPINGS} Destroy Environment Delete All Sessions Remove File ${TOOLS_DIR}/lisp.py* Remove File ${REPLAY_FILE}