aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--web/nms.gathering.org/nms2/index.html5
-rw-r--r--web/nms.gathering.org/nms2/js/nms-map-handlers.js50
-rw-r--r--web/nms.gathering.org/nms2/js/nms.js4
3 files changed, 55 insertions, 4 deletions
diff --git a/web/nms.gathering.org/nms2/index.html b/web/nms.gathering.org/nms2/index.html
index b9bc2b7..304cece 100644
--- a/web/nms.gathering.org/nms2/index.html
+++ b/web/nms.gathering.org/nms2/index.html
@@ -60,6 +60,7 @@
<li><a href="#temp" onclick="setUpdater(handler_temp)">Temperature map</a></li>
<li><a href="#traffic" onclick="setUpdater(handler_traffic)">Traffic map</a></li>
<li><a href="#comment" onclick="setUpdater(handler_comment)">Comment spotter</a></li>
+ <li><a href="#traffictot" onclick="setUpdater(handler_traffic_tot)">Total switch traffic</a></li>
<li><a href="#disco" onclick="setUpdater(handler_disco)">DISCO</a></li>
<li class="divider"> </li>
<li><a href="#" onclick="toggleLayer('nowPickerBox');document.getElementById('nowPicker').focus();">Travel in time</a></li>
@@ -264,6 +265,10 @@
</tr>
<tr>
<td>6</td>
+ <td>View total switch traffic map</td>
+ </tr>
+ <tr>
+ <td>7</td>
<td>View Disco map</td>
</tr>
<tr>
diff --git a/web/nms.gathering.org/nms2/js/nms-map-handlers.js b/web/nms.gathering.org/nms2/js/nms-map-handlers.js
index 531b686..9b2d44c 100644
--- a/web/nms.gathering.org/nms2/js/nms-map-handlers.js
+++ b/web/nms.gathering.org/nms2/js/nms-map-handlers.js
@@ -46,6 +46,13 @@ var handler_traffic = {
name:"Uplink traffic map"
};
+var handler_traffic_tot = {
+ updater:trafficTotUpdater,
+ init:trafficTotInit,
+ tag:"traffictot",
+ name:"Switch traffic map"
+};
+
var handler_disco = {
updater:randomizeColors,
init:discoInit,
@@ -66,7 +73,8 @@ var handlers = [
handler_ping,
handler_traffic,
handler_disco,
- handler_comment
+ handler_comment,
+ handler_traffic_tot
];
/*
@@ -159,14 +167,48 @@ function trafficUpdater()
}
}
-function colorFromSpeed(speed)
+/*
+ * Init-function for uplink map
+ */
+function trafficTotInit()
+{
+ var m = 1024 * 1024 / 8;
+ drawGradient([lightgreen,green,orange,red]);
+ setLegend(1,colorFromSpeed(0),"0 (N/A)");
+ setLegend(5,colorFromSpeed(5000 * m,5) , "5000Mb/s");
+ setLegend(4,colorFromSpeed(3000 * m,5),"3000Mb/s");
+ setLegend(3,colorFromSpeed(1000 * m,5),"1000Mb/s");
+ setLegend(2,colorFromSpeed(100 * m,5),"100Mb/s");
+}
+
+function trafficTotUpdater()
+{
+ if (!nms.switches_now["switches"])
+ return;
+ for (sw in nms.switches_now["switches"]) {
+ var speed = 0;
+ for (port in nms.switches_now["switches"][sw]["ports"]) {
+ if (!nms.switches_then["switches"][sw] ||
+ !nms.switches_then["switches"][sw]["ports"] ||
+ !nms.switches_then["switches"][sw]["ports"][port])
+ continue;
+ var t = nms.switches_then["switches"][sw]["ports"][port];
+ var n = nms.switches_now["switches"][sw]["ports"][port];
+ speed += (parseInt(t["ifhcoutoctets"]) -parseInt(n["ifhcoutoctets"])) / (parseInt(t["time"] - n["time"]));
+ }
+ setSwitchColor(sw,colorFromSpeed(speed,5));
+ }
+}
+
+function colorFromSpeed(speed,factor)
{
var m = 1024 * 1024 / 8;
+ if (factor == undefined)
+ factor = 2;
if (speed == 0)
return blue;
speed = speed < 0 ? 0 : speed;
- return getColorStop( 1000 * (speed / (2 * (1000 * m))));
-// return rgb_from_max2( 100 * (speed / (2 * (1000 * m))));
+ return getColorStop( 1000 * (speed / (factor * (1000 * m))));
}
diff --git a/web/nms.gathering.org/nms2/js/nms.js b/web/nms.gathering.org/nms2/js/nms.js
index f6d7bb0..d4cf4e8 100644
--- a/web/nms.gathering.org/nms2/js/nms.js
+++ b/web/nms.gathering.org/nms2/js/nms.js
@@ -73,6 +73,7 @@ var nms = {
'4':setMapModeFromN,
'5':setMapModeFromN,
'6':setMapModeFromN,
+ '7':setMapModeFromN,
'h':moveTimeFromKey,
'j':moveTimeFromKey,
'k':moveTimeFromKey,
@@ -1526,6 +1527,9 @@ function setMapModeFromN(e,key)
setUpdater(handler_comment);
break;
case '6':
+ setUpdater(handler_traffic_tot);
+ break;
+ case '7':
setUpdater(handler_disco);
break;
}