协议是用编程语言编写的吗?

网络工程 路由 协议论 互联网
2022-02-22 09:39:17

HTTP、IP、BGP 等协议是用编程语言编写的还是简单的英文文本?

如果它是用简单的英语编写的,那么它是如何与网络浏览器、交换机/路由器通信的?

1个回答

协议的规范通常用简单的英语编写;当它们被实现时,它们是用各种编程语言编写的。它们由阅读规范并弄清楚如何使其在他们正在使用的计算机上工作的程序员进行转换。

最短最容易理解的规范之一是“ RFC 868 时间协议

一个程序员坐下来想办法做到这一点,也许

s = socket.socket()
s.connect((hostname, 37))
s.recv(4)
...

有时,一个程序已经存在,并从中编写了一个规范,以便其他人可以在其他编程语言或环境中重新创建它。

甚至更偶尔地,检查工作程序之间的流量,并编写规范作为对所见内容的解释。其中最著名的是 Samba 团队如何弄清楚 SMB 文件服务协议的细节。“法国咖啡馆”技术