计算机网络规划设计与实施第七章 因特网的运输层和应用层
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
TCP报文段格式
控制对方发 送的数据量 报文段中紧 急数据的最 后一个字节 的序号
TCP只规定 了最大报文 段长度 (MSS)一种 选项
Internet的运输层与应用层
13
7.2 传输控制协议TCP
2. 运输连接的建立与释放 TCP是面向连接的协议,两个运输实体之间的通信需 要:运输连接的建立、数据传输和连接释放3个阶段。 (1)连接建立过程
1. TCP报文段格式 2. 运输连接的建立与释放 3. TCP的数据编号、确认与重传
4. TCP的流量控制和拥塞控制
Internet的运输层与应用层
11
7.2 传输控制协议TCP
TCP是面向连接的,提供全双工的可靠服务,具有差 错控制、序号和确认、流量和拥塞控制、超时重发等 功能。这些功能体现在其报文格式中。 1. TCP报文段格式 TCP报文段分为首部和数据两部分 其首部又分为固定和选项两部分。 固定部分20字节 选项4N字节(N为正整数)是根据需要而增加的。
Internet的运输层与应用层
21
第7章
7.1 7.2 7.3 7.4 7.5 7.6
因特网的运输层和应用层
因特网运输层协议概述 传输控制协议TCP 用户数据报协议UDP 域名系统DNS 其它主要应用层协议 Telnet、FTP、电子邮件、WWW 网络管理
☞
Internet的运输层与应用层
22
7.3 用户数据报协议UDP
(2)数据传输 当主机A向主机B发送第一个报文时,其序号为a+1。 (3)连接释放——TCP采用文雅释放
客户端发起 释放请求 确认并通知 上层进程, 连接处于半 关闭
客户端发 确认报文
服务器端发 起释放请求
Internet的运输层与应用层
16
7.2 传输控制协议TCP
3. TCP的数据编号、确认与重传 (1)数据编号 TCP是面向字节的,它将所传送的整个报文段视为 一个个字节组成的数据流。 TCP对整个报文的每 一个字节进行编号;即每一个字节对应一个序号。 发送的每个报文段首部中序号字段的数值为该报 文段数据部分的第一个字节的序号。在连接建立 时,通信双方要商定这个序号的初始值。 TCP只对收到的数据的最后一个字节的序号(即收 到数据的最高序号)表示确认,而接收端返回的确 认序号是已收到数据的最高序号加1。
Internet的运输层与应用层
5
7.1 因特网运输层协议概述
3. 端口 端口是运输层服务访问点TSAP,UDP和TCP通过端口 与应用进程通信。端口是用来标识应用进程的。 (1) 端口的标识 端口号用16比特的地址来标识,可提供64k个端口号。 端口号只用来标识本计算机应用层中的各进程,仅具 有本地意义。 (2)端口号分类-两类 熟知端口:由ICANN负责分配的熟知端口,固定给 一些常用的应用程序使用,其数值一般为0~1023。 如:FTP:21;Telnet:23;DNS:53等。熟知端 口的端口号是TCP/IP体系公布的。 一般端口:随时用来分配给请求通信的客户进程。
Internet的运输层与应用层
6
7.1 因特网运输层协议概述 -
端口
(3)进程的识别 为了区别不同主机的不同进程,必须将主机的IP地址 (32比特)和端口(16比特)结合在一起使用,共48比特 惟一确定一个端点,这样的端点叫做插口(socket)或 套接字。这样,一个TCP连接就可由它的两个端点来 标识。
Internet的运输层与应用层
24
7.3 用户数据报协议UDP
下表列出了各种应用程序和应用协议所使用的运输层 协议:
Internet的运输层与应用层
25
7.3 用户数据报协议UDP
2. 用户数据报的格式 UDP用户数据报包括首部和数据两部分。首部只有8个 字节,分4个字段,每个字段2个字节。
Internet的运输层与应用层
Internet的运输层与应用层
3
7.1 因特网运输层协议概述-因特网运输层作用
(2)差错检测 在网际层,IP数据报首部的检验和字段,只检验首部 差错而不检查数据部分。因此,需要运输层对收到的 报文进行差错检测。 (3)改善IP层的服务质量 不同应用程序有不同的服务质量需求,而IP层仅提供 不可靠的无连接的数据报服务,因而需要运输层改善 网络的服务质量。 运输层提供面向连接TCP(可靠服务)和无连接UDP (尽力服务)两种不同的运输协议来弥补通信子网的 不足。
服务器,拥 有熟知的端 口;Passive Open,处于 “听”状态 。
确认报文:SYN=1,ACK=1,SEQ=b 确认 序号为a+1,(消耗一个序号)
确认报文:ACK=1,SEQ=a+1 确认 序号为b+1,(不消耗序号)
15
Internet的运输层与应用层
7.2 传输控制协议TCP—— 2.运输连接的建立与释放
26
7.3 用户数据报协议UDP
3. UDP端口的实现 TCP和UDP都是通过端口和应用进程交互的,但实现方 式不同,一个UDP端口通常用UDP报文队列来实现
Internet的运输层与应用层
27
第7章
7.1 7.2 7.3 7.4 7.5 7.6
因特网的运输层和应用层
因特网运输层协议概述 传输控制协议TCP 用户数据报协议UDP 域名系统DNS 其它主要应用层协议 Telnet、FTP、电子邮件、WWW 网络管理
Internet的运输层与应用层
17
7.2 传输控制协议TCP -2.TCP数据编号、确认与重传
(2)确认 TCP连接通过全双工通信,因而确认信息可以在数 据报文发送过程中捎带传送。 (3)重传 TCP每发送一个报文段就设置一次计时器,若发方 在规定的设置时间内没有收到确认,就要将未被 确认的报文重新发送。
☞
Internet的运输层与应用层
28
7.4 域名系统DNS
1. DNS层次型命名结构 2. DNS层次型名字管理 3. 域名解析
Internet的运输层与应用层
8
7.1 因特网运输层协议概述-4.客户-服务器方式
(2)服务器软件的特点 是一种专门用来提供某种服务的程序,可同时处 理多个远地客户的请求。 在共享计算机上运行。当系统启动时,即自动调 用,且不断地运行着,被动地等待并接受来自多 个客户的通信请求。 一般需要强大的硬件和高级操作系统的支持。 客户与服务器的通信关系一旦建立,其通信可以 是双向的,客户和服务器都可发送和接收信息, 而且大多数应用都是使用TCP/IP协议进行通信。
1. UDP的用途 2. UDP端口的实现 3. 用户数据报的格式
Internet的运输层与应用层
23
7.3 用户数据报协议UDP
1. UDP的用途 UDP具有如下优点: 不需要建立连接,释放连接过程,因而减少了开 销和发送数据之前的时延。 UDP用户数据报首部只有8个字节,比TCP的20字节 的首部要短,开销要小。 UDP没有拥塞控制,虽然不能保证可靠交付,但主 机不需要维持具有许多参数的连接状态表。当网 络出现拥塞时,也不会使源主机的发送速率降低, 这对某些实时应用是非常重要的。例如IP电话、 实时视频会议。
接收方若收到有差错的报文段,则丢弃此报文段, 不发送否认信息,发方超时重发。
若收到重发的报文段,也将其丢弃,但要发回(或 捎带发回)确认信息。
Internet的运输层与应用层
18
7.2 传输控制协议TCP
4. TCP的流量控制和拥塞控制
(1)TCP的流量控制
TCP 采用大小可变的滑动窗口进行流量控制。窗 口大小的单位为字节。在TCP 报文段首部的窗口 字段中,写入的数值是该报文段的发送方给接收 方设置的窗口数值。 在TCP连接建立时,发送窗口由双方商定。但在通 信过程中,接收端可根据自己的资源情况,随时 调整对方的发送窗口。正是由于发送端的发送窗 口由接收端的接收窗口确定,因此接收端的接收 窗口总是等于发送端的发送窗口。所以,一般只 使用发送窗口这个词汇。
Internet的运输层与应用层
2
7.1 因特网运输层协议概述
1. 因特网运输层的作用 运输层位于高低层之间,起桥梁或承上启下作用,即 弥补、加强网络层所提供的服务。 (1)为两个主机提供应用进程间的端到端服务 一台主机中经常有多个进程同时分别和另一个主机中 的多个应用进程通信。IP地址标识的是因特网中的某 台主机,而不是标识主机中的应用进程。
第七章
因特网的运输层和应用层
丁 勇
合肥工业大学管理学院
Internet的运输层与应用层
1
第7章
因特网的运输层和应用层
☞
7.1 7.2 7.3 7.4 7.5
因特网运输层协议概述 传输控制协议TCP 用户数据报协议UDP 域名系统DNS 其它主要应用层协议 Telnet、FTP、电子邮件、WWW 7.6 网络管理
Internet的运输层与应用层
12
7.2 传输控制协议TCP -
面向数据流。数据字段 第一个字节数据的序号 期望收到的下一个报文 段首部的序号字段的值 数据开始点离TCP报文 段起始处距离-4N字节 范围包括伪首部、首部 和数据三部分。 1.紧急比特(URG=1) 2.确认比特(ACK=1) 3.推送比特PSH 4.复位比特RST 5.同步比特SYN 6.终止比特FIN
有三对插口,如:连接1 (130.7.20.14,1650) 和(118.35.2.21,25)
一般端口号
熟知端口号: SMTP
Internet的运输层与应用层
7
7.1 因特网运输层协议概述
4. 客户-服务器方式 客户和服务器是指通信中所涉及的两个应用进程, 客户-服务器方式描述的是进程之间的服务和被服务 的关系。当一个进程需要另一个进程的服务时,就主 动呼叫另一个进程;前者是客户,而后者是服务器。 (1)客户软件的特点 在本地是一个应用程序,请求异地服务时成为客 户。 被用户(使用计算机的人)调用,在用户的计算机 上运行,当要通信时主动向远地服务器发起通信。 可与多个服务器进行通信。 不需要特殊的硬件和很复杂的操作系统。
Internet的运输层与应用层
4
7.1 因特网运输层协议概述
2. 运输层的两个协议 TCP/IP运输层提供用户数据报协议(User Datagram Protocol,UDP)和传输控制协议(Transmission Control Protocol,TCP)两种协议。 (1) TCP协议 TCP提供面向连接的服务,即在传输数据之前必须 先建立连接,数据传输结束后要释放连接。 但这种 连接对通信子网是透明的。 TCP具有确认、流量控制、计时器以及连接管理等 等功能。 (2) UDP协议 UDP是无连接的传输层协议,也不需要对方确认。
Internet的运输层与应用层
9
第7章
7.1 7.2 7.3 7.4 7.5 7.6
因特网的运输层和应用层
因特网运输层协议概述 传输控制协议TCP 用户数据报协议UDP 域名系统DNS 其它主要应用层协议 Telnet、FTP、电子邮件、WWW 网络管理
☞
Internet的运输层与应用层
10
7.2 传输控制协议TCP
Internet的运输层与应用层
19
7.2 传输控制协议TCP
窗口值为600字节,每个报 文段为200字节。
超 时 时 间
800
Internet的运输层与应用层
20
7.2 传输控制协议TCP—4.
TCP的流量控制和拥塞控制
ຫໍສະໝຸດ Baidu
(2)TCP的拥塞控制 TCP流量控制可以使接收端来得及接收。但是,仅 考虑到接收端的接收能力,也可能使网络负荷过重, 从而导致报文段的时延增大,主机不能及时收到确 认并重传更多的报文段,使网络拥塞加剧。——只 考虑了主机能力。 为了避免发生拥塞,主机应当降低发送速率。即发 送端的主机在发送数据时,既要考虑接收端的接收 能力,又要使网络不要发生拥塞。——网络能力 发送端的发送窗口上限值应取接收端根据接收能力 通知的窗口和发送端根据拥塞情况得出的拥塞窗口 的最小值,即:发送窗口的上限值 = min[接收端 通知窗口,拥塞窗口]。
请求运输连接(通过C/S方式,双方均要明确IP地
址和端口号);
运输层实体间协商参数(如最大报文长度、最大窗
口大小、服务质量等)和资源分配(缓存大小、连 接表中的项目等)。
Internet的运输层与应用层
14
7.2 传输控制协议TCP—— 2.运输连接的建立与释放
通过C/S方 式建立连接
连接请求报文:SYN=1,ACK=0,SEQ=a (消耗一个序号)