/Engine/Source/Runtime/Engine/Public/Net/RPCDoSDetection.h
Stores the RPC DoS detection state (either settings from the config file, or the active DDoS detection state)
struct FRPCDoSState
int16
AutoEscalateTime
The amount of time, in seconds, spent in the current DoS severity category before it automatically escalates to the next category
bool
bKickPlayer
Whether or not to kick the player when they escalate to this state
bool
bLogEscalate
Whether or not to log when escalating to this state
bool
bSendEscalateAnalytics
Whether or not to send analytics when escalating to this state
bool
bTrackRecentRPCs
Whether or not to keep a temporary record of recent RPC's, for potential logging/analytics
int16
CooloffTime
The amount of time, in seconds, before the current DoS severity category cools off and de-escalates
int16
EscalateQuotaRPCsPerFrame
Escalation limits - for escalating to a more strictFRPCDoSStateThe number of RPC's per frame before the next stage of DoS detection is triggered
int16
EscalateQuotaRPCsPerPeriod
The number of RPC's per EscalateQuotaPeriod before the next stage of DoS detection is triggered
int8
EscalateQuotaTimePeriod
The time period to use for determining RPC count and time escalation quotas (Max: 16)
int16
EscalateTimeQuotaMSPerFrame
The amount of time spent executing RPC's per frame, before the next stage of DoS detection is triggered
int16
EscalateTimeQuotaMSPerPeriod
The amount of time spent executing RPC's per EscalateQuotaPeriod, before the next stage of DoS detection is triggered
double
EscalateTimeQuotaSecsPerFrame
Cached/converted values EscalateTimeQuotaMSPerFrame converted to seconds
double
EscalateTimeQuotaSecsPerPeriod
EscalateTimeQuotaMSPerPeriod converted to seconds
int8
EscalationCountTolerance
Escalation monitoring - for setting thresholds for triggering analytics (does not affect escalation quota's and RPC limiting) The number of times this stage must be escalated to, before it is 'confirmed' as having been escalated to (for analytics)
int16
EscalationTimeToleranceMS
The maximum time spent executing RPC's per frame, before this escalation stage is automatically 'confirmed' for analytics
double
EscalationTimeToleranceSeconds
EscalationTimeToleranceMS converted to seconds
int16
RPCRepeatLimitMSPerPeriod
The limit for the number of milliseconds a single RPC can spend executing, over the time period specified by RPCRepeatTimeLimitPeriod
int16
RPCRepeatLimitPerPeriod
RPC Execution limits - for preventing execution of specific RPC's, after they have reached a count/time limit The limit for the number of times a single RPC can be repeated, over the time period specified by RPCRepeatTimeLimitPeriod
double
RPCRepeatLimitSecsPerPeriod
RPCRepeatLimitMSPerPeriod converted to seconds
int8
RPCRepeatLimitTimePeriod
The time period to use for measuring excessive execution time for a single RPC (Max: 16)