Jika anda admin di GAME center, tentu anda pernah dengar tentang game LAG ( game patah2, lambat bereaksi). kejadian ini jika ada user yg baru login ke game tertentu spt RF-online;seal-online, dll. Sebenarnya game lag di sebabkan berbagai sebab yaitu jaringannya tdk lancar sering kali ada RTO, bandwith penuh atau layanan bandwith yg asimetris, dan yg tdk kalah pentingnya juga masalah Bandwith shaping-nya bs jadi kurang betul. mengenai bandwith(bw) shaping sebenarnya kita bisa memakai program bantu spt HTB di linux, atau juga bs memanfaatkan routerbox linux anda yg sudah di install ;program TC. anda bisa donlot program HTB di sini http://sourceforge.net/projects/htbinit/ ambil scriptnya htb.init-v0.8.5 simpan di direktori dimana saja mis : /root
berikan perintah –> chmod 755 htb.init-v0.8.5
[root@neogame ~]# ls -l htb.init-v0.8.5
-rwxr-xr-x 1 root root 32065 2008-10-06 16:23 htb.init-v0.8.5
dan buat folder /root/htbxx , yg berisi file2 contoh :
[root@neogame htbxx]# ls -l
total 388
-rw-r–r– 1 root root 11 2008-04-07 13:05 eth0
-rw-r–r– 1 root root 340 2008-04-07 13:05 eth0-2:24.dota
-rw-r–r– 1 root root 22 2008-04-07 13:05 eth0-2.root
-rw-r–r– 1 root root 11 2008-04-07 13:05 eth1
-rw-r–r– 1 root root 156 2008-04-07 13:26 eth1-2:10.csjmn
-rw-r–r– 1 root root 532 2008-04-07 13:05 eth1-2:27.csiix
-rw-r–r– 1 root root 219 2008-05-27 13:00 eth1-2:30.www
-rw-r–r– 1 root root 97 2008-04-07 13:11 eth1-2:32.ip2
-rw-r–r– 1 root root 97 2008-04-07 13:12 eth1-2:33.ip3
-rw-r–r– 1 root root 97 2008-04-07 13:12 eth1-2:34.ip4
-rw-r–r– 1 root root 98 2008-04-07 13:12 eth1-2:35.ip5
-rw-r–r– 1 root root 97 2008-04-07 13:13 eth1-2:36.ip6
-rw-r–r– 1 root root 97 2008-04-07 13:13 eth1-2:37.ip7
-rw-r–r– 1 root root 97 2008-04-07 13:13 eth1-2:38.ip8
-rw-r–r– 1 root root 97 2008-04-07 13:10 eth1-2:39.ip9
-rw-r–r– 1 root root 99 2008-04-07 13:14 eth1-2:40.ip10
-rw-r–r– 1 root root 99 2008-04-07 13:14 eth1-2:41.ip11
-rw-r–r– 1 root root 52 2008-04-07 13:26 eth1-2:70.default
-rw-r–r– 1 root root 36 2008-04-07 13:06 eth1-2.root
-rwxr-xr-x 1 root root 147 2008-04-07 13:05 rep
penjelasan masing2 file:
[root@neogame htbxx]# cat eth0-2.root
RATE=512Kbit
BURST=2k
[root@neogame htbxx]# cat eth0
DEFAULT=40
[root@neogame htbxx]# cat eth0-2:24.dota
CEIL=128Kbit
RATE=128Kbit
BURST=2k
LEAF=sfq
PRIO=6
RULE=:6111,
RULE=:6112,
RULE=:6113,
RULE=:6114,
RULE=:6115,
RULE=:6116,
RULE=:6117,
RULE=:6118,
RULE=:6119,
RULE=:6120,
RULE=:6200,
RULE=:6151,
RULE=,:6151
RULE=,:6111
RULE=,:6112
RULE=,:6113
RULE=,:6114
RULE=,:6115
RULE=,:6116
RULE=,:6117
RULE=,:6118
RULE=,:6119
RULE=,:6120
RULE=,:6200
[root@neogame htbxx]#
—CATATAN disini eth0 adalah interface internet; dan eth1 adalah interface ke LAN
[root@neogame htbxx]# cat eth1
DEFAULT=70
[root@neogame htbxx]# cat eth1-2.root
RATE=9000Kbit
BURST=2k
QUANTUM=6000
[root@neogame htbxx]# cat eth1-2:10.csjmn
CEIL=230Kbit
RATE=128Kbit
QUANTUM=6000
BURST=2k
LEAF=sfq
PRIO=2
RULE=,202.169.224.0/20
RULE=202.169.224.0/20,
RULE=,202.169.232.0/24
RULE=202.169.232.0/24,
Rule untuk local loop anda jadi ini ada bs tanyakan ke ISP anda; eth1-2:10.csjmn
[root@neogame htbxx]# cat eth1-2:27.csiix
CEIL=20Kbit
RATE=20Kbit
BURST=2k
LEAF=sfq
PRIO=20
RULE=,:27005
RULE=,27005
RULE=27005,
RULE=:27005,
RULE=,:27015
RULE=,:27016
RULE=,:27017
RULE=,:27018
RULE=,:27019
RULE=,:27020
RULE=,:27021
RULE=,:27022
RULE=,:27023
RULE=,:27024
RULE=,:27025
RULE=:27015,
RULE=:27016,
RULE=:27017,
RULE=:27018,
RULE=:27019,
RULE=:27020,
RULE=:27021,
RULE=:27022,
RULE=:27023,
RULE=:27024,
RULE=:27025,
RULE=:27005
RULE=:27015
RULE=:27016
RULE=:27017
RULE=:27018
RULE=:27019
RULE=:27020
RULE=:27021
RULE=:27022
RULE=:27023
RULE=:27024
RULE=:27025
[root@neogame htbxx]# cat eth1-2:30.www
CEIL=54Kbit
RATE=54Kbit
QUANTUM=6000
BURST=2K
LEAF=sfq
PRIO=3
RULE=:10007,
RULE=,:10007
RULE=*:10007,
RULE=,*:10007
RULE=:443
RULE=:80,
RULE=,:80
RULE=,*:80
RULE=*:80,
RULE=,*:8080
RULE=*:8080,
RULE=:8080,
RULE=,:8080
Khusus eth1-2:30.www rule ini untuk memanage bw untuk login RF-online, seal-online, cabal, dll;
[root@neogame htbxx]# cat eth1-2:32.ip2
CEIL=64Kbit
RATE=8Kbit
QUANTUM=6000
BURST=2K
LEAF=sfq
PRIO=4
RULE=192.168.0.2,
RULE=,192.168.0.2
[root@neogame htbxx]# cat eth1-2:37.ip7
CEIL=64Kbit
RATE=8Kbit
QUANTUM=6000
BURST=2K
LEAF=sfq
PRIO=4
RULE=,192.168.0.7
RULE=192.168.0.7,
[root@neogame htbxx]#
untuk memanage IP client eth1-2:37.ipxx
–dan yg terakhir EdIT file htb.init-v0.8.5 menjadi sbb: HTB_PATH=${HTB_PATH:-/root/htbxx}
Ekseskusi file dgn perintah htb.init-v0.8.5
[root@neogame ~]# ./htbscriptnya ?
Usage: htbscriptnya {start|compile|stop|restart|timecheck|list|stats}
[root@neogame ~]# ./htbscriptnya start
check hasil kerja anda; jika anda ketikkan di console akan keluar hasilnya sbg berikut :
[root@neogame ~]# tc qdisc
qdisc htb 1: dev eth0 r2q 10 default 40 direct_packets_stat 425
qdisc sfq 24: dev eth0 parent 1:24 limit 128p quantum 1514b perturb 10sec
qdisc htb 1: dev eth1 r2q 10 default 70 direct_packets_stat 37
qdisc sfq 10: dev eth1 parent 1:10 limit 128p quantum 6000b perturb 10sec
qdisc sfq 27: dev eth1 parent 1:27 limit 128p quantum 1514b perturb 10sec
qdisc sfq 30: dev eth1 parent 1:30 limit 128p quantum 6000b perturb 10sec
qdisc sfq 31: dev eth1 parent 1:31 limit 128p quantum 6000b perturb 10sec
qdisc sfq 32: dev eth1 parent 1:32 limit 128p quantum 6000b perturb 10sec
qdisc sfq 33: dev eth1 parent 1:33 limit 128p quantum 6000b perturb 10sec
qdisc sfq 34: dev eth1 parent 1:34 limit 128p quantum 6000b perturb 10sec
qdisc sfq 35: dev eth1 parent 1:35 limit 128p quantum 6000b perturb 10sec
qdisc sfq 36: dev eth1 parent 1:36 limit 128p quantum 6000b perturb 10sec
—cut—
atau [root@neogame htbxx]# cat /var/cache/htb.init |more
[root@neogame htbxx]# cat /var/cache/htb.init |more
/sbin/tc qdisc del dev eth0 root
/sbin/tc qdisc add dev eth0 root handle 1 htb default 40
/sbin/tc qdisc del dev eth1 root
/sbin/tc qdisc add dev eth1 root handle 1 htb default 70
/sbin/tc class add dev eth0 parent 1: classid 1:2 htb rate 512Kbit burst 2k
/sbin/tc class add dev eth0 parent 1:2 classid 1:24 htb rate 128Kbit ceil 128Kbit burst 2k prio 6
/sbin/tc qdisc add dev eth0 parent 1:24 handle 24 sfq perturb 10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6111 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6112 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6113 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6114 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6115 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6116 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6117 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6118 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6119 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6120 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6200 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport 6151 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6151 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6111 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6112 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6113 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6114 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6115 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6116 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6117 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6118 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6119 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6120 0xffff classid 1:24
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport 6200 0xffff classid 1:24
/sbin/tc class add dev eth1 parent 1: classid 1:2 htb rate 9000Kbit burst 2k
/sbin/tc class add dev eth1 parent 1:2 classid 1:10 htb rate 128Kbit ceil 230Kbit burst 2k prio 2
/sbin/tc qdisc add dev eth1 parent 1:10 handle 10 sfq perturb 10 quantum 6000
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 202.169.224.0/20 classid 1:10
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip src 202.169.224.0/20 classid 1:10
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 202.169.232.0/24 classid 1:10
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip src 202.169.232.0/24 classid 1:10
/sbin/tc class add dev eth1 parent 1:2 classid 1:27 htb rate 20Kbit ceil 20Kbit burst 2k prio 20
/sbin/tc qdisc add dev eth1 parent 1:27 handle 27 sfq perturb 10
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27005 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 27005 classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip src 27005 classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27005 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27015 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27016 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27017 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27018 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27019 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27020 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27021 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27022 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27023 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27024 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27025 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27015 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27016 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27017 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27018 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27019 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27020 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27021 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27022 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27023 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27024 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 27025 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27005 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27015 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27016 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27017 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27018 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27019 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27020 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27021 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27022 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27023 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27024 0xffff classid 1:27
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 27025 0xffff classid 1:27
/sbin/tc class add dev eth1 parent 1:2 classid 1:29 htb rate 9000Kbit ceil 9000Kbit burst 2K prio 4
/sbin/tc qdisc add dev eth1 parent 1:29 handle 29 sfq perturb 10
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 22 0xffff classid 1:29
/sbin/tc class add dev eth1 parent 1:2 classid 1:30 htb rate 54Kbit ceil 54Kbit burst 2K prio 3
/sbin/tc qdisc add dev eth1 parent 1:30 handle 30 sfq perturb 10 quantum 6000
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 10007 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 10007 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 10007 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 10007 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 443 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 80 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 80 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 80 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 80 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 8080 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 8080 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip sport 8080 0xffff classid 1:30
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dport 8080 0xffff classid 1:30
/sbin/tc class add dev eth1 parent 1:2 classid 1:32 htb rate 8Kbit ceil 64Kbit burst 2K prio 4
/sbin/tc qdisc add dev eth1 parent 1:32 handle 32 sfq perturb 10 quantum 6000
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip src 192.168.0.2 classid 1:32
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 192.168.0.2 classid 1:32
/sbin/tc class add dev eth1 parent 1:2 classid 1:33 htb rate 8Kbit ceil 64Kbit burst 2K prio 4
/sbin/tc qdisc add dev eth1 parent 1:33 handle 33 sfq perturb 10 quantum 6000
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 192.168.0.3 classid 1:33
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip src 192.168.0.3 classid 1:33
/sbin/tc class add dev eth1 parent 1:2 classid 1:34 htb rate 8Kbit ceil 64Kbit burst 2K prio 4
/sbin/tc qdisc add dev eth1 parent 1:34 handle 34 sfq perturb 10 quantum 6000
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 192.168.0.4 classid 1:34
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip src 192.168.0.4 classid 1:34
/sbin/tc class add dev eth1 parent 1:2 classid 1:35 htb rate 8Kbit ceil 64Kbit burst 2K prio 4
/sbin/tc qdisc add dev eth1 parent 1:35 handle 35 sfq perturb 10 quantum 6000
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst 192.168.0.5 classid 1:35
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip src 192.168.0.5 classid 1:35
—-cut—-
sebenarnya untuk game online jika anda main di tempat sepi BW yg di butuhkan rata2 2kbps/3kbps per PC, tetapi jika anda masuk ke map yg penuh/zone war maka bw yg di butuhkan kisarannya antara 20-32kbps Per PC, keculai CS bw perkomputer 45kbps. Jadi hati2 untuk pembagian BW jgn sampai keliru bs2 nanti lag gr2 salah shaping. untuk login ke game atau patch biasanya lewat PORT 80, 8080, 10007 DLL.
untuk monitoring Penggunaan bw PER PC bisa anda install IFTOP
Demikian tutorial singkat ini, semoga bisa membantu. KRITIK DAN SARAN saya nantikan!!!!!!!!!!!!
best & regards;