欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> VOIP通话方法、装置、系统、设备及可读存储介质独创技术37436字

VOIP通话方法、装置、系统、设备及可读存储介质

2021-03-24 10:01:26

VOIP通话方法、装置、系统、设备及可读存储介质

  技术领域

  本申请涉及VOIP技术领域,特别涉及一种VOIP通话方法、装置、系统、电子设备及计算机可读存储介质。

  背景技术

  随着移动互联网技术的发展,对传统移动终端的语音通话业务带来的巨大的冲击。

  VOIP技术是一种网络通话技术,其特点是借助物联网的网际协议来实现通话双方之间语音数据的传输。现有VOIP技术实现网络通话的流程示意图可参见图1。传统方式中,通话双方是借助由运营商提供的电话网络来实现语音数据的传输,由于需要架设专线,所以资费较高。而VOIP技术利用成熟的移动通信网络来传输语音数据,可以实现更低的资费,因此逐渐受到更多用户的青睐。

  虽然通过VOIP技术可以带来更低的资费,但其与传统的通过电话网络进行语音通话的方式相比,还是存在一个明显的缺陷,即基于VOIP技术实现的语音通话的通话质量受网络环境质量的影响较大。从图1中可以看出,网络电话在通话过程中,语音数据会通过媒体服务器进行中转、交互最终达到通话对端,而不同用户的终端到媒体服务器之间的网络状况千差万别,且由于网络环境的复杂性和波动性,绝大多数情况下,基于此技术实现的语音通话的通话质量都不如传统方式。受限于这一问题,VOIP技术在应用方面发展缓慢。

  因此,如何尽可能的提升基于VOIP技术的语音通话质量,是本领域技术人员亟待解决的问题。

  发明内容

  本公开的目的是提供一种VOIP通话方法、装置、系统、电子设备及计算机可读存储介质,旨在尽可能的提升基于VOIP技术进行的语音通话的通话质量。

  为实现上述目的,本公开首先提供了一种VOIP通话方法,应用于CDN控制节点,该方法包括:

  接收信令服务器发来的发起端以及响应端的IP地址;

  根据所述IP地址确定与所述发起端和所述响应端分别对应的目标CDN节点;

  将两个所述目标CDN节点的访问地址返回至所述信令服务器,以便在所述信令服务器将两个所述访问地址分别返回至对应的发起端和响应端后,所述发起端和所述响应端分别通过接收到的访问地址与对应的目标CDN节点建立连接,并通过各自的目标CDN节点与目标媒体服务器建立通话通路。

  可选的,根据所述IP地址确定与所述发起端和所述响应端分别对应的目标CDN节点,包括:

  根据所述发起端和所述目标媒体服务器的IP地址确定与所述发起端对应的目标CDN边缘节点;

  根据所述响应端和所述目标媒体服务器的IP地址确定与所述响应端对应的目标CDN边缘节点。

  可选的,根据所述发起端和所述目标媒体服务器的IP地址确定与所述发起端对应的目标CDN边缘节点,包括:

  根据所述发起端的IP地址确定对应的第一CDN边缘节点集;

  根据所述目标媒体服务器的IP地址确定对应的第二CDN边缘节点集;

  对所述第一CDN边缘节点集和所述第二CDN边缘节点集求交集,得到第三CDN边缘节点集;

  从所述第三CDN边缘节点集中确定出与所述发起端对应的目标CDN边缘节点。

  可选的,从所述第三CDN边缘节点集中确定出与所述发起端对应的目标CDN边缘节点,包括:

  获取所述第三CDN边缘节点集中每个第三CDN边缘节点距所述发起端的第一距离和距所述目标媒体服务器的第二距离;

  分别做每个所述第三CDN边缘节点的第一距离与第二距离的商,得到各距离比值;

  将拥有满足预设要求的距离比值的第三CDN边缘节点确定为所述发起端的目标CDN边缘节点。

  可选的,当拥有满足所述预设要求的距离比值的第三CDN边缘节点的数量大于1时,将拥有满足预设要求的距离比值的第三CDN边缘节点确定为所述发起端的目标CDN边缘节点,包括:

  将拥有满足所述预设要求的距离比值的各第三CDN边缘节点均标记为备选第四CDN边缘节点;

  统计每个所述第四CDN边缘节点的距离比值超出所述预设要求的幅度;

  将拥有最大幅度的第四CDN边缘节点确定为所述发起端的目标CDN边缘节点。

  可选的,根据所述IP地址确定与所述发起端和所述响应端分别对应的目标CDN节点,包括:

  根据所述发起端的IP地址确定与所述发起端对应的目标CDN边缘节点;

  根据所述响应端的IP地址确定与所述响应端对应的目标CDN边缘节点。

  可选的,根据所述发起端的IP地址确定与所述发起端对应的目标CDN边缘节点,包括:

  根据所述发起端的IP地址确定所述发起端的第一位置;

  将各CDN边缘节点中位置距所述第一位置最近的CDN边缘节点确定为与所述发起端对应的目标CDN边缘节点。

  为实现上述目的,本申请还提供了一种VOIP通话装置,应用于CDN控制节点,该装置包括:

  位置信息及双端IP地址接收单元,用于接收信令服务器发来的发起端以及响应端的IP地址;

  目标CDN节点确定单元,用于根据所述IP地址确定与所述发起端和所述响应端分别对应的目标CDN节点;

  访问地址返回单元,用于将两个所述目标CDN节点的访问地址返回至所述信令服务器,以便在所述信令服务器将两个所述访问地址分别返回至对应的发起端和响应端后,所述发起端和所述响应端分别通过接收到的访问地址与对应的目标CDN节点建立连接,并通过各自的目标CDN节点与目标媒体服务器建立通话通路。

  可选的,所述目标CDN节点确定单元包括:

  发起端目标边缘节点集第二确定模块,用于根据所述发起端和所述目标媒体服务器的IP地址确定与所述发起端对应的目标CDN边缘节点;

  响应端目标边缘节点集第二确定模块,用于根据所述响应端和所述目标媒体服务器的IP地址确定与所述响应端对应的目标CDN边缘节点。

  可选的,所述发起端目标边缘节点集第二确定模块包括:

  第一CDN边缘节点集确定子模块,用于根据所述发起端的IP地址确定对应的第一CDN边缘节点集;

  第二CDN边缘节点集确定子模块,用于根据所述目标媒体服务器的IP地址确定对应的第二CDN边缘节点集;

  求交集子模块,用于对所述第一CDN边缘节点集和所述第二CDN边缘节点集求交集,得到第三CDN边缘节点集;

  发起端目标边缘节点集第二确定子模块,用于从所述第三CDN边缘节点集中确定出与所述发起端对应的目标CDN边缘节点。

  可选的,所述发起端目标边缘节点集第二确定子模块包括:

  距离获取组件,用于获取所述第三CDN边缘节点集中每个第三CDN边缘节点距所述发起端的第一距离和距所述目标媒体服务器的第二距离;

  距离比值计算组件,用于分别做每个所述第三CDN边缘节点的第一距离与第二距离的商,得到各距离比值;

  发起端目标CDN边缘节点确定组件,用于将拥有满足预设要求的距离比值的第三CDN边缘节点确定为所述发起端的目标CDN边缘节点。

  可选的,所述发起端目标CDN边缘节点确定组件包括:

  第四CDN边缘节点标记子组件,用于当拥有满足所述预设要求的距离比值的第三CDN边缘节点的数量大于1时,将拥有满足所述预设要求的距离比值的各第三CDN边缘节点均标记为备选第四CDN边缘节点;

  超出幅度统计子组件,用于统计每个所述第四CDN边缘节点的距离比值超出所述预设要求的幅度;

  发起端目标CDN边缘节点确定子组件,用于将拥有最大幅度的第四CDN边缘节点确定为所述发起端的目标CDN边缘节点。

  可选的,所述目标CDN节点确定单元包括:

  发起端目标边缘节点集第一确定模块,用于根据所述发起端的IP地址确定与所述发起端对应的目标CDN边缘节点;

  响应端目标边缘节点集第一确定模块,用于根据所述响应端的IP地址确定与所述响应端对应的目标CDN边缘节点。

  可选的,所述发起端目标边缘节点集第一确定模块包括:

  发起端位置确定子模块,用于根据所述发起端的IP地址确定所述发起端的第一位置;

  距离最近CDN边缘节点确定子模块,用于将各CDN边缘节点中位置距所述第一位置最近的CDN边缘节点确定为与所述发起端对应的目标CDN边缘节点。

  为实现上述目的,本申请还提供了一种VOIP通话系统,该系统包括:

  CDN控制节点、信令服务器、客户端、多个CDN节点和媒体服务器;其中,客户端包括发起端和响应端;

  所述CDN节点用于执行如上述的VOIP通话方法;

  所述信令服务器向所述CDN控制节点发送所述发起端以及所述响应端的IP地址,接收所述CND控制节点返回的所述发起端和所述响应端分别对应的目标CDN节点的访问地址;

  所述发起端和所述响应端分别提高接收到的访问地址与对应的目标CDN节点建立连接,并通过各自的目标CDN节点与目标媒体服务器建立通话通路;

  所述目标CDN节点为所述多个CDN节点中的节点;所述目标媒体服务器为所述媒体服务器中的一个服务器。

  为实现上述目的,本公开还提供了一种电子设备,该电子设备包括:

  存储器,其上存储有计算机程序;

  处理器,用于执行所述存储器中的所述计算机程序,以实现如上述内容所描述的VOIP通话方法。

  为实现上述目的,本公开还一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述内容所描述的VOIP通话方法。

  本公开提供了一种VOIP通话方法,应用于CDN控制节点,该方法包括:接收信令服务器发来的发起端以及响应端的IP地址;根据所述IP地址确定与所述发起端和所述响应端分别对应的目标CDN节点;将两个所述目标CDN节点的访问地址返回至所述信令服务器,以便在所述信令服务器将两个所述访问地址分别返回至对应的发起端和响应端后,所述发起端和所述响应端分别通过接收到的访问地址与对应的目标CDN节点建立连接,并通过各自的目标CDN节点与所述目标媒体服务器建立通话通路。

  根据本公开提供的上述技术方案可以看出,为尽可能的提升基于VOIP技术进行的语音通话的通话质量,本申请在现有VOIP技术基础上,将CDN加速网络引入了进来,即借助由CDN控制节点和多个CND加速节点构成的CDN加速网络来帮助通话双端(发起端和响应端)与媒体服务器之间传输语音数据。引入CDN加速网络后,通话双端分别通过与各自对应的CDN节点间接向媒体服务器传输语音数据,借助CDN加速网络的特性,可拥有更快的传输速度、更少的中间路由次数、更强的抗网络波动能力,并带来更好的语音通话质量。

  本公开还同时提供了一种VOIP通话系统、电子设备及计算机可读存储介质,具有相同的有益效果,在此不再赘述。

  附图说明

  为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

  图1为现有VOIP技术为通话双端提供基于网络的语音通话的流程示意图;

  图2为本公开实施例提供的一种VOIP通话方法的流程图;

  图3为本公开实施例提供的另一种VOIP通话方法的流程图;

  图4为与图3对应的一种改进后的VOIP技术为通话双端提供基于网络的语音通话的流程示意图;

  图5为本公开实施例提供的VOIP通话方法中一种确定目标CDN边缘节点的方法的流程图;

  图6为本公开实施例提供的VOIP通话方法中另一种确定目标CDN边缘节点的方法的流程图;

  图7为本公开实施例在图6所示方案的基础上提供的一种具体的确定与发起端对应的目标CDN边缘节点的方法的流程图;

  图8为本公开实施例在图7所示方案的基础上提供的一种具体的从多个第四CDN边缘节点中选出合适作为与发起端对应的目标CDN边缘节点的方法的流程图;

  图9为本公开实施例提供的一种VOIP通话装置的结构框图;

  图10为本公开实施例提供的一种电子设备的结构示意图;

  图11为本公开实施例提供的一种VOIP通话系统的结构框图。

  具体实施方式

  本公开的目的是提供一种VOIP通话方法、系统、电子设备及计算机可读存储介质,旨在尽可能的提升基于VOIP技术进行的语音通话的通话质量。

  为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

  实施例一

  请参见图2,图2为本公开实施例提供的一种应用于CDN控制节点的VOIP通话方法的流程图,其包括以下步骤,以下各步骤的执行主体均为CDN加速网络中的CDN控制节点,该CDN控制节点与信令服务器建立有通信连接:

  S101:接收信令服务器发来的发起端以及响应端的IP地址;

  CDN控制节点接收由信令服务器发来的通话的发起端、响应端的IP地址。当然,也可包括提供媒体服务的目标媒体服务器的IP地址。其中,目标媒体服务器是信令服务器在多个媒体服务器选出的其中一个适合中转本次通话的语音数据的媒体服务器,选取方式为根据本次通话的发起端和响应端的特征信息。不同的IP地址则用于作为终端和服务器的连接信息,以便基于IP地址与相应的终端或服务器建立通信。

  同时,在某些场景下,除IP地址之外,往往还需要加上相应的端口号,才能与相应的终端或服务器建立通信,此处并不做具体限定,可根据实际情况灵活选择。

  需要说明的是,在实现VOIP通话的整个过程中,本步骤并不是第一步,在本步骤之前还有一些步骤,以下将对这些之前的步骤进行说明,以方便理解该CDN控制节点为什么能够从信令服务器接收到的目标媒体服务器、发起端以及响应端的IP地址:

  第一步:通话的发起端向信令服务器发起与响应端的通话请求;

  其中,该通话请求中包含有发起端自身的IP地址和响应端注册在信令服务器上的身份识别信息。

  第二步:信令服务器转发该通话请求给该响应端;

  信令服务器在自身数据库中查询与该身份识别信息对应的响应端的IP地址,并通过该IP地址将该通话请求转发给该响应端。

  第三步:当响应端同意该通话请求时,向信令服务器回复同意该通话请求的回复信息;

  第四步:当确定本次通话可以建立时,信令服务器根据该发起端和响应端的特征信息在多个媒体服务器中选取出一个合适的,作为目标媒体服务器来中转本次通话的通话双端的语音数据。

  信令服务器通常是根据发起端和响应端的IP地址来将距两者均合适的媒体服务器选作为目标媒体服务器的,该信令服务器中也实现存储有多个或所有媒体服务器的相关信息,例如位置信息、IP地址(也可以间接确定位置)等,以通过这些确定出作为本次目标媒体服务器。

  上述步骤已被如图1所示的现有技术实现,此处仅是帮助了解CDN控制节点如何能够从信令服务器中获取到的上述信息,以便于后续步骤的展开。

  S102:根据IP地址确定与发起端和响应端分别对应的目标CDN节点;

  在S101的基础上,CDN控制节点根据获取到的IP地址来确定出与发起端和响应端分别对应的目标CDN节点。

  需要说明的是,本步骤用于确定出该目标CDN节点的基础为S101获取的IP地址,而该IP地址具体包括三项,分别为发起端的IP地址、响应端的IP地址,以及目标媒体服务器的IP地址。因此本步骤包括多种具体的方式来确定该目标CDN节点。例如以确定与发起端对应的目标CDN节点为例,在可以实现本步骤借助CDN加速网络实现有益效果的基础上,与发起端对应的目标CDN节点可以仅根据发起端的IP地址确定,也可以同时根据发起端的IP地址和目标媒体服务器的IP地址,还可以同时根据发起端、响应端以及目标媒体服务器的IP地址,不同的方式可根据基于参数的多少的不同实现略有差异的有益效果,在此不一一详细说明,后续实施例将针对其中的两种展开说明。

  为便于理解本申请的方案,此处对CDN加速网络进行介绍:

  CDN,Content Delivery Network,中文名为内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输得更快、更稳定。绝大多数CDN加速网络由少数个CDN控制节点和多个CDN加速节点构成,其中CDN控制节点用于根据实际需求确定本次应选用的CDN加速节点。各个CDN加速节点之间也根据网络层次的不同,分为CDN边缘节点和CDN非边缘节点,CDN边缘节点是所有CDN加速节点中处于最外层的CDN加速节点。

  因此,根据实际情况的需求,该目标CDN节点可以为CDN边缘节点也可以为CDN非边缘节点,此处不做具体限定。

  S103:将两个目标CDN节点的访问地址返回至信令服务器,以便在信令服务器将两个访问地址分别返回至对应的发起端和响应端后,发起端和响应端分别通过接收到的访问地址与对应的目标CDN节点建立连接,并通过各自的目标CDN节点与目标媒体服务器建立通话通路。

  在S102的基础上,CDN控制节点将确定出的两个目标CDN节点的访问地址返回至信令服务器,以使信令服务器将分别对应于发起端和响应端的访问地址分别返回至发起端和响应端,并使发起端和响应端根据接收到的访问地址与相应的目标CDN节点建立连接,而两个目标CDN节点则通过目标媒体服务器的IP地址与该媒体服务器建立连接,最终构成一条贯通的语音数据交换通路。相比于现有技术直接由发起端和响应端各自直接与媒体服务器建立的连接,本方案借助CDN加速网络的CDN控制节点的实现加速的普通的CDN节点,可使得语音数据以更少的中间路由、更快的速度、更高的抗网络波动特性在通话双端之间传输,由此带来更高的通话质量。

  需要说明的是,目标媒体服务器的IP地址可通过方式传输至两个目标CDN节点,例如可以直接随目标CDN节点的访问地址一起由信令服务器返回至发起端和响应端,并通过发起端和响应端将其告知相应的目标CDN节点;也可以直接由CDN控制节点下发给两个目标CDN节点,使得两个目标CDN节点在成功建立与发起端或响应端的通信后,直接将接收到的语音数据发送至该媒体服务器。

  基于上述技术方案,为尽可能的提升基于VOIP技术进行的语音通话的通话质量,本申请在现有VOIP技术基础上,将CDN加速网络引入了进来,即借助由CDN控制节点和多个CND加速节点构成的CDN加速网络来帮助通话双端(发起端和响应端)与媒体服务器之间传输语音数据。引入CDN加速网络后,通话双端分别通过与各自对应的CDN节点间接向媒体服务器传输语音数据,借助CDN加速网络的特性,可拥有更快的传输速度、更少的中间路由次数、更强的抗网络波动能力,并带来更好的语音通话质量。

  实施例二

  请参见图3,图3为本公开实施例提供的另一种VOIP通话方法的流程图,在实施例一的基础上,本实施例将S102中的目标CDN节点限定为S202中的目标CDN边缘节点,以充分利用CDN边缘节点相对于使用者的优点,来进一步提升通话质量,包括以下步骤:

  S201:接收信令服务器发来的目标媒体服务器、发起端以及响应端的IP地址;

  S202:根据IP地址确定与发起端和响应端分别对应的目标CDN边缘节点;

  区别于S102,本步骤确定的目标CDN边缘节点属于目标CDN节点的下位概念,即CDN边缘节点包含于CDN节点,基于CDN边缘节点的特性,结合本公开针对的应用场景,通过CDN边缘节点可进一步提升相比于使用包含CDN非边缘节点在内的CDN节点的通话质量。

  S203:将两个目标CDN边缘节点的访问地址返回至信令服务器,以便在信令服务器将两个访问地址分别返回至对应的发起端和响应端后,发起端和响应端分别通过接收到的访问地址与对应的目标CDN边缘节点建立连接,并通过各自的目标CDN边缘节点与目标媒体服务器建立通话通路。

  S201与S101相同,可参见S101中的相关说明。S203则是在S202相对于S102进行限定后,进行了适应性调整,也不再一一赘述。

  为方便理解,本实施例还通过图4提供了与图3方案对应的实现VOIP通话的流程示意图,相比于对应现有技术的图1可以看出,图4在图1的基础上新增了与信令服务器建立有通信的CDN控制节点,在CDN控制节点完成上述步骤后,可按照图4中示意出的各步骤实现本申请所提供的新型的VOIP通话方法。

  实施例三

  请参见图5和图6,图5和图6分别为本公开实施例提供的VOIP通话方法中两种不同的确定目标CDN边缘节点的方法的流程图,图5和图6提供的两种方式均是在实施例二的基础上,针对其中的S202包含的多种可行方案中的两种给出了具体的实现方式,其中图5包括以下步骤:

  S301:根据发起端的IP地址确定与发起端对应的目标CDN边缘节点;

  S302:根据响应端的IP地址确定与响应端对应的目标CDN边缘节点。

  可以看出,图5在确定与发起端或响应端对应的目标CDN边缘节点时,是仅基于发起端或响应端的IP地址来确定的,并不考虑目标媒体服务器。换句话说,是一种单纯的以通话双端为依据的目标CDN边缘节点确定方式。

  以S301确定出与发起端对应的目标CDN边缘节点为例,一种包括但不限于的具体实现方式为:

  根据发起端的IP地址确定发起端的第一位置;

  将各CDN边缘节点中位置距第一位置最近的CDN边缘节点确定为与发起端对应的目标CDN边缘节点。

  即该方式是将距离发起端最近的CDN边缘节点选取为与发起端对应的目标CDN边缘节点,以此可实现语音数据从发起端到目标CDN边缘节点的最快传输,减少了语音数据在这一过程中受网络波动造成的通话质量影响。

  图5所示的方法由于仅基于发起端或响应端的IP来确定相应的目标CDN边缘节点,处理速度较快,但由于语音数据不仅仅需要在发起端或响应端与相应的目标CDN边缘节点之间传输,还需要在目标CDN边缘节点在目标媒体服务器之间传输,因此为了整体提升通话质量,还可以将目标媒体服务器的IP也纳入考虑范围,来共用确定一个更合适的目标CDN边缘节点。可参见如图6所示的以下步骤:

  S401:根据发起端和目标媒体服务器的IP地址确定与发起端对应的目标CDN边缘节点;

  S402:根据响应端和目标媒体服务器的IP地址确定与响应端对应的目标CDN边缘节点。

  区别于图5所示的确定目标CDN边缘节点的方案,图6所示的方案不仅考虑到了发起端或响应端的IP地址,还考虑到目标媒体服务器在语音数据传输过程中的重要地位,因此也将其纳入了确定出目标CDN边缘节点的考虑因素。

  在图6所示的方案基础上,本实施例还通过图7提供了一种具体的确定与发起端对应的目标CDN边缘节点的方法,包括以下步骤:

  S501:根据发起端的IP地址确定对应的第一CDN边缘节点集;

  S502:根据目标媒体服务器的IP地址确定对应的第二CDN边缘节点集;

  S503:对第一CDN边缘节点集和第二CDN边缘节点集求交集,得到第三CDN边缘节点集;

  S504:从第三CDN边缘节点集中确定出与发起端对应的目标CDN边缘节点。

  根据上述步骤可以看出,图7所示的方案中首先分别根据发起端的IP地址和目标媒体服务器的IP地址确定出相应的第一CDN边缘节点集和第二CDN边缘节点集,之后再通过求两者交集的方式,得到同时位于两个节点集中的CDN边缘节点,最终在从它们中选取一个作为与发起端对应的目标CDN边缘节点。

  具体如何从第三CDN边缘节点集中确定出与发起端对应的目标CDN边缘节点,方式多种多样。例如可以通过随机算法随机选取一个,因为同时位于第一CDN边缘节点集和第二CDN边缘节点集,已经证明了第三CDN边缘节点集中的任意一个CDN边缘节点都有作为目标CDN边缘节点的能力。还可以按照一定的选取规则来进一步有倾向性的选取,该选取规则可以根据实际应用场景下所有可能存在的特殊要求自行制定,例如更倾向于保障语音数据从通话双端到目标CDN边缘节点这一过程的质量,就可以选取其中距离通话双端更近的作为目标CDN边缘节点;若更倾向于保障语音数据从目标CDN边缘节点到目标媒体服务器这一过程的质量,就可以选取其中距离媒体服务器更近的作为目标CDN边缘节点,当然也可以折中考虑,此处并不做具体限定。

  本实施例还通过图8提供了一种包括但不限于的具体实现方式:

  S5041:获取第三CDN边缘节点集中每个第三CDN边缘节点分别距发起端的第一距离和距目标媒体服务器的第二距离;

  S5042:分别做每个第三CDN边缘节点的第一距离与第二距离的商,得到各距离比值;

  S5043:将拥有满足预设要求的距离比值的第三CDN边缘节点确定为发起端的目标CDN边缘节点。

  可以看出,通过修改预设要求,就可以通过该预设要求来选取出拥有适合距离比值的目标CDN边缘节点,该预设要求可具体设置为超过下限、低于上限或是否处于某个范围内等等,可根据实际情况灵活选择。

  进一步的,在S5043中,可能存在拥有满足预设要求的距离比值的第三CDN边缘节点的数量为多个的情况,针对此种情况,可以通过如下方式解决:

  将拥有满足预设要求的距离比值的各第三CDN边缘节点均标记为备选第四CDN边缘节点;统计每个第四CDN边缘节点的距离比值超出预设要求的幅度;将拥有最大幅度的第四CDN边缘节点确定为发起端的目标CDN边缘节点。

  即如果都满足预设要求,就可以通过选取最满足该预设要求的那个CDN边缘节点作为目标CDN边缘节点。当然,根据实际情况的不同,若拥有最大幅度的第四CDN边缘节点当前的负载过高,不适合再次作为本次通过的目标CDN边缘节点,还可以基于这一考虑因素选取其它第四CDN边缘节点。

  因为情况复杂,无法一一列举进行阐述,本领域技术人员应能意识到根据本申请提供的基本方法原理结合实际情况可以存在很多的例子,在不付出足够的创造性劳动下,应均在本申请的保护范围内。

  实施例三

  请参见图9,图9为本公开实施例提供的一种VOIP通话装置的结构框图,该装置可以包括:

  位置信息及双端IP地址接收单元100,用于接收信令服务器发来的发起端以及响应端的IP地址;

  目标CDN节点确定单元200,用于根据IP地址确定与发起端和响应端分别对应的目标CDN节点;

  访问地址返回单元300,用于将两个目标CDN节点的访问地址返回至信令服务器,以便在信令服务器将两个访问地址分别返回至对应的发起端和响应端后,发起端和响应端分别通过接收到的访问地址与对应的目标CDN节点建立连接,并通过各自的目标CDN节点与目标媒体服务器建立通话通路。

  其中,目标CDN节点确定单元200可以包括:

  发起端目标边缘节点集第二确定模块,用于根据发起端和目标媒体服务器的IP地址确定与发起端对应的目标CDN边缘节点;

  响应端目标边缘节点集第二确定模块,用于根据响应端和目标媒体服务器的IP地址确定与响应端对应的目标CDN边缘节点。

  其中,该发起端目标边缘节点集第二确定模块可以包括:

  第一CDN边缘节点集确定子模块,用于根据发起端的IP地址确定对应的第一CDN边缘节点集;

  第二CDN边缘节点集确定子模块,用于根据目标媒体服务器的IP地址确定对应的第二CDN边缘节点集;

  求交集子模块,用于对第一CDN边缘节点集和第二CDN边缘节点集求交集,得到第三CDN边缘节点集;

  发起端目标边缘节点集第二确定子模块,用于从第三CDN边缘节点集中确定出与发起端对应的目标CDN边缘节点。

  其中,该发起端目标边缘节点集第二确定子模块可以包括:

  距离获取组件,用于获取第三CDN边缘节点集中每个第三CDN边缘节点距发起端的第一距离和距目标媒体服务器的第二距离;

  距离比值计算组件,用于分别做每个第三CDN边缘节点的第一距离与第二距离的商,得到各距离比值;

  发起端目标CDN边缘节点确定组件,用于将拥有满足预设要求的距离比值的第三CDN边缘节点确定为发起端的目标CDN边缘节点。

  其中,该发起端目标CDN边缘节点确定组件可以包括:

  第四CDN边缘节点标记子组件,用于当拥有满足预设要求的距离比值的第三CDN边缘节点的数量大于1时,将拥有满足预设要求的距离比值的各第三CDN边缘节点均标记为备选第四CDN边缘节点;

  超出幅度统计子组件,用于统计每个第四CDN边缘节点的距离比值超出预设要求的幅度;

  发起端目标CDN边缘节点确定子组件,用于将拥有最大幅度的第四CDN边缘节点确定为发起端的目标CDN边缘节点。

  其中,该目标CDN节点确定单元200可以包括:

  发起端目标边缘节点集第一确定模块,用于根据发起端的IP地址确定与发起端对应的目标CDN边缘节点;

  响应端目标边缘节点集第一确定模块,用于根据响应端的IP地址确定与响应端对应的目标CDN边缘节点。

  其中,该发起端目标边缘节点集第一确定模块可以包括:

  发起端位置确定子模块,用于根据发起端的IP地址确定发起端的第一位置;

  距离最近CDN边缘节点确定子模块,用于将各CDN边缘节点中位置距第一位置最近的CDN边缘节点确定为与发起端对应的目标CDN边缘节点。

  图10是根据一示例性实施例示出的一种电子设备700的框图。如图10所示,电子设备700可以包括处理器701和存储器702,还可以进一步包括多媒体组件703、信息输入/信息输出(I/O)接口704以及通信组件705中的一者或多者。

  其中,处理器701用于控制电子设备700的整体操作,以完成上述的VOIP通话方法中的全部步骤;存储器702用于存储各种类型的数据以支持在电子设备700的操作,这些数据例如可以包括用于在该电子设备700上操作的任何应用程序或方法的指令,以及应用程序相关的数据。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,SRAM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、只读存储器(Read-Only Memory,ROM)、磁存储器、快闪存储器、磁盘或光盘中的一者或多者。

  多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于电子设备700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块。

  在一示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例给出的VOIP通话方法。

  在另一示例性实施例中,还提供了一种存储有程序指令的计算机可读存储介质,该程序指令将在被处理器执行时实现与该程序指令对应的操作。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令具体为可由电子设备700的处理器701在执行时完成上述实施例给出的密VOIP通话方法。

  请参见图11,图11为本公开实施例提供的一种VOIP通话系统的结构框图,该系统可以包括:

  CDN控制节点、信令服务器、客户端、多个CDN节点和媒体服务器;其中,客户端包括发起端和响应端;

  CDN节点用于执行如上述的VOIP通话方法;

  信令服务器向CDN控制节点发送发起端以及响应端的IP地址,接收CND控制节点返回的发起端和响应端分别对应的目标CDN节点的访问地址;

  发起端和响应端分别提高接收到的访问地址与对应的目标CDN节点建立连接,并通过各自的目标CDN节点与目标媒体服务器建立通话通路;

  目标CDN节点为多个CDN节点中的节点;目标媒体服务器为媒体服务器中的一个服务器。

  其中,图像仅针对一组VOIP通信进行了绘制(即一个发起端与一个响应端之间的通话),图中的竖向“……”指对应设备还有多个,未全部绘制。

  该系统能够实现上述方法实施例所公开的VOIP通话方法,因此该系统具有VOIP通话方法对应的技术效果,在此不再一一赘述。

《VOIP通话方法、装置、系统、设备及可读存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)