SPRACT8 September   2020 66AK2H06 , 66AK2H12 , 66AK2H14

 

  1.   Abstract
  2.   Trademarks
  3. 1Introduction
    1. 1.1 TI Processor SDK RTOS
    2. 1.2 TI NDK
    3. 1.3 66AK2H Device
    4. 1.4 FTP Offering in TI Processor SDK RTOS
  4. 2Hardware and Software
  5. 3Develop the FTP Server on K2H
    1. 3.1 Reference FTP Server Example
    2. 3.2 Create K2H FTP Server Example
    3. 3.3 Test K2H FTP Server Example
  6. 4Performance Tuning
    1. 4.1 Quick Code Check
      1. 4.1.1 FTP Transmitting Code Check
      2. 4.1.2 FTP Receiving Code Check
      3. 4.1.3 CCS Project Optimization
    2. 4.2 Increase the TCP Buffer Sizes
    3. 4.3 UIA CPU Load Instrumentation
    4. 4.4 What Can We Do on the PC Side?
      1. 4.4.1 TCP Window Scaling Check
      2. 4.4.2 Receive Interrupt Coalescing Check
    5. 4.5 What Else Can We Do on the K2H Side?
      1. 4.5.1 TCP/IP Checksum Offloading Check
      2. 4.5.2 NIMU Driver Efficiency Profiling
      3. 4.5.3 Receive Interrupt Coalescing
    6. 4.6 Final FTP Throughput Results
  7. 5Summary
  8. 6References

TCP Window Scaling Check

Through TCP stream analysis, it shows the TCP window size is always 64KB, no scaling happened.

GUID-20200819-CA0I-3RTZ-FGSR-LFSBDKHF8DVP-low.png Figure 4-6 TCP Window Size

The stream analysis also shows Round Trip Time (RTT) is about 0.60 millisecond mostly:

GUID-20200819-CA0I-5194-4DBP-MZKPKKNJ3F11-low.png Figure 4-7 TCP Round Trip Time

With this RTT and TCP window size, the transfer supports: 64KB/0.6 ms = 107MB/s throughput. The TCP window size is big enough even without scaling, this is not a factor limiting the throughput. Nevertheless, it is worthy to check and make sure the TCP window scaling is enabled on the Windows PC side, by using command: netsh interface tcp show global. A larger TCP window helps to improve the throughput especially in high RTT scenario.

GUID-20200819-CA0I-7XSL-GPXV-VGVP2K0DL0CM-low.png Figure 4-8 TCP Scaling Check on Windows PC