2013-11-22 00:44:27,181  ONOS4     : INFO    : 
                                +----------------+
------------------------------ { Script And Files }  ------------------------------
                                +----------------+

	Script Log File : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/OnosPerf4nodes_22_Nov_2013_00_44_23.log
	Report Log File : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/OnosPerf4nodes_22_Nov_2013_00_44_23.rpt
	ONOS4 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/ONOS4.session
	ONOS2 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/ONOS2.session
	ONOS3 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/ONOS3.session
	ONOS1 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/ONOS1.session
	Cassandra1 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/Cassandra1.session
	Cassandra2 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/Cassandra2.session
	Cassandra3 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/Cassandra3.session
	Cassandra4 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/Cassandra4.session
	Zookeeper1 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/Zookeeper1.session
	Mininet1 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/Mininet1.session
	Mininet4 Session Log : /home/admin/ONLabTest/TestON/logs/OnosPerf4nodes_22_Nov_2013_00_44_23/Mininet4.session
	Test Script :/home/admin/ONLabTest/TestON/Tests/OnosPerf4nodes.py
	Test Params : /home/admin/ONLabTest/TestON/Tests/OnosPerf4nodes.params
	Topology : /home/admin/ONLabTest/TestON/Tests/OnosPerf4nodes.tpl
                              +------------------+
---------------------------  { Script Exec Params }  ---------------------------
                              +------------------+

	
	'CTRL': 
	'ip2': '10.128.100.4'
	 'ip3': '10.128.100.5'
	 'ip1': '10.128.100.1'
	 'ip4': '10.128.100.6'
	 'port4': '6633'
	 'port2': '6633'
	 'port3': '6633'
	 'port1': '6633'
	
	 'MN_size': '57'
	 'FLOWDEF': '~/flowdef_files/Center_Triangle/flowdef_20.txt'
	 'NR_Switches': '25'
	 'WaitTime': '60'
	 'TargetTime': '30'
	 'PING': 
	'source2': 'h7'
	 'source9': 'h14'
	 'source10': 'h15'
	 'source4': 'h9'
	 'source5': 'h10'
	 'target3': '10.0.0.18'
	 'target10': '10.0.0.25'
	 'source3': 'h8'
	 'source1': 'h6'
	 'source6': 'h11'
	 'source7': 'h12'
	 'target8': '10.0.0.23'
	 'target9': '10.0.0.24'
	 'target6': '10.0.0.21'
	 'target7': '10.0.0.22'
	 'target4': '10.0.0.19'
	 'target5': '10.0.0.20'
	 'target2': '10.0.0.17'
	 'source8': 'h13'
	 'target1': '10.0.0.16'
	
	 'NR_Links': '50'
	 'testcases': '1
	2
	3
	4
	5
	6
	7
	4
	8
	7
	4
	9
	7'
	 'RestIP': '10.128.100.4'
	 'Iterations': '3'
	

                               +---------------+
----------------------------- { Components Used }  -----------------------------
                               +---------------+
	ONOS4
	ONOS2
	ONOS3
	ONOS1
	Cassandra1
	Cassandra2
	Cassandra3
	Cassandra4
	Zookeeper1
	Mininet1
	Mininet4


                              +--------+
---------------------------- { Topology }  ----------------------------
                              +--------+

	
	'ONOS4': 
	'connect_order': '9'
	 'password': None
	 'type': 'OnosCliDriver'
	 'host': '10.128.100.6'
	 'user': 'admin'
	
	 'ONOS2': 
	'connect_order': '7'
	 'password': None
	 'type': 'OnosCliDriver'
	 'host': '10.128.100.4'
	 'user': 'admin'
	
	 'ONOS3': 
	'connect_order': '8'
	 'password': None
	 'type': 'OnosCliDriver'
	 'host': '10.128.100.5'
	 'user': 'admin'
	
	 'ONOS1': 
	'connect_order': '6'
	 'password': None
	 'type': 'OnosCliDriver'
	 'host': '10.128.100.1'
	 'user': 'admin'
	
	 'Cassandra1': 
	'connect_order': '2'
	 'password': None
	 'type': 'CassandraCliDriver'
	 'host': '10.128.100.1'
	 'user': 'admin'
	
	 'Cassandra2': 
	'connect_order': '3'
	 'password': None
	 'type': 'CassandraCliDriver'
	 'host': '10.128.100.4'
	 'user': 'admin'
	
	 'Cassandra3': 
	'connect_order': '4'
	 'password': None
	 'type': 'CassandraCliDriver'
	 'host': '10.128.100.5'
	 'user': 'admin'
	
	 'Cassandra4': 
	'connect_order': '5'
	 'password': None
	 'type': 'CassandraCliDriver'
	 'host': '10.128.100.6'
	 'user': 'admin'
	
	 'Zookeeper1': 
	'connect_order': '1'
	 'password': None
	 'type': 'ZookeeperCliDriver'
	 'host': '10.128.100.1'
	 'user': 'admin'
	
	 'Mininet1': 
	'connect_order': '10'
	 'host': '10.128.100.11'
	 'user': 'admin'
	 'COMPONENTS': 
	'arg1': '--custom ~/mininet/custom/topo-onos4node.py'
	 'arg2': '--topo mytopo --arp'
	 'controller': 'remote'
	
	 'password': None
	 'type': 'MininetCliDriver'
	
	 'Mininet4': 
	'connect_order': '11'
	 'password': None
	 'type': 'RemoteMininetDriver'
	 'host': '10.128.100.11'
	 'user': 'admin'
	
	
------------------------------------------------------------

                                                                               teston> 


2013-11-22 00:44:49,769  ONOS4     : INFO    : 
****************************************
Start of Test Case1 : 

Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 3.2.0-44-virtual x86_64)

 * Documentation:  https://help.ubuntu.com/

  System information as of Fri Nov 22 00:44:27 PST 2013

  System load:  0.75               Processes:           92
  Usage of /:   25.0% of 19.67GB   Users logged in:     1
  Memory usage: 56%                IP address for eth0: 10.128.100.6
  Swap usage:   0%

  Graph this data and manage this system at https://landscape.canonical.com/

  Get cloud support with Ubuntu Advantage Cloud Guest:
    http://www.ubuntu.com/business/services/cloud

  Use Juju to deploy your cloud instances and workloads:
    https://juju.ubuntu.com/#cloud-precise

63 packages can be updated.
34 updates are security updates.

Last login: Fri Nov 22 00:44:27 2013 from 10.128.7.7


admin@autoONOS4:~$ 
admin@autoONOS4:~$ 
admin@autoONOS4:~$ ~/ONOS/start-onos.sh stop

admin@autoONOS4:~$ ~/ONOS/start-onos.sh stop
Killed existing process (pid: 21351)
admin@autoONOS4:~$ 

admin@autoONOS4:~$ ~/ONOS/start-onos.sh start
~/ONOS/start-onos.sh start
rotate log: ./onos-logs/onos.autoONOS4.log
rotate log: ./onos-logs/onos.autoONOS4.pcap
Starting ONOS controller ...

/home/admin/ONOS
/home/admin/ONOS
mvn -o exec:exec -Dexec.executable="java" -Dexec.args=" -javaagent:/home/admin/ONOS/lib/jacocoagent.jar=dumponexit=true,output=file,destfile=./onos-logs/jacoco.exec -server -d64 -Xmx1g -Xms1g -Xmn800m -XX:+UseConcMarkSweepGC -XX:+UseAdaptiveSizePolicy -XX:+AggressiveOpts -XX:+UseFastAccessorMethods -XX:MaxInlineSize=8192 -XX:FreqInlineSize=8192 -XX:CompileThreshold=1500 -XX:PreBlockSpin=8 -XX:OnError=crash-logger -XX:CompileThreshold=1500 -XX:PreBlockSpin=8 		-XX:+UseThreadPriorities 		-XX:ThreadPriorityPolicy=42 		-XX:+UseCompressedOops 		-Dcom.sun.management.jmxremote.port=7189 		-Dcom.sun.management.jmxremote.ssl=false 		-Dcom.sun.management.jmxremote.authenticate=false -Dhazelcast.logging.type=slf4j -Dlogback.configurationFile=./logback.autoONOS4.xml -cp %classpath net.onrc.onos.ofcontroller.core.Main -cf ./conf/onos.properties"
Waiting for ONOS to start...
......
admin@autoONOS4:~$ 2013-11-22 00:46:41,658  ONOS4     : INFO    :  Checking if the startup was clean...
****************************************

2013-11-22 00:46:41,661  ONOS4     : INFO    : 
---------------------------------------------
Start of Step INIT : Initializing the test case :Checking if the startup was clean...
---------------------------------------------

2013-11-22 00:46:41,664  ONOS4     : INFO    : 
---------------------------------------------
Start of Step 1.1: Testing startup Zookeeper
---------------------------------------------

2013-11-22 00:46:42,579  ONOS4     : INFO    : 
---------------------------------------------
End of Step  1.1: Testing startup Zookeeper
---------------------------------------------

---------------------------------------------
Start of Step 1.2: Testing startup Cassandra
---------------------------------------------

2013-11-22 00:46:44,276  ONOS4     : INFO    : 
---------------------------------------------
End of Step  1.2: Testing startup Cassandra
---------------------------------------------

---------------------------------------------
Start of Step 1.3: Testing startup ONOS
---------------------------------------------



admin@autoONOS4:~$ 
admin@autoONOS4:~$ ~/ONOS/start-onos.sh status 
~/ONOS/start-onos.sh status 
1 instance of onos running

admin@autoONOS4:~$ 
admin@autoONOS4:~$ tail ~/ONOS/onos-logs/onos.*.log


admin@autoONOS4:~$ tail ~/ONOS/onos-logs/onos.*.log
2013-11-22 00:47:05,654 DEBUG [pool-3-thread-3] n.o.o.o.l.i.LinkDiscoveryManager [LinkDiscoveryManager.java:372] Sending LLDP out on all ports.
2013-11-22 00:47:12,948 DEBUG [hz._hzInstance_1_dev.cached.thread-5] c.h.c.ClusterService [Slf4jFactory.java:81] [10.128.100.6]:5701 [dev] Sending MasterConfirmation to Member [10.128.100.1]:5701
2013-11-22 00:47:20,666 DEBUG [pool-3-thread-2] n.o.o.o.l.i.LinkDiscoveryManager [LinkDiscoveryManager.java:372] Sending LLDP out on all ports.
2013-11-22 00:47:35,675 DEBUG [pool-3-thread-3] n.o.o.o.l.i.LinkDiscoveryManager [LinkDiscoveryManager.java:372] Sending LLDP out on all ports.
2013-11-22 00:47:41,872 DEBUG [pool-3-thread-11] n.o.o.o.f.NetworkGraphPublisher [NetworkGraphPublisher.java:88] Running cleanup thread
2013-11-22 00:47:42,949 DEBUG [hz._hzInstance_1_dev.cached.thread-6] c.h.c.ClusterService [Slf4jFactory.java:81] [10.128.100.6]:5701 [dev] Sending MasterConfirmation to Member [10.128.100.1]:5701
2013-11-22 00:47:43,578 DEBUG [pool-3-thread-11] n.o.o.o.f.NetworkGraphPublisher [NetworkGraphPublisher.java:154] Checking for inactive switches
2013-11-22 00:47:50,684 DEBUG [pool-3-thread-8] n.o.o.o.l.i.LinkDiscoveryManager [LinkDiscoveryManager.java:372] Sending LLDP out on all ports.
2013-11-22 00:48:05,695 DEBUG [pool-3-thread-14] n.o.o.o.l.i.LinkDiscoveryManager [LinkDiscoveryManager.java:372] Sending LLDP out on all ports.
2013-11-22 00:48:12,949 DEBUG [hz._hzInstance_1_dev.cached.thread-5] c.h.c.ClusterService [Slf4jFactory.java:81] [10.128.100.6]:5701 [dev] Sending MasterConfirmation to Member [10.128.100.1]:5701
admin@autoONOS4:~$ tail ~/ONOS/onos-logs/onos.*.log
2013-11-22 00:48:49,419  ONOS4     : INFO    : 
****************************************
Start of Test Case2 : 
2013-11-22 00:48:49,421  ONOS4     : INFO    : 
---------------------------------------------
Start of Step INIT : Initializing the test case :Checking if the startup was clean...
---------------------------------------------

2013-11-22 00:48:49,424  ONOS4     : INFO    : 
---------------------------------------------
Start of Step 2.1: Checking if MN switches exist
---------------------------------------------

2013-11-22 00:48:49,431  ONOS4     : INFO    : 
---------------------------------------------
End of Step  2.1: Checking if MN switches exist
---------------------------------------------

---------------------------------------------
Start of Step 2.2: assigning ONOS controllers to switches
---------------------------------------------

2013-11-22 00:49:27,751  ONOS4     : INFO    : 
****************************************
Start of Test Case3 : 
2013-11-22 00:49:27,755  ONOS4     : INFO    :  TOPO check
****************************************

2013-11-22 00:49:27,757  ONOS4     : INFO    : 
---------------------------------------------
Start of Step INIT : Initializing the test case :TOPO check
---------------------------------------------

2013-11-22 00:49:27,761  ONOS4     : INFO    : 
---------------------------------------------
Start of Step 3.1: calling rest calls
---------------------------------------------

2013-11-22 00:49:38,522  ONOS4     : INFO    : 
****************************************
Start of Test Case4 : 
2013-11-22 00:49:38,526  ONOS4     : INFO    :  Taking care of these flows!
****************************************

2013-11-22 00:49:38,529  ONOS4     : INFO    : 
---------------------------------------------
Start of Step INIT : Initializing the test case :Taking care of these flows!
---------------------------------------------

2013-11-22 00:49:38,534  ONOS4     : INFO    : 
---------------------------------------------
Start of Step 4.1: Cleaning out any leftover flows...
---------------------------------------------

2013-11-22 00:50:15,140  ONOS4     : INFO    :  TOPO check
****************************************

2013-11-22 00:50:15,143  ONOS4     : INFO    : 
---------------------------------------------
End of Step  4.1: Cleaning out any leftover flows...
---------------------------------------------

---------------------------------------------
Start of Step 4.2: calling rest calls
---------------------------------------------

2013-11-22 00:50:24,743  ONOS4     : INFO    : 
****************************************
Start of Test Case5 : 
2013-11-22 00:50:24,749  ONOS4     : INFO    :  Testing ping...
****************************************

2013-11-22 00:50:25,525  ONOS4     : INFO    : 
****************************************
Start of Test Case6 : 
2013-11-22 00:50:25,530  ONOS4     : INFO    :  Starting long ping... 
****************************************

2013-11-22 00:50:27,576  ONOS4     : INFO    : 
---------------------------------------------
Start of Step INIT : Initializing the test case :Starting long ping... 
---------------------------------------------

2013-11-22 00:50:27,580  ONOS4     : INFO    : 
---------------------------------------------
Start of Step 6.1: Check that the pings are going
---------------------------------------------

2013-11-22 00:50:28,708  ONOS4     : INFO    : 
---------------------------------------------
End of Step  6.1: Check that the pings are going
---------------------------------------------

---------------------------------------------
Start of Step 6.2: Link down number of iterations: 3
---------------------------------------------

2013-11-22 00:56:29,672  ONOS4     : INFO    :  Killing remote ping processes 
****************************************

2013-11-22 00:56:33,678  ONOS4     : INFO    : 
****************************************
Start of Test Case7 : 
2013-11-22 00:56:33,687  ONOS4     : INFO    :  Processing Ping data
****************************************

2013-11-22 00:56:36,856  ONOS4     : INFO    : 
****************************************
Start of Test Case4 : 
2013-11-22 00:56:36,862  ONOS4     : INFO    :  Taking care of these flows!
****************************************

2013-11-22 00:56:36,866  ONOS4     : INFO    : 
---------------------------------------------
Start of Step INIT : Initializing the test case :Taking care of these flows!
---------------------------------------------

2013-11-22 00:56:36,872  ONOS4     : INFO    : 
---------------------------------------------
Start of Step 4.1: Cleaning out any leftover flows...
---------------------------------------------

2013-11-22 00:57:11,399  ONOS4     : INFO    :  TOPO check
****************************************

2013-11-22 00:57:11,403  ONOS4     : INFO    : 
---------------------------------------------
End of Step  4.1: Cleaning out any leftover flows...
---------------------------------------------

---------------------------------------------
Start of Step 4.2: calling rest calls
---------------------------------------------

2013-11-22 00:57:20,714  ONOS4     : INFO    : 
****************************************
Start of Test Case8 : 
2013-11-22 00:57:40,737  ONOS4     : INFO    :  Starting long ping... 
****************************************

2013-11-22 00:57:42,792  ONOS4     : INFO    : 
---------------------------------------------
Start of Step INIT : Initializing the test case :Starting long ping... 
---------------------------------------------

2013-11-22 00:57:42,795  ONOS4     : INFO    : 
---------------------------------------------
Start of Step 8.1: Check that the pings are going
---------------------------------------------

2013-11-22 00:57:43,930  ONOS4     : INFO    : 
---------------------------------------------
End of Step  8.1: Check that the pings are going
---------------------------------------------

---------------------------------------------
Start of Step 8.2: Making topo change while flows are rerouting
---------------------------------------------

2013-11-22 00:57:43,935  ONOS4     : INFO    : 
---------------------------------------------
End of Step  8.2: Making topo change while flows are rerouting
---------------------------------------------

---------------------------------------------
Start of Step 8.3: Link down number of iterations: 3
---------------------------------------------

2013-11-22 01:04:01,372  ONOS4     : INFO    :  Killing remote ping processes 
****************************************

2013-11-22 01:04:05,772  ONOS4     : INFO    : 
****************************************
Start of Test Case7 : 
2013-11-22 01:04:05,779  ONOS4     : INFO    :  Processing Ping data
****************************************

2013-11-22 01:04:08,949  ONOS4     : INFO    : 
****************************************
Start of Test Case4 : 
2013-11-22 01:04:08,952  ONOS4     : INFO    :  Taking care of these flows!
****************************************

2013-11-22 01:04:08,954  ONOS4     : INFO    : 
---------------------------------------------
Start of Step INIT : Initializing the test case :Taking care of these flows!
---------------------------------------------

2013-11-22 01:04:08,958  ONOS4     : INFO    : 
---------------------------------------------
Start of Step 4.1: Cleaning out any leftover flows...
---------------------------------------------

2013-11-22 01:04:40,720  ONOS4     : INFO    :  TOPO check
****************************************

2013-11-22 01:04:40,723  ONOS4     : INFO    : 
---------------------------------------------
End of Step  4.1: Cleaning out any leftover flows...
---------------------------------------------

---------------------------------------------
Start of Step 4.2: calling rest calls
---------------------------------------------

2013-11-22 01:04:49,378  ONOS4     : INFO    : 
****************************************
Start of Test Case9 : 
2013-11-22 01:05:09,408  ONOS4     : INFO    :  Starting long ping... 
****************************************

2013-11-22 01:05:11,463  ONOS4     : INFO    : 
---------------------------------------------
Start of Step INIT : Initializing the test case :Starting long ping... 
---------------------------------------------

2013-11-22 01:05:11,467  ONOS4     : INFO    : 
---------------------------------------------
Start of Step 9.1: Check that the pings are going
---------------------------------------------

2013-11-22 01:05:12,584  ONOS4     : INFO    : 
---------------------------------------------
End of Step  9.1: Check that the pings are going
---------------------------------------------

---------------------------------------------
Start of Step 9.2: Making topo change while flows are rerouting
---------------------------------------------

2013-11-22 01:05:12,588  ONOS4     : INFO    : 
---------------------------------------------
End of Step  9.2: Making topo change while flows are rerouting
---------------------------------------------

---------------------------------------------
Start of Step 9.3: Link down number of iterations: 3
---------------------------------------------

2013-11-22 01:10:35,197  ONOS4     : INFO    :  Killing remote ping processes 
****************************************

2013-11-22 01:10:39,265  ONOS4     : INFO    : 
****************************************
Start of Test Case7 : 
2013-11-22 01:10:39,270  ONOS4     : INFO    :  Processing Ping data
****************************************

exit

admin@autoONOS4:~$ 
admin@autoONOS4:~$ tail ~/ONOS/onos-logs/onos.*.log
2013-11-22 00:47:42,949 DEBUG [hz._hzInstance_1_dev.cached.thread-6] c.h.c.ClusterService [Slf4jFactory.java:81] [10.128.100.6]:5701 [dev] Sending MasterConfirmation to Member [10.128.100.1]:5701
2013-11-22 00:47:43,578 DEBUG [pool-3-thread-11] n.o.o.o.f.NetworkGraphPublisher [NetworkGraphPublisher.java:154] Checking for inactive switches
2013-11-22 00:47:50,684 DEBUG [pool-3-thread-8] n.o.o.o.l.i.LinkDiscoveryManager [LinkDiscoveryManager.java:372] Sending LLDP out on all ports.
2013-11-22 00:48:05,695 DEBUG [pool-3-thread-14] n.o.o.o.l.i.LinkDiscoveryManager [LinkDiscoveryManager.java:372] Sending LLDP out on all ports.
2013-11-22 00:48:12,949 DEBUG [hz._hzInstance_1_dev.cached.thread-5] c.h.c.ClusterService [Slf4jFactory.java:81] [10.128.100.6]:5701 [dev] Sending MasterConfirmation to Member [10.128.100.1]:5701
2013-11-22 00:48:20,705 DEBUG [pool-3-thread-6] n.o.o.o.l.i.LinkDiscoveryManager [LinkDiscoveryManager.java:372] Sending LLDP out on all ports.
2013-11-22 00:48:35,716 DEBUG [pool-3-thread-13] n.o.o.o.l.i.LinkDiscoveryManager [LinkDiscoveryManager.java:372] Sending LLDP out on all ports.
2013-11-22 00:48:42,949 DEBUG [hz._hzInstance_1_dev.cached.thread-5] c.h.c.ClusterService [Slf4jFactory.java:81] [10.128.100.6]:5701 [dev] Sending MasterConfirmation to Member [10.128.100.1]:5701
2013-11-22 00:48:43,579 DEBUG [pool-3-thread-6] n.o.o.o.f.NetworkGraphPublisher [NetworkGraphPublisher.java:88] Running cleanup thread
2013-11-22 00:48:43,676 DEBUG [pool-3-thread-6] n.o.o.o.f.NetworkGraphPublisher [NetworkGraphPublisher.java:154] Checking for inactive switches
admin@autoONOS4:~$ exit
logout
Connection to 10.128.100.6 closed.
