发明内容
有鉴于此,本发明的主要目的在于提供一种基于嵌入式的分布式服务器网络架构及其实现方法,解决集中式架构中央服务器压力过大、数据访问并发量高、服务器运行维护成本高等问题,以实现将“多对一”的星型架构映射为点到点(P2P)的分布式架构,从而缓解服务器的压力,并达到节约成本,提高性能,保证更高的可靠性、可用性以及可扩展性。
为达到上述目的,本发明的技术方案是这样实现的:
一种分布式服务器的网络架构,包括中心服务器、网络终端设备访问节点和设备分布式节点;所述中心服务器作为网络终端设备访问节点和网络访问节点的映射连接,并提供网页系统;通过第一网络终端设备从第二网络终端设备上获取数据,将所述第二网络终端设备作为一个子服务器,分担所述中心服务器的访问连接;所述中心服务器和第一网络终端设备、第二网络终端设备共同作为总服务器,其他上网终端从所述中心服务器获取网页,从设备分布式节点获取设备信息和参数。
其中,所述的网络终端设备的微处理器内部集成LwIP协议栈或uIP协议栈,通过路由器的端口映射机制实现外网客户端直接访问内网的终端设备。
所述微处理器的电路板上还设有随机存储器RAM,用于存储临时数据信息,以增大缓存容量,提高网络通讯速率。
所述LwIP协议栈和uIP协议栈用于实现网络协议所有的底层,包括IP、ICMP、ARP、IGMP和RARP协议。
一种分布式服务器的网络架构实现方法,包括:
A、安装本地设备并将其调试完毕作为子服务器;
B、根据本地设备代码发放相应的网络终端准入许可;
C、发布监控网站,根据具体的节点做出相应的静态变化;
D、将所有系统的相关设备通过有线或无线的方式接入互联网;
E、建立网络映射,实现本地设备在局域内网或外网的被动数据请求和主动数据上传操作。
较佳地,步骤E之后进一步包括:
F、进行分布式网络架构的整体测试和使用,若有扩展需求,则继续执行步骤B~步骤E实现无缝扩展。
所述网络终端准入许可为网站的账户名和密码,或身份验证。
步骤E所述建立网络映射的过程为:
内网设备的嵌入式微处理器经由路由器通过端口映射的方式可以实现从外网定位到内网进行通讯,达到设备处于内网也可以作为子服务器的效果,从而实现异步的从外部读取数据;外部访问设备的服务器,通过向路由器IP的80端口发送HTTP请求,有端口映射后,所述路由器将请求转发到网络设备IP的80端口,所述网络设备进行处理,并且回复相应的数据。
本发明所提供的基于嵌入式的分布式服务器网络架构及其实现方法,具有以下优点:
本发明在终端设备的嵌入式处理器上集成uIP或LwIP协议,通过网络映射实现设备在局域内网的被动数据请求操作。系统可实现在手机、IPAD等网络设备上访问监控网站,以查看可访问设备的参数和状态信息,并进行一定的开关控制,即可实现基于嵌入式的分布终端服务器网络架构,在不增加硬件设备的基础上节省本地计算机,便于操作和应用。
本发明采用基于嵌入式的分布式网络架构,实现了将多对一的星型架构映射为P2P的分布式架构,不仅提高了整个网络的性能,并且减少成本和能耗。
本发明采用集成有uIP协议栈的微处理器作为嵌入式子服务器,通过中心服务器的映射表将终端产品设备与相应用户的请求联系在一起,从而缓解中心服务器压力,系统经济,可靠性高,可用性好,可扩展性好,易于集成现有系统,也易于扩充。
具体实施方式
下面结合附图及本发明的实施例对本发明的网络架构及其实现方法作进一步详细的说明。
图1为本发明的分布式服务器的网络总体架构示意图。如图1所示,该网络总体架构包括中心服务器、交换机、路由器、网络控制器、终端设备以及有线客户端和无线客户端等设备。所有设备通过有线或者无线的形式接入互联网,以实现设备互联。所述有线或无线客户端,包括手机、个人数字助理(PDA)、平板电脑、笔记本、台式机等。
所述的客户端通过中心服务器发布的网站进行数据访问和远程操控,由中心服务器反馈给客户端静态网页并与终端设备匹配,接下来由相应的终端设备作为子服务器与之前发起请求的客户端进行点到点(P2P)通讯。中心服务器每隔一段时间轮询所有终端设备,获取终端设备的状态信息。这种机制可以大大减少服务器的压力,便于日后的系统升级和功能扩展。
图2为本发明的分布式节点架构示意图。如图2所示,分布式节点的架构,包括中心服务器、网络终端访问节点和设备分布式节点。所述网络终端访问节点包括手机、计算机、平板电脑、PDA等设备。参考图1,所述设备分布式节点包括终端设备1、终端设备2,可以是安装在用户家中的智能家居设备。
这里,由中心服务器作为网络终端设备访问节点和网络访问节点的映射连接,中心服务器提供网页系统,之后通过手机终端或上网终端等第一网络终端设备直接从第二网络终端设备上获取数据,将所述第二网络终端设备作为一个子服务器,分担中心服务器的访问连接,中心服务器和第一网络终端设备、第二网络终端设备共同作为总服务器,其他上网终端从中心服务器获取网页,从设备分布式节点获取设备信息和参数。
所述的分布式结构的网络具有如下特点:由于采用分散控制模式,即使整个网络中的某个局部出现故障,也不会影响全网的操作,因而具有很高的可靠性,保证负载均衡,减少了运行维护成本。
图3为本发明的网络映射结构示意图。如图3所示,网络映射结构图包括以太网、路由器和内网(局域网)及网络终端,如计算机和无线设备。所述网络终端设备中的微处理器以及无线设备、内网的设备都通过网线连接至路由器实现联网功能。终端设备中的微处理器集成轻型IP协议(Light
Weight,LwIP)协议栈或uIP协议栈,通过路由器的端口映射机制实现外网客户端直接访问内网的终端设备。
一般外网是不允许直接访问内网节点的,假如设备接入的是内网,内网设备的嵌入式微处理器经由路由器通过端口映射的方式可以实现从外网定位到内网进行通讯,达到设备处于内网也可以作为子服务器的效果,从而实现异步的从外部读取数据。外部访问设备的服务器,是向路由器IP的80端口发送HTTP请求,有端口映射后,路由器不会处理发送过来的HTTP请求,而是将请求转发到网络设备IP的80端口,所述网络设备进行处理,并且回复相应的数据。
图4为本发明的嵌入式服务器原理示意图。如图4所示,该嵌入式服务器包括微处理器、网络驱动器和系统控制器。
通过在所述微处理器内部集成LwIP协议栈或uIP协议栈,为了达到高效的吞吐率,在微处理器电路板上外扩一块随机存储器(RAM),即内存,以存储临时的数据信息,增大缓存容量,提高网络通讯速率。LwIP协议栈和uIP协议栈适合在低端嵌入式系统中使用,用于实现网络协议所有的底层,包括IP、ICMP、ARP、IGMP、RARP等协议。uIP 协议栈去掉了完整的传输控制协议/互联网协议(TCP/IP) 中不常用的功能,简化了通讯流程,但保留了网络通信必须使用的协议,其重点在于IP/TCP/ICMP/UDP/ARP这些网络层和传输层协议上,保证了其代码的通用性和结构的稳定性。LwIP 作为TCP/IP
协议栈的一个实现,使用它可以减少内存使用率和代码大小,使 LwIP 适用于资源受限系统比如嵌入式系统。为了减少处理和内存需求,LwIP 使用不需要任何数据复制的经过裁剪的应用程序接口(API)。
所述Lwip和uIP协议可集成在TCP/IP协议中,TCP/IP协议在网络上是通过数据帧进行通信,数据帧由帧头、IP数据包和帧尾组成 ,IP数据包是由IP头部和TCP数据信息组成,TCP数据信息包括TCP头部和实际数据。利用Lwip或uIP协议进行数据发送时,将要发送的数据打包成一个或多个帧发送出去,数据帧在网络上传输由路由器转发到目的地址;Lwip协议栈或uIP协议栈在接受数据时,将接收到的一个个数据帧保存起来,通过序号进行组合,直到接收完所有的数据,然后将接收到的数据抛给上层程序进行处理。Lwip或uIP协议在建立TCP连接时,会进行握手确认连接,然后进行相互的数据发送和接收,当所有的数据处理完毕,然后断开连接,TCP传输数据时,接收方每接收到一个数据帧需要给发送方一个回应,如果数据丢失或者校验出错,接收方会要求发送方进行重传,保证数据传输的可靠性。
微处理器基于HTTP协议建立好的Web服务器,当客户端发出相应的请求时,将状态数据以Json格式进行打包,然后发送出去,客户端接受到回复的数据进行分析,然后实施相应的操作。HTTP和FTP都是基于TCP协议,实现一个Web服务器的功能,客户端发送一个Web请求,路由器通过映射的端口进行转发,微处理器识别请求,将客户端过来的数据进行解码,将命令发送到系统控制器,通过系统控制器对本地设备进行控制和查询,将查询到的信息打包成网络帧,并通过网络发送回去。
本发明的基于嵌入式微处理器的分布式终端设备、中心服务器上运行的站点页面、具有多并发支持的服务器和访问站点页面的网络终端,并且经由互联网将所有设备连接起来,即全部挂接在互联网上。访问站点页面的网络终端通过登录中心服务器上运行的站点页面来访问有多并发支持的服务器和基于嵌入式微处理器的分布式终端设备,以获取远程终端设备的参数和状态,并实现一定的远程控制。
所述分布式终端设备是指分散在各个地区的不同的用户的设备,采用分布式节点的数据交互架构,即“分布式节点”-“网关”-“Internet”-“服务器”架构。在本网络系统中,各个节点的设备分散且不容易集中,而用户从经济上以及心理上也难以接受“为热水器的管理而单独架设”服务器,所以将“分布式节点”以及“网关”部分通过uIP协议或LwIP协议集成在嵌入式处理器中,将嵌入式节点作为小型的终端服务器,并将分布式终端设备独立联网或者经由路由器联网。
中心服务器上运行的站点页面为终端用户提供可登陆的平台,主要用于监控用户安装的分布式终端设备,实现相关的数据读取和远程操控。
多并发支持的服务器作为整个网络架构的中心服务器,扮演着为终端用户和设备节点提供映射链接的角色,并且在后期搜集与设备运行相关的数据,便于为用户提供数据分析,做出更合理的定制化服务。中心服务器将应用和数据库从物理上分离,以免数据交叉访问造成系统不稳定。
访问站点页面的网络终端即所有能够连网的设备,包括手机、电脑、IPAD等平板、PDA等,访问站点页面的网络终端原则上是与相应的终端设备一一对应的,网络终端上会分配与设备节点相关准入许可,只有拿到准入许可方能登陆实现监控终端设备的功能。
这种基于嵌入式的分布式服务器网络架构的实现方法,主要包括如下步骤:
步骤1、安装本地设备并将其调试完毕作为嵌入式子服务器;
步骤2、根据本地设备代码发放相应的网络终端准入许可,可以是网站的账户名和密码,也可以是身份验证等;
步骤3、发布监控网站,根据具体的节点做出相应的静态变化;
步骤4、将所有系统的相关设备通过有线或者无线的方式接入整个互联网;
步骤5、建立网络映射,实现本地设备在局域内网或者外网的被动数据请求和主动数据上传操作。
较佳地,还可以包括:
步骤6、进行分布式网络架构的整体测试和使用,若有扩展需求,则继续执行步骤2~步骤5实现无缝扩展。
应用本发明基于嵌入式的分布式服务器的网络架构及其实现方法,能够分区域将设备节点作为子服务器取代传统的计算机,根据网络行为进行请求终端和设备终端的匹配通讯,最大限度的降低总服务器的数据交互量的效果。从而减少中心服务器的压力,保证任意点对点通信都有100%的均分带宽。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。