
Tailscale-ը ներկայացրել է ցանցի արագացման ծրագիրը՝ multi-queue, netmap քեշավորում և ավելի քիչ հիշողություն
Tailscale ընկերությունը ներկայացրել է ցանցի արագացման ուղղությամբ տարվող աշխատանքը՝ multi-queue փաթեթների մշակում երթուղային հանգույցներում, ավելի քիչ հիշողություն փոքր փաթեթների համար և netmap քեշավորում՝ ավելի արագ մեկնարկի համար։
Tailscale ընկերությունը հրապարակել է ցանցի արագացման աշխատանքի ակնարկը՝ փաթեթների մշակում երթուղային հանգույցներում, փոքր փաթեթների հիշողության ծախս և ավելի արագ մեկնարկ։
Աշխատանքը շարունակում է նախկին ձեռքբերումները. TCP թողունակությունը Linux-ում և wireguard-go-ն՝ 10 Gb/s-ից ավելի։
Փոքր փաթեթներ, ավելի քիչ հիշողության ծախս
Փաթեթների մեծ մասը շատ փոքր է՝ մոտ 1 KiB, սակայն Tailscale-ը կարդում է 64 KiB-անոց մասերով։ wireguard-go-ն առաջարկում էր ընդամենը մեկ 64 KiB բուֆեր, ուստի ամեն փոքր փաթեթ պատճենվում էր իր լրիվ չափի բուֆերի մեջ։ Linux-ում և Android-ում հաճախորդն այժմ փաթեթները թողնում է իրենց տեղերում և մեկ մեծ ընթերցման ներսում նշում յուրաքանչյուրի սկիզբն ու վերջը. շատ փաթեթներ կիսում են մեկ հատկացում, ինչը շատ կարգավորումներում տվեց մոտ 5% արագացում։ Կրճատված հերթերը հիշողություն ազատեցին subnet երթուղիչների և app connector-ների համար։
Multi-queue և ավելի քիչ պատճենում
Նախկինում subnet երթուղիչները, app connector-ները և exit node-ները մեկ կարգավորված խողովակաշարում էին աշխատում։ Ազատված հիշողությունը տեղ ստեղծեց multi-queue-ի համար. մի քանի ուղիներ՝ չափված մեքենայի ռեսուրսներով. ամեն հոսք մնում է իր ուղու վրա, ուղիները զուգահեռ աշխատում են CPU-ի միջուկներում։ Արդյունքը՝ ավելի մեծ ընդհանուր թողունակություն և ավելի կարճ ուշացում, հատկապես կարճատև միացումներ սպասարկող app connector-ների ու exit node-ների համար։
«Սա նշանակում է ավելի ցածր ուշացում՝ փաստացի ավելի արագ մշակում ցանցից կարդալու պահից մինչև օպերացիոն համակարգին փոխանցելը»,— ասել է Tailscale-ի Ալեքս Վալիուշկոն։
Առանձին փոփոխությունը օգտագործում է Linux-ի writev-ն՝ փաթեթային տվյալների մի քանի մասեր միջուկին մեկ գործողությամբ փոխանցելու համար. ավելի քիչ պատճենում, ավելի քիչ գրառում, ավելի մեծ թողունակություն։
netmap քեշավորում՝ ավելի արագ մեկնարկի համար
tailnet-ին միացող սարքը նախ կապվում է control plane-ի հետ և ցանցի քարտեզը ստանում մոտ 100 միլիվայրկյանում։ Վատ Wi-Fi-ում այդ կապը կարող է դանդաղ լինել կամ չկայանալ։ netmap քեշավորումը քարտեզի պատճենը պահում է սկավառակի վրա, ուստի հաճախորդը կարող է անմիջապես ուղիղ միացումներ հաստատել։ Tailscale-ի խոսքով՝ վատ հասանելիությամբ tailnet-ներում ուղարկումը «տաք» քեշից սկսվում է մեկ-երկու կարգով ավելի արագ։
Երբ կհասնեն և նոր թեստային գործիքներ
Linux-ի ու Android-ի հիշողության կրճատումները սպասվում են v1.104 հաճախորդում, իսկ multi-queue-ն՝ ավելի ուշ թողարկումներում։ netmap քեշավորումը հասանելի է feature flag-ով և v1.104-ում սպասվում է լռելյայն միացված։ Tailscale-ը նաև իր համար թեստավորման գործիքների հավաքածու է մշակում։
SiTech — AI-ով հզորացված վեբ մշակում
Ստեղծում ենք արագ ու ժամանակակից կայքեր և AI-ը ներդնում իրական բիզնես գործընթացներում։ Ունե՞ք նախագիծ կամ հարց։ Ուրախ կլինենք օգնել։