第一章 计算机体系结构
计算机网络概述
概念
一般认为,计算机网络是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来的,由功能完善的软件实现资源共享和信息传递的系统。简而言之,计算机网络就是一些互联的、自治的计算机系统的集合。
组成
- 从组成部分上看,一个完整的计算机网络由硬件、软件、协议三大部分组成。
- 从工作方式上看,计算机网络可分为边缘部分和核心部分。边缘部分指连接到因特网上的主机,核心部分指各个异构网络和连接这些网络的路由器的集合。
- 从功能组成上看,计算机网络分为通信子网和资源子网。通信子网由各种传输介质、通信设备和网络协议组成,资源子网是实现资源共享功能的设备以及软件的集合。
功能
- 数据通信。数据通信是计算机网络最基本和最重要的功能。
- 资源共享。资源共享包括软件共享,数据共享和硬件共享等。
- 分布式处理。当计算机网络中某个计算机系统负载过重时,可以将其部分任务分发到网络中另一台空闲的计算机中执行。
- 提高可靠性。计算机网络中的各个计算机可以互为替代机。
- 负载均衡。通过计算机网络将工作任务均衡地分发到计算机网络中的各个计算机中执行。
- 其他。
分类
- 按分布范围划分可以分为广域网(WAN),城域网(MAN),局域网(LAN)和个人局域网(PAN)。
- 按传输技术可以分为广播式网络和点对点网络。局域网一般采用广播式网络,广域网一般采用点对点网络。
- 按拓扑结构可以分为总线形、星形,环形和网状形。前三者多用于局域网,网状形多用于广域网。
- 按交换技术可以划分为电路交换网络,报文交换网络,分组交换网络。电路交换网络在源结点和目的节点之间建立一条数据传输通路,包括建立连接,传输数据,释放连接三个阶段。报文交换网络将用户数据加上控制信息后封装成报文,通过网络中的各个中间结点转发到目的结点。分组交换网络在报文交换网络的基础上将用户数据分为较短的、固定长度的数据块,对每个数据块实行报文交换。现在主流的网络是分组交换网络。报文交换和分组交换需经过中间结点存储转发,电路交换一旦建立通路后无需再存储转发。
性能指标
-
带宽。带宽是数字信道传输的最高数据率。单位与速率相同,有 b / s , M b / s , G b / s b/s,Mb/s,Gb/s b/s,Mb/s,Gb/s,换算关系是 1 G b / s = 1 0 3 M b / s = 1 0 6 b / s 1Gb/s=10^3Mb/s=10^6b/s 1Gb/s=103Mb/s=106b/s。
-
时延。时延一般包括发送时延,传播时延,处理时延和排队时延。发送时延又称传输时延,是指结点将分组所有比特推向链路所用的时间。计算公式为
发送时延 = 分 组 长 度 发 送 速 率 . \text{发送时延}=\frac{分组长度}{发送速率}. 发送时延=发送速率分组长度.
传播时延是指数据在信道中传播一定距离所需要的时间,其计算公式为
传播时延 = 信 道 长 度 信 道 传 输 速 率 . \text{传播时延}=\frac{信道长度}{信道传输速率}. 传播时延=信道传输速率信道长度.
处理时延是指数据在交换结点进行存储转发时所消耗的时间,排队时延是指数据在进入路由器时在输入队列等待的时间。总时延是以上4个时延之和。 -
往返时延(RTT)。RTT是指从发送端发送数据开始到发送方接收到接收端的确认所经历的时间。
注意,高速链路提高的是发送数据的速度,无法提高数据在信道传播的速度。
计算机网络体系结构与参考模型
计算机网络的分层结构
为了降低协议设计和调试过程复杂性,计算机的网络体系以分层方式进行建模。在分层结构中,每一层活动的元素被称为实体。实体可以是任何接收或发送数据的硬件或软件。不同机器上的同一层被称为对等层,对应的实体被称为对等实体。
每一层都会产生自己的协议数据单元(PDU)。PDU分为两个部分,SDU和PCI。SDU是服务数据单元,是上层传递下来的数据。PCI是协议控制信息,是本层协议规定添加的,控制协议操作的信息。在各层传递数据时,本层收到上层的PDU作为本层的SDU,然后加上本层的PCI组成本层的PDU,接收方收到后做相反方式处理。特别地,物理层的PDU被称为比特,数据链路层的PDU被称为帧,网络层的PDU被称为分组,传输层的PDU被称为报文。
分层结构表明,每一层使用下层提供的服务来实现自身协议定义的功能,然后向上层提供服务。每一层只能通过相邻层的接口来使用下层的服务,不能跨层调用。
协议、接口和服务
- 协议。协议是规则的集合。网络协议是指为进行网络中的数据交换而建立的规则、标准或者约定,它是控制两个或多个对等实体之间进行通信的规则,是水平的。不对等实体之间不存在协议。
- 接口。接口是同一结点内相邻两层间交换信息的连接点,每层只能为相邻的两层定义接口,同一结点相邻两层通过**服务访问点(SAP)**进行交互。
- 服务。服务是下层为紧邻的上层提供的功能调用,是垂直的。计算机网络提供的服务可以按三种方式进行分类。
- 面向连接的服务和无连接的服务。
- 可靠服务和不可靠服务。可靠是指网络具有纠错、检错、应答机制等。
- 有应答服务和无应答服务。
OSI参考模型
OSI参考模型是开放系统互连参考模型,共有7层,自下而上分别为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。低三层被称为通信子网,高三层被称为资源子网。各层功能如下。
- 物理层。物理层定义了物理接口的标准参数,信道的电气特性,其任务是进行透明的比特流传输。
- 数据链路层。数据链路层的功能是封装成帧、差错控制、流量控制和传输管理等,负责将网络层传来的IP数据包封装成帧。
- 网络层。网络层关心对分组进行路由选择,实现流量控制、拥塞控制、差错检测和网际互连的功能,为分组交换网上的不同主机提供通信服务。
- 传输层。传输层负责两个主机中进程的通信,提供端到端连接的可靠传输服务,为端到端连接提供流量控制、差错检测、服务质量和数据传输管理等服务。
- 会话层。会话层允许不同主机上的各个进程之间进行会话。会话层利用传输层提供的端到端服务,向表示层提供它的增值服务。
- 表示层。表示层处理两个通信系统之间交换信息的表示方式。如数据压缩、加密和解密。
- 应用层。应用层是用户和网络的界面。
TCP/IP模型
当前互联网使用的是TCP/IP模型而不是OSI参考模型。其只包含5层,相当于OSI参考模型中去除会话层和表示层,然后物理层和数据链路层可以合并为网络接口层(合并后只有4层)。TCP/IP和OSI在网络层和传输层上的定义也有不同。OSI在网络层支持无连接和面向连接的通信,在传输层仅有面向连接的通信。而TCP/IP模型认为可靠性是端到端的问题,因此TCP/IP在网络层仅有无连接不可靠的通信方式,传输层支持面向连接和无连接两种方式。