Varför Squid-nedladdningar kan överskrida en månatlig trafikkvot
Förstå varför periodiska rapporter och loggar över slutförda förfrågningar inte kan upprätthålla en exakt kvot för pågående proxytrafik.
En kvotrapport som uppdateras var tionde minut kan missa betydligt mer än tio minuter av aktuell trafik. Squids inbyggda transaktionsloggning skriver normalt den slutförda transaktionen, så en öppen nedladdning eller CONNECT-tunnel kan ännu inte ha lämnat sitt slutliga byteantal.
Börja med att definiera vilken trafik kvoten räknar.
Tillträde sker före den slutliga avräkningen
En hjälpreda kan släppa in en ny förfrågan med hjälp av en redovisningsdatabas. Att uppdatera den databasen senare stoppar inte automatiskt arbete som redan släppts in.
Samtidiga förfrågningar kan också läsa samma saldo. Med 20 MB kvar kan två samtidiga operationer på 15 MB båda släppas in innan någon av dem ändrar summan. Noggrann rapportering i efterhand kan inte ångra överskridandet.
Autentisering och cachelagring av externa ACL:er kan fördröja ett ändrat beslut ytterligare. Ett cachat tillstånd är inte en färsk saldokontroll. IP-baserad redovisning kan också slå ihop användare bakom en enda översatt källa.
Definiera den gräns du kan upprätthålla
En mjuk månadspolicy kan tillåta försenade summor och en dokumenterad överskridandetolerans. En hård gräns i realtid kräver en auktoritativ realtidsmätare och upprätthållande som kan agera på pågående trafik.
Avgör om tillåtna överföringar slutförs, avbryts eller reserverar en budget. Definiera hur samtidiga operationer delar den budgeten och hur misslyckade operationer frigör reservationer. En överföring som startar strax under gränsen bör ha ett förutsägbart utfall.
Ta med överrullning, sena poster, tjänstomstarter och loggrotation i redovisningsdesignen. Behåll varaktig bearbetningsframdrift; att radera en aktiv logg för att undvika dubbelräkning kan i stället förlora bevis.