I am trying to setup a environment with multiple nodes (1 receiver + 16 senders) to establish 1,000,000 (1M)
concurrent TCP connections.
Using this tool: https://github.com/Microsoft/ntttcp-for-linux
Using Ubuntu 1804
with latest kernel
Currently, I am easily reached 262,156 concurrent TCP connections with 3+ senders. but after this, seems that the receiver is not able to accept any new TCP connections.
Is there any configuration on Linux I can tune to make 1M TCP connections?
What I have done:
- Receiver side:
ulimit -n 1024000 ./ntttcp -P 64 -M -e ### '-e' to use epoll()
I run this command on receiver side to monitor the number of TCP connections:
ss -ta | grep ESTA | wc -l
- Sender sides
ulimit -n 1024000 echo 1024 65535 > /proc/sys/net/ipv4/ip_local_port_range ./ntttcp -s10.0.0.4 -P 64 -n 10 -l 100 ### 64,000 concurrent TCP connections from one sender