“Tuma upakuaji mkubwa kando ya VPN na uweke majibu madogo juu yake” inasikika kama sera ya uelekezaji, lakini siyo. Kipanga hazina huamua kwa taarifa zinazopatikana wakati huo: anwani, bandari, itifaki, alama za firewall, mtiririko uliotambuliwa. Ukubwa wa mwisho wa jibu haupo katika seti hiyo, kwa sababu bado haujafika, na kipanga hazina anapoweza kupima baiti tayari anazisafirisha. Ikiwa unataka uelekezaji kwa kazi, uamuzi lazima uhamie sehemu inayojua kazi hiyo, na orodha ya ukaguzi hapa chini inaonyesha ikiwa muundo wako una sehemu kama hiyo.

Kwa nini kipanga hazina hakiwezi kupima jibu

Wakati pakiti inahitaji njia, kipanga hazina ameona zaidi pakiti chache za kwanza za mtiririko. Anaweza kusema nani anazungumza na nani, kwa itifaki gani, kwa alama gani, na baiti ngapi zimepita hadi sasa. Baiti hadi sasa zinaelezea zamani. Ukubwa wa jibu ni sifa ya jibu ambalo bado halijazalishwa, na katika majibu yaliyogawanywa au yanayotiririka huenda kamwe usijulikane mapema.

Hata metadata ya itifaki yenyewe ni dhaifu kuliko inavyoonekana. HTTP huruhusu majibu ambayo urefu wake hautangazwi kabla ya mwili, na kitendo kimoja cha mtumiaji kinaweza kuzalisha maombi mengi ambayo gharama yao ya pamoja haifanani na thamani yoyote ya kichwa. Kuchukua kichwa kama ukubwa wa kazi ni kosa la uundaji kabla ya kuwa kosa la uelekezaji.

Ukaguzi 1: kuna sehemu ya uamuzi inayoweza kuchagua njia?

Taja sehemu itakayofanya uchaguzi, kisha taja anachojua wakati wa kuchagua. Kisasishaji kinachopakua kutoka seti iliyoandikwa ya wenyeji kinajua madhumuni yake kabla ya uhamishaji kuanza. Huduma ya upakuaji inayokagua metadata kisha kufungua ombi inajua kazi kabla ya muunganisho kuwepo. proxy shirikishi inaweza kutumia sera ya ngazi ya ombi au kuhifadhi jibu kwenye akiba bila kujifanya kuwa kipanga hazina.

Ikiwa jibu ni “gateway”, orodha ya ukaguzi tayari imeshindwa. Gateway inaweza kuainisha mitiririko inayojulikana kwa lengo, alama au sehemu ya mteja na kuituma kwa njia iliyobainishwa kutoka pakiti ya kwanza, jambo ambalo mara nyingi hutosha kwa kisasishaji kilichoidhinishwa na kamwe hakitoshi kwa ukubwa wa jibu usiojulikana.

Ukaguzi 2: metadata inakuambia nini kwa kweli?

Uelekezaji unaofahamu programu ni bora kadiri sehemu inazosoma zilivyo bora. Kanuni za urefu wa jibu katika maana ya HTTP huruhusu hali ambazo urefu haupatikani mwanzoni, na usimbaji wa maudhui hufanya idadi ya baiti zilizohamishwa iwe tofauti na ukubwa wa uwakilishi hata hivyo. Kwa hiyo sera inayobadilisha njia kichwa kinapovuka kizingiti itatenda kwa njia isiyo sawa, na mara nyingi zaidi katika uhamishaji mkubwa ambao ilikusudiwa kunasa.

Kinachoweza kuungwa mkono na metadata ya programu ni uamuzi kuhusu kazi: mtiririko huu wa kazi ni usawazishaji wa jumla, huu ni wa mwingiliano, huu ni sasisho la programu kutoka chanzo kinachojulikana. Hiyo ni sera iliyoandikwa kwa lugha ya nia, na ni thabiti vya kutosha kujaribiwa. “Jibu hili litakuwa kubwa kuliko megabaiti arobaini” si sera kama hiyo.

Ukaguzi 3: mtiririko tayari upo?

Uelekezaji unaweza kubadilika kwa mtiririko bila kubadilisha utambulisho wa muunganisho, na tofauti hiyo inafaa kuwekwa sawa. Muunganisho wa TCP hutambulika kwa anwani na bandari za ncha zake, na pakiti zinaweza kuchukua njia nyingine ikiwa jedwali la uelekezaji linabadilika chini yao. Kisichoweza kubadilika bila kuonekana ni hali ya utafsiri wa anwani za mtandao: kuhamisha trafiki kwenda toleo lingine la kutoka kawaida hubadilisha tuple ya chanzo cha umma, na upande wa mbali utaona mwenza tofauti bila hali inayolingana.

conntrack -L -p tcp --dport 443 | head -5
ip route get 203.0.113.10
ss -tn state established dst 203.0.113.10

Kwa hiyo kanuni ya kiutendaji ni kwamba kuhamisha katikati ya muunganisho kutoka toleo moja la kutoka kwenda lingine ni uhusiano mpya, si uhamiaji. Ikiwa muundo unahitaji muunganisho huo uendelee, uamuzi ulipaswa kufanywa kabla ya SYN ya kwanza, na hakuna kanuni ya pakiti iliyoongezwa baadaye inayoweza kuujenga upya kwa usafi.

Ukaguzi 4: hitaji halisi ni ucheleweshaji, si kutoka?

Maombi mengi ya “tuma trafiki ya jumla mahali pengine” kwa kweli ni malalamiko kwamba uhamishaji mkubwa hufanya kazi ya mwingiliano ionekane polepole. Hilo ni tatizo la upangaji, na lina jibu la upangaji: foleni ya haki au sera ya upana wa kipimo inayoungwa mkono kwenye njia iliyopo huzuia mtiririko wa jumla kufanya ujumbe wa gumzo ufe njaa bila kuhamisha yeyote kati yao.

tc qdisc replace dev eth0 root cake bandwidth 100mbit

Kushughulikia dalili kwa njia hii hunaacha uamuzi wa kutoka mahali ulipowekwa na sera ya usalama, na unaweza kurudishwa kwa amri moja. Kubadilisha kutoka kwa tabaka zima la trafiki ni mabadiliko ya sera yenye athari kwa uthibitishaji, uwekaji kumbukumbu na kanuni za ufikiaji, kwa hiyo haipaswi kuwa chombo cha kwanza kwa malalamiko ya ucheleweshaji.

Ikiwa hitaji ni kweli kutoka kwingine kwa intaneti, sema hivyo kwa maneno hayo na utekeleze kwenye mpaka unaoungwa mkono: muunganisho mpya kutoka mtiririko wa kazi ulioidhinishwa, au programu inayofungua ombi lake mwenyewe kupitia kutoka lililochaguliwa. Kisha rekodi ni kazi zipi zinatumia kutoka gani, ili mtu anayefuata asilazimike kuikisia kutoka jedwali la uelekezaji.

Weka orodha ya ukaguzi kwenye rekodi ya mabadiliko: sehemu ya uamuzi, sehemu au kazi inayoiongoza, ikiwa mtiririko tayari upo, na ikiwa dalili iliyopimwa ilikuwa ucheleweshaji au kutoka. Maswali manne, na sera inayojibu yote manne ni ile unayoweza kuendesha badala ya kuilinda.

Makala zinazohusiana