Ad-Hoc网络控制

时间:2013-03-20 01:56:43

标签: c++ adhoc

我正在编写一个需要创建ad-hoc网络的程序。一旦它被创建并且其他节点连接,我需要一种方法来确定网络上每个节点的ip(或者形成连接的其他方式。我更喜欢使用tcp和/或udp,但我不需要)。一旦我有办法连接到其他节点,我需要确定这台机器和我希望连接的节点之间的跳数。

我已经浏览了很多这方面的信息,但无济于事....有没有人知道是否有一个已经到位的API?如果没有,我将如何创建自己的......

1 个答案:

答案 0 :(得分:1)

我知道这个问题很老,但我在这个领域有丰富的经验。

您需要的是一种ad hoc路由协议,通常称为MANET(Mobile Adhoc NETwork)协议。我建议你看看OLSR,它由IETF标准化为RFC 7181和RFC 3636。 您可以在http://www.olsr.org/?q=download获取OLSR的源代码和二进制文件。

通过使用它,OLSR将在网络中的所有节点之间创建路由,通过查看路由表,您将能够确定网络中每个节点的IP地址,然后可以轻松打开套接字连接( UDP / TCP)到其中任何一个。如果需要,您还将获得有关每个链接质量的信息。