Multicast routing v Linuxu
Michal Rybarik
michal.rybarik na ecce.sk
Středa Červenec 14 14:33:07 CEST 2010
Zdravim,
>> Hrál jsem si s tím kdysi v prehistorických časech jader 2.2 a 2.4, ale
>> jak jsem dnes s nemalým překvapením pomocí Google zjistil, nic se od té
>> doby nezměnilo, jen how-to zastarala, userspace routovací démoni
Hrozne zistenie, ze? Dosiel som pred casom k podobnemu. Ked nad tym tak
rozmyslam, tak dovodom bude to, ze to na linuxe nikto nepouziva.
Multicast totiz riesi situaciu, ked sa maju jedny a tie iste data
prenasat sietou N-nasobne naraz, pre N uzivatelov. Mysli sa lokalna
siet, nie internet - na internete nie je multicast bezne podporovany a
teda na nom s multicastom nic nevyriesite. A aby sme mali lepsiu
predstavu, kedy uz nutne musite mat multicast na lokalnej sieti, lebo
unicast tam proste kapacitne nestaci - ak mate gigabitovu siet (cenovo
dnes nie je problem), a mate 100kbit datovy tok, napriklad stereo radio
v near-CD kvalite, unicastom mozete takyto stream teoreticky distribovat
"len" k 10tisic uzivatelom na LAN sucasne. :) Ked mate HD TV vysielanie
v MPEG2, co je kapacitne najvacsia vec aku do multicastu poznam, vojde
ich do gigabitu 40 naraz, v uspornejsom H264 okolo 200. Beznych SD
(nie-HD) TV programov v MPEG2 sa do gigabitu vojde okolo 200, v novsom a
uspornejsom kodeku H264 okolo 1000. Na vacsie pocty nez uvedene, naozaj
potrebujete multicast. Ale take pocty nemoze nikto doma alebo v malej
firme na LANke potrebovat. A vo velkej firme alebo na urovni operatora,
tam sa nerobia core siete na linuxe. :o) Linux je skvely, ale na
seriozne presuvanie takejto hromady dat je nutne pouzit nieco, co je na
to primarne urcene. Ked si zoberieme ako priklad IPTV (technologia v
plienkach, ktora je momentalne snad jedinym pouzitim multicastu),
programova ponuka operatora ma celkovo 100 az 700 megabit, podla bitratu
a poctu programov. Aby to fungovalo pouzitelne (ze vam to klient
neomlati o hlavu), potrebujete 0.000000% packet loss a ziadne lagovanie,
pretoze jeden strateny alebo opozdeny paket vam spravi z obrazu farebne
kosticky na sekundu-dve-tri. Da sa mozno tolerovat jeden
stateny/opozdeny paket za den, ale nie za hodinu. A takyto tok dat musi
byt zachovany aj za okolnosti, ked sa vam prave sietou prehana desiaka
wormov alebo prisiel nejaky broadcast storm. Takyto prenos seriozne
zvladaju iba "top" switche, cenovo zacinajuce niekde okolo 25-50 tisic
korun za jeden switch. Najnizsia cenova kategoria switchov, ktore sa
tvaria, ze nieco take zvladnu, je nieco okolo 4-5tisic korun za kus, ale
to je uplne najnizsia trieda, ktora robi farebne kocky v obraze
niekolkokrat za den, mozete pripojit tak 5 ludi na 24port switch a
musite strazit aby nemali virusy. Tieto switche su dobre na chvilu, kym
nenasetrite na lepsie. Linux so svojou architekturou je vhodny na vsetko
mozne, ale na toto urcite nie - svajciarsky nozik je super svojou
univerzalnostou, ale ked chcete stavat dom, treba sa poobzerat aj po
inych nastrojoch :)
BTW, aky dovod vas vlastne doviedol k multicastu na linuxe?
> http://www.voip-info.org/wiki/view/OpenSER (týká se to modulu carrierroute,
> který správce softwaru vysypal na dotaz rout)
>
> http://www.opensips.org/
>
Nenene, ani jedno ani druhe nie je na routing multicastu, ale na routing
SIP protokolu, co je bod-bod spojenie, toto sa nemulticastuje.
--
Michal Rybarik
Alternet, s.r.o.
Další informace o konferenci Linux