计算机网络:计算机网络体系结构 —— 专用术语总结
文章目录
- 专用术语
- 实体
- 协议
- 服务
- 服务访问点 SAP
- 服务原语 SP
- 协议数据单元 PDU
- 服务数据单元 SDU
专用术语
实体
实体是指任何可以发送或接收信息的硬件或软件进程
对等实体是指通信双方处于相同层次中的实体,如通信双方应用层的浏览器进程和 Web 服务器进程。
协议
协议是指控制两个对等实体在“水平方向”进行逻辑通信(不实际存在)的规则的集合,即计算机网络中设备之间进行通信和交互所遵循的规则和约定。
协议定义了数据在网络中的传输方式、数据包格式、错误检测和纠正机制、连接建立和终止等过程,确保网络中的设备能够正确地发送、接收和处理数据。
![![[Protocol Model.png]]](https://i-blog.csdnimg.cn/direct/6398dda224ef43bfbedd8c49cc6ec6c5.png)
协议的组成有三个要素:
- 语法:定义通信双方所交换信息的格式
如 IP 协议中 IPv4 数据报的首部格式,语法定义了如下小格子(字段/域)的长度和先后顺序:
![![[IPv4 Data Model.png]]](https://i-blog.csdnimg.cn/direct/d60909caadd24b9283332761a914c39c.png)
-
语义:定义通信双方所要完成的操作
-
同步:定义通信双发的时序关系。如需先发送 HTTP 请求报文后,才可发送相应的 HTTP 响应报文
服务
在协议的控制下,两个对等实体在水平方向的逻辑通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下一层所提供的服务。
服务指的是网络提供给用户的各种功能和资源。这些服务可以是基础设施服务、通信服务、应用服务等不同类型的网络功能。
![![[Network Serve Hierarchy Model.png]]](https://i-blog.csdnimg.cn/direct/e39efa38707f4210aff2d07bfa53cd6b.png)
协议是“水平”的,而服务是“垂直”的。实体看的见下层提供的服务,但并不知道实现该服务的具体协议,下层的协议对上层的实体是“透明”的
以下是计算机网络中常见的服务类型:
-
数据传输服务:数据传输服务是网络中最基本的服务,它提供了数据在网络中的传输功能。这包括通过物理链路传输数据包、数据的路由选择和转发等。
-
网络连接服务:网络连接服务提供了设备之间建立连接的功能,例如建立 TCP 连接或通过网络层协议进行路由选择。
-
安全服务:安全服务用于保护网络中的数据和通信的机密性、完整性和可用性。这包括对数据的加密、身份验证、访问控制等安全机制。
-
媒体服务:媒体服务涉及音频、视频和实时流媒体等传输。网络中的实时通信、视频会议、流媒体点播等都属于媒体服务。
-
应用服务:应用服务是网络中支持特定应用功能的服务,例如电子邮件、Web浏览、文件传输等。这些服务利用应用层协议在网络上传输和处理数据。
-
命名与寻址服务:命名与寻址服务解决了网络中标识和定位设备的问题。域名系统(DNS)是一种常见的命名服务,将易记的域名映射到具体的IP地址。
服务访问点 SAP
服务访问点(Service Access Point,简称 SAP)是计算机网络中用于访问特定服务的网络接口或协议端点,是在同一系统中相邻两层的实体交换信息的逻辑接口。它是通信进程或网络设备与服务之间进行交互的入口点。
帧的“类型”字段、IP 数据报的“协议”字段,TCP 报文或 UDP 用户数据报的“端口号”字段都是 SAP
在网络通信中,每个服务都有自己的 SAP 与之对应。SAP 定义了服务如何被访问、使用和提供。SAP 可以用来标识和定位特定的服务,使得通信实体能够准确地找到和访问所需的服务。
SAP 通常与网络协议和网络层次结构紧密相关。在不同的网络层次中,SAP的定义可能不同。
-
在物理层和数据链路层,SAP 通常与特定的物理接口或数据链路层协议相关联。
-
在网络层和传输层,SAP 通常与 IP 地址、端口号或传输层协议(如 TCP 或 UDP)相关联。
例如,在 TCP/IP 网络中,SAP 可以通过 IP 地址和端口号来标识和定位特定的服务。发送方使用目标 IP 地址和目标端口号指定要访问的服务,接收方使用对应的 IP 地址和端口号来接收和响应该服务。
服务原语 SP
上层要使用下层提供的服务,必须通过与下层交换一些命令,这些命令称为服务原语
服务原语(Service Primitive)是计算机网络通信中的基本操作或基本命令。它们是用于在网络中进行服务请求、响应和处理的原始操作。
服务原语用于在网络中的不同通信实体之间进行通信和交互,可以描述网络中的各种操作和行为。服务原语通常功能简单、灵活,并且可以通过组合和序列化来实现更复杂的通信过程。
服务原语的一般形式包括两个主要方面:
-
操作码(Operation Code):操作码表示服务原语执行的具体操作类型,例如请求服务、提供服务、确认、拒绝等。
-
数据(Data):数据部分包含与服务原语相关的具体数据和信息。根据不同的操作类型,数据可以包括请求的参数、响应的结果、错误码等信息。
服务原语的例子包括:
-
请求服务原语:用于向其他通信实体发起请求,请求特定的服务或操作。
-
提供服务原语:用于通知其他通信实体自己能够提供某项服务或操作。
-
确认原语:用于确认接收到的服务请求或响应,并表示对请求作出积极响应。
-
拒绝原语:用于拒绝接收到的服务请求或响应,并表示无法满足请求。
-
传输数据原语:用于将数据从一个通信实体传递到另一个通信实体。
-
结束会话原语:用于终止网络会话或通信连接。
服务原语在不同的网络体系结构和协议中可能有所不同。例如,在OSI参考模型中,服务原语被称为原语协议数据单元(PPDU),在TCP/IP协议中,服务原语以各种协议消息的形式存在。
协议数据单元 PDU
协议数据单元(Protocol Data Unit,PDU)是在计算机网络中传输的数据的最小单元。它是在不同层次的网络协议中传输的数据包或帧的术语。
对等层次之间传输的数据包成为该层的协议数据单元。
在通信过程中,数据被分割并封装到不同的 PDU 中,以便在网络中进行传输和交换。每个网络层次的协议都定义了相应的 PDU 格式和内容。
在参考模型中,不同层次的 PDU 具有不同的名称:
-
物理层 PDU:在物理层,
PDU是比特(bit)的传输单位,称为比特流。 -
数据链路层 PDU:在数据链路层,
PDU被称为帧(Frame),它包含了数据以及错误检测和控制信息,如帧起始标记、帧结束标记、地址、控制位和错误检测码等。 -
网络层 PDU:在网络层,
PDU通常称为数据报(Datagram)或 分组(Packet),它包括源地址、目标地址、路由信息等,以便在网络中进行路由和转发。 -
传输层 PDU:在传输层,
PDU被称为段(Segment)或报文段(Message Segment),它包含了传输控制信息,例如源端口号、目标端口号、序列号和校验和等。根据不同的协议,PDU具有不同的称呼,如使用 UDP 协议,称为 UDP 用户数据报;使用 TCP 协议,则称为 TCP 报文段。 -
应用层 PDU:在应用层,
PDU通常称为应用报文(Message),它是应用程序所发送和接收的数据单元。
不同网络协议和架构可能对 PDU 的定义和命名有所不同。例如,在 TCP/IP 协议中,网络层的 PDU 被称为 IP 数据报,传输层的 PDU 被称为报文段或 TCP 数据报。
服务数据单元 SDU
同一系统内层与层之间交换的数据包称为服务数据单元。
服务数据单元(Service Data Unit,简称SDU)是在计算机网络中传输的数据的逻辑单元。它是在服务接口之间传递的信息块,用于实现不同层次、不同服务之间的数据传输和交互。
在通信过程中,SDU 由上层向下层传递,直到最终被封装为 PDU 进行物理传输。每个层次的协议都将接收到的 SDU 解封并添加自己的协议头和尾,生成相应的 PDU,并将其传递到下一层。
SDU 和 PDU 是不同的概念。PDU 是网络中传输的实际数据包或帧,包含了协议头和尾部,用于在网络中进行传输和交换。而 SDU 是在服务接口之间传递的数据单元,它可能包含应用层数据、控制信息、错误检测码等。
假设一个应用程序发起一个数据传输请求,它将数据作为 SDU 发送给传输层协议。传输层将接收到的 SDU 进行封装,生成传输层 PDU,并添加传输控制信息,例如源端口号、目标端口号等。传输层的 PDU 被传递给网络层,在网络层再次封装为网络层 PDU,并添加源 IP 地址、目标 IP 地址等信息。最终,该网络层 PDU 被传输到物理层,根据具体的物理介质进行传输。
![![[Pasted image 20240118202419.png]]](https://i-blog.csdnimg.cn/direct/ac4fcb9022ae4fd9a10fd0d8268f04b1.png)
相关文章:
计算机网络:计算机网络体系结构 —— 专用术语总结
文章目录 专用术语实体协议服务服务访问点 SAP 服务原语 SP 协议数据单元 PDU服务数据单元 SDU 专用术语 实体 实体是指任何可以发送或接收信息的硬件或软件进程 对等实体是指通信双方处于相同层次中的实体,如通信双方应用层的浏览器进程和 Web 服务器进程。 协…...
Rust的前端Tauri编程-基于JS框架的初步探索
上次的项目做完后,有一项遗憾,没有返回结果,而结果是一个html表格,我想用html直接在窗口显示,这时发现R里面包括slint没有很直接的方法,直接弹出浏览器有点太简单没有挑战。这是就被推送了他的竞争对手&…...
【Flume Kafaka实战】Using Kafka with Flume
一 目标 在Cloudera Manager中创建两个Flume的Agent,Agent1从local file中获取内容,写入到kafka的队列中。Agent2以Agent1的sink作为source,将数据从kafka中读取出来,写入到HDFS中。 二 实战 2.1 Kafka Sink 第一步࿰…...
5G NR物理信号
文章目录 NR 物理信号与LTE的区别上行参考信号DMRS (UL)SRSPT-RS(UL) 下行参考信号DMRS(DL)PT-RS(DL)CSI-RSPSSSSS NR 物理信号与LTE的区别 用SSS、CSI-RS和DMRS 取代了CRS信号。下行业务信道采用TM1波束赋形传输模式。基于SSB 或者CSI-RS进行RSRP和SINR测量。基于DMRS 进行共…...
Pikachu-Cross-Site Scripting-存储型xss
存储型xss ,随便输入点内容,都能保存下来;刷新后也不会丢失;输入特殊字符,也能原样返回; 查看代码,也可以看到输出结果直接原路返回,不做处理 构造payload <script>alert(1)…...
媲美GPT-4o mini的小模型,Meta Llama 3.2模型全面解读!
大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“外挂”,专注于分享AI全维度知识,包括但不限于AI科普,AI工…...
【leetcode】 45.跳跃游戏 ||
如果我们「贪心」地进行正向查找,每次找到可到达的最远位置,就可以在线性时间内得到最少的跳跃次数。 例如,对于数组 [2,3,1,2,4,2,3],初始位置是下标 0,从下标 0 出发,最远可到达下标 2。下标 0 可到达的…...
coco(json)、yolo(txt)、voc(xml)标注格式的相互转换
一般都是用labeleme进行标注 标注格式都是json 然后根据不同的格式进行数据标注转换: 1.逐个json转xml: 当我们在使用数据集训练计算机视觉模型时,常常会遇到有的数据集只给了单个的json annotation文件,而模型所需要的annotation是基于每…...
以太网交换安全:端口安全
一、端口安全介绍 端口安全是一种网络设备防护措施,通过将接口学习到的动态MAC地址转换为安全MAC地址(包括安全动态MAC和Sticky MAC),阻止除安全MAC和静态MAC之外的主机通过本接口和设备通信,从而增强设备的安全性。以…...
[题解] Codeforces Round 976 (Div. 2) A ~ E
A. Find Minimum Operations 签到. void solve() {int n, k;cin >> n >> k;if (k 1) {cout << n << endl;return;}int ans 0;while (n) {ans n % k;n / k;}cout << ans << endl; }B. Brightness Begins 打表发现, 翻转完后的序列为: 0…...
【零基础入门产品经理】学习准备篇 | 需要学一些什么呢?
前言: 零实习转行产品经理经验分享01-学习准备篇_哔哩哔哩_bilibili 该篇内容主要是对bilibili这个视频的观后笔记~谢谢美丽滴up主友情分享。 全文摘要:如何在0实习且没有任何产品相关经验下,如何上岸产品经理~ 目录 一、想清楚为什么…...
第四届机器人、自动化与智能控制国际会议(ICRAIC 2024)征稿
第四届机器人、自动化与智能控制国际会议(ICRAIC 2024)由湖南第一师范学院主办,南京师范大学、山东女子学院、爱迩思出版社(ELSP)协办。 大会将专注于机器人、数字化、自动化、人工智能等技术的开发和融合,…...
[数据集][目标检测]电力场景防震锤缺陷检测数据集VOC+YOLO格式705张1类别
重要说明:防震锤缺陷图片太难找,数据集里面存在大量单一场景图片,请仔细查看图片预览谨慎下载,此外数据集均为小目标检测,如果训练map偏低属于正常现象 数据集格式:Pascal VOC格式YOLO格式(不包含分割路径…...
【SpringBoot】
目录 一、Spring Boot概要 1. SpringBoot介绍 2. SpringBoot优点 3. SpringBoot缺点 4. 时代背景-微服务 二、Spring Boot 核心配置 1. Spring Boot配置文件分类 1.1 application.properties 1.2 application.yml 1.3 小结 2. YAML概述 3. YAML基础语法 3.1 注意事…...
Linux操作系统中MongoDB
1、什么是MongoDB 1、非关系型数据库 NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问…...
2、.Net 前端框架:OpenAuth.Net - .Net宣传系列文章
OpenAuth.Net 是一个开源的身份验证框架,由开发者 Yubaolee 创建,它旨在简化 Web 应用和服务的安全授权过程。这个框架以其强大的功能和易用性,为开发人员提供了一种高效的方式来处理用户认证和授权问题。 OpenAuth.Net 的关键特性包括&#…...
unreal engine5制作动作类游戏时,我们使用刀剑等武器攻击怪物或敌方单位时,发现攻击特效、伤害等没有触发
UE5系列文章目录 文章目录 UE5系列文章目录前言一、问题分析二、解决方法1. 添加项目设置碰撞检测通道2.玩家角色碰撞设置3.怪物角色碰撞预设 最终效果 前言 在使用unreal engine5制作动作类游戏时,我们使用刀剑等武器攻击怪物或敌方单位时,发现攻击特效…...
数据权限的设计与实现系列11——前端筛选器组件Everright-filter集成功能完善2
筛选条件数据类型完善 文本类 筛选器组件给了一个文本类操作的范例,如下: Text: [{label: 等于,en_label: Equal,style: noop},{label: 等于其中之一,en_label: Equal to one of,value: one_of,style: tags},{label: 不等于,en_label: Not equal,v…...
C++ 游戏开发
C游戏开发 C 是一种高效、灵活且功能强大的编程语言,因其性能和控制能力而在游戏开发中被广泛应用。许多著名的游戏引擎,如 Unreal Engine、CryEngine 和 Godot 等,都依赖于 C 进行核心开发。本文将详细介绍 C 在游戏开发中的应用࿰…...
【历年CSP-S复赛第一题】暴力解法与正解合集(2019-2022)
P5657 [CSP-S2019] 格雷码P7076 [CSP-S2020] 动物园P7913 [CSP-S 2021] 廊桥分配P8817 [CSP-S 2022] 假期计划 P5657 [CSP-S2019] 格雷码 暴力50分 #include<bits/stdc.h> #define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0) #define int long long #d…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
React19源码系列之 事件插件系统
事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...
华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建
华为云FlexusDeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色,华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型,能助力我们轻松驾驭 DeepSeek-V3/R1,本文中将分享如何…...
C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...
今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存
文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...
R语言速释制剂QBD解决方案之三
本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...
前端工具库lodash与lodash-es区别详解
lodash 和 lodash-es 是同一工具库的两个不同版本,核心功能完全一致,主要区别在于模块化格式和优化方式,适合不同的开发环境。以下是详细对比: 1. 模块化格式 lodash 使用 CommonJS 模块格式(require/module.exports&a…...
AT模式下的全局锁冲突如何解决?
一、全局锁冲突解决方案 1. 业务层重试机制(推荐方案) Service public class OrderService {GlobalTransactionalRetryable(maxAttempts 3, backoff Backoff(delay 100))public void createOrder(OrderDTO order) {// 库存扣减(自动加全…...
