我如何开始编写自己的IP-Like协议?

时间:2012-05-23 19:00:44

标签: c++ c networking ip protocols

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

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

3 个答案:

答案 0 :(得分:4)

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

已完成的示例包括DECnet,NetBIOS,Appletalk和ATM。虽然我不确定它是否按预期完全实现(尽管DECNet非常接近),但标准的OSI 7层网络模型最初是打算作为实际实现的模型(即,意图是人们会实现这些层,你可以通过将每个层选择的实现插入一起来构建一个完整的网络堆栈。)

当然,我们大多数人认为今天的IP实际上是IPv4 - 正如您可以从版本号猜测的那样,它有前辈(以及后续版本的IPv6)。

编辑:关于 你是如何做到的:非常像其他任何东西。我首先要写一些关于你的动机 - 你想要完成什么,它应该支持什么样的操作等等。然后开始研究你能想到的最简单的设计,它可以做你想要的。然后,当您使用它并遇到问题时,弄清楚它们是否源于执行不良或设计本身的缺点。根据需要修改其中一个或两个,尽可能保持其演变的连贯性和可理解性。

答案 1 :(得分:0)

  是否有可能编写一个与之相同的协议   互联网协议?

是的,可以编写自己的IP堆栈,但除非你是编程和网络方面的专家级别,否则实际上很难(并且实际上做得很好)非常困难

答案 2 :(得分:0)

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

  • 特殊硬件(对于实际的物理实现,假设您的协议与IP大不相同)
  • 支持您的协议的您喜欢的操作系统的设备驱动程序
  • 可能是一个促进实施的高级API

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