一、什么是协议?如何理解?
网络协议通俗的讲就是两台计算机之间通信所需要遵循的共同标准。
我们可以这样理解,比如有A,B两台电脑,A与B之间要相互进行通信,于是A向B发送了一段话,但是B收到这段话后,并不明白A在说什么,B不懂A发送的信息的意思。就好像一个中国人和一个法国人对话,中国人讲中文,法国人讲法语,结果谁也听不同谁在讲什么,于是想了一个办法,中国人讲英语,法国人也讲英语,于是他们就可以愉快的对话了。在计算机之间通信也是同样的道理,我们事先规定好通信的格式或者说规范,比如:字符“LOVE”表示什么意思,第2个字节表示什么含义等……只要大家都按同样的规范来表达自己的意思,那么计算机之间就能相互理解对方要表达的意思,也就能相互通信了。同一种“规范”遵守的人多了,也就成了标准,计算机网络中的标准就叫协议。
说到底:协议是人规定的一套通信规范,所以任何人都可以规定自己的协议,只要通信的双方能够共同遵守,你就实现了你的协议。
二、协议的实现
协议本身并不是一种软件,它只是一种通讯标准,但协议最终要由软件来实现。网络协议的实现就是在不同的软件和硬件环境下,执行可运行于该种环境的“协议”翻译程序。这些程序可能在WINDOWS下,也可能在UNIX下,也可能运行于一台个人电脑,也可能运行于一台服务器,也可能在你的手机中,这些程序可能都不一样,但却都会翻译同一种网络协议,比如(TCP/IP)协议。就如上图中的翻译都懂“英语”一样。
实现网络协议,听起来就象是给所有接入网络的设备配备了一个“通用语言翻译器”,这些翻译都懂通用语言“英语”,同时也懂得本国语言,这样就能实现不同国家不同环境的人接入同一个网络并进行交流了。
那么,可否选择“中文”作为网络协议呢?当然可以,但前提是大家都愿意遵守你的标准,都愿意说中文。实际上,“中文”也是一种网络协议,但它只是属于中国人的网络协议。