Ip双模终端中不同通信系统之间的无缝切换的管理的制作方法_3

文档序号:9420313阅读:来源:国知局
网络接口模块N11,在一个优选实施例中是通用移动通信系统(UMTS)模块,通过具有第一 IP地址IP1_P1的第一物理网络接口 Phll可访问,并且适于通过第一无线通信网络(在本实施例中是UMTS)接收和发射输入和输出的TCP/IP数据分组;
[0034].第二物理网络接口模块N12,在一个优选实施例中是无线局域网(WLAN)调制解调器,通过具有第二 IP地址IP1_P2的第二物理网络接口 phl2可访问,并且适于通过第二无线通信网络(在本实施例中是WLAN)接收和发射输入和发射输出的TCP/IP数据分组;
[0035].传输控制协议/网际协议(TCP/IP)栈,适合于在用户的软件应用和第一及第二物理网络接口模块NI 1、N12之间操作;和
[0036].由操作系统的内核的一个模块(下面称为虚拟网络接口模块Ml)提供的具有虚拟IP地址IP1_V1的虚拟网络接口 virtll,适合于在TCP/IP协议栈和第一及第二物理网络接口模块Nil,N12之间操作,从而根据预定的资源管理策略,例如,根据物理网络接口模块Nll或N12中的哪一个的传播条件最佳,通过物理网络接口 phll或phl2接收和发射输入和输出的TCP/IP数据分组。
[0037]在其它实施例中,物理网络接口模块可适合于按照除UMTS或WLAN外的通信系统,例如按照下述之一或多个:GSM、CDMA2000、WiMAX、蓝牙,或者任何其它适当的无线通信系统,或次优选的有线通信系统,与基于IP的网络通信。
[0038]类似地,远程终端T2(在图1中所示的例子中是单模终端)在内核空间中包括:
[0039].可通过具有IP地址ΙΡ2_Ρ1的物理网络接口 ph21访问,并且适合于通过无线通信网络接收和发射输入和输出的数据分组的物理网络接口模块N21。在优选实施例中,物理网络接口模块N21可以是与UMTS通信网络连接的UMTS模块。在一个不同的实施例中,远程终端T2可以是与局域网(LAN)连接的服务器或终端。在后一情况下,物理网络接口模块N21可以是连接到局域网(LAN)的以太网卡;
[0040].适合于在用户的软件应用和物理网络接口模块N21之间操作的TCP/IP协议栈;和
[0041].具有虚拟IP地址IP2_V1并且由操作系统的内核的一个模块(下面称为虚拟网络接口模块M2)提供的虚拟网络接口 virt21,适合于在TCP/IP协议栈PS和物理网络接口模块N21之间操作,从而通过物理网络接口 ph21接收和发射输入和输出的TCP/IP数据分组。
[0042]另一方面,远程终端T2本身可以是能够通过两个不同的物理网络接口模块(例如,和前面关于双模终端Tl说明的类似),与基于IP的网络通信的双模终端。
[0043]在一个优选实施例中,每个虚拟IP地址唯一地识别相应终端中的虚拟网络接口。通过与网络运营商提供的远程服务器,例如DHCP (动态主机配置协议)服务器的连接,该虚拟IP地址可被静态或动态地分配给虚拟网络接口。一旦终端连接到因特网,就能够通过物理网络接口 Phll或者phl2中的一个建立与远程服务器的连接。
[0044]双模终端Tl和远程终端T2在用户空间中各自分别包括:
[0045]?一个或多个用户的软件应用Al、A2 ;和
[0046].信令软件应用,下面称为连接管理器Cl、C2。
[0047]特别地,双模终端Tl的连接管理器Cl具有下述任务:
[0048]-管理第一和第二物理网络接口phll和phl2。具体地说,连接管理器Cl与WLAN和UMTS物理网络接口 Nll和N12对话,以监视其链路质量。关于哪个接口将被用于数据分组发射和接收的决定是以报告的接收信号强度指示(RSSI)值为基础的。
[0049]-管理活动的端对端连接。具体地说,连接管理器Cl处理与远程终端T2的连接,并且一般而言是与支持IP会话连续性的所有远程终端的连接,向远程终端T2提供双模终端Tl的物理和虚拟网络接口 phll, phl2和Virtll的虚拟和物理IP地址IP1_P1、IP1_P2和IP1_V1,并且当发生物理网络接口 phll和phl2之间的切换时,用信号通知该事件。在一个优选实施例中,通过TCP连接,把物理网络接口 phll和phl2之间的切换用信号通知远程终端T2,该TCP连接始终被保持在UMTS网络上,因为该网络比WLAN网络更可靠。
[0050]更具体地说,就第一项任务来说,双模终端Tl的连接管理器Cl与UMTS和WLAN物理网络接口模块NI I和N12对话,并定期检查这两个连接的状态,以便决定哪个物理网络接口模块将被用于数据传输。用于选择最佳连接的算法可由网络运营商配置。在一个优选实施例中,每当可获得RSSI水平高于保证良好QoS的某一阈值的WLAN连接时,就选择与该WLAN的连接。如果WLAN网络的RSSI低于所述阈值,那么连接管理器Cl检查UMTS网络的存在性,并且把双模终端Tl的虚拟网络接口 Virtll切换到UMTS网络。在另一实施例中,可以使用双重阈值:当WLAN网络的RSSI低于第一阈值时,连接管理器Cl检查UMTS网络的存在性,并开始发送短的假数据分组以便“预热”该连接。这样做是为了避免在数据连接的建立过程中,由UMTS网络引入的额外延迟。借助这些假数据分组传输,当要求切换时,UMTS链路将是充分可用和响应的。如果WLAN的RSSI继续下降,并且低于第二阈值时,则发生链路切换。
[0051]可以采用另外的或者备选的资源管理策略来选择将用于数据传输的连接(例如,当两个连接的传输质量都良好时)以例如优化与相应网络接口链接的两个通信系统上可用的无线电资源的使用。
[0052]就第二项任务来说,双模终端Tl的连接管理器Cl与远程终端T2的连接管理器C2交换信令信息。图2表示在通信会话期间,双模终端Tl和远程终端T2的连接管理器Cl和C2之间的消息交换。
[0053]每当在双模终端Tl上运行的应用程序Al请求开放与支持IP会话连续性的远程终端(在图1中所示的例子中,远程终端T2)的连接时,连接管理器Cl向连接管理器C2发送包含开放连接的请求的“开放消息”。假定连接管理器Cl确定第一物理网络接口 phll提供最佳连接,则开放消息呈“Open(IPl_Pl,IP1_V1) ”的形式,其中指定双模终端Tl中将被用于数据分组传输的第一物理网络接口 Phll的IP地址,和双模终端Tl中的虚拟网络接口Virtll的IP地址。这样,远程终端T2被告知双模终端Tl希望开始IP会话,并且双模终端Tl使用具有IP地址IP1_V1的虚拟网络接口,该虚拟网络接口通过具有IP地址IP_P1的物理网络接口传送数据分组。该第一消息包含信令数据分组,所述信令数据分组是在更可靠的链路,比如UMTS链路上通过TCP信道发送的(如果双模终端Tl是3g-WLAN双模手机的话),并且被远程终端T2的物理网络接口模块N21接收。
[0054]在一个优选实施例中,物理网络接口模块N21的驱动器监视接收的的所有数据分组,并把它们传给下面称为vrit_change函数的函数,该函数由远程终端T2的操作系统的内核空间的模块M2导出,并检查接收的数据分组是否寻址到连接管理器C2正在那里等待消息的远程终端T2的TCP端口。如果情况如此,那么Virt_Change函数解析该消息,并提取模块M2正确运行所需的信息。借助该解决方案,模块M2读取在连接管理器Cl和C2之间交换的信令信息,并独立配置它自己。连接管理器C2用包含呈“Acc印t(IP2_Pl,IP2_VI)”形式的接受报告的“接受消息”,来答复双模终端Tl,在所述接受报告中,指定了远程终端T2中的虚拟网络接口 virt21的IP地址IP2_V1和远程终端T2中的物理网络接口 ph21的IP地址IP2_P1。
[0055]在另一实施例中,开放请求被连接管理器C2接收,连接管理器C2通过由虚拟驱动器暴露的适当方法(例如,1ctl调用,参见J.Corbet,A.Rubini,G.Kroah-Hartman编辑的“Linux Device Drivers”,O’Reilly),配置模块M2,并且随后以接
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1