Trīs vienlaicīgi savienojumi ir uzņemšanas lēmums, un, lai uz to atbildētu, jāzina, kuras nišas ir aizņemtas tieši tagad, nevis tas, kas notika pagājušajā mēnesī. Pakalpojums var atteikt ceturto sesiju no mazas aktīvo ierakstu tabulas un nekad neveidot laika līniju. Tas ir apgalvojums par mehānismu, nevis par operatoru, un atšķirībai ir nozīme, lasot privātuma politiku. Zemāk redzamais modelis parāda, kas lēmumam vajadzīgs un ko tas var izmest.

Mehānisms: nišu tabula, nevis žurnāls

Vienkāršākā ieviešana saista abonementu ar līdz trim aktīviem sesijas ierakstiem. Katra uzņemtā sesija aizņem vienu nišu, un niša tiek atbrīvota, kad pakalpojums nolemj, ka šī sesija ir beigusies. Ierakstam vajadzīga pietiekami specifiska identitāte, lai viena savienojuma atbrīvošana neatbrīvotu cita savienojuma nišu; tāpēc sesijas identifikators ir svarīgāks par konta nosaukumu.

Aizņemtība un vēsture ir dažādas datu struktūras. Aizņemtība atbild uz jā-vai-nē jautājumu par tagadni, un to var izmest tajā brīdī, kad sesija beidzas. Vēsture ir tikai papildināms notikumu strauts, un tā pastāv tāpēc, ka kāds izvēlējās to glabāt. Pakalpojumam var būt viens, abi vai neviens.

Atšķirība no ārpuses nav redzama. Redzams savienojumu ierobežojums ir saderīgs ar niecīgu atmiņā esošu skaitītāju, koplietotu datubāzes tabulu un pilnu notikumu arhīvu ar paneli. Nekas pašā ierobežojumā nepasaka, kurš no tiem darbojas.

What is storedWhy it exists
Active session slotsTo admit or refuse the next connection
Session event logTo investigate or bill later
Monitoring seriesTo watch capacity and error rates
Backup copiesTo restore any of the above

Kāpēc tiešajam modelim tomēr vajadzīga koordinācija

Pazudušais savienojums var netikt uzreiz atzīts par beigušos. Vārteja gaida taimautu, keepalive kļūmi vai uzskaites apturēšanu, un, kamēr neviens no tiem nav pienācis, niša paliek aizņemta. Lietotājs, kurš šajā laikā atkārtoti pieslēdzas, saskaras ar atteikumu, kam nav nekāda sakara ar ceturto ierīci.

Restartētam serverim jāsaskaņo savs stāvoklis, un vairākām vārtejām, kas apkalpo vienu un to pašu kontu, vajadzīgs kopīgs lēmums. Citādi konts var pārsniegt savu kvotu, pieslēdzoties dažādām atrašanās vietām. Koplietots vai atjaunojams stāvoklis to atrisina, un koplietots stāvoklis ir projektēšanas prasība, nevis novērošanas pierādījums.

Neviena no šīs koordinācijas daļām neprasa pārlūkošanas vēsturi. Vārtejai, kas pārsūta paketes, nav jāzina, kuras vietnes sesija apmeklēja, lai skaitītu sesijas, un šos divus datu plūsmus parasti apstrādā pilnīgi dažādas komponentes.

Skaitītāja turēšana atmiņā arī nepadara saistītos faktus anonīmus. Kamēr pakalpojums darbojas, ar abonementu saistīts ieraksts atklāj, ka kontam ir aktīvi savienojumi, un gan piekļuve šim stāvoklim, gan tā dzīves ilgums ir jautājuma vērti.

Kur stāvoklis pēc tam aiziet

Privātuma jautājums nav par to, vai serveris prot skaitīt. Jautājiet, kas notiek ar beigušos sesiju: vai ieraksts tiek noņemts, vai tas kļūst par notikumu uzraudzības sērijā? Pēc tam jautājiet, kuras citas komponentes redzēja to pašu notikumu, jo autentifikācijas žurnāli, uzskaites ieraksti un dublējumi katrs var glabāt kopiju, ko izpildes ceļš izmeta.

RADIUS uzskaite ir visskaidrākais piemērs. Start un Stop pāris pastāv, lai atbalstītu rēķinu izrakstīšanu un sesiju kontroli, un tas rada savienojuma ierakstu neatkarīgi no tā, vai kāds to kādreiz vaicā kā vēsturi. Tāpēc pakalpojums, kas ierobežojumus īsteno ar uzskaiti, pēc uzbūves glabā vairāk nekā nišu tabulu.

Dzēšanai arī ir forma. Ieraksts, kas izņemts no tiešās tabulas, var saglabāties dublējumā, kas uzņemts stundu agrāk, un šī dublējuma glabāšanas periods ir patstāvīgs politikas paziņojums. Lasot tikai primāro krātuvi, tiek iegūta nepilnīga atbilde.

Uzdodiet jautājumu lauku izteiksmē

RFC 6973 datu minimizēšanas vadlīnijas saista savāktos un glabātos datus ar apkalpoto mērķi. Šeit piemērojot, lietderīgais jautājums ir, kuri lauki vienlaicīgas uzņemšanas uzdevumam patiešām vajadzīgi un kāds mērķis attaisno katra no tiem glabāšanu pēc šī uzdevuma beigām.

Precīzs pakalpojuma paziņojums atdala tiešo savienojuma stāvokli, ko izmanto kvotas īstenošanai, no visiem ierakstiem, kas glabāti pēc izbeigšanas, un nosauc citas sistēmas solījuma tvērumā. Teikums, kas tikai saka, ka tiek īstenoti trīs savienojumi, nepierāda ne to, ka arhīvs pastāv, ne to, ka tā nav.

Kad dzīves cikls nav skaidrs, reģistrējiet to kā neatbildētu glabāšanas jautājumu, nevis spriedumu. Ierobežojuma esamība nav pierādījums slēptai vēsturei, un ticams tiešā stāvokļa skaidrojums nav pakalpojumu sniedzēja audits.

Saistītie raksti