伍佰目录 短网址
  当前位置:海洋目录网 » 站长资讯 » 站长资讯 » 文章详细 订阅RssFeed

计算机世界的“协议”指的是什么

来源:本站原创 浏览:95次 时间:2022-10-31

经常听一些技术牛人演讲,张嘴闭嘴就是某某协议。各种协议成百上千种,小白听了一脸懵,又不敢多问。协议像只能意会不能言传的东西。介绍具体协议的资料通篇生硬的描述,只有本来就懂的人才能看懂。

本文不解读具体协议,仅用通俗的话谈谈对计算机世界“协议”的理解。一句话,协议就是法律,这个法律规定了不同的系统之间交换信息时如何解读信息。

如果一个人看一篇没有标点符号的文章,他可以根据常识,对文章进行断句,能大概分辨标题、作者、正文,以及文章表达了什么。但计算机系统不是人,不能对接受的一串信息进行智能的断句。所以要硬性的规定,第几个字到第几个字是标题,第几个字到第几个字是作者,......第几个字到第几个字是故事正文。有了这个规定,即使盲人也能将标题、作者、正文准确的提取出来了,一个一个数就可以了呀。当然这是最简单的规定,复杂的也可以用空格,回车,空行,关键字,特殊符号,标签等来区分信息要素。这些规定就是计算机世界的法律,被称作协议。这些协议保证了计算机各个系统可以正确的交换信息。生活中的法律有多种,适用不同的情况。同理计算机世界协议几百上千种。浏览网页有http协议,传输文件有ftp协议,发邮件有smtp协议。程序员按规定的接口(函数长什么样子)实现代码,这也是在遵守一种协议,否则不同人开发的代码没法成功互相调用。

有的大公司自己有内部协议,也可能被叫做报文格式。如果你参与开发这类公司的系统,还要遵守这些内部协议,否则内部系统之间就没法交流了。


上图是http协议的格式规定,所有用来浏览网页的客户端和服务端,无论用什么语言开发,什么架构,都要按照上图的样子发送数据和解析接收到的数据。如果你违背了这个协议,比如你发送数据没按上面的格式拼,所有网页都打不开。服务器接收数据没按照上面的格式解析,那就完全不知道对方在请求什么了。

下面wireshark抓包工具,抓取访问中国日报cn.chinadaily.com.cn的http数据为例,说明浏览器是严格按照http协议要求发送请求的。

下面的红框表示数据流是http协议的。在上面红框处,右键->追踪流->http,查看http数据如下

对照抓包数据和http请求的协议规定的格式,方法是GET ,URL是/image/2016/p-19.jpg,协议版本是HTTP/1.1,后面都是头部字段名:值回车换行的格式了。这些格式都是浏览器按照规范拼装的,所有浏览器无论具体实现差异多大,发送出的数据都是这个模子的。

大家可能听说过RFC文档,编号都不知道到多少了。这些文档规定了很多互联网数据格式。例如RFC2821,RFC2822对电子邮件数据格式做了规定。其中一条是,邮件头和邮件体之间必须要有一个空行,假设你用Python写发送邮件的功能,拼装的邮件数据缺少这一空行,很可能这封邮件是发送不出去的。说很可能是因为有的邮件服务器没有严格遵守协议,或者就是个bug,用这个邮件服务器对应的邮箱是能成功发送邮件的。但是为了保证用任何邮件服务器都能成功,大家开发相关功能时最好严格遵守相关协议。

通信领域的各种协议也是一样的道理,不管各家公司具体怎么实现,只要最后的数据拼的符合协议,信号符合规定,就完成了功能。

总之,协议就是法律,做哪个领域的工作,就遵守那个领域的法律。遇到大牛说协议不用慌,找到对应文档一句一句读,读完你比他都熟悉这个协议了。


  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net