6.1 计算机网络概述
计算机网络是计算机技术与现代通信技术密切结合的产物,是随着社会对信息共享和信息传递的要求而发展起来的。
计算机网络从20世纪60年代开始发展至今,经历了从简单到复杂、从单机到多机、由终端与计算机之间的通信演变到计算机与计算机之间的直接通信,其发展经历了四个阶段:远程联机阶段、互联网络阶段、标准化网络阶段、网络互联与高速网络阶段。
1)远程联机阶段
这一阶段可以追溯到20世纪50年代,是由一台大型计算机充当主机(host),与若干台远程终端(terminal)通过通信线路连接起来,构成面向终端的“计算机网络”。在此方式下,用户通过终端设备将数据处理的要求通过通信线路传给远方主机,经主机处理后再将结果传回用户。例如20世纪60年代美国的航空联网订票系统,用一台大型主机连接了遍布全美2000多个用户终端。由于当时的终端只是一些输入与输出设备,本身不具备数据处理能力,所以这一阶段的主机唱终端式的网络,严格来说还不能算作真正意义上的计算机网络。
2)互联网络阶段
20世纪60年代中期,英国国家物理实验室(National Physics Laboratory,NPL)的戴维斯(Davies)提出了分组(packet)的概念。1969年,美国国防部高级研究计划署(Advanced Research Projects Agency,APPA)研制出了分组交换网APPANET(通常称为APPA网),将分布在不同地区的多台计算机主机用通信线路连接起来,彼此交换数据、传递信息,形成了真正意义上的计算机网络,其核心技术则是分组交换技术。起初,APPANET只有4个节点,1973年发展到40个节点,1983年已达到100多个节点。APPANET通过有线、无线和卫星通信线路,覆盖了从美国本土到欧洲夏威夷的广阔地域。APPANET是这一阶段研究的典型代表,也是计算机网络技术发展的一个重要里程碑。
APPANET的研制成功,为促进网络技术的发展起了重要作用。它促进了网络体系结构与网络协议的发展,其研究成果为网络理论体系的形成奠定了基础,同时也为Internet的形成奠定了基础。APPANET投入运行,使计算机网络的通信方式由终端与计算机之间的通信发展到计算机与计算机之间的直接通信,从此计算机网络的发展就进入了一个崭新时代。
3)标准化网络阶段
从20世纪70年代开始,计算机网络大都采用直接通信方式。1972年后,国际上各种以太网、局域网、城域网、广域网等迅速发展,各个计算机生产商纷纷发展各自的计算机网络系统。网络系统是非常复杂的系统,计算机之间相互通信涉及许多复杂的技术问题。因此,随之而来的是计算机网络体系与网络协议的国际标准化问题。
为了实现计算机网络通信,实现网络资源共享,计算机网络采用了分层解决问题的方法。1974年,美国IBM公司公布了它研制的系统网络体系结构(System Network Architecture,SNA)。不久,各种不同的分层网络系统体系结构相继出现。
对各种体系结构来说,同一体系结构的网络产品互联是非常容易实现的,而不同系统体系结构的产品却很难实现互联。但社会的发展迫切要求不同体系结构的产品都能够很容易地得到互联,人们迫切希望建立一系列的国际标准,渴望得到一个“开放”系统。为此,国际标准化组织(International Standards Organization,ISO)于1977年成立了专门的机构来研究该问题,并且在1984年正式颁布了“开放系统互联基本参考模型”(Open System Interconnection Basic Reference Model)的国际标准OSI,这就产生了第三代计算机网络。
4)网络互联与高速网络
进入20世纪90年代,计算机技术、通信技术以及建立在互联计算机网络技术基础上的计算机网络技术得到了迅猛发展。特别是1993年美国宣布建立国家信息基础设施(National Information Infrastructure,NII)后,全世界许多国家纷纷制订和建立本国的NII,从而极大地推动了计算机网络技术的发展,使计算机网络又进入一个崭新的阶段。这就是计算机网络互联与高速网络阶段。
目前,全球以Internet为核心的高速计算机互联网络已经形成,Internet已经成为人类最重要的、最大的知识宝库。网络互联和高速计算机网络就成为第四代计算机网络。
6.1.1 计算机网络的概念
关于计算机网络的最简单定义是:一些相互连接的以共享资源为目的的、自治的计算机的集合。
从逻辑功能上看,计算机网络是以传输信息为基础目的,用通信线路将多个计算机连接起来的计算机系统的集合。一个计算机网络组成包括传输介质和通信设备。
从用户角度看,计算机网络是这样定义的:存在着一个能为用户自动管理的网络操作系统,有它调用完成用户所调用的资源,而整个网络像一个大的计算机系统一样,对用户是透明的。
一个比较通用的定义是:计算机网络是利用通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,以功能完善的网络软件及协议实现资源共享和信息传递的系统。
从整体上来说,计算机网络是指将分布在不同地理区域的计算机与专门的外部设备用通信线路连接起来,在网络操作系统、网络管理软件及网络通信协议的管理和协调下,使众多的计算机实现资源共享和信息传递的大规模、功能强的计算机系统。
6.1.2 计算机网络的主要功能
计算机网络的发展,正迅速改变数据处理的面貌,不仅使计算机世界日新月异,而且改变着人们和社会的活动方式。就目前来讲,主要具有如下5个功能:
1)资源共享
资源共享是计算机网络的一个核心功能,它突破了地理位置的局限性,使网络资源得到充分利用。凡是入网用户均能享受网络中各个计算机系统的各种资源,包括硬件资源、软件资源、数据资源和信道资源。
2)数据通信
处理机间通信是计算机网络最基本的功能之一,它使不同地区的网络用户可以通过网络进行对话,以实现计算机与计算机、计算机与终端之间相互交换数据和信息。计算机网络主要提供传真、电子邮件、电子数据交换(EDI)、电子公告牌(BBS)、远程登录和浏览等数据通信服务。
3)提高计算机的可靠性和可用性
网络中的每台计算机都可通过网络相互成为后备机。一旦某台计算机出现故障,它的任务就可由其他的计算机代为完成,这样可以避免在单机情况下,一台计算机发生故障引起整个系统瘫痪的现象,从而提高系统的可靠性。而当网络中的某台计算机负担过重时,网络又可以将新的任务交给较空闲的计算机完成,均衡负载,从而提高了每台计算机的可用性。
4)分布式处理
这是指通过算法将大型的综合性问题交给不同的计算机同时进行处理,而不是集中在一台大型计算机上。用户可以根据需要合理选择网络资源,就近快速地进行处理。这样不仅可以降低软件设计的复杂性,而且还可以大大提高工作效率和降低成本。
5)集中管理
对地理位置分散的组织和部门,可以通过计算机网络来实现集中管理,如数据库情报检索系统、交通运输部门的订票系统、军事指挥系统等。
6.1.3 计算机网络的分类
计算机网络由于自身的特点,其分类方法有多种,通常可以按照网络的覆盖范围分类、按照传输介质分类、按照通信信道分类、按照传输技术分类等。较常使用的分类方法是根据网络连接的地理范围,将计算机网络分为局域网、城域网和广域网。
1)局域网(Local Area Network,LAN)
局域网又称局部网,是局部地区网络的简称,也是最常见、应用最广的一种网络。局域网在计算机数量配置上没有太多的限制,少的可以只有两台,多的可达几百台。一般来说,在企业局域网中,工作站的数量在几十到两百台次左右。在网络所涉及的地理距离上一般来说可以是几米至10km以内。局域网一般位于一个建筑物或一个单位内,不存在寻径问题,不包括网络层的应用。
这种网络的特点就是:连接范围窄、用户数少、配置容易、连接速率高。目前局域网最快的速率要算现今的10G以太网了。IEEE的802标准委员会定义了多种主要的LAN网:以太网(Ethernet)、令牌环网(Token Ring)、光纤分布式接口网络(FDDI)、异步传输模式网(ATM)以及最新的无线局域网(WLAN)。
2)城域网(Metropolitan Area Network;MAN)
城域网一般来说是在一个城市,但不在同一地理小区范围内的计算机互联。这种网络的连接距离可以为10~100km,它采用的是IEEE802.6标准。与局域网相比,城域网扩展的距离更长,连接的计算机数量更多,在地理范围上可以说是局部网络的延伸。在一个大型城市或都市地区,一个城域网通常连接着多个局域网,如连接政府机构的LAN、医院的LAN、电信的LAN、公司企业的LAN等。光纤连接的引入使MAN中高速的LAN互联成为可能。
3)广域网(Wide Area Network;WAN)
广域网也称为远程网,所覆盖的范围比城域网(MAN)更广,它一般是在不同城市之间的LAN或者MAN网络互联,地理范围可从几百千米到几千千米。因为距离较远,信息衰减比较严重,所以这种网络一般是要租用专线,通过IMP(接口信息处理)协议和线路连接起来,构成网状结构,解决循径问题。这种城域网因为所连接的用户多,总出口带宽有限,所以用户的终端连接速率一般较低,通常为9.6Kbps~45Mbps,如我国邮电部的CHINANET、CHINAPAC和CHINADDN网。
6.1.4 计算机网络的逻辑结构
计算机网络要完成数据处理与数据通信两大任务,因此,在结构上可从逻辑功能上将计算机网络划分为资源子网和通信子网两大组成部分。
在Internet中,用户计算机需要通过校园网、企业网或Internet服务商连入地区主干网,地区主干网连入国家间的高速主干网,就形成了一种由路由器互联的大型、层次结构的互联网络。现代计算机网络简化结构如图6.1所示。
1)通信子网
通信子网是指网络中实现网络通信功能的设备及其软件的集合。通信设备、网络通信协议、通信控制软件等属于通信子网,是网络的内层,负责信息的传输,主要为用户提供数据的传输、转接、加工、变换等。通信子网的主要任务是将各种计算机互联起来,完成数据传输、交换和通信处理。就局域网而言,通信子网由网卡、线缆、集线器、中继器、网桥、路由器、交换机等设备和相关软件组成。在广域网中,通信子网由一些专用的通信处理机(即节点交换机)及其运行的软件、集中器等设备和连接这些节点的通信链路组成。
2)资源子网
资源子网是计算机网络的外层。资源子网的主体是计算机(也称端系统)、终端设备和各种软件资源(包括用户的应用程序)。就局域网而言,资源子网由连网的服务器、工作站、共享的打印机和其他设备及相关软件所组成。在广域网中,资源子网由上网的所有主机及其外部设备组成。

图6.1 现代计算机网络简化结构
6.1.5 计算机网络的拓扑结构
计算机网络的拓扑结构,是指网上计算机或设备与传输媒介形成的节点与线的物理构成模式,主要由通信子网决定。网络布线非常复杂,在计算机网络中应用拓扑学中的几何图形将网络中的计算机和通信设备抽象成节点,将节点与节点之间的通信线路抽象成链路,这样便可以将计算机网络抽象成由点和线组成的图形,这种几何图形称为计算机网络拓扑结构图。其中最典型的拓扑结构有总线型、环型、星型、树型和混合型几种。
1)总线型拓扑结构
总线型拓扑结构是指所有节点共享一根传输总线(即一条数据通道),所有的站点都是通过硬件接口连接到这根传输线上。其中一个节点是网络服务器,由它提供网络通信及资源共享服务,其他节点是网络工作站(即用户计算机)。网络中的多个处理机、存储器和外围设备等共享同一通路,因而总线成了数据交换的唯一公共通路,如图6.2所示。

图6.2 总线型拓扑结构
总线型结构的优点:简单、灵活、容易布线、可靠性高、容易扩充,不需要中央控制器,数据通道的利用率高,一个站点发送的信号其他站点都可接收,而且某个站点自身的故障一般不会影响整个网络。所以,总线型网络结构是目前使用最广泛的结构,也是最传统的一种主流网络结构。
总线型结构的缺点:故障诊断和故障解除很困难,而且总线故障会导致整个系统的崩溃。此外,因为总线上同时连接了多个节点,在任一时刻只允许一个节点使用总线进行数据传输,其他节点只能处于接收或等待状态,效率比较低。
2)环型拓扑结构
环型网中各结点通过环路接口连在一条首尾相连的闭合环型通信线路中,如图6.3所示。数据沿着环依次通过每台用户计算机直接到达目的地,环路上任何结点均可以请求发送信息。请求一旦被批准,便可以向环路发送信息。由于环线公用,一个节点发出的信息必须穿越环中所有的环路接口,信息流中目的地址与环上某结点地址相符时,信息被该节点的环路接口所接收,而后信息继续流向下一环路接口,直到流回发送该信息的环路接口节点为止。环型拓扑结构特别适合实时控制的局域网系统。

图6.3 图环型拓扑结构
环型结构的优点:能连接各种计算机设备(从大型机到PC机),采用的电缆长度短,可采用光纤传输介质,并且控制软件简单,实时性强。
环型结构的缺点:网络的故障检测困难,网络中任何一个节点或者线路的故障都会引起整个网络的中断,网络节点的加入、退出及环路的维护和管理都比较复杂。
3)星型拓扑结构
星型拓扑结构是指各工作站以星型方式连接成网。网络有中央节点,其他节点(工作站、服务器)都与中央节点直接相连,如图6.4所示。这种结构以中央节点为中心,因此又称为集中式网络。

图6.4 星型拓扑结构
星型结构的优点:简单、很容易在网络中增加新的站点,容易实现数据的安全性和优先级控制及网络监控,外围节点的故障对系统的正常运行没有影响。
星型结构的缺点:各个外围节点之间的互相通信必须通过中央节点,中央节点出现故障会使整个网络不能正常工作。
4)树型拓扑结构
树型拓扑结构是星型结构的扩展,由根节点和分支节点构成。在树型结构的网络中,所有节点形成了一个层次化的结构,如图6.5所示。“树”中的各个节点都是计算机,任意两个节点之间不产生回路,每条通路都支持双向传输。一般来说,其层次结构不宜过多,以免转接开销过大,使高层节点的负荷过重。

图6.5 树型拓扑结构
树型结构的优点:与星型结构相比,树型结构的通信线路总长度短,成本低,易于推广,适用于分级管理和控制系统。因此,现代Internet基本上都采用这种结构。
树型结构的缺点:该结构对根节点的依赖性太大,当树根节点出现故障时,全网不能正常工作,因此要求根节点和各层的分支节点具有较高的可靠性。
5)混合型拓扑结构(网状拓扑结构)
网络拓扑结构中的所有节点之间的连接是任意的,没有规律。目前实际存在与使用的广域网基本都采用网状拓扑结构,如图6.6所示。

图6.6 网状拓扑结构
网状结构的优点:可靠性高、容错能力强。
网状结构的缺点:结构复杂,必须采用路由选择算法和流量控制方法,并且不易维护和管理。