回顾一下昨天的内容:世界上第一台路由器,是在基于通用处理器的计算机上,安装了多网卡来实现的。
它的架构框图如下图所示:
如图,各个NIC (Network Interface Card)连接在I/O总线上,CPU处理来自各个网卡的数据包,完成剥离链路层头-根据IP地址查找路由表-根据出接口增加链路层头-发送的过程。
这种最原始的路由器,就像女娲补天炼烧的五彩顽石一样,在工程师手中,逐渐变成了一块美玉……这是后话了。
大家可能会问,路由器如何选择将数据包发送到哪个端口呢?
问题的答案,就在五彩顽石上的纹路中。原来,这纹路其实是用蝌蚪文记载的故事。故事要从女娲补天讲起……
神瑛侍者转世降临人间,便是那风流才子贾宝玉。贾宝玉从小上知天文下知地理,读遍古今中外《知音》《故事会》《金瓶梅》《旧制度与大革命》等鸿篇巨制,谈吐不凡,深得万千少女喜爱。
一日,贾宝玉得到一本《新概念英语》第三册,打开阅读:“Pumas are large, cat-like animals which are found in America……”当读到“Wherever it went, it left behind it a trail of dead deer and small animals like rabbits”的时候,似乎有瞌睡虫钻进宝玉的鼻子,宝玉很快睡着了。
醒来时,宝玉发现自己身处一云雾缭绕的仙境,脚下是一个小岛,小岛在大海之中。海上还有许多小岛,岛之间有廊桥相连:
宝玉耳边响起一个声音:
“贾宝玉——”
“你是何人?”
“我乃警幻仙子……你现在来到了太虚幻境。”
“我该如何回到大观园?”
“你需要尽快找到林黛玉”。警幻仙子悠悠地说。
“大海上有十二个小岛,每个岛上有一位金钗仙子,均在金陵十二钗正册之中。”
“你可以通过每个小岛,但要注意,如果遇到了宝钗,你将永远失去黛玉。”
宝玉如此聪明,一下就听懂了警幻仙子的用意。
“凤姐很丑,我想避开她,可以吗?”
“可以,你自己看着办。”
宝玉开始寻思,脑海中回想起了《算法导论》中的NP-Hard问题。
宝玉问警幻仙子:
“仙子,你可否告诉我,每个岛间,需要多少时间?”
“就不告诉你就不告诉你就不告诉你!”
宝玉寻思:你这还充当小龙人呢!没办法,只能假设每个小岛之间距离都是一样的了。
宝玉突然想起,自己出生时含着的那块玉,可以让自己与其他金钗仙子心灵感应。宝玉有了主意。
欲知宝玉想出了什么办法,请看下回分解。
今天的问题:
在前面的描述中,隐藏了一处错误。计算从宝玉到黛玉的距离并不是NP-Hard问题。如果警幻仙子给宝玉出了什么样的题目,才是NP-Hard问题?
上回问题答案:
PPP协议是异步传输的,那么,接收方通过什么判断一个数据包的开始和终止呢?
答案:PPP通过0x7E字符界定帧,如果传输的数据包中有0x7E,将被转义为0x7D5E, 而0x7D被转义为0x7D5D。