移动消息中的位置标识符的制作方法

文档序号:13668755阅读:247来源:国知局
移动消息中的位置标识符的制作方法

相关申请

本申请基于并要求2015年4月3日提交的美国专利申请序列no.14/678,413的优先权,该专利申请要求2014年10月10日提交的美国临时专利申请no.62/062,590的优先权。申请no.14/678,413和62/062,590的全部内容通过引用并入本文。



背景技术:

互联网协议多媒体子系统(ims)是用于向与ims网络的用户相关联的移动设备(例如,智能电话、平板电脑等)传送互联网协议(ip)多媒体的架构框架。ims核心网络(有时被称为“ims核心”或“核心网络(cn)”)允许无线和有线设备访问ip多媒体、消息以及语音应用程序和服务。

ims核心对于用于将移动设备(通常被称为“用户设备(ue)”)连接到ims核心网络的接入技术是不可知的。以这种方式,用户的移动设备可以经由移动设备可用的任何合适的无线接入网络(ran)连接到ims网络。例如,移动设备可以经由第三代合作伙伴计划(3gpp)ran(例如gsm/edgeran(geran)、通用陆地ran(utran)或演进型utran(e-utran))连接到ims核心。通过这些类型的3gppran访问ims核心通常涉及通过蜂窝基站(蜂窝信号发射塔)与ims核心网络进行通信。可选地,移动设备可以经由“非3gpp”ran,诸如wi-fitmran或基于电气与电子工程师协会(ieee)的802.11标准的另一类型的无线局域网(wlan)连接到ims核心。通过wi-fi接入网访问ims核心通常涉及通过wi-fi接入点(ap)与ims核心进行通信。通过非3gppran提供对ims核心的访问已经为基于ims的服务的最新进展打开了大门,例如引入wi-fi呼叫,其允许用户通过可用的wi-fiap发起和接收呼叫。

关于非3gppran,3gpp标准定义了两种类型的访问:受信的和不受信的。通常,受信的ran是由ims核心运营商或由ims核心运营商的另一信任方(例如,承包商、分支机构、业界合作伙伴等)运营的ran。相比之下,不受信的ran是通过wi-fiap和公共网络(诸如互联网)将ue连接到ims核心的ran,ims运营商对其无法控制。例如,移动设备可以通过公共热点、订户的家庭wi-fi、企业wi-fi等连接到ims核心网络。

当用户通过不受信的ran访问基于ims的服务时,无线运营商无法确定用户的位置。这主要是由于不受信的ran的基础设施。也就是说,无线运营商(或蜂窝网络运营商)不拥有不受信的ran的回程,结果是,在运营商拥有的ims核心网络接收到传输之前,来自移动设备的传输是通过开放和公共网络(例如互联网)传送的。在缺乏用于不受信的ran设备的位置信息(例如,wi-fiap的位置)的情况下,运营商无法确定用户的位置。考虑到临时用户可以将他/她的移动设备携带到任何位置/wi-fiap,在那里用户具有访问不受信的ran的安全凭证,用户可以获得对基于ims的服务的访问,而运营商不知道订户的位置。

运营商可能需要知道用户/订户的当前位置有很多原因。例如,联邦法规规定,订户有合理的期望,他/她可以拨打911并被路由到正确的(即最近的)公共安全应答点。还有非紧急短码(例如毒物控制、811-在您挖掘之前呼叫、311城市非紧急情况、发消息到911等),其根据位置被路由到适当的长号码。此外,在ims服务注册时由运营商应用的限制类型可以根据订户的位置而变化。不知道订户的当前位置,这些都不可能。另一个示例涉及以适当费率的计费订户。也就是说,与使用基于ims的服务(例如,电话服务)相关联的计费费率可以随着使用服务时订户的位置而变化。不知道订户的当前位置,基于位置的不同费率的计费是不可能的。

附图说明

参考附图阐述详细描述,其中附图标记的最左边的数字标识附图标记首次出现的图。在不同图中使用相同的附图标记表示相似或相同的项目或特征。

图1示出了促进从移动设备发送到ims核心网络的消息中的位置标识符(id)的传输的示例性ims环境。

图2示出了用于将位置id从移动设备传送到ims核心网络的节点的示例性移动传递消息方案的示意图。

图3是根据各个实施例的示例性移动设备架构的框图。

图4是根据各个实施例的示例性ims节点架构的框图。

图5示出了用于生成消息并将消息从移动设备传送到ims核心网络的示例性过程的流程图,其中消息包括指示移动设备的当前位置的位置id。

图6示出了用于生成消息并将消息从移动设备传送到ims核心网络的更详细的示例性过程的流程图,其中消息包括指示移动设备的当前位置的位置id。

图7示出了用于基于从移动设备接收的消息的位置id来估计移动设备的当前位置的示例性过程的流程图。

图8示出了用于基于从移动设备接收的消息的位置id来估计移动设备的当前位置以及同意或拒绝对基于ims的服务的注册/访问的更详细的示例性过程的流程图。

具体实施方式

本文描述了用于包括从通信设备传送到ims核心网络的消息中的一个或更多个位置标识符(id)的技术和系统,该位置id指示发送消息的通信设备的当前位置。本文还描述了用于处理包括一个或更多个位置id的消息以估计发送消息的通信设备的当前位置的技术和系统所述消息。

移动通信设备在其本质上会被移动(例如,由用户携带)到任何位置。如果在给定位置处的无线连接可用,则通信设备可以通过通信设备可用的网络无线地发送/接收数据。当用户订阅了由无线运营商(例如,多媒体电话服务)提供的服务时,用户可以经由提供上述无线连接到通信设备的可用ran来从运营商的ims网络访问那些服务。通信设备可以包括ims客户端,其被配置为除其他以外经由ran生成和发送消息到ims,该消息促进在用户的通信设备上访问基于ims的服务。

ims客户端在生成消息时可以包括指示通信设备的当前位置的消息内的一个或更多个位置id。ims客户端可以使用如本文所描述的各种技术来获得最终包括在消息中的位置id。当消息从不受信的ran(诸如wi-firan)转发时,响应于接收和处理ims核心中的消息,消息中包含位置id允许ims核心网络中的组件估计通信设备的当前位置(并因此估计相关用户/订户的位置)。以这种方式,即使从ims运营商的角度来看,不受信的ran基础设施是未知的,也可以由ims核心的组件使用从通信设备发送的消息中的位置id来估计通信设备的当前位置。

尽管本文公开的技术和系统主要针对基于wi-fi的非3gppran进行了描述,但是本公开不限于使用wi-fi技术或wi-fi呼叫或电话服务的实现方式。也就是说,本文描述的传递消息技术和系统可以用任何类型的不受信的ran(例如用其他wlan技术实现的不受信的ran)实现,无论它们是否基于ieee802.11标准。此外,尽管主要针对会话发起协议(sip)请求方法(或sip请求)对消息进行了讨论,但是应当理解,本文描述的实施例的消息可以是任何类型的消息。

在一些实施例中,要在通信设备上实现的过程包括生成具有指示通信设备的当前位置的位置id的消息,以及通过不受信的非3gppran将消息发送到互联网协议多媒体子系统(ims)网络中的节点。

在一些实施例中,要在ims网络的一个或更多个组件或节点上实现的过程包括从通信设备并且经由不受信的非3gppran接收具有位置id的消息,以及响应于接收到消息,至少部分地基于该位置id来估计通信设备的当前位置。

本文还公开了包括一个或更多个处理器和一个或更多个存储器的系统,以及存储计算机可执行指令的非暂态计算机可读介质,当所述计算机可执行指令被一个或更多个处理器执行时,执行本文所公开的各种动作和/或过程。

示例性环境

图1示出了用于实现用于传送从移动设备102发送到ims核心网络104的消息中的位置标识符(id)的传递消息方案的示例性ims环境100。如图1所示,被示出为移动设备102(a)和移动设备102(b)的移动设备102被配置为通过受信的无线接入网络(ran)106和/或不受信的ran108与ims核心网络104通信并连接到ims核心网络104。

移动设备102可以被实现为配置为通过无线和/或有线网络,包括但不限于移动电话(例如,智能手机)、平板计算机、便携式计算机、便携式数字助理(pda)、可穿戴计算机(例如,电子/智能眼镜、智能手表、健身追踪器等)、网络数字相机和/或类似的移动设备进行通信的任何合适的移动计算设备。尽管该描述将设备102主要描述为“移动”(即,被配置为被携带和随意移动),但是应当理解,移动设备102也可以表示通常是静止状态的各种类型的通信设备,诸如电视机、台式计算机、游戏机、机顶盒等。在这个意义上,术语“通信设备”、“无线设备”、“有线设备”、“移动设备”、“计算设备”和“用户设备(ue)”在本文可以互换使用来描述任何能够执行本文描述的技术的通信设备。此外,移动设备102以及受信和不受信的ran106和108可能能够通过有线网络和/或使用任何合适的无线通信/数据技术、协议或标准的无线进行通信,例如全球移动通信系统(gsm)、时分多址(tdma)、通用移动电信系统(umts)、演进数据优化(evdo)、长期演进(lte)、高级lte(lte+)、通用接入网(gan)、非授权移动接入(uma)、码分多址(cdma)、正交频分多址(ofdm)、通用分组无线业务(gprs)、增强型数据gsm环境(edge)、高级移动电话系统(amps)、高速分组接入(hspa)、演进hspa(hspa+)、ip语音(voip)、lte语音(volte)、ieee802.1x协议、wimax、wi-fi和/或任何未来基于ip的网络技术或现有基于ip的网络技术的演进。

受信的ran106和不受信的ran108两者都可以提供移动设备102和ims核心网络104之间的物理无线链路,并且每个移动设备102可以被配置为使用一种或两种类型的ran106和/或108。作为示例,受信的ran106在图1中示出为由ims核心104的运营商或与ims核心104的运营商相关联的另一受信方(例如承包商、分支机构、业界合作伙伴等)拥有、租赁和/或运营的蜂窝基站(cellsite)。应当理解,除蜂窝基站以外的其他组件(未示出)组成受信的ran106。受信的ran106可以经由专用网络110连接到ims核心104并且与ims核心104通信,该专用网络110不向公众开放(例如,专用的回程)。专用网络110代表许多不同类型的专用网络(例如,移动电话网络),并且专用网络110可以是有线的、无线的或其组合。专用网络110可以包括中间组件,其可以包括但不限于网关gprs支持节点(ggsn)、服务gprs支持节点(sgsn)或促进受信的ran106中的移动性管理、会话管理和用于ip分组服务的传输的类似组件。

作为示例,不受信的ran108在图1中示出为通过公共网络112,诸如因特网或通常向公众开放的任何其它类型的有线和/或无线网络连接到ims核心104的wi-fi接入点(ap)。应当理解,除wi-fiap之外的其他组件(未示出)构成不受信的ran108。

可以由一个或更多个服务提供商(例如一个或更多个无线运营商)维护和/或运营ims核心网络104,所述服务提供商向与移动设备102相关联的订户114(有时称为“用户114”)提供基于移动ims的服务。订户114可利用其移动设备102与其他订户114和设备进行通信。此外或可选地,订户114可以利用其移动设备102通过访问ims核心104来接收、提供或以其他方式与各种不同的基于ims的服务进行交互。例如,服务提供商可以通过wi-fi(wi-fi呼叫服务)提供多媒体电话服务,其允许订户114当他们在wi-fi接入点(ap)的范围内时呼叫或发消息给其他订户114,所述wi-fi接入点是用于访问ims核心网络104的ran(受信的ran106或不受信的ran108)的一部分。以这种方式,服务提供商可以提供除多媒体电话服务之外的任何类型的基于ims的服务,例如包括但不限于紧急服务(例如,e911)、游戏服务、即时消息服务、在线服务、视频会议服务、社交网络和共享服务、基于位置的服务,一键通服务等服务。

移动设备102可以被配置为经由ims核心104注册以及之后访问和利用一个或更多个基于ims的服务。因此,移动设备102可以被配置为将消息传送到ims核心网络104,其作为ims注册过程的一部分和/或作为访问和使用基于ims的服务的一部分。图1示出了消息116通过不受信的ran108从移动设备102被发送到ims核心104。消息116可以包括任何合适的消息,诸如注册基于ims的服务的请求,建立、修改或终止多媒体会话(例如,多媒体电话呼叫)的请求等等。

在一些实施例中,消息116包括会话发起协议(sip)请求方法(有时称为“sip请求”)。sip是可以用于通过分组网络建立、修改和终止多媒体会话以及验证对基于ims的服务的访问的信令协议。sip已由互联网工程任务组(ietf)标准化。以sip请求的形式的消息116是使用sip协议从移动设备102发送到ims核心104的消息。sip响应是使用sip协议从ims核心104发送到移动设备102的消息。参考图1的说明性示例,消息116(b)可以包括在使用“register(注册)”方法进行ims注册过程期间发送的sipregister(sip注册)消息(一种类型的sip请求)。一旦ims注册成功完成,移动设备102可以经由ims核心104与另一方或多方建立多媒体会话(例如,wi-fi呼叫会话)。在多媒体会话期间,其他类型的sip请求方法(例如,sipinvite或message消息)可以作为sip请求从移动设备102被发送到ims核心104。消息116可以表示任何上述类型的消息。

每个消息116可以包括至少一个消息头(messageheader)和用于承载各种类型的信息、标识符(id)和/或数据的消息体(messagebody)。当消息116由移动设备102生成时,移动设备102的客户端应用可以在消息116内插入位置id118。位置id118通常是指示移动设备102的当前位置的一条信息、id和/或数据。在一些实施例中,位置id118指定(specify)移动设备108的大致当前位置。在其他实施例中,位置id118并不指定移动设备102的大致当前位置,但是位置id118仍可用于确定移动设备102的大致当前位置,因此位置id118指示移动设备102的当前位置。如上所述,由于ims核心网络104的运营商不拥有与不受信的ran108相关联的回程,没有这种位置id118的运营商将不能确定移动设备102的当前位置(以及因此不能确定与移动设备102相关联的用户114的当前位置)。

通常,位置id118传达ims运营商知道位置的内容。这意味着即使ims运营商可能不知道不受信的ran108的wi-fiap位于何处,ims运营商也可以使用位置id118来估计移动设备102的当前位置。因此,位置id118可以包括可由ims核心网络104用于确定移动设备102的当前位置的任何合适的信息、id和/或数据。

在说明性示例中,位置id118可以包括从受信的ran106(a)内的最近的或在范围内的蜂窝基站/信号塔捕获的数据。例如,图1示出了当移动设备102(a)能够与受信的ran106(a)的蜂窝基站通信时,移动设备102(a)被配置为接收蜂窝捕获120(a)。蜂窝捕获120(a)可以包括携带与受信的ran106(a)中的蜂窝基站相关联的数据的消息。例如,蜂窝捕获120(a)可以包含指定或可以用于获得在获得蜂窝捕获120(a)的同时最靠近移动设备102的受信的ran106(a)内的蜂窝基站的位置的蜂窝id(cid)。在一些实施例中,蜂窝捕获120(a)可以包括接收的信号强度数据、飞行时间(tof)数据以及可以指示在移动设备102(a)获得蜂窝捕获120(a)时,移动设备102(a)离受信的ran106(a)的蜂窝基站的距离的其他合适度量。图1还示出了移动设备102(b)被配置为从受信的ran106(b)内的最近的或在范围内的蜂窝基站/信号塔获得蜂窝捕获120(b)。

因此,从移动设备102发送到ims核心104的消息116可以包括为或源自于蜂窝捕获120(或最近的蜂窝基站的cid)的位置id118。位置id118可以包括在消息116中的任何地方(例如,消息116的报头(header)和/或主体(body))。当消息116包括sip请求时,与来自蜂窝捕获120的数据有关的位置id118可以被包括在sip请求的专用报头(privateheader,p-报头)中。这种p-报头在本文被称为“p-最后访问网络信息(p-lani)”报头,因为它表示在消息116被发送时移动设备102可见的最后已知蜂窝(lkc)。下文将参照附图更详细地描述与p-lani报头相关的示例。应当理解,“p-lani”仅仅是这种p头的一个示例性名称,并且可以在不改变本文描述的系统和技术的基本特征的情况下将其它名称用于该p-报头。位置id118或附加位置id可以作为“存在”信息被包括在消息的主体中。下面将参考附图更详细地描述该实施例。

在一些情况下,可以在消息116由移动设备102发送的大致相同的时间获得蜂窝捕获120。在其他情况下,可以在消息116由移动设备102发送之前的某时间获得蜂窝捕获120。在后一种情况下,蜂窝捕获120数据可以由移动设备102高速缓存(或以其他方式保持在存储器中),使得其可以稍后插入到消息116内。为了说明的目的,图1示出了上述两种情况。在一种情况下,用户114(b)拥有移动设备102(b),而移动设备102(b)和用户114(b)在受信的ran106(b)的蜂窝覆盖范围内。换句话说,移动设备102(b)的蜂窝无线电能够与受信的ran106(b)的蜂窝基站进行通信,例如用于通过受信的ran106(b)发送/接收到/来自ims核心104的传输,和/或用于获得蜂窝捕获120(b)。除了在受信的ran106(b)的蜂窝覆盖内以外,移动设备102(b)被示出在不受信的ran108(b)的wi-fiap的范围内。也就是说,移动设备102(b)的无线通信接口能够与不受信的ran108(b)的wi-fiap进行通信,而移动设备102(b)的蜂窝无线电能够与受信的ran106(b)的蜂窝基站进行通信。因此,尽管用户114(b)处于蜂窝覆盖范围内,用户114(b)可能希望通过ims核心网络104使用wi-fi呼叫来呼叫另一用户,诸如用户114(a)。因此,移动设备102(b)可以使用移动设备102(b)的蜂窝无线电获得蜂窝捕获120(b),并且基本上同时,移动设备102(b)可以发送消息116(b),例如sip注册方法,来注册wi-fi呼叫。消息116(b)可以包括位置id118,其为或者源自于蜂窝捕获120(b)的数据。

在另一种情况下,用户114(a)可已经将他/她的移动设备102(a)从建筑物122外部的位置携带到建筑物122内。为了说明的目的,移动设备102(a),一旦进入建筑物122内部,就不能与受信的ran106(a)进行通信,这可能是当用户114(a)已经将移动设备102(a)携带到蜂窝接收对于移动设备102(a)不可用的建筑物122的地下室时的情况。类似的示例可以涉及用户114(a)将其移动设备102(a)携带到运营商的商业无线电频谱边缘上的位置,使得与受信的ran106(a)的通信丢失的情况。在任何情况下,用户114(a)和移动设备102(a),尽管不能与受信的ran106(a)进行通信,但可以在不受信的ran108(a)的wi-fiap的范围内。也就是说,如果移动设备102(a)或用户114(a)有这样做的凭据(如果需要的话),移动设备102(a)的无线通信接口可能够与不受信的ran108(a)的wi-fiap进行通信。在这种情况下,用户114(a)可能想要通过wi-fi呼叫发起呼叫,结果,移动设备102(a)可以生成要通过不受信的ran108(a)发送到ims核心104的消息116(a)(例如,sip注册方法)。消息116(a)可以包括位置id118,其为或者源自于蜂窝捕获120(a)的数据(例如,包含在蜂窝捕获120(a)中的蜂窝基站/信号塔的cid)。也就是说,在早先,移动设备102(a)从受信的ran106(a)的最近的、或在范围内的蜂窝基站/信号塔获得蜂窝捕获120(a),并且将来自蜂窝捕获120(a)的数据高速缓存到移动设备102(a)的存储器中。移动设备102(a)可以在蜂窝捕获120(a)之前已经获得额外的蜂窝捕获120,使得移动设备102(a)在建筑物122内部时,多个蜂窝捕获保持在移动设备102(a)的高速缓存中。在这种情况下,最后已知的(即最新的)蜂窝捕获120(a)用于生成具有位置id的消息116(a)。

ims核心网络104可以包括被配置用于各种目的的多个节点124,例如ims核心网络104的多媒体会话的控制和管理。图1示出了四个节点124(a)-(d),但是可以在ims核心网络104中使用少于或多于四个的任何数量的节点124。各个节点124可以表示提供sip注册和代理功能的各种呼叫会话控制功能(cscf),诸如代理cscf(p-cscf)、询问cscf(i-cscf)、服务cscf(s-cscf)、紧急cscf(e-cscf)等。节点124中的其他节点可以表示安全网关(seg)、会话边界控制器(sbc)和/或家庭订户服务器(hss)。不受信的ran108可以直接连接到ims核心104的节点124,或者节点124中的一个或更多个(例如,sbc)可以建立用于来自不受信的ran108到ims核心104的业务的安全ip通道。节点124(c)可以表示从移动设备102接收消息116的p-cscf或类似节点124,然后p-cscf可以酌情将消息116或其中的信息转发到ims核心104的其他节点124。一个或更多个组件(例如,可执行模块)可以驻留在ims核心104的一个或更多个节点124上,并且可以负责处理输入的消息116以提取位置id118和包含在消息116中的其他信息。由ims核心104的节点124进行的消息处理可以涉及解析消息116的报头或主体以识别并提取位置id118,使其可以用于各种目的。

除了其他方面,ims核心104的组件可以估计与接收的消息116相关联的移动设备102的当前位置,并且可以利用估计的移动设备102的当前位置来执行各种下游操作。可能的下游操作包括但不限于呼叫路由(例如,路由到911呼叫的正确(即最近的)公共安全应答点,或其他短码(x11)的正确接收终端)、确定多媒体电话服务费率、准许对多媒体电话服务的访问和/或将估计的位置转发到授权的第三方(例如,用户114的家庭成员)。

在一些实施例中,ims核心网络104与公共交换电话网络(pstn)126接合。例如,呼叫可以起源自移动设备102,通过ims核心104路由,并终止于pstn126。

图2示出了用于将消息116从移动设备102发送到ims核心网络104的节点124的示例性移动传递消息方案的示意图,消息116具有允许ims核心104的组件估计移动设备102的当前位置的信息。在说明性情况下,移动设备102可以发送消息116,其作为ims注册过程的一部分,尝试注册基于ims的服务,诸如多媒体电话服务。在ims注册中,可以存在两个寄存器,一个未被保护的寄存器,其最初用于通过发起质疑来建立认证,如果被满足,认证移动设备102经由第二受保护的寄存器安全地进行通话。在一些实施例中,消息116是用于ims注册的第二受保护的寄存器的一部分。然而,消息116可以表示任何其他类型的消息,例如用于设置或建立与另一订户114的另一移动设备102的呼叫的消息。

如图2所示,消息116通过不受信的ran108从移动设备102发送到ims核心网络104。不受信的ran108可以包括移动设备102附近(即,在无线通信范围内)的wi-fiap200,使得移动设备102可以通过不受信的ran108与ims核心104进行通信。

用户114可以携带他/她的移动设备102在某区域周围移动。当移动设备102随用户114一起移动时,它可以在多个不同时间(例如,周期性地)获得对于移动设备102可见(即,在蜂窝通信范围内)的蜂窝基站的蜂窝捕获。例如,移动设备102被示为从作为受信的ran106的一部分的蜂窝基站202获取蜂窝捕获120。因此,当它移动时,移动设备102可以高速缓存蜂窝捕获120的列表,每个包括与蜂窝基站,诸如蜂窝基站202,相关联的数据(例如,cid)。在一些实施例中,可以高速缓存与蜂窝捕获120相关联的蜂窝时间戳,以指示获得蜂窝捕获120时的时间。

当消息116从移动设备102发送到ims核心104的节点124时,位置id(例如位置id118)可以在传输之前被包含在消息116内。图2示出了消息116可以包括报头204和主体206,消息116的每个部分被配置为携带位置id118以及可能地附加位置id。报头204可以包括包含至少一个位置id118的p报头(例如,p-lani报头)。p-lani报头的语法可以遵循用于基于3gpp接入网络的3gpp测试规范(ts)24.229。在图2的示例中,位置id118以蜂窝基站202的cid的形式示出,其可以已经被蜂窝捕获120捕获。消息头204中的p-lani报头还可以包括第一时间戳208(或“蜂窝时间戳”208)以指示移动设备102获得蜂窝捕获120的时间,并因此指示移动设备102获得位置id118的时间。蜂窝时间戳208可以用于告诉ims核心104的组件多久以前移动设备102经由蜂窝捕获120查看特定的3gpp受信ran106。p-lani报头还可以包括第二时间戳210(或“注册时间戳”210),以指示从移动设备102发送消息116的时间。

在一些情况下,两个时间戳208和210可以指示相同的时间。这可能发生在蜂窝捕获120与消息116的传输基本上同时获得的情况下,并且两个时间戳之间的差基本上为零,以指示位置id118的年龄为零。p-lani报头204还可以包括商业移动无线服务(cmrs)标识符212,其指示与蜂窝基站202相关联的受信的ran106的类型。图2示出了蜂窝基站202是由ims核心104的运营商信任的utran的一部分的示例。

尽管报头204被示为包括p-lani报头而没有其它的,但是应当理解,报头204可以包含附加报头,并且p-lani报头本身可以包含附加信息、id和/或数据。例如,报头204还可以包括关于以下的信息:消息116被发送所通过的ran106/108的类型(例如,ieee802.11b)、wi-fiap200的媒体接入控制(mac)地址、用户114的标识符、与移动设备102相关联的移动号码、由移动设备102呼叫的另一设备的移动号码、在移动设备102上被访问的基于ims的服务的类型(例如,wi-fi呼叫、包括语音或视频呼叫、短消息服务(sms)文本等)、用于注册方法的认证向量、支持的媒体(例如,编解码器)、国家代码(mcc)、运营商代码(mnc)等。

一旦接收到消息116,节点124可以解析报头204以提取位置id118(例如,蜂窝基站202的cid)以确定蜂窝基站202的位置,其通常为ims核心网络104的运营商已知。然后,ims104的组件可以确定移动设备102的估计的位置(并因此确定携带移动设备102的用户114的位置)。可以将估计的位置指定为蜂窝基站202的点位置和围绕点位置的形状214。在这种情况下,形状214包括具有半径r1的圆,但是形状214可以包括任何多边形形状(例如,正方形、三角形、星形等)。可以使用围绕蜂窝基站202的点位置的形状214来表达对应于用户114的实际位置的点位置的不确定性。例如,形状214的大小可以表达蜂窝基站202的点位置是移动设备102实际位于何处的68%的不确定性。也就是说,68%的时间,发送消息116的移动设备102将位于具有半径r1的形状214内。

在其它实施例中,形状214可以用于说明(accountfor)位置id118的年龄(age)。例如,当蜂窝时间戳208不同于(即,早于)注册时间戳210时,形状214的大小可以说明用户114在蜂窝时间戳208和注册时间戳210之间的时间段内可能已经行进的距离。此外,由于在获得蜂窝捕获120时用户114很可能恰好不位于蜂窝基站202的点位置处,因此形状214的大小还可以说明用户位于蜂窝基站202处的不确定性。

在一些实施例中,位置id118可以包括在获得蜂窝捕获120时关于移动设备102与蜂窝基站202之间的距离的数据。可以使用任何合适的技术(例如,接收信号强度、飞行时间等)来收集在移动设备102获得蜂窝捕获120时的距离数据。在这种情况下,形状214的大小可以说明用户114和被捕获的蜂窝基站202之间的此初始距离。

消息体206还可以包括位置id216。位置id216可以是报头204中的位置id118的附加位置id,或者位置id216可以被包括在消息116中,代替在报头204中提供位置id118。因此,在一些实现中,可以在消息116中传送单个位置id(例如,位置id118),而在其他实现中,可以在消息116中传送多个位置id或位置对象,其可以包括任何数量的各种p-报头、存在信息和/或多功能互联网邮件扩展(mime)附件等。

位置id216可以作为“存在”信息被提供,例如以“存在信息数据格式-位置信息对象(pidf-lo)”的形式。消息体206的pidf-lo部分可以作为可扩展标记语言(xml)被提供。在一些实施例中,消息体206的pidf-lo部分中的位置id216表示在发送消息116时(其由注册时间戳210指示)由移动设备102确定的移动设备102的当前位置的近似值。位置id216可以以任何合适的格式提供,例如地理位置(例如,纬度和经度坐标)、城市位置(例如,国家、州、城市、街道地址、公寓/单位号码等),或地理位置和城市位置信息两者的组合。在一些实施例中,由城市位置提供的间隔尺寸量可以被限制在某水平(例如,不超出国家水平的或更具体的),或者可能需要用户同意来向位置信息提供更多的间隔尺寸。

消息体206的pidf-lo部分中的位置id216可以源自移动设备102可用的任何合适的部件。在某些情况下,作为对移动设备102的操作系统进行功能呼叫的应用的结果,位置id216的地理信息可以接收自移动设备102的全球定位系统(gps)接收器。位置id216的城市信息可以由在移动设备102上执行的客户端应用接收。例如,在移动设备102上执行的应用可以提示用户114输入他/她的当前位置以访问由应用提供的服务。在一些实施例中,位置id216可以由众包(crowdsourcing)技术提供,例如通过移动设备102的客户端应用收集其附近的wi-fi信号等。在这个意义上,位置id216可以不依赖于移动设备102的蜂窝通信能力(例如,蜂窝无线电)。

尽管消息116的主体206被示出为包括pidf-lo存在信息,并且没有其他内容,但是应当理解,消息体206可以包含附加信息、id和/或数据。例如,消息体206还可以包括关于形状218的类型的信息,其表达由位置id216指定的位置对应于移动设备102的实际位置的不确定性。例如,消息体206中包括的信息可以指示形状218是圆形、正方形、三角形或一些其他合适的多边形。消息体206还可以包括提供位置id216的实体,诸如移动设备102或其硬件或软件组件、人(例如,用户114)等。

一旦接收到消息116,节点124还可以解析消息体206以提取位置id216(例如,其中指定的地理位置)以确定移动设备102的位置。然后ims104的组件可以指定移动设备102的估计位置(并且因此指定携带移动设备102的用户114的位置)作为移动设备102的点位置和围绕点位置的形状218。在这种情况下,形状218包括具有半径r2的圆。类似于形状214,形状218的大小可以表达位置id216中指定的移动设备102的点位置是移动设备102实际位于何处的不确定性度量(例如,68%的不确定性)。

位置估计(即,点位置和周围形状214和/或218)可以以各种方式用于下游操作。例如,位置估计可以允许ims核心网络104的节点124将呼叫从移动设备102路由到适当的作为基于位置的短码路由(scr)的一部分的接收终端。例如,移动设备102可以发送消息116,作为发起对短码(x11)的呼叫的一部分,并且可以使用移动设备102的估计位置来确定短码要被翻译成的“长号码”,以便适当的接收终端进行联系。其他下游操作包括基于移动设备102所位于的位置(例如,哪个国家)确定向订户114收费多少(即,费率)、授权访问服务,诸如多媒体电话服务如wi-fi呼叫或者在用户114(例如,家庭成员)同意的情况下向授权的第三方提供估计位置。

图3是根据各个实施例的移动设备102的示例性架构的框图。如图所示,移动设备102可以包括一个或更多个处理器300和一种或更多种形式的计算机可读存储器302。移动设备102还可以包括附加的存储设备。这样的附加存储可以包括可移除存储304和/或不可移除存储306。

移动设备102还可以包括输入设备308,其包括但不限于触摸屏(例如,触摸或基于接近的)显示器、物理按钮(例如,键盘或按键)、配置为接收来自用户的手势输入的基于相机的传感器、用于从用户接收语音输入命令的麦克风或麦克风阵列、定点设备(例如,鼠标、笔、触针等)或与处理器300和计算机可读存储器302可通信地耦合的任何其它合适的输入设备308。移动设备102还可以包括输出设备310,其包括但不限于显示器、扬声器、打印机或与处理器300和计算机可读存储器302可通信地耦合的任何其它合适的输出设备。

移动设备102还可以包括通信连接312,其允许移动设备102例如经由网络与其他计算设备314通信。通信连接312可以在如上所述的任何合适的无线通信/数据技术、标准或协议上促进发送和接收无线信号,例如在电信网络上使用许可的、半许可的或非许可的频谱。例如,通信连接312可以表示蜂窝无线电、无线(例如,基于ieee802.1x的)接口、蓝牙接口等中的一个或更多个。

在各个实施例中,计算机可读存储器302通常包括易失性存储器和非易失性存储器(例如随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eeprom)、闪存、微型硬盘驱动器、存储卡、光存储、磁带盒、磁带、磁盘存储或其他磁存储设备或任何其他介质)两者。计算机可读存储器302还可以被描述为计算机存储介质,并且可以包括以用于存储信息的以任何方法或技术实现的易失性和非易失性的、可移除和不可移除的介质,诸如计算机可读指令、数据结构、程序模块或其他数据。计算机可读存储器302、可移除存储304和不可移除存储306都是计算机可读存储介质的示例。计算机可读存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、光盘只读存储器(cd-rom)、数字通用盘(dvd)或其他光存储、磁带盒、磁带、磁盘存储或其他磁存储设备或可用于存储所需信息并且可由移动设备102访问的任何其它介质。任何这样的计算机可读存储介质可以是移动设备102的一部分。

在一些实施例中,计算机可读存储器302可以包括操作系统316、蜂窝基站捕获模块318和ims客户端320以及其他可能的模块、数据结构和/或处理器可读指令。蜂窝基站捕获模块318可以被配置为经由通信连接312(例如蜂窝无线电)获得移动设备102的通信范围内的蜂窝基站的蜂窝捕获120。以这种方式,移动设备102被配置为在多个不同时间(例如,周期性地)获得多个蜂窝捕获120,并且所获得的蜂窝捕获120可以被存储在高速缓存(或其他合适的存储器)中作为高速缓存的蜂窝捕获322。被高速缓存的蜂窝捕获322可以与蜂窝时间戳208相关联,如图2所示。

ims客户端320可以被配置为生成和发送消息116,诸如参考图1和图2讨论的sip请求,以及来自ims核心网络104的节点124的解释(interpret)响应(例如,sip响应)。例如,ims客户端320可以被配置为在经由通信连接312(例如,通过不受信的ran108)传送之前,将一个或更多个位置id,诸如位置id118和/或位置id216插入到消息116中。因此,图3还示出了移动设备102可以包括一个或更多个位置传感器324,其被配置为为了生成位置id216的目的而确定移动设备102的大致当前位置。例如,位置传感器324可以包括gps接收器或任何其它合适的硬件传感器,可能与存储在存储器302中的其它处理器可执行指令、数据结构和/或程序模块结合,以促进位置估计。

图4是根据各个实施例的ims节点124的示例性架构的框图。如图所示,ims节点124可以包括一个或更多个处理器400和一种或更多种形式的计算机可读存储器402。ims节点124还可以包括附加的存储设备。这样的附加存储可以包括可移除存储404和/或不可移除存储406。

ims节点124还可以包括与处理器400和计算机可读存储器402可通信地耦合的输入设备408和输出设备410。ims节点124还可以包括通信连接412,其允许ims节点124诸如经由网络与其他计算设备414通信。通信连接412可以通过如本文所述的任何合适的通信/数据技术、标准或协议来促进发送和接收有线和/或无线信号。计算机可读存储器402可以包括上文描述的关于图3的存储器和计算机可读存储介质的任何形式的存储器。

在一些实施例中,计算机可读存储器402可以包括注册管理器416、位置估计器418、路由模块420和计费模块422以及其他可能的模块、数据结构和/或处理器可读指令。注册管理器416可以被配置为管理来自移动设备102的注册消息,用于注册ims核心网络104的一个或更多个基于ims的服务。例如,注册管理器416可以从移动设备102接收注册请求(例如,sip注册方法),并且可以按照需要将消息116或其中的信息转发到驻居在相同的ims节点124或不同的ims节点124上的合适的组件,诸如位置估计器418、路由模块420和/或计费模块422。注册管理器416可以基于消息116中的信息进一步准许或拒绝对基于ims的服务的访问。例如,如果消息116中的位置id118的年龄高于阈值年龄(例如,超过2小时),由于无法确定合理的当前位置估计的事实,注册管理器416可以拒绝对移动设备102的一个或更多个基于ims的服务的访问。这在例如当移动设备108已经超出蜂窝覆盖很长时间并且在注册基于ims的服务时由于诸如此类的原因而无法确定其自己的位置时可能发生。

位置估计器418可以被配置为估计移动设备102的当前位置,其发送由注册管理器416接收的消息116。位置估计器418可以使用包含在消息116中的位置id118和/或位置id216以及一个或更多个预定义的规则来估计位置,参照图2的示意图描述的(例如,点位置和周围形状位置估计)。例如,使用用户114被预测为以某速度行进(或者被预测为在给定的时间单位内覆盖一定量的距离)的规则,位置估计器418可以基于包含在消息116中的位置id118的年龄确定半径的长度r1,如图2所示。

在位置id118被包括在消息头204中且位置id216也被包括在消息体206中的情况下,位置估计器418可以遵从(defer)/默认使用位置id118或位置id216中的一个或另一个,以使用优选位置id来估计位置。在其他实施例中,位置估计器418可以基于报头204中的位置id118来确定第一位置估计,并且还可以基于消息体206中的位置id216来确定第二位置估计,然后可以比较两个(即,第一和第二)位置估计,以确定两个位置估计如何相似或不同。当其两个(即,第一和第二)位置估计非常相似时,位置估计器418可以在位置估计中具有更高的受信度,在这种情况下,位置估计器418可以决定将位置估计为两个位置估计之间(例如,之间距离的一半)的某处位置。另一方面,如果两个位置估计显著不同,则位置估计器418可以推断位置估计中的至少一个是错误的,并且可以遵从统计学上比另一个位置估计更可靠的一个或另一个位置估计。

在一些实施例中,由位置估计器418确定的位置估计可以与消息116在ims核心104的节点124处被接收之前被发送所通过的不受信的ran108的组件相关联。例如,消息116可以包括消息116被发送所通过的不受信的ran108的wi-fiap200的mac地址。利用该信息,位置估计器418可以将其对移动设备102的当前位置的估计与wi-fiap200的mac地址相关联,并且可以使该数据被存储为wi-fiap位置映射数据424。因此,随着从附加移动设备116接收到更多的消息116,通过相同的wi-fiap200传送消息116,ims节点124可以开始更好地了解wi-fiap200位于哪里。也就是说,随着越来越多的消息116被接收,wi-fiap位置映射数据424将具有与给定的wi-fiap200相关联的多个位置估计,并且可以分析该数据以确定wi-fiap200的位置估计。以这种方式,随着时间的推移可以了解不受信的ran108设备的位置,以开发可能对ims核心网络104的组件有用的不受信的ran108基础设施的映射。

路由模块420可以被配置为基于由位置估计器418估计的位置将由移动设备102发起的业务(例如,呼叫、sip请求等)路由到合适的接收终端。例如,一些呼叫,例如短码或x11拨号(例如,211、411、911等)将被基于位置路由到与合适的接收终端位置相关联的“长号码”。在911紧急情况下,ims节点124可以访问订户114的指定的“家庭/911位置”,并且因此可以使用来自位置估计器418的位置估计来确定订户114是否在他/她的家庭位置。如果订户114处于距离他/她的家庭位置的阈值距离内,则路由模块420可以遵从家庭位置作为位置估计,因为家庭位置可以是发送公共安全用于调度的可能性最大的位置。另一方面,如果订户114超出了他/她的家庭位置的阈值距离,则来自位置估计器418的位置估计可以用于紧急调度,和/或可以遍历可能位置的分级列表以确定订户114所处的位置。在某些情况下,在接收到订户114的同意后,路由模块420可以将来自位置估计器418的位置估计路由到授权的第三方,例如家庭成员。

计费模块422可以被配置为基于由位置估计器418估计的当前位置来确定订户的计费费率(即,每单位时间向订户114收费多少以使用基于ims的服务)。由于呼叫费率(例如,移动电话服务费率)可能因位置(例如,漫游网络等)而变化,所以来自位置估计器418的位置估计可以促进对订户在不受信的ran108上使用基于ims的服务的合理计费。在一些实施例中,计费模块422促进创建准确的呼叫详细记录(cdr)。时区可以从位置导出,并且可以由计费模块422用于评级。

示例性过程

本公开中描述的过程可以由本文所描述的架构或其他架构来实现。这些过程被例示为逻辑流程图中块的集合。一些块表示可以用硬件、软件或其组合实现的操作。在软件的情况下,块表示存储在一个或更多个计算机可读存储介质上的计算机可执行指令,当其由一个或更多个处理器执行时,执行所述操作。通常,计算机可执行指令包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。描述操作的顺序不旨在被解释为限制,并且任何数量的所述块可以以任何顺序或并行组合以实现该过程。应当理解,以下过程也可以在其他架构上实现。

图5示出了用于从移动设备102生成消息116并将其从移动设备102发送到ims核心网络104的示例性过程500的流程图,该消息116包括指示移动设备102的当前位置的位置id。过程500可以由移动设备102和移动设备102的相关组件(诸如ims客户端320)来实现。

在502,移动设备102可以获得指示移动设备102的当前位置的位置标识符(id)。例如,移动设备102可利用蜂窝无线电接口来确定移动设备102的通信范围内的蜂窝基站,和/或移动设备102可以利用位置传感器324(例如,gps接收器)、客户端应用或其组合来在502处近似移动设备102的当前位置。

在504,移动设备102的ims客户端320可以通过将在502处获得的位置id包含在消息116内来生成消息116。如图2所示,这可以包括将位置id118(例如,最近的蜂窝基站202的cid)插入到消息头204中和/或将位置id216插入到消息体206中。在一些实施例中,在504处生成的消息116包括sip请求(例如,sip注册方法)。

在506,消息116可以通过不受信的非3gppran108由移动设备102传送到ims核心网络104的节点124。例如,消息116可以在506处通过不受信的wi-firan108被传送,例如当移动设备102尝试注册wi-fi呼叫服务时。过程500允许移动设备102传送具有位置id(即,位置id118和/或位置id216)的消息116,使得可以由ims核心网络104的节点124确定移动设备102的当前位置。

图6示出了用于从移动设备102生成消息116并将其从移动设备102传送到ims核心网络104的更详细的示例性过程600的流程图,该消息116包括指示移动设备102的当前位置的位置id。过程600可以由移动设备102和移动设备102的相关组件(诸如ims客户端320)来实现。

在602,移动设备102可以获得并高速缓存与指示获得cid的时间的蜂窝时间戳208相关联的蜂窝捕获120。蜂窝捕获120可至少包括如上所述的移动设备102的通信范围内的蜂窝基站的cid,诸如最近的蜂窝基站202。

在604,移动设备102保持蜂窝捕获一段时间,例如通过监视时钟或定时器。在一个示例中,移动设备102可以在几个小时(例如,2小时)的时间段之后终止蜂窝捕获。步骤602和604可以随着时间的推移而迭代,并且随着移动设备102在区域周围移动,使得可以随着时间推移获得移动设备102可见的蜂窝捕获120的列表。

在606,移动设备102的ims客户端320可以生成消息116,其作为基于ims的服务的注册的一部分(例如,sip注册方法)将被发送到ims核心网络104的节点124。在606处生成的消息116可以是另一类型的消息,诸如sip邀请方法、sip传递消息方法或任何其他合适类型的消息116。

在608,可以确定蜂窝基站对于移动设备102是否可见(即,是否在蜂窝通信范围内)。如果可见,则蜂窝基站捕获模块318可以捕获当前可见的蜂窝基站(例如,距离移动设备102最近的蜂窝基站)。如果蜂窝基站当前不可见(例如,如果移动设备102当前没有运营商网络的蜂窝覆盖),则ims客户端320可以在612处将来自最近的蜂窝捕获120的数据(例如,cid)插入高速缓存中以及将相关联的蜂窝时间戳208插入消息头204中。可选地,如果在消息生成时存在在610处被捕获的当前可见的蜂窝基站(即,608处为“是”的路径),则在步骤612插入到消息头204中的最近的数据包括当前可见的蜂窝基站的数据(例如,cid),以及根据610处的蜂窝捕获的蜂窝时间戳。

在614,可以确定移动设备102是否能够确定它自己的位置。例如,如果gps接收器可以获得当前的地理位置(例如,纬度和经度坐标),或者如果应用接收到来自用户114或众包技术的输入,则移动设备102的当前位置可以由移动设备102进行近似并在步骤616处被插入到消息体206中。

在616处将当前移动设备102的位置插入到消息体中之后,或者如果在614处不能获得当前位置,则ims客户端320在618处传送消息116,其中消息116的报头204中包括注册时间戳210,消息116通过不受信的非3gppran108(例如,wi-firan108)被发送到ims核心网络104的节点124。过程600导致消息116通过不受信的ran108从移动设备102被传送到ims核心104,消息116包括消息头204中的至少一个位置id118,以及如果可能的话,消息体206中的附加位置id216。

图7示出了基于从移动设备102接收的消息116的位置id来估计移动设备102的当前位置的示例性过程700的流程图。过程700可以由ims核心网络104的一个或更多个节点124和ims网络104的相关组件(诸如位置估计器418)来实现。

在702,ims核心104的节点124可以从移动设备102接收消息116,其通过不受信的非3gppran108(例如,wi-firan108)被接收到。

在704处,一个或更多个位置id,诸如在图2的消息头204中示出的位置id118和/或在图2的消息体206中示出的位置id216,可以从消息116识别和提取。

在706,位置估计器418可以基于从消息116中提取的一个或更多个位置id估计发送消息116的移动设备102的当前位置。例如,如上文关于图2所述,可以在706处确定表达点位置估计的不确定性的点位置和定义大小的形状。当消息116包括两个位置id(例如,报头204中的位置id118和主体206中的位置id216)时,位置估计器418可以基于每个位置id来确定个体位置估计,并且可以将两个位置估计进行比较,以便可以确定位置估计的准确性和/或默认为一个或另一个。

图8示出了用于基于从移动设备102接收的消息116的位置id来估计移动设备102的当前位置以及准许或拒绝对基于ims的服务的注册/访问的更详细示例性过程800的流程图。过程800可以由ims核心网络104的一个或更多个节点124和ims网络104的相关组件(诸如位置估计器418)来实现。

在802,ims核心104的节点124可以从移动设备102接收注册消息116,其通过不受信的非3gppran108(例如,wi-firan108)被接收到。在804,可以从消息头204中提取位置id118,诸如蜂窝基站的cid。

在806,可以基于其年龄确定位置id118是否过期。例如,可以计算注册时间戳210和蜂窝时间戳208之间的差以确定位置id118的年龄,并且可以将该年龄与阈值年龄进行比较以确定位置id118是否过期。如果位置id118过期(例如,超过5小时),注册管理器416可以在808处拒绝注册请求或以其他方式拒绝对所请求的基于ims的服务(例如,多媒体电话服务)的访问。这可能是由于移动设备102的当前位置不能从已过期(即,太旧)的位置id118被合理地估计的事实。

如果在806处确定位置id118未过期,则注册管理器416可以在步骤810处准许对基于ims的服务的访问,例如通过批准注册请求。在812,可以从消息体206提取附加位置id216(如果存在)。

在814,位置估计器418可以基于从消息头204提取的位置id118或者从消息体206提取的位置id216中的一个或两个来估计发送消息116的移动设备102的当前位置。例如,可以选择消息中提供的两个中的默认位置id来估计移动设备的位置。可选地,可以从位置id118和216中的每一个进行个体位置估计,并且比较位置估计以确定位置估计彼此之间的距离。如果它们在彼此的阈值距离内,则可以选择一个或另一个位置估计,或者可以基于两者进行位置估计(例如,两个估计之间距离的一半)。如果两个估计显著不同,那么可以在两者之间选择已知的、更可靠的估计,另一个则被抛弃。

在816,可以从消息头204中提取与不受信的ran108相关联的wi-fiap200的mac地址或类似的标识符。在818,位置估计器418可以存储在814处估计的与wi-fiap200的mac地址相关联的位置,以便了解wi-fiap200可能位于何处。

本文描述的环境和个体元件当然可以包括许多其它逻辑的、程序化的和物理的组件,其中附图中示出的仅仅是与本文讨论相关的示例。

在给出的示例中,本文描述的各种技术假定要在计算机可执行指令或软件(例如程序模块)的一般环境中实现,所述计算机可执行指令或软件存储在计算机可读存储中并且由一个或更多个计算机或其他设备的处理器可执行,如图中所示的那些。通常,程序模块包括例程、程序、对象、组件、数据结构等,并且定义用于执行特定任务或实现特定抽象数据类型的操作逻辑。

其他架构可以用于实现所描述的功能,并且意图在本公开的范围内。此外,虽然上文为了讨论目的定义了具体的责任分配,但是根据情况,各种功能和责任可能会以不同的方式进行分配和划分。

类似地,软件可以使用不同的方法以各种方式存储和分配,并且上述特定的软件存储和执行配置可以以多种不同的方式变化。因此,实现上述技术的软件可以分布在各种类型的计算机可读介质上,不限于具体描述的存储器的形式。

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