TTEP.CN > 手机 >
基于开源路由技术的低功耗无线路由器研究(1)
Wi-Fi无线接入技术基于IEEE802.11协议,是目前无线通信中最常用的无线接入技术。然而,Wi-Fi无线接入技术有一个致命弱点——功耗高。因此,如何降低Wi-Fi无线接入技术的功耗成为了急需解决的问题。移动终端通过无线路由器提供的Wi-Fi信号接入互联网或者进行定位服务,然而由于Wi-Fi的高功耗使得无线路由器必须一直连接电源才能保持正常工作,这就严重限制了人们的使用范围。我们希望在没有电源接入的地方(比如古老景区、历史遗迹)也可以使用无线路由器,为移动终端提供服务。
1、IEEE802.11协议
IEEE802.11协议是由美国电气与电子工程师学会(IEEE)开发的一组无线传输协议。这些协议定义了无线站点(或接入点)之间两个或多个无线站点之间的通信的接口。该协议主要包含物理层和MAC层,主要工作在ISO协议的最低两层上,本文主要研究该协议的MAC层。
IEEE802.11协议定义帧包含以下几个部分:
◆MAC头部。包含帧控制、持续时间、地址和排队控制信息。
◆有效长度的帧体。包含帧信息、帧类型。
◆FCS。包含CRC校验的信息。
控制帧:主要用于协助数据帧的传递,所有控制帧都使用相同的Frame Control字段。
管理帧:负责在工作站和AP之间建立初始的通信,提供认证和连接服务,包括连接请求/响应、轮询请求/响应、Beacon帧等。
Beacon帧:主要声明网络的存在。定期传送的信标可以让移动式工作站得知该网络的存在,从而调整加入该网络所必需的参数。在基础结构网络中,接入点负责传送Beacon帧。
由图1的IEEE802.11协议帧结构可以看出,如果仅仅保留IEEE802.11协议广播Beacon帧功能的话,则只需发送很少的数据,可以大大地降低功耗,而且我们还可以通过开源路由技术修改IEEE802.11协议来达到降低功耗的目的。
2、开源路由技术
图2为TCP/IP与OSI参考模型的对应关系,可以看出路由器是工作在OSI模型中的第3层,即网络层。同时也是TCP/IP协议的第3层,即网际层。路由器利用网络层定义的“逻辑”网络地址(即IP地址)来区别不同的网络,实现网络的百联和隔离,保持各个网络的独立性。路由器不转发广播消息,而把广播消息限制在各自的网络内部。发送到其他网络的数据均被送到路由器,再由路由器转发出去。
无线路由器是基于开源的linux操作系统,然而商业路由器为了保护自己的技术是不会把固件源码公开的,因此不能由第三方软件开发者直接对其固件进行开发。自从Linksys释放WRT54G/GS的源码后,开源软件爱好者开发出很多不同版本的固件,以增强原有的功能或者增加原来没有的功能。下面是主流的无线路由的linux发行版:
①Open-WRT。国内最早兴起刷固件行动的人基本上都是将自己的设备刷新成Open-WRT,由此可见Open-WRT具有极大的影响力。该固件通过SSH加密协议来配置,与Cisco设备在很多指令和操作上类似。
②DD-WRT。该固件是国内外目前最为流行的固件之一,它是在Open-WRT固件的基础上改进后发布的,很多功能都是取自Open-WRT。存应用范同上DD-WRT支持极多的硬件平台,并且新版本的发布也很及时。
③Hyper-WRT。该固件是以稳定著称的第三方同件,不过功能上要比前两种稍逊一筹。从核心代码上看,它是最接近Linksys官方固件的固件。对很多用户来说,新功能、新应用的出现是他们刷新同件的主要动力,如果只是要求单一的稳定,那么直接使用官方默认固件即可。
④Tomato。这是一款逐渐流行的固件,个头比较小,实际使用起来非常稳定,而且基于SVG的图形化流量图非常有特色。它是由Hyper-WRT研发团队中的一个组员开发的。
本文选用的第三方固件是Open-WRT,之所以选择Open-WRT是因为它是完全开源的,方便编译和配置,有对应路由器所需要的固件,重新刷固件也很方便。
1、IEEE802.11协议
IEEE802.11协议是由美国电气与电子工程师学会(IEEE)开发的一组无线传输协议。这些协议定义了无线站点(或接入点)之间两个或多个无线站点之间的通信的接口。该协议主要包含物理层和MAC层,主要工作在ISO协议的最低两层上,本文主要研究该协议的MAC层。
IEEE802.11协议定义帧包含以下几个部分:
◆MAC头部。包含帧控制、持续时间、地址和排队控制信息。
◆有效长度的帧体。包含帧信息、帧类型。
◆FCS。包含CRC校验的信息。
控制帧:主要用于协助数据帧的传递,所有控制帧都使用相同的Frame Control字段。
管理帧:负责在工作站和AP之间建立初始的通信,提供认证和连接服务,包括连接请求/响应、轮询请求/响应、Beacon帧等。
Beacon帧:主要声明网络的存在。定期传送的信标可以让移动式工作站得知该网络的存在,从而调整加入该网络所必需的参数。在基础结构网络中,接入点负责传送Beacon帧。
由图1的IEEE802.11协议帧结构可以看出,如果仅仅保留IEEE802.11协议广播Beacon帧功能的话,则只需发送很少的数据,可以大大地降低功耗,而且我们还可以通过开源路由技术修改IEEE802.11协议来达到降低功耗的目的。
2、开源路由技术
图2为TCP/IP与OSI参考模型的对应关系,可以看出路由器是工作在OSI模型中的第3层,即网络层。同时也是TCP/IP协议的第3层,即网际层。路由器利用网络层定义的“逻辑”网络地址(即IP地址)来区别不同的网络,实现网络的百联和隔离,保持各个网络的独立性。路由器不转发广播消息,而把广播消息限制在各自的网络内部。发送到其他网络的数据均被送到路由器,再由路由器转发出去。
无线路由器是基于开源的linux操作系统,然而商业路由器为了保护自己的技术是不会把固件源码公开的,因此不能由第三方软件开发者直接对其固件进行开发。自从Linksys释放WRT54G/GS的源码后,开源软件爱好者开发出很多不同版本的固件,以增强原有的功能或者增加原来没有的功能。下面是主流的无线路由的linux发行版:
①Open-WRT。国内最早兴起刷固件行动的人基本上都是将自己的设备刷新成Open-WRT,由此可见Open-WRT具有极大的影响力。该固件通过SSH加密协议来配置,与Cisco设备在很多指令和操作上类似。
②DD-WRT。该固件是国内外目前最为流行的固件之一,它是在Open-WRT固件的基础上改进后发布的,很多功能都是取自Open-WRT。存应用范同上DD-WRT支持极多的硬件平台,并且新版本的发布也很及时。
③Hyper-WRT。该固件是以稳定著称的第三方同件,不过功能上要比前两种稍逊一筹。从核心代码上看,它是最接近Linksys官方固件的固件。对很多用户来说,新功能、新应用的出现是他们刷新同件的主要动力,如果只是要求单一的稳定,那么直接使用官方默认固件即可。
④Tomato。这是一款逐渐流行的固件,个头比较小,实际使用起来非常稳定,而且基于SVG的图形化流量图非常有特色。它是由Hyper-WRT研发团队中的一个组员开发的。
本文选用的第三方固件是Open-WRT,之所以选择Open-WRT是因为它是完全开源的,方便编译和配置,有对应路由器所需要的固件,重新刷固件也很方便。
- 最近发表
- 赞助商链接