Ticket #749. Do not create the queues at LAN side for traffic_shaper_wizard_dedicated. Since we cannot control bandwidth its useless to try to handle it(ALTQ was built with this concept in mind).

This commit is contained in:
Ermal 2010-12-22 20:51:07 +00:00
parent 4447358371
commit cd3346e205

View File

@ -995,389 +995,6 @@ function apply_all_choosen_items() {
}
array_pop($tmppath);
$downfactor = wizard_get_bandwidthtype_scale($config['ezshaper']['step2']["conn{$i}downloadspeed"]);
$downbw = floatval($config['ezshaper']['step2']["conn{$i}download"]) * $downfactor;
$tmppath = array();
$altq =& new altq_root_queue();
$altq->SetInterface($config['ezshaper']['step2']["local{$i}interface"]);
$altq->SetScheduler($config['ezshaper']['step2']["local{$i}downloadscheduler"]);
$altq->SetBandwidth($config['ezshaper']['step2']["conn{$i}download"]);
$altq->SetBwscale($config['ezshaper']['step2']["conn{$i}downloadspeed"]);
$altq->SetEnabled("on");
$altq_list_queues[$altq->GetQname()] =& $altq;
array_push($tmppath, $config['ezshaper']['step2']["local{$i}interface"]);
$altq->SetLink($tmppath);
//var_dump($input_errors);
$altq->wconfig();
$sched = $config['ezshaper']['step2']["local{$i}downloadscheduler"];
$voipbw =0;
$voipbwunit = "%";
$voip = false;
$penalty = false;
$penaltybw = 0;
$penaltybwunit = "%";
$p2p = false;
$p2pcatchall = false;
$p2pcatchbw = 0;
$games = false;
$otherpriority = false;
$remainbw = 0;
if ($config['ezshaper']['step3']['enable']) {
$voip = true;
$voipbw = $config['ezshaper']['step3']["local{$i}download"];
$voipbwunit = $config['ezshaper']['step3']["local{$i}downloadspeed"];
if ($sched != HFSC) {
if ($penaltybwunit == "%")
$factor = $downbw/100;
else
$factor = wizard_get_bandwidthtype_scale($voipbwunit);
$remainbw += floatval($voipbw) * $factor;
} else
$remainbw += 32000; /* 32Kbit/s reserved for HFSC linksharing */
}
if ($config['ezshaper']['step4']['enable']) {
$penalty = true;
$penaltybw = $config['ezshaper']['step4']['bandwidth'];
$penaltybwunit = $config['ezshaper']['step4']['bandwidthunit'];
if ($penaltybwunit == "%")
$factor = $downbw/100;
else
$factor = wizard_get_bandwidthtype_scale($penaltybwunit);
$remainbw += floatval($penaltybw) * $factor;
} else {
$penalty = false;
$penaltybw = 0;
}
if ($config['ezshaper']['step5']['enable']) {
$p2p = true;
if ($config['ezshaper']['step5']['p2pcatchall']) {
$p2pcatchall = true;
$p2pcatchbw = $config['ezshaper']['step5']['bandwidth'];
$p2pcatchbwunit = $config['ezshaper']['step5']['bandwidthunit'];
if ($p2pcatchbwunit == "%")
$factor = $downbw/100;
else
$factor = wizard_get_bandwidthtype_scale($p2pcatchbwunit);
$remainbw += floatval($p2pcatchbw) * $factor;
} else {
$p2pcatchall = false;
$p2pcatchbw = 0;
}
} else {
$p2p = false;
$p2pcatchall = false;
$p2pcatchbw = 0;
}
if ($config['ezshaper']['step6']['enable']) {
$games = true;
} else {
$games = false;
}
if ($config['ezshaper']['step7']['enable']) {
$otherpriority = true;
} else {
$otherpriority = false;
}
$remainbw = round($remainbw / $downbw * 100, 2);
if (intval($remainbw) > 0 && intval($remainbw) > 40) {
$savemsg=gettext("Custom Bandwidths are greater than 30%. Please lower them for the wizard to continue.");
header("Location: wizard.php?xml=traffic_shaper_wizard_dedicated.xml&stepid=2&message={$savemsg}");
exit;
} else {
$remainbw = 100 - $remainbw;
}
if ($sched != "PRIQ") {
if ($sched == "CBQ")
$q =& new cbq_queue();
else if ($sched == "HFSC")
$q =& new hfsc_queue();
$tmpcf = array();
$tmpcf['name'] = "qInternet";
//$tmpcf['priority'] = 6;
$tmpcf['ecn'] = "on";
$tmpcf['enabled'] = "on";
If ($sched == "CBQ") {
$tmpcf['bandwidth'] = floatval($config['ezshaper']['step2']["conn{$i}download"]);
$tmpcf['bandwidthtype'] = $config['ezshaper']['step2']["conn{$i}downloadspeed"];
}
else if ($sched == "HFSC") {
$tmpcf['upperlimit'] = "on";
$tmpcf['upperlimit3'] = floatval($config['ezshaper']['step2']["conn{$i}download"]) . $config['ezshaper']['step2']["conn{$i}downloadspeed"];
$tmpcf['linkshare'] = "on";
$tmpcf['linkshare3'] = floatval($config['ezshaper']['step2']["conn{$i}download"]) . $config['ezshaper']['step2']["conn{$i}downloadspeed"];
$tmpcf['bandwidth'] = floatval($config['ezshaper']['step2']["conn{$i}download"]);
$tmpcf['bandwidthtype'] = $config['ezshaper']['step2']["conn{$i}downloadspeed"];
}
array_push($tmppath, "qInternet");
$qtmp =& $altq->add_queue($q, &$tmpcf, &$tmppath, $input_errors);
//array_pop($tmppath);
//echo "qInternet <br />";
//var_dump($input_errors);
$qtmp->wconfig();
$altq =& $qtmp;
}
if ($sched == "PRIQ")
$q =& new priq_queue();
else if ($sched == "CBQ")
$q =& new cbq_queue();
else if ($sched == "HFSC")
$q =& new hfsc_queue();
$tmpcf = array();
$tmpcf['name'] = "qACK";
$tmpcf['priority'] = 6;
$tmpcf['ecn'] = "on";
$tmpcf['enabled'] = "on";
If ($sched == "CBQ") {
$tmpcf['borrow'] = "on";
$tmpcf['bandwidth'] = $remainbw * 0.2;
$tmpcf['bandwidthtype'] = "%";
}
else if ($sched == "HFSC") {
$lkbw = 0.20 * $remainbw;
$tmpcf['linkshare3'] = "{$lkbw}%";
$tmpcf['linkshare'] = "on";
$tmpcf['bandwidth'] = $lkbw;
$tmpcf['bandwidthtype'] = "%";
}
array_push($tmppath, "qACK");
$qtmp =& $altq->add_queue($q, &$tmpcf, &$tmppath, $input_errors);
array_pop($tmppath);
//echo "qACK $remainbw <br />";
//var_dump($input_errors);
$qtmp->wconfig();
if ($sched == "PRIQ")
$q =& new priq_queue();
else if ($sched == "CBQ")
$q =& new cbq_queue();
else if ($sched == "HFSC")
$q =& new hfsc_queue();
$tmpcf = array();
if ($p2pcatchall)
$tmpcf['name'] = "qOthersDefault";
else
$tmpcf['name'] = "qDefault";
$tmpcf['priority'] = 3;
$tmpcf['enabled'] = "on";
if (!$p2pcatchall)
$tmpcf['default'] = "on";
$tmpcf['ecn'] = "on";
if ($sched == "CBQ") {
$tmpcf['borrow'] = "on";
$tmpcf['bandwidth'] = $remainbw * 0.1; /* 10% bandwidth */
$tmpcf['bandwidthtype'] = "%";
} else if ($sched == "HFSC") {
$tmpcf['bandwidth'] = $remainbw * 0.1; /* 10% bandwidth */
$tmpcf['bandwidthtype'] = "%";
}
array_push($tmppath, $tmpcf['name']);
$qtmp =& $altq->add_queue($q, &$tmpcf, &$tmppath, $input_errors);
array_pop($tmppath);
//echo "qDefault <br />";
//var_dump($input_errors);
$qtmp->wconfig();
if ($p2p) {
if ($sched == "PRIQ")
$q =& new priq_queue();
else if ($sched == "CBQ")
$q =& new cbq_queue();
else if ($sched == "HFSC")
$q =& new hfsc_queue();
$tmpcf = array();
$tmpcf['name'] = "qP2P";
$tmpcf['priority'] = 1;
$tmpcf['ecn'] = "on";
$tmpcf['enabled'] = "on";
if ($p2pcatchall) {
if ($sched == "CBQ") {
$tmpcf['borrow'] = "on";
$tmpcf['bandwidth'] = $p2pcatchbw;
$tmpcf['bandwidthtype'] = $p2pcatchbwunit;
} else if ($sched == "HFSC") {
$tmpcf['linkshare'] = "on";
$tmpcf['linkshare3'] = "{$p2pcatchbw}{$p2pcatchbwunit}";
$tmpcf['upperlimit'] = "on";
$tmpcf['upperlimit3'] = "{$p2pcatchbw}{$p2pcatchbwunit}";
$tmpcf['bandwidth'] = $p2pcatchbw;
$tmpcf['bandwidthtype'] = $p2pcatchbwunit;
}
$tmpcf['default'] = "on";
} else {
if ($sched == "CBQ") {
$tmpcf['borrow'] = "on";
$tmpcf['bandwidth'] = $remainbw * 0.05; /* 5% bandwidth */
$tmpcf['bandwidthtype'] = "%";
} else if ($sched == "HFSC") {
$tmpbw = $remainbw * 0.05; /* 5% bandwidth */
$tmpcf['linkshare'] = "on";
$tmpcf['linkshare3'] = "{$tmpbw}%";
$tmpcf['upperlimit'] = "on";
$tmpcf['upperlimit3'] = "{$tmpbw}%";
$tmpcf['bandwidth'] = $tmpbw;
$tmpcf['bandwidthtype'] = "%";
}
}
array_push($tmppath, "qP2P");
$qtmp =& $altq->add_queue($q, &$tmpcf, &$tmppath, $input_errors);
array_pop($tmppath);
//echo "qP2P <br />";
//var_dump($input_errors);
$qtmp->wconfig();
}
if ($voip) {
if ($sched == "PRIQ")
$q =& new priq_queue();
else if ($sched == "CBQ")
$q =& new cbq_queue();
else if ($sched == "HFSC")
$q =& new hfsc_queue();
$tmpcf = array();
$tmpcf['name'] = "qVoIP";
$tmpcf['priority'] = 7;
$tmpcf['ecn'] = "on";
$tmpcf['enabled'] = "on";
if ($sched == "CBQ") {
$tmpcf['borrow'] = "on";
if ($voipbw > 0) {
$tmpcf['bandwidth'] = $voipbw;
$tmpcf['bandwidthtype'] = $voipbwunit;
} else {
$tmpcf['bandwidth'] = $remainbw * 0.2; /* 20% bandwidth */
$tmpcf['bandwidthtype'] = "%";
}
} else if ($sched == "HFSC") {
if ($voipbw > 0) {
$tmpcf['realtime3'] = "{$voipbw}{$voipbwunit}";
} else {
$voipbw = $remainbw * 0.20; /* 20% bandwidth */
$tmpcf['realtime3'] = "{$voipbw}%";
}
$tmpcf['realtime'] = "on";
$tmpcf['bandwidth'] = 32;
$tmpcf['bandwidthtype'] = "Kb";
}
array_push($tmppath, "qVoIP");
$qtmp =& $altq->add_queue($q, &$tmpcf, &$tmppath, $input_errors);
array_pop($tmppath);
//echo "qVoIP <br />";
//var_dump($input_errors);
$qtmp->wconfig();
}
if ($games) {
if ($sched == "PRIQ")
$q =& new priq_queue();
else if ($sched == "CBQ")
$q =& new cbq_queue();
else if ($sched == "HFSC")
$q =& new hfsc_queue();
$tmpcf = array();
$tmpcf['name'] = "qGames";
$tmpcf['priority'] = 5;
$tmpcf['enabled'] = "on";
$tmpcf['ecn'] = "on";
if ($sched == "CBQ") {
$tmpcf['borrow'] = "on";
$tmpcf['bandwidth'] = $remainbw * 0.2; /* 20% bandwidth */
$tmpcf['bandwidthtype'] = "%";
} else if ($sched == "HFSC") {
$gamesbw = $remainbw * 0.2; /* 20% bandwidth */
$tmpcf['linkshare'] = "on";
$tmpcf['linkshare3'] = "{$gamesbw}%";
$tmpcf['bandwidth'] = "{$gamesbw}";
$tmpcf['bandwidthtype'] = "%";
}
array_push($tmppath, "qGames");
$qtmp =& $altq->add_queue($q, &$tmpcf, &$tmppath, $input_errors);
array_pop($tmppath);
//echo "qGames <br />";
//var_dump($input_errors);
$qtmp->wconfig();
}
if ($otherpriority) {
if ($sched == "PRIQ")
$q =& new priq_queue();
else if ($sched == "CBQ")
$q =& new cbq_queue();
else if ($sched == "HFSC")
$q =& new hfsc_queue();
$tmpcf = array();
$tmpcf['name'] = "qOthersHigh";
$tmpcf['priority'] = 4;
$tmpcf['ecn'] = "on";
$tmpcf['enabled'] = "on";
if ($sched == "CBQ") {
$tmpcf['borrow'] = "on";
$tmpcf['bandwidth'] = $remainbw * 0.1; /* 10% bandwidth */
$tmpcf['bandwidthtype'] = "%";
} else if ($sched == "HFSC") {
$tmpcf['linkshare'] = "on";
$otherbw = $remainbw * 0.1; /* 10% bandwidth */
$tmpcf['linkshare3'] = "{$otherbw}%";
$tmpcf['bandwidth'] = $otherbw;
$tmpcf['bandwidthtype'] = "%";
}
array_push($tmppath, "qOthersHigh");
$qtmp =& $altq->add_queue($q, &$tmpcf, &$tmppath, $input_errors);
array_pop($tmppath);
//echo "qHigh <br />";
//var_dump($input_errors);
$qtmp->wconfig();
if ($sched == "PRIQ")
$q =& new priq_queue();
else if ($sched == "CBQ")
$q =& new cbq_queue();
else if ($sched == "HFSC")
$q =& new hfsc_queue();
$tmpcf = array();
$tmpcf['name'] = "qOthersLow";
$tmpcf['priority'] = 2;
$tmpcf['ecn'] = "on";
$tmpcf['enabled'] = "on";
if ($sched == "CBQ") {
$tmpcf['borrow'] = "on";
if ($penalty) {
$tmpcf['bandwidth'] = $penaltybw;
$tmpcf['bandwidthtype'] = $penaltybwunit;
} else {
$tmpcf['bandwidthtype'] = "%";
$tmpcf['bandwidth'] = $remainbw * 0.05; /* 5% bandwidth */
}
} else if ($sched == "HFSC") {
if ($penalty) {
$tmpcf['linkshare3'] = "{$penaltybw}{$penaltybwunit}";
$tmpcf['bandwidth'] = $penaltybw;
$tmpcf['bandwidthtype'] = $penaltybwunit;
} else {
$lsbw = $remainbw * 0.05;
$tmpcf['linkshare3'] = "{$lsbw}%"; /* 5% bandwidth */
$tmpcf['bandwidth'] = $lsbw;
$tmpcf['bandwidthtype'] = "%";
}
$tmpcf['linkshare'] = "on";
}
array_push($tmppath, "qOthersLow");
$qtmp =& $altq->add_queue($q, &$tmpcf, &$tmppath, $input_errors);
array_pop($tmppath);
//echo "qLow <br />";
//var_dump($input_errors);
$qtmp->wconfig();
}
array_pop($tmppath);
}