KR102153814B1 - Stochastic Routing Algorithm for Load-balancing Interconnection Network System - Google Patents

Stochastic Routing Algorithm for Load-balancing Interconnection Network System Download PDF

Info

Publication number
KR102153814B1
KR102153814B1 KR1020190016122A KR20190016122A KR102153814B1 KR 102153814 B1 KR102153814 B1 KR 102153814B1 KR 1020190016122 A KR1020190016122 A KR 1020190016122A KR 20190016122 A KR20190016122 A KR 20190016122A KR 102153814 B1 KR102153814 B1 KR 102153814B1
Authority
KR
South Korea
Prior art keywords
path
load
minimum
probability
node
Prior art date
Application number
KR1020190016122A
Other languages
Korean (ko)
Other versions
KR20190120057A (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 한국과학기술원
Publication of KR20190120057A publication Critical patent/KR20190120057A/en
Application granted granted Critical
Publication of KR102153814B1 publication Critical patent/KR102153814B1/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/14Routing performance; Theoretical aspects
    • 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

Landscapes

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

Abstract

로드 균형을 위한 확률 기반 적응형 라우팅 방법 및 시스템이 제시된다. 본 발명에서 제안하는 로드 균형을 위한 확률 기반 적응형 라우팅 방법은 패킷을 수신하여 목적지를 확인하고, 소스로부터 목적지까지의 전송 경로에 대한 최소 경로 및 최소 근접 경로를 계산하는 단계, 계산된 경로 별 큐 길이를 계산하고, 경로 별 로드에 따른 선택 확률을 계산하는 단계 및 계산된 선택 확률에 따른 경로를 선택하여 패킷을 전송하는 단계를 포함한다.A probability-based adaptive routing method and system for load balancing is presented. In the probability-based adaptive routing method for load balancing proposed in the present invention, a destination is identified by receiving a packet, and a minimum path and a minimum proximity path for a transmission path from the source to the destination are calculated, and the calculated queue for each path And calculating a length, calculating a selection probability according to a load for each path, and transmitting a packet by selecting a path according to the calculated selection probability.

Figure R1020190016122
Figure R1020190016122

Description

로드 균형을 위한 확률 기반 적응형 라우팅 알고리즘{Stochastic Routing Algorithm for Load-balancing Interconnection Network System}Probability-based adaptive routing algorithm for load balancing {Stochastic Routing Algorithm for Load-balancing Interconnection Network System}

본 발명은 로드 균형을 위한 확률 기반 적응형 라우팅 방법 및 시스템에 관한 것이다.The present invention relates to a probability-based adaptive routing method and system for load balancing.

집합 통신 폭주 정보를 이용하는 적응적 경로 지정을 위한 기술(US 제2018-0006950호)은 스위치내부에서 로컬 사용(Local occupancy)과 원격 사용(remote occupancy) 값을 토대로 혼잡(congestion) 값을 얻을 수 있는 기술로서, 위에서 얻은 혼잡 값을 기반으로 최소 혼잡을 갖는 출력 포트로 패킷을 전송한다.The technology for adaptive route designation using aggregate communication congestion information (US 2018-0006950) is a congestion value that can be obtained based on local occupancy and remote occupancy values inside the switch. As a technique, a packet is transmitted to an output port with the minimum congestion based on the congestion value obtained above.

적응형 라우팅을 이용하여 자원 활용도를 제어하기 위한 메커니즘(한국공개특허 제10-2016-0004348호)은 CAAT(Content Aware Adaptive Throttle) 기반 적응형 라우팅 알고리즘을 사용한 기술로서, 결정론적(Deterministic) 라우팅으로 결정된 경로와 적응형 라우팅 경로 중 혼잡이 발생하지 않은 경로를 선택한다.The mechanism for controlling resource utilization using adaptive routing (Korean Patent Laid-Open Patent No. 10-2016-0004348) is a technology that uses an adaptive routing algorithm based on Content Aware Adaptive Throttle (CAAT), and is a deterministic routing. Among the determined path and the adaptive routing path, a path that does not cause congestion is selected.

집합 통신 폭주 정보를 이용하는 적응적 경로 지정을 위한 기술은 최소 혼잡을 갖는 하나의 경로에 모든 패킷을 전송하므로, 이에 따른 병목 및 로드 불균형 문제가 발생한다.A technique for adaptive path designation using aggregate communication congestion information transmits all packets in one path with minimal congestion, and thus a bottleneck and load imbalance problem arise.

적응형 라우팅을 이용하여 자원 활용도를 제어하기 위한 메커니즘은 위와 같은 문제를 완화하기 위해, 적응형 라우팅 경로의 로드가 일정 정도 이상인 경우에는 적응형 라우팅을 사용하지 않고 결정론적 라우팅을 사용한다. 적응형 라우팅을 이용하여 자원 활용도를 제어하기 위한 메커니즘의 경우에도 적응형 라우팅 경로와 결정론적 경로로만 패킷이 전송되므로, 네트워크 시스템 내부에 존재하는 장비들을 충분히 활용하지 못하는 문제점이 있다.The mechanism for controlling resource utilization using adaptive routing does not use adaptive routing but uses deterministic routing when the load of the adaptive routing path is over a certain level to alleviate the above problem. Even in the case of a mechanism for controlling resource utilization using adaptive routing, since packets are transmitted only through the adaptive routing path and the deterministic path, there is a problem in that equipment existing inside the network system cannot be sufficiently utilized.

본 발명이 이루고자 하는 기술적 과제는 소스와 목적지 간에 두 개 이상의 경로를 고려하여, 현재 각 경로의 로드 상황에 기반한 확률적 경로 선택을 통해 네트워크 전체에 로드를 효율적으로 분산 시킬 수 있는 방법 및 시스템을 제공하는데 있다.The technical problem to be achieved by the present invention is to provide a method and system for efficiently distributing the load throughout the network through probabilistic route selection based on the current load situation of each route by considering two or more routes between a source and a destination. There is.

일 측면에 있어서, 본 발명에서 제안하는 로드 균형을 위한 확률 기반 적응형 라우팅 방법은 패킷을 수신하여 목적지를 확인하고, 소스로부터 목적지까지의 전송 경로에 대한 최소 경로 및 최소 근접 경로를 계산하는 단계, 계산된 경로 별 큐 길이를 계산하고, 경로 별 로드에 따른 선택 확률을 계산하는 단계 및 계산된 선택 확률에 따른 경로를 선택하여 패킷을 전송하는 단계를 포함한다. In one aspect, the probability-based adaptive routing method for load balancing proposed in the present invention comprises the steps of receiving a packet, identifying a destination, and calculating a minimum path and a minimum proximity path for a transmission path from a source to a destination, And calculating a calculated queue length for each path, calculating a selection probability according to a load for each path, and selecting a path according to the calculated selection probability and transmitting a packet.

패킷을 수신하여 목적지를 확인하고, 소스로부터 목적지까지의 전송 경로에 대한 최소 경로 및 최소 근접 경로를 계산하는 단계는 하나의 노드로부터 다른 노드까지의 최소 경로 집합과 최소 근접 경로의 집합을 정한 후, 최소 경로 집합 및 최소 근접 경로의 집합에 속한 각 경로 상에 있는 모든 노드에 대한 로드를 미리 정해진 시간마다 업데이트 하고, 각 경로에 대하여 경로 내 모든 노드의 합을 해당 경로의 로드로 정의한다. In the step of receiving a packet to confirm the destination, and calculating the minimum path and the minimum proximity path for the transmission path from the source to the destination, after determining the minimum path set and the minimum proximity path set from one node to another node, The loads for all nodes on each path in the path set and the minimum proximity path set are updated every predetermined time, and the sum of all nodes in the path for each path is defined as the load of the corresponding path.

계산된 경로 별 큐 길이를 계산하고, 경로 별 로드에 따른 선택 확률을 계산하는 단계는 각 경로의 로드가 균형을 이루도록 하기 위해 하나의 노드에서 다른 노드로 패킷을 전송할 때, 각 경로의 로드가 적을 수록 높은 확률을 갖는 선택 확률을 계산한다. Calculating the calculated queue length for each path and calculating the selection probability according to the load for each path is to ensure that the load of each path is balanced when the packet is transmitted from one node to another, so that the load of each path is small. Calculate the probability of selection with higher probability.

계산된 선택 확률에 따른 경로를 선택하여 패킷을 전송하는 단계는 병목현상을 감소시키기 위해 각 경로의 로드가 적을 수록 높은 확률로 경로를 선택하여 로드를 분산시키는 확률론적 라우팅 방법을 이용한다. In the step of selecting a path according to the calculated selection probability and transmitting a packet, a probabilistic routing method is used to distribute the load by selecting a path with a higher probability as the load of each path is less in order to reduce the bottleneck.

또 다른 일 측면에 있어서, 본 발명에서 제안하는 로드 균형을 위한 확률 기반 적응형 라우팅 시스템은 패킷을 수신하여 목적지를 확인하고, 소스로부터 목적지까지의 전송 경로에 대한 최소 경로 및 최소 근접 경로를 계산하는 경로 탐색부, 계산된 경로 별 큐 길이를 계산하고, 경로 별 로드에 따른 선택 확률을 계산하는 확률 계산부 및 계산된 선택 확률에 따른 경로를 선택하여 패킷을 전송하는 패킷 전송부를 포함한다. In another aspect, the probability-based adaptive routing system for load balancing proposed in the present invention receives a packet, identifies a destination, and calculates a minimum path and a minimum proximity path for a transmission path from a source to a destination. A path search unit, a probability calculation unit that calculates a calculated queue length for each path, a selection probability according to a load for each path, and a packet transmission unit that selects a path according to the calculated selection probability and transmits a packet.

경로 탐색부는 하나의 노드로부터 다른 노드까지의 최소 경로 집합과 최소 근접 경로의 집합을 정한 후, 최소 경로 집합 및 최소 근접 경로의 집합에 속한 각 경로 상에 있는 모든 노드에 대한 로드를 미리 정해진 시간마다 업데이트 하고, 각 경로에 대하여 경로 내 모든 노드의 합을 해당 경로의 로드로 정의한다. The path search unit determines a set of minimum paths from one node to another and a set of minimum proximity paths, and then updates the loads of all nodes on each path belonging to the set of minimum paths and minimum proximity paths at predetermined times. And, for each path, the sum of all nodes in the path is defined as the load of the path.

확률 계산부는 각 경로의 로드가 균형을 이루도록 하기 위해 하나의 노드에서 다른 노드로 패킷을 전송할 때, 각 경로의 로드가 적을 수록 높은 확률을 갖는 선택 확률을 계산한다. When transmitting a packet from one node to another node in order to balance the load of each path, the probability calculator calculates a selection probability having a higher probability as the load of each path is less.

패킷 전송부는 병목현상을 감소시키기 위해 각 경로의 로드가 적을 수록 높은 확률로 경로를 선택하여 로드를 분산시키는 확률론적 라우팅 방법을 이용한다.In order to reduce the bottleneck, the packet transmission unit uses a probabilistic routing method in which the load is distributed by selecting a path with a higher probability as the load of each path decreases.

본 발명의 실시예들에 따르면 소스와 목적지 간에 두 개 이상의 경로를 고려하여, 현재 각 경로의 로드 상황에 기반한 확률적 경로 선택을 통해 네트워크 전체에 로드를 효율적으로 분산 시킬 수 있다. 또한, 네트워크 시스템 내부 장비를 효율적으로 사용가능하며, 그에 따른 패킷 처리 속도 성능을 향상시킬 수 있다.According to embodiments of the present invention, the load can be efficiently distributed throughout the network through probabilistic path selection based on the current load situation of each path in consideration of two or more paths between a source and a destination. In addition, it is possible to efficiently use the equipment inside the network system, and accordingly, the packet processing speed performance can be improved.

도 1은 본 발명의 일 실시예에 따른 로드 균형을 위한 확률 기반 적응형 라우팅 알고리즘을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 로드 균형을 위한 확률 기반 적응형 라우팅 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 로드 균형을 위한 확률 기반 적응형 라우팅 시스템의 구성을 나타내는 도면이다.
1 is a diagram illustrating a probability-based adaptive routing algorithm for load balancing according to an embodiment of the present invention.
2 is a flowchart illustrating a probability-based adaptive routing method for load balancing according to an embodiment of the present invention.
3 is a diagram illustrating a configuration of a probability-based adaptive routing system for load balancing according to an embodiment of the present invention.

본 발명은 고성능 컴퓨팅 시스템(High Performance Computing; HPC) 및 데이터센터 내의 한 노드에서 다른 노드로 가는 라우팅 경로를 여러 경로를 후보에 올려놓고, 확률적으로 결정하는 방법을 제안한다. 데이터센터란 수백~수천대의 컴퓨터를 스위치를 통해 연결하여, 대규모의 서버를 관리하고 데이터베이스를 관리하는 중앙처리장치를 말한다. The present invention proposes a high performance computing system (HPC) and a method of probabilistically determining routing paths from one node to another in a data center by placing multiple paths as candidates. A data center refers to a central processing unit that manages large-scale servers and databases by connecting hundreds to thousands of computers through a switch.

본 발명에서 노드의 로드는 다음과 같이 정의된다. 사전적 의미는 '해당 노드에서 아직 처리하지 않은 처리해야 할 패킷의 수'이며, '해당 노드에 패킷이 도착하였을 때 노드를 빠져나갈 때까지의 예상 대기시간'으로 정의할 수도 있다. 한 노드에서 다른 노드로 가는 최소 경로 집합과 최소에 근접하는 경로의 집합을 정한 후, 두 집합 에 속한 각각의 경로 상에 있는 모든 노드에 대한 로드를 일정 시간마다 업데이트 하고, 각 경로에 대해 '경로 내 모든 노드의 합'을 경로의 로드로 정의한다. 이제, 한 노드에서 다른 노드로 패킷을 전송하는데 있어, 각 경로의 로드 수치가 적을 수록 높은 확률로 경로를 선택하여 라우팅 경로로 설정한다. 이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.In the present invention, the load of a node is defined as follows. The dictionary meaning is'the number of packets to be processed that have not yet been processed by the node', and can also be defined as'expected waiting time until leaving the node when a packet arrives at the node'. After determining the minimum set of paths from one node to the other and the set of paths that are close to the minimum, the loads for all nodes on each path belonging to the two sets are updated every certain time, and for each path, The sum of all nodes' is defined as the load of the path. Now, in transmitting packets from one node to another node, the smaller the load value of each path, the higher the probability of selecting a path and setting it as a routing path. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 로드 균형을 위한 확률 기반 적응형 라우팅 알고리즘을 설명하기 위한 도면이다. 1 is a diagram illustrating a probability-based adaptive routing algorithm for load balancing according to an embodiment of the present invention.

종래기술에서의 적응형 라우팅 알고리즘들은 최적 경로가 혼잡(congestion) 상태일 때, 다른 하나의 최소 경로를 선택한다. 이때, 로드 불균형의 문제가 발생할 수 있다.The adaptive routing algorithms in the prior art select another minimum path when the optimal path is in a congestion state. At this time, a problem of load imbalance may occur.

본 발명의 실시예에 따르면, 임의의 소스-목적지(Source-destination) 쌍에 대한 k 개의 경로 중 k 번째 경로

Figure 112019014665860-pat00001
를 선택할 확률
Figure 112019014665860-pat00002
는 각 경로의 로드를 고려하여 결정한다. 각 경로의 로드가 균형을 이루도록 하는
Figure 112019014665860-pat00003
설정을 통한 확률적 라우팅으로, 종래기술의 적응형 라우팅 알고리즘들의 로드 불균형 문제를 해결할 수 있다. According to an embodiment of the present invention, the k-th path among k paths for an arbitrary source-destination pair
Figure 112019014665860-pat00001
The probability of choosing
Figure 112019014665860-pat00002
Is determined by considering the load of each path. To balance the load on each path
Figure 112019014665860-pat00003
With probabilistic routing through configuration, it is possible to solve the load imbalance problem of adaptive routing algorithms of the prior art.

도 2는 본 발명의 일 실시예에 따른 로드 균형을 위한 확률 기반 적응형 라우팅 방법을 설명하기 위한 흐름도이다. 2 is a flowchart illustrating a probability-based adaptive routing method for load balancing according to an embodiment of the present invention.

제안하는 로드 균형을 위한 확률 기반 적응형 라우팅 방법은 패킷을 수신하여 목적지를 확인하고, 소스로부터 목적지까지의 전송 경로에 대한 최소 경로 및 최소 근접 경로를 계산하는 단계(210), 계산된 경로 별 큐 길이를 계산하고, 경로 별 로드에 따른 선택 확률을 계산하는 단계(220) 및 계산된 선택 확률에 따른 경로를 선택하여 패킷을 전송하는 단계(230)를 포함한다. Probability-based adaptive routing method for load balancing is the step of receiving a packet to confirm a destination, calculating the minimum path and the minimum proximity path for the transmission path from the source to the destination (210), the calculated queue for each path It includes a step 220 of calculating a length, calculating a selection probability according to a load for each path, and a step 230 of selecting a path according to the calculated selection probability and transmitting a packet.

단계(210)에서, 패킷을 수신(211)하여 목적지를 확인(212)하고, 소스로부터 목적지까지의 전송 경로에 대한 최소 경로 및 최소 근접 경로를 계산한다(213). 하나의 노드로부터 다른 노드까지의 최소 경로 집합과 최소 근접 경로의 집합을 정한 후, 최소 경로 집합 및 최소 근접 경로의 집합에 속한 각 경로 상에 있는 모든 노드에 대한 로드를 미리 정해진 시간마다 업데이트 하고, 각 경로에 대하여 경로 내 모든 노드의 합을 해당 경로의 로드로 정의한다. In step 210, the packet is received (211) to check the destination (212), and the minimum path and the minimum proximity path for the transmission path from the source to the destination are calculated (213). After determining the minimum path set and the minimum proximity path set from one node to another node, the load for all nodes on each path belonging to the minimum path set and the minimum proximity path set is updated every predetermined time, and each For a path, the sum of all nodes in the path is defined as the load of the path.

단계(220)에서, 계산된 경로 별 큐 길이를 계산(221)하고, 경로 별 로드에 따른 선택 확률

Figure 112019014665860-pat00004
를 계산한다(222). 각 경로의 로드가 균형을 이루도록 하기 위해 하나의 노드에서 다른 노드로 패킷을 전송할 때, 각 경로의 로드가 적을 수록 높은 확률을 갖는 선택 확률을 계산한다. In step 220, the calculated queue length for each path is calculated (221), and the selection probability according to the load for each path
Figure 112019014665860-pat00004
Calculate (222). When a packet is transmitted from one node to another in order to balance the load of each path, the smaller the load of each path, the higher the probability of selection is calculated.

본 발명의 실시예에 따른 로드 균형을 위한

Figure 112019014665860-pat00005
설정 과정에 대하여 설명한다. For load balancing according to an embodiment of the present invention
Figure 112019014665860-pat00005
The setting process will be described.

소스-목적지 간 총 k 개 경로는 최소 경로가 N 개이고, 최소 근접 경로가 M 개일 때, 다음과 같이 나타낼 수 있다: In total k paths between source and destination, when the minimum path is N and the minimum proximity path is M, it can be expressed as follows:

N개의 최소 경로

Figure 112019014665860-pat00006
N minimum paths
Figure 112019014665860-pat00006

M개의 최소 근접 경로

Figure 112019014665860-pat00007
M smallest proximity paths
Figure 112019014665860-pat00007

이때, k 번째 경로

Figure 112019014665860-pat00008
를 선택할 확률
Figure 112019014665860-pat00009
는 다음과 같이 나타낼 수 있다: At this time, the k-th path
Figure 112019014665860-pat00008
The probability of choosing
Figure 112019014665860-pat00009
Can be represented as:

Figure 112019014665860-pat00010
Figure 112019014665860-pat00010

여기서,

Figure 112019014665860-pat00011
는 경로
Figure 112019014665860-pat00012
의 큐 길이이고, T는 큐 길이 업데이트의 주기이다. here,
Figure 112019014665860-pat00011
The path
Figure 112019014665860-pat00012
Is the queue length, and T is the period of the queue length update.

이때의 k 번째 경로의 로드

Figure 112019014665860-pat00013
는 다음과 같이 나타낼 수 있다: Load of the kth path at this time
Figure 112019014665860-pat00013
Can be represented as:

Figure 112019014665860-pat00014
Figure 112019014665860-pat00014

Figure 112019014665860-pat00015
Figure 112019014665860-pat00015

Figure 112019014665860-pat00016
Figure 112019014665860-pat00016

단계(230)에서, 계산된 선택 확률

Figure 112019014665860-pat00017
에 따른 경로를 선택(231)하여 패킷을 전송한다(232). 병목현상을 감소시키기 위해 각 경로의 로드가 적을 수록 높은 확률로 경로를 선택하여 로드를 분산시키는 확률론적 라우팅 방법을 이용한다. In step 230, the calculated selection probability
Figure 112019014665860-pat00017
The packet is transmitted by selecting a path according to (231) (232). In order to reduce the bottleneck, a stochastic routing method is used to distribute the load by selecting a path with a higher probability as the load of each path decreases.

즉, 본 발명은 결정론적인 라우팅 방법의 성능을 획기적으로 발전시킬 수 있는 확률 기반 라우팅 방법이다. That is, the present invention is a probability-based routing method that can dramatically improve the performance of a deterministic routing method.

또한, 기존의 여러 라우팅 방법이 몇몇 특정 토폴로지에 국한되어 사용될 수 있는 반면, 본 발명은 모든 토폴로지에 대해 적용 가능한 라우팅 기법이다. In addition, while several existing routing methods may be limited to several specific topologies and used, the present invention is a routing technique applicable to all topologies.

따라서, 본 발명의 실시예에 따른 라우팅 기법은 슈퍼컴퓨터/데이터센터 내부의 노드 간 데이터 전송 시 발생할 수 있는 병목 현상을 크게 줄일 수 있고, 때문에 폴트-톨러런트(fault-tolerant)한 특징을 가질 수 있다. Therefore, the routing scheme according to an embodiment of the present invention can greatly reduce a bottleneck that may occur when data is transmitted between nodes inside a supercomputer/data center, and thus can have a fault-tolerant feature. have.

도 3은 본 발명의 일 실시예에 따른 로드 균형을 위한 확률 기반 적응형 라우팅 시스템의 구성을 나타내는 도면이다.3 is a diagram illustrating a configuration of a probability-based adaptive routing system for load balancing according to an embodiment of the present invention.

본 실시예에 따른 로드 균형을 위한 확률 기반 적응형 라우팅 시스템(300)은 프로세서(310), 버스(320), 네트워크 인터페이스(330), 메모리(340) 및 데이터베이스(350)를 포함할 수 있다. 메모리(340)는 운영체제(341) 및 로드 균형을 위한 확률 기반 적응형 라우팅 루틴(342)을 포함할 수 있다. 프로세서(310)는 경로 탐색부(311), 확률 계산부(312), 패킷 전송부(313)를 포함할 수 있다. 다른 실시예들에서 로드 균형을 위한 확률 기반 적응형 라우팅 시스템(300)은 도 3의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 로드 균형을 위한 확률 기반 적응형 라우팅 시스템(300)은 디스플레이나 트랜시버(transceiver)와 같은 다른 구성요소들을 포함할 수도 있다.The probability-based adaptive routing system 300 for load balancing according to the present embodiment may include a processor 310, a bus 320, a network interface 330, a memory 340, and a database 350. The memory 340 may include an operating system 341 and a probability-based adaptive routing routine 342 for load balancing. The processor 310 may include a path search unit 311, a probability calculation unit 312, and a packet transmission unit 313. In other embodiments, the probability-based adaptive routing system 300 for load balancing may include more components than those of FIG. 3. However, there is no need to clearly show most of the prior art components. For example, the probability-based adaptive routing system 300 for load balancing may include other components such as a display or a transceiver.

메모리(340)는 컴퓨터에서 판독 가능한 기록 매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 또한, 메모리(340)에는 운영체제(341)와 로드 균형을 위한 확률 기반 적응형 라우팅 루틴(342)을 위한 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 드라이브 메커니즘(drive mechanism, 미도시)을 이용하여 메모리(340)와는 별도의 컴퓨터에서 판독 가능한 기록 매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록 매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록 매체(미도시)를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록 매체가 아닌 네트워크 인터페이스(330)를 통해 메모리(340)에 로딩될 수도 있다. The memory 340 is a computer-readable recording medium and may include a permanent mass storage device such as a random access memory (RAM), read only memory (ROM), and a disk drive. Also, the memory 340 may store program code for the operating system 341 and the probability-based adaptive routing routine 342 for load balancing. These software components may be loaded from a computer-readable recording medium separate from the memory 340 using a drive mechanism (not shown). Such a separate computer-readable recording medium may include a computer-readable recording medium (not shown) such as a floppy drive, a disk, a tape, a DVD/CD-ROM drive, or a memory card. In another embodiment, software components may be loaded into the memory 340 through a network interface 330 rather than a computer-readable recording medium.

버스(320)는 로드 균형을 위한 확률 기반 적응형 라우팅 시스템(300)의 구성요소들간의 통신 및 데이터 전송을 가능하게 할 수 있다. 버스(320)는 고속 시리얼 버스(high-speed serial bus), 병렬 버스(parallel bus), SAN(Storage Area Network) 및/또는 다른 적절한 통신 기술을 이용하여 구성될 수 있다.The bus 320 may enable communication and data transmission between components of the probability-based adaptive routing system 300 for load balancing. Bus 320 may be configured using a high-speed serial bus, a parallel bus, a storage area network (SAN), and/or other suitable communication technology.

네트워크 인터페이스(330)는 로드 균형을 위한 확률 기반 적응형 라우팅 시스템(300)을 컴퓨터 네트워크에 연결하기 위한 컴퓨터 하드웨어 구성요소일 수 있다. 네트워크 인터페이스(330)는 로드 균형을 위한 확률 기반 적응형 라우팅 시스템(300)은 무선 또는 유선 커넥션을 통해 컴퓨터 네트워크에 연결시킬 수 있다.The network interface 330 may be a computer hardware component for connecting the probability-based adaptive routing system 300 for load balancing to a computer network. The network interface 330 may connect the probability-based adaptive routing system 300 for load balancing to a computer network through a wireless or wired connection.

데이터베이스(350)는 로드 균형을 위한 확률 기반 적응형 라우팅을 위해 필요한 모든 정보를 저장 및 유지하는 역할을 할 수 있다. 도 3에서는 로드 균형을 위한 확률 기반 적응형 라우팅 시스템(300)의 내부에 데이터베이스(350)를 구축하여 포함하는 것으로 도시하고 있으나, 이에 한정되는 것은 아니며 시스템 구현 방식이나 환경 등에 따라 생략될 수 있고 혹은 전체 또는 일부의 데이터베이스가 별개의 다른 시스템 상에 구축된 외부 데이터베이스로서 존재하는 것 또한 가능하다.The database 350 may serve to store and maintain all information necessary for probability-based adaptive routing for load balancing. In FIG. 3, the database 350 is constructed and included in the probability-based adaptive routing system 300 for load balancing, but is not limited thereto and may be omitted depending on the system implementation method or environment, or It is also possible for all or some of the databases to exist as external databases built on separate and different systems.

프로세서(310)는 기본적인 산술, 로직 및 로드 균형을 위한 확률 기반 적응형 라우팅 시스템(300)의 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(340) 또는 네트워크 인터페이스(330)에 의해, 그리고 버스(320)를 통해 프로세서(310)로 제공될 수 있다. 프로세서(310)는 경로 탐색부(311), 확률 계산부(312), 패킷 전송부(313)를 위한 프로그램 코드를 실행하도록 구성될 수 있다. 이러한 프로그램 코드는 메모리(340)와 같은 기록 장치에 저장될 수 있다.The processor 310 may be configured to process instructions of a computer program by performing input/output operations of the probability-based adaptive routing system 300 for basic arithmetic, logic, and load balancing. Instructions may be provided to the processor 310 by way of memory 340 or network interface 330 and via bus 320. The processor 310 may be configured to execute program codes for the path search unit 311, the probability calculation unit 312, and the packet transmission unit 313. Such program codes may be stored in a recording device such as the memory 340.

경로 탐색부(311), 확률 계산부(312), 패킷 전송부(313)는 도 2의 단계들(210~230)을 수행하기 위해 구성될 수 있다.The path search unit 311, the probability calculation unit 312, and the packet transmission unit 313 may be configured to perform the steps 210 to 230 of FIG. 2.

로드 균형을 위한 확률 기반 적응형 라우팅 시스템(300)은 경로 탐색부(311), 확률 계산부(312), 패킷 전송부(313)를 포함할 수 있다.The probability-based adaptive routing system 300 for load balancing may include a path search unit 311, a probability calculation unit 312, and a packet transmission unit 313.

경로 탐색부(311)는 패킷을 수신하여 목적지를 확인하고, 소스로부터 목적지까지의 전송 경로에 대한 최소 경로 및 최소 근접 경로를 계산한다. 하나의 노드로부터 다른 노드까지의 최소 경로 집합과 최소 근접 경로의 집합을 정한 후, 최소 경로 집합 및 최소 근접 경로의 집합에 속한 각 경로 상에 있는 모든 노드에 대한 로드를 미리 정해진 시간마다 업데이트 하고, 각 경로에 대하여 경로 내 모든 노드의 합을 해당 경로의 로드로 정의한다.The path search unit 311 receives the packet, identifies a destination, and calculates a minimum path and a minimum proximity path for a transmission path from the source to the destination. After determining the minimum path set and the minimum proximity path set from one node to another node, the load for all nodes on each path belonging to the minimum path set and the minimum proximity path set is updated every predetermined time, and each For a path, the sum of all nodes in the path is defined as the load of the path.

확률 계산부(312)는 계산된 경로 별 큐 길이를 계산하고, 경로 별 로드에 따른 선택 확률

Figure 112019014665860-pat00018
를 계산한다. 각 경로의 로드가 균형을 이루도록 하기 위해 하나의 노드에서 다른 노드로 패킷을 전송할 때, 각 경로의 로드가 적을 수록 높은 확률을 갖는 선택 확률을 계산한다. The probability calculation unit 312 calculates the calculated queue length for each path, and the selection probability according to the load for each path
Figure 112019014665860-pat00018
Calculate When a packet is transmitted from one node to another in order to balance the load of each path, the smaller the load of each path, the higher the probability of selection is calculated.

패킷 전송부(313)는 계산된 선택 확률

Figure 112019014665860-pat00019
에 따른 경로를 선택하여 패킷을 전송한다. 병목현상을 감소시키기 위해 각 경로의 로드가 적을 수록 높은 확률로 경로를 선택하여 로드를 분산시키는 확률론적 라우팅 방법을 이용한다. The packet transmission unit 313 is the calculated selection probability
Figure 112019014665860-pat00019
The packet is transmitted by selecting a path according to the following. In order to reduce the bottleneck, a stochastic routing method is used to distribute the load by selecting a path with a higher probability as the load of each path decreases.

본 발명의 실시예에 따른 라우팅 기법은 슈퍼컴퓨터/데이터센터 내부의 노드 간 데이터 전송 시 발생할 수 있는 병목 현상을 크게 줄일 수 있고, 때문에 폴트 톨러런트(fault-tolerant)한 특징을 가질 수 있다. The routing scheme according to an embodiment of the present invention can greatly reduce a bottleneck that may occur during data transmission between nodes in a supercomputer/data center, and thus can have a fault-tolerant feature.

본 발명은 기존에 구현되어 있는 모든 종류의 토폴로지 형태의 슈퍼컴퓨터/데이터센터의 라우팅 기법으로 채택되어 사용될 수 있어, 기존의 여러 라우팅 특허에 비해 범용성이 높은 장점을 갖는다. 또한, 기존 라우팅 기법을 본 발명에서 제안한 라우팅으로 대체할 경우, 특정 노드에 패킷이 몰리는 상황의 경우에 병목현상을 큰 폭으로 감소시킬 수 있다. 병목현상이 발생하는 노드가 많을수록 트래픽이 제 시간에 도착하지 못하고, 패킷이 손실되고 재전송 하는 횟수가 증가하여, 전체 시스템 성능에 악영향을 미칠 것이기 때문에, 병목현상의 감소는 전체 시스템 성능을 크게 개선시킬 수 있다. 따라서, 기존 슈퍼컴퓨터/데이터센터를 구현하는 많은 기업에서 본 발명에서 제안하는 기술을 채택 시, 큰 폭의 성능 향상을 나타낼 수 있을 것으로 기대된다. The present invention can be adopted and used as a routing technique of a supercomputer/data center in all types of topology types that have been implemented in the past, and thus has an advantage of high versatility compared to several existing routing patents. In addition, when replacing the existing routing scheme with the routing proposed in the present invention, a bottleneck can be greatly reduced in the case of a situation where packets are concentrated in a specific node. As the number of nodes with bottlenecks increases, traffic does not arrive on time, packets are lost, and the number of retransmissions increases, which adversely affects the overall system performance.Thus, reduction of bottlenecks will greatly improve overall system performance. I can. Therefore, it is expected that when many companies implementing existing supercomputers/data centers adopt the technology proposed in the present invention, they will be able to significantly improve performance.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다.  또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다.  이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다.  예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다.  또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the devices and components described in the embodiments include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), It may be implemented using one or more general purpose computers or special purpose computers, such as a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications executed on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of software. For the convenience of understanding, although it is sometimes described that one processing device is used, one of ordinary skill in the art, the processing device is a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다.  소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다.  소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to behave as desired or processed independently or collectively. You can command the device. Software and/or data may be interpreted by a processing device or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. Can be embodyed in The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다.  상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.  상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.  컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.  프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.  The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those produced by a compiler but also high-level language codes that can be executed by a computer using an interpreter or the like.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다.  예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described by the limited embodiments and drawings as described above, various modifications and variations are possible from the above description to those of ordinary skill in the art. For example, the described techniques are performed in an order different from the described method, and/or components such as a system, structure, device, circuit, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and claims and equivalents fall within the scope of the claims to be described later.

Claims (8)

패킷을 수신하여 목적지를 확인하고, 경로 탐색부를 통해 소스로부터 목적지까지의 전송 경로에 대한 최소 경로 및 최소 근접 경로를 계산하는 단계;
계산된 경로 별 큐 길이를 계산하고, 확률 계산부를 통해 경로 별 로드에 따른 선택 확률을 계산하는 단계; 및
계산된 선택 확률에 따른 경로를 선택하여 패킷 전송부를 통해 패킷을 전송하는 단계
를 포함하고,
계산된 경로 별 큐 길이를 계산하고, 확률 계산부를 통해 경로 별 로드에 따른 선택 확률을 계산하는 단계는,
각 경로의 로드를 해당 노드에서 처리해야 할 패킷의 수, 해당 노드에 패킷이 도착하였을 때 노드를 빠져나갈 때까지의 예상 대기시간을 이용하여 정의하고, 한 노드에서 다른 노드로 가는 최소 경로 집합 및 최소 근접 경로의 집합을 정한 후, 두 집합에 속한 각각의 경로 상에 있는 모든 노드에 대한 로드를 업데이트 하고, 각 경로에 대해 경로 내 모든 노드에 대한 로드의 합을 경로의 로드로 정의하며,
각 경로의 로드가 균형을 이루도록 하기 위해 하나의 노드에서 다른 노드로 패킷을 전송할 때, 각 경로의 로드가 적을 수록 높은 확률을 갖는 선택 확률을 계산하는
적응형 라우팅 방법.
Receiving a packet to confirm a destination, and calculating a minimum route and a minimum proximity route for a transmission route from a source to a destination through a route search unit;
Calculating a calculated queue length for each path, and calculating a selection probability according to a load for each path through a probability calculator; And
Selecting a path according to the calculated selection probability and transmitting a packet through a packet transmission unit
Including,
Calculating the calculated queue length for each path, and calculating the selection probability according to the load for each path through a probability calculator,
The load of each path is defined using the number of packets to be processed by the node, and the expected waiting time until leaving the node when the packet arrives at the node, and the minimum set of paths from one node to another node and After determining the set of minimum proximity paths, update the loads for all nodes on each path belonging to the two sets, and define the sum of the loads for all nodes in the path for each path as the load of the path.
In order to balance the load of each path, when transmitting a packet from one node to another, the lower the load of each path, the higher the probability of selection is calculated.
Adaptive routing method.
제1항에 있어서,
패킷을 수신하여 목적지를 확인하고, 경로 탐색부를 통해 소스로부터 목적지까지의 전송 경로에 대한 최소 경로 및 최소 근접 경로를 계산하는 단계는,
하나의 노드로부터 다른 노드까지의 최소 경로 집합과 최소 근접 경로의 집합을 정한 후, 최소 경로 집합 및 최소 근접 경로의 집합에 속한 각 경로 상에 있는 모든 노드에 대한 로드를 미리 정해진 시간마다 업데이트 하고, 각 경로에 대하여 경로 내 모든 노드의 합을 해당 경로의 로드로 정의하는
적응형 라우팅 방법.
The method of claim 1,
Receiving a packet to confirm a destination, and calculating a minimum route and a minimum proximity route for a transmission route from the source to the destination through the route search unit,
After determining the minimum path set and the minimum proximity path set from one node to another node, the loads for all nodes on each path belonging to the minimum path set and the minimum proximity path set are updated every predetermined time, and each For a path, the sum of all nodes in the path is defined as the load of the path.
Adaptive routing method.
삭제delete 제1항에 있어서,
계산된 선택 확률에 따른 경로를 선택하여 패킷 전송부를 통해 패킷을 전송하는 단계는,
병목현상을 감소시키기 위해 각 경로의 로드가 적을 수록 높은 확률로 경로를 선택하여 로드를 분산시키는 확률론적 라우팅 방법을 이용하는
적응형 라우팅 방법.
The method of claim 1,
Selecting a path according to the calculated selection probability and transmitting a packet through the packet transmission unit,
In order to reduce the bottleneck, the less the load of each path, the higher the probability that the path is selected and the load is distributed using a probabilistic routing method.
Adaptive routing method.
패킷을 수신하여 목적지를 확인하고, 소스로부터 목적지까지의 전송 경로에 대한 최소 경로 및 최소 근접 경로를 계산하는 경로 탐색부;
계산된 경로 별 큐 길이를 계산하고, 경로 별 로드에 따른 선택 확률을 계산하는 확률 계산부; 및
계산된 선택 확률에 따른 경로를 선택하여 패킷을 전송하는 패킷 전송부
를 포함하고,
확률 계산부는,
각 경로의 로드를 해당 노드에서 처리해야 할 패킷의 수, 해당 노드에 패킷이 도착하였을 때 노드를 빠져나갈 때까지의 예상 대기시간을 이용하여 정의하고, 한 노드에서 다른 노드로 가는 최소 경로 집합 및 최소 근접 경로의 집합을 정한 후, 두 집합에 속한 각각의 경로 상에 있는 모든 노드에 대한 로드를 업데이트 하고, 각 경로에 대해 경로 내 모든 노드에 대한 로드의 합을 경로의 로드로 정의하며,
각 경로의 로드가 균형을 이루도록 하기 위해 하나의 노드에서 다른 노드로 패킷을 전송할 때, 각 경로의 로드가 적을 수록 높은 확률을 갖는 선택 확률을 계산하는
적응형 라우팅 시스템.
A path search unit that receives the packet, identifies a destination, and calculates a minimum path and a minimum proximity path for a transmission path from the source to the destination;
A probability calculator that calculates the calculated queue length for each path and calculates a selection probability according to the load for each path; And
A packet transmission unit that transmits a packet by selecting a path according to the calculated selection probability
Including,
The probability calculation unit,
The load of each path is defined using the number of packets to be processed by the node, and the expected waiting time until leaving the node when the packet arrives at the node, and the minimum set of paths from one node to another node and After determining the set of minimum proximity paths, update the loads for all nodes on each path belonging to the two sets, and define the sum of the loads for all nodes in the path for each path as the load of the path.
In order to balance the load of each path, when transmitting a packet from one node to another, the lower the load of each path, the higher the probability of selection is calculated.
Adaptive routing system.
제5항에 있어서,
경로 탐색부는,
하나의 노드로부터 다른 노드까지의 최소 경로 집합과 최소 근접 경로의 집합을 정한 후, 최소 경로 집합 및 최소 근접 경로의 집합에 속한 각 경로 상에 있는 모든 노드에 대한 로드를 미리 정해진 시간마다 업데이트 하고, 각 경로에 대하여 경로 내 모든 노드의 합을 해당 경로의 로드로 정의하는
적응형 라우팅 시스템.
The method of claim 5,
The route search unit,
After determining the minimum path set and the minimum proximity path set from one node to another node, the loads for all nodes on each path belonging to the minimum path set and the minimum proximity path set are updated every predetermined time, and each For a path, the sum of all nodes in the path is defined as the load of the path.
Adaptive routing system.
삭제delete 제5항에 있어서,
패킷 전송부는,
병목현상을 감소시키기 위해 각 경로의 로드가 적을 수록 높은 확률로 경로를 선택하여 로드를 분산시키는 확률론적 라우팅 방법을 이용하는
적응형 라우팅 시스템.
The method of claim 5,
The packet transmission unit,
In order to reduce the bottleneck, the less the load of each path, the higher the probability that the path is selected and the load is distributed using a probabilistic routing method.
Adaptive routing system.
KR1020190016122A 2018-04-13 2019-02-12 Stochastic Routing Algorithm for Load-balancing Interconnection Network System KR102153814B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20180043555 2018-04-13
KR1020180043555 2018-04-13

Publications (2)

Publication Number Publication Date
KR20190120057A KR20190120057A (en) 2019-10-23
KR102153814B1 true KR102153814B1 (en) 2020-09-08

Family

ID=68461134

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190016122A KR102153814B1 (en) 2018-04-13 2019-02-12 Stochastic Routing Algorithm for Load-balancing Interconnection Network System

Country Status (1)

Country Link
KR (1) KR102153814B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112511445B (en) * 2020-09-28 2022-03-25 复旦大学 Shortest path route generating method based on load weighting
US11876705B2 (en) * 2021-12-16 2024-01-16 Huawei Technologies Co., Ltd. Methods and systems for adaptive stochastic-based load balancing

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101663994B1 (en) * 2016-04-26 2016-10-12 숭실대학교산학협력단 METHOD FOR PROVIDING AN LIGHT-WEIGHT ROUTING PROTOCOL IN A IoT CAPABLE INFRA-LESS WIRELESS NETWORKS, RECORDING MEDIUM AND DEVICE FOR PERFORMING THE METHOD

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3284287B1 (en) * 2015-04-15 2019-06-05 Nokia Solutions and Networks Oy Self-organizing network concepts for small cells backhauling
KR101758326B1 (en) * 2015-12-29 2017-07-14 성균관대학교산학협력단 Method of load balancing in network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101663994B1 (en) * 2016-04-26 2016-10-12 숭실대학교산학협력단 METHOD FOR PROVIDING AN LIGHT-WEIGHT ROUTING PROTOCOL IN A IoT CAPABLE INFRA-LESS WIRELESS NETWORKS, RECORDING MEDIUM AND DEVICE FOR PERFORMING THE METHOD

Also Published As

Publication number Publication date
KR20190120057A (en) 2019-10-23

Similar Documents

Publication Publication Date Title
US9888048B1 (en) Supporting millions of parallel light weight data streams in a distributed system
KR102273413B1 (en) Dynamic scheduling of network updates
JP2019095861A (en) Neural network device
US10826823B2 (en) Centralized label-based software defined network
US11502967B2 (en) Methods and apparatuses for packet scheduling for software-defined networking in edge computing environment
CN110389826B (en) Method, apparatus and computer program product for processing a computing task
US11184283B2 (en) Service function chaining congestion tracking
KR102153814B1 (en) Stochastic Routing Algorithm for Load-balancing Interconnection Network System
KR20200062299A (en) Transaction selection device for selecting blockchain transactions
CN114697256B (en) Dynamic network bandwidth allocation and management based on centralized controllers
EP2912811B1 (en) Traffic engineering system for preventing demand deadlock and achieving uniform link utilization
CN106104503A (en) Unified API is used to program the server for forwarding and framework for the fine granularity network optimization
US10958588B2 (en) Reliability processing of remote direct memory access
CN113746763A (en) Data processing method, device and equipment
CN114422453A (en) Method, device and storage medium for online planning of time-sensitive streams
JP5595342B2 (en) Multiple path search method and apparatus
US9559945B2 (en) Message path selection within a network
US20130132692A1 (en) Storage devices and storage systems
KR101496058B1 (en) Method and Apparatus for decision coding mode based on Link utilization
CN116760761B (en) Path creation method, data processing system, controller, and storage medium
US11340907B2 (en) Command-aware hardware architecture
WO2022110384A1 (en) Routing control method and apparatus, and routing device and storage medium
US10268529B2 (en) Parallel processing apparatus and inter-node communication method
WO2021111585A1 (en) Distributed processing system
WO2016041804A1 (en) Method, device and system for deciding on a distribution path of a task

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant