一句话总结:由于应用协议的原因可能会导致tcp窗口大小过小致使接收速率变慢,或由于系统的原因导致tcp可变窗口大小不可用,导致窗口大小始终不变(大概率不超过65536b也就是64kb)导致网络速率不理想。

众所周知,我们最近的网络速率越来越快了,但是在高速的上网体验中,总会遇到某些网站加载很慢或下载速度很慢(其实差不多是一回事,只是加载可能要考虑客户端浏览器的渲染速度罢了)。

在计算机网络的学习中,我对网络延迟和网络丢包率以及应用协议对网络速率之间的关系进行了一下学习(虽然学的并不怎么样就是了)。首先是网络延迟对速率的影响

假如网络延迟为10ms,显然这个延迟并不是很高,至少你打fps之类的游戏,大概……差不多……怕是?没有什么明显的感知吧(主要是我吧,不太喜欢打游戏,搞黄色倒是有一套[1](这句划掉,对了,知乎可以打划线)),话说回来继续说延迟的问题,

假如延迟10ms,tcp窗口大小64kb,无丢包,tcp三次握手已协商窗口大小均为64kb,网络无明显波动(但是吧,什么叫明显波动呢?),计算一下,1秒能传输的总大小为((1000[2]/10)*64kb)/1024等于6.4m/s,这个速度大约是50Mbps的宽带速率,这个速度我记得在16年还是算比较快得,我记得我才进移动的时候,我处理的第一条宽带就是98元包50M宽带,当时移动还是sfu的接入,要路由器拨号的,光猫只负责光电转换,当时我第一次接触到pppoe协议,还闹出了一些笑话。

但是在2021年的年初,我个人认为50M比不快,所以我想了一下,ping了一下百度看看延迟(呵,百度,工具人,不过话说回来,百度本来就是工具啊)。

延迟为41ms,计算一下,速率大约是1.5M/s,看上去很糟糕,于是tcp可变窗口大小的意义就显现出来了,如果tcp窗口大小很大会怎么样呢?
视频链接:

为什么上网速度那么慢?从tcp窗口大小来考虑问题。

还是文字看起来舒服一点点蛤。

窗口倍数=大小 8212b*256=2102272b约等于2053kb,相当于一个单次的tcp最大可以传输2053kb,当然由于mss最大分段大小的原因单次tcp传输只能传输1461b的数据,但是2053kb可以切割成若干过tcp数据传给对方

由于那个2102272找不到了,用这个代替一下吧,顺便提一下,丢包率有点高。

于是通过协商cp窗口大小就可以高效的传输数据了,需要注意我声明的tcp窗口大小是指你可以给我的数据,对方声明的窗口大小是我可以给他的数据,在此,想深入学习的可以看看这篇文章

小林coding:面试官:换人!他连 TCP 这几个参数都不懂 ​

总结:由于tcp窗口大小是系统决定的,所以在使用某些协议(例如我的安卓手机走smb,窗口大小就只有16384b,所以速度比较慢),这个时候可以考虑换一种协议,毕竟安卓的配置不太好更改。

made by qwe

参考 ^后来我发现并不能打划线 ^1000ms等于1秒,我说的

网络速率与TCP窗口大小的关系相关推荐

  1. 网络协议:关于TCP/IP,必须知道的十个知识点

    关于TCP/IP,必须知道的十个知识点 本文整理了一些TCP/IP协议簇中需要必知必会的十大问题,既是面试高频问题,又是程序员必备基础素养. 一.TCP/IP模型 TCP/IP协议模型(Transmi ...

  2. 网络协议(TCP/IP、UDP)总结

    什么是协议 协议实际上就是一种约定.好比说,我们做一个石头剪刀布的游戏,我们约定好:石头>剪刀.剪刀>布.布>石头,以此作为游戏规则.我们所有人都遵循这个约定,那么就不需要任何的多余 ...

  3. ppp协议pap验证过程状态转移图_电脑网络知识:TCP协议的高级特性,你所不知道的TCP...

    一. TCP状态转换 要清楚的掌握在连接建立.连接终止以及数据传送时所发生的不同事件,TCP协议以有限状态机的形式来实现.有限状态机是能够经历有限数目状态的一种机器.这个机器总是处于某一个状态中.若没 ...

  4. 网络速率方面的知识(Kbps Mbps KB/s Mb/s Kb/s等)

    面对Kbps.Mbps.KB/s或Kb/s等单位,许多人都会感到混淆,往往分不清线路速度和下载速度,更不知如何计算出实际的宽频上网速度. 对一般人来说,宽频的意义就是原来需要30分钟下载的MP3音乐, ...

  5. 网络速率方面单位MBPS和MB的区别

    面对Kbps.Mbps.KB/s或Kb/s等单位,许多人都会感到混淆,往往分不清线路速度和下载速度,更不知如何计算出实际的宽频上网速度. 对一般人来说,宽频的意义就是原来需要30分钟下载的MP3音乐, ...

  6. 全网最详细的网络协议之TCP/IP 协议,建议直接收藏

    一. 计算机网络体系结构分层 计算机网络体系结构分层 计算机网络体系结构分层 不难看出,TCP/IP 与 OSI 在分层模块上稍有区别.OSI 参考模型注重"通信协议必要的功能是什么&quo ...

  7. linux网络udp和tcp

    文章目录 端口号 端口号划分 常见端口号 SSH 两个问题 netstat pidof xargs 长连接和短连接 UDP协议 UDP header UDP的特点 udp最大长度 基于udp协议的应用 ...

  8. 第一章 OSI网络模型和TCP/ IP协议栈

    第一章 OSI网络模型和TCP/ IP协议栈 1.1 计算机网络的定义 计算机网络是指将若干台地理位置不同,且具有独立功能的计算机,通过通信设备和传输线路相互连接起来,按照一定的通讯规则进行通信,以实 ...

  9. 【网络协议】TCP的交互数据流和成块数据流

    TCP协议简介 传输控制协议,位于传输层,提供一种可靠的,面向连接的数据传输服务 TCP通过以下方式保证可靠性: 应用程序被分割为适合传输的数据块,UDP不会,UDP只有与IP首部组成IP数据报时才会 ...

  10. 网络协议 9 - TCP协议(下):聪明反被聪明误

    网络协议 9 - TCP协议(下):聪明反被聪明误 原文:网络协议 9 - TCP协议(下):聪明反被聪明误 网络协议 1 - 概述 网络协议 2 - IP 是怎么来,又是怎么没的? 网络协议 3 - ...

最新文章

  1. 最全解释P2P、P2C 、O2O 、B2C、B2B、 C2C的定义
  2. 前端开发 填充padding 0229
  3. python 函数 过程_python之函数篇
  4. 利用Octave解线性方程组
  5. MINIGUI交叉编译【转】
  6. GO_00:Mac之Item2的配置安装
  7. C++ Primer 5th 第1章 开始
  8. ​每一页都是知识点,这本Flutter企业级实践指南太绝了
  9. 【正点原子STM32连载】第二章 STM32简介 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
  10. 计算机 映射网络驱动器,映射网络驱动器
  11. 窃听信道模型中的保密通信性能研究
  12. 计算机技术与电气工程专业代码,电气工程及其自动化专业代码:080601 [本科]
  13. APP测试点总结(表格形式)
  14. 腾讯大厂2022校招来啦
  15. 软件即服务已经过时 硬件即服务促成云计算
  16. 管桩的弹性模量计算公式_400管桩单桩水平承载力特征值计算书
  17. 乐视pro3精英版乐视X722线刷兼救砖_纯净刷机包_教程
  18. 2021天水高考成绩查询,2021天水高考成绩查询入口
  19. SPI串行外围设备接口
  20. mysql英文怎么发音_英语口语怎么练最有效?知道这3个方法就够了!

热门文章

  1. Mocha Pro 2022 Plugins for mac(达芬奇/Fusion/Nuke/OFX插件)
  2. 14.拉格朗日插值公式
  3. 常用计算机英文缩写,常用计算机英文缩写含义
  4. 打开3DMAX2014报错,Error while registering plugins.
  5. python 请在微信客户端打开链接-怎么转发微信聊天记录-我用 Python 破解了微信聊天记录,自动同步微信文章...
  6. ansys 服务器系统,云服务器 ansys
  7. S3C2410 通用异步收发UART 串口通信
  8. 游戏建模常用软件以及模型制作流程
  9. [机缘参悟-16]:FPGA编程、软件编程与公司管理有着相似原理
  10. securecrt通过ssh连接板子: 密钥交换失败,没有兼容的加密程序