9
ServerandObjectDirectoryOptimisation
EndpointtoServerCommunication‐NetworkLoadEstimation
EndpointEncryptionnetworktrafficistheeasiesttoconsiderintermsof“synchronizationevents”.Eachtimea
systemstartsittriestoconnecttoadesignatedEEPCdatabasecommunicationserverandupdateitsprofile.It
mayalso(dependinguponconfiguration)trytoconnectperiodically.Inlargedeployments,thefirststepin
estimatingthenetworkloadcausedbyEndpointEncryptionistoestimatethepeaknumberofconcurrent
synchronizationevents.Thisisrelatedtotheuserworkingpractices.Forexample,if2000usersswitchtheir
systemsonat9A.M,the“9A.M.”effectcanbedilutedbysettingoptionalbootsyncdelayandoffsettimesto
spreadtheloadacross,forexampleonehour.
Oncepeakflowisestimated,doubleittogivesomesafety,thenworkonanestimateof7KBperuserpersync
(thisisaveryhighapproximationbasedontotalupdateoftheusereverytwosyncevents).AtypicalWindows
server,inourexperience,canaccept100connectionspersecondperserver,withadefaultmaximumwait
timeof30secondsforpendingconnections.
ThemaximumcapabilityofasingleCommunicationsServer,takingthecapacityofthenetworktobe100
Mbps(1millionbitspersecond)is20synchronizationsofdataasecond.AWindowsserverOScanestablish
connectionsaboutevery10ms,andcanhandleunlimitedconnections(althougheventuallyitwillrunoutof
clockcyclesandmemory).
Onceestablished,aconnectioncantakeanunlimitedamountoftimetofinish,thoughthedefaulttimeouton
establishingaconnectionis30seconds.Iftherearemorethan100attemptedconnectionspersecond,the
queuecannotbelongerthan3,000connections.
ThedefaultsettingsoftheCommunicationServerlimitthequeueto200entries(abalancebetweentaking
connectionsandprocessingconnections).Afterthatpoint,theconnectionsarerefused.Thisisareasonable
“realworld”setting.Aslongastheprofileofthesystemissettoretrytheconnectionafter,forexample,four
hours,thereisnolossoffunction.Settingthequeuelengthtomorethan1500canresultinpoorperformance
fromtheserverasittriestoservicesomanyconnections.
Inrealtermswecansaythatasageneralmaximumcase,theEndpointEncryptionServerislimitedto100
connectionspersecond,withasustainedload.Saturationinourexperienceisreachedwhenthereismore
than1400synchronizationeventsperminute(1200acceptedandprocessed,200queued).Achievingthisload
intherealworldrequiresamassive,badlyplannedandconfiguredpopulationofsystems.Currentcustomers
with40000+installationsrarelyexceedthe200currentconnectionpoints,mostofwhichareadministrators
performingconfigurationchanges.
TheoperatingsystemordiskcontrollercachesmostofEndpointEncryption’sdatabase,soeventuallythe
commonfileswillbesuppliedfromRAMratherthanacrosstheconnectiontothedatabasehost,or,fromdisk.
Usingthecompressedversionofthedatabasecanimproveperformancebyasmallamount,however,itis
usefulwhencorporatebackupsoftwarehasdifficultyarchivingthedatabase.
ThisroughcalculationtellsusthatweneedoneEndpointEncryptionServerper1400eventsaminute
minimum;however,experiencingthesysteminactionwillgivetruefeedback.Itisoftenthecasethatmodern
hardwareoutperformspaperestimations.
EstimatingtheSizeoftheObjectDirectory
ThebasesizeofanEndpointEncryption5.xObjectDirectoryisaround150MB.Becauseyouaddnewusers
andsystems,theODBgrowsaccordingly.Italsogrowsinsizeassystemssynchronizeanduploadaudit
information.