一种控制方法、装置和系统的制作方法

文档序号:7760764阅读:113来源:国知局
专利名称:一种控制方法、装置和系统的制作方法
技术领域
本发明涉及通信技术领域,具体涉及一种控制方法、装置和系统。
背景技术
远程网络驱动接口 规范(RNDIS,Remote Network Driver Interface Spec ification)是一种网络设备规范,它要求RNDIS设备能够处理来自系统的对象标示符 (0ID,Object Identifier Descriptor),从而使得系统提供的驱动程序可以通过兼容模式 为不同的RNDIS设备所使用,而不必为特定的RNDIS设备设计单独的驱动程序,而系统则可 以向RNDIS设备发送不同的OID以完成特定的功能。RNDIS的使用,不仅给用户带来了极大的方便,而且也简化了 RNDIS设备的开发过 程,但是,由于RNDIS驱动本身只能传输网络数据,不能传输用户的控制命令,所以,用户的 拨号、断开拨号等基本请求无法传递给RNDIS设备,而只能通过其他操作来达到目的,比如 用户需要断开网络连接,就只能是通过移除设备的方式才能实现,这给使用带来了一定的 不便。针对该问题,现有技术提出了将RNDIS驱动作为RNDIS设备的一个接口,而在该 RNDIS设备中增加另外的控制接口,用户端设备通过控制接口发送控制命令来对RNDIS设 备进行控制。在对现有技术的研究和实践过程中,本发明的发明人发现,通过增加控制接口的 方式仅仅适用于通用串行总线(USB,Universal Serial BUS)接口的RNDIS设备,而并非所 有接口形式的RNDIS设备都可以实现,因此该方案没有普遍的适用性。此外,由于增加了新 的控制接口,所以用户需要额外安装该新的控制接口的驱动程序,增加了使用复杂度。

发明内容
本发明实施例提供一种控制方法、装置和系统,不仅具有普遍的适用性,而且可以 在不需要安装额外的驱动程序的情况下,实现向RNDIS设备传输控制命令的目的,简化使 用过程。一种控制方法,包括将控制命令封装在发送给RNDIS设备的网络数据包中,所述控制命令用于对 RNDIS设备进行控制;将封装后的网络数据包发送给RNDIS设备,以对RNDIS设备进行控制。一种控制方法,包括将控制命令封装在向光盘(CD,Compact Disc)或人体学输入设备(HID,Human Input Device)发送的数据包中,所述控制命令用于对RNDIS设备进行控制;将封装后的数据包通过RNDIS设备上设置的⑶接口或HID接口发送给RNDIS设 备,以对RNDIS设备进行控制。一种控制方法,包括
接收用户端设备发送的网络数据包,所述网络数据包中封装了用于对RNDIS设备 进行控制的控制命令;对所述网络数据包进行解封装,得到所述控制命令;根据所述控制命令的指示执行操作。一种控制方法,包括通过设置在RNDIS设备上的⑶接口或HID接口接收用户端设备发送的数据包,所 述数据包中封装了用于对所述RNDIS设备进行控制的控制命令;对所述数据包进行解封装,得到所述控制命令;根据所述控制命令的指示执行操作。一种用户端设备,包括第一封装单元,用于将控制命令封装在发送给RNDIS设备的网络数据包中,所述 控制命令用于对RNDIS设备进行控制;第一发送单元,用于将第一封装单元封装后的网络数据包发送给RNDIS设备,以 对RNDIS设备进行控制。一种用户端设备,包括第二封装单元,用于将控制命令封装在CD或HID接口格式的数据包中,所述控制 命令用于对RNDIS设备进行控制;第二发送单元,用于将第二封装单元封装后的数据包通过RNDIS设备上设置的⑶ 接口或HID接口发送给RNDIS设备,以对RNDIS设备进行控制。一种RNDIS设备,包括第一接收单元,用于接收用户端设备发送的网络数据包,所述网络数据包中封装 了用于对RNDIS设备进行控制的控制命令;第一解封装单元,用于对第一接收单元接收到的网络数据包进行解封装,得到所 述控制命令;第一处理单元,用于根据第一解封装单元得到的控制命令的指示执行操作。一种RNDIS设备,包括第二接收单元,用于通过⑶接口或HID接口接收用户端设备发送的数据包,所述 数据包中封装了用于对RNDIS设备进行控制的控制命令;第二解封装单元,用于对第二接收单元接收到的数据包进行解封装,得到所述控 制命令;第二处理单元,用于根据第二解封装单元得到的控制命令的指示执行操作。一种通信系统,包括本发明实施例提供的任一种用户端设备和本发明实施例提供 的任一种RNDIS设备。本发明实施例采用在发送给RNDIS设备的网络数据包中封装控制命令,然后将封 装后的网络数据包发送给RNDIS设备,以对RNDIS设备进行控制。由于在现有的网络架构 中,用户端设备本来就可以直接将网络数据包发送给RNDIS设备,所以采用该方案无需额 外增加新的控制接口就可以向RNDIS设备传输控制命令,而且也无需安装额外的驱动程 序,相对于现有技术中需要额外增加新的控制接口和安装驱动程序的方案而言,降低了使 用的复杂度,而且对RNDIS设备没有特殊的要求,具有普遍的适用性,实现较为简单。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于 本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他 的附图。图1是本发明实施例一提供的控制方法的流程图;图2是本发明实施例二提供的控制方法的流程图;图3a是本发明实施例三提供的控制方法的流程图;图3b是PC与RNDIS设备进行通信的场景示意图;图3c是一种使用UDP数据包封装AT命令的数据包格式;图4是本发明实施例四提供的控制方法的流程图;图5是本发明实施例五提供的控制方法的流程图;图6a是PC与RNDIS设备进行通信的场景示意图;图6b是本发明实施例四提供的控制方法的流程图;图7a是本发明实施例提供的用户端设备的结构示意图;图7b是本发明实施例提供的用户端设备的另一结构示意图;图8是本发明实施例提供的用户端设备的又一结构示意图;图9是本发明实施例提供的RNDIS设备的结构示意图;图10是本发明实施例提供的RNDIS设备的另一结构示意图;图11是本发明实施例提供的通信系统的结构示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。本发明实施例提供一种控制方法、装置和系统。以下分别进行详细说明。实施例一、本实施例将从用户端设备的角度进行描述,该用户端设备具体可以为个人计算机 (PC, Personal Computer)、便携计算机等终端设备。一种控制方法,包括将用于对RNDIS设备进行控制的控制命令封装在发送给 RNDIS设备的网络数据包中,然后将封装后的网络数据包发送给RNDIS设备,以对RNDIS设 备进行控制。参见图1,具体流程可以如下101、将控制命令封装在发送给RNDIS设备的网络数据包中;例如,可以将控制命令封装在发送给RNDIS设备的基于连接的传输控制协议 (TCP, Transmission Control Protocol)巾-M^,将控制命令封装在发送给RNDIS设备的基于无连接的用户数据包协议(UDP,UserDatagram Protocol) —^ll中。其中,该控制命令用于对RNDIS设备进行控制,比如,具体可以为AT命令、诊断 (DIAG, Diagnose)命令以及其他的自定义命令。102、将封装后的网络数据包发送给RNDIS设备,以对RNDIS设备进行控制;比如请 求对RNDIS设备进行拨号、解个人标识号(PIN,personal identification number)码、或 断开拨号等操作。可选的,在步骤101之前,即在发送给RNDIS设备的网络数据包中封装控制命令之 前,还可以包括建立与RNDIS设备的网络通信端口 ;其中,网络通信端口可以为任意端口, 但是端口号不与已知的其他应用程序的端口号重叠。具体的建立方法可参见现有技术,在 此不再赘述;则此时,步骤101具体可以为在通过该网络通信端口发送的网络数据包中封装 控制命令。由上可知,本实施例采用在发送给RNDIS设备的网络数据包中封装控制命令,然 后将封装后的网络数据包发送给RNDIS设备,以对RNDIS设备进行控制。由于在现有的网 络架构中,用户端设备本来就可以直接将网络数据包发送给RNDIS设备,所以采用该方案 无需额外增加新的控制接口就可以向RNDIS设备传输控制命令,而且也无需安装额外的驱 动程序,相对于现有技术中需要额外增加新的控制接口和安装驱动程序的方案而言,降低 了使用的复杂度,而且对RNDIS设备没有特殊的要求,具有普遍的适用性,实现较为简单。实施例二、本实施例将从RNDIS设备的角度进行描述,该RNDIS设备具体可以为使用了 RNDIS 的端口的无线上网卡。一种控制方法,包括接收用户端设备发送的网络数据包,其中,该网络数据包中 封装了用于对RNDIS设备进行控制的控制命令;对接收到的网络数据包进行解封装,得到 控制命令;根据控制命令的指示执行操作。参见图2,具体流程可以如下201、接收用户端设备发送的网络数据包,其中,网络数据包中封装了用于对RNDIS 设备进行控制的控制命令,比如,AT命令、DIAG命令以及其他的自定义命令。例如,可以接收用户端设备发送的基于连接的TCP数据包,其中,该TCP数据包中 封装了用于对RNDIS设备进行控制的控制命令;或者,也可以接收用户端设备发送的基于无连接的UDP数据包,其中,该UDP数据包中封 装了用于对RNDIS设备进行控制的控制命令。具体接收该网络数据包时,可以通过用户端设备和RNDIS设备之间建立的网络通 信端口来进行接收。其中,网络通信端口可以为任意端口,但是端口号不与已知的其他应用 程序的端口号重叠。202、对接收到的网络数据包进行解封装,得到控制命令;具体可以如下RNDIS设备判断接收到的网络数据包是否携带有控制命令,如果是,则对该网络数 据包进行解封装,否则确定该接收到的网络数据包为正常的网络数据,直接发到网络侧。203、根据步骤202中得到的控制命令的指示执行操作,比如进行拨号、解PIN码、 或断开拨号等。
7
可选的,RNDIS设备还可以返回响应消息,并通过发送广播数据包将设备状态变化 上报给系统。比如,RNDIS设备将响应消息以图3c同样的格式进行封装,然后发送给用户设备。由上可知,本实施例采用接收用户端设备发送的封装有控制命令的网络数据包, 在对网络数据包进行解封装,并得到控制命令之后,根据控制命令的指示执行操作,从而实 现了用户端设备对RNDIS设备的控制。由于在现有的网络架构中,用户端设备本来就可以 直接将网络数据包发送给RNDIS设备,所以采用该方案无需额外增加新的控制接口就可以 向RNDIS设备传输控制命令,而且由于无需增加新的控制接口,所以也无需安装额外的驱 动程序,相对于现有技术中需要额外增加新的控制接口和安装驱动程序的方案而言,降低 了使用的复杂度,而且对RNDIS设备没有特殊的要求,具有普遍的适用性,实现较为简单。实施例三、根据实施例一和二所描述的方法,以下将举例进行详细说明。在本实施例中,将以用户端设备为PC,网络数据包为基于无连接的UDP数据包,控 制命令为AT命令为例进行说明。参见图3a,具体流程可以如下301、PC建立与RNDIS设备的网络通信端口 ;该网络通信端口可以为任意端口,但 是端口号不与已知的其他应用程序的端口号重叠,用于与RNDIS设备进行通信。为了描述 方便,在本发明实施例中,将该网络通信端口称为RNDIS控制程序的端口。例如,参见图3b,该图为了 PC与RNDIS设备进行通信的场景示意图。看图中可以 看出,文件传输协议(FTP,File Transfer Protocol)应用程序的端口号为“21”,超文本传 输协议(http,HyperText Transfer Protocol)应用程序的端口号为“80”,假设在该PC设 备中,已使用的端口号仅为“21”和“80”,则RNDIS控制程序的端口 X可以为除“21”和“80” 以外的任意端口。由于RNDIS设备是网络设备,因此PC中的应用程序可以直接通过该网络通信端口 将网络数据发到RNDIS设备上。302、在步骤301建立的网络通信端口上,PC将需要下发给RNDIS设备的自定义的 控制命令,如AT命令封装在基于无连接的UDP数据包中。例如,参见图3c,该图为一种使用UDP数据包封装AT命令的数据包格式。其 中AT标识(AT Flag)字段作为自定义控制命令的标识字段,字段大小可以设定为8字节 (Bytes) ;AT命令数据(AT Command Data)字段为自定义控制命令的数据字段,字段大小是 变化(Variable)的,即可以根据数据的大小而定,最大可以为1464Bytes。在该封装了 AT命令的UDP数据包中,因特网头部(Ethernet Header)字段、网际 协议头部(IP Header)字段和UDP头部(UDP Header)字段与现有的UDP数据包格式相 同,其中,Ethernet Header字段的大小为14Bytes, IP Header字段的大小为20Bytes,UDP Header字段的大小为8Bytes。但是,Ethernet Header中的目的媒体接入控制层(MAC, Media Access Control)地址需要使用RNDIS设备的MAC地址或者广播地址,以保证该UDP 数据包能够被RNDIS设备接收到;同理,IP Header中的目的IP地址也需要使用RNDIS设 备的IP地址或者广播地址,以保证该UDP数据包能够被RNDIS设备接收到。303、PC将封装了 AT命令的UDP数据包发送给RNDIS设备。
8
304、RNDIS设备接收PC发送的UDP数据包,判断UDP数据包中是否携带AT命令, 比如可以判断UDP数据包中的AT标识是否匹配,如果是,则对接收到的UDP数据包进行解 封装,得到AT命令,具体的解封装方法可参见现有技术,在此不再赘述;如果UDP数据包中 没有携带AT命令,比如UDP数据包中的AT标识不匹配,则确定该UDP数据包为普通的UDP 数据包,RNDIS设备直接将该UDP数据包发送给网络侧。305、RNDIS设备根据步骤304中得到AT命令的指示执行操作,比如进行拨号、解 PIN码、或断开拨号等。可选的,RNDIS设备可以通过应答UDP数据包的方式,对相应的AT命令进行响应, 并可以通过发送广播数据包的方式将RNDIS设备的设备状态变化上报给PC。需说明的是,以上仅仅以网络数据包为基于无连接的UDP数据包为例进行说明, 应当理解的是,还可以为其他的网络数据包,比如基于连接的TCP数据包等;另外,控制命 令除了可以是AT命令之外,也可以是其他命令,比如DIAG命令以及其他的自定义命令等。由上可知,本实施例采用在发送给RNDIS设备的UDP数据包中封装AT命令,然后 将封装后的UDP数据包发送给RNDIS设备,以对RNDIS设备进行控制。由于在现有的网络 架构中,用户端设备本来就可以直接将UDP数据包发送给RNDIS设备,所以采用该方案无需 额外增加新的控制接口,而是使用RNDIS设备原有的接口,相对于现有技术需要增加额外 的控制接口而言,方便了用户的使用。而且,由于无需增加新的控制接口,所以也无需安装 额外的驱动程序,相对于现有技术中需要额外安装驱动程序的方案而言,降低了使用的复 杂度;进一步的,该方案对RNDIS设备没有特殊的要求,具有普遍的适用性,实现较为简单。实施例四、除了在用户端设备和RNDIS设备之间建立网络通信端口之外,也可以通过在 RNDIS设备上增加光盘(CD,Compact Disc)接口或人体学输入设备(HID,Human Input Device)接口的方式来封装和发送控制命令,即将控制命令封装成CD格式或HID接口格式, 然后通过⑶接口或HID接口发送给RNDIS设备。与实施例一相似的,本实施例也将从用户端设备的角度进行描述,该用户端设备 具体可以为PC、便携计算机等终端设备。参见图4,一种控制方法,具体流程可以如下401、将控制命令封装在⑶或HID接口格式的数据包中;其中,控制命令用于对远程网络驱动接口规范RNDIS设备进行控制,比如,具体可 以为AT命令、诊断(DIAG,Diagnose)命令以及其他的自定义命令。402、将封装后的数据包通过RNDIS设备上设置的⑶接口或HID接口发送给RNDIS 设备,以对RNDIS设备进行控制,比如请求对RNDIS设备进行拨号、解PIN码、或断开拨号等 操作。由上可知,本实施例采用将控制命令封装在CD或HID接口格式的数据包中,然后 通过在RNDIS设备上设置的⑶接口或HID接口发送给RNDIS设备,以对RNDIS设备进行控 制。由于现有的PC系统中已经包含了通用的⑶接口或者HID设备的驱动,因此该方案也 无需安装额外的驱动程序,相对于现有技术中需要额外安装驱动程序的方案而言,降低了 使用的复杂度。实施例五、
与实施例四对应的,本实施例将从RNDIS设备的角度进行描述。参见图5,一种控制方法,具体流程可以如下501、通过设置在RNDIS设备上的⑶接口或HID接口接收用户端设备发送的数据 包,其中,该数据包中封装了用于对该RNDIS设备进行控制的控制命令;需说明的是,这里的数据包指的是⑶格式或HID接口格式的数据包。502、对接收到的数据包进行解封装,得到控制命令;比如,AT命令、DIAG命令以及 其他的自定义命令。具体可以如下RNDIS设备判断接收到的数据包是否携带有控制命令,如果是,则对该数据包进行 解封装,否则确定该接收到的数据包为正常的数据,按现有技术进行处理。503、根据步骤502中得到的控制命令的指示执行操作,比如进行拨号、解PIN码、 或断开拨号等。由上可知,本实施例采用通过⑶接口或HID接口接收用户端设备发送的封装有控 制命令的数据包,在对数据包进行解封装,并得到控制命令之后,根据控制命令的指示执行 操作,从而实现了用户端设备对RNDIS设备的控制。由于现有的PC系统中已经包含了通用 的CD接口或者HID设备的驱动,因此该方案也无需安装额外的驱动程序,相对于现有技术 中需要额外安装驱动程序的方案而言,降低了使用的复杂度,当然,由于该方案需要增加额 外的接口,所以相对于实施一、二和三的方法而言,实现较为复杂。实施例六、根据实施四和五所描述的方法,以下将举例进行详细说明。与实施例三类似的,本实施例也将以用户端设备为PC,控制命令为AT命令为例进 行说明;与实施例三不同的是,在本实施例中,不建立PC建立与RNDIS设备之间的网络通信 端口,而是在RNDIS设备上增加⑶接口或者HID接口。该方案主要适用于支持组合设备形 态的接口类型的设备,如USB设备。以下将以用户端设备为PC,控制命令为AT命令为例进 行简略说明。首先,需要在RNDIS设备上增加CD接口或者HID接口,用于接收封装有控制命令 的⑶格式或HID接口格式的数据包,而原有的RNDIS端口则仍用于接收普通的网络数据 包,参见图6a,该图为PC与RNDIS设备进行通信的场景示意图。由于PC系统中已经包含了 通用的CD接口或者HID设备的驱动,因此这种方案下也无需安装额外的驱动程序。参见图6b,具体流程可以如下601、PC将需要下发给RNDIS设备的自定义的控制命令,如AT命令封装在向CD或 者HID设备发送的数据包中。602、PC将封装了 AT命令的数据包发送给RNDIS设备。 603,RNDIS设备通过⑶接口或者HID接口接收PC发送的数据包,并判断该数据包 是否携带了 AT命令,比如判断该数据包携带的AT标识是否匹配,如果是,则对接收到的数 据包进行解封装,得到AT命令,具体的解封装方法可参见现有技术,在此不再赘述;否则, 如果判断该数据包没有携带了 AT命令,比如该数据包携带的AT标识不匹配,则确定该数据 包为普通的CD或者HID数据,按照现有技术的流程进行处理。 604、RNDIS设备根据步骤603中得到AT命令的指示执行操作,比如进行拨号、解 PIN码、或断开拨号等。
可选的,RNDIS设备可以通过应答数据包的方式,对相应的AT命令进行响应,并可 以通过发送广播数据包的方式将RNDIS设备的设备状态变化上报给PC。需说明的是,以上仅仅以AT命令为例进行说明,应当理解的是,还可以是其他命 令,比如DIAG命令以及其他的自定义命令等。由上可知,本实施例采用在RNDIS设备增加额外的⑶接口或HID接口,在发送给 RNDIS设备的数据包中封装AT命令,然后将封装后的数据包通过⑶接口或HID接口发送 给RNDIS设备,以对RNDIS设备进行控制。由于现有的PC系统中已经包含了通用的⑶接 口或者HID设备的驱动,因此该方案也无需安装额外的驱动程序,相对于现有技术中需要 额外安装驱动程序的方案而言,降低了使用的复杂度,当然,由于该方案需要增加额外的接 口,所以相对于实施三而言,实现较为复杂。实施例七、为了更好地实施一至三的方法,本发明实施例还相应地提供一种用户端设备,如 图7a所示,该用户端设备包括第一封装单元701和第一发送单元702 ;第一封装单元701,用于将控制命令封装在发送给RNDIS设备的网络数据包中,其 中,该控制命令用于对RNDIS设备进行控制;其中,网络数据包可以是基于连接的TCP数据包或基于无连接的UDP数据包等,控 制命令具体可以为AT命令,等等。第一发送单元702,用于将第一封装单元701封装后的网络数据包发送给RNDIS设 备,以对RNDIS设备进行控制,比如请求对RNDIS设备进行拨号、解PIN码、或断开拨号等操作。可选的,参见图7b,该用户端设备还可以包括第一建立单元703 ;第一建立单元703,用于建立与RNDIS设备的网络通信端口 ;其中,该网络通信端 口可以为任意端口,但是端口号不与已知的其他应用程序的端口号重叠,具体的建立方法 可参见现有技术,在此不再赘述;则此时,第一封装单元701,具体用于在第一建立单元703建立的网络通信端口上 的网络数据包中封装控制命令。可选的,该用户端设备还可以包括第一接收单元,用于接收RNDIS设备返回的关 于控制命令的响应,进一步的,还可以接收RNDIS设备上报的RNDIS设备的设备状态变化。以上各个单元的具体实施可参见前面实施例,在此不再赘述。由上可知,本实施例的用户端设备的第一封装单元701可以在发送给RNDIS设备 的网络数据包中封装控制命令,然后由第一发送单元702将封装后的网络数据包发送给 RNDIS设备,以对RNDIS设备进行控制。由于在现有的网络架构中,用户端设备本来就可以 直接将网络数据包发送给RNDIS设备,所以采用该方案无需额外增加新的控制接口就可以 向RNDIS设备传输控制命令,而且也无需安装额外的驱动程序,相对于现有技术中需要额 外增加新的控制接口和安装驱动程序的方案而言,降低了使用的复杂度,而且对RNDIS设 备没有特殊的要求,具有普遍的适用性,实现较为简单。实施例八、为了更好地实施四至六的方法,本发明实施例还相应地提供一种用户端设备,如 图8所示,该用户端设备包括第二封装单元801和第二发送单元802 ;
11
第二封装单元801,用于将控制命令封装在CD或HID接口格式的数据包中,其中, 控制命令用于对远程网络驱动接口规范RNDIS设备进行控制;比如,具体可以为AT命令、 DIAG命令以及其他的自定义命令;第二发送单元802,用于将第二封装单元801封装后的数据包通过RNDIS设备上设 置的⑶接口或HID接口发送给RNDIS设备,以对RNDIS设备进行控制,比如请求对RNDIS 设备进行拨号、解PIN码、或断开拨号等操作。由上可知,本实施例提供的用户端设的第二封装单元801采用将控制命令封装在 ⑶或HID接口格式的数据包中,然后由第二发送单元802通过在RNDIS设备上设置的⑶接 口或HID接口发送给RNDIS设备,以对RNDIS设备进行控制。由于现有的PC系统中已经包 含了通用的CD接口或者HID设备的驱动,因此该方案也无需安装额外的驱动程序,相对于 现有技术中需要额外安装驱动程序的方案而言,降低了使用的复杂度。实施例九、与实施例七相应地,本发明实施例还提供一种RNDIS设备,如图9所示,该RNDIS 设备包括第一接收单元901、第一解封装单元902和第一处理单元903 ;第一接收单元901,用于接收用户端设备发送的网络数据包,其中,该网络数据包 中封装了用于对RNDIS设备进行控制的控制命令,比如AT命令、DIAG命令以及其他的自定 义命令等,该网络数据包具体可以是基于连接的TCP数据包或基于无连接的UDP数据包,等寸。第一解封装单元902,用于对第一接收单元901接收到的网络数据包进行解封装, 得到控制命令;具体可参见前面实施例,在此不再赘述。第一处理单元903,用于根据解封装单元902得到的控制命令的指示执行操作,比 如进行拨号、解PIN码、或断开拨号等。其中,接收单元901,具体用于通过用户端设备和RNDIS设备之间建立的网络通信 端口接收用户端设备发送的网络数据包;其中,该网络通信端口可以为任意端口,但是端口 号不与已知的其他应用程序的端口号重叠。可选的,该RNDIS设备还可以包括第一响应单元,用于返回响应消息给用户端设 备,该响应单元还可以通过发送广播数据包将设备状态变化上报给用户端设备。以上各个单元的具体实施可参见前面实施例,在此不再赘述。该RNDIS设备具体可以为使用了 RNDIS的端口的无线上网卡。由上可知,本实施例的RNDIS设备的第一接收单元901可以接收用户端设备发送 的封装有控制命令的网络数据包,在第一解封装单元902对该网络数据包进行解封装,并 得到控制命令之后,由第一处理单元903根据控制命令的指示执行操作,从而实现了用户 端设备对RNDIS设备的控制。由于在现有的网络架构中,用户端设备本来就可以直接将网 络数据包发送给RNDIS设备,所以采用该方案无需额外增加新的控制接口就可以向RNDIS 设备传输控制命令,而且也无需安装额外的驱动程序,相对于现有技术中需要额外增加新 的控制接口和安装驱动程序的方案而言,降低了使用的复杂度,而且对RNDIS设备没有特 殊的要求,具有普遍的适用性,实现较为简单。实施例十、与实施例八相应地,本发明实施例还提供一种RNDIS设备,如图10所示,该RNDIS
12设备包括第二接收单元1001、第二解封装单元1002和第二处理单元1003 ;第二接收单元1001,用于通过⑶接口或HID接口接收用户端设备发送的数据包, 其中,数据包中封装了用于对RNDIS设备进行控制的控制命令;需说明的是,这里的数据包指的是⑶格式或HID接口格式的数据包。第二解封装单元1002,用于对第二接收单元1001接收到的数据包进行解封装,得 到控制命令;比如,AT命令、DIAG命令以及其他的自定义命令;具体可参见前面实施例,在 此不再赘述。第二处理单元1003,用于根据第二解封装单元1002得到的控制命令的指示执行 操作,比如进行拨号、解PIN码、或断开拨号等。该RNDIS设备具体可以为使用了 RNDIS的端口的无线上网卡。由上可知,本实施例提供的RNDIS设备的第二接收单元1001采用通过⑶接口或 HID接口接收用户端设备发送的封装有控制命令的数据包,在第二解封装单元1002对数 据包进行解封装,并得到控制命令之后,由第二处理单元1003根据控制命令的指示执行操 作,从而实现了用户端设备对RNDIS设备的控制。由于现有的PC系统中已经包含了通用的 CD接口或者HID设备的驱动,因此该方案也无需安装额外的驱动程序,相对于现有技术中 需要额外安装驱动程序的方案而言,降低了使用的复杂度。实施例i^一、相应的,本发明实施例还提供一种通信系统,如图11所示,包括本发明实施例提 供的任一种用户端设备700和任一种RNDIS设备900 ;用户端设备700,用于将控制命令封装在发送给RNDIS设备900的网络数据包中 或者封装在CD或HID接口格式的数据包中,然后将封装后的网络数据包发送给RNDIS设备 900,或者将封装后的数据包通过RNDIS设备上设置的⑶接口或HID接口发送给RNDIS设 备,以对RNDIS设备900进行控制;其中,控制命令用于对RNDIS设备900进行控制,该控制 命令具体可以为AT命令等,网络数据包具体可以为TCP数据包或UDP数据包,等等。RNDIS设备900,用于接收用户端设备700发送的封装了用于对RNDIS设备900进 行控制的控制命令的网络数据包或数据包,对该网络数据包或数据包进行解封装,得到控 制命令,然后根据控制命令的指示执行操作,比如进行拨号、解PIN码、或断开拨号等。具体实施时,可选的,用户端设备700,还用于建立与RNDIS设备900的网络通信端 口,然后在该网络通信端口上的网络数据包中封装控制命令;其中,网络通信端口可以为任 意端口,但是端口号不与已知的其他应用程序的端口号重叠。则此时,RNDIS设备900,具体用于通过用户端设备和RNDIS设备之间建立的网络 通信端口接收网络数据包。可选的,RNDIS设备900,还用于返回响应消息,并通过发送广播数据包将设备状 态变化上报给系统;则此时,用户端设备700,还用于接收RNDIS设备900返回的响应消息和上报的设 备状态变化。以上各个单元的具体实施可参见前面实施例,在此不再赘述。由上可知,本实施例的通信系统的用户端设备700采用将控制命令封装在发送 给RNDIS设备900的网络数据包,然后将封装后的UDP数据包发送给RNDIS设备900,以对RNDIS设备900进行控制。由于在现有的网络架构中,用户端设备700本来就可以直接将 网络数据包发送给RNDIS设备900,所以采用该方案无需额外增加新的控制接口,而是使用 RNDIS设备900原有的接口,相对于现有技术需要增加额外的控制接口而言,方便了用户的 使用。而且,也无需安装额外的驱动程序,相对于现有技术中需要额外安装驱动程序的方案 而言,降低了使用的复杂度;进一步的,该方案对RNDIS设备900没有特殊的要求,具有普遍 的适用性,实现较为简单。需说明的是,即使在本发明实施例中,也提出可以通过新增额外的CD或HID接口 来建立控制通道,但是由于现有的用户端设备700的系统中已经包含了通用的⑶接口或者 HID设备的驱动,因此该方案也无需安装额外的驱动程序,相对于现有技术中需要额外安装 驱动程序的方案而言,也同样可以达到降低了使用的复杂度的目的。本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可 以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储 介质可以包括只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,RandomAccess Memory)、磁盘或光盘等。以上对本发明实施例所提供的一种控制方法、装置和系统进行了详细介绍,本文 中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮 助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思 想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对 本发明的限制。
权利要求
一种控制方法,其特征在于,包括将控制命令封装在要发送给远程网络驱动接口规范RNDIS设备的网络数据包中,所述控制命令用于对RNDIS设备进行控制;将封装后的网络数据包发送给RNDIS设备,以对RNDIS设备进行控制。
2.根据权利要求1所述的方法,其特征在于,所述将控制命令封装在发送给RNDIS设备 的网络数据包中包括将控制命令封装在发送给RNDIS设备的基于连接的传输控制协议TCP数据包中;或者, 将控制命令封装在发送给RNDIS设备的基于无连接的用户数据包协议UDP数据包中。
3.根据权利要求1或2所述的方法,其特征在于,所述将控制命令封装在发送给RNDIS 设备的网络数据包中之前,还包括建立与RNDIS设备的网络通信端口 ;则,所述将控制命令封装在发送给RNDIS设备的网络数据包中具体为在所述网络通 信端口上的网络数据包中封装控制命令。
4.一种控制方法,其特征在于,包括将控制命令封装在光盘CD或人体学输入设备HID接口格式的数据包中,所述控制命令 用于对远程网络驱动接口规范RNDIS设备进行控制;将封装后的数据包通过RNDIS设备上设置的⑶接口或HID接口发送给RNDIS设备,以 对RNDIS设备进行控制。
5.一种控制方法,其特征在于,包括接收用户端设备发送的网络数据包,所述网络数据包中封装了用于对远程网络驱动接 口规范RNDIS设备进行控制的控制命令;对所述网络数据包进行解封装,得到所述控制命令; 根据所述控制命令的指示执行操作。
6.根据权利要求5所述的方法,其特征在于,所述接收用户端设备发送的网络数据包 包括接收用户端设备发送的基于连接的传输控制协议TCP数据包,所述TCP数据包中封装 了用于对RNDis设备进行控制的控制命令;或者,接收用户端设备发送的基于无连接的用户数据包协议UDP数据包,所述UDP数据包中 封装了用于对RNDIS设备进行控制的控制命令。
7.根据权利要求5或6所述的方法,其特征在于,所述接收用户端设备发送的网络数据 包包括通过用户端设备和RNDIS设备之间建立的网络通信端口接收用户端设备发送的网络 数据包。
8.—种控制方法,其特征在于,包括通过新增的光盘CD接口或人体学输入设备HID接口接收用户端设备发送的数据包,所 述数据包中封装了用于对远程网络驱动接口规范RNDIS设备进行控制的控制命令; 对所述数据包进行解封装,得到所述控制命令; 根据所述控制命令的指示执行操作。
9.一种用户端设备,其特征在于,包括第一封装单元,用于将控制命令封装在在发送给远程网络驱动接口规范RNDIS设备的 网络数据包中,所述控制命令用于对RNDIS设备进行控制;第一发送单元,用于将第一封装单元封装后的网络数据包发送给RNDIS设备,以对 RNDIS设备进行控制。
10.根据权利要求9所述的用户端设备,其特征在于,还包括第一建立单元; 所述第一建立单元,用于建立与RNDIS设备的网络通信端口 ;贝U,所述第一封装单元,具体用于在第一建立单元建立的网络通信端口上的网络数据 包中封装控制命令。
11.一种用户端设备,其特征在于,包括第二封装单元,用于将控制命令封装在向光盘CD或人体学输入设备HID发送的数据包 中,所述控制命令用于对远程网络驱动接口规范RNDIS设备进行控制;第二发送单元,用于将第二封装单元封装后的数据包通过RNDIS设备上设置的CD接口 或HID接口发送给RNDIS设备,以对RNDIS设备进行控制。
12.—种远程网络驱动接口规范RNDIS设备,其特征在于,包括第一接收单元,用于接收用户端设备发送的网络数据包,所述网络数据包中封装了用 于对RNDIS设备进行控制的控制命令;第一解封装单元,用于对第一接收单元接收到的网络数据包进行解封装,得到所述控 制命令;第一处理单元,用于根据第一解封装单元得到的控制命令的指示执行操作。
13.根据权利要求11所述的RNDIS设备,其特征在于,所述第一接收单元,具体用于通过用户端设备和RNDIS设备之间建立的网络通信端口 接收用户端设备发送的网络数据包。
14.一种远程网络驱动接口规范RNDIS设备,其特征在于,包括第二接收单元,用于通过新增的光盘CD接口或人体学输入设备HID接口接收用户端设 备发送的数据包,所述数据包中封装了用于对RNDIS设备进行控制的控制命令;第二解封装单元,用于对第二接收单元接收到的数据包进行解封装,得到所述控制命令;第二处理单元,用于根据第二解封装单元得到的控制命令的指示执行操作。
15.一种通信系统,其特征在于,包括权利要求9至11中任一种用户端设备和权利要求 12至14中任一种远程网络驱动接口规范RNDIS设备。
全文摘要
本发明公开了一种控制方法、装置和系统。本发明实施例采用在发送给RNDIS设备的网络数据包中封装控制命令,然后将封装后的网络数据包发送给RNDIS设备,以对RNDIS设备进行控制。由于在现有的网络架构中,用户端设备本来就可以直接将网络数据包发送给RNDIS设备,所以采用该方案无需额外增加新的控制接口就可以向RNDIS设备传输控制命令,相对于现有技术中需要额外增加新的控制接口和安装驱动程序的方案而言,降低了使用的复杂度,而且对RNDIS设备没有特殊的要求,具有普遍的适用性,实现较为简单。
文档编号H04L29/10GK101977244SQ20101029233
公开日2011年2月16日 申请日期2010年9月21日 优先权日2010年9月21日
发明者张东锋, 聂振辉 申请人:华为终端有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1