Application Delivery (ADX)

New Contributor
Posts: 2
Registered: ‎10-27-2009

enable tcp window scale


using a SI-350, Version 10.2.01bTD2

it seems that regular HTTP traffic handled by a virtual host (without syn-proxy) forwarded to a binded port on a realserver that has window scaling enabled (successfully tested by accessing the real server directly) is not able to increase the receive window size to more than 64K.

how can this be configured? there is an global config option "tcp-options window scale DECIMAL" which takes values 0..14?!

SLB-telnet@lb02(config)#tcp-options window-scale 500000
Error: Invalid window scale 50000. Valid values are 0..14.

I have looked at the documentation, however couldn't find anything useful.



Occasional Contributor
Posts: 17
Registered: ‎08-19-2008

Re: enable tcp window scale

Here is an answer I got previously on this topic

Windows Scale follows the standard RFC based TCP option and the RFC defines what this feature should do. I pasted some text below on RFC 1323.
0 to 14 are the valid values for window scale and hence the CLI accepts only those values. This option does not specify the new window value, it specifies the multiplication factor. So, the TCP window would be

wnd * 2^ws  where wnd is the TCP window advertised in the standard TCP header and ws is the value advertised in the window scale option"

"RFC 1323 details a method for supporting larger receive window sizes by allowing TCP to negotiate a scaling factor for the window size at connection establishment. The Window Scale TCP header option enables the programmer to set an option called the shift count, which indicates how many bits to the left to shift the value in the window size field, to arrive at the actual window size. For example, a shift count of 1 shifts the stated window size value once to the left, in effect multiplying it by two (2^1). A shift count of 5 multiplies the stated window size by 32 (2^5). This method allows for an actual receive window of up to 1 gigabyte."

New Contributor
Posts: 2
Registered: ‎10-27-2009

Re: enable tcp window scale

thanks for the hints.

we have configured the global option, however still not working. looks like a bug or am I missing something here?

attached some libpcap traces attached that document our findings.

Super Contributor
Posts: 316
Registered: ‎05-01-2009

Re: enable tcp window scale

I would suggest to raise a ticket if you do have to feeling that this is a bug. This community is not a good place to troubleshoot problems. You have mentioned a software release but tons of details are missing like if it is a CSW enabled virtual server, additional security options and so on. I doubt you would like to share you configuration here.

The global tcp-options command is related to the syn-proxy feature as you can see at the CLI:

SLB-ServerIron 4G(config-vs-vs222)#tcp-opti
  tcp-options                   Enable or disable TCP option support when SynCookie is enabled

Looking at your example trace I do see a virtual server window size of 8000 - this sounds like it is an CSW enabled virtual server because the following is mentioned in the docs:

To change the TCP window size to 1460 bytes, enter the following command:

ServerIron(config)#server l7-tcp-window-size 1460

Syntax: server l7-tcp-window-size <window size>

The default TCP window size is 8000 bytes.

The possibilites with CSW are limited because the SI needs to buffer traffic in front of the load balancing decision. Follow-up with our TAC to get more details about it.

Super Contributor
Posts: 316
Registered: ‎05-01-2009

Re: enable tcp window scale

CSW together with tcp-options is not supported. Just to add this - I have missed to add this yesterday.

Join the Community

Get quick and easy access to valuable resource designed to help you manage your Brocade Network.

vADC is now Pulse Secure
Download FREE NVMe eBook