Fórum Root.cz

Hlavní témata => Sítě => Téma založeno: woody_sk 10. 04. 2013, 12:21:42

Název: Měření datových toků ze stanic
Přispěvatel: woody_sk 10. 04. 2013, 12:21:42
Zdravim, chcel som sa opytať je nejaky program pre linux ktorym sa da zmeriat bandwidth resp. rychlost jednotlivych stanic vzavisloti na case(sekundy,minuty)ktore su pripojene na linuxovy router? Skusal som iperf, ale ten meria medzi dvoma stanicami klient server, a nie realtime. V podstate potrebujem zmeriat bandwidth dvoch stanic ktory je nastaveny pomocou HTB a CBQ
Název: Re:Meranie bandwidthu viacerych stanic
Přispěvatel: JardaP . 10. 04. 2013, 16:37:24
Nejsem si jist, jestli uplne dobre chapu otazku, ale mozna hledate treba bmon, ktery si pustite na stanici a koukate v realnem case, kolik dat leze. Je toho vic, ale nejak si nevzpomenu, jak se to jmenuje.
Název: Re:Meranie bandwidthu viacerych stanic
Přispěvatel: woody_sk 10. 04. 2013, 17:14:47
Znie to dobre skusim ho. Tento program monituruje len rozhranie stanice. Mne šlo o program ktorý dokáže meriať pásmo priamo na linuxe(routry) pre jednotlivé IP tých stanic.
Název: Re:Meranie bandwidthu viacerych stanic
Přispěvatel: JardaP . 10. 04. 2013, 18:04:37
Aha. Mozna iptraf? Kdyz se to postve na vnitrni rozhrani, tak by tam mel byt videt provoz pro jednotlive toky od prislusnych ip. Akorat je otrava, ze neni videt rychlost v bps pro vsechny stanice zaroven. Musi se vybrat, pak to chvili pocita a dole to vysype hodnotu.

Pokud byste na ten router dotlacil X, mohl byste spustit etherape. Tam se pak da kliknout na Nodes a vysypalo by to asi to, co chcete. Ale je otrava davat X na router. A samozrejme, vsechno tohle predpoklada router z PC a ne nejakou pixlicku s OpenWRT nebo jeste hur, nejaky na Linuxu postaveny bastl s webovym rozhranim.

A ted jsem si vzpomnel na jnettop. Ten by vysypal rychlosti pro vsechny najednou, pokud se vejdou na stranku.
Název: Re:Meranie bandwidthu viacerych stanic
Přispěvatel: Mirek Prýmek 10. 04. 2013, 18:28:15
Záleží na tom, jestli chceš přesně měřit tok dat, nebo ti jde spíš o jejich množství za nějaký časový úsek. Pokud to druhé, není špatné použít SNMP - dá se zmonitorovat celá síť z jednoho místa, dělat si krásné barevné grafy a vůbec je to cool :)
Název: Re:Meranie bandwidthu viacerych stanic
Přispěvatel: JardaP . 10. 04. 2013, 18:29:57
BTW, jeste iftop.
Název: Re:Meranie bandwidthu viacerych stanic
Přispěvatel: woody_sk 10. 04. 2013, 20:46:36
Dikes za odpovede.
Aby som to uviedol na spravnu mieru ten linux router je PC s linuxom, ktory je pomocou IPtables a DHCP nakonfigurovaný ako router(sprava sa tak :)). A meriať chcem rýchlosť dátového toku za určitú jednotku času niečo na sposob iperf. Iptraf som skušal ten len ukazuje čo nim preechádza nie ako rýchlo :). Na etherape sa kuknem jnettop a SNMP sa kuknem.
Název: Re:Měření datových toků ze stanic
Přispěvatel: woody_sk 10. 04. 2013, 21:25:16
Resp iftop ukaže ako rýchlo len sa mi nepodaril dostať odtial log file s prenosovými rychlosťami za určitý čas(hodilo m ito nejaku chybu), ktorý mal namerať...MoŽem dostať odkaz na ten SNMP pre linux rad by som to preštudoval?:)
Název: Re:Měření datových toků ze stanic
Přispěvatel: Mirek Prýmek 10. 04. 2013, 21:59:00
MoŽem dostať odkaz na ten SNMP pre linux rad by som to preštudoval?:)
SNMP jako takový je poměrně rozsáhlá oblast. Je o tom dost informací, ale neumím doporučit něco konkrétního, kde by ses dozvěděl přesně jenom to, o co ti jde, a nebyl zahlcený spoustou věcí, který tě nebudou zajímat.

V kostce je to o tom, že SNMP je protokol, který umožňuje z nějakého stroje přes síť získat nějaké informace (nebo mu je předat, ale to tě nezajímá). Stroj má jakési chlívečky, ve kterých jsou jakési hodnoty. Ty chlívečky jsou pojmenované takzvanými OID. OID jsou potom uspořádané do stromu, tzv. MIB. Je to standardizované, takže základní věci budou i na různých strojích ve stejném chlívečku. Odchylky jsou, ale v tom, co chceš ty, spíš ne.

No, takže tebe budou třeba zajímat tyhle chlívečky (výpis z reálného zařízení, vždycky OID = hodnota):
# popis systemu
SNMPv2-MIB::sysDescr.0 = STRING: RouterOS RB751G-2HnD
# uptime
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (133492800) 15 days, 10:48:48.00
# pocet sitovek
IF-MIB::ifNumber.0 = INTEGER: 6
# MAC sitovky 1
IF-MIB::ifPhysAddress.1 = STRING: d4:ca:6d:xx:xx:xx
# stav (pripojeno/odpojeno)
IF-MIB::ifOperStatus.1 = INTEGER: up(1)
# citac bytu doslych na sitovku 1 (v B)
IF-MIB::ifHCInOctets.1 = Counter64: 58397225
# citac bytu odeslych ze sitovky 1
IF-MIB::ifHCOutOctets.1 = Counter64: 7412766
# citac poskozenych paketu ("vadny kabl")
IF-MIB::ifInErrors.1 = Counter32: 0
# pocet zahozenych paketu ("zarizeni nestiha")
IF-MIB::ifInDiscards.1 = Counter32: 0

...a vubec tam zjistis spoustu zajimavych informaci.  A to napric platformami - z routeru Cisco, z Mikrotiku, z Windows, Linuxu, FreeBSD...

Pokud se jedna o pocitac, musis doinstalovat software, ktery ty informace zpristupni - pro Windows se to instaluje kdesi v jakymsi submenu, to si vygoogli, na Linuxu nainstalujes treba net-snmp, na FreeBSD mas net-snmp nebo zabudovany bsnmpd.

No a pak potrebujes neco, cim se na ty hodnoty podivas, to bude snmpget a snmpwalk. Pak das neco takovehodle:
# snmpwalk -v2c -c public <stroj>
a uvidis vsechny hodnoty, ktere dany stroj v dane komunite (public) zverejnuje.

...takze abych se dostal k pointe: z nejakeho stroje periodicky ctes hodnotu IF-MIB::ifHCOutOctets.1 a IF-MIB::ifHCInOctets.1 a odectenim predchozi hodnoty ziskas pocet B, ktere dana sitovka za dany cas prenesla.

To je tak v kostce jak to funguje, detaily si uz najdes sam :)

Ruzne miby si muzes prochazet tady http://www.snmplink.org/OnLineMIB/Standards/ (i s komentarem, zajimat te bude hlavne vetev RFC 2233) nebo tady: http://www.oidview.com/mibs/0/IF-MIB.html (prehlednejsi, ale bez komentare)
Název: Re:Měření datových toků ze stanic
Přispěvatel: woody_sk 10. 04. 2013, 22:14:12
Ďakujem za pripomenutie SNMP:), preštudujem si ho podrobnejšie. A však stale to neodpovedalo na moje hľadanie pretože ja potrebujem vedieť akou rýchlosťou sa tie data prenašali v určitom čase(snaď v tych Štandartoch niečo najdem:))
Název: Re:Měření datových toků ze stanic
Přispěvatel: Mirek Prýmek 10. 04. 2013, 22:44:25
A však stale to neodpovedalo na moje hľadanie pretože ja potrebujem vedieť akou rýchlosťou sa tie data prenašali v určitom čase
Jak to myslíš, jakou rychlostí? Třeba v 10:00:00 přečteš hodnotu čítače bytů A a pak v 10:02:00 přečteš B a z toho si vypočítáš, že v téhle době průměrně tekla data rychlostí (B-A)/120 B/s.
Název: Re:Měření datových toků ze stanic
Přispěvatel: woody_sk 10. 04. 2013, 23:01:58
Hm, maš pravdu to som si neuvedomil. V tom prípade to skusím keď budem doma na sieti, dikes ;)
Název: Re:Měření datových toků ze stanic
Přispěvatel: Mirek Prýmek 10. 04. 2013, 23:03:38
Rádo se stalo.
Název: Re:Měření datových toků ze stanic
Přispěvatel: JardaP . 10. 04. 2013, 23:44:41
Ja mel kdysi na routery vec, tusim se to jmenovalo ntop. Ma to vlastni webserver a clovek se tam muze pripojit z jineho stroje a zobrazit si spoustu vselijakych statistik. Uz si to moc nepamatuji, je to uz par let, ale mozna tam je to, co hledate. BTW, zkuste se podivat na darkstat. Ziskal jsem pocit, ze to take umi hafo statistik.
Název: Re:Měření datových toků ze stanic
Přispěvatel: anonym 11. 04. 2013, 00:02:59
ntop je hezky trik, ale pokud chce clovek videt i traffic klient<->klient tak je na to kratky

nejspis bych pouzil neco jako ntop na routeru, spolu s per-port pocitadly ze switchu proes SNMP (ne ze stanic, to neni spolehlive).

taky pozor na to co SNMP opravdu znamena, chovat se podle toho ("Security is Not My Problem")
Název: Re:Měření datových toků ze stanic
Přispěvatel: ja 11. 04. 2013, 00:11:59
co konkrertne mas na mysli pod pojmom rychlost datoveho toku za jednotku casu, bandwidth alebo latenciu?
Název: Re:Měření datových toků ze stanic
Přispěvatel: woody_sk 12. 04. 2013, 20:38:41
Tým mam na mysli bandwidth