This is a generic TCP/IP question, not specific to Linux on z. I have a .NET
program running under Mono on Linux that uses TDS to communicate with an SQL
Server 2008 database running on Win7. The application is able to drive a lot
of traffic for some extremely large inserts (lots of image data). In fact,
according to a Wireshark trace, it drives things so hard that Wireshark
detects a TCP Window Full condition. Consequently, a few seconds after that
condition is recognized we see a RST packet from the Windows side that
closes the connection.

I noticed that the code was setting the TCP_NODELAY option which disables
"Nagling" which I don't think is a good thing in this environment. However,
even after I got rid of it we'd still get the same condition.

Two questions:

1. Why isn't the write blocked to allow the congestion to resolve?
2. How is Wireshark able to detect the condition but the application gets no
indication that things are bad or that the TCP stack tries to resolve the
situation?

Neale

----------------------------------------------------------------------
For LINUX-390 subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO LINUX-390 or visit
http://www.marist.edu/htbin/wlvindex?LINUX-390
----------------------------------------------------------------------
For more information on Linux on System z, visit
http://wiki.linuxvm.org/

Reply via email to