Multi-path TCP (MPTCP) is a network protocol that has the potential to enhance network performance, which is crucial in grid computing systems to improve the overall system's performance. It utilizes multiple network paths between machines to achieve a high network performance. This protocol can also improve the connectivity of multiple servers that may be in different data centers by combining multiple network paths.
One of the main issues of MPTCP is the path for ACK (acknowledgment) packets, which take the same path where original packets come from. When networks have different round trip times (RTTs), MPTCP may dispatch the ACK packet through a longer path, which is inefficient. HayACK solves this issue by selecting the path with the least RTTs. However, HayACK may suffer from inconsistent packets because of middleboxes, which are intermediary devices between the source and the destination that process network packets. These middleboxes may discard MPTCP packets because of inconsistent sequence numbers of HayACK packets, which is a product of HayACK's path selection.
This study aims to investigate the usefulness of HayACK for high-performance data transfer when using multiple paths in real network environments and the influence of middleboxes on HayACK. Our investigation was conducted using various network paths by preparing many client hosts with different IP addresses and one server. The influence of middleboxes is determined by checking the probe packets passed through, changed, or discarded. Assuming the HayACK response, we crafted packets such as TCP SYN packets and TCP ACK packets.