KR101014977B1 - Load balancing method in the function of link aggregration - Google Patents

Load balancing method in the function of link aggregration Download PDF

Info

Publication number
KR101014977B1
KR101014977B1 KR1020050094225A KR20050094225A KR101014977B1 KR 101014977 B1 KR101014977 B1 KR 101014977B1 KR 1020050094225 A KR1020050094225 A KR 1020050094225A KR 20050094225 A KR20050094225 A KR 20050094225A KR 101014977 B1 KR101014977 B1 KR 101014977B1
Authority
KR
South Korea
Prior art keywords
load balancing
hash map
module
traffic
link
Prior art date
Application number
KR1020050094225A
Other languages
Korean (ko)
Other versions
KR20070039190A (en
Inventor
구준모
Original Assignee
엘지에릭슨 주식회사
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 엘지에릭슨 주식회사 filed Critical 엘지에릭슨 주식회사
Priority to KR1020050094225A priority Critical patent/KR101014977B1/en
Publication of KR20070039190A publication Critical patent/KR20070039190A/en
Application granted granted Critical
Publication of KR101014977B1 publication Critical patent/KR101014977B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/245Link aggregation, e.g. trunking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/7453Address table lookup; Address filtering using hashing

Landscapes

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

Abstract

본 발명은 링크통합 기능에서 로드밸런싱 방법에 관한 것으로, 링크통합 기능을 사용하는 스위칭 시스템에서, 메인모듈을 통해 주기적으로 링크통합 아이디내 2개 이상의 멤버포트가 있는지를 검사하여 있다면 로드밸런싱모듈을 호출하는 단계와; 호출된 로드밸런싱모듈을 통해 상기 멤버포트들중 트래픽양이 일정 기준값에 해당하는 포트들을 선택하여 로드밸런싱 수행에 필요한 해시맵수정 여부를 결정하고 수정이 필요하면 해시맵수정모듈을 호출하는 단계와; 호출된 해시맵수정모듈을 통해 선택된 상기 멤버포트에 대한 해시맵을 수정하는 단계를 포함하여 구성된다.The present invention relates to a load balancing method in a link integration function. In a switching system using a link integration function, a load balancing module is called if there are two or more member ports in a link integration ID periodically through a main module. Making a step; Determining whether to modify a hash map required to perform load balancing by selecting ports whose traffic amount corresponds to a predetermined reference value through the called load balancing module, and calling a hash map modification module if modification is necessary; And modifying the hash map for the member port selected through the called hash map modification module.

본 발명에 따르면, 링크통합 기능에서 특정 멤버포트로 트래픽이 몰리는 것을 방지하고 패킷들의 유실을 막을 수 있게 된다.According to the present invention, the link aggregation function can prevent traffic from flowing to a specific member port and prevent the loss of packets.

로드밸런싱, 메인모듈, 로드밸런싱모듈, 해시맵수정모듈, 링크통합 Load balancing, main module, load balancing module, hash map modification module, link integration

Description

링크통합 기능에서 로드밸런싱 방법{LOAD BALANCING METHOD IN THE FUNCTION OF LINK AGGREGRATION}Load balancing method in link aggregation function {LOAD BALANCING METHOD IN THE FUNCTION OF LINK AGGREGRATION}

도 1은 종래 기술에 따른 링크통합 기능 설정과정을 보인 예시적인 흐름도,1 is an exemplary flowchart illustrating a link integration function setting process according to the prior art;

도 2는 종래 기술에 따른 링크통합 기능 설정중 패킷의 출력포트를 결정하는 예를 보인 예시적인 흐름도,2 is an exemplary flowchart illustrating an example of determining an output port of a packet during link aggregation function setting according to the prior art;

도 3은 종래 기술에 따른 링크통합 기능 설정시 트래픽이 치중되는 예를 보인 예시적인 블럭 구성도,3 is an exemplary block diagram showing an example in which traffic is heavy when setting a link aggregation function according to the prior art;

도 4는 본 발명을 설명하기 위한 메인모듈의 처리순서도,4 is a flowchart of a main module for explaining the present invention;

도 5는 본 발명을 설명하기 위한 로드밸런싱모듈의 처리순서도,5 is a flowchart of a load balancing module for explaining the present invention;

도 6은 본 발명을 설명하기 위한 해시맵수정모듈의 처리순서도.6 is a flowchart of a hash map modification module for explaining the present invention;

본 발명은 링크통합 기능을 사용하는 스위칭 시스템에서 적절한 로드밸런싱이 되도록 함으로써 특정 멤버포트로 트래픽이 몰리는 것을 방지하고 패킷들의 유실을 막을 수 있도록 한 링크통합 기능에서 로드밸런싱 방법에 관한 것이다.The present invention relates to a load balancing method in a link aggregation function that prevents traffic from being gathered to a specific member port and prevents packet loss by enabling proper load balancing in a switching system using a link integration function.

일반적으로, 로드밸런싱(load balancing)이란 여러대의 처리기가 병렬로 작 업을 처리하는 다중처리기 시스템에서 각 처리기에 걸리는 부하의 정도를 균형잡아 주는 것으로, 한 처리기에 너무 많은 부하가 걸리거나 너무 적게 걸려 낭비되지 않도록 작업을 적절히 분배하고, 필요한 경우에는 작업을 한 처리기에서 다른 처리기로 이동시키는 것을 말한다.In general, load balancing is the balancing of the load on each processor in a multiprocessor system in which multiple processors process work in parallel. It means distributing work properly so that it is not wasted and, if necessary, moving work from one processor to another.

즉, 여러종류의 트래픽들이 여러 포트들에 대해 적절하게 분배되는 것을 말한다.In other words, different types of traffic are properly distributed to different ports.

아울러, 링크통합(link aggregation) 기능은 여러개의 물리적 링크들을 하나의 논리적 링크로 구성하는 방법을 말하는 것으로, 예컨대 100Mbps 이더넷 링크 2개를 묶어서 하나의 이더넷 링크처럼 사용할 수 있는데 이렇게 되면 200Mbps 이더넷 링크를 사용하는 것처럼 생각할 수 있다.In addition, link aggregation refers to a method of organizing multiple physical links into a single logical link. For example, two 100 Mbps Ethernet links can be bundled together and used as one Ethernet link. You can think as you do.

즉, 하나의 물리적 링크로 사용자가 요구하는 대역폭을 맞출 수 없을 때 링크통합 기능이 사용된다.In other words, link aggregation is used when one physical link cannot meet the bandwidth required by the user.

하지만, 링크통합 기능을 사용해서 200Mbps를 맞췄을 때는 정확하게 200Mbps의 속도가 나오지 않는데 이는 2개의 물리적 링크들에 데이터 트래픽이 정확하게 1/2로 나눠지지 않기 때문이다.However, when 200Mbps is set using the link aggregation function, the speed of 200Mbps is not exactly obtained because data traffic is not divided by exactly 1/2 on two physical links.

이런 이유는 링크통합 기능이 해시(hash)라는 기능을 이용해서 확률적으로 1/2로 맞추기 때문이며, 여기서 해시라는 것은 특정 연산을 한 값(이를테면, 전체 합과 같은)을 이용해서 목적지를 결정하는 방법이다.This is because link aggregation uses a hash function to set the probability to 1/2, where hash is a value that determines the destination using a specific operation (such as the total sum). Way.

종래에는 링크통합 기능 설정시 아이디(Id)와 해시맵(hash map)을 만드는 부분, 출력될 패킷의 패킷정보를 이용해서 해시키(hash key)로 만드는 부분, 그리고 해시키를 가지고 해시맵(hash map)에 맵핑하는 부분으로 구성되어 있었다.Conventionally, when the link integration function is set, a part for creating an ID and a hash map, a part for making a hash key using packet information of a packet to be output, and a hash map with a hash map).

즉, 도 1에서와 같이, 링크통합 기능이 활성화되면 링크통합으로 설정된 모든 물리적 링크들이 하나의 통합된 아이디를 갖는다(S10,S11).That is, as shown in FIG. 1, when the link aggregation function is activated, all physical links set to link aggregation have one unified ID (S10 and S11).

이어, 모든 물리적 링크들에게 확률적으로 동일하게 해시키가 부합되도록 해시맵을 설정한다(S12).Subsequently, a hash map is set such that all physical links are equally probabilistic (S12).

예컨대, 16비트 해시맵을 가진다고 가정하고, 4개의 물리적 링크가 링크통합이 된다고 하면 16진수로 F000(포트1), 0F00(포트2), 00F0(포트3), 000F(포트4)와 같이 해시맵이 지정될 수 있다.For example, suppose you have a 16-bit hash map, and if four physical links are link aggregated, you can use hashes such as F000 (port 1), 0F00 (port 2), 00F0 (port 3), and 000F (port 4) in hexadecimal. A map can be specified.

한편, 이러한 해시키를 가지고 해시맵을 맵핑할 때에는 도 2에서와 같이, 출력될 데이터가 있는지 검사해서 출력될 데이터가 있으면, 출력될 패킷 데이터의 정보들을 가지고 해시키를 생성해서 링크통합되어 있는 해시맵들을 검사한 후 이 키를 이용해 통합된 링크중 어느 한 포트로 데이터를 전송하게 된다(S20~S23).On the other hand, when mapping a hash map with such a hash, as shown in FIG. 2, if there is data to be outputted, and if there is data to be outputted, a hash with link integration is generated by generating a hash with information of packet data to be outputted. After checking the maps, this key is used to transmit data to either port of the integrated link (S20 to S23).

여기서, 해시키를 만들 때 이용하는 정보로는 맥 주소(Mac Address)나 아이피 주소(IP Address), 또는 레이어4 주소(Layer 4 Address)를 이용하기도 하며, 모두 출력될 패킷의 정보를 이용하는 방식이다.Here, the information used to make the hash may be a Mac address, an IP address, or a Layer 4 address, and all of them use the information of the packet to be output.

해시키는 어떤 포트로 패킷이 나갈 것인지 결정하는 중요한 요소이다. 하지만, 패킷의 종류에 따라 해시키가 해시맵의 특정 포트로 치중될 수 있다. 이런 이유로 링크통합기능을 일반적으로 로드밸런싱이라는 표현 대신에 로드 셰어링(load sharing)이라 표현하기도 한다.This is an important factor in deciding which port to send to. However, depending on the type of packet, hashing can be weighted to a specific port of the hash map. For this reason, link aggregation is often referred to as load sharing instead of load balancing.

예를 들어, 도 3에서와 같이, 3가지 종류의 패킷(Packet A,B,C)들이 출력되 어야 한다고 했을 때 계산된 해시키가 Packet A는 8000(16진수), Packet B는 800(16진수), Packet C는 2라 한다면, 3가지 패킷들은 모두 1번 포트로 출력된다.For example, as shown in FIG. 3, when three types of packets (Packets A, B, and C) should be output, the calculated packet is 8000 (hexadecimal) and Packet B is 800 (16). If packet C is 2, all three packets are output to port 1.

이때, 1번 포트와 2번 포트는 링크통합 기능으로 묶여 있고, 포트 1은 해시맵이 AAAA(16진수), 포트 2는 5555(16진수)라고 한다면 이러한 링크통합 기능만으로는 로드밸런싱을 보장할 수 없게 된다.At this time, if port 1 and port 2 are bundled with link aggregation function, and port 1 is a hash map of AAAA (hexadecimal) and port 2 is 5555 (hexadecimal), such link integration alone can guarantee load balancing. There will be no.

즉, 링크통합 기능을 사용할 때 특정 멤버포트로 트래픽이 몰리는 경우가 발생되게 된다.That is, when the link aggregation function is used, traffic may be crowded to a specific member port.

본 발명은 상술한 바와 같은 종래 기술이 갖는 제반 문제점을 감안하여 이를 해결하고자 창출한 것으로, 주기적으로 트래픽을 점검하여 링크통합되어 있는 멤버포트들이 로드밸런싱되어 있는지 검사하거나 트래픽이 가장 많은 멤버포트에서 트래픽이 가장 적은 멤버포트로 해시맵을 이동시키거나 혹은 해시맵 이동시 여러번 트래픽을 점검해서 순간적인 이상 트래픽에 대비할 수 있도록 하여 링크통합 기능 사용시 로드밸런싱을 효율적으로 향상시킬 수 있도록 한 링크통합 기능에서 로드밸런싱 방법을 제공함에 그 주된 목적이 있다.The present invention was created in view of the above-described problems of the prior art, and solves this problem. Periodically, the traffic is periodically checked to check whether the member ports integrated with the link are load-balanced or at the highest traffic. Load balancing in link integration function that can improve load balancing when using link aggregation function by moving hash map to least member port or checking traffic several times when moving hash map and preparing for abnormal traffic. Its main purpose is to provide a method.

본 발명은 상기한 기술적 과제를 달성하기 위하여, 링크통합 기능을 사용하는 스위칭 시스템에서, 메인모듈을 통해 주기적으로 링크통합 아이디내 2개 이상의 멤버포트가 있는지를 검사하여 있다면 로드밸런싱모듈을 호출하는 단계와; 호출된 로드밸런싱모듈을 통해 상기 멤버포트들중 트래픽양이 일정 기준값에 해당하는 포 트들을 선택하여 로드밸런싱 수행에 필요한 해시맵수정 여부를 결정하고 수정이 필요하면 해시맵수정모듈을 호출하는 단계와; 호출된 해시맵수정모듈을 통해 선택된 상기 멤버포트에 대한 해시맵을 수정하는 단계를 포함하여 구성된 링크통합 기능에서 로드밸런싱 방법을 제공함에 그 특징이 있다.In order to achieve the above technical problem, in the switching system using the link integration function, calling the load balancing module if it is periodically checked whether there are two or more member ports in the link integration ID through the main module. Wow; Determining whether or not to modify the hash map necessary to perform load balancing by selecting the ports of the member port traffic amount of the predetermined value through the called load balancing module, and calling a hash map modification module if necessary ; The method provides a load balancing method in a link integration function including the step of modifying a hash map for the member port selected through the called hash map modification module.

또한, 본 발명은 상기 해시맵 수정 단계에서 트래픽이 가장 많은 맴버포트로부터 트래픽이 가장 적은 맴버포트로 해시맵을 이동시키는 형태로 해시맵을 수정토록 한 것에도 특징이 있다.In addition, the present invention is characterized in that to modify the hash map to move the hash map from the member port with the most traffic to the member port with the least traffic in the hash map modification step.

뿐만 아니라, 본 발명은 상기 해시맵 이동시 트래픽을 여러번 점검하여 순간적인 이상트래픽이 생기지 않도록 하는 것에도 그 특징이 있다.In addition, the present invention is characterized in that the traffic is checked several times during the movement of the hash map so that no transient abnormality is generated.

이하에서는, 첨부도면을 참고하여 본 발명에 따른 바람직한 실시예에 대해 상세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment according to the present invention.

도 4는 본 발명을 설명하기 위한 메인모듈에서의 처리흐름을 보인 플로우챠트이고, 도 5는 본 발명을 설명하기 위한 로드밸런싱모듈에서의 처리흐름을 보인 플로우챠트이며, 도 6은 본 발명을 설명하기 위한 해시맵수정모듈에서의 처리흐름을 보인 플로우챠트이다.4 is a flow chart showing a processing flow in the main module for explaining the present invention, Figure 5 is a flow chart showing a processing flow in the load balancing module for explaining the present invention, Figure 6 illustrates the present invention This is a flowchart showing the processing flow in the hash map modification module.

본 발명은 메인모듈, 로드밸런싱모듈 그리고 해시맵수정모듈로 구성된다.The present invention consists of a main module, a load balancing module and a hash map modification module.

이때, 상기 메인모듈은 주기적으로 링크통합 아이디(ID:Identification)를 찾아서 멤버포트(member port)가 2이상인 ID에 대해 로드밸런싱모듈을 호출하는 기능을 수행하는 모듈로서 주된 기능을 담당하게 된다.At this time, the main module periodically performs a function of calling a load balancing module for an ID having a member port of 2 or more by finding a link integration ID.

그리고, 로드밸런싱모듈은 트래픽이 제일 많은 멤버포트(maxport)와 트래픽 이 제일 적은 멤버포트(minport)를 찾아서 해시맵 수정이 필요한지 여부를 판단하여 필요하면 해시맵수정모듈을 호출하는 기능을 수행하는 모듈이다.Then, the load balancing module finds the member port (maxport) with the most traffic and the member port (minport) with the least traffic, determines whether the hash map modification is necessary, and performs a function of calling a hash map modification module if necessary. to be.

해시맵수정모듈은 실제로 해시맵을 수정하는 모듈로 맥스포트(maxport)의 해시맵 1비트(bit)를 민포트(minport)로 옮겨서 로드밸런싱이 되는지 여부를 검사하는 모듈이다.The hash map modification module is a module that actually modifies the hash map, and checks whether load balancing is performed by moving one bit of maxport's hashmap to minport.

이들 로드밸런싱모듈과 해시맵수정모듈은 메인모듈의 수행처리시 호출(call) 처리되어 필요한 부분만의 기능을 분산 처리하게 된다.These load balancing modules and hash map modification modules are called during processing of the main module to distribute the functions of only necessary parts.

그럼, 본 발명에 따른 로드밸런싱 방법에 대하여 설명하기로 한다.Then, a load balancing method according to the present invention will be described.

먼저, 도 4에서와 같이 초기 검사시간, 즉 time_interval을 설정하는 단계를 거치게 된다(S100).First, as shown in FIG. 4, an initial inspection time, that is, time_interval is set (S100).

time_interval은 로드밸런싱이 수행되는 간격으로 사용자가 설정하는 값이며, 이 값이 작으면 트래픽의 변화에 대해 빨리 대처할 수 있다는 장점이 있으나 반면에 이 값이 크면 기존에 설정된 해시맵의 변동 정도가 작아져서 순간적인 트래픽 변동에 대해 무시하는 효과가 있다.time_interval is a value set by the user at intervals during which load balancing is performed, and the smaller the value is, the faster the traffic change can be made. On the other hand, the larger the value, the smaller the change in the previously set hashmap. There is a negligible effect on instantaneous traffic fluctuations.

이때, time_interval을 통해 트래픽을 주기적으로 점검하는 것이 특히 바람직하다.At this time, it is particularly preferable to periodically check traffic through time_interval.

이어, 모든 링크통합 아이디에 대해 멤버포트를 검사해서 2 이상의 멤버포트가 있는 아이디에 대해 로드밸런싱모듈을 호출하게 된다(S110,S120,S130).Subsequently, the member port is checked for all the link integration IDs and the load balancing module is called for the IDs having two or more member ports (S110, S120, and S130).

상기 S130 단계를 통해 메인모듈에서 특정 링크통합 아이디가 호출되면, 도 5에 도시된 바와 같이, 이 아이디에 속한 멤버포트에 대해 각각의 트래픽 양을 검 사하게 된다(S200).When a specific link integration ID is called from the main module through the step S130, as shown in FIG. 5, each traffic amount is checked for the member port belonging to this ID (S200).

검사결과, 이 중에 트래픽 양이 가장 많은 맴버포트(maxport)와 트래픽 양이 가장 적은 멤버포트(minport)를 선택하게 된다(S210).As a result of the inspection, the member port (maxport) with the most traffic amount and the member port (minport) with the least traffic amount are selected among them (S210).

이어, 맥스포트의 트래픽 양이 thresh1보다 큰지 검사하게 되는데, 검사결과 맥스포트의 트래픽 양이 thresh1 보다 크다면 이어 민포트의 트래픽 양이 thresh2 보다 작은지를 검사하게 된다(S220,S240).Subsequently, it is checked whether the amount of traffic of Maxport is greater than thresh1. If the amount of traffic of Maxport is greater than thresh1, then the amount of traffic of Minport is then less than thresh2 (S220, S240).

이때, thresh1은 사용자가 해시맵을 바꾸고 싶은 특정 트래픽 양일 수도 있고, 패킷이 버려지는 순간(출력되어야 되는 패킷량이 해당 포트의 최대량보다 클 경우)을 선택할 수도 있다.At this time, thresh1 may be a specific traffic amount that the user wants to change the hash map, or may select the moment when the packet is dropped (when the amount of packets to be output is greater than the maximum amount of the corresponding port).

아울러, 상기 S220 단계에서 맥스포트(maxport)의 트래픽 양이 thresh1 보다 작은 경우에는 해시맵 변경이 필요없으므로 변수를 초기화시킨 다음 메인모듈로 돌아가도록 한다(S230).In addition, if the traffic amount of the maxport (maxport) is less than thresh1 in step S220, since the hash map does not need to be changed, the variable is initialized and then returned to the main module (S230).

또한, 상기 thresh2 값은 트래픽을 분산하고자 하는 민포트(minport)의 트래픽이 너무 큰 경우 로드밸런싱을 하지 않게 하기 위함이며, 민포트의 트래픽이 크다는 말은 링크통합되어 있는 포트들에 트래픽이 이미 거의 다 차 있다는 것을 의미한다.In addition, the thresh2 value is to prevent load balancing when the traffic of the minport to distribute the traffic is too large. The meaning of the traffic of the minport is that the traffic already exists in the ports in the link aggregation. It means it's full.

그리고, 상기 S240 단계에서 민포트(minport)의 트래픽 양이 thresh2 보다 크다면 이 또한 해시맵의 변경이 필요없으므로 변수를 초기화시킨 다음 메인모듈로 돌아가도록 한다(S250).Then, if the traffic amount of the minport (minport) is greater than thresh2 in step S240, since the hash map does not need to be changed, the variable is initialized and then returned to the main module (S250).

한편, 상기 S220 및 S240 단계를 모두 만족하는 경우에는 이 두가지 조건에 대한 검사를 thresh3 만큼 수행하게 된다(S260).On the other hand, if both of the steps S220 and S240 is satisfied, the two conditions are checked by thresh3 (S260).

여기에서, thresh3을 두는 이유는 순간적인 트래픽 변화에 의해 해시맵이 변경되는 것을 막기 위해서이다.In this case, the reason for placing thresh3 is to prevent the hash map from being changed by a momentary traffic change.

물론, 순간적인 트래픽 변화에도 바로 적응하기 위해서는 이 값을 1로 설정하면 된다.Of course, this value can be set to 1 to immediately adapt to instantaneous traffic changes.

상기 3가지 조건이 만족되면 도 6과 같은 처리 흐름을 갖는 해시맵수정모듈을 호출하게 된다.If the three conditions are satisfied, the hash map modification module having the processing flow as shown in FIG. 6 is called.

이때, 상기 thresh1은 해시맵의 비트 삭제가 필요한 최소한의 트래픽 양을 말하고, thresh2는 해시맵의 비트 추가가 가능한 최대한의 트래픽 양을 말하며, thresh3은 순간 트래픽에 대해 무시하기 위한 재점검 횟수를 말한다.At this time, the thresh1 refers to the minimum amount of traffic required to remove the bit of the hash map, thresh2 refers to the maximum amount of traffic that can be added bit of the hash map, thresh3 refers to the number of re-check to ignore the instantaneous traffic.

상술한 과정을 통해 해시맵수정모듈이 호출되면 먼저, 맥스포트 해시맵 각 비트에서 해당 비트가 1인지를 검사하게 된다(S300,S310).When the hash map modification module is called through the above-described process, first, it is checked whether the corresponding bit is 1 in each bit of the Maxport hash map (S300 and S310).

여기에서, 해시맵수정모듈은 실제로 해시맵을 수정하는 모듈이다.Here, the hash map modification module is actually a module that modifies the hash map.

검사결과, 해당 비트가 1이면 맥스포트에서 1비트를 빼서 민포트의 해시맵에 추가한 후 해시맵을 수정하게 된다(S320,S330).As a result of the check, if the corresponding bit is 1, the bitmap is subtracted from the maxport and added to the hashmap of the minport, and then the hashmap is modified (S320 and S330).

즉, 맥스포트의 1비트에 해당되는 트래픽이 민포트로 옮겨가게 되므로 해시맵의 수정이 요구된다.That is, since traffic corresponding to 1 bit of Maxport is moved to Minport, the hash map needs to be modified.

해시맵이 수정되면 맥스포트와 민포트의 트래픽 양을 점검해서 모두 thresh1보다 작은지 검사하게 된다(S340,S350).When the hash map is modified, the traffic volume of Maxport and Minport is checked to check whether both are smaller than thresh1 (S340 and S350).

검사결과, 모두 작을 경우에는 로드밸런싱이 제대로 된 것이므로 메인모듈로 복귀되며, 그렇지 않은 경우에는 수정된 해시맵을 원래대로 복구한 후 맥스포트의 또다른 해시맵 비트들에 대해 점검하는 절차를 반복하기 위해 S310 단계로 회귀하게 된다(S360,S370).If the result of the check is small, the load balancing is correct, and the main module is returned. If not, the process of restoring the modified hashmap and restoring the other hashmap bits of Maxport is repeated. The process returns to step S310 (S360, S370).

한편, 상기 S310 단계에서 해당 비트가 1이 아니라면 곧바로 메인모듈로 복귀되어 원래 로드밸런싱을 수행하게 된다.On the other hand, if the bit is not 1 in step S310 immediately returns to the main module to perform the original load balancing.

이로써, 링크통합 기능을 사용할 때에 특정 멤버포트로 트래픽이 몰리는 것을 막을 수 있게 된다.As a result, when the link aggregation function is used, traffic can be prevented from flowing to a specific member port.

이상에서 상세히 설명한 바와 같이, 본 발명에 따르면 링크통합 기능을 사용할 때 특정 멤버포트로 트래픽이 몰리는 것을 막아주고, 이로 인해 라인상으로 트래픽을 더 수용할 수 있음에도 불구하고 특정 멤버포트로 트래픽이 몰리는 것으로 인해 패킷들이 유실되는 상황을 막을 수 있게 된다.As described in detail above, according to the present invention, when the link aggregation function is used, traffic is prevented from being directed to a specific member port, which causes traffic to be directed to a specific member port despite being able to accommodate more traffic on the line. This can prevent packets from being lost.

Claims (3)

링크통합 기능을 사용하는 스위칭 시스템에서,In switching systems that use link aggregation, 메인모듈을 통해 주기적으로 링크통합 아이디내 2개 이상의 멤버포트가 있는지를 검사하여 있다면 로드밸런싱모듈을 호출하는 단계와;Invoking the load balancing module if there are two or more member ports in the link integration ID periodically through the main module; 호출된 로드밸런싱모듈을 통해 상기 멤버포트들중 트래픽양이 일정 기준값에 해당하는 포트들을 선택하여 로드밸런싱 수행에 필요한 해시맵수정 여부를 결정하고 수정이 필요하면 해시맵수정모듈을 호출하는 단계와;Determining whether to modify a hash map required to perform load balancing by selecting ports whose traffic amount corresponds to a predetermined reference value through the called load balancing module, and calling a hash map modification module if modification is necessary; 호출된 해시맵수정모듈을 통해 선택된 상기 멤버포트에 대한 해시맵을 수정하는 단계를 포함하여 구성된 것을 특징으로 하는 링크통합 기능에서 로드밸런싱 방법.And modifying a hash map for the member port selected through the called hash map modification module. 청구항 1에 있어서; 상기 해시맵 수정 단계는,The method according to claim 1; The hash map modification step, 트래픽이 가장 많은 맴버포트에서 트래픽이 가장 적은 맴버포트로 해시맵을 이동시키는 것을 특징으로 하는 링크통합 기능에서 로드밸런싱 방법.A load balancing method in a link aggregation function, which moves a hash map from a member port having the most traffic to a member port having the least traffic. 청구항 2에 있어서, 상기 해시맵 이동은,The method of claim 2, wherein the hash map movement, 트래픽을 여러번 점검하여 순간적인 이상트래픽이 생기지 않도록 하는 것을 특징으로 하는 링크통합 기능에서 로드밸런싱 방법.A load balancing method in a link aggregation function, characterized in that the traffic is checked several times to prevent instantaneous abnormal traffic.
KR1020050094225A 2005-10-07 2005-10-07 Load balancing method in the function of link aggregration KR101014977B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050094225A KR101014977B1 (en) 2005-10-07 2005-10-07 Load balancing method in the function of link aggregration

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050094225A KR101014977B1 (en) 2005-10-07 2005-10-07 Load balancing method in the function of link aggregration

Publications (2)

Publication Number Publication Date
KR20070039190A KR20070039190A (en) 2007-04-11
KR101014977B1 true KR101014977B1 (en) 2011-02-16

Family

ID=38160103

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050094225A KR101014977B1 (en) 2005-10-07 2005-10-07 Load balancing method in the function of link aggregration

Country Status (1)

Country Link
KR (1) KR101014977B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102316021A (en) * 2011-07-04 2012-01-11 杭州华三通信技术有限公司 Method for realizing load sharing of switch aggregation port and switch

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7792018B2 (en) * 2007-05-18 2010-09-07 Nvidia Corporation Intelligent load balancing and failover of network traffic
CN113132249A (en) * 2019-12-31 2021-07-16 华为技术有限公司 Load balancing method and equipment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6363077B1 (en) * 1998-02-13 2002-03-26 Broadcom Corporation Load balancing in link aggregation and trunking

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6363077B1 (en) * 1998-02-13 2002-03-26 Broadcom Corporation Load balancing in link aggregation and trunking
US6614758B2 (en) * 1998-02-13 2003-09-02 Broadcom Corp Load balancing in link aggregation and trunking

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102316021A (en) * 2011-07-04 2012-01-11 杭州华三通信技术有限公司 Method for realizing load sharing of switch aggregation port and switch
CN102316021B (en) * 2011-07-04 2014-12-10 杭州华三通信技术有限公司 Method for realizing load sharing of switch aggregation port and switch

Also Published As

Publication number Publication date
KR20070039190A (en) 2007-04-11

Similar Documents

Publication Publication Date Title
JP7417825B2 (en) slice-based routing
EP3588865B1 (en) Event ingestion management
Wang et al. Availability-and traffic-aware placement of parallelized SFC in data center networks
US20130003549A1 (en) Resilient Hashing for Load Balancing of Traffic Flows
CN102047619B (en) Methods, systems, and computer readable media for dynamically rate limiting slowpath processing of exception packets
CN103716208A (en) Network management method and system supporting elephant flow, interchanger and network
CN103222242A (en) Dynamic flow redistribution for head line blocking avoidance
US10181999B2 (en) Optimizing information related to a route and/or a next hop for multicast traffic
CN101616083A (en) A kind of message forwarding method and device
Zheng et al. Sentinel: Failure recovery in centralized traffic engineering
US9954771B1 (en) Packet distribution with prefetch in a parallel processing network device
CN105991347A (en) Redirection method of DNS request message and device
US20170163775A1 (en) Transferring multiple data sets using a multipath connection
Cheng et al. Application-aware SDN routing for big data networking
CN111010343B (en) Method, device, network equipment and storage medium for forwarding multicast message
US20220158921A1 (en) Tunnel processing distribution based on traffic type and learned traffic processing metrics
KR101014977B1 (en) Load balancing method in the function of link aggregration
US10097457B1 (en) Resolving a mismatch among control plane parameter values received from multiple routing control devices
CN113395183B (en) Virtual node scheduling method and system for network simulation platform VLAN interconnection
CN115134304A (en) Self-adaptive load balancing method for avoiding data packet disorder in cloud computing data center
CN1738286A (en) Method for realizing heavy route in IP network
JP2011091711A (en) Node, method for distributing transmission frame, and program
US10243838B1 (en) Interleaving members for proportionate network traffic distribution
Wang et al. Joint availability-and traffic-aware placement of parallelized service chain in NFV-enabled data center
US10476956B1 (en) Adaptive bulk write process

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140115

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150116

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160112

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170206

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee