本文已参与「新人创作礼」活动,一起开启掘金创作之路。
计算机学院或者软件学院毕业的小伙伴必然学过《计算机网络》这门课,作为一个小小的考验,我们来稍微思考一下这么一个问题:
计算机的通信协议跟手机的通信协议有什么区别?TCP/IP协议和4G/5G的LTE,GSM等区别。
要解释这个问题,先从分层模型讲起。在课本中会给出国际标准化组织ISO的OSI七层模型和TCP/IP五层模型。
这张图可以说相当经典,每本课本讲到这里都还会举个坐飞机的例子。说到分层的优点大家都会背:
(1)人们可以很容易的讨论和学习协议的规范细节。
(2)层间的标准接口方便了工程模块化。
(3)创建了一个更好的互连环境。
(4)降低了复杂度,使程序更容易修改,产品开发的速度更快。
(5)每层利用紧邻的下层服务,更容易记住个层的功能。
但其实很难体会它真正的用处。看完下面的讲解大概就能体会到分层的好处了。
TCP/IP通过竞争慢慢地战胜了其它一些网络协议方案,包括OSI七层模型。TCP/IP实际上是一个四层的体系结构,主要包括:应用层、传输层、网络层和网络接口层。如图:
从实质上讲,TCP/IP协议栈起始于第三层协议IP(互联网协议) 。所有这些协议都在相应的RFC文档中讨论及标准化。可以说TCP/IP协议栈只有上边三层,网络接口层没有什么具体的内容。
值得一提的是,重要的协议在相应的RFC文档中均标记了状态: 必须 (required) ,推荐(recommended) ,可选(optional) 。其它的协议还可能有"试验"(experimental) 或"历史"(historic) 的状态。如图:
所有的TCP/IP应用都必须实现IP和ICMP。应用层和网络接口层的大部分协议都 并不是TCP/IP协议组的“必须”协议。也就是说网络接口层的协议有多种选择。
有线局域网
目前的以太网几乎占领着所有的有线局域网市场。在早些时期,还有其它的局域网技术,如令牌环、FDDI、ATM(Asynchronous Transfer Mode,异步传输模式)等等。虽然这些技术也抓住了部分市场,但是以太网1980发明以来,就不断演化和发展。直到今天,以太网成为应用最广泛的有线局域网技术,以至于以太网几乎成为局域网的代名词。
以太网并不是单一的协议标准,它有很多技术,如:10BASE-T、10BASE-2、100BASE-T、1000BASE-LX和10GBASE-T,这些已经被IEEE 802.3工作组标准化了。其中10和100表示速率,10Mbps、100Mbps和10Gbps。"BASE"指基带以太网,几乎所有的802.3标准都适用于基带以太网。最后一部分指物理媒介,以太网是链路层和物理层的规范(统称网络接口层),并且能够使用各种物理媒介,如:同轴电缆、铜线和光纤。一般来说,T是指双绞线,我们平时用的网线都是双绞线。
无线局域网
无线局域网和有线局域网一样,上世纪90年代研发了很多无线局域网的标准和技术。但目前来看,有一类标准明显已经成为了赢家:IEEE 802.11 无线LAN,也称WiFi。没错,我们平时说的连WiFi、蹭WiFi,指的就是这个。
IEEE 802.11协议族有几套无线局域网的标准,如下表:
标准 | 频率 | 最大速率 |
---|---|---|
802.11b | 2.4GHz | 11Mbps |
802.11a | 5GHz | 54Mbps |
802.11g | 2.4GHz | 54Mbps |
802.11n | 2.4GHz,5GHz | 450Mbps |
802.11ac | 5GHz | 1300Mbps |
不同的802.11标准都具有一些共同的特征,例如:都使用相同的媒体访问协议CSMA/CA;链路层都使用相同的帧结构;都具有减少速率以伸展到更远距离的能力。
802.11设备工作在两个不同的频段上:2.4到2.485GHz(称为2.4GHz频段)和5.1~5.8GHz(称为5GHz频段)。2.4GHz频段是一种无须执照的频段,也就意味着,同样使用2.4GHz的电话、微波炉、蓝牙耳机等设备可能会争用该频段。我之前就有过体会,笔记本连的是WiFi(2.4GHz),连上蓝牙耳机后网络就有点卡。我们也可以在网络属性里看到,如图:
我的无线网卡虽然支持802.11n协议,但是只工作在2.4GHz频段,就算工作在5GHz频段,速率也是没有802.11ac快的。现在市面上的笔记本的无线网卡基本上都支持WiFi 6了。早在2018年,Wi-Fi联盟便将基于802.11ax标准的Wi-Fi正式纳入正规军中,通过推广802.11ax的机会,将Wi-Fi规格重新命名,新标准802.11ax改名为Wi-Fi6。具体对应关系如下表:
标准 | 名称 |
---|---|
802.11 n | Wi-Fi 4 |
802.11ac | Wi-Fi 5 |
802.11ax | Wi-Fi 6 |
本期是计算机网络通信协议的第一期,下一期是讲网络接口层的不同的协议。敬请关注后续更新。