CN104301287B - Many-to-many session implementation method, network node, server and system - Google Patents

Many-to-many session implementation method, network node, server and system Download PDF

Info

Publication number
CN104301287B
CN104301287B CN201310297765.1A CN201310297765A CN104301287B CN 104301287 B CN104301287 B CN 104301287B CN 201310297765 A CN201310297765 A CN 201310297765A CN 104301287 B CN104301287 B CN 104301287B
Authority
CN
China
Prior art keywords
session
network node
channel
server
type
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.)
Active
Application number
CN201310297765.1A
Other languages
Chinese (zh)
Other versions
CN104301287A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201310297765.1A priority Critical patent/CN104301287B/en
Priority to PCT/CN2014/074479 priority patent/WO2014161460A1/en
Publication of CN104301287A publication Critical patent/CN104301287A/en
Application granted granted Critical
Publication of CN104301287B publication Critical patent/CN104301287B/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions

Abstract

The invention discloses a method for realizing many-to-many conversation, which comprises the steps of after receiving a conversation initiating request of a network node, establishing one or more corresponding conversation channels for the network node when determining that the network node does not establish a conversation channel of a requested conversation type, and dividing the one or more conversation channels into a conversation set of the conversation type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type; and when a service request of the network node is received, selecting a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route service data. The invention also discloses a network node, a server and a system for realizing many-to-many conversation. By adopting the technical scheme of the invention, the number of session mappings is reduced, network resources are saved, and the network data transmission capability is improved.

Description

Many-to-many session implementation method, network node, server and system
Technical Field
The present invention relates to communications technologies, and in particular, to a method, a network node, a server, and a system for implementing many-to-many sessions.
Background
With the development of communication networks, the scale of network users is growing explosively, network applications are also showing a more diversified trend, the one-to-one routing and session management functions of the traditional network cannot meet the requirements of network applications, and in order to meet the requirement of continuously expanding the scale of network services, new one-to-many, even many-to-many routing and session management schemes are gradually applied.
However, from the service perspective, the current mainstream routing and session management method is still a one-to-many session routing in nature, so that a so-called many-to-many session is actually a set of one-to-many sessions, that is, one communication network node creates one session, a plurality of sessions communicated with other network nodes through a server establish a corresponding relationship, and when a message is sent, a destination session is selected for communication, so as to increase the data sending amount; when receiving data, only one session is still used as a communication channel, that is, the capability of sending data in many-to-many sessions is far higher than the capability of receiving data.
Disclosure of Invention
In view of this, the main objective of the present invention is to provide a method, a network node, a server and a system for implementing many-to-many sessions, which can reduce the number of session mappings, save network resources and improve network data transmission capability.
In order to achieve the purpose, the technical scheme of the invention is realized as follows:
the invention provides a method for realizing many-to-many conversation, which comprises the following steps:
after receiving a session initiation request of a network node, when determining that the network node does not establish a session channel of a requested session type, establishing one or more corresponding session channels for the network node, and dividing the one or more session channels into a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type;
and when a service request of the network node is received, selecting a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route service data.
In the foregoing solution, the selecting, according to a load balancing algorithm, a corresponding session channel from a session set matched with a session type corresponding to a service request to route service data includes:
selecting a session channel from a session set matched with the session type corresponding to the service request according to a load balancing algorithm, and sending the data related to the service request through the session channel;
after receiving the service data corresponding to the service request sent through the session channel or other session channels for receiving the service request, selecting the session channel or other session channels for receiving the service request of the network node and sending the service data corresponding to the service request;
and the other session channels are session channels in a session set matched with the session types corresponding to the service requests or the service data.
In the foregoing solution, the selecting, according to a load balancing algorithm, a corresponding session channel from a session set matched with a session type corresponding to a service request to route service data includes:
when only one session channel exists in the session set matched with the session type corresponding to the service request, the service data is routed through the session channel;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the lowest load to route service data;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the channel quality exceeding a set first threshold value and the lowest load to route service data;
and when a plurality of session channels are matched with the session types corresponding to the service requests, selecting the session channel with the bandwidth meeting the set second threshold and the lowest load to route the service data.
In the above scheme, after dividing the one or more session channels into the session set of the session type, the method further includes:
and establishing an item of the session type and the session set by taking the session type and/or an Internet Protocol (IP) address and port information of the network node as indexes.
In the above scheme, the session establishment mode is a synchronous mode or an asynchronous mode.
The invention also provides a method for realizing many-to-many conversation, which comprises the following steps:
after sending a session initiation request to a server, and when receiving a session channel which is returned by the server and allocated for a network node, sending a service request to the server through the session channel.
In the above scheme, the method further comprises:
and after receiving the service data routed by the server according to the load balancing algorithm and selecting the corresponding session channel from the session set matched with the session type corresponding to the service request, sending a service data response to the server through the session channel distributed by the server for the network node.
In the above solution, the session channel allocated to the network node and returned by the server includes:
after receiving a session initiation request of a network node, when determining that the network node does not establish a session channel of a requested session type, establishing one or more corresponding session channels for the network node, and dividing the one or more session channels into a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type;
and returning the session channel allocated to the network node.
In the above scheme, the selecting, by the server, a corresponding session channel from a session set matched with a session type corresponding to the service request according to a load balancing algorithm includes:
and when a service request of the network node is received, selecting a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route service data.
In the foregoing solution, the selecting, according to a load balancing algorithm, a corresponding session channel from a session set matched with a session type corresponding to a service request to route service data includes:
when only one session channel exists in the session set matched with the session type corresponding to the service request, the service data is routed through the session channel;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the lowest load to route service data;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the channel quality exceeding a set first threshold value and the lowest load to route service data;
and when a plurality of session channels are matched with the session types corresponding to the service requests, selecting the session channel with the bandwidth meeting the set second threshold and the lowest load to route the service data.
The invention also provides a server, which comprises a session set creating unit and a selecting unit; wherein the content of the first and second substances,
the session set creating unit is configured to create one or more corresponding session channels for a network node after receiving a session initiation request from the network node and when determining that the network node does not create a session channel of a requested session type, and divide the one or more session channels into a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type;
and the selection unit is used for selecting the corresponding session channel routing service data from the session set matched with the session type corresponding to the service request according to a load balancing algorithm when the service request of the network node is received.
In the foregoing solution, the selecting unit is further configured to:
selecting a session channel from a session set matched with the session type corresponding to the service request according to a load balancing algorithm, and sending the data related to the service request through the session channel;
after receiving the service data corresponding to the service request sent through the session channel or other session channels for receiving the service request, selecting the session channel or other session channels for receiving the service request of the network node and sending the service data corresponding to the service request;
and the other session channels are session channels in a session set matched with the session types corresponding to the service requests or the service data.
In the foregoing solution, the selecting unit is further configured to:
when only one session channel exists in the session set matched with the session type corresponding to the service request, the service data is routed through the session channel;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the lowest load to route service data;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the channel quality exceeding a set first threshold value and the lowest load to route service data;
and when a plurality of session channels are matched with the session types corresponding to the service requests, selecting the session channel with the bandwidth meeting the set second threshold and the lowest load to route the service data.
In the above solution, the server further includes a storage unit, configured to establish an entry between the session type and the session set by using the session type and/or the IP address and the port information of the network node as an index.
In the above scheme, the session establishment mode is a synchronous mode or an asynchronous mode.
The invention also provides a network node, which comprises a sending unit and a receiving unit; wherein the content of the first and second substances,
the sending unit is used for sending a session initiation request to the server; sending a service request to a server through a session channel which is returned by the server and allocated to a network node;
the receiving unit is used for receiving the session channel distributed by the server for the network node.
In the above scheme, the network receiving unit is further configured to receive service data routed by the server through selecting a corresponding session channel from a session set matched with a session type corresponding to the service request according to a load balancing algorithm; the sending unit is further configured to send a service data response to the server through the session channel allocated by the server to the network node.
The invention also provides a many-to-many conversation system, which comprises a network node and a server; wherein the content of the first and second substances,
the network node is used for sending a session initiation request to a server; sending a service request to a server;
the server is used for creating one or more corresponding session channels for the network node after receiving a session initiation request of the network node and when determining that the network node does not establish a session channel of a requested session type, and dividing the one or more session channels into a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type; and when receiving a service request of the network node, selecting a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route the service data.
Preferably, the network node is the network node described above; the server is the above server.
After receiving a session initiation request of a network node, when determining that the network node does not establish a session channel of a requested session type, establishing one or more corresponding session channels for the network node, and dividing the one or more session channels into a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type; and when a service request of the network node is received, selecting a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route service data. Therefore, the invention reduces the number of session mapping, further saves network resources, improves the network data transmission capability and enhances the scalability of the networking scheme.
Specifically, in the present invention, one network node may create multiple sessions, and divide the sessions into sets of different types, thereby converging the sessions; and when each network node receives and transmits data, selecting a session channel from the session set matched with the session type according to a load balancing algorithm to complete the data transmission. The invention realizes the function of multi-session access of network nodes, greatly reduces the number of session mappings and saves network resources; through the load balancing algorithm, the capability of transmitting data with high performance of the network node is maintained, and meanwhile, the capability of receiving the data with high performance of the network node is also achieved. In addition, the technical scheme of the invention has strong scalability, can flexibly support the networking scheme, and is particularly suitable for the network service based on a Transmission Control Protocol (TCP) network.
Drawings
Fig. 1 is a schematic flow chart illustrating an implementation of a many-to-many session method according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of an implementation flow of another many-to-many session method according to an embodiment of the present invention;
FIG. 3 is a schematic diagram of a system networking scheme according to an embodiment of the invention;
FIG. 4 is a schematic diagram of a server according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a network node according to an embodiment of the present invention;
FIG. 6 is a schematic diagram of a structure of a many-to-many session system according to an embodiment of the present invention;
FIG. 7 is a schematic flow chart illustrating a short message downlink service implemented in an embodiment;
fig. 8 is a schematic flow chart illustrating a point-to-point short message service implemented in an embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and specific embodiments.
Fig. 1 is a schematic flow chart of an implementation of a many-to-many session method according to an embodiment of the present invention, as shown in fig. 1, the method includes the following steps:
step 101: after receiving a session initiation request of a network node, when determining that the network node does not establish a session channel of a requested session type, establishing one or more corresponding session channels for the network node, and dividing the one or more session channels into a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type;
further, after dividing the one or more session channels into the session set of the session type, the method further includes:
and establishing and storing the session type and the list item of the session set by taking the session type and/or the IP address and the port information of the network node as indexes.
Here, the session establishment mode is a synchronous mode or an asynchronous mode.
Specifically, the session establishment process may be a synchronous manner, that is, after the session of the destination network node is established, a success message is replied to the source network node; the method can also be an asynchronous mode, namely, firstly returning a confirmation message to the source network node, and then initiating a request for establishing the session to the destination network node, and when the request fails, a retry mechanism can be adopted for re-requesting, and the session can also be abandoned.
The synchronous mode or the asynchronous mode is the same as the prior art.
Step 102: and when a service request of the network node is received, selecting a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route service data.
Specifically, the selecting, according to a load balancing algorithm, a corresponding session channel from a session set matched with a session type corresponding to the service request to route the service data includes:
selecting a session channel from a session set matched with the session type corresponding to the service request according to a load balancing algorithm, and sending the data related to the service request through the session channel;
after receiving the service data corresponding to the service request sent through the session channel or other session channels for receiving the service request, selecting the session channel or other session channels for receiving the service request of the network node and sending the service data corresponding to the service request;
and the other session channels are session channels in a session set matched with the session types corresponding to the service requests or the service data.
Specifically, the selecting, according to a load balancing algorithm, a corresponding session channel from a session set matched with a session type corresponding to the service request to route the service data includes:
when only one session channel exists in the session set matched with the session type corresponding to the service request, the service data is routed through the session channel;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the lowest load to route service data;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the channel quality exceeding a set first threshold value and the lowest load to route service data;
and when a plurality of session channels are matched with the session types corresponding to the service requests, selecting the session channel with the bandwidth meeting the set second threshold and the lowest load to route the service data.
For example, after receiving a service request message sent by a network node a, a server generates a Hash (Hash) index according to the type of the service request message, the address of the network node a and port information, finds out a session set matched with the service request message, selects a target session channel according to a load balancing algorithm, and forwards the service request message to a network node b; here, if the message forwarding fails, a retry mechanism may be used to retransmit the message, or a failure message may be directly returned to the source network node a;
after receiving and processing the service request message, the network node b sends a response message to the server; the network node b can select to use the session channel receiving the service request message to send a response message, and if the network node b has a plurality of sessions of the same type, another session channel can be selected from the session set to send the response message according to a load balancing algorithm;
the server receives the response message sent by the network node b, queries session information, can select a session channel for receiving the service request message of the network node a to forward the response message to the network node a, and can also select one session channel of the network node a to send the response message according to a load balancing algorithm.
The implementation of the above many-to-many session is explained below from the network node side. Fig. 2 is a schematic flow chart of another implementation of a many-to-many session method according to an embodiment of the present invention, as shown in fig. 2, the method includes the following steps:
step 201: sending a session initiation request to a server;
step 202: and when receiving a session channel which is returned by the server and allocated for the network node, sending a service request to the server through the session channel.
Further, the method further comprises:
and after receiving the service data routed by the server according to the load balancing algorithm and selecting the corresponding session channel from the session set matched with the session type corresponding to the service request, sending a service data response to the server through the session channel distributed by the server for the network node.
Specifically, the session channel allocated to the network node and returned by the server includes:
after receiving a session initiation request of a network node, when determining that the network node does not establish a session channel of a requested session type, establishing one or more corresponding session channels for the network node, and dividing the one or more session channels into a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type;
and returning the session channel allocated to the network node.
Specifically, the selecting, by the server, a corresponding session channel from a session set matched with a session type corresponding to the service request according to a load balancing algorithm includes:
and when a service request of the network node is received, selecting a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route service data.
Specifically, the selecting a corresponding session channel from a session set matched with a session type corresponding to the service request according to a load balancing algorithm to route the service data includes:
when only one session channel exists in the session set matched with the session type corresponding to the service request, the service data is routed through the session channel;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the lowest load to route service data;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the channel quality exceeding a set first threshold value and the lowest load to route service data;
and when a plurality of session channels are matched with the session types corresponding to the service requests, selecting the session channel with the bandwidth meeting the set second threshold and the lowest load to route the service data.
Fig. 3 is a schematic diagram of a networking scheme of a many-to-many session system according to the present invention, which shows that one network node can create multiple sessions and divide the sessions into different types of sets, and each network node realizes a function of accessing multiple sessions of the network node when receiving and transmitting data, thereby greatly reducing the number of session mappings, saving network resources, and flexibly supporting the networking scheme.
Fig. 4 is a schematic diagram of a composition structure of a server according to the present invention, and as shown in fig. 4, the server includes a session set creating unit 41 and a selecting unit 42; wherein the content of the first and second substances,
the session set creating unit 41 is configured to, after receiving a session initiation request from a network node, create one or more corresponding session channels for the network node when determining that the network node does not establish a session channel of a requested session type, and divide the one or more session channels into a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type;
the selecting unit 42 is configured to, when receiving a service request from a network node, select, according to a load balancing algorithm, a corresponding session channel from a session set matched with a session type corresponding to the service request to route service data.
Specifically, the selecting unit 42 is further configured to:
selecting a session channel from a session set matched with the session type corresponding to the service request according to a load balancing algorithm, and sending the data related to the service request through the session channel;
after receiving the service data corresponding to the service request sent through the session channel or other session channels for receiving the service request, selecting the session channel or other session channels for receiving the service request of the network node and sending the service data corresponding to the service request;
and the other session channels are session channels in a session set matched with the session types corresponding to the service requests or the service data.
Specifically, the selecting unit 42 is further configured to:
when only one session channel exists in the session set matched with the session type corresponding to the service request, the service data is routed through the session channel;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the lowest load to route service data;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the channel quality exceeding a set first threshold value and the lowest load to route service data;
and when a plurality of session channels are matched with the session types corresponding to the service requests, selecting the session channel with the bandwidth meeting the set second threshold and the lowest load to route the service data.
Specifically, the server further includes a storage unit 43, configured to establish an entry between the session type and the session set by using the session type and/or the IP address and the port information of the network node as an index.
Here, the session establishment mode is a synchronous mode or an asynchronous mode.
Fig. 5 is a schematic diagram of a structure of a network node according to an embodiment of the present invention, and as shown in fig. 5, the network node includes a sending unit 51 and a receiving unit 52; wherein the content of the first and second substances,
the sending unit 51 is configured to send a session initiation request to a server; sending a service request to a server through a session channel which is returned by the server and allocated to a network node;
the receiving unit 52 is configured to receive a session channel allocated by the server for the network node.
Further, the receiving unit 52 is further configured to receive service data routed by the server according to a load balancing algorithm by selecting a corresponding session channel from the session set matched with the session type corresponding to the service request;
the sending unit 51 is further configured to send a service data response to the server through the session channel allocated by the server to the network node.
Fig. 6 is a schematic structural diagram of the components of the many-to-many conversation system of the present invention, as shown in fig. 6, the system includes a network node 61 and a server 62; wherein the content of the first and second substances,
the network node 61 is configured to send a session initiation request to the server 62; sending a service request to a server;
the server 62 is configured to, after receiving a session initiation request of a network node 61 and when determining that the network node 61 does not establish a session channel of a requested session type, create one or more corresponding session channels for the network node 61, and divide the one or more session channels into a session set of the session type; when determining that the network node 61 has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type; and is further configured to, when receiving a service request from the network node 61, select a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route service data.
Specifically, a specific structure of the server 62 is shown in fig. 4, and a specific structure of the network node 61 is shown in fig. 5.
Fig. 7 is a schematic flowchart of a process for implementing a Mobile Termination (MT) service according to an embodiment, where as shown in fig. 7, the process includes the following steps:
step 701: an Extended Short Message Entity (ESME) creates a TCP link to the server and sends a bundle (Bind) login request.
Step 702: the server generates a Hash index according to the type of the Bind request, the Internet Protocol (IP) address and the port information of the ESME by using a session convergence algorithm, and queries whether a session set matching the Bind request exists in a session set Hash table, if so, executing step 703; if not, step 704 is performed.
Step 703: the session is directly added to the session set and after a successful response message is returned, step 706 is performed.
Step 704: the server creates an SMSC link to a plurality of Short Message Service Centers (SMSC) configured, and forwards a Bind login request.
Step 705: the server receives the successful response message returned by the SMSC and sends a successful response message to the ESME, step 706 is performed.
The steps 701 to 705 are processes of establishing a session channel.
Step 706: the ESME sends a submit message to the server.
Step 707: and the server selects an SMSC link in the same session set to forward the submit message according to a load balancing algorithm.
Here, the SMSC link is a transport layer session tunnel in a session set.
Step 708: the SMSC sends a submit response (submit _ resp) message to the server.
Step 709: the server sends a submit _ resp message to the ESME using the link that received the submit message.
Step 710: the SMSC sends a delivery (deliverer) response message to the server.
Step 711: and the server selects one ESME link in the same session set to forward the deliverer receipt message according to a routing algorithm.
The ESME link is also a session channel of a transport layer in a session set.
Step 712: the ESME sends a delivery response (deliverer _ resp) message to the server.
Step 713: the server sends a delivery _ resp message to the SMSC using the link that received the delivery acknowledgement message.
The steps 706 to 713 are processes for transmitting the service message.
The Bind login request, submit message, submit _ resp message, sender receipt message, and sender _ resp message in embodiment 7 are all messages defined in the short message protocol in the prior art.
Fig. 8 is a schematic flowchart of a process of implementing a point-to-point (P2P, Peer-to-Peer) short message service according to an embodiment of the present invention, as shown in fig. 8, the process includes the following steps:
step 801: the source SMSC creates a TCP link to the server and sends a Bind login request.
Step 802: the server generates a Hash index according to the type of the Bind login request, the IP address and the port information of the SMSC by using a session convergence algorithm, inquires whether a session set matched with the type of the Bind login request exists in a session set Hash table, and if the session set exists, executes a step 803; if not, go to step 804;
step 803: directly adding the session to the session set, and executing step 808 after returning a successful response message; .
Step 804: the server creates a link to the configured SMSCs and forwards a Bind login request.
Step 805: the server receives the successful response message returned by the SMSC and sends a successful response message to the source SMSC, step 806 is performed.
The above steps 801 to 805 are procedures for establishing a session channel.
Step 806: the source SMSC sends a deliverer message to the server.
Step 807: and the server selects a destination SMSC link in the same session set according to a load balancing algorithm, converts the sender message into a submit message, and sends the submit message to a destination SMSC by using the destination SMSC link.
Step 808: the destination SMSC sends a submit _ resp message to the server.
Step 809: the server sends a submit _ resp message to the SMSC using the link that receives the deliverer message.
Step 810: the destination SMSC sends a deliverer response message to the server.
Step 811: the server selects an SMSC link in the same session set according to a routing algorithm, converts the sender receipt message into a submit message and sends the submit message to the SMSC.
Step 812: the SMSC sends a submit _ resp message to the server.
Step 813: the server sends a delivery _ resp message to the destination SMSC using the link that received the delivery acknowledgement message.
The steps 806 to 813 are procedures for transmitting the service message.
The Bind login request, submit message, submit _ resp message, sender receipt message, and sender _ resp message in the above embodiment 8 are all messages defined in the short message protocol in the prior art.
The above description is only exemplary of the present invention and should not be taken as limiting the scope of the present invention, and any modifications, equivalents, improvements, etc. that are within the spirit and principle of the present invention should be included in the present invention.

Claims (16)

1. A method for implementing many-to-many session, the method comprising:
after receiving a session initiation request of a network node, when determining that the network node does not establish a session channel of a requested session type, establishing one or more corresponding session channels for the network node, and adding the one or more session channels to a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type;
and when a service request of the network node is received, selecting a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route service data.
2. The method of claim 1, wherein the selecting, according to a load balancing algorithm, a corresponding session channel from a set of sessions matching a session type corresponding to the service request to route the service data comprises:
selecting a session channel from a session set matched with the session type corresponding to the service request according to a load balancing algorithm, and sending the data related to the service request through the session channel;
after receiving the service data corresponding to the service request sent through the session channel or other session channels for receiving the service request, selecting the session channel or other session channels for receiving the service request of the network node and sending the service data corresponding to the service request;
and the other session channels are session channels in a session set matched with the session types corresponding to the service requests or the service data.
3. The method of claim 1, wherein the selecting, according to a load balancing algorithm, a corresponding session channel from a set of sessions matching a session type corresponding to the service request to route the service data comprises:
when only one session channel exists in the session set matched with the session type corresponding to the service request, the service data is routed through the session channel;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the lowest load to route service data;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the channel quality exceeding a set first threshold value and the lowest load to route service data;
and when a plurality of session channels are matched with the session types corresponding to the service requests, selecting the session channel with the bandwidth meeting the set second threshold and the lowest load to route the service data.
4. The method of claim 1, wherein after adding the one or more session channels to the set of sessions of the session type, the method further comprises:
and establishing the list items of the session type and the session set by taking the session type and/or the internet protocol IP address and the port information of the network node as indexes.
5. The method of claim 1, wherein the session is established in a synchronous manner or an asynchronous manner.
6. A method for implementing many-to-many session, the method comprising:
after sending a session initiation request to a server, and when receiving a session channel which is returned by the server and allocated for a network node, sending a service request to the server through the session channel;
after receiving the service data routed by the server selecting the corresponding session channel from the session set matched with the session type corresponding to the service request according to the load balancing algorithm, sending a service data response to the server through the session channel distributed by the server for the network node;
the session channel which is returned by the server and allocated for the network node comprises:
after receiving a session initiation request of a network node, when determining that the network node does not establish a session channel of a requested session type, establishing one or more corresponding session channels for the network node, and adding the one or more session channels to a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type;
and returning the session channel distributed for the network node to the network node.
7. The method of claim 6, wherein the server selects a corresponding session channel from a session set matching a session type corresponding to the service request according to a load balancing algorithm, comprising:
and when a service request of the network node is received, selecting a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route service data.
8. The method of claim 7, wherein the selecting a corresponding session channel from a set of sessions matching a session type corresponding to the service request according to a load balancing algorithm to route the service data comprises:
when only one session channel exists in the session set matched with the session type corresponding to the service request, the service data is routed through the session channel;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the lowest load to route service data;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the channel quality exceeding a set first threshold value and the lowest load to route service data;
and when a plurality of session channels are matched with the session types corresponding to the service requests, selecting the session channel with the bandwidth meeting the set second threshold and the lowest load to route the service data.
9. A server, characterized in that the server comprises a session set creation unit and a selection unit; wherein the content of the first and second substances,
the session set creating unit is configured to create one or more corresponding session channels for a network node after receiving a session initiation request from the network node and when determining that the network node does not establish a session channel of a requested session type, and add the one or more session channels to a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type;
and the selection unit is used for selecting the corresponding session channel routing service data from the session set matched with the session type corresponding to the service request according to a load balancing algorithm when the service request of the network node is received.
10. The server according to claim 9, wherein the selecting unit is further configured to:
selecting a session channel from a session set matched with the session type corresponding to the service request according to a load balancing algorithm, and sending the data related to the service request through the session channel;
after receiving the service data corresponding to the service request sent through the session channel or other session channels for receiving the service request, selecting the session channel or other session channels for receiving the service request of the network node and sending the service data corresponding to the service request;
and the other session channels are session channels in a session set matched with the session types corresponding to the service requests or the service data.
11. The server according to claim 9, wherein the selecting unit is further configured to:
when only one session channel exists in the session set matched with the session type corresponding to the service request, the service data is routed through the session channel;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the lowest load to route service data;
when a plurality of session channels are matched with the session types corresponding to the service requests in a session set, selecting the session channel with the channel quality exceeding a set first threshold value and the lowest load to route service data;
and when a plurality of session channels are matched with the session types corresponding to the service requests, selecting the session channel with the bandwidth meeting the set second threshold and the lowest load to route the service data.
12. The server according to claim 9, wherein the server further comprises a storage unit, configured to establish an entry between the session type and the session set by using the session type, and/or the IP address and the port information of the network node as an index.
13. The server according to claim 9, wherein the session is established in a synchronous manner or an asynchronous manner.
14. A network node, characterized in that the network node comprises a transmitting unit and a receiving unit; wherein the content of the first and second substances,
the sending unit is used for sending a session initiation request to the server; sending a service request to a server through a session channel which is returned by the server and allocated to a network node;
the receiving unit is used for receiving a session channel distributed by the server for the network node;
the receiving unit is further configured to receive service data routed by the server through selecting a corresponding session channel from a session set matched with the session type corresponding to the service request according to a load balancing algorithm;
the sending unit is further configured to send a service data response to the server through a session channel allocated by the server to the network node;
the session channel which is returned by the server and allocated for the network node comprises:
after receiving a session initiation request of the network node, when determining that the network node does not establish a session channel of a requested session type, establishing one or more corresponding session channels for the network node, and adding the one or more session channels to a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type;
and returning the session channel distributed for the network node to the network node.
15. A many-to-many session system, the system comprising a network node and a server; wherein the content of the first and second substances,
the network node is used for sending a session initiation request to a server; sending a service request to a server;
the server is used for creating one or more corresponding session channels for the network node after receiving a session initiation request of the network node and when determining that the network node does not establish a session channel of a requested session type, and adding the one or more session channels to a session set of the session type; when determining that the network node has established a session channel of the requested session type, adding the initiated session to a session set corresponding to the session type; and when receiving a service request of the network node, selecting a corresponding session channel from the session set matched with the session type corresponding to the service request according to a load balancing algorithm to route the service data.
16. The system according to claim 15, wherein the network node is the network node of claim 14; the server of any one of claims 9 to 13.
CN201310297765.1A 2013-07-16 2013-07-16 Many-to-many session implementation method, network node, server and system Active CN104301287B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310297765.1A CN104301287B (en) 2013-07-16 2013-07-16 Many-to-many session implementation method, network node, server and system
PCT/CN2014/074479 WO2014161460A1 (en) 2013-07-16 2014-03-31 Session method, network node, server, system and computer storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310297765.1A CN104301287B (en) 2013-07-16 2013-07-16 Many-to-many session implementation method, network node, server and system

Publications (2)

Publication Number Publication Date
CN104301287A CN104301287A (en) 2015-01-21
CN104301287B true CN104301287B (en) 2020-03-31

Family

ID=51657594

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310297765.1A Active CN104301287B (en) 2013-07-16 2013-07-16 Many-to-many session implementation method, network node, server and system

Country Status (2)

Country Link
CN (1) CN104301287B (en)
WO (1) WO2014161460A1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106302572B (en) * 2015-05-15 2020-09-22 Tcl科技集团股份有限公司 Multi-channel communication method and system between servers
CN105072191B (en) * 2015-08-24 2018-09-04 拉扎斯网络科技(上海)有限公司 A kind of method and server in determining destinations traffic channel
EP3515031B1 (en) 2016-11-14 2021-04-07 Huawei Technologies Co., Ltd. Session processing method, apparatus and system
CN109818997A (en) * 2017-11-21 2019-05-28 中兴通讯股份有限公司 A kind of load-balancing method, system and storage medium
CN108304993B (en) * 2018-01-05 2022-04-29 创新先进技术有限公司 Service execution method and device
CN113452737A (en) * 2020-03-27 2021-09-28 华为技术有限公司 Method and device for transmitting session request and electronic equipment
CN112860431B (en) * 2021-01-20 2024-03-15 重庆六花网络科技有限公司 Connection method, system, equipment and storage medium of micro service node

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1287761A (en) * 1998-11-04 2001-03-14 诺基亚网络有限公司 Control of a multicall in a telecommunications system
CN101150595A (en) * 2007-11-13 2008-03-26 腾讯科技(深圳)有限公司 A real time file transmission method, system and device
CN102571756A (en) * 2010-12-06 2012-07-11 微软公司 Multichannel connections in file system sessions

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR0208493A (en) * 2001-03-28 2005-12-13 Qualcomm Inc Power control for point-to-multipoint services provided in communication systems
CN1852125A (en) * 2005-08-17 2006-10-25 华为技术有限公司 Method for expanding one-to-one conversation to multi-to-multi conversation
CN101247553B (en) * 2007-02-13 2011-08-10 华为技术有限公司 Multimedia broadcast multicast service system and conversation starting and stopping method
JP5058135B2 (en) * 2008-02-08 2012-10-24 パナソニック株式会社 Terminal device
CN101924772B (en) * 2010-08-27 2013-05-08 北京邮电大学 Communication system and method supporting cross-network and cross-terminal realization of multimedia session merging
US20120233334A1 (en) * 2011-03-07 2012-09-13 Avaya Inc. Shared media access for real time first and third party control

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1287761A (en) * 1998-11-04 2001-03-14 诺基亚网络有限公司 Control of a multicall in a telecommunications system
CN101150595A (en) * 2007-11-13 2008-03-26 腾讯科技(深圳)有限公司 A real time file transmission method, system and device
CN102571756A (en) * 2010-12-06 2012-07-11 微软公司 Multichannel connections in file system sessions

Also Published As

Publication number Publication date
WO2014161460A1 (en) 2014-10-09
CN104301287A (en) 2015-01-21

Similar Documents

Publication Publication Date Title
CN104301287B (en) Many-to-many session implementation method, network node, server and system
US9705799B2 (en) Server-side load balancing using parent-child link aggregation groups
KR101355767B1 (en) Peer-to-peer group communication in content centric networking
WO2020259509A1 (en) Method and device for application migration
EP2088791B1 (en) Method, system and device for increasing multimedia messaging service system capacity
WO2014190791A1 (en) Method for setting identity of gateway device and management gateway device
KR101995145B1 (en) Method operating in a fixed access network and ues
KR20080089382A (en) Optimizing communication using scaleable peer groups
WO2010119287A2 (en) Method and system for network-based collaboration
EP3136676B1 (en) Method, device and system for transmitting data
US20230300726A1 (en) Data processing method and apparatus, network element device, storage medium, and program product
US20140019549A1 (en) Control System for Conferencing Applications in Named-Data Networks
JP2018524922A (en) Method, apparatus and system for floor control for multiple MCPTT systems
US9037655B2 (en) Maintaining instant messaging conversations when a recipient is not at their primary workstation
JP4543097B2 (en) Session-aware connection control method and apparatus
CN112929264B (en) Service flow transmission method, system and network equipment
WO2013004134A1 (en) A routing method, node and system for p2p network
EP2892196A1 (en) Method, network node and system for implementing point-to-miltipoint multicast
EP2439876B1 (en) Method and device for requesting multicasting, processing multicasting requests and assisting in the aforementioned process
Yan et al. Novel branching-router-based multicast routing protocol with mobility support
CN110474781B (en) Method and device for forwarding multicast data
EP2523390A1 (en) Method and apparatus for achieving communications between different networks
CN109379443B (en) Method for realizing distributed message queue facing to Internet of things
KR101382177B1 (en) System and method for dynamic message routing
US9344865B1 (en) Methods for improving service of SMPP messages and devices thereof

Legal Events

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