计算机网络协议内容庞杂而且复杂,总让人学起来头大。但其实如果我们换个思路,按网络从无到有的创建过程来理解,学起来就没那么难了。
接下来我们就假设来到了计算机网络发明前的年代,全世界就只有你和我各有一台电脑,然后我们思考自己来一步步实现两台电脑的互联,完成后再考虑让更多的电脑加入这个网络,形成互联网。(文中的讲述的主要的思路和方法,具体细节可能与技术细节有出入)
- 1 首先我们来思考什么是通信?
所谓通讯,其实就是一个完整的沟通过程。比如,我因为有某个需求(想请你吃饭),找到你以后我把需求告诉你,然后你对我提出的需求做出回应。等我的请求都表达完了,你的回复也完成了,我就会告诉你,事情就这么定了,这次通讯业就结束了。
- 2 通讯可以远程实现吗?
上面的通讯非常直接有效,但却需要你我见面才能实现。那么能不能让你我不见面就实现通讯呢?当然可以。之所以需要面对面沟通,是因为你我发出的声音都是通过空气自然传播的,而空气传播的声音递减非常快,距离稍远就无法完成传输了。如果我们能借助其他传输媒介让声音传输得更远,自然就可以远程通信了。于是电话的发明就帮我们实现了。
(注:信号的远距离传输是很复杂的技术,背后涉及到很多物理和信号处理的知识,大致的意思是,在传输信号前,我们先把需要传输的信号放到载波上(就好比把货物放到运输的货轮上),然后载波会把信号发送到远方。最后,远方的接收端会接收到载波+传输信号的混合电磁波,从载波中分离出传输信号(就好比从货轮上把货物卸载下来)就能得到原本