作为网络中使用最广泛的传输协议,TCP的拥塞控制机制是学术界和工业界关注的焦点问题之。然而,目前广泛使用的TCP传输协议的拥塞控制算法仍然使用相对固定的窗口调节策略,无法根据动态变化的场景自适应地调整参数,从而造成不可避免的性能下降。近年来,研究者们开始尝试采用机器学习思想或方法进行拥塞控制算法设计,又引发了新一轮的热潮。

MIT的研究者提出的Remy系统几乎是最早的将TCP拥塞控制问题建模成马尔科夫决策过程(强化学习的理论模型)的系统,从而开启了利用学习方法论进行TCP拥塞控制算法设计的大门Remy能够在给定目标网络假设和流量模型的条件下,通过与网络仿真器不断交互自动学习生成针对相应环境的拥塞控制算法。这个离线学习过程的最终结果是生成一张映射表格(策略),描述在不同网络状态下应该如何变化拥塞窗口(cwnd)。之后作者又进一步对Remy的学习能力进行了更充分的实验评估。近期,斯坦福大学的学者开始尝试采用模仿学习(强化学习分支)的方法进行TCP拥塞控制研究(Indigo算法),并采用长短期记忆(Long Short-Term Memory,LSTM)神经网络结构进行序列特征提取。

离线学习方法虽然能在特定环境下达到令人满意的效果,但将不可避免地引入对网络环境和流量特征的先验假设,同时模型训练所依赖的仿真器无法完全模拟实际系统行为,从而可能影响到模型的泛化能力。UIUC的学者基于在线学习思想,在2015年提出一种面向性能的拥塞控制算法PCC,该算法尝试采用试错机制对TCP的发送速率进行步进式决策。2018年,他们进一步提出了PCC的升级版Vivace,其利用梯度进行速率控制,从而实现在稳定性和灵敏度上的平衡。然而,完全的在线学习无法很好地利用历史数据中可能存在的特征和模式,可能会导致在已知环境下的性能下降。

tcp拥塞控制_网络TCP的拥塞控制算法简介相关推荐

  1. tcp拥塞控制_面试必备TCP(四):拥塞控制

    拥塞控制: 发送端主动控制cwnd,有慢启动(从cwnd初始为1开始启动,指数启动),拥塞避免(到达ssthresh后,为了避免拥塞开始尝试线性增长),快重传(接收方每收到一个报文段都要回复一个当前最 ...

  2. c++ tcp 封装_关于TCP三次握手和四次挥手问题,求你别再问了问了...

    少点代码,多点头发 三次握手建立链接,四次挥手断开链接.这个问题算非常经典的问题,也是面试官非常喜欢问的问题. 不夸张的说,龙叔在校招面试的时候每一家公司都问到过关于三次握手和四次挥手相关的问题,相信 ...

  3. 互联网协议 — TCP — 拥塞控制(网络质量保障)

    目录 文章目录 目录 拥塞控制 慢启动算法 拥塞避免算法 拥塞发生算法 发生超时重传的拥塞发生算法 发生快速重传的拥塞发生算法 快速恢复算法 BBR 算法 粘包与拆包 拥塞控制 前面的流量控制是避免「 ...

  4. 传输层 TCP 拥塞控制(2):拥塞避免

    之前介绍的慢启动算法是以指数级别增加拥塞控制 拥塞避免 • 慢启动阈值 ssthresh(slow start threshold):             • 达到 ssthresh 后,以线性方 ...

  5. python tcp实例_实现tcp的自动重连实例教程

    下面小编就为大家带来一篇golang之tcp自动重连实现方法.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 操作系统: CentOS 6.9_x64 go语言版本: 1 ...

  6. python 监听tcp端口_创建TCP监听_创建TCP监听_功能示例_Python SDK示例_SDK 参考_开发指南_负载均衡 - 阿里云...

    # encoding=utf-8 import json import sys # 调用AcsClient参数进行身份验证 from aliyunsdkcore.client import AcsCl ...

  7. java 断开tcp连接_处理TCP客户端断开连接

    我有这个简单的服务器,接受客户端的TCP套接字连接 . 尝试连接的每个客户端都使用新的Socket获取自己的 TCPConnectionHandler 实例 . 我不明白我该如何处理客户端断开连接 . ...

  8. 【计算机网络】传输层 : TCP 拥塞控制 ( 慢开始 | 拥塞避免 | 快重传 | 快恢复 )

    文章目录 一.TCP 拥塞控制 二.TCP 拥塞控制算法 三.慢开始 和 拥塞避免 算法 四.快重传 和 快回复 算法 一.TCP 拥塞控制 TCP 拥塞控制 : ① 拥塞出现表现 : 资源需求总和 ...

  9. UDP(首部)和TCP(首部、三次握手、四次挥手、可靠传输、滑动窗口、流量控制、拥塞控制(慢开始、拥塞避免、快重传、快恢复))

    1.UDP 用户数据报协议 UDP(User Datagram Protocol): 是无连接的,尽最大可能交付,没有拥塞控制,面向报文(对于应用程序传下来的报文不合并也不拆分,只是添加 UDP 首部 ...

最新文章

  1. Erlang之父给程序员的两点忠告 | 缅怀
  2. 考前自学系列·计算机组成原理·补码定点加减运算和溢出判断,浮点数的加减运算,原码的乘法
  3. 用python计算贷款_Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据示例...
  4. html文件怎么改为php,请问你们怎么将html的文件的内容改变为php
  5. 大牛书单 | 读懂5G,改变社会
  6. git 裁切_Vue + ccropper.js裁切图片(vue-cropper)
  7. Android开发之Retrofit常见错误@FieldMap parameters can only be used with form encoding. (parameter #1)
  8. 实例63:python
  9. 【HUAWEI Mate30】抽奖啦!华为IoT新福利上线!
  10. java xmlutil_XmlUtil工具类(toxml()和toBean())
  11. [过年菜谱之]千张春笋蒸酱鸭
  12. 考研总分多少能去辽师_考研英语作文平均分出炉,你拖后腿了吗?
  13. 搭建微信小程序HTTPS服务器
  14. pads2007版本pcb导出的dxf在cad中打不开,提示“DXF 输入无效或不完整 -- 图形被放弃”
  15. hp-ux系统备份与恢复常用命令
  16. Go语言入门到实战——14.Go语言的协程机制以及并发机制
  17. 双极性(相)四线步进电机TC1508S(双通道直流马达驱动器)
  18. jenkins学习4-进docker容器安装python3环境
  19. antd 给input设置值_AntD Input onChange 中文输入法
  20. html中文本属性的设置,css 文本属性direction的功能详解说明

热门文章

  1. ASP.NET Core + Angular 2 Template for Visual Studio
  2. mac safari无法连接服务器_宇航员乘坐SpaceX飞船返航中iPad上Safari出现“无法连接到网络”错误...
  3. 【ArcGIS微课1000例】0001:添加XY数据(Add XY data)生成shp
  4. 【Microstation】第一章:Microstation三维模型构建概述
  5. C和指针之函数之递归实现厄密多项式
  6. 《看聊天记录都学不会C语言?太菜了吧》(15)你学了一节课的函数我5分钟搞定了,还很熟
  7. import 别名_Python基础找茬系列09--import和from-import的引用区别
  8. python重定向_在Python中使用urlopen()防止“隐藏”重定向
  9. 数据结构关键路径_数据结构与算法之关键路径_一点课堂(多岸学院)
  10. android 网卡监听,Android实时监听网络的变化