用于移动通信设备的虚拟用户识别模块的制作方法

文档序号:14652515发布日期:2018-06-08 22:08阅读:331来源:国知局
用于移动通信设备的虚拟用户识别模块的制作方法

本申请根据35U.S.C.§119(e)要求于2015年5月8日提交的主题为“Virtual SIM Technology(虚拟SIM技术)”的美国临时专利申请第62/158,984号的在先申请日,其内容通过引用整体并入本文。

技术领域

本公开总体而言涉及移动通信系统。具体而言,本公开涉及用于移动通信设备的虚拟用户识别模块。



背景技术:

目前,移动通信设备利用各种技术和格式,取决于所选择的服务供应商,其可以包括例如,GSM(全球移动通信系统)、CDMA(码分多址)和/或UMTS(通用移动电信系统)技术。为了储存允许移动设备与无线通信网络通信的必要的供应数据,GSM和UMTS移动设备利用通常称为SIM卡的用户识别模块(“SIM”)。

通过利用SIM卡,用户可以基于哪个服务供应商为用户的特定需求提供最佳服务来选择服务供应商使用。然后,用户可以在每次使用的基础上简单地用所需服务供应商的SIM卡替换当前的SIM卡。通过携带多个SIM卡(每个SIM卡包含不同服务供应商的供应信息),用户可以简单地通过实体切换SIM卡来切换服务供应商。



技术实现要素:

利用本文中结合本公开所述的虚拟SIM技术,用户将能够使用来自不同服务供应商的最佳服务,而不需要购买和切换实体SIM卡。

所描述的方面适用于移动和无线通信设备,包括蜂窝电话、智能手机、平板电脑、移动热点、膝上型计算机、掌上电脑、超便携移动个人计算机(UMPC)、PDA、双模(电信和数据通信)电话,以及能够进行诸如文本消息、互联网浏览等诸如手持设备或便携式计算机之类的语音和/或数据通信的其他设备。本公开的实施例使无线通信客户端在多个地理位置(诸如在不同国家、大国家内的不同区域或需要不同通信技术(诸如CDMA和GSM)的地方)更方便和更廉价地操作。

一方面,一种系统包括:SIM应用;实体SIM驱动器,其被配置为耦接到实体SIM卡;模拟SIM驱动器;控制开关,其选择性地将SIM应用耦接到实体SIM驱动器或模拟SIM驱动器,其中SIM应用在耦接到实体SIM驱动器时被配置为针对实体SIM卡读取和写入;以及SIM模拟器,其与控制开关和模拟SIM驱动器通信,其中SIM模拟器被配置为控制控制开关的选择性耦接,并且被配置为从模拟SIM驱动器接收包含认证请求的至少一个请求并将包含认证响应的至少一个响应发送到模拟SIM驱动器。

另一方面,控制开关和模拟SIM驱动器在MODEM上实现,并且SIM模拟器在应用处理器上实现。

另一方面,SIM模拟器经由远程过程调用而与控制开关和模拟SIM驱动器通信。

另一方面,该系统还包括在应用处理器上实现的应用模块,其中应用模块被配置为控制SIM模拟器的功能。

另一方面,该系统还包括在应用处理器上实现的接口模块,其中接口模块被配置为接收使用者输入。

另一方面,认证请求是Ki认证请求,并且认证响应是Ki认证响应。

另一方面,模拟SIM驱动器被配置为加载有本地SIM配置文件。

另一方面,SIM模拟器还被配置为将认证请求中继到远程服务器并从远程服务器接收认证响应。

另一方面,该系统还包括第二模拟SIM驱动器,其中认证请求被中继到远程服务器,并且经由第二模拟SIM驱动器建立的数据通信链路从远程服务器接收认证响应。

另一方面,该系统还包括:第二实体SIM驱动器,其被配置为耦接到第二实体SIM卡;以及第二控制开关,其选择性地将SIM应用耦接到第二实体SIM驱动器或第二模拟SIM驱动器,其中SIM应用在耦接到第二实体SIM驱动器时被配置为针对第二实体SIM卡读取和写入。

另一方面,一种方法包括:加载第一模拟SIM的配置文件信息;接收第一模拟SIM的第一认证请求;通过本地解析第一认证请求来响应第一认证请求;经由第一模拟SIM建立数据通信链路;加载第二模拟SIM的配置文件信息;接收第二模拟SIM的第二认证请求;经由所建立的数据通信链路将第二认证请求中继到远程服务器;经由所建立的数据通信链路从远程服务器接收对第二认证请求的认证响应;以及以所接收的认证响应来响应第二认证请求。

另一方面,该方法还包括在加载第二模拟SIM的配置文件信息之前,从第二实体SIM卡切换到第二模拟SIM。

另一方面,该方法还包括在加载第一模拟SIM的配置文件信息之前从第一实体SIM卡切换到第一模拟SIM,其中第一实体SIM卡和第二实体SIM卡与同一MODEM相关联。

另一方面,该方法还包括在经由所建立的数据通信链路将第二认证请求中继到远程服务器之前,再次经由第一模拟SIM建立数据通信链路。

另一方面,该方法还包括在以所接收的认证响应来响应第二认证请求之后,从第一模拟SIM切换回第一实体SIM卡。

另一方面,该方法还包括:接收第二模拟SIM的第三认证请求;经由第一模拟SIM建立数据通信链路;经由所建立的数据通信链路将第三认证请求中继到远程服务器;经由所建立的数据通信链路从远程服务器接收对第三认证请求的认证响应;以及以所接收的认证响应来响应第三认证请求。

另一方面,该方法还包括在经由所建立的数据通信链路将第三认证请求中继到远程服务器之前,通过传输超时指示来重新启动第三认证请求。

另一方面,第一认证请求和第二认证请求是Ki认证请求。

另一方面,第一模拟SIM的配置文件信息与外来SIM配置文件相关联,并且第二模拟SIM的配置文件信息与本地SIM配置文件相关联。

另一方面,一种无线通信设备包括一个或更多处理器,其中一个或更多处理器被配置为:加载第一模拟SIM的配置文件信息;接收第一模拟SIM的第一认证请求;通过本地解析第一认证请求来响应第一认证请求;经由第一模拟SIM建立数据通信链路;加载第二模拟SIM的配置文件信息;接收第二模拟SIM的第二认证请求;经由所建立的数据通信链路将第二认证请求中继到远程服务器;经由所建立的数据通信链路从远程服务器接收对第二认证请求的认证响应;以及以所接收的认证响应来响应第二认证请求。

附图说明

在所附权利要求中具体阐述了各个方面的特征。然而,通过参考结合附图的以下描述可以最好地理解关于组织和操作方法各个方面及其优点,附图如下:

图1是根据本公开的一个方面的、用于将本地通信网络中的外来无线电信设备如同是本地无线电信设备一样操作的系统的一个方面的框图。

图2是示出根据本公开的一个方面的实施虚拟SIM技术的系统的图。

图3A是示出没有VirtualSIM/SoftSIM的配置的图。

图3B是示出根据本公开的一个方面的具有VirtualSIM/SoftSIM的配置的图。

图4是示出根据本公开的一个方面的VirtualSIM模块的图。

图5是示出根据本公开的一个方面的GMATEm组件的图。

图6是示出根据本公开的一个方面的GMATEs组件的图。

图7是示出根据本公开的一个方面的工作流程的流程图。

图8是示出根据本公开的一个方面的当实施DSDS配置时的工作流程的图。

图9是示出根据本公开的一个方面的当实施DSDS配置时的工作流程的图。

图10是示出根据本公开的一个方面的当实施DSDS配置时用于重新认证的工作流程的图。

具体实施方式

以下对本技术的某些示例的描述不应用于限制其范围。该技术的其他示例、特征、方面、方面和优点将从下面的描述中变得对本领域技术人员是显而易见的,即通过说明的方式,以下描述是为实施该技术而构想的的最佳模式之一。如将认识到的,本文描述的技术能够具有其他不同且明显的方面,这些都不脱离本技术。因此,附图和描述应被认为本质上是例示性的而不是限制性的。

还应当理解,本文描述的任何一个或更多教导、表达、方面、示例等可以与本文描述的任何一个或更多其他教导、表达、方面、示例等组合。因此,以下描述的教导、表达,方面、示例等不应被视为彼此独立。鉴于本文的教导,本文中的教导可以组合的各种合适的方式对于本领域普通技术人员将是显而易见的。这些修改和变化应当包括在权利要求的范围内。

图1示出了通信系统100,其包括耦接到语音网络112的无线通信网络102(诸如公共交换电话网络(PSTN))和数据网络114。通信系统100还包括耦接到语音网络112和数据网络114的管理系统116。无线通信网络102可以用于语音和/或数据的通信,并且包括蜂窝电话、WIFI或WIMAX网络。在蜂窝电话网络的情况下,网络102包括多个蜂窝站点或基站104,蜂窝站点或基站104通常由天线塔、收发机无线电(即,基站收发台)和无线电控制器(即,基站控制器)组成。在诸如WIFI或WIMAX的数据网络的情况下,网络102包括多个基站104,基站104通常包括接入点、无线路由器等。基站104包括收发器或者发射器和接收器,通过该收发器或者发射器和接收器在网络102与包括无线通信客户端106的多个无线通信客户端之间建立无线电链路。无线通信客户端106可以是能够无线通信的任何电话或计算设备,诸如蜂窝电话手机、个人数字助理(PDA)、计算机、VOIP网关、SIP电话等。在一些实施例中,无线通信客户端106必须能够访问和通信数据。

图1也示出了可选无线通信扩展单元108。在这些实施例中,扩展单元108能够与无线通信客户端106和包括基站104的无线通信网络102两者通信。此外,如本文所使用的,无线通信客户端106和/或扩展单元108的组合称为无线通信系统101。

无线网络102的供应商110耦接到一个或更多个基站104。服务供应商110还耦接到语音网络112和数据网络114。

为了方便起见,图1的其余描述将参考其中无线网络102是蜂窝电话网络(诸如GSM、GPRS(通用分组无线电业务)、CDMA(码分多址)、用于GSM演进的EDGE增强数据、3GSM、DECT、IS-136和iDEN、模拟,以及这些的任意组合等)的实施例。然而,应当理解,相同的系统可以用于提供任何其他类型的无线语音或数据服务,诸如WIMAX、WiFI、VOIP等。

服务供应商110可以包括位于对传输进行路由的一个或更多移动电话交换局(“MTSO”)的多个移动电话交换中心(“MSC”)。另外,服务供应商110可以包括耦接在基站104与MSC20之间的一个或更多基地蜂窝中心(“BSC”)(未示出),例如用以处理呼叫手动切断。

服务供应商110持续监控呼叫者和接收者两者的信号强度,当信号强度减弱时定位下一个蜂窝站点,并自动重新路由通信以维持通信链路。例如,当无线通信客户端106从一个蜂窝移动到另一个蜂窝时,服务供应商110监控移动,并且在适当的时间将电话呼叫从第一基站传送或切换到新的基站。传送可以包括切换通信的无线电频率,并且对用户是透明的。因此,服务供应商110像标准PSTN或ISDN切换节点一样起作用,并且另外向漫游用户提供诸如注册、认证、位置更新、移交和呼叫路由等的移动用户相关功能。

服务供应商110通常采用用于跟踪用户、路由呼叫和漫游的一个或更多数据库(例如,归属位置寄存器“HLR”和访客位置寄存器“VLR”)。服务供应商110通常还采用用于验证用户的数据库(例如,认证中心“AuC”)和用于验证设备的单独数据库(例如,设备识别寄存器“EIR”)。服务供应商110将路由号码分配到服务供应商110正在切换的每个呼叫。虽然路由号码与唯一用户识别符(例如,IMSI)和唯一设备识别符(例如,国际移动设备识别“IMEI”)不同,但MTSO可以定义路由号码和与每个无线通信客户端106相关联的用户识别符和/或设备识别符之间的关系。这些识别符允许服务供应商110跟踪和协调其服务区域中的所有无线通信客户端106,并且还允许服务供应商110确定呼叫和呼叫者的有效性。

如本领域所熟知和记载的,服务供应商110通过其基站104的网络将语音通信路由到其网络上的其他呼叫者,或路由到PSTN网络112。数据通信被路由到通常是互联网的数据网络114。

数据网络114耦接到管理系统116。管理系统116供外来无线通信客户端106在本地无线通信网络102中操作,如同外来无线通信客户端106是本地无线通信客户端一样。“外来”是指无线通信客户端106(或其SIM卡)没有被签署到无线通信网络102。例如,与旧金山的无线合同相关联的蜂窝电话(外来无线通信客户端)未被签署到伦敦蜂窝电话网络(本地无线通信网络)。这里,管理系统116使蜂窝电话能够在伦敦运行,如同它是与伦敦的合同相关联的蜂窝电话一样。

管理系统116包括耦接到用户数据库124和认证库126的至少一个认证服务器118,以及耦接到路由数据库130的至少一个可选通信服务器128。认证服务器118主要认证针对认证的进入请求并维持用户帐户。通信服务器128有助于重新路由非本地呼叫以进一步提供降低成本的路由。管理系统116包括至少一个业务供应(provisioning)服务器132,其为请求用户提供远程认证软件。业务供应服务器132和/或认证服务器118和/或通信服务器128可以在中央位置、在企业计算/通信中心或消费者产品中被实施为区域网络本地的一个或更多个组件。

一个或更多认证库126和/或一个或更多用户数据库124可以与一个或更多相关联的认证服务器118、通信服务器128和路由数据库130一同封装或分别封装。管理系统116的一些实施例可以包括用于冗余和更快访问时间的附加组件。

图2是示出根据本公开的一个方面的实施虚拟SIM技术的系统的图200。虚拟SIM终端202例如通过互联网206与虚拟SIM服务器204通信。为了方便起见,术语虚拟SIM终端202可以用于表示能够在没有实体SIM卡的情况下进行蜂窝通信的移动设备。术语VirtualSIM或VSIM可以用于表示在移动设备的内部存储器中运行的软件,该软件实施在实体SIM卡上运行的软件的逻辑和功能,除了认证(例如,Ki认证)逻辑之外。术语SoftSIM可以用于表示在移动设备的内部存储器中运行的软件,该软件实施在实体SIM卡上运行的软件的逻辑和功能,包括认证(例如,Ki认证)逻辑。术语模拟SIM可以用于表示VirtualSIM或SoftSIM,或者它们的组合。术语或首字母缩略词HWSIM可以用于表示实体SIM卡。最后,术语虚拟SIM服务器204可以用于表示为VirtualSIM提供SIM配置文件和认证功能的服务器。虚拟SIM终端202可以是例如参考图1描述的无线通信客户端106或扩展单元108,或者它们的组合。虚拟SIM服务器204例如可以是参考图1描述的认证服务器118、业务供应服务器132和通信服务器128中的一个或更多个。虚拟SIM服务器204可以至少部分地通过访问参考图1描述的用户数据库124来提供SIM配置文件,并且可以至少部分地通过访问参考图1描述的认证库126来提供认证功能。

在虚拟SIM终端202配置中,移动设备可以在不访问实体SIM卡的情况下与VirtualSIM和SoftSIM模块通信。VirtualSIM和SoftSIM可以处理请求并将响应发送回移动设备。换言之,VirtualSIM和SoftSIM可以执行实体SIM卡的功能。

在用户打开虚拟SIM终端202之前,可以在移动设备上供应SoftSIM配置文件。在引导时,SoftSIM可以经由互联网在虚拟SIM终端202与虚拟SIM服务器204(有时称为后端服务器或远程服务器)之间建立数据连接,并下载不包括认证信息(例如,Ki认证信息)的基本VirtualSIM配置文件数据。可以基于运营商之间的服务质量和成本来选择VirtualSIM配置文件。

在被供应了VirtualSIM配置文件之后,虚拟SIM终端202可以使用VirtualSIM配置文件向最终用户提供服务。当网络质疑认证(例如,Ki认证)终端时,VirtualSIM可以通过先前由SoftSIM建立的数据连接将认证请求发送到虚拟SIM服务器。虚拟SIM服务器可以将请求路由到其连接的实体卡,并将认证响应发送回虚拟SIM终端202。

在一些实施例中,SoftSIM配置文件可以与承受漫游费用的外来SIM配置文件相关联,并且VirtualSIM配置文件可以与不承受漫游费用的本地SIM配置文件相关联。通过使用主要用于认证目的的SoftSIM并使用用于其他通信的VirtualSIM,可以降低服务费用。

图3A是示出不具有VirtualSIM/SoftSIM的配置的图300,而图3B是示出根据本公开的一个方面的具有VirtualSIM/SoftSIM的配置的图310。在如图3A的图300所示的不具有VirtualSIM/SoftSIM的配置中,移动设备或移动装置302(“ME”)上的软件经由ISO7816硬件接口304访问实体SIM卡或USIM卡306。在如图3B的图310所示的具有VirtualSIM/SoftSIM的配置中,该架构支持实体SIM/USIM卡306和VirtualSIM/SoftSIM 312两者。在正常模式中,VirtualSIM/SoftSIM模块312是透明的,并且软件与ISO7816硬件接口304之间的所有命令都将通过VirtualSIM/SoftSIM模块312。当VirtualSIM/SoftSIM 312逻辑被激活时,它可以拦截控制数据并充当实体SIM/USIM卡306。

图4是示出根据本公开的一个方面的VirtualSIM模块400的图。VirtualSIM模块400可以包括两个组件410、420,它们可以分别由GMATEs 410和GMATEm 420表示。例如,GMATEs 410和GMATEm 420组件可以是在移动设备上运行的进程。在一个实施例中,GMATEs 410可以在应用处理器(“AP”)上实施,而GMATEm 420可以在MODEM上实施。GMATEs 410和GMATEm 420可以经由远程过程调用(“RPC”)通信信道450进行通信。一旦GMATEm 420启动,MODEM将GMATEm 420视为SIM卡。如果有多个MODEM,则每个MODEM都可以有一个GMATEm 420,并且每个GMATEm 420都可以经由RPC连接到GMATEs 410。

VirtualSIM模块400还可以包括用于控制SIM模拟器620的功能的应用(“APP”)430和用于接收用户输入的人机接口(“MMI”)440。用户交互在APP 430或MMI 440上实施。在安卓(Android)系统中,MMI 440在APP 430中实施。其他系统可以在接口层上实施MMI 440。由于在APP 430或MMI 440上修改和更新VirtualSIM模块400的功能更为方便,因此VirtualSIM模块400的大部分功能可以在GMATEs 410中实施。

图5是图示根据本公开的一个方面的GMATEm组件420的图。如上所述,GMATEm420可以是在MODEM上运行的进程。GMATEm 420可以包括RPC通信模块560、VirtualSIM驱动器530和SIM切换控制器520。RPC通信模块560可以经由RPC与GMATEs 410通信,并且可以与SIM切换控制器520和VirtualSIM驱动器530通信。

传统上,SIM应用模块510通过SIM卡驱动器540来与实体SIM卡550通信。实体SIM卡驱动器540从SIM应用510接收命令,并通过ISO7816接口与实体SIM卡550通信。MODEM通过SIM应用510和SIM卡驱动器540针对实体SIM卡550读取和写入。

如图5所示,SIM切换控制器520可以拦截SIM应用模块510与SIM卡驱动器540之间的通信。RPC通信模块560可以将SIM切换命令发送到SIM切换控制器520。响应于该命令,SIM切换控制器520可以选择性地将SIM应用510耦接到VirtualSIM驱动器530或实体SIM卡驱动器540。因此,SIM切换控制器520可以将数据从SIM应用510路由到VirtualSIM驱动器530或实体SIM卡驱动器540。

VirtualSIM驱动器530可以在MODEM上运行。当与SIM卡应用510通信时,VirtualSIM驱动器530可以是实施与实体SIM卡驱动器540相同的接口的适配器。VirtualSIM驱动器530可以将从SIM应用模块510接收的RESET、PPS(协议和参数选择)、APDU(应用协议数据单元)以及其他控制数据发送到RPC通信模块560,RPC通信模块560可以将控制数据中继到GMATEs 410。VirtualSIM驱动器530还可以通知SIM应用510SIM卡已被改变并且请求SIM应用510重置并读取新的SIM卡信息。

图6是示出根据本公开的一个方面的GMATEs组件410的图。如以上所讨论,GMATEs 410可以是在AP上运行的进程。GMATEs 410可能需要具有根访问以经由RPC连接到MODEM。GMATEs 410可以包括GMATEs应用模块610、SIM模拟器620和RPC通信模块630。

RPC通信模块610可以向/从在MODEM上实施的GMATEm 420发送/接收控制数据。RPC通信模块610可能需要发送或接收至少1024字节的数据,以确认来作出响应,并等待直到从MODEM接收到响应。

SIM卡模拟器620可以经由RPC通信模块630与GMATEm 420通信。SIM卡模拟器620可以用作SIM卡操作系统。SIM卡模拟器620可以控制SIM切换控制器520的选择性耦接,并且可以从MODEM上的SIM卡应用模块510接收请求,并且用从后端服务器640接收的SIM卡配置文件信息(诸如ICCID(集成电路卡ID)、IMSI(国际移动用户识别))进行响应。如果SIM卡模拟器620没有从后端服务器640接收到新的配置文件,则可以使用默认SIM配置文件。

GMATEs应用模块610可以从后端服务器640接收SIM配置文件并将其发送到SIM卡模拟器620。它也可以监控GMATEs进程。如果有错误,则GMATEs应用模块610可以请求GMATEm 420重置SIM卡。当网络质疑用于VirtualSIM认证的设备时,GMATEs应用模块610可以在MODEM与后端服务器640之间中继SIM认证请求和SIM认证响应。

图7是示出根据本公开的一个方面的工作流程的流程图700。在图7所示的例子中,可以实施两个MODEM,一个与SoftSIM一起使用,另一个与VirtualSIM一起使用。类似于VirtualSIM,SoftSIM可以包括GMATEs和GMATEm。在一些实施例中,SoftSIM可以与VirtualSIM共享共同的GMATEs,但是包括单独的GMATEm。为了允许VirtualSIM与后端服务器通信,SoftSIM进程可以提前启动并建立与后端服务器的数据连接。

最初,加载SoftSIM的配置文件信息(步骤710)。包括Ki和OP(运营商)的SoftSIM配置文件可以被预先下载或烧录到设备上。此后,SoftSIM进程可以以与下面描述的VirtualSIM启动进程1至4基本类似的方式启动。

现在参考图4至图7,接收SoftSIM认证请求(步骤720)。例如,在无线通信服务可以被提供给SoftSIM之前,服务供应商可以用认证请求(例如,Ki认证请求)来质疑设备。认证请求可以是APDU请求的一部分。由于SIM模拟器620可以解析设备上的SoftSIM认证请求,因此不需要将认证请求中继到后端服务器640。因此,通过本地解析请求来响应SoftSIM认证请求(步骤730)。经由SoftSIM建立数据通信链路(步骤740)。

现在参考图4至图7,加载VirtualSIM的配置文件信息(步骤750)。例如,GMATEs410可以从后端服务器640请求VirtualSIM配置文件。VirtualSIM配置文件可以包括ICCID、IMSI、PLMN(公共陆地移动网络)和其他参数,但不包括Ki。VirtualSIM配置文件储存在设备上。GMATEs应用模块610将VirtualSIM配置文件发送到SIM模拟器620并启动SIM卡模拟器620。参考图4至图7,此后VirtualSIM进程可以被如下启动:

1.SIM模拟器620通过RPC通信模块630将重置请求发送到MODEM上的GMATEm 420。

2.GMATEm 420上的RPC通信模块560接收重置请求。作为响应,SIM切换控制器520连接SIM应用模块510和VirtualSIM驱动器530(例如,从实体SIM卡550切换),并且VirtualSIM驱动器530发送导通和关断的状态变化。这将触发SIM卡应用510向VirtualSIM驱动器530发出RESET命令,VirtualSIM驱动器530将该命令发送到SIM模拟器620。

3.一旦SIM模拟器620从VirtualSIM驱动器530接收到RESET命令,SIM模拟器620就以ATR(重置响应)进行响应。如果SIM模拟器620没有在特定时段内从虚拟SIM驱动器530接收到RESET命令,则SIM模拟器620将重新发送重置请求。如果重复发生故障,例如三次,则SIM模拟器620将请求整个MODEM重置。

4.一旦SIM模拟器620接收到RESET命令并发出ATR,GMATEs 410就继续从MODEM上的GMATEm 420接收数据并对GMATEm 420作出响应。

此后,接收VirtualSIM认证请求(步骤760)。例如,在无线通信服务可以被提供给VirtualSIM之前,服务供应商可以用认证请求(例如,Ki认证请求)来质疑设备。认证请求可以是APDU请求的一部分。SIM模拟器620可以解析并响应设备上的APDU请求,除了认证请求之外。

VirtualSIM认证请求经由SoftSIM建立的数据通信链路被中继到远程服务器(步骤770),例如后端服务器640。例如,当SIM模拟器620接收到VirtualSIM认证请求时,它请求VirtualSIM驱动器530保持命令执行并等待认证响应。同时,SIM模拟器620将认证请求发送到后端服务器640,后端服务器640解析认证请求。

经由数据通信链路从远程服务器接收VirtualSIM认证响应(步骤780)。利用从远程服务器接收的认证响应来响应VirtualSIM认证请求(步骤790)。例如,一旦SIM模拟器620从后端服务器640接收到认证响应,其就将该响应发送到MODEM上的SIM卡应用510。因此,无线通信服务被提供给VirtualSIM。如果SIM模拟器620接收到下一个认证请求,则将重复步骤760至790。

如果GMATEs应用610在一段时间(例如10秒)内没有从后端服务器640接收到认证响应780,则GMATEs应用610将例如通过发送超时指示来通知SIM模拟器620认证已经失败。然后,SIM模拟器620将通知VirtualSIM驱动器530认证已经失败。VirtualSIM将被重置,并且将重复步骤760至790。

现在参考图8至图10,下面描述本公开的实施双SIM双待(DSDS)配置的实施例。典型的DSDS设备在一个MODEM上实施两个SIM卡。因此,这样的DSDS设备可能不能使两个SIM卡同时连接到网络。换句话说,当一个SIM卡正在工作时,另一个SIM卡处于待机模式。例如,DSDS设备可以包括与图5中的实体SIM驱动器504、SIM切换控制器520和VirtualSIM驱动器530类似的另一实体SIM驱动器、另一SIM切换控制器和SoftSIM驱动器。

图8和图9是示出根据本公开的各个方面的当实施DSDS配置时的工作流程的图800、900。在图8至图10中,箭头表示应用801、SoftSIM/VirtualSIM模块802和MODEM803之间的通信。应用801可以是移动设备上的操作系统级应用。SoftSIM/VirtualSIM模块802可以表示参照图4描述的GMATEs 410,并且MODEM 803可以表示参考图4描述的GMATEm 420。在图8至图10中,每条虚线表示组件之间的可以在任一方向上的一个或更多通信。

根据本公开的实施例,SoftSIM模块可以连接到互联网并模拟DSDS设备上的第一实体SIM。SoftSIM模块可以连接到虚拟SIM服务器以加载VirtualSIM配置文件。一旦SoftSIM模块从虚拟SIM服务器接收到VirtualSIM配置文件,SoftSIM就可以被设置为默认SIM以打开数据会话。

当VirtualSIM从网络接收到认证质疑时,MODEM可以将认证请求发送到VirtualSIM模块。然后,确定SoftSIM是否准备好传输数据。如果SoftSIM已经打开了数据会话并准备好传输数据,则认证请求可以被中继到虚拟SIM服务器。否则,SoftSIM模块可以启动SoftSIM并如上所述再次打开数据会话。一旦从虚拟SIM服务器接收到认证响应,则响应可以通过MODEM被中继到网络。现在VirtualSIM已就绪。可选地,SoftSIM模块可以终止SoftSIM并切换回到第一实体SIM以处于待机模式。因此,第一实体SIM卡仍然可以用来接收电话、短信等。

具体地,在805中,应用801将启动SoftSIM的请求发送到SoftSIM/VirtualSIM模块802。在810中,SoftSIM/VirtualSIM模块802将切换第一实体SIM到SoftSIM的请求发送到MODEM 803。在815中,加载SoftSIM配置文件。在820中,应用801将设置SoftSIM为默认SIM的请求发送到MODEM 803。在825中,完成SoftSIM认证。在830中,MODEM 803将指示SoftSIM已被设置为默认SIM的响应发送到应用801。在835中,SoftSIM/VirtualSIM模块802将指示SoftSIM已经启动的响应发送到应用801。在840中,应用801将下载并启动VirtualSIM的请求发送到SoftSIM/VirtualSIM模块802。在845中,由SoftSIM/VirtualSIM模块802下载VirtualSIM配置文件。在850中,SoftSIM/VirtualSIM模块802将切换第二实体SIM到VirtualSIM的请求发送到MODEM803。在855中,加载VirtualSIM配置文件。在860中,应用801将设置VirtualSIM为默认SIM并处于待机模式的请求发送到MODEM 803。在865中,应用801将建立SoftSIM数据会话的请求发送到MODEM 803。注意,在865之前,由SoftSIM建立的任何数据会话都可能已经超时。在870中,SoftSIM认证完成。在875中,MODEM 803将指示SoftSIM数据会话已经建立的响应发送到应用801。

在905中,MODEM 803将VirtualSIM认证请求发送到SoftSIM/VirtualSIM模块802。在910中,SoftSIM/VirtualSIM模块802将检查SoftSIM数据会话是否就绪的请求发送到应用801。如果SoftSIM数据会话就绪,则在915中,应用801将指示SoftSIM数据会话就绪的响应发送到SoftSIM/VirtualSIM模块802。在920中,SoftSIM/VirtualSIM模块802使用SoftSIM数据会话将VirtualSIM认证请求中继到虚拟SIM服务器,并且使用SoftSIM数据会话从虚拟SIM服务器接收认证响应。在925中,SoftSIM/VirtualSIM模块802将VirtualSIM认证响应发送到MODEM 803。在930中,SoftSIM/VirtualSIM模块802将指示VirtualSIM就绪的响应发送到应用801。在935中,SoftSIM/VirtualSIM模块802将切换SoftSIM回实体SIM的通知发送到应用801。在940中,应用801将请求发送到SoftSIM/VirtualSIM模块802以停止SoftSIM。在945中,SoftSIM/VirtualSIM模块802将分离SoftSIM并切换回第一实体SIM的请求发送到MODEM 803。在950中,SoftSIM/VirtualSIM模块802将指示SoftSIM已被停止的响应发送到应用801。

图10是示出根据本公开的一个方面的当实施DSDS配置时用于重新认证的工作流程的图1000。有一段时间,某些条件可能触发网络将认证请求发送到MODEM 803,以再次质疑VirtualSIM。一旦SoftSIM/VirtualSIM模块802接收到网络质疑,SoftSIM/VirtualSIM模块802就可以检查SoftSIM数据会话是否仍然可用。如果SoftSIM数据会话仍然可用,则SoftSIM/VirtualSIM模块802可以将认证请求中继回VirtualSIM服务器。为了维持VirtualSIM会话,SoftSIM/Virtual SIM模块802可以将从虚拟SIM服务器接收的认证响应通过MODEM 803及时发送到网络。如果SoftSIM数据会话不可用,则SoftSIM/Virtual SIM模块802可以通过类似于图8中描述的进程来启动数据会话。在SoftSIM/VirtualSIM模块802响应网络认证质疑之后,SoftSIM/VirtualSIM模块802将保持VirtualSIM会话正常使用。可选的最后一步是终止SoftSIM连接并将其切换回第一实体SIM,以保持第一实体SIM可用于接收电话、SMS等。

具体地,在1005中,MODEM 803将VirtualSIM认证请求发送到SoftSIM/VirtualSIM模块802。在1010中,SoftSIM/VirtualSIM模块802将检查SoftSIM数据会话是否就绪的请求发送到应用801。如果SoftSIM数据会话尚未就绪,则在1015中,应用801将指示SoftSIM数据会话尚未就绪的响应发送到SoftSIM/VirtualSIM模块802,并请求重新启动SoftSIM。在1020中,SoftSIM/VirtualSIM模块802将切换第一实体SIM到SoftSIM的请求发送到MODEM 803。在1025中,加载SoftSIM配置文件。在1030中,应用801将建立SoftSIM数据会话的请求发送到MODEM 803。在1035中,SoftSIM认证完成。在1040中,MODEM 803将指示SoftSIM数据会话已经建立的响应发送到应用801。在1045中,SoftSIM/VirtualSIM模块802将VirtualSIM认证超时指示发送到MODEM 803。注意,此时VirtualSIM认证可能实际上并未超时,但是可能需要超时指示以重新启动认证进程。在1050中,MODEM 803再次将VirtualSIM认证请求发送到SoftSIM/VirtualSIM模块802。因为SoftSIM数据会话现在应该可用,所以剩余顺序1055至1090将与图9中所示的910至950基本相同。因此,VirtualSIM可以被重新认证,并且之后可以终止SoftSIM。

总而言之,已经描述了通过采用本文描述的概念而产生的许多益处。已经出于说明和描述的目的呈现了对一个或更多方面的上述描述。这并非旨在穷尽或限制所公开的确切形式。鉴于上述教导,修改或变化是可能的。选择和描述一个或更多方面以便说明原理和实际应用,从而使本领域普通技术人员能够利用各个方面以及适合于预期的特定用途的各种修改。目的在于所附交的权利要求界定整个范围。

出于解释的目的,已经参考具体实施例描述了上述说明。然而,上面的示例性讨论并不是穷举性的或者将本发明限制于所公开的确切形式。鉴于上述教导,许多修改和变化是可能的。例如,所描述的实施例可以利用与这里描述的那些不同的注册、启动、呼出或呼入过程。选择和描述实施例是为了最好地解释本发明的原理及其实际应用,从而使本领域的其他技术人员能够最佳地利用本发明以及具有适合于预期的特定用途的各种修改的各种实施例。

此外,这里的附图旨在更多地作为可能存在于一组服务器中的各种特征的功能描述,而不是作为本文描述的实施例的结构示意图。在实践中,如本领域普通技术人员所认识到的,单独示出的项目可以组合,并且一些项目可以分开。例如,图中单独示出的一些项目可以在单个服务器上实施,而单个项目也可以由一个或更多个服务器实施。服务器的实际数量以及特征如何在其间分配在不同实施方式之间会有所不同,并且可能部分取决于系统在高峰使用时段期间以及平均使用时段期间必须处理的数据通信的量。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1