04-18-2006 01:11 PM
I understand that the CSS runs a periodic garbage collection process to free up flows that have been closed or are idle. I know it depends on the number of connections per second, but in general, how often does the garbage collection run? Here's my "flow statistics":
Flow Manager Statistics - Slot 1, Subslot 1:
Cur High Avg
UDP Flows per second 6 1407 2
TCP Flows per second 39 952 33
Total Flows per second 45 1479 37
Hits per second 46 582 45
Solved! Go to Solution.
04-20-2006 03:38 AM
actually garbage collection is more frequent than every 20 min. But when a flow is garbage collected it is moved to a list of free flows but we do not *delete* it. Which means we can still use it as long as this flow is not needed.
This list of free flows is a FIFO.
So, a flow will move inside the list until it pops out.
The speed at which the flow moves in the list is dependent on your number of connections/sec and also the size of the list which is linked to the number of slots in the box and amount of memory.
So, in your case, it takes 20min for a flow to move through the free list.
Gilles.
04-19-2006 06:27 AM
it also depends on your hardware and software version.
But, even with this info, I won't have the answer at hand. I could verify in the code but I just don't see why it is important to know this information.
Is it curiosity or are you trying to solve a particular problem ?
Thanks,
Gilles.
04-19-2006 10:51 AM
I'm running 7.4. Sorry, I should've said that I ran into a problem with clients using HTTP 1.1 persistent connections getting disconnected. I already increased the flow-timeout for my affectd content rules, which solved the problem.
But before I applied that fix, we had a monitoring tool that kept timing out every 20 minutes. Our monitoring tool tries to maintain a persistent HTTP connection, but it didn't run often enough to prevent the CSS from marking it idle. My theory is that the garbage collection runs every 20 minutes. So yes, my question is more out of curiosity. It's also a good tidbit if knowledge in case this problem comes up again in another form. Thanks.
04-20-2006 03:38 AM
actually garbage collection is more frequent than every 20 min. But when a flow is garbage collected it is moved to a list of free flows but we do not *delete* it. Which means we can still use it as long as this flow is not needed.
This list of free flows is a FIFO.
So, a flow will move inside the list until it pops out.
The speed at which the flow moves in the list is dependent on your number of connections/sec and also the size of the list which is linked to the number of slots in the box and amount of memory.
So, in your case, it takes 20min for a flow to move through the free list.
Gilles.
04-20-2006 10:59 AM
Interesting. Given all those variables, it's just strange that the flow gets dropped literally every 20 minutes. The problem was fixed with the flow-timeout change, but knowing this is very useful. thanks!
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide