51 lines
1.3 KiB
PHP
51 lines
1.3 KiB
PHP
<?php
|
|
|
|
|
|
function bitmask()
|
|
{
|
|
$cores = intval(shell_exec("/usr/bin/grep -c ^processor /proc/cpuinfo"));
|
|
$half_cores = ceil($cores / 2);
|
|
$bitmask = 0;
|
|
for ($i = 0; $i < $half_cores; $i++) {
|
|
$bitmask |= (1 << $i);
|
|
}
|
|
return $bitmask;
|
|
}
|
|
|
|
|
|
function netinter()
|
|
{
|
|
$interface = trim(shell_exec("/usr/bin/ip route get 1 | grep -Po '(?<=dev )(\S+)'"));
|
|
return $interface;
|
|
}
|
|
|
|
|
|
function insertnet()
|
|
{
|
|
$netface = netinter();
|
|
$checknet = trim(shell_exec("/usr/bin/cat /sys/class/net/$netface/queues/rx-0/rps_cpus"));
|
|
$bit = bitmask();
|
|
if (str_contains($checknet, $bit)) {
|
|
deletecone("netsta");
|
|
shell_exec("/usr/bin/echo \"0\" > /sys/class/net/$netface/queues/rx-0/rps_cpus");
|
|
echo "Balanceamento Desativado! \n";
|
|
} else {
|
|
deletecone("netsta");
|
|
incone("netsta", "null", "null", "null", "null");
|
|
shell_exec("/usr/bin/echo \"$bit\" > /sys/class/net/$netface/queues/rx-0/rps_cpus");
|
|
echo "Balanceamento ativado! \n";
|
|
}
|
|
}
|
|
|
|
|
|
function checknet()
|
|
{
|
|
$netface = netinter();
|
|
$checknet = trim(shell_exec("/usr/bin/cat /sys/class/net/$netface/queues/rx-0/rps_cpus"));
|
|
$bit = bitmask();
|
|
if (str_contains($checknet, $bit)) {
|
|
echo "ON";
|
|
} else {
|
|
echo "OFF";
|
|
}
|
|
}
|