Ինչպե՞ ս է կազինոն կանխում ձգձգումները և հետևում հոսքի որակին
1) Ազդանշանի հետագծի քարտեզը 'որտեղ ծնվում է ուշացումը
Տեսախցիկը Ancoder-ն է։ Sylow-latency: կարճ GOP (1-2 c), սահմանափակված B-frames, CBR/« կոշտ »VBR, հիմնական շրջանակները։
Էնկոդերը Mediaserver-ն է։ Ինտերակտիվ համար - WindRTC SFU (Intective Forwarding Unit); Զանգվածային կոմպոզիցիայի համար 'LL-HMS/DASH, 200-500 մզ հատվածներով։
Mediaserver no CDN։ Edge-քշում է հատվածները 'նվազեցնելով origin-ի բեռը։ Windows RTC-ը չի քշվում 'SFU ալիքի լայնությամբ և խելացի ֆան-աուտով։
Հանդիսատեսի ցանցը։ ABR սանդուղք, jitter-buffer, կադրերի/բիթրեյթի հարմարեցում, արագ անցում առանց «սև էկրանների»։
Հիմնական գաղափարն այն է, որ ուշացումը ձևավորվում է ճանապարհի փոքրիկ օրինագծերից։ Կառավարումը նշանակում է վերահսկել յուրաքանչյուր բուֆեր և նրա «բյուջեն»։
2) Ուշացումները կանխելու հիմնական սկզբունքները
1. LL-HMS-ի տակ գտնվող հատվածները 'կարճ մասնակի հատվածներ (partial segments) + ցածր «targetDuration»։
2. Media RTC-պրոֆիլը 'դեցեիվերի կրճատված բուֆերը, RTP հոսքերի գերակայությունը, արագ հիմնական կադրերը պահանջով։
3. Anti-jitter-ը 'հարմարվողական jitter-buffer, NACK (կորցրած հաղթանակների կրկնակի փոխանցում), PLI/FIR (հիմնական շրջանակի հարցումը), անհրաժեշտության դեպքում' FEC (սխալների ուղղակի ուղղում)։
4. Backpressure-ում SFU-ում 'ֆրեյմրեյթի/բիթրեյթի կրճատումը և չարտոնված շերտերի հաստությունը (SVC) տոտալ տրոպի փոխարեն։
5. Edge-հարևանությունը 'հանդիսատեսի երթուղայնացումը մոտակա PoP-ի, origin-shield-ի համար։
6. Multi-CDN: RUM-rowting-ը իրական մետրերով (TTFB, error-rate), ավտոմատ ֆեյլերը։
3) Ի՞ նչ է «որակը» SLI/SLO տերմիններում
SLI (որակի ցուցանիշներ)
e2e ուշացում (glass-to-glass)
Բեֆերիզացիայի տոկոսը (rebuffering ratio) և բուֆերիզացիայի միջին տևողությունը drop-frame rate (կորցրած կադրեր)
startup time (ժամանակը մինչև առաջին շրջանակը)- bitrate-downgrade events (նվազեցման հաճախականությունը)
- Media RTC: RTT, packet loss, jitter, NACK/FEC մասը, TURN-relay մասնաբաժինը
- LL-HMS 'հատվածները ժամանակին (% հատվածներ <1,5 c), manifest fetch errors
SLO-ի օրինակները (նպատակներ)
95p e2e ուշացում Windows RTC 242,5 c; LL-HMS 245 c rebuffering ratio <0,5 տոկոսը նստաշրջանի; startup < 1,5 c (WebRTC) / < 2,5 c (LL-HLS)
packet loss ≤ 1% (95p); RTT 35120 (95p)
cache-hit CDN 2480 տոկոսը, origin-egress-20 տոկոսը ընդհանուր է։
4) Ակտիվ նախաձեռնություն. Ինչպե՞ ս կարելի է ավելի շատ խնդիրներ բռնել, քան խաղացողը։
Սինթետիկ փորձարկումները (probes) 'ռոբոտները միանում են տարբեր տարածաշրջանների սեղաններին, չափում են startup, e2e-entay (երկրորդային խաղային կոդերով), late-segments տոկոսը, Windows RTC-RTT/packet loss։
Թեստային «փարոսները» տեսանյութում 'ժամանակի ակնարկով, թույլ է տալիս գնահատել e2e ուշացումը մինչև մեկ միլիոն վայրկյան։
Վերահսկիչ սեղաններ/ալիքներ 'մեկ սեղան «մոնիտորինգի համար» ֆիքսված սցենարի հետ (քարտի ջրաղաց, «ճոճանակ»)։
Պարբերական health-winks: API պրովայդեր/դրամապանակ, TURN հասանելիություն, TIM/հավաստագրեր, IP-allowlist։
5) Պասիվ նախաձեռնություն. Ի՞ նչ է պատրաստվում իրական օպտիկայի մեջ։
RUM (Real User Monitoring): MSK-ը կլիենտում հեռուստացույց է ուղարկում հատվածների/շրջանակների, բուֆերների, շարժիչների փոխարինման, ռոտորի սխալների վրա։
Windows RTC-stats: Ռուսական հաշվիչներ (inbound/www.bound RTP, framesDropped, jitter, nackCount, pliCount, roundTripTime)։
Պլեերային իրադարձությունները ՝ «play», «stall», «recover», «seek», «quality.ru», «fatal»։- Սերվերային մետրերը 'CPU/GPU transcoders, egress SFU/edge, QPS մանիֆեստների/հատվածների, p95 API-ի հավաքման/վարկերի համար։
- Հարաբերակցությունը 'piks' late-bet "և հակասական փուլերը հաճախ համընկնում են e2e-ուշացման աճի հետ 'ազդանշան հետազոտության համար։
6) Առանց խաղացողի ցավի
FPS-ի նվազումը մինչև լուծումը նվազեցնելը։ 60-48-30, ապա նվազումը 1080p 24720p։
SVC/սիմուլյաստը 'մի քանի որակի շերտերի ուղարկումը։ SFU-ն անջատում է վերին շերտերը բեռնման ժամանակ։- Keyframe on demand: Արագ առանցքային շրջանակը փոխարինելու համար, որպեսզի խուսափի «օճառից» և երկար վերակենդանացումից։
- Թողարկման հարմարեցումը 'հաճախորդի բուֆերը 200-400 մզ անկայուն ցանցում և վերադարձնել դեպքից հետո։
- Հանգիստ ֆոլբեքը ՝ Windows RTC wwww.LL-HMS-ը խնդիրների ժամանակ «տեսողական» ֆիդի համար, արգելափակելով ուշ տոկոսադրույքները։
7) Ցանցը և հակատիպային կորուստները. Ինչու «0% loss» -ը չի լինում։
NACK/RTX 'կորած միգրանտների կետային ռետրանսումը։- FEC 'RTP մակարդակում ավելցուկը օգտակար է կեղտոտ ցանցերի վրա, բայց բարձրացնում է բիթրետը։
- Jitter-buffer հարմարվողական, մենք պահում ենք 60-150 մզ; աճում ենք մինչև 250-300 մզ աճեցնելիս, ապա նվազեցնում ենք։
- DSCP/գերակայություն (որտեղ հասանելի է) 'ձայնի/տեսահոլովակի գերակայությունը կորպորատիվ ցանցերում։
- TURN-փուլ 'սպիտակ IP, երկրաչափություն, relay նստաշրջանների մասնաբաժինը (եթե> 25 տոկոսը ստուգում ենք/fierrwols/piringi)։
8) CDN ճարտարապետությունը և պաշտպանությունը origin
Origin-shield: Կենտրոնական քեշը edge և origin-ի միջև, կտրուկ նվազեցնում է պիկի անցումները։
Multi-CDN: DNS-/anycript-router + RUM ազդանշաններ; ավտոմատ արտահոսքը կատարվում է սխալների աճի ժամանակ կամ TTFB-ում։
Մանիֆեստները և հատվածները ՝ կարճ TTL, հաջորդ տերմինալի fetch, առաջնային ալիքները մանիֆեստների համար (դրանք «ավելի քննադատական» հատվածներ)։
Պաշտպանություն 'URL-ի ստորագրած, կարճ TTL տոկեններ, գեո/ռելֆային սահմանափակումներ, պաշտպանություն հոթլինից և վերականգնումներից։
9) Encoders և transcoders, որքան ավելի հզոր է, այնքան ավելի կայուն է, այնքան ավելի կայուն, այնքան ավելի կայուն է, այնքան ավելի կայուն
CPU + GPU-ի հիբրիդ 'ABR աստիճանները GPU-ում (NVENC/Quick Disnc), որակի համար։- Բջջային լսարանի համար պրոֆիլները ՝ www.0p/40p/540p/720p, ավելի լավ է ունենալ «քայլ» միջին ձեռքի ցանցերի համար։
- GOP/IDR հաճախականությունների վերահսկումը 'արագ կոդավորման կույտը և արագացված recovery։
- Պահեստավորում 'տրանսկոդերների տաք պահուստ; ծանրաբեռնվածության դեպքում '«թանկ» շարժիչների (1080p60) անջատումը կայունության գերակայությամբ։
10) Պատահարներ. Ինչպես են արձագանքում, երբ շրջանակը շարունակվում է։
Real-time ալերտները ՝ «95p e2e-entay> 2019», «rebuffering> շեմն», «TURN-relay» մեծացել է> X%, «cache-hit ընկել է Runbook գործողությունների 1. Տարածաշրջանի/RoR-ի ստուգումը բացատրում է մեկ այլ CDN-պրովայդերի անցումը։ 2. «Ուշադիր» կոմպոզիցիայի կոմպոզիցիան (FPS/bitrait-ից ներքևում)։ 3. Հարկադիր keyframe-ը արագացնելու համար։ 4. Folbek WindRTC wwww.LL-HMS հանդիսատեսի համար; սեղաններին 'պատուհանի ժամանակավոր վերացումը կամ թափանցիկ հայտարարությամբ դադարը։ Հաղորդակցություն 'նվագարկչի դրոշը («հոսքի կայունացում է»), լոգ, post-մորթեֆակտը։ 11) Տեսահոլովակի և պարամետրերի կապը 'ազնվությունը ավելի կարևոր է, քան պիքսելները։ Ժամանակի համաժամացումը 'NTP/chrony բոլոր հանգույցներում; իրադարձություններ 'round. ռեզոնանսային "և" close bets "- ճշգրիտ" video _ ts "պիտակներով։ «Ճշմարտության աղբյուրը» տուրիզմի սերվերն է։ UI-ն ցույց է տալիս արդյունքը միայն սերվերի ամրագրումից հետո։ ռելեները հասանելի են վերլուծության համար։ Anti-լատինական չարաշահումներ 'արգելափակումը կատարվում է հեռուստադիտողի e2e ուշացումով վերևում։ եթե հոսքը քայքայվում է, պաշտպանությունը թարգմանվում է «միայն դիտելու»։ 12) Dashbords: որ միշտ ձեռքի տակ է MSC/VideooOps Տեսահոլովակը ՝ e2e, startup, rebuffering, drop-frame, quality-switches, հիմնական կադրեր/2019 Media RTC: RTT, loss, jitter, bitrate, NACK/PLI հաճախականությունները, relay-ratio TURN-ում։ CDN: cache-hit, TTFB, սխալներ PoP/ASN, 2019/egress։ Սերվերներ ՝ CPU/GPU transcoders, egress SFU, գանձեր/FD, p95 API։ Продукт: late-bet rate, dispute rate, session length, retention. 13) Անվտանգություն և ազդեցություն որակի վրա 14) Չեկ-թուղթ, որակը սկսելու համար Ուշացումների կանխումը և որակը վերահսկելը ոչ թե մեկ կախարդական կարգավորում է, այլ կարգապահություն 'էնկոդինգի խիստ պրոֆիլներ, խելացի լրատվամիջոցներ և ABR, մուլտֆիլմ-CDN' origin-shield, anti-կորուստ (NACK/FEC/PLI) և dotoshi (RuM) + սինթետիկ) հասկանալի runbook-ami։ Երբ յուրաքանչյուր շերտ գիտի իր «ձգձգման բյուջեն», և թիմը իրական ժամանակում տեսնում է մետրեր և կարողանում է փափուկ քայքայել որակը, խաղացողը ստանում է կայուն հոսք և ազնիվ թայմինգ։
Ցանցը և CDN
Էնկոդինգը և նվագարկիչը
Մոսկվան
Վիրահատություններ