【问题标题】:Windows adhoc mesh networkWindows adhoc 网状网络
【发布时间】:2012-10-29 20:47:07
【问题描述】:

我已经用谷歌搜索了这个话题,但我仍然需要帮助。 stackoverflow 上有类似的问题,但没有一个完全匹配(也没有很好的答案)。

我想编写一个程序(如果它尚不存在并且可能的话),它允许 Windows 7+ 用户使用单个 WiFi 适配器配置一个 ad-hoc 网状网络,然后以某种方式允许类似于正常的连接每个节点的互联网连接。如果手机等设备不需要额外的软件,但可以连接到一个或多个网状节点,就好像它是标准接入点一样。

我不知道该怎么做,但我认为:

  1. 可以使用 Windows Wireless-ADHOC API 以编程方式将单个无线网卡配置为在 adhoc 模式下运行
  2. Ad hoc 模式通常不包括基础设施模式,除非适配器的驱动程序支持它,因此从节点连接到真实互联网需要第二个适配器。
  3. 我们的程序将拥有/需要对 WiFi 适配器的独占控制权。
  4. mesh 方面是独立于 adhoc 连接通过路由协议(如 Babel)实现的。
  5. 必须通过我们的程序创建的一些新虚拟适配器来提供 Internet。 (这个新适配器扮演什么角色,使它成为任何网络感知程序都应该选择咨询互联网访问的适配器?)
  6. 如果一个节点上有真正的互联网连接,则该节点将通过 Babel 实现将其共享给网格上的其他节点
  7. 无论任何节点是否都可以访问 Internet,不确定网格本身可以托管哪些服务。如何提供资源/域名解析?
  8. 如果当前节点有互联网,任何对互联网资源的请求都将直接通过它,而网格内的任何资源都将通过 Babel。如果该节点丢失了直接互联网,则所有流量都将通过 Babel。假设我们的程序编写正确,是否需要对此进行编程,或者 Windows 网络堆栈是否知道如何处理?
  9. 由于这是 Windows 7+,IPv6 是在网格中寻址节点的合法选择,但是,并非所有 Internet 连接都支持 IPv6。有些可能。我们如何从网状段定义互联网段?
  10. 网格可以任意大,Babel 和其他组件将能够以良好的带宽、低内存使用和最佳路径收敛来处理它。

很明显,我没有实际完成这个项目的背景,但我想了解解决方案的概要。您能否评论大纲的正确之处,缺失/错误之处?由于新技术的出现,哪些概念是不必要或过时的?

一个节点操作起来有多简单?每个节点对攻击它们的其他节点的安全性如何?毒害网络流量和路由?

我读过一些项目尝试在 Linux 上实现类似的目标,但目前在 Windows 上没有。对车辆和应急响应人员进行了一些讨论,但这是不同的。飓风桑迪激起了我的兴趣,即在城市连接广泛中断的情况下,流行住宅操作系统的连接性。当许多人的电力和通信系统不可用时,网状网络可以提供帮助。

几乎所有网格参与者都不会提前配置他们的节点。相反,他们可能会在他们的无线网络出现故障时寻找其他的无线网络,并找到 SSID“免费紧急 Mesh WiFi”并进行连接。与热点一样,他们将看到一个代理登录页面,该页面解释了该项目并提供了一个安装链接,如果他们想参与的话。如果没有,他们仍然可以作为客户端连接到网格“接入点”。

【问题讨论】:

    标签: windows wifi adhoc mesh-network


    【解决方案1】:

    问题在于,您基本上要求将单个 WiFi 无线电同时置于三种不同的模式。为了让节点与其他节点通信,它需要处于 Ad-Hoc 模式。为了与接入点 (AP) 通话以进行 Internet 访问,它需要处于基础架构模式。为了让手机连接,它们中的大多数不支持 Ad-Hoc 网络,因此您还需要将节点置于主模式(使它们显示为普通接入点)。因此,在一张 WiFi 卡上,您试图兼顾三种不同的操作模式。理论上,如果您拥有的卡和驱动程序支持原始帧注入,那么您可能能够在您的应用程序中模拟 WiFi 和网络堆栈,并在一张卡上兼顾所有三种模式,但我有一种感觉会导致非常高如果您在笔记本电脑上运行,冲突率、丢帧、高延迟以及所有额外的 CPU 周期都会消耗您的电池。

    有可能吗?当然。这是一个实用的想法吗?并不真地。您最好使用华硕 USB-N10 等小型/廉价 WiFi 适配器扩展笔记本电脑。额外的适配器可以处理额外的模式,在固件和内核空间中进行更快、更高效的处理,并允许您在单独的通道上运行网络的每一层以获得更高的吞吐量。

    【讨论】:

    • (第 2 点允许需要第二个可能是硬连线的适配器来连接互联网)。
    • 很好的见解。好的,但是如果只有一个适配器可用,那么在原始模式下支持这些模式是否会有用户采用价值,但要宣传 - “嘿,下一次,第二个甚至第三个适配器会提高性能”?
    • 我真的不这么认为。网状网络的名声已经很差了,所以提出一个缓慢而挑剔的解决方案会强化人们的负面刻板印象,他们也不会费心尝试其他配置。他们只会说,“看,我知道网状网络永远行不通!”在尝试与神话作斗争并将网状网络作为一种可行的解决方案出售方面拥有第一手经验,我的建议是不要费心提供任何低于最好的东西。批评者会采取最懒惰的方式来审查你的项目,并宣布每一个缺点都证明它永远不会奏效。
    • 有趣。你知道 802.11s 是否能完成我所说的一切吗? 's' 是否需要像 'a' 'b' 'g' 和 'n' 这样的硬件实现,或者它将是一个单独的软件层?
    • ...通过进一步研究,在我看来 802.11s MAP 模式是正确的选择,并且 OPEN80211S 建议可以在现有硬件上以软件方式实现。你似乎对这个话题了解很多。无线适配器是在适配器本身上进行处理,还是 CPU 负责处理?正如您所提到的,这个 OPEN80211S 项目是通过将适配器置于原始模式在 CPU 上完成的,还是更像是显卡的 Shader 程序,将指令提供给适配器自行执行?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多