Tadas Šubonis aka Danker


GALA linijos srauto panaudojimas

Turinys

  1. Įžanga
    1. Techninė realizacija
    2. Reikiama įranga
  2. Eiga
    1. Linux paruošimas
    2. Branduolio paruošimas
      1. Kompiliuojame branduolį ant Debian
    3. ADSL modemo tvarkyklių kompiliavimas
    4. ATM į Ethernet
    5. Tinklo nustatymai
    6. DHCP tarnyba
    7. IGMP Proxy
      1. Diegimas
      2. Nustatymai
    8. Srauto ribojimas
      1. Diegimas
      2. Nustatymai
    9. TV žiūrėjimas kompiuteriuose
  3. Pabaigai
    1. Nuorodos
    2. Panašūs puslapiai

1. Įžanga

Vartotojai nusipirkę GALA paslaugą paprastai gauna galimybę žiūrėti TV per jiems skirtą TV priedėlį ir naudotis internetu kitais kompiuteriais Optimalaus plano greičiu. Visa tai paskirstoma per suteikiamą modemą-maršrutizatorių. Paprastai TV priedėlis ir kompiuteris jungiami prie maršrutizatoriaus taip, kad jie veiktų vienas nepriklausomai nuo kito ir vienas kito srauto jie negali naudoti. Perskaitę šį straipsnį jūs sužinosite, kaip pakeisti suteikia modemą-maršrutizatorių savo Linux tarnybine stotim ir kaip GALA linijos srautą (protarpiais pasiekia net apie 900kB/s!, o vidutinis greitis yra apie 700kB/s) panaudoti kitiems kompiuteriams. Taip pat bus galima kitiems kompiuteriams žiūrėti TV. Visi šie veiksmai bus atliekami Debian GNU\Linux Etch distribucijoje.

1.1. Techninė realizacija

TEO interneto ir GALA srautas yra tiekami per dvi atskiras ATM linijas. 8.35 linija - paprasto interneto linija, o 8.36 - GALA linija. Šias dvi linijas suteikiamas maršrutizatorius paprastai paskirsto per du atskirus VLAN tinklus (šiuo atveju tai yra panaudojama RJ-45 Ethernet tinklo "skylės" dalinimo įrenginyje). Ant pirmos skylės sujungtos su ATM 8.35 linija yra užjungta PPP Relay funkcija, kuri paverčia tą "skylę" PPP serveriu per kurį galima jungtis į "paprastą" internetą, o 4 "skylė" yra tiesiog tiltas su ATM 8.36 linija, kurioje yra DHCP serviso prieiga per kurią TV priedėlis pasiima savo adresą ir naudoja TV rodymui. Taip pat reikėtų pastebėti, kad GALA linija veikia tik TCP protokolas, tad galimės naudotis tik tokiais servisais, kurie juo naudojasi (HTTP, HTTPS) ir neveiks jokios kitos programos naudojančios tokius prokolus kaip UDP ar ICMP (ed2k tinklai, žaidimai).

1.2. Reikiama įranga

Jūsų Linux serveriui svarbiausia reikės dviejų dalykų: ADSL PCI ar USB modemo (modemai turintys tik PPPoE prieigą netinka!) ir vienos standartinės Ethernet tinklo plokštės. Šiuo atveju bus naudojama Micronet SP3300C modemas. Šis įrenginys lspci komanda atpažįstamas taip:

00:0b.0 System peripheral: Conexant ADSL AccessRunner PCI Arbitration Device (rev 01)
00:0b.1 ATM network controller: Conexant AccessRunner PCI ADSL Interface Device (rev 01)

2. Eiga

2.1. Linux paruošimas

Kad paruoštume serverį darbui, mums reikės įsidiegti šiuos paketus:

apt-get install linux-source-2.6.18 bzip2 libncurses5-dev br2684ctl libatm1-dev libatm1 build-essential iproute kernel-package dhcpd

2.2. Branduolio paruošimas

Taip pat bus reikalingi atitinkami nustatymai branduolyje, kad veiktų ADSL modemas ir kiti su ATM ir IP susiję dalykai. config byloje nustatymai turi būti tokie:

CONFIG_ATM=y
CONFIG_PPP=y
CONFIG_PPPOATM=y
# CONFIG_REGPARM is not set

Paprastai pirmieji du numatytame Debian Etch branduolyje (2.6.18) yra įjungti, tačiau trečiasis nėra išjungtas.

2.2.1. Kompiliuojame branduolį ant Debian

cd /usr/src
rm linux
tar -xjf linux-source-2.6.18.tar.bz2
ln -s linux-source-2.6.18 linux
cd linux
cp /boot/config-2.6.18-6-486 .config
make menuconfig

Atsivėrusiame branduolio nustatymų lange einame į Processor type and features ---> [ ] Use register arguments ir išjungiame šią reikšmę. Taip pat pasinaudokite gera proga išjungti nereikalingus branduoliui dalykus, jei jis bus naudojamas serveryje, tokius kaip V4L2, SOUND, įvairiausių nereikalingų video plokščių palaikymas ir panašiai - viskas kas nebus naudojama tame serveryje. Išjungite tik tas parinktis dėl kurių jūs esate tikri, kad nereiks ir neįtakos sistemos veikimo! Toliau eina sekantys veiksmai:

make-kpkg clean ; fakeroot make-kpkg --revision=3:galaBox.1.0 kernel_image
dpkg -i ../linux-image-2.6.18_galaBox.1.0_i386.deb
cd /boot ; mkinitrd -o initrd.img-2.6.18 2.6.18

Taip pat nepamirštame patikrinti ar teisingi GRUB nustatymai.

2.3. ADSL modemo tvarkyklių kompiliavimas

Parsisiunčiame tvarkykles:

mkdir -p ~/build/conexant
cd ~/build/conexant
wget -c http://patrick.spacesurfer.com/adsl/driver-2.6-latest.tar.bz2

Kompiliuojame:

tar -xjf driver-2.6-latest.tar.bz2
cd CnxADSL-6.1.2.007-PIM-2.6-1.7/
make
make install
cd KernelModule

Užkrauname modulį:

insmod CnxADSL.ko CnxtDslVendorId=0x14F1 CnxtDslArmDeviceId=0x1610 CnxtDslAdslDeviceId=0x1611 CnxtDslPhysicalDriverType=1

Jeigu modulis užsikrovė tvarkingai, tai paleidę komandą

dmesg | tail -n 2

turėtumėte matyti šias eilutes:

CnxADSL: module license 'unspecified' taints kernel.
CnxADSL: CnxtDsl_init Starting

Paruošiame, kad branduolys būtų užkraunamas su sistema:

cp CnxADSL.ko /lib/modules/$(uname -r)/extras
depmod -a
echo "CnxADSL" > /etc/modules

Taip pat reikės įkelti programinę įrangą į modemą šia komanda:

/etc/Conexant/cnxadslload /etc/Conexant/

Jeigu viskas įvyko tvarkingiai, tai dmesg turėtumėte matyti tokią išvestį:

CnxADSL: calBusCtlP46RegisterInterrupt
CnxADSL: ARMALIoctl TIG_LOAD_START Prepare device for download command=1074537729
CnxADSL: ARMALIoctl TIG_LOAD_DONE Device finished download OK? command=1074537731
CnxADSL: ARMSyncRoutine Resp2=0x107a4
CnxADSL: ARMSyncRoutine Resp2=0x0
CnxADSL:  init_kthread name "cardALDeviceBGThread" too long
CnxADSL:  init_kthread name truncated to "cardALDeviceBGT"
CnxADSL:  init_kthread name "cardALDeviceSIThread" too long
CnxADSL:  init_kthread name truncated to "cardALDeviceSIT"
CnxADSL:  init_kthread name "cardALDeviceTmrThread" too long
CnxADSL:  init_kthread name truncated to "cardALDeviceTmr

Padarome, kad modemo programinė įranga būtų įkeliama startuojant sistemai:

echo "install CnxADSL /sbin/modprobe --ignore-install CnxADSL ; /etc/Conexant/cnxadslload /etc/Conexant" >> /etc/modprobe.d/aliases

Jeigu telefono linija yra įkišta į modemą ir viskas tvarkingai suveikė, tai po kurio laiko paleidę komandą

cat /proc/net/atm/CnxAdsl\:0

turėtumėte matyti panašią išvestį į šią:

Conexant AccessRunner PCI ADSL Modem Adapter Status
----------------------------------

ADSL Line Connected

Line Rates:   Receive 7104 kbps     Transmit 640 kbps

ADSL Modulation:G.DMT, Rate Unlimited  /  Full Rate

ATM Virtual Channel IDs: no connections open

Physical Layer Stats:      Receive                   Transmit
 Noise Margin       17.44/ 10.82: 215           127.99/127.99:   0
 Attenuation              25.89                     17.50
 Power                                                -38

ATM Link Stats:      Receive           Transmit
 Bytes                     0                 53
 Cells                     0                  1
 Management Cells          0                  1
 CLP=0 Cells               0                  0
 CLP=1 Cells               0                  1
 HEC Errors                0
 Alignment Errors          0
 Unroutable Cells          0

AAL Link Stats:          Receive           Transmit
 Good Bytes                    0                  0
 Good Frames                   0                  0
 Discarded Bytes               0
 Discarded Frames              0
 CRC Errors                    0
 Invalid Length Errors         0
 Timeout Errors                0

Driver version - 6.1.2.007-PIM-2.6-1.4 (14072005)
EE PROM Mac Address 00.05.b4.11.3c.2d

Mano atveju buvo naudojamas P1 100Mhz 32RAM kompiuteris, tad branduolį teko kompiliuoti ant kitos debian sistemos, tad jeigu pas jus ta pati situacija, tai ADSL modemo tvarkykles taip pat kompiliuokite ant to kompiuterio, kur kompiliavote branduolį, nes kitu atvejus TVARKYKLĖS NEVEIKS. Taip pat reikėtų pastebėti, kad šios tvarkyklės yra labai jautrios branduolio nustatymams - jei per daug visko išjungsite jos gali neveikti. Yra tikrai žinoma, kad jos veikia su standartine Debian Etch branduolio konfigūracija.

2.4. ATM į Ethernet

Kad mes galėtume naudotis internetu, kuris eina per ATM liniją, mums reikės jį "paversti" į paprastą Ethernet įrenginį. Tam mes naudosime br2684ctl komandą. Kad viską tai automatizuotume, mes padarysime paleisties programėlę /etc/init.d/br2684teo su turiniu:

#!/bin/sh

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

set -e

start_g () {
        echo -n "Uzkraunama ATM -> Ethernet tiltai"
        br2684ctl -c 0 -a 8.35 -b
        br2684ctl -c 1 -a 8.36 -b
}

stop_g () {
        echo -n "ATM->Ethernet tiltai panaikinami"
        kill $(cat /var/run/nas1.pid) $(cat /var/run/nas0.pid)
}
case "$1" in
  start)
        start_g
        ;;
  stop)
        stop_g
        ;;
  restart|force-reload)
        stop_g
        start_g
        ;;
  *)
        N=/etc/init.d/br2684teo
        echo "Usage: $N {start|stop|restart}" >&2
        exit 1
        ;;
esac
exit 0

Padarome, kad visa tai užsikrautų pasileidžiant sistemai:

chmod u+x /etc/init.d/br2684teo
update-rc.d br2684teo start 37 S .

2.5. Tinklo nustatymai

Teo turbūt nepalaiko PPPoATM prisijungimų (bent jau man nepavyko jų priversti veikti ant Linux, o ant Windows neturėjau dar progos patikrinti), tad mes turėsime naudotis tokiu principu: ATM->Ethernet->PPP . Paleidę br2684teo (/etc/init.d/br2684teo start), paleiskite pppoeconf programą, kuris ant nas0 įrenginio suras PPP paslaugą ir patogiai leis nustatyti visus atinkamus parametrus (vartotojo vardas, slaptažodis). Nepamirškite pažymėti, kad tai būtų numatytasis jūsų kelias (route) tinklo srautui.

Užvadiname maršrutų lentelę, kuri bus naudojama kiek vėliau:

echo "1 galaLine" >> /etc/iproute2/rt_tables

Tam kad, nustatymai būtų užkraunami automatiškai pasileidžiant sistemai, /etc/network/interfaces bylos turinys turi būti toks:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
#iface eth0 inet dhcp
auto eth0
iface eth0 inet static
address 192.168.0.2
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255

auto dsl-provider
iface dsl-provider inet ppp
pre-up /etc/network/teo/nas0prepare
provider dsl-provider

auto nas1
iface nas1 inet dhcp
post-up /etc/network/teo/nas1post

Kad mums dhclient nenustatinėtų dar vieno nereikalingo "kelio" maršrutizavimo lentelėse dėl kurio gali vėliau kilti daug problemų, tai reikia pasirūpinti, kad /etc/dhclient.conf byloje turi būti ši eilutė (taip mes atsisakysime, kad dhclient nereikalautų routers užklausos, kuri ir nustato tą kelią):

interface "nas1" {
request subnet-mask, broadcast-address, time-offset, domain-name, domain-name-servers, host-name;
}

/etc/network/options bylos turinys:

ip_forward=yes
spoofprotect=yes
syncookies=no

eth0 yra mūsų vietinio tinklo įrenginys, o dsl-provider, tai jūsų nustatytas PPP susijungimo vardas. Taip pat reikės kelių papildomų bylų, kurios sutvarkys kitus tinklo nustatymus (tinklo maršrutai, ugniasienės nustatymai):

/etc/network/teo/nas0prepare

#!/bin/sh
/sbin/ifconfig nas0 up

/etc/network/teo/nas1post

#!/bin/sh
/sbin/ip rule add fwmark 3 table galaLine
/bin/echo 0 > /proc/sys/net/ipv4/conf/nas1/rp_filter

/etc/ppp/ip-up.d/teo-route

#!/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin

if ["$PPP_IFACE" = "ppp0"]; then
        ip route add default table galaLine nexthop dev ppp0 weight 1 nexthop via 10.197.255.254 dev nas1 weight 12
        iptables-restore < /etc/network/teo/iptablesRules
fi

/etc/network/teo/iptablesRules

*filter
:INPUT ACCEPT [49:3700]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [51:5132]
-A INPUT -j ACCEPT
-A FORWARD -j ACCEPT
-A OUTPUT -j ACCEPT
COMMIT
*nat
:PREROUTING ACCEPT [472766:40394008]
:POSTROUTING ACCEPT [1962:125402]
:OUTPUT ACCEPT [2414:145674]
-A POSTROUTING -o ppp0 -j MASQUERADE
-A POSTROUTING -o nas1 -j MASQUERADE
COMMIT
# Completed on Wed Jun 11 16:46:19 2008
# Generated by iptables-save v1.3.6 on Wed Jun 11 16:46:19 2008
*mangle
:PREROUTING ACCEPT [34022565:38521245986]
:INPUT ACCEPT [24388507:32562138971]
:FORWARD ACCEPT [33835853:38497042885]
:OUTPUT ACCEPT [163723:15726407]
:POSTROUTING ACCEPT [34007345:38513006920]
-A PREROUTING -p tcp -m tcp --dport 80 -j MARK --set-mark 0x3
-A PREROUTING -p tcp -m tcp --dport 443 -j MARK --set-mark 0x3
COMMIT

Visoms šioms byloms (išskyrus /etc/network/teo/iptablesRules) reikia suteikti vykdymo teises (chmod u+x byla). Paaiškinsiu kai kurias šių bylų eilutes. Kadangi GALA linija gali eiti tik tcp paketai, tad mes gali ta linija naudotis, tik tokiais servisais ir programomis, kuriuos naudoja TIK juos. iptables komanda:

-A PREROUTING -p tcp -m tcp --dport 80 -j MARK --set-mark 0x3

pažymi nurodytus paketus (šiuo atveju HTTP ir HTTPS; pagal poreikį su tokia komanda prisidėkite kitus protokolus, kurie naudoja TIK TCP) 3 reikšme ir vėliau pagal tą žymę, paketų kelias bus nurodomas per GALA liniją. Tai atlieka galaLine maršrutizavimo lentelė su taisykle:

ip rule add fwmark 3 table galaLine

Taip pat, kad visą laiką nebūtų naudojama GALA liniją nurodytiems paketams, nepriklausant nuo apkrovos, mes panaudojame šią komandą, kad apkrova būtų paskirstyta tarp interneto ir GALA linijų:

ip route add default table galaLine nexthop dev ppp0 weight 1 nexthop via 10.197.255.254 dev nas1 weight 12

Parametrai weight nurodo santykinį linijos prioritetą - šiuo atveju paketai per GALA liniją bus siunčiami 6 kart dažniau negu per paprasto interneto. Šiuos parametrus galima keisti savo nuožiūra, bet reikėtų prisiminti ir tai, kad GALA linija yra naudojama ir žiūrėti TV, kuris jo veikimo metu, išnaudoja labai didelę dalį srauto (apie 600kB/s). Reikėtų įvertinti kaip dažnai bus žiūrima TV ir rinktis weight parametrą - jei dažniau tai rinktis mažesnį, jei rečiau - didesnį.

Jeigu dėl paskirstomo srauto yra problemų, galite tiesiog nustatyti, kad visas 3 žymės srautas eitų per GALA liniją (vietoje komandos su nexthop):

ip route add default via 10.197.255.254 dev nas1 table galaLine

Taip pat šiose ugniasienės taisyklėse nėra jokių apribojimų dėl saugumo. Tai padaryta sąmoningai, nes kiekvieno poreikiai yra skirtingi ir bandyti rašyti universalias taisykles nėra prasmės. Dabar visi srautai yra leidžiami todėl, kad būtų išvengta nenumatytų problemų bandant šį interneto dalinimą. Jas bus galima (ir rekomenduojama!) pakeisti savo nuožiūra tiesiog pridedant į /etc/networkTeo/iptablesRules bylą.

2.6. DHCP tarnyba

DHCP tarnyba yra reikalinga TV priedeliui, kuris adresą gauna naudojantis DHCP. Taip pat yra rekomenduojame naudoti DHCP servisą, kad nereikėtų vargti vis nustatinėjant kompiuterių IP ir kitus tinklo parametrus. /etc/dhcpd.conf nustatymų bylos turinys:

option subnet-mask 255.255.255.0;

default-lease-time 6000;
max-lease-time 7200;
option broadcast-address 192.168.0.255;
option routers 192.168.0.2; 
option domain-name-servers 212.59.2.2;
option domain-name "mydomain.org";

subnet 192.168.0.0 netmask 255.255.255.0 {
  range 192.168.0.2 192.168.0.40;
  host GalaTVBox {
            hardware ethernet 00:02:9b:33:xx:xx;
            fixed-address 192.168.0.6;
}
}
subnet 10.197.0.0 netmask 255.255.0.0 {
}

TV priedeliui mes suteikiame atskirą, nekintantį adresą, kad jam galėtume reguliuoti srautą. Šio priedelio MAC adresas paprastai būna užrašytas ant jo apačios. 10.197.0.0 potinklis yra reikalingas tam, kad DHCP serveris galėtų tvarkingai veikti su nas1 įrenginiu.

2.7. IGMP Proxy

Šis servisas bus reikalingas, kad būtų galime persiuntinėti multicast tipo adresus ir srautą, iš mūsų tarnybinės stoties, vietinio tinklo kompiuteriams. Trumpai tariant, tai bus reikalinga, kad būtų galima žiūrėti GALA TV vietiniame tinkle. Tam panaudosime igmpproxy servisą.

2.7.1. Diegimas

mkdir -p ~/build/igmpproxy ; cd ~/build/igmpproxy
wget -c http://mesh.dl.sourceforge.net/sourceforge/igmpproxy/igmpproxy-src-0.1-beta2.tar.gz
tar -xzf igmpproxy-src-0.1-beta2.tar.gz
cd igmpproxy/src
make
make install

Kad servisas būtų paleidžiames kartu su sistema, sukuriame bylą /etc/init.d/igmpproxy su turiniu:

#!/bin/sh

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/bin/igmpproxy
NAME=igmpproxy
DESC=igmpproxy

test -x $DAEMON || exit 0

set -e

case "$1" in
  start)
        echo -n "Starting $DESC: "
        start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
                --exec $DAEMON
        echo "$NAME."
        ;;
  stop)
        echo -n "Stopping $DESC: "
        start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \
                --exec $DAEMON
        echo "$NAME."
        ;;
  restart|force-reload)
        echo -n "Restarting $DESC: "
        start-stop-daemon --stop --quiet --pidfile \
                /var/run/$NAME.pid --exec $DAEMON
        sleep 1
        start-stop-daemon --start --quiet --pidfile \
                /var/run/$NAME.pid --exec $DAEMON
        echo "$NAME."
        ;;
  *)
        N=/etc/init.d/$NAME
        echo "Usage: $N {start|stop|restart|force-reload}" >&2
        exit 1
        ;;
esac

exit 0

Taip pat nustatome:

chmod u+x /etc/init.d/igmpproxy
update-rc.d igmpproxy defaults

2.7.2. Nustatymai

/etc/igmpproxy.conf turinys:

quickleave
# nas1 - įrenginys per kurį gaunamas TV srautas
phyint nas1 upstream  ratelimit 0  threshold 1
#tinklo nustatymai
        altnet 150.158.231.0/24
        altnet 10.0.0.0/8
        altnet 192.168.0.0/24

# eth0 mūsų vietinio tinklo įrenginys, kur ir bus siunčiamas TV srautas
phyint eth0 downstream  ratelimit 0  threshold 1

# išjungiame visus nenaudojamus įrenginius
phyint eth1 disabled
phyint lo disabled
phyint ppp0 disabled
phyint nas0 disabled
phyint sit0 disabled

2.8. Srauto ribojimas

Kad galėtume netrukdomai žiūrėti TV, kai kiti kažką siunčia ir kad aplamai koks vienas žmogus nenugriebtų viso srauto, naudosime srauto ribojimus. Šiai užduočiai atlikti pasirinkau HTB.init. Jos konfigūravimas nėra sudėtingas ir ją paprasta įdiegti, tačiau galimybių stoka ji tikrai nesiskundžia.

2.8.1. Diegimas

cd /etc/init.d
wget -c http://kent.dl.sourceforge.net/sourceforge/htbinit/htb.init-v0.8.5
mv htb.init-v0.8.5 htb
chmod u+x htb
update-rc.d htb defaults
mkdir -p /etc/sysconfig/htb

2.8.2. Nustatymai

HTB nustatymai keičiami sukuriant bylas kiekvienam įrenginiui, kuris bus naudojamas srauto ribojimui, bei kuriant taisyklių bylas, kurios priklauso atitinkamam įrenginiui ir bus naudojamos suformuoti srauto kiekiams. Pateikiamuose pavyzdžiuose nas1 yra GALA linijos įrenginys, eth0 vietinio tinklo įrenginys, o ppp0 - linija per kurią gaunamas "paprastas" internetas. Reikėtų priminti, kad kompiuteris gali riboti tik IŠEINANTĮ iš savęs srautą! Todėl norint riboti įeinantį ir išeinantį srautą per mūsų interneto dalintuvą, taisykles reikės aprašyti eth0, nas1 ir ppp0 įrenginiams. Visos nustatymų bylos yra saugomos /etc/sysconfig/htb kataloge. Pateikiu kiekvienos bylos turinį:

/etc/sysconfig/htb/eth0

DEFAULT=20

/etc/sysconfig/htb/eth0-2.root

RATE=100Mbit

/etc/sysconfig/htb/eth0-2:10.www

RATE=8Mbit
LEAF=sfq

/etc/sysconfig/htb/eth0-2:10:12.http

RATE=30Kbps
CEIL=8Mbit
LEAF=sfq
PRIORITY=15
RULE=*:80

/etc/sysconfig/htb/eth0-2:10:13.https

RATE=30Kbps
CEIL=8Mbit
LEAF=sfq
PRIORITY=15
RULE=*:443

/etc/sysconfig/htb/eth0-2:15.galaTV

RATE=600kbps
LEAF=sfq

/etc/sysconfig/htb/eth0-2:15:16.galaBox

RATE=600Kbps
LEAF=sfq
PRIORITY=5
RULE=192.168.0.6

/etc/sysconfig/htb/eth0-2:15:17.galaPCUsers

RATE=600Kbps
LEAF=sfq
PRIORITY=9
RULE=*:1234

/etc/sysconfig/htb/eth0-2:18.ssh

RATE=10Kbps
LEAF=sfq
PRIORITY=1
RULE=*:22

/etc/sysconfig/htb/eth0-2:20.default

RATE=200Kbps
CEIL=100Mbit
LEAF=sfq
PRIORITY=15

/etc/sysconfig/htb/nas1

DEFAULT=20

/etc/sysconfig/htb/nas1-2.root

RATE=60Kbps
LEAF=sfq

/etc/sysconfig/htb/nas1-2:20.default

RATE=20Kbps
CEIL=60Kbps
LEAF=sfq

/etc/sysconfig/htb/ppp0

DEFAULT=20

/etc/sysconfig/htb/ppp0-2.root

RATE=80kbps
LEAF=sfq

/etc/sysconfig/htb/ppp0-2:16.ssh

RATE=10Kbps
LEAF=sfq
PRIORITY=1
RULE=*:22,

/etc/sysconfig/htb/ppp0-2:20.default

RATE=20Kbps
CEIL=60Kbps
LEAF=sfq
PRIORITY=10

CEIL reikšmė nurodo kiek daugiausiai atitinkama taisyklė galės išnaudoti srauto, jeigu jo bus laiso, o RATE kiek tai klasei skirti, jeigu laisvo srauto nėra. Kad geriau suprastumėte šių bylų turinį ir struktūrą, siūlau paskaityti apie HTB.init tinkinimą (less /etc/init.d/htb).

Visas šias taisyklių bylas galite rasti archyve htb.rules.tar.bz2.

2.9. TV žiūrėjimas kompiuteriuose

Paprasčiau žiūrėti GALA TV jūsų kompiuteriuose yra pasinaudoti VLC programa. Ji yra nemokama ir daugiaplatformė tad veikia Linux, Windows, MacOSX ir BSD sistemose. Patogiausia yra pasinaudoti pateikiamu transliavimo serverių sąrašu (Grojaraščio formatas): jį parsisiųskite, užkraukite (load playlist) ir spauskite ant norimo žiūrėti kanalo Playlist lange.

Grojaraštis: GalaTVPlaylist.m3u

3. Pabaigai

Tikiuosi jums buvo įdomu skaityti šį straipsnį ir kad iš jo jūs turėsite praktinės naudos. Jeigu turite pasiūlymų kaip visa tai patobulinti ar radote klaidų ar neatitikimų, rašykite arba pataisykite patys. Jei kils neaiškumų, pasiskaitinėkite nuorodas ir/arba klauskite forume.

3.1. Nuorodos

3.2. Panašūs puslapiai

  1. Straipsniai
  2. Straipsniai/GalaLinijosSrautoPanaudojimas
  3. naujienos/2008-06-12/GalaLinijosSrautoPanaudojimas