CN101835205B - 一种无线终端及无线上网方法 - Google Patents
一种无线终端及无线上网方法 Download PDFInfo
- Publication number
- CN101835205B CN101835205B CN201010146073.3A CN201010146073A CN101835205B CN 101835205 B CN101835205 B CN 101835205B CN 201010146073 A CN201010146073 A CN 201010146073A CN 101835205 B CN101835205 B CN 101835205B
- Authority
- CN
- China
- Prior art keywords
- dns
- request
- time
- module
- dns request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提出一种无线终端,所述无线终端包括PC数据包处理子系统、DNS缓存子系统和运营商网络数据包处理子系统;所述PC数据包处理子系统和运营商网络数据包处理子系统在PC侧与运营商网络之间建立一条数据上下行的数据通路,并完成数据包的格式转换功能;所述DNS缓存子系统,处于上述两个子系统之间,其通过对上下行数据流进行识别处理来完成DNS信息缓存和通过下行数据发送DNS响应数据包到PC侧。与现有技术相比较,本发明通过在无线终端上增加DNS缓冲功能来弥补PC不对无线终端保留有效DNS缓冲信息的功能缺失。本发明可以减少用户上网等待,尤其是无线环境较差时,效果更明显,同时降低上网费用,减轻运营商网络负荷。
Description
技术领域
本发明涉及无线通信技术领域,更具体地,涉及一种无线终端及无线上网方法。
背景技术
无线终端(如数据卡,本发明中称为“终端”或“终端侧”),通过无线终端上网是指,无线终端通过某个运营商的接入网、核心网络最终接入因特网的一种上网方式。该上网方式的显著特点是,终端接入因特网使用的IP地址、DNS服务器IP地址等信息都是由运营商核心网络设备分配或决定。
对于使用终端进行上网的设备,如个人电脑(PC)、上网本(NetBook)等,本发明中统称为“PC”或“PC侧”。对于PC而言,由于终端上网的IP地址等信息依赖于运营商核心网络设备的分配和允许,则与该IP地址等信息对应的DNS缓冲等信息,也必将在该IP地址无效时,失去其存在的意义。换句话说,当用户断开终端与网络的链接时,PC将清除所有与本次上网相关的DNS缓冲等信息。
但是对于终端而言,DNS缓冲信息在其断开并重新与网络建立链接后,在绝大多数情况下是有效的。而PC清除了所有与本次上网相关的DNS缓冲等信息,使得终端在下次上网时,又要重新获取所述缓冲信息。这样既增加用户的上网等待时间,同时浪费用户上网费用,还增加了运营商网络负荷。
发明内容
本发明的目的是提出一种无线终端及无线上网方法。
为实现上述目的,本发明提出一种无线终端,所述无线终端包括PC数据包处理子系统、DNS缓存子系统和运营商网络数据包处理子系统;所述PC数据包处理子系统和运营商网络数据包处理子系统在PC侧与运营商网络之间建立一条数据上下行的数据通路,并完成数据包的格式转换功能;所述DNS缓存子系统,处于上述两个子系统之间,其通过对上下行数据流进行识别处理来完成DNS信息缓存和通过下行数据发送DNS响应数据包到PC侧。
进一步地,所述DNS缓存子系统包括:DNS响应拷贝模块、DNS响应识别模块、DNS请求拷贝模块、DNS请求识别模块和DNS超时及缓存处理模块。
进一步地,所述DNS响应拷贝模块,负责在下行数据中识别所有的DNS响应数据包并把其备份发送到DNS响应识别模块。
进一步地,所述DNS响应识别模块负责对DNS响应拷贝模块发送来的DNS响应数据包进行正确性识别,随后把正确的DNS响应数据包发送到DNS超时及缓存处理模块,由其进行缓存和相关超时处理。
进一步地,所述DNS请求拷贝模块负责在上行数据中识别所有的DNS请求数据包,并把其备份发送到DNS请求识别模块。
进一步地,所述DNS请求识别模块负责对DNS请求拷贝模块发送来的DNS请求数据包进行解析,并把请求的域名和时间戳信息一起发送到DNS超时及缓存处理模块。
进一步地,所述DNS超时及缓存处理模块根据接收到的DNS响应信息及时更新或建立相应的DNS缓存信息,同时更新进行DNS请求超时判断的列表;判断在一定的时间间隔内没有收到DNS响应识别模块发送来的DNS响应信息,或者收到了已经在DNS请求列表中的相同DNS请求,两个条件满足一条则判定该DNS请求超时,并触发超时处理;当判断某个请求已经超时,首先在DNS缓存信息数据库中查找对应的DNS响应信息,如果找到了对应的DNS响应信息则组建并发送该DNS响应信息的相应数据包到下行数据,最后进行DNS请求超时判断列表的更新。
另外,本发明还提出一种无线上网方法,在无线终端工作时,把所有的DNS响应数据包发给无线终端的DNS响应识别模块;所述DNS响应识别模对所述DNS响应数据包信息解析并组成“域名-IP地址”信息对,发送到无线终端的DNS超时及缓存处理模块进行DNS缓存信息的存储或更新;无线终端的DNS请求拷贝模块在上行数据中识别并发送DNS请求数据包到无线终端的DNS请求识别模块,DNS请求识别模块把该请求中的域名与当前时间戳组成“域名-时间戳”信息对,交给DNS超时及缓存处理模块组建DNS请求列表;DNS超时及缓存处理模块,按照时间优先级进行DNS请求列表的超时检测。
进一步,所述DNS响应识别模块进行DNS请求超时判断的信息列表的更新,不再对相应的DNS请求进行超时判断。
进一步,所述按照时间优先级进行DNS请求列表的超时检测是指:如果最先到来的“域名-时间戳”中的时间戳与当前时间戳间隔超过了设定的阀值,则触发超时处理;如果DNS超时及缓存处理模块没有查询到“域名”对应的DNS响应信息,则仅删除DNS请求列表中的“域名-时间戳”信息;如果查询到了“域名”对应的DNS响应信息,则在删除“域名-时间戳”信息的同时,组建DNS响应数据包并发送到下行数据流中。
综上所述,与现有技术相比较,本发明技术方案通过在无线终端上增加DNS缓冲功能来弥补PC不对无线终端保留有效DNS缓冲信息的功能缺失。本发明技术方案可以减少用户上网等待,尤其是无线环境较差时,效果更明显,同时降低上网费用,减轻运营商网络负荷。
附图说明
图1是本发明实施例无线终端示意图;
图2是本发明实施例无线上网方法流程示意图;
图3是本发明实施例无线上网方法中DNS请求超时处理流程示意图。
具体实施方式
本发明的思想是通过在终端上增加DNS缓冲功能来弥补PC不对无线终端保留有效DNS缓冲信息的功能缺失。本发明可以大大减少用户上网等待,尤其是无线环境较差时,同时降低上网费用、减轻运营商网络负荷。
下面结合附图和具体实施例对本发明技术方案做详细描述。
在该实施例中,无线终端以数据卡为例说明。请参考图1所示,本实施例中,所述数据卡分为三个子系统:PC数据包处理子系统、DNS缓存子系统和运营商网络数据包处理子系统。
PC数据包处理子系统和运营商网络数据包处理子系统在PC侧与运营商网络之间建立了一条数据上下行的数据通路,并完成数据包的格式转换等功能。
DNS缓存子系统,处于上述其他两个子系统之间,其通过对上下行数据流进行识别等处理来完成DNS信息缓存和通过下行数据发送DNS响应数据包到PC侧两个功能。
DNS缓存子系统包括五个功能模块:DNS响应拷贝模块、DNS响应识别模块、DNS请求拷贝模块、DNS请求识别模块和DNS超时及缓存处理模块。
DNS响应拷贝模块,该模块负责在下行数据中识别所有的DNS响应数据包并把其备份发送到DNS响应识别模块;
DNS响应识别模块,该模块负责对DNS响应拷贝模块发送来的DNS响应数据包进行正确性识别,随后把正确的DNS响应数据包发送到DNS超时及缓存处理模块,由其进行缓存和相关超时处理;
DNS请求拷贝模块,该模块负责在上行数据中识别所有的DNS请求数据包,并把其备份发送到DNS请求识别模块;
DNS请求识别模块,该模块负责对DNS请求拷贝模块发送来的DNS请求数据包进行解析,并把请求的域名和时间戳信息一起发送到DNS超时及缓存处理模块;
DNS超时及缓存处理模块,该模块是DNS缓存子系统的核心模块,该模块有四个方面的功能,包括:
一是维护DNS缓存信息,根据接收到的DNS响应信息及时更新或建立相应的DNS缓存信息,同时更新进行DNS请求超时判断的列表;
二是维护DNS请求列表,该列表由DNS请求识别模块发送来的请求域名及其时间戳信息组成,该模块只对该列表中的DNS请求进行超时判断;
三是超时判断,超时判断包括两个条件,在一定的时间间隔内没有收到了DNS响应识别模块发送来的DNS响应信息,或者收到了已经在DNS请求列表中的相同DNS请求,两个条件满足一条则判定该DNS请求超时,并触发超时处理;
四是超时处理,当判断某个请求已经超时,首先在DNS缓存信息数据库中查找对应的DNS响应信息,其次如果找到了则组建并发送该DNS响应信息的相应数据包到下行数据,最后进行DNS请求超时判断列表的更新。
DNS请求和DNS响应拷贝模块的功能是在上行和下行数据流中识别出DNS请求和DNS响应。这两个模块在实现上非常相似,主要是按照DNS协议进行识别。在DNS协议上,DNS数据包不管采用的是UDP承载方式还是TCP承载方式,其端口都是熟知端口:0x35(十进制53)。所以这两个模块通过判断IP数据包中,UDP协议或TCP协议的端口号是否为0x35就可以得知是否需要交由DNS请求识别或DNS响应识别模块做进一步的处理。
DNS请求识别和DNS响应识别两个模块的主要工作是对DNS数据包的正确性进行判断、DNS数据包信息的进行提取。在实现方案上,就是严格按照DNS协议进行数据包的正确性判定和DNS数据包的域名、IP地址等信息的解析提取。
DNS超时及缓存处理模块在实现上由一个DNS请求列表、一个DNS缓存信息二维数组和一个DNS请求检测线程或进程组成。
所述DNS超时及缓存处理模块模块首先把DNS请求识别模块发送来的域名及其时间戳信息,按照时间戳的先后顺序组成一个队列;把DNS响应识别模块发送来的DNS响应信息,按照域名和域名信息的二维结构构建二维数组;
在系统启动时,建立一个后台运行时实体(线程或进程)对DNS请求列表中“最先”到来的DNS请求的时间戳进行检测,如果没有超时的DNS请求,该运行实体将休眠一段时间后再次进行检测,如果有超时则进行超时处理。同样需要做超时处理DNS请求,还包括收到DNS请求识别模块的重复的DNS请求。超时处理包括域名信息查询和DNS请求列表更新两部分。
如果查询到对应的DNS响应信息,则依照DNS协议,组建DNS响应数据包,最后封装成下行数据流格式并发送到下行数据流中。
对于已经处理了的超时的DNS请求,无论是否在DNS缓存数据中查找到DNS响应信息,都要将其移除DNS请求列表,不对其进行重复的超时处理。同样需要移除DNS请求列表的是,在对其进行超时处理前已经收到DNS响应识别模块发送来的相应的DNS响应信息。
需要说明的是,DNS缓存的存储形式不限于二维数组。
如图2所示,是本实施例无线上网方法的总体流程图,其包括如下步骤:
S201:检测DNS数据包;
DNS请求拷贝模块和DNS响应拷贝模块对上下行数据流进行DNS数据包的检测。在用户首次使用该无线终端时,首先由DNS响应拷贝模块对下行数据流进行检测,并把所有的DNS响应数据包发给DNS响应识别模块。
S202:判断是否检测到请求包;
判断是DNS响应拷贝模块检测到DNS数据请求包,还是DNS请求拷贝模块检测到DNS数据请求包;如果DNS响应拷贝模块检测到DNS数据请求包,则执行步骤S203,如果DNS请求拷贝模块检测到DNS数据请求包,则执行步骤S205;
DNS响应识别模块把收到的正确的DNS响应数据包信息进行解析,把信息组成“域名-IP地址”信息对,发送到DNS超时及缓存处理模块进行DNS缓存信息的存储或更新,同时进行DNS请求超时判断的信息列表的更新,不再对相应的DNS请求进行超时判断。
S203:判断收到的DNS数据请求包是否为有效的DNS响应包,如果是无效的DNS响应数据包,则结束流程;如果是有效地DNS响应数据包,则执行步骤S204;
S204:缓存DNS响应信息;
对有效的DNS响应信息进行提取,并将域名与IP地址信息进行缓存,供超时处理时使用,并转到步骤S208;
S205:把DNS请求放置到DNS请求列表中;
DNS请求拷贝模块在上行数据中识别并发送DNS请求数据包到DNS请求识别模块,DNS请求识别模块把该请求中的域名与当前时间戳组成“域名-时间戳”信息对,交给DNS超时及缓存处理模块组建DNS请求列表。
S206:DNS请求队列中所有的DNS请求被超时检测线程周期性地超时检测;
S207:对于超时的DNS请求,进行超时处理(超时处理的流程参考“DNS请求超时处理流程”),跳转到步骤S208;
DNS超时及缓存处理模块,按照时间优先级进行DNS请求列表的超时检测,如果最先到来的“域名-时间戳”中的时间戳与当前时间戳间隔超过了设定的阀值,则触发超时处理。
S208:更新DNS请求队列;
删除DNS响应数据包对应的DNS请求和已经进行超时处理的DNS请求后,更新DNS请求队列。
如果DNS超时及缓存处理模块没有查询到“域名”对应的DNS响应信息,则仅删除DNS请求列表中的“域名-时间戳”信息;如果查询到了“域名”对应的DNS响应信息,则在删除“域名-时间戳”信息的同时,组建DNS响应数据包并发送到下行数据流中。
请参考图3所示,是本实施例中DNS请求超时处理流程示意图。
DNS请求超时处理流程,是指从DNS超时及缓存处理模块检测开始,到删除DNS请求列表中相关条目结束,包括以下步骤:
S301:检测到DNS请求队列中,有超时的DNS请求;
S302:以超时的DNS请求中的“域名”为键值进行DNS缓存查找处;
S303:判断是否查找到响应的DNS响应数据信息,如果找到转步骤S304,否则则结束流程;
S304:把查询到的DNS响应信息为内容,组建DNS响应数据包;
S305:发送DNS响应数据包到下行数据流中。
当然,本发明还可有多种实施方式,在不背离本发明精神及其实质的情况,熟悉本领域的技术人员当可根据本发明做出各种相应的更改或变化,但凡在本发明的精神和原则之内所作的任何修改、等同替换、改进,均应包含在本发明的保护范围之内。
Claims (5)
1.一种无线终端,其特征在于:所述无线终端包括PC数据包处理子系统、DNS缓存子系统和运营商网络数据包处理子系统;所述PC数据包处理子系统和运营商网络数据包处理子系统在PC侧与运营商网络之间建立一条数据上下行的数据通路,并完成数据包的格式转换功能;所述DNS缓存子系统,处于上述两个子系统之间,其通过对上下行数据流进行识别处理来完成DNS信息缓存和通过下行数据发送DNS响应数据包到PC侧;所述DNS缓存子系统包括DNS超时及缓存处理模块、DNS请求拷贝模块、DNS请求识别模块、DNS响应识别模块和DNS响应拷贝模块,所述DNS响应拷贝模块,负责在下行数据中识别所有的DNS响应数据包并把其备份发送到DNS响应识别模块;所述DNS响应识别模块负责对DNS响应拷贝模块发送来的DNS响应数据包进行正确性识别,随后把正确的DNS响应数据包发送到DNS超时及缓存处理模块,由其进行缓存和相关超时处理;所述DNS超时及缓存处理模块用于根据接收到的DNS响应信息及时更新或建立相应的DNS缓存信息,同时更新进行DNS请求超时判断的列表;判断在一定的时间间隔内没有收到DNS响应识别模块发送来的DNS响应信息,或者收到了已经在DNS请求列表中的相同DNS请求,两个条件满足一条则判定该DNS请求超时,并触发超时处理;当判断某个请求已经超时,首先在DNS缓存信息数据库中查找对应的DNS响应信息,如果找到了对应的DNS响应信息则组建并发送该DNS响应信息的相应数据包到下行数据,最后进行DNS请求超时判断列表的更新。
2.如权利要求1所述的终端,其特征在于:所述DNS请求拷贝模块负责在上行数据中识别所有的DNS请求数据包,并把其备份发送到DNS请求识别模块。
3.如权利要求2所述的终端,其特征在于:所述DNS请求识别模块负责对DNS请求拷贝模块发送来的DNS请求数据包进行解析,并把请求的域名和时间戳信息一起发送到DNS超时及缓存处理模块。
4.一种无线上网方法,在无线终端工作时,把所有的DNS响应数据包发给无线终端的DNS响应识别模块;所述DNS响应识别模块对所述DNS响应数据包信息解析并组成“域名-IP地址”信息对,发送到无线终端的DNS超时及缓存处理模块进行DNS缓存信息的存储或更新;无线终端的DNS请求 拷贝模块在上行数据中识别并发送DNS请求数据包到无线终端的DNS请求识别模块,DNS请求识别模块把该请求中的域名与当前时间戳组成“域名-时间戳”信息对,交给DNS超时及缓存处理模块组建DNS请求列表;DNS超时及缓存处理模块,按照时间优先级进行DNS请求列表的超时检测,其中,所述按照时间优先级进行DNS请求列表的超时检测是指:如果最先到来的“域名-时间戳”中的时间戳与当前时间戳间隔超过了设定的阀值,则触发超时处理;所述超时处理为:更新DNS请求队列;所述更新DNS请求队列的步骤包括:如果DNS超时及缓存处理模块没有查询到“域名”对应的DNS响应信息,则仅删除DNS请求列表中的“域名-时间戳”信息;如果查询到了“域名”对应的DNS响应信息,则在删除“域名-时间戳”信息的同时,组建DNS响应数据包并发送到下行数据流中。
5.如权利要求4所述的方法,其特征在于:所述DNS响应识别模块进行DNS请求超时判断的信息列表的更新,不再对相应的DNS请求进行超时判断。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010146073.3A CN101835205B (zh) | 2010-04-07 | 2010-04-07 | 一种无线终端及无线上网方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010146073.3A CN101835205B (zh) | 2010-04-07 | 2010-04-07 | 一种无线终端及无线上网方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101835205A CN101835205A (zh) | 2010-09-15 |
CN101835205B true CN101835205B (zh) | 2015-08-12 |
Family
ID=42719091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010146073.3A Expired - Fee Related CN101835205B (zh) | 2010-04-07 | 2010-04-07 | 一种无线终端及无线上网方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101835205B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102355379A (zh) * | 2011-08-12 | 2012-02-15 | 盛乐信息技术(上海)有限公司 | 应用程序网络通讯需求的检测系统及方法 |
CN103905580B (zh) * | 2012-12-29 | 2018-02-27 | 锐迪科(重庆)微电子科技有限公司 | Pc机通过移动终端配置网络地址、收发数据方法及系统 |
CN103973836A (zh) * | 2014-05-23 | 2014-08-06 | 杭州智屏科技有限公司 | 一种基于客户端的域名预处理方法 |
CN105721632A (zh) * | 2016-04-12 | 2016-06-29 | 上海斐讯数据通信技术有限公司 | 一种基于dns机制的无线接入方法及无线接入设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101094129A (zh) * | 2006-06-20 | 2007-12-26 | 腾讯科技(深圳)有限公司 | 一种域名访问方法及客户端 |
CN101272407A (zh) * | 2008-04-28 | 2008-09-24 | 杭州华三通信技术有限公司 | 域名系统的缓存探测方法、缓存探测装置和探测响应装置 |
CN101483648A (zh) * | 2009-02-20 | 2009-07-15 | 杭州华三通信技术有限公司 | Dns缓存探测的方法、系统、装置和dns服务器 |
-
2010
- 2010-04-07 CN CN201010146073.3A patent/CN101835205B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101094129A (zh) * | 2006-06-20 | 2007-12-26 | 腾讯科技(深圳)有限公司 | 一种域名访问方法及客户端 |
CN101272407A (zh) * | 2008-04-28 | 2008-09-24 | 杭州华三通信技术有限公司 | 域名系统的缓存探测方法、缓存探测装置和探测响应装置 |
CN101483648A (zh) * | 2009-02-20 | 2009-07-15 | 杭州华三通信技术有限公司 | Dns缓存探测的方法、系统、装置和dns服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN101835205A (zh) | 2010-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8935419B2 (en) | Filtering device for detecting HTTP request and disconnecting TCP connection | |
CN105991412B (zh) | 消息推送方法及装置 | |
CN101835205B (zh) | 一种无线终端及无线上网方法 | |
CN101986284B (zh) | 一种虚拟机镜像文件的废弃空间动态回收系统 | |
CN102801698B (zh) | 一种基于url请求时序的恶意代码检测方法和系统 | |
CN102056212B (zh) | 检测上网速率的方法及网络侧设备 | |
CN102055735A (zh) | 防火墙访问控制策略的配置方法及装置 | |
RU2010146258A (ru) | Способ, устройство и система для распределения сообщений | |
CN106331190A (zh) | Ip地址回收方法、装置及动态主机配置协议服务器 | |
CN103685570A (zh) | 服务器、终端和消息推送方法 | |
CN107517138A (zh) | 设备检测方法及装置 | |
CN104270325A (zh) | CPE设备基于Linux实现公网接入用户数限制的系统及方法 | |
CN103414641B (zh) | 邻居表项释放方法、装置和网络设备 | |
CN109246762A (zh) | 一种本地业务分流方法及装置 | |
CN1863193B (zh) | 实现网络安全装置安全策略的方法 | |
CN202111746U (zh) | 一种实现移动终端信息推送的系统 | |
CN102014376A (zh) | 附着方法、寻呼方法、去附着方法及相关设备 | |
CN107251593B (zh) | 数据包处理方法和相关设备 | |
CN103222288A (zh) | 国际移动设备标识信息imei的处理方法与网络设备 | |
CN102932373B (zh) | 一种僵尸网络的检测方法和装置 | |
CN105897943A (zh) | 一种搜索智能设备的方法及装置 | |
CN103227733A (zh) | 一种拓扑发现方法及系统 | |
CN103457934B (zh) | 基于网关设备的病毒防御方法、网关设备和服务器 | |
CN109729098A (zh) | Dns服务器中自动阻断恶意端口扫描的方法 | |
CN106330712A (zh) | 一种mac地址学习的控制方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150812 Termination date: 20180407 |
|
CF01 | Termination of patent right due to non-payment of annual fee |