我提出一个问题:你的微信消息怎样发送给你的好友?
或许你现在什么也不知道?或许你现在已经可以告诉我:消息是先到腾讯的微信服务器的,然后腾讯再遍历我的好友列表,找到好友,把消息发送给他。回答正确!但是也很明显,这个过程中你和好友的手机都是和腾讯服务器相连的。
所以什么是网络呢?就是用物理设备将各个“局域网”相连组成的更大的“局域网”
。小的局域网可以是家里的WiFi,或者陕西省的网络你也可以看作是一个局域网。物理设备就是网线、光缆等。你问:那美国和中国怎么办?答:海底有电缆你怕啥。你又问:我家和你家怎么办?答:假设你家是广电的网,我家是电信的,你家用广电的网线接到广电的服务器上,我家同理接到电信的服务器上,它们两个ISP(Internet Service Provider 互联网服务提供商)肯定也是相连的,这不就能通信了吗?下图是2015年全球互联网跨国通信光缆的连接情况。
其中密密麻麻的线就是各个国家之间的连接情况。所以网络没有什么神奇的,小到一台手机,大到一个国家如果想在目前我们所熟知的“互联网”上获取或者共享信息,那它就必须以某种物理方式接入到互联网。
当然,只把这些通信设备连在一起肯定不行,必须得有一些约定或者说规矩来告诉不同型号的设备、不同规格的网络如何按照同样的方法处理相同的数据、网络上谁是谁?这就是网络协议了。早期的计算机网络,都是由各厂商自己规定一套协议,IBM,Apple,和MicroSoft都有自己的网络协议,比如IBM的两台电脑用网线连起来,互相说话能听懂。但是IBM和Apple的电脑连接起来说话就听不懂了,想想你和我微信聊天,我是IBM电脑,你是Apple电脑,你发送的消息到我这里显示不了或者解析成另一个意思,你说多坑。为了把全世界的所有不同类型的计算机都连接起来,就必须规定一套全球通用的协议,为了实现这个目标,互联网协议簇(Internet Protocol Suite)就成为了通用协议标准。
Internet是由inter和net两个单词组合起来的,原意就是连接“网络”的网络,有了Internet,任何私有网络,只要支持这个协议,就可以联入互联网。互联网协议包含了上百种协议,但是最重要的两个协议是TCP和IP协议,而我们通常把基于TCP和IP协议的所有协议统称为”TCP/IP协议(蔟)”。因此,计算机网络说白了就是物理连接的“局域网”和工作于这个局域网上的“网络协议”。我们接下来会把重点放在讨论“网络协议”上面,你准备好了吗?