0

I have implemented a file transfer program on Windows 64-bit platform using winsock API. I am using a 1Gbps connection.

  1. When I transfer files using TCP protocol, I am getting only 320 Mbps. when I monitor the Task Manager, it shows about 35% network utilization. Shouldn't I be getting a better transfer rate than this?
  2. When I transfer files using UDP, the network connection seems to be lost. I tried using the ping command to check and I found out that I am only able to ping to the loopback address and not to anything else. I have no idea of why this happens. I know UDP is not TCP friendly and has no congestion control or flow control, but I don't think that can affect all other connections so drastically.

I browsed a lot for tuning options, but nothing seems to work for me. Could anyone find the problem that's preventing me from achieving maximum throughput, and why I lose the connection the moment I run the UDP sender program?

2
  • Are you sure that its the network that is limiting you to 320Mbps and not your CPU or your program? Also, using UDP should not bring down your network, but you have not given us any details to help debug that problem. Is this all your code? Can you share some of it?
    – heavyd
    Mar 3, 2014 at 16:17
  • @heavyd For tcp i ll try to analyse the code and see whether yhe prob is with the network or not. And the udp prog is actually too simple. I get the prob as soon as sendto func is invoked. I have not done anythin special with the code and that is why i didnt share. The application bufffer is of size 10000, udp sndbuf is 65536, udp rcvbuf is 1048000. Mar 3, 2014 at 19:46

0

You must log in to answer this question.

Browse other questions tagged .