xuyingxiao的个人博客分享 http://blog.sciencenet.cn/u/xuyingxiao

博文

新桃花源记(3)——聪明的指路人

已有 3293 次阅读 2011-5-6 09:11 |个人分类:科普|系统分类:科普集锦| style, 路由器, 桃花岛, 桃花源记

 

桃花岛的各个房间遍布传话人后,就变得太吵了,尤其很多人爱广而告之,动不动就说“大家都听好咯”,弄得大家心烦意乱。

 

隔离,我把大家分到几个村庄,一个村庄作为一个网络,村庄里面才允许广而告之。村庄之间怎么传话呢? 通过指路人(路由器),指路人之间可以互相通话。一个村庄可以用多个指路人,指路人之间也很复杂地连接起来。下面这个图简化一下,三个村庄,每个村庄一个指路人,三个指路人一一相连(通过话筒喇叭互相传话,如果不怕慢的话,甚至可以通过人做信使在指路人之间传话)。

 

 

image

 

宋集老徐的电脑想和吴集老王的电脑说话,就开腔了:“宋集指路人听好咯,我是老徐,要和吴集的老王讲话”。宋集的指路人就把话传给吴集指路人,吴集指路人再把话传给吴集的老王。

 

哪天吴集和宋集之间的话筒A-B连线段了,或者话筒A或B坏了怎么办? 宋集指路人就把话传给杨庄指路人,杨庄指路人再把话传给吴集指路人,宋集指路人最后把话传给吴集的老王。

 

指路人怎么如此聪明,知道要找杨庄指路人可以最后把话传到吴集?

 

原来,指路人之间不断地向能说上话的其他指路人报告自己的信息。比如吴集指路人会告诉所连接的杨庄及宋集的指路人:我连着吴集,到吴集一步就到了。

             

宋集指路人在喇叭A听到这句话,就知道增加一步就可以到吴集,于是心里记下了指路信息:

                        到吴集,向话筒A说话,两步就到了。

 

杨庄指路人在话筒喇叭D听到这句话,也心里记下了:
                        到吴集,向话筒D说话,两步就到了。

 

各个指路人继续互通信息。比如杨庄指路人继续通过话筒E传话: 我连着杨庄,到杨庄一步就到了。我也能到吴集,但要通过别人转,两步就到了。

 

宋集的指路人通过喇叭F听到这个消息,又记下了:

                     到杨庄,向话筒F说话,两步就到了。

                     到吴集,向话筒F说话,三步就到了。

且慢,之前心里已经记过“到吴集,向话筒A说话,两步就到了”,现在又知道“到吴集,向话筒F说话,三步就到了”。那么有人找吴集的人,到底向话筒A还是F说话?

 

当然选步数最少的,2<3,于是保留“到吴集,向话筒A说话,两步就到了”。

 

当然也可以根据其他条件来,比如如果用话筒A要收费而用话筒F不收费的话,或者话筒AB之间太忙了,那就用话筒F,。

 

这样每个指路人都可以在心里形成一个指路表,我们称为“路由表”。根据这个表,不管谁要和哪个村庄的人说话,指路人都可以通过一个合适的路径最终把话传到。

 

这个指路表可以动态更新,比如如果话筒A或B坏了、或者话筒A和B之间的线被恐怖分子破坏了,指路人之间就会重新互通一下消息。这时宋集的指路人就不会在喇叭A里听到吴集指路人发来的信息,心里就不会记下:“到吴集,向话筒A说话,两步就到了”,而是根据喇叭F听到的消息记下“到吴集,向话筒F说话,三步就到了。”实际上,指路人之间隔一段时间就会通过话筒告诉直接通话的其他指路人:我还活着。这样,可以一旦发生问题,就可以及时更新指路的信息。扯开点,这种做法其实到处都有,我父母每年要回一趟老家验一下证才能继续领退休金,本质上和这个一样,就是告诉别人:我还活着。

 

这样以不变应万变,按照这种方式,只要恐怖分子没把所有的路都断了,总有一条路可以把话传到。

 

后续的故事:

防火墙的故事:指路人和谁有仇时,凡是老徐说的话一概不理,或者凡是宋集发来的话一概不理、凡事要和吴集的人说话的一概不理、凡事要找吴集老王的一概不理、凡事说的话中有敏感字的一概不理……,于是我们就说被墙了。其实除了指路人,网络的各个层次(包括上次的传话人等)都可以成为Great FireWall的一部分。

 

指路人本身的修为:指路人之间如何更有效地交换指路信息,可以研究更好的做法。有很多路可以走的时候,如何根据设定的条件找一条最佳的路? 当指路人太忙的时候,要传的话得排队,如何保证最重要信息先传出去?

 

指路人开后门:指路人预先留着一点资源在手里,为特殊情况开开后门,比如领导优先、交钱多的有钱人优先等。还可以把想说话的人分成三六九等,不同等级提供的服务不同。没办法,资源有限时,人人生而平等就只能是空话。

 

分层:话筒喇叭属于物理层,传话人属于数据链路层,指路人属于网络层,再往上还可以划分更多层次,直至应用层。随着社会越来越复杂,出现不同阶层是历史的必然。每个层次有自己的地址格式、有自己的协议、有自己的一套差错处理、控制机制。层和层之间有一套通信的方式。更重要的是,可以替换,以后有了网卡,就把我的话筒喇叭换成网卡网线,每个层次不管怎么替换,其他层次不会受到直接影响。就像领导换了,小民还和以前一样听到什么指令做什么事就行了。此外就像领导不喜欢越级上访,胡哥一般也不会和我们小民直接说上话一样,这里也是只提倡上下层之间直接对话而反对跨层通信的,不然的话微软好不容易开发了个IE,你换个网卡它就得重新为你开发软件,那多麻烦。

 

到了应用层,就越发大家各显神通开天辟地了,到处有门,打开以后都是全然一新的天地,到处是故事,一辈子也研究不完,一辈子也讲不完,有创造力你就尽情地使吧,所有的学科最后都能连接起来。

 

要说的故事太多反而就不知该讲什么故事了,无论讲哪个都觉得讲不好也讲不全,只能讲个冰山一角,我的桃花源记只得就此打住,再写就只能直接跳到第n个回合过过瘾了。

 

 

 

 



https://blog.sciencenet.cn/blog-504160-441018.html

上一篇:IT老江湖的标志
下一篇:新桃花源记(N)——你是人吗?
收藏 IP: 65.60.175.*| 热度|

1 陈辉

发表评论 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-9-25 02:41

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部