Sinusubukan ng Facebook ang bagong congestion control algorithm na COPA laban sa BBR at CUBIC

Facebook lathala mga resulta ng mga eksperimento na may bagong algorithm ng pagkontrol sa kasikipan - KOSA, na-optimize para sa pagpapadala ng nilalamang video. Ang algorithm ay iminungkahi ng mga mananaliksik mula sa Massachusetts Institute of Technology. Ang COPA prototype na iminungkahi para sa pagsubok ay nakasulat sa C++, bukas lisensyado sa ilalim ng MIT at kasama sa mvfst β€” isang pagpapatupad ng QUIC protocol na binuo sa Facebook.

Nakatuon ang COPA algorithm sa paglutas ng mga problemang lumitaw kapag nagpapadala ng video sa isang network. Depende sa uri ng video, halos magkasalungat na mga kinakailangan ang inilalagay sa mga algorithm ng pagkontrol sa kasikipan - para sa interactive na video, kinakailangan upang matiyak ang kaunting mga pagkaantala, kahit na sa gastos ng kalidad, at kapag nagbo-broadcast ng pre-prepared na mataas na kalidad na video, binibigyan ng priyoridad. sa pagpapanatili ng kalidad. Dati, ang mga developer ng application ay limitado sa kakayahang maglapat ng iba't ibang mga algorithm depende sa kalidad o mga kinakailangan sa latency. Sinubukan ng mga mananaliksik na bumuo ng COPA na lumikha ng isang pangkalahatang algorithm para sa pamamahala ng TCP video congestion na maaaring i-customize batay sa mga kinakailangan sa video.

Ang trabaho ng congestion control algorithm ay upang matukoy ang pinakamainam na balanse kapag nagpapadala ng mga packet - ang pagpapadala ng masyadong maraming mga packet ay maaaring humantong sa pagkawala ng packet at pagkasira ng pagganap dahil sa pangangailangan na muling ipadala ang mga ito, at ang pagpapadala ng masyadong mabagal ay humahantong sa mga pagkaantala, na negatibong nakakaapekto sa pagganap. . Ang QUIC protocol ay pinili para sa mga eksperimento, dahil pinapayagan nito ang pagpapatupad ng congestion control algorithms sa user space nang hindi nakakasagabal sa kernel.

Upang maiwasan ang pagsisikip ng channel ng komunikasyon, ginagamit ng COPA ang pagmomodelo ng mga katangian ng channel batay sa pagsusuri ng mga pagbabago sa mga pagkaantala sa panahon ng paghahatid ng packet (Pinababawasan ng COPA ang laki ng window ng congestion habang dumarami ang mga pagkaantala, na nagmamanipula na ang mga pagkaantala ay nagsisimulang tumaas kahit na sa yugto bago mangyari ang pagkawala ng packet) . Ang balanse sa pagitan ng mga pagkaantala at throughput ay inaayos gamit ang isang espesyal na parameter ng delta. Ang pagtaas ng delta ay nagpapataas ng sensitivity sa mga pagkaantala ngunit binabawasan ang throughput, habang ang pagpapababa ng delta ay nagbibigay-daan para sa mas mataas na throughput sa halaga ng tumaas na latency. Ang Delta=0.04 ay tinukoy bilang ang pinakamainam na balanse sa pagitan ng kalidad at latency.

Sinusubukan ng Facebook ang bagong congestion control algorithm na COPA laban sa BBR at CUBIC

Batay sa serbisyo ng Facebook Live streaming, sinubukan ang COPA kumpara sa mga sikat na CUBIC at BBR algorithm. Ang default na CUBIC algorithm sa Linux ay unti-unting pataasin ang laki ng congestion window hanggang sa mangyari ang packet loss, pagkatapos ay ibabalik ang window size sa value bago magsimula ang pagkawala.

Ang CUBIC ay nag-iiwan ng maraming nais sa packet buffering sa modernong kagamitan sa network, na nagpapabagal sa mga packet drop. Ang congestion control algorithm ay walang kamalayan sa buffering at patuloy na tumataas ang bilis kahit na ang channel ay pisikal na masikip. Ang mga hindi naipadalang packet ay buffer sa halip na itapon, at ang congestion control algorithm ng TCP ay nagsisimula lamang kapag puno na ang buffer at hindi mabalanse ang flow rate sa bilis ng pisikal na link. Upang malutas ang problemang ito, iminungkahi ng Google ang isang pinahusay na algorithm ng BBR na hinuhulaan ang magagamit na bandwidth sa pamamagitan ng mga sequential check at round-trip time (RTT) na pagtatantya.

Sa delta=0.04, ang mga tagapagpahiwatig ng COPA ay naging malapit sa CUBIC at BBR. Sa mga pagsubok na isinagawa sa isang high-speed na koneksyon sa network na may mababang pagkaantala sa paghahatid ng packet, nakamit ng COPA ang mas mababang latency (479 ms) kumpara sa CUBIC (499 ms), ngunit bahagyang nahulog sa BBR (462 ms). Nang bumaba ang kalidad ng koneksyon, ipinakita ng COPA ang pinakamahusay na mga resulta - ang mga pagkaantala ay 27% na mas mababa kaysa kapag gumagamit ng CUBIC at BBR.

Sinusubukan ng Facebook ang bagong congestion control algorithm na COPA laban sa BBR at CUBIC

Sinusubukan ng Facebook ang bagong congestion control algorithm na COPA laban sa BBR at CUBIC

Kasabay nito, sa isang mahinang channel ng komunikasyon, ginawang posible ng COPA at BBR na makamit ang makabuluhang mas mataas na throughput kumpara sa CUBIC. Ang nakuha ng BBR, kumpara sa CUBIC, ay 4.8% at 5.5%, at COPA - 6.2% at 16.3%.

Sinusubukan ng Facebook ang bagong congestion control algorithm na COPA laban sa BBR at CUBIC

Pinagmulan: opennet.ru

Magdagdag ng komento