zoukankan      html  css  js  c++  java
  • 计算机网络-传输层2

    TCP 概述

    TCP 段结构

    序列号和ACK

    TCP可靠数据传输

    TCP在IP层提供的不可靠服务基础上实现可靠数据传输服务,流水线机制,累积确认,TCP使用单一重传定时器

    触发重传的事件:超时,收到重复ACK

    渐进式:暂不考虑重复ACK,暂不考虑流量控制,暂不考虑拥塞控制

    TCP RTT 和超时

    TCP发送方事件

    • 从应用层收到数据
      • 创建Segment
      • 序列号是Segment第一个字节的编号
      • 开启计时器
      • 设置超时时间:TimeOutInterval
    • 超时
      • 重传引起超时的Segment
      • 重启定时器
    • 收到ACK
      • 如果确认此前未确认的Segment
        • 更新SendBase
        • 如果窗口中还有未被确认的分组,重新启动定时器

    看一段伪代码:

    TCP 重传示例



    接收方

    快速重传机制

    TCP的实现中,如果发生超时,超时时间间隔将重新设置,即将超时时间间隔加倍,导致其很大,重发丢失的分组之前要等待很长时间

    • 通过重复ACK检测分组丢失
      • Sender会背靠背地发送多个分组
      • 如果某个分组丢失,可能会引发多个重复的ACK
    • 如果sender收到对同一数据的3个ACK,则假定该数据之后的段已经丢失
      • 快速重传:在定时器超时之前即
        进行重传

    快速重传算法

    TCP 流量控制


    TCP 连接管理

    三次握手

    TCP 生命周期

    拥塞控制原理

    拥塞(Congestion)

    非正式定义:“太多发送主机发送了太多数据或者发送速度太快,以至于网络无法处理”

    • 表现:
      • 分组丢失(路由器缓存溢出)
      • 分组延迟过大(在路由器缓存中排队)

    拥塞的成因和代价 : 场景1

    拥塞的成因和代价 : 场景2


    拥塞的成因和代价 : 场景3


    拥塞控制的方法

    • 端到端拥塞控制:

      • 网络层不需要显式的提供支持
      • 端系统通过观察loss,delay等
      • 络行为判断是否发生拥塞
      • TCP采取这种方法
    • 网络辅助的拥塞控制:

      • 路由器向发送方显式地反馈网络拥塞信息
      • 简单的拥塞指示(1bit):SNA,DECbit, TCP/IP ECN, ATM)
      • 指示发送方应该采取何种速率

    ATM ABR 拥塞控制


    TCP 拥塞控制

    TCP拥塞控制的基本原理

    加性增— 乘性减: AIMD

    TCP 慢启动: SS


    Threshold变量

    Loss 事件的处理

    TCP 拥塞控制: 总结

    TCP拥塞控制

    TCP拥塞控制算法

    TCP 性能分析

    TCP throughput: 吞吐率

    • 给定拥塞窗口大小和RTT ,TCP 的平均吞吐率是多少 ?
      • 忽略掉Slow start
    • 假定发生超时时CongWin的大小为W,吞吐率是W/RTT
    • 超时后,CongWin=W/2,吞吐率是W/2RTT
    • 平均吞吐率为:0.75W/RTT

    未来的TCP


    TCP的公平性

    具有公平性


    不具公平性

    小结

    • 传输层服务的基本原理

      • 复用/解复用
      • 可靠数据传输
      • 流量控制
      • 拥塞控制
    • Internet的传输层

      • UDP
      • TCP
  • 相关阅读:
    文摘
    Maximal Square leetcode
    Majority Element II
    Merge k Sorted Lists leetcode
    学习方法-暗时间
    4sum leetcode
    valid parentheses
    两道考研算法设计题- 2010 2013
    regular expression matching DP
    valid sudoku leetcode
  • 原文地址:https://www.cnblogs.com/ygjzs/p/12554069.html
Copyright © 2011-2022 走看看