aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs
diff options
context:
space:
mode:
authorMike Mazur2009-02-25 00:32:26 +0000
committerMike Mazur2009-02-25 00:32:26 +0000
commitbdf95e54a2da5b60e7817d748f7389289a59bc5e (patch)
treee688db1880284466aef41abb545dc9ed50ea66cc /OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs
parentSetting svn:eol-style=native on new files. (diff)
downloadopensim-SC_OLD-bdf95e54a2da5b60e7817d748f7389289a59bc5e.zip
opensim-SC_OLD-bdf95e54a2da5b60e7817d748f7389289a59bc5e.tar.gz
opensim-SC_OLD-bdf95e54a2da5b60e7817d748f7389289a59bc5e.tar.bz2
opensim-SC_OLD-bdf95e54a2da5b60e7817d748f7389289a59bc5e.tar.xz
A few updates necessary for load balancer.
- handle GetUser request for nonexistent user gracefully - include throttle levels in ClientInfo - code to save/restore throttles in client stack - only update/send updates to active clients - make animation classes serializable
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs25
1 files changed, 17 insertions, 8 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs b/OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs
index 1c398d9..6bfa864 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs
@@ -69,18 +69,19 @@ namespace OpenSim.Region.ClientStack.LindenUDP
69 // This value also determines how many times per throttletimems the timer will run 69 // This value also determines how many times per throttletimems the timer will run
70 // If throttleimems is 1000 ms, then the timer will fire every 1000/7 milliseconds 70 // If throttleimems is 1000 ms, then the timer will fire every 1000/7 milliseconds
71 71
72 private float throttleMultiplier = 2.0f; // Default value really doesn't matter.
72 private int throttleTimeDivisor = 7; 73 private int throttleTimeDivisor = 7;
73 74
74 private int throttletimems = 1000; 75 private int throttletimems = 1000;
75 76
76 private LLPacketThrottle ResendThrottle; 77 internal LLPacketThrottle ResendThrottle;
77 private LLPacketThrottle LandThrottle; 78 internal LLPacketThrottle LandThrottle;
78 private LLPacketThrottle WindThrottle; 79 internal LLPacketThrottle WindThrottle;
79 private LLPacketThrottle CloudThrottle; 80 internal LLPacketThrottle CloudThrottle;
80 private LLPacketThrottle TaskThrottle; 81 internal LLPacketThrottle TaskThrottle;
81 private LLPacketThrottle AssetThrottle; 82 internal LLPacketThrottle AssetThrottle;
82 private LLPacketThrottle TextureThrottle; 83 internal LLPacketThrottle TextureThrottle;
83 private LLPacketThrottle TotalThrottle; 84 internal LLPacketThrottle TotalThrottle;
84 85
85 // private long LastThrottle; 86 // private long LastThrottle;
86 // private long ThrottleInterval; 87 // private long ThrottleInterval;
@@ -108,6 +109,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
108 TextureOutgoingPacketQueue = new Queue<LLQueItem>(); 109 TextureOutgoingPacketQueue = new Queue<LLQueItem>();
109 AssetOutgoingPacketQueue = new Queue<LLQueItem>(); 110 AssetOutgoingPacketQueue = new Queue<LLQueItem>();
110 111
112 // Store the throttle multiplier for posterity.
113 throttleMultiplier = userSettings.ClientThrottleMultipler;
114
111 // Set up the throttle classes (min, max, current) in bits per second 115 // Set up the throttle classes (min, max, current) in bits per second
112 ResendThrottle = new LLPacketThrottle(5000, 100000, 16000, userSettings.ClientThrottleMultipler); 116 ResendThrottle = new LLPacketThrottle(5000, 100000, 16000, userSettings.ClientThrottleMultipler);
113 LandThrottle = new LLPacketThrottle(1000, 100000, 2000, userSettings.ClientThrottleMultipler); 117 LandThrottle = new LLPacketThrottle(1000, 100000, 2000, userSettings.ClientThrottleMultipler);
@@ -624,5 +628,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
624 { 628 {
625 return SendQueue.GetQueueArray(); 629 return SendQueue.GetQueueArray();
626 } 630 }
631
632 public float ThrottleMultiplier
633 {
634 get { return throttleMultiplier; }
635 }
627 } 636 }
628} 637}