本文已参与「新人创作礼」活动,一起开启掘金创作之路。
分层结构
我们为什要分层?
假设一个场景:
我们发送一个文件给别人,这里就要经过一条链路,才能发送过去,不然中间没有介质到不了。除了需要链路外,我们还需要几个完成的工作:
发起通信的计算机必须将数据通信的通路进行激活(就是发送一些命令,保证我要传送的数据,这个文档能正确的发送和接收,确定是能通过的。)
要告诉网络如何识别目的主机的。
发送通信的计算机要查明目的主机是否开机,并且与网络连接正常。
发起通信的计算机要弄清楚,对方计算机中文件管理程序是否已经做好准备工作。
确保差错和意外可以解决。
。。。。。。
从上面的这么多的大问题很难解决,所以计算机网络要把它分解成小问题解决。
分层原则
既然我们知道了分层结构,那怎么分呢?
- 各层之间要相互独立,每层只要实现一种相对独立的功能。
- 每层之间的界面自然清晰,易于理解,相互交流尽可能少。
- 结构上可分隔开,每层都采用最合适的技术分开。
- 保持下层对上层的独立性,上层单向使用下层提供的服务。
- 整个分层结构能促进标准化工作。
解释分层结构中的一些名词:
实体:第 n 层中的活动元素称为 n 层实体。同一层的实体叫对等实体。
协议:为网络中的对等实体数据交换而建立的规则,标准或约定称为网络协议。
- 语法: 规定传输数据的格式。
- 语义:规定所要完成的功能。
- 同步:规定各种操作的顺序。
接口(访问服务端SAP):上层使用下层服务的入口。
服务:下层为相邻的上层提供的功能调用。