本文的原始作者: 书呆子里科
作者博客地址:
本文中使用的大多数插图均来自课件“计算机网络体系结构”,并且某些插图作者已被进一步修改. 可以在我的CSDN上下载该课件,其链接为“计算机网络”体系结构. 在此,我们感谢该课件的创建者及其传播者的无私分享.
友情提醒:
为了更好地理解计算机网络体系结构,作者使用两个博客文章介绍了该计算机网络中最重要的知识点: “计算机网络体系结构摘要(第1部分)”和“计算机网络体系结构摘要”. (第2部分)在本文中,我们概述了计算机网络体系结构的动机,并结合日常生活中的邮政系统介绍了设计概念,并给出了相关的基本概念和标准,并着重介绍了分层在此基础上,配套文章“计算机网络体系结构概述(第2部分)”详细介绍了两种典型的计算机网络系统体系结构标准: OSI七层模型和TCP / IP四层模型.
众所周知,计算机网络是一个非常复杂的系统. 例如,当连接到网络的两台计算机需要通信时,由于计算机网络的复杂性和异构性,需要考虑许多复杂因素,例如:
(1). 必须在两台计算机之间有一个传输数据的通道;
(2). 告诉网络如何识别接收数据的计算机;
(3). 启动通信的计算机必须确保可以在此路径上正确发送和接收要传输的数据;
(4). 对于各种错误和意外事件,例如数据传输错误和网络中节点交换机的故障,应采取可靠而完善的措施,以确保另一方的计算机最终能够正确接收数据.
制定计算机网络体系结构标准是为了解决这些问题,以便两台计算机(网络设备)可以准确地理解彼此的含义并像两个亲密的朋友一样优雅地回应. 换句话说,为了完成该网络通信,必须确保彼此通信的两个计算机系统达到高度的了解. 实际上,在网络通信领域中,两台计算机(网络设备)之间的通信不如人与人之间的通信自然. 计算机之间的高度默认通信(通信)需要非常复杂和完整. 作为支持. 那么,什么样的方法可以用来合理地组织网络的结构,以确保它具有清晰的结构,简化的设计和实现计算机网络体系结构主要包含,易于更新和维护,强大的独立性和适应性,从而使这种“高”“默契”呢?
答案是分而治之,进一步讲分层思维.
分而治之的思想可以解决上述复杂的问题. 换句话说,我们可以将这个庞大而复杂的问题转换为许多较小的,易于处理的单一局部问题,然后在不同级别上进行解决. 这是我们在分层思维中所熟悉的. 在计算机网络体系结构中,分层思维的含义是: 每一层都基于自身下层提供的服务,通过自身的内部功能实现特定的服务.
1. 分层思维在日常生活中的应用
分层思维在日常生活中有很多应用,例如邮政系统,银行系统等. 让我们以邮政系统的组织结构为例:
从上图可以看出,用户与用户之间的通信依赖于基础服务,但是他们不需要关心快递和运输等细节,即发件人只需要写书面文件即可. 给快递员的信,收件人只需要检查快递员的信. 同样,快递员只需要从发件人处获取信件并将其交给分拣者,或者从分拣者处收取信件并将其交给收件人. 至于分拣员为什么要把这封信交给他(实际上,每个快递员将负责某个地区,检查员将根据收件人的地址将信分发给不同的快递员). 他不需要照顾或需要照顾. 显然,在这种邮政系统中,各种角色(用户,快递员...)在功能上是相互独立的,但是可以协调和合作以实现“高度默契”,这在很大程度上得益于分层思维的概念和应用. 下图更直观地反映了邮政系统的分层思维:
此外,我们每天使用的操作系统也是分层思维的实践者. 实际上,通常,对于庞大而复杂的系统(例如银行系统,邮政系统等),必须应用分层思维.
2. 分层思维的优势
(1). 低耦合(强独立性)
上层只需要通过下层为上层提供的接口使用下层实现的服务,而无需关心下层的具体实现. 换句话说,下层是一个黑匣子,上层具有某些功能.
(2). 适应性强
只要每层为上层提供的服务和接口保持不变,就可以任意更改每层的实现细节.
(3). 易于实施和维护
将复杂的系统分解为几个范围较小,功能简单的子单元,系统结构清晰,实现,调试和维护简单易行. 也就是说,对于设计者/开发者来说,这种方法使设计者/开发者能够专注于设计和开发他们关心的功能模块. 对于调试/维护人员,此方法也方便调试/维护人员处理他们负责的功能模块.
如您所料,计算机网络体系结构也使用分层方法. 因此,由于计算机网络体系结构的设计使用分层思想,因此必须解决以下问题:
(1). 网络体系结构应具有什么级别,每个级别负责什么功能? (层和功能)
(2). 各个级别之间是什么关系,它们如何相互作用? (服务和接口)
(3). 为了确保沟通的双方能够达到高度的了解,他们需要遵循哪些规则? (协议)
1. 计算机网络体系结构的概念
根据上述问题,计算机网络体系结构必须包括三个内容,即分层结构和每一层的功能,服务以及各层之间的接口和协议. 因此,计算机网络体系结构的定义为:
在计算机网络中,层,层间接口和协议的集合称为计算机网络体系结构.
2. 计算机网络体系结构标准
目前,由国际标准组织ISO制定的网络体系结构的国际标准是OSI七层模型,但实践中使用最广泛的是TCP / IP体系结构. 换句话说,OSI的七层模型只是一个理论上和官方的国际标准,而TCP / IP体系结构是事实上的国际标准. 这看似不合理,但实际上存在. 这是由某些历史原因引起的. 无疑,这些原因很复杂. 作者将在这里简要介绍它计算机网络体系结构主要包含,以使读者感到满意. OSI标准的制定者主要是专家和学者. 它们缺乏实践经验和商业驱动力,并且OSI标准本身的运行效率不是很好. 同时,由于Inernet覆盖全球相当大的区域,并且占领市场的标准是TCP / IP体系结构,因此OSI标准没有市场背景,这只是理论上的成就,也没有被应用. 许多. 在实践中.
1. 基本概念
在介绍网络体系结构的分层原理之前,我们有必要了解以下基本概念. 对应关系如下图所示:
2. 网络架构模型
网络中的任何系统都是根据上图中的层次结构模型组织的,具有以下特点:
3. 点对点通信的本质
从逻辑上讲,网络分层架构的原理允许不同主机的对等实体进行通信,但禁止不同主机的非对等实体之间进行直接通信;从物理上讲,每一层都必须依靠下层提供的服务. 与另一主机的对等层进行通信是对等层通信的本质. 也就是说,模型中的上层(第n + 1层)使用下层(第n层)提供的服务,并且是下层(第n层)的服务使用者;模型中的下层(第n层)是上层(第n + 1层)提供服务,并且是上层(第n + 1层)的服务生产者(提供者).
此外,源进程将消息传输到目标进程的过程是这样的: 首先,将消息发送到源系统的最高层,然后将消息从上到下逐层封装,最后消息“物理线路已传输到目标系统”. 当目标系统接收到信息时,它将从下到上逐层处理信息并将其拆包. 最后,最高层将消息提交给目标进程. 该过程类似于邮政通信过程,如下图所示:
4. 协议
如上图所示,发件人和收件人对信件内容的共识是两者之间的协议. 正是由于这一约定,他们才能阅读该信并理解另一方的含义. 达成默契;同样,发送邮局和接收邮局也可以就投递信件达成共识,也就是说,有一套规则可以确保“邮局之间的默认协议,两者之间可以达成这种默认协议. 要么保持原封不动,要么将其原封不动地发送给收件人,或者您可以原封不动地退回给发件人;同样,运输系统也可以就如何运输信件达成共识,正是由于这种共识,信件可以到达指定的邮局. 对等实体之间的默认协议(共识)是协议.
类似地,在计算机网络体系结构中,不同的层需要完成不同的功能或提供不同的服务. 例如,计算机网络体系结构应提供相应的错误控制,以使对等层的通信更加可靠. 另外,还应提供流控制以控制发送端的发送速率,以便接收端有时间接收消息. 分段和重装机制也是必要的,即发送方在发送消息时应将数据块分成较小的单元进行传输,接收方可以准确地重组这些数据块并恢复数据的原始外观;通信会话多路复用是相同的. 低级连接可以提高效率. 建立连接和释放连接的机制是不同主机之间通信的保证,等等. 上面列出的功能(服务)实际上是由计算机体系结构中的特定层实现的,更具体地说,这些功能主要是通过每层的相应通信协议来实现的. 也就是说,计算机之间网络中的所有通信活动都由协议控制,正是各种协议确保了计算机之间的高度隐性通信. 下图比较了人与人之间的通讯协议和计算机之间的通讯协议:
上一部分的最后部分非常生动地介绍了协议的含义,使我们对网络通信协议有了感知上的理解. 实际上,人类在相互交流的过程中也遵守某种“协议”,但是这种协议只是一种文化. 与计算机通讯协议的比较如下:
1. 协议的概念
通信协议定义了网络实体之间发送和接收消息的格式和顺序,以及在发送和接收消息时应采取的动作(规则). 该定义指定了通信协议的三个元素:
实际上,在网络体系结构中,每层可能有多个协议,但是一个协议仅属于一层. 在实现方面,该协议可以通过软件或硬件来实现. 例如,网络通信协议软件,网络驱动程序,网络硬件等. 常用的协议组是: TCP / IP(Windows,Unix,Linux等),NetBEUI(Windows),IPX / SPX(NetWare,Windows)等
2. 协议数据单元(PDU)
在计算机网络体系结构中,对等层之间交换的信息消息统称为协议数据单元(PDU). PDU由协议控制信息(协议头)和数据(SDU)组成,如下图所示.
其中,协议头包含完成数据传输所需的控制信息,例如地址,序列号,长度,分段标志,错误控制信息等. 传输层和后续层的PDU具有它们自己的特定名称:
(1). PDU包装
在计算机网络体系结构中,下层将上层PDU封装为该层的数据,然后添加该层的协议标头(和尾部)以形成该层的PDU,如下所示数字. 在这里,封装是在数据前面添加特定的协议头. 因此,从源站的顶部到底部提交数据的过程实际上是连续打包的过程,到达目的地后从底部到顶部传送数据的过程是连续拆包的过程,因为如下图所示. 此过程类似于发送信件的过程. 在传输数据时,它实际上被多层“信封”包围. 在目标站,某一层只能识别由源站的对等层封装的“信封”,并且封装在“信封”中的“数据”仅被解包并提交给上层,而这一层不做任何事情. 特别重要的是要注意,每一层仅处理该层的协议标头!
(2). PDU包装示例
下图说明了TCP / IP协议套件中PDU的封装过程:
计算机网络体系结构标准的建立使两台计算机能够理解彼此的含义并像两个亲密朋友一样优雅地响应. 本文首先概述了计算机网络体系结构的动机,并结合日常生活中的邮政系统介绍了设计概念,并给出了相关的基本概念和标准. 此外,我们将重点介绍计算机网络体系结构的分层原理及其最重要的组成部分(协议),以便读者可以对计算网络体系结构有了新的系统的理解.
有关OSI七层参考体系结构和TCP / IP四层协议结构以及任务,功能,协议以及与每种体系结构中其他类似层的区别的更多介绍,请移动读者. 关注我的博客“计算机网络体系结构(第2部分)”.
计算机网络体系结构
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-263083-1.html