Merge branch 'master' of ssh://git.onelab.eu/git/sliver-openvswitch
authorThierry Parmentelat <thierry.parmentelat@inria.fr>
Fri, 5 Oct 2012 12:43:16 +0000 (14:43 +0200)
committerThierry Parmentelat <thierry.parmentelat@inria.fr>
Fri, 5 Oct 2012 12:43:16 +0000 (14:43 +0200)
planetlab/exp-tool/Makefile
planetlab/exp-tool/Makefile.help
planetlab/exp-tool/conf.mk.example
planetlab/scripts/sliver-ovs.in

index bda2b09..e54d35b 100644 (file)
@@ -308,6 +308,23 @@ graph.dot:
 graph.ps: graph.dot
        dot -Tps < $^ > $@      
 
+####################
+# googlemap stuff
+# Uses:
+# GMAP_SERVER, the hostname that runs an ndnmap instance
+# GMAP_PROBES, a list of tuples of the form
+# <linkid>=<nodeid>=<internal_linkid>=<frequency>
+# e.g.
+# SENDER-MUX=SENDER=3=0.5
+# which would mean, the link 'SENDER-MUX' should be monitored at the 'SENDER' node and is coded 
+# in links.json with id=3, every half second
+# sliver-ovs gmap-probe is designed to run in background,
+# and so that a new run will kill any previously running instance
+gprobes: $(foreach probe,$(GMAP_PROBES),gprobe-$(probe))
+
+gprobe-%: FORCE
+       $(SSH) -n $(call solve,$(word 2,$(subst @, ,$(*F)))) $(SUDO) \
+       sliver-ovs gmap-probe L$(word 1,$(subst @, ,$(*F))) $(GMAP_SERVER) $(word 3,$(subst @, ,$(*F))) $(word 4,$(subst @, ,$(*F)))
 
 ####################
 # 'virtual' targets in that there's no real file attached
index cab6c79..b046f29 100644 (file)
@@ -62,3 +62,8 @@ make stop
 make status
         list status of db and switch processes in all slivers
 ====================
+make gprobes
+       Uses GMAP_SERVER and GMAP_PROBES to run probes in selected slivers
+       that can update a googlemap server for animating link speeds
+       This of course is mostly a demo thing, based on a one-host ndnmap deployment for now
+====================
index c554a80..e2fdaf8 100644 (file)
@@ -38,5 +38,3 @@ LINKS += MUX-END1
 LINKS += MUX-END2
 
 ####################
-
-
index 804ec16..dfcba3b 100755 (executable)
@@ -274,7 +274,7 @@ function show () {
 # this one-shot function writes the current statistics onto the ndnmap site
 # it needs to be called regularly so that ndnmap can do the bw computations
 # would make sense for the caller to redirect stderr onto some relevant location
-function gmap_report_once () {
+function gmap_probe_once () {
     iface=$1; shift
     hostname=$1; shift
     linkid=$1; shift
@@ -290,7 +290,7 @@ function gmap_report_once () {
 }
 
 ### the front end, manages pid and so on
-function gmap_report () {
+function gmap_probe () {
     iface=$1; shift
     hostname=$1; shift
     linkid=$1; shift
@@ -302,8 +302,11 @@ function gmap_report () {
        [ -n "$pid" ] && kill $pid >& /dev/null
        rm $pid_file
     fi
+    # close std fds so that ssh invokations can return
+    exec <&-
+    exec >&-
     while true; do
-       gmap_report_once $iface $hostname $linkid
+       gmap_probe_once $iface $hostname $linkid
        sleep $looptime
     done &
     # this is the pid for the background process
@@ -314,7 +317,7 @@ function gmap_report () {
 SUPPORTED_SUBCOMMANDS="start stop status 
 start_db stop_db start_switch stop_switch
 create_bridge create_port del_bridge del_port
-show set_remote_endpoint set_controller del_controller gmap_report"
+show set_remote_endpoint set_controller del_controller gmap_probe"
 
 function main () {
        message="Usage: $COMMAND <subcommand> ...