基于嵌入式Linux系统的无线网络网关设计

时间:2022-07-04 18:58:14

 嵌入式网关、嵌入式web服务器(boa)、嵌入式sqlite数据库、通用网关接口

1、概述

传统网关在功能上主要完成协议转换及部分系统管理功能,而采用嵌入式无线网关作为无线网络设备接入有线网络的接入部件,除了具有传统网关的功能外,还具有对无线网络的管理,包括无线网络的形成、节点设备加入和注销等。

在嵌入式网关,部署web服务器,嵌入式sqlite数据库,通过开发CGI程序,一方面响应用户浏览器请求,另一方面CGI程序实现与子网内节点通信。

嵌入式网关作为子网中心,首先在整个网络中工作。网络内部设备在安装完上电后,会自动搜索最近的网关加入,获取通信ID并上报设备ID,网关存储其子节点的ID及设备ID。

2、工作流程

嵌入式网关负责处理节点数据。当接收到一个完整的节点网络协议帧后,触发相应的处理流程,对协议帧进行解析、判断和处理。接着判断帧的类型,如果是命令帧,根据命令处理;如果是数据帧,提取有效数据,进行相应处理。

嵌入式网关负责传输节点数据。主要任务是把处理过后的数据封装成协议报文,按照网络规则通过无线模块传输到设备节点或管理节点。数据报文的长度根据发送的有效数据确定,目的地址和原地址从地址列表中提取,ID号则从绑定表中取出。设置节点的ID和网络地址的映射转换。报文头和有效数据填入后,从实时时钟中读取当前时间,组成一个完整的报文,通过无线模块传输到上级节点或下级节点中。

3、数据存储

       主要是对网络内节点的数据进行备份存储,用于管理人员进行检索查询。在无线网络出现故障时,通过外部存储器进行数据备份,利用信息的冗余来提高系统的安全性和可靠性,存储介质采用外部FLASH。

4、无线传输模块

       主要是负责与网络节点发送指令,来实现诸如同步,数据确认等机制。在无线网络中,设备节点需要跟网关节点进行交互通信,如网络建立过程,网关节点需要发送信标帧,设备节点收到信标帧后请求加入网络。为了提高数据传输的可靠性,需要发送确认帧的确认机制,数据流向设备节点。

5、接入Internet

无线网络通过嵌入式网关与Internet相连,其一,通过RJ45网线接入,此种方式比较传统,也是可靠性最高的选择;其二,通过wifi无线模块接入,需要有wifi无线路由器支持。

6、嵌入式web服务器

嵌入式web服务器boa是一个源码开放、功能强大、支持动态网页并可以运行在多个平台的嵌入式web Server。

7、嵌入式sqlite数据库

嵌入式数据库存储经过信息分析模块处理过的数据,嵌入式SQLite数据库满足体积小、数据容量大、处理速度快、占用内存少的特点,选用SQLite作为该网关的嵌入式数据库。

8、通用网关接口(CGI)

CGI实现嵌入式Web Server与Web浏览器之间的动态数据交互。

9、wifi无线模块

       在嵌入式Linux系统中,重新编译内核,支持wifi无线网卡。编译linux-2.6的内核支持WIFI硬件驱动,将生成的zImage烧写到s3c6410开发板上,使内核支持无线网卡。