CN101163074B - 一种WiMAX终端设备主机驱动方法 - Google Patents
一种WiMAX终端设备主机驱动方法 Download PDFInfo
- Publication number
- CN101163074B CN101163074B CN2007101881853A CN200710188185A CN101163074B CN 101163074 B CN101163074 B CN 101163074B CN 2007101881853 A CN2007101881853 A CN 2007101881853A CN 200710188185 A CN200710188185 A CN 200710188185A CN 101163074 B CN101163074 B CN 101163074B
- Authority
- CN
- China
- Prior art keywords
- module
- operating system
- message
- wimax terminal
- driver
- 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
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000012545 processing Methods 0.000 claims abstract description 98
- 230000008569 process Effects 0.000 claims description 30
- 230000005540 biological transmission Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 7
- 238000013461 design Methods 0.000 abstract description 11
- 238000004891 communication Methods 0.000 abstract description 3
- 230000010365 information processing Effects 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 65
- 230000003993 interaction Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 206010010099 Combined immunodeficiency Diseases 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000001360 collision-induced dissociation Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000001152 differential interference contrast microscopy Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 206010019233 Headaches Diseases 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 231100000869 headache Toxicity 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000002054 transplantation Methods 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种WiMAX终端设备主机驱动方法,包括:在终端设备驱动程序中设置操作系统处理模块(21)、消息处理模块(23)、驱动管理模块(22)、设备管理模块(25)、启动模块(24)、数据通路模块(26)和通用硬件接口模块(27);利用该驱动程序初始化和启动WiMAX终端设备(4);具体应用通过该驱动程序和WiMAX终端设备(4)发送或接收数据。这种方法采用通用硬件接口模块和操作系统处理模块充分适应各种实际接口且易于程序移植,同时层次化的设计使整个通信链路上的数据和消息的交互比现有公开技术更加清晰,设计更加方便。
Description
技术领域
本发明涉及网络设备的计算机驱动,具体涉及一种WiMAX(WorldwideInteroperability for Microwave Access,微波接入全球范围的互操作性)终端设备主机驱动方法。
背景技术
随着网络技术的高速发展,WiMAX无线网络逐渐被越来越多的人所熟知和接受,并被人们视为继3G(3rd Generation,第3代)之后的4G(4thGeneration,第4代)标准。通过WiMAX终端进行无线上网的业务也越来越广泛,当前应用的比较广泛的就是主机用即插即用的WiMAX无线终端设备来访问网络。这些设备需要相应的主机驱动,为了方便开发人员在通用平台上开发各种硬件接口和总线的主机驱动,于是就出现了驱动架构的概念。
国内外的专利中关于通用操作系统下网络设备的驱动架构的专利文档并不多,没有相应的国内专利,国外的专利有几篇,但是与网络设备通用架构密切相关的专利只有两篇:EP1161045和WO2004001615及其在不同国家和地区申请的相同专利。但是两篇专利都有相应的缺陷。
(一)在编号为EP1161045的专利文献中提出了一种与操作系统无关的网络设备的业务架构。在该架构中,驱动被分成两个大的模块,数据接口和控制接口。但是由于该专利所涉及的是一种分布式的网络设备的驱动架构,因此针对现有的PC主机的相关的软件架构就稍有不足,软件架构中各功能块是一种扁平模式的,而不是一种层次架构的,而且由于当时WiMAX技术还未出现,因此专门针对WiMAX的相关的设计也没有。
(二)在编号为WO2004001615的专利文献中,给出了网络终端的软件架 构,该架构包括了用户应用和处于操作系统内核空间的设备驱动,但是该专利对驱动的描述主要是从应用到设备一系列的设计方法,但是对于处于内核空间的驱动的设计描述甚少,而目前令驱动开发者最为头痛的就是开发内核空间的网络设备驱动。
目前WiMAX芯片的生产厂家繁多,每个厂家的芯片完成的功能都会略有不同,有的把WiMAX协议栈的东西全部放到芯片里面实现,有的则是有部分放到芯片里,另外一部分功能则放到主机上;而且终端设备与主机通信所用的接口也是各式各样的,这就更加增加了开发者的负担。
发明内容
本发明需要解决的技术问题是如何提供一种WiMAX终端设备主机驱动方法,能够便于开发者实现,同时适应计算机提供的各种与WiMAX终端的接口,并可在各种操作系统中方便地移植。
本发明的上述第一个技术问题这样解决,提供一种WiMAX终端设备主机驱动方法,所述WiMAX终端设备主机驱动包括操作系统网络协议栈与操作系统接口模块(1)、操作系统处理模块(21)、消息处理模块(23)、驱动管理模块(22)、设备管理模块(25)、启动模块(24)、数据通路模块(26)和通用硬件接口模块(27);其中,
数据通路模块(26)与操作系统网络协议栈与操作系统接口模块(1)、通用硬件接口模块(27)、消息处理模块(23)连接;
操作系统处理模块(21)与操作系统网络协议栈与操作系统接口模块(1)、消息处理模块(23)、驱动管理模块(22)连接,驱动管理模块(22)还与消息处理模块(23)连接;
启动模块(24)与消息处理模块(23)、通用硬件接口模块(27)连接;
设备管理模块(25)与消息处理模块(23)、通用硬件接口模块(27)连接;
消息处理模块(23)还与通用硬件接口模块(27)连接;
所述方法包括以下步骤:
1.1)利用所述操作系统处理模块将操作系统相关的操作转换成与操作 系统无关的操作,同时利用通用硬件接口模块支持WiMAX终端设备插入主机的各种实际接口;
1.2)利用所述操作系统处理模块、驱动管理模块、设备管理模块、消息处理模块、启动模块、通用硬件接口模块和数据通路模块在主机操作系统的指示下完成对所述WiMAX终端设备的初始化和启动;所述实际接口的启动可以由驱动程序完成,也可以由主机操作系统直接完成。
1.3)具体应用通过操作系统网络协议栈与操作系统操作接口模块,利用所述数据通路模块、通用硬件接口模块、实际接口和WiMAX终端设备发送或接收数据。
按照本发明提供的驱动方法,该驱动方法还包括步骤1.3)之后的利用所述操作系统处理模块、驱动管理模块、设备管理模块、启动模块和数据通路模块在主机操作系统的指示下重启动所述WiMAX终端设备。
按照本发明提供的驱动方法,该驱动方法还包括步骤1.3)之后的利用所述操作系统处理模块、驱动管理模块、设备管理模块、启动模块、通用硬件接口模块和数据通路模块在主机操作系统的指示下停止所述实际接口和WiMAX终端设备。
按照本发明提供的驱动方法,该驱动方法还包括步骤1.3)之后的具体应用或驱动程序中各模块利用所述消息处理模块获取WiMAX终端设备的设备消息。
按照本发明提供的驱动方法,该驱动方法还包括步骤1.3)之后的WiMAX终端设备利用所述消息处理模块向驱动程序中各模块或主机操作系统汇报自身设备消息。
按照本发明提供的驱动方法,该驱动方法还包括步骤1.3)之后的操作系统网络协议栈与操作系统接口模块利用所述数据通路模块对地址解析协议请求消息进行响应。
按照本发明提供的驱动方法,该驱动方法还包括在所述数据通路模块中设置上下行数据通道子模块、IP汇聚子层子模块、协议处理子模块、传输控制及QoS子模块,分别对上行和下行数据分别对应进行正向和反向处理。
按照本发明提供的驱动方法,所述主机操作系统是Windows、UNIX或LINIX中的任一种;所述实际接口是即插即用接口,包括但不限制于USB,Express,PCMCIA,SDIO接口,还包括未来可能出现的其他即插即用接口。
按照本发明提供的驱动方法,所述实际接口是即插即用总线接口,比如USB接口。
按照本发明提供的驱动方法,所述初始化和启动具体包括:
9.1)插入设备后,主机操作系统发消息指示对驱动程序和WiMAX终端设备进行初始化以及启动;
9.2)驱动程序中操作系统处理模块把操作系统的消息处理后,发给驱动管理模块,指示驱动管理模块进行初始化和启动;
9.3)驱动管理模块指示消息管理模块和设备管理模块依次开始初始化和启动;
9.4)设备管理模块指示通用硬件接口模块和boot模块依次开始初始化和启动;
9.5)boot模块指示设备进行初始化,初始化完成后直接启动设备;
9.6)驱动管理器根据设备管理模块和boot模块完成通知指示数据通路模块开始初始化以及启动流程,完成后收到响应;
9.7)驱动管理模块通知主机操作系统初始化完成,驱动程序以及WiMAX终端设备已经启动。
按照本发明提供的驱动方法,所述接收数据具体包括:
10.1)WiMAX终端设备发送其接收的数据给实际接口;
10.2)实际接口把数据发给通用硬件接口模块;
10.3)通用硬件接口模块把数据发给数据通路模块;
10.4)数据通路模块把数据发给操作系统网络协议栈与操作系统接口模块。
本发明提供的一种WiMAX终端设备主机驱动方法,采用通用硬件接口模块和操作系统处理模块,充分适应各种实际接口且便于驱动程序移植,同时采用了层次设计,使整个通信链路的数据和消息的交互比现有公开技术更加清晰,设计更加方便。
附图说明
图1是本发明WiMAX终端设备驱动程序的软件架构示意图;
图2是本发明WiMAX终端设备与驱动程序的初始化和启动流程示意图;
图3是本发明WiMAX终端设备重启动流程示意图;
图4是本发明停止WiMAX终端设备流程示意图;
图5是本发明上层应用通过驱动程序查询WiMAX终端设备设备消息流程示意图;
图6是本发明驱动程序内部模块与WiMAX终端设备消息交互流程示意图;
图7是本发明WiMAX终端设备向上层报告设备消息流程示意图;
图8是本发明WiMAX终端设备向驱动程序内部模块报告设备消息流程示意图;
图9是本发明ARP消息与数据流程示意图;
图10是本发明主机利用WiMAX终端设备发送上行数据流程示意图;
图11是本发明主机利用WiMAX终端设备接收下行数据流程示意图。
具体实施方式
下面结合附图和具体实施例进一步对本发明进行详细说明。
首先,说明本发明硬件基础:
WiMAX终端设备:提供给用户使用的能够接入WiMAX网络的客户端设备,该设备对PC系统是即插即用的,下面简称终端设备;
主机:PC(Personal Computer,个人电脑),负责驱动管理终端设备,并利用终端设备接入网络;
所涉及的接口是:USB,Express,PCMCIA,SDIO等主机现在所支持的即插即用设备的接口,以及未来可能出现的其他即插即用接口。
第二步,说明本发明WiMAX终端的主机驱动程序的软件架构,具体如图1所示,包括主机操作系统、驱动程序、总线接口和终端设备,其中:
网络协议栈与操作系统接口模块1:通用操作系统一般都提供标准的API接口。MAC(Media Access Controller,介质访问控制)设备驱动封装了所有的NIC硬件实现,这样一来所有的使用相同介质的NIC就可以通过通用的编程接口被访问。 它同时也提供一个函数库(又时也称作wrapper),这个库中的函数可以被MAC驱动调用,也可以被高层的协议(例如TCP/IP)驱动调用。这个部分一般都是由操作系统提供的。例如Windows操作系统下就是NDIS。
OS处理模块21:本模块的主要是为了方便在不同的操作系统间进行驱动移植而设计的,它负责将操作系统相关的操作转换成与操作系统无关的操作。该模块作为驱动与操作系统的接口,它负责把操作系统规定的初始化/停止/复位命令转换成定义明确的驱动管理模块的命令,并避免并行执行驱动管理模块中的命令。同时在操作系统和驱动的消息子模块之间进行消息的传输。
消息处理模块23:该模块负责所有的驱动内部消息的转发处理,以及与上层和下层的消息交互,它是整个驱动的消息交互和处理分发的核心。该模块需要负责同步所有的同步消息,保证在同一时刻只处理一条同步消息,对异步消息不需特别处理。该模块分成三个子模块:上层消息处理子模块,内部消息处理子模块和下层消息处理子模块。
上层消息处理子模块负责处理驱动和上层的消息交互,它把高层传过来的消息进行解码,转换成驱动内部使用的消息格式,并把该消息发给内部消息处理模块;接收内部消息处理子模块发送过来的消息,转成上层所需的消息格式,发送给操作系统和操作系统的网络协议栈。
内部消息处理子模块负责驱动内部消息的转发和传递,它接收驱动内部各模块(包括上层消息处理子模块和底层消息处理子模块)发送过来的内部消息,根据指示转发给驱动的各相应模块,其中对于需要发给上层的消息它转发给上层消息处理子模块;对于需要发给下层的消息,它发给底层消息处理子模块;对于驱动内部交互的消息,包括上层消息处理子模块和底层消息处理子模块发给驱动内部各模块的消息,都是直接转发给相应的模块即可。
底层消息处理子模块负责处理与底层(即通用接口,硬件接口和设备)与驱动以及操作系统的消息交互。它负责把解读底层发上来的消息,解读并转成驱动内部的消息格式,并将该消息发给内部消息处理模块;对内部消息处理模块发过来的消息,该子模块将其转成与底层的交互的消息格式,发给底层。
驱动管理模块22:是主机驱动的核心。它管理整个主机驱动模块的状态,并根据当前的主机驱动状态管理所有其他的块,同时也被用来按照正确的顺序启动和关闭所有的其他的模块。驱动管理模块是一个平台无关的块。
设备管理模块25:该模块负责管理设备的各种硬件操作。它可以根据主机指示来操作设备,或者根据设备反馈的信息对设备进行相应的操作。设备管理模块控制和监视设备状态,处理设备的插入/移除等操作,控制设备电源,利用驱动管理器管理设备:初始化,关机,复位,关机,电源管理等;通过检测设备和链路状态,来对设备设置对外指示,看门狗等;如果配置需要从主机读取的话,从外部读取设备的初始化配置并将其发送给设备;在设备运行过程中需要动态配置的参数,由设备管理模块发给设备。
Boot模块24:boot模块负责对终端设备的初始化,启动或者重启动,并最终引导设备与计算机正常通信。Boot程序只有在下面几种情况之后才由主机驱动执行:设备被复位,主机驱动已经启动了并正在运行,系统重启动。Boot过程只有在主机驱动初始化完成之后进行。
数据通道模块26:由上下行数据通道子模块、IP CS子模块、协议处理子模块和传输控制及QoS子模块组成,其中:
上下行数据通道子模块:上下行数据通道子模块是操作系统及其网络协议栈和驱动进行数据交互的通道,所有的非消息数据都是通过该通道进行发送和接收的。从功能以及数据的流向来进行划分,该子模块可以分成两个独立的部分:上行数据通道单元和下行数据通道单元。
上行数据通道单元处理从操作系统发送过来的待发送的数据包,将其封包,并发给下层的处理IP CS模块。它控制从操作系统到IP CS块的数据包传送,该单元对驱动中的平台无关的块隐藏发送数据包的操作系统特定的wrapper。
下行数据通道单元按照操作系统要求的格式把下层发送上来的数据包封包后转发给操作系统。作为对IP CS下行数据的接收者,它从指定的IP CS接收下行包,依据操作系统的特殊的网络接口,该单元完成下行包的格式化之后,把这些包传给高层。
IP CS子模块:(IP Convergence Sublayer,IP汇聚子层)本子模块处理上下行的数据包,处理相应的头,并处理ARP包及一些相应的网络协议处理。为了模拟一个802.3设备,在上行方向它剥离高层传过来的以太网头,只把IP包传到下层,丢弃所有其他的协议包(如IPX/SPX)。该子模块支 持IPv4和IPv6的操作。它响应所有的从主机到WiMAX Miniport驱动的ARP请求,支持IPv4时,必须对ARP请求包进行处理,构造一个虚假的ARP响应包返回给上层,而对IPv6则不需要特殊操作。在下行方向,它把收到的IP包添加以太网头,然后发给上层。
协议处理子模块:负责处理上下行的数据包中的协议相关处理,如PHS压缩/解压缩,ROHC的压缩/解压缩,以及其他的一些需要主机处理的MAC层协议的操作。如果MAC层协议相关的处理完全在设备上进行,那么本子模块可以去掉不需要设计。
传输控制及QoS子模块:WiMAX是一种面向连接的网络协议,它支持每条业务流的服务质量QoS。它负责对上行数据进行分类,流量控制,数据排队,维护一个发送定时器,维护分类规则以及连接管理等。下面是各个功能的描述:
数据分类:所有的发送包必须进行分类,这种分类是依据基站针对不同的连接所规定的准则来进行的,所有这些流出的包必须被送到相关的连接上。下面就是分类的方法:
√为了对流出的包进行分类,驱动需要拆开包头(以太网和IP头),将源/目的的IP/Port地址,业务字段的类型和协议字段与已经存在的连接集进行比较。
√如果这些参数匹配成功(匹配成功一部分即可,不需要全部匹配),这个包就送到描述该业务流的队列。
√如果没能匹配任何的分类准则,包被送到BE(Best Effort)队列,它使用BE虚拟CID。
√支持16位CID(包括basic和primary CID),每个CID有四条规则。
流量控制:分为四部分,上行方向有主机驱动到网络终端上的流量控制,操作系统的网络协议栈到主机驱动的流向控制;下行方向有网络终端到主机驱动的流量控制,从主机驱动到操作系统的网络协议栈的流量控制。一般来说,如果没有特殊需要,开发网络驱动时通常只设计上行方向从主机驱动到网络终端之间的流量控制。
数据排队:对需要处理的数据进行排队。
连接管理:WiMAX设备支持由网络配置或者由MS初始化的动态连接,并可动态改变。在创建的时候,连接可能并不是激活的。如果一个特定的的连接并未激活,那么主机就发送一个激活请求,此时把包送到尽力而为队列。一旦该业务流被激活,主机驱动就通过该连接发送数据。如果主机丢失和网络终端间的同步,则删除网络连接。如果业务连接需要动态改变,则主机驱动根据网络终端发送过来的连接改变信息,改变指定的业务连接的属性。
维护发送定时器:为了保证发送质量,本模块维护一个周期性的发送定时器。该定时器在数据链路处于连接状态时创建,在链路断开时删除。
维护分类规则:分类器是接入WiMAX网络的每个包的匹配标准集。包分类由多个分类器构成。每个分类器包括一个优先字段,来决定针对该分类器的搜索顺序。最高优先级的分类器首先使用。如果发现一个分类器的所有的参数都匹配这个包,分类器就把这个包送到相应的业务流里。包分类表包括下面的字段:
√优先级-决定表的搜索顺序,高优先级的分类器先于低优先级的分类器搜索
√IP分类参数-0或者多个IP分类参数(IP TOS Range/Mask,IP协议,IP源地址/掩码,IP目的地址/掩码,TCP/UDP源端口开始,TCP/UDP源端口截止,TCP/UDP目的端口开始,TCP/UDP目的端口截止)。
√业务流标识-一个特定的业务流的标识。
其他QoS功能:包括除上面所述与QoS相关的功能之外的其他功能。
通用硬件接口模块27:本模块负责对底层硬件总线的操作。它汇聚上层发送过来的控制包和数据包,将其转换成能在总线上传输的格式;它也接收网络卡由主机接口发送过来的包,将包解析并分类,将消息包发给上面的底层消息处理模块,把数据包转发给上层的链路控制与QoS模块。在通过硬件接口发送上行数据之前,本模块汇聚控制包和数据包,并把他们组成一个数据包。
总线接口3:该模块是操作系统所支持的实际接口模块,即:实际接口。 该模块由操作系统实现,设备的主机驱动只是对其进行简单的操作。
终端设备4:就是本驱动程序所支持的WiMAX设备,与驱动本身的关系不大。
其中,消息处理模块23,协议处理子模块和传输控制和QoS子模块是与WiMAX终端4的相关性最大的模块,也是整个架构中最需要关注的地方,同时整个模块采用了层次设计,整个通信链路的数据和消息的交互比现有的专利更加清晰,设计更加方便。
最后,结合各个流程详细说明本发明:
(一)WiMAX终端设备与驱动程序的初始化和启动流程
如图2所示,该初始化和启动流程具体包括以下步骤:
201)插入终端设备4后,主机操作系统发消息指示对驱动程序和终端设备4进行初始化以及启动;
202)OS处理模块21把操作系统的消息处理后,发给驱动管理模块22,指示驱动管理模块22进行初始化和启动;
203)驱动管理模块22指示消息管理模块23开始初始化和启动;
204)驱动管理模块22指示设备管理模块25进行初始化和启动;
205)设备管理模块25指示通用硬件接口模块27进行初始化和启动;
206)设备管理模块25指示硬件及其总线接口3进行初始化以及启动(如果操作系统本身已经负责了该部分的初始化工作,那么此步骤可省略);
207)设备管理模块25通知驱动管理器22,总线接口3已经初始化并启动成功;
208)设备管理模块25指示boot模块24进行初始化,把各种需要传输给设备的数据读入内存,以加快处理的速度,并启动Boot。如果配置参数在主机上,则把参数写给WiMAX终端设备4;如果配置参数存放在WiMAX终端设备4上,那么就直接指示WiMAX终端设备4初始化即可。WiMAX终端设备4所需要的镜像如果已经存放在WiMAX终端设备4上了,那么不做操作,否则将主机上存放的镜像数据写给WiMAX终端设备4;
209)boot模块24指示WiMAX终端设备4进行初始化,初始化完成后直接启动WiMAX终端设备4;
210)Boot模块24完成对WiMAX终端设备4的初始化以及启动之后,通知驱动管理模块22;
211)驱动管理模块22指示数据通路模块26开始初始化以及启动流程,完成后收到响应;
212)通过OS处理模块21,驱动管理模块22通知主机操作系统初始化完成,主机驱动程序以及WiMAX终端设备4已经启动。
(二)WiMAX终端设备重启动流程
如图3所示,该重启动流程具体包括以下步骤:
301)主机操作系统发出Reset消息,对WiMAX终端设备4进行复位;
302)OS处理模块21将消息转换成驱动程序的通用消息之后,将其转发给驱动管理模块22;
303)驱动管理模块22指示设备管理模块25停止当前操作;
304)设备管理模块25指示WiMAX终端设备4停止操作;
305)驱动管理模块22指示Boot模块24停止;
306)驱动管理模块22指示数据通路模块26停止当前操作,并回到初始状态;
307)驱动管理模块22指示设备管理模块25回到初始状态并启动;
308)驱动管理模块22指示Boot模块24初始化并启动;
309)Boot模块24初始化并启动WiMAX终端设备4;
310)Boot模块24通知驱动管理模块22,WiMAX终端设备4已经启动;
311)驱动管理模块22通知OS处理模块21,WiMAX终端设备4已经复位;
312)OS处理模块21通知主机操作系统,WiMAX终端设备4已经复位。
(三)WiMAX终端设备停止操作流程
如图4所示,该停止操作流程具体包括以下步骤:
401)主机操作系统发出WiMAX终端设备4停止消息;
402)OS处理模块21把该消息转换成驱动程序内部消息,再发给驱动管理模块22;
403)驱动管理模块22发送停止消息给设备管理模块25,通知设备管理模块25进行停止操作;
404)设备管理模块25发送停止消息给WiMAX终端设备4;
405)设备管理模块25发送设备停止消息给硬件与总线接口3;
406)设备管理模块25发送停止设备消息给通用硬件接口模块27;
407)设备管理模块25通知驱动管理模块22,它所管理的模块已经停止;
408)设备管理模块25发送停止消息给boot模块24,通知它停止操作;
409)驱动管理模块22发送停止消息,通知数据通路模块26停止操作;
410)驱动管理模块22通知OS处理模块21,WiMAX终端设备4已经停止;
411)OS处理模块21将驱动程序内部的消息转换成主机操作系统消息,通知主机操作系统WiMAX终端设备4已经停止。
(四)上层应用通过驱动程序查询WiMAX终端设备4设备消息流程
如图5所示,该查询流程具体包括以下步骤:
501)主机操作系统把要从WiMAX终端设备4查询的消息发下来;
502)OS处理模块21处理该消息并将其发给消息管理模块23;
503)消息处理模块23把该消息转成WiMAX终端设备4的消息格式后通过通用硬件接口模块27发给WiMAX终端设备4;
504)WiMAX终端设备4把相应的相应消息发给消息处理模块23;
505)消息处理模块23把消息转换成驱动程序内部格式后发给OS处理 模块21;
506)OS处理模块21将其转成主机操作系统消息后发给主机操作系统。
(五)驱动程序内部模块与WiMAX终端设备4的消息交互流程
如图6所示,该消息交互流程具体包括以下步骤:
601)驱动程序内部模块生成查询消息,并将其发给消息处理模块23;
602)消息处理模块23把驱动程序内部消息转成WiMAX终端设备4消息发给WiMAX终端设备4;
603)WiMAX终端设备4回应查询消息,并返回给消息处理模块23;
604)消息处理模块23把获得的消息转给相应的驱动程序内部模块。
(六)WiMAX终端设备4向上层报告设备消息流程
如图7所示,该报告流程具体包括以下步骤:
701)WiMAX终端设备4上发消息;
702)消息处理模块23解读该消息,并将其转发给OS处理模块21;
703)OS处理模块21将其转换成主机操作系统消息转发给上层操作系统。
(七)WiMAX终端设备4向驱动程序内部模块报告设备消息流程
如图8所示,该报告流程具体包括以下步骤:
801)WiMAX终端设备4上发消息;
802)消息处理模块23解读该消息,并将其转发给驱动程序相应的内部模块。
(八)ARP消息与数据流程
如图9所示,该流程具体包括以下步骤:
901)主机操作系统发送ARP请求消息给上下行数据通道子模块;
902)上下行数据通道子模块将该消息发给IP CS子模块;
903)根据收到的ARP请求,IP CS子模块进行ARP欺骗,生成一个假的ARP响应包;
904)IP CS子模块把构造好的ARP响应包发给上下行数据通道子模块中的上行通道单元;
905)上下行数据通道子模块把ARP响应包发给主机操作系统及其网络协议栈1。
(九)发送上行数据流程
如图10所示,该发送流程具体包括以下步骤:
1001)主机操作系统把上行数据发给上下行数据通道子模块的上行通道单元;
1002)上行通道单元把数据发给IP CS子模块;
1003)IP CS子模块对数据包进行处理后转给驱动程序中的协议处理子模块;
1004)协议处理子模块对数据进行协议相关的操作之后,把数据包转给链路控制及QoS子模块;
1005)链路控制及QoS子模块根据自己的策略把包发给通用硬件接口模块27;
1006)通用硬件接口模块27接到数据包,通知主机操作系统上行包已经接收完成;
1007)通用硬件接口模块27把包发给总线接口3;
1008)总线接口3把包发给WiMAX终端设备4。
(十)接收下行数据流程
如图11所示,该接收流程具体包括以下步骤:
1101)WiMAX终端设备4发送数据给总线接口3;
1102)总线接口3把数据发给通用硬件接口模块27;
1103)通用硬件接口模块27把数据中的非消息数据直接发给数据通路模块26中的协议处理子模块
1104)协议处理子模块对数据完成规定的协议处理后,把数据发给IP CS子模块;
1105)IP CS子模块把数据处理后发给上下行数据通道子模块
1106)上下行数据通道子模块把数据发给OS网络协议栈1
1107)OS网络栈1通知主机操作系统数据已收到。
Claims (10)
1.一种WiMAX终端设备主机驱动方法,其特征在于,所述WiMAX终端设备主机驱动包括操作系统网络协议栈与操作系统接口模块(1)、操作系统处理模块(21)、消息处理模块(23)、驱动管理模块(22)、设备管理模块(25)、启动模块(24)、数据通路模块(26)和通用硬件接口模块(27);其中,
数据通路模块(26)与操作系统网络协议栈与操作系统接口模块(1)、通用硬件接口模块(27)、消息处理模块(23)连接;
操作系统处理模块(21)与操作系统网络协议栈与操作系统接口模块(1)、消息处理模块(23)、驱动管理模块(22)连接,驱动管理模块(22)还与消息处理模块(23)连接;
启动模块(24)与消息处理模块(23)、通用硬件接口模块(27)连接;
设备管理模块(25)与消息处理模块(23)、通用硬件接口模块(27)连接;
消息处理模块(23)还与通用硬件接口模块(27)连接;
所述方法包括以下步骤:
1.1)利用所述操作系统处理模块(21)将操作系统相关的操作转换成与操作系统无关的操作,同时利用通用硬件接口模块(27)支持WiMAX终端设备插入主机的各种实际接口;
1.2)利用所述操作系统处理模块(21)、驱动管理模块(22)、设备管理模块(25)、消息处理模块(23)、启动模块(24)、通用硬件接口模块(27)和数据通路模块(26)在主机操作系统的指示下完成对所述WiMAX终端设备的初始化和启动;
1.3)具体应用通过操作系统网络协议栈与操作系统接口模块(1),利用所述数据通路模块(26)、通用硬件接口模块(27)、实际接口和WiMAX终端设备发送或接收数据。
2.根据权利要求1所述驱动方法,其特征在于,该驱动方法还包括步骤1.3)之后的利用所述操作系统处理模块(21)、驱动管理模块(22)、设备管理模块(25)、启动模块(24)和数据通路模块(26)在主机操作系统的指示下重启动所述WiMAX终端设备。
3.根据权利要求1所述驱动方法,其特征在于,该驱动方法还包括步骤1.3)之后的利用所述操作系统处理模块(21)、驱动管理模块(22)、设备管理模块(25)、启动模块(24)、通用硬件接口模块(27)和数据通路模块(26)在主机操作系统的指示下停止所述实际接口和WiMAX终端设备。
4.根据权利要求1所述驱动方法,其特征在于,该驱动方法还包括步骤1.3)之后的具体应用或驱动程序中各模块利用所述消息处理模块(23)获取WiMAX终端设备的设备消息。
5.根据权利要求1所述驱动方法,其特征在于,该驱动方法还包括步骤1.3)之后的WiMAX终端设备利用所述消息处理模块(23)向驱动程序中各模块或主机操作系统汇报自身设备消息。
6.根据权利要求1所述驱动方法,其特征在于,该驱动方法还包括步骤1.3)之后的操作系统网络协议栈与操作系统接口模块(1)利用所述数据通路模块(26)对地址解析协议请求消息进行响应。
7.根据权利要求1所述驱动方法,其特征在于,该驱动方法还包括在所述数据通路模块(26)中设置上下行数据通道子模块、IP汇聚子层子模块、协议处理子模块、传输控制及QoS子模块,分别对上行和下行数据分别对应进行正向和反向处理。
8.根据权利要求1所述驱动方法,其特征在于,所述主机操作系统是Windows、UNIX或LINIX中的任一种;所述实际接口是即插即用接口。
9.根据权利要求1所述驱动方法,其特征在于,所述初始化和启动具体包括:
9.1)插入WiMAX终端设备后,主机操作系统发消息指示对驱动程序和WiMAX终端设备进行初始化以及启动;
9.2)驱动程序中操作系统处理模块(21)把操作系统的消息处理后,发给驱动管理模块(22),指示驱动管理模块(22)进行初始化和启动;
9.3)驱动管理模块(22)指示消息处理模块(23)和设备管理模块(25)依次开始初始化和启动;
9.4)设备管理模块(25)指示通用硬件接口模块(27)和启动模块(24)依次开始初始化和启动;
9.5)启动模块(24)指示WiMAX终端设备进行初始化,初始化完成后直接启动该WiMAX终端设备;
9.6)驱动管理模块(22)根据设备管理模块(25)和启动模块(24)完成通知指示数据通路模块(26)开始初始化以及启动流程,完成后收到响应;
9.7)驱动管理模块(22)通知主机操作系统初始化完成,驱动程序以及WiMAX终端设备已经启动。
10.根据权利要求1所述驱动方法,其特征在于,所述接收数据具体包括:
10.1)WiMAX终端设备发送其接收的数据给实际接口;
10.2)实际接口把数据发给通用硬件接口模块(27);
10.3)通用硬件接口模块(27)把数据发给数据通路模块(26);
10.4)数据通路模块(26)把数据发给操作系统网络协议栈与操作系统接口模块(1)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101881853A CN101163074B (zh) | 2007-11-12 | 2007-11-12 | 一种WiMAX终端设备主机驱动方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101881853A CN101163074B (zh) | 2007-11-12 | 2007-11-12 | 一种WiMAX终端设备主机驱动方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101163074A CN101163074A (zh) | 2008-04-16 |
CN101163074B true CN101163074B (zh) | 2010-12-08 |
Family
ID=39297909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101881853A Expired - Fee Related CN101163074B (zh) | 2007-11-12 | 2007-11-12 | 一种WiMAX终端设备主机驱动方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101163074B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101378576B (zh) * | 2008-09-18 | 2012-05-23 | 中兴通讯股份有限公司 | 参数初始化方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1434942A (zh) * | 1999-12-21 | 2003-08-06 | 通用仪器公司 | 使设备驱动可跨操作系统平台移植的抽象设备驱动模型 |
CN1647054A (zh) * | 2002-06-19 | 2005-07-27 | 艾利森电话股份有限公司 | 网络设备驱动体系结构 |
-
2007
- 2007-11-12 CN CN2007101881853A patent/CN101163074B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1434942A (zh) * | 1999-12-21 | 2003-08-06 | 通用仪器公司 | 使设备驱动可跨操作系统平台移植的抽象设备驱动模型 |
CN1647054A (zh) * | 2002-06-19 | 2005-07-27 | 艾利森电话股份有限公司 | 网络设备驱动体系结构 |
Also Published As
Publication number | Publication date |
---|---|
CN101163074A (zh) | 2008-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6977939B2 (en) | Method and apparatus for emulating ethernet functionality over a serial bus | |
CN110071900B (zh) | 数据发送的方法及设备 | |
US8059680B2 (en) | Offload system, method, and computer program product for processing network communications associated with a plurality of ports | |
JP5923168B2 (ja) | データカードの起動方法及びデータカード | |
US7356034B2 (en) | Terminal device, method for processing communication data inside the terminal device, and program for implementing the method | |
EP2747381B1 (en) | Method, network device and system for implementing network card offloading function | |
JP2008020977A (ja) | ネットワークプロセッサシステムおよびネットワークプロトコル処理方法 | |
CN110167197B (zh) | Gtp下行数据传输优化方法及装置 | |
CN112152940B (zh) | 报文处理方法、装置以及系统 | |
WO2022032984A1 (zh) | 一种mqtt协议仿真方法及仿真设备 | |
JP6665190B2 (ja) | ネットワーク共有実施方法及び装置 | |
WO2004040819A2 (en) | An apparatus and method for receive transport protocol termination | |
EP3793176A1 (en) | Data processing method, device and apparatus | |
CN110830434A (zh) | 通用透明代理方法 | |
CN107070958B (zh) | 一种海量数据高效传输方法 | |
US6985496B2 (en) | Communication management device and communication management method | |
EP2296400A1 (en) | Communication system | |
CN101163074B (zh) | 一种WiMAX终端设备主机驱动方法 | |
US20040120329A1 (en) | SNMP management with a layer 2 bridge device | |
EP1287673A2 (en) | Wireless modem simulation of a lan card | |
US20130198548A1 (en) | Apparatus and method for saving power of usb device | |
Cisco | Configuring the CSA | |
US7428242B2 (en) | Action list for a split media access and control layer communications system | |
CN116389555A (zh) | 为局域网内的终端提供服务的方法、装置、设备及介质 | |
CN116743663A (zh) | 一种数据包处理方法、装置及存储介质 |
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: 20101208 Termination date: 20151112 |
|
CF01 | Termination of patent right due to non-payment of annual fee |