09 作业解析-运输层

合集下载

运输层

运输层
TCP 传送的数据单位协议是 TCP 报文段 (segment)


UDP 传送的数据单位协议是 UDP 报文或用户数 据报。
TCP/IP 体系中的运输层协议
应用层
运输层
UDP
IP
TCP
与各种网络接口
TCP 与 UDP

UDP 在传送数据之前不需要先建立连接。对 方的运输层在收到 UDP 报文后,不需要给出 任何确认。虽然 UDP 不提供可靠交付,但在 某些情况下 UDP 是一种最有效的工作方式。 TCP 则提供面向连接的服务。TCP 不提供广 播或多播服务。由于 TCP 要提供可靠的、面 向连接的运输服务,因此不可避免地增加了许 多的开销。这不仅使协议数据单元的首部增大 很多,还要占用许多的处理机资源。
UDP 是面向报文的
应用层报文 应用层
UDP 首部
UDP 用户数据报的数据部分
运输层
IP 首部
IP 数据报的数据部分
IP 层
5.2.2 UDP 的首部格式
字节 4 源 IP 地址 字节 12 伪首部 4 目的 IP 地址 2 源端口 2 目的端口 1 0 1 2 17 UDP长度 2 检验和
2 长 度
TCP 面向流的概念
发送方

接收方
H 表示 TCP 报文段的首部 x 表示序号为 x 的数据字节 从接收缓存 读取字节 加上 TCP 首部 构成 TCP 报文段 TCP 5 4
应用进程

应用进程
21 字节流 20 把字节写入 19 发送缓存
TCP 1817161514
0 字节流 1 2 3
131211 H
UDP 用户数据报 发送在前 首 部
首 部

运输层

运输层
发送方维护两个窗口:通知窗口和拥塞窗
口,按两个窗口的最小值发送; 拥塞窗口依照慢启动(slow start)算法 和拥塞避免(congestion avoidance)算 法变化。

慢启动(slow start)算法 连接建立时拥塞窗口(congwin)初始值为该连接 允许的最大段长,阈值(threshold)为64K; 发出一个最大段长的TCP段,若正确确认,拥塞窗 口变为两个最大段长; 发出( 拥塞窗口/最大段长)1个最大长度的TCP 段,若都得到确认,则拥塞窗口加倍; 重复上一步,直至发生丢包超时事件,或拥塞窗 口大于阈值。
34
8.4.2 TCP 的数据编号与确认
TCP报文是一种字节流,每一个字节对应一
个序号,建立连接时双方双定初始序号。 TCP 确认是对接收到的数据的最高序号表 示确认。 报文发送和接收过程(p241图81-4)
35
36
报文发送的控制机制:
达到MSS时,组装TCP报文段,并发送。
发送端PSH置1,推送操作,立即发送。
28
29
源端口和目的端口:各16位;
插口对(s
o c k e t p a i r)(包含客户I P地 址、客户端口号、服务器I P地址和服务器 端口号的四元组)可唯一确定互联网络中每 个T C P连接的双方。
序号:标识从T C
P发端向T C P收端发送的 数据字节流,它表示在这个报文段中的的第 一个数据字节。 据的第一个字节的序号。应当是上次已成功 收到数据字节序号加1。
52
三次握手建立连接(p247 图8-19)
客户方执行connect原语,产生一个SYN为1、ACK为 0、SEQ=X的TCP段,表示连接请求;(首次) 服务器方的传输实体接收到这个TCP段后,首先检 查是否有服务进程在所请求的端口上监听,若没 有,回答RST置位的TCP段; 若有服务进程在所请求的端口上监听,该服务进 程可以决定是否接受该请求。在接受后,发出一 个SYN置1和ACK置1的TCP段表示连接确认,并请求 与对方的连接;(第二次) 发起方收到确认后,发出一个SYN置0和ACK置1的 TCP段表示给对方的连接确认;(第三次)

《计算机网络》-运输层整理版

《计算机网络》-运输层整理版

运输层1、应用进程之间的通信又称为端到端的通信。

2、运输层为应用进程之间提供端到端的逻辑通信(但网络层是为主机之间提供逻辑通信)。

3、运输层还要对收到的报文进行差错检测。

4、运输层需要有两种不同的运输协议,即面向连接的TCP和无连接的UDP。

5、TCP/IP 的运输层有两个不同的协议:(1) 用户数据报协议UDP (User Datagram Protocol)(2) 传输控制协议TCP (Transmission Control Protocol)6、UDP 在传送数据之前不需要先建立连接。

对方的运输层在收到UDP 报文后,不需要给出任何确认。

7、TCP 则提供面向连接的服务。

TCP不提供广播或多播服务。

8、运输层使用协议端口号(protocol port number),或通常简称为端口(port)。

9、TCP 最主要的特点:(1)TCP 是面向连接的运输层协议。

(2)每一条TCP 连接只能有两个端点(endpoint),每一条TCP 连接只能是点对点的(一对一)。

(3)TCP 提供可靠交付的服务。

(4)TCP 提供全双工通信。

(5)面向字节流。

10、软件端口是应用层的各种协议进程与运输实体进行层间交互的一种地址11、UDP 没有拥塞控制,很适合多媒体通信的要求。

12、TCP 连接的端点不是主机,不是主机的IP地址,不是应用进程,也不是运输层的协议端口。

TCP 连接的端点叫做套接字(socket)或插口。

端口号拼接到(contatenated with) IP地址即构成了套接字。

13、14、在发送完一个分组后,必须暂时保留已发送的分组的副本。

分组和确认分组都必须进行编号。

超时计时器的重传时间应当比数据在分组传输的平均往返时间更长一些。

15、流量控制(flow control)就是让发送方的发送速率不要太快,既要让接收方来得及接收,也不要使网络发生拥塞。

16、在某段时间,若对网络中某资源的需求超过了该资源所能提供的可用部分,网络的性能就要变坏——产生拥塞(congestion)。

运输层——精选推荐

运输层——精选推荐

运输层运输层是整个⽹络体系结构中的关键层次之⼀。

⼀定要弄清以下⼀些重要概念:(1)运输层为相互通信的应⽤进程提供逻辑通信。

(2)端⼝和套接字的意义。

(3)⽆连接的UDP的特点。

(4)⾯向连接的TCP的特点。

(5)在不可靠的⽹络上实现可靠传输的⼯作原理,停⽌等待协议和ARQ协议。

(6)TCP的滑动窗⼝、流量控制、拥塞控制和连接管理。

⼀、运输层概述1.进程之间的通信运输层向它上⾯的应⽤层提供通信服务,它属于⾯向通信部分的最⾼层,同时也是⽤户功能中的最低层。

我们知道,IP协议能够把源主机A 发送出的分组按照⾸部中的⽬的地址送交到⽬的主机B,那么,为什么还需要运输层呢?这是因为,真正进⾏通信的实体是在主机中的进程,是这个主机中的⼀个进程和另⼀个主机中的⼀个进程在交换数据(即通信)。

IP协议虽然能把分组送到⽬的主机,但是这个分组还停留在主机的⽹络层⽽没有交付主机中的应⽤进程。

⽹络层是为主机之间提供逻辑通信,⽽运输层为应⽤进程之间提供端到端的逻辑通信。

运输层有⼀个很重要的功能⼀⼀复⽤和分⽤。

复⽤是指应⽤层所有的应⽤进程都可以通过运输层再传送到IP层(⽹络层)。

分⽤是指运输层从IP层收到数据后必须交付指明的应⽤进程。

2.运输层的两个主要协议⾯向连接的TCP和⽆连接的UDP。

当运输层采⽤TCP协议时,尽管下⾯的⽹络是不可靠的(只提供尽最⼤努⼒服务),但这种逻辑通信信道就相当于⼀条全双⼯的可靠信道。

但当运输层采⽤⽆连接的 UDP协议时,这种逻辑通信信道仍然是⼀条不可靠信道。

UDP在传送数据之前不需要先建⽴连接。

远地主机的运输层在收到UDP报⽂后,不需要给出任何确认。

虽然UDP不提供可靠交付,但在某些情况下UDP却是⼀种最有效的⼯作⽅式。

TCP则提供⾯向连接的服务。

在传送数据之前必须先建⽴连接,数据传送结束后要释放连接。

3.运输层的端⼝应⽤层的进程是很多的,需要将它们区分开来,为每个进程赋予⼀个⾮常明确的标志⾄关重要。

运输层

运输层
当运输层采用面向连接的 TCP 协议时,尽管 下面的网络是不可靠的(只提供尽最大努力服 务),但这种逻辑通信信道就相当于一条全双 工的可靠信道。
当运输层采用无连接的 UDP 协议时,这种逻 辑通信信道是一条不可靠信道。
5.1.2 运输层的两个主要协议
TCP/IP 的运输层有两个不同的协议: (1) 用户数据报协议 UDP
TCP/IP体系结构
链路层(对象:局域网)
实现了邻居间通信 传数据帧 不是可靠传输
1
2
A 1B
C 3D
E
2 3
D只接受
校验正确的数据包
网络层(对象Internet,IP协议)
(1)网 络层实 现了计 算机跨 网传输 (2)尽 力投递
主机
路由器
H1

1 网络
网络 1
网络
1
网络
网络
主机 H2
传输层功能二
(User Datagram Protocol) (2) 传输控制协议 TCP
(Transmission Control Protocol)
TCP 与 UDP
两个对等运输实体在通信时传送的数据单位叫作 运输协议数据单元 TPDU (Transport Protocol Data Unit)。
TCP 传送的数据单位协议是 TCP 报文段 (segment)
“运输层提供应用进程间的逻辑通信”。“逻 辑通信”的意思是:运输层之间的通信好像是 沿水平方向传送数据。但事实上这两个运输层 之间并没有一条水平方向的物理连接。
运输层协议和网络层协议 的主要区别
应用进程

应用进程

因特网
IP 协议的作用范围 (提供主机之间的逻辑通信)

运输层知识总结

运输层知识总结
1. 运输层处于面向通信部分的最高层,用户功能中的最底层,运输层向上面的应用层提供 通信服务。只有主机的协议栈才有运输层,而网络层中的核心部分路由器在转发分组时 都只用到下面三层。 运输层为应用进程提供端到端的逻辑通信, 网络层为主机提供逻辑通信(面向主机, 承担 路由功能,即主机寻址和有效的分组交换)。 2. 分用和复用、端口 两个主机通信,其实就是两个主机的进程通信,复用是从应用层到运输层(应用层 不同的进程通过运输层变为同一的) , 分用是从运输层到应用层(运输层相同的到应用层 分开给不同进程)。端口(协议端口号)是应用层不同进程的标识。 为什么不用进程标识符:不同系统,进程标识符格式不同。 协议栈层间的抽象的协议端口是软件端口,和路由器与交换机上的端口不同 硬件端口是不同设备进行交互的接口, 而软件端口是应用层各协议进程与运输实体 进行层间交互的一种地址。 TCP/IP 的端口号为 16 位,允许 65535 个不同端口。端口只具有本地意义,不同计 算机相同端口号没有联系。 端口号分为两大类: 1) 服务器端使用的端口号这里又分为两类。熟知端口号(系统端口号) ,数值为 0~1023.
发送窗口前沿通常是不断向前的,但也可能不变,对应两种情况:一是没有收到新 的确认,对方通知的窗口大小也不变;二是收到了新的确认但是窗口号变小了,使得发 送窗口前沿正好不变。前沿也可能向后收缩,发生在对方通知的窗口缩小了。 发送窗口后沿变化有不动和前移。 发送窗口内的字节可能是已发送的但未收到确认的或是未发送的, 只要不收到确认 后沿就不向前移。 接受窗口(rwnd) 接受窗口只对按序接受的最高序号给予确认,如果只收到 32、33 但未收到 31、确 认报文的确认号仍为 31(希望 A 从 31 开始发送,退后 N 帧),如果收到了 31,并把序号 31~33 交给主机,B 删除这些数据,向 A 发送确认,确认号 34,窗口 20。 窗口与缓冲的关系 缓冲一般是循环利用的,环形。 发送缓冲并不等于发送窗口,发送窗口用来暂时存放: 1) 发送应用程序传送给 TCP 准备发送的数据; 2) TCP 已发送但未收到确认的数据 接受缓冲: 1) 按序到达但未上交给主机的 2) 未按序到达的数据 强调: 1) 虽然 A 的发送窗口总是根据 B 的接受窗口设置的, 但同一时刻 A 的发送窗口并

第四章 运输层

第四章 运输层

UDP
用户数据报协议(UDP)是TCP/IP协议体系 中运输层协议之一,在RFC 768中定义 UDP为应用层提供了无连接的数据传输服务, 利用端口机制为应用程序提供多路复用和多路 分解,并支持简单的差错检测 UDP不能向应用层提供可靠的数据传输,也没 有流量控制和拥塞控制的功能
UDP数据报
UDP接收应用层的数据,加上UDP首部后封装 成UDP数据报,UDP数据报是UDP的传输单 元
主机 A 主机 B
主动打开 连接请求 SYN, seq = x
ACK, ack= x + 1 SYN, seq = y
被动打开
确认
用三次握手建立 TCP 连接
主机 A 主机 B
主动打开 连接请求 SYN, seq = x
ACK, ack= x + 1 SYN, seq = y
被动打开
确认
确认
seq = x + 1, ACK, ack = y + 1
运输层的必要性
网络层不能直接为应用层服务,因为分 组交换技术可能会带来数据的丢失,乱 序,重复等问题. 另外如何确定应用程序的地址也是网络 层所不能解决的. 因此,运输层的存在是十分必要的.
运输层的功能
运输层为应用进程之间提供端到端的逻 辑通信(但网络层是为主机之间提供逻 辑通信).
应用进程寻址 提供数据的可靠传递 流量控制 拥塞控制
流量控制
在建立连接的过程中,双方可以通过通告窗口字 段的值来告知对方自己接收缓存的大小.这样可 以保证第一次发送数据时不会造成对方接收缓存 溢出 在以后的数据传递过程中,TCP利用首部中的窗 口字段通知对方自己的接收缓存大小 ,可变窗口. 窗口和MSS的区别:MSS是一个报文的最大长度. 而窗口则是所能发送的所有数据总数,它可以是 多个报文段,但每个报文段必须满足MSS的限 制,同时其数据总和不能超过窗口大小.

运输层

运输层

第五章运输层一、单项选择题1、在下面给出的协议中,()是TCP/IP的应用层协议。

A、TCP和FTPB、DNS和SMTPC、RARP和DNSD、IP和UDP2、在 TCP/IP 参考模型中TCP协议工作在()A、应用层B、传输层C、互连层D、主机---网络层3、UDP 协议是()A、可靠的无连接协议B、不可靠的无连接协议C、可靠的连接协议D、不可靠的连接协议4、TCP/IP是一组()A、局域网技术B、广域网技术C、只支持同一种计算机(网络)互联的通信协议D、既支持同一种计算机(网络)互联又支持异种计算机(网络)互联的通信协议5、在TCP/IP协议中负责处理帐由选择的协议是()A、IPB、ICMPC、ARPD、RARP6、下列关于UDP和TCP的叙述中不正确的是()A、UDP比TCP的协议简单,数据传输效率也高B、UDP和TCP均是传输层中的协议C、UDP是面向连接的服务,而TCP是面向无连接的服务D、UCP一般适用于成批传送大量数据的场合7、为了保证连接的可靠建立,TCP通常采用()8、A、3次握手法 B、窗口控制机制C、自动重发机制D、端口机制8、在TCP/IP协议簇中,UDP协议工作在()A、应用层B、传输层C、网络互联层D、网络接口层9、下面哪个协议被认为是面向非连接的传输层协议()A、IPB、UDPC、TCPD、RIP10、TCP使用()进行流量控制。

A、3次握手法B、窗口控制机制C、自动重发机制D、端口机制11、下列说法哪项是错误的()A、用户数据报协议UDP提供了面向非连接的,不可靠的传输服务B、由于UDP是面向非连接的,因此它可以将数据直接封装在IP数据报中进行发送C、在应用程序利用UDP协议传输数据之前,首先需要建立一条到达主机的UDP连接D、当一个连接建立时,连接的每一端分配一块缓冲区来存储接收到的数据,并将缓冲区的尺寸发送给另一端12、关于TCP和UDP端口,下列哪种说法是正确是()A、TCP和UDP分别拥有自己的端口号,它们互不干扰, 可以共共存于同一台主机B、TCP和UDP分别拥有自己的端口号,但它们不能共享于同一台主机C、TCP和UDP的端口没有本质区别,它们可以共存于同一台主机D、当一个TCP连接建立时,她们互不干扰,不能共存于同一台主机13、对于下列说法,错误的是()A、TCP协议可以提供可靠的数据流传输服务B、TCP协议可以提供面向连接的数据流传输服务C、TCP协议可以提供全双工的数据流传输服务D、TCP协议可以提供面向非连接的数据流传输服务14、对于下列说法,()是正确的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
42
33 32
26
21
8
1
1
67
16 18 22 24 26
慢开始:不论在慢开始阶段还是在拥塞避免阶段,只要发送方判断网络出现拥塞 (其根据就是没有按时收到确认),就要把慢开始门限 ssthresh 设置为出现拥塞 时的发送方窗口值的一半(但不能小于2)。然后把拥塞窗口 cwnd 重新设置为 1, 执行慢开始算法,在每收到一个对新的报文段的确认后,将拥塞窗口加 倍 。 目的:迅速减少主机发送到网络中的分组 数,使得发生拥塞的路由器有足够时间把 队列中积压的分组处理完毕.
A B
TTCCPP是提一供个了点无到连点接的的通可信靠协数议据传 输
C TCP将来自上层的字节流组织成数据报,然后交给IP协议
D TCP将收到的报文段组成字节础上,向应用层提供可靠的、全双工的、 端到端的、字节流传输服务; TCP协议通过可靠的传输连接将收到的数据段组织成字节流,交给 应用层的进程,为应用层提供有序的、无差错的、不重复的、无丢 失的、流传输服务。
第五章 作业
5-23 :主机A向主机B发送两个 TCP数据段,序号70,100。 问: 1)第一个数据段携带的字节数。 2)主机B收到第一个数据段后发回 的确认号是多少? 3)如果B收到第二个数据段发回的 确认号是180,则第二个数据段的 数据有多少的字节? 4)如果A发送的第一个数据段丢失 了,第二个到达了,则B收到第二 个数据段后返回的确认号是多少?
实验 考验真题精选:
2、如果使用UDP协议进行数据传输,那么( 应用 )层协议必须承担可靠性 方面的工作。
3、TCP协议是面向连接的协议,提供连 接的功能是(1 A );采用(2 C ) 技术实现可靠数据流的传输。为了提高效率,引进滑动窗口协议,协议规定 重传(3 B )的报文段,这种报文的数量最多可以(4 D );TCP采用滑 动窗口协议可以实现(5 C )。
6、 假设TCP的拥塞窗口值设为18KB,然后发生了超时传输情况,如果紧接着 的4次突发传输都是成功的,那么拥塞窗口将是多大?假定最大报文长度 MSS为1KB。门限值=9KB 四次成功传输: 1、2、4、8;拥塞窗口= 8 KB
7、有一个TCP连接,当它的拥塞窗口大小为64个分组大小时超时,假设该线路 往返时间固定为RTT=3秒,不考虑其他开销,该TCP连接在超时后处于慢 开始阶段的时间是多少秒?门限值=32,32之前 1 2 4 8 16 共5次, 即 5 * 3 = 15秒
5) A 端到端的流量控制
B 整个网络的拥塞控制
C 端到端的流量控制和网络的拥塞控制 D 整个网络的差错控制
4、可靠地传输协议中,可靠是指( D )
A 使用面向连接的会话
B 使用“尽力而为”的传输
C 使用滑动窗口来维持可靠性 D 使用确认机制来确保传输的数据不丢失
实验 考验真题精选:
5、下列关于TCP协议的叙述,正确的是( D )
主机A

Socket
答案:
1)30B 2)100 3)80B 4)70
主机B Socket
第五章 作业
5-31 :通信信道带宽为1Gb/s,端到端传播时延为10ms。TCP的发送窗口 为 是多65少53?5字节。试问:可能达到 的最大吞吐量是多少?信道的利用率
解析: 最大吞吐量 = 每秒钟发送的数据 信道利用率 = 最大吞吐量 / 带宽 往返时延: 10 * 2 = 20ms,每 20 ms可以发送一个窗口大小的数据。 每秒钟发送50个窗口。 每秒钟发送的数据 = 最大吞吐量 = 65535 * 8 * 50 = 26.214 Mb/s 信道利用率 = 26.214 Mb/s / 1000 Mb/s = 2.6%
1) A 全双工 B 单工 C 半双工 D 单方向
2) A 超时重传 B 肯定确认 C 超时重传和肯定确认 D 丢失重传和否定性确认
3) A 未被确认及至窗口首端的所有报文段
B 未被确认
C 未被确认及至窗口退回N值得所有报文段 D 仅丢失
4) A 是任意的
B 1个
C 大于发送窗口的大小
D 等于发送窗口的大小
第一个确认到达后,旧的RTT=30ms,新的往返时延=26ms 新的RTT= a * 旧的RTT + (1-a) * (新探测的往返时延) = 0.9 * 30 + 0.1 * 26 = 29.6 ms
第二个确认到达后,旧的RTT=29.6ms,新的往返时延=32ms 新的RTT= a * 旧的RTT + (1-a) * (新探测的往返时延) = 0.9 * 29.6 + 0.1 * 32 = 29.84 ms
第五章 作业
5-34 :如果TCP往返时延RTT的当前值是30ms,随后收到三组确认按到达 顺序分别是在数据发送后26ms,32ms,24ms到达发送方,那么新的RTT估计 值分别是多少?(假定加权因子α=0.9)
解析:
α=0.9 新的RTT = a * 旧的RTT + (1-a) * (新探测的往返时延) α=0.1 新的RTT = (1-a) *旧的RTT + a *新探测的往返时延
第三个确认到达后,旧的RTT=29.84ms,新的往返时延=24ms 新的RTT= a * 旧的RTT + (1-a) * (新探测的往返时延) = 0.9 * 29.84 + 0.1 * 24 = 29.256 ms
第五章 作业
5-38 :设TCP的ssthresh初始值为8(数据段),当拥塞窗口上升到12时网 络发生了超时,TCP使用慢开始和拥塞 避免。试分别求出第1轮次和第15轮次 传输的拥塞窗口大小。
解析:
Ssthresh = 8 慢开始:1(第1轮) 2 4 8 拥塞避免: 9 10 11 12
Ssthresh = 6 慢开始:1 2 4
拥塞避免:6 7 8 9(第15轮) ……
第五章 作业
5-39 :2)慢开始阶段1-6,23-26 3)拥塞避免阶段6-16,17-22 4)第16轮次:收到三个重复的确认数据段,进入快重传 第22轮次:超时检测丢失数据段,进入慢开始 5)第1轮次(门限值=32),第18轮次(门限值=21), 第24轮次(门限值=13) 6)1+2+4+8+16+32=63 63+33=96>70 第7轮次 7)第26轮次收到三个重复的确认数据段,进入快重传 拥塞窗口=4 门限值=4
相关文档
最新文档