CN114172967A - Media server distribution method, device, equipment and storage medium - Google Patents

Media server distribution method, device, equipment and storage medium Download PDF

Info

Publication number
CN114172967A
CN114172967A CN202111529642.7A CN202111529642A CN114172967A CN 114172967 A CN114172967 A CN 114172967A CN 202111529642 A CN202111529642 A CN 202111529642A CN 114172967 A CN114172967 A CN 114172967A
Authority
CN
China
Prior art keywords
detection data
media server
determining
target
detection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111529642.7A
Other languages
Chinese (zh)
Other versions
CN114172967B (en
Inventor
朱子瑶
王光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Baiguoyuan Information Technology Co Ltd
Original Assignee
Guangzhou Baiguoyuan Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Baiguoyuan Information Technology Co Ltd filed Critical Guangzhou Baiguoyuan Information Technology Co Ltd
Priority to CN202111529642.7A priority Critical patent/CN114172967B/en
Publication of CN114172967A publication Critical patent/CN114172967A/en
Application granted granted Critical
Publication of CN114172967B publication Critical patent/CN114172967B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working

Abstract

The embodiment of the invention discloses a media server distribution method, a device, equipment and a storage medium. Wherein, the method comprises the following steps: determining a plurality of available areas containing media servers according to client attribute information of a calling party and a called party, acquiring detection data between the calling party and the called party and each available area from pre-collected network performance detection data in a centralized manner, wherein the detection data comprises data of at least two network performance indexes obtained after detection is carried out by using a preset data packet sequence, determining a first score corresponding to each available area by using a first preset scoring rule based on the detection data, determining a target area according to the first score, and determining and distributing a target media server corresponding to an audio and video call event according to the media servers existing in the target area. By adopting the technical scheme, the reasonable target area can be quickly and accurately determined, and the media server in the target area is distributed to the calling party, so that the audio and video calling performance is favorably improved.

Description

Media server distribution method, device, equipment and storage medium
Technical Field
The embodiment of the invention relates to the technical field of computers, in particular to a media server distribution method, a device, equipment and a storage medium.
Background
With the rapid construction of multimedia services and the rapid popularization of audio and video communication software, the real-time audio and video field is greatly popularized on the internet, such as real-time audio and video call. The real-time audio and video call provides audio and video communication service for a user based on network connection between a mobile client and a media server, and the call experience of the user can be directly influenced by the network quality between the mobile client and the media server, so that how to perform better network quality evaluation to ensure better network quality media distribution is an important link for ensuring good call quality.
At present, the general routing for determining media distribution mainly combines the network quality of users, but the network quality data is generally single and has poor accuracy.
Disclosure of Invention
The embodiment of the invention provides a media server distribution method, a device, equipment and a storage medium, which can optimize the existing media server distribution scheme.
In a first aspect, an embodiment of the present invention provides a media server allocation method, where the method includes:
detecting that an audio and video call event is triggered, and determining a plurality of available areas according to client attribute information respectively corresponding to a calling party and a called party, wherein at least one media server exists in the available areas;
acquiring first detection data between the calling party and each available area and second detection data between the called party and each available area from a first network performance detection data set collected in advance, wherein the detection data comprises data of at least two network performance indexes obtained after detection is carried out by using a preset data packet sequence;
determining a first score corresponding to each available region by using a first preset scoring rule based on the first detection data and the second detection data;
and determining a target area according to the first score, and determining and distributing a target media server corresponding to the audio and video call event according to a media server existing in the target area.
In a second aspect, an embodiment of the present invention provides a media server distribution apparatus, where the apparatus includes:
the system comprises an available area determining module, a judging module and a judging module, wherein the available area determining module is used for detecting that an audio and video call event is triggered and determining a plurality of available areas according to client attribute information respectively corresponding to a calling party and a called party, and at least one media server exists in each available area;
the system comprises a detection data acquisition module, a data processing module and a data processing module, wherein the detection data acquisition module is used for acquiring first detection data between a calling party and each available area and second detection data between a called party and each available area from a first network performance detection data set collected in advance, and the detection data comprises data of at least two network performance indexes obtained after detection is carried out by using a preset data packet sequence;
the score determining module is used for determining a first score corresponding to each available area by using a first preset scoring rule based on the first detection data and the second detection data;
and the distribution module is used for determining a target area according to the first score, determining a target media server corresponding to the audio and video call event according to a media server existing in the target area and distributing.
In a third aspect, an embodiment of the present invention provides a computer device, which includes a memory, a processor, and a computer program stored on the memory and executable on the processor, and when the processor executes the computer program, the media server distribution method according to an embodiment of the present invention is implemented.
In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements a media server distribution method according to an embodiment of the present invention.
The media server allocation scheme provided in the embodiments of the present invention detects that an audio/video call event is triggered, determining a plurality of available areas containing media servers according to client attribute information respectively corresponding to a calling party and a called party, acquiring first detection data between the calling party and each available area and second detection data between the called party and each available area from a first network performance detection data set collected in advance, wherein the detection data comprises data of at least two network performance indexes obtained by detecting by using a preset data packet sequence, a first score corresponding to each available area is determined by using a first preset scoring rule based on the first detection data and the second detection data, and determining a target area according to the first score, and determining and distributing a target media server corresponding to the audio and video call event according to the media servers existing in the target area. By adopting the technical scheme, when the media server is required to be allocated for the audio and video call event, each available area is scored according to the pre-collected detection data containing a plurality of network performance indexes, so that a reasonable target area can be rapidly and accurately determined, the media server in the target area is allocated to a call party, and the audio and video call performance is favorably improved.
Drawings
Fig. 1 is a schematic flowchart of a media server allocation method according to an embodiment of the present invention;
fig. 2 is a schematic flowchart of another media server allocation method according to an embodiment of the present invention;
fig. 3 is a system flow diagram illustrating a media server distribution method according to an embodiment of the present invention;
fig. 4 is a block diagram of a media server distribution device according to an embodiment of the present invention;
fig. 5 is a block diagram of a computer device according to an embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be further noted that, for the convenience of description, only some of the structures related to the present invention are shown in the drawings, not all of the structures. In addition, the embodiments and features of the embodiments in the present invention may be combined with each other without conflict.
Fig. 1 is a schematic flowchart of a media server distribution method according to an embodiment of the present invention, where the method may be performed by a media server distribution apparatus, where the apparatus may be implemented by software and/or hardware, and may be generally integrated in a computer device such as a server. For example, for an application program with an audio/video communication function (hereinafter referred to as a preset application program), a client is generally installed in a mobile terminal such as a mobile phone, and a corresponding server can allocate a media server to the client that needs to perform a call by executing the media server allocation method provided by the embodiment of the present invention, and the client establishes a network connection with the allocated media server, so as to implement network transmission of audio/video call data.
As shown in fig. 1, the method includes:
step 101, detecting that an audio/video call event is triggered, and determining a plurality of available areas according to client attribute information respectively corresponding to a calling party and a called party, wherein at least one media server exists in the available areas.
For example, when a first user initiates an audio/video call request to a second user through a client of a preset application installed on a mobile terminal used by the first user, it may be detected that an audio/video call event is triggered, where the client used by the first user is a calling party and the client used by the second user is a called party.
For example, for an internationalized call environment, network quality varies widely from country to country, and network quality needs to be evaluated from finer-grained users. The client attribute information may include, for example, a geographic location, a network type, a network service operator, and the like corresponding to the client. Wherein, the geographic location may include a country, a region, a city, or the like; the network types may include, for example, operator networks, wireless local area networks, and the like; the network service operator may be the name or identity of the operator providing the mobile network service to the current client, etc.
For example, the media servers may be deployed in a plurality of areas, at least one media server exists in each area, available area lists corresponding to different client attributes may be preset according to the distribution conditions of the media servers, and then, after it is detected that an audio/video call event is triggered, an area in the corresponding available area list may be quickly determined as an available area that needs to be further screened currently according to client attribute information.
Step 102, acquiring first detection data between the calling party and each available area and second detection data between the called party and each available area from a first network performance detection data set collected in advance, wherein the detection data comprises data of at least two network performance indexes obtained after detection is carried out by using a preset data packet sequence.
In the embodiment of the invention, each media server in the preset media server set can be detected by different clients through the preset data packet sequence, so that network performance related data between the clients and the media servers, namely detection data, can be obtained in advance. The preset set of media servers may be all or part of the media servers deployed within a service scope (e.g., in an international call service, the service scope may include multiple countries or even the world) for a preset application. If the media servers are part of the media servers, the determination may be performed according to the regions, for example, one media server is selected from each region and added to the preset media server set.
For example, the preset data packet sequence may include a plurality of probe packets, and the number of the probe packets, the sending interval of the probe packets, the size of the probe packets, and the like may be set according to actual requirements.
Illustratively, the at least two network performance indicators may include, for example, an average response time, a packet reception success rate, a packet loss rate, a network delay jitter, and the like. Average Response Time (Average Response Time) is also called Round-Trip Time (RTT); the data packet receiving success rate can represent the ratio of the number of the successfully received detection packets to the total number of the sent detection packets, and can reflect the survival condition of the data packets of the round-trip path; the packet loss rate of the data packet may represent the ratio of the number of lost detection packets to the total number of sent detection packets, and may reflect the packet loss condition of the round-trip path; the network delay Jitter (Jitter) can be determined by the difference between the maximum RTT and the minimum RTT, and reflects the fluctuation condition of the network.
In the related art, when determining the allocation priority of the media server, the performance index to be considered is small, and usually only the response time is considered, so that it is difficult to perform allocation reasonably. In addition, in the related art, detection is generally performed after an audio/video call is initiated, and the detected data can only represent the current network condition in a short time, which further causes inaccuracy of a detection result and affects the distribution efficiency of the media server.
In the embodiment of the invention, the network performance detection data set is constructed in a mode of detecting and collecting the detection data in advance, and after the audio and video call event is detected to be triggered, the required detection data can be rapidly acquired from the network performance detection data set, so that the media server to be allocated is rapidly determined, the allocation efficiency is improved, the network connection is rapidly completed, and the audio and video call experience is improved.
Step 103, determining a first score corresponding to each available region by using a first preset scoring rule based on the first detection data and the second detection data.
For example, the first score may be used to reflect the overall network performance of the routing path of the network connection formed by the calling party to the currently available area to the called party, with the currently available area being employed. For each available region, a corresponding first score may be determined from the corresponding first detection data and second detection data. The first preset scoring rule may be designed according to a type of a network performance indicator included in the probe data. For a certain network performance index, a first index value may be determined according to a value in the corresponding first detection data and a value in the corresponding second detection data, and the determination manner may be, for example, addition, weighted sum, averaging, taking a maximum value, taking a minimum value or product, and the like. The first preset scoring rule may be, for example, the sum, weighted sum or weighted sum of squares, etc. of the first index values of the respective network performance indexes.
And step 104, determining a target area according to the first score, determining a target media server corresponding to the audio and video call event according to a media server existing in the target area, and distributing.
For example, the selectable region with the highest first score may be determined as the target region, or a plurality of candidate regions may be screened out on the basis of the first score, and the target region may be further determined on the basis of the plurality of candidate regions, which is not limited specifically. Optionally, after the target area is determined, any media server in the target area may be determined as a target media server to be allocated corresponding to the current audio/video call event, a media server closest to the calling party and/or the called party in the target area may also be determined as a target media server to be allocated, or a target media server may be selected from the target area according to other preset rules.
The media server distribution method provided by the embodiment of the invention detects that the audio and video call event is triggered, determining a plurality of available areas containing media servers according to client attribute information respectively corresponding to a calling party and a called party, acquiring first detection data between the calling party and each available area and second detection data between the called party and each available area from a first network performance detection data set collected in advance, wherein the detection data comprises data of at least two network performance indexes obtained by detecting by using a preset data packet sequence, a first score corresponding to each available area is determined by using a first preset scoring rule based on the first detection data and the second detection data, and determining a target area according to the first score, and determining and distributing a target media server corresponding to the audio and video call event according to the media servers existing in the target area. By adopting the technical scheme, when the media server is required to be allocated for the audio and video call event, each available area is scored according to the pre-collected detection data containing a plurality of network performance indexes, so that a reasonable target area can be rapidly and accurately determined, the media server in the target area is allocated to a call party, and the audio and video call performance is favorably improved.
For a home-based call environment, the forwarding of media servers across machine rooms can be considered in combination with the network quality among different machine rooms. In some embodiments, said determining a target region from said first score comprises: screening candidate regions from the plurality of available regions according to the first score; determining candidate region pairs, acquiring third detection data among the candidate region pairs from a second network performance detection data set collected in advance, and determining second scores corresponding to the candidate region pairs by using a second preset scoring rule based on the first detection data, the second detection data and the third detection data; the advantage of determining the target area according to the sequence of the first score and the second score of the candidate area is that a media server can be added on a routing path of network connection between a calling party and a called party, and for long-distance communication scenes such as international communication, a routing forwarding mode crossing a machine room can be provided, so that the overall network connection quality is ensured, and the communication experience is further improved.
For example, a preset number of available regions with the highest first score may be selected as candidate regions, for example, a preset number of available regions with a top rank may be selected as candidate regions after being sorted from high to low according to the first score. The preset number may be determined according to actual conditions such as calculation power of the server, for example, may be 5, that is, after the ranking, the available region 5 before the ranking is determined as the candidate region. After the candidate regions are determined, pairwise combination can be performed on the multiple candidate regions to obtain candidate region pairs; and selecting a candidate region pair which is closer to the calling party and a candidate region pair which is closer to the called party according to the distance between the candidate region and the calling party and the distance between the candidate region and the called party.
After adding a media server to the routing path of the network connection between the calling party and the called party, the network performance between the two media servers also needs to be considered, and therefore, probe data between media servers in different regions may be collected in advance, forming a second network performance probe data set, after determining the candidate region pair, third probing data between two candidate regions of the candidate region pair is directly obtained from the second network performance probing data set, a second score is calculated from the first detection data, the second detection data and the third detection data corresponding to the candidate region pair, the second score may be used to reflect that in case the current candidate region pair is employed, the whole network performance of the routing path of the network connection formed by the calling party to the first candidate area, then to the second candidate area and finally to the called party. Assuming that a calling party is a user A, a called party is a user B, a first candidate area is a, a second candidate area is B, the first detection data reflects the network performance between the users A and a, the third detection data represents the network performance between a and B, the second detection data reflects the network performance between B and the user B, and the corresponding score of the candidate area pair of a and B adopted on the routing path of the network connection can be determined according to the detection data.
The second preset scoring rule may be designed according to the type of the network performance index included in the probe data. For a certain network performance index, a second index value may be determined according to a value in the corresponding first detection data, a value in the second detection data, and a value in the third detection data, where the determination manner may be, for example, addition, weighted sum, averaging, taking a maximum value, taking a minimum value or product, and the like. The second preset scoring rule may be, for example, the sum, weighted sum or weighted sum of squares, etc. of the second index values of the network performance indicators.
In some embodiments, further comprising: under the condition that a target client side is determined to meet preset detection conditions, issuing a detection task to the target client side, and recording client side attribute information corresponding to the target client side, wherein the detection task comprises detection parameters used for determining a preset data packet sequence, and the client side attribute information comprises at least one of a geographic position, a network type and a network service operator; receiving detection data returned by the target client after executing the detection task, wherein the detection task is executed for each media server in a preset media server set; and summarizing the detection data returned by the target clients by taking the client attribute information and the area of the media server as summarizing dimensions to obtain a first network performance detection data set. The advantage of this is that the acquisition and aggregation of the probe data can be performed in advance to form an accurate first network performance probe data set. The first network performance probe data set may be understood as a pre-constructed routing decision table from the user terminal to the media server.
For example, meeting the preset detection condition may include that the target client is not in the audio/video call process, and the target client avoids executing the detection task to affect the call of the target client, and specifically, the detection task may be issued to the target client after detecting that the call of the target client is ended, where the detection task may include detection parameters such as the number of detection packets, the sending interval of the detection packets, and the size of the detection packets, and the preset data packet sequence is determined according to the detection parameters, the detection packets are sent to each media server in the preset media server set that needs to be detected according to the preset data packet sequence, and the feedback condition of each media server is recorded, so that the detection data is calculated and reported to the server. After receiving the detection data reported by the multiple target clients, the server may aggregate the detection data according to the time dimension of a preset time level (e.g., according to day, hour, or minute, different countries or regions may correspond to different preset time levels, for example, a key country may be set to a minute level to ensure timeliness of the detection data set), and then summarize the client attribute information and the region to which the media server belongs as a summarization dimension to obtain a first network performance detection data set. For example, the client attribute information includes countries, and may summarize the detection data from the clients whose geographic locations are different countries to each region; for another example, the client attribute information includes countries and operators, and may summarize probe data from clients with geographic locations of different countries and different operators to each area, and the like, for example, the geographic location is the united states, and probe data from china moving to area c and probe data from china communicating to area c are summarized separately. The more items contained in the client attribute information, the finer the summarizing granularity, and the more accurate the selection of the target media server can be performed under the condition that the plurality of items of client attribute information of the calling party and the called party can be obtained.
In some embodiments, the sending the probe task to the target client further includes: sending the detection task to a target media server in the preset media server set; receiving detection data returned by the target media server after executing the detection task, wherein the current target media server executes the detection task aiming at other media servers except the current target media server in the preset media server set; and summarizing the detection data returned by the target media servers by taking the area to which the media server belongs as a summarizing dimension to obtain a second network performance detection data set. The method has the advantages that the same detection task is synchronously sent to the target media server while the detection task is sent to the target client, the consistency of detection data between the client and the media server and the detection data between the media servers on detection time is ensured, and the method has reference value in calculating the score. The target media server may be all or part of a preset set of media servers. The second network performance probe data set may be understood as a pre-constructed routing decision table between media servers.
For example, after receiving the detection task, a certain target media server d may determine a preset data packet sequence according to the detection parameter, respectively send a detection packet to each media server (a, b, c, and e) except d in a preset media server set (assumed to include a, b, c, d, and e) according to the preset data packet sequence, record a feedback condition of each media server, further calculate detection data, and report the detection data to the server. After receiving the probe data reported by the target media servers, the server may aggregate the probe data according to a time dimension of a preset time level (e.g., according to day, hour, or minute), and then summarize the probe data by using the area to which the media server belongs as a summarization dimension, so as to obtain a second network performance probe data set.
In some embodiments, the determining a first score corresponding to each available region by using a first preset scoring rule based on the first detection data and the second detection data includes: calculating first index values corresponding to the at least two network performance indexes corresponding to each available area according to the first detection data and the second detection data; and calculating the weighted sum or the weighted square sum of at least two first index values aiming at each available area to obtain a first score corresponding to each available area. The advantage of such setting is that the first score can be reasonably calculated, so that the first score can more accurately reflect the overall network performance of the routing path under the condition of adopting the current available area, and the distribution accuracy of the media server is further improved.
In some embodiments, the screening of the candidate regions from the plurality of available regions according to the first score comprises: and screening the preset number of available regions with the highest first score as candidate regions. Wherein the determining a second score corresponding to the candidate region pair by using a second preset scoring rule based on the first detection data, the second detection data and the third detection data comprises: calculating second index values respectively corresponding to the at least two network performance indexes corresponding to each candidate area pair according to the first detection data, the second detection data and the third detection data; and calculating the weighted sum or the weighted square sum of at least two second index values aiming at each candidate region pair to obtain a second score corresponding to each candidate region pair. The advantage of such setting is that the second score can be reasonably calculated, so that the second score can more accurately reflect the overall network performance of the routing path under the condition of adopting the current candidate region pair, and the distribution accuracy of the media server is further improved.
In some embodiments, the at least two network performance indicators include at least one of average response time, packet reception success rate, and network delay jitter. When the average response time is included, the corresponding first index value is determined according to the sum of the values of the average response time in the first detection data and the second detection data, and the corresponding second index value is determined according to the sum of the values of the average response time in the first detection data, the second detection data and the third detection data. When the success rate of receiving the data packet is included, a corresponding first index value is determined according to the product of the success rate values of receiving the data packet in the first detection data and the second detection data, and a corresponding second index value is determined according to the product of the success rate values of receiving the data packet in the first detection data, the second detection data and the third detection data. When network delay jitter is included, a corresponding first index value is determined according to the sum of network delay jitter values in the first detection data and the second detection data, and a corresponding second index value is determined according to the sum of network delay jitter values in the first detection data, the second detection data and the third detection data. The advantage of setting up like this is, can rationally calculate first index value and/or second index value, make corresponding first score and/or second score more accurate, promote the accuracy that media server distributes.
In some embodiments, the determining and allocating a target media server corresponding to the audio/video call event according to a media server existing in the target area includes: determining a target area with the lowest corresponding distribution cost in the target areas as an area to be distributed; and determining a target media server corresponding to the audio and video call event according to the media servers in the area to be distributed and distributing the target media server. The allocation cost may include network traffic cost, and the influence degree of the load of the media server on the performance of the media server. The advantage of setting up like this is, on the basis of guaranteeing network performance, compromise the distribution cost simultaneously to better adapt to the conversation environment of internationalization. When the target region is a pair of candidate regions, the allocation cost may be the sum of the allocation costs corresponding to the two candidate regions.
In some embodiments, further comprising: if the target area cannot be determined currently, determining a preset media server matched with client attribute information respectively corresponding to the calling party and the called party as a server to be allocated; if the matched preset media server cannot be inquired, determining the media server closest to the calling party and/or the called party as a server to be distributed; and taking the server to be distributed as a target media server corresponding to the audio and video call event and distributing. This has the advantage that the availability of the allocation scheme can be increased.
For example, when there is little or missing probe data, or an available area cannot be determined, or there are many blacklisted areas for the calling party and/or the called party (for example, areas blacklisted due to long-term poor network performance relative to the calling party and/or the called party), a situation that a target area cannot be determined may occur, for an international call environment, a fixed media server (a preset media server) may be directly specified for some specific countries to supplement the situation that the target area cannot be determined, so as to ensure availability, and specifically, a routing path corresponding to the preset media server may be written in a hard coding manner. For the absence of the preset media server, the media server can be selected for distribution based on the principle of proximity, and the availability is further ensured.
In some embodiments, an audio-video call in a multi-party group chat mode may also be supported, at this time, if there are multiple called parties, corresponding target areas may be determined for multiple groups of calling and called parties, and when there are at least two target areas corresponding to the called parties including candidate area pairs, it is ensured that the at least two candidate area pairs corresponding to the at least two called parties respectively and serving as the target areas are the same as candidate areas allocated to the calling party. That is, in the multiple routing paths from the calling party to the multiple called parties, the same area is used for establishing network connection with the calling party. The method has the advantages of reducing the forwarding times of the audio and video data and improving the communication efficiency.
Fig. 2 is a schematic flow chart of another media server distribution method according to an embodiment of the present invention, and fig. 3 is a schematic system flow chart of a media server distribution method according to an embodiment of the present invention, which can be understood by referring to fig. 2 and fig. 3. As shown in fig. 2, the method may include:
step 201, determining the detected client end ending the audio/video call as a target client end, recording client end attribute information corresponding to the target client end, and sending a detection task to the target client end and a target media server.
The detection task comprises detection parameters used for determining a preset data packet sequence, wherein the detection parameters comprise the number of detection packets, the sending interval of the detection packets and the size of the detection packets. The client attribute information includes geographic location, network type, and network service operator.
For example, the client that has just finished the call may be regarded as an active user, and user data of the active user is recorded, where the user data includes attribute information of the used client, so as to facilitate subsequent summarization of the probe data. And the target client determines a preset data packet sequence according to the detection parameters and sends a detection packet to the media server to obtain a detection result. And the target media server determines a preset data packet sequence according to the detection parameters and sends a detection packet to the media server to obtain a detection result.
Step 202, receiving the detection data reported by the multiple target clients after executing the detection tasks, summarizing to obtain a first network performance detection data set by using the client attribute information and the areas to which the media servers belong as summarizing dimensions, and summarizing to obtain a second network performance detection data set by receiving the detection data reported by the multiple target media servers after executing the detection tasks by using the areas to which the media servers belong as summarizing dimensions.
Illustratively, the probe data includes data of network performance indicators, which include average response time (denoted as RTT), packet reception success Rate (denoted as Succ _ Rate), and network delay Jitter (denoted as Jitter).
And 203, detecting that the audio and video call event is triggered, and determining a plurality of available areas according to client attribute information respectively corresponding to a calling party and a called party.
For example, for an international call scenario, a global available area list may be obtained according to respective geographic locations of a calling party and a called party.
Step 204, obtaining first detection data between the calling party and each available area and second detection data between the called party and each available area from the first network performance detection data set.
Step 205, determining a first score corresponding to each available region by using a first preset scoring rule based on the first detection data and the second detection data.
For example, first index values corresponding to the network performance indexes corresponding to the available areas may be calculated according to the first probe data and the second probe data.
For example, the first index values, respectively denoted as RTT1, Succ _ Rate1, and Jitter1, may be determined by the following expressions:
RTT1=RTT_Initiator+RTT_buddy
Jitter1=Jitter_Initiator+Jitter_buddy
Succ_Rate1=Succ_Rate_Initiator*Succ_Rate_Buddy*100
wherein Initiator corresponds to the calling party and buddy corresponds to the called party. The RTT _ Initiator represents the value of RTT from the calling party to the corresponding available area, and the RTT _ buddy represents the value of RTT from the called party to the corresponding available area; the Jitter _ Initiator represents the value of Jitter from the calling party to the corresponding available area, and the Jitter _ buddy called party represents the value of Jitter from the calling party to the corresponding available area; the Succ _ Rate _ Initiator indicates the value of Succ _ Rate from the calling party to the corresponding available region, and the Succ _ Rate _ bucket called party indicates the value of Succ _ Rate to the corresponding available region.
The first Score, Score1, may be determined by the expression:
Score1=(RTT1*RTT1_coef)^2+(Succ_Rate1*Succ_rate1_coef)^2+(Jitter1*Jitter1_coef)^2
wherein, RTT1_ coef represents the weight coefficient of RTT index in the first score, Succ _ rate1_ coef represents the weight coefficient of Succ _ rate index in the first score, and Jitter1_ coef represents the weight coefficient of Jitter index in the first score. The three weight coefficients may be configured according to factors such as network environment.
Step 206, screening the preset number of available regions with the highest first score as candidate regions.
Illustratively, the available regions are sorted according to a first score, and a preset number of available regions with the highest score are selected as candidate regions.
Step 207, determining a candidate region pair, obtaining third detection data between two candidate regions in the candidate region pair from the second network performance detection data set, and determining a second score corresponding to the candidate region pair by using a second preset scoring rule based on the first detection data, the second detection data and the third detection data.
For example, first, a second index value corresponding to the network performance index corresponding to each candidate region pair is calculated according to the first detection data, the second detection data and the third detection data corresponding to the candidate region pair.
For example, the second index values, denoted RTT2, Succ _ Rate2, and Jitter2, respectively, may be determined by the following expression:
RTT2=RTT_Initiator_Region1+RTT_Region1_Region2+RTT_Buddy_Region2
Jitter2=Jitter_Initiator_Region1+Jitter_Region1_Region2+
Jitter_Buddy_Region2
Succ_Rate2=Succ_Rate_Initiator_Region1*Succ_Rate_Region1_Region2*
Succ_Rate_Buddy_Region2*10000
the Initiator corresponds to the calling party, the buddy corresponds to the called party, the Region1 represents a first candidate Region of the candidate Region pair that needs to be network-connected with the calling party, and the Region2 represents a second candidate Region of the candidate Region pair that needs to be network-connected with the called party. RTT _ Initiator _ Region1 represents a value of RTT from the calling party to the corresponding first candidate Region, RTT _ Region1_ Region2 represents a value of RTT from the first candidate Region to the second candidate Region, and RTT _ Buddy _ Region2 represents a value of RTT from the called party to the second candidate Region; the Jitter _ Initiator _ Region1 represents the value of Jitter from the calling party to the corresponding first candidate Region, the Jitter _ Region1_ Region2 represents the value of Jitter from the first candidate Region to the second candidate Region, and the Jitter _ budget _ Region2 represents the value of Jitter from the called party to the second candidate Region; the Succ _ Rate _ Initiator _ Region1 indicates the value of the Succ _ Rate from the calling party to the corresponding first candidate Region, the Succ _ Rate _ Region1_ Region2 indicates the value of the Succ _ Rate from the first candidate Region to the second candidate Region, and the Succ _ Rate _ bucket _ Region2 indicates the value of the Succ _ Rate from the called party to the second candidate Region.
The second Score2 may be determined by the expression:
Score2=(RTT2*RTT2_coef)^2+(Succ_Rate2*Succ_rate2_coef)^2+(Jitter2*Jitter2_coef)^2
wherein RTT2_ coef represents a weight coefficient of the RTT index in the second fraction, Succ _ rate2_ coef represents a weight coefficient of the Succ _ rate index in the second fraction, and Jitter2_ coef represents a weight coefficient of the Jitter index in the second fraction. The three weighting coefficients may be configured according to network environment and other factors, and may be the same as or different from, and are generally the same as, the first score expression.
Step 208, determining the target area according to the ranking of the first score and the second score of the candidate area.
Step 209, judging whether the target area is successfully determined, if so, executing step 210; otherwise, step 211 is executed.
Step 210, determining a target area with the lowest corresponding allocation cost in the target area as an area to be allocated, and determining and allocating a target media server corresponding to the audio and video call event according to media servers existing in the area to be allocated.
Step 211, determining whether there is a preset media server matched with the client attribute information respectively corresponding to the calling party and the called party, if yes, executing step 212; otherwise, step 213 is performed.
And step 212, taking the preset media server as a target media server corresponding to the audio and video call event and distributing.
And step 213, determining the media server closest to the calling party and/or the called party as a target media server corresponding to the audio and video call event and distributing.
The media server allocation method provided by the embodiment of the invention can be used for scoring based on a large amount of network detection data by combining three indexes of network delay, jitter and data packet receiving success rate, and selecting candidate routing schemes according to the score sorting, so that the accuracy is higher. For international calls with far geographic positions, delay caused by forwarding among media servers is considered, the method is more suitable for cross-regional route forwarding, and expansibility is stronger. And finally, selecting the optimal media server according to the cost and the score, and optimizing the cost while ensuring the call quality. For summary of the detection data, real-time detection data (such as minute level) can be adopted for main countries, when the network quality is poor due to the fact that a public network of a certain machine room is blocked or the machine room is in fault, such as abnormal power failure and the like, changes of networks in various areas can be rapidly identified, a routing decision table is immediately updated, the fault area is automatically removed, and a client is ensured to be always connected to the current optimal media server. User data acquisition, network data packet detection, detection data storage, acquisition of detection data and media server allocation form a complete link, during media allocation, a hard coded routing and a near selection scheme are provided, and high availability is guaranteed when the detection data link is abnormal.
Fig. 4 is a block diagram of a media server distribution apparatus according to an embodiment of the present invention, where the apparatus may be implemented by software and/or hardware, and may be generally integrated in a computer device, and may perform a media server distribution method by executing the apparatus. As shown in fig. 4, the apparatus includes:
an available area determining module 401, configured to detect that an audio/video call event is triggered, and determine a plurality of available areas according to client attribute information corresponding to a calling party and a called party, where at least one media server exists in the available areas;
a detection data obtaining module 402, configured to obtain, from a first network performance detection data set collected in advance, first detection data between the calling party and each available area and second detection data between the called party and each available area, where the detection data includes data of at least two network performance indexes obtained after detection is performed by using a preset data packet sequence;
a score determining module 403, configured to determine, based on the first detection data and the second detection data, a first score corresponding to each available region by using a first preset scoring rule;
and the allocation module 404 is configured to determine a target area according to the first score, determine a target media server corresponding to the audio/video call event according to a media server existing in the target area, and allocate the target media server.
When the media server distribution device provided by the embodiment of the invention needs to distribute the media server for the audio and video call event, each available area is scored according to the pre-collected detection data containing a plurality of network performance indexes, so that a reasonable target area can be quickly and accurately determined, the media server in the target area is distributed to a call party, and the audio and video call performance is favorably improved.
The embodiment of the invention provides computer equipment, and the media server distribution device provided by the embodiment of the invention can be integrated in the computer equipment. Fig. 5 is a block diagram of a computer device according to an embodiment of the present invention. The computer device 500 comprises a memory 501, a processor 502 and a computer program stored on the memory 501 and executable on the processor 502, wherein the processor 502 implements the media server distribution method provided by the embodiment of the invention when executing the computer program.
Embodiments of the present invention also provide a storage medium containing computer-executable instructions, which when executed by a computer processor, are used to perform the media server distribution method provided by the embodiments of the present invention.
The media server distribution device, the equipment and the storage medium provided in the above embodiments can execute the media server distribution method provided in any embodiment of the present invention, and have corresponding functional modules and beneficial effects for executing the method. Technical details that are not described in detail in the above embodiments may be referred to a media server distribution method provided in any embodiment of the present invention.
Note that the above is only a preferred embodiment of the present invention. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in more detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the claims.

Claims (12)

1. A media server distribution method, comprising:
detecting that an audio and video call event is triggered, and determining a plurality of available areas according to client attribute information respectively corresponding to a calling party and a called party, wherein at least one media server exists in the available areas;
acquiring first detection data between the calling party and each available area and second detection data between the called party and each available area from a first network performance detection data set collected in advance, wherein the detection data comprises data of at least two network performance indexes obtained after detection is carried out by using a preset data packet sequence;
determining a first score corresponding to each available region by using a first preset scoring rule based on the first detection data and the second detection data;
and determining a target area according to the first score, and determining and distributing a target media server corresponding to the audio and video call event according to a media server existing in the target area.
2. The method of claim 1, wherein determining a target region from the first score comprises:
screening candidate regions from the plurality of available regions according to the first score;
determining a candidate region pair, acquiring third detection data between two candidate regions in the candidate region pair from a second network performance detection data set collected in advance, and determining a second score corresponding to the candidate region pair by using a second preset scoring rule based on the first detection data, the second detection data and the third detection data;
and determining a target area according to the ranking of the first score and the second score of the candidate area.
3. The method of claim 1, further comprising:
under the condition that a target client side is determined to meet preset detection conditions, issuing a detection task to the target client side, and recording client side attribute information corresponding to the target client side, wherein the detection task comprises detection parameters used for determining a preset data packet sequence, and the client side attribute information comprises at least one of a geographic position, a network type and a network service operator;
receiving detection data returned by the target client after executing the detection task, wherein the detection task is executed for each media server in a preset media server set;
and summarizing the detection data returned by the target clients by taking the client attribute information and the area of the media server as summarizing dimensions to obtain a first network performance detection data set.
4. The method of claim 3, wherein issuing the probing task to the target client further comprises:
sending the detection task to a target media server in the preset media server set;
receiving detection data returned by the target media server after executing the detection task, wherein the current target media server executes the detection task aiming at other media servers except the current target media server in the preset media server set;
and summarizing the detection data returned by the target media servers by taking the area to which the media server belongs as a summarizing dimension to obtain a second network performance detection data set.
5. The method of claim 2, wherein determining a first score for each available region using a first pre-set scoring rule based on the first detection data and the second detection data comprises:
calculating first index values corresponding to the at least two network performance indexes corresponding to each available area according to the first detection data and the second detection data;
and calculating the weighted sum or the weighted square sum of at least two first index values aiming at each available area to obtain a first score corresponding to each available area.
6. The method of claim 5, wherein the screening candidate regions from the plurality of available regions according to the first score comprises:
screening the preset number of available regions with the highest first score as candidate regions;
wherein the determining a second score corresponding to the candidate region pair by using a second preset scoring rule based on the first detection data, the second detection data and the third detection data comprises:
calculating second index values respectively corresponding to the at least two network performance indexes corresponding to each candidate area pair according to the first detection data, the second detection data and the third detection data;
and calculating the weighted sum or the weighted square sum of at least two second index values aiming at each candidate region pair to obtain a second score corresponding to each candidate region pair.
7. The method of claim 6, wherein the at least two network performance indicators comprise at least one of average response time, packet reception success rate, and network delay jitter;
when the average response time is included, determining a corresponding first index value according to the sum of the values of the average response time in the first detection data and the second detection data, and determining a corresponding second index value according to the sum of the values of the average response time in the first detection data, the second detection data and the third detection data;
when the success rate of receiving the data packet is included, a corresponding first index value is determined according to the product of the success rate values of receiving the data packet in the first detection data and the second detection data, and a corresponding second index value is determined according to the product of the success rate values of receiving the data packet in the first detection data, the second detection data and the third detection data;
when network delay jitter is included, a corresponding first index value is determined according to the sum of network delay jitter values in the first detection data and the second detection data, and a corresponding second index value is determined according to the sum of network delay jitter values in the first detection data, the second detection data and the third detection data.
8. The method according to claim 1, wherein the determining and allocating a target media server corresponding to the audio/video call event according to a media server existing in the target area comprises:
determining a target area with the lowest corresponding distribution cost in the target areas as an area to be distributed;
and determining a target media server corresponding to the audio and video call event according to the media servers in the area to be distributed and distributing the target media server.
9. The method of claim 1, further comprising:
if the target area cannot be determined currently, determining a preset media server matched with client attribute information respectively corresponding to the calling party and the called party as a server to be allocated;
if the matched preset media server cannot be inquired, determining the media server closest to the calling party and/or the called party as a server to be distributed;
and taking the server to be distributed as a target media server corresponding to the audio and video call event and distributing.
10. A media server distribution apparatus, comprising:
the system comprises an available area determining module, a judging module and a judging module, wherein the available area determining module is used for detecting that an audio and video call event is triggered and determining a plurality of available areas according to client attribute information respectively corresponding to a calling party and a called party, and at least one media server exists in each available area;
the system comprises a detection data acquisition module, a data processing module and a data processing module, wherein the detection data acquisition module is used for acquiring first detection data between a calling party and each available area and second detection data between a called party and each available area from a first network performance detection data set collected in advance, and the detection data comprises data of at least two network performance indexes obtained after detection is carried out by using a preset data packet sequence;
the score determining module is used for determining a first score corresponding to each available area by using a first preset scoring rule based on the first detection data and the second detection data;
and the distribution module is used for determining a target area according to the first score, determining a target media server corresponding to the audio and video call event according to a media server existing in the target area and distributing.
11. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the method according to any of claims 1-9 when executing the computer program.
12. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1-9.
CN202111529642.7A 2021-12-14 2021-12-14 Media server distribution method, device, equipment and storage medium Active CN114172967B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111529642.7A CN114172967B (en) 2021-12-14 2021-12-14 Media server distribution method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111529642.7A CN114172967B (en) 2021-12-14 2021-12-14 Media server distribution method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN114172967A true CN114172967A (en) 2022-03-11
CN114172967B CN114172967B (en) 2023-10-31

Family

ID=80486473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111529642.7A Active CN114172967B (en) 2021-12-14 2021-12-14 Media server distribution method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114172967B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114844951A (en) * 2022-04-22 2022-08-02 百果园技术(新加坡)有限公司 Request processing method, system, device, storage medium and product

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7599293B1 (en) * 2002-04-25 2009-10-06 Lawrence Michael Bain System and method for network traffic and I/O transaction monitoring of a high speed communications network
CN101834799A (en) * 2010-05-06 2010-09-15 工业和信息化部电信传输研究所 Selection method of server of mobile IPTV (Internet Protocol Television), client, server and system
CN104410509A (en) * 2014-10-16 2015-03-11 宁波菊风系统软件有限公司 A multipath data transmitting method based on quality evaluation
CN105391876A (en) * 2014-09-03 2016-03-09 阿尔卡特朗讯 Method and device for providing media services for communication
CN111770355A (en) * 2020-07-09 2020-10-13 北京达佳互联信息技术有限公司 Media server determination method, device, server and storage medium
CN113067807A (en) * 2021-03-15 2021-07-02 北京中联环信科技有限公司 High-capacity parallel processing conversation system and conversation method
CN113271474A (en) * 2021-05-25 2021-08-17 北京飞讯数码科技有限公司 Method, device, equipment and storage medium for testing streaming media server

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7599293B1 (en) * 2002-04-25 2009-10-06 Lawrence Michael Bain System and method for network traffic and I/O transaction monitoring of a high speed communications network
CN101834799A (en) * 2010-05-06 2010-09-15 工业和信息化部电信传输研究所 Selection method of server of mobile IPTV (Internet Protocol Television), client, server and system
CN105391876A (en) * 2014-09-03 2016-03-09 阿尔卡特朗讯 Method and device for providing media services for communication
CN104410509A (en) * 2014-10-16 2015-03-11 宁波菊风系统软件有限公司 A multipath data transmitting method based on quality evaluation
CN111770355A (en) * 2020-07-09 2020-10-13 北京达佳互联信息技术有限公司 Media server determination method, device, server and storage medium
CN113067807A (en) * 2021-03-15 2021-07-02 北京中联环信科技有限公司 High-capacity parallel processing conversation system and conversation method
CN113271474A (en) * 2021-05-25 2021-08-17 北京飞讯数码科技有限公司 Method, device, equipment and storage medium for testing streaming media server

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114844951A (en) * 2022-04-22 2022-08-02 百果园技术(新加坡)有限公司 Request processing method, system, device, storage medium and product
CN114844951B (en) * 2022-04-22 2024-03-19 百果园技术(新加坡)有限公司 Request processing method, system, device, storage medium and product

Also Published As

Publication number Publication date
CN114172967B (en) 2023-10-31

Similar Documents

Publication Publication Date Title
CN106656800B (en) Path selection method and system, network acceleration node and network acceleration system
CN109167674B (en) Service node scoring method, Domain Name System (DNS) scheduling method and server
CN113261244B (en) Network node combining MEC host and UPF selection
US9900402B1 (en) Capacity-independent demand assessment
US8307075B2 (en) Method, system and game server for recommending game room
EP2140609B1 (en) Method and system for identifying a multipoint control unit for hosting a conference
US20110145405A1 (en) Methods for Collecting and Analyzing Network Performance Data
CN109151009B (en) CDN node distribution method and system based on MEC
US9602378B2 (en) Route decision method, content delivery apparatus, and content delivery network interconnection system
US10411972B2 (en) Determining impact of network failures
CN102868770B (en) A kind of method of distribution interface, equipment and system
CN101911599B (en) Methods and systems for propagating statistics between federated contact center sites using proxy data servers
CN112600693B (en) Service request processing method, system, electronic equipment and computer storage medium
CN103516918B (en) Faulty resource restoration methods and device
CN112825527A (en) Service node distribution method and device based on MEC and related server
CN106209399A (en) Conference terminal preordering method, Conference server and conference terminal switched system
CN106656649A (en) Channel switching method based on speed measurement in real time conversations, user terminal and server
CN114172967B (en) Media server distribution method, device, equipment and storage medium
CN107332744B (en) Routing path selection method and system and user access server
US20090150564A1 (en) Per-user bandwidth availability
US9112664B2 (en) System for and method of dynamic home agent allocation
CN112671813A (en) Server determination method, device, equipment and storage medium
CN110380981B (en) Flow distribution method and equipment
EP3797492A1 (en) Heuristics for end to end digital communication performance measurement
CN110248138B (en) Method and device for audio and video conference

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant