原来以太网压根不需要交换机

计网学到过CSMA/CD策略。这是一种冲突检测算法,用来检测物理信道上的冲突,并智能进行回避。但是老师和课本都没提到CSMA/CD应用在哪里、起到了怎样的效果。因为以我浅薄的认知,以太网是通过交换机和路由器组建的,也从未听说有“冲突”的状况。不过应用在802.11上的CSMA/CA则好理解的多,因为无线电通信的干扰是很容易理解的,多个设备向路由器发射无线信号时,自然会发生冲突。

但是有线网络,冲突个什么劲儿呢?这就要从以太网(aka 802.3)说起了。以太网最初的标准诞生于1976年。彼时大行其道的网络协议还是令牌环。以太网与之相比,在性能上其实没有理论优势。一个4M的令牌环网络和一个10M的以太网数据传送率相当,一个16M的令牌环网络的数据传送率接近一个100M的以太网(维基百科)。但是以太网有一个很重要的特性:成本低廉。令牌环网络是环形拓扑,并且采用时分多址的原则进行多路复用。拿到令牌的节点无论是否有数据传输,都要经过获取令牌、交出令牌的动作。这些过程会导致网络的总吞吐下降。更重要的是,令牌环网并不够“端原则”,它需要专门的设备(多站访问部件MAU)来支撑网络。同时环形网络的可靠性严重依赖任何一个成员的可靠性。一些智能的MAU可以在环中跳过无效的节点,但【中央节点】的概念却依然客观存在,并且一个节点突然离开也可能造成网络短暂的不可用。

反观以太网,则是一种具有自组织性质的网络——这能有效降低部署小型网络的成本,对商用推广有很大的好处。以太网是总线结构,早年使用同轴电缆作为物理载体。众所周知,同轴电缆常用于电视广播信号,一根同轴电缆上的信号能被所有成员接收到。因此其天然就是互联的,且不需要任何中继的处理。也正因如此,冲突恐怕无法避免。于是以太网加入了CSMA/CD算法进行冲突检测和避免。当节点要发送消息时,会守听信道一段时间,确定没有人在传输数据。即使发生了冲突,节点间也会自动按一定的规则进行退避,等待其他节点完成发送。可以发现,从始至终,都不存在所谓的“中央节点”来协调网络。若干个节点只要接入同一个物理信道,就可以自行组织成一个有序传输的网络。

回归到开头的话题。CSMA/CD的作用,就是在以太网节点间有序共享同一物理信道。这就意味着,交换机并不是以太网的必选项。只要能让节点间连在一起,他们就能相互通信。集线器不必多言;哪怕把几根网线缠在一起,也能组织成一个可用的网络。

试想一下,假如你生活在上世纪,家里有几台电脑想互相连接。你是愿意买一个需要插电的MAU、还是不用插电的集线器、还是分文不花,把网线直接缠在一起了之呢?


本来想写一篇小短文记录自己的“发现”,但是想了想,这种问题从一开始就不应该存在。理论脱胎于实际,因此脱离实际去学习理论,无异于浮沙筑高塔。而只学理论不学实际,恐怕是国内高校教育的通病。其中最令人诟病的是高等数学、首当其冲的是线性代数。几乎所有高校老师上来就开始讲行列式的计算和100种变式的解决办法,连“大名鼎鼎”的《同济线代》也是如此。直到后来我自己感到有兴趣,稍稍深究了下它的前世今生,才发现原来行列式、矩阵的真正意义,领悟到它对人类上天入地有多么重要。相比之下,课本上、课堂上、考卷上的一道道计算题,仿佛在表达对它的不屑。

之前我的博客也发过一些类似的探究博文,但它们因为博客的蒸发而消散了。后面我有空就试试补档。因为我相信还有很多的像我一样曾经学了个一知半解,但是灵魂深处对它们“从哪儿来到哪儿去”有所渴求的人。

新的开始......再一次

发生了什么

我的博客蒸发了。

前因后果?

我向来根据主机商email的邮件交钱。但我没有收到今年一月份的账单。直到我2月8号看到一封2月4号的名为第三次收据逾期通知的邮件时,我知道一切都晚了。

上去一看:不出所料,主机已经被停权,数据也被删掉了。

自从被主机商坑了两次之后,我再也不想相信他们了。数据只有留在自己手上最安全,离开自己手的数据就像泼出去的水,能不能收回来都是未知数。

所以第三次开始,我选择静态博客。也就是你现在看到的这个页面。

备份了吗?

备份了,但用的是plesk自带的云备份功能。面板帮我上传到digiocean的云盘。本来这是一个相对稳妥的方案,老牌云厂商也相对靠谱。但是当年注册digiocean用的是Google账号,这个账号已经被Google限制了登录,要求验证手机才能继续。因此这个备份拿回来的希望不大。

以后打算怎么办?

只有因为没交钱被删过数据的用户,才能体会公有云毫不留情的残酷。想要长远发展,就要建立自己的私有云。我已经联系了几个志同道合的朋友组建了异地主机网络,并通过VPN实现互联。在此基础上,可以逐步配置备份方案,实现高可靠的容灾能力。目前,我的博客文章至少保留在两个地方:我自己的电脑和一台千里之外的树莓派上。后续我将增加更多的备份点。备份的终极奥义还是“异地多备”。

好消息是,由于各种搜索引擎的快照功能,我可以恢复一些以往的博客快照。但就像第一次遗失一样,只能像捡贝壳般收集一些公开的博文。那些留在草稿箱,或者设为私密的博文,恐怕再也回不来了。

最后,我将正式脱离动态博客,投入静态博客的怀抱。2023年,博客圈低迷的当下,已经不再需要花里胡哨的后台技术。绝大多数的基本功能都能靠纯前端代码,或hexo这样的生成器解决。PHP已经成为了过往,前后端分离是大势所趋。

其他要说的……

同温层的深冻这个博客,掐指一算也开了快8年了。它见证了我的成长,也记录了我一路以来的思想、体会。遗失这样一个博客,毫无疑问是令人心痛的。但换一种角度,在生命前进的旅途上,总有一些东西是注定留不住的。与其为失去的东西伤心,不如早日启程。有言道:“如果你为失去了星星而哭泣,那么你也要失去阳光了”。

就让我们启程吧,新的旅途!