当前位置: 首页 > article >正文

计算机网络——协议层次及服务模型

计算机网络中的协议层次是指将网络功能划分为不同的层次,每个层次负责特定的功能,并通过协议进行通信。

一、为什么要分层

分层是设计/讨论复杂系统的有效方法。分层使得复杂系统概念化,结构清晰便于标示网路组件,以及描述其相互关系。

分层使其结构化,模块化更易于维护和系统升级。改变某一层服务的实现不影响系统中的其他层次。

二、分层模型组成及其作用

互联网五个基本层次:应用层(application)、传输层(transport)、网络层(network)、链路层(link)、物理层(physical)。

应用层:支持网络应用间的通信。为人类用户或者其他应用程序提供网络应用服务。

传输层:进程-进程数据传输。负责提供端到端的可靠数据传输,包括流量控制、拥塞控制和错误恢复等功能。

网络层:数据报从源端路由到目标端,端-端之间的数据传输

链路层:相邻网络结点之间的数据传输。

物理层:负责传输比特流,即将数据转换为电信号进行传输。

各层的所有协议被称为协议栈。

ISO/OSI为七层模型:应用层、表示层、会话层、传输层、网络层、链路层、物理层。

表示层:允许应用解释传输的数据。如加密,压缩,机器相关的表示转换。

会话层:数据交换的同步,设置与另一台计算机中的进程会话连接。

三、服务和协议

对等层与协议数据单元:OSI参考模型把对等层之间传送的数据单位称为该层的协议数据单元PDU。任何两个同样的层次把PDU通过水平虚线直接传递给对方。这就是所谓的对等层之间的通信。

各层协议实际上就是在各个对等层之间传递数据的各项规定。

实体:表示任何克发送或接收信息的硬件或软件进程。

协议:控制两个对等实体进行通信的规则的集合。

在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。

要实现本层协议,还需要使用下层所提供的服务。

关于协议和服务的联系和区别:

协议:其实现保证了能够向上一层提供服务。对上面的服务用户是透明的。是“水平”的。

服务:上层使用服务原语获得下层所提供的服务。上面的服务用户只能看见服务,无法看见下面的协议。是“垂直”的。

服务:低层实体向上层实体提供他们之间的通信的能力,是通过原语来操作的。

协议:对等层实体之间在相互通信的过程中需要遵循的规则的集合。

联系:本层协议的实现要靠下层提供的服务来实现。

本层实体通过协议为上层提供更高级的服务。

即服务联系上下两个不同层实体,协议联系两个相同层实体

四、服务访问点SPA

在同一系统中相邻两层的实体交互的地方称为服务访问点(SPA),是一个抽象概念,实际上就是一个逻辑接口。

OSI把层与层之间交换的数据的单位称为服务数据单元SDU。

上层协议数据单元PDU将会成为下层的服务数据单元SDU


http://www.kler.cn/a/274757.html

相关文章:

  • Azure虚拟机非托管磁盘大小调整
  • 线程知识总结(一)
  • docker简单命令
  • 项目管理工具Maven(一)
  • 深度学习模型中增加随机性可以通过多种方式实现,以下是一些可以应用到你的 `TCNAttentionLSTM`
  • 微信小程序:轻应用的未来与无限可能
  • 【0274】从shared init file或local init file加载relation cache(2 - 1)
  • JSONP 实现跨域请求案例
  • Python分析无人驾驶汽车在桂林市文旅行业推广的问卷
  • 00_coolprop_in_matlab在Matlab中使用CoolProp
  • 飞天使-k8s知识点26-kubernetes温故知新1-pod
  • 在idea中配置tomcat服务器,部署一个项目(下载教程加链接)
  • 【爬虫】实战-爬取Boss直聘信息数据
  • docker小白第十四天之Portainer与CIG
  • Go语言之函数、方法、接口
  • 数据在内存中的存储(C语言)(难点,需多刷几遍)
  • Nginx发布之后可以使用IP访问,不能使用localhost访问, Nginx发布之后可以使用localhost访问,不能使用IP访问,
  • Selenium WebDriver使用EC来定义显式等待的条件
  • Python内置对象
  • react中useContext的用法
  • 万用表革新升级,WT588F02BP-14S语音芯片助力智能测量新体验v
  • 服务器端(Debian 12)配置jupyter与R 语言的融合
  • Java项目基于SpringBoot和Vue的时装购物系统的设计与实现
  • C#基础语法学习笔记(传智播客学习)
  • [Qt学习笔记]Halcon窗口界面上显示文字的字体尺寸、样式修改
  • GO-Gin-Example 第六部分 将Golang应用部署到Docker