24e12c4b   
   From: free@securityaudit.val.newsbank.net   
      
   In article ,   
    chris writes:   
   > I've got TCP performance problem with a Windows 2003 box, hope   
   > somebody can advise me on the tuning parameter I'm looking for.   
   >   
   > The application stops and starts its transmissions, pausing for ~10   
   > seconds between long periods of bulk throughput.   
   >   
   > When the application is actually sending, things go well: Data rates   
   > are acceptable, and I can clearly see TCP expanding the transmit   
   > window one segment at a time. The transmission rate, and gap between   
   > segments is quite smooth and steady during these intervals. In-flight   
   > data tends to peak around 100KB. Packets are not frequently lost   
   > during steady-state operation.   
   >   
   > Then transmission then stops abrubtly. After some time, the   
   > transmission restarts, just as abruptly as it stopped. This is where   
   > things get ugly. Instead of these segments being spaced out nicely,   
   > the whole congestion window is dumped onto the wire at the server's   
   > line rate (100Mb/s).   
      
   See section 4.1 of rfc2581 and rfc5681:   
      
    Therefore, a TCP SHOULD set cwnd to no more than RW before beginning   
    transmission if the TCP has not sent data in an interval exceeding   
    the retransmission timeout.   
      
   > These bursts tend to be 16 segments (just under 24KB)   
      
   The rfcs prescribe min(IW, cwnd), where   
      
    IW = min (4*SMSS, max (2*SMSS, 4380 bytes))   
      
   and:   
      
    a TCP sender MAY use a 3 or 4 segment initial   
    window, provided the combined size of the segments does not exceed   
    4380 bytes.   
      
      
   rfc2581 is ten years old, and Van Jacobson recommended this 20   
   years ago. I find it hard to believe that ms-windows does not do this   
   out of the box.   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|