WO2009127132A1 - 报文分发方法、设备及*** - Google Patents
报文分发方法、设备及*** Download PDFInfo
- Publication number
- WO2009127132A1 WO2009127132A1 PCT/CN2009/070711 CN2009070711W WO2009127132A1 WO 2009127132 A1 WO2009127132 A1 WO 2009127132A1 CN 2009070711 W CN2009070711 W CN 2009070711W WO 2009127132 A1 WO2009127132 A1 WO 2009127132A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- session
- type
- message
- identifier
- packet
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1027—Persistence of sessions during load balancing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/16—Gateway arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1034—Reaction to server failures by a load balancer
Definitions
- the present invention relates to the field of communications, and in particular, to a packet distribution method, device, and system.
- the Wireless Application Protocol is a set of specifications similar to Internet applications on mobile networks to standardize wireless communication devices for Internet access, including sending and receiving emails, accessing WAP web pages, and more.
- WAP technology has become a global mobile phone (Global System for Mobile Communications, GSM), General Packet Radio Service (GPRS), Wideband Code Division Multiple Access (WCDMA) and other mobile phones and other The global standard for terminals accessing wireless information services.
- GSM Global System for Mobile Communications
- GPRS General Packet Radio Service
- WCDMA Wideband Code Division Multiple Access
- the WAP protocol mainly includes the WAP1.X protocol and the WAP2.0 protocol.
- a load balancing cluster mechanism is applied to the existing WAP system, in which a User Information Database (UIDB) cluster and a WAP Gateway ( WAPGW) cluster are separately deployed for session control messages, such as remote users.
- UIDB User Information Database
- WAPGW WAP Gateway
- the Remote Authentication Dial in User Service (RADius) request message (Radius Req message)
- GGSN GPRS Gateway Supporting Node
- LB Load Balance
- the message is sent to a cluster node of the UIDB cluster.
- the GGSN sends the WAP request to a cluster node of the WAPGW cluster through the LB of the WAPGW cluster.
- the UIDB cluster and the WAPGW cluster are independent clusters, and the load balancing policies of the two clusters are separated and unrelated.
- IP Internet Protocol
- the cluster node A in the WAPGW cluster needs to query the mobile phone user's online and offline information on the cluster node B in the UIDB cluster according to the Internet Protocol (IP) address of the mobile phone user.
- IP Internet Protocol
- the prior art provides a The technical means, that is, the cluster node A determines the cluster node B storing the online and offline information of the mobile phone user by using the remaining value of the mobile phone user IP address value and the remaining number of the cluster nodes in the UIDB cluster (when storing the mobile phone user's online and offline information) This technical means is also used).
- the mechanism for separately deploying the UIDB cluster and the WAPGW cluster in the prior art has the following drawbacks: using the technical means provided by the above prior art to query session control information such as the online and offline information of the mobile phone user, or querying the session service information, increasing or decreasing the UIDB cluster.
- session control information such as the online and offline information of the mobile phone user
- session service information increasing or decreasing the UIDB cluster.
- the embodiment of the invention provides a packet distribution method, device and system, which can send session control messages and session service messages to the same cluster node, and implement session control information and session service information on the cluster nodes. Storage, query, and smooth dynamic expansion of the cluster, improve system performance, and make system maintenance more convenient.
- An embodiment of the present invention provides a packet distribution method, including:
- the second type of session message When receiving the second type of session message associated with the session, the second type of session message is distributed to the cluster node corresponding to the session.
- an embodiment of the present invention further provides a load balancing device, including:
- a pre-processing unit configured to create a session according to the received first type of session message, and allocate a corresponding cluster node to the session;
- the distribution unit is configured to distribute the second type of session message to the cluster node corresponding to the session when receiving the second type of session message associated with the session.
- an embodiment of the present invention further provides a cluster node device, including a wireless application protocol gateway and a corresponding user context information database thereof;
- the user context information database is configured to receive a control session message, and save control information in the control session message;
- the wireless application protocol gateway is configured to receive a service session message, query the control session information in the user context information database according to the service session message, and report the service session according to the session control information.
- the text is processed.
- the embodiment of the present invention further provides a load balancing system, including a load balancing device and a cluster node device.
- the load balancing device is configured to create a session according to the received first type session message, and allocate a corresponding cluster node device to the session, when receiving the second type session message associated with the session Distributing the second type of session message to the cluster node device corresponding to the session;
- the cluster node device is configured to receive a first type of session message and a second type of session message, where the first type of session message is a session control message, and the second type of session message is a session service message, or The first type of session message is a session service message, and the second type of session message is a session control message, and the session control information in the session control message is saved, and the session is controlled according to the session control information. Service packets are processed.
- a session is created according to the received first type of session message, and a corresponding cluster node is allocated to the session.
- the second type of session message associated with the session is received, the The second type of session message is distributed to the cluster node corresponding to the session, so that the session control message and the session service message are sent to the same cluster node, and session control information and session service information can be implemented on the cluster node. Storage, query, and smooth dynamic expansion of the cluster, improve system performance, and make system maintenance more convenient.
- FIG. 1 is a flowchart of a message distribution method according to an embodiment of the present invention.
- FIG. 2 is a detailed flowchart of step 102 in the packet distribution method of the embodiment of the present invention
- FIG. 3 is a structural diagram of a load balancing device according to an embodiment of the present invention
- FIG. 4 is another structural diagram of a load balancing device according to an embodiment of the present invention.
- FIG. 5 is a structural diagram of a cluster node device according to an embodiment of the present invention.
- FIG. 6 is a structural diagram of a load balancing system according to an embodiment of the present invention.
- FIG. 7 is a structural diagram of a load balancing system in a proxy mode according to an embodiment of the present invention.
- FIG. 8 is a structural diagram of a load balancing system in a server mode according to an embodiment of the present invention.
- the embodiment of the present invention provides a packet distribution method, an information query method, and a corresponding device and system, which can send two different types of packets, namely, a control message and a tongue service message, to the same cluster node.
- the session control information and session service information can be stored and queried on the same cluster node, and the cluster can be smoothly and dynamically expanded to improve system performance and make system maintenance more convenient.
- FIG. 1 is a flowchart of a message distribution method according to an embodiment of the present invention. Referring to the figure, the method mainly includes:
- the first identifier can be extracted from the first type of session message as a keyword, the session is created with the keyword, and the session is maintained.
- the keyword may be the IP address or number of the terminal that sends or receives the first type of session message.
- the keyword may be the terminal that sends the first type of session message.
- the IP address or number of the terminal is used as a key.
- the IP address or number of the terminal that receives the first type of session message can be used as a key.
- a cluster node When a cluster node is allocated for a session, it can be allocated according to the load and running status of the cluster node. If the received first type session packet is sent by the cluster node, the cluster node can be assigned to the tongue.
- the second identifier may be an IP address or a number of a terminal that sends or receives the second type of session message.
- the keyword for creating the session that is, the first identifier
- the second identifier is the IP address of the terminal
- the third identifier needs to be extracted from the first type of session, and the third identifier is established.
- the third identifier is an IP address of the terminal.
- the first identifier is searched for according to the second identifier, and the second identifier is matched.
- the terminal number is then matched with the keyword of the created session (ie, the number of the terminal) according to the found terminal number. If the same, the second type of session message is associated with the session.
- the tongue-type packets (such as IP packets) have different types, such as session control packets and session service packets, and the first type of session packets are session control packets, and the second type.
- the session packet is a session service packet, or the first type of session packet is a session service packet, and the second type is
- the session packet is a session control packet, and the session control packet is a Remote Authentication Dial in User Service (RADius) message in the User Datagram Protocol (UDP) packet.
- the tongue business is as follows: UDP is not a Radius 4 text or a Transmission Control Protocol (TCP).
- the foregoing embodiment distributes different types of session packets to the cluster node corresponding to the tongue by maintaining a session and assigning a corresponding cluster node to the session, and then by using the association relationship between different types of session packets and the session.
- the storage and query of different types of session information are implemented on the same cluster node, so that different types of session information can be conveniently obtained, and different types of session information can be distributed evenly, and the cluster can be smoothly and dynamically expanded. Improve system performance and make system maintenance more convenient.
- the first type of tongue message and the second type of message of the same user are distributed to the same cluster node, that is, user-based load balancing is implemented, thereby enabling user-based service control and charging management.
- the following uses the UDP packet (the protocol number of the IP packet is 17 for the UDP packet) and the IP address of the MS as the session keyword as an example. As shown in Figure 2, the following processes are mainly included:
- the LB receives the session packet, where the session packet is a UDP packet.
- the LB determines whether there is a session associated with the UDP packet, if not, executes 203, and if yes, performs 204.
- the LB first analyzes whether the server port number of the UDP packet is the Radius service port (1813 or 1812), that is, whether the received UDP packet is a Radius packet (a type of session control packet and contains session control information). , such as MS online and offline information, etc.), including two situations:
- the received UDP packet is a Radius packet, that is, the session control packet:
- the LB extracts the Frame-IP-Address (that is, the IP of the MS) in the Radius text. Since the source IP of the Radius packet is not the IP of the MS, but the Authentication Authorization Accounting (AAA) or the IP of the GGSN, The identifier extracted here is Frame-IP-Address, where the Frame-IP-Address in the Radius text is the IP of the MS (the UDP packet of the non-Radius packet mentioned below, the source IP in the TCP packet is the MS) IP);
- UDP packet If it is not a Radius service port, the received UDP packet is a non-Radius packet.
- the LB extracts the source IP address of the UDP packet.
- the UDP packet is sent by the MS.
- the source IP address of the UDP packet is the IP address of the MS.
- the LB determines whether there is a session in which the keyword is the same as the extracted Frame-IP-Address or the source IP (that is, the IP of the MS). If yes, the UDP packet is associated with the session; if not, the UDP 4 does not exist. The tongue associated with the text.
- the LB creates a session and uses the extracted Frame-IP-Address as the key to maintain the session according to the Frame-IP-Address extracted from A.
- a cluster node is selected in a balanced manner, and the cluster node is assigned to the created session, and the Radius packet is sent to the cluster node, so that the IP packet of the IP with the same MS is subsequently During the duration of the session, it is sent to the cluster node; wherein, according to the timeout time of the tongue, when the current tongue times out, the new IP session can be recreated in this manner for the subsequent IP packets, and the new cluster node is reselected. ;
- the LB directly creates a session with the source IP as the key source and performs session maintenance according to the source IP extracted by B. Then, a cluster node is selected in a balanced manner, and the cluster node is selected. Assigned to the created session, the UDP packet is sent to the cluster node, so that subsequent IP packets with the same MS IP address are sent to the cluster node during the session;
- the processing may be similar to the processing of the UDP packet of the non-radiius packet.
- the LB may also be extracted first.
- Frame-IP-Address and MS's Mobile Station International Subscriber Directory Number (MSISDN) (ie, Calling-Station-ID), establish the correspondence between Frame-IP-Address and Calling-Station-ID. (for example, a frame with a Frame-IP-Address and a Calling-Station-ID value)
- MSISDN Mobile Station International Subscriber Directory Number
- the session corresponding to a cluster node is created by using the Calling-Station-ID as a key, and the session is maintained.
- the LB receives other types of session packets from the MS (the application layer is not a Radius message), the session text is extracted.
- the source IP searches for the Calling-Station-ID corresponding to the source IP according to the correspondence between the Frame-IP-Address and the Calling-Station-ID, and determines the found Calling-Station-ID and the keyword that creates a session (ie, If the call is the same, the session message is associated with the session, and the session message is sent to the cluster node corresponding to the session. If not, the session message is discarded.
- the LB may also detect the working status of the cluster node corresponding to the tongue, and when detecting the cluster node fault corresponding to the tongue, You can create another session based on the session packet, assign another non-faulty cluster node to the session, and send the session packet to the non-faulty cluster node. For details, refer to the above description, which is not mentioned here.
- the session information (such as session control information or session service information) in the session packet is locally recorded; and the LB sends the session message to a cluster node.
- the session information may be sent to a backup node, and the session information in the session message may be backed up to the backup node for subsequent local information query on the cluster node.
- the session control information may be User online and offline information.
- FIG. 3 is a structural diagram of a load balancing device according to an embodiment of the present invention.
- the load balancing device is connected to a plurality of cluster node devices, wherein the balancing device includes a preprocessing unit 311 and a distribution unit 312, where:
- the pre-processing unit 311 is configured to create a session according to the received first type of session message, and allocate a corresponding cluster node device to the session; specifically, when the session is created, the session may be extracted from the first type of session message.
- the first identifier is used as a keyword to create a session with the keyword and to maintain the session. Therefore, the pre-processing unit 311 may further include: a first extraction module, configured to extract a first identifier in the first type of session message; an establishing module, configured to create a session by using the first identifier as a keyword, and perform session holding, An allocation module, configured to allocate a corresponding cluster node for the session.
- the keyword may be an IP address or a number of the terminal that sends or receives the first type of session message. For example, when receiving the first type of session message sent by the GGSN, the keyword may send the first type of session message.
- the IP address or number of the terminal is used as a key.
- the IP address or number of the terminal receiving the first type of session message may be used as a key. Distribution mode When a cluster node device is allocated for a session, the cluster node device can be allocated according to the load and the running status of the cluster node device. If the received first type session packet is sent by the cluster node device, the cluster node device can be allocated to the cluster node device. Conversation.
- the distribution unit 312 is configured to distribute the second type of session message to the cluster node device corresponding to the session when receiving the second type of session message associated with the session.
- the second type of session packet is associated with the session, and the second identifier is extracted from the second type of session packet, and the second identifier is determined to be the same as the keyword for creating the session.
- the text is associated with the conversation. Therefore, the distribution unit 312 may further include: a receiving module, configured to receive a second type of session message; a second extraction module, configured to extract a second identifier in the second type of session message; and a determining module, configured to determine the second The identifier is the same as the keyword for creating the session. If the same, the second type of session message is associated with the session.
- the sending module is configured to associate with the session when the determining module determines that the second type of session message is associated with the session.
- the second type of session message is distributed to the cluster node corresponding to the session.
- the second identifier may be an IP address or a number of the terminal that sends or receives the second type of session message.
- the first identifier and the second identifier are both the terminal IP address or the terminal number.
- the pre-processing unit 311 When the keyword (ie, the first identifier) of the session is the number of the terminal, and the second identifier is the IP address of the terminal, the pre-processing unit 311 also needs to extract the third identifier from the first type of session, and establish a third Corresponding relationship between the identifier and the first identifier, where the third identifier is the IP address of the terminal.
- the first identifier is searched for according to the second identifier, and the second identifier is matched.
- the terminal number is matched with the keyword of the created session (that is, the number of the terminal) according to the found terminal number. If the same, the second type of session packet is associated with the session.
- the pre-processing unit further includes: a third extraction module, configured to extract a third identifier in the first type of session packet, where the third identifier is a terminal that sends or receives the first type of packet An IP address; a relationship module, configured to establish a correspondence between an IP address of the terminal that sends or receives the first type of packet and a terminal number; a receiving module, configured to receive a second type of session message; a second extracting module, configured to extract a second identifier in the second type of session message; a searching module, configured to use the corresponding relationship in the relationship module, a terminal number corresponding to the second identifier; a determining module, configured to determine whether the found terminal number is the same as the keyword for creating the session, and if the same, the second type of tongue message is associated with the tongue; the sending module is configured to: When the judging module judges that the second type of session message is associated with the session, the second type of packet An IP address; a relationship module, configured to establish a correspondence between an IP
- the tongue-type packets (such as IP packets) have different types, such as session control packets and session service packets, and the first type of session packets are session control packets, and the second type.
- the session message is a session service message, or the first type of session message is a session service message, and the second type of session message is a session control message.
- the foregoing embodiment maintains a session by the pre-processing unit 311, and assigns a corresponding relationship to the session, and distributes different types of tongue-and-mouth messages to the cluster node device corresponding to the session, thereby realizing different implementations on the same cluster node device.
- the storage and query of the type of tongue information makes it easy to obtain different types of tongue information, and different types of tongue information can be distributed evenly, and the cluster can be smoothly and dynamically expanded, improve system performance, and maintain the system. More convenient.
- the pre-processing unit 311 and the distribution unit 312 in the load balancing device are described as follows: After receiving the UDP packet, the second module extracts the second identifier in the UDP packet, and the server port number of the UDP packet is When the Radius service port (that is, the UDP packet is a Radius packet), the second extraction module extracts the Frame-IP-Address (that is, the IP of the MS).
- the second extraction module extracts the source IP (ie, the IP of the MS), and then the determination module determines whether there is a keyword and the extracted Frame-IP-Address or source IP (ie, MS). IP) the same session, if it exists, the UDP packet is associated with the session.
- the sending module distributes the UDP packet to the cluster node device corresponding to the session; if not, the UDP packet does not exist.
- the first extraction module extracts the Frame-IP-Address or the source IP (that is, the IP of the MS) in the UDP packet according to the UDP packet type, and the establishing module creates a session by using the IP of the extracted MS as a key. And assign a corresponding cluster node device to the created session, and set the timeout time of the tongue. When the current tongue times out, the new IP session can be recreated in this way, and the new cluster is re-selected. Node device.
- the load balancing device receives the TCP packet as a TCP packet, that is, the tongue-and-shoulder service packet is used as an implementation manner
- the setup module creates a session by using the MS number as a keyword
- the line session is maintained (that is, the first identifier extracted by the first extraction module is in the session message)
- the third lifting block extracts the frame-IP-Address in the session message, and the relationship module establishes the correspondence between the Frame-IP-Address and the Calling-Station-ID (for example, Frame-IP- Address is a keyword, a hash table with a value of Calling-Station-ID.
- the receiving module receives other types of session messages from the MS (the application layer is not a Radius message)
- the second extraction module extracts the session.
- the words ie, the Calling-Station-ID
- the session message is associated with the session.
- the sending module sends the session message to the cluster node device corresponding to the session.
- the load balancing device may further include a fault detecting unit that detects the working status of the cluster node device corresponding to the session when the determining module determines that the session packet is associated with a session.
- the triggering pre-processing unit 311 may create another session according to the session packet, and allocate another non-faulty cluster node device to the session.
- the load balancing device may further include a backup unit, and send the session message to a backup node device, and back up the session control information or the session service information in the session to the backup node device.
- the subsequent information query specifically, the session control information may be user online and offline information.
- FIG. 5 is a structural diagram of a cluster node device according to an embodiment of the present invention.
- the cluster node device includes a user context information database UIDB51 and a corresponding wireless application protocol gateway WAPGW52, and its functions are as follows:
- the UIDB 51 performs session control processing on a session, and saves session control information of the session, such as user online and offline information, etc., the WAPGW 52 performs session service processing on the same session processed by the UIDB 51, and when the WAPGW 52 needs to query the control information of the tongue and the tongue
- the WAPGW 52 sends a session control information query request to the UIDB 51, and receives the session control information that the UIDB 51 responds to.
- the WAPGW 52 may include a receiving unit, configured to receive a service session message, and a local query unit, configured to send the control session information query request to the UIDB 51 and receive a response thereof, where the processing unit is configured to perform a query according to the query.
- the control session information is sent to the service session message.
- Reason The WAPGW 52 may further include an external query unit.
- the local query unit sends a session control information query request to the UIDB 51 and receives a response that the session control information is not queried, the external query unit queries a backup node other than the cluster node device. Session control information for the session backed up on the device.
- UIDB 51 and the WAPGW 52 may be respectively disposed on different physical devices or on the same physical device.
- the foregoing embodiment implements the query of different types of session information on the same cluster node device, so that different types of session information can be conveniently obtained.
- FIG. 6 is a structural diagram of a load balancing system according to an embodiment of the present invention.
- the system mainly includes a load balancing device 61 and a cluster node device 62.
- the plurality of cluster node devices form a cluster, where:
- the load balancing device 61 creates a session according to the received first type of session message, and allocates a corresponding cluster node device to the session.
- the second type of session message is distributed to the cluster node device corresponding to the session; the cluster node device 62 performs the first type of session processing of the session according to the received first type session message, according to the received
- the second type of session packet performs the second type of session processing of the session.
- the cluster node device 62 performs session service processing according to the received session service message.
- the cluster node device 62 performs session control processing according to the received session control message.
- the system includes a client (Client) 71, an LB72, and a Transparent Proxy Service Gateway (TPSG) cluster 73 ( Not limited to the number of TPSGs shown, LB74, Application Server, APPServer 75, LB72, LB74, and TPSG cluster 73 are transparent to Client71 and APPServer75, Client71 is connected to LB72, and LB72 and LB74 are connected to On the same cluster 73, LB74 is connected to APPServer75.
- the functions of each device are as follows:
- Client71 sends a UDP packet to APPServer75:
- Client 71 sends a UDP packet to the LB72.
- the LB72 extracts the second identifier in the UDP packet.
- the server port number of the UDP packet is the Radius service port (that is, the UDP packet is a Radius packet)
- the LB72 extracts the Frame- IP-address (that is, the IP address of the MS).
- the server port number of the UDP packet is not the Radius service port (that is, the UDP packet is a non-Radius packet)
- the source IP that is, the IP of the MS
- the LB 72 has created a session and held the session with the IP of the MS in the previously received message, and the LB 72 determines whether the keyword has the same name as the extracted Frame-IP-Address or the source IP (ie, the IP of the MS). If the UDP packet is associated with the session, the LB packet will be distributed to the TPSG corresponding to the session. If the session is not associated with the UDP packet, the LB72 is based on the UDP packet.
- the UDP packet type extracts the Frame-IP-Address or the source IP (that is, the IP address of the MS) in the UDP packet, creates a session with the IP of the extracted MS as a key, and assigns a corresponding TPSG to the created session.
- the session timeout period can be set, when the current tongue timeout, Subsequent IP packets to re-create a new ⁇ tongue in this manner, and re-select a new TPSG is.
- the TPSG corresponding to the session in the TPSG cluster 73 receives the UDP packet.
- the UDP packet is a Radius packet, and the frame-IP-Address (that is, the IP address of the client 71) in the UDP packet is extracted, and the MAC address of the last hop of the UDP packet is extracted, that is, the UDP packet is sent.
- the MAC address of the TPSG of the text and establish the correspondence between the Frame-IP-Address and the MAC address (such as the hash table with the frame-IP-Address as the key and the MAC address as the value), and then the LB74 will use the UDP packet.
- the APPServer 75 receives the UDP packet and performs corresponding processing.
- the APPServer75 After the APPServer75 receives the UDP packet and performs corresponding processing, the APPServer75 returns a UDP packet to the Client71:
- APPServer75 returns UDP 4 text to LB74;
- the LB 74 After receiving the UDP packet returned by the APPServer 75, the LB 74 extracts the second identifier in the UDP packet and extracts the destination IP address (that is, the IP address of the MS). After that, the LB 74 determines whether there is a session with the same keyword and the extracted destination IP address. If yes, the UDP packet is associated with the session. In this case, the LB74 searches for the correspondence between the Frame-IP-Address and the MAC address, finds the MAC address of the TPSG corresponding to the destination IP address, and distributes the UDP file to the MAC address.
- TPSG (the above situation) (1) TPSG that receives and sends UDP packets; if it does not exist, there is no session associated with the UDP packet, and LB74 discards the UDP packet;
- the TPSG corresponding to the session in the TPSG cluster 73 sends the UDP packet to the LB72.
- the LB72 After receiving the UDP packet sent by the TPSG, the LB72 sends the UDP packet to the client 71 corresponding to the destination IP address.
- the above embodiment maintains a session in a bidirectional direction (the direction of the client 71 to the APPServer 75 and the direction of the APPServer 75 to the client 71), and allocates a corresponding cluster node device for the session, and then associates the tongue with the different types of tongues.
- Different types of tongue messages are distributed to the cluster node device corresponding to the session for forwarding, so that different types of session information are processed on the same cluster node device, and different types of tongue information can be distributed uniformly.
- the cluster can be smoothly and dynamically expanded to improve system performance and make system maintenance more convenient.
- the first type of session packets and the second type of packets of the same user are distributed to the same cluster node, that is, user-based load balancing is implemented, thereby implementing user-based service control and charging management.
- FIG. 8 is a structural diagram of a load balancing system in a server mode according to an embodiment of the present invention.
- the system includes an LB 81, a service node device 82, and a backup node device 83.
- the LB 81 is connected to multiple service node devices in the service node device cluster, and the LB 81 includes There is a pre-processing unit 811, a distribution unit 812, and a backup unit 813.
- Each of the service node devices 82 has a UIDB 821 that performs session control processing on the session, and a WAPGW 822 that performs session service processing on the same session processed by the UIDB 821, and the number of backup node devices. It can also be determined according to the situation. In this example, it is described by one backup node device. Referring to the figure, the functions of each device and unit in the system are as follows:
- the pre-processing unit 811 creates a session according to the received Radius packet, and allocates a corresponding service node device to the session, that is, creates a session and performs session holding by using the IP of the MS in the previously received Radius packet as a key.
- the distribution unit 812 extracts the second identifier in the UDP packet.
- the server port number of the UDP packet is a Radius service port, that is, the UDP packet is a Radius packet
- the second identifier extracted by the distribution unit 812 is the Frame-IP-Address (ie, the IP of the MS).
- the extracted second identifier is the source IP (ie, the IP of the MS), and then the distribution unit 812 determines whether There is a keyword with the same Frame-IP-Address or source IP (that is, the IP of the MS). If it exists, the UDP packet is associated with the session. At this time, the distribution unit 812 distributes the UDP packet to the session.
- the backup unit 813 sends the UDP packet to the backup node device 83; if not, the session associated with the UDP packet does not exist, and the pre-processing unit 811 extracts the UDP packet type according to the UDP packet type.
- the frame-IP-Address or the source IP address of the UDP packet that is, the IP address of the MS, creates a session with the IP of the extracted MS as a key, and assigns a corresponding service node device to the created session.
- the tongue timeout period when the current session times out, the new session can be recreated in this way for subsequent IP packets, and the new service node device is reselected;
- the UIDB821 receives the Radius packet sent by the LB81 and saves the session control information (such as the MS uplink and downlink information), and the WAPGW822 receives the UDP packet of the non-Radius packet sent by the LB81 or other session service (such as TCP "3 ⁇ 4" And save the session business information;
- the session control information such as the MS uplink and downlink information
- the WAPGW822 receives the UDP packet of the non-Radius packet sent by the LB81 or other session service (such as TCP "3 ⁇ 4" And save the session business information;
- the backup node device 83 performs backup of the control information of the UDP packet or the tongue of the tongue;
- the session control information query request is sent to the UIDB 821, and the UIDB 821 responds to the query request with the session control information of the session saved locally; when the WAPGW 822 does not query the UIDB 821, the session control is obtained.
- the session control information of the session backed up on the backup node device 63 is queried.
- the UIDB 821 may also query the session service information in the WAPGW 822.
- the foregoing embodiment distributes different types of session packets to the service node corresponding to the session by maintaining a session and assigning a corresponding service node to the session, and then by using the association relationship between the different types of tongue messages and the session.
- the storage and query of different types of session information are implemented on the same service node, so that different types of tongue information can be conveniently obtained, and different types of session information can be distributed uniformly, and the service node cluster can be enabled at the same time. Smooth dynamic capacity expansion improves system performance and makes system maintenance more convenient.
- the bearer related to the session control information may be a Radius packet or a Diameter packet
- the session service information corresponding to the session service may be a WAP service, a streaming media service, or an Internet Protocol-based voice (Voice over Internet Protocol, VoIP) services or IP services such as Peer to Peer (P2P) services.
- VoIP Voice over Internet Protocol
- IP IP services
- P2P Peer to Peer
- all or part of the process in implementing the foregoing embodiments may be completed by a program instructing related hardware, and the program may be stored in a computer readable storage medium.
- the program when executed, may include the flow of an embodiment of the methods as described above.
- the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP09732873.6A EP2257022B1 (en) | 2008-04-14 | 2009-03-10 | A message distributing method, device and system |
BRPI0911244-8A BRPI0911244B1 (pt) | 2008-04-14 | 2009-03-10 | Método para distribuição de mensagens, dispositivo de balanceamento de carga e sistema de balanceamento de carga |
US12/904,850 US8856243B2 (en) | 2008-04-14 | 2010-10-14 | Method, device, and system for message distribution |
US14/473,528 US20140369202A1 (en) | 2008-04-14 | 2014-08-29 | Method, device, and system for message distribution |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810027427.5 | 2008-04-14 | ||
CN2008100274275A CN101562784B (zh) | 2008-04-14 | 2008-04-14 | 报文分发方法、设备及*** |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/904,850 Continuation US8856243B2 (en) | 2008-04-14 | 2010-10-14 | Method, device, and system for message distribution |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009127132A1 true WO2009127132A1 (zh) | 2009-10-22 |
Family
ID=41198776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2009/070711 WO2009127132A1 (zh) | 2008-04-14 | 2009-03-10 | 报文分发方法、设备及*** |
Country Status (6)
Country | Link |
---|---|
US (2) | US8856243B2 (zh) |
EP (1) | EP2257022B1 (zh) |
CN (1) | CN101562784B (zh) |
BR (1) | BRPI0911244B1 (zh) |
RU (1) | RU2464722C2 (zh) |
WO (1) | WO2009127132A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8856243B2 (en) | 2008-04-14 | 2014-10-07 | Huawei Technologies Co., Ltd. | Method, device, and system for message distribution |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102722413B (zh) * | 2012-05-16 | 2017-12-29 | 上海兆民云计算科技有限公司 | 一种桌面云集群使用的分布式资源调度方法 |
CN103634375B (zh) * | 2013-11-07 | 2017-01-11 | 华为技术有限公司 | 扩容集群节点的方法、装置及设备 |
CN106161353B (zh) * | 2015-03-31 | 2019-05-17 | 国家计算机网络与信息安全管理中心 | 一种面向宽带网络侧的上网时间管理方法及*** |
CN107395555A (zh) * | 2016-05-17 | 2017-11-24 | 中兴通讯股份有限公司 | 一种会话管理的方法、设备和*** |
CN106302661B (zh) * | 2016-08-02 | 2019-08-13 | 网宿科技股份有限公司 | P2p数据加速方法、装置和*** |
CN108415951B (zh) * | 2018-02-02 | 2022-01-11 | 广东睿江云计算股份有限公司 | 一种数据库控制方法和*** |
WO2019232750A1 (zh) * | 2018-06-07 | 2019-12-12 | Guan Chi | 一种网络通信方法、对等体及*** |
CN113452737A (zh) * | 2020-03-27 | 2021-09-28 | 华为技术有限公司 | 一种传输会话请求的方法、装置和电子设备 |
CN111444018B (zh) * | 2020-03-30 | 2023-08-08 | 北京字节跳动网络技术有限公司 | 请求处理方法以及装置 |
CN112134929B (zh) * | 2020-08-28 | 2022-05-27 | 新华三技术有限公司 | 一种会话报文分析方法、装置及存储介质 |
CN113032151B (zh) * | 2021-03-31 | 2023-10-17 | 广州虎牙科技有限公司 | 业务消息的处理方法、电子设备、移动终端及存储介质 |
CN114979236B (zh) * | 2022-05-12 | 2024-06-28 | 山石网科通信技术股份有限公司 | 数据传输方法、装置、存储介质以及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6327622B1 (en) * | 1998-09-03 | 2001-12-04 | Sun Microsystems, Inc. | Load balancing in a network environment |
KR20030062018A (ko) * | 2002-01-15 | 2003-07-23 | 삼성전자주식회사 | 이동 통신 시스템에서 무선 데이터 전송 방법 |
CN1882123A (zh) * | 2005-06-13 | 2006-12-20 | 大唐移动通信设备有限公司 | 一种移动网终端的集群通信方法 |
CN1885969A (zh) * | 2005-06-21 | 2006-12-27 | 大唐移动通信设备有限公司 | 数字集群通信***及实现集群业务的方法 |
CN1965519A (zh) * | 2004-06-21 | 2007-05-16 | 思科技术公司 | 用于利用反馈信息网络环境中的负载均衡的***和方法 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6393289B1 (en) * | 1998-11-19 | 2002-05-21 | Lucent Technologies Inc. | Apparatus, method and system for wireless telecommunication session control by an adjunct network entity |
FI112427B (fi) * | 1999-11-05 | 2003-11-28 | Nokia Corp | Menetelmä langattoman päätelaitteen ominaisuuksien määrittämiseksi multimediasanoman välityspalvelussa, multimediasanoman välityspalvelu ja multimediapäätelaite |
AU2000250743A1 (en) * | 2000-05-31 | 2001-12-11 | Nokia Corporation | Method and apparatus for generating a connection identification |
FI112756B (fi) * | 2000-09-11 | 2003-12-31 | Stonesoft Oyj | Tietopakettien käsittely verkkoelementtiklusterissa |
US7003574B1 (en) * | 2000-11-01 | 2006-02-21 | Microsoft Corporation | Session load balancing and use of VIP as source address for inter-cluster traffic through the use of a session identifier |
US7958237B2 (en) * | 2001-01-23 | 2011-06-07 | Pearl Software, Inc. | Method for managing computer network access |
WO2002082763A2 (en) * | 2001-02-20 | 2002-10-17 | Innomedia Pte Ltd. | System and method for establishing channels for a real time media streaming communication |
BRPI0215035B1 (pt) * | 2001-12-21 | 2017-05-23 | France Telecom | métodos para operar uma rede de telefonia móvel, e, rede de telefonia móvel |
US7254634B1 (en) * | 2002-03-08 | 2007-08-07 | Akamai Technologies, Inc. | Managing web tier session state objects in a content delivery network (CDN) |
FI20021137A0 (fi) * | 2002-06-12 | 2002-06-12 | Nokia Corp | Kuormantasain monisuoritinalustoja varten |
CA2406880A1 (en) * | 2002-10-04 | 2004-04-04 | Ibm Canada Limited-Ibm Canada Limitee | Method and apparatus for an ecommerce message using sms |
US20070106619A1 (en) * | 2003-06-30 | 2007-05-10 | Holdsworth John C | Method of and system for authenticating a transaction initiated from a non-internet enabled device |
US7284147B2 (en) * | 2003-08-27 | 2007-10-16 | International Business Machines Corporation | Reliable fault resolution in a cluster |
US7324473B2 (en) | 2003-10-07 | 2008-01-29 | Accenture Global Services Gmbh | Connector gateway |
US8412837B1 (en) * | 2004-07-08 | 2013-04-02 | James A. Roskind | Data privacy |
US7996471B2 (en) * | 2004-07-13 | 2011-08-09 | At&T Intellectual Property I, L.P. | Electronic message distribution system |
US7697691B2 (en) * | 2004-07-14 | 2010-04-13 | Intel Corporation | Method of delivering Direct Proof private keys to devices using an on-line service |
US7779081B2 (en) * | 2004-07-16 | 2010-08-17 | International Business Machines Corporation | Method, system, and program for forwarding messages between nodes |
US7693050B2 (en) * | 2005-04-14 | 2010-04-06 | Microsoft Corporation | Stateless, affinity-preserving load balancing |
US20060277596A1 (en) * | 2005-06-06 | 2006-12-07 | Calvert Peter S | Method and system for multi-instance session support in a load-balanced environment |
US20070002834A1 (en) * | 2005-06-30 | 2007-01-04 | Nortel Networks Limited | Session control for mass session events |
JP4616159B2 (ja) * | 2005-11-30 | 2011-01-19 | 富士通株式会社 | クラスタシステム、ロードバランサ、ノード振替方法およびノード振替プログラム |
US20090070858A1 (en) * | 2006-05-10 | 2009-03-12 | Keytel Co., Ltd. | Authentication computer and program |
US7974235B2 (en) * | 2006-11-13 | 2011-07-05 | Telecommunication Systems, Inc. | Secure location session manager |
EP2111701B1 (en) * | 2007-01-31 | 2018-12-05 | BroadSoft, Inc. | System and method for reestablishing, with a client device, a signaling session associated with a call in progress |
US7818785B2 (en) * | 2007-07-25 | 2010-10-19 | Dell Products L.P. | System and method for secure information handling system memory |
CN101562784B (zh) | 2008-04-14 | 2012-06-06 | 华为技术有限公司 | 报文分发方法、设备及*** |
-
2008
- 2008-04-14 CN CN2008100274275A patent/CN101562784B/zh active Active
-
2009
- 2009-03-10 WO PCT/CN2009/070711 patent/WO2009127132A1/zh active Application Filing
- 2009-03-10 BR BRPI0911244-8A patent/BRPI0911244B1/pt active IP Right Grant
- 2009-03-10 EP EP09732873.6A patent/EP2257022B1/en active Active
- 2009-03-10 RU RU2010146258/08A patent/RU2464722C2/ru active
-
2010
- 2010-10-14 US US12/904,850 patent/US8856243B2/en active Active
-
2014
- 2014-08-29 US US14/473,528 patent/US20140369202A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6327622B1 (en) * | 1998-09-03 | 2001-12-04 | Sun Microsystems, Inc. | Load balancing in a network environment |
KR20030062018A (ko) * | 2002-01-15 | 2003-07-23 | 삼성전자주식회사 | 이동 통신 시스템에서 무선 데이터 전송 방법 |
CN1965519A (zh) * | 2004-06-21 | 2007-05-16 | 思科技术公司 | 用于利用反馈信息网络环境中的负载均衡的***和方法 |
CN1882123A (zh) * | 2005-06-13 | 2006-12-20 | 大唐移动通信设备有限公司 | 一种移动网终端的集群通信方法 |
CN1885969A (zh) * | 2005-06-21 | 2006-12-27 | 大唐移动通信设备有限公司 | 数字集群通信***及实现集群业务的方法 |
Non-Patent Citations (1)
Title |
---|
See also references of EP2257022A4 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8856243B2 (en) | 2008-04-14 | 2014-10-07 | Huawei Technologies Co., Ltd. | Method, device, and system for message distribution |
Also Published As
Publication number | Publication date |
---|---|
RU2464722C2 (ru) | 2012-10-20 |
US20140369202A1 (en) | 2014-12-18 |
US8856243B2 (en) | 2014-10-07 |
BRPI0911244A2 (pt) | 2015-10-06 |
RU2010146258A (ru) | 2012-05-20 |
CN101562784B (zh) | 2012-06-06 |
EP2257022A1 (en) | 2010-12-01 |
CN101562784A (zh) | 2009-10-21 |
BRPI0911244B1 (pt) | 2020-10-06 |
EP2257022A4 (en) | 2011-04-20 |
EP2257022B1 (en) | 2014-07-02 |
US20110029631A1 (en) | 2011-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2009127132A1 (zh) | 报文分发方法、设备及*** | |
US9521060B2 (en) | Identifying services provided over secured connections using DNS caching | |
CN111698725A (zh) | 动态确定网络切片的方法及电子设备 | |
JP5323861B2 (ja) | ネットワーク・リソースをプールするための方法および装置 | |
US20150237525A1 (en) | Traffic Shaping and Steering for a Multipath Transmission Control Protocol Connection | |
US20120099429A1 (en) | Adaptation of Quality of Service in Handling Network Traffic | |
US7984149B1 (en) | Method and apparatus for identifying a policy server | |
US8018847B2 (en) | System and method for redirecting requests | |
WO2020253747A1 (zh) | 会话管理方法、会话管理功能smf实体、终端及网络侧实体 | |
WO2006095236A1 (en) | System, method and apparatus for selecting a remote endpoint for accessing packet data services | |
WO2010093826A1 (en) | Selection of roaming gateway | |
WO2012171169A1 (zh) | 一种通信方法及负载均衡器 | |
EP3668058B1 (en) | Content distribution method and system | |
WO2012065500A1 (zh) | 一种业务控制方法及***、演进基站、分组数据网网关 | |
CN106572132B (zh) | 分发建链方法、装置和*** | |
WO2021008591A1 (zh) | 数据传输方法、装置及*** | |
WO2014101755A1 (zh) | 业务数据分流方法及*** | |
WO2017012471A1 (zh) | 负载均衡处理方法及装置 | |
WO2022206260A1 (zh) | 地址信息发送方法、获取方法、装置、设备及介质 | |
WO2013004134A1 (zh) | 一种p2p网络路由方法、节点及*** | |
US11902380B1 (en) | Liveness detection for an authenticated client session | |
US20220345532A1 (en) | Apparatus, method, and computer program | |
CN106790502B (zh) | 一种基于NAT64前缀的IPv4终端、IPv6服务互通业务的负载均衡*** | |
WO2010012189A1 (zh) | 一种gtp消息传输的方法及装置 | |
CN116074985A (zh) | 数据网络dn间的连接方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09732873 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2009732873 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 4007/KOLNP/2010 Country of ref document: IN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2010146258 Country of ref document: RU |
|
ENP | Entry into the national phase |
Ref document number: PI0911244 Country of ref document: BR Kind code of ref document: A2 Effective date: 20101014 |