基于串口通信的http网络访问实现装置的制作方法

文档序号:7702808阅读:145来源:国知局
专利名称:基于串口通信的http网络访问实现装置的制作方法
技术领域
本发明涉及代理服务器、网关、网络通信协议、计算机程序,尤其涉及 通用网络通信协议与私有通信协议的相互转换网络访问实现装置,属于信息 安全领域。
背景技术
随着信息化的高速发展,计算机网络己经成为人类日常生活的重要组成 部分,于此同时在使用网络时所带来的安全问题,引起人们的广泛关注。如 何解决私有网络在接入公共网络时既要访问公共网络又要保证私有网络的安 全,即抵御来自公共网络的病毒与黑客的攻击,是一个迫切亟待解决的问题。 利用现有的技术还不能很好的抵御来自计算机病毒与黑客对私有网络的攻 击。产生这一问题的主要原因在于私有网络和公共网络都是利用一个通用网 络通信协议进行连接,而通用网络通信协议作为一种公开的规范可以被任何 组织或个人轻易获取并进行研究,同时这也为非法者进行攻击提供了条件。 因此,通过一个私有网络协议作为一个桥接,将私有网络和公共的网络连接 起来,从而达到私有网络用户即能访问公共的网络,又能保证私有网络不因 与公共网络互联而遭受各种攻击。

发明内容
本发明的目的在于提供一种私有网络到公共网络的安全网络访问实现装 置,该发明共由三个部分组成按照Internet标准接入私有网络的代理服务器 1、按照Internet标准接入公共网络的代理服务器2、用于代理服务器1和代理 服务器2之间通信的串行端口,其结构如图l所示。其目的在于,实现使用 Internet协议的私有网络中的用户利用已有的网络浏览器安全访问公共网络 时,又保证私有网络不受来自公共网络各种不安全因素的威胁,如病毒、黑 客的攻击。
为实现上述功能,代理服务器1包含以下功能模块HTTP请求接收模块,功能为按照标准HTTP协议规范接收并响应用户 发送至代理服务器1的标准HTTP请求报文;将标准HTTP请求报文转换为 私有请求报文。
请求报文发送模块,功能为通过串行端口发送私有请求报文。 响应报文接收模块,功能为通过串行端口接收私有响应报文。 响应报文提取模块,功能为从私有响应报文中提取标准HTTP响应报
文内容。
HTTP响应发送模块,功能为按照标准HTTP协议规范发送标准HTTP响
应报文给用户。
代理服务器2包含以下功能模块 请求报文接收模块,功能为通过串行端口接收私有请求报文。 请求报文处理模块,功能为从私有请求报文中提取标准HTTP请求报
文内容。
HTTP处理模块,功能为发送标准HTTP请求报文至公共网络中的WWW 站点,从公共网络中的WWW站点接收标准HTTP响应报文。
响应报文转换模块,功能为将标准HTTP响应报文转换为私有响应报文。
响应报文发送模块,功能为通过串行端口发送私有响应报文。 为实现上述发明目的,代理服务器1将标准HTTP请求转换为私有请 求报文的过程,代理服务器1将私有响应报文转换为标准HTTP响应报文 的过程,代理服务器2将私有请求报文转换为标准HTTP请求报文的过程, 代理服务器2将标准HTTP响应报文转换为私有响应报文的过程以及代理 服务器1与代理服务器2之间使用串行端口按照私有通信协议进行通信的 过程。
本发明具有以下效果使用串行端口连接代理服务器1与代理服务器2, 在代理服务器l、 2上进行标准HTTP协议与私有通信协议的相互转换,并采 用私有通信协议的规范进行代理服务器l、 2间的通信,使得使用通用网络通 信协议的私有网络与公共网络相隔离,进而使公共网络中的攻击者无法侵入 私有网络,提高了私有网络的安全性。采用在线代理的机制,使得用户只要使用浏览器通过在网页中提交网址就可使用本方法访问站点而无需更改任何软件配置,省去了客户端开发、维护和升级的过程,本方案的部署与配置相对于传统防火墙或网关的配置而言十分简单。


图1安全网络接入方法拓扑图
图2代理服务器1、代理服务器2串行端口连接方式图3安全网络接入方法的信息流程图,其中圆圈中的数字对应于信息流程步骤
图4私有请求报文数据格式图5私有响应报文数据格式
具体实施例方式
代理服务器1和代理服务器2的串行端口之间通过一根RS-232电缆线连接起来,如图2所示,串口电缆线采用三线制,使用发送数据线(TxD)、接收数据线(RxD)和信号地(GND)三根信号线,发送数据线与接收数据线相连,彼此交叉,信号地对应相接,串行端口采用全双工通信机制。代理服务器1和代理服务器2之间使用私有通信协议的规范进行通信起到了隔离私有网络与公共网络的作用。因此,本发明可用于防止公共网络中的攻击者对私有网络的入侵,防止私有网络中机密信息的泄漏。为保障私有网络信息安全提供一种具有自主知识产权的解决方案。信息流程
私有网络中的用户进行HTTP访问的信息流程如图3所示,步骤为
1、 通信开始前,启动代理服务器l、启动代理服务器2,在打开代理服务器1和代理服务器2相互连接的串行端口前,对代理服务器1和代理服务器2
的串行端口通信参数进行设置如下设置波特率9600字节/秒;数据位8位;校验位无;停止位l位。打开代理服务器1和代理服务器2相互连接的串
行端口时,设置串行端口接收数据时的超时等待时间为200秒。
2、 通信开始,代理服务器l首先接收用户请求起始页面的标准HTTP请
求报文。其中,用户的请求方式为在浏览器地址栏内输入代理服务器l的IP地址和起始页面的名称及其扩展名。例http:〃10.0.0.1/example.htm。
代理服务器1收到用户对起始页面的标准HTTP请求报文后,按照标准HTTP协议返回给私有网络中的用户一个标准HTTP响应报文,标准HTTP响应报文中的响应实体(BODY)为私有网络中的用户所请求的起始页面。私有网络中的用户需要在起始页面中的地址框中输入要访问的WWW站点网址,点击提交按钮后,私有网络中的用户的网络浏览器形成标准HTTP请求报文发送至代理服务器l。代理服务器1从该标准HTTP请求报文中提取请求参数,参数包括统一资源定位符(URL),请求方法(METHOD)、请求资源位置(URI)以及主机名称(HOST)。将上述参数按照私有通信协议规定的数据格式如图4,构成私有请求报文,将私有请求报文交给代理服务器1上的请求报文发送模块。其中,主机名称(HOST)是这样确定的
a) 对于访问从起始页面提交的WWW站点,标准HTTP请求报文中将包含一个请求地址参数,参数值为所请求WWW站点的统一资源定位符(URL),代理服务器1在生成请求报文时,从该统一资源定位符(URL)中分离出主机名(HOST)称替换原有标准HTTP请求报文中的主机名称(HOST)。代理服务器1将保存这个主机名称(HOST),直到用户提交另一个WWW站点的统一资源定位符(URL);
b) 对于访问任意网页中的相对地址链接,代理服务器1使用保存的主机名称(HOST)作为将要请求中的主机名称(HOST);
c) 对于访问任意网页中的绝对地址链接,网页中的绝对地址链接的地址在代理服务器2将标准HTTP响应报文转换为私有响应报文的过程中被设置为代理服务器1所接收的请求地址参数的值,访问该绝对地址链接相当于将该绝对地址链接的地址作为请求地址参数的值提交给代理服务器1,代理服务器1从该参数中分离主机名称(HOST)和请求资源位置(URI),将分离出的主机名称(HOST)作为将要请求的主机名称(HOST)。
私有请求报文的构造方法如下使用"<START>" 、 "<END>"标记私有请求报文的开始和结束,使用换行符区分不同请求参数域、使用水平制表符区分同一参数域内不同的参数。请求头域中相关联的参数名与参数值用'@'相连。统一资源定位符(URL)与请求资源位置(URI)包含于图4中请求地址域,请求方法(METHOD)包含于图4中请求方法域,主机名称(HOST)包含于图4中请求头域。
3、 代理服务器1上的请求报文发送模块将私有请求报文发送至代理服务器2。发送时,按照一次16字节的大小进行发送。g卩,待发送的数据被分成一些16字节的数据块,最后不足16字节的部分按照其自身大小构成数据块。每发送一个数据块,发送端添加一个0.22秒的短延迟,以保证接收端有足够的时间正确处理收到的数据,分成16字节或以下大小的数据块是为了保证传输过程中的正确率,同时能够获得较短的传输时间。由于串口的波特率远大于发送数据块的大小、而发送数据块越大传输出错的概率越高,所以发送字节的大小与传输时间成反比,与误码率成正比。每块发送完成后,发送端清空串口的输出流,防止接收端收到重复数据。上述的端口接收数据的超时等待时间以及短延迟的设置,还能够使接收方采用串行端口事件监听模型时不发生严重的数据丢失现象。
4、 代理服务器2上的请求报文接收模块接收私有请求报文并将其交给请求报文处理模块处理。接收方法如下在接收私有请求报文时,采用串行端口事件监听模型,即当有数据到达串行端口时,读取程序启动,开始读取数据。采用事件监听模型的好处是,相对于通常所采用的轮询机制,事件监听方式能够有效降低程序对计算机系统资源的占用。事件监听模型丢失数据的问题,可由增加端口接收数据的超时等待时间和在发送端提供延迟来解决。接收时,使用16字节的缓冲块来接收数据。发送端一次发送数据的最大长度需等于或小于接收端一次接收数据的最大长度。每接收一个数据块就与之前收到的数据进行拼接,第一个数据块除外,最后还原成私有请求报文;
5、 代理服务器2上的请求报文处理模块按照私有通信协议的规定,从私有请求报文中提取统一资源定位符(URL)、请求方法(METHOD)、请求资源位置(URI)和主机名称(HOST)。将得到的统一资源定位符(URL)、请求方法(METHOD)、请求资源位置(URI)和主机名称(HOST)交给代理服务器2上的HTTP处理模块。私有请求报文数据格式如图4,统一资源定位符(URL)与请求资源位置(URI)包含于图4中请求地址域,请求方法
(METHOD)包含于图4中请求方法域,主机名称(HOST)包含于图4中请求头域。6、 代理服务器2上的HTTP处理模块以收到的统一资源定位符(URL)、请求方法(METHOD)、请求资源位置(URI)和主机名称(HOST)为参数构成标准HTTP请求报文,与该主机名称(HOST)所指的WWW站点建立标准HTTP连接并将构成的标准HTTP请求报文发送至该WWW站点。
7、 代理服务器2上的HTTP处理模块接收标准HTTP响应报文,从接收的标准HTTP响应报文中提取响应状态(STATUS)、响应实体类型
(MIME-TYPE)以及响应实体(BODY)交给代理服务器2上的响应报文转换模块。其中,针对响应实体(BODY)需做如下处理判断标准HTTP响应报文中的响应实体是否为网页。若不是,直接将标准HTTP响应报文交给代理服务器2上的响应报文转换模块处理;若是,先将网页中的绝对地址链接中的地址设置为代理服务器1所接收的请求地址参数的值,再将修改后的标准HTTP响应报文交给代理服务器2上的响应报文转换模块处理。设置请求地址参数的方法是利用标准HTTP协议中允许通过统一资源定位符(URL)传递HTML网页参数的机制完成的,如下所示设原链接中的绝对地址为[绝对地址],则
修改后的链接地址为[代理服务器1地址] [请求地址参数名]=[绝对地址];其中,[代理服务器1地址]是由代理服务器1的IP地址、起始页面的名称及其扩展名构成,该网页用于传递请求地址参数给代理服务器1。
8、 代理服务器2上的响应报文转换模块将收到的响应状态(STATUS)、响应实体类型(MIME-TYPE)以及响应实体(BODY)构成私有响应报文,将私有响应报文交给代理服务器2上的响应报文发送模块。私有响应报文构造方法如下使用"<START〉" 、 "<END>"标记私有相应报文的开始和结束,使用"SENDW'标记响应状态域结束、使用"HEADERSXt"、 "HEND『标记响应头域的开始和结束,使用"BODYXt"标记响应实体的开始。使用"《AGMt"分隔响应头域中不同的参数,响应头域中相关联的参数名和参数值用'@'相连。私有响应报文数据格式如图5,响应状态(STATUS)包含于图5中响应状态域,响应实体类型(MIME-TYPE)包含于图5中响应头域,响应实体(BODY)包含于图5中响应实体域。
9、 代理服务器2上的响应报文发送模块将私有响应报文发送至代理服务器1。发送时,按照一次16字节的大小进行发送。g卩,待发送的数据被分成一些16字节的数据块,最后不足16字节的部分按照其自身大小构成数据块。
每发送一个数据块,发送端添加一个0.22秒的短延迟,以保证接收端有足够 的时间正确处理收到的数据,分成16字节或以下大小的数据块是为了保证传 输过程中的正确率,同时能够获得较短的传输时间。由于串口的波特率远大 于发送数据块的大小、而发送数据块越大传输出错的概率越高,所以发送字 节的大小与传输时间成反比,与误码率成正比。每块发送完成后,发送端清 空串口的输出流,防止接收端收到重复数据。上述的端口接收数据的超时等 待时间以及短延迟的设置,还能够使接收方采用串行端口事件监听模型时不 发生严重的数据丢失现象。
10、 代理服务器1上的响应报文接收模块接收私有响应报文并将其交给响
应报文提取模块处理。接收方法如下在接收私有响应报文时,采用串行端, 口事件监听模型,即当有数据到达串行端口时,读取程序启动,开始读取数 据。采用事件监听模型的好处是,相对于通常所采用的轮询机制,事件监听 方式能够有效降低程序对计算机系统资源的占用。事件监听模型丢失数据的 问题,可由增加端口接收数据的超时等待时间和在发送端提供延迟来解决。
接收时,使用16字节的缓冲块来接收数据。发送端一次发送数据的最大长度 需等于或小于接收端一次接收数据的最大长度。每接收一个数据块就与之前 收到的数据进行拼接,第一个数据块除外,最后还原成私有请求报文;
11、 代理服务器1上的响应报文提取模块按照私有通信协议的规定,从 私有响应报文中提取响应状态(STATUS)、响应内容类型(MIME-TYPE) 以及响应实体(BODY)构成标准HTTP响应报文交给代理服务器1上的HTTP 响应发送模块,由HTTP响应发送模块返回该标准HTTP响应报文至私有网 络中的用户。其中,私有响应报文数据格式如图5,响应状态(STATUS)包 含于图5中响应状态域,响应实体类型(MIME-TYPE)包含于图5中响应头 域,响应实体(BODY)包含于图5中响应实体域。
本发明具有以下效果使用串行端口连接代理服务器1与代理服务器2, 在代理服务器l、 2上进行标准HTTP协议与私有通信协议的相互转换,并采 用私有通信协议的规范进行代理服务器l、 2间的通信,使得使用通用网络通 信协议的私有网络与公共网络相隔离,进而使公共网络中的攻击者无法侵入
9私有网络,提高了私有网络的安全性。采用在线代理的机制,使得用户只要使用浏览器通过在网页中提交网址就可使用本方法访问站点而无需更改任何软件配置,省去了客户端开发、维护和升级的过程,本方案的部署与配置相对于传统防火墙或网关的配置而言十分简单。
获得更高安全性是以响应时间为代价的,根据串行端口的设置,串行端
口发送和接收的净速率为9600比特/秒既1200字节/秒,由于发送时添加的延迟每发送16字节等待220毫秒,访问一个40000字节左右大小的网页需要时间138秒左右,此时间即从客户机发送HTTP请求到收到响应的时间。对于安全第一的应用环境来说,此延时是可以接受的。此响应时间是根据具体的硬件环境条件得出的。实验用机的配置为中央处理器(CPU) : AMD双核1.9GHz、内存(RAM)大小2G。若使用处理能力更强的主机,可以降低串行端口发送数据的延迟,从而降低总的响应时间。
权利要求
1.基于串口通信的HTTP网络访问实现装置,其特征在于,该装置包括按照Internet标准接入私有网络的代理服务器1、按照Internet标准接入公共网络的代理服务器2、用于代理服务器1和代理服务器2之间通信的串行端口,代理服务器1包含以下功能模块HTTP请求接收模块,功能为按照标准HTTP协议规范接收并响应用户发送至代理服务器1的标准HTTP请求报文;将标准HTTP请求报文转换为私有请求报文;请求报文发送模块,功能为通过串行端口发送私有请求报文;响应报文接收模块,功能为通过串行端口接收私有响应报文;响应报文提取模块,功能为从私有响应报文中提取标准HTTP响应报文内容;HTTP响应发送模块,功能为按照标准HTTP协议规范发送标准HTTP响应报文给用户;代理服务器2包含以下功能模块请求报文接收模块,功能为通过串行端口接收私有请求报文;请求报文处理模块,功能为从私有请求报文中提取标准HTTP请求报文内容;HTTP处理模块,功能为发送标准HTTP请求报文至公共网络中的WWW站点,从公共网络中的WWW站点接收标准HTTP响应报文;响应报文转换模块,功能为将标准HTTP响应报文转换为私有响应报文;响应报文发送模块,功能为通过串行端口发送私有响应报文。
全文摘要
基于串口通信的HTTP网络访问实现装置属于信息安全技术领域。本发明解决在传统保护方式下仍旧存在诸多安全隐患的问题。本发明包括代理服务器1,代理服务器2,代理服务器1与代理服务器2之间使用串行端口连接;代理服务器1包含以下功能模块HTTP请求接收模块,请求报文发送模块,响应报文接收模块,响应报文提取模块,HTTP响应发送模块,代理服务器2包含以下功能模块请求报文接收模块,请求报文处理模块,HTTP处理模块,响应报文转换模块,响应报文发送模块;代理服务器1与代理服务器2之间使用串行端口连接,遵循私有通信协议的规范。本发明使受保护计算机与网络隔离,且在此情况下能够访问外部网络,用于提升受保护计算机的安全性。
文档编号H04L29/08GK101651712SQ200910092588
公开日2010年2月17日 申请日期2009年9月11日 优先权日2009年9月11日
发明者蔡永泉, 禹 靳 申请人:北京工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1