一种接入分组数据服务节点的方法、系统和终端的制作方法

文档序号:7700318阅读:120来源:国知局
专利名称:一种接入分组数据服务节点的方法、系统和终端的制作方法
技术领域
本发明主要涉及移动互联网接入技术领域,特别是指一种通过WIFI接入分组数 据服务节点PDSN的方法、系统和终端。
背景技术
在移动互联网领域,3G (3rd Generation,第三代蜂窝通信网络)与WLAN(Wireless Local Area Network,无线局域网)都属于当前的技术热点。3G是一种能提供多种类 型、高质量多媒体业务的全球漫游移动通信网络,主要技术标准有WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、CDMA2000 (Code-Division Multiple Access, 石马分多址)、TD-SCDMA (TimeDivision-Synchronous Code Division Multiple Access,时 分双工-同步码分多址),主要提供因特网业务、专网接入业务、基于WAP/BREW/JAVA的业务 以及多媒体通信业务等。WLAN能在较小范围内提供高速的无线接入,并用来进行传输IP (Internet Protocol,因特网协议)分组数据包。目前主要的技术标准有802. lib,802. Ila和802. Ilg, 均基于 CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance,载波监听 多路访问/冲突避免)技术。其中,802. Ilb是目前国内应用最为广泛的标准,也称之为 WIFKffireless Fidelity),采用2. 4GHz波段,最大共享带宽为llMbit/s。目前,产品室内 覆盖一般可达30-50m,室外覆盖可达100-200m。近年来,随着用户对无线接入速率、带宽以及数据业务的需求越来越高,3G网络和 WLAN网络之间的互联业务引起了广泛关注。3GPP(3rd Generaion Partnership Project, 3G通信系统标准组织)还把3G/WLAN交互系统作为了 3GPP的附加标准。由于WIFI网络覆 盖有限,就终端来说,除了 WIFI模块还必须有其他无线通信模块(Modem)存在。发明人在实现本发明的过程中发现,现有技术至少存在以下缺点终端通过WIFI 直接接入Internet无法访问PDN(Public Data Network,公用数据网)的一些业务,而蜂窝 移动通信网络可以提供的接入带宽有限,特别是对更高带宽需求的视频点播、视频广播等 业务,更是捉襟见肘,不能很好地实现各种现有PDN的数据业务。

发明内容
本发明提出一种通过WIFI接入分组数据服务节点的方法、系统和终端,在WIFI链 路之上再建立PPP链路,数据包交互的通道是基于WIFI链路的PPP链路,从而实现各种PDN 提供的数据业务。本发明的技术方案是这样实现的一种接入分组数据服务节点PDSN的方法,包括终端通过WIFI模块直接访问业务服务器进行注册;所述终端接收注册成功后从所述业务服务器返回的参数信息;所述终端启动点对点协议PPP模块,对建立PPP链路的请求信息进行PPP封装,生成封装了 PPP头的第一数据包;所述终端启动隧道TUNNEL模块,根据所述参数信息将所述第一数据包再封装一 层TUNNEL头,生成第二数据包,所述PPP模块与所述TUNNEL模块通过一对虚拟终端设备进 行通信;所述终端的IP协议栈将所述第二数据包再封装一层基于WIFI链路的IP头,生成 第三数据包,并通过WIFI链路将所述第三数据包发送至无线接入网关WAG ;所述第三数据包用于在所述WAG接收后,被解析掉IP头和TUNNEL头,还原出第 一数据包,还原出的所述第一数据包用于在被所述PDSN接收后执行解析处理,以建立所述 PDSN与所述终端的链路连接。优选的,所述终端通过WIFI模块直接访问业务服务器进行注册具体为所述终端通过WIFI网络接口的本地IP地址WIFI-IP直接访问业务服务器进行注 ππ册。优选的,所述参数信息包括无线接入网关WAG的IP地址WAG-IP,以及进行TUNNEL头封装时的参数标示码 Stream ID 禾口目标端口 Dest-Port。优选的,所述第三数据包IP头中的目的IP地址为无线接入网关WAG的IP地址 WAG-IP0优选的,还包括所述终端在驱动层建立一对虚拟终端设备,所述一对虚拟终端设备包括第一虚拟 终端设备和第二虚拟终端设备,所述一对虚拟终端设备用于维护一个接收和发送的队列, 所述一对虚拟终端设备的通信方式为所述第一虚拟终端设备接收的数据,在所述第二虚 拟终端设备中进行读取,所述第二虚拟终端设备接收的数据,在所述第一虚拟终端设备中 进行读取。优选的,所述PPP模块与所述TUNNEL模块通过一对虚拟终端设备进行通信为所述终端启动所述PPP模块时,指定参数使所述PPP模块的数据传输到所述一对 虚拟终端设备的第一虚拟终端设备中;所述终端启动所述TUNNEL模块时,打开所述一对虚拟终端设备的第二虚拟终端 设备。优选的,建立与所述终端的链路连接后还包括所述终端生成一个新的PPP网络接口,所述终端获得由所述PDSN分配的本地IP 地址 Local-IP ;所述终端设置WIFI网络接口的目标地址为WAG-IP的路由指向WIFI网络接口原 来的默认路由,并删除WIFI网络接口原来的默认路由,以PPP网络接口的默认路由作为所 述终端的默认路由,形成基于WIFI链路的PPP链路的数据包交互通道。优选的,以PPP网络接口的默认路由作为所述终端的默认路由,形成基于WIFI链 路的PPP链路的数据包交互通道后,上层应用通过所述基于WIFI链路的PPP链路的数据包 交互通道进行分组数据的接收或发送。优选的,所述上层应用通过所述基于WIFI链路的PPP链路的数据包交互通道进行 分组数据发送的具体过程为
上层应用APP的业务数据经过IP协议栈封装后,根据系统默认路由表项生成要进 行业务交互的第一 IP数据包,在所述第一 IP数据包的IP头中,源IP地址为终端本地IP 地址Local-IP,目的IP地址为APP要访问的公用数据网PDN或因特网的IP地址;PPP模块对所述第一 IP数据包进行PPP封装,生成封装了 PPP头的第二 IP数据 包,并将所述第二 IP数据包发送到一对虚拟终端设备的第一虚拟终端设备;TUNNEL模块启动所述一对虚拟终端设备的第二虚拟终端设备,读取所述第二 IP 数据包,根据所述参数信息将所述第二 IP数据包再封装一层TUNNEL头和外层IP头,生成 第三IP数据包,所述第三IP数据包的外层IP头中的目的IP地址为WAG-IP,所述第三IP 数据包按照目标地址为WAG-IP的路由表项,通过WIFI网络接口经由WIFI链路的路由发送 至 WAG ;所述第三IP数据包用于在所述WAG接收后,被解析掉IP头和TUNNEL头,还原出 第二 IP数据包,还原出的所述第二 IP数据包用于在进行GRE封装转发到PDSN后被解析处 理,以将要进行交互的第一 IP数据包向目标地址进行转发。一种终端,包括WIFI管理模块,用于通过WIFI模块直接访问业务服务器进行注册,并保存注册成 功后从所述业务服务器返回的参数信息;在驱动层建立的第一虚拟终端设备和第二虚拟终端设备,所述第一虚拟终端设备 和第二虚拟终端设备用于维护一个接收和发送的队列;PPP模块,用于对建立PPP链路的请求信息进行PPP封装,生成封装了 PPP头的第 一数据包,并发送所述第一数据包至所述第一虚拟终端设备;TUNNEL模块,用于从所述第二虚拟终端设备读取所述第一数据包,并根据所述参 数信息将所述第一数据包再封装一层TUNNEL头,生成第二数据包;IP协议栈,用于将所述第二数据包再封装一层基于WIFI链路的IP头,生成第三数 据包,并通过所述WIFI模块将所述第三数据包发送至无线接入网关WAG。优选的,所述WIFI管理模块通过WIFI网络接口的本地IP地址WIFI-IP直接访问 业务服务器进行注册。优选的,所述参数信息包括无线接入网关WAG的IP地址WAG-IP,以及进行TUNNEL头封装时的参数标示码 Stream ID 禾口目标端口 Dest-Port。优选的,所述第三数据包IP头中的目的IP地址为无线接入网关WAG的IP地址 WAG-IP0优选的,还包括网络设置模块,用于生成一个新的PPP网络接口,获得由所述PDSN分配的本地IP 地址Local-IP,并设置WIFI网络接口的目标地址为WAG-IP的路由指向WIFI网络接口原来 的默认路由,并删除WIFI网络接口原来的默认路由,以PPP网络接口的默认路由作为所述 终端的默认路由,形成基于WIFI链路的PPP链路的数据包交互通道。优选的,所述PPP模块,还用于将进行业务交互的第一 IP数据包进行PPP封装,生 成封装了 PPP头的第二 IP数据包,并将所述第二 IP数据包发送到一对虚拟终端设备的第 一虚拟终端设备;
所述TUNNEL模块,还用于启动所述一对虚拟终端设备的第二虚拟终端设备,读取 所述第二 IP数据包,根据所述参数信息将所述第二 IP数据包再封装一层TUNNEL头,生成 第三IP数据包;所述IP协议栈,还用于上层应用APP的业务数据经过IP协议栈封装后,生成要进 行业务交互的第一 IP数据包,以及将所述第三IP数据包封装外层IP头。一种接入分组数据服务节点PDSN的系统,所述系统包括终端、无线接入网关WAG 和分组数据服务节点PDSN ;所述终端包括WIFI管理模块,用于通过WIFI模块直接访问业务服务器进行注册,并保存注册成 功后从所述业务服务器返回的参数信息;在驱动层建立的第一虚拟终端设备和第二虚拟终端设备,所述第一虚拟终端设备 和第二虚拟终端设备用于维护一个接收和发送的队列;PPP模块,用于对建立PPP链路的请求信息进行PPP封装,生成封装了 PPP头的第 一数据包,并发送所述第一数据包至所述第一虚拟终端设备;TUNNEL模块,用于从所述第二虚拟终端设备读取所述第一数据包,并根据所述参 数信息将所述第一数据包再封装一层TUNNEL头,生成第二数据包;IP协议栈,用于将所述第二数据包再封装一层基于WIFI链路的IP头,生成第三数 据包,并通过所述WIFI模块将所述第三数据包发送至无线接入网关WAG ;所述无线接入网关WAG,用于接收所述第三数据包,解析掉IP头和TUNNEL头,还原 出第一数据包,并将所述第一数据包进行通用路由协议GRE封装,并转发至所述分组数据 服务节点PDSN ;所述分组数据服务节点PDSN,用于对所述第一数据包进行解析处理后,建立与所 述终端的链路连接。优选的,所述WIFI管理模块通过WIFI网络接口的本地IP地址WIFI-IP直接访问 业务服务器进行注册。优选的,所述参数信息包括无线接入网关WAG的IP地址WAG-IP,以及进行TUNNEL头封装时的参数标示码 Stream ID 禾口目标端口 Dest-Port。优选的,所述第三数据包IP头中的目的IP地址为无线接入网关WAG的IP地址 WAG-IP0优选的,所述终端还包括网络设置模块,用于生成一个新的PPP网络接口,获得由所述PDSN分配的本地IP 地址Local-IP,并设置WIFI网络接口的目标地址为WAG-IP的路由指向WIFI网络接口原来 的默认路由,并删除WIFI网络接口原来的默认路由,以PPP网络接口的默认路由作为所述 终端的默认路由,形成基于WIFI链路的PPP链路的数据包交互通道。优选的,所述PPP模块,还用于将进行业务交互的第一 IP数据包进行PPP封装,生 成封装了 PPP头的第二 IP数据包,并将所述第二 IP数据包发送到一对虚拟终端设备的第 一虚拟终端设备;所述TUNNEL模块,还用于启动所述一对虚拟终端设备的第二虚拟终端设备,读取所述第二 IP数据包,根据所述参数信息将所述第二 IP数据包再封装一层TUNNEL头,生成 第三IP数据包;所述IP协议栈,还用于上层应用APP的业务数据经过IP协议栈封装后,生成要进 行业务交互的第一 IP数据包,以及将所述第三IP数据包封装外层IP头;所述无线接入网关,还用于接收所述第三IP数据包,解析掉所述第三IP数据包的 TUNNEL头和外层IP头,还原出第二 IP数据包,再将所述第二 IP数据包进行GRE封装后转 发到所述PDSN ;所述分组数据服务节点PDSN,还用于对所述第二 IP数据包进行解析,并将要进行 交互的第一 IP数据包向目标地址进行转发。本发明所述技术方案是在WIFI链路之上再建立PPP链路,数据包交互的通道是基 于WIFI链路的PPP链路,因此本发明提供的方案使终端能以高于蜂窝移动通信网络接入 的速度接入PDSN,从而实现各种PDN提供的数据业务,由于基于TUNNEL隧道层,使得通过 WLAN(WIFI)访问PDN或因特网时,必须经由无线接入网关WAG,从而业务运营商在WAG以及 TUNNEL协议层面上,就可以非常方便地实现业务区分,信息管理及相关功能的拓展。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可 以根据这些附图获得其他的附图。图1为现有技术中用户在使用数据业务时的系统组成图;图2为现有技术中终端侧的系统软件架构;图3为本发明数据业务实现方案的系统组成图;图4为本发明实现过程的具体原理图;图5为本发明数据包在各层间的数据包格式与流向图;图6为本发明一种接入分组数据服务节点方法第一实施例的流程图;图7为本发明中TUNNEL协议的封装格式;图8为图6所述一种接入分组数据服务节点方法第一实施例的另一流程图;图9为本发明一种接入分组数据服务节点方法第二实施例的流程图;图10为本发明一种终端第一实施例的组成结构图;图11为本发明中一对虚拟终端设备的通信关系图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。终端以3G/WIFI双模手机,蜂窝移动通信网络以CDMA2000为例对用户使用数据业 务进行说明,参照图1,在现有技术中,用户在使用数据业务时有两种方式,其终端侧的系统软件架构如图2所示方式一、终端通过CDMA拨号方式通过基站(BTS,Base Transceiver Station),经 由宽带服务控制器(BSC,Broadwidth Serve Controller)接入分组数据服务节点(PDSN, Packet Data Serving Node),进而使用公用数据网(PDN)的数据业务或接入Internet。从 终端角度看,该方式的业务流程为;上层数据业务应用(APP)通过TCP/IP协议栈生成要进 行业务交互的IP网络数据包,再经过PPP层对IP数据包封装,其物理层是无线通信模块 (Modem),通过Modem的空中接口将PPP数据包发送到BTS中,BTS再通过其他网络传输设 备将数据包最终发送到PDSN上,PDSN主要实现与终端间基于PPP的链路协商、分组数据业 务网的连接、以及相关认证的功能,终端和PDSN之间对PPP协议各参数进行协商,协商成功 后,便会建立该终端与CDMA网络PDSN的一条PPP链路。基于此链路,用户便可以使用PDN 的数据业务和一些Internet的服务,其数据包交互的通道是通过协商建立的PPP链路。方式二、终端通过WIFI连接无线访问节点(AP,(Wireless)Access Point),通过 局域或城域网(DSLAM),经由无线访问控制器(AC)直接接入Internet。从终端的角度来看, 与方式一业务流程不同的是,该方式下首先要通过WIFI模块接入AP,建立WIFI链路。在使 用数据业务时,APP通过TCP/IP协议栈生成了要进行业务交互的IP网络数据包后,并不再 将数据进行PPP封装,其网络链路层和物理层是采用的是基于802. Ilb协议的WIFI模块, 通过WIFI模块直接将IP数据包发送到AP中,AP相当于传统的有线局域网络与无线局域 网络之间的桥梁,从而将IP数据包转发到已经架设好的Internet网络中,其数据包交互的 通道是WIFI链路。本发明数据业务的实现方案如图3,当用户在使用数据业务时,APP将通过TCP/IP 协议栈生成了要进行交互的网络数据包,TUNNEL为终端与无线接入网关(WAG)之间业务隧 道,WAG为完成WIFI接入的认证、业务连接管理和数据传输等的网关。通过WIFI接入PDSN 的实现方案,实质上是一个通过TUNNEL层来实现的,在WIFI链路之上再建立PPP链路的过 程。与现有技术中两种方式的根本区别在于,在该方式下使用数据业务时,数据包交互的通 道是基于WIFI链路的PPP链路。参照图4,为本发明实现过程的具体原理图,参照图5,为 本发明数据包在各层间的数据包格式与流向图。参照图6,示出了本发明一种接入分组数据服务节点的方法第一实施例的流程图, 包括步骤步骤S610、终端通过WIFI模块直接访问业务服务器进行注册。所述终端通过WIFI网络接口的本地IP地址WIFI-IP直接访问业务服务器进行注 ππ册。在进行数据业务前,终端应先向业务服务器,如SIP服务器等进行注册,此时终端 采用的是WIFI网络接口的默认路由。步骤S620、所述终端接收注册成功后从所述业务服务器返回的参数信息。注册成功后,终端将获得无线接入网关WAG的IP地址WAG-IP,以及进行TUNNEL头 封装时的必要参数标示码Stream ID和目标端口 Dest-Port等参数。步骤S630、所述终端启动点对点协议PPP模块,对建立PPP链路的请求信息进行 PPP封装,生成封装了 PPP头的第一数据包。终端进行PPP建链,PPP协议层会发出建链请求、参数协商等封装了 PPP包头的第一数据包,并将所述第一数据包发送至第一虚拟终端设备。所述终端在驱动层建立一对虚拟终端设备,所述一对虚拟终端设备为第一虚拟终 端设备和第二虚拟终端设备,所述一对虚拟终端设备用于维护一个接收和发送的队列,可 以进行类似管道的通信,所述一对虚拟终端设备的通信关系为所述第一虚拟终端设备接 收的数据,在所述第二虚拟终端设备中进行读取,所述第二虚拟终端设备接收的数据,在所 述第一虚拟终端设备中进行读取。所述终端启动PPP模块时,通过参数指定使所述PPP模块传输数据使用一个虚拟 终端设备,而不是实际的物理串口,在本实施例中通过第一虚拟终端设备发送所述第一数 据包,当然,也可以通过第二虚拟终端设备发送所述第一数据包。步骤S640、所述终端启动隧道TUNNEL模块,根据所述参数信息将所述第一数据包 再封装一层TUNNEL头,生成第二数据包。所述TUNNEL模块打开与所述第一虚拟终端设备对应的第二虚拟终端设备,通过 第二虚拟终端设备读取所述第一数据包。所述PPP模块与所述TUNNEL模块通过一对虚拟终端设备进行通信,当PPP模块 要发送数据的时候,会把数据包发送到第一虚拟终端设备,所述TUNNEL模块通过与所述 第一虚拟终端设备对应的第二虚拟终端设备来读取该数据;当所述PPP模块要接收数据 的时候,所述TUNNEL模块通过Socket接口接收到WAG-IP发送过来的数据包,对数据包 的TUNNEL头等解封装后,发送到第二虚拟终端设备中,所述PPP模块就可以通过与其成对 的第一虚拟终端设备接收到这个数据,所述第一虚拟终端设备和第二虚拟终端设备并不特 指,即所述PPP模块也可以将数据发送至第二虚拟终端设备,或在第二虚拟终端设备中接 收数据,所述TUNNEL模块也可以将数据发送至第一虚拟终端设备,或在第一虚拟终端设备 中接收数据。所述UNNEL模块接收到第一数据包后,根据所述参数信息将所述第一数据包再封 装一层TUNNEL头,生成第二数据包。所述TUNNEL协议的封装格式如图7所示,包括Stream ID、Dest-Port、Proto ID、Proto Ver> Checksum 禾口 Pkt Length,其中,所述 Stream ID 禾口 Dest-Port字段即为步骤S620中所获取的相应参数,Proto ID, Proto Ver及CheckSum字 段则是模块内部固定的值,Pkt Length字段为封装了 TUNNEL包头后的整个报文的长度值。步骤S650、所述终端的IP协议栈将所述第二数据包再封装一层基于WIFI链路的 IP头,生成第三数据包,并通过WIFI链路将所述第三数据包发送至无线接入网关WAG。所述第三数据包IP头中的目的IP地址为无线接入网关WAG的IP地址WAG-IP。所述第三数据包通过WIFI链路经由DSLAM传输到WAG。步骤S660、所述WAG接收到所述第三数据包后,解析掉IP头和TUNNEL头,还原出 第一数据包,并将所述第一数据包进行通用路由协议GRE封装,并转发至分组数据服务节 点 PDSN。步骤S670、所述PDSN对所述第一数据包进行解析处理后,建立与所述终端的链路 连接。所述PDSN再对所述第一数据包进行解析,进而对PPP模块的建链数据包进行响 应,进行最大接收单元(MRU)和IP地址分配等方面的协商,从而完成链路建立。参照图8,链路建立后,还进一步可以包括
步骤S680、所述终端生成一个新的PPP网络接口,所述终端获得由所述PDSN分配 的本地IP地址Local-IP ;所述终端设置WIFI网络接口上目标地址为WAG-IP的路由指向 WIFI网络接口原来的默认路由,并删除WIFI网络接口原来的默认路由,以PPP网络接口的 默认路由作为所述终端的默认路由。链路建立后,终端获得PDSN所分配的IP地址,在双IP的情况下,添加一条目标地 址为WAG-IP的路由,指向WIFI网络接口原来的默认路由的路由表项,将系统的默认路由由 原来WIFI网络接口原来的默认路由改为PPP网络接口的默认路由。通过以上修改进行强 制路由,形成基于WIFI链路的PPP链路的数据包交互的通道。这样保证当上层访问PDSN时,会选择系统默认路由表项,即PPP网络接口的默 认路由,进而经过PPP协议层的封装,TUNNEL封装后,以IP数据包的形式向目的IP地址 WAG-IP发送,按照此时的路由表项,最终通过WIFI网络接口发送出去。通过这种强制路由 的方法,不需对上层业务软件作任何的修改,就可以实现规范中的要求。链路建立后,所述终端即可基于该链路使用数据业务,进行数据业务的交换了。参照图9,示出了本发明一种接入分组数据服务节点PDSN方法第二实施例的流程 图。本实施例所述技术方案包括链路建立过程和分组数据传输过程,所述链路建立过程在 第一实施例中已经进行了详细描述,在此不再赘述,参照第一实施例中相关部分的描述即 可;下面主要对链路建立、路由更改后的数据传输过程进行详细描述,本领域技术人员可以 理解,数据传输过程包括数据接收和数据发送,以下主要描述终端侧数据的发送过程,基于 该过程的逆过程,终端也可以利用该PPP链路进行分组数据的接收,从而实现终端与PDN或 因特网中数据业务的交互。步骤S910、上层应用APP的业务数据经过IP协议栈封装后,生成要进行业务交互 的第一 IP数据包。用户在使用数据业务时,上层应用APP经过IP协议栈封装后,生成要进行业务 交互的第一 IP数据包,在所述第一 IP数据包的IP头中,源IP地址为终端本地IP地址 Local-ΙΡ,目的IP地址为APP要访问的公用数据网PDN或因特网的IP地址。步骤S920、PPP模块对所述第一 IP数据包进行PPP封装,生成封装了 PPP头的第 二 IP数据包,并将所述第二 IP数据包发送到一对虚拟终端设备的第一虚拟终端设备。步骤S930、TUNNEL模块启动所述一对虚拟终端设备的第二虚拟终端设备,读取所 述第二 IP数据包,根据所述参数信息将所述第二 IP数据包再封装一层TUNNEL头和外层IP 头,生成第三IP数据包,并将所述第三IP数据包通过所述PPP网络接口的默认路由发送到 WAG。所述第三IP数据包的外层IP头中的目的IP地址为WAG-IP。步骤S940、所述WAG接收到所述第三IP数据包后,解析掉所述第三IP数据包的 TUNNEL头和外层IP头,还原出第二 IP数据包,再将所述第二 IP数据包进行GRE封装后转 发到PDSN。步骤S950、所述PDSN对所述第二 IP数据包进行解析,并将要进行交互的第一 IP 数据包向目标地址进行转发。通过以上步骤,完成终端向PDN或因特网中的目标地址发送数据,基于上述步骤 的逆过程,所述终端可以接收PDN或因特网中发送的数据,从而完成终端与PDN或因特网中目标地址间的数据交互。为了节约篇幅,在此不再对该逆过程进行描述。
本发明所述技术方案是在WIFI链路之上再建立PPP链路,链路建立后,终端获得 了 PDSN所分配的IP地址,在双IP的情况下,添加一条目标地址为WAG-IP的路由,指向WIFI 网络接口原来的默认路由的路由表项,将系统的默认路由由原来的WIFI网络接口原来的 默认路由该为PPP网络接口的默认路由。通过以上修改进行强制路由,形成基于WIFI链路 的PPP链路的数据包交互的通道,在此通道上进行分组数据 的接收和发送。本发明使终端 能以高于蜂窝移动通信网络接入的速度接入PDSN。在双IP的情况下,利用WIFI功能来进 行各种PDN提供的数据业务。并方便业务运营商在TUNNEL协议层面上,实现业务区分,信 息管理及相关功能的拓展。参见图10,示出了本发明一种终端第一实施例的组成结构图。所述终端包括WIFI管理模块,用于通过WIFI模块直接访问业务服务器进行注册,并保存注册成 功后从所述业务服务器返回的参数信息。第一虚拟终端设备和第二虚拟终端设备,第一虚拟终端设备和第二虚拟终端设备 优选建立在驱动层,所述第一虚拟终端设备和第二虚拟终端设备用于维护一个接收和发送 的队列。PPP模块,用于对建立PPP链路的请求信息进行PPP封装,生成封装了 PPP头的第 一数据包,并发送所述第一数据包至所述第一虚拟终端设备。TUNNEL模块,用于从所述第二虚拟终端设备读取所述第一数据包,并根据所述参 数信息将所述第一数据包再封装一层TUNNEL头,生成第二数据包。IP协议栈,用于将所述第二数据包再封装一层基于WIFI链路的IP头,生成第三数 据包,并通过所述WIFI模块将所述第三数据包发送至无线接入网关WAG。所述终端还包括网络设置模块,用于生成一个新的PPP网络接口,获得由所述 PDSN分配的本地IP地址Local-IP,并设置WIFI网络接口上目标地址为WAG-IP的路由指 向WIFI网络接口原来的默认路由,并删除WIFI网络接口原来的默认路由,以PPP网络接口 的默认路由作为所述终端的默认路由。所述终端的所述PPP模块,还用于将进行业务交互的第一 IP数据包进行PPP封 装,生成封装了 PPP头的第二 IP数据包,并将所述第二 IP数据包发送到一对虚拟终端设备 的第一虚拟终端设备。所述TUNNEL模块,还用于启动所述一对虚拟终端设备的第二虚拟终端设备,读取 所述第二 IP数据包,根据所述参数信息将所述第二 IP数据包再封装一层TUNNEL头,生成 第三IP数据包。所述IP协议栈,还用于上层应用APP的业务数据经过IP协议栈封装后,生成要进 行业务交互的第一 IP数据包,以及将所述第三IP数据包封装外层IP头。所述终端的工作过程和工作原理在方法实施例中进行了详细描述,在此不再赘 述,参照相关部分的描述即可。本实施例只是以终端发送数据进行描述,本领域技术人员可以理解,对于从PDN 或因特网中接收数据,所述终端各组成部分基于逆过程即可完成,为了节约篇幅,在此不再 赘述。本发明还公开了一种接入分组数据服务节点PDSN的系统,所述系统包括终端、无线接入网关WAG和分组数据服务节点PDSN。所述终端包括WIFI管理模块,用于通过WIFI模块直接访问业务服务器进行注册,并保存注册成 功后从所述业务服务器返回的参数信息。在驱动层建立的第一虚拟终端设备和第二虚拟终端设备,所述第一虚拟终端设备 和第二虚拟终端设备用于维护一个接收和发送的队列。PPP模块,用于对建立PPP链路的请求信息进行PPP封装,生成封装了 PPP头的第 一数据包,并发送所述第一数据包至所述第一虚拟终端设备。TUNNEL模块,用于从所述第二虚拟终端设备读取所述第一数据包,并根据所述参 数信息将所述第一数据包再封装一层TUNNEL头,生成第二数据包。IP协议栈,用于将所述第二数据包再封装一层基于WIFI链路的IP头,生成第三数 据包,并通过所述WIFI模块将所述第三数据包发送至无线接入网关WAG。所述无线接入网关WAG,用于接收所述第三数据包,解析掉IP头和TUNNEL头,还原 出第一数据包,并将所述第一数据包进行通用路由协议GRE封装,并转发至所述分组数据 服务节点PDSN。所述分组数据服务节点PDSN,用于对所述第一数据包进行解析处理后,建立与所 述终端的链路连接。所述PPP模块,还用于将进行业务交互的第一 IP数据包进行PPP封装,生成封装 了 PPP头的第二 IP数据包,并将所述第二 IP数据包发送到一对虚拟终端设备的第一虚拟 终端设备。所述TUNNEL模块,还用于启动所述一对虚拟终端设备的第二虚拟终端设备,读取 所述第二 IP数据包,根据所述参数信息将所述第二 IP数据包再封装一层TUNNEL头,生成 第三IP数据包。所述IP协议栈,还用于上层应用APP的业务数据经过IP协议栈封装后,生成要进 行业务交互的第一 IP数据包,以及将所述第三IP数据包封装外层IP头。所述无线接入网关,还用于接收所述第三IP数据包,解析掉所述第三IP数据包的 TUNNEL头和外层IP头,还原出第二 IP数据包,再将所述第二 IP数据包进行GRE封装后转 发到所述PDSN。所述分组数据服务节点PDSN,还用于对所述第二 IP数据包进行解析,并将要进行 交互的第一 IP数据包向目标地址进行转发。所述系统的工作过程和工作原理在方法实施例部分进行了详细描述,在此不再赘 述,参照相关部分的描述即可。本实施例只是以系统发送数据进行描述,本领域技术人员可以理解,对于从PDN 或因特网中接收数据,所述系统各组成部分基于逆过程即可完成,为了节约篇幅,在此不再 赘述。目前3G/WIFI双模终端软件架构有很多,比如Linux平台,Windows Mobile平台 等,下面以Linux平台为例对本发明的较佳实施例作进一步详细说明,毫无疑问,本发明在 其他平台也可实现。步骤1、在驱动层,实现两个只是维护接收和发送的队列的成对虚拟终端设备,如图11所示,即M-TTY (主虚拟终端设备或第一虚拟终端设备)和S-TTY (从虚拟终端设备或 第二虚拟终端设备),在Linux OS中的伪终端(PTY)恰好满足这种需求,PTY是Linux内 核中实现的一组逻辑设备,成对存在,其底层是基于STREAMS的管道。在编译内核时,选中 Character devices项目下的UNIX98PTY support,使内核能支持伪终端功能。Linux下有多组这样的设备,在2. 4内核下分别对应主设备/dev/ptypO f,从 设备/dev/ttypO f。一般要先打开主设备,再打开从设备并进行一些解锁,权限以及 线路规程的设置后才可以引用。在本实例中,只需使用一对伪终端/dev/ptypO,和/dev/ ttypO,同时需将主从设备都设置成RAW模式。步骤2、用户开始使用数据业务时,选择WIFI接入后,由WIFI管理模块处理,连接 到AP成功后,此时终端上就形成了当前系统唯一的网络接口 WIFI网络接口(ethO),并以 ethO的默认路由作为系统的默认路由。步骤3、WIFI管理模块会通过ethO,去访问业务服务器进行注册,注册成功后,依 照运营商的规范,业务服务器会在注册成功的返回消息中附带以下参数WAG-IP、TUNNEL 头封装与解析时所需的参数Stream ID和Dest-Port,WIFI管理模块可以将这些参数保存 到一个本地的配置文件比如tunnel. conf中。步骤4、WIFI管理模块启动PPP模块,进行PPP建链,Linux平台下可以通过调用 “pppd/deV/ptyp0&”,用一个进程来启动PPP模块,并在后面指定参数/dev/ptypO使用一个 虚拟终端设备来传输PPP数据包,而非实际的物理串口。步骤5、WIFI管理模块调用“ppptunl/deV/ttypO&”,用一个进程来启动TUNNEL模 块,其会打开和/dev/ptypO成对的从设备/dev/ttypO来实现TUNNEL模块和PPP模块之间 的通信。步骤6、当PPP模块要发送数据的时候,会把数据包发送到/dev/ptypO,TUNNEL模 块会通过设备/dev/ttypO来读取该数据,并从前面记录下的tunnel, conf文件中读取相关 参数,然后按照图7所示的TUNNEL协议的格式进行封装,最后通过Socket接口将封装后的 数据包发送到WAG-IP。步骤7、当PPP模块要接收数据的时候,TUNNEL模块通过Socket接口接收到 WAG-IP发送过来的IP数据包,对TUNNEL头等解封装后,送到/dev/ttypO设备上,PPP模块 就可以通过/dev/ptypO设备接收到这些数据。步骤8、初期是进行PPP协议参数的协商过程,协商结束后,PPP建链成功,生成一 个新的PPP网络接口(pppO)。步骤9、进行路由表的修改,这一步可以通过使用Linux下的网络工具IP命令,也 可以通过代码进行实现。首先在ethO上添加一个表项,目标地址为WAG-IP的路由经过ethO 原来的默认路由,然后删除系统上ethO的默认路由,以现在pppO的默认路由作为系统的默 认路由。从而实现双IP的情况下,通过TUNNEL进行转发数据的功能。步骤10、用户在进行数据业务交互时,会按照步骤6、步骤7进行分组数据的接收 和发送。步骤11、当用户终止数据业务交互时,上层应用会通知WIFI管理模块,然后WIFI 模块将运行的TUNNEL和PPP进程都关掉,并销毁所有中间过程,恢复到初始状态。本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以
16通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中, 该程序在执行时,包括如上述方法实施例的步骤,所述的存储介质,如磁碟、光盘、只读存 储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。 在本发明各方法实施例中,所述各步骤的序号并不能用于限定各步骤的先后顺序,对于本 领域普通技术人员来讲,在不付出创造性劳动性的前提下,对各步骤的先后变化也在本发 明的保护范围之内。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
一种接入分组数据服务节点PDSN的方法,其特征在于,包括终端通过WIFI模块直接访问业务服务器进行注册;所述终端接收注册成功后从所述业务服务器返回的参数信息;所述终端启动点对点协议PPP模块,对建立PPP链路的请求信息进行PPP封装,生成封装了PPP头的第一数据包;所述终端启动隧道TUNNEL模块,根据所述参数信息将所述第一数据包再封装一层TUNNEL头,生成第二数据包,所述PPP模块与所述TUNNEL模块通过一对虚拟终端设备进行通信;所述终端的IP协议栈将所述第二数据包再封装一层基于WIFI链路的IP头,生成第三数据包,并通过WIFI链路将所述第三数据包发送至无线接入网关WAG,所述第三数据包用于在所述WAG接收后,被解析掉IP头和TUNNEL头,还原出第一数据包,还原出的所述第一数据包用于在被所述PDSN接收后执行解析处理,以建立所述PDSN与所述终端的链路连接。
2.根据权利要求1所述的接入分组数据服务节点PDSN的方法,其特征在于,所述终端 通过WIFI模块直接访问业务服务器进行注册具体为所述终端通过WIFI网络接口的本地IP地址WIFI-IP直接访问业务服务器进行注册。
3.根据权利要求2所述的接入分组数据服务节点PDSN的方法,其特征在于,所述参数 信息包括无线接入网关WAG的IP地址WAG-IP,以及进行TUNNEL头封装时的参数标示码Stream ID 和目标端口 Dest-Port。
4.根据权利要求3所述的接入分组数据服务节点PDSN的方法,其特征在于,所述第三 数据包IP头中的目的IP地址为无线接入网关WAG的IP地址WAG-IP。
5.根据权利要求4所述的接入分组数据服务节点PDSN的方法,其特征在于,还包括所述终端在驱动层建立一对虚拟终端设备,所述一对虚拟终端设备包括第一虚拟终端设备和第二虚拟终端设备,所述一对虚拟终端设备用于维护一个接收和发送的队列,所述 一对虚拟终端设备的通信方式为所述第一虚拟终端设备接收的数据,在所述第二虚拟终 端设备中进行读取,所述第二虚拟终端设备接收的数据,在所述第一虚拟终端设备中进行 读取。
6.根据权利要求5所述的接入分组数据服务节点PDSN的方法,其特征在于,所述PPP 模块与所述TUNNEL模块通过一对虚拟终端设备进行通信为所述终端启动所述PPP模块时,指定参数使所述PPP模块的数据传输到所述一对虚拟 终端设备的第一虚拟终端设备中;所述终端启动所述TUNNEL模块时,打开所述一对虚拟终端设备的第二虚拟终端设备。
7.根据权利要求1所述的接入分组数据服务节点PDSN的方法,其特征在于,建立所述 PDSN与所述终端的链路连接后还包括所述终端生成一个新的PPP网络接口,所述终端获得由所述PDSN分配的本地IP地址 Local-IP ;所述终端设置WIFI网络接口的目标地址为WAG-IP的路由指向WIFI网络接口原来的 默认路由,并删除WIFI网络接口原来的默认路由,以PPP网络接口的默认路由作为所述终 端的默认路由,形成基于WIFI链路的PPP链路的数据包交互通道。
8.根据权利要求7所述的接入分组数据服务节点PDSN的方法,其特征在于,以PPP网 络接口的默认路由作为所述终端的默认路由,形成基于WIFI链路的PPP链路的数据包交互 通道后,上层应用通过所述基于WIFI链路的PPP链路的数据包交互通道进行分组数据的接 收或发送。
9.根据权利要求8所述的接入分组数据服务节点PDSN的方法,其特征在于,所述上层 应用通过所述基于WIFI链路的PPP链路的数据包交互通道进行分组数据发送的具体过程 为上层应用APP的业务数据经过IP协议栈封装后,根据系统默认路由表项生成要进行业 务交互的第一 IP数据包,在所述第一 IP数据包的IP头中,源IP地址为终端本地IP地址 Local-ΙΡ,目的IP地址为APP要访问的公用数据网PDN或因特网的IP地址;PPP模块对所述第一 IP数据包进行PPP封装,生成封装了 PPP头的第二 IP数据包,并 将所述第二 IP数据包发送到一对虚拟终端设备的第一虚拟终端设备;TUNNEL模块启动所述一对虚拟终端设备的第二虚拟终端设备,读取所述第二 IP数据 包,根据所述参数信息将所述第二 IP数据包再封装一层TUNNEL头和外层IP头,生成第三 IP数据包,所述第三IP数据包的外层IP头中的目的IP地址为WAG-IP,所述第三IP数据 包按照目标地址为WAG-IP的路由表项,通过WIFI网络接口经由WIFI链路的路由发送至 WAG ;所述第三IP数据包用于在所述WAG接收后,被解析掉IP头和TUNNEL头,还原出第二 IP数据包,还原出的所述第二 IP数据包用于在进行GRE封装转发到PDSN后被解析处理,以 将要进行交互的第一 IP数据包向目标地址进行转发。
10.一种终端,其特征在于,包括WIFI管理模块,用于通过WIFI模块直接访问业务服务器进行注册,并保存注册成功后 从所述业务服务器返回的参数信息;在驱动层建立的第一虚拟终端设备和第二虚拟终端设备,所述第一虚拟终端设备和第 二虚拟终端设备用于维护一个接收和发送的队列;PPP模块,用于对建立PPP链路的请求信息进行PPP封装,生成封装了 PPP头的第一数 据包,并发送所述第一数据包至所述第一虚拟终端设备;TUNNEL模块,用于从所述第二虚拟终端设备读取所述第一数据包,并根据所述参数信 息将所述第一数据包再封装一层TUNNEL头,生成第二数据包;IP协议栈,用于将所述第二数据包再封装一层基于WIFI链路的IP头,生成第三数据 包,并通过所述WIFI模块将所述第三数据包发送至无线接入网关WAG。
11.根据权利要求10所述的终端,其特征在于所述WIFI管理模块通过WIFI网络接口的本地IP地址WIFI-IP直接访问业务服务器进行注册。
12.根据权利要求11所述的终端,其特征在于,所述参数信息包括无线接入网关WAG的IP地址WAG-IP,以及进行TUNNEL头封装时的参数标示码Stream ID 和目标端口 Dest-Port。
13.根据权利要求12所述的终端,其特征在于,所述第三数据包IP头中的目的IP地址 为无线接入网关WAG的IP地址WAG-IP。
14.根据权利要求10所述的终端,其特征在于,还包括网络设置模块,用于生成一个新的PPP网络接口,获得由所述PDSN分配的本地IP地址 Local-ΙΡ,并设置WIFI网络接口的目标地址为WAG-IP的路由指向WIFI网络接口原来的默 认路由,并删除WIFI网络接口原来的默认路由,以PPP网络接口的默认路由作为所述终端 的默认路由,形成基于WIFI链路的PPP链路的数据包交互通道。
15.根据权利要求14所述的终端,其特征在于所述PPP模块,还用于将进行业务交互的第一 IP数据包进行PPP封装,生成封装了 PPP 头的第二 IP数据包,并将所述第二 IP数据包发送到一对虚拟终端设备的第一虚拟终端设 备;所述TUNNEL模块,还用于启动所述一对虚拟终端设备的第二虚拟终端设备,读取所述 第二 IP数据包,根据所述参数信息将所述第二 IP数据包再封装一层TUNNEL头,生成第三 IP数据包;所述IP协议栈,还用于上层应用APP的业务数据经过IP协议栈封装后,生成要进行业 务交互的第一 IP数据包,以及将所述第三IP数据包封装外层IP头。
16.一种接入分组数据服务节点PDSN的系统,其特征在于,所述系统包括终端、无线接 入网关WAG和分组数据服务节点PDSN ;所述终端包括WIFI管理模块,用于通过WIFI模块直接访问业务服务器进行注册,并保存注册成功后 从所述业务服务器返回的参数信息;在驱动层建立的第一虚拟终端设备和第二虚拟终端设备,所述第一虚拟终端设备和第 二虚拟终端设备用于维护一个接收和发送的队列;PPP模块,用于对建立PPP链路的请求信息进行PPP封装,生成封装了 PPP头的第一数 据包,并发送所述第一数据包至所述第一虚拟终端设备;TUNNEL模块,用于从所述第二虚拟终端设备读取所述第一数据包,并根据所述参数信 息将所述第一数据包再封装一层TUNNEL头,生成第二数据包;IP协议栈,用于将所述第二数据包再封装一层基于WIFI链路的IP头,生成第三数据 包,并通过所述WIFI模块将所述第三数据包发送至无线接入网关WAG ;所述无线接入网关WAG,用于接收所述第三数据包,解析掉IP头和TUNNEL头,还原出第 一数据包,并将所述第一数据包进行通用路由协议GRE封装,并转发至所述分组数据服务 节点PDSN ;所述分组数据服务节点PDSN,用于对所述第一数据包进行解析处理后,建立与所述终 端的链路连接。
17.根据权利要求16所述的系统,其特征在于所述WIFI管理模块通过WIFI网络接口的本地IP地址WIFI-IP直接访问业务服务器进行注册。
18.根据权利要求17所述的系统,其特征在于,所述参数信息包括无线接入网关WAG的IP地址WAG-IP,以及进行TUNNEL头封装时的参数标示码Stream ID 和目标端口 Dest-Port。
19.根据权利要求18所述的系统,其特征在于,所述第三数据包IP头中的目的IP地址为无线接入网关WAG的IP地址WAG-IP。
20.根据权利要求16所述的系统,其特征在于,所述终端还包括网络设置模块,用于生成一个新的PPP网络接口,获得由所述PDSN分配的本地IP地址 Local-IP,并设置WIFI网络接口的目标地址为WAG-IP的路由指向WIFI网络接口原来的默 认路由,并删除WIFI网络接口原来的默认路由,以PPP网络接口的默认路由作为所述终端 的默认路由,形成基于WIFI链路的PPP链路的数据包交互通道。
21.根据权利要求20所述的系统,其特征在于所述PPP模块,还用于将进行业务交互的第一 IP数据包进行PPP封装,生成封装了 PPP 头的第二 IP数据包,并将所述第二 IP数据包发送到一对虚拟终端设备的第一虚拟终端设 备;所述TUNNEL模块,还用于启动所述一对虚拟终端设备的第二虚拟终端设备,读取所述 第二 IP数据包,根据所述参数信息将所述第二 IP数据包再封装一层TUNNEL头,生成第三 IP数据包;所述IP协议栈,还用于上层应用APP的业务数据经过IP协议栈封装后,生成要进行业 务交互的第一 IP数据包,以及将所述第三IP数据包封装外层IP头;所述无线接入网关,还用于接收所述第三IP数据包,解析掉所述第三IP数据包的 TUNNEL头和外层IP头,还原出第二 IP数据包,再将所述第二 IP数据包进行GRE封装后转 发到所述PDSN ;所述分组数据服务节点PDSN,还用于对所述第二 IP数据包进行解析,并将要进行交互 的第一 IP数据包向目标地址进行转发。
全文摘要
本发明公开了一种接入分组数据服务节点的方法、系统和终端。所述方法包括通过WIFI模块直接访问业务服务器进行注册;接收返回的参数信息;对建立PPP链路的请求信息进行PPP封装,生成第一数据包;将所述第一数据包再封装一层TUNNEL头,生成第二数据包;将所述第二数据包再封装一层基于WIFI链路的IP头,生成第三数据包,并通过WIFI链路发送至WAG;所述第三数据包用于在所述WAG接收后,被解析掉IP头和TUNNEL头,还原出第一数据包,还原出的所述第一数据包用于在被所述PDSN接收后执行解析处理,以建立所述PDSN与所述终端的链路连接。本发明使终端能以高于蜂窝移动通信网络接入的速度接入PDSN。
文档编号H04L12/56GK101888703SQ200910084010
公开日2010年11月17日 申请日期2009年5月12日 优先权日2009年5月12日
发明者方胜, 潘英, 王晓伟, 陈夕华 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1