查看“计算机网络协议、接口、服务的概念”的源代码
←
计算机网络协议、接口、服务的概念
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
协议,就是规则的集合。在网络中要做到有条不紊地交换数据,就必须遵循一些事先约定好的规则。这些规则明确规定了所交换的数据的格式及有关的同步问题。这些为进行网络中的数据交换而建立的规则、标准或约定称为网络协议(Network Protocol),它是控制两个(或多个)对等实体进行通信的规则的集合,是水平的。不对等实体之间是没有协议的,比如用TCP/IP协议栈通信的两个结点,结点A的传输层和结点B的传输层之间存在协议,但结点A的传输层和结点B的网络层之间不存在协议。网络协议也简称为协议。 <br> == 协议 == 协议由语法、语义和同步三部分组成。语法规定了传输数据的格式;语义规定了所要完成的功能,即需要发出何种控制信息、完成何种动作及做出何种应答;同步规定了执行各种操作的条件、时序关系等,即事件实现顺序的详细说明。一个完整的协议通常应具有线路管理(建立、释放连接)、差错控制、数据转换等功能。 <br> == 接口 == 接口是同一结点内相邻两层间交换信息的连接点,是一个系统内部的规定。每层只能为紧邻的层次之间定义接口,不能跨层定义接口。在典型的接口上,同一结点相邻两层的实体通过服务访问点(Service Access Point, SAP)进行交互。服务是通过SAP提供给上层使用的,第n层的SAP就是第n+1层可以访问第n层服务的地方。每个SAP都有一个能够标识它的地址。SAP是一个抽象的概念,它实际上是一个逻辑接口,但和通常所说的两个设备之间的硬件接口是很不一样的。 <br> == 服务 == 服务是指下层为紧邻的上层提供的功能调用,它是垂直的。对等实体在协议的控制下,使得本层能为上一层提供服务,但要实现本层协议还需要使用下一层所提供的服务。 上层使用下层所提供的服务时必须与下层交换一些命令,这些命令在OSI参考模型中称为服务原语。OSI参考模型将原语划分为4类: 1. 请求(Request)。由服务用户发往服务提供者,请求完成某项工作。 2. 指示(Indication)。由服务提供者发往服务用户,指示用户做某件事情。 3. 响应(Response)。由服务用户发往服务提供者,作为对指示的响应。 4. 证实(Confirmation)。由服务提供者发往服务用户,作为对请求的证实。 <br> 这4类原语用于不同的功能,如建立连接、传输数据和断开连接等。有应答服务包括全部4类原语,而无应答服务则只有请求和指示两类原语。 <br> 一定要注意,协议和服务在概念上是不一样的。首先,只有本层协议的实现才能保证向上一层提供服务。本层的服务用户只能看见服务而无法看见下面的协议,即下面的协议对上层的服务用户是透明的。其次,协议是“水平的”,即协议是控制对等实体之间通信的规则。但服务是“垂直的”,即服务是由下层通过层间接口向上层提供的。另外,并非在一层内完成的全部功能都称为服务,只有那些能够被高一层实体“看得见”的功能才称为服务。 <br> 计算机网络提供的服务可按以下三种方式分类。 <ol style="list-style-type: decimal;"> <li><p>面向连接服务与无连接服务</p> <p>在面向连接服务中,通信前双方必须先建立连接,分配相应的资源(如缓冲区),以保证通信能正常进行,传输结束后释放连接和所占用的资源。因此这种服务可以分为连接建立、数据传输和连接释放三个阶段。例如 TCP就是一种面向连接服务的协议。</p> <p>在无连接服务中,通信前双方不需要先建立连接,需要发送数据时可直接发送,把每个带有目的地址的包(报文分组)传送到线路上,由系统选定路线进行传输。这是一种不可靠的服务。这种服务常被描述为“尽最大努力交付” (Best-Effort-Delivery),它并不保证通信的可靠性。例如IP、UDP就是一种无连接服务的协议。</p></li> <li><p>可靠服务和不可靠服务</p> <p>可靠服务是指网络具有纠错、检错、应答机制,能保证数据正确、可靠地传送到目的地。</p> <p>不可靠服务是指网络只是尽量正确、可靠地传送,而不能保证数据正确、可靠地传送到目的地,是一种尽力而为的服务。对于提供不可靠服务的网络,其网络的正确性、可靠性要由应用或用户来保障。例如,用户收到信息后要判断信息的正确性,如果不正确,那么用户要把出错信息报告给信息的发送者,以便发送者采取纠正措施。通过用户的这些措施,可以把不可靠的服务变成可靠的服务。</p></li> <li><p>有应答服务和无应答服务</p> <p>有应答服务是指接收方在收到数据后向发送方给出相应的应答,该应答由传输系统内部自动实现,而不由用户实现。所发送的应答既可以是肯定应答,也可以是否定应答,通常在接收到的数据有错误时发送否定应答。例如,文件传输服务就是一种有应答服务。</p> <p>无应答服务是指接收方收到数据后不自动给出应答。若需要应答,则由高层实现。例如,对于www服务,客户端收到服务器发送的页面文件后不给出应答。</p></li></ol> <br>
返回至“
计算机网络协议、接口、服务的概念
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
基础知识
正则表达式
Markdown
分布式
项目管理
系统集成项目管理基础知识
云原生
Docker
云原生安全
云原生词汇表
十二因素应用
Kubernetes
音频处理
音频合成
Edge-tts
CMS系统
Docsify
VuePress
Mediawiki
自动生成
Marp
CI/CD
GitLab
设计
颜色
平面设计
AI
数字人
操作系统
GNU/Linux
数据库
Mysql
工具
链入页面
相关更改
特殊页面
页面信息