计算机网络基础--传输层

在这里插入图片描述

网络层:提供主机之间的逻辑通信机制
传输层:提供应用进程之间的逻辑通信机制

Internet 传输层协议
可靠、按序的交付服务(TCP)
 拥塞控制
 流量控制
 连接建立

不可靠的交付服务(UDP)
 基于“尽力而为(Best-effort)”的网络层,没有做(可靠性方面的)扩展

两种服务均不保证
 延迟
 带宽

多路复用/分用

在这里插入图片描述

多路分用原理

主机接收到IP数据报(datagram)
 每个数据报携带源IP地址、目的IP地址
 每个数据报携带一个传输层的段(Segment)
 每个段携带源端口号和目的端口号
 主机收到Segment之后,传输层协议提取IP地址和端口号信息,将Segment导
向相应的Socket(TCP做更多处理)

在这里插入图片描述
在这里插入图片描述

UDP

UDP提供的功能
 复用/分用
 简单的错误校验
在这里插入图片描述

“Best effort”服务,UDP段可能
 丢失
 非按序到达

无连接
 UDP发送方和接收方之间不需要握手
 每个UDP段的处理独立于其他段

UDP为什么存在?
 无需建立连接 ( 减少延迟)
 实现简单 : 无需维护连接状态
 头部开销少
 没有拥塞控制: 应用可更好地控制发送时间和速率

常用于流媒体应用(容忍丢失、速率敏感),还用于DNS、SNMP。

在UDP上实现可靠数据传输?
 在应用层增加可靠性机制
 应用特定的错误恢复机制

UDP 校验和(checksum)

发送方
 将段的内容视为16-bit 整数
 校验和计算:计算所有整数的和,再与进位相加,再按位求反,得到校验和

接收方
 计算所收到段的校验和
 将其与校验和字段进行对比
• 不相等 : 检测出错误
• 相等 : 没有检测出错误 ( 但可能有错误 )
在这里插入图片描述

可靠数据传输原理

什么是可靠?不错、不丢、不乱。可靠数据传输(RDT)
在这里插入图片描述
下面将渐进地设计可靠数据传输层协议,从简到繁不断提出更完善的版本!

Rdt 1.0(可靠信道上的可靠数据传输)

在这里插入图片描述

Rdt 2.0(产生位错误的信道)

在这里插入图片描述

Rdt 2.1(应对ACK/NAK被破坏)

如果ACK/NAK坏掉,发送方就识别不了了,但也不能简单地重传,否则可能产生重复分组。如何解决重复分组问题 ?序列号(Sequence number),发送方给每个分组分配序列号0或1,交替发送0号和1号分组。
在这里插入图片描述
在这里插入图片描述

Rdt 2.2(相比Rdt 2.1去掉NAK)

给发送方发ACK的时候带上分组序号0或1。
在这里插入图片描述

Rdt 3.0(信道既可能发生错误 ,也可能丢失分组)

“校验和 + 序列号 + ACK + 重传”够用吗?
发送方等待“合理”时间(需要定时器),如果没收到ACK,重传。如果分组或ACK只是延迟而不是丢了,重传会产生重复,序列号机制能够处理,接收方需在ACK中显式告知所确认的分组。
在这里插入图片描述
Rdt 3.0能够正确工作,但性能很差。以上各个版本的设计都是发一个等一个,可以使用流水线滑动窗口机制改进(滑动窗口协议Go-Back-N 、Selective Repeat )。

TCP

点对点(一对一, 一个发送方,一个接收方)
可靠的、按序的字节流
流水线机制(TCP拥塞控制和流量控制机制,设置窗口尺寸)
发送方/接收方缓存
在这里插入图片描述
全双工(full-duplex)(同一连接中能够传输双向数据流)
面向连接
通信双方在发送数据之前必须建立连接。
连接状态只在连接的两端中维护,在沿途节点中并不维护状态。
TCP连接包括:两台主机上的缓存、连接状态变量、socket等
流量控制机制(缓冲区大小限制)
TCP使用单一重传定时器,触发重传的事件(超时、收到重复ACK)
拥塞控制(使网络不那么拥塞,具有公平性)
在这里插入图片描述
在这里插入图片描述

TCP连接的建立和关闭

在这里插入图片描述
在这里插入图片描述

参考资料

[1] 中国大学MOOC《计算机网络》 李全龙 聂兰顺

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值