1.网络体系结构的分层原理
在认识网络协议之前,需要先建立网络体系的概念。所谓网络体系就是为完成计算机之间的通信合作,将互连功能划分为有明确定义的各个层,并规定同层的进程通信协议,以及相邻层之间的接口和所提供的服务。
计算机网络具有复杂的系统结构,而处理复杂问题,通常采用策略是“分而治之”。这如同结构化程序设计中对复杂问题的解决需进行模块划分处理一样,在处理计算机网络复杂系统时也需分层处理,每层完成其特定的功能,各层协调合作来实现系统完整功能。
为了明确各层是如何组合在一起,并协同工作以完成整个网络功能,首先需要认识在理论层面上的网络是什么,也就是说,要建立网络模型的概念。
网络体系结构是网络中分层模型及各层功能的精确定义。对网络体系结构描述必须包含足够的信息,使实现者可为每一功能层进行硬件设计或编写软件程序,并符合相关的规则。网络协议的实现细节隐含在计算机内部,对外不可见。
为减少计算机网络设计复杂性,人们按功能将计算机网络划分为多个不同的功能层。网络中同等层之间的通信规则就是该层使用的协议,如有关第N层的通信规则的集合,就是第N层的协议。对同一计算机的不同功能层之间的通信规则称为接口。在第N层和第N+1层之间的接口称做N/N+1。
协议为不同计算机同等层之间的通信约定,接口是同一计算机相邻层之间的通信约定。不同的网络结构,分层数量、各层名称及功能和协议都不尽相同。但所有网络中,每一层的目的都是向其上一层提供服务。网络分层体系结构如图1-10所示。
划分层次原则:网络中各结点都有相同的层次,相同的层次具有同样的功能;同一结点内相邻层之间通过接口通信;每一层使用下层提供的服务,并向上一层提供服务;同等层按协议实现对等层间的通信。第N层是N-1层的用户,同时是N+1层的服务提供者。对N层,N+1层得到了N层以内的所有层服务。
分层优点:独立性强。独立性是指被划分的层具有独立的功能,每个分层无须知道下一层如何工作,只需知道下层通过层间接口提供的服务是什么,本层向上一层提供的服务是什么即可,每层只负责完成特定的任务。分层结构将整个复杂的系统分解成若干个小范围、功能简单的部分,使每部分功能都简单;分层的适应性强,当任何一层发生变化时(层内修改),只要层间接口不发生变化,那么变化就不会影响到其他层。
图1-10 网络分层体系结构(www.xing528.com)
2.网络通信协议
网络中计算机通信,必须使用相同信息交换规则。规则用于规定信息的格式及如何发送和接收,网络中这套规则称网络协议或通信协议。
所谓协议是一组规则的集合,是进行交互的双方必须遵守的某些约定。网络通信协议(简称通信协议)是一套语义和语法规则,用来规定有关功能部件在通信过程中的操作,实质上是通信时所使用的一种“语言”。通信协议由语义、语法与规则三要素组成。
●语义:协议元素含义的说明。即“讲什么”。
●语法:用于规定将若干个协议元素和数据组合在一起来表达一个更完整的内容时所应遵循的格式,也即“怎么讲”。
●规则:规定了事件的执行顺序。
通信协议具有层次型。因为网络体系结构是分层的,因而协议也被分为多个层,每层内又可分为若干子层,因此协议有高层、低层之分。
通信协议具有可靠性与有效性。协议若不可靠就会出现通信混乱或中断,只有通信协议可靠并有效,才能保证通信任务的完成。
通信协议并非设计成单一而庞杂的规则,而是为所有形式的通信规定了完整细节,并将通信问题划分为多个小问题,并为每个小问题设计单独的协议。这种策略的目的是使每个协议的设计、分析、编码和测试都较为容易。从本质上说,分层模型描述了将通信问题分为小问题的方法,每个通信小问题对应一个层。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。