29 using OpenSim.Framework;
32 namespace OpenSim.
Region.ClientStack.LindenUDP
83 IConfig throttleConfig = config.Configs[
"ClientStack.LindenUDP"];
86 Resend = throttleConfig.GetInt(
"resend_default", 6625);
87 Land = throttleConfig.GetInt(
"land_default", 9125);
88 Wind = throttleConfig.GetInt(
"wind_default", 1750);
89 Cloud = throttleConfig.GetInt(
"cloud_default", 1750);
90 Task = throttleConfig.GetInt(
"task_default", 18500);
91 Texture = throttleConfig.GetInt(
"texture_default", 18500);
92 Asset = throttleConfig.GetInt(
"asset_default", 10500);
94 Total =
Resend + Land + Wind + Cloud + Task + Texture + Asset;
96 ClientMaxRate = throttleConfig.GetInt(
"client_throttle_max_bps", 375000);
97 if (ClientMaxRate > 1000000)
98 ClientMaxRate = 1000000;
100 BrustTime = (float)throttleConfig.GetInt(
"client_throttle_burtsTimeMS", 10);
103 AdaptiveThrottlesEnabled = throttleConfig.GetBoolean(
"enable_adaptive_throttles",
false);
104 MinimumAdaptiveThrottleRate = throttleConfig.GetInt(
"adaptive_throttle_min_bps", 32000);
106 CannibalizeTextureRate = (double)throttleConfig.GetFloat(
"CannibalizeTextureRate", 0.0f);
107 CannibalizeTextureRate = Util.Clamp<
double>(CannibalizeTextureRate,0.0, 0.9);
109 catch (Exception) { }
116 case ThrottleOutPacketType.Resend:
118 case ThrottleOutPacketType.Land:
120 case ThrottleOutPacketType.Wind:
122 case ThrottleOutPacketType.Cloud:
124 case ThrottleOutPacketType.Task:
126 case ThrottleOutPacketType.Texture:
128 case ThrottleOutPacketType.Asset:
130 case ThrottleOutPacketType.Unknown:
int Land
Drip rate for terrain packets
int Wind
Drip rate for wind packets
int Cloud
Drip rate for cloud packets
Int64 MinimumAdaptiveThrottleRate
Set the minimum rate that the adaptive throttles can set. The viewer can still throttle lower than th...
bool AdaptiveThrottlesEnabled
Flag used to enable adaptive throttles
int Resend
Drip rate for resent packets
ThrottleRates(IConfigSource config)
Default constructor
Any packets that do not fit into the other throttles
int GetRate(ThrottleOutPacketType type)
int Asset
Drip rate for asset packets
Holds drip rates and maximum burst rates for throttling with hierarchical token buckets. The maximum burst rates set here are hard limits and can not be overridden by client requests
Packets that are being resent
double CannibalizeTextureRate
Amount of the texture throttle to steal for the task throttle
int Texture
Drip rate for texture packets
int Total
Drip rate for the parent token bucket
int Task
Drip rate for task packets