五个兄弟的电脑,都可以用上“双车道”以及拥有自己的名字了,终于可以像样一点地通信了。

    能用之后就要想到到优化,而且为了全面地保护小D的纯真,他们还是决定做点什么。那从和入手呢?
    每个人发的消息,虽然会被“网卡”给忠实地挡在外面,但是,网卡被改造一下之后,便还是可以看到其他人私聊的内容。而且,当小A和小B发送一部电影的时候,其他人的网卡可能就要这样阻挡一部电影。而在这个时候,假如又有人在相互通信,网卡又要挡。要是再多来几个人,网卡要挡的消息会成指数增长,可能到后面就会像洪水那样奔腾而来。网卡固然有三头六臂,也难以抵挡这么多“***”,而且最主要的是,这些消息大部分都不是发给自己的,就像在一堆报纸里面,找特定的某一张一样,费力不讨好。
怎么解决上面描述的,“单播泛洪”这个问题
    小A和小B,由于会点底层编程基础,于是想写一个程序来对一对一的传送消息进行隔离。小A把自己电脑的网卡拔了下来(期间还偷偷地拔了小D的网卡),插到了小B的电脑上面。这样,就有一台“
插有三张网卡
”的电脑了。然后编程就开始了,他们用了一个下午搞定了一个程序。这个程序想在五个电脑之间做一个
中转站
。小A送给小B的电影,在小D的那个线路上连出现都不能!所以,他们这么办:
    一看是送给小B的,就直接发送到连接到小B的那根网线上面去。于是做了一个映射表,把每个电脑的名字和对应的连接端口对应起来。比如,给小A的,就从网卡1出去。给小B的,就从网卡2出去。
    可是问题又来了,如果,小A的电脑插到了小B的端口了呢?那个表又要去改一次,多么麻烦。这个不够自动化,于是,就琢磨着让它自己去学习。一开始把,那张端口和MAC地址的对应表,也叫
CAM表
设置为空。然后,谁发消息过来,就把它的MAC地址和这个端口地址对应。当然,这种对应关系也不是永久的,一般在该端口又没有电脑连入的时候,再等个三分钟就把和它的该条段应关系删除。
     然后,在发送的时候,数据里面不但要多放入自己的MAC地址,还要放入对方的MAC地址。中转站收到数据之后,查自己的CAM表(也就是端口和MAC地址的映射表),如果里面没有该表的对应表项的话,那就问一下除了发过来这个人之外的所有人。你们谁是小B呀,请回答一下。然后,小B老老实实地回答的时候,中转站又可以把小B的MAC地址学习到了。就这样,去可以慢慢地建立起来“所有对应关系”了。
    于是,就可以只让,
有目的的消息,送到特定的网线上,其他的网线就不会收到与自己无关的消息了
。于是,他们把这台“有多个网卡的,可以根据MAC地址转发特定消息的电脑”叫做【网桥】,也就是交换机他爸。