neprihlásený Utorok, 16. apríla 2024, dnes má meniny Dana, Danica
Pre BBC bol Linux pomalý, nekomprimované video posiela s obchádzaním jadra

Značky: Linux

DSL.sk, 13.10.2015


Britská verejnoprávna televízia BBC sa na konci uplynulého týždňa pochválila nasadením sieťového riešenia, ktoré je zaujímavé z viacerých dôvodov.

Jej oznámenie totiž okrem flexibilnosti Linuxu poukazuje aj na potenciálny neoptimálny sieťový výkon štandardného jadra ale tiež na rozdielne okruhy problémov, akým sa venuje BBC a napríklad slovenské televízie okrem iného limitované veľkosťou slovenského trhu.

BBC patrí medzi technologicky najpokrokovejšie televízie a okrem iného sa napríklad zúčastňuje testov vysielania v rozlíšení 8K.

Na problém nedostatočného sieťového výkonu linuxového jadra narazila pri vývoji svojho riešenia pre televízne štúdio postavené čisto na IP protokole a konkrétne pri potrebe posielať po sieti UHD stream nekomprimovaného videa s rýchlosťou 4 Gbps a viac.

Kým pri posielaní viacerých streamov s menšou rýchlosťou je možné využiť výkon množstva jadier moderných serverov, pri posielaní jedného streamu s vysokou rýchlosťou je túto úlohu možné pri potrebách BBC len ťažko paralelizovať. Jedno jadro tak musí posielať cca 340 tisíc paketov za sekundu a jeden paket musí linuxové jadro spracúvať za menej ako tri mikrosekundy.

To ale narážalo na limity linuxového jadra. To má totiž viacero vrstiev, aplikácia volá rozhranie socketov, to využíva TCP / UDP vrstvu, tá IP / Ethernet vrstvu a až následne sa dáta dostávajú k ovládaču sieťovej karty. Pri tom sa dáta dvakrát skopírujú, najskôr z bufferu aplikácie do bufferu socketovej vrstvy a následne do bufferu zariadenia.


Sieťové riešenie použité BBC obchádzajúce sieťový stack linuxového jadra, kliknite pre zväčšenie (obrázok: BBC)



BBC tak použila riešenie so špeciálnym modulom obchádzajúcim všetky sieťové vrstvy jadra a priamo volajúcim ovládač sieťovej karty. Dáta sa vôbec nekopírujú, aplikácia aj sieťová karta používajú ten istý buffer a potrebné sieťové hlavičky pridáva k paketom priamo aplikácia. To umožnilo podľa BBC zdesaťnásobiť výkon pri posielaní streamov vysokou rýchlosťou, pomocou jedného CPU jadra posielať nekomprimovaný 4K 2160p50 stream s rýchlosťou viac ako 8 Gbps a ostatné jadrá využiť pre spracovanie videa.

Takéto rýchlosti dosiahla BBC na štandardných 10-gigabitových Ethernetových kartách a rovnaké riešenie plánuje použiť aj na 100-Gbps kartách.

Aký sieťový protokol pre posielanie riešenie využíva a či si BBC sama vyvinula samotný modul a potrebný softvér implementujúci sieťový protokol na aplikačnej vrstve televízia neinformuje a zároveň zatiaľ neavizuje zdieľanie svojho riešenia respektíve sprístupnenie zdrojových kódov.


      Zdieľaj na Twitteri



Najnovšie články:

Spustená výrobca QLC flash pamäte s viac ako 200 vrstvami
Batérie vyhodené z vesmírnej ISS neočakávane nezhoreli a poškodili dom v USA
Sprístupnená beta verzia Ubuntu 24.04 LTS
Nový CPU Apple M4 majú dostať všetky Macy, s výnimkou najvyšších najneskôr do jari
Samsung sa v predaji smartfónov vrátil pred Apple
Zatiaľ posledný Star Trek seriál bude mať ďalšiu sériu, ohlásený aj nový film
Nový Android 15 je k dispozícii v beta verzii
Samsung má spustiť výrobu takmer 300-vrstvovej flash tento mesiac, budúci rok dosiahnuť 430 vrstiev
SpaceX použila prvý stupeň Falcon 9 už 20-krát
Apple čoskoro uvedie ďalší sci-fi seriál


Diskusia:
                               
 

posielam kvety, samozrejme obidenim jadra
Odpovedať Známka: 7.4 Hodnotiť:
 

posielam jadro, uz ho nepotrebujem
Odpovedať Známka: 5.7 Hodnotiť:
 

myslis pakvety, nie?
Odpovedať Známka: 9.0 Hodnotiť:
 

nie myslim tvoju mamu
Odpovedať Známka: -7.3 Hodnotiť:
 

pohonil som
Odpovedať Známka: 7.5 Hodnotiť:
 

Čo si pohnojil?
Odpovedať Známka: -10.0 Hodnotiť:
 

preco bbc posiela nekomprimovane videa?
Odpovedať Známka: 5.7 Hodnotiť:
 

Je to priamo v texte:
"pri vývoji svojho riešenia pre televízne štúdio postavené čisto na IP protokole"
Odpovedať Známka: 8.6 Hodnotiť:
 

Robíte chybu, že veríte Britom. Klamstvo je ich hlavná pracovná metóda.
Odpovedať Známka: -3.6 Hodnotiť:
 

Lebo napriklad v ramci studia potrebuje reziser strihat (prepinat kamery, ...) v danom momente a synchronne, neda sa teda cakat kym pride frame z ineho zdroja v inu chvilu ani kym skonci GOP komprimovaneho videa.
Odpovedať Známka: 10.0 Hodnotiť:
 

Sak na to je tu MJPEG.
Odpovedať Známka: -6.0 Hodnotiť:
 

Pretoze su to blbi amici.
Odpovedať Známka: -9.2 Hodnotiť:
 

BRITISH Broadcasting Corporation
Odpovedať Známka: 9.2 Hodnotiť:
 

Oprava: Blbí Anglosasi
Odpovedať Známka: -6.4 Hodnotiť:
 

blbí kelti
Odpovedať Známka: -10.0 Hodnotiť:
 

BBC je UK. Ty si potomok nejakeho bacu a ovce?
Odpovedať Známka: 8.6 Hodnotiť:
 

tebe niekto nasypal piesok do koleciek :/
Odpovedať Známka: 8.5 Hodnotiť:
 

British Broadcasting Corporation
Odpovedať Známka: 9.0 Hodnotiť:
 

A čo má byť? Za to nemôžu byť blbí Američania? Poviem to drblou rečou tvojho kmeňa:

"Think out of the box"

http://dopice.sk/f1m

Odpovedať Známka: -6.7 Hodnotiť:
 

Ha, Američan ide nadávať Američanom.
Odpovedať Známka: -6.0 Hodnotiť:
 

Poskytovateľ skutočne objektívneho spravodajstva nemôže používať stratovú kompresiu, ani bezstratovú s oneskorením.
Odpovedať Známka: 10.0 Hodnotiť:
 

Neviem či si to myslel ako iróniu, ale BBC je ukážka keď forma zďaleka predbieha obsah :)
Odpovedať Známka: -1.2 Hodnotiť:
 

Áno, napríklad Dr. Who a jeho TARDIS.
Odpovedať Známka: -5.4 Hodnotiť:
 

dr who je uplne v pohode, len aktualneho doktora by mohli uz nechat zomriet, zatial najhorsi zo vsetkych..
Odpovedať Známka: -2.3 Hodnotiť:
 

Pretoze ked je to v ramci studia tak to leze z kamery raw-nekomprimovane cez IP povedzme do nejakeho nahravacieho zariadenia/diskoveho pola a zasa odtial do strizne a az potom sa to komprimuje.
Odpovedať Známka: 8.2 Hodnotiť:
 

tak a teraz chcem vidiet nase uzasne TV ako tam niekto robi moduly do jadra a dalsi vyvoj hardcore high tech veci.

ale na tocenie 20 serialov a reality show na jedno kopyto, na take sracky by ich bolo....
Odpovedať Známka: 10.0 Hodnotiť:
 

Samozrejme v SD a upscale do HD samozrejme chcú zaplatiť, lebo hd je nadštandard ako sú aj rožky za 5 centov nadštandard. Narkóza@hnoj
Odpovedať Známka: 8.3 Hodnotiť:
 

Kedysi davno robil v STVcke typek menom Zyx. Celkom hlava na sietarinu. Dnes je tusim v Esete.
Odpovedať Známka: 10.0 Hodnotiť:
 

a rovnake je to aj inde +
Odpovedať Hodnotiť:
 

https://blog.cloudflare.com/kernel-bypass/
Odpovedať Známka: 8.0 Hodnotiť:
 

Prave z tohto dovodu si kedysi Facebook najal SW inzinierov aby prepisali Linuxovy TCP-IP stack.

Neviem, ale poslednou dobou mi pride Linux ako celkom zlepenec co podporuje uplne snad uplne vsetok bleeding-edge HW ale kvalitativne je to kdesi inde ako FreeBSD.

Ukamenujete ma za moj nazor na ktory mam narok? Co si o tom myslite?
Odpovedať Známka: 1.7 Hodnotiť:
 

Podľa mňa je TCP/UDP protokol vo FreeBSD podstatne lepšie spracovaný ako v Linuxe, ale pokiaľ viem, tak v Linuxe sa TCP protokol ide prerábať.
Odpovedať Známka: 9.0 Hodnotiť:
 

ano, kdesi pred mesiacom bola spravicka, kvoli nedostatocnemu vykonu pri posielani paketu, kvoli routrom tusim
Odpovedať Známka: 0.9 Hodnotiť:
 

teda nie tcp protokol, ale kernel
Odpovedať Známka: -5.0 Hodnotiť:
 

Presnejšie sa ide prerábať TCP/IP stack v Linuxovom kerneli
Odpovedať Známka: 10.0 Hodnotiť:
 

Konecne sa Linuxu podarilo to, o o com dlho snival!
po dlhych 20 rokoch sa mu podarilo dostat na uroven Windows 95 a jeho snahy byt PnP.
Odpovedať Známka: -6.9 Hodnotiť:
 

Vies, ze PnP ako take mal Linux skor, podpora HW funguje out of the box tiez rozhodne lepsie.
A ani nechi vediet ako by fungovali widle pri podobnom datovom toku(preco ich asi nemozu pouzivat)


Odpovedať Známka: 8.0 Hodnotiť:
 

Ako by to bolo v pripade, ak by sa pouzivalo MP-TCP namiesto TCP?
Odpovedať Známka: 2.0 Hodnotiť:
 

Hmm ale z toho clanku potom vypliva ze Linuxovy kernel, teda sietovy stack ma potom problem niekde nad 3-4Gbps. Chcelo by to nejaky clanok s testami. Predsa len 10Gb sietovky niesu nic nezvycajne a nejak som zatial nezachytil nejake halo ze by sa nedali vyuzit na plnu kapacitu na Linuxe. Aj ked je fakt ze pri tych cenach (10Gb) to zatial nieje na beznu home network a kde sa pouziju uz nejake specialne riesenie vecsinou je (ako BBC,upraveny kernel).
Odpovedať Známka: 8.3 Hodnotiť:
 

Z clanku to vyznelo, ze komunikacia je pomala ked to ide v ramci jedneho jadra. V pripade vyuzitia viacerych jadier sa asi lepsie vyuzije komunikace pasmo...
Odpovedať Známka: 6.9 Hodnotiť:
 

lenze v jednom operacnom system vacisnou viacero jadier nebyva... :-)
Odpovedať Známka: -7.1 Hodnotiť:
 

Lenže v jednom počítači môže bežať paralelne viacero operačných systémov. Stači priamo využiť hardvérovú virtualizáciu...:-)
Odpovedať Známka: -6.0 Hodnotiť:
 

mysleli sa viacere procesorove jadra, nie viacere jadra operacneho systemu
Odpovedať Známka: 10.0 Hodnotiť:
 

No, otazne je ako moc pomoze pararelizacia niecomu low level ako je network stack. Niektore casti by sa dali pararelizovat - aplikacne vrstvy, TCP/IP management. V podstate to co aj podla toho clanku BBC zistilo ze zere vykon. Ale nakoniec mas aj tak jeden kus zeleza (nebavme sa ze tam mas niekolko sietoviek) o ktory sa pobije viac prarelnych procesov/threadov. Tak isto si nemyslim ze to je problem v horizonte niekolkych rokov, teda pokial sa nedosatnu na bezny desktop 10Gbps sietove prvky. Dovtedy sa daju vzdy v specifikych prostrediat spravit taketo specialne upravy. Ine to uz bude prave na beznom desktope. Tam uz ani paralelizacia moc nepomoze lebo uzivatel asi nebude nadseny ked pri beznom kopirovani mu zrazu vytazenie procesora vyleze na 50-100%.
Odpovedať Hodnotiť:
 

Jasne ze sa na linuxe vyuzit 10gbit sietovka naplno. Problem ktory mali v BBC je ten, ze sa neda takato sietovka naplno vyuzit pri prenasani jedineho streamu.
Odpovedať Známka: 10.0 Hodnotiť:
 

Existuje nieco ako dpdk.org. Je zname, ze implementacia v OS je dost neefektivna, aj napriek existencii scatter/gather operacii v OS. Tieto maju aj windows aj linux, chcelo by to porovnat vykon ;).
Odpovedať Známka: 10.0 Hodnotiť:
 

tak je jasne ze ked ide komunikacia cez niekolko sietovych vrstiev ze je to pomale

kedze oni tieto vrstvy nepotrebuju staci im raw HW


Odpovedať Známka: 10.0 Hodnotiť:
 

Samozrejme, ze cim menej operacii, tym lepsie. Ja som chcel iba poukazat na to, ze OS maju nejake prostriedky na riesenie tohoto problemu. Mimochodom rychlost L2 cache v modernych intel CPU je cez 300GB/s, pomala je skor RAM. Ked idu data v prude, tak nejaka cache to nezachrani..
Odpovedať Známka: 10.0 Hodnotiť:
 

no lenže ten konkrétny paket kým sa cez všetky sieťové vrstvy spracuje, tak sa v CPU zo 3-4 krát otočí, teda tam by cache mala pomôcť
Odpovedať Známka: 3.3 Hodnotiť:
 

na tejto problematike by si Hambalik rad polestil ;)
Odpovedať Známka: 7.5 Hodnotiť:
 

"Aký sieťový protokol pre posielanie riešenie využíva a či si BBC sama vyvinula samotný modul a potrebný softvér implementujúci sieťový protokol na aplikačnej vrstve televízia neinformuje a zároveň zatiaľ neavizuje zdieľanie svojho riešenia respektíve sprístupnenie zdrojových kódov."

Na základe dohody s poskytovateľom riešenia GHCQ, im zdieľanie bližších informácií a zdrojových kódov umožnené nebolo.
Odpovedať Známka: 7.8 Hodnotiť:
 

ale nehanil by som linuxove jadro. jednoucelove udelatko sa vzdy da urobit efektivnejsie pre konkretny ucel, len to musi stat za to. uz len praca s datam na jednom mieste a podobne naznacuju, ze tu sa nejaka bezpecnost a podobne veci neriesili ani nahodou. IP stack v kazdom OS ma dost vysoku reziu aj preto, ze riesi kopec veci, ktore sa tu neiresili. A to uz su veci, ktore davnejsie presli do HW (TSO a podobne).
Odpovedať Známka: 10.0 Hodnotiť:
 

install arch
Odpovedať Známka: 2.5 Hodnotiť:
 

Inštalujte archab.
Odpovedať Hodnotiť:
 

By ma celkom zaujimalo ktora cast nestihala, ulozisko, kamery, neake produkcne / rezia masinky ? lebo pokial viem sietove zariadenia nemaju problem ani s TB/s ( highend, ne DLINK )
Odpovedať Známka: -5.0 Hodnotiť:
 

myslis cosi ako klon highend cisco routera s kamerou? :-) tu ide o koncove zariadenia pre spracovanie a zaznam multimedii, kde samotny prenos dat je len "podporna" zalezitost a gro samotnej cinnosti je uplne ine.
Odpovedať Známka: 10.0 Hodnotiť:
 

v cine tam pouzivaju na nejaky videostreaming s kopcom streamov tiez dragonflybsd, lebo tam nejaky typek to spravil poriadne rychle, lebo tie jadra normalne ohladom performancie neboli postacujuce. hento ale obchadzanie jadra, to neni dobre riesenie.
a dobre by bolo hentoho source-code zebrat a potom pouzit na udp flood ip adresy, kera sa snazi vlamat do ssh portu.
ja uz dlhsie flitrujem s myslienku, ze si secky servery a vservery a mozno este nejaky amazon aws a microsoft azure spojim dokopy a ked sa mne volado bude snazit vlamat do ssh, co uz protokolujem, tak sa to zapne a zacne ho floodovat udp balikmi, dokedy neprestane. to by netrvalo dlho a obchadzali by ma tito boti kilometer. by implementovali blacklist.
Odpovedať Známka: 10.0 Hodnotiť:
 

... toto by na Windowse nebolo mozne spravit aj keby sa poskladali a aj keby to dali spravit M$ trvalo by to mozno rok dva a aj tak by to nefungovalo.
Odpovedať Hodnotiť:

Pridať komentár