计网——26 UDP和TCP及拥塞

UDP的特点

  1. UDP时面向无连接的,不需要建立连接就可以传输数据
  2. UDP尽最大可能交付,不保证可靠交付
  3. UDP是面向报文,对应用层传输的报文添加首部后就直接发送,不合并不拆分
  4. UDP没有拥塞控制
  5. UDP支持一对一,一对多,多对一,多对多
  6. UDP首部八个字节,开销小

可靠的传输原理

  1. 无差错情况:A发送一个分组M1,B收到向A确认,A继续发送分组M2,依次下去….直到全部发送完。
  2. 出现差错:B接受分组出现差错则直接丢弃,A没有收到确认消息,就一直等待,直到超时重传。每次发送一个分组都会暂时保留这个分组的副本,为发生超时重传时使用;分组和确认分组必须编号,确认哪些收到哪些没有收到;超时计时器必须比数据在分组传输的平均往返时间更长一些。
  3. 确认丢失和确认迟到:接受方确认消息丢失了,发送方超时重传该消息,接受方收到后丢弃重复的消息,重传确认消息;接受方确认消息迟到,发送方重传后也收到确认,这个时候迟到的确认消息到来,则接受方收到后丢弃。
    信道利用率:总时间 = 发送时间+往返时间+确认消息发送时间T。信道利用率 = 发送时间/总时间。往返时间一般远大于发送时间。

TCP的特点

  1. TCP时面向连接的,先建立TCP连接才能传输数据,传输完成需要释放以及建立的TCP连接
  2. TCP连接两个端口(套接字),点对点
  3. TCP提供可靠交付
  4. TCP提供全双工通信
  5. TCP是面向字节流,TCP根据对方给出的窗口值和网络拥塞状况来决定一个数据报的长度,如果缓存数据太长则划分短一些再传送,如果数据太短,则等待积累更多后一起传送。

1建立TCP连接

  1. 客户向服务器发送 TCP SYN报文段
    指定初始序号
    没有数据
  2. 服务器收到SYN报文段, 用SYNACK报文段回复
    服务器为该连接分配缓冲区和变量
    指定服务器初始序号
  3. 客户接收到 SYNACK, 用ACK报文段回复,可能包含数据
    在这里插入图片描述

2释放TCP连接

在这里插入图片描述

拥塞控制

原理

  1. 网络拥塞条件
    对资源的需求 > 可用资源
  2. 到拥塞点时,网络吞吐量随输入负载的增大而急剧下降,网络进入拥塞状态

拥塞的危害

  1. 当分组以大于或接近链路容量的速率到达时,分组将承受很大的时延
  2. 因分组丢弃而进行不必要的重传,导致转发不必要的分组拷贝
    底层分组丢弃,高层要求重发
  3. 当分组沿路径而最终被丢弃时,上游路由器用于转发该分组的传输资源也都浪费掉
    R3丢弃分组,使得R1到R2的转发,以及R2到R3的转发毫无价值

思路

  1. 网络需求是动态的,网络设计者无法完全预测网络应用需求的变化
  2. 应用对网络资源的需求是多方面的,任何一种资源的不平衡都可能引起网络局部的结构性拥塞
  3. 闭环控制:基于反馈环路的控制方法,对环境具有更强的适应性,因而实践中广泛采用

TCP拥塞控制机制

  1. 慢启动
  2. 加性增和乘性减
  3. 对基本机制的改进方法
    快速重传
    快速恢复
TCP慢启动
  1. 连接开始时, 接收窗口很大,但拥塞窗口值 = 1 MSS
  2. 获得带宽可能 >> MSS/RTT
  3. 当连接开始,以指数率快速增加速率,直到进入拥塞避免区域或发生丢包
快速重传

当某报文段出现丢失事件时,因为超时周期通常设置得相对较长,这就迫使发送方要等待很长时间才重传丢失的分组

快速恢复

对TCP Tahoe,当发生丢包事件,立即将拥塞窗口减速至1 MSS,然后转入慢启动阶段。对新版TCP Reno,增加:一旦收到3个冗余ACK后,取消慢启动并转入拥塞避免阶段;这又称快速恢复(fast recovery)方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值