没有合适的资源?快使用搜索试试~ 我知道了~
计算机网络复习整理(第五章)第五章 运输层本章重要内容:运输层为相互通信的应用进程提供逻辑通信。端口和套接字的意义。无连接的UDP的特点。面向连接的TCP的特点
资源推荐
资源详情
资源评论
计算机网络复习整理(第五章)
第五章 运输层
本章重要内容:
(1)运输层为相互通信的应用进程提供逻辑通信。
(2)端口和套接字的意义。
(3)无连接的 UDP 的特点。
(4)面向连接的 TCP 的特点。
(5)在不可靠网络上实现可靠传输的工作原理,停止等待协议和 ARQ 协议。
(6)TCP 的滑动窗口、流量控制、拥塞控制和连接管理。
5.1 运输层协议概述
从通信和信息处理的角度看,运输层向它上面的应用层提供通信服务,它属于面向通
信部分的最高层,同时也是用户功能中的最底层。当网络边缘的两台主机利用网络的核心功
能进行端到端的通信时,只有主机的协议栈才有运输层,而路由器在转发分组时只用到下三
层的功能。
从 IP 层来说通信的两端是两台主机,IP 数据报的首部明确标志了这两台主机的 IP 地址。
但真正进行通信的实体是主机中的进程,因此严格地讲,两台主机进行通信就是两台主机中
的应用进程互相通信。IP 协议虽然能把分组送到目的主机,但是这个分组还停留在主机的网
络层而没有交付主机中的应用进程。从运输层的角度看,通信的真正端点并不是主机而是
主机中的进程。也就是说,端到端的通信是应用进程之间的通信。
运输层有一个很重要的功能——复用和分用。复用是指在发送方不同的应用进程都可以
使用同一个运输层协议传送数据(加上适当的首部),而分用是指接收方的运输层在剥去报
文的首部后能够把这些数据正确交付目的应用进程。运输层提供应用进程之间的逻辑通信,
逻辑通信的意思是:从应用层来看,只要把应用层报文交给下面的运输层,运输层就可以把
报文送到对方的运输层,好像这种通信就是沿水平方向直接传送数据。但事实上这两个运
输层之间并没有一条水平方向的物理连接,数据传送是经过多个层次传送的。
网络层为主机之间提供逻辑通信,而运输层为应用进程之间提供逻辑通信。
运输层还要对收到的报文进行差错检测,在网络层,IP 数据报首部中的检验和字段,只
检验首部是否出现差错而不检查数据部分。
根据应用程序的不同需求,运输层需要两种协议,即面向连接的 TCP 和无连接的 UDP。
运输层向高层用户屏蔽了下面网络核心的细节(网络拓扑、所采用的路由选择协议
等),它使应用进程看见的就好像是在两个运输层实体之间有一条端到端的逻辑通信信道,
但这条逻辑通信信道对上层的表现因运输层的不同协议而有很大差别。当运输层采用 TCP 时,
尽管下面的网络是不可靠的,但这种逻辑通信信道就相当于一条全双工的可靠信道。但运
输层采用 UDP 时,这种逻辑通信信道仍然是不可靠的。
按照 OSI 的术语,两个对等层实体在通信时传送的数据单位叫运输协议数据单元 TPDU。
但在 TCP/IP 体系中,根据所选协议分别称为 TCP 报文段(segment)或 UDP 用户数据报。
UDP 在传送数据前不需要先建立连接,远地主机运输层收到报文后不需要给出任何确
认。
TCP 提供面向连接的服务,在传送前必须建立连接,传送后要释放连接。TCP 不提供广
播或多播服务。
使用 TCP 和 UDP 的各种应用和应用层协议:
UDP:名字转换 DNS、文件传送 TFTP、路由选择协议 IP、IP 地址配送 DHCP、网络管理
SNMP、远程文件服务器 NFS、IP 电话 专用协议、流式多媒体通信 专用协议、多播 IGMP
TCP:电子邮件 SNMP、远程终端接入 TELNET、万维网 WWW、文件传送 FTP
应用层的所有应用进程都可以通过运输层再传送到 IP 层(网络层),这就是复用。运输
层从 IP 层收到发送给各应用进程的数据后,必须分别交付指明的各应用进程,这就是分用。
在运输层使用协议端口号,或称端口。虽然通信的终点是应用进程,但只要把传送的报
文交到目的主机的某个合适的目的端口,剩下的工作(即交付目的进程)就由 TCP 或 UDP
完成。
这种在协议栈层间的端口是软件端口,和路由器或交换机上的硬件端口不同。硬件端口
是不同硬件设备进行交互的接口,而软件端口是应用层的各种协议进程与运输实体进行层
间交互的一种地址。
TCP 和 UDP 的首部格式中都有源端口和目的端口,当运输层收到 IP 层上交的运输层报
文时,就能根据其首部中的目的端口号把数据交付应用层的目的应用进程。
TCP/IP 的运输层使用 16 位端口号来标志一个端口,端口号只具有本地意义,只是为了
标志本计算机应用层中的各个进程在和运输层交互时的层间接口。在互联网不同计算机中,
相同的端口号没有关联,16 位端口号允许 65535 个不同的端口号。
两个计算机中的进程要相互通信,不仅要知道对方的 IP 地址,还要知道对方的端口号。
互联网上的计算机通信采用客户-服务器方式,运输层端口号分为以下两种:
(1)服务器端口号 最重要的一类叫做熟知端口号或系统端口号,数值 0-1023。如:
FTP21 、 TELNET23 、 SMTP25 、 DNS53 、 TFTP69 、 HTTP80 、 SNMP161 、 SNMP(trap)162 、
HTTPS443。
另一类叫做登记端口号,数值 1024-49151,为没有熟知端口号的应用进程使用的。
(2)客户端端口号 数值为 49152-65535,又叫做短暂端口号。
5.2 用户数据报协议 UDP
UDP 只在 IP 的数据报服务上增加了很少一点的功能,复用、分用以及差错检测。UDP
的主要特点是:
(1)无连接,发送数据前不需要建立连接,减小了开销和发送时延。
(2)尽最大努力交付,不保证可靠服务,主机不需要维持复杂的连接状态表。
(3)UDP 是面向报文的,UDP 对应用层交下来的报文,既不合并也不拆分,而是保留
这些报文的边界。因此应用程序需要选择合适大小的报文,太长(需要分片)太短(首部相
对长度太大)都会降低 IP 等的效率。
(4)UDP 没有拥塞控制,网络出现拥塞不会使源主机的发送速率降低,适合很多实时
应用(IP 电话,视频会议等),这些应用要求源主机以恒定速率发送数据。
(5)支持一对一、一对多、多对一和多对多的交互通信。
(6)首部开销小,只有 8 字节,TCP 需要 20 字节。
不使用拥塞控制的 UDP 有可能使网络产生严重拥塞。
UDP 的首部格式
UDP 有两个字段,数据字段和首部字段。首部字段只有 8 字节,由四个字段组成,每个
字端都是 2 字节长。各字段意义如下:
(1)源端口 源端口号,需要对方回信时使用,不需要全 0。
(2)目的端口 目的端口号,在终点交付报文时必须使用。
(3)长度 UDP 用户数据报的长度,最小值为 8(仅有首部)。
(4)检验和 检测 UDP 数据报在传输中是否有错,有错则丢弃。(使用 12 字节的伪首
部,既不向下传送也不向上递交)
如果接收方 UDP 发现接收报文中目的端口号不正确,即不存在对应于该端口号的应用
进程,就丢弃该报文,并由网际控制报文协议 ICMP 发送端口不可达差错报文给发送方。ICMP
的 traceroute 应用就是让发送的 UDP 数据报故意使用非法 UDP 端口。
5.3 传输控制协议 TCP 概述
TCP 最主要的特点:
(1)TCP 是面向连接的运输层协议。
剩余11页未读,继续阅读
资源评论
无能为力就要努力
- 粉丝: 16
- 资源: 332
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功