技术领域technical field
本发明涉及网络电话(VoIP,Voice over Internet Protocol)技术,尤指一种实现VoIP通话的方法及系统。The invention relates to VoIP (Voice over Internet Protocol) technology, in particular to a method and system for realizing VoIP calls.
背景技术Background technique
随着移动互联网的迅猛发展,大量OTT公司在尝试冲击运营商的传统核心业务,纷纷提供VoIP业务。VoIP的语音媒体数据通常使用实时传输协议(RTP,Real-time TransportProtocol)进行传输,但是,RTP协议难以保障语音通话质量。With the rapid development of the mobile Internet, a large number of OTT companies are trying to impact the traditional core business of operators and provide VoIP services one after another. VoIP voice media data is usually transmitted using Real-time Transport Protocol (RTP, Real-time Transport Protocol), however, the RTP protocol is difficult to guarantee the quality of voice calls.
现有技术中,通常使用呼叫和媒体代理机制实现VoIP服务,即使用软交换服务器控制呼叫信令,使用媒体代理服务器提供RTP语音媒体流的转发服务。现有技术中,通常在呼叫信令中携带媒体代理服务的信息。现有技术中不能对用户进行区分,以提供差异化通话质量的语音服务;不能在用户通话建立后,根据用户网络的变化动态调整语音服务质量;不能在用户通话建立后,根据服务端负载情况变化动态调整语音服务质量。也就是说,现有VoIP技术的实现不能实时调整语音通话质量,从而不能保证为用户提供高质量的通话服务,从而降低了用户的使用体验。In the prior art, the VoIP service is usually realized by using a call and media proxy mechanism, that is, a softswitch server is used to control call signaling, and a media proxy server is used to provide forwarding services of RTP voice media streams. In the prior art, the information of the media proxy service is usually carried in the call signaling. In the existing technology, users cannot be distinguished to provide voice services with differentiated call quality; after the user call is established, the voice service quality cannot be dynamically adjusted according to changes in the user network; after the user call is established, it cannot be adjusted according to the load of the server Changes to dynamically adjust voice quality of service. That is to say, the implementation of the existing VoIP technology cannot adjust the quality of voice calls in real time, so that high-quality call services cannot be guaranteed for users, thereby reducing user experience.
发明内容Contents of the invention
为了解决上述技术问题,本发明提供了一种实现VoIP通话的方法及系统,能够对用户进行区分,以提供差异化通话质量的语音服务。In order to solve the above technical problems, the present invention provides a method and system for implementing VoIP calls, which can differentiate users to provide voice services with differentiated call quality.
为了达到本发明目的,本发明提供了一种实现VoIP通话的方法,预先划分VoIP客户端的等级;还包括:软交换服务器收到来自主叫VoIP客户端的呼叫请求,确定主叫VoIP客户端与被叫VoIP客户端中任一个受NAT防火墙保护;In order to achieve the purpose of the present invention, the present invention provides a method for implementing VoIP calls, which pre-classifies the VoIP client level; it also includes: the softswitch server receives a call request from the calling VoIP client, and determines the calling VoIP client and the called VoIP client. Any one of the VoIP clients is protected by a NAT firewall;
软交换服务器将主叫VoIP客户端和被叫VoIP客户端中等级信息高的等级作为本次VoIP通话的通话等级;The softswitch server uses the higher grade of the calling VoIP client and the called VoIP client as the conversation grade of this VoIP conversation;
软交换服务器选择对应本次通话等级的媒体代理服务器,主叫VoIP客户端与被叫VoIP客户端之间使用选择出的媒体代理服务器进行媒体流的传输。The softswitch server selects a media proxy server corresponding to the level of the call, and the calling VoIP client and the called VoIP client use the selected media proxy server to transmit media streams.
预先设置媒体负载阈值;该方法之前还包括:Presets the media load threshold; this method also previously includes:
所述媒体代理服务器定时向媒体负载监控器上报各自的媒体负荷情况,当媒体代理服务器的媒体负荷超过所述媒体负载阈值时,媒体负载监控器确定该媒体代理服务器的状态为不可用,否则状态为可用。The media proxy server regularly reports its media load situation to the media load monitor, and when the media load of the media proxy server exceeds the media load threshold, the media load monitor determines that the media proxy server is unavailable, otherwise the status is available.
预先划分所述媒体代理服务器的等级;Pre-classify the grade of the media proxy server;
所述软交换服务器选择对应本次通话等级的媒体代理服务器包括:Said softswitch server selects the media proxy server corresponding to the level of this conversation including:
所述软交换服务系统向媒体负载监控器查询所有符合本次通话等级的、状态为可用的媒体代理服务器,并将查询到的媒体代理服务器的IP地址信息列表确定为本次通话的备选媒体代理服务器列表。The softswitch service system queries the media load monitor for all media proxy servers that meet the level of this call and are available, and determine the IP address information list of the media proxy server found as the alternative media for this call List of proxy servers.
如果没有查询到符合本次通话等级的、状态为可用的媒体代理服务器,该方法还包括:If no media proxy server that meets the call level and is available is found, the method also includes:
所述媒体负载监控器向软交换服务器返回所有次一级等级的通话等级的、状态为可用的媒体代理服务器;The media load monitor returns to the softswitch server all the media proxy servers of the call level of the next level, whose status is available;
所述软交换服务器将这些次一级等级的媒体代理服务器的IP地址信息列表确定为本次通话的备选媒体代理服务器列表,并标识为次一级。The softswitch server determines the IP address information list of the media proxy servers of the next level as the candidate media proxy server list for this call, and identifies them as the next level.
所述主叫VoIP客户端与被叫VoIP客户端之间使用选择出的媒体代理服务器进行媒体流的传输包括:Using the selected media proxy server between the calling VoIP client and the called VoIP client to carry out the transmission of the media stream includes:
所述软交换服务器向被叫VoIP客户端发送携带有备选媒体代理服务器列表的呼叫请求;所述被叫VoIP客户端接听后,向所述软交换服务器发送应答消息,向所述备选媒体代理服务器列表中的首个地址发送RTP包;同时,The softswitch server sends a call request carrying an alternative media proxy server list to the called VoIP client; after the called VoIP client answers, it sends a response message to the softswitch server, and sends a response message to the alternative media proxy server. The first address in the proxy server list sends RTP packets; at the same time,
所述软交换服务器向主叫VoIP客户端发送携带有备选媒体代理服务器列表的呼叫建立成功消息,所述主叫VoIP客户端向备选媒体代理服务器列表中的首个地址发送RTP包。The softswitch server sends a call establishment success message carrying a list of alternative media proxy servers to the calling VoIP client, and the calling VoIP client sends an RTP packet to the first address in the list of alternative media proxy servers.
如果所述主叫VoIP客户端、被叫VoIP客户端均不受NAT防火墙的保护时,该方法包括:If the calling VoIP client and the called VoIP client are not protected by the NAT firewall, the method includes:
所述软交换服务器控制主叫VoIP客户端和被叫VoIP客户端在通话建立后,使用点对点的RTP包直传方式进行语音通话。The softswitch server controls the calling VoIP client and the called VoIP client to use point-to-point RTP packet direct transmission to conduct voice calls after the call is established.
该方法还包括:根据网络质量动态调整媒体代理服务器;所述根据网络质量动态调整媒体代理服务器包括:The method also includes: dynamically adjusting the media proxy server according to the network quality; said dynamically adjusting the media proxy server according to the network quality includes:
所述主叫VoIP客户端与被叫VoIP客户端双方均周期性地、向所述备选媒体代理服务器列表中的全部媒体代理服务器所在地址发送网络质量探测数据包;Both the calling VoIP client and the called VoIP client periodically send network quality detection data packets to the addresses of all media proxy servers in the candidate media proxy server list;
每个媒体代理服务器将各自与主叫VoIP客户端、被叫VoIP客户端的通信质量结果上报给所述媒体负载监控器,所述媒体负载监控器根据当前的网络质量,判断适于本次通话的媒体代理服务器,以及最适于保证VoIP客户端间通话质量的语音编码方式,并上报给所述软交换服务器;Each media proxy server reports the communication quality results with the calling VoIP client and the called VoIP client respectively to the media load monitor, and the media load monitor judges the communication quality suitable for this call according to the current network quality A media proxy server, and the voice coding method most suitable for ensuring the call quality between VoIP clients, and reporting to the softswitch server;
所述软交换服务器将根据当前网络质量确定出的媒体代理服务器的IP地址、及语音编码方式,发送给所述主叫VoIP客户端与被叫VoIP客户端;The softswitch server sends the IP address and voice coding method of the media proxy server determined according to the current network quality to the calling VoIP client and the called VoIP client;
所述主叫VoIP客户端与被叫VoIP客户端分别判断该IP地址是否与当前使用的媒体代理服务器IP地址相同,如果不同,主叫VoIP客户端与被叫VoIP客户端分别向该IP地址发送RTP包,并使用该IP地址进行媒体服务代理,同时采用当前网络质量确定的语音编码方式进行语音编码。Described calling VoIP client and called VoIP client judge whether this IP address is identical with the media agent server IP address currently used respectively, if different, calling VoIP client and called VoIP client send to this IP address respectively RTP packets, and use the IP address for media service proxy, and use the voice coding method with the current network quality to determine the voice coding.
该方法还包括:根据所述媒体代理服务器的负载情况动态调整媒体代理服务器;所述根据所述媒体代理服务器的负载情况动态调整媒体代理服务器包括:The method also includes: dynamically adjusting the media proxy server according to the load of the media proxy server; said dynamically adjusting the media proxy server according to the load of the media proxy server includes:
如果所述媒体负载监控器根据媒体代理服务器上报的负荷情况,发现有可用的、符合本次通话等级的,且级别高于备选媒体代理服务器列表的媒体代理服务器,所述媒体负载监控器通知软交换服务器;If the media load monitor finds that there is an available media proxy server that meets the level of the conversation and is higher than the list of alternative media proxy servers according to the load situation reported by the media proxy server, the media load monitor notifies Softswitch server;
所述软交换服务器重新确定新的备选服务器列表,并同时发送给主叫VoIP客户端与被叫VoIP客户端;The softswitch server re-determines a new candidate server list, and sends it to the calling VoIP client and the called VoIP client at the same time;
所述主叫VoIP客户端与被叫VoIP客户端分别存储新的备选媒体代理服务器列表,并使用新的备选媒体代理服务器列表中的媒体代理服务器进行媒体流的传输。The calling VoIP client and the called VoIP client respectively store new candidate media proxy server lists, and use media proxy servers in the new candidate media proxy server lists to transmit media streams.
本发明还提供一种实现VoIP通话的系统,包括至少两个VoIP客户端、软交换服务器、至少两个媒体代理服务器、位置寄存服务器,以及媒体负载监控器;其中,The present invention also provides a system for implementing VoIP calls, including at least two VoIP clients, a softswitch server, at least two media proxy servers, a location registration server, and a media load monitor; wherein,
软交换服务器,用于接收来自主叫VoIP客户端的呼叫请求,确定主叫VoIP客户端与被叫VoIP客户端中任一个受NAT防火墙保护;将主叫VoIP客户端和被叫VoIP客户端中等级信息高的等级作为本次VoIP通话的通话等级;向媒体负载监控器查询并选择对应本次通话等级的媒体代理服务器;The soft switch server is used to receive the call request from the calling VoIP client, and determine that any one of the calling VoIP client and the called VoIP client is protected by the NAT firewall; the middle level of the calling VoIP client and the called VoIP client The high level of information is used as the call level of this VoIP call; query and select the media proxy server corresponding to this call level to the media load monitor;
媒体代理服务器,用于传输主叫VoIP客户端与被叫VoIP客户端之间的媒体流;The media proxy server is used to transmit the media flow between the calling VoIP client and the called VoIP client;
媒体负载监控器,其中存储有媒体代理服务器等级及状态,用于接收来自软交换服务器的查询,将符合本次通话等级的、状态为可用的媒体代理服务器返回给软交换服务器;The media load monitor, which stores the level and status of the media proxy server, is used to receive the query from the soft switch server, and returns the media proxy server that meets the level of this call and is available to the soft switch server;
位置寄存器,用于保存来自软交换服务器的VoIP客户端是否受NAT防火墙保护的判断结果,以及VoIP客户端的IP地址及端口号。The location register is used to save the judgment result of whether the VoIP client from the softswitch server is protected by the NAT firewall, and the IP address and port number of the VoIP client.
所述软交换服务器,还用于受理VoIP客户端的注册请求,判断VoIP客户端是否受NAT防火墙保护,并将判断结果及注册消息的源IP地址及端口号保存在位置寄存服务器。The softswitch server is also used for accepting the registration request of the VoIP client, judging whether the VoIP client is protected by the NAT firewall, and saving the judging result and the source IP address and port number of the registration message in the location registration server.
所述软交换服务器,还用于在判断出主叫VoIP客户端、被叫VoIP客户端均不受NAT防火墙的保护时,控制主叫VoIP客户端和被叫VoIP客户端在通话建立后,使用点对点的RTP包直传方式进行语音通话。The softswitch server is also used to control the calling VoIP client and the called VoIP client to use the Point-to-point RTP packet direct transmission method for voice calls.
所述软交换服务器,还用于在主叫VoIP客户端与被叫VoIP客户端间通话建立后,根据用户网络质量动态选择更合适的媒体代理服务器以调整语音服务质量。The softswitch server is also used to dynamically select a more suitable media proxy server according to the user's network quality to adjust the voice service quality after the call between the calling VoIP client and the called VoIP client is established.
所述软交换服务器,还用于在主叫VoIP客户端与被叫VoIP客户端间通话建立后,根据媒体代理服务器的负载情况动态选择更合适的媒体代理服务器以调整语音服务质量。The softswitch server is also used to dynamically select a more suitable media proxy server according to the load of the media proxy server to adjust the voice service quality after the call between the calling VoIP client and the called VoIP client is established.
所述媒体代理服务器,还用于向媒体负载监控器定时上报自身的媒体负荷情况;The media proxy server is also used to regularly report the media load situation of itself to the media load monitor;
所述媒体负载监控器,其中设置有媒体负载阈值,还用于在媒体代理服务器的媒体负荷超过媒体负载阈值时,确定该媒体代理服务器的状态为不可用,否则状态为可用。The media load monitor, wherein a media load threshold is set, is also used to determine the status of the media proxy server as unavailable when the media load of the media proxy server exceeds the media load threshold, otherwise the status is available.
与现有技术相比,本发明包括软交换服务器收到来自主叫VoIP客户端的呼叫请求,确定主叫VoIP客户端与被叫VoIP客户端中任一个受NAT防火墙保护;软交换服务器将主叫VoIP客户端和被叫VoIP客户端中等级信息高的等级作为本次VoIP通话的通话等级;软交换服务器选择对应本次通话等级的媒体代理服务器,主叫VoIP客户端与被叫VoIP客户端之间使用选择出的媒体代理服务器进行媒体流的传输。通过本发明方法对用户进行区分,实现了针对不同用户提供差异化通话质量的语音服务。Compared with the prior art, the present invention includes that the softswitch server receives the call request from the calling VoIP client, and determines that any one of the calling VoIP client and the called VoIP client is protected by a NAT firewall; The VoIP client and the called VoIP client have the higher level information as the call level of this VoIP call; the softswitch server selects the media proxy server corresponding to the call level, and the call level between the calling VoIP client and the called VoIP client Use the selected media proxy server to transmit the media stream. By distinguishing users through the method of the invention, voice services with differentiated call quality are realized for different users.
进一步地,在用户通话建立后,实现了根据用户网络的变化动态调整语音服务质量;进一步地,在用户通话建立后,实现了根据服务端负载情况变化动态调整语音服务质量。Furthermore, after the user call is established, the voice service quality is dynamically adjusted according to the change of the user network; further, after the user call is established, the voice service quality is dynamically adjusted according to the change of the server load.
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。Additional features and advantages of the invention will be set forth in the description which follows, and in part will be apparent from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention may be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
附图说明Description of drawings
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。The accompanying drawings are used to provide a further understanding of the technical solution of the present invention, and constitute a part of the description, and are used together with the embodiments of the application to explain the technical solution of the present invention, and do not constitute a limitation to the technical solution of the present invention.
图1为本发明实现VoIP通话的方法的流程图;Fig. 1 is the flow chart of the method for realizing VoIP conversation of the present invention;
图2为本发明实现VoIP通话的系统的组成结构示意图;Fig. 2 is the composition structural representation of the system that realizes VoIP conversation of the present invention;
具体实施方式detailed description
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。In order to make the purpose, technical solution and advantages of the present invention more clear, the embodiments of the present invention will be described in detail below in conjunction with the accompanying drawings. It should be noted that, in the case of no conflict, the embodiments in the present application and the features in the embodiments can be combined arbitrarily with each other.
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。The steps shown in the flowcharts of the figures may be performed in a computer system, such as a set of computer-executable instructions. Also, although a logical order is shown in the flowcharts, in some cases the steps shown or described may be performed in an order different from that shown or described herein.
图1为本发明实现VoIP通话的方法的流程图,如图1所示,包括:Fig. 1 is the flow chart of the method for realizing VoIP conversation of the present invention, as shown in Fig. 1, comprises:
步骤100:软交换服务器收到来自主叫VoIP客户端的呼叫请求,确定主叫VoIP客户端与被叫VoIP客户端中任一个受NAT防火墙保护。Step 100: The softswitch server receives a call request from the calling VoIP client, and determines that either the calling VoIP client or the called VoIP client is protected by the NAT firewall.
本步骤之前还包括:预先对系统中全部VoIP客户端进行等级划分,划分的依据可以包括但不限于用户的使用时长、累计消费金额等,等级越高代表该VoIP客户端的贡献价值越高。比如将VoIP客户端分为A、B、C三个递减的等级。Before this step, it also includes: classify all VoIP clients in the system in advance. The basis for the classification may include but not limited to the user's usage time, cumulative consumption amount, etc. The higher the level, the higher the contribution value of the VoIP client. For example, VoIP clients are divided into three decreasing grades of A, B, and C.
本步骤之前还包括VoIP客户端注册,具体包括:用户启动VoIP客户端后,VoIP客户端向软交换服务器注册,同时将自身用户账户信息(如账户名称、密码)、本地IP地址及端口号信息携带在注册消息中发送给软交换服务器;软交互服务器根据接收到注册消息的源IP地址及端口号,与注册消息中携带的本地IP地址及端口号信息,判断VoIP客户端是否受网络地址转换(NAT,Network Address Translation)防火墙保护即处于NAT防火墙后,并将判断结果及注册消息的源IP地址及端口号保存在位置寄存服务器中。This step also includes VoIP client registration before this step, which specifically includes: after the user starts the VoIP client, the VoIP client registers with the softswitch server, and at the same time sends its own user account information (such as account name, password), local IP address and port number information Carried in the registration message and sent to the soft switch server; the soft interaction server judges whether the VoIP client is subject to network address translation according to the source IP address and port number received in the registration message and the local IP address and port number information carried in the registration message. (NAT, Network Address Translation) firewall protection is located behind the NAT firewall, and save the judgment result and the source IP address and port number of the registration message in the location registration server.
本步骤具体包括:This step specifically includes:
当某一VoIP客户端(主叫VoIP客户端)向另一VoIP客户端(被叫VoIP客户端)发起呼叫时,主叫VoIP客户端将呼叫请求发送至软交换服务器,在呼叫请求中至少携带有主叫VoIP客户端的账户名称等主叫账户信息、被叫VoIP客户端的账户名称等被叫账户信息,以及主叫VoIP客户端要求的通话中的语音编码方式信息;When a VoIP client (calling VoIP client) initiates a call to another VoIP client (called VoIP client), the calling VoIP client sends a call request to the softswitch server, and the call request carries at least There are the calling account information such as the account name of the calling VoIP client, the called account information such as the account name of the called VoIP client, and the voice coding method information during the call required by the calling VoIP client;
软交换服务器根据主叫账户信息及被叫账户信息,向位置寄存服务器查询主叫VoIP客户端、被叫VoIP客户端是否受NAT防火墙保护,以及被叫VoIP客户端的IP地址、端口号信息。The softswitch server inquires whether the calling VoIP client and the called VoIP client are protected by the NAT firewall, and the IP address and port number information of the called VoIP client to the location registration server according to the calling account information and the called account information.
步骤101:软交换服务器将主叫VoIP客户端和被叫VoIP客户端中等级信息高的等级作为本次VoIP通话的通话等级。Step 101: the softswitch server uses the higher level information among the calling VoIP client and the called VoIP client as the call level of the current VoIP call.
本步骤中,如果主叫VoIP客户端、被叫VoIP客户端中有一方,或者两方均处于NAT防火墙后即受NAT防火墙保护,软交换服务器查询主叫VoIP客户端及被叫VoIP客户端的等级信息,软交换服务器选取其中较高的等级作为本次呼叫请求的通话等级。In this step, if there is one of the calling VoIP client and the called VoIP client, or both parties are behind the NAT firewall and are protected by the NAT firewall, the softswitch server queries the levels of the calling VoIP client and the called VoIP client information, the softswitch server selects the higher level as the call level requested by this call.
步骤102:软交换服务器选择对应本次通话等级的媒体代理服务器,主叫VoIP客户端与被叫VoIP客户端之间使用选择出的媒体代理服务器进行媒体流的传输。Step 102: the softswitch server selects a media proxy server corresponding to the level of the call, and the media stream is transmitted between the calling VoIP client and the called VoIP client using the selected media proxy server.
本步骤之前还包括:预先对系统中全部媒体代理服务器进行等级划分,并划分为与VoIP客户端等级级差相同的等级,划分的依据可以包括但不限于媒体代理服务器与不同运营商网络互通的质量等,质量越高等级越高。比如将媒体代理服务器分为A、B、C三个递减的等级。Before this step, it also includes: classify all media proxy servers in the system in advance, and divide them into the same level as the VoIP client level difference. The basis of division may include but not limited to the quality of the media proxy server and the network interworking of different operators Wait, the higher the quality the higher the grade. For example, the media proxy server is divided into three decreasing grades of A, B, and C.
本步骤具体包括:软交换服务系统向媒体负载监控器查询所有符合本次通话等级的、状态为可用的媒体代理服务器,并将查询到的媒体代理服务器的IP地址信息列表确定为本次通话的备选媒体代理服务器列表;其中,媒体代理服务器会定时向媒体负载监控器上报各自的媒体负荷情况,在媒体负载监控器中设置有媒体负载阈值,当媒体代理服务器的媒体负荷超过媒体负载阈值时,媒体负载监控器认为该媒体代理服务器的状态为不可用,否则状态为可用。This step specifically includes: the softswitch service system queries the media load monitor for all media proxy servers that meet the level of this call and that the status is available, and the IP address information list of the media proxy server that has been inquired is determined as the address of this call A list of alternative media proxy servers; wherein, the media proxy servers will regularly report their respective media load situations to the media load monitor, and a media load threshold is set in the media load monitor, and when the media load of the media proxy server exceeds the media load threshold , the media load monitor considers the status of the media proxy server to be unavailable, otherwise the status is available.
之后,软交换服务器向被叫VoIP客户端发送呼叫请求,呼叫请求中携带有主叫VoIP客户端的账户名称等主叫账户信息、备选媒体代理服务器列表,以及主叫VoIP客户端要求的通话中的语音编码方式;被叫VoIP客户端接听后,向软交换服务器发送应答消息,同时,向备选媒体代理服务器列表中的首个地址发送RTP包;同时,Afterwards, the softswitch server sends a call request to the called VoIP client, and the call request carries the calling account information such as the account name of the calling VoIP client, the list of alternative media proxy servers, and the in-call information requested by the calling VoIP client. voice encoding method; after the called VoIP client answers, it sends a response message to the softswitch server, and at the same time, sends an RTP packet to the first address in the list of alternative media proxy servers; at the same time,
软交换服务器向主叫VoIP客户端发送呼叫建立成功消息,在呼叫建立成功消息中携带有备选媒体代理服务器列表,主叫VoIP客户端向备选媒体代理服务器列表中的首个地址发送RTP包。至此,通话建立成功,主叫VoIP客户端与被叫VoIP客户端使用对应当前通话等级的媒体代理服务器进行媒体流的传输,并均采用主叫VoIP客户端要求的语音编码方式进行语音编码。The softswitch server sends a call establishment success message to the calling VoIP client, and the call establishment success message carries a list of alternative media proxy servers, and the calling VoIP client sends an RTP packet to the first address in the list of alternative media proxy servers . So far, the call is successfully established. The calling VoIP client and the called VoIP client use the media proxy server corresponding to the current call level to transmit the media stream, and both use the voice coding method required by the calling VoIP client for voice coding.
本步骤中,在软交换服务器选择对应本次通话等级的媒体代理服务器时,如果没有查询到符合本次通话等级的、状态为可用的媒体代理服务器,则媒体负载监控器向软交换服务器返回所有次一级等级的通话等级的、状态为可用的媒体代理服务器,软交换服务器将这些次一级等级的媒体代理服务器的IP地址信息列表确定为本次通话的备选媒体代理服务器列表,并标识为次一级。In this step, when the softswitch server selects the media proxy server corresponding to the level of this conversation, if there is no media proxy server that meets the level of this conversation and the status is available, the media load monitor returns all the media proxy servers to the softswitch server. For the available media proxy servers of the call level of the next level, the softswitch server determines the list of IP address information of the media proxy servers of the next level as the list of alternative media proxy servers for this conversation, and identifies for the next level.
本发明方法还包括:如果主叫VoIP客户端、被叫VoIP客户端均不处于NAT防火墙后即均不受NAT防火墙的保护,则软交换服务器控制主叫VoIP客户端和被叫VoIP客户端在通话建立后,使用点对点的RTP包直传方式进行语音通话。The method of the present invention also includes: if the calling VoIP client and the called VoIP client are not behind the NAT firewall and are not protected by the NAT firewall, then the softswitch server controls the calling VoIP client and the called VoIP client in the NAT firewall. After the call is established, use the point-to-point RTP packet direct transmission method for voice calls.
在主叫VoIP客户端与被叫VoIP客户端间通话建立后,本发明方法还包括:根据网络质量动态选择更合适的即调整媒体代理服务器以调整语音服务质量。具体如下:After the conversation between the calling VoIP client and the called VoIP client is established, the method of the present invention further includes: dynamically selecting a more suitable media proxy server according to the network quality to adjust the voice service quality. details as follows:
主叫VoIP客户端与被叫VoIP客户端间通话建立后,双方均周期性地向备选媒体代理服务器列表中的全部媒体代理服务器所在地址发送网络质量探测数据包;After the conversation between the calling VoIP client and the called VoIP client is established, both parties periodically send network quality detection data packets to the addresses of all media proxy servers in the list of alternative media proxy servers;
每个媒体代理服务器将各自与主叫VoIP客户端、被叫VoIP客户端的通信质量结果上报给媒体负载监控器,媒体负载监控器根据当前的网络质量,判断最适于本次通话的媒体代理服务器,以及最适于保证VoIP客户端间通话质量的语音编码方式,并上报给软交换服务器;Each media proxy server reports the communication quality results with the calling VoIP client and the called VoIP client to the media load monitor, and the media load monitor judges the most suitable media proxy server for this call according to the current network quality , and the voice coding method most suitable for ensuring the call quality between VoIP clients, and report it to the softswitch server;
软交换服务器将根据当前网络质量确定出的媒体代理服务器的IP地址、及语音编码方式,发送给主叫VoIP客户端与被叫VoIP客户端;主叫VoIP客户端与被叫VoIP客户端分别判断该IP地址是否与当前使用的媒体代理服务器IP地址相同,如果不同,主叫VoIP客户端与被叫VoIP客户端分别向该IP地址发送RTP包,并使用该IP地址进行媒体代理,同时采用当前网络质量确定的语音编码方式进行语音编码;如果相同,主叫VoIP客户端与被叫VoIP客户端仍使用之前的媒体代理服务器,并同时采用根据当前网络质量确定的语音编码方式进行语音编码。The softswitch server will send the IP address and voice coding method of the media proxy server determined according to the current network quality to the calling VoIP client and the called VoIP client; Whether the IP address is the same as the currently used media proxy server IP address, if not, the calling VoIP client and the called VoIP client send RTP packets to this IP address respectively, and use this IP address for media proxy, while using the current The voice coding method determined by the network quality is used for voice coding; if they are the same, the calling VoIP client and the called VoIP client still use the previous media proxy server, and at the same time use the voice coding method determined according to the current network quality for voice coding.
之后,主叫VoIP客户端与被叫VoIP客户端双方,均周期性地向备选媒体代理服务器列表中的全部媒体代理服务器所在地址发送网络质量探测数据包。After that, both the calling VoIP client and the called VoIP client periodically send network quality detection data packets to the addresses of all media proxy servers in the candidate media proxy server list.
在主叫VoIP客户端与被叫VoIP客户端间通话建立后,本发明方法还包括:根据媒体代理服务器的负载情况动态选择更合适的即调整媒体代理服务器以调整语音服务质量。具体如下:After the conversation between the calling VoIP client and the called VoIP client is established, the method of the present invention further includes: dynamically selecting a more suitable media proxy server according to the load of the media proxy server to adjust the voice service quality. details as follows:
如果媒体负载监控器根据媒体代理服务器上报的负荷情况,发现有可用的、符合本次通话等级的,且级别高于备选媒体代理服务器列表的媒体代理服务器,媒体负载监控器通知软交换服务器,软交换服务器重新确定新的备选服务器列表,并同时发送给主叫VoIP客户端与被叫VoIP客户端;主叫VoIP客户端与被叫VoIP客户端分别存储新的备选媒体代理服务器列表,并使用新的备选媒体代理服务器列表中的媒体代理服务器进行媒体流的传输。If the media load monitor finds that there is an available media proxy server that meets the level of the call and is higher than the list of alternative media proxy servers according to the load reported by the media proxy server, the media load monitor notifies the softswitch server, The softswitch server re-determines a new candidate server list, and sends it to the calling VoIP client and the called VoIP client at the same time; the calling VoIP client and the called VoIP client store the new candidate media proxy server list respectively, And use the media proxy server in the new candidate media proxy server list to transmit the media stream.
之后,主叫VoIP客户端与被叫VoIP客户端双方,均周期性地向备选媒体代理服务器列表中的全部媒体代理服务器所在地址发送网络质量探测数据包。After that, both the calling VoIP client and the called VoIP client periodically send network quality detection data packets to the addresses of all media proxy servers in the candidate media proxy server list.
图2为本发明实现VoIP通话的系统的组成结构示意图,如图2所示,包括至少两个VoIP客户端、软交换服务器、至少两个媒体代理服务器、位置寄存服务器,以及媒体负载监控器;其中,Fig. 2 is the composition structural diagram of the system that realizes VoIP conversation of the present invention, as shown in Fig. 2, comprise at least two VoIP clients, soft switch server, at least two media proxy servers, location registration server, and media load monitor; in,
软交换服务器,用于接收来自主叫VoIP客户端的呼叫请求,确定主叫VoIP客户端与被叫VoIP客户端中任一个受NAT防火墙保护;将主叫VoIP客户端和被叫VoIP客户端中等级信息高的等级作为本次VoIP通话的通话等级;向媒体负载监控器查询并选择对应本次通话等级的媒体代理服务器;The soft switch server is used to receive the call request from the calling VoIP client, and determine that any one of the calling VoIP client and the called VoIP client is protected by the NAT firewall; the middle level of the calling VoIP client and the called VoIP client The high level of information is used as the call level of this VoIP call; query and select the media proxy server corresponding to this call level to the media load monitor;
软交换服务器,还用于受理VoIP客户端的注册请求,判断VoIP客户端是否受NAT防火墙保护,并将判断结果及注册消息的源IP地址及端口号保存在位置寄存服务器。The softswitch server is also used to accept the registration request of the VoIP client, judge whether the VoIP client is protected by the NAT firewall, and store the judgment result and the source IP address and port number of the registration message in the location registration server.
媒体代理服务器,用于传输主叫VoIP客户端与被叫VoIP客户端之间的媒体流;The media proxy server is used to transmit the media flow between the calling VoIP client and the called VoIP client;
媒体负载监控器,其中存储有媒体代理服务器等级及状态,用于接收来自软交换服务器的查询,将符合本次通话等级的、状态为可用的媒体代理服务器返回给软交换服务器;The media load monitor, which stores the level and status of the media proxy server, is used to receive the query from the soft switch server, and returns the media proxy server that meets the level of this call and is available to the soft switch server;
位置寄存器,用于保存来自软交换服务器的VoIP客户端是否受NAT防火墙保护的判断结果,以及VoIP客户端的IP地址及端口号。The location register is used to save the judgment result of whether the VoIP client from the softswitch server is protected by the NAT firewall, and the IP address and port number of the VoIP client.
软交换服务器,还用于在判断出主叫VoIP客户端、被叫VoIP客户端均不受NAT防火墙的保护时,控制主叫VoIP客户端和被叫VoIP客户端在通话建立后,使用点对点的RTP包直传方式进行语音通话。The softswitch server is also used to control the calling VoIP client and the called VoIP client to use point-to-point communication after the call is established when it is determined that the calling VoIP client and the called VoIP client are not protected by the NAT firewall. RTP packet direct transmission method for voice calls.
软交换服务器,还用于在主叫VoIP客户端与被叫VoIP客户端间通话建立后,根据用户网络质量动态选择更合适的媒体代理服务器以调整语音服务质量。The softswitch server is also used to dynamically select a more suitable media proxy server according to the user's network quality to adjust the voice service quality after the call is established between the calling VoIP client and the called VoIP client.
软交换服务器,还用于在主叫VoIP客户端与被叫VoIP客户端间通话建立后,根据媒体代理服务器的负载情况动态选择更合适的媒体代理服务器以调整语音服务质量。The softswitch server is also used to dynamically select a more suitable media proxy server according to the load of the media proxy server to adjust the voice service quality after the call is established between the calling VoIP client and the called VoIP client.
媒体代理服务器,还用于向媒体负载监控器定时上报自身的媒体负荷情况;The media proxy server is also used to regularly report its own media load situation to the media load monitor;
媒体负载监控器,其中设置有媒体负载阈值,还用于在媒体代理服务器的媒体负荷超过媒体负载阈值时,确定该媒体代理服务器的状态为不可用,否则状态为可用。The media load monitor, wherein a media load threshold is set, is also used to determine the status of the media proxy server as unavailable when the media load of the media proxy server exceeds the media load threshold, otherwise the status is available.
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。Although the embodiments disclosed in the present invention are as above, the described content is only an embodiment adopted for understanding the present invention, and is not intended to limit the present invention. Anyone skilled in the field of the present invention can make any modifications and changes in the form and details of the implementation without departing from the spirit and scope disclosed by the present invention, but the patent protection scope of the present invention must still be The scope defined by the appended claims shall prevail.
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201310572284.7ACN103634303B (en) | 2013-11-13 | 2013-11-13 | A method and system for implementing VoIP calls |
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201310572284.7ACN103634303B (en) | 2013-11-13 | 2013-11-13 | A method and system for implementing VoIP calls |
| Publication Number | Publication Date |
|---|---|
| CN103634303A CN103634303A (en) | 2014-03-12 |
| CN103634303Btrue CN103634303B (en) | 2017-06-27 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201310572284.7AActiveCN103634303B (en) | 2013-11-13 | 2013-11-13 | A method and system for implementing VoIP calls |
| Country | Link |
|---|---|
| CN (1) | CN103634303B (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106411827A (en)* | 2015-08-04 | 2017-02-15 | 刘志超 | User contact information protection method of mobile application field |
| CN108769441B (en)* | 2018-06-20 | 2021-04-02 | 中国联合网络通信集团有限公司 | Soft switch conversation method and system |
| CN111294324A (en)* | 2018-12-10 | 2020-06-16 | 中兴通讯股份有限公司 | Call implementation method, system, device, main control board, line card and storage medium |
| CN110012180A (en)* | 2019-04-12 | 2019-07-12 | 成都卫士通信息产业股份有限公司 | A kind of connection method, device, equipment and the medium of voip network phone |
| CN111953855B (en)* | 2020-08-24 | 2022-02-11 | 成都卫士通信息产业股份有限公司 | VOIP call method, device, system, equipment and readable storage medium |
| CN113067807A (en)* | 2021-03-15 | 2021-07-02 | 北京中联环信科技有限公司 | High-capacity parallel processing conversation system and conversation method |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1798100A (en)* | 2004-11-17 | 2006-07-05 | 三星电子株式会社 | Method and apparatus for signaling Voip call based on class of service in Voip service system |
| CN1819691A (en)* | 2005-02-08 | 2006-08-16 | 中国移动通信集团公司 | Method for realizing communication QOS based on user request |
| CN1870514A (en)* | 2005-05-28 | 2006-11-29 | 华为技术有限公司 | Method for analysing session service quality |
| CN101217483A (en)* | 2008-01-21 | 2008-07-09 | 中兴通讯股份有限公司 | A method to realize cluster server inner load sharing agent |
| CN101515857A (en)* | 2008-02-20 | 2009-08-26 | 华为技术有限公司 | Multimedia capability-managing method and device |
| CN102413136A (en)* | 2011-11-21 | 2012-04-11 | 重庆市电力公司信息通信分公司 | VoIP system and method for realizing penetration of VoIP voice stream through fire wall |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1798100A (en)* | 2004-11-17 | 2006-07-05 | 三星电子株式会社 | Method and apparatus for signaling Voip call based on class of service in Voip service system |
| CN1819691A (en)* | 2005-02-08 | 2006-08-16 | 中国移动通信集团公司 | Method for realizing communication QOS based on user request |
| CN1870514A (en)* | 2005-05-28 | 2006-11-29 | 华为技术有限公司 | Method for analysing session service quality |
| CN101217483A (en)* | 2008-01-21 | 2008-07-09 | 中兴通讯股份有限公司 | A method to realize cluster server inner load sharing agent |
| CN101515857A (en)* | 2008-02-20 | 2009-08-26 | 华为技术有限公司 | Multimedia capability-managing method and device |
| CN102413136A (en)* | 2011-11-21 | 2012-04-11 | 重庆市电力公司信息通信分公司 | VoIP system and method for realizing penetration of VoIP voice stream through fire wall |
| Publication number | Publication date |
|---|---|
| CN103634303A (en) | 2014-03-12 |
| Publication | Publication Date | Title |
|---|---|---|
| CN103634303B (en) | A method and system for implementing VoIP calls | |
| US8160058B2 (en) | Method and apparatus for signaling VoIP call based on class of service in VoIP service system | |
| US8301744B2 (en) | Systems and methods for QoS provisioning and assurance for point-to-point SIP sessions in DiffServ-enabled MPLS networks | |
| CN100574467C (en) | A kind of band width control method and terminal equipment | |
| EP2157804B1 (en) | Method for licit monitoring and device thereof | |
| CN101379771B (en) | Method for requesting domain transfer and terminal and server thereof | |
| US20120047273A1 (en) | Device initiated multiple grants per interval system and method | |
| JP4763800B2 (en) | Method and apparatus for establishing a multimedia communication session | |
| CN102368736A (en) | Message sending method and equipment | |
| CN108259434A (en) | A kind of opening method and server of user side QoS supportabilitys | |
| WO2018072284A1 (en) | Service communication method and device | |
| CN109348470A (en) | Service switching method, terminal, network server and storage medium | |
| US20130065588A1 (en) | Transmitting data over multiple networks | |
| CN101820651B (en) | Communication path selection method, network conversion equipment, load bearing equipment and communication system | |
| JP2024525135A (en) | Providing communication services to users via I/O user devices | |
| CN102511155A (en) | IP path negotiation method, system and device | |
| CN101179763A (en) | Method, system and device for setting media priority based on IP bearer network | |
| CN101399822B (en) | Method for determining media stream path relation and call control system | |
| CN101383785A (en) | A Service Flow Management Method Oriented to SIP Application | |
| CN100433890C (en) | Method for implementing mobile data service using dynamic service quality control | |
| CN102413136B (en) | VoIP system and method for realizing penetration of VoIP voice stream through fire wall | |
| WO2010017176A1 (en) | Systems and methods for qos provisioning and assurance for point-to-point sip sessions in diffserv-enabled mpls networks | |
| US8381261B2 (en) | Method for selecting policy decision functional entity in a resource and admission control system | |
| CN100438442C (en) | Media stream shunting system and media stream shunting method | |
| CN1983950A (en) | Method for monitoring multi-medium sub-system domain |
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |