为什么 VPN 不是协议?

网络工程 虚拟专用网 协议理论
2021-07-21 05:34:43

VPN 是第 3 层概念吗? 说“VPN 不是协议”。

VPN 是一种应用程序吗?

为什么 VPN 不是协议?

我如何判断某事是否是协议?

谢谢。

2个回答

协议是一组关于如何完成某事的规则,而网络协议是一组关于如何在网络上进行通信的规则。

VPN 是一个概念,VPN 使用协议来完成这个概念,但 VPN 本身并不是一个协议。例如,VPN 可以使用 SSH(一种协议)、使用 TCP(一种协议)、使用 IPv4(一种协议)等,但 VPN 概念不是一种协议。

这样想一想,VPN和隧道有很多种,每一种都使用一种或多种特定的协议来完成VPN,但VPN本身并不是协议。

作为已经很好的答案的替代方案:

您可以使用以下启发式方法协议更高级别的概念区分开来

  • 协议由规则定义
  • 更高层次的概念通常由目的定义

考虑“文件传输”。这是一个目的:将文件从主机 1 获取到主机 2,并且有大量程序使用大量协议来实现此目的。(在维基百科上列出。)

另一个将协议与目的区分开来的问题:“定义在哪里,以便我可以开始编码?” 如果答案是“某某文件”,那就是协议。

考虑“FTP”、“kermit”和“rsync”:它们都是为了从 A 到 B 获取文件,但它们是协议,分别由RFC 959、da Cruz 的 BYTE 文章和后续书籍中的规则定义(参见维基百科上的参考文献)和 Tridgell 的博士论文它们旨在涵盖不同的情况并处理不同的问题,但它们的共同点是它们的目的。

您关于 VPN 的特定问题只是比文件传输更棘手,因为 VPN 通常在最终用户应用程序下使用。它们由其目的定义:“以虚拟方式提供专用链接的专用网络功能”。没有您可以阅读并开始编码的文档。但是如果你想要 GRE 作为你的协议,你可以阅读RFC 1701并开始编程。