Начало Вход/Регистрация Помощ Tazi stranica s latinski bukwi
Области
 Новини
 Актуална тема
 Linux портали
 Какво е Линукс?
 Въпроси-отговори
 Форуми
   •Трудова борса
   •Конкурс
 Статии
 Дистрибуции
   •Поръчка на CD
 Made In BG
 Файлове
 Връзки
 Галерия
 Конференции
Настройки
 Външен вид
 Предложения
 Направи си сам
И още ...
 За нас
 Линукс за българи ЕООД
 Линк към нас
 Предложения

Подкрепяно от:
TelePoint - Място за хора със свободни идеи

SiteGround

initLab

Adsys Group

SAP Bulgaria

Въпроси отговори
Въпрос: problemi s HTB
[Търси: ]

ВНИМАНИЕ: Използвайте форумите на сайта за дa зададете вашите въпроси.

Към началото |Добави въпрос |Отговори
 
Въпрос
От: DINO (agboy20 __@__ yahoo[ точка ]com) Дата: 11/08/2005
 Zdraveyte, po princip ne sam ot tezi koito obichat da pitat
(sam se mucha cheteiki) no v sluchaia mai shte se naloji.
 Bih iskal da zadam konkreten vupros otnosno HTB, no mislia
 che bi bilo mnoog polezno i na drugi hora v podobno na moeto
 polojenie ako niaki napishe podrobno upatvane za HTB ot
 nachalo do krai s konkretni prakticheski primeri vatre bez
defaultnite klisheta koito ki ima v help failovete :-(.

 Ta da se vurna na moia problem - imame mreja ot niakolko
 choveka polzvashti asinhrona usluga - delim si po princip po
 ravno stoinostta na uslugata, no niakoi ne mogat da se
 samokontrolirat ot kum skorost na teglene, broi konekcii i
 t.n. i reshihme da si slojim Linux ruter s koito da se
 napravi tova - saotvetno na men mi se padna zadachata kato
chovke s nai-goliam opi :-(.

 Ta kakuv e problema - nalaga mi se da ogranichavam kakto
 skorost na teglene taka i na UP-stream i osven tova i broi
 konekcii na daden IP (i oshte niakolko s koito ne sreshnah
osoben problem).
 Uspiah da ogranicha konekciite s patch-o-matic, no
 zabeliazah che lovi samo TCP konekcii, za UDP takiva ne
 namerih alternativa i za sega go ostavih taka (ako niaki
moje da pomogne i za tova shte sam blagodaren).
 Problema mi s HTB e (osnovnia che ne sam rabotil do sega s
 nego - biah na CBQ do sega no ne sam dovoeln) che ne moga
 korektno da ogranicha UP-streama, a drugia problem e v
dinamichno ogranichavane, no neka da e edno po edno.

Purvo shemata na rabota:
Server na DEBIAN Sarge 3.1
iadro 2.6.11

 Inet ---- modem ---- eth1 (router) --- eth0 ---- (switch)
--- (users)
 na samia ruter se izplaniava NAT (s SNAT) za userite s
 iptables 1.3.3, i ogranichavane na konekciite pak s
iptables.


1.UPstream
 Po patia na logikata i ot infoto koeto poluchih tuk UP se
 ogranichava kato se slojat sashtite nastroiki kakvito sa za
downstream no na drugia interfeis.
Polzva se opashta bfifo na defaultna nastroika.
 Rezultata e slednia - ako predi sheipvaneto na UPlaod-a
 skorostta e mejdu 10 i 12KB/s (v dadenia sluchai) sled
 sheipvaneto skorostta pada na 0 stoi na 0 niakolko sekundi i
 pikovo skachana 6 do 8K posle pak pada na 0 i taka si varvi
 - grafikata stava nakuslechna ("roshava") s pikovi
nadviashvashti puti ukazanata skorost (2KB/s).

 2.Dinamichen sheip - kak tochno moga da ukaja kam daden IP
da imam edna skorost kam drugo druga.
 V moa sluchai e taka - pusnah skoro edin DC++ server na
 druga mashina ot mrejata na eth0 na rutera - t.e. da mogat
 userite da tegliat ot DC++ na edna skorost a neta da im e na
 druga - no da e dinamichno - primerno kanala e 10Mbps,
 zalagam 2Mbps da e Internet i 8 da e DC i ako da rechem ne
 se polzva poveche ot 1 Mbps internet drugia Mbps da se
razpredeli kum DC-to?

V moia slichai probvah sus slednite nastroiki
napravih si root klas s RATE 20KB/s (eth0-2.root)
posle 2 pod klasa (eth0-2:10.Inet) i (eth0-2:20.DC)
 v Inet klasa zadadoh RATE da e na 15KB/s kato na CEIL dadoh
 20KB/s, a na DC zadadoh tvardo RATE 5KB/s(t.e. ako sa i
 dvete neta da e na 15KB/s a DC na 5), i poneje prioriteta na
 Inet e po goliam ot tozi na DC logichno beshe pri dvete
 pusnati da e 15 kum 5 K, no ne - po otdelno tova deto e na
 5K diga nad 10KB/s, a kato gi pusna i dvtete si deliat
skorostta po ravno - t.e. ne 15 kum 5 ami 10 kum 10?!?

Blagodaria Vi predvaritelno, nadiavam se na help :-))



Отговор #1
От: Maznislav Дата: 11/08/2005
а сега го напиши на кирилица и обещавам да ти помогна


Отговор #2
От: DINO (agboy20 (a) yahoo< dot >com) Дата: 11/08/2005
 Това е меко казано гавра, но по добра алтернатива май нямам
:-(
 Здравейте, по принцип не съм от тези които обичат да питат
(сам се мъча четейки), но ж случая май ще се наложи.
 Бих искал да задам конкретен въпрос относно HTB, но мисля че
 би било много полезно и на хора в подобно на моето положение
 ако някой напише подробно упътване за HTB от начало до край
с конкретни практически примери, без 
Default-nite клишета които ги има в help файловете :-(.

 Та да се върна на моя проблем – имаме мрежа от няколко
 човека ползващи асинхронна услуга – делим си по принцип по
 равно стойността на услугата, но някои не могат да се
 самоконтролират от към скорост на теглене, брой конекции и
 т.н. и решихме да сложим Linux маршрутизатор, с който да се
 направи това – съответно на мен се падна като задача поради
най-големия опит с Linux :-(.

 Да се върнем на проблема – налага ми се да ограничавам,
 както скоростта на теглене така и тази на UP-stream и освен
 това и брой конекции на даден IP (и още няколко с които не
срещнах особен проблем).
 Успях да огранича конекциите с patch-o-matic, но забелязах,
 че лови само TCP конекции, за UDP такива не намерих
 латернатива и за сега го оставих така (ако някой може да
помогне и за това ще съм благодарен).
 Основно проблема ми е с HTB (основния, че не съм работил до
 сега с него – бях на CBQ до сега но не съм доволен), че не
 мога коректно да огранича UP-stream-а, а другия проблем е в
динамичното ограничаване, но нека да е едно по едно.

Схемата на работа:
Сървър на DEBIAN Sarge 3.1.
Ядро 2.6.11

  Интернет ---- Модем ---- eth1 (маршрутизатор) --- eth0 ----
(комутатор)
--- (потребители)

 На сървъра се изпълнява NAT (със SNAT) за потребители с
 iptables 1.3.3, и ограничаване на конекции пак с iptables
1.3.3.


1.UP stream
 По пътя на логиката и от инфото, което получих тук, UP се
 ограничава като се сложат същите настройки каквито са за
DOWN stream, но на другия интерфейс.
Използва се опашка bfifo на default-на настройка.
 Резултата е следния – ако преди ограничаването на UP
 stream-a скоростта е между 10 и 12KB/s (в дадения случай)
 след ограничаването скоростта пада на 0, стои на 0 няколко
 секунди и пикожо скача на 6 до 8KB/s, после пак пада на 0 и
 така си върви – графиката става накъслечна ("рошава") с
пикове надвишаващи пъти указаната скорост (2KB/s).

 2.Динамично ограничаване – как точно мога да укажа към даден
IP да имам една скорост, а към друго друга.
 В моя случай е така – пуснах скоро един DC++ server на друга
 машина с адрес от мрейата на eth0 на маршрутизатора – т.е.
 да могат потребителите да теглят от DC++ на една скорост, а
Интернет да им е на друга, и това да става динамично.
Конкретен пример:
 Канал с широчина 10Mbps, 2Mbps да е за Интернет и 8 да е за
 DC++ и ако да речем не се ползва повече от 1 Mbps за
Интернет мегабит да се разпредели към DC-to?

В моя случай пробвах със следните настройки:
 Направих root клас с RATE 20KB/s (eth0-2.root), после 2 под
 класа (eth0-2:10.Inet) i (eth0-2:20.DC). В Inet класа
 зададох RATE да е 15KB/s като на CEIL зададох 20KB/s, а на
 DC++ зададох твърдо RATE 5KB/s (т.е. ако са и двете услуги
 активни, то Интернет да е на 15KB/s, а DC++ на 5) и понеже
 приоритета на Inet е по-голям от този на DC++ логично беше
 ползваната лента да е 15KB/s към 5 KB/s, но не стана – по
 отделно това което е твърдо на 5KB/s вдига над 10KB/s, а
 като ги стартирам и двете да теглят си делят скоростта по
равно – т.е. не 15 към 5 ами 10 към 10?!?

Благодаря Ви предварително, надявам се на помощ :-))



Отговор #3
От: Maznislav Дата: 11/08/2005
провери си маил -а


Отговор #4
От: DINO (agboy20 (a) yahoo__dot__com) Дата: 11/08/2005
Мерси :-)
Ще огледам скриптовете.



Отговор #5
От: plamen Дата: 11/08/2005
DINO, удп е connectionless протокол, т.е. за да започне 
предаване на данни не се изгражда конекция.


Отговор #6
От: DINO (agboy20< at >yahoo__dot__com) Дата: 11/08/2005
plamen: mersi
 tova naistina ne go znaeh - propusk v obshtata mi kultura a
kuj se biah zanimaval s takiva neshta.
 T.e. ne triabva da se trevoja za udp-tata koito ne gi lovi
connlimita ot pacha.



Отговор #7
От: steve Дата: 11/10/2005
 Greshish kato si mislish che za da sheipnesh izhodqshtiqt
 trafik pishesh sushtoto koeto e za vhodqshtiqt kato smenish
 interfeisa. Naistina izhodqshtiqt se sheipva na interfeisa
 kum ISP-to a vhodqshtiqt na interfeisa kum switch-a, no ima
 edna druga podrobnost. Pri izhodqsht trafic tvoqt IP adres e
 source IP adresa, a destination IP adresa e suotvetno adresa
 na otdalechenata mashina. V takuv sluchai trqbva da se
 sheipnesh adresa s src, a ne dst. I oshte edna podrobnost,
 ako izpolzvash NAT chastnoto ti IP ne moje da se vidi na
 interfeisa ti kum dostavchika, t.e. na samiqt interface nqma
 kak da sheipnesh po chastno IP izhodqshtiqt ti trafic. Za
 tova se izpolzva markirane s iptables v -t mangle i posle ne
se izpolzva u32 kakto pri downstream-a :)

 Btw, i az da te ptiam neshto, kaji tochno patch-o-matic si
 slojil na tozi kernel 2.6.11 che ne mi se igrae da testvam i
 da mi gurmi kompilaciqta, kakto chesto se sluchva kogato ne
se uluchi patch-a koito trtqbva sa suotvetniqt kernel :)



Отговор #8
От: DINO (agboy20< at >yahoo __точка__ com) Дата: 11/10/2005
Mersi za otgovora steve.
Otnosno vaprosa ti:
Debian Sarge 3.1 Stable
Kernel 2.6.11
patch-o-matic-ng-20050918
iptables 1.3.3

 Mojesh li da mi paste-nesh niakolko primerni conf file-a za
 HTB poneje vcehra mi se sluchi neshto mnogo interesno -
 eksperimentalno pusnah HTB na 10-tina choveka i pinga kam
 servera (eth0) trugna baia nad dopustimoto - okolo 4000ms i
nakraia se flood-na i zabi LAN kartata na servera?!?
Eto kakvi conf failove sam izpolzval:
 direktoria ot koiato se izpalniavat failovete:
/etc/sysconfig/htb

1.eth0
DEFAULT=50

2.eth0-2.root
RATE=10Mbps
BURST=5k

3.eth0-2:10.www
RATE=5Mbps
BURST=10k

4.eth0-2:10:300.11
RATE=42500
CEIL=85000
BURST=5k
PRIO=4
RULE=192.168.0.11 #User name :-)

 Vsichki adresi koito sam zadaval sa kato v tochka 4
 (promenial sam samo poslednoto chislo spored IP-to na user-a
- 11, 12 ...)

5.eth0-2:50.dfl
RATE=1Kbit
BURST=1k
PRIO=7


Отговор #9
От: steve Дата: 11/10/2005
 Znachi shte ti dam edna ideq, da ne izpolzvash tozi script
 htb.init zashtoto s nego samo moje da se oburkash oshte
 poveche. Sega shte ti obqsnq zashto ti sa se vdignali
pingovete kum gateway-qt

 Vsushtost ako si sheipnal IP-to si po tozi nachin s tozi
 HTB.init e napulno normalno kogato si izcedish trafika koito
si sheipnal da ti se vdigne pinga i do gateway-qt.
 Tova se dulji na slednata prichina. Shapinga na downsteram-a
 ti se namira na interfeisa kum teb. Tui kato imash samo edin
 root clas koito e s opredelena skorost i suotvetno chrez
 filtur si vkaral IP-to si pri download si zapulvash vsichko
 tova vaji i za chastniqt adres na interefeisa ti kum teb
 koito e. Ako iskash do routera da imash dobur ping vinagi,
 t.e. da ne ti se vdiga (tova e jelatelno poradi mnogo
 prichini, naprimer ako na routera imash DNS server i pinga
 ti e izcuklin do nego po bavno shte ti raboti DNS sistemata
 na kompiutarut, t.e. po bavno shte vzemash IP-to koeto ti
 trqbva za suotvetnoto ime). Tochno poradi tazi prichina e
 dobre tova qvlenie da go nqma. Za celta zapochni da si
 pishesh samo komandichkite s tc bez tezi neshta kato
 htb.init. Toi sam po sebe si e podhodqsht samo kogato imash
 nqkakuv web server, mail server i t.n. s edna mrejova karta
 da im sheipnesh trafika za vsqka usluga po otdelno, To taka
e napraveno i po default dori, za www, smtp i t.n.

 Po princip se procedira po sledniqt nachin. Predi da
 suzdadesh shaping politikata trqbva da imsh predvid kolko
 poluchavash ot ISP-to ti i dali poluchavash edna i sushta
 skorost ot BG Peeringa ili mejdunarodniqt. Ako skorosta e
razlichna trqbva da gi sheipvash po otdelno.

Downstream:
 suzdava se qdisk kum eth1 i se suzdavat tri klasa kato
 purviqt e default. S purviqt se sheipva mejdunarodniqt.
 Vtoriqt clas e za BG Peeringa. Za da opredelish trafika kato
 BG Peering trqbva kum tozi klas da slojish filtri za vsqka
 destinaciq ot BG Peeringa. Spokoino za da ne pishesh stotici
 redove za filtri mojesh da pusnesh edin cikul i s dva reda
 da realizirash tova. V Sluchaqt pri tozi itnerfeis za tozi
 trafika treqbva da izpolzvash src, tui kato pri downstream
 iztochnika e source adresa i po source adresckarvash tozi
 trafik v tozi klas. Tretiqt klas shte e s mnogo golqma
 skorost, naprimer 90 mbps V nego shte vkarash edin filtur
 samo i tova shte e src IP 192.168.0.0/16 ako ti e takova
 chastnoto adresno prostranstvo :) Tova se pravi tochno za da
 nqmash tozi problem koito si opisal s vdigane na pingovete
kum routera ti :)

 Pir upstream-a pravish sushtoto na eth0 samo che imash
 predvid che otdalechenata mashina e dst, t.e. destination
adres, a ti si source adres.

 Sled tova v purviqt i vtoriqt klas suzdavash otnovo
 qdisk-ove i veche addvash opredelen broi podklasove, kato
 obshtata skorost na podklasovete da ne previshava skorosta
 na root clasa. Vuv vseki podklas moje da vkarash edin ili
 poveche filtri s IP adresite na klientite. Ako v edin klas
 vkarvash poveche ot edin filtur, t.e. s edin klas sheipvash
 poveche ot edin klient (spodelena skorost) trqbva da
 izpolzvash sfq, kato za po efektivna rabota moje da
 prekompilirash kernela kato v edno failche (ot koda na
 kernela) promenish stoinosta na edna konstanta SFQ_DEPTH ot
128 na 15 naprimer :)

 I pak imai predvid che kato pishesh filtur za vseki klient
 na eth kudeto sheipvash izhofqshtiqt tam ne se vijda
 chastniqt im adres i za tova filtura ne trqbva da izpolzva
u32 a chrez markirane kakto ti opisah v predniqt posting.


 Pisha ti tolkova shtoto iskam da go razberesh, nqma da ti
 puskam gotovi scriptove shtot polzata e nikakva, shte go
 pastnesh, shte zaraboti i do tam a tochno hubavoto e chovek
 da znae kakvo pravi. Kato za nachalo si poigrai oshte malko
 s htb.init. Startirai go s parametur compile i vij tochno
 kak se izgrajdat qdisk i clasovete. Posle procheti tova
 koeto ti trqbva ot www.lartc.org i nakraq se opitai da
napravish tova za koeto ti govorih.

JElaq ti uspeh :)



Отговор #10
От: DINO (agbo20 (a) yahoo[ точка ]com) Дата: 11/11/2005
 Mersi steve, oceniavam nachina ti na obiasnenie - vse pak
ideata e da naucha neshto :-))
Ako zaciklia niakude shte pisah pak ;-P



<< Моля помогнете-Дебиан и SATA software RAID (1 ) | видео (3 ) >>

 
© 2011-... Асоциация "Линукс за българи"
© 2007-2010 Линукс за българи ЕООД
© 1999-2006 Slavej Karadjov
Ако искате да препечатате или цитирате информация от този сайт прочетете първо това
Външния вид е направен от MOMCHE
Code Version: 1.0.8 H (Revision: 23-09-2011)
 
Изпълнението отне: 0 wallclock secs ( 0.07 usr + 0.00 sys = 0.07 CPU)