什么是协议

什么是协议

  计算机网络中有一个术语:协议。什么是协议,协议的作用是什么?为了理解这一概念,我们可以通过和一些人类活动场景类比来理解。

场景一

  如下图1左侧所示,该场景是我们生活中比较典型的交流场景。
  人与人之间的交流,总是需要先由其中一方传递一个“我要和你交流”的信号,从而开始与另一方的交流。对应到图1的场景,信号就是第一个“你好”。然后如果对方如果有意向和你继续交流,就会返回给你一个“我愿意和你交流”的响应信息。图1的第二个“你好”就是对方返回的响应信息,表示我能够和对方继续交流。对于第一个“你好”的其它不同响应(例如“不要烦我!”,或“我不会说英语”,或其他不合适的回答)也许代表的就是一个勉强的或不能进行交流的含义。在此情况下,在图1场景中我们就无法询问对方时间。有时,问的问题根本得不到对方任何回答,此情况下,我们通常也会放弃向对方询问。在人类协议中,有我们发送的特定报文,也有我们根据接收到的应答报文或其他事件采取的动作(例如某个给定的时间内没有回答)。显然,发送和接收的报文,以及这些报文发送和接收或其他事件出现时所采取的动作,这些在人类协议中起到了核心作用。如果双方使用的协议不同(例如,一个人讲礼貌,另一个人不讲礼貌,或一个人明白时间的概念,另一个人却不明白),则双方就无法进行互动,因而也就不能完成有用的工作。同样的,网络中也遵循这一原则,即为了完成某一工作,要求两个(或多个)通信实体运行相同的协议
  
人类协议与计算机网络协议
图1 人类协议与计算机网络协议

场景二

  第二个场景假设你正在大学课堂里上课(例如是计算机网络课程)。教师正在唠唠叨叨地讲述协议,而你却对某些地方困惑不解。此时,教师停下来问:“同学们有问题吗?”(教师发送出一个报文,该报文所有没有睡觉的学生接收到了)你举起了手(向教师发送了一个隐含的报文),这位教师微笑地示意你说:“请讲……”,接着你就问了自己不懂的地方(即向教师传输了你的报文)。教师听取了你的问题(即接收了你的问题报文)并加以回答(向你传输了回答报文)。这个过程中,我们再一次看到了报文的发送和接收,以及这些报文发送和接收时所采取的一系列约定俗成的动作,这些是这个“提问与回答”协议的核心。

协议的概念

  网络协议类似于人类协议,除了交换报文和采取动作的实体是某些设备的硬件或软件组件(这些设备可以是计算机、智能手机、平板电脑、路由器或其他具有网络能力的设备)。在因特网中,凡是涉及两个或多个远程通信实体的所有活动都受协议的制约。例如,在两台物理连接的计算机中,硬件实现的协议控制了在两块网络接口卡间的“线上”的比特流;在端系统中,拥塞控制协议控制了在发送方和接收方之间传输的分组发送的速率。
  以网页访问这一场景为例,如图1右侧所示。当你向一个Web服务器发出请求时(在浏览器中输入一个网页的URL并回车),你的计算机将向改Web服务器发送一条连接请求报文,并等待回答。该Web服务器最终接收到连接请求报文,并返回一条连接响应报文。得知请求改Web文档正常后,计算机则在一条GET报文中发送要从这台Web服务器上取回的网页名字。最后,Web服务器向计算机返回该Web网页(文件)。
  从以上的人类场景和网络例子中可知,报文的交换以及发送和接收这些报文时所采取的动作是定义一个协议的关键元素:
  

一个协议定义了在两个或多个通信实体之间交换的报文格式和次序,以及报文发送(或接收报文或其他事件)所采取的行动。

  计算机网络广泛地使用了协议,不同的协议用于完成不同的通信任务。

参考书籍:《计算机网络自顶向下方法第六版》

  • 43
    点赞
  • 107
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值