[发明专利]一种基于用户空间事件过滤的提高网络程序处理速度的方法无效
申请号: | 201310431657.9 | 申请日: | 2013-09-22 |
公开(公告)号: | CN103514275A | 公开(公告)日: | 2014-01-15 |
发明(设计)人: | 王雷;吴兴博;龙翔 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 用户 空间 事件 过滤 提高 网络 程序 处理 速度 方法 | ||
1.一旦新的连接建立好,就调用epoll_ctl()系统调用将这个连接的文件描述符关联到epoll文件描述符上。新建立的连接将IO事件设置为“可读”以及“可写”状态(READABLE)。设置完“可读”和“可写”状态后,在应用程序中记录相应的文件描述符和当前状态(“可读”)。
2.当映射中一个连接表示为“可读”的时候,当获取到一个表示“可读”的消息后,可以对相应的文件描述符进行读操作,通过read()系统调用读取数据,然后对读取的数据进行相应的处理。
3.当映射中一个连接表示为“可读”的时候,当应用程序获取到一个表示“可写”的消息后,根据应用程序中当前记录的状态,将“可写”消息忽略。继续处理新的消息。
4.当映射中一个连接表示为“可读”并且“可写”的时候,当获取到一个表示“可读”的消息后,可以对相应的文件描述符进行读操作,通过read()系统调用读取数据,然后对读取的数据进行相应的处理。
5.当映射中一个连接表示为“可读”并且“可写”的时候,当应用程序获取到一个表示“可写”的消息后,检查这个连接对应的写缓冲区是否有等待发送的数据,如果有数据在缓冲区中,那么调用write()系统调用将暂存的消息通过相应的fd发送出去。如果缓冲区中的数据过多,则一次只发送网络允许的最大长度的消息,然后更新缓冲区,保留未发送的消息,等待下次“可写”事件再发送剩下的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310431657.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:LD激光混相装置及方法
- 下一篇:偏振光调制相衬显微镜