TCPUDP协议第08章.ppt_第1页
TCPUDP协议第08章.ppt_第2页
TCPUDP协议第08章.ppt_第3页
TCPUDP协议第08章.ppt_第4页
TCPUDP协议第08章.ppt_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2019年4月2日星期二4时24分34秒,计算机网络技术,教学重点和难点: 端口和套接字 TCP报文的格式及其字段的含义 TCP连接建立和拆除的过程 TCP可靠数据传输技术 TCP流量控制和拥塞控制 TCP重发机制 UDP报文格式 常用的TCP/IP应用用程序,第8章 TCP/UDP协议,2019年4月2日星期二4时24分34秒,计算机网络技术,8.1 TCP/IP 的传输层,8.1.1 传输层协议,TCP/IP的传输层的协议,提供传输控制协议(TCP),用户数据报协议(UDP),UDP提供无连接的服务,UDP在传送数据之前不需要建立连接。,TCP则提供面向连接的服务。在传送数据之前必须先建立连接,数据传送结束后要释放连接。TCP不提供广播或多播服务。,2019年4月2日星期二4时24分34秒,计算机网络技术,8.1 TCP/IP 的传输层,8.1.2 端口和套接字,传输层协议实现应用进程间端到端的通信。计算机中的不同进程可能同时进行通信,这时它们会用端口号进行区别,通过网络地址和端口号的组合达到惟一标识的目的,即套接字(Socket)。TCP和UDP都使用端口和套接字。套接字是IP地址加上一个端口。,2019年4月2日星期二4时24分34秒,计算机网络技术,8.1 TCP/IP 的传输层,发送套接字源IP地址源端口号 接收套接字目的IP地址目的端口号,每个端口都拥有一个叫端口号的整数描述符,用来标识不同的端口或进程。,2019年4月2日星期二4时24分34秒,计算机网络技术,8.1 TCP/IP 的传输层,应用层与传输层之间的接口,2019年4月2日星期二4时24分34秒,计算机网络技术,这种端口号一般都小于1024。它们基本上都被分配给了已知的应用协议。 这些端口由于已经有了固定的使用者,不能被动态地分配给其他应用程序。,8.1 TCP/IP 的传输层,(1) 保留端口,2019年4月2日星期二4时24分34秒,计算机网络技术,8.1 TCP/IP 的传输层,TCP协议和UDP协议的一些常用保留端口,2019年4月2日星期二4时24分34秒,计算机网络技术,这种端口的端口号一般都大于1024。这一类的端口没有固定的使用者,它们可以被动态地分配给应用程序使用。也就是说,在使用应用软件访问网络的时候,应用软件可以向系统申请一个大于1024的端口号临时代表这个软件与传输层交换数据,并且使用这个临时的端口与网络上的其他主机通信。 netstat命令查看端口使用情况,8.1 TCP/IP 的传输层,(2) 动态分配的端口,2019年4月2日星期二4时24分34秒,计算机网络技术,某些软件厂商通过使用注册端口,使它的特定软件享有固定的端口号,而不用向系统申请动态分配的端口号。一般,这些特定的软件要使用注册端口,其厂商必须向端口的管理机构注册。 大多数注册端口的端口号大于1024。 TCP协议和UDP协议都允许16位的端口值,分别能够提供65536个端口。不论端口号大于还是小于1024,以上三种端口都分别属于TCP协议和UDP协议。当然,也有些协议的端口既属于TCP协议也属于UDP协议。,8.1 TCP/IP 的传输层,(3) 注册端口,2019年4月2日星期二4时24分34秒,计算机网络技术,8.1 TCP/IP 的传输层,端口概念示意图,2019年4月2日星期二4时24分34秒,计算机网络技术,TCP的协议数据单元被称为报文段(Segment),TCP通过报文段的交互来建立连接、传输数据、发出确认、进行差错控制、流量控制及关闭连接。报文段分为两部分,即报文段头和数据,所谓报文段头就是TCP为了实现端到端可靠传输所加上的控制信息,而数据则是指由高层即应用层来的数据。,8.2 传输控制协议TCP,15.2.1 TCP报文段的格式,2019年4月2日星期二4时24分34秒,计算机网络技术,8.2 传输控制协议TCP,TCP报文段的首部,2019年4月2日星期二4时24分34秒,计算机网络技术,源端口和目的端口字段:各占 2 字节。端口是运输层与应用层的服务接口。运输层的复用和分用功能都要通过端口才能实现。,8.2 传输控制协议TCP,比特,0,4,8,16,9,24,31,2019年4月2日星期二4时24分34秒,计算机网络技术,序号字段:占 4 字节。TCP 连接中传送的数据流中的每一个字节都编上一个序号。序号字段的值则指的是本报文段所发送的数据的第一个字节的序号。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,确认号字段:占 4 字节,是期望收到对方的下一个报文段的数据的第一个字节的序号。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,数据偏移:占 4 bit,它指出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。“数据偏移”的单位不是字节而是 32 bit 字(4 字节为计算单位)。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,保留字段:占 6 bit,保留为今后使用,但目前应置为 0。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,紧急比特 URG :当 URG 1 时,表明紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,确认比特 ACK :只有当 ACK 1 时确认号字段才有效。当 ACK 0 时,确认号无效。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,推送比特 PSH (PuSH) :接收 TCP 收到推送比特置 1 的报文段,就尽快地交付给接收应用进程,而不再等到整个缓存都填满了后再向上交付。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,复位比特 RST (ReSeT) :当 RST 1 时,表明 TCP 连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立运输连接。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,同步比特 SYN :同步比特 SYN 置为 1,就表示这是一个连接请求或连接接受报文。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,终止比特 FIN (FINal) :用来释放一个连接。当FIN 1 时,表明此报文段的发送端的数据已发送完毕,并要求释放运输连接。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,窗口字段:占 2 字节。窗口字段用来控制对方发送的数据量,单位为字节。TCP 连接的一端根据设置的缓存空间大小确定自己的接收窗口大小,然后通知对方以确定对方的发送窗口的上限。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,检验和:占 2 字节。检验和字段检验的范围包括首部和数据这两部分。在计算检验和时,要在 TCP 报文段的前面加上 12 字节的伪首部。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,紧急指针字段:占 16 bit。紧急指针指出在本报文段中的紧急数据的最后一个字节的序号。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,选项字段 :长度可变。TCP 只规定了一种选项,即最大报文段长度 MSS (Maximum Segment Size)。MSS 告诉对方 TCP:“我的缓存所能接收的报文段的数据字段的最大长度是 MSS 个字节。”,MSS 是 TCP 报文段中的数据字段的最大长度。 数据字段加上 TCP 首部才等于整个的 TCP 报文段。MSS的选择较小,网络的利用率就降低。选择较大, TCP报文段太长,则IP层传输时就有可能分解成多个短数据报片,传输时开销增大。MSS(TCP报文段数据部分大小)默认值是536字节。TCP报文段是536+20字节。,8.2 传输控制协议TCP,2019年4月2日星期二4时24分34秒,计算机网络技术,TCP将所要传送的整个报文(这可能包括许多个报文段)看成是一个个字节组成的数据流,然后对每一个数据流编一个序号。在连接建立时,双方要商定初始序号。TCP就将每一次所传送的报文段中的第一个数据字节的序号,放在 TCP首部的序号字段中。 TCP的确认是对接收到的数据的最高序号(即收到的数据流中的最后一个序号)表示确认。但返回的确认序号是已收到的数据的最高序号加1。也就是说,确认序号表示期望下次收到的第一个数据字节的序号。,8.2 传输控制协议TCP,15.2.2 序号与确认,2019年4月2日星期二4时24分34秒,计算机网络技术,TCP连接包括建立连接、数据传输和拆除连接三个过程。TCP通过TCP端口提供连接服务,最后通过连接服务来接收和发送数据。TCP连接的申请、打开和关闭必须遵守TCP协议的规定。TCP使用三次握手协议来建立连接。连接可以由任何一方发起,也可以由双方同时发起。一旦一台主机上的TCP软件已经主动发起连接请求,运行在另一台主机上的TCP软件就被动地等待握手。,8.2 传输控制协议TCP,15.2.3 TCP连接的建立和拆除,2019年4月2日星期二4时24分34秒,计算机网络技术,8.2 传输控制协议TCP,主机A,主机B,连接请求,SYN=1,seq=x,确认,确认,SYN=1,ACk=1,seq=y,ACKx+1,ACK=1,seq=x+1,ACKy+1,三次握手建立TCP连接,2019年4月2日星期二4时24分34秒,计算机网络技术,8.2 传输控制协议TCP,发送4个数据段的过程,2019年4月2日星期二4时24分34秒,计算机网络技术,8.2 传输控制协议TCP,主机B,应用进程释放连接,应用进程释放连接,TCP连接释放的过程,2019年4月2日星期二4时24分34秒,计算机网络技术,8.2 传输控制协议TCP,8.2.4 TCP可靠数据传输技术,TCP协议采用了许多与数据链路层类似的机制来保证可靠的数据传输,如采用序列号、确认、滑动窗口协议等。 TCP协议的目的是为了实现端到端结点之间的可靠数据传输,而数据链路层协议则为了实现相邻结点之间的可靠数据传输。,2019年4月2日星期二4时24分34秒,计算机网络技术,1. 流量控制,8.2 传输控制协议TCP,8.2.5 TCP流量控制与拥塞控制,TCP采用大小可变的滑动窗口机制实现流量控制功能。,2019年4月2日星期二4时24分34秒,计算机网络技术,主机A,主机B,主机A还能发送200字节,利用可变滑动窗口进行流量控制,SEQ1,SEQ101,SEQ201,ACK201,WIN300,SEQ301,SEQ401,SEQ201,ACK501,WIN200,ACK601,WIN0,SEQ501,丢失!,主机A还能发送300字节,允许A再发送300字节(序号201至500),A还能发送200字节(序号301至500),A还能发送100字节(序号401至500),A超时重发,但不能发送序号500以后的数据,允许A再发送200字节(序号501至700),A还能发送100字节(序号601至700),不允许A再发送,(到序号600的数据都收到了),2019年4月2日星期二4时24分34秒,计算机网络技术,8.2 传输控制协议TCP,8.2.6 重发机制,TCP每发送一个报文段,就设置一次定时器。只要定时器设置的重发时间到而还没有收到确认,就要重发这一报文段。大家知道,TCP是在一个互连网的环境下工作。发送的报文段可能只经过一个高速率的局域网,但也可能是经过多个低速率的广域网。报文段的端到端的时延会相差很多倍。,2019年4月2日星期二4时24分34秒,计算机网络技术,(1)发送数据之前不需要建立连接,减少了开销和发送数据之前的时延。 (2)UDP不使用拥塞控制,也不保证可靠交付,因此主机不需要维持具有许多参数的、复杂的连接状态表。 (3)UDP用户数据报只有8个字节的首部。 (4)由于UDP没有拥塞控制,因此网络出现的拥塞不会使源主机的发送效率降低。,8.3 用户数据报协议UDP,8.3.1 UDP概述,2019年4月2日星期二4时24分34秒,计算机网络技术,应用层协议使用的传输层协议,2019年4月2日星期二4时24分34秒,计算机网络技术,8.3 用户数据报协议UDP,8.3.2 UDP数据报的首部格式,2019年4月2日星期二4时24分34秒,计算机网络技术,8.3 用户数据报协议UDP,8.3.3 UDP报文的发送和接收,UDP报文也是通过IP协议来发送和接收的。,在发送数据时,UDP实体构造好UDP报文后,交付给IP协议,IP协议将整个UDP报文封装在IP数据报中,形成IP数据报发送到网络中。,在接收数据时,UDP实体判断UDP报文的目的端口是否与当前使用的某个端口匹配。若匹配,则将报文存入接收队列;若不匹配,则向源端发送一个端口不可达的ICMP报文,同时丢弃UDP报文。,2019年4月2日星期二4时24分34秒,计算机网络技术,Ipconfig命令可以显示所有当前的 TCP/IP 网络配置值(如IP地址、网关、子网掩码)、刷新动态主机配置协议 (DHCP) 和域名系统 (DNS) 设置。 语法格式为:ipconfig /all /renewAdapter /release Adapter /flushdns /displaydns /r

温馨提示

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

最新文档

评论

0/150

提交评论