[发明专利]一种基于嵌入式系统的Boa服务器改进方法有效

专利信息
申请号: 201711001980.7 申请日: 2018-01-24
公开(公告)号: CN107911416B 公开(公告)日: 2020-09-11
发明(设计)人: 苏寒松;陈震宇;刘高华 申请(专利权)人: 天津大学
主分类号: H04L29/08 分类号: H04L29/08;H04L29/06
代理公司: 天津市北洋有限责任专利代理事务所 12201 代理人: 刘子文
地址: 300072*** 国省代码: 天津;12
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 嵌入式 系统 boa 服务器 改进 方法
【说明书】:

发明公开了一种基于嵌入式系统的Boa服务器改进方法,该方法包括:Boa接收一次新的请求,获取当前请求的状态,并读取HTTP头部以判断该请求的类型,若判别请求为GET方法,并进行应用层相应处理;若判别请求为POST方法,则查看当前HTTP状态是否为WRITE_BODY状态,若不是,则说明POST请求的数据还在接收中,则处于READ_BODY状态;当POST请求数据接收完毕后,处于WRITE_BODY状态,判别该POST请求是否为CGI程序,若为CGI程序,则采用Boa服务器原有方法处理;若为非CGI程序,则采用非CGI程序处理方法。本发明解决了Boa服务器无法满足来自客户端的请求为POST形式,且该POST请求只需要本地服务器处理的时候,Boa服务器仍然fork出子进程来执行,从而增加内存消耗,影响系统运行的问题。

技术领域

本发明属于信息技术领域,具体涉及一种基于嵌入式系统的Boa服务器改进方法,特别涉及Boa服务器对HTTP请求的处理方式。

背景技术

目前基于HTTP协议的用户浏览器已被广泛使用,用户普遍接受以浏览器为操作界面的产品。为了实现嵌入式录播系统中的数据可靠,有效和独立地传输,以及方便用户使用简单的网页浏览器对录制系统进行操作,在嵌入式系统中一般采用HTTP协议实现用户与设备的交互。Linux的Web服务器有Httpd、Apache、Thttpd、Boa等,Boa服务器相对其他几种服务器来说,响应速度更快,更安全,并且Boa所需的资源和能量损耗最少,所以非常适合作为嵌入式Web服务器。

Boa服务器是一个单任务的Web服务器,当Boa服务器处理多个请求的时候,并不会fork出多个子进程对多个请求进行处理,而是依次完成来自客户的请求。也正是由于它不需要更多的系统资源处理多个请求,所以消耗的系统资源非常小。Boa在并发量较多的大型服务器应用场景的情况下,无法完成每个响应,但在嵌入式系统中,Boa服务器的效率已经足够满足要求。Boa服务器处理CGI请求的时候,会结合CGI可执行文件进行响应。因此从Boa的运行特点与嵌入式的系统资源进行分析,Boa服务器应用在嵌入式设备上,具备较大的优势。通过对Boa源码的分析发现,Boa对POST请求的处理方法采用的是CGI程序处理。采用CGI程序处理的应用中,请求的URL必须指定服务器目录下的CGI程序,而在执行CGI程序时,Boa服务器需要fork出一个子进程来执行CGI程序。这种情况下,当来自客户端的POST请求只需要服务器本身处理,而不需要再fork出子进程时,会出现内存资源浪费的现象。

发明内容

本发明的目的是为了克服现有技术中的不足,提供一种基于嵌入式系统的Boa服务器改进方法,解决了Boa服务器无法满足来自客户端的请求为POST形式,且该POST请求只需要本地服务器处理的时候,Boa服务器仍然fork出子进程来执行,从而增加内存消耗,影响系统运行的问题。

本发明的目的是通过以下技术方案实现的:

一种基于嵌入式系统的Boa服务器改进方法,该方法包括:

Boa接收一次新的请求,获取当前请求的状态,并读取HTTP头部以判断该请求的类型,若判别请求为GET方法,并进行应用层相应处理;若判别请求为POST方法,则查看当前HTTP状态是否为WRITE_BODY状态,若不是,则说明POST请求的数据还在接收中,则处于READ_BODY状态;当POST请求数据接收完毕后,处于WRITE_BODY状态,判别该POST请求是否为CGI程序,若为CGI程序,则采用Boa服务器原有方法处理;若为非CGI程序,则采用非CGI程序处理方法。

所述判别请求为GET方法,则进行应用层相应处理,通过在哈希表中找到处理此GET方法的API进行处理,并返回HTTP响应。

所述采用Boa服务器原有方法处理,是通过调用init_cgi函数对CGI的环境变量进行设置,为CGI程序的执行打下基础。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津大学,未经天津大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201711001980.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top