IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 协议的理解 -> 正文阅读

[网络协议]协议的理解

概念

在学习网络时,我们需要推敲一下协议的字面意思。

现实世界

下面是百度百科对于协议意思的解释:

意思是共同计议,协商;经过谈判、协商而制定的共同承认、共同遵守的文件。
在法律范畴中:
协议是指两个或两个以上实体为了开展某项活动,经过协商后双方达成的一致意见。

个人理解是在一个场景中,两个或两个以上的事物在面对同一个问题时,所有事物参与问题分析、提出解决方案,并将所有的解决方案经过所有参与方的协商共同制定出来的整体解决方案。对于这个解决方案中所有规则,所有参与方都必须严格最后。

举个例子:
我们进入一家新的公司工作时,我们可能会签订保密协议、竞业协议等等,这些协议就和网络协议类似。协议中罗列了很多条目,每个条目都会针对一种情况说明如何执行。比如在保密协议中有这么一条:

甲方提供正常的工作条件,为乙方的发明、科研成果提供良好的应用和生产条件,并根据创造的经济效益给予奖励。

如果乙方的发明给甲方(公司)创造了经济效益,那么甲方就必须给乙方提供奖励;如果乙方的发明没有给甲方(公司)创造经济效益,那么甲方就不必须给乙方提供奖励。

协议是一种规范,规范所有参与方的行为。没有协议就会混乱,说不清道不明或不在同一频道。
协议是一种背景知识和行为规范。

计算机世界

计算机中的协议与现实世界的协议道理是一样的。

引用百度百科对计算机协议意思的解释:

协议,网络协议的简称,网络协议是通信计算机双方必须共同遵从的一组约定。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。它的三要素是:语法、语义、时序。
为了使数据在网络上从源到达目的,网络通信的参与方必须遵循相同的规则,这套规则称为协议(protocol),它最终体现为在网络上传输的数据包的格式。
网络协议,也可简称协议,通常由三要素组成:
(1)语法:即数据与控制信息的结构或格式;
(2)语义:即需要发出何种控制信息,完成何种动作以及做出何种响应;
(3)时序(同步),即事件实现顺序的详细说明。?[1]?
是一系列的步骤: 它包括两方或多方,设计它的目的是要完成一项任务!

个人对协议的理解是:通信的形式多种多样,只要涉及通信就涉及到协议。

举个例子:
你对你朋友说:这个苹果真好吃,现在你能用刀帮我削皮吗?,你朋友回答:是的,这个苹果是真的好吃,那我用刀帮你削皮吧。
提取这个例子中的名词:苹果、刀、皮,动词:削;形容词:真好吃,时态:现在
名词是你和你朋友具有相同的背景知识,否则你朋友根本不知道这些是什么。(语法
动词:这是对行为的一种指导或规范,是用刀削。(语义
形容词:真好吃是一种感觉的形容,这也需要你们具有相同的背景知识(更确切说是口味),否则你们会你说好吃,你朋友说难吃。
时态:现在先拿起刀,然后苹果皮,削皮完成后拿给我吃。(时序

计算机中的模块(这里使用模块是不想使用一个具体的概念,比如:计算机网卡等等)A要和模块B通信,那么两个模块要先创建一个协议,否则模块A和模块B互相看不懂通信中在说什么。
举个例子(无协议):
模块A发送一个abcd给模块B,模块B收到后不知道什么意思,更不知道如何处理,这就是缺少语义的表现。

参考

  1. https://baike.baidu.com/item/%E5%8D%8F%E8%AE%AE/670528
  2. https://baike.baidu.com/item/%E4%BF%9D%E5%AF%86%E5%8D%8F%E8%AE%AE
  3. https://baike.baidu.com/item/%E5%8D%8F%E8%AE%AE/13020269
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-02-19 01:33:50  更:2022-02-19 01:36:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年10日历 -2024/10/5 11:25:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码