KR19990037569A - 분산 실시간 시스템용 통합 과부하 제어 - Google Patents

분산 실시간 시스템용 통합 과부하 제어 Download PDF

Info

Publication number
KR19990037569A
KR19990037569A KR1019980046739A KR19980046739A KR19990037569A KR 19990037569 A KR19990037569 A KR 19990037569A KR 1019980046739 A KR1019980046739 A KR 1019980046739A KR 19980046739 A KR19980046739 A KR 19980046739A KR 19990037569 A KR19990037569 A KR 19990037569A
Authority
KR
South Korea
Prior art keywords
overload
level
control
modules
module
Prior art date
Application number
KR1019980046739A
Other languages
English (en)
Other versions
KR100334871B1 (ko
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 KR19990037569A publication Critical patent/KR19990037569A/ko
Application granted granted Critical
Publication of KR100334871B1 publication Critical patent/KR100334871B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Abstract

실시간 제어 시스템에서 과부하에 응답하는 방법. 과부하는 제어 처리기의 점유 시간(occupancy) 또는 상기 시스템의 모듈의 큐에서 엔트리의 수와 같은 제어 파라미터의 사용을 통해 측정된다. 과부하 지시는 다수의 레벨의 하나로 감소된다. 더 긴 기간의 더 심한 과부하에 대응하는 레벨은 덜 심각한 단기간 과부하 레벨보다 더 긴 시간 간격동안 제어 파라미터 측정에 기초한다. 자발적 제어를 통해, 시스템의 각 모듈은 자기 자신의 과부하 레벨을 결정하고 상기 레벨에 대응하는 과부하 제어 동작을 수행한다. 통합 시스템 과부하 제어에 있어서, 중앙 집중화된 처리기는 상기 시스템의 모듈 각각으로부터 과부하 지시를 수신하고 각 모듈의 적절한 과부하 제어 동작을 요구한다. 유익하게도, 이들 장치는 상기 시스템 및 그 모듈이 과부하에 더 빠르게 응답하고 정규 동작으로 보다 빠르게 복귀하도록 한다.

Description

분산 실시간 시스템용 통합 과부하 제어
본 발명은 본 발명과 동시에 출원되고 동일한 양수인에 양도된 S. Gehi, S. Lin 및 K. Sohraby에 의한 "Integrated Overload Control for distributed Real Time Systems"와 관련된다.
기술분야
본 발명은 실시간 시스템에서 과부하 상태(overload conditions)에 응답하기 위한 방법 및 장치에 관한 것이다.
문제점
통신 시스템과 같은 실시간 시스템은, 실시간 시스템에 의해 제어될 수 없는 사용자에 의한 접속 요구와 같은 요구에 응답해야만 한다. 따라서, 비정상적으로 많은 사용자가 시스템에 대한 요구를 동시에 하게되면, 이들 시스템은 과부하를 겪게된다. 일반적인 종래 기술의 장치에 있어서, 몇 몇 지연할 수 있는(deferable) 작업(tasks)을 지연시키고 부하를 흘림으로써, 즉 시스템의 하나 이상의 모듈에서 사용자의 접속 요구 중 일부를 거절함으로써 시스템은 과부하 상태에 응답한다. 종래 기술의 문제점은 지연 가능한 작업을 재시작할 수 있게 되었을 때 이들 작업의 수행 상태(performance)의 복원과, 부하가 재개될 때, 부하의 수락을 가능한 한 빨리 재개하는 것이 어렵다는 것이 알려져 있다.
해결책
분산 시스템의 개개의 모듈이 여러 또는 모든 시스템의 모듈의 현재 과부하 지시의 함수로서 과부하 제어 동작을 취하는 본 발명에 따라서 상기 문제점은 상당히 해결되고 종래 기술의 교시에 대한 향상(advance)이 이루어진다. 중앙 집중화된 처리기는 각각의 모듈로부터 부하 지시(모듈 상태)를 수신하고 제어 동작을 각각의 모듈에 할당한다. 본 발명의 양호한 실시예에 있어서, 부하 지시는 단기간 및 장기간의 과부하 레벨의 식별자(identity)이고, 제어 동작은 이들 레벨의 하나에 대한 동작인데, 모듈의 현재의 부하 또는 과부하 레벨을 나타내는 레벨과 동일한 레벨일 필요는 없다. 유익하게도. 이러한 장치는 상기 시스템이 각각의 모듈 내의 거의 최적의 형태로 상기 모듈 내에서의 과부하와 다른 모듈의 과부하의 지시에 응답한다.
일 실시예에 있어서, 시스템 전체의 접근법은 상기 모듈의 적어도 하나가 장기간의 과부하 레벨에 있는 경우에만 야기된다. 유익하게도, 단기간의 상황은 국부적으로, 즉 모듈 내에서 처리되지만, 다른 모듈의 특정 동작의 도움을 필요로 하는 더 심각한 장기간의 과부하는 시스템 전체에 기초해서 처리된다.
본원에서, 두 개의 내부적으로 관련된 메커니즘, 즉 단기간 및 장기간의 과부하 제어가 상술된다. 많은 상황에 있어서, 단기간 제어 동작(action)은 시스템 수행에 작은 영향을 미치지만 장기간의 동작은 수행 결과에 상당한 영향을 미친다. 따라서, 단기간 및 장기간을 구별하는 것이 바람직하다. 특히, 이들 둘을 구별하지 않는 단일화된 제어 방법이 과부하 상태의 상기 시스템에 적용되지 않아야 하는 것은 중요하다. 과부하 상태라는 용어는 0의 과부하 상태, 즉 모듈 내에 과부하가 존재하지 않는 정상적인 상태를 포함하는 의미로 사용될 것이다.
먼저 설명되는 자발적(autonomous) 제어 방법에 있어서, 개별적인 스위치 소자(노드 또는 모듈)는 그들의 수행 상태(performance)를 측정하고 이 측정에 기초하여 동작을 취한다. 모든 노드는 자발적이고 독립적이며, 그들 동작은 다른 노드의 상태 및/또는 동작에 관련되지 않는다. 한편, 한 실시예에서 사용되는 "통합된" 과부하 접근법에 있어서, 하나 이상의 모듈이 장기간의 과부하 레벨에 들어가게 되면, 제어동안 동작(action)의 추이를 결정하는데 모든 노드의 상태가 동시에 고려된다.
단기간의 제어는 그 이름대로 짧은 시간 간격동안 시스템 수행의 측정에 반응한다. 이것은, 오래 지속되지 않고 따라서 과중한 벌칙(penalty)(예를들면, 높은 접속 차단율(high call blocking rate))으로 나타나는 동작을 필요로 하지 않는 일시적이며 단기간의 과부하 상태를 포착하기 위한 것이다. 통상적인 단기간 제어는 중요하지 않은 작업(non-critical tasks)의 처리를 지연시키는 것으로 구성되는데; 이들 작업은 일시적인 과부하가 없어진 후 처리될 것이다. 이러한 경우 상기 동작의 중대도(severity)는 중요하지 않고 일시적이다. 예를들면, 중요하지 않은 작업은 스위치 유지(maintenance)와 관리에 할당된 레지스터와 메모리 블록을 리셋하는 요구에 응답하며 스위치에서 진행중인 접속의 처리(processing calls)와 같은 메인 작업을 직접적으로 의미하지는 않는다. 이러한 중요하지 않은 작업은 오랜 시간동안 지연될 수 없는데 그 이유는 이러한 경우, 스위치의 동작 또는 하부 네트워크가 붕괴될 수 있기 때문이다. 단기간의 동작은 상태의 중대도가 더 많은 동작이 필요 되어짐을 의미할 때만 스위치에 의해 수행되는 중요한(critical) 작업을 지연시킨다. 예를들면, 통상적인 중요한 단기간 동작은 상기 스위치에 도달하고 차단된 접속에 의해 다른 상태로 발생되는 상기 스위치 노드의 처리 부하를 경감시키는 하위 우선 순위의 접속 신호 메시지를 낮은 비율로 감소시킬 것이다.
장기간 제어 하에서, (중요하지 않은 신호 처리와 같은) 작업 지연은 저절로 억제된다. 중요하지 않은 작업을 지연시키는 것과 함께 시스템으로 인입하는 신호를 차단하는 것과 같은 보다 중요한 동작이 필요 될 것이다. 이러한 경우의 차단 율은 단기간의 경우에 적용된 것보다 더 높다.
본원에서 상술된 방법의 목적은 이들 두 경우를 구별하고 각각의 경우에 측정 및 제어를 위한 특정 방법을 고안하는 것이다.
하기의 설명에서, 감시되는 특정 노드 수행 상태 측정은 처리기를 이용한다. 그러나, 이러한 측정은 본원에선 양호한 실시예로서만 고려된다. 큐 길이(queue length), 버퍼 활용, 구조 제어기에서 사용 중인 중계선(busy trunks)의 수 등과 같은 다른 측정이 사용될 수 있다. 이러한 선택은 특정 구현, 스위치 구조, 및 전체적인 스위치 수행 상태 측정에 의존한다. 이러한 설명에 있어서, "부하"라는 용어는 대표적인 측정 제어 파라미터로서 사용될 것이다.
노드 처리기 이용도는 노드 과부하 상태의 지표인 대표적인 제어 파라미터로서 측정되고 감시된다. 이러한 지표는 과부하의 적절한 레벨에 매핑되고 대응하는 제어 동작이 적용된다. (단기간 및 장기간에서) 측정이 어떻게 수행되는지와 함께 시작하는 전체적인 프로세스가 하기에 설명된다. 처리기 이용도는 스위치에서 노드의 처리기(중앙 처리 유닛(CPU))가 사용 중인 시간의 비율에 대응한다. 이러한 측정에 도달하기 위해서, 처리기 사용 기간은 누산되고 측정 간격의 전체 길이에 의해 나누어진다. 이러한 정량(ration)은 처리기 이용도(processor utilization)로 칭해진다. 양호한 실시예에 있어서, 여러 측정 간격의 (예를들면, 지수 평활 기술(exponential smoothing technique)을 사용하는) 여과된 측도(filtered measure)가 사용된다. 만약 측정된 비율이 수용 가능한 적절한 레벨(일반적으로 40%-50%)보다 작다면, 상기 노드는 보통 상태에 있는 것으로 칭해지고, 하기에 논의되는 것처럼, 다른 모듈이 과부하 상태에 있지 않는 한 일반적으로 어떠한 과부하 동작도 필요 되어지지 않는다. 상기 비율이 80-90% 또는 그 이상의 레벨에 도달하면, 상기 모듈은 중요한 과부하 상태에 있을 것이며 어떤 동작이 적용되어야만 한다. 50%와 90%의 두 레벨 사이에서, 90% 레벨에서만큼 중요하지 않은 동작을 취할 것을 고려할 수 있을 것이다. 그러나, 동작을 취하지 않는 것은 적절하지 않다.
단기간 및 장기간 사이의 차이를 설명하기 위해서, 100ms(밀리초)의 간격동안 제어되지 않은 스위치에서 감시되고 있는 특정 노드 처리기는, 두 개별적인 측정(이하, 경우(A) 및 경우(B))에서 세 연속하는 간격동안, 하기의 측정 결과(이하, 제어 파라미터)를 나타낸다.
경우(A) : 80%, 40%, 50%
경우(B) : 80%, 75%, 90%
경우(A)에서, 노드가 첫 번째 100ms 간격동안 80%의 이용도에 있을지라도, 다음 두 간격에서 높은 이용도를 나타내지 않는다. 이것은 첫 번째 간격에서의 이용도가 동등하지만, 나머지 2 간격에서도 이용도가 높은 경우(B)와는 상이하다. 경우(A)는 단기간 제어 동작을 필요로 하고 경우(B)는 장기간 제어 동작을 필요로 하는 것으로 설명할 것이다. 먼저, 첫 번째 100ms 간격동안 양 경우(A 및 B)에서의 동작은 동일하다; 그러나, 다음 간격의 측정이 유효하게 되면, 경우(A)는 보통 동작 모듈을 나타내고 경우(B)는 초기에 관찰된 것보다 높은 비율에서 인입하는 신호를 차단하는 것과 같은 더 중요한 동작을 필요로 함을 나타낸다. (인입 신호의 차단의 비율과 같은) 동작의 중대도는 특정 모듈의 전체 수행 능력에 의존한다. 예를들면, 만약 모듈의 전체적인 수행 능력 측도(performance measure)가 세 번째 간격동안 경우(B)에서 너무 나빠서 이용도가 목표 이용도인 65%로 떨어지면, 목표 이용도가 75%인 경우보다 더 높은 차단 비율이 요구된다.
이 장에서의 표기와 개념은 순서도의 것과 유사하다. 시간 간격은 n으로 표시된다. 상기 실시예에서의 이들 간격은 T=100ms로 가정되었다. T=100ms 간격동안 이용도 측정의 결과를 관측하는 것에 부가해서, 단기간 제어 결정에 도달하는데 사용되는 연속 간격(T)의 수를 나타내는 크기(W(S))의 윈도우를 통해 이들 간격을 측정한다.
유사하게, W(L)은 장기간 제어 동작에 도달하는데 사용되는 연속적인 간격(T)의 수를 나타낸다. X(n)은 간격(n)동안 측정된 이용도를 나타낸다. 간격(n)동안 단기간 제어를 위해 사용되는 측도는 S(n)으로 표시된다. 이 측도는 하기의 표현과 같이 X(n)의 여과된 버전이다:
S(n)=a(1)X(n)+A(2)X(n-1)+…+a(W(S))X(n+1-W(S))
여기서 a(j)는 가장 최근의 측정으로부터 j번째 간격동안 측정된 이용도에 적용되는 여과(평활) 인자인데, a(1)은 가장 최근의 측정 간격에 대한 평활 인자이다. 소정 시간 간격(n)에서 측정된 S(n)은 지난 W(S) 연속 간격동안 이용도의 평활된 값을 반영한다. S(n)은 가장 먼저 측정된 값(X(n-W(S)))을 상기 샘플로부터 버리고, 상기 측정에 적용된 평활 계수를 하나씩 시프트함으로써 각 간격마다 갱신된다. 그 다음 새로운 측정 샘플이 W(S) 측정 세트에 가산된다.
유사하게, 간격(n)에서 장기간 측정된 값이 결정된다. L(n)에 대한 윈도우 크기는 W(L)인데, 여기서 W(L)>W(S)이다.
감시 및 제어 작업의 프로세스는 다음과 같다: 각각의 간격(n)에 대한 S(n) 및 L(n)의 값을 측정하고 저장한다. 각 간격의 시작에서, S(n)은 두 임계(X(min,k) 및 X(max,i))와 비교되는데, 여기서 i는 스위치 모듈의 현재의 단기간 과부화 "레벨"을 나타낸다. 예를들면, 정상 동작에서, 모듈이 시작되면, 과부하 레벨은 과부하가 없는 레벨, 즉 i=0에 있게 된다. 상기 임계는 그들이 특정 레벨(i)에 대해 수용 가능한 스위치 행동을 반영하도록 선택된다. 만약 측정된 값(S(n))이 이 레벨에서 X(max,i)를 초과하면, 상기 레벨은 다가오는 간격동안 레벨(i+1)로 변경된다. 유사하게, 만약 측정된 값(S(n))이 X(min,i) 이하이면, 상기 레벨은 다가오는 간격에서 레벨(i-1)로 변경된다. S(n)이 소정 레벨(i)로 떨어지면(즉 S(n))이 X(min,i)와 X(max,i) 사이에 있으면), 장기간 측정된 파라미터(L(n))를 점검할 필요가 없게 된다. 이러한 경우, 노드 과부하의 상태에 관한 결정이 이루어지고 레벨(i)에 대한 적절한 제어가 적용된다(이것은 레벨(i)을 위해 디자인된 단기간 과부하 제어 동작으로 구성될 것이다). 그러나, 만약 측정된 값(S(n))이 각 레벨에서 다음의 더 높은 임계를 단계적으로 초과한 이후에 가장 높은 레벨을 초과하면, 상기 노드는 단기간 과부하 레벨을 지나서 이제 장기간 과부하에 있게 된다. 이러한 경우, 측정된 파라미터(L(n))는 유사한 장기간 과부하 임계와 비교되고 적절한 제어가 적용된다.
각 단계에서, 노드는 자신의 현재 상태 레벨에서 1만큼씩 증가하거나 감소함을 주지하라. 노드의 상태가 가장 아래의 장기간 과부하 이하로 떨어지면, 이것은 가장 높은 단기간 과부하 레벨로 들어간다. 유사하게, 가장 높은 단기간 과부하 레벨을 초과하면 가장 낮은 장기간 과부하 레벨로 들어간다. 시스템이 가장 높은 장기간 레벨에 도달하면, 시스템은 상기 레벨에 머무르고; 노드의 상태가 가장 낮은 단기간 과부하 이하로 떨어지면, 과부하 상태를 전적으로 벗어난다.
도 1은 예증적인 스위칭 시스템의 다수의 모듈을 도시하는 블록도.
도 2는 과부하 레벨을 판정하고 한 모듈 내에서 상기 과부하에 자발적으로 응답하는 프로세스의 전체적인 순서도.
도 3 및 도 4는 오버플로우(overflow)의 레벨을 변경하고 장기간 및 단기간 오버플로우 레벨을 전환하는 오버플로우 응답 동작을 자발적으로 시작하는 프로세스를 나타내는 순서도.
도 5 및 도 6은 모듈이 그들 자신의 오버플로우의 지시와 다른 모듈에서의 지시에 어떻게 응답하는지를 나타내는 도면.
* 도면의 주요 부분에 대한 부호의 설명 *
10, 11 : 메시지 처리기
20, 21 : 접속 처리기
30, 31 : 네트워크 모듈
도 1은 본 발명의 양호한 일 실시예가 구현되는 스위치(1) 구조의 관련 양상을 도시한다. 상기 스위치는 버스 시스템(15)에 의해 상호 접속된 다수의 메시지 처리기(MP; 10, …, 11)를 포함한다. 상기 메시지 처리기는 접속 및 접속 해제 요구를 나타내는 메시지를 처리하기 위해서 서로 그리고 외부 스위치와 통신한다. 상기 메시지 처리기는 버스 시스템(15)을 통해 다수의 네트워크 모듈(30, …, 31)을 제어하기 위한 다수의 제어 처리기(20, …, 21)와 통신한다. 상기 메시지 처리기, 제어 처리기 및 네트워크 모듈 각각은 처리기의 요구되는 기능을 수행하고 하기에 더 설명될 과부하 제어 프로그램을 실행하기 위한 프로그램 제어 처리기 시스템을 포함한다.
도 2는 높은 레벨에서 모듈의 한 모듈에서 과부하 상태를 결정하는 프로세스를 도시한다. 동작 블록(Action Block; 201)은 단기간 과부하의 지시를 측정하기 위한 단기간 과부하 측정 간격(T(S))이 선택되었음을 나타낸다. 측정 간격(T(S))은 시스템이 초기화될 때 선택된다. 본 출원인의 양호한 실시예에 있어서, 장기간 과부하에 대한 측정 간격(T(L))은 T(S)와 동일하지만, 더 많은 간격이 제어와 평활화를 위해 사용된다. 다른 실시예에서 상기 간격은 동적으로 선택될 수 있다. 동작 블록(203)에서 단기간 과부하를 결정하는 다수의 연속하는 측정을 관측하기 위한 윈도우(W(S))가 선택된다(동작 블록(203)). 이 윈도우는 또한 초기화시에 선택된다. 동작 블록(205)에서, 장기간 과부하의 레벨을 결정하는 다수의 연속하는 과부하 측정을 관측하기 위한 윈도우(W(L))가 선택된다. 또한, W(L)은 초기화시에 선택된다. 고용량의 모듈을 갖는 고용량의 스위치에 대한 전형적인 값은 T(S)=0.1ch, W(S)=3, W(L)=10이다. 이들 값으로 장기간 및 단기간 과부하 측정은 매 0.1초마다 행해지고 단기간 과부하 상태를 감시하기 위해 0.3초의 주기마다 그리고 장기간 과부하 상태를 변경하기 위해 1초의 주기마다 여과된다.
상이한 시스템 수행 능력 측도, 또는 단기간 및 장기간 과부하 상태를 검출하기 위한 자극 파라미터를 측정하는 것은 가능하다. 이러한 경우, 상이한 제어 파라미터뿐만 아니라 (단기간 및 장기간 측정 간격에 각각 대응하는) T(S) 및 T(L)은 독립적으로 선택될 수 있다.
n 번째 간격에 대한 제어 파라미터(X(n))는 각각의 간격에 대해 측정되고 이전의 W(L) 측정은 저장된다(동작 블록(207)). 이들 값은 그 다음 동작 블록(209)에서 사용되어 측정의 여과된 버전을 결정한다. 동작 블록(209)에서 결정된 측정된 제어 파라미터에 기초해서, 과부하의 존재가 검출된다; 만약 과부하가 이전에 검출되었다면, 과부하 레벨은 도 3 및 도 4의 교시(teachings)에 따라 조정된다.
본 발명의 양호한 실시예에 있어서, 단기간 과부하 제어의 가장 높은 레벨은 만약 과부하가 증가하면 장기간 과부하의 가장 낮은 레벨로 나타나고, 장기간 과부하 제어의 가장 낮은 레벨은 만약 과부하가 감소하면 단기간 과부하의 가장 높은 레벨로 나타난다. 동작 블록(207, 209 및 211)은 작업 시스템에서 실시간으로 수행된다. 제어 파라미터는 예를들면 시스템이 초기화된 이후의 시간을 본질적으로 나타내는 간격동안 측정된다. 상기 간격동안, 부하의 제어 파라미터 측정은 X(n)이다. 제어 파라미터의 현재 값 및 여러 이전 값에 기초해서, 단기간 및 장기간 부하 각각에 대한 S(n) 및 L(n)이 계산된다. S(n)을 계산하기 위한 전형적인 수학식은 S(n)=a(1)X(n)+a(2)X(n-1)+a(3)X(n-2)이다. 이러한 여과 기능(filtering function)으로, 부하 측정의 단지 세 개의 가장 최근의 값이 사용된다. 이러한 전형적인 예에 있어서 a(1)은 0.5이고 a(2)는 0.4이며 a(3)는 0.1이다. 장기간 제어 파라미터(L(n))를 계산하는 경우에 대해, 여과된 장기간 부하를 생성하기 위해 일련의 10 개의 측정이 사용되고 여과 기능을 위해 일련의 10 개의 계수가 사용되는 점을 제외하면 동일한 기술이 사용된다. 일 실시예에서 상기 10 개의 계수(b(1), b(2), …, b(10))는 (0.23, 0.7, 0.11, 0.1, 0.09, 0.08, 0.07, 0.06, 0.05 및 0.04)의 값을 갖는다.
상기 실시예에서, 상기 여과는 현재 및 이전 간격으로부터의 가중된 제어 파라미터의 단순한 선형적인 합인데, 지수 평활화와 같은 다른 여과 방법이 사용될 수 있다. 기술적인 분야에서 능숙한 자는 이러한 데이터의 여과 프로세스를 잘 이해한다.
여러 처리기와 구조의 상태 레벨이 결정된 후, 제어를 적용하는 두 가능성이 존재한다.
1. 스위치의 각 노드에 의한 자발적 동작:
이 경우, 각 처리기 또는 구조는 독립적인 동작을 취한다. 이것은 각 과부하 레벨에 대응하는 한 동작이다. 이러한 형태의 제어는 일반적으로 국부적 최적화 수행(sub-optimal performance)으로 나타난다. 그러나, 이것은 다른 접근 방법보다 비용이 더 저렴한데 그 이유는 중앙 제어기가 필요 없기 때문이다. 이러한 경우의 중앙 제어기의 신뢰성은 문제가 되지 않는다. 또한 전체적 시스템 관찰을 정의할 수 있도록 하기 위해서 많은 모듈의 상태 정보를 수집하고 처리하는 비용이 절감된다.
2. 통합(전체) 시스템 상태 접근:
스위치 노드가 요즘 더 신뢰적이고 처리비용이 급속하게 감소하고 있기 때문에, "전체적" 시스템 상태를 생성하기 위해서, 중앙 처리기 또는 각각의 처리기에서 각각의 노드 상태를 결정하고 결합될 수 있다고 가정하는 것이 가능하다. 이러한 통합된 경우의 동작은, 개개의 노드 상태보다는, 전체적으로 관측되는 시스템 상태에 기초한다. 통합 제어를 갖는 분산 스위치는 자발적 과부하 제어 형태보다 우수한 과부하 수행 능력을 갖는다.
장기간 과부하가 보다 심각한 상태이기 때문에, 한 장치는 어떠한 모듈도 장기간 과부하 상태에 있지 않는 한 자발적 동작을 사용하고, 임의의 모듈이 장기간 과부하 상태에 들자마자 통합 동작으로 전환할 것이다. 명백하게는, 이러한 스위치는 모듈의 과부하 상태에 기초한 몇 몇 다른 표준에 따라 수행될 수 있다.
많은 환경에 있어서, 분산 스위치의 상이한 처리기, 또는 구조는 이질적이고; 따라서, 각각의 처리기 및 구조에 대해 상이한 측정 간격을 선택하는 것이 유익하다. 예를들면, 더 긴 측정 간격이 더 느린 처리기 및 구조에 대해 선택될 수 있고, 더 짧은 측정 간격이 더 빠른 처리기 및 구조에 대해 선택될 수 있다. 그러나, 이러한 모든 측정은 과부하 동작을 결정하기 위해 궁극적으로 사용되는 상태의 집합으로 매핑 되어야만 한다. 예를들면, 버퍼 크기가 스위치의 메시지 처리기(예를들면 MP(10))의 과부하 상태를 결정하는데 적절한 측도(measure)일 수 있지만, 버퍼가 없는 구조(예를들면, 네트워크 모듈(31))의 경우에, 이러한 측정은 유효하지 않고 따라서 적용될 수 없다. 후자의 경우에, 현존하는 접속의 수, 또는 미해결 접속 요청(outstanding call requests)의 수와 같은 상이한 크기, 또는 구조 전용 크기가 측정 및 제어를 위해 더 적절할 것이다.
유사하게, 단기간 및 장기간 측정을 위한 윈도우 크기는 상이하게 선택될 것이다.
또한, 이전의 측정값에 기초하여 미래의 측정 간격이 조정되는 것이 적절할 것이다. 측정 간격의 동적 조정은 또한 그때의 상황 또는 상이한 구조 및/또는 처리기에서 제어 파라미터의 실제 측정의 결과로서 발생할 것이다.
도 3 및 도 4는 과부하 레벨로 들어가고, 단기간 또는 장기간 과부하 제어 시스템내에서 과부하 제어 동작을 변경하며, 단기간 및 장기간 과부하 제어 사이에 들어가는 프로세스를 도시한다. 도 3은 동작 블록(301)에서 시작된다. 과부하 제어(i)의 허용 가능한 현재 레벨의 하나는 과부하가 없음을 나타내는 레벨(0)이다. 이것은 시스템이 초기화될 때 들어가는 상태이다. 블록(301)에서, 단기간 과부하 측도(S(n))가 계산된다. 이러한 단기간 제어 파라미터는 단기간 과부하 상태의 현재 레벨(i)과 관련된 제어 파라미터의 최대 값과 비교된다(테스트(303)). 만약 부하가 상기 임계를 초과하지 않으면, 제어 파라미터가 레벨(i)에 대한 최소 임계 이하에 있는지를 결정하기 위해서 테스트(305)가 사용된다. 만약 그렇지 않다면, 즉 만약 두 테스트(303 및 305)의 결과가 부정적이라면, 제어 파라미터가 현재 과부하의 레벨 내에 있으며, 상기 모듈이 상기 레벨에 머무르게 됨을 나타낸다(동작 블록(307)). 다음의 여과된 제어 파라미터 샘플을 계산하기 위해서 동작 블록(301)이 다시 시작된다.
테스트(303)의 결과가 긍정적이라면, 즉 만약 제어 파라미터가 현재 레벨의 최대 임계를 초과하면, 단기간 과부하의 최고 높은 레벨이 초과되는지를 결정하기 위해서 테스트(311)가 사용된다. 만약 그렇지 않다면, 과부하 레벨은 그 다음으로 큰 단기간 과부하 레벨로 증가되고, 다음의 여과된 부하 값을 기다리기 위해 동작 블록(301)이 시작된다. 유사하게, 만약 테스트(305)의 결과가 긍정적이라면, 즉 만약 부하가 현재 과부하 레벨의 바닥 임계보다 작다면, 상기 레벨은 감소되고(동작 블록(315)), 다음의 여과된 단기간 제어 파라미터 값을 계산하기 위해 동작(301)이 다시 시작된다. (명백하게도, 과부하가 없음을 나타내는 i=0의 경우에 대한 최소 임계는 존재하지 않기 때문에 테스트(305)의 긍정적인 결과는 더 낮은 레벨, 어쩌면 i가 0 과 동일한 레벨이 존재함을 의미한다.)
만약 테스트(311)의 결과가 긍정적이라면, 즉 만약 단기간 과부하의 가장 높은 레벨에 대한 최대 임계가 초과되면, 도 4의 동작 블록(321)이 시작된다. 테스트(311)로부터 동작 블록(321)이 시작될 때, 장기간 과부하 제어(j)의 초기값은 1이다(도 3의 동작 블록(312)). (도 2 및 도 3에서 설명의 편의상, j=1이 가장 낮은 장기간 과부하 상태인 것으로 가정되었다. 실제에 있어서, j의 가장 낮은 값은 i의 가장 높은 값보다 하나 더 클 것이다.) 동작 블록(321)은 부하가 장기간 과부하의 현재 레벨 내에 있는지를 결정하기 위해서 부하의 장기간 여과를 계산한다. 현재 부하가 장기간 과부하 제어의 현재 레벨에 대한 최대 임계를 초과하는지를 결정하기 위해서 테스트(323)가 사용된다. 만약 그렇지 않다면, 제어 파라미터가 장기간 과부하 제어의 현재 레벨에 대한 최소 임계보다 작은지를 결정하기 위해서 테스트(325)가 사용된다. 만약 두 테스트(323 및 325)의 결과가 부정적이라면, 과부하 제어가 현재 레벨에 남아 있고 동작 블록(321)이 다시 시작됨을 나타내는 동작 블록(327)이 시작된다.
만약 현재 레벨에 대한 최대 임계가 초과되었음을 동작 블록(323)이 나타내면 과부하 제어 레벨은 증가되고(동작 블록(329) 동작 블록(321)이 다시 시작된다.
만약 현재 여과된 부하가 현재의 장기간 과부하 상태에 대한 최소 임계보다 작다면, (테스트(325)의 긍정 결과), j가 이미 레벨(1)에 있는지를 결정하기 위해 테스트(331)가 사용된다. 만약 그렇다면, j는 0으로 감소되고, 동작 블록(301)은 i가 자신의 최고 높은 레벨을 가지면서 다시 시작된다(동작 블록(332)). 만약 테스트(331)의 결과가 부정적이라면, 즉 장기간 과부하 레벨이 단기간 과부하 레벨로 들어가지 않으면서 계속 감소될 수 있다면, j는 감소되고 L(n)의 다음 값을 계산하기 위해서 동작 블록(321)은 다시 시작된다.
도 3 및 도 4의 순서도에 의해 특정되는 프로그램을 실행한 결과는, 과도한 부하의 경우, 여과된 단기간 부하가 여러 임계를 초과하면 점차적으로 증가되는 단기간 과부하 레벨이 시작되고; 가장 높은 임계가 초과되면, 장기간 과부하 레벨이 시작되고 여과된 장기간 부하가 여러 장기간 과부하 임계를 초과하면 장기간 과부하 레벨이 감소된다는 것이다.
유사하게, 부하의 감소는 과부하 레벨이 감소되도록 되고 장기간 과부하 레벨에서 단기간 과부하 레벨로 탈출하는 것을 허용한다.
이 부분에서는, 제어 동작(자발적 제어)이 단기간 또는 장기간 과부하를 갖는 모듈에 제한되고, 모듈에 대한 제어 동작은 상기 모듈의 과부하 레벨에 대응한다. 그러나, 여러 또는 모든 모듈의 동시적인 상태에 기초하여 과부하 제어를 변경하는 것이 때로는 바람직하다(통합 제어). 예를들면, 단일의 MP(10) 및 단일의 CP(20)를 구비하는 시스템을 고려하자. 만약 MP와 CP 둘 다가 정상적인 상태 또는 단기간의 과부하 상태에 있다면 정상적인 또는 단기간의 과부하 제어가 각각의 모듈 내에서 야기된다. 그러나, 만약 어느 한 모듈이 두 장기간 과부하 레벨의 하나에 있다면, 후속 동작이 수행되고, 상기 동작 결과는 자발적 제어보다 우수한 과부하 수행 능력을 나타낸다.
1. 낮은 장기간 과부하에 있는 접속 처리기, 장기간 과부하에 있지 않은 메시지 처리기: 메시지 처리기는 확률(P(1))로 새롭게 인입하는 접속을 차단한다. 접속 처리기는 스로틀 레벨(throttle level; 1)로 트래픽(traffic)을 스로틀할 것을 외부 스위치로 통지한다.
2. 높은 단기간 과부하 상태의 접속 처리기, 장기간 과부하 상태에 있지 않은 메시지 처리기: 메시지 처리기는, P(1)보다 큰 확률(P(2))로 새롭게 인입하는 접속을 차단한다. 접속 처리기는 트랙픽을 더 스로틀할 것을 외부 스위치에 통지한다(스로틀 레벨(2)).
3. 장기간 과부하 상태의 메시지 처리기, 장기간 과부하 상태에 있지 않은 접속 처리기: 메시지 처리기는 오버헤드 메시지 처리를 지연시키고 새롭게 인입하는 접속을 확률(P(3))로 차단하는데, 여기서 P(3)>P(2)이다. 접속 처리기는 자신의 오버헤드 메시지 처리(overhead message processing)를 감소시킨다.
4. 낮은 장기간 과부하 상태의 접속 처리기, 장기간 과부하 상태의 메시지 처리기: 메시지 처리기는 오버헤드 메시지 처리를 지연시키고 새롭게 인입하는 접속을 P(4)의 확률로 차단하는데, 여기서 P(4)>P(3)이다. 접속 처리기는 스로틀 레벨(1)에서 트래픽을 스로틀할 것을 자신의 인입 스위치로 통지한다.
5. 높은 장기간 과부하 상태의 접속 처리기, 장기간 과부하 상태의 메시지 처리기: 메시지 처리기는 자신의 오버헤드 메시지 처리를 지연시키고 새롭게 인입하는 접속을 P(5)의 확률로 차단하는데, P(5)는 P(4)보다 크다. 접속 처리기는 스로틀 레벨(2)에서 트래픽을 스로틀할 것을 자신의 발원 스위치(originating switches)로 통지한다.
이 실시예에서, 유사한 처리기 사이에서 부하를 보다 균등하게 균형을 맞추는 동작을 고려하지 않았다. 종래 기술에서 널리 알려진 상기 기술은 유사한 처리기 사이에서 부하의 균형을 맞추어, 일반적으로, 모든 유사한 처리기가 동일한 또는 거의 동일한 과부하 레벨에 있도록 하기 위해 사용되는 것으로 가정된다. 이들이 동일하지 않을 정도까지, 상기 시스템 응답은, 한 종류의 처리기의 단지 몇 개가 특정 형태의 가장 심하게 과부하가 걸린 처리기의 장기간 과부하 레벨에 있는 경우, 시스템 과부하 제어의 더 낮은 레벨이 야기되도록 수정될 수 있다. 예를들면, 상기 실시예에서 두 개의 메시지 처리기가 존재하고, 이들 중 단지 하나만이 장기간 과부하 레벨에 있으면, 네 번째 과부하 카테고리(스로틀 레벨(1), P(4)의 확률로 새롭게 인입하는 접속이 차단됨)와 관련된 시스템 과부하 응답이 바람직하다.
도 5는 통합 시스템 상태 접근의 일 실시예를 도시한다. 초기에 할당 가능하고 트러블이 있을 때 재할당되는 중앙 집중화된 처리기는 시스템의 각 모듈의 과부하 상태를 수집한다. 이 처리기는 그 다음 세미-마르코프(semi-Markov) 결정 프로세스 또는 다른 발견적 교수법(heuristic)의 어플리케이션을 통하거나, 또는 미리 저장된 벡터, 각 모듈을 특정하는 벡터를 통해서 적절한 응답 동작을 유도한다. 중앙 집중화된 처리기는 그 다음 시스템의 각 모듈에서 수행될 동작 상태를 특정하는 동작 벡터를 계산한다(동작 블록(503)). 그 다음 상기 모듈은 다음 간격에 대한 동작 상태를 통지받는다. 이 프로세스는 규칙적인 간격으로 반복된다.
3 모듈(M1, M2 및 C1)로 구성된 스위칭 시스템을 고려하자. 각 모듈은 그들 각각의 상태를 결정하는데 사용되는 여러 임계를 갖는다. 앞서 언급한 바와 같이, 이들 임계는, 과부하 측도에 중요하게 고려되는, 버퍼 크기, 큐 크기, 처리기 초기화 등의 레벨이다. S=(S(1), S(2), S(3))가 몇 몇 관측 간격에서 시스템 상태를 나타낸다고 가정하자. 여기서, S(1)는 M(1)에 대한 상태(예를들면, 점유된 버퍼 길이, 점유된 큐 길이, 처리기 이용도)이고, S(2)는 M(2)에 대한 상태이며, S(3)는 C(1)에 대한 상태이다. 예증적인 발견적 교수법 상태/동작이 하기의 표 1에 도시된다:
S(1) S(2) S(3) A(1) A(2) A(3)
0 0 0 0 0 0
1 0 0 0 0 0
1 1 0 1 0 0
1 1 1 1 1 0
2 0 0 2 1 0
2 1 1 2 2 1
시스템 상태가 S=(0,0,0)일 때, 이것은 어떠한 모듈에도 과부하가 존재하지 않는 상태에 대응하며, A=(0,0,0)은 임의의 모듈에 어떠한 동작도 없는 것에 대응한다. S=(1,0,0)은 M(1)이 과부하 레벨(1)에 있고 M(2) 및 C(1)이 과부하 상태에 있지 않음을 나타내며, A=(0,0,0)은 어떠한 모듈에도 동작이 존재하지 않음을 나타낸다. 발견적으로(heuristically), 이것은 한 모듈의 상태에서의 약간의 변화가, 그것이 보다 심각하게 되지 않으면 동작을 취할 필요가 없는 교란인 것으로 가정되기 때문이며, S=(1,1,0)일 때, 모듈(M(1))만이 동작 "1"을 취한다. 이 동작은, 예를들면, O, A 및 M 동작을 지연시키는 것에 대응한다.
통합 접근에서 사용된 측정 방법은 자발적/독립적 경우와 동일하다. 자발적/독립적 경우에서처럼, 측정의 단기간 및 장기간 간격이 존재하며, 가장 높은 단기간 과부하 레벨을 벗어난 후, 특정 모듈은 가장 낮은 장기간 과부하 레벨로 들어간다. 통합된 경우에 차이를 만드는 것은 자기 자신의 상태에만 기초하여 특정 모듈에서의 동작을 결정하는 것보다는 상기 결정이 모든 모듈의 상태의 총괄적인 세트에 기초한다는 것이다. 따라서, 이전 표 1의 실시예에서, "0"은 M(1)에 대한 가장 낮은 장기간의 상태를 나타낸다. 표 1에서 M(1)이 가장 낮은 장기간 과부하 상태에 있고, M(2) 및 C(1)이 과부하 상태가 아닌 S=(2,0,0)일 때, 대응하는 동작은 A=(2,1,0)으로 나타내어진다. 이러한 동작은, 예를들면, 소정의 비율(예를들면 5%)로 M에서의 접속 차단과, 동시에 M(2)에서의 동작, 관리 및 유지(O, A 및 M) 처리의 지연(실시예에서 동작 "1"로 언급), C(1)에서의 "아무것도 하지 않음(do nothing)"에 대응한다. 이러한 동작(A=(2,1,0))은 상기 표 1에서의 S=(2,1,1)일 때의 동작에 대조를 이룬다. 후자의 경우에 있어서, M(1)은 가장 낮은 장기간의 과부하에 있으며, M(2) 및 C(1)은 이들 모듈의 약간의 단기간의 상태에 대응하는 상태("1")에 있는 것으로 발견된다. 이 경우, A=(2,2,1)는 M(1)에서 5%의 차단, M(2)에서 5%, 및 C에서 O, A 및 M을 지연시키는 것에 대응한다. 모듈이 이질적일 때, 상태("1", 또는 "2", 또는 ...)는 상이한 과부하 상태를 의미하며 동작("1", "2", 등)도 또한 상이한 동작을 의미할 것이다. 예를들면, 상기의 실시예에 있어서, 만약 M(2)이 M(1)보다 2 배 빠르다면, S(2)=1은 S(1)=1보다 더 큰 버퍼 크기를 의미할 수 있다. 유사하게, A(2)=2는 2% 차단을 A(1)=2는 5%의 차단을 의미할 수 있다.
보다 일반적으로, 과부하를 제어하기 위한 최적의 장치는 하나의 처리기가 시스템의 각 모듈의 부하 상태를 연속적으로 감시하고, 이들 모듈 전체의 상태에 기초하여, 과부하 제어를 이들 모듈 중 적절한 모듈에 선택적으로 적용한다. 이러한 장치는 각 모듈에서 최적의 응답을 결정하기 위해 복잡한 계산을 필요로 할 수도 있다. 부하의 연속적인 측정을 사용하는 대신, 부하 측정은 상기 상술된 자발적 과부하 제어에 대한 측정 간격과 같은 신중한 간격에서 제공될 수 있다. 또한, 부하의 정확한 값을 사용하는 대신, 상기 상술된 과부하 레벨은 각 모듈의 부하 특성을 상술하기 위해 사용될 수 있다. 다른 타협점은 적어도 하나의 모듈이 장기간의 과부하 상태에 있을 때만 시스템 제어가 야기되는 특정 시스템에 대해 야기될 것이다. 여전히 또 다른 타협점은 제어 처리기가 각각의 모듈에 부과할 수 있는 전체적인 부하 제어 응답으로서 선택된 과부하 제어 레벨만의 사용일 것이다.
도 5는 과부하 제어에 대한 통합 시스템 접근의 사용을 위한 일반적인 방법이다. 예증적인 시스템은 도 2에 도시된 것인데, 세 그룹의 처리기(MP(10), …, MP(11); CP(20), …, CP(21); 및 N(30), …, N(31))를 포함한다. MP(10), …, MP(11); 및 CP(20), …, CP(21)는 동질의 처리기 그룹이며 따라서 임의의 처리기가 임의의 입력 메시지를 처리할 수 있고 임의의 접속 처리기가 메시지 처리기로부터의 임의의 출력 메시지를 처리할 수 있다. 자발적인 경우를 위해서, 각 처리기는 단순히 자기 자신의 부하를 계산하고 상기 부하에 기초해서, 과부하 제어 동작의 대응하는 그룹을 특정하는 과부하 레벨을 유도한다. 대조적으로, 통합된 시스템의 경우에 있어서, 각 처리기는 자신의 과부하 레벨을 계속 계산하고, 이 레벨을 과부하 수(overload number), 또는 과부하 레벨로서 중앙 집중화된 처리기로 전송한다. 중앙 집중화된 처리기는 시스템의 처리기 각각에 실제 어떠한 과부하 제어 레벨이 적용되었는지를 결정하는 작업을 갖는다. 일 실시예에 있어서, 중앙 집중화된 처리기는 만약 적어도 하나의 처리기가 장기간의 과부하 레벨에 대응하는 부하를 갖지 않으면 임의의 처리기의 과부하 제어 레벨을 조정하지 않는다. 이러한 경우에, 도 5에 대해 상기 상술된 동작은 하나 이상의 처리기가 장기간의 과부하에 있을 때만 실행된다. 다르게는, 도 5에 대해 상술된 동작은 시스템의 처리기의 어느 것도 장기간의 과부하에 대응하는 부하를 갖지 않을지라도 실행된다.
도 6은 덜 일반적이지만 중앙 집중화된 처리기에 필요 되어지는 계산량이 크게 감소되는 이점을 갖는 방법을 도시한다. 도 6의 방법의 기본적인 정신은 다른 처리기의 과부하의 효과가 처리기의 부분적인 각 그룹, 즉 MP, CP, 및 N의 "평균" 과부하만을 고려함으로써 단순화될 수 있다. 기본적인 접근법은 특정 처리기의 과부하 레벨에 관한 동작 레벨을 조정하는 두 방법을 사용한다. 먼저, 만약 처리기가 그룹 내의 다른 처리기의 과부하 레벨로부터 훨씬 이동된 과부하 레벨을 갖는 경우, 동작 레벨은 상기 그룹의 처리기의 과부하 레벨을 향해 위 또는 아래로 조정된다. 두 번째로, 만약 그룹의 "평균" 과부하 레벨이 인접한 그룹의 과부화 레벨과 실질적으로 상이하다면, 그룹 멤버의 동작 레벨은 인접한 그룹의 과부하 레벨을 향해 조정된다. 효과적으로, 두 형태의 조정은 (그룹 내에서) 수평적으로 (그룹에서 그룹으로) 수직적으로 동작 레벨을 "평평하게 한다(flatten)".
이것은 도 6에 도시된다. 중앙 집중화된 처리기는 각 처리기의 과부하 상태를 보고 받는다(동작 블록(601)). 이 보고는 변화가 발생한 곳으로만 전송되는 것이 바람직하다. 중앙 집중화된 처리기는 그룹에 대한 "평균" 과부하 레벨을 유도한다. 이 "평균"은 그룹 내에서 더 높은 과부하 상태를 향해 가중될 수 있는데 그 이유는 과부하 사이의 갭이 모든 과부하 상태 전이에서 반드시 동일한 것은 아니다. "평균" 과부하 레벨은 또한 정수일 필요가 없으며, 분수를 포함할 수 있다. 이 때 두 형태의 조정은 상기 처리기에 대한 동작 레벨을 유도하기 위해서 각 처리기의 과부하 레벨에 대해 행해진다. 만약 더 높은 과부하 상태에 대해 적절하게 가중도고, 시스템에서 실험적으로 조정된, 소정량 이상의 실질적인 차이가 존재하면, 처리기 그룹의 평균 동작 레벨은 인접한 처리기 그룹의 더 높은 과부하 레벨을 향해 조정된다. 다음에, 만약 처리기의 과부하 레벨이 처리기의 평균 과부하로부터 제 2의 적절하게 가중된 소정량 만큼 차이가 나면, 상기 처리기의 동작 레벨은 평균을 향해 조정된다. 상기 조정은 분수적(fractional)이고 누적(cumulative)될 수 있으며, 과부하 레벨과 비교해서 동작 레벨의 정수 조정으로 된다. 일반적으로, 상기 조정은 동작 레벨과 이전 레벨 사이의 단일 단계보다 크지 않을 것이다. 새로운 제어 동작 레벨은 그 동작 상태가 변경된 각각의 처리기로 전송된다(동작 블록(609)). 통합된 제어의 경우에 있어서, 제어 동작 레벨의 수는 각 모듈의 과부하 레벨의 수보다 클 것이다.
기능 그룹(functional group) 내의 비동질 처리기의 경우에 대해서, 개별적인 처리기의 상태는 그룹의 평균을 유도함에 있어서 가중될 수 있다. 예를들면, MP 중 하나가 다른 것 보다 느리다면, 그 과부하 상태는 그룹의 과부하 상태를 유도함에 있어서 덜 가중되어야만 한다.
본 발명의 일 실시예에 관해서 설명되었다. 많은 다른 변형예가 기술적인 분야에서 능숙한 자에 의해 발견될 수 있을 것이다. 본 발명은 첨부된 특허청구범위에 의해서만 제한된다.

Claims (5)

  1. 다수의 모듈을 포함하는 분산 실시간 시스템에서, 과부하에 응답하는 방법에 있어서,
    상기 시스템의 중앙 처리기에서, 상기 시스템의 각 모듈로부터의 부하 지시를 수신하는 단계와;
    상기 부하 지시의 수신에 응답하여, 상기 모듈 각각에 대한 제어 동작을 유도하는 단계; 및
    상기 모듈 각각으로 자신의 제어 동작을 통지하는 단계를 포함하는 과부하 응답 방법.
  2. 제 1항에 있어서, 상기 부하 지시는 장기간 및 단기간의 과부하 레벨을 포함하고, 상기 장기간 과부하 레벨은 상기 단기간의 과부하 레벨보다 더 긴 시간동안 취해진 측정에 기초하는 과부하 응답 방법.
  3. 제 2항에 있어서, 상기 모듈의 적어도 하나가 장기간의 과부하 레벨에 있는 경우 상기 중앙 처리기는 상기 모듈로 요구된 제어 동작의 통지를 시작하고, 상기 모듈의 각각은 상기 중앙 처리기로부터 어떠한 요구된 제어 동작도 수신되지 않는 경우에 제어 동작을 자발적으로 도출하는 과부하 응답 방법.
  4. 제 1항에 있어서, 상기 중앙 처리기는 모듈의 각 그룹에 대한 평균 과부하 레벨을 도출하고, 상기 모듈은 다수의 그룹으로 기능적으로 그룹화되며, 특정 모듈에 대해 요구된 상기 제어 동작은 상기 특정 모듈의 과부하 레벨, 상기 특정 모듈이 속하는 한 그룹의 평균 과부하 레벨, 및 특정 모듈이 속하는 상기 그룹에 인접한 그룹의 평균 과부하 레벨에 기초하는 과부하 응답 방법.
  5. 제 2항에 있어서, 상기 중앙 처리기는 모듈의 각 그룹에 대한 평균 과부하 레벨을 도출하고, 상기 모듈은 다수의 그룹으로 기능적으로 그룹화되며, 특정 모듈에 대해 요구된 상기 제어 동작은 상기 특정 모듈의 과부하 레벨, 상기 특정 모듈이 속하는 한 그룹의 평균 과부하 레벨, 및 특정 모듈이 속하는 상기 그룹에 인접한 그룹의 평균 과부하 레벨에 기초하는 과부하 응답 방법.
KR1019980046739A 1997-10-29 1998-10-29 분산된실시간시스템에서과부하에응답하는방법 KR100334871B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US8/959,936 1997-10-29
US08/959,936 US6134216A (en) 1997-10-29 1997-10-29 Integrated overload control for overload control for distributed real time systems
US08/959,936 1997-10-29

Publications (2)

Publication Number Publication Date
KR19990037569A true KR19990037569A (ko) 1999-05-25
KR100334871B1 KR100334871B1 (ko) 2002-10-11

Family

ID=25502602

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980046739A KR100334871B1 (ko) 1997-10-29 1998-10-29 분산된실시간시스템에서과부하에응답하는방법

Country Status (6)

Country Link
US (1) US6134216A (ko)
EP (1) EP0913772B1 (ko)
JP (1) JPH11265365A (ko)
KR (1) KR100334871B1 (ko)
CA (1) CA2249691C (ko)
DE (1) DE69838204T2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100298969B1 (ko) * 1997-10-29 2001-10-29 루센트 테크놀러지스 인크 분산 실시간 시스템용 자발적 과부하 제어
KR20020022907A (ko) * 2000-09-21 2002-03-28 문홍주 부하 분산장치의 성능개선 및 고속동작을 위한 구성방법및 그시스템

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6327361B1 (en) * 1998-07-13 2001-12-04 Lucent Technologies Inc. Multivariate rate-based overload control for multiple-class communications traffic
US6434713B1 (en) * 1998-09-03 2002-08-13 Lg Information & Communications, Ltd. Processor management method of mobile communication home location register (HLR) system
US7584472B1 (en) * 1999-02-08 2009-09-01 Alcatel-Lucent Canada Inc. Method and apparatus for processing call signaling messages
US6591301B1 (en) * 1999-06-07 2003-07-08 Nortel Networks Limited Methods and systems for controlling network gatekeeper message processing
US6917819B2 (en) * 2001-12-31 2005-07-12 Samsung Electronics Co., Ltd. System and method for providing a subscriber database using group services in a telecommunication system
US7366521B2 (en) * 2001-12-31 2008-04-29 Samsung Electronics Co., Ltd. Distributed identity server for use in a telecommunication switch
US6947752B2 (en) * 2001-12-31 2005-09-20 Samsung Electronics Co., Ltd. System and method for distributed call processing using load sharing groups
GB0207507D0 (en) * 2002-03-28 2002-05-08 Marconi Corp Plc An apparatus for providing communications network resource
US20030210649A1 (en) * 2002-05-03 2003-11-13 Bondi Andre B. Managing network loading by control of retry processing at proximate switches associated with unresponsive targets
US7783759B2 (en) * 2002-12-10 2010-08-24 International Business Machines Corporation Methods and apparatus for dynamic allocation of servers to a plurality of customers to maximize the revenue of a server farm
US6912481B2 (en) * 2003-03-14 2005-06-28 Ge Medical Systems, Inc. Medical equipment predictive maintenance method and apparatus
US7539748B2 (en) * 2003-05-16 2009-05-26 Time Warner Cable, A Division Of Time Warner Entertainment Company, L.P. Data transfer application monitor and controller
US7512949B2 (en) * 2003-09-03 2009-03-31 International Business Machines Corporation Status hub used by autonomic application servers
DE10341071B3 (de) * 2003-09-05 2005-03-24 Siemens Ag Verfahren zur Überlastabwehr, besonders für Call Processsing Plattformen
US8463282B2 (en) * 2003-12-03 2013-06-11 Qualcomm Incorporated Overload detection in a wireless communication system
JP4058038B2 (ja) * 2004-12-22 2008-03-05 株式会社日立製作所 負荷監視装置および負荷監視方法
US8559514B2 (en) * 2006-07-27 2013-10-15 Qualcomm Incorporated Efficient fetching for motion compensation video decoding process
US8838774B2 (en) 2007-08-21 2014-09-16 Inmon Corporation Method, system, and computer program product for identifying common factors associated with network activity with reduced resource utilization
US8427950B2 (en) * 2007-08-28 2013-04-23 Inmon Corporation Method, system, and computer program product for identifying common factors associated with network threshold violations
US8224955B2 (en) 2009-05-07 2012-07-17 International Business Machines Corporation Ensuring affinity at all affinity domains by folding at each affinity level possible for a partition spanning multiple nodes
CN102096605B (zh) * 2011-02-17 2012-10-03 成电汽车电子产业园(昆山)有限公司 一种嵌入式实时操作系统中多级资源管理的实现方法
CN104424017B (zh) * 2013-08-21 2017-06-30 中国科学院沈阳计算技术研究所有限公司 一种适用于数控系统的容错低功耗调度方法
KR101968816B1 (ko) 2017-05-23 2019-08-13 지병욱 기능성 차 우림 물병

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01318344A (ja) * 1988-06-17 1989-12-22 Fujitsu Ltd 発信規制方式
JPH04123252A (ja) * 1990-09-14 1992-04-23 Agency Of Ind Science & Technol マルチプロセッサ・システムの負荷分散制御方式
JPH0589046A (ja) * 1991-09-28 1993-04-09 Kyushu Nippon Denki Software Kk Cpu高負荷による業務の規制方法及び装置
IL99923A0 (en) * 1991-10-31 1992-08-18 Ibm Israel Method of operating a computer in a network
GB2272085A (en) * 1992-10-30 1994-05-04 Tao Systems Ltd Data processing system and operating system.
EP0645702B1 (de) * 1993-09-24 2000-08-02 Siemens Aktiengesellschaft Verfahren zum Lastausgleich in einem Multiprozessorsystem
JPH07302242A (ja) * 1994-04-30 1995-11-14 Mitsubishi Electric Corp 負荷分散方式
JP3166118B2 (ja) * 1994-09-09 2001-05-14 日本電信電話株式会社 サービス制御ノードにおける自律輻輳制御方法
FR2727540B1 (fr) * 1994-11-30 1997-01-03 Bull Sa Outil d'aide a la repartition de la charge d'une application repartie
JPH08185377A (ja) * 1994-12-28 1996-07-16 Mitsubishi Electric Corp 分散計算機システム
JPH08272750A (ja) * 1995-03-30 1996-10-18 Nec Corp 分散処理システムおよびその処理方法
JP3969764B2 (ja) * 1995-04-20 2007-09-05 富士通株式会社 集中管理・制御型ネットワークの負荷規制制御システム
JP2776338B2 (ja) * 1995-10-03 1998-07-16 日本電気株式会社 ジョブスケジューリング方式
JPH09160887A (ja) * 1995-12-08 1997-06-20 Sanyo Electric Co Ltd 並列処理装置
US5943232A (en) * 1997-10-29 1999-08-24 Lucent Technologies Inc. Autonomous overload control for distributed real time systems

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100298969B1 (ko) * 1997-10-29 2001-10-29 루센트 테크놀러지스 인크 분산 실시간 시스템용 자발적 과부하 제어
KR20020022907A (ko) * 2000-09-21 2002-03-28 문홍주 부하 분산장치의 성능개선 및 고속동작을 위한 구성방법및 그시스템

Also Published As

Publication number Publication date
CA2249691A1 (en) 1999-04-29
CA2249691C (en) 2002-10-01
US6134216A (en) 2000-10-17
KR100334871B1 (ko) 2002-10-11
EP0913772B1 (en) 2007-08-08
EP0913772A2 (en) 1999-05-06
JPH11265365A (ja) 1999-09-28
DE69838204T2 (de) 2008-05-15
EP0913772A3 (en) 1999-06-23
DE69838204D1 (de) 2007-09-20

Similar Documents

Publication Publication Date Title
KR100334871B1 (ko) 분산된실시간시스템에서과부하에응답하는방법
KR100298969B1 (ko) 분산 실시간 시스템용 자발적 과부하 제어
EP0991253B1 (en) Predictive overload control for SPC switching systems
US6442139B1 (en) Adaptive rate control based on estimation of message queuing delay
US5295183A (en) Congestion control system for telecommunications
US6363052B1 (en) Congestion control in network systems
EP0822494B1 (en) Load balancing method and apparatus
US6826268B2 (en) Method for overload control in a telecommunications network and apparatus therefor
US6353847B1 (en) System optimization apparatus employing load prediction
KR950023101A (ko) 계층 구조를 갖는 분산 교환 시스템의 상위 프로세서 과부하 제어 방법
JPH07152591A (ja) 負荷の平衡調整方法
JPH0354518B2 (ko)
CN106656533A (zh) 一种集群系统的负荷处理监控方法及装置
CN106330558A (zh) 应用于软件定义网络的控制器负载预测系统及方法
CN106936926B (zh) 访问数据节点的方法及系统
JPH1056469A (ja) Atmネットワークにおける明示レート・フロー制御用の方法と装置
JP3545931B2 (ja) 呼制御スケジューリング方法
CN1988684B (zh) 网络进程管理方法及装置
CN108540336A (zh) 一种弹性伸缩调度方法和装置
JP3225585B2 (ja) 構内自動交換機
JP6475118B2 (ja) 通信制御システム、通信制御装置及び通信制御方法
CN116841797A (zh) 服务重试的管理方法、装置、电子设备及可读存储介质
JP3636086B2 (ja) 輻輳検出装置
JP2938630B2 (ja) 複数の処理方法を有するシステムにおける負荷制御方式
JPH0951341A (ja) パス容量制御を行う通信装置及び通信網

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
FPAY Annual fee payment

Payment date: 20070411

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee