CN112398898A - Method and system for realizing load balance based on shared port network - Google Patents

Method and system for realizing load balance based on shared port network Download PDF

Info

Publication number
CN112398898A
CN112398898A CN202010556505.1A CN202010556505A CN112398898A CN 112398898 A CN112398898 A CN 112398898A CN 202010556505 A CN202010556505 A CN 202010556505A CN 112398898 A CN112398898 A CN 112398898A
Authority
CN
China
Prior art keywords
network
bandwidth
network device
shared
gateway
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.)
Pending
Application number
CN202010556505.1A
Other languages
Chinese (zh)
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.)
Lingbo Technology Beijing Co ltd
Original Assignee
Lingbo Technology Beijing Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lingbo Technology Beijing Co ltd filed Critical Lingbo Technology Beijing Co ltd
Priority to CN202010556505.1A priority Critical patent/CN112398898A/en
Publication of CN112398898A publication Critical patent/CN112398898A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a method and a system for realizing load balance based on a shared port network, wherein the method comprises the following steps: when detecting that network equipment with a data transmission link in an abnormal state exists in a plurality of network equipment, selecting the network equipment with the data transmission link in the abnormal state as source network equipment, and determining an additional bandwidth required by the source network equipment; determining an idle bandwidth of each network device in a non-abnormal state, except the source network device, of a plurality of network devices sharing a port network; selecting at least one target network device from a plurality of network devices in a non-abnormal state, and determining a shared bandwidth provided by each target network device; and determining the shared port designated by each target network device as a target shared port, wherein the source network device uses the shared bandwidth provided by each target network device for data transmission based on each target shared port in the shared port network.

Description

Method and system for realizing load balance based on shared port network
Technical Field
The present invention relates to the field of data communication technologies, and in particular, to a method and a system for implementing load balancing based on a shared port network.
Background
The gateway is an internetwork connector and protocol converter. The gateways implement network interconnections above the network layer. Gateways are complex network interconnect devices and are typically only used for two network interconnects with different higher layer protocols. The gateway can be used for interconnection of both wide area networks and local area networks. A gateway is a computer system or device that serves the task of translation. A gateway can be considered a translator of data packets between two systems that differ in communication protocol, data format or language, or even in an entirely different architecture. Instead of the bridge simply communicating the information, the gateway repackages the received information to accommodate the needs of the destination system.
Currently, in a partial networking scheme, when there are many access devices or user equipments that need to access a network, or when the access devices or the user equipments that need to access the network belong to different physical areas, multiple gateways are usually needed to respectively provide services for the access devices or the user equipments in each physical area. Fig. 1 shows a typical example of networking. A campus has three access gateways: gateway a, gateway B, and gateway C. The gateway A, the gateway B and the gateway C provide network services for the hotel network A, the apartment network B and the market network C. The hotel network a has two internet outlets, that is, the hotel network a is connected with the operator link a1 and the operator link a2 through the gateway a. Apartment network B and mall network C each have an internet outlet. The apartment network B is connected to the operator link B via a gateway B. The mall network C is connected to the operator link C through the gateway C.
The problems with this network architecture are as follows:
1. and (3) fault treatment: when an egress link failure occurs in the apartment network B or the mall network C, or when both links a1 and a2 of the hotel network a fail, the switching can only be performed manually by a network administrator. For example, as shown in fig. 1, if a failure occurs in the carrier link C connected to the mall network C through the gateway C, the line needs to be manually adjusted. For example, the network administrator switches the access device or user device of the mall network C to access to the gateway a, so as to perform data transmission through the operator link a1 and the operator link a 2;
2. and (3) bandwidth sharing: and the mall network C is closed at night, and the operator link C is in an idle state at night. However, nighttime may be a peak in bandwidth usage for hotel network a/apartment network B. The prior art does not have a technology how to balance the load by using the bandwidth resource of a mall network C when the bandwidth resource of a hotel network A/apartment network B is insufficient.
Disclosure of Invention
The purpose of the present invention is to solve the above problems, and provide a networking method based on a shared port, and implement a dynamic bandwidth negotiation mechanism on the shared port, implement an automated solution for line fault tolerance, load balancing, and bandwidth sharing, reduce the operation and maintenance costs of a multi-area access network, optimize the bandwidth usage, and reduce the total bandwidth usage cost.
According to an aspect of the present invention, there is provided a method for implementing load balancing based on a shared port network, the method including:
in a shared port network based on a plurality of shared ports designated by a plurality of network devices, each network device in the plurality of network devices detects the transmission state of a respective data transmission link in real time, wherein each network device designates one shared port to constitute the plurality of shared ports;
when detecting that network equipment with a data transmission link in an abnormal state exists in a plurality of network equipment, selecting the network equipment with the data transmission link in the abnormal state as source network equipment, and determining an additional bandwidth required by the source network equipment;
analyzing each state information item in a state information table stored by the source network device to determine the idle bandwidth of each network device in a non-abnormal state except the source network device in the plurality of network devices sharing the port network;
according to the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device, selecting at least one target network device from a plurality of network devices in the non-abnormal state, and determining the shared bandwidth provided by each target network device; and
and determining the shared port designated by each target network device as a target shared port, wherein the source network device performs data transmission in a load balancing manner by using the shared bandwidth provided by each target network device based on each target shared port in the shared port network.
Wherein the IP address of the shared port specified by each network device is unique.
In addition to a physical layer network constituted by a plurality of network devices, a shared port network is constituted by connecting a plurality of shared ports to a logical layer.
The plurality of network devices are located in different physical layer networks, or the plurality of network devices are located in the same physical layer network.
And allocating the IP address of the same sub-network segment to each network device in the shared port network.
And setting a negotiation service for the shared port network, wherein the negotiation service is used for sending a multicast notification to each network device so as to inform each network device of submitting state information.
The state information includes: device identification, shared port address, access device network segment information, device total bandwidth, reserved bandwidth, in-use bandwidth, idle bandwidth, bandwidth utilization, transmission status, and priority level.
The negotiation service receives state information from each network device, stores the state information of each network device in a state information table, and sends the state information table including the state information of all network devices to each network device.
Each network device has at least one egress link for transmitting traffic data of a user equipment accessing the network device.
Further comprising calculating an idle bandwidth K for each network device based on the usage status of each egress link that it hasi
Figure BDA0002544501280000031
Wherein, KiIs the free bandwidth of the ith network device, i is largeA natural number at 1; n isiIs the number of exit links of the ith network device, j is a natural number and is more than or equal to 1 and less than or equal to ni;TijThe total device bandwidth of the jth egress link of the ith network device; kijReserving bandwidth for a jth egress link of an ith network device; and UijThe bandwidth of the jth egress link of the ith network device that is in use.
Calculating a bandwidth usage rate P for each network devicei
Figure BDA0002544501280000041
Wherein P isiBandwidth utilization, n, for the ith network deviceiIs the number of exit links of the ith network device, j is a natural number and is more than or equal to 1 and less than or equal to ni(ii) a i is a natural number greater than 1; t isijThe total device bandwidth of the jth egress link of the ith network device; and UijThe bandwidth of the jth egress link of the ith network device that is in use.
After a shared port network is formed by connecting a plurality of shared ports at a logical layer, the method includes:
generating a device information item by using the device identifier of each network device in the shared port network and the corresponding shared port, wherein the device information item is < the device identifier and the IP address of the shared port >;
forming a device information table by all the device information items;
and sending the equipment information table to each network equipment in the shared port network.
Any network equipment stores and analyzes the received equipment information table, and determines the equipment identifier of each network equipment in the shared port network and the IP address of the shared port;
and any network device establishes a shared virtual route with each network device except the network device according to the device identification of each network device except the network device and the IP address of the shared port in the shared port network, and points each shared virtual route to the shared port of each network device except the network device.
The abnormal state includes: link down state, full load state, and limited transmission state.
Determining the additional bandwidth required by the source network device comprises:
when a data transmission link of the source network equipment is in an abnormal state, determining the residual bandwidth of the source network equipment and the total required bandwidth required by all user equipment accessed to the source network equipment;
determining a remaining available bandwidth of the source network device based on the remaining bandwidth of the source network device;
when the total required bandwidth is larger than the residual available bandwidth, taking the absolute value of the difference value of the total required bandwidth and the residual available bandwidth as the additional bandwidth required by the source network equipment;
alternatively, the first and second electrodes may be,
determining that the source network device does not require additional bandwidth when the total required bandwidth is less than or equal to the remaining available bandwidth.
The selecting at least one target network device from the plurality of network devices in the non-abnormal state according to the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device includes:
determining a network device having an idle bandwidth greater than an additional bandwidth required by the source network device and being in a non-abnormal state as a candidate network device;
when the number of the candidate network devices is larger than 1, determining the candidate network device with the highest priority level in the candidate network devices as a target network device;
or
When the number of the candidate network devices is larger than 1, determining the candidate network device with the lowest load or the smallest bandwidth in use in the plurality of candidate network devices as the target network device;
or
When the number of the candidate network devices is larger than 1, determining the candidate network device with the largest idle bandwidth in the candidate network devices as a target network device;
or
When the number of the candidate network devices is larger than 1, determining the candidate network device with the largest total bandwidth as a target network device;
or
When the number of the candidate network devices is larger than 1, determining the candidate network device with the largest reserved bandwidth in the candidate network devices as a target network device;
or
When the number of the candidate network devices is greater than 1, determining the candidate network device which is selected as the target network device from the candidate network devices and has the least frequency as the target network device;
or
When the number of candidate network devices is equal to 1, the candidate network device is determined as the target network device.
The selecting at least one target network device from the plurality of network devices in the non-abnormal state according to the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device includes:
when the idle bandwidth of each network device in the non-abnormal state is smaller than the additional bandwidth required by the source network device, determining whether the sum of the idle bandwidths of all the network devices in the non-abnormal state is larger than the additional bandwidth;
when the sum of the idle bandwidths is larger than the additional bandwidth, sorting all the network devices in the non-abnormal state according to the ascending sequence or the descending sequence of the idle bandwidths to generate an ascending sequence table or a descending sequence table, and selecting at least two target network devices from all the network devices in the non-abnormal state according to the sequence of the list in the ascending sequence table or the descending sequence table, so that the sum of the idle bandwidths of the at least two target network devices is larger than or equal to the additional bandwidth.
And when the source network device uses the shared bandwidth provided by each target network device for data transmission based on each target shared port in the shared port network, the source network device switches the egress link of each user device to the corresponding target network device according to the virtual route related to each target network device in the virtual route table, so that part of or all of the user devices in the plurality of user devices access the target network device through the target shared port.
Further comprising, if it is detected that a specific network device of the plurality of network devices is in an offline state or an abnormal state, sending a notification message for indicating that the specific network device is in the offline state or the abnormal state to the plurality of network devices, so that the network device receiving the notification message updates the stored state information table;
setting a shared port associated with a particular network device to a disabled state;
setting a shared virtual route established with a specific network device to a disabled state;
a user equipment for data transmission through a shared virtual route established with a particular network equipment is reallocated for a network equipment for access.
When the time that the specific network equipment is in the offline state reaches a time threshold, the shared port associated with the specific network equipment is deleted, and the shared virtual route established with the specific network equipment is deleted.
According to an aspect of the present invention, there is provided a system for implementing load balancing based on a shared port network, the system including:
a detection unit that, in a shared port network based on a plurality of shared ports specified by a plurality of network devices, causes each of the plurality of network devices to detect, in real time, a transmission state of a respective data transmission link, wherein each of the network devices specifies one of the shared ports to constitute the plurality of shared ports;
the network equipment comprises a selecting unit, a judging unit and a judging unit, wherein the selecting unit is used for selecting the network equipment with the abnormal data transmission link as source network equipment and determining the additional bandwidth required by the source network equipment when detecting that the network equipment with the abnormal data transmission link exists in the plurality of network equipment;
the analysis unit is used for analyzing each state information item in the state information table stored by the source network equipment so as to determine the idle bandwidth of each network equipment in a non-abnormal state except the source network equipment in a plurality of network equipment sharing a port network;
a determining unit, configured to select at least one target network device from the plurality of network devices in the non-abnormal state according to an idle bandwidth of each network device in the non-abnormal state and an additional bandwidth required by the source network device, and determine a shared bandwidth provided by each target network device; and
and the source network device performs data transmission in a load balancing mode by using the shared bandwidth provided by each target network device based on each target shared port in the shared port network.
Wherein the IP address of the shared port specified by each network device is unique.
The device further comprises an initialization unit, wherein the initialization unit is used for connecting a plurality of sharing ports to a logic layer to form a sharing port network on the basis of a physical layer network formed by a plurality of network devices.
The plurality of network devices are located in different physical layer networks, or the plurality of network devices are located in the same physical layer network.
The initialization unit allocates the IP addresses of the same sub-network segment to each network device in the shared port network.
The device also comprises an initialization unit which is used for setting negotiation service for the shared port network, wherein the negotiation service is used for sending a multicast notification to each network device so as to inform each network device of submitting state information.
The state information includes: device identification, shared port address, access device network segment information, device total bandwidth, reserved bandwidth, in-use bandwidth, idle bandwidth, bandwidth utilization, transmission status, and priority level.
The negotiation service receives state information from each network device, stores the state information of each network device in a state information table, and sends the state information table including the state information of all network devices to each network device.
Each network device has at least one egress link for transmitting traffic data of a user equipment accessing the network device.
The method also comprises the step that the analysis unit calculates the idle bandwidth K of each network device according to the use state of each exit linki
Figure BDA0002544501280000081
Wherein, KiI is the idle bandwidth of the ith network device, and i is a natural number greater than 1; n isiIs the number of exit links of the ith network device, j is a natural number and is more than or equal to 1 and less than or equal to ni;TijThe total device bandwidth of the jth egress link of the ith network device; kijReserving bandwidth for a jth egress link of an ith network device; and UijThe bandwidth of the jth egress link of the ith network device that is in use.
The analysis unit calculates the bandwidth utilization rate P of each network devicei
Figure BDA0002544501280000082
Wherein P isiBandwidth utilization, n, for the ith network deviceiIs the number of exit links of the ith network device, j is a natural number and is more than or equal to 1 and less than or equal to ni(ii) a i is a natural number greater than 1; t isijThe total device bandwidth of the jth egress link of the ith network device; and UijThe bandwidth of the jth egress link of the ith network device that is in use.
Also comprises the following steps of (1) preparing,
a generating unit, configured to generate a device information item for a device identifier and a corresponding shared port of each network device in a shared port network, where the device information item is < device identifier, IP address of shared port >; forming a device information table by all the device information items;
and the sending unit is used for sending the equipment information table to each network equipment in the shared port network.
Any network equipment stores and analyzes the received equipment information table, and determines the equipment identifier of each network equipment in the shared port network and the IP address of the shared port;
and any network device establishes a shared virtual route with each network device except the network device according to the device identification of each network device except the network device and the IP address of the shared port in the shared port network, and points each shared virtual route to the shared port of each network device except the network device.
The abnormal state includes: link down state, full load state, and limited transmission state.
The determining, by the selecting unit, the additional bandwidth required by the source network device includes:
when the data transmission link of the source network equipment is in an abnormal state, the selection unit determines the residual bandwidth of the source network equipment and the total required bandwidth required by all user equipment accessed to the source network equipment;
the selection unit determines the residual available bandwidth of the source network equipment based on the residual bandwidth of the source network equipment;
when the total required bandwidth is larger than the remaining available bandwidth, the selecting unit takes the absolute value of the difference value between the total required bandwidth and the remaining available bandwidth as the additional bandwidth required by the source network device;
alternatively, the first and second electrodes may be,
the selection unit determines that the source network device does not require additional bandwidth when the total required bandwidth is less than or equal to the remaining available bandwidth.
Wherein the determining unit selects at least one target network device from the plurality of network devices in the non-abnormal state according to the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device includes:
the determining unit determines the network device which has idle bandwidth larger than the additional bandwidth required by the source network device and is in a non-abnormal state as a candidate network device;
when the number of the candidate network devices is greater than 1, the determining unit determines the candidate network device with the highest priority level in the candidate network devices as the target network device;
or
When the number of the candidate network devices is larger than 1, the determining unit determines the candidate network device with the lowest load or the smallest bandwidth as the target network device;
or
When the number of the candidate network devices is larger than 1, the determining unit determines the candidate network device with the largest idle bandwidth in the candidate network devices as the target network device;
or
When the number of the candidate network devices is larger than 1, the determining unit determines the candidate network device with the largest total device bandwidth in the candidate network devices as the target network device;
or
When the number of the candidate network devices is larger than 1, the determining unit determines the candidate network device with the largest reserved bandwidth in the candidate network devices as the target network device;
or
When the number of candidate network devices is greater than 1, the determining unit determines, as a target network device, a candidate network device selected as the target network device among the plurality of candidate network devices, the number of times being the smallest;
or
When the number of candidate network devices is equal to 1, the determination unit determines the candidate network device as the target network device.
Wherein the determining unit selects at least one target network device from the plurality of network devices in the non-abnormal state according to the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device includes:
when the idle bandwidth of each network device in the non-abnormal state is smaller than the additional bandwidth required by the source network device, the determining unit determines whether the sum of the idle bandwidths of all the network devices in the non-abnormal state is larger than the additional bandwidth;
when the sum of the idle bandwidths is larger than the additional bandwidth, the determining unit sorts all the network devices in the non-abnormal state according to the ascending sequence or the descending sequence of the idle bandwidths to generate an ascending sequence table or a descending sequence table, and in the ascending sequence table or the descending sequence table, at least two target network devices are selected from all the network devices in the non-abnormal state according to the sequence of the list, so that the sum of the idle bandwidths of the at least two target network devices is larger than or equal to the additional bandwidth.
And when the source network device uses the shared bandwidth provided by each target network device for data transmission based on each target shared port in the shared port network, the source network device switches the egress link of each user device to the corresponding target network device according to the virtual route related to each target network device in the virtual route table, so that part of or all of the user devices in the plurality of user devices access the target network device through the target shared port.
The network equipment further comprises a setting unit, a processing unit and a processing unit, wherein the setting unit is used for sending a notification message for indicating that a specific network equipment in the plurality of network equipment is in an offline state or an abnormal state to the plurality of network equipment if the specific network equipment in the plurality of network equipment is detected to be in the offline state or the abnormal state, so that the network equipment receiving the notification message updates the stored state information table;
a setting unit sets a shared port associated with a specific network device to a disabled state;
the setting unit sets the shared virtual route established with the specific network equipment to a disabled state;
the setting unit reallocates the user equipment for data transmission through the shared virtual route established with the specific network equipment to the network equipment for access.
When the time that the specific network equipment is in the offline state reaches the time threshold, the setting unit deletes the shared port associated with the specific network equipment and deletes the shared virtual route established with the specific network equipment.
The invention is mainly applied to the field of data communication, and provides a load balancing/bandwidth sharing solution based on shared port networking for equipment or a system (hereinafter referred to as a gateway) in the field of access control and for an adjacent property or a multi-region network access scene.
Drawings
A more complete understanding of exemplary embodiments of the present invention may be had by reference to the following drawings in which:
fig. 1 is a schematic structural diagram of a plurality of gateways in the prior art for networking;
FIG. 2 is a flowchart of a method for implementing load balancing based on a shared port network according to an embodiment of the present invention;
FIG. 3 is a diagram illustrating a shared port based networking according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a system for implementing load balancing based on a shared port network according to an embodiment of the present invention.
Detailed Description
The exemplary embodiments of the present invention will now be described with reference to the accompanying drawings, however, the present invention may be embodied in many different forms and is not limited to the embodiments described herein, which are provided for complete and complete disclosure of the present invention and to fully convey the scope of the present invention to those skilled in the art. The terminology used in the exemplary embodiments illustrated in the accompanying drawings is not intended to be limiting of the invention. In the drawings, the same units/elements are denoted by the same reference numerals.
Unless otherwise defined, terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Further, it will be understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense.
Fig. 2 is a flowchart of a method 200 for implementing load balancing based on a shared port network according to an embodiment of the present invention. Based on the network structure of the shared port and the dynamic bandwidth negotiation mechanism implemented on the shared port, the method 200 implements automatic line fault tolerance, load balancing, and bandwidth sharing, thereby reducing the operation and maintenance cost of the multi-region access network, optimizing bandwidth usage, and reducing the total bandwidth usage cost. The method 200 begins at step 201.
In step 201, in a shared port network based on a plurality of shared ports designated by a plurality of network devices, each of the plurality of network devices detects a transmission status of a respective data transmission link in real time, wherein each of the network devices designates one of the shared ports to constitute a plurality of shared ports.
There are a plurality of network devices in a particular area. Multiple network devices are located in different physical layer networks, or multiple network devices are located in the same physical layer network. For example, a physical network of a particular area has multiple subnetworks, and multiple network devices may be located in different subnetworks or in the same subnetwork. The network device is used for providing access services for the user equipment, the mobile terminal and the like, namely, the user equipment, the mobile terminal and the like carry out data communication with an external network through an access network. The network device is for example a gateway.
In order to balance load among a plurality of network devices or to handle the case that a specific network device fails, a shared port network is formed by connecting a plurality of shared ports to a logical layer on the basis of a physical layer network formed by a plurality of network devices. The shared port network is a logical layer network, which may be, for example, a virtual local area network. The shared port network is a network (logical layer network or virtual local area network) configured based on shared ports provided by a plurality of network devices.
In the shared port network, each network device designates one shared port to constitute a plurality of shared ports. Each of the shared ports is different (the IP address of each shared port is different), that is, the IP address of the shared port designated by each network device is unique. Furthermore, each network device in the shared port network is assigned an IP address of the same subnet segment, so that multiple network devices in the shared port network belong to the same subnet segment.
The step of detecting, by each of the plurality of network devices, a transmission status of the respective data transmission link in real time includes: each of the plurality of network devices detects a transmission rate or a network delay of a respective data transmission link in real time. Wherein the transmission state includes a normal state and an abnormal state. Wherein the abnormal state may include a network down state (link down state), a full load state (state where the current load is equal to or greater than the available bandwidth), or a low bandwidth transmission state (limited transmission state). In the low bandwidth transmission state, the bandwidth of the network device is reduced from a normal size to an abnormal size due to a hardware failure or a software failure. For example, in a normal state, the total device bandwidth of the network device a is 300M, the reserved bandwidth is 30M, and the available bandwidth is 270M. For example, in the disconnected state, the available bandwidth of network device a is 0M. For example, in the fully loaded state, the total required bandwidth of all the user equipments accessing the network equipment a is 320M, i.e. the total required bandwidth is already larger than the available bandwidth 270M. For example, in a low bandwidth transfer state, the available bandwidth of network device a may become 50M, while the remaining available bandwidth of 220M becomes unavailable due to a hardware failure or a software failure. Each network device has at least one egress link for transmitting traffic data of a user equipment accessing the network device. For example, gateway a has two egress links: operator link a1 and operator link a 2. Gateway B has one egress link: operator link B. Gateway C has one egress link: carrier link C.
Fig. 3 is a schematic diagram of networking based on a shared port according to an embodiment of the present invention. As shown in fig. 3, each gateway designates a port (e.g., an ethernet port) as a plurality of "shared ports". For example, the gateway a, the gateway B, and the gateway C each designate one port as a plurality of shared ports. All shared ports are connected to the same virtual local area network VLAN (e.g., shared port VLAN) that is located on top of the physical layer network (e.g., layer two network), and each gateway device is configured with IPV4 or IPV6 addresses (which may be referred to simply as IP addresses) for the same sub-segment. An important feature of multiple shared ports is the port role. The shared port has the role of serving as an access port (the shared port of any gateway allocates local export bandwidth resources for access user equipment or mobile terminals from other gateways), and serving as an egress port (when local export is abnormal or insufficient in bandwidth, the locally accessed user equipment or mobile terminals are routed to other gateways through the shared port).
In step 202, when it is detected that a network device with an abnormal data transmission link exists in the plurality of network devices, the network device with the abnormal data transmission link is selected as a source network device, and the additional bandwidth required by the source network device is determined. The exception state may include a network outage state or a low bandwidth transmission state. In the disconnected state, the bandwidth of the network device is reduced to 0 due to a hardware failure or a software failure. In the low bandwidth transmission state, the bandwidth of the network device is reduced from a normal size to an abnormal size due to a hardware failure or a software failure.
According to the present invention, after a shared port network is constructed by connecting a plurality of shared ports at a logical layer, a negotiation service is set for the shared port network. The negotiation service is used to send a multicast announcement to each network device to inform each network device of the submission of status information. The negotiation service may be implemented as hardware, software, modules or components. The negotiation module is used for performing services such as information maintenance, data management, data statistics and the like on a plurality of network devices. Wherein the state information includes: device identification, shared port address, access device network segment information, device total bandwidth, reserved bandwidth, in-use bandwidth, idle bandwidth, bandwidth utilization, transmission status, and priority level. The device identification is an identifier or MAC address of the network device. Bandwidth usage is the ratio of the bandwidth in use to the total bandwidth of the device. The priority level is level information that the system sets in advance for each network device.
For example, a negotiation service is enabled on the shared port, and a multicast announcement is periodically sent by the negotiation service to gateway a, gateway B, and gateway C. The gateway receiving the notification generates response information according to the self state. The response information includes: { identification ID information (e.g., host name), shared port address, user equipment access network segment (subnet, mask), device total bandwidth, reserved bandwidth, in-use bandwidth, spare bandwidth, bandwidth usage, transport status (local egress link in normal state, local egress link in disconnected state, or local egress link in restricted state), priority }. And summarizing according to the response information, so that the gateway A, the gateway B and the gateway C can obtain and maintain an active shared gateway list or a state information list. The shared gateway list or the state information table includes a plurality of state information items, each state information item includes { identification ID information (e.g., host name), shared port address, user equipment access network segment (subnet, mask), device total bandwidth, reserved bandwidth, used bandwidth, idle bandwidth, bandwidth utilization, transmission state (local egress link is in normal state, local egress link is in disconnected state, or ground egress link is in limited state), priority }.
In general, the additional bandwidth required by the source network device may be determined, or calculated, from previous states of the source network device prior to entering the abnormal state. For example, after the data transmission link of the source network device is in an abnormal state, the remaining bandwidth of the source network device and the total required bandwidth required by all the user devices accessing the source network device are determined. Where the remaining bandwidth may be the total bandwidth of the device when the network device (specifically, the source network device) is in an abnormal state. The remaining available bandwidth is the total device bandwidth minus the reserved bandwidth when the network device (specifically, the source network device) is in an abnormal state. A remaining available bandwidth of the source network device is determined based on the remaining bandwidth of the source network device. And when the total required bandwidth is larger than the residual available bandwidth, taking the absolute value of the difference value of the total required bandwidth and the residual available bandwidth as the additional bandwidth required by the source network equipment. Determining a remaining available bandwidth of the source network device based on the remaining bandwidth of the source network device, comprising: and subtracting the reserved bandwidth from the residual bandwidth of the source network device to obtain the residual available bandwidth of the source network device. When the remaining available bandwidth is 0 or a negative number, the remaining available bandwidth is determined to be 0.
For example, when the gateway C is in an abnormal state of link disconnection, the remaining bandwidth of the gateway C is 0M, and the total required bandwidth required by all the user equipments accessing the gateway C is 100M. Since the remaining bandwidth of the gateway C (corresponding to the total device bandwidth in the abnormal state) is 0M, the remaining available bandwidth of the gateway C is also 0M. When the total required bandwidth 100M is greater than the remaining available bandwidth (i.e., idle bandwidth) 0M, the absolute value of the difference between the total required bandwidth and the remaining available bandwidth is used as the additional bandwidth required by the gateway C, i.e., 100M-0M is 100M as the additional bandwidth required by the gateway C.
For example, when the gateway C is in a full load state, the remaining bandwidth of the gateway C is 300M (i.e., in this case, since the egress link of the gateway C is not limited or broken, the remaining bandwidth of the gateway C is the total bandwidth of the device). The total required bandwidth required by all user equipment accessing gateway C is 320M. Since the remaining bandwidth or the total device bandwidth of the gateway C is 300M and the reserved bandwidth is 30M, the remaining available bandwidth of the gateway C is 270M-300M. When the total required bandwidth 320M is greater than the remaining available bandwidth, the absolute value of the difference between the total required bandwidth and the remaining available bandwidth is used as the additional bandwidth required by the gateway C, i.e., 320M-270M is 50M as the additional bandwidth required by the gateway C.
For example, when the gateway C is in the link-limited abnormal state, the remaining bandwidth of the gateway C is 100M, and the total required bandwidth required by all the user equipments accessing the gateway C is 100M. The remaining bandwidth of the gateway C (corresponding to the total device bandwidth in the abnormal state) is 100M, so the remaining available bandwidth of the gateway C is 100M — the reserved bandwidth 30M is 70M. When the total required bandwidth 100M is greater than the remaining available bandwidth (i.e., the free bandwidth) 70M, the absolute value of the difference between the total required bandwidth and the remaining available bandwidth is used as the additional bandwidth required by the gateway C, i.e., 100M-70M is 30M as the additional bandwidth required by the gateway C.
In step 203, each status information item in the status information table stored by the source network device is parsed to determine the idle bandwidth of each network device in the non-abnormal state, except the source network device, of the plurality of network devices sharing the port network. According to one embodiment, a negotiation service receives state information from each network device, stores the state information for each network device in a state information table, and sends the state information table including the state information for all network devices to each network device.
The source network device may parse each state information item in its or a locally stored state information table to determine the transmission state of each other network device in the shared port network. When the transmission state of the network device is a normal state, the network device is determined as a non-abnormal state network device. For example, gateway C may parse the gateway a and gateway B state information items in its or locally stored state information table to determine the transmission states of gateway a and gateway B in the shared port network. And when the transmission states of the gateway A and the gateway B are in a normal state, determining the gateway A and the gateway B as the network equipment in the non-abnormal state.
Since each network device may have multiple egress links, the idle bandwidth K of each network device is calculated according to the usage status of each egress link that each network device hasi
Figure BDA0002544501280000171
Wherein, KiI is the idle bandwidth of the ith network device, and i is a natural number greater than 1; n isiIs the number of exit links of the ith network device, j is a natural number and is more than or equal to 1 and less than or equal to ni;TijThe total device bandwidth of the jth egress link of the ith network device; kijReserving bandwidth for a jth egress link of an ith network device; and UijThe bandwidth of the jth egress link of the ith network device that is in use. Typically, at least two network devices (gateways) are included in a shared port network.
Then, calculateBandwidth usage rate P of each network devicei
Figure BDA0002544501280000172
Wherein P isiThe bandwidth utilization rate of the ith network device is represented by i, wherein i is a natural number greater than 1; n isiIs the number of exit links of the ith network device, j is a natural number and is more than or equal to 1 and less than or equal to ni;TijThe total device bandwidth of the jth egress link of the ith network device; and UijThe bandwidth of the jth egress link of the ith network device that is in use. The present invention can use bandwidth usage to describe the load condition of each network device.
For example, each gateway, gateway a, gateway B, and gateway C, calculates the idle bandwidth based on the usage of its egress link and a configurable sharing threshold. For example, gateway a has two egress links, operator link a1 with a bandwidth of 300M, an idle threshold of 270M (i.e., a reserved bandwidth of 30M), and 150M (i.e., an in-use bandwidth of 150M) is used. The bandwidth of operator link a2 is 100M, the idle threshold 80M, and 30M is used. Then, the idle bandwidth that gateway a can share is: and (270-.
In step 204, at least one target network device is selected from the plurality of network devices in the non-abnormal state according to the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device, and the shared bandwidth provided by each target network device is determined.
According to one embodiment, after a shared port network is constructed by connecting a plurality of shared ports at a logical layer, the method includes: the device identification of each network device in the shared port network and the corresponding shared port are generated into a device information item, for example by a negotiation service. The format of the device information item is < device identification, IP address of shared port >. The negotiation service constructs a device information table from all the device information items and sends the device information table to each network device in the shared port network.
And each or any network equipment stores and analyzes the received equipment information table and determines the equipment identifier of each network equipment and the IP address of the shared port in the shared port network. Thus, each network device can know the device identification of each other network device and the IP address of the shared port in the shared port network. That is, any network device establishes a shared virtual route with each network device except itself according to the device identifier of each network device except itself and the IP address of the shared port in the shared port network, and directs each shared virtual route to the shared port of each network device except itself.
For example, each of the gateways a, B, and C automatically generates a "shared virtual route" after obtaining the device information table. For example, gateway a generates two shared virtual routes whose default routes point to the shared port addresses of gateway B and gateway C, respectively.
As described above, determining the additional bandwidth required by the source network device includes: when a data transmission link of source network equipment is in an abnormal state, determining the residual bandwidth of the source network equipment and the total required bandwidth required by all user equipment accessed to the source network equipment; determining a remaining available bandwidth of the source network device based on the remaining bandwidth of the source network device; and when the total required bandwidth is larger than the residual available bandwidth, taking the absolute value of the difference value of the total required bandwidth and the residual available bandwidth as the additional bandwidth required by the source network equipment. Determining that the source network device does not require additional bandwidth when the total required bandwidth is less than or equal to the remaining available bandwidth.
For example, when the gateway C is in the abnormal state in which the link is limited, the remaining bandwidth of the gateway C (which corresponds to the total bandwidth of the devices in the abnormal state) is 100M, and the total required bandwidth required by all the user devices accessing the gateway C is 60M. The remaining bandwidth of the gateway C is 100M, so the remaining available bandwidth (i.e., the spare bandwidth) of the gateway C is 100M-the reserved bandwidth 30M is 70M. When the total required bandwidth 60M is less than the remaining available bandwidth 70M, it is determined that the gateway C does not need additional bandwidth.
Wherein selecting at least one target network device from the plurality of network devices in the non-abnormal state according to the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device comprises: the network device having idle bandwidth greater than the additional bandwidth required by the source network device and being in a non-anomalous state is determined as a candidate network device.
And when the number of the candidate network devices is larger than 1, determining the candidate network device with the highest priority level in the candidate network devices as the target network device. Or when the number of the candidate network devices is larger than 1, determining the candidate network device with the lowest load or the smallest bandwidth in use in the plurality of candidate network devices as the target network device. Or when the number of the candidate network devices is greater than 1, determining the candidate network device with the largest idle bandwidth in the candidate network devices as the target network device; or when the number of the candidate network devices is larger than 1, determining the candidate network device with the largest total device bandwidth in the plurality of candidate network devices as the target network device. Or when the number of the candidate network devices is larger than 1, determining the candidate network device with the largest reserved bandwidth in the candidate network devices as the target network device. Or when the number of the candidate network devices is greater than 1, determining the candidate network device with the least number of times to be selected as the target network device from the plurality of candidate network devices as the target network device. When the number of candidate network devices is equal to 1, the candidate network device is determined as the target network device.
For example, each of the gateways a, B and C may allocate the accessed user equipment or mobile terminal to the other gateways according to its own load balancing policy (including but not limited to rank first, fair rotation, minimum load first, maximum idle first, etc.). For example, if the egress link of the gateway C is disconnected, all the access ues or mobile terminals may be switched to the virtual route a according to the maximum idle-first condition (if the idle bandwidth a of the gateway > the idle bandwidth of the gateway B). For example, if both egress links of gateway a are nearly fully loaded, then newly added or partially online user equipments or mobile terminals may be allocated to virtual route B and virtual route C in a fair round robin or sequential round robin manner according to a fair round robin policy (if both gateways B and C have free bandwidth).
Wherein selecting at least one target network device from the plurality of network devices in the non-abnormal state based on the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device comprises:
when the free bandwidth of each network device in the non-abnormal state is less than the additional bandwidth required by the source network device, determining whether the sum of the free bandwidths of all the network devices in the non-abnormal state is greater than the additional bandwidth. When the sum of the idle bandwidths is larger than the additional bandwidth, sorting all the network devices in the non-abnormal state according to the ascending sequence or the descending sequence of the idle bandwidths to generate an ascending sequence table or a descending sequence table, and selecting at least two target network devices from all the network devices in the non-abnormal state according to the sequence of the list in the ascending sequence table or the descending sequence table, so that the sum of the idle bandwidths of the at least two target network devices is larger than or equal to the additional bandwidth.
Or selecting at least two target network devices from all the network devices in the non-abnormal state according to the list order, so that the sum of the idle bandwidths of the at least two target network devices is larger than or equal to the additional bandwidth, and after any one target network device is removed from the at least two target network devices, the sum of the idle bandwidths is smaller than the additional bandwidth.
For example, gateways A-E are network devices in a non-anomalous state and gateway F is a source network device. The additional bandwidth required by the gateway F is 300M. The idle bandwidths of gateways a-E are 200M, 120M, 80M, 60M and 50M, respectively. The spare bandwidth of each of the gateways a-E is less than the additional bandwidth required by the gateway F. The sum of the free bandwidth of the gateways a-E is 200M +120M +80M +60M + 50M-510M, i.e. the sum of the free bandwidth of the gateways a-E is larger than the additional bandwidth. All network devices in the non-abnormal state are sorted according to the ascending sequence of the idle bandwidth to generate an ascending list, namely, the list: gateway E, gateway D, gateway C, gateway B and gateway A. Selecting at least two target network devices from all gateways A-E in a non-abnormal state in the order of the list (the ascending list is selected starting from the network device with the smallest free bandwidth): i.e., gateway E, gateway D, gateway C, and gateway B, then the idle bandwidth provided is 50M +60M +80M + 120M-310M.
All network devices in the non-abnormal state are sorted according to the descending sequence of the idle bandwidth to generate a descending list, namely, a list: gateway A, gateway B, gateway C, gateway D and gateway E. Selecting at least two target network devices from all gateways A-E in a non-abnormal state in the list order (the descending list is selected starting from the network device with the largest free bandwidth): i.e., gateway a and gateway B are selected, then the spare bandwidth provided is 200M + 120M-320M.
Furthermore, the above method may also be replaced by each target network device providing a certain proportion (e.g., 100%, 90%, 80%, etc.) of the spare bandwidth as the shared bandwidth when the spare bandwidth or the sum of the spare bandwidths is greater than the additional bandwidth by a certain proportion, for example, the spare bandwidth or the sum of the spare bandwidths is greater than the additional bandwidth by 50%.
In step 205, the shared port designated by each target network device is determined as a target shared port, and the source network device performs data transmission in a load balancing manner based on each target shared port in the shared port network by using the shared bandwidth provided by each target network device (for example, moving a partial load to the shared bandwidth provided by the target network device).
When the source network device uses the shared bandwidth provided by each target network device for data transmission based on each target shared port in the shared port network, the source network device switches the egress link of each user device to the corresponding target network device according to the virtual route related to each target network device in the virtual route table, so that part of or all of the user devices in the plurality of user devices access the target network device through the target shared port.
For example, each of gateway a, gateway B, and gateway C automatically generates routes that point to the other gateway access subscriber sub-segments (this behavior resembles a dynamic routing protocol). For example, gateway a knows that the next hop address of the user equipment or mobile terminal accessing network C is the address of the shared port of gateway C. The automatic notification of the access sub-network segment of the user equipment or the mobile terminal can reduce the configuration workload and avoid manually configuring the return route of other gateway access user segments at each gateway.
If the specific network equipment in the plurality of network equipment is detected to be in the offline state or the abnormal state, sending a notification message for indicating that the specific network equipment is in the offline state or the abnormal state to the plurality of network equipment, so that the network equipment receiving the notification message updates the stored state information table; setting a shared port associated with a particular network device to a disabled state; setting a shared virtual route established with a specific network device to a disabled state; a user equipment for data transmission through a shared virtual route established with a particular network equipment is reallocated for a network equipment for access. When the time that the specific network equipment is in the offline state reaches a time threshold, the shared port associated with the specific network equipment is deleted, and the shared virtual route established with the specific network equipment is deleted.
For example, if a gateway is detected to be offline or the advertised state is abnormal, the shared virtual route of the corresponding gateway is disabled/deleted. For example, if gateway C times out and does not respond, the virtual route corresponding to gateway C will be disabled on both gateway a and gateway B. And if the gateway C is not recovered for a long time, completely deleting the virtual route corresponding to the gateway C. For example, if the local egress link of gateway C is completely disconnected, the virtual route corresponding to gateway C will be disabled on gateway a and gateway B. When a virtual route disable/delete event occurs, each gateway will reallocate egress routing resources to users that have been allocated to the disabled/deleted virtual route. For example, if gateway C is abnormal, if there is a user equipment or mobile terminal already assigned to virtual route C, gateway a and gateway B will re-assign the egress route to the user equipment or mobile terminal (assign local route, or other available shared virtual route).
Fig. 4 is a schematic structural diagram of a system 400 for implementing load balancing based on a shared port network according to an embodiment of the present invention. Based on the network structure of the shared port and the dynamic bandwidth negotiation mechanism implemented on the shared port, the system 400 implements automatic line fault tolerance, load balancing, and bandwidth sharing, thereby reducing the operation and maintenance cost of the multi-region access network, optimizing bandwidth usage, and reducing the total bandwidth usage cost. The system 400 includes: detection section 401, selection section 402, analysis section 403, determination section 404, equalization section 405, initialization section 406, generation section 407, transmission section 408, and setting section 409.
The detection unit 401 causes, in a shared port network based on a plurality of shared ports designated by a plurality of network devices, each of the plurality of network devices designating one shared port to constitute a plurality of shared ports, each of the plurality of network devices to detect a transmission state of a respective data transmission link in real time.
There are a plurality of network devices in a particular area. Multiple network devices are located in different physical layer networks, or multiple network devices are located in the same physical layer network. For example, a physical network of a particular area has multiple subnetworks, and multiple network devices may be located in different subnetworks or in the same subnetwork. The network device is used for providing access services for the user equipment, the mobile terminal and the like, namely, the user equipment, the mobile terminal and the like carry out data communication with an external network through an access network. The network device is for example a gateway.
In order to balance the load among a plurality of network devices or to handle a case where a specific network device fails, the initialization unit 406 forms a shared port network by connecting a plurality of shared ports to a logical layer on the basis of a physical layer network formed by a plurality of network devices. The shared port network is a logical layer network, which may be, for example, a virtual local area network. The shared port network is a network (logical layer network or virtual local area network) configured based on shared ports provided by a plurality of network devices.
In the shared port network, each network device designates one shared port to constitute a plurality of shared ports. Each of the shared ports is different (the IP address of each shared port is different), that is, the IP address of the shared port designated by each network device is unique. Furthermore, each network device in the shared port network is assigned an IP address of the same subnet segment, so that multiple network devices in the shared port network belong to the same subnet segment.
The step of detecting, by each of the plurality of network devices, a transmission status of the respective data transmission link in real time includes: each of the plurality of network devices detects a transmission rate or a network delay of a respective data transmission link in real time. Wherein the transmission state includes a normal state and an abnormal state. Wherein the abnormal state may include a network down state (link down state), a full load state (state where the current load is equal to or greater than the available bandwidth), or a low bandwidth transmission state (limited transmission state). In the low bandwidth transmission state, the bandwidth of the network device is reduced from a normal size to an abnormal size due to a hardware failure or a software failure. For example, in a normal state, the total device bandwidth of the network device a is 300M, the reserved bandwidth is 30M, and the available bandwidth is 270M. For example, in the disconnected state, the available bandwidth of network device a is 0M. For example, in the fully loaded state, the total required bandwidth of all the user equipments accessing the network equipment a is 320M, i.e. the total required bandwidth is already larger than the available bandwidth 270M. For example, in a low bandwidth transfer state, the available bandwidth of network device a may become 50M, while the remaining available bandwidth of 220M becomes unavailable due to a hardware failure or a software failure. Each network device has at least one egress link for transmitting traffic data of a user equipment accessing the network device. For example, gateway a has two egress links: operator link a1 and operator link a 2. Gateway B has one egress link: operator link B. Gateway C has one egress link: carrier link C.
Fig. 3 is a schematic diagram of networking based on a shared port according to an embodiment of the present invention. As shown in fig. 3, each gateway designates a port (e.g., an ethernet port) as a plurality of "shared ports". For example, the gateway a, the gateway B, and the gateway C each designate one port as a plurality of shared ports. All shared ports are connected to the same virtual local area network VLAN (e.g., shared port VLAN) that is located on top of the physical layer network (e.g., layer two network), and each gateway device is configured with IPV4 or IPV6 addresses (which may be referred to simply as IP addresses) for the same sub-segment. An important feature of multiple shared ports is the port role. The shared port has the role of serving as an access port (the shared port of any gateway allocates local export bandwidth resources for access user equipment or mobile terminals from other gateways), and serving as an egress port (when local export is abnormal or insufficient in bandwidth, the locally accessed user equipment or mobile terminals are routed to other gateways through the shared port).
When detecting that a network device with a data transmission link in an abnormal state exists in the plurality of network devices, the selecting unit 402 selects the network device with the data transmission link in the abnormal state as a source network device, and determines an additional bandwidth required by the source network device. The exception state may include a network outage state or a low bandwidth transmission state. In the disconnected state, the bandwidth of the network device is reduced to 0 due to a hardware failure or a software failure. In the low bandwidth transmission state, the bandwidth of the network device is reduced from a normal size to an abnormal size due to a hardware failure or a software failure.
According to the present invention, after a shared port network is constructed by connecting a plurality of shared ports at a logical layer, a negotiation service is set for the shared port network. The negotiation service is used to send a multicast announcement to each network device to inform each network device of the submission of status information. The negotiation service may be implemented as hardware, software, modules or components. The negotiation module is used for performing services such as information maintenance, data management, data statistics and the like on a plurality of network devices. Wherein the state information includes: device identification, shared port address, access device network segment information, device total bandwidth, reserved bandwidth, in-use bandwidth, idle bandwidth, bandwidth utilization, transmission status, and priority level. The device identification is an identifier or MAC address of the network device. Bandwidth usage is the ratio of the bandwidth in use to the total bandwidth of the device. The priority level is level information that the system sets in advance for each network device.
For example, a negotiation service is enabled on the shared port, and a multicast announcement is periodically sent by the negotiation service to gateway a, gateway B, and gateway C. The gateway receiving the notification generates response information according to the self state. The response information includes: { identification ID information (e.g., host name), shared port address, user equipment access network segment (subnet, mask), device total bandwidth, reserved bandwidth, in-use bandwidth, spare bandwidth, bandwidth usage, transport status (local egress link in normal state, local egress link in disconnected state, or local egress link in restricted state), priority }. And summarizing according to the response information, so that the gateway A, the gateway B and the gateway C can obtain and maintain an active shared gateway list or a state information list. The shared gateway list or the state information table includes a plurality of state information items, each state information item includes { identification ID information (e.g., host name), shared port address, user equipment access network segment (subnet, mask), device total bandwidth, reserved bandwidth, used bandwidth, idle bandwidth, bandwidth utilization, transmission state (local egress link is in normal state, local egress link is in disconnected state, or ground egress link is in limited state), priority }.
In general, the additional bandwidth required by the source network device may be determined, or calculated, from previous states of the source network device prior to entering the abnormal state. For example, after the data transmission link of the source network device is in an abnormal state, the remaining bandwidth of the source network device and the total required bandwidth required by all the user devices accessing the source network device are determined. A remaining available bandwidth of the source network device is determined based on the remaining bandwidth of the source network device. And when the total required bandwidth is larger than the residual available bandwidth, taking the absolute value of the difference value of the total required bandwidth and the residual available bandwidth as the additional bandwidth required by the source network equipment. Determining a remaining available bandwidth of the source network device based on the remaining bandwidth of the source network device, comprising: and subtracting the reserved bandwidth from the residual bandwidth of the source network device to obtain the residual available bandwidth of the source network device. When the remaining available bandwidth is 0 or a negative number, the remaining available bandwidth is determined to be 0.
For example, when the gateway C is in an abnormal state of link disconnection, the remaining bandwidth of the gateway C is 0M, and the total required bandwidth required by all the user equipments accessing the gateway C is 100M. Since the remaining bandwidth of the gateway C (corresponding to the total bandwidth of the devices in the abnormal state) is 0M, the remaining available bandwidth of the gateway C is also 0M. When the total required bandwidth 100M is greater than the remaining available bandwidth (i.e., the free bandwidth) 0M, the absolute value of the difference between the total required bandwidth and the remaining available bandwidth is used as the additional bandwidth required by the gateway C, i.e., 100M-0M is 100M as the additional bandwidth required by the gateway C.
For example, when the gateway C is in a full load state, the remaining bandwidth of the gateway C is 300M (i.e., in this case, since the egress link of the gateway C is not limited or broken, the remaining bandwidth of the gateway C is the total bandwidth of the device). The total required bandwidth required by all user equipment accessing gateway C is 320M. Since the remaining bandwidth or the total device bandwidth of the gateway C is 300M and the reserved bandwidth is 30M, the remaining available bandwidth of the gateway C is 270M-300M. When the total required bandwidth 320M is greater than the remaining available bandwidth, the absolute value of the difference between the total required bandwidth and the remaining available bandwidth is used as the additional bandwidth required by the gateway C, i.e., 320M-270M is 50M as the additional bandwidth required by the gateway C. For example, when the gateway C is in the link-limited abnormal state, the remaining bandwidth of the gateway C is 100M, and the total required bandwidth required by all the user equipments accessing the gateway C is 100M. The remaining bandwidth of the gateway C (corresponding to the total device bandwidth in the abnormal state) is 100M, so the remaining available bandwidth of the gateway C is 100M — the reserved bandwidth 30M is 70M. When the total required bandwidth 100M is greater than the remaining available bandwidth (i.e., the free bandwidth) 70M, the absolute value of the difference between the total required bandwidth and the remaining available bandwidth is used as the additional bandwidth required by the gateway C, i.e., 100M-70M is 30M as the additional bandwidth required by the gateway C.
The parsing unit 403 parses each status information item in the status information table stored by the source network device to determine the idle bandwidth of each network device in the non-abnormal state, except the source network device, in the plurality of network devices sharing the port network. According to one embodiment, a negotiation service receives state information from each network device, stores the state information for each network device in a state information table, and sends the state information table including the state information for all network devices to each network device.
The source network device may parse each state information item in its or a locally stored state information table to determine the transmission state of each other network device in the shared port network. When the transmission state of the network device is a normal state, the network device is determined as a non-abnormal state network device. For example, gateway C may parse the gateway a and gateway B state information items in its or locally stored state information table to determine the transmission states of gateway a and gateway B in the shared port network. And when the transmission states of the gateway A and the gateway B are in a normal state, determining the gateway A and the gateway B as the network equipment in the non-abnormal state.
Since each network device may have multiple egress links, the idle bandwidth K of each network device is calculated according to the usage status of each egress link that each network device hasi
Figure BDA0002544501280000261
Wherein, KiI is the idle bandwidth of the ith network device, and i is a natural number greater than 1; n isiIs the number of exit links of the ith network device, j is a natural number and is more than or equal to 1 and less than or equal to ni;TijThe total device bandwidth of the jth egress link of the ith network device; kijReserving bandwidth for a jth egress link of an ith network device; and UijThe bandwidth of the jth egress link of the ith network device that is in use. Typically, at least two network devices (gateways) are included in a shared port network.
Subsequently, the bandwidth utilization rate P of each network device is calculatedi
Figure BDA0002544501280000271
Wherein P isiThe bandwidth utilization rate of the ith network device is represented by i, wherein i is a natural number greater than 1; n isiIs the number of exit links of the ith network device, j is a natural number and is more than or equal to 1 and less than or equal to ni;TijThe total device bandwidth of the jth egress link of the ith network device; and UijThe bandwidth of the jth egress link of the ith network device that is in use. The present invention can use bandwidth usage to describe the load condition of each network device.
For example, each gateway, gateway a, gateway B, and gateway C, calculates the idle bandwidth based on the usage of its egress link and a configurable sharing threshold. For example, gateway a has two egress links, operator link a1 with a bandwidth of 300M, an idle threshold of 270M (i.e., a reserved bandwidth of 30M), and 150M (i.e., an in-use bandwidth of 150M) is used. The bandwidth of operator link a2 is 100M, the idle threshold 80M, and 30M is used. Then, the idle bandwidth that gateway a can share is: and (270-.
The determining unit 404 selects at least one target network device from the plurality of network devices in the non-abnormal state according to the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device, and determines the shared bandwidth provided by each target network device.
According to one embodiment, after a shared port network is constructed by connecting a plurality of shared ports at a logical layer, the generating unit 407 generates a device information item for a device identifier of each network device and a corresponding shared port in the shared port network. The format of the device information item is < device identification, IP address of shared port >. The transmitting unit 408 constructs all the device information items into a device information table and transmits the device information table to each network device in the shared port network.
And each or any network equipment stores and analyzes the received equipment information table and determines the equipment identifier of each network equipment and the IP address of the shared port in the shared port network. Thus, each network device can know the device identification of each other network device and the IP address of the shared port in the shared port network. That is, any network device establishes a shared virtual route with each network device except itself according to the device identifier of each network device except itself and the IP address of the shared port in the shared port network, and directs each shared virtual route to the shared port of each network device except itself.
For example, each of the gateways a, B, and C automatically generates a "shared virtual route" after obtaining the device information table. For example, gateway a generates two shared virtual routes whose default routes point to the shared port addresses of gateway B and gateway C, respectively.
As described above, determining the additional bandwidth required by the source network device includes: when a data transmission link of source network equipment is in an abnormal state, determining the residual bandwidth of the source network equipment and the total required bandwidth required by all user equipment accessed to the source network equipment; determining a remaining available bandwidth of the source network device based on the remaining bandwidth of the source network device; and when the total required bandwidth is larger than the residual available bandwidth, taking the absolute value of the difference value of the total required bandwidth and the residual available bandwidth as the additional bandwidth required by the source network equipment. Determining that the source network device does not require additional bandwidth when the total required bandwidth is less than or equal to the remaining available bandwidth.
For example, when the gateway C is in the abnormal state in which the link is limited, the remaining bandwidth of the gateway C (which corresponds to the total bandwidth of the devices in the abnormal state) is 100M, and the total required bandwidth required by all the user devices accessing the gateway C is 60M. The remaining bandwidth of the gateway C is 100M, so the remaining available bandwidth (i.e., the spare bandwidth) of the gateway C is 100M-the reserved bandwidth 30M is 70M. When the total required bandwidth 60M is less than the remaining available bandwidth 70M, it is determined that the gateway C does not need additional bandwidth.
Wherein selecting at least one target network device from the plurality of network devices in the non-abnormal state according to the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device comprises: the network device having idle bandwidth greater than the additional bandwidth required by the source network device and being in a non-anomalous state is determined as a candidate network device.
And when the number of the candidate network devices is larger than 1, determining the candidate network device with the highest priority level in the candidate network devices as the target network device. Or when the number of the candidate network devices is larger than 1, determining the candidate network device with the lowest load or the smallest bandwidth in use in the plurality of candidate network devices as the target network device. Or when the number of the candidate network devices is greater than 1, determining the candidate network device with the largest idle bandwidth in the candidate network devices as the target network device; or when the number of the candidate network devices is larger than 1, determining the candidate network device with the largest total device bandwidth in the plurality of candidate network devices as the target network device. Or when the number of the candidate network devices is larger than 1, determining the candidate network device with the largest reserved bandwidth in the candidate network devices as the target network device. Or when the number of the candidate network devices is greater than 1, determining the candidate network device with the least number of times to be selected as the target network device from the plurality of candidate network devices as the target network device. When the number of candidate network devices is equal to 1, the candidate network device is determined as the target network device.
For example, each of the gateways a, B and C may allocate the accessed user equipment or mobile terminal to the other gateways according to its own load balancing policy (including but not limited to rank first, fair rotation, minimum load first, maximum idle first, etc.). For example, if the egress link of the gateway C is disconnected, all the access ues or mobile terminals may be switched to the virtual route a according to the maximum idle-first condition (if the idle bandwidth a of the gateway > the idle bandwidth of the gateway B). For example, if both egress links of gateway a are nearly fully loaded, then newly added or partially online user equipments or mobile terminals may be allocated to virtual route B and virtual route C in a fair round robin or sequential round robin manner according to a fair round robin policy (if both gateways B and C have free bandwidth).
Wherein selecting at least one target network device from the plurality of network devices in the non-abnormal state based on the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device comprises:
when the free bandwidth of each network device in the non-abnormal state is less than the additional bandwidth required by the source network device, determining whether the sum of the free bandwidths of all the network devices in the non-abnormal state is greater than the additional bandwidth. When the sum of the idle bandwidths is larger than the additional bandwidth, sorting all the network devices in the non-abnormal state according to the ascending sequence or the descending sequence of the idle bandwidths to generate an ascending sequence table or a descending sequence table, and selecting at least two target network devices from all the network devices in the non-abnormal state according to the sequence of the list in the ascending sequence table or the descending sequence table, so that the sum of the idle bandwidths of the at least two target network devices is larger than or equal to the additional bandwidth.
Or selecting at least two target network devices from all the network devices in the non-abnormal state according to the list order, so that the sum of the idle bandwidths of the at least two target network devices is larger than or equal to the additional bandwidth, and after any one target network device is removed from the at least two target network devices, the sum of the idle bandwidths is smaller than the additional bandwidth.
For example, gateways A-E are network devices in a non-anomalous state and gateway F is a source network device. The additional bandwidth required by the gateway F is 300M. The idle bandwidths of gateways a-E are 200M, 120M, 80M, 60M and 50M, respectively. The spare bandwidth of each of the gateways a-E is less than the additional bandwidth required by the gateway F. The sum of the free bandwidth of the gateways a-E is 200M +120M +80M +60M + 50M-510M, i.e. the sum of the free bandwidth of the gateways a-E is larger than the additional bandwidth. All network devices in the non-abnormal state are sorted according to the ascending sequence of the idle bandwidth to generate an ascending list, namely, the list: gateway E, gateway D, gateway C, gateway B and gateway A. Selecting at least two target network devices from all gateways A-E in a non-abnormal state in the order of the list (the ascending list is selected starting from the network device with the smallest free bandwidth): i.e., gateway E, gateway D, gateway C, and gateway B, then the idle bandwidth provided is 50M +60M +80M + 120M-310M.
All network devices in the non-abnormal state are sorted according to the descending sequence of the idle bandwidth to generate a descending list, namely, a list: gateway A, gateway B, gateway C, gateway D and gateway E. Selecting at least two target network devices from all gateways A-E in a non-abnormal state in the list order (the descending list is selected starting from the network device with the largest free bandwidth): i.e., gateway a and gateway B are selected, then the spare bandwidth provided is 200M + 120M-320M.
Furthermore, the above method may also be replaced by each target network device providing a certain proportion (e.g., 100%, 90%, 80%, etc.) of the spare bandwidth as the shared bandwidth when the spare bandwidth or the sum of the spare bandwidths is greater than the additional bandwidth by a certain proportion, for example, the spare bandwidth or the sum of the spare bandwidths is greater than the additional bandwidth by 50%.
The balancing unit 405 determines the shared port designated by each target network device as a target shared port, and the source network device performs data transmission using the shared bandwidth provided by each target network device (for example, moving a partial load to the shared bandwidth provided by the target network device) based on each target shared port within the shared port network, thereby performing data transmission in a load balanced manner.
When the source network device uses the shared bandwidth provided by each target network device for data transmission based on each target shared port in the shared port network, the source network device switches the egress link of each user device to the corresponding target network device according to the virtual route related to each target network device in the virtual route table, so that part of or all of the user devices in the plurality of user devices access the target network device through the target shared port.
For example, each of gateway a, gateway B, and gateway C automatically generates routes that point to the other gateway access subscriber sub-segments (this behavior resembles a dynamic routing protocol). For example, gateway a knows that the next hop address of the user equipment or mobile terminal accessing network C is the address of the shared port of gateway C. The automatic notification of the access sub-network segment of the user equipment or the mobile terminal can reduce the configuration workload and avoid manually configuring the return route of other gateway access user segments at each gateway.
The network device further comprises a setting unit 409, configured to send a notification message indicating that a specific network device is in an offline state or an abnormal state to the plurality of network devices if it is detected that the specific network device is in the offline state or the abnormal state, so that the network device receiving the notification message updates the stored state information table; setting a shared port associated with a particular network device to a disabled state; setting a shared virtual route established with a specific network device to a disabled state; a user equipment for data transmission through a shared virtual route established with a particular network equipment is reallocated for a network equipment for access. When the time that the specific network equipment is in the offline state reaches a time threshold, the shared port associated with the specific network equipment is deleted, and the shared virtual route established with the specific network equipment is deleted.
For example, if a gateway is detected to be offline or the advertised state is abnormal, the shared virtual route of the corresponding gateway is disabled/deleted. For example, if gateway C times out and does not respond, the virtual route corresponding to gateway C will be disabled on both gateway a and gateway B. And if the gateway C is not recovered for a long time, completely deleting the virtual route corresponding to the gateway C. For example, if the local egress link of gateway C is completely disconnected, the virtual route corresponding to gateway C will be disabled on gateway a and gateway B. When a virtual route disable/delete event occurs, each gateway will reallocate egress routing resources to users that have been allocated to the disabled/deleted virtual route. For example, if gateway C is abnormal, if there is a user equipment or mobile terminal already assigned to virtual route C, gateway a and gateway B will re-assign the egress route to the user equipment or mobile terminal (assign local route, or other available shared virtual route).
The invention has been described with reference to a few embodiments. However, other embodiments of the invention than the one disclosed above are equally possible within the scope of the invention, as would be apparent to a person skilled in the art from the appended patent claims.
Generally, all terms used in the claims are to be interpreted according to their ordinary meaning in the technical field, unless explicitly defined otherwise herein. All references to "a/an/the [ device, component, etc ]" are to be interpreted openly as referring to at least one instance of said device, component, etc., unless explicitly stated otherwise. The steps of any method disclosed herein do not have to be performed in the exact order disclosed, unless explicitly stated.

Claims (10)

1. A method for implementing load balancing based on a shared port network, the method comprising:
in a shared port network based on a plurality of shared ports designated by a plurality of network devices, each network device in the plurality of network devices detects the transmission state of a respective data transmission link in real time, wherein each network device designates one shared port to constitute the plurality of shared ports;
when detecting that network equipment with a data transmission link in an abnormal state exists in a plurality of network equipment, selecting the network equipment with the data transmission link in the abnormal state as source network equipment, and determining an additional bandwidth required by the source network equipment;
analyzing each state information item in a state information table stored by the source network device to determine the idle bandwidth of each network device in a non-abnormal state except the source network device in the plurality of network devices sharing the port network;
according to the idle bandwidth of each network device in the non-abnormal state and the additional bandwidth required by the source network device, selecting at least one target network device from a plurality of network devices in the non-abnormal state, and determining the shared bandwidth provided by each target network device; and
and determining the shared port designated by each target network device as a target shared port, wherein the source network device performs data transmission in a load balancing manner by using the shared bandwidth provided by each target network device based on each target shared port in the shared port network.
2. The method of claim 1, wherein the IP address of the shared port specified by each network device is unique.
3. The method according to claim 1, wherein the shared port network is configured by connecting a plurality of shared ports to a logical layer on the basis of a physical layer network configured by a plurality of network devices.
4. The method of claim 1, the plurality of network devices being located in different physical-layer networks, or the plurality of network devices being located in the same physical-layer network.
5. The method of claim 3, assigning each network device in the shared port network an IP address of the same sub-segment.
6. A system for implementing load balancing based on a shared port network, the system comprising:
a detection unit that, in a shared port network based on a plurality of shared ports specified by a plurality of network devices, causes each of the plurality of network devices to detect, in real time, a transmission state of a respective data transmission link, wherein each of the network devices specifies one of the shared ports to constitute the plurality of shared ports;
the network equipment comprises a selecting unit, a judging unit and a judging unit, wherein the selecting unit is used for selecting the network equipment with the abnormal data transmission link as source network equipment and determining the additional bandwidth required by the source network equipment when detecting that the network equipment with the abnormal data transmission link exists in the plurality of network equipment;
the analysis unit is used for analyzing each state information item in the state information table stored by the source network equipment so as to determine the idle bandwidth of each network equipment in a non-abnormal state except the source network equipment in a plurality of network equipment sharing a port network;
a determining unit, configured to select at least one target network device from the plurality of network devices in the non-abnormal state according to an idle bandwidth of each network device in the non-abnormal state and an additional bandwidth required by the source network device, and determine a shared bandwidth provided by each target network device; and
and the source network device performs data transmission in a load balancing mode by using the shared bandwidth provided by each target network device based on each target shared port in the shared port network.
7. The system of claim 6, wherein the IP address of the shared port specified by each network device is unique.
8. The system according to claim 6, further comprising an initialization unit that constructs a shared port network by connecting a plurality of shared ports at a logical layer on the basis of a physical layer network constructed by a plurality of network devices.
9. The system of claim 6, the plurality of network devices being located in different physical-layer networks, or the plurality of network devices being located in the same physical-layer network.
10. The system of claim 8, the initialization unit assigns each network device in the shared port network an IP address of the same sub-segment.
CN202010556505.1A 2020-06-17 2020-06-17 Method and system for realizing load balance based on shared port network Pending CN112398898A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010556505.1A CN112398898A (en) 2020-06-17 2020-06-17 Method and system for realizing load balance based on shared port network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010556505.1A CN112398898A (en) 2020-06-17 2020-06-17 Method and system for realizing load balance based on shared port network

Publications (1)

Publication Number Publication Date
CN112398898A true CN112398898A (en) 2021-02-23

Family

ID=74602966

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010556505.1A Pending CN112398898A (en) 2020-06-17 2020-06-17 Method and system for realizing load balance based on shared port network

Country Status (1)

Country Link
CN (1) CN112398898A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101448321A (en) * 2008-10-28 2009-06-03 北京邮电大学 Method for sharing frequency spectrum resource of isomerism wireless network and device thereof
CN104507127A (en) * 2014-12-22 2015-04-08 陈振刚 System and method for solving problem of family broadband network bandwidth idleness
CN106792835A (en) * 2017-02-13 2017-05-31 上海斐讯数据通信技术有限公司 The control method and system of a kind of shared bandwidth of wireless device
WO2019204312A1 (en) * 2018-04-18 2019-10-24 Hughes Network Systems, Llc Maintaining and distributing state due to temporary failures in a shared bandwidth network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101448321A (en) * 2008-10-28 2009-06-03 北京邮电大学 Method for sharing frequency spectrum resource of isomerism wireless network and device thereof
CN104507127A (en) * 2014-12-22 2015-04-08 陈振刚 System and method for solving problem of family broadband network bandwidth idleness
CN106792835A (en) * 2017-02-13 2017-05-31 上海斐讯数据通信技术有限公司 The control method and system of a kind of shared bandwidth of wireless device
WO2019204312A1 (en) * 2018-04-18 2019-10-24 Hughes Network Systems, Llc Maintaining and distributing state due to temporary failures in a shared bandwidth network

Similar Documents

Publication Publication Date Title
CN114073052B (en) Systems, methods, and computer readable media for slice-based routing
US7116679B1 (en) Multi-service network switch with a generic forwarding interface
US6850531B1 (en) Multi-service network switch
US6674756B1 (en) Multi-service network switch with multiple virtual routers
US7327757B2 (en) Multi-service network switch with independent protocol stack architecture
US6980515B1 (en) Multi-service network switch with quality of access
US8009684B2 (en) High capacity ring communication network
US6789118B1 (en) Multi-service network switch with policy based routing
CN107005462B (en) Method, equipment and system for forwarding data in software defined network
US6717913B1 (en) Multi-service network switch with modem pool management
US8144629B2 (en) Admission control for services
US5581552A (en) Multimedia server
US7944913B2 (en) Node, communication method, and program for node
US6189042B1 (en) LAN internet connection having effective mechanism to classify LAN traffic and resolve address resolution protocol requests
JP2002507366A (en) System and method for quality of service in a multilayer network element
US9876738B2 (en) System and method for extending ports
US7385966B2 (en) Method for the automatic configuration of a IP telephony device and/or data, system and device implementing same
EP1225731A2 (en) Multi-service network switch with independent protocol stacks
CN112398898A (en) Method and system for realizing load balance based on shared port network
CN114175583B (en) System resource management in self-healing networks
CN110300073A (en) Cascade target selecting method, polyplant and the storage medium of port
CN114095442B (en) Load balancing method, load balancing device, electronic equipment and computer readable storage medium
EP1225727A2 (en) Multi-service network switch
EP1998509A1 (en) Transparent backup IP router in a local area network
CN116938693A (en) User migration method, device, system and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210223