计算机网络概述
我们都知道网络很有用,那么计算机网络到底在21世纪处于什么地位呢?
计算机网络在信息时代的作用
21世纪的一些重要特征是数字化、网络化和信息化,它是一个以网络为核心的信息时代。
大众熟悉的三大类网络有: 电信网络:提供电话、电报及传真等服务; 有线电视网络:向用户传送各种电视节目; 计算机网络:使用户能在计算机之间传送数据文件; 在这其中发展最快起到核心作用的是计算机网络。
互联网+
指“互联网 + 各个传统行业”。 利用信息通信技术以及互联网平台,让互联网与传统行业进行深度融合,创造新的发展生态。 特点:把互联网的创新成果深度融合于经济社会各领域之中,从而大大地提升了实体经济的创新力和生产力。所以21世纪也是一个“互联网+”的时代。
互联网
我们都听过互联网,那么互联网究竟是什么呢?互联网(Internet)是由数量极大的各种计算机网络互连起来的,它已经成为了世界上最大的计算机网络。它的两个基本特点:连通性和共享性。
已经说过了Internet是由各种计算机网络"互连"起来的。下面就来看看怎么"互连"的。注:下面的"网络"若无特殊声明都指"计算机网络"。
网络是由若干结点(node)和连接这些结点的链路(link)组成的。结点可以是计算机、集线器、交换机或路由器组成的。下面我们用一朵云表示一个网络(屏蔽内部的细节),来看下示例:
图1-1(a)给出了一个具有四个结点和三条链路的网络,三台计算机通过三条链路连接到了一个集线器上。不同的网络之间还可以通过路由器互连起来,构成一个覆盖范围更大的计算机网络,这样的网络称为互连网(internet或internetwork),如图1-1(b),因此互连网是网络的网络。
小结:网络把许多计算机连接在了一起,而互连网则把许多网络通过路由器连接在了一起。与网络相连的计算机通常称为主机(host)
互联网基础结构发展的三个阶段
第一个阶段是从单个网络ARPANET向互联网发展的过程。
第二个阶段是建成了三级结构的互联网,从1985年起,美国国家科学基金会NSF就围绕六个大型的计算机建设计算机网络--NSFNET,这是一个三级计算机网络,分为主干网、地区网和校园网(或企业网)
第三个阶段是逐渐形成了多层次的ISP结构的互联网。NSFNET被若干个商用的互联网主干网所取代,互联网的运营不再由政府负责,而是由ISP(互联网服务提供者或互联网服务提供商)运营,如我国的中国电信、中国联通和中国移动。根据ISP提供的服务的覆盖面积以及所拥有的IP地址数目的不同,ISP分为:主干ISP、地区ISP和本地ISP。图1-3是具有三层ISP结构的互联网概念示意图。
互联网的组成
从其工作上的方式可以分为2大块,边缘部分和核心部分。
互联网的边缘部分,是由所有连接在互联网上的主机组成的。这部分是用户直接使用的(用来进行通信和资源共享)。处在互联网边缘的部分就是连接在互联网上的所有主机,这些主机又称为端系统。在网络边缘的端系统之间的通信方式通常可以分为两大类:客户-服务器方式(C/S)和对等方式(P2P)。
C/S:客户(client)和服务器(server)都是指通信中所涉及的两个应用进程。客户-服务方式所描述的进程之间服务和被服务的关系,客户是服务请求方,服务器是服务提供方,两者都需要使用网络核心部分所提供的服务。C/S工作方式示例:
P2P:对等连接 (peer-to-peer,简写为 P2P) 是指两个主机在通信时并不区分哪一个是服务请求方还是服务提供方。只要两个主机都运行了对等连接软件 (P2P 软件) ,它们就可以进行平等的、对等连接通信,双方都可以下载对方存储在硬盘中的共享文档。但是本质还是C/S方式,对等连接方式每一台主机既是客户又是服务器。
互联网的核心部分,是互联网中最复杂的部分,因为核心部分要向网络边缘部分中的大量主机提供连通性,使边缘部分中的主机之间都能够相互通信。而在网络核心中起着特殊作用的是路由器(router),是一种计算机(不叫主机)。路由器是实现分组交换的关键构件,任务是转发分组(网络核心部分中最核心的功能)。那什么是分组交换呢?它是用来干什么的呢?
先来介绍一下分组,分组是将一个报文(要发送的整块数据)划分成一个个更小的等长数据段,在每一个数据段前面再加上一些由必要的控制信息组成的首部后,就构成了一个分组,又称为“包”。分组是在互联网中的传送的数据单元。分组交换是基于存储转发技术的:路由器收到一个分组,先暂时储存一下,检查其首部,查找转发表,按照首部中的目的地址,找到合适的接口转发出去,把分组交给下一个路由器,依次传递直到最终目的的主机。
来看下分组传送怎么在网络中进行的:
现在假定主机H1向主机H5发送数据。主机H1会将分组逐个地发往与它相连的路由器A,此时链路H1到A被占用,路由器A把从主机H1传来的分组放入缓存,然后查找其转发表,假设应转发到链路A-C,于是分组又被传送到了路由器C,路由器C继续如此,最后路由器E将分组交给主机H5。
分组交换的优点:高效、灵活、迅速、可靠。
Tips:各路由器之间必须经常的交换彼此掌握的路由信息,以便创建和动态维护路由器中的转发表,使其能够在整个网络拓扑发生变化时及时更新。路由器存储的是短分组,而且是存储在存储器(内存)中的,以保证较高的交换速率。
计算机网络的类别
按照网络的作用范围划分
广域网 WAN (Wide Area Network):作用范围通常为几十到几千公里。
城域网 MAN (Metropolitan Area Network):作用距离约为 5 ~ 50 公里。
局域网 LAN (Local Area Network) :局限在较小的范围(如 1 公里左右)。
个人区域网 PAN (Personal Area Network) :范围很小,大约在 10 米左右。
Tips:若中央处理机之间的距离非常近(如仅1米的数量级甚至更小些),则一般就称之为多处理机系统,而不称它为计算机网络。
按照网络的使用者划分
公用网 (public network) 按规定交纳费用的人都可以使用的网络。因此也可称为公众网。
专用网 (private network) 为特殊业务工作的需要而建造的网络。
用来把用户接入到互联网的网络
接入网 AN (Access Network),它又称为本地接入网或居民接入网。 接入网是一类比较特殊的计算机网络,用于将用户接入互联网。 接入网本身既不属于互联网的核心部分,也不属于互联网的边缘部分。 接入网是从某个用户端系统到互联网中的第一个路由器(也称为边缘路由器)之间的一种网络。
计算机网络的性能
计算机网络的性能一般是指它的几个重要的性能指标,但除了这些重要的性能指标外,还有一些非性能特征也对计算机网络的性能有很大的影响。
计算机网络的性能指标
主要包括速率 带宽 吞吐率 时延 时延带宽积 往返时间 RTT 利用率。
速率是计算机网络中最重要的一个性能指标,指的是数据的传送速率,它也称为数据率 (data rate)或比特率 (bit rate)。速率的单位是 bit/s,或 kbit/s、Mbit/s、 Gbit/s。
带宽:在计算机网络中,带宽用来表示网络中某通道传送数据的能力。表示在单位时间内网络中的某信道所能通过的“最高数据率”。单位是 bit/s ,即 “比特每秒”
吞吐量 (throughput) 表示在单位时间内通过某个网络(或信道、接口)的数据量。 吞吐量更经常地用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。 吞吐量受网络的带宽或网络的额定速率的限制。
时延 (delay 或 latency) 是指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。分为:(1) 发送时延 (2) 传播时延 (3) 处理时延 (4) 排队时延。
发送时延,也称为传输时延。也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间。公式:发送时延=数据帧长度(bit)/发送速率(bit/s)
传播时延:电磁波在信道中需要传播一定的距离而花费的时间。公式:传播时延=信道长度(米)/信号在信道上的传播速率(米/秒)
处理时延:主机或路由器在收到分组时,为处理分组(例如分析首部、提取数据、差错检验或查找路由)所花费的时间。
排队时延:分组在路由器输入输出队列中排队等待处理所经历的时延。 排队时延的长短往往取决于网络中当时的通信量。
来看下四种时延的示意图:
时延带宽积:又称为以比特为单位的链路长度。 时延带宽积 = 传播时延*带宽。只有在代表链路的管道都充满比特时, 链路才得到了充分利用。
往返时间RTT:往返时间表示从发送方发送数据开始,到发送方收到来自接收方的确认,总共经历的时间。在互联网中,往返时间还包括各中间结点的处理时延、排队时延以及转发数据时的发送时延。
利用率:分为信道利用率和网络利用率。信道利用率指出某信道有百分之几的时间是被利用的(有数据通过)。完全空闲的信道的利用率是零。 网络利用率则是全网络的信道利用率的加权平均值。 信道利用率并非越高越好。当某信道的利用率增大时,该信道引起的时延也就迅速增加。来看下时延与利用率的关系:
计算机网络的非性能特征
它主要包括:费用 质量 标准化 可靠性 可扩展性和可升级性 易于管理和维护
计算机网络体系结构
计算机网络的体系结构 (architecture) 是计算机网络的各层及其协议的集合。 体系结构就是这个计算机网络及其部件所应完成的功能的精确定义。
Tips:体系结构是抽象的,而实现却是具体的,真正在运行的计算机硬件和计算机软件。
协议与划分层次
在计算机中要做到有条不紊地交换数据,就必需遵守一些事先约定好的规则。这些规则明确规定了所交换的数据的格式以及有关的同步问题(同步含有时序的意思)。 网络协议 (network protocol),简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定。
网络协议主要由以下三个要素组成:
语法:数据与控制信息的结构或格式 。
语义:需要发出何种控制信息,完成何种动作以及做出何种响应。
同步(时序):事件实现顺序的详细说明。
为了说明划分层次的好处,我们来看一个示例:主机 1 向主机 2 通过网络发送文件。 可以将要做的工作进行如下的划分: 第一类工作与传送文件直接有关( 确信对方已做好接收和存储文件的准备。 双方已协调好一致的文件格式)。 两个主机将文件传送模块作为最高的一层 ,剩下的工作由下面的模块负责。
对于文件传送模块:
再设计一个通信服务模块用于通信,减少文件传送模块的复杂度。
我们再添加一个网络接入模块,网络接入模块负责做与网络接口细节有关的工作,例如:规定传输的帧格式,帧的最大长度等。 用于减少通信服务模块的复杂度。
由上面的这个例子,可以粗略地知道分层的好处。
好处:各层之间是独立的、灵活性好、结构上可分割开、易于实现和维护、能促进标准化工作。
但也带来了缺点:降低效率、有些功能会在不同的层次中重复出现因而产生了额外开销。
在计算机网络中,分层后,各层次间需要完成的功能通常有以下一些(可以不止一种)。
① 差错控制:使相应层次对等方的通信更加可靠。
② 流量控制:发送端的发送速率必须使接收端来得及接收,不要太快。
③ 分段和重装 :发送端将要发送的数据块划分为更小的单位,在接收端将其还原。
④ 复用和分用:发送端几个高层会话复用一条低层的连接,在接收端再进行分用。
⑤ 连接建立和释放:交换数据前先建立一条逻辑连接,数据传送结束后释放连接。
具有五层协议的体系结构
OSI 的七层协议体系结构的概念清楚,理论也较完整,但它既复杂又不实用。
TCP/IP 是四层体系结构:应用层、运输层、网际层和网络接口层。
但最下面的网络接口层并没有具体内容。因此往往采取折中的办法,即综合 OSI 和 TCP/IP 的优点,采用一种只有五层协议的体系结构 。
在这里为了简洁地介绍下五层协议体系结构中各层次的功能,不妨以主机1向主机2传送数据的过程来了解。
Tips:OSI 参考模型把对等层次之间传送的数据单位称为该层的协议数据单元 PDU (Protocol Data Unit)。这个名词现已被许多非 OSI 标准采用。 任何两个同样的层次把数据(即数据单元加上控制信息)通过水平虚线直接传递给对方。这就是所谓的“对等层”(peer layers)之间的通信。 各层协议实际上就是在各个对等层之间传递数据时的各项规定。
实体、协议、服务和服务访问点
实体 (entity) 表示任何可发送或接收信息的硬件或软件进程。
协议是控制两个对等实体进行通信的规则的集合。 在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。 要实现本层协议,还需要使用下层所提供的服务。
服务访问点:同一系统相邻两层的实体进行交互的地方,称为服务访问点 SAP (Service Access Point)。 服务访问点SAP是一个抽象的概念,它实际上就是一个逻辑接口。
来看下相邻2层之间的关系示意图:
Tips:协议的实现保证了能够向上一层提供服务。 本层的服务用户只能看见服务而无法看见下面的协议。即下面的协议对上面的服务用户是透明的。 协议是“水平的”,即协议是控制对等实体之间通信的规则。 服务是“垂直的”,即服务是由下层向上层通过层间接口提供的。 上层使用服务原语获得下层所提供的服务。
参考文献
计算机网络 / 谢希仁编著.——7版