KR100352849B1 - load distribution method in large capacity report treatment process of DCS - Google Patents
load distribution method in large capacity report treatment process of DCS Download PDFInfo
- Publication number
- KR100352849B1 KR100352849B1 KR1020000064132A KR20000064132A KR100352849B1 KR 100352849 B1 KR100352849 B1 KR 100352849B1 KR 1020000064132 A KR1020000064132 A KR 1020000064132A KR 20000064132 A KR20000064132 A KR 20000064132A KR 100352849 B1 KR100352849 B1 KR 100352849B1
- Authority
- KR
- South Korea
- Prior art keywords
- message
- shelf
- admin
- processing
- processes
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
- G06F15/17318—Parallel communications techniques, e.g. gather, scatter, reduce, roadcast, multicast, all to all
Abstract
본 발명은 장비에서 발생하는 이벤트(event)/알람(alarm) 정보를 처리함에 있어 순간 발생하는 대용량의 자료처리에 소요되는 과부하와 처리지연을 해소하도록 한 부하 분산 방법에 관한 것으로, 본 발명의 실시예는, 이벤트(event)/알람(alarm) 메시지를 보고하기 위해 Admin 쉘프에 프로세스를 상주시키는 과정과, 상기 쉘프(shelf)에서 보고되는 메시지가 상기 Admin 쉘프에 보고되면 Admin 쉘프의 프로세스가 이 메시지를 받아 분석하는 과정과, 상기 메시지를 분석한 후 담당 프로세스를 생성하는 과정과, 상기 담당 프로세스가 주어진 메시지를 처리하여 데이터베이스(DB) 정보를 저장하거나 또는 일련의 처리를 한 후 종료하므로써, 복수개의 프로세스를 동시에 기동하면 단일 프로세스가 처리하는 단위 처리량에 프로세스의 수만큼 처리를 확보할 수 있으므로 빠른 시간에 방대한 보고를 처리할 수 있으며, 생성 프로세스의 수를 일정량 제한하는 알고리즘을 적용하여 시스템 자원의 효율을 높일 수 있다.The present invention relates to a load balancing method for solving the overload and processing delay required for processing a large amount of data generated in a moment in processing event / alarm information generated in equipment. For example, the process of residing a process in the Admin shelf to report an event / alarm message, and if a message reported by the shelf is reported to the Admin shelf, the process of the Admin shelf is the message. Receiving and analyzing the message, generating the responsible process after analyzing the message, and processing the given message by the responsible process to store database (DB) information or by completing a series of processes, thereby completing a plurality of processes. Simultaneously starting a process can provide as much processing as the number of processes in the unit throughput handled by a single process. To handle the vast reports in time, and by applying an algorithm to limit the number of fixed amount of the generation process can increase the efficiency of system resources.
Description
본 발명은 DCS(Digital Cross-connecte System)의 대용량 보고처리 프로세서에서의 부하 분산 방법에 관한 것으로, 특히 장비에서 발생하는 이벤트(event)/알람(alarm) 정보를 처리함에 있어 순간 발생하는 대용량의 자료처리에 소요되는 과부하와 처리지연을 해소하도록 한 부하 분산 방법에 관한 것이다.The present invention relates to a load balancing method in a large-capacity report processing processor of a DCS (Digital Cross-connecte System), and in particular, a large amount of data generated at the moment in processing event / alarm information generated in equipment. The present invention relates to a load balancing method that eliminates the overload and processing delay required for processing.
도 1 은 종래의 DCS의 대용량 보고처리 과정의 개략도로서, 이를 참조하여 설명하면 다음과 같다.1 is a schematic diagram of a large-capacity report processing process of the conventional DCS.
쉘프(shelf)는 하부체계인 유니트(unit)에서 발생하는 변화나 경보상황을 메시지로 구성하여 Admin 쉘프(즉, W(Wideband)DCS에서는 여러개의 rack, shelf, unit로 구성되며, 이에 대한 관리와 중앙제어를 담당하는 Admin 쉘프)에 보고하고, 이 메시지는 어디에서 발생되고 어떠한 쉘프와 유니트에서 어떠한 상황이 발생되었는지에 대한 정보를 구성한다.Shelf consists of a message of changes or alarms that occur in the unit, which is a sub-system, and consists of multiple racks, shelves, and units in the Admin shelf (ie W (Wideband) DCS). Report to the Admin shelf in charge of the central control, and this message constitutes information about where and what conditions occur on which shelves and units.
상기 Admin 쉘프에는 이 메시지를 처리하는 하나의 프로세스가 상주하여 자신에게 전달되는 메시지를 기다리며, 상기 쉘프에서 어떠한 상황이 발생하여 Admin 쉘프에 메시지를 보내면 Admin 쉘프에서 이 메시지를 처리하는 프로세스가 메시지를 가져가게 된다.In the Admin shelf, a process that processes this message resides and waits for a message to be delivered to it. When a situation occurs in the shelf and sends a message to the Admin shelf, the process that processes this message in the Admin shelf gets the message. I will go.
또한, 메시지에 기록되어 있는 세부정보를 분석하여 변화한 사항을 데이터베이스(DB)에 기록함으로 쉘프에서 보고된 메시지의 처리가 종료하고, 이 프로세스는 다음 메시지를 기다리게 된다.In addition, by analyzing the details recorded in the message and recording the changes in the database (DB), the processing of the message reported by the shelf is terminated, and this process waits for the next message.
DCS의 하부 쉘프에서 보고되는 메시지는 그 발생량이 일정하지 않고, 어떠한 상황 변화나 경보 보고가 주기적으로 예약되어 있지 않기 때문이며, Admin 쉘프에상주하는 이벤트(event)/알람(alarm) 담당 프로세스는 그 메시지의 처리가 매우 짧기 때문에 쉘프에서 보고하는 메시지의 처리를 원만하게 처리할 수 있다.The message reported by the lower shelf of the DCS is not constant, and no situational changes or alarm reports are scheduled on a regular basis.The event / alarm responsible process residing in the Admin shelf is responsible for the message. The processing of is so short that it can smoothly handle the messages reported by the shelf.
그러나, 어떠한 순간에는 그 메시지의 보고량이 수백에서 수천건이 발생할 수 있으며, 이러한 경우 Admin 쉘프의 이벤트/알람 처리 프로세스는 그 메시지의 손실없이 모두 처리하나 상당한 지연시간이 발생한다.At any given moment, however, hundreds or thousands of reports can be reported. In this case, the Admin shelf's event / alarm processing process handles all of the messages without loss, but with significant delays.
이와같이 처리를 기다리는 메시지는 Admin 쉘프의 이벤트/알람 처리프로세스 의 내부처리 대기열에 존재하나 앞서 보고된 메시지가 처리되기 전까지 계속 기다려야 하기 때문이다.This is because the message waiting to be processed exists in the internal processing queue of the event shelf / alarm processing process of the Admin shelf, but it has to wait until the previously reported message is processed.
그리고, 대용량의 회선을 분배함에 있어 작은 일부분은 그 크기에 관계없이 통신에 지대한 영향을 끼치게 되는데, 이러한 통신장비의 특성에 있어 장치의 이상 상황보고에 대한 처리가 늦어질수록 통신에 미치는 영향은 그만큼 커지게 된다.In addition, in distributing a large amount of lines, a small portion has a great influence on the communication regardless of its size, and in the characteristics of such communication equipment, the later the processing of the abnormal situation report of the device, the more the effect on the communication. It becomes bigger.
따라서, 본 발명은 상기와 같은 종래의 문제점을 해소하기 위해 창안된 것으로서, 장비에서 발생하는 이벤트/알람 정보를 처리함에 있어 순간 발생하는 대용량의 자료처리에 드는 과부하와 처리지연을 해결하도록 하는데 그 목적이 있다.Accordingly, the present invention has been made to solve the above-mentioned conventional problems, and to solve the overload and processing delay in processing a large amount of data generated at the moment in processing the event / alarm information generated in the equipment to its purpose There is this.
도 1 은 종래의 DCS의 대용량 보고처리 과정의 개략도.1 is a schematic diagram of a large capacity reporting process of a conventional DCS.
도 2 는 본 발명에 적용되는 DCS의 대용량 보고처리 과정의 구성도.2 is a block diagram of a large-scale report processing process of the DCS applied to the present invention.
도 3 은 본 발명에 적용되는 토큰 할당 과정의 구성도.3 is a block diagram of a token allocation process applied to the present invention.
도 4a 및 도 4b 는 본 발명에 적용되는 메시지의 분배와 토큰할당 과정의 흐름도.4A and 4B are flowcharts of a message distribution and token allocation process applied to the present invention.
이하, 첨부도면을 참조하여 본 고안에 따른 바람직한 실시예에 대하여 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment according to the present invention.
본 발명 토큰을 이용한 부하 분산 방법의 실시예는,An embodiment of a load balancing method using the present invention token,
이벤트(event)/알람(alarm) 메시지를 보고하기 위해 Admin 쉘프에 프로세스를 상주시키는 과정과,Residing a process in the Admin shelf to report event / alarm messages,
상기 쉘프(shelf)에서 보고되는 메시지가 상기 Admin 쉘프에 보고되면 Admin 쉘프의 프로세스가 이 메시지를 받아 분석하는 과정과,If a message reported from the shelf is reported to the Admin shelf, the process of the Admin shelf receives the message and analyzes the message;
상기 메시지를 분석한 후 담당 프로세스를 생성하여 메시지를 이관하는 과정과,Analyzing the message and generating a responsible process to transfer the message;
상기 담당 프로세스가 주어진 메시지를 처리하여 데이터베이스(DB) 정보를 저장하거나 또는 일련의 처리를 수행하는 과정으로 이루어짐이 바람직하다.It is preferable that the process in which the responsible process processes a given message to store database (DB) information or performs a series of processes.
상기 Admin 쉘프의 상주 프로세스에는 두개의 동일 프로세스가 존재하여 동일한 메시지 대기열을 사용하여 처리함이 바람직하다.In the resident process of the Admin shelf, two identical processes exist and are preferably processed using the same message queue.
상기 프로세스를 생성시 일정 개수의 토큰(token)을 할당함이 바람직하다.When creating the process, it is desirable to allocate a certain number of tokens.
상기 일정 개수의 토큰을 가진 프로세스가 종료되면 할당된 토큰을 회수하여 생성을 기다리는 다음 메시지 담당 프로세스에 할당함이 바람직하다.When the process having the predetermined number of tokens is terminated, it is preferable to recover the allocated tokens and assign them to the next message handling process waiting for generation.
상기 토큰의 할당 과정은 이중 연결구조를 가짐이 바람직하다.The token allocation process preferably has a dual connection structure.
상기 토큰의 할당 과정에서 헤드(head) 토큰이 할당됨이 바람직하다.Preferably, a head token is allocated in the process of allocating the token.
도 2 는 본 발명에 적용되는 DCS의 대용량 보고처리 과정의 구성도이고, 도 3 은 본 발명에 적용되는 토큰 할당 과정의 구성도로서, 이를 참조하여 설명하면 다음과 같다.2 is a configuration diagram of a large-scale report processing process of the DCS applied to the present invention, Figure 3 is a configuration diagram of the token allocation process applied to the present invention, it will be described with reference to this.
DCS의 쉘프 하부체계로 구성되어 있는 유니트에서 보고되는 이벤트/알람 메시지 보고를 신속하게 손실없이 보고하기 위하여 도 2 와 같이 Admin 쉘프에 프로세스를 상주시키고, 상기 쉘프에서 보고되는 메시지가 Admin 쉘프에 보고되면 이를 Admin 쉘프의 프로세스가 받아 메시지를 분석한다.In order to quickly and losslessly report event / alarm message reporting from a unit consisting of a shelf subsystem of DCS, the process resides in the Admin shelf as shown in FIG. 2, and if the message reported from the shelf is reported to the Admin shelf This is received by the Admin shelf's process and analyzed by the message.
상기 메시지를 분석하여 담당 프로세스를 생성하고, 담당 프로세스는 주어진 메시지를 처리하여 데이터베이스 정보를 저장 또는 일련의 처리를 한 후 종료한다.이때 쉘프에서 보고되는 메시지를 받는 Admin 쉘프의 상주 프로세스는 두개의 동일 프로세스가 도 2 와 같이 존재하여 동일한 메시지 대기열을 사용하여 처리한다.The message is analyzed to create a responsible process, and the responsible process processes the given message to save the database information or performs a series of processes and then exits, where the resident processes of the Admin shelf that receive messages reported by the shelf are two identical. The process exists as shown in Figure 2 and processes using the same message queue.
그리고, 쉘프에서 보고되는 메시지를 빠른 시간에 처리하기 위하여 도 2 와 같이 쉘프에서 보고되는 메시지 처리 프로세스를 이중화하고, 상호 보완적인 부분은 없으며 서로 동일한 대기열에 존재하는 이벤트/알람 메시지를 가져간다.In addition, in order to process the message reported by the shelf in a short time, the message handling process reported by the shelf is duplicated as shown in FIG. 2, and there are no complementary parts, and event / alarm messages existing in the same queue are taken.
상기 메시지를 분석하여 담당 업무를 처리하는 프로세스를 생성하는데, 이는 프로세스의 병렬성을 제공하여 많은 프로세스가 동시에 많은 일을 처리하기 위한것이지만 멀티 프로세싱을 제공하는 Admin 쉘프의 운영체제 특성상 프로세스의 일정수가 지나면 각 프로세스들은 처리에 소요되는 시간보다 상호 공유하는 메모리나 데이터베이스의 접근에서 발생하는 병목현상 때문에 더이상 처리시간이 향상되지 못한다.It creates a process that processes the task by analyzing the message, which provides the parallelism of processes so that many processes can do many things at the same time, but each process after a certain number of processes passes due to the operating system characteristics of the Admin shelf that provides multiprocessing. They can no longer improve processing time because of bottlenecks in shared memory or database access rather than processing time.
이를 위하여 프로세스를 생성할때 일정 프로세스의 수를 도 2 와 같이 제한하기위해 토큰(token)을 할당하고, 일정 개수의 토큰을 전부 소비하면 더이상 프로세스를 생성하지 않고 토큰을 소유한 프로세스가 종료하기만을 기다리게 된다.To this end, when creating a process, a token is allocated to limit the number of processes as shown in FIG. 2, and when a certain number of tokens are consumed, the process that owns the token does not create any more processes. I will wait.
또한, 토큰을 가진 프로세스가 종료하면 할당된 토큰을 회수하여 생성을 기다린 후 메시지 담당 프로세스에 할당하고, 쉘프에서 보고되는 메시지를 받아 프로세스를 생성하는 상주 프로세스는 상기 작업을 마치고 다음 메시지를 처리하기 위하여 기다리게 된다.In addition, when the process with the token terminates, the allocated token is retrieved, waited for creation, assigned to the message responsible process, and the resident process receiving the message reported by the shelf and creating the process completes the above operation and processes the next message. I will wait.
상기 토큰의 할당 과정은 도 3 과 같은 이중 연결구조를 가지고, 헤드(head)토큰을 무조건 할당하고 토큰의 수는 변수 n 에 의하여 제약을 받으며, 이 n은 도 2 에서 차일드(child) 수를 제한하는 n의 값과 동일하다.The token allocation process has a dual connection structure as shown in FIG. 3, and the head token is unconditionally allocated and the number of tokens is limited by the variable n, which limits the number of children in FIG. 2. Is equal to the value of n.
도 4a 및 도 4b 는 본 발명에 적용되는 메시지의 분배와 토큰할당 과정을 순서도로 나타낸 것으로, 이를 설명하면 다음과 같다.4A and 4B are flowcharts illustrating a distribution and token allocation process of a message applied to the present invention.
시스템이 종료되면 프로세스 종료처리를 한 후 종료되며(s10,s11), 상기 시스템이 종료되지 않으면 프로세스 테이블을 재설정하는 플래그(flag)를 검사하여 변화되어 있는지 확인하고 DB에 테이블이 변화되어 있으면 op(operation)_code와 프로세스명을 DB에서 저장한다(s12,s13).When the system is terminated, the process is terminated after finishing the process (s10, s11). If the system is not terminated, it is checked by checking the flag for resetting the process table. If the table is changed in the DB, the op ( operation) _code and process name are stored in DB (s12, s13).
상기 프로세스 테이블을 재설정하지 않을 시 수신된 처리요구의 유무여부가 없으면 처리요구를 수신한 후 수신결과가 패일(fail) 또는 타임아웃(time out)이면 (child) 프로세스 리스트를 확인하여 토큰 리스트 및 차일드 열(queue)을 정리한다(s14∼s18).If the processing table is not present or not if the process table is not reset, if the processing request is received and the reception result is a failure or timeout, the child list is checked and the child list is checked. Arrange the queues (s14 to s18).
상기 처리요구 수신결과가 수신되면 op_code를 분석하고 프로세스명을 확인하여 유효하면 해당 op_code 처리 프로세스의 기동상태를 확인하여 기동중이면 처리요구 메시지를 해당 프로세스에게 전달한다(s19∼s21).When the processing request reception result is received, the op_code is analyzed and the process name is checked. If the processing request is valid, the operation status of the op_code processing process is checked and the processing request message is transmitted to the corresponding process (s19 to s21).
토큰이 할당되지 않으면 토큰 리스트를 정리하고 처리요구 메시지를 수신, 대기하고 있는 프로세스가 토큰을 회수한 후 토큰 회수결과가 패일(fail)이면 상기 시스템 종료과정으로 피드백된다(s22∼s24).If the token is not allocated, the token list is cleaned up, and a process requesting and receiving a processing request message recovers the token, and if the token recovery result is a failure, it is fed back to the system termination process (s22 to s24).
상기 토큰 설정시 vfork()의 수행결과가 패런트(parent)이면 차일드 프로세서를 위해 처리하고(s25,s26), 차일드이면 해당 op_code 처리 프로세스로 변신한 후 명령수행을 위한 차일드 프로세스를 수행한다(s27,s28).When setting the token, if the execution result of vfork () is a parent, it is processed for the child processor (s25, s26). If the child is transformed into a corresponding op_code processing process, the child process for command execution is performed (s27). , s28).
이상에서 설명한 바와 같이 본 발명에 의하면, 단일 프로세스가 처리할 수 있는 시간의 한계점을 극복하기 위하여 복수개의 프로세스를 동시에 기동하면 단일 프로세스가 처리하는 단위 처리량에 프로세스의 수만큼 처리를 확보할 수 있으므로써 빠른 시간에 방대한 보고를 처리할 수 있으며, 생성 프로세스의 수를 일정량 제한하는 알고리즘을 적용하여 시스템 자원의 효율을 높일 수 있다.As described above, according to the present invention, when a plurality of processes are simultaneously started to overcome the limitation of time that a single process can handle, the number of processes can be secured in the unit throughput handled by a single process. It can handle huge reports in a short time and improve the efficiency of system resources by applying algorithms that limit the number of generation processes.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000064132A KR100352849B1 (en) | 2000-10-31 | 2000-10-31 | load distribution method in large capacity report treatment process of DCS |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000064132A KR100352849B1 (en) | 2000-10-31 | 2000-10-31 | load distribution method in large capacity report treatment process of DCS |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20020033913A KR20020033913A (en) | 2002-05-08 |
KR100352849B1 true KR100352849B1 (en) | 2002-09-16 |
Family
ID=19696269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020000064132A KR100352849B1 (en) | 2000-10-31 | 2000-10-31 | load distribution method in large capacity report treatment process of DCS |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100352849B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210326412A1 (en) * | 2020-04-20 | 2021-10-21 | Cisco Technology, Inc. | Secure automated issue detection |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100880334B1 (en) * | 2002-06-27 | 2009-01-28 | 주식회사 케이티 | ADSL modem apparatus and method of initiating the apparatus |
KR101010414B1 (en) * | 2010-08-06 | 2011-01-21 | 주식회사 픽슨 | Connecting device for pipes |
-
2000
- 2000-10-31 KR KR1020000064132A patent/KR100352849B1/en not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210326412A1 (en) * | 2020-04-20 | 2021-10-21 | Cisco Technology, Inc. | Secure automated issue detection |
US11816193B2 (en) * | 2020-04-20 | 2023-11-14 | Cisco Technology, Inc. | Secure automated issue detection |
Also Published As
Publication number | Publication date |
---|---|
KR20020033913A (en) | 2002-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6434626B1 (en) | Method and apparatus for low latency network performance monitoring | |
EP1732004A1 (en) | Computer system, server constituting the same, job execution control method thereof, and program | |
US7076545B2 (en) | Load balancing the servicing of received packets | |
CN100468377C (en) | Apparatus and method for supporting memory management in an offload of network protocol processing | |
CN101015187B (en) | Apparatus and method for supporting connection establishment in an offload of network protocol processing | |
US5819083A (en) | Minimal sufficient buffer space for data redistribution in a parallel database system | |
US8024744B2 (en) | Method and system for off-loading user queries to a task manager | |
AU655246B2 (en) | Synchronous node controllers for switching network | |
CN106170016A (en) | A kind of method and system processing high concurrent data requests | |
CN1892612A (en) | Cluster availability management method and system | |
CN101118521A (en) | System and method for spanning multiple logical sectorization to distributing virtual input-output operation | |
CN105183549A (en) | Automatic ticketing system based on task assignment | |
CN108200112B (en) | Distributed storage method and system | |
CN110177146A (en) | A kind of non-obstruction Restful communication means, device and equipment based on asynchronous event driven | |
CN102571568A (en) | Method and device for processing task | |
KR100352849B1 (en) | load distribution method in large capacity report treatment process of DCS | |
US20180335957A1 (en) | Lock-free datapath design for efficient parallel processing storage array implementation | |
US10623521B2 (en) | Distribution of messages to queues in a distributed computing environment | |
CN1262484A (en) | Bus, redundancy bus system for bus and method for internal transmission information | |
US8452936B2 (en) | System and method for managing resets in a system using shared storage | |
CN116757796B (en) | Shopping request response method based on nginx and related device | |
WO1980001421A1 (en) | Shared memory computer method and apparatus | |
US11336592B2 (en) | Flexible link level retry for shared memory switches | |
CN112448968B (en) | Method for processing network request, related device and storage system | |
JPH02268046A (en) | Packet multiplexer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20090831 Year of fee payment: 8 |
|
LAPS | Lapse due to unpaid annual fee |