计算机技术的发展,推动了人们对网络通信与交换方式的思考,把通信问题看成是计算机与计算机之间的数据交换和通信,用数据表达各种信息:字符数据、音频数据、视频数据等。
1961—1962年期间,伦纳德·克兰罗(Leonard Kleinrock)[1]在进行博士研究工作期间,提出了包网络(packet networks)的数学理论。
1959年,Paul Baran[2]在美国兰德(RAND)公司提出设计可生存(survivable)的通信系统,保证美国的通信网络在受到核打击情况下仍能保持畅通。Baran和同事们开发了仿真实验系统,对网络连接的结点变化情况进行测试。即n维网络连接性是每个结点具有n-1个连接通路的图。仿真实验采用随机地杀掉“结点”,测试剩余结点保持的可连通的百分比。仿真结果发现,当n≥3后,可恢复性明显增加。即使损失50%的结点,这种网络仍具有明显的冗余性。
Donald Watts Davies于1965年在英国国家物理实验室工作时,模仿邮政网络的信件交换网,提出了用计算机构造数据包,以数据包的形式实现打包和拆包进行自动交换的概念[3]。
我们用图5-2进行说明。假定,发件者Host1向接收者Host2发送一段文字“Green Blue Red”,Host1与Host2之间有若干个转发结点,例如,Node A 到Node H,而Host1仅与Node A 有连接,Host2与Node E、Node F和Node H 有直接连接。
Host1把“Green Blue Red”送到Node A,在Node A 上,把文字拆成“Green”“Blue”和“Red”,之后寻找多条通向Host2的通路,并把“Green”“Blue”和“Red”发向下一个结点,例如,分别发向Node B、Node D、Node E。这样,“Red”可能经过结点A-B-C-F 到达Host2,“Blue”可能经过结点A-D-E-F到达Host2,“Green”可能经过结点A-D-E-G-H 到达Host2。然后,在Host2上,按顺序重新装成“Green Blue Red”文字。
从Host1到Host2 有许多路由或邮路(Rout),只要有一个路由是通的,文字就能从Host1传到Host2。中间的结点称为路由器(Router),其主要的目的是:存储接收到的文字,查找从该结点到目的地(这里是Host2)的路由(通道),把文字转发给路由上的下一个结点。对此,每个路由器上必须维护一张地址表,该表记录通路的路由地址。
进一步假设,图5-2上有多个点进行信息的发送和接收,那么,每个路由器上的地址表就会更复杂,且要动态地维护这张表,因为有些路由器或路由器之间的线路可能会不通,或被修理后又被接通了。这样,用数据包方式构造一个网络体系,需要解决以下几个基本问题:(www.xing528.com)
图5-2 文字段分包、传递、再组包的过程
(1)数据的组包;
(2)数据的分片和重装;
(3)路由的选择;
(4)网络服务与管理。
本节讨论前三个问题。网络服务与管理问题在第5.6节讨论。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。