我目前正在从事Linux网络编程,我是新手。我正在Linux网络编程(C语言)中开发一些基于 Stream Socket(TCP)的客户端 - 服务器应用程序。
服务器 - 会不断发送数据 客户端 - 将持续接收数据 (两者都在while(1)循环中运行)
如果 Server.c 在system-A上运行且正在运行client.c 系统-B。服务器正在发送一些 100包/秒。但由于某些原因 网络问题客户端能够接收 10个数据包/秒 即;制片人的产能超过接收器。
有丢包吗?或者所有数据包都将作为TCP连接传输(可靠)?
需要一些帮助! 请。
感谢你们所有人
答案 0 :(得分:1)
TCP具有内置流量控制功能。您无需在应用程序级别进行任何特殊安排。如果发送方始终tx的数据多于接收方可以吃的数据,则TCP堆栈将减小窗口大小以降低传输速率。结果是send()调用阻塞的时间更长。