如何开始编写自己的类 IP 协议

How do I get started writing my own IP-Like Protocol?

本文关键字:自己的 IP 协议 何开始 开始      更新时间:2023-10-16

所以我的问题是,是否有可能编写一个与互联网协议相同的协议,如果是这样,我该如何开始?不要说,"互联网协议还不够好吗?",是的,只是看看是否有可能:P

我想更多地了解如何,只是为了学习如何完成协议。我在编程方面有一些经验,但不像网络协议那样。

简短的回答是肯定的 - 它已经完成了,并且可以再次完成。

已经完成的例子包括DECnet,NetBIOS,Appletalk和ATM。虽然我不确定它是否完全按预期实现(尽管 DECNet 非常接近(,但用于网络的标准 OSI 7 层模型最初旨在作为实际实现的模型(即,目的是人们将实现这些层,并且您将能够通过将您选择的每层的实现插入在一起来构建一个完整的网络堆栈(。

当然,我们大多数人今天认为的IP实际上是IPv4 - 正如你可能从版本号中猜到的那样,它有前身(以及后继者IPv6(。

编辑:至于你怎么做:几乎就像其他任何东西一样。我会先写一些关于你的动机的东西 - 你想要完成什么,它应该支持什么样的操作,等等。然后开始研究最简单的设计,你可以弄清楚它可以做你想要的。然后,当你使用它并遇到问题时,弄清楚它们是否源于糟糕的实现,还是设计本身的缺陷。根据需要修改一个或两个,尽量保持其演变的连贯性和可理解性。

简而言之:是的,这是可能的。在更高级别(即 OSI 第 7 层(,它每天完成。如果要实现下一个 IP,您只需要:

  • 特殊硬件(用于实际的物理实现,假设您的协议与IP有很大不同(
  • 支持您的协议的您喜欢的操作系统的设备驱动程序
  • 也许是一个高级 API 来促进实现

编辑:看到另外两个人打败了我;)

是否有可能编写一个与 网际协议?

是的,可以编写自己的IP堆栈,但是除非您在编程和网络方面都是专家,否则要真正继续这样做(并且实际上做对了(是非常困难