TCPCopy is a TCP stream replay tool to support real testing of Internet server applications. Although the real live flow is important for the test of Internet server applications, it is hard to simulate it as online environments are too complex. To support more realistic testing of Internet server applications, we develop a live flow reproduction tool - TCPCopy, which could generate the test workload that is similar to the production workload. Currently, TCPCopy has been widely used by companies in China. TCPCopy has little influence on the production system except occupying additional CPU, memory and bandwidth. Moreover, the reproduced workload is similar to the production workload in request diversity, network latency and resource occupation. TCPCopy consists of two parts, TCPCopy and intercept. While TCPCopyruns on the online server and captures the online requests, intercept runs on the assistant server and does some assistant work, such as passing response info to TCPCopy.
Features
- The only operation needed on the target server for TCPCopy is setting appropriate route commands to route response packets
- Utilizes raw socket input technique by default to capture the online packets at the network layer
- Send packets to the target server
- It is tested on Linux only (kernal 2.6 or above)
- TCPCopy only supports client-initiated connections now
- Utilizes raw socket output interface by default to send packets at the network layer to a target server