计算机网络:计算机网络体系结构 —— 专用术语总结

news2024/11/16 5:38:48

文章目录

      • 专用术语
        • 实体
        • 协议
        • 服务
          • 服务访问点 SAP
        • 服务原语 SP
      • 协议数据单元 PDU
        • 服务数据单元 SDU

专用术语

实体

实体是指任何可以发送或接收信息的硬件软件进程

对等实体是指通信双方处于相同层次中的实体,如通信双方应用层的浏览器进程和 Web 服务器进程。

协议

协议是指控制两个对等实体在“水平方向”进行逻辑通信(不实际存在)的规则的集合,即计算机网络中设备之间进行通信和交互所遵循的规则和约定。

协议定义了数据在网络中的传输方式、数据包格式、错误检测和纠正机制、连接建立和终止等过程,确保网络中的设备能够正确地发送、接收和处理数据。

![[Protocol Model.png]]

协议的组成有三个要素:

  1. 语法:定义通信双方所交换信息的格式

如 IP 协议中 IPv4 数据报的首部格式,语法定义了如下小格子(字段/域)的长度和先后顺序:

![[IPv4 Data Model.png]]

  1. 语义:定义通信双方所要完成的操作

  2. 同步:定义通信双发的时序关系。如需先发送 HTTP 请求报文后,才可发送相应的 HTTP 响应报文

服务

在协议的控制下,两个对等实体在水平方向的逻辑通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下一层所提供的服务。

服务指的是网络提供给用户的各种功能和资源。这些服务可以是基础设施服务、通信服务、应用服务等不同类型的网络功能。

![[Network Serve Hierarchy Model.png]]

协议是“水平”的,而服务是“垂直”的。实体看的见下层提供的服务,但并不知道实现该服务的具体协议,下层的协议对上层的实体是“透明”的

以下是计算机网络中常见的服务类型:

  1. 数据传输服务:数据传输服务是网络中最基本的服务,它提供了数据在网络中的传输功能。这包括通过物理链路传输数据包、数据的路由选择和转发等。

  2. 网络连接服务:网络连接服务提供了设备之间建立连接的功能,例如建立 TCP 连接或通过网络层协议进行路由选择。

  3. 安全服务:安全服务用于保护网络中的数据和通信的机密性、完整性和可用性。这包括对数据的加密、身份验证、访问控制等安全机制。

  4. 媒体服务:媒体服务涉及音频、视频和实时流媒体等传输。网络中的实时通信、视频会议、流媒体点播等都属于媒体服务。

  5. 应用服务:应用服务是网络中支持特定应用功能的服务,例如电子邮件、Web浏览、文件传输等。这些服务利用应用层协议在网络上传输和处理数据。

  6. 命名与寻址服务:命名与寻址服务解决了网络中标识和定位设备的问题。域名系统(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)是计算机网络通信中的基本操作或基本命令。它们是用于在网络中进行服务请求、响应和处理的原始操作。

服务原语用于在网络中的不同通信实体之间进行通信和交互,可以描述网络中的各种操作和行为。服务原语通常功能简单、灵活,并且可以通过组合和序列化来实现更复杂的通信过程。

服务原语的一般形式包括两个主要方面:

  1. 操作码(Operation Code):操作码表示服务原语执行的具体操作类型,例如请求服务、提供服务、确认、拒绝等。

  2. 数据(Data):数据部分包含与服务原语相关的具体数据和信息。根据不同的操作类型,数据可以包括请求的参数、响应的结果、错误码等信息。

服务原语的例子包括:

  1. 请求服务原语:用于向其他通信实体发起请求,请求特定的服务或操作。

  2. 提供服务原语:用于通知其他通信实体自己能够提供某项服务或操作。

  3. 确认原语:用于确认接收到的服务请求或响应,并表示对请求作出积极响应。

  4. 拒绝原语:用于拒绝接收到的服务请求或响应,并表示无法满足请求。

  5. 传输数据原语:用于将数据从一个通信实体传递到另一个通信实体。

  6. 结束会话原语:用于终止网络会话或通信连接。

服务原语在不同的网络体系结构和协议中可能有所不同。例如,在OSI参考模型中,服务原语被称为原语协议数据单元(PPDU),在TCP/IP协议中,服务原语以各种协议消息的形式存在。

协议数据单元 PDU

协议数据单元(Protocol Data Unit,PDU)是在计算机网络中传输的数据的最小单元。它是在不同层次的网络协议中传输的数据包或帧的术语。

对等层次之间传输的数据包成为该层的协议数据单元。

在通信过程中,数据被分割并封装到不同的 PDU 中,以便在网络中进行传输和交换。每个网络层次的协议都定义了相应的 PDU 格式和内容。

在参考模型中,不同层次的 PDU 具有不同的名称:

  1. 物理层 PDU:在物理层,PDU 是比特(bit)的传输单位,称为比特流

  2. 数据链路层 PDU:在数据链路层,PDU 被称为(Frame),它包含了数据以及错误检测和控制信息,如帧起始标记、帧结束标记、地址、控制位和错误检测码等。

  3. 网络层 PDU:在网络层,PDU 通常称为数据报(Datagram)或 分组(Packet),它包括源地址、目标地址、路由信息等,以便在网络中进行路由和转发。

  4. 传输层 PDU:在传输层,PDU 被称为(Segment)或报文段(Message Segment),它包含了传输控制信息,例如源端口号、目标端口号、序列号和校验和等。根据不同的协议,PDU 具有不同的称呼,如使用 UDP 协议,称为 UDP 用户数据报;使用 TCP 协议,则称为 TCP 报文段

  5. 应用层 PDU:在应用层,PDU 通常称为应用报文(Message),它是应用程序所发送和接收的数据单元。

不同网络协议和架构可能对 PDU 的定义和命名有所不同。例如,在 TCP/IP 协议中,网络层的 PDU 被称为 IP 数据报,传输层的 PDU 被称为报文段或 TCP 数据报。

服务数据单元 SDU

同一系统内层与层之间交换的数据包称为服务数据单元。

服务数据单元(Service Data Unit,简称SDU)是在计算机网络中传输的数据的逻辑单元。它是在服务接口之间传递的信息块,用于实现不同层次、不同服务之间的数据传输和交互。

在通信过程中,SDU 由上层向下层传递,直到最终被封装为 PDU 进行物理传输。每个层次的协议都将接收到的 SDU 解封并添加自己的协议头和尾,生成相应的 PDU,并将其传递到下一层。

SDUPDU 是不同的概念。PDU 是网络中传输的实际数据包或帧,包含了协议头和尾部,用于在网络中进行传输和交换。而 SDU 是在服务接口之间传递的数据单元,它可能包含应用层数据、控制信息、错误检测码等。

假设一个应用程序发起一个数据传输请求,它将数据作为 SDU 发送给传输层协议。传输层将接收到的 SDU 进行封装,生成传输层 PDU,并添加传输控制信息,例如源端口号、目标端口号等。传输层的 PDU 被传递给网络层,在网络层再次封装为网络层 PDU,并添加源 IP 地址、目标 IP 地址等信息。最终,该网络层 PDU 被传输到物理层,根据具体的物理介质进行传输。

![[Pasted image 20240118202419.png]]

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

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

相关文章

Java组件化开发:jar包

我在java基础:原始数据类型,包的创建与导入-CSDN博客一文中记录了包的使用,此文就详细讲解一下IDEA中如何进行组件化开发。 介绍 现在的软件系统功能越来越复杂,规模也越来越大,为了应对这种挑战,人们将“…

深入解析Python错误消息及解决方法

深入解析Python错误消息及解决方法 Python是开发者广泛使用的语言,因其简洁的语法和强大的标准库而深受欢迎。然而,Python程序在运行过程中,错误不可避免。理解Python的错误消息并正确处理这些错误,是提升代码质量和调试效率的重…

3.点位管理改造-列表查询——帝可得管理系统

目录 前言一、与页面原型差距1.现在:2.目标:3. 存在问题:所在区域和合作商ID展示的都是ID,而不是名称;同时合作商ID应改为合作商 二、修改1.重新设计SQL语句2.修改mapper层,使用Mybatis中的嵌套查询3.修改s…

AI人工智能人像修饰中文面板PS插件 Retouch Pro 3.2.0 中文汉化版

AI人工智能人像修饰PS扩展插件 Retouch Pro 3.2.0 中文汉化版 支持软件:PS 2018 – PS 2025或更高版本 系统要求:Windows系统 或 MacOS系统 出处:https://www.aeown.com/thread-3061-1-1.html Retouch Pro Panel 有一个非常强大和先进的人工…

Python Tips6 基于数据库和钉钉机器人的通知

说明 起因是我第一版quant程序的短信通知失效了。最初认为短信是比较即时且比较醒目的通知方式,现在看来完全不行。 列举三个主要问题: 1 延时。在早先还能收到消息的时候,迟滞就很严重,几分钟都算短的。2 完全丢失。我手机没有…

ACP科普:SoSM和CPO

在Scrum of Scrums(SoS)框架中,SoSM(Scrum of Scrums Master)和CPO(Chief Product Owner)是两个关键角色,负责协调多个Scrum团队的工作,确保项目的顺利进行。以下是对这两…

Android AMS介绍

注:本文为作者学习笔记,如有误,请各位大佬指点 系统进程运行环境的初始化 Context是一个抽象类,它可以访问application环境的全局信息和各种资源信息和类 context功能: 对Activity、Service生命周期的管理通过Intent发…

c++进阶之多态讲解

这篇文章和大家一起学习一下c中的多态 多态的概念 多态的概念:通俗来讲,就是多种形态。多态分为编译时多态(静态多态)和运⾏时多态(动态多态)。 什么是静态多态 前⾯讲的函数重载和函数模板,它们传不同类型的参数就可以调用不同的函数&…

深入理解 C 语言中的内存操作函数:memcpy、memmove、memset 和 memcmp

目录: 前言一、 memcpy 函数二、 memmove 函数三、 memset 函数四、 memcmp 函数总结 前言 在 C 语言中,内存操作函数是非常重要的工具,它们允许我们对内存进行直接操作,从而实现高效的数据处理。本文将深入探讨四个常用的内存操…

zabbix7.0web页面删除主机操作实现过程

前言 服务端配置 链接: rocky9.2部署zabbix服务端的详细过程 被监控端配置 链接: zabbix7.0监控linux主机案例详解 环境 主机ip应用zabbix-server192.168.10.11zabbix本体zabbix-client192.168.10.12zabbix-agent zabbix-server(服务端已配置) zabbix-client(被监控端已配置…

Bruno:拥有 11.2k star 的免费开源 API 测试工具

Github 开源地址: https://github.com/usebruno/bruno 官网地址: https://www.usebruno.com/ 下载地址: https://www.usebruno.com/downloads 使用文档: https://docs.usebruno.com/ Bruno 是一款全新且创新的 API 客户端&…

微调学习记录

目前看到的市面上的微调文章,想大体上给他们分个类,方便后续进行重点学习 参数高效微调 1. LoRA 不用多说含金量 2. Rein https://github.com/w1oves/rein 把它也算进来了,类似。 Adapter adapter类的我感觉都大差不差,具体…

VisionTS:基于时间序列的图形构建高性能时间序列预测模型,利用图像信息进行时间序列预测

构建预训练时间序列模型时面临的主要挑战是什么?获取高质量、多样化的时间序列数据。目前构建基础预测模型主要有两种方法: 迁移学习LLM:通过针对时间序列任务定制的微调或分词策略,重新利用预训练的大型语言模型(LLM…

餐饮重点企业在AI领域的布局,看方大的AI实践

大家好,我是Shelly,一个专注于输出AI工具和科技前沿内容的AI应用教练,体验过300款以上的AI应用工具。关注科技及大模型领域对社会的影响10年。关注我一起驾驭AI工具,拥抱AI时代的到来。 AI已经被应用在餐饮餐厨行业的哪些方面&am…

Spring注解系列 - @Autowired注解

文章目录 使用总结注入原理Autowired 注入过程InjectionMetadataInjectedElement依赖注入查找过程findAutowireCandidates 缓存注入信息 Resource 注解 使用总结 Autowired注解可以自动将所需的依赖对象注入到类的属性、构造方法或方法中,从而减少手动注入依赖的代…

Android Compose的基本使用

前言: Compose这个东西呢,好处我没发现,坏处就是学习成本和低版本兼容. 不过,看在官方力推的份儿上,有空就学一下吧. 当初的kotlin,很多人说鸡肋(包括我)!现在不也咔咔用纯kotlin做项目吗?哈哈哈哈. 未来的事情,谁说得清呢? 首先创建一个专用的Compose项目 对没错!看到E…

体系结构论文(五十三):Featherweight Soft Error Resilience for GPUs 【22‘ MIRCO】

Featherweight Soft Error Resilience for GPUs 一、文章介绍 背景:软错误通常由高能粒子(如宇宙射线和α粒子)打击电路造成的位翻转,可能导致程序崩溃或产生错误输出。随着电子技术的进步,电路对这种辐射引发的软错…

Arduino UNO R3自学笔记14 之 Arduino使用HC-SR04模块如何测量距离?

注意:学习和写作过程中,部分资料搜集于互联网,如有侵权请联系删除。 前言:学习使用HC-SR04模块测距。 1.HC-SR04模块介绍 基本参数: ●使用电压:DC---5V ●静态电流:小于2mA ●电平输出&#…

【计算机网络】传输层UDP和TCP协议

目录 再谈端口号端口号范围划分认识知名端口号查看知名端口号两个问题 UDP协议UDP特点UDP的缓冲区基于UDP的应用层协议 TCP协议TCP协议格式确认应答机制超时重传机制连接管理机制(三次握手与四次挥手)理解TIME_WAIT状态理解CLOSE_WAIT状态滑动窗口快重传…

wsl(1) -- win11环境配置

1.前言 本专栏主要记录了我配置wsl的过程,以便日后回忆。 2. 开启WSL可选功能 打开设置,点击应用,点击可选功能,点击更多Windows功能,查看是否开启了【适用于Linux的Windows子系统】和【虚拟机平台】 3. 更新wsl …