2015-03-31 53 views
1

我每5秒从我的TCP套接字发送数据到我的服务器。在一小时内以这种发送速率发送消息将消耗多少数据。TCP套接字数据消耗

每次打开套接字并将数据从客户端抽出到服务器。我在客户端使用3G GSM调制解调器。

我的消息是,ID1 $ Socket $ Open $ timestamp。全部是字符串

+3

无法回答,直到您告诉我们您每5秒发送多少数据。 – nos 2015-03-31 20:34:34

+0

@nos my message is,ID1 $ Socket $ Open $ timestamp。全部是字符串 – bhuvan 2015-03-31 21:05:14

回答

0

ID1$Socket$Open$timestamp是25个字节,假设一个8位字符串,并且假设您没有在您的消息之间发送任何其他数据(头/分隔符等)。

因此,每5秒发送一条消息是每分钟消息数为60/5 = 12,即每小时消息数为12 * 60 = 720。每个消息25个字节,即每小时720 * 25 = 18000个字节(加上TCP/IP头和每个消息帧的开销,以及每个TCP帧的ACK)。

+0

某处有一篇文章显示TCP的最大带宽利用率为83%或87%,我忘记了其中哪些,其余的是头文件和可能的ACK。 – EJP 2015-03-31 23:36:35

+1

TCP本身并不能提供足够的信息来计算此类信息。现在,如果你说TCP/IP over 10baseT,那么你有一个1500字节的最大MTU和最少20字节的TCP和IP头,所以有1460个净荷字节。然后,以太网添加一个14字节的标题,一个4字节的CRC,7字节的前导码和1字节的帧开始。还有一个12字节的帧间间隙。因此,假设没有休息,你有1460/1538 == 94.9%。 ACK不占用额外的空间,带宽通常是双向的。其他网络技术具有不同的帧和不同的MTU,从而改变最大效率。 – 2015-04-02 03:10:53