前言

  • 首先,不得不说,EPIC是真的大方,直接将GTAV免费送,没有领取的小伙伴先点这里白嫖一下,然后开始我们今天的正事。
  • 可能博主也是等这94个G等迷糊了,想起了TCP的传输过程,文章不长,也是突然间想到记下来,大家看个乐呵就行,如果理解有误,请大佬指正。

开始分析

首先附上下载过程图片

TCP可靠传输的实现

  • EPIC客户端下载类似Steam,有5个进度条,我也不多废话,直接看最后一个和倒数第二个进度条。
  • 首先看一个动态图点击跳转
  • 看过之后你会发现,最后一个进度条和TCP的传输很像,怎么像呢,下面我来解释下。
  1. 以“字节”为单位:可以把最后一个进度条的一个小方格看成一个字节(虽然肯定比字节大很多),你会发现,他们都是一个一个或一组一组往后传输的。
  2. 检测丢失并重传:深蓝色的是没有传输的,浅蓝色的是丢失的(或错误的),粉色的是传输完成的,绿色的是传输完成并确认(写入)的。偶尔会出现丢失(出现一个浅蓝方格),那么写入就会停止,等待重传后再继续写入。
  3. 有接收缓存:缓存的存在是协调高速设备和低速设备,最后一个进度条就类似缓冲区,写入的速度非常快(达到400M每秒),而下载的速度相较就非常慢,缓冲区的存在协调了这种差距,偶尔写入停止,等待没有错误再继续写入。

后记

  • 文章仅代表个人拙见,可能人家设计的进度条根本不是这个意思,但是将其作为TCP传输模型也未尝不可。
  • 心(xian)血(de)来(dan)潮(teng)记录一下个人发现,如有错误地方,请大佬指正。

全球都在下GTA5,我却从中参透了TCP协议相关推荐

  1. 随机森林的特征 是放回抽样么_机器学习超详细实践攻略(10):随机森林算法详解及小白都能看懂的调参指南...

    一.什么是随机森林 前面我们已经介绍了决策树的基本原理和使用.但是决策树有一个很大的缺陷:因为决策树会非常细致地划分样本,如果决策树分得太多细致,会导致其在训练集上出现过拟合,而如果决策树粗略地划分样 ...

  2. 超越名利、参透生死?

       我一直对一个当今时代的人能够做到超越名利.参透生死有怀疑,毕竟这个社会太浮躁了,从古至今,真正能做到这点的恐怕就是所谓得道的人了 .    始终在这个现实社会的追名逐利和我内心的要坚持的那点东西 ...

  3. 2w 字 + 40 张图带你参透并发编程

    并发历史 在计算机最早期的时候,没有操作系统,执行程序只需要一种方式,那就是从头到尾依次执行.任何资源都会为这个程序服务,在计算机使用某些资源时,其他资源就会空闲,就会存在 浪费资源 的情况. > ...

  4. tcp协议不具备的功能是_TCP协议的状态深度解析,你知道的和不知道的都在这篇文章(干货)...

    今天和大家说说,TCP协议的状态解析.大家可以看看下图,接下来我们会详细说明. 发起握手阶段 CLOSED:表示初始状态. LISTEN:表示服务器端的某个SOCKET处于监听状态,可以接受连接. S ...

  5. 关于TCP协议的大部分,面试常问的几点都在这理里了

    精选30+云产品,助力企业轻松上云!>>> 点击蓝色"大数据每日哔哔"关注我 加个"星标",第一时间获取大数据架构,实战经验 由于面试中经常会 ...

  6. 全世界好老男人的女人都该去看“边境风云”(剧透慎入)

    全世界好老男人的女人都该去看"边境风云"(剧透慎入) 2012-08-18 13:12:03  来自: 纳兰的豹子 (读万卷书,行万里路.)  边境风云的评论    4  提示: ...

  7. 01网络协议:从TCP协议到RPC协议都经历了哪些?

    无论是TCP/IP四层协议还是OSI七层网络协议,传输层的TCP都是非常重要的一个网络协议,众所周知TCP是建立在IP协议之上的点对点可靠的传输协议,不同于IP和UDP,TCP有三次握手.四次挥手等机 ...

  8. 全球都面临网络安全“人才荒” 院士建议我国高校开“少年班”

    昨日的"网络安全人才培养和创新创业"论坛上,来自美国.以色列.新加坡和中国的产学研各界专家为缓解全球网络安全人才荒支招. 北京电子科技学院副院长.教育部高等学校信息安全专业教学指导 ...

  9. 全球都对HTTPS抛出了橄榄枝,为什么?你又该怎么办?

    2019独角兽企业重金招聘Python工程师标准>>> 互联网发展20多年,大家都习惯了在浏览器地址里输入HTTP格式的网址.但前两年,HTTPS逐渐取代HTTP,成为传输协议界的& ...

最新文章

  1. 设计阶段如何画用例视图(Use-Case View)
  2. linux -- chcp
  3. python nameerror import_Python-ImportError:无法导入名称X
  4. 【学习笔记】8、 字符串的格式化
  5. 寻找数组变化:树形结构,分治模型
  6. 技巧 | 如何批量地将整型变量转换为因子变量
  7. 播放列表php代码,【求助】如何直接在Discuz! 代码 FLASH代码中添加优酷播放列表...
  8. c 语言 循环判断语句,C值循环语句(七)
  9. BZOJ2286 [Sdoi2011]消耗战
  10. java 构造函数 this_Java面向对象2--构造器(Constructor),this关键字
  11. 稻盛和夫:我管理的秘诀就是12条准则
  12. 一个好用的hibernate泛型dao
  13. 王之泰201771010131《面向对象程序设计(java)》第十三周学习总结
  14. 范莎学院计算机专业,范莎学院会不会不容易毕业?
  15. 2638: 黑白染色
  16. firefox玩开心农场
  17. 百度导航坐标转换问题
  18. 关于Java使用POI对Excel2003和2007的导入和导出
  19. Hunter’s Apprentice (猎人的学徒)——【Green 公式( 判断多边形边界曲线顺/逆时针】
  20. 串联谐振耐压试验装置技术参数和特点,如何选择

热门文章

  1. [薪酬]步步为营与老板谈加薪
  2. 一些开启第三方应用用到的包名及类名
  3. 微商花钱买客源靠谱吗?分享我一直在用的引流方法
  4. 触发onerror事件处理异常
  5. 使用Mybatis plus清空表数据
  6. [机缘参悟-78]:深度思考-职场中注意事项与大忌-员工版
  7. 基于JAVA在线影视点播系统计算机毕业设计源码+系统+数据库+lw文档+部署
  8. Mac如何输入换行符
  9. 全世界很难被揭穿的32条谣言,你被骗了多少
  10. 走访一神秘城中村,店铺24小时营业,生意超旺