计算机网络之tcp传输数据性能提升

文章讨论了提高传输性能的策略,包括批量发送与确认、TCP窗口缩放以及启动窗口扩大因子。窗口大小对于传输速度至关重要,不能超过带宽时延积。发送和接收窗口的参数如tcp_wmem和tcp_rmem分别调节发送和接收缓冲区的大小,而tcp_mem则管理TCP内存分配。动态调节接收窗口有助于优化网络效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 传输性能的提升
    最简单的传输方式:发送一个报文,收到一个应答,发送另一个报文
    在这里插入图片描述

优化:
批量发送,批量确认
在这里插入图片描述
2. 窗口大小
在这里插入图片描述
最大可以到1G

启动窗口扩大因子

wws@wws-virtual-machine:~/桌面$ cat /proc/sys/net/ipv4/tcp_window_scaling 
1

发送方在syn报文中发送这个选项,别动连接方一看发送方有这个选项了,自己也会打开这个选项.告诉它我窗口(接收窗口)最大能到多少.

  1. 如何确定最大传输速度
    带宽*网络时延=带宽时延积,它代表网络中飞行报文的数量,已发送但未确定的报文数量的上限是发送窗口的大小,所以发送窗口窗口不能超出带宽时延积.
    在这里插入图片描述
  2. 调节影响发送窗口大小的参数
wws@wws-virtual-machine:~/桌面$ cat /proc/sys/net/ipv4/tcp_wmem 
4096	16384	4194304

第一个参数是发送窗口动态变化的最小值,第二个是初始值,第三个是最大值.动态窗口根据接收窗口的大小动态调整.
5. 名词解释
发送缓冲区=发送窗口
接收缓冲区=接收窗口

  1. 调节接收缓冲区的参数
wws@wws-virtual-machine:~/桌面$ cat /proc/sys/net/ipv4/tcp_rmem 
4096	131072	6291456

最小值 初始值 最大值 单位 字节

打开调节接收缓冲区的功能

wws@wws-virtual-machine:~/桌面$ cat /proc/sys/net/ipv4/tcp_moderate_rcvbuf 
1

tcp发送窗口的大小由接收窗口与带宽延时积,拥塞控制确定,tcp接收窗口的大小由系统空闲内存确定
查看tcp内存变化范围

wws@wws-virtual-machine:~/桌面$ cat /proc/sys/net/ipv4/tcp_mem
21678	28905	43356

单位是页,一页=4kb
tcp所占内存小于第一个数的时候,不需要动态调节tcp接收窗口的大小,直接使用默认值
tcp所占内存在第一个数与第二个数之间的时候,动态调节tcp接收窗口的大小,根据tcp_rmem
当大于第三个数的时候,内核不再为tcp分配内存,无法建立连接,最后一个参数是系统能够分配给用于tcp连接的最大内存
上面的这些值在系统启动时自动算出
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

弈师亦友

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值