Wondershaper
A HupWiki-ből...
A wondershaper egy egyszerű "traffic shaping" script, amely a csomagok prioritásának automatikus kezelésével elősegíti, hogy az interaktív forgalom (pld. böngésző) mindig előnyt élvezzen, a fel-/letöltések ne fogják vissza egymást (P2P!), stb.
Telepítés
Kernel: ha saját kernelt forgatsz, a következő opciókat kapcsold be (amennyiben moduláris kernel lesz, szögleteszárójelben a kernelmodul neve) a "QoS and/or fair queueing" részben:
- CBQ packet scheduler [sch_cbq]
- SFQ queue [sch_sfq]
- Ingress Qdisc [sch_ingress]
- QoS support
- Rate estimator
- Packet classifier API
- U32 classifier [cls_u32]
- U32 classifier performance counters, classify input device
- Use nfmark as a key in U32 classifier
- Packet ACTION
- Policing Actions [police]
Debian esetén a modconfot használva: elég a 'netlink_dev' és a 'qos' minden alpontja.
Csomag: legtöbb disztróból elérhető a wondershaper csomag.
Beállítás
Előszőr egy kis hibajavítás: amennyiben nem a bash az alapértelmezett sh, írd át az /sbin/wondershaper első sorát "#!/bin/bash"re, különben nem fog megfelelően működni. (Már egy éve bent van a btsben ... :-(
Használata: a wondershaper parancs után szóközzel elválasztva meg kell adni, hogy melyik interfacet kezelje (eth0, ppp0, stb.) és a maximális le- és feltöltési sebességek (kilobit/secben). Kis sebességveszteség árán gördülékeny működést biztosít, ha 5-10% kevesebbet írsz a szolgáltató értékénél. Példa: wondershaper ppp0 500 125 (65/15 adsl kapcsolat)
Minden rendszerindításkor automatikus életbe léptetéséhez írd be pld. a saját init scriptedbe vagy jobb megoldás az /etc/network/interfaces kiegészítése (ha a netkapcsolatod használja ezt az állományt):
auto foo iface foo bar baz (...) up /sbin/wondershaper ppp0 500 100 down /sbin/wondershaper clear ppp0
Vagy egyszerűen egy init script végére szúrjuk be:
#wondershaper /sbin/wondershaper clear ppp0 /sbin/wondershaper ppp0 975 80