计算机网络第5章 运输层要点
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2020/9/30
7
5.2 用户数据报协议UDP
一个最简单的运输层协议必须提供
多路复用/多路分解服务 差错检查
实际上这就是UDP所提供的功能(RFC 768)
2020/9/30
8
5.2 用户数据报协议UDP
UDP处理数据的流程
发送方
从应用进程得到数据 附加上为多路复用/多路分解所需的源和目的端口号及差错检测信息,形成报文段
运输层协议的工作内容
发送方:把应用数据划分成 报文段(segments),交给网络层 接收方:把报文段重组成应用数据,交付给应用层
2020/9/30
3
运输层为相互通信的应用进程提供了 wk.baidu.com辑通信
5AP1 AP2 4 3 2 1
应用进程
应用进程
端口 运输层提供应用进程间的逻辑通信 端口
IP 层
AP3 AP45 4 3 2 1
2
伪首部 源端口 目的端口 长 度
2 检验和
UDP 用户数据报
发送在前 首部
首部
数据
数据 IP 数据报
5.2 用户数据报协议UDP
UDP的检查和
目标
检测收到的报文段的“差错” (例如, 出现突变的比特)
发送方
把报文段看作是16比特字的序列 检查和:对报文段的所有16比特字的和进行1的补运算 发送方将计算校验和的结果写入UDP校验和字段中
计算机网络 第5章 运输层
内容概览
运输层协议概述 用户数据报协议UDP 传输控制协议TCP概述 可靠传输的工作原理 TCP报文段的首部格式 TCP可靠传输的实现 TCP的流量控制 TCP的拥塞控制 TCP的运输连接管理
2020/9/30
2
5.1 运输层协议概述
运输层的功能
为不同主机上运行的应用进程之间提供逻辑通信(logical communication)
字节
12
2
2
2
伪首部 源端口 目的端口 长 度
2 检验和
UDP 用户数据报 首 部
发送在前 首部
数据
数据 IP 数据报
在计算检验和时,临时把“伪首部”和 UDP 用户数据 报连接在一起。伪首部仅仅是为了计算检验和。
字节
4 源 IP 地址
4 目的 IP 地址
11 2 0 17 UDP长度
字节
12
2
2
TCP 则提供面向连接的服务。 TCP 不提供广播或多播服务。由 于 TCP 要提供可靠的、面向连接 的运输服务,因此不可避免地增 加了许多的开销。这不仅使协议 数据单元的首部增大很多,还要 占用许多的处理机资源
2020/9/30
6
5.1 运输层协议概述
端口
端口的作用就是让应用层的各种应用进程都能将其数据通过端口向下交付给 运输层,以及让运输层知道应当将其报文段中的数据向上通过端口交付给应 用层相应的进程(或者线程)
1087
从这个意义上讲,端口是用来标志应用层的进程(或者线程)
端口用一个 16 bit 端口号进行标志
端口分类
熟知端口——数值一般为 0~1023。
登记端口号——数值为1024~49151,为没有熟知端口号的应用程序使用的。 使用这个范围的端口号必须在 IANA 登记,以防止重复。
客户端口号或短暂端口号——数值为49152~65535,留给客户进程选择暂时使 用。当服务器进程收到客户进程的报文时,就知道了客户进程所使用的动态 端口号。通信结束后,这个端口号可供其他客户进程以后使用。
主机 A
AP1 AP2
路由器 1
路由器 2
LAN1
WAN
LAN2
IP 协议的作用范围 运输层协议 TCP 和 UDP 的作用范围
主机 B
AP3 AP4
5.1 运输层协议概述
运输层协议和网络层协议的区别
2020/9/30
5
5.1 运输层协议概述
两种不同的运输层协议
TCP 协议
逻辑通信信道相当于一条全双工 的可靠信道
面向报文的UDP
发送方 UDP 对应用程序交下来的报文,在添加首部后就向下交付 IP 层。 UDP 对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的 边界。
应用层交给 UDP 多长的报文,UDP 就照样发送,即一次发送一个报文。
接收方 UDP 对 IP 层交上来的 UDP 用户数据报,在去除首部后就原封不动地 交付上层的应用进程,一次交付一个完整的报文。
应用程序必须选择合适大小的报文。
2020/9/30
10
5.2 用户数据报协议UDP
UDP的首部格式
2020/9/30
11
用户数据报 UDP 有两个字段:数据字段和首部 字段。首部字段有 8 个字节,由 4 个字段组成, 每个字段都是两个字节。
字节
4 源 IP 地址
4 目的 IP 地址
11 2 0 17 UDP长度
(数据报) 递交给网络层,尽力而为的交付给接收主机
接收方
从网络层接收报文段(数据报) 根据目的端口号,将数据交付给相应的应用进程
UDP通信事先无需握手,是无连接的
2020/9/30
9
5.2 用户数据报协议UDP
UDP的优势
无需建立连接——建立连接会增加时延 简单——发送方和接收方无需维护连接状态 段首部开销小——TCP:20Byte vs UDP:8Byte 无拥塞控制——UDP 可按需要随时发送
协议数据单元称为 TCP 报文段
UDP 协议
逻辑通信信道是一条不可靠信道 协议数据单元称为 UDP 报文或用
户数据报
TCP vs UDP
UDP 在传送数据之前不需要先建 立连接。对方的运输层在收到 UDP 报文后,不需要给出任何确 认。虽然 UDP 不提供可靠交付, 但在某些情况下 UDP 是一种最 有效的工作方式。
回卷
和 检查和
11011101110111011
11011101110111100 10100010001000011
注意:最高有效位的进位要回卷加到结果当中
2020/9/30
15
计算 UDP 检验和的例子
12 字节 伪首部
8 字节 UDP 首部
7 字节 数据
153.19.8.104
171.3.14.11 全 0 17 15
接收方
计算接收到的报文段的校验和 检查计算结果是否与收到报文段的校验和字段中的值相同
不同 — 检测到错误 相同 — 没有检测到错误(但仍可能存在错误)
2020/9/30
14
5.2 用户数据报协议UDP
例子: 将两个16比特字相加
11110011001100110 11101010101010101