计算机网络(一)计算机网络体系结构
1.1 计算机网络概述
1.1.1 计算机网络概念
计算机网络︰是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。计算机网络是互连的、自治的计算机集合。
- 互连:通过通信链路互联互通
- 自治:无主从关系
网络把许多计算机连接在一起,而互联网则把许多网络连接在一起因特网是世界上最大的互联网。
1.1.2 计算机网络的功能
- 数据通信:用来实现联网计算机之间各种信息的传输,并将分散在不同地理位置的计算机联系起来,进行统一的调配、控制和管理
- 资源共享:同一个计算机网络上的其他计算机可使用某台计算机的计算机资源的行为,可共享硬件、软件、数据。
- 分布式处理:当计算机网络中的某个计算机系统负荷过重时,可以将其处理的某个复杂任务分配给网络重的其他计算机系统,从而利用空闲计算机资源以提高整个系统的利用率
- 提高可靠性:计算机网络重的各台计算机可以通过网络互为替代机
- 负载均衡:将工作任务均衡地分配给计算机网络中的各台计算机
1.1.3 计算机网络的组成
- 从组成部分上看,一个完整的计算机网络主要由硬件、软件、协议三大部分组成,缺一不可。硬件主要由主机(也称端系统)、通信链路(如双绞线、光纤)、交换设备(如路由器、交换机等)和通信处理机(如网卡)等组成。软件主要包括各种实现资源共享的软件和方便用户使用的各种工具软件(如网络操作系统、邮件收发程序、FTP程序、聊天程序等)。软件部分多属于应用层。协议是计算机网络的核心,协议规定了网络传输数据时所遵循的规范。
- 从工作方式上看,计算机网络(这里主要指Internet,即因特网)可分为边缘部分和核心部分。边缘部分由所有连接到因特网上、供用户直接使用的主机组成,用来进行通信(如传输数据、音频或视频)和资源共享,有两种方式,C/S(Client/Server)方式和P2P(peer-to-peer)方式;核心部分由大量的网络和连接这些网络的路由器组成,它为边缘部分提供连通性和交换服务。
- 从功能组成上看,计算机网络由通信子网和资源子网组成。通信子网由各种传输介质、通信设备和相应的网络协议组成,它使网络具有数据传输、交换、控制和存储的能力,实现联网计算机之间的数据通信。资源子网是实现资源共享功能的设备及其软件的集合,向网络用户提供共享其他计算机上的硬件资源、软件资源和数据资源的服务。
1.1.4 计算机网络的分类
1.1.4.1 按分布范围分
- 广域网(WAN)。广域网的任务是提供长距离通信,运送主机所发送的数据,其覆盖范围通常是直径为几十千米到几千千米的区域,因而有时也称远程网。广域网是因特网的核心部分。连接广域网的各结点交换机的链路一般都是高速链路,具有较大的通信容量。
- 城域网(MAN)。城域网的覆盖范围可以跨越几个街区甚至整个城市,覆盖区域的直径范围是5一50km。城域网大多采用以太网技术,因此有时也常并入局域网的范围讨论。
- 局域网(LAN)。局域网一般用微机或工作站通过高速线路相连,覆盖范围较小,通常是直径为几十米到几千米的区域。局域网在计算机配置的数量上没有太多的限制,少的可以只有两台,多的可达几百台。传统上,局域网使用广播技术,而广域网使用交换技术。
- 个人区域网(PAN)。个人区域网是指在个人工作的地方将消费电子设备(如平板电脑、智能手机等)用无线技术连接起来的网络,也常称为无线个人区域网(WPAN),覆盖区域的直径约为10m.
1.1.4.2 接使用者分
- 公用网(Public Network)。指电信公司出资建造的大型网络。“公用”的意思是指所有愿意按电信公司的规定交纳费用的人都可以使用这种网络,因此也称公众网。
- 专用网(Private Network)。指某个部门为满足本单位特殊业务的需要而建造的网络。这种网络不向本单位以外的人提供服务。例如铁路、电力、军队等部门的专用网。
1.1.4.3 按交换技术分
- 电路交换网络。在源结点和目的结点之间建立一条专用的通路用于传送数据,包括建立连接、传输数据和断开连接三个阶段。最典型的电路交换网是传统电话网络。该类网络的主要特点是整个报文的比特流连续地从源点直达终点,好像是在一条管道中传送。优点是数据直接传送、时延小。缺点是线路利用率低、不能充分利用线路容量、不便于进行差错控制。
- 报文交换网络。用户数据加上源地址、目的地址、校验码等辅助信息,然后封装成报文。整个报文传送到相邻结点,全部存储后,再转发给下一个结点,重复这一过程直到到达目的结点。每个报文可以单独选择到达目的结点的路径。报文交换网络也称存储-转发网络,主要特点是整个报文先传送到相邻结点,全部存储后查找转发表,转发到下一个结点。优点是可以较为充分地利用线路容址,可以头现个问链路之间不同数据传输速率的转换,可以实现格式转换,可以实现一对多、多对一的w问,可以实现差错控制。缺点是增大了资源开销(如辅助信息导致处理时间和存储资源的开销),增加了缓冲时延,需要额外的控制机制来保证多个报文的顺序不乱序,缓冲区难以管理(因为报文的大小不确定,接收方在接收到报文之前不能预知报文的大小)。
- 分组交换网络,也称包交换网络。其原理是,将数据分成较短的固定长度的数据块,在每个数据块中加上目的地址、源地址等辅助信息组成分组(包),以存储-转发方式传输。其特点是单个分组(报文的一部分)传送到相邻结点,存储后查找转发表,转发到下一个结点。除具备报文交换网络的优点外,分组交换网络还具有自身的优点:包的平均时延更小,网络占用的平均缓冲区更少,更易于标准化;更适合应用。现在的主流网络基本上都可视为分组交换网络。
1.1.4.4 按拓扑结构分
网络拓扑结构是指由网中结点(路由器、主机等)与通信线路(网线)之间的几何关系(如总线形、环形)表示的网络结构,主要指通信子网的拓扑结构。按网络的拓扑结构,主要分为总线形、星形、环形和网状网络等,星形、总线形和环形网络多用于局域网,网状网络多用于广域网。
图片.png1.1.4.5 按传输技术分
- 广播式网络。所有联网计算机都共享一个公共通信信道。当一台计算机利用共享通信信道发送报文分组时,所有其他的计算机都会“收听”到这个分组。接收到该分组的计算机将通过检查目的地址来决定是否接收该分组。局域网基本上都采用广播式通信技术,广域网中的无线、卫星通信网络也采用广播式通信技术。
- 点对点网络。每条物理线路连接一对计算机。若通信的两台主机之间没有直接连接的线路,则它们之间的分组传输就要通过中间结点进行接收、存储和转发,直至目的结点
1.1.5 计算机网络的性能指标
1.1.5.1 带宽
- “带宽”原本指某个信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)
- 计算机网络中,带宽用来表示网络的通信线路传送数据的能力,通常是指单位时间内从网络中的某一点到另一点所能通过的“最高数据率”。单位是“比特每秒”,b/s,kb/s,Mb/s,Gb/s。
链路带宽=1Mb/s 即主机在1us内可向链路发1bit数据
1.1.5.2 吞吐量
吞吐量表示在单位时间内通过某个网络(或信道、接口)的数据量。单位b/s,kb/s,Mb/s等。吞吐量受网络的带宽或网络的额定速率的限制。
1.1.5.3 速率
网络中的速率是指连接在计算机网络上的主机在数字信道上传送数据位数的速率。单位是b/s, kb/s,Mb/s,Gb/s,Tb/s
图片.png1.1.5.4 时延
指数据(报文/分组/比特流〉从网络(或链路)的一端传送到另一端所需的时间。也叫延迟或迟延。单位是s。时延的组成可以分为以下几种
- 发送时延(传输时延):从发送分组的第一个比特算起,到该分组的最后一个比特发送完毕所需的时间
- 传播时延:电磁波在信道中一定的距离所需要花费的时间
-
处理时延:数据在交换结点为存储转发而进行的一些必要的处理所花费的时间,如检错、找出口等
-
排队时延:分组在进入路由器后要先在输入队列中排队等待处理,路由器确定转发端口后,还要再输出队列中排队等待转发
因此,数据在网络中经历的总时延就是以上四部分时延之和
除题目有说明外,排队时延和处理时延一般可忽略不计。另外,对于高速链路,提高的仅是数据发送速率而非比特在链路上的传播速率。提高数据的发送速率只是为了减少数据的发送时延
1.1.5.5 时延带宽积
时延带宽积又称为以比特为单位的链路长度。即“某段链路现在有多少比特”。指发送端发送的第一个比特即将到达终点时,发送端已经发出了多少个比特。
图片.png1.1.5.6 往返时延
往返时延(RTT)指从发送方发送数据开始,到发送方收到接收方的确认(接收方收到数据后立即发送确认),总共经历的时延。RTT越大,在收到确认之前,可以发送的数据越多,包括往返传播时延(=传播时延*2)和末端处理时间(一般忽略不计)
1.1.5.7 信道利用率
信道利用率指出某一信道有百分之多少的时间是有数据通过的
网路利用率即信道利用率的加权平均值
1.2 计算机网络体系与参考模型
1.2.1 计算机网络的分层结构
分层的基本原则:
- 各层之间相互独立,每层只实现一 种相对独立的功能。
- 每层之间界面自然消晰,易千理解,相互交流尽可能少。
- 结构上可分割开。每层都采用最合适的技术来实现。
- 保待下层对上层的独立性,上层单向使用下层提供的服务。
- 整个分层结构应该能促进标准化工作。
计算机网络的概念:
-
实体:第n层中的活动元素称为n层实体。同一 层的实体叫对等实体。
-
协议:为进行网络中的对等实体数据交换而建立的规则、标准或约定称为网络协议。 【水平】
- 语法:规定传输数据的格寸
- 语义:规定所要完成的功能
- 同步:规定各种操作的顺序
-
接口(访问服务点SAP):上层使用下层服务的入口。
-
服务:下层为相邻上层提供的功能调用。 【垂直】
在计算机网络体系结构的各个层次中,每个报文分为两个部分:一是数据部分,即SDU;二是控制信息部分,即PCI,它们共同组成PDU
- SDU服务数据单元:为完成用户所要求的功能而应传送的数据。
- PCI协议控制信息:控制协议操作的信息。
- PDU协议数据单元:对等层次之间传送的数据单位。
1.2.2 ISO/OSI参考模型和TCP/IP模型
1.2.2.1 ISO/OSI参考模型
国际标准化组织(ISO)提出的网络体系结构模型,称为开放系统互连参考模型(OSI RM),通常简称为OSI参考模型。OSI参考模型有7层,自下而上依次为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。低三层统称为通信子网,它是为了联网而附加的通信设备,完成数据的传输功能;高三层统称为资源子网,它相当于计算机系统,完成数据的处理等功能。传输层承上启下。OSI参考模型的层次结构如图所示。
图片.png- 应用层:应用层是OSI参考模型的最高层,是用户与网络的界面。应用层为特定类型的网络应用提供访问OSI参考模型环境的手段。因为用户的实际应用多种多样,这就要求应用层采用不同的应用协议来解决不同类型的应用要求,因此应用层是最复杂的一层,使用的协议也最多。典型的协议有用于文件传送的FTP、用于电子邮件的SMTP、用于万维网的HTTP等。
- 表示层:表示层主要处理在两个通信系统中交换信息的表示方式。不同机器采用的编码和表示方法不同,使用的数据结构也不同。为了使不同表示方法的数据和信息之间能互相交换,表示层采用抽象的标准方法定义数据结构,并采用标准的编码形式。数据压缩、加密和解密也是表示层可提供的数据表示变换功能。
- 会话层:会话层允许不同主机上的各个进程之间进行会话。会话层利用传输层提供的端到端的服务,向表示层提供它的增值服务。这种服务主要为表示层实体或用户进程建立连接并在连接上有序地传输数据,这就是会话,也称建立同步(SYN).会话层负责管理主机间的会话进程,包括建立、管理及终止进程间的会话。会话层可以使用校验点使通信会话在通信失效时从校验点继续恢复通信,实现数据同步。
- 传输层也称运输层,传输单位是报文段(TCP)或用户数据报(UDP),传输层负责主机中两个进程之间的通信,功能是为端到端连接提供可靠的传输服务,为端到端连接提供流量控制、差错控制、服务质量、数据传输管理等服务。使用传输层的服务,高层用户可以直接进行端到端的数据传输,从而忽略通信子网的存在。通过传输层的屏蔽,高层用户看不到子网的交替和变化。由于一台主机可同时运行多个进程,因此传输层具有复用和分用的功能。复用是指多个应用层进程可同时使用下面传输层的服务,分用是指传输层把收到的信息分别交付给上面应用层中相应的进程。
- 网络层:网络层的主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。网络层传输单位是数据报。它的功能有路由选择(最佳路径)、流量控制、差错控制和拥塞控制。若所有结点都来不及接受分组,而要丢弃大量分组的话,网络就处于拥塞状态。因此要采取一定措施,缓解这种拥塞。
- 数据链路层:数据链路层的主要任务是把网络层传下来的数据报组装成帧。数据链路层/链路层的传输单位是帧。它的功能有成帧(定义帧的开始和结束)、差错控制(帧错+位错)、流量控制和访问(接入)控制控制对信道的访问
- 物理层:物理层的主要任务是在物理媒体上实现比特流的透明传输。物理层传输单位是比特。透明传输:指不管所传数据是什么样的比特组合,都应当能够在链路上传送。它的功能有定义接口特性、定义传输模式(单工、半双工、双工)、定义传输速率、比特同步和比特编码
1.2.2.2 TCP/IP参考模型
图片.pngARPA在研究ARPAnet时提出了TCP/IP模型,模型从低到高依次为网络接口层(对应OSI参考模型中的物理层和数据链路层)、网际层、传输层和应用层(对应OSI参考模型中的会话层、表示层和应用层)。TCP/P由于得到广泛应用而成为事实上的国际标准。
TCP/IP模型与OSI参考模型有许多相似之处。
- 二者都采取分层的体系结构,将庞大且复杂的问题划分为若干较容易处理的、范围较小的问题,而且分层的功能也大体相似。
- 二者都是基于独立的协议栈的概念。
- 二者都可以解决异构网络的互联,实现世界上不同厂家生产的计算机之间的通信。
两个模型除具有这些基本的相似之处外,也有很多差别。
- OSI参考模型的最大贡献就是精确地定义了三个主要概念:服务、协议和接口,这与现代的面向对象程序设计思想非常吻合。而TCP/P模型在这三个概念上却没有明确区分,不符合软件工程的思想。
- OSI参考模型产生在协议发明之前,没有偏向于任何特定的协议,通用性良好。但设计者在协议方面没有太多经验,不知道把哪些功能放到哪一层更好。TCP/P模型正好相反,首先出现的是协议,模型实际上是对已有协议的描述,因此不会出现协议不能匹配模型的情况,但该模型不适合于任何其他非TCP/IP的协议栈。
- TCP/IP模型在设计之初就考虑到了多种异构网的互联问题,并将网际协议(IP)作为一个单独的重要层次。OSI参考模型最初只考虑到用一种标准的公用数据网将各种不同的系统互联。OSI 参考模型认识到P的重要性后,只好在网络层中划分出一个子层来完成类似于TCP/IP模型中的P的功能。
- OSI参考模型在网络层支持无连接和面向连接的通信,但在传输层仅有面向连接的通信。而TCP/P模型认为可靠性是端到端的问题,因此它在网际层仅有一种无连接的通信模式.但传输层支持无连接和面向连接两种模式。这个不同点常常作为考查点。
1.2.2.3 5层参考模型
学习计算机网络时,我们往往采取折中的办法,即综合OSI参考模型和TCP/P模型的优点,采用一种如图所示的只有5层协议的体系结构,即我们所熟知的物理层、数据链路层、网络层、传输层和应用层。
图片.png- 应用层:支持各种网络应用(FTP、SMTP、HTTP)
- 传输层:进程-进程的数据传输(TCP、UDP)
- 网络层:源主机到目的主机的数据分组路由与转发(IP、ICMP、OSPF等)
- 数据链路层:把网络层传下来的数据报组装成帧(Ethernet、PPP)
- 物理层:比特传输