1.1 计算机网络出现的背景

多样化:计算机自诞生伊始,经历了一系列的演变与发展。大型通用计算机、超级计算机、小型机、个人电脑、工作站、便携式电脑以及现如今的智能手机终端等都是这一过程的产物。

从独立模式到网络互联模式:起初,计算机以单机模式被广泛使用这种方式也叫独立模式。然而随着计算机的不断发展,人们已不再局限于单机模式,而是将个个计算 机连接在一起,形成一个计算机网络。连接多台计算机可以实现信息共享,同时还能在两台物理位置较远的机器之间即时传递信息。

从计算机通信到信息通信:最初,由管理员将特定的几台计算机相连在一起形成计算机网络。例如,将同一公司、同一实验室所持有的计算机接连在一起,或是将有业务往来的企业之间的计算机相连在一起。 总而言之,形成的是一种私有的网络。
随着这种私有网络的不断发展,人们开始尝试将多个私有网络相互连接组成更大的私有网络。这种网络又逐渐发展演变成为互联网为公众所使用。在这个过程中,网络环境俨然已发生了戏剧性的变化。连接到互联网以后,计算机之间的通信已不再局限于公司或部门内部,而现能够与互联网中的任何台计算机进行通信。互联网作为一门新兴技术, 此后,人们不断研发各种互联网接人技术,使得各种五花八门的通信终端都能够连接到互联网,使互联网成为了一个世界级规模的计算机网络,形成了现在这种综合通信环境。

1.2 计算机与网络发展的7个阶段

1.2.1 批处理(Bath Processing)指事先将用户程序和数据装入卡带或磁带,并由计算机按照一定的顺序读取,使用户所要执行的这些程序和数据能够一并批量得到处理的方式。

1.2.2 分时系统(Time Shring System):指多个终端与同一个计算机连接,允许多个用户同时使用一台计算机的系统。分时系统的重要特性包括多路性、独占性、交互性和及时性。

1.2.3 计算机之间的通信:计算机与计算机之间由通信线路连接。

1.2.4 计算机网络的产生:20世纪80年代,一种能够互连多种计算机的网络随之诞生。它能够让各式各样的计算机相互连接。

1.2.5 互联网的普及:个人电脑在诞生之初可以说主要是一种单机模式的工具,而现在它则被更广泛地应用于互联网的访问。而且,无论相距多远,世界各地的人们只要接入互联网,就可以通过个人电脑实现即时沟通和交流。

1.2.6 以互联网技术为中心的时代:互联网的普及和发展着实对通信领域产生了巨大的影响。许多发展到路各不相同的网络技术也都正在向互联网靠拢。曾经一直作为通信基础设施、支撑通信网络的电话网,随着互联网的快速发展,其地位也随着时间的推移为IP(Internet protocol)网所取代,而IP网本身就是互联网技术的产物。

1.2.7 从”单纯建立连接“到”安全建立连接“:正如事物具有两面性,互联网的便捷性也给人们的生活带来了负面向题算机病毒的侵害、信息泄露、网络欺诈等利用互联网的犯罪行为日益增多。在互联网普及的初期。更关注单纯的连接性,以不受任何限制地建立互联网连接为最终目的。然而现在,已不再满足于“单纯建立连接”,而是更为追求“安全建立连接”的目标。

计算机使用模式的演变

年代内容
20世纪50年代批处理时代
20世纪60年代分时系统时代
20世纪70年代计算机通信时代
20世纪80年代计算机网络时代
20世纪90年代互联网普及时代
2000年以互联网为中心的时代
2010年无论何时何地一切皆TCP/IP的网络时代

1.2.8 手握金刚钻的TCP/IP:互联网是由许多独立发展的网络通信技术融合而成。能够使它们之间不断融合并实现统一的正是TCP/IP技术。

1.3 协议

互联网中常用的具有代表性的协议有IP、TCP、HTTP等。“计算机网络体系结构”将这些协议进行系统的归纳。TCP/IP即使IP、TCP、HTTP等协议的集合。除此之外,还有很多其他类型的网络体系结构。

各种网络体系结构:

网络体系结构协议主要用途
TCP/IPIP,ICMP,TCP,UDP,HTTP,
TELNET, SNMP,SMTP…
互联网、局域网
IPX/SPX (Net Ware)IPX,SPX,NPC…个人电脑局域网
Apple TalkDDP,RTMP,AEP,ATP,ZIP…苹果公司现有产品的局域网
DECnetDPR,NSP,SCP…前DEC小型机
OSIFTAM,MOTIS,VT,CMIS/CMIP,
CLNP,CONP…
_
XNSIDP,SPP,PEP…施乐公司网络

1.3.1 协议的必要性:协议就是计算机与计算机之间通过网络实现通信时事先达成的一种“约定”。这种“约定使那些有不同厂商的设备、不同的CPU以及不同的操作系统组成的计算机的之间,只要遵循限相同的协议就能够实现通信。

1.3.2 计算机中的协议:在计算机通信中,事先达成一个详细的约定,并遵循这一约定进行处理尤为重要。这种约定其实就是“协议”。

1.3.3 分组交换协议:指将大数据分割成一个个叫做包(Packet)的较小单位进行传输的方法。
计算机通信会在每一个分组中附加上源主机地址和目标主机地址送给通信线路。这些发送端地址、接受端地址及分组序号写入的部分称为“报文首部”。

1.4 协议由谁规定

随着计算机重要性的不断提高,很多公司逐渐意识到兼容性的重要意义。人们开始者手研究使不同厂商生产的异构机型也能够互相通信的技术。这促进了网络的开放性和多供性。

协议的标准化

为了解决上述问题,ISO(Internetional Organization for Standards,国际标准化组织)制定了一个国际标准OSI(OpenSystems Intercon-nection,开放式通信系统互连参考模型),对通信系统进行了标准化。现在,OSI所定义的协议虽然并没有得到普及,但是在OSI协议设计之初作为其指导方针的OSI参考模型却常被用于网络协议的制定当中。TCP/IP并非ISO所制定的某种国际标准。而是由IETF(Internet Engineering Task Force)所建议的、致力于推进其标准化作业的一种协议。

1.5 协议分层和OSI参考模型

协议分层就如同计算机软件中的模块化开发。OSI参考模型的建议是比较理想化的。它希望实现从第一层到第七层的所有模块,并将它们组合起来实现网络通信。分层可以将每个分层独立使用,即使系统中某些分层发生变化,也不会波及整个系统。而分层的劣势,可能就在于过分模块化、使处理变得更加沉重以及每个模块都不得不实现相似的处理逻辑等问题。
OSI参考模型与协议的含义:
OSI参考模型中定义了每一层的“作用”------定义每一层“作用”的是“协议”------“协议”是约定,其具体内容是“规范”------我们日常所使用的就是遵循各个协议具体“规范”的产品和通信手段。

OSI参考模型中各个分层的作用

应用层:为引用程序提供服务并规定应用程序中通信相关的细节。包括文件传输、电子邮件、远程登录(虚拟终端)等协议
表示层:将应用处理的信息转换为适合网络传输的格式,或将来自下一层的数据转换为上层能够处理的格式。
会话层:负责建立和断开通信连接(数据流动的逻辑通路),以及数据的分割等数据传输相关的管理。
传输层:起着可靠的传输作用。只在双方节点上进行处理,而无需在路由器上处理。
网络层:将数据传输到目标地址。目标地址可以是多个网络通过路由器连接而成的某一个地址。因此这一层主要负责寻址和路由选择。
数据链路层:负责物理层面上互连的、节点之间的数据传输。例如与1个以太网相连的2个节点之间的通信。
物理层:负责0、1比特流(0、1序列)与电压的高低、光的闪灭之间的互换。

1.6 传输方式的分类

面向有连接性和面向无连接型
面向有连接性:在发送数据之前,需要在收发主机之间连接一条通信线路。
面向无连接型:不要求建立和断开连接。发送端可于任何时候自由发送数据。反之,接收端永远也不知道自己会在何时从哪里收到数据。

分组交换与电路交换

网络通信方式大致分为两种电路交换和分组交换。 电路交换技术的历史相对久远,主要用于过去的电话网。而分组交换技术则是一种较新的通信方式,从20世纪60年代后半叶才开始逐渐被人们认可。

在电路交换中,交换机主要负责数据的中转处理。计算机首先被连接到交换机上,而交换机与交换机之间则由众多通信线路再继续连接。因此计算机之间在发送数据时,需要通过交换机与目标主机建立通信电路。我们将连接电路称为建立连接。建立好连接以后,用户就可以一直使用这条电路,直到该连接被断开为止。

分组交换:即让连接到通信电路的计算机将所有发送到数据分成多个数据包,按照一定的顺序排列之后分别发送。有了分组交换,数据被细分后,所有的计算机就可以一齐收发数据,这样也就提高了通信线路的利用率。由于在分组的过程中,已经在每个分组的首部写入了发送端和接收端的地址,所以即使同条线路同时为多个用户 提供服务,也可以明确区分每个分组数据发往的目的地,以及它是与哪台计算机进行的通信。下图是分组交换:

在分组交换中,计算机与路由器之间以及路由器与路由器之间通常只有一条通信线路。因此,这条线路其实是一条共享线路。 在电路交换中,计算机之间的传输速度不变。然而在分组交换中,通信线路的速度可能会有所不同。根据网络拥堵的情况,数据达到目标地址的时间有长有短。另外,路由器的缓存饱和或溢出时,甚至可能会发生分组数据丢失、无法发送到对端的情况。

根据接收端数量分类

单播(Unicast)
字面上,“uni”表示“1”,“cast”意为“投掷”。组合起来就是指1对1通信。
广播(Broadcast)
指将消息从1台主机发送给与之连接的所有其它主机。
多播(Multicast)
多播与广播类似,也是将消息发送多个接受主机。不同之处在于多播要限定某一组主机作为接受端。
任播(Anycast)
任播是指在特定的多台主机中选出一台作为接收端的一种通信方式。

1.7地址

通信传输中,发送端和接收端可以被视为通信主体。它们都由一个所谓“地址”的信息加以标识出来。在实际网络通信中,每一层的协议所使用的地址都不尽相同。例如,TCP/IP通信中使用MAV地址、IP地址、端口号作为地址标识。

地址的唯一性:如果想让地址在通信当中发挥作用,首先需要确定通信的主体。一个地址必须明确地表示一个主体对象。在同一个通信网络中不允许有两个相同地址的通信主体存在,这就是地址的唯一性。

地址的层次性:当地址总数并不是很多的情况下,有了唯一地址就可以定位相互通信的主体。然而,当地址的总数越来越多时,如何高效地从中找出通信的目标地址将成为一个重要的问题。为此发现地址除了具有唯一性还需要具有层次性。MAC地址和IP地址在标识一个通信主体时虽然都具有唯一性,但是它们当中只有IP地址具有层次性
IP 地址由网络号和主机号两部分组成。即使通信主体的IP地址不同,若主机号不同,网络号相同,说明它们处于同一个网段。通常,同处一个网段的主机也都属于同一个部门或集团组织。另一方面,网络号相同的主机在组织结构、提供商类型和地域分布上都比较集中,也为IP寻址带来了极大的方便。这也是IP地址具有层次性的原因。

1.8网络构成要素

搭建一套网络环境要涉及各种各样的电缆和网络设备。如下图所示:

搭建网络的主要设备及其作用

设备作用
网卡使计算机连网的设备(Network Interface)
中继器(Repeater)从物理层上延长网络的设备
网桥(Bridge)/2层交换机从数据链路层上延长网络的设备
路由器(Router)/3层交换机通过网络层转发分组数据的设备
4 ~ 7层交换机处理传输层以上各层网络传输的设备
网关(Gateway)转换协议的设备