实体、协议、服务和服务访问点

news2024/9/29 13:28:48

目录

一、概念

二、相邻两层之间的关系

三、面向连接服务的特点

四、无连接服务的特点

五、著名的协议举例


一、概念

  • 实体(entity)表示任何可发送或接收信息的硬件或软件进程。同机器上同一层的实体叫做对等实体(peer entity)。
  • 协议(protocol)是控制两个对等实体进行通信的规则的集合,即协议是“水平的”。 在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下层所提供的服务。
  • 服务(serve)是各层向它的直接上层提供的一组原语或操作,是由下层向它的直接上层通过层间接口提供的,即服务是“垂直的”。本层的服务用户只能看见服务而无法看见下面的协议。下面的协议对上面的服务用户是透明的。

二、相邻两层之间的关系

  • 连接:是两个对等实体为进行数据通信而进行的一种结合。
  • 服务:是各层向它的直接上层提供的一组原语或操作,有面向连接和无连接两类类型的服务。
  • 面向连接服务(connection-oriented) ——具有连接建立数据传输连接释放这三个阶段。
  • 无连接服务(connectionless) ——两个实体之间的通信不需要先建立好连接。 是一种不可靠的服务。这种服务常被描述为“尽最大努力交付”(best effort delivery)或“尽力而为”。

三、面向连接服务的特点

(1)面向连接服务的数据传输过程必须经过连接建立、连接维护与释放连接的三个阶段;
(2)面向连接服务的传输连接类似一个通信管道,发送者在一端放入数据,接收者从另一端取出数据,分组在数据传输过程中可以不携带目的结点的地址;
(3)面向连接数据传输的收发数据顺序不变,传输可靠性好,但是协议复杂,通信效率不高
(4)比较适合于在一定期间内要向同一目的地发送许多

四、无连接服务的特点

(1)无连接服务中的数据传输过程不需要经过连接建立、连接维护不释放连接的三个过程。
(2)无连接服务的每个分组都携带完整的目的结点地址,各分组在系统中是独立传送的;
(3)数据分组传输过程中,目的结点接收的数据分组可能出现乱序、重复不丢失的现象;
(4)无连接服务的可靠性不好,但是协议相对简单,通信效率较高
注意: 面向连接服务并不等同于“可靠的服务“

、著名的协议举例

       占据两个山顶的 蓝军 与驻扎在这山谷的 白军 作战。
       力量对比是:一个山顶上的蓝军打不过白军,但两个山顶的蓝军协同作战就可战胜白军。一个山顶上的蓝军拟于次日正午向白军发起攻击。于是发送电文给另一山顶上的友军。但通信线路很丌好,电文出错的可能性很大。因此要求收到电文的友军必须发送确认电文。但确认电文也可能出错。
      试问能否设计出一种协议,使得蓝军能实现协同作战因而一定(即100 %)取得胜利?

即,一边收到消息后发送确认,两边就一直在确认,这样的协议是不行的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1283761.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何创建maven项目的多模块项目

Maven多模块项目是指一个Maven项目中包含多个子模块,每个子模块又是一个独立的Maven项目,但它们之间可以存在依赖关系。Maven多模块项目可以方便地管理多个子模块的依赖和构建过程,同时也可以提高项目的可维护性和可扩展性。创建maven项目的父…

RH850P1X芯片学习笔记-Pin Functions

文章目录 Pin Connection Diagrams术语定义 Pin ListPort OverviewIntroductionFunctional OverviewPort CategoryOperation Mode运行模式 Port Function寄存器地址映射 Port寄存器描述Pn/JP0 — Port RegisterPPRn/JPPR0 — Port Pin Read RegisterPMn/JPM0 — Port Mode Regi…

合并两个有序链表[简单]

优质博文:IT-BLOG-CN 一、题目 将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4] 示例 2: 输入&#…

2023全网最新-免杀方法大集结

目录 00. 概述 01. 简介 02. 静态免杀 1. 怎么找特征码 工具查找 手工查找 其他 2. 怎么免杀? 手工修改 非源码 工具免杀(盲免杀) 03. 行为动态免杀 行为拦截原理 如何进行行为免杀呢? 总结 注意/技巧 00. 概述 …

简单的界面与数据分离的架构

草图绘制于2021年2月19日 当时用到了:qt的子项目、delegate、view和widget的关系,有感而写的小备忘,2022年底考的软件设计师里面的设计模式虽然可能早已包含,但自己也得有自己啊,要把自己哪怕不成熟的东西也记录下来&…

自动化集成有哪些典型应用场景?

为什么要做自动化场景集成? 主要分为以下几点: 提高效率/减少错误:减少人工操作、人为错误、人力成本,提高生产效率、生产质量和稳定性。 提高可靠性:提高系统的可靠性和稳定性,减少系统故障和停机时间。…

UNDERSTANDING AND IMPROVING INFORMATION TRANSFER IN MULTI-TASK LEARNING

Z i _i i​ X i R i X_iR_i Xi​Ri​, X X X是Task embedding layers, R R R是Alignment matrices 辅助信息 作者未提供代码

申请Azure学生订阅——人工验证

一:联系客服进行人工验证 点击 Services Hub 填写资料申请人工验证 点击 Azure - Sign up 进行学生验证 二:与客服的邮件沟通的记录 ​​​​一、结果(输入客服给的验证码后,笔者便得到了学生订阅): 二…

Allegro无法模块复用的解决办法

Allegro无法模块复用的解决办法 在用Allegro做PCB设计的时候,模块复用是使用的比较频繁的功能,对于有相同模块的单板,可以节省大量的时间。 模块复用的功能不细说,具体参考以前的文章。 有时会遇到模块复用的时候出现如下报错 无法匹配,有时如果因为Device而无法复用,就…

代码随想录day5 哈希表part 01 242.有效的字母异位词 349. 两个数组的交集 202. 快乐数 1. 两数之和

当我们遇到了要快速判断一个元素是否出现集合里的时候,就要考虑哈希法。 哈希碰撞:1、拉链法:其实拉链法就是要选择适当的哈希表的大小,这样既不会因为数组空值而浪费大量内存,也不会因为链表太长而在查找上浪费太多时…

IntelliJ_IDEA的安装

1.点击链接进入官网 https://www.jetbrains.com/zh-cn/idea/download/?sectionwindows 2.往下翻找社区版 3.保留并打开下载的exe 4.选择安装路径(保险起见路径不要有中文) 5.按中文提示点击所需要的(前三个全点上,后面的按自己的…

使用Pytorch从零开始实现CLIP

生成式建模知识回顾: [1] 生成式建模概述 [2] Transformer I,Transformer II [3] 变分自编码器 [4] 生成对抗网络,高级生成对抗网络 I,高级生成对抗网络 II [5] 自回归模型 [6] 归一化流模型 [7] 基于能量的模型 [8] 扩散模型 I, 扩散模型 II…

对抗神经网络 CGAN实战详解 完整数据代码可直接运行

代码视频讲解: 中文核心项目:对抗神经网络 CGAN实战详解 完整代码数据可直接运行_哔哩哔哩_bilibili 运行图: 完整代码: from keras.layers import Input, Dense, Reshape, Flatten, Dropout, multiply from keras.layers import BatchNormalization, Activation, Embedd…

adb连接Android手机

文章目录 一、adb连接Android手机1.USB连接调试(方法一)2.Wifi连接调试(方法二) 一、adb连接Android手机 1.USB连接调试(方法一) 使用usb数据线连接好电脑手机打开调试模式,勾选usb调试模式&a…

[EndNote学习笔记] 导出库中文献的作者、标题、年份到Excel

菜单栏Edit中,选择 Output Styles 在默认的 Annotated上进行修改,在Bibliography栏下的Templates中修改想要导出的格式 其中,每个粗体标题表示,针对不同的文献类型,设置相应的导出格式。一般为Journal Article&…

01 高等数学.武忠祥.0基础

第一章 函数与极限 01映射与函数 02 函数概念 对应法则 定义域 常见函数 函数的几种特性 周期函数不一定有最小周期。 涉及额外与复习 存在与任意的关系

考研数学 每日一题

考研数学 每日一题

C++12.4

沙发床的多继承 多继承代码实现沙发床沙发床继承于沙发和床 代码&#xff1a; #include <iostream>using namespace std;//封装 沙发 类 class Sofa { private:string sitting;double *size; public://无参构造函数Sofa() {cout << "Sofa::无参构造函数&quo…

JIRA 重建索引

JIRA为了增快搜索速度&#xff0c;为所有的问题的字段生成一个索引文件。这个索引文件存在磁盘的一个文件里面&#xff0c; 并且会实时更新。但是有时候某些操作后&#xff08;例如增加自定义字段&#xff09;&#xff0c;需要重新建索引。 详情请见 Re-indexing after major c…

最长连续序列代码中的细节解读

最长连续序列 一、题目概述 给定一个未排序的整数数组 nums &#xff0c;找出数字连续的最长序列&#xff08;不要求序列元素在原数组中连续&#xff09;的长度。 请你设计并实现时间复杂度为 O(n) 的算法解决此问题。 原题地址&#xff1a;https://leetcode.cn/problems/l…