Disabled"; }
if ($interface['ifAdminStatus'] == "up" && $interface['ifOperStatus'] == "down") { $status = "Enabled / Disconnected"; }
if ($interface['ifAdminStatus'] == "up" && $interface['ifOperStatus'] == "up") { $status = "Enabled / Connected"; }
$i = 1;
$inf = fixifName($ifname);
echo("
");
if ($_GET['optd'] == "top10")
{
if ($_GET['opte'])
{
$period = $_GET['opte'];
} else { $period = "1day"; }
$from = "-" . $period;
if ($_GET['optc'])
{
$stat = $_GET['optc'];
} else { $stat = "bits"; }
if ($_GET['optf'])
{
$sort = $_GET['optf'];
} else { $sort = "in"; }
echo("
Day
Two Day
Week
Month
Year
Traffic
Packets
Top Input
Top Output
Top Aggregate
");
unset($query);
}
else
{
$query = mysql_query("SELECT *, (M.cipMacHCSwitchedBytes_input_rate + M.cipMacHCSwitchedBytes_output_rate) as bps FROM `mac_accounting` AS M,
`ports` AS I, `devices` AS D WHERE M.interface_id = '".$interface['interface_id']."' AND I.interface_id = M.interface_id
AND I.device_id = D.device_id ORDER BY bps DESC");
while ($acc = mysql_fetch_assoc($query))
{
if (!is_integer($i/2)) { $row_colour = $list_colour_a; } else { $row_colour = $list_colour_b; }
$addy = mysql_fetch_assoc(mysql_query("SELECT * FROM ipv4_mac where mac_address = '".$acc['mac']."'"));
#$name = gethostbyaddr($addy['ipv4_address']); FIXME - Maybe some caching for this?
$arp_host = mysql_fetch_assoc(mysql_query("SELECT * FROM ipv4_addresses AS A, ports AS I, devices AS D WHERE A.ipv4_address = '".$addy['ipv4_address']."' AND I.interface_id = A.interface_id AND D.device_id = I.device_id"));
if ($arp_host) { $arp_name = generate_device_link($arp_host); $arp_name .= " ".generate_port_link($arp_host); } else { unset($arp_if); }
if ($name == $addy['ipv4_address']) { unset ($name); }
if (mysql_result(mysql_query("SELECT count(*) FROM bgpPeers WHERE device_id = '".$acc['device_id']."' AND bgpPeerIdentifier = '".$addy['ipv4_address']."'"),0))
{
$peer_query = mysql_query("SELECT * FROM bgpPeers WHERE device_id = '".$acc['device_id']."' AND bgpPeerIdentifier = '".$addy['ipv4_address']."'");
$peer_info = mysql_fetch_assoc($peer_query);
} else { unset ($peer_info); }
if ($peer_info)
{
$asn = "AS".$peer_info['bgpPeerRemoteAs']; $astext = $peer_info['astext'];
} else {
unset ($as); unset ($astext); unset($asn);
}
if ($_GET['optc'])
{
$graph_type = "port_mac_acc_" . $_GET['optc'];
} else {
$graph_type = "port_mac_acc_bits";
}
if ($_GET['optd'] == "thumbs")
{
if (!$asn) { $asn = "No Session"; }
echo("
\

\
', CENTER, LEFT, FGCOLOR, '#e5e5e5', BGCOLOR, '#e5e5e5', WIDTH, 400, HEIGHT, 150);\" onmouseout=\"return nd();\" >
".$name."
");
}
else
{
echo("