一种健康体检机通信服务器的实现方法

文档序号:9276808阅读:625来源:国知局
一种健康体检机通信服务器的实现方法
【技术领域】
[0001] 本发明公开一种通信服务器的实现方法,属于通信技术领域,具体地说是一种健 康体检机通信服务器的实现方法。
【背景技术】
[0002] 通信服务器是一个专用系统,为网络上需要通过远程通信链路传送文件或访问远 地系统或网络上信息的用户提供通信服务。通信服务器根据软件和硬件能力为一个或多个 用户提供通信信道,通过转换数据格式、通信协议和电缆信号提供用户与主机的连接,可以 远程控制软件,允许远地用户从家里或其它远距离位置经拨号进入网络,通信服务器能为 内部用户提供一组异步调制解调器,用于拨号访问远地系统、信息服务或其它资源,并维持 与远地局域网的专用或拨号(间歇的)链路并在局域网间自动传送数据分组。然而服务端 程序是JavaL 4提供了 NIO使开发者可以使用Java编写高性能的程序实现的,但使用原生 的NIO API就像Linux C中网络编程一样,需要做IO处理、协议处理等低层次工作,减低服 务器通信时的效率,不利于通信的快捷进行,而在有些业务中需要准确快捷的将远程数据 上传,比如医院或家庭中健康体检机上传数据的需求。因此本发明提供一种健康体检机通 信服务器的实现方法,基于netty框架利用TCP/UDP通信实现服务器终端将健康体检机的 体检数据上传、发送报警信号、验证用户ID和发送用户个人信息等功能,提高了通信服务 器的性能、可靠性。其中netty是个异步的事件驱动网络应用框架,提供了统一的底层协议 接口,使得开发者从底层的网络协议中解脱出来,可以专注于上次业务实现,具有高性能、 高扩展性等特性。

【发明内容】

[0003] 本发明针对目前服务端程序需要做IO处理、协议处理等低层次工作,减低服务器 通信时的效率,不利于健康体检机通信的快捷进行的缺陷,提供一种健康体检机通信服务 器的实现方法,基于netty框架实现的TCP/UDP通信服务器终端,应用到健康体检机的体检 数据上传、发送报警信号、验证用户ID和发送用户个人信息等功能。
[0004] 本发明提出的具体方案是:
[0005] -种健康体检机通信服务器的实现方法,基于netty的TCP和UDP协议服务器端, TCP和UDP协议服务端分别指定不同的端口号;健康体检机为客户端,根据IP地址和Port 端口号分别连接TCP和UDP协议服务端,过程为:
[0006] TCP协议服务器端接收客户端发送的MD5校验码,用于身份识别;MD5若校验不通 过,则断开连接,重新连接校验,若校验通过,则TCP协议服务器端发送校验通过信息;
[0007] 客户端接收到TCP协议服务器端发送的校验通过信息后,发送业务数据,业务数 据以字节的形式传输;
[0008] TCP协议服务器端接收到业务数据后,进行数据解析,并放入数据库中,返回给客 户端接收到数据的信息;
[0009] UDP协议服务器端根据客户端发送的数据的长度不同判断是报警信号还是验证用 户信号;
[0010] 如果是报警信号则接收报警并返回给客户端已经接收到报警的信息;
[0011] 如果是验证用户信号则解析信号数据,根据信号数据查询数据库并把查询到的数 据返回给客户端,完成验证。
[0012] 所述TCP协议服务器端的身份识别具体过程为:健康体检机连接TCP协 议服务器后,发送mid MD5校验码,mid是客户端唯一编号,服务器通过mid从后台 查找对应的version,即版本号和uid,即唯一用户编号,并获取当天的日期,然后以 mid+version+uid+date为seed生成MD5值并与健康体检机发送的MD5校验码进行比对,如 果对比失败则回复MD5验证错误的信息,服务器主动断开健康体检机的TCP连接;如果比对 成功则回复OK信号。
[0013] 所述OK信号带有一个时间戳,表示健康体检机必须在此时间戳内发送体检数据 或日志文件到TCP协议服务器端,否则重新发送校验请求。
[0014] 所述的客户端发送的业务数据包括数据长度、文件类型(H/L)、文件数据,文件类 型中H代表体检数据、L代表日志文件。
[0015] 所述的TCP协议服务器端进行数据解析时,判断文件类型,并根据不同的数据类 型把业务数据放入到不同的数据库中,健康体检机发送的文件数据中带有时间戳,表示文 件数据产生的时间,TCP协议服务器端根据时间戳判断是否重复接收了体检数据,如果确定 重复接收的数据则放弃该数据;如果不是,则解析新接收的数据并入库,完成业务数据解析 入库后,返回OK信号给健康体检机。
[0016] 所述的客户端发送的报警信号为alarm_actiVe,UDP协议服务器端返回给客户端 已经接收到报警的信息为alarm_active_ack ;
[0017] 健康体检机启动报警 alarm_active :0000 0001 ;服务器回复 alarm_active_ack : 0001 0001 ;
[0018] 健康体检机取消报警 alarm_cancel :0000 0000 ;服务器回复 alarm_cancel_ack : 0001 0000 ;
[0019] alarm状态字节的前四位0000表示是健康体检机请求的指令,0001表示UDP协议 服务器端回复的指令;后四位〇〇〇〇表示报警取消,0001表示启动报警。
[0020] 所述的UDP协议服务器端根据验证用户信号进行验证用户的过程为:用户利用客 户端输入auto_id,健康体检机发送给UDP协议服务器端验证请求MD5, UDP协议服务器端先 校验MD5,验证通过后查询后台并返回信息给健康体检机,表示此用户存在,可以进行体检; 否则返回用户不存在信息,拒绝体检请求。
[0021] 本发明的有益之处是:本发明基于Netty提供的统一底层协议接口进行TCP、UDP 网络协议实现,不需要做IO处理、协议处理等低层次工作,提高了健康体检机和服务端进 行数据交互的速度和可靠性,同时能保证数据传输的安全性。
【具体实施方式】
[0022] -种健康体检机通信服务器的实现方法,基于netty的TCP和UDP协议服务器端, TCP和UDP协议服务端分别指定不同的端口号;健康体检机为客户端,根据IP地址和Port 端口号分别连接TCP和UDP协议服务端;
[0023] TCP主要程序结构,如下:
[0027] 实现过程为:
[0028] TCP协议服务器端接收客户端发送的MD5校验码,用于身份识别;MD5若校验不通 过,则断开连接,重新连接校验,若校验通过,则TCP协议服务器端发送校验通过信息;又身 份识别的具体过程可为:健康体检机连接TCP协议服务器后,发送mid MD5校验码,mid是 客户端唯一编号,服务器通过mid从后台查找对应的version,即版本号和uid,即唯一用户 编号,并获取当天的日期,然后以mid+version+uid+date为seed生成MD5值并与健康体检 机发送的MD5校验码进行比对,如果对比失败则回复MD5验证错误的信息,服务器主动断开 健康体检机的TCP连接;如果比对成功则回复OK信号;其中OK信号可带有一个时间戳,表 示健康体检机必须在此时间戳内发送体检数据或日志文件到TCP协议服务器端,否则重新 发送校验请求;
[0029] 客户端接收到TCP协议服务器端发送的校验通过信息后,发送业务数据,业务数 据以
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1