计算机网络-体系结构[#3]

前言

前面两篇我们分别介绍了计算机网络中的网络类别和基础的性能指标,基本上算是对我们平时生活中的计算机网络的概念描述的一种完善,接下来我们将会正式详细地去了解有关计算机网络的原理。

但是问题来了,我们该从哪里去入手呢?

其实很简单,就像生活中我们到了景区一样,要想知道从那里开始游玩以及终点,我们必须先看下整个景区的分布总览,也就是导航地图;放到技术学习上也是一样,在之前的Spring源码解析中也提到过,要先得看整个技术的架构设计,也就是纲领性总结,这样我们才能每一步踏上的都是正确的路线。

而在计算机网络中,这个纲领性总结就是计算机网络的体系结构。

体系结构

计算机网络的体系结构其实就是对整个网络组成的不同部分所完成的功能的一种定义,一种逻辑上的抽象。那我们来看看怎么去划分的呢?

首先,计算机网络的体系结构不仅仅只有一种划分标准,主要可以分为下面三种:

  • OSI七层体系结构
  • TCP/IP四层体系结构
  • 常见的五层体系结构

OSI七层体系结构

它是法律上的国际标准,它的由来是,在最早期计算机网络出现时候,不同公司都对计算机网络体系进行了研究,同时分别提出了各自所划分的体系结构,老话说没有规矩不成方圆,所以这时候ISO这个组织机构就站出来专门研究这个问题,然后提出了一个国际化的标准,叫开放系统互联参考模型OSI/RM(Open System Interconnection / Reference Model),也就是七层体系结构。

它提出的体系结构如下,

image-20211227171752220

能看到它将网络体系结构从上到下分为七层,其中每一层都拥有各自的网络协议,负责完成一定部分的功能,同时每一层都为上一层提供基础服务。那我们先简单来看看各层是怎么样定义的,以及完成什么样的功能:

  • 物理层 :首先它是最底层,也代表了是网络通信的物理基础,它定义了各种物理通信设备的规范,规定了机械电气功能等特性,是用来建立、维护和拆除物理链路的连接;通俗的说它的主要作用是用来解决网络设备和通信线路直接的接口问题,用来传输比特数据流。
  • 数据链路层 :它在物理层提供的功能基础上,用来建立相邻网络节点之间的数据链路,通过差错控制提供数据帧在信道上的透明传输。
  • 网络层 :负责在网络数据传输中选择合适的网间路由和交换节点,确保数据尽可能及时的传送。
  • 传输层 :负责为两个主机进程之间的通信提供服务,有通信连接分用和复用的功能。
  • 会话层 :不参与具体的数据传输,只负责包括访问验证和会话管理在内的建立和维护应用之间通信的机制,像用户登录验证等功能。
  • 表示层 :负责解决用户信息的语法表示问题,提供数据格式化和转换的服务,像数据的解压缩、加解密等功能。
  • 应用层 :直接为用户的应用进程提供服务,像超文本传输、文件传送、电子邮件等协议。

从上面可以看到,这一体系结构对计算机网络进行了很详细的划分,每一层都相互独立,拥有各自的功能,理论上来说,这套标准已经足够用于现实情况,那为什么还会出现后面其它的划分呢?

这是由于有几个原因,首先制定标准周期太长,以致于现实中已经有一套受行业认可的标准,其次划分的层次过于详细,是由理论分析再到市场推广,实现起来较为复杂,同时运行效率低,最后由于是国家组织机构定义,缺乏商业的驱动力。

TCP/IP四层体系结构

上面介绍了国际标准的七层体系结构,最终却不受行业认可和流行,其中讲到的另外一套行业认可的标准就是TCP/IP四层体系结构,它与OSI标准不同的是,它是在现实情况当中,针对实际发生的问题,从而提出不同的解决方案,最后总结划分而来。

它的结构划分如下,

image-20211228103910996

显而易见,四层体系结构要比七层来的简单清晰,也可以看到它们非常相似,其实本质上分层所拥有的功能相差不大,主要的区别是TCP/IP标准主要解决的是网络和网络之间的连接通信问题,所以它在底层物理设备和上层应用资源没有进行详细的区分,而是以网络接口层和应用层作为代表来代替。

它的主要特点是以网络层的IP为核心,通过传输层的TCP、UDP协议进行通信,从而可以应用到任何网络之上,向任何应用提供服务。

常见的五层体系结构

既然根据实际情况,TCP/IP已经能满足需求了,那为什么还有所谓的五层体系结构?那是因为TCP/IP对底层网络接口层并没有描述具体的内容,也就是局域网当中网络是怎么实现的,因此在具体学习的时候对他们采取折中的方法,综合各自的优点,划分了这样的一种五层体系结构。

它的结构划分如下,

image-20211228112350314

能看到,它将TCP/IP的四层体系结构中的网络接口层拆分成更具体的数据链路层和物理层,也就是OSI中的底层划分,这样既考虑到了网络在局域网之间的通信实现,又考虑到了不同的局域网之间的跨网络通信的实现,更加贴合现实中从发送端到接收端的网络传输通信情况,所以后面对于计算机网络也会以五层体系结构为标准来进行介绍。

传输过程

了解完上面的体系结构之后,我们对计算机网络的整体架构已经有了个轮廓,那我们再来看看网络数据是怎么在五层结构之间进行传输的,先看下面的流程图:

image-20211228161655193

能看到整个网络数据的基本传输过程大概如下:

  1. 计算机A的应用进程产生数据并发送;
  2. 应用层会将发送的数据添加首部信息并封装到应用层协议中,再传输给运输层;
  3. 传输层将应用层协议添加首部信息并封装到传输层协议中,再传输给网络层;
  4. 网络层将传输层协议添加首部信息并封装到网络层协议中,再传输给数据链路层;
  5. 数据链路层将网络层协议添加首部信息并封装到数据链路层协议(数据帧)中,再传输给物理层;
  6. 物理层拿到数据链路层协议数据之后,将其转为比特数据流在传输介质上传输到目的计算机B;
  7. 计算机B接收数据之后,根据上面过程对比特数据逆向解析,最终还原为原始的应用进程数据到应用进程中。

在上面过程当中我们能看到两个特点:一个是垂直服务,每个分层提供的功能服务是通过层间的接口由下层向上层提供的;另一个是水平协议,每个对应分层都控制着同等的通信规则,也就是协议。

网络协议

通过上面的网络数据的基本传输过程,我们能看到每层数据的封装和解析离不开一个重要的东西:网络协议。

那什么是网络协议呢?它是精确规定在网络通信中使用的各种控制信息的格式、意义以及各种事件出现的先后顺序,通俗的说就是定义数据传输的标准格式。

各个分层都拥有各自的网络协议格式,它们的结构也是各不相同,但是在网络协议中,它们都有三个重要组成要素:

  • 语法:数据信息的结构或者格式。
  • 语义:语法所代表的含义,需要做出什么样动作和响应。
  • 同步:处理过程中一些事件的实现顺序的详细说明。

在实际网络通信开发中,其实最重要的就是对网络协议的封装和解析,既有简单的公有协议,又有复杂的私有协议,相信在以后的开发路上你会慢慢接触到的,后面我们会针对每个分层进行更详细的介绍和说明,同时会更具体的分析每层协议的格式以及协议中标志位的含义。


身未动,心已远。

把一件事做到极致就是天分!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,335评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,895评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,766评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,918评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,042评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,169评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,219评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,976评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,393评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,711评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,876评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,562评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,193评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,903评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,142评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,699评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,764评论 2 351

推荐阅读更多精彩内容