class MininetSlicing : | |
def __init__(self) : | |
self.default = '' | |
def CASE1(self,main) : | |
main.case("Verifying 'SSH protocol' based slicing") | |
main.step("Deleting flowspace using 'removeFlowSpace'") | |
removeflowspace_result = main.FlowVisor1.removeFlowSpace("all") | |
utilities.assert_equals(expect=main.TRUE,actual=removeflowspace_result,onpass="Removed FlowSpace Successfully",onfail="Failed to remove FlowSpace") | |
main.step("Showing connected devices using 'listDevices'") | |
listdevices_result = main.FlowVisor1.listDevices() | |
utilities.assert_equals(expect=main.TRUE,actual=listdevices_result,onpass="Listed devices Successfully",onfail="Failed to list the devices") | |
main.step("Verifying hosts reachability through ICMP traffic") | |
ping_result = main.Mininet1.pingHost(src='h1',target='h4') | |
utilities.assert_equals(expect=main.TRUE,actual=ping_result,onpass="NO PACKET LOSS, HOST IS REACHABLE",onfail="PACKET LOST, HOST IS NOT REACHABLE") | |
main.step("Showing the flowSpace USING 'listFlowSpace'") | |
listflowspace_result = main.FlowVisor1.listFlowSpace() | |
ping_result = main.Mininet1.pingHost(src='h1',target='h4') | |
main.step("Adding FlowSpace to create the slice of the Network") | |
main.log.info(" Geeting the IP-Addresses of Hosts") | |
h1_ipaddress = main.Mininet1.getIPAddress('h1') | |
h4_ipaddress = main.Mininet1.getIPAddress('h4') | |
main.log.info(" Geeting the MAC-Addresses of Hosts" ) | |
h1_macaddress = main.Mininet1.getMacAddress('h1') | |
h4_macaddress = main.Mininet1.getMacAddress('h4') | |
addflowspace_result_1 = main.FlowVisor1.addFlowSpace(dl_src=h1_macaddress,nw_dst=h4_ipaddress) | |
utilities.assert_equals(expect=main.TRUE,actual=addflowspace_result_1,onpass="Added FlowSpace Successfully",onfail="Failed to add FlowSpace") | |
addflowspace_result_2 = main.FlowVisor1.addFlowSpace(dl_src=h4_macaddress,nw_dst=h1_ipaddress) | |
utilities.assert_equals(expect=main.TRUE,actual=addflowspace_result_2,onpass="Added FlowSpace Successfully",onfail="Failed to add FlowSpace") | |
addflowspace_result_3 = main.FlowVisor1.addFlowSpace(nw_src=h1_ipaddress) | |
addflowspace_result_3 = main.FlowVisor1.addFlowSpace(nw_src=h4_ipaddress) | |
addflowspace_result_3 = main.FlowVisor1.addFlowSpace(nw_src=h1_ipaddress, tp_dst='22') | |
utilities.assert_equals(expect=main.TRUE,actual=addflowspace_result_3,onpass="Added FlowSpace Successfully",onfail="Failed to add FlowSpace") | |
addflowspace_result_4 = main.FlowVisor1.addFlowSpace(nw_src=h4_ipaddress,tp_dst='22') | |
utilities.assert_equals(expect=main.TRUE,actual=addflowspace_result_4,onpass="Added FlowSpace Successfully",onfail="Failed to add FlowSpace") | |
addflowspace_result_5 = main.FlowVisor1.addFlowSpace(nw_src=h1_ipaddress,tp_src='22') | |
utilities.assert_equals(expect=main.TRUE,actual=addflowspace_result_5,onpass="Added FlowSpace Successfully",onfail="Failed to add FlowSpace") | |
addflowspace_result_6 = main.FlowVisor1.addFlowSpace(nw_src=h4_ipaddress,tp_src='22') | |
utilities.assert_equals(expect=main.TRUE,actual=addflowspace_result_6,onpass="Added FlowSpace Successfully",onfail="Failed to add FlowSpace") | |
main.log.info("Showing the flowSpace USING 'listFlowSpace'") | |
listflowspace_result = main.FlowVisor1.listFlowSpace() | |
main.step("Verifying hosts reachability through ICMP traffic and Connectivity through SSH service") | |
ping_result = main.Mininet1.pingHost(src='h1',target='h4') | |
utilities.assert_equals(expect=main.TRUE,actual=ping_result,onpass="NO PACKET LOSS, HOST IS REACHABLE",onfail="PACKET LOST, HOST IS NOT REACHABLE") | |
ssh_result = main.Mininet1.verifySSH(user_name=main.params['CASE1']['destination_username'],ip_address=main.params['CASE1']['destination_host'], pwd=main.params['CASE1']['destination_password'], port=main.params['CASE1']['destination_port']) | |
utilities.assert_equals(expect=main.TRUE,actual=ssh_result,onpass="Failed to connect remote host throgh SSH",onfail="Remote host connected throgh SSH ") | |