《计算机网络运输层》PPT课件

上传人:san****019 文档编号:22837570 上传时间:2021-06-01 格式:PPT 页数:80 大小:954.60KB
收藏 版权申诉 举报 下载
《计算机网络运输层》PPT课件_第1页
第1页 / 共80页
《计算机网络运输层》PPT课件_第2页
第2页 / 共80页
《计算机网络运输层》PPT课件_第3页
第3页 / 共80页
资源描述:

《《计算机网络运输层》PPT课件》由会员分享,可在线阅读,更多相关《《计算机网络运输层》PPT课件(80页珍藏版)》请在装配图网上搜索。

1、计 算 机 网 络 教 程 ( 第 2 版 )第 8 章 运 输 层 第 8 章 运 输 层 8.1 运 输 层 协 议 概 述 8.1.1 进 程 之 间 的 通 信 8.1.2 运 输 层 中 的 两 个 协 议 8.1.3 运 输 层 的 端 口8.2 用 户 数 据 报 协 议 UDP 8.2.1 UDP 概 述8.2.2 UDP 的 首 部 格 式 第 8章 运 输 层 ( 续 )8.3 传 输 控 制 协 议 TCP 8.3.1 TCP 概 述8.3.2 TCP 报 文 段 的 首 部8.3.3 TCP 的 数 据 编 号 与 确 认8.3.4 TCP 的 流 量 控 制 与 拥

2、塞 控 制8.3.5 TCP 的 重 传 机 制 8.3.6 TCP 的 运 输 连 接 管 理 8.3.7 TCP 的 有 限 状 态 机 8.1 运 输 层 协 议 概 述8.1.1 进 程 之 间 的 通 信 n 从 通 信 和 信 息 处 理 的 角 度 看 , 运 输 层 向 它 上 面的 应 用 层 提 供 通 信 服 务 , 它 属 于 面 向 通 信 部 分的 最 高 层 , 同 时 也 是 用 户 功 能 中 的 最 低 层 。 物 理 层网 络 层运 输 层应 用 层数 据 链 路 层面 向 信 息 处 理面 向 通 信 用 户 功 能网 络 功 能 运 输 层 为 相 互

3、 通 信 的 应 用 进 程 提 供 了逻 辑 通 信 54321 运 输 层 提 供 应 用 进 程 间 的 逻 辑 通 信主 机 A 主 机 B应 用 进 程 应 用 进 程路 由 器 1 路 由 器 2AP 1 LAN2WANAP2 AP3AP4IP 层LAN1 AP1 AP2 AP4端 口 端 口 54321IP 协 议 的 作 用 范 围 运 输 层 协 议 TCP 和 UDP 的 作 用 范 围 AP3 应 用 进 程 之 间 的 通 信n 两 个 主 机 进 行 通 信 实 际 上 就 是 两 个 主 机 中 的 应用 进 程 互 相 通 信 。 n 应 用 进 程 之 间 的

4、通 信 又 称 为 端 到 端 的 通 信 。 n 运 输 层 的 一 个 很 重 要 的 功 能 就 是 复 用 和 分 用 。应 用 层 不 同 进 程 的 报 文 通 过 不 同 的 端 口 向 下 交到 运 输 层 , 再 往 下 就 共 用 网 络 层 提 供 的 服 务 。n “ 运 输 层 提 供 应 用 进 程 间 的 逻 辑 通 信 ” 。 “ 逻辑 通 信 ” 的 意 思 是 : 运 输 层 之 间 的 通 信 好 像 是沿 水 平 方 向 传 送 数 据 。 但 事 实 上 这 两 个 运 输 层之 间 并 没 有 一 条 水 平 方 向 的 物 理 连 接 。 运 输

5、层 协 议 和 网 络 层 协 议的 主 要 区 别 应 用 进 程 应 用 进 程IP 协 议 的 作 用 范 围( 提 供 主 机 之 间 的 逻 辑 通 信 ) TCP 和 UDP 协 议 的 作 用 范 围( 提 供 进 程 之 间 的 逻 辑 通 信 )因 特 网 运 输 层 的 主 要 功 能 n 运 输 层 为 应 用 进 程 之 间 提 供 端 到 端 的 逻 辑 通 信( 但 网 络 层 是 为 主 机 之 间 提 供 逻 辑 通 信 ) 。n 运 输 层 还 要 对 收 到 的 报 文 进 行 差 错 检 测 。n 运 输 层 需 要 有 两 种 不 同 的 运 输 协 议

6、 , 即 面 向 连接 的 TCP 和 无 连 接 的 UDP。 运 输 层 向 上 提 供 可 靠 的 和 不 可 靠的 逻 辑 通 信 信 道 ?应用层运输层 发送进程 接收进程 接收进程数 据 数 据全 双 工 可 靠 信 道 数 据 数 据使 用 TCP 协 议 使 用 UDP 协 议不 可 靠 信 道 发送进程 TCP/IP的 运 输 层 有 两 个 不 同 的 协 议 :(1) 用 户 数 据 报 协 议 UDP (User Datagram Protocol)(2) 传 输 控 制 协 议 TCP (Transmission Control Protocol)8.1.2 运 输

7、层 中 的 两 个 协 议 n 两 个 对 等 运 输 实 体 在 通 信 时 传 送 的 数 据 单 位 叫 作运 输 协 议 数 据 单 元 TPDU (Transport Protocol Data Unit)。n TCP 传 送 的 数 据 单 位 协 议 是 TCP 报 文 段(segment)n UDP 传 送 的 数 据 单 位 协 议 是 UDP 报 文 或 用 户 数据 报 。 TCP 与 UDP TCP/IP 体 系 中 的 运 输 层 协 议 TCPUDP IP应 用 层与 各 种 网 络 接 口运 输 层 TCP 与 UDP n UDP 在 传 送 数 据 之 前 不

8、需 要 先 建 立 连 接 。 对 方的 运 输 层 在 收 到 UDP 报 文 后 , 不 需 要 给 出 任何 确 认 。 虽 然 UDP 不 提 供 可 靠 交 付 , 但 在 某些 情 况 下 UDP 是 一 种 最 有 效 的 工 作 方 式 。n TCP 则 提 供 面 向 连 接 的 服 务 。 TCP 不 提 供 广播 或 多 播 服 务 。 由 于 TCP 要 提 供 可 靠 的 、 面向 连 接 的 运 输 服 务 , 因 此 不 可 避 免 地 增 加 了 许多 的 开 销 。 这 不 仅 使 协 议 数 据 单 元 的 首 部 增 大很 多 , 还 要 占 用 许 多

9、的 处 理 机 资 源 。 还 要 强 调 两 点 n 运 输 层 的 UDP 用 户 数 据 报 与 网 际 层 的 IP数 据 报有 很 大 区 别 。 IP 数 据 报 要 经 过 互 连 网 中 许 多 路由 器 的 存 储 转 发 , 但 UDP 用 户 数 据 报 是 在 运 输层 的 端 到 端 抽 象 的 逻 辑 信 道 中 传 送 的 。n TCP 报 文 段 是 在 运 输 层 抽 象 的 端 到 端 逻 辑 信 道中 传 送 , 这 种 信 道 是 可 靠 的 全 双 工 信 道 。 但 这样 的 信 道 却 不 知 道 究 竟 经 过 了 哪 些 路 由 器 , 而这

10、些 路 由 器 也 根 本 不 知 道 上 面 的 运 输 层 是 否 建立 了 TCP 连 接 。 8.1.3 运 输 层 的 端 口n 端 口 就 是 运 输 层 服 务 访 问 点 TSAP。n 端 口 的 作 用 就 是 让 应 用 层 的 各 种 应 用 进 程 都 能 将其 数 据 通 过 端 口 向 下 交 付 给 运 输 层 , 以 及 让 运 输层 知 道 应 当 将 其 报 文 段 中 的 数 据 向 上 通 过 端 口 交付 给 应 用 层 相 应 的 进 程 。n 从 这 个 意 义 上 讲 , 端 口 是 用 来 标 志 应 用 层 的 进 程 。 端 口 在 进 程

11、 之 间 的 通 信 中 所 起 的 作 用 应用层运输层 网络层 TCP 报 文 段 UDP用 户 数 据 报应 用 进 程TCP 复 用IP 复 用 UDP 复 用 TCP 报 文 段 UDP用 户 数 据 报 应 用 进 程端 口端 口 TCP 分 用 UDP 分 用IP 分 用IP 数 据 报IP 数 据 报发 送 方 接 收 方 端 口 n 端 口 用 一 个 16 位 端 口 号 进 行 标 志 。n 端 口 号 只 具 有 本 地 意 义 , 即 端 口 号 只 是 为了 标 志 本 计 算 机 应 用 层 中 的 各 进 程 。 在 因特 网 中 不 同 计 算 机 的 相 同

12、 端 口 号 是 没 有 联系 的 。 三 类 端 口 (1) 熟 知 端 口 , 其 数 值 一 般 为 01023。 当 一 种 新的 应 用 程 序 出 现 时 , 必 须 为 它 指 派 一 个 熟 知 端口 。(2) 登 记 端 口 , 其 数 值 为 102449151。 这 类 端口 是 ICANN 控 制 的 , 使 用 这 个 范 围 的 端 口 必须 在 ICANN 登 记 , 以 防 止 重 复 。(3) 动 态 端 口 , 其 数 值 为 4915165535。 这 类 端口 是 留 给 客 户 进 程 选 择 作 为 临 时 端 口 。 8.2 用 户 数 据 报 协

13、 议 UDP 8.2.1 UDP 概 述 n UDP 只 在 IP 的 数 据 报 服 务 之 上 增 加 了 很 少 一点 的 功 能 , 即 端 口 的 功 能 和 差 错 检 测 的 功 能 。n 虽 然 UDP 用 户 数 据 报 只 能 提 供 不 可 靠 的 交 付 ,但 UDP 在 某 些 方 面 有 其 特 殊 的 优 点 。 n 发 送 数 据 之 前 不 需 要 建 立 连 接n UDP 的 主 机 不 需 要 维 持 复 杂 的 连 接 状 态 表 。n UDP 用 户 数 据 报 只 有 8 个 字 节 的 首 部 开 销 。n 网 络 出 现 的 拥 塞 不 会 使

14、源 主 机 的 发 送 速 率 降 低 。 这对 某 些 实 时 应 用 是 很 重 要 的 。 UDP 的 特 点n UDP 是 无 连 接 的 , 即 发 送 数 据 之 前 不 需要 建 立 连 接 ( 当 然 发 送 数 据 结 束 时 也 没有 连 接 可 释 放 ) , 因 此 减 少 了 开 销 和 发送 数 据 之 前 的 时 延 。n UDP 使 用 尽 最 大 努 力 交 付 , 即 不 保 证 可靠 交 付 , 同 时 也 不 使 用 拥 塞 控 制 , 因 此主 机 不 需 要 维 持 具 有 许 多 参 数 的 、 复 杂的 连 接 状 态 表 。 UDP 的 特 点

15、 ( 续 )n 由 于 UDP 没 有 拥 塞 控 制 , 因 此 网 络 出 现的 拥 塞 不 会 使 源 主 机 的 发 送 速 率 降 低 。这 对 某 些 实 时 应 用 是 很 重 要 的 。 很 多 的实 时 应 用 ( 如 IP 电 话 、 实 时 视 频 会 议 等 )要 求 源 主 机 以 恒 定 的 速 率 发 送 数 据 , 并且 允 许 在 网 络 发 生 拥 塞 时 丢 失 一 些 数 据 ,但 却 不 允 许 数 据 有 太 大 的 时 延 。 UDP 正好 适 合 这 种 要 求 。 UDP 的 特 点 ( 续 )n UDP 是 面 向 报 文 的 。 这 就 是

16、 说 , UDP 对应 用 程 序 交 下 来 的 报 文 不 再 划 分 为 若 干个 分 组 来 发 送 , 也 不 把 收 到 的 若 干 个 报文 合 并 后 再 交 付 给 应 用 程 序 。n 应 用 程 序 交 给 UDP 一 个 报 文 , UDP 就 发 送这 个 报 文 ; 而 UDP 收 到 一 个 报 文 , 就 把 它交 付 给 应 用 程 序 。 n 应 用 程 序 必 须 选 择 合 适 大 小 的 报 文 。 UDP 的 特 点 ( 续 )n UDP 支 持 一 对 一 、 一 对 多 、 多 对 一 和 多对 多 的 交 互 通 信 。n 用 户 数 据 报

17、只 有 8 个 字 节 的 首 部 开 销 ,比 TCP 的 20 个 字 节 的 首 部 要 短 。 UDP 的 问 题n 虽 然 某 些 实 时 应 用 需 要 使 用 没 有 拥 塞 控制 的 UDP, 但 当 很 多 的 源 主 机 同 时 都 向网 络 发 送 高 速 率 的 实 时 视 频 流 时 , 网 络就 有 可 能 发 生 拥 塞 , 结 果 大 家 都 无 法 正常 接 收 。n 还 有 一 些 使 用 UDP 的 实 时 应 用 需 要 对UDP 的 不 可 靠 的 传 输 进 行 适 当 的 改 进 以减 少 数 据 的 丢 失 。 8.2.2 UDP 用 户 数 据

18、 报 的首 部 格 式 伪 首 部 源 端 口 目 的 端 口 长 度 检 验 和 数 据首 部 UDP长 度源 IP 地 址 目 的 IP 地 址 0 17IP 数 据 报字 节 4 4 1 1 212 2 2 2 2字 节发 送 在 前 数 据首 部UDP 用 户 数 据 报 伪 首 部 源 端 口 目 的 端 口 长 度 检 验 和数 据首 部 UDP长 度源 IP 地 址 目 的 IP 地 址 0 17IP 数 据 报字 节 4 4 1 1 212 2 2 2 2字 节发 送 在 前 数 据首 部UDP 用 户 数 据 报用 户 数 据 报 UDP 有 两 个 字 段 : 数 据 字

19、段 和 首 部字 段 。 首 部 字 段 有 8 个 字 节 , 由 4 个 字 段 组 成 ,每 个 字 段 都 是 两 个 字 节 。 伪 首 部 源 端 口 目 的 端 口 长 度 检 验 和数 据首 部 UDP长 度源 IP 地 址 目 的 IP 地 址 0 17IP 数 据 报字 节 4 4 1 1 212 2 2 2 2字 节发 送 在 前 数 据首 部UDP 用 户 数 据 报在 计 算 检 验 和 时 , 临 时 把 “ 伪 首 部 ” 和 UDP 用 户 数 据报 连 接 在 一 起 。 伪 首 部 仅 仅 是 为 了 计 算 检 验 和。 8.3 传 输 控 制 协 议 T

20、CP 8.3.1 TCP 概 述 端 口 发 送 TCP 报 文 段TCP TCP接 收 缓 存发 送 缓 存 报 文 段 报 文 段 报 文 段 端 口发 送 方 接 收 方向 发 送 缓 存写 入 数 据 块 从 接 收 缓 存读 取 数 据 块应 用 进 程 应 用 进 程 TCP 连 接 的 任 何 一 方都 能 够 发 送 和 接 收 数 据n 通 信 是 全 双 工 方 式 。n 发 送 方 的 应 用 进 程 按 照 自 己 产 生 数 据 的 规 律 ,不 断 地 把 数 据 块 陆 续 写 入 到 TCP 的 发 送 缓 存中 。 TCP 再 从 发 送 缓 存 中 取 出

21、一 定 数 量 的 数 据 ,将 其 组 成 TCP 报 文 段 (segment)逐 个 传 送 给 IP 层 , 然 后 发 送 出 去 。 n 接 收 方 从 IP 层 收 到 TCP 报 文 段 后 , 先 把 它 暂存 在 接 收 缓 存 中 , 然 后 让 接 收 方 的 应 用 进 程 从接 收 缓 存 中 将 数 据 块 逐 个 读 取 。 一 对 一 的 通 信n 由 于 运 输 层 的 通 信 是 面 向 连 接 的 , 因 此TCP 每 一 条 连 接 上 的 通 信 只 能 是 一 对 一的 , 而 不 可 能 是 一 对 多 、 多 对 一 或 多 对多 的 。 运

22、输 层 A 运 输 层 B发 送 报 文 段 1 确 认 报 文 段 1发 送 报 文 段 2 出 错 ! 丢 弃 出 错 的 报 文 段丢 失 !超 时 重 传 报 文 段 2超 时 重 传 报 文 段 2 确 认 报 文 段 2发 送 报 文 段 3 时 间 时 间每 发 送 一 个 报 文 段 都 要 启 动 计 时 器但 图 中 未 画 出 没 有 起 作 用 的 计 时 器 应 当 注 意n A 在 发 送 完 一 个 报 文 段 后 , 必 须 留 有 该报 文 段 的 副 本 , 以 便 在 必 要 时 进 行 重 传 。n 如 果 重 传 时 间 设 定 得 很 长 , 那 么

23、 通 信 的效 率 就 会 很 低 。 但 如 果 重 传 时 间 设 定 得很 短 , 就 浪 费 了 网 络 资 源 , 在 网 络 上 增加 了 不 必 要 的 通 信 量 。n 重 传 时 间 的 设 定 是 相 当 复 杂 。 运 输 层 A 运 输 层 B发 送 报 文 段 1 确 认 报 文 段 1发 送 报 文 段 2超 时 重 传 报 文 段 2 丢 弃 重 复 的 报 文 段确 认 报 文 段 2发 送 报 文 段 3时 间 时 间 每 发 送 一 个 报 文 段 都 要 启 动 计 时 器 。但 图 中 未 画 出 没 有 起 作 用 的 计 时 器 。丢 失 ! 确 认

24、 报 文 段 2 确 认 也 可 能 出 错 或 丢 失n B 所 发 送 的 对 报 文 段 2 的 确 认 丢 失 了 。 A无 法 知 道 是 自 己 发 送 的 报 文 段 出 错 、 丢失 或 者 是 对 方 发 送 的 确 认 丢 失 了 。 因 此要 对 报 文 段 2 超 时 重 传 。n B 正 确 收 到 了 报 文 段 2, 采 取 两 个 行 动 。n 丢 弃 这 个 报 文 段 ( 否 则 就 重 复 了 ) 。n 向 A 发 送 确 认 。 这 个 重 复 的 确 认 不 能 省 略 ,因 为 A 再 次 发 送 报 文 段 2 就 表 示 A 没 有 收到 对 报

25、 文 段 2 的 确 认 。 TCP 可 靠 通 信 的 具 体 实 现 很 复 杂n TCP 的 报 文 段 的 长 度 是 不 确 定 的 。n TCP 能 够 提 供 全 双 工 通 信 , 可 以 在 发 送 自 己 的数 据 报 文 段 的 同 时 , 捎 带 地 把 确 认 信 息 附 上 。n 为 了 提 高 通 信 传 输 效 率 , 发 送 数 据 报 文 段 的 一方 , 可 以 连 续 发 送 多 个 数 据 报 文 段 , 而 不 需 要在 收 到 一 个 确 认 后 才 发 送 下 一 个 报 文 段 。n 要 使 用 特 定 的 算 法 来 估 算 比 较 合 适

26、的 重 传 时 间 。 TCP 的 首 部 格 式n TCP 报 文 段 分 为 首 部 和 数 据 两 部 分 。n TCP 的 全 部 功 能 都 体 现 在 它 首 部 中 各 字段 的 作 用 。n TCP 报 文 段 首 部 的 前 20个 字 节 是 固 定的 , 后 面 有 4N 字 节 是 根 据 需 要 而 增 加的 选 项 (N 必 须 是 整 数 )。 因 此 TCP 首 部的 最 小 长 度 是 20 字 节 。 TCP首 部 20 字 节 的固 定 首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变 )源 端 口 序 号 紧 急 指 针窗 口确 认

27、 号保 留 FIN32 位SYNRSTPSHACKURG位 0 8 16 24 31填 充TCP 数 据 部 分TCP 首 部TCP 报 文 段 IP 数 据 部 分IP 首 部发 送 在 前 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充源 端 口 和 目 的 端 口 字 段 各 占 2 字 节 。 端 口 是 运 输层 与 应 用 层 的 服 务 接 口 。 运 输 层 的 复 用 和 分 用 功 能 都要

28、通 过 端 口 才 能 实 现 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充序 号 字 段 占 4 字 节 。 TCP 连 接 中 传 送 的 数 据 流中 的 每 一 个 字 节 都 编 上 一 个 序 号 。 序 号 字 段 的 值 则 指的 是 本 报 文 段 所 发 送 的 数 据 的 第 一 个 字 节 的 序 号 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选

29、项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充确 认 号 字 段 占 4 字 节 , 是 期 望 收 到 对 方 的 下 一 个报 文 段 的 数 据 的 第 一 个 字 节 的 序 号 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充数 据 偏 移 占 4 位 , 它 指 出 TCP 报 文 段 的 数

30、据 起 始处 距 离 TCP 报 文 段 的 起 始 处 有 多 远 。 “ 数 据 偏 移 ” 的单 位 不 是 字 节 而 是 32 位 字 ( 4 字 节 为 计 算 单 位 ) 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充保 留 字 段 占 6 位 , 保 留 为 今 后 使 用 , 但 目 前应 置 为 0。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长

31、 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充紧 急 位 URG 当 URG 1 时 , 表 明 紧 急 指 针字 段 有 效 。 它 告 诉 系 统 此 报 文 段 中 有 紧 急 数 据 , 应尽 快 传 送 (相 当 于 高 优 先 级 的 数 据 )。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充确 认 位

32、ACK 只 有 当 ACK 1 时 确 认 号 字 段才 有 效 。 当 ACK 0 时 , 确 认 号 无 效 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充推 送 位 PSH (PuSH) 接 收 TCP 收 到 PSH = 1 的报 文 段 , 就 尽 快 地 交 付 给 接 收 应 用 进 程 , 而 不 再 等 到整 个 缓 存 都 填 满 了 后 再 向 上 交 付 。 TCP首 部 20字 节固

33、 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充复 位 位 RST (ReSeT) 当 RST 1 时 , 表 明 TCP 连 接 中 出 现 严 重 差 错 ( 如 由 于 主 机 崩 溃 或 其 他 原 因 ) ,必 须 释 放 连 接 , 然 后 再 重 新 建 立 运 输 连 接 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认

34、号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充同 步 位 SYN 当 SYN = 1 时 , 表 示 这 是 一 个 连接 请 求 或 连 接 接 受 报 文 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充终 止 位 FIN (FINal) 用 来 释 放 连 接 。 当 FIN 1 时 , 表 明 此 报 文 段 的 发 送 方 的 数 据 已 发 送 完 毕 , 并 要求

35、 释 放 运 输 连 接 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充窗 口 字 段 占 2 字 节 。 窗 口 字 段 用 来 控 制 对 方 发 送的 数 据 量 , 单 位 为 字 节 。 TCP 连 接 的 一 端 根 据 设 置 的 缓存 空 间 大 小 确 定 自 己 的 接 收 窗 口 大 小 , 然 后 通 知 对 方 以确 定 对 方 的 发 送 窗 口 的 上 限 。 TCP首 部 20

36、字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充检 验 和 占 2 字 节 。 检 验 和 字 段 检 验 的 范 围 包 括首 部 和 数 据 这 两 部 分 。 在 计 算 检 验 和 时 , 要 在 TCP 报 文 段 的 前 面 加 上 12 字 节 的 伪 首 部 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保

37、留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充紧 急 指 针 字 段 占 16 位 。 紧 急 指 针 指 出 在 本 报文 段 中 的 紧 急 数 据 的 最 后 一 个 字 节 的 序 号 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充选 项 字 段 长 度 可 变 。 TCP 只 规 定 了 一 种 选 项 ,即 最 大 报 文 段 长 度 MSS (Maximum Segm

38、ent Size)。MSS 告 诉 对 方 TCP: “ 我 的 缓 存 所 能 接 收 的 报 文 段的 数 据 字 段 的 最 大 长 度 是 MSS 个 字 节 。 ” MSS 是 TCP 报 文 段 中 的 数 据 字 段 的 最 大 长 度 。数 据 字 段 加 上 TCP 首 部才 等 于 整 个 的 TCP 报 文 段 。 TCP首 部 20字 节固 定首 部目 的 端 口数 据偏 移 检 验 和选 项 ( 长 度 可 变)源 端 口 序 号 紧 急 指 针窗 口确 认 号保 留 FINSYNRSTPSHACKURG位 0 8 16 24 31填 充填 充 字 段 这 是 为 了

39、 使 整 个 首 部 长 度 是 4 字 节 的整 数 倍 。 8.3.3 TCP 的 数 据 编 号 与 确 认 n TCP 协 议 是 面 向 字 节 的 。 TCP 将 所 要 传 送 的 报 文看 成 是 字 节 组 成 的 数 据 流 , 并 使 每 一 个 字 节 对 应 于一 个 序 号 。n 在 连 接 建 立 时 , 双 方 要 商 定 初 始 序 号 。 TCP 每 次发 送 的 报 文 段 的 首 部 中 的 序 号 字 段 数 值 表 示 该 报 文段 中 的 数 据 部 分 的 第 一 个 字 节 的 序 号 。n TCP 的 确 认 是 对 接 收 到 的 数 据

40、的 最 高 序 号 表 示 确认 。 接 收 方 返 回 的 确 认 号 是 已 收 到 的 数 据 的 最 高 序号 加 1。 因 此 确 认 号 表 示 接 收 方 期 望 下 次 收 到 的 数据 中 的 第 一 个 数 据 字 节 的 序 号 。 8.3.4 TCP 的 流 量 控 制 与 拥 塞 控 制1. 滑 动 窗 口 的 概 念n TCP 采 用 大 小 可 变 的 滑 动 窗 口 进 行 流 量 控 制 。 窗 口大 小 的 单 位 是 字 节 。n 在 TCP 报 文 段 首 部 的 窗 口 字 段 写 入 的 数 值 就 是 当 前给 对 方 设 置 的 发 送 窗 口

41、数 值 的 上 限 。n 发 送 窗 口 在 连 接 建 立 时 由 双 方 商 定 。 但 在 通 信 的 过程 中 , 接 收 方 可 根 据 自 己 的 资 源 情 况 , 随 时 动 态 地调 整 对 方 的 发 送 窗 口 上 限 值 (可 增 大 或 减 小 )。 收 到 确 认 即 可 前 移100 200 300 400 500 600 700 800 900101 201 301 401 501 601 701 8011 发 送 窗 口可 发 送 不 可 发 送指 针 n 发 送 方 要 发 送 900 字 节 长 的 数 据 , 划 分 为 9 个 100 字 节 长 的

42、报 文 段 , 而 发 送 窗 口 确 定 为 500 字 节 。n 发 送 方 只 要 收 到 了 对 方 的 确 认 , 发 送 窗 口 就 可前 移 。 n 发 送 TCP 要 维 护 一 个 指 针 。 每 发 送 一 个 报 文段 , 指 针 就 向 前 移 动 一 个 报 文 段 的 距 离 。 收 到 确 认 即 可 前 移100 200 300 400 500 600 700 800 900101 201 301 401 501 601 701 8011 可 发 送 不 可 发 送指 针100 200 300 400 500 600 700 800 900101 201 301

43、 401 501 601 701 8011 发 送 窗 口可 发 送 不 可 发 送指 针 发 送 窗 口 前 移 n 发 送 方 已 发 送 了 400 字 节 的 数 据 , 但 只 收 到 对 前 200 字 节 数 据 的 确 认 , 同 时 窗 口 大 小 不 变 。n 现 在 发 送 方 还 可 发 送 300 字 节 。 已 发 送并 被 确 认 已 发 送 但未 被 确 认 100 200 300 400 500 600 700 800 900101 201 301 401 501 601 701 8011 已 发 送并 被 确 认 已 发 送 但未 被 确 认 可 发 送 不

44、 可 发 送指 针100 200 300 400 500 600 700 800 900101 201 301 401 501 601 701 8011 已 发 送并 被 确 认 可 发 送 不 可发 送指 针发 送 窗 口 前 移 发 送 窗 口 缩 小n 发 送 方 收 到 了 对 方 对 前 400 字 节 数 据 的 确 认 , 但 对方 通 知 发 送 方 必 须 把 窗 口 减 小 到 400 字 节 。n 现 在 发 送 方 最 多 还 可 发 送 400 字 节 的 数 据 。 利 用 可 变 窗 口 大 小 进 行 流 量 控 制双 方 确 定 的 窗 口 值 是 400 s

45、eq = 1, DATA seq = 201, DATAseq = 401, DATAseq = 301, DATAseq = 101, DATAseq = 501, DATAACK = 1, ack = 201, win = 300ACK = 1, ack = 601, win = 0ACK = 1, ack = 501, win = 100主 机 A 主 机 B允 许 A 发 送 序 号 201 500 共 300 字 节 的 数 据A 发 送 了 数 据 (序 号 301400), 还 能 发 送 100 字 节A 超 时 重 发 旧 的 数 据允 许 A 发 送序号 501 至 600

46、 共 100 字 节 的 数 据A 发 送 了 数 据 (序号 501 至 600),发送窗口已用完不 允 许 A 再 发 送 数 据seq = 201, DATA 丢 失 ! A 发 送 了 数 据 (序 号 1100), 还 能 发 送 300 字 节A 发 送 了 数 据 (序 号 101200), 还 能 发 送 200 字 节A 发 送 了 数 据 (序 号 401500) , 发 送 窗 口 已 用 完 8.3.5 TCP 的 重 传 机 制n 重 传 机 制 是 TCP 中 最 重 要 和 最 复 杂 的 问题 之 一 。n TCP 每 发 送 一 个 报 文 段 , 就 对 这

47、 个 报 文段 设 置 一 次 计 时 器 。 只 要 计 时 器 设 置 的重 传 时 间 到 但 还 没 有 收 到 确 认 , 就 要 重传 这 一 报 文 段 。 往 返 时 延 的 方 差 很 大n 由 于 TCP 的 下 层 是 一 个 互 连 网 环 境 , IP 数 据报 所 选 择 的 路 由 变 化 很 大 。 因 而 运 输 层 的 往 返时 延 的 方 差 也 很 大 。 时 间数 据 链 路 层 运 输 层 T1 T2 T3往 返 时 延 的概 率 分 布 往 返 时 延 的 自 适 应 算 法 n 记 录 每 一 个 报 文 段 发 出 的 时 间 , 以 及 收

48、到 相应 的 确 认 报 文 段 的 时 间 。 这 两 个 时 间 之 差 就是 报 文 段 的 往 返 时 延 。 n 将 各 个 报 文 段 的 往 返 时 延 样 本 加 权 平 均 , 就得 出 报 文 段 的 平 均 往 返 时 延 RTT。n 每 测 量 到 一 个 新 的 往 返 时 延 样 本 , 就 按 下 式重 新 计 算 一 次 平 均 往 返 时 延 RTT:平 均 RTT (旧 的 RTT) (1 ) (新 的 RTT样 本 ) (8-2)在 上 式 中 , 0 1。 参 数 的 选 择n 若 很 接 近 于 1, 表 示 新 算 出 的 平 均 往 返 时 延 R

49、TT 和 原 来 的 值 相 比 变 化 不 大 , 而 新 的 往 返 时延 样 本 的 影 响 不 大 (RTT 值 更 新 较 慢 )。n 若 选 择 接 近 于 零 , 则 表 示 加 权 计 算 的 平 均 往返 时 延 RTT 受 新 的 往 返 时 延 样 本 的 影 响 较 大(RTT 值 更 新 较 快 )。n 典 型 的 值 为 7/8。 往 返 时 延 RTT?往 返 时 间 的 测 量 相 当 复 杂 n TCP 报 文 段 1 没 有 收 到 确 认 。 重 传 ( 即 报 文 段 2) 后 , 收 到 了 确 认 报 文 段 ACK。n 如 何 判 定 此 确 认

50、报 文 段 是 对 原 来 的 报 文 段 1 的确 认 , 还 是 对 重 传 的 报 文 段 2 的 确 认 ? 发 送 一 个TCP 报 文 段 超 时 重 传TCP 报 文 段 收 到 ACK 时 间1 2往 返 时 延 RTT? 是 对 哪 一 个 报 文 段的 确 认 ? Karn 算 法 n 在 计 算 平 均 往 返 时 延 RTT 时 , 只 要 报 文段 重 传 了 , 就 不 采 用 其 往 返 时 延 样 本 。n 这 样 得 出 的 平 均 往 返 时 延 RTT 和 重 传 时间 就 较 准 确 。 修 正 的 Karn 算 法 n 报 文 段 每 重 传 一 次

51、, 就 将 重 传 时 间 增 大 一 些 :新 的 重 传 时 间 (旧 的 重 传 时 间 ) (8-4)n 系 数 的 典 型 值 是 2 。n 当 不 再 发 生 报 文 段 的 重 传 时 , 才 根 据 报 文 段 的 往 返时 延 更 新 平 均 往 返 时 延 RTT 和 重 传 时 间 的 数 值 。 n 实 践 证 明 , 这 种 策 略 较 为 合 理 。 8.3.4 TCP 的 运 输 连 接 管 理1. 运 输 连 接 的 三 个 阶 段 n 运 输 连 接 就 有 三 个 阶 段 , 即 : 连 接 建 立 、数 据 传 送 和 连 接 释 放 。 运 输 连 接

52、的 管 理就 是 使 运 输 连 接 的 建 立 和 释 放 都 能 正 常地 进 行 。n 连 接 建 立 过 程 中 要 解 决 以 下 三 个 问 题 : n 要 使 每 一 方 能 够 确 知 对 方 的 存 在 。n 要 允 许 双 方 协 商 一 些 参 数 ( 如 最 大 报 文 段 长度 , 最 大 窗 口 大 小 , 服 务 质 量 等 ) 。n 能 够 对 运 输 实 体 资 源 ( 如 缓 存 大 小 , 连 接 表中 的 项 目 等 ) 进 行 分 配 。 客 户 服 务 器 方 式 n TCP 的 连 接 和 建 立 都 是 采 用 客 户 服 务 器方 式 。n 主

53、 动 发 起 连 接 建 立 的 应 用 进 程 叫 做 客 户(client)。n 被 动 等 待 连 接 建 立 的 应 用 进 程 叫 做 服 务器 (server)。 用 三 次 握 手 建 立 TCP 连 接 SYN = 1, seq = x 主 机 BSYN = 1, ACK = 1, seq = y, ack= x 1ACK = 1, seq = x + 1, ack = y 1被 动 打 开主 动 打 开 B 发 送 确 认A 发 送 确 认主 机 A连 接 请 求 连 接 建 立 状 态 建 立 TCP 连 接n A 的 TCP 向 B 发 出 连 接 请 求 报 文 段 ,

54、 其 首 部 中 的同 步 位 SYN = 1, 并 选 择 序 号 x, 表 明 下 一 个 报 文段 的 第 一 个 数 据 字 节 的 序 号 是 x + 1。 n B 的 TCP 收 到 连 接 请 求 报 文 段 后 , 如 同 意 , 则 发 回确 认 , 在 确 认 报 文 段 中 使 SYN = 1 和 ACK = 1, 其确 认 号 应 为 ack = x 1, 并 选 择 序 号 seq = y。n A 收 到 此 报 文 段 后 , 向 B 给 出 确 认 , 其 ACK = 1,序 号 应 为 seq = x + 1, 确 认 号 应 为 ack = y 1。 n A

55、的 TCP 通 知 上 层 应 用 进 程 , 连 接 已 经 建 立 。n 当 运 行 服 务 器 进 程 的 主 机 B 的 TCP 收 到 主 机 A 的确 认 后 , 也 通 知 其 上 层 应 用 进 程 , 连 接 已 经 建 立 。 三 次 握 手 或 三 次 联 络 (three-way handshake)n 防 止 已 失 效 的 连 接 请 求 报 文 段 又 传 送 到 B, 因而 产 生 错 误 。n A 发 出 连 接 请 求 , 但 因 未 收 到 确 认 而 再 重 传 一次 。 后 来 收 到 了 确 认 , 建 立 了 连 接 。 数 据 传 输完 毕 后

56、释 放 了 连 接 。 A 共 发 送 了 两 个 连 接 请 求报 文 段 , 其 中 的 第 二 个 到 达 了 B。n A 发 出 的 第 一 个 连 接 请 求 报 文 段 以 后 又 传 送 到 B。 B 误 认 为 是 A 又 发 出 一 次 新 的 连 接 请 求 。于 是 就 向 A 发 出 确 认 报 文 段 , 同 意 建 立 连 接 。 n A 不 会 理 睬 B 的 确 认 。 但 B 却 以 为 运 输 连 接就 这 样 建 立 了 , 并 一 直 等 待 A 发 来 数 据 。 B 的 许 多 资 源 就 这 样 白 白 浪 费 了 。 TCP 的 连 接 释 放

57、过 程 FIN =1, seq = xACK = 1, seq = y, ack= x 1ACK =1, seq = x + 1, ack = y 1应 用 进 程 释 放 连 接A 不 再 发 送 报 文 主 机 B主 机 A 通 知 主 机应 用 进 程FIN =1, ACK =1, seq = y, ack = x + 1 应 用 进 程 释 放 连 接B 不 再 发 送 报 文发 送 确 认确 认 至 此 , 整 个 连 接 已 经 全 部 释 放 。半 关 闭 状 态 关 闭 状 态从 A 到 B 的 连 接 就 释 放 了 , 连 接 处 于 半 关 闭 状 态 。相 当 于 A 向 B 说 : “ 我 已 经 没 有 数 据 要 发 送 了 。但 你 如 果 还 发 送 数 据 , 我 仍 接 收 。 ”

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!