tcp

作者: _oneWay_ | 来源:发表于2018-07-01 21:52 被阅读0次

发送方

  • 对一个ack应等待多长时间?

接收方

  • 接收到的分组有错误
    A:不回复ack,等待发送方重传

  • 收到重复的分组
    A:使用序列号处理,序列号相同的,则丢弃。

  • 接收速率小于发送速率
    A:流量控制,可分为两种

  • 基于速率的流量控制——设定一个最大速率,发送方不能超过这个速率。

  • 基于窗口大小的流量控制——在回复的ack中告诉发送方改变窗口大小。

中间设备

  • 由于路由器转发能力不足,内存限制等因素,导致无法承受发送方的快速发送速率怎么办
    A:拥塞控制,可分为两种
  • 明确发信:一个协议字段用来告诉发送方(ECN位)
  • 隐性发信:根据其他因素某些因素来判断。

1.窗口机制

  • 分组窗口:作为接收发送方发送的但还没完成确认的分组的集合。其中,分组的最大数量就是窗口大小。

  • 滑动窗口

    • 发送方:用于记录哪些分组可以被释放,哪些分组已经发送,正在等待ack,哪些分组还不能被发送
    • 接收方:哪些分组已经被接收和确认(无误),哪些分组是期望收到的(以及分配了多少内存给他们),哪些分组即使被接收了也会因为内存限制而丢弃
  • 窗口缩放选项:比例系数0表示没有放大(即窗口大小原来的值),最大为14,能够将窗口大小放大214倍,所以TCP窗口最大为65535x214,正好1GB。所以TCP使用一个32位的值来维护真实的窗口大小。

    • 该选项只能出现在SYN报文中,建立连接之后,比例系数与方向绑定。
    • 比例系数(因子)是多少,读窗口大小的时候就左移多少位。

2.超时重传

超时应该要设置为比RTT平均值要大的某个值,若设置太小,则可能会发送很多重传包,占用带宽,若设置太大,使得网络变空闲,从而降低吞吐量。

相关文章

  • TCP那些事儿

    目录: TCP是什么TCP报文结构TCP连接过程TCP状态转移TCP流量控制 —— 滑动窗口TCP拥塞控制TCP可...

  • 计算机网络

    一、tcp/http 1、TCP首部。 IP数据报(IP首部+TCP报文段(TCP首部+TCP数据)) TCP首部...

  • TCP协议三次握手和四次挥手

    TCP协议 TCP/IP协议栈 由上图可知,TCP/IP协议栈包含很多的协议。 二. 什么是TCP TCP是TCP...

  • 15分钟TCP

    TCP协议详解 介绍TCP协议之前,先区分一下TCP协议,和TCP/IP体系结构。TCP协议是TCP/IP协议体系...

  • TCP 与 UDP

    TCP 与 UDP(主要说TCP)TCP/UDP端口号TCP/UDP端口号TCP连接的建立TCP连接的建立发送se...

  • 四 . TCP 编程

    什么是 TCP 编程 TCP 编程是建立在 TCP 协议上的 Socket 编程 什么是 TCP 协议 TCP (...

  • TCP HTTPS专题

    TCP HTTPS专题 TCP协议 TCP/IP协议分层 TCP/IP 协议族里重要的一点就是分层。 TCP/IP...

  • 浅谈 TCP

    这篇文章介绍 TCP 理论,主要分为「TCP 连接,TCP 优化,TCP 重连」三个方面。看《TCP/IP 详解》...

  • 传输层

    ICMP UDP TCP TCP的三次握手 TCP四次挥手 TCP状态机Tcp_status_map.jpg

  • TCP/IP

    引用 一文搞懂TCP与UDP的区别 TCP/UDP协议详解... TCP基础特性* TCP 1、 TCP特性: T...

网友评论

      本文标题:tcp

      本文链接:https://www.haomeiwen.com/subject/ugvhuftx.html