KR101483835B1 - 시스템 리소스들의 재할당을 관리하는 방법 및 장치 - Google Patents

시스템 리소스들의 재할당을 관리하는 방법 및 장치 Download PDF

Info

Publication number
KR101483835B1
KR101483835B1 KR1020127024037A KR20127024037A KR101483835B1 KR 101483835 B1 KR101483835 B1 KR 101483835B1 KR 1020127024037 A KR1020127024037 A KR 1020127024037A KR 20127024037 A KR20127024037 A KR 20127024037A KR 101483835 B1 KR101483835 B1 KR 101483835B1
Authority
KR
South Korea
Prior art keywords
borrower
resource
priority
resources
request
Prior art date
Application number
KR1020127024037A
Other languages
English (en)
Other versions
KR20120129970A (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 KR20120129970A publication Critical patent/KR20120129970A/ko
Application granted granted Critical
Publication of KR101483835B1 publication Critical patent/KR101483835B1/ko

Links

Images

Classifications

    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5011Pool
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Abstract

리소스들을 요청하고 있는 제 1 차용자에게, 제 2 차용자에게 현재 할당된 리소스들을 재할당하는 능력이 제공된다. 방법은, 제 1 차용자로부터, 시스템 리소스 할당을 위한 요청을 수신하는 단계, 제 1 차용자와 관련된 현재 리소스 할당에 기초하여 제 1 차용자의 요청 우선순위를 결정하는 단계, 제 2 차용자와 관련된 현재 리소스 할당에 기초하여 제 2 차용자의 유지 우선순위를 결정하는 단계, 및 제 1 차용자 요청 우선순위 및 제 2 차용자 유지 우선순위를 이용하여, 제 2 차용자 리소스 할당 중 임의의 것을 제 1 차용자에게 재할당할지를 결정하는 단계를 포함한다.

Description

시스템 리소스들의 재할당을 관리하는 방법 및 장치{METHOD AND APPARATUS FOR MANAGING REALLOCATION OF SYSTEM RESOURCES}
관련 출원의 교차 참조
본 출원은 "METHOD AND APPARATUS FOR HIERARCHICAL MANAGEMENT OF SYSTEM RESOURCES"라는 명칭으로 2010년 3월 16일에 출원되었고, 그 전체가 참조로서 본원에 포함되는 미국 특허 출원 제 12/724542 호(대리인 관리번호: 806814-US-NP)에 관련된다.
분야
본 발명은 전반적으로 네트워크 관리 시스템들과 같은 시스템들의 시스템 리소스들에 관한 것이며, 배타적인 것이 아니라, 더 구체적으로, 시스템 리소스들의 관리에 관한 것이다.
네트워크 관리 시스템(NMS)들은 많은 여러 가지 타입들의 통신 네트워크들을 관리하는 데 이용된다. NMS들은 일반적으로 통신 네트워크들의 다양한 양태들을 관리하는 데 이용되는 많은 네트워크 관리 기능들을 지원한다. 네트워크 관리 기능들은 NMS들, 예컨대 프로세서 쓰레드들, 메모리 등의 다양한 하드웨어 및 소프트웨어 리소스들을 이용하여 제공된다. 그 결과, NMS의 리소스는 다양한 네트워크 관리 기능들을 제공하는 데 필요한 리소스들에 대한 경쟁적 요청들로 인해 흔히 심각한 논란 하에 있다. 많은 경우들에 있어서, NMS 리소스들 자체는 NMS의 성능, 신뢰성, 예측성 및 확장성을 보장하도록 관리되어야 한다. NMS 리소스들의 부적절한 관리는 흔히 NMS 플랫폼 열화를 야기하며, 그에 따라 NMS의 사용자들 및 NMS에 의해 관리되는 통신 네트워크에 좋지 못한 경험들을 초래한다. 또한, NMS 리소스들의 부적절한 관리로부터 기인할 수도 있는 리소스 고갈은 실제 문제점에 상관하기 어려운 다양한 방식들로 자체를 드러내어, 리소스 고갈의 근본 원인에 실질적으로 어떠한 전망도 없게 한다. NMS 리소스 관리 방식들이 오늘날 존재하지만, 이들 접근방안들은 NMS의 성능, 신뢰성, 예측성 및 확장성에서의 보장을 가능하게 할 리소스 관리를 넘는 수준의 제어를 제공하지 않고 단지 시스템 처리율과 리소스 소모 사이의 균형을 유지시키고자 할 따름이다.
종래기술에서의 다양한 결함들은 시스템의 리소스들을 관리하는 실시형태들에 의해 해결된다. 리소스들을 요청하고 있는 제 1 차용자에게, 제 2 차용자에게 현재 할당된 리소스들을 재할당하는 능력이 제공된다. 일 실시형태에서, 시스템의 리소스를 할당하는 방법은, 제 1 차용자로부터 시스템 리소스 할당을 위한 요청을 수신하는 단계, 차용자와 관련된 현재 리소스 할당에 기초하여 제 1 차용자의 요청 우선순위를 결정하는 단계, 제 2 차용자와 관련된 현재 리소스 할당에 기초하여 제 2 차용자의 유지 우선순위를 결정하는 단계, 및 제 1 차용자 요청 우선순위 및 제 2 차용자 유지 우선순위를 이용하여, 제 1 차용자에게 제 2 차용자 리소스 할당 중 임의의 것을 재할당할지를 결정하는 단계를 포함한다.
본원의 교시사항들은 첨부한 도면과 함께 하기의 상세한 설명을 고려함으로써 용이하게 이해될 수 있다.
도 1은 시스템 리소스들을 갖는 예시적인 네트워크 관리 시스템의 고레벨 블록도,
도 2는 도 1의 NMS의 리소스 타입의 리소스들에 대한 예시적인 계층 리소스 풀을 나타낸 도면,
도 3은 도 1의 예시적인 계층 리소스 풀을 관리하는 예시적인 관리 방식을 나타낸 도면,
도 4는 도 1의 예시적인 계층 리소스 풀을 관리하는 예시적인 관리 방식을 나타낸 도면,
도 5는 시스템의 리소스를 요청하는 차용자로부터의 리소스 요청을 프로세싱하는 방법의 일 실시형태를 나타낸 도면,
도 6은 차용자들 사이에 리소스들을 할당할지를 결정하는 방법의 일 실시형태를 나타낸 도면,
도 7은 본원에서 설명되는 기능들을 설명하는 데 있어서 사용하기에 적합한 컴퓨터의 고레벨 블록도이다.
이해를 용이하게 하기 위해, 동일한 참조부호들은, 가능한 경우, 도면에서 공통적인 동일한 엘리먼트들을 지정하는 데 사용되었다.
리소스 관리 능력이 본원에서 도시되고 설명된다. 리소스 관리 능력은, 시스템 리소스들의 할당 및 할당해제, 시스템 리소스들의 재할당, 및 유사한 리소스 관리 기능들을 포함한, 시스템의 리소스들의 관리를 가능하게 한다. 리소스 관리 능력은 리소스 관리를 통해 미세 제어를 제공하여, 리소스 관리 능력이 활용되는 시스템의 성능, 신뢰성, 예측성, 및 확장성의 보장을 가능하게 한다. 본원에서는 주로 특정 타입의 시스템의 특정 타입의 리소스들(예컨대, 프로세서 쓰레드들, 메모리, 및 네트워크 관리 시스템의 유사한 리소스들)을 관리하는 리소스 관리 능력의 사용에 대해 도시되고 설명되지만, 본원에서 도시되고 설명되는 리소스 관리 능력은, 관리될 수도 있는 리소스들을 갖는 임의의 적합한 타입의 시스템의 임의의 적합한 타입의 리소스들을 관리하는 데 사용될 수도 있다.
도 1은 예시적인 네트워크 관리 시스템(NMS)의 고레벨 블록도를 나타낸다.
NMS(100)는 리소스들(110)을 포함한다. 리소스들(110) 상이한 타입들의 NMS들에 대해 변할 수도 있는 NMS의 임의의 리소스들을 포함할 수도 있다. 리소스들(110)은 복수의 리소스 타입들(1121-112N)(총체적으로, 리소스 타입들(112))의 리소스들을 포함한다. 예를 들어, 리소스들(110)은 프로세서 쓰레드들, 메모리, 데이터베이스 커넥션들, 네트워크 커넥션들 등과 같은 리소스 타입들(112)의 리소스들을 포함할 수도 있다. 리소스 타입들(112)은 임의의 적합한 방식으로 정의될 수도 있다.
NMS(100)는 리소스 관리 인프라구조(RMI)(120)를 이용하여 리소스들(110)을 관리한다.
RMI(120)는 리소스들(110)의 계층 관리를 제공한다.
일 실시형태에서, RMI(120)는 소스 타입 단위로 계층 리소스 관리를 제공한다. 이러한 일 실시형태에서, RMI(120)는 리소스 타입들(1121-112N)의 리소스들(110)을 관리하는 데 각각 이용되는 복수의 계층 리소스 풀(HRP)들(1221-122N)(총체적으로, HRP들(122))을 포함한다. 이 방식으로, NMS(100)의 리소스 타입들(112)의 각각은 NMS(100)의 다른 리소스 타입들(112)의 각각에 대해 독립적으로 관리될 수도 있다.
일 실시형태에서, HRP들(122) 각각은 마스터 리소스 풀(MRP)과, 관련 리소스 타입들(112)의 리소스들(110)을 관리하는 데 이용되는 복수의 가상 리소스 풀들(VRP)들을 포함한다. HRP들(122)은 관련 리소스 타입들(112)의 리소스들(110)의 계층 관리를 수행하는 데 사용되는 계층 트리 구조로 조직된다. 일 실시형태에서, MRP는 계층 트리 구조의 루트를 형성하고, VRP들은 계층 트리 구조의 나머지를 형성한다. VRP들은 임의의 적합한 방식으로 (예컨대, 임의의 적합한 수의 계층 레벨들, 계층 레벨(들) 전체에 걸친 VRP들의 임의의 적합한 배열, MRP와 VRP들 사이의 임의의 적합한 부모/자식 관계들 등뿐 아니라 이들의 다양한 조합들을 이용하여) 계층 트리 구조 내에 조직될 수도 있다.
일 실시형태에서, 소정의 HRP(122)에 대한 MRP는 그 소정의 HRP(122)가 관련된 리소스 타입(112)의 모든 리소스들(110)의 논리적 표현이며, 이에 의해 그 소정의 HRP(122)가 관련된 리소스 타입(112)의 리소스들(110)의 관리를 용이하게 한다. 소정의 HRP(122)에 대한 MRP는 HRP(122)가 관련된 리소스 타입(112)의 리소스들(110)을 관리하는 것과 관련된 임의의 리소스 관리 기능들을 수행하는 데 이용될 수도 있다. 예를 들어, 소정의 HRP(122)에 대한 MRP는 리소스 수명 관리(예컨대, 리소스 생성 및 파괴), 최소/최대 관리(예컨대, 시스템에서 소정의 리소스 타입(112)의 리소스들(110)의 수를 강제함), 리소스 임대 관리(예컨대, 임대 지속기간 및 다른 관련 리소스 임대 파라미터들), 차용자 우선권 관리, 아이들 타임아웃 관리, 리소스 요청 우선순위 설정 관리, 리소스 선점 관리 등뿐 아니라 이들의 다양한 조합들과 같은 리소스 관리 기능들을 수행하는 데 이용될 수도 있다.
일 실시형태에서, 소정의 HRP(122)에 대한 VRP들은 각각 그 소정의 HRP(122)가 관련되는 리소스 타입(112)의 리소스들(110)의 서브세트들의 논리적 표현들(및 그에 따른 그 소정의 HRP(122)의 MRP의 리소스들(110)의 서브세트들의 논리적 표현들)이며, 이에 의해 그 소정의 HRP(122)가 관련된 리소스 타입(112)의 리소스들(110)의 각각의 서브세트들의 관리를 용이하게 한다. 소정의 HRP(122)에 대한 VRP들은 HRP(122)가 관련된 리소스 타입(112)의 리소스들(110)의 관련 서브세트들을 관리하는 것과 관련된 임의의 리소스 관리 기능들을 수행하는 데 이용될 수도 있다.
이러한 실시형태들에서, 리소스들(110)의 논리적 표현들은 임의의 적합한 타입의 논리적 표현을 이용하여 구현(및 그에 따라 관리)될 수도 있다. 일 실시형태에서, 예를 들어, 리소스들(110)의 논리적 표현들은 토큰, 예컨대 리소스들(110)의 각각이 각각의 리소스(110)의 논리적 표현을 제공하는 토큰과 관련지은 토큰들을 이용하여 구현될 수도 있다. 이러한 실시형태들에서, RMI는 각각 리소스들(110)을 관리하기 위한 수단으로서 토큰들을 활용할 수도 있다. 주로 리소스들(110)의 논리적 표현들로서 토큰들의 사용에 관하여 설명되었지만, 리소스들(110)을 논리적으로 표현하고, 그에 따라 제어하는 임의의 다른 적합한 수단들이 활용될 수도 있다는 것이 인지될 것이다.
소정의 HRP(122)에 대한 VRP들은 임의의 적합한 방식으로 리소스들(110)의 각각의 서브세트들을 획득할 수도 있다. 소정의 HRP(122)에 대한 VRP들은 HRP(122)의 MRP로부터 (예컨대, MRP로부터 각각의 VRP들에 대해 이루어진 리소스들(110)의 서브세트들의 초기 할당의 일부분으로서, MRP로부터 일부의 또는 모든 VRP들에게로의 리소스들(110)의 정적 및/또는 동적 재할당들의 일부분으로서 등뿐 아니라 이들의 다양한 조합들로서) 리소스들의 각각의 서브세트들(또는 리소스들의 서브세트들의 적어도 일부분들)을 획득할 수도 있다. 소정의 HRP(122)의 소정의 VRP는 그 소정의 HRP(122)의 하나 이상의 VRP들로부터 리소스들(110)의 그의 관련 서브세트(또는 리소스들(110)의 그의 관련 서브세트의 적어도 일부분들)를 (예컨대, 그 소정의 VRP에게 하나 이상의 다른 VRP들의 비할당/가용 리소스들의 재할당을 초래할 수도 있는 그 하나 이상의 다른 VRP들에게로의 요청들을 이용하여, 그 소정의 VRP에게 그 하나 이상의 다른 VRP들의 할당된 리소스들의 재할당을 초래할 수도 있는 MRP에게로의 요청들을 이용하는 등뿐 아니라 이들의 다양한 조합들을 이용하여) 획득할 수도 있다.
이 방식으로, 소정의 HRP(122)의 리소스들(110)은 임의의 적합한 방식으로 VRP들 전체에 걸쳐서 정적으로 및/또는 동적으로 할당 및/또는 재할당될 수도 있다. 이러한 실시형태들에서, VRP들에 의해 개시된 리소스 할당 및/또는 재할당 요청들은 임의의 방식으로 (예컨대, HRP(122)의 계층 레벨들을 스킵하고 및/또는 그들을 스킵하지 않고, HRP(122)의 브랜치들을 가로질러 및/또는 가로 지르지 않는 등 뿐 아니라 이들의 다양한 조합들로)) HRP(122) 내에서 흐를 수도 있다. 적어도 하나의 이러한 실시형태에서, 리소스 요청들은 계층 트리 구조의 잎들로부터 계층 트리 구조의 뿌리를 향하는 (즉, MRP를 향하는) 방향으로 흐르며, 리소스들은 계층 트리 구조의 뿌리로부터 계층 트리 구조의 잎들을 향하는 (즉, VRP들을 향하는) 아래 방향으로 흐른다.
소정의 HRP(122)의 VRP들은 각각 관련된 하나 이상의 차용 특성들을 갖는다. 소정의 HRP(122)의 VRP들의 차용 특성(들)은 그 소정의 HRP(122)의 계층 트리 구조를 형성하도록 그 VRP들을 정의하고 그 VRP들의 배열을 조직할 수도 있다. 소정의 HRP(122)의 VRP들의 차용 특성들은 (예컨대, 그 소정의 HRP(122)의 VRP들에 대한 리소스들(110)의 각각의 서브세트들의 할당, 그 소정의 HRP(122)의 VRP들에 대한 리소스들(110)의 선점 등과 이들의 조합들을 위해) 그 소정의 HRP에 의해 관리되는 리소스 타입(112)의 리소스들(110)을 관리하는 데 이용될 수도 있다. 소정의 HRP(122)의 VRP들의 차용 특성들은 그 소정의 HRP(122)의 리소스 타입(112)의 리소스들(110)을 관리하는 것과 관련된 임의의 다른 적합한 목적들에 이용될 수도 있다.
소정의 HRP(122)의 VRP들의 차용 특성들은 그 소정의 HRP(122)의 VRP들의 정의 및 조직, 그 소정의 HRP(122)에 의해 관리되는 리소스 타입(112)의 리소스들(110)의 관리 등뿐 아니라 이들의 다양한 조합들에서의 이용에 적합한 임의의 특성들일 수도 있다. 예를 들어, 그 소정의 HRP(122)의 VRP들의 차용 특성들은 그 HRP(122)의 리소스들(110)이 사용될 목적을 나타내는 특성들, 그 HRP(122)의 리소스들(110)을 사용하고 있는 차용자들의 타입(예컨대, 콤포넌트들, 애플리케이션들, 프로세스들, 사용자들 등)들을 나타내는 특성들 등뿐 아니라 이들의 다양한 조합들일 수도 있다.
이 방식으로, 소정의 HRP(122)의 VRP들은 그 HRP(122)가 관련되는 리소스 타입(112)의 리소스들(110)의 서브세트들, 즉 각각의 VRP들과 관련된 리소스들(110)의 서브세트들이 상이한 조건 하에서 사용될 수도 있도록 정의되고 조직될 수도 있다.
소정의 HRP(122)가 관련된 리소스 타입(112)의 리소스들(110)을 관리할 목적을 위한 그 소정의 HRP(122)의 VRP들의 정의 및 조직화는 하기의 실례들을 통해 더욱 잘 이해될 수도 있다.
일 실시형태에서, 예를 들어, HRP(122)를 통해 관리되는 프로세서 쓰레드들에 대해, MRP는 NMS(100)의 모든 프로세서 쓰레드들(또는, 일부 실시형태들에서는, 프로세서 쓰레드들의 서브세트)을 포함하며, 복수의 VRP들은 VRP들의 관련 차용 특성들에 의해 특정되는 상이한 조건 하에서의 사용을 위해 NMS(100)의 프로세서 쓰레드들의 각각의 서브세트들을 포함할 수도 있다. 예를 들어, 프로세서 쓰레드들의 제 1 및 제 2 서브세트들(즉, 각각, 프로세서 쓰레드들의 제 1 및 제 2 VRP들)은 NMS(100) 내에서 구동하는 내부 애플리케이션들로의 프로세서 쓰레드들의 할당 및 NMS(100) 외부의 애플리케이션들로부터 수신된 요청들을 프로세싱하기 위해 프로세서 쓰레드들의 할당에 대해 각각 정의될 수도 있다. 프로세서 쓰레드들은, 임의의 다른 적합한 방식으로, 임의의 적합한 차용 특성들을 이용하여 VRP들 중에서 할당될 수도 있다는 것이 인지될 것이다.
일 실시형태에서, 예를 들어, HRP(122)를 통해 관리되는 메모리에 대해, MRP는 NMS(100)의 모든 메모리 리소스들(또는, 일부 실시형태들에서는, 메모리 리소스들의 서브세트)을 포함하며, 복수의 VRP들은 VRP들의 관련 차용 특성들에 의해 특정되는 상이한 조건 하에서의 사용을 위해 NMS(100)의 메모리 리소스들의 각각의 서브세트들을 포함할 수도 있다. 예를 들어, 메모리의 제 1, 제 2 및 제 3 서브세트들(즉, 각각, 메모리 리소스들에 대한 제 1, 제 2 및 제 3 VRP들)은 (1) NMS(100)에 의해 개시되는 내부 프로세스들, (2) NMS(100)와 통신하는 다른 시스템들로부터 수신된 시스템 요청들, 및 (3) NMS(100)의 사용자들로부터 수신된 사용자 요청들의 프로세싱에 대한 메모리의 할당에 대해 각각 정의될 수도 있다. 이 실례에서, NMS(100)의 사용자들로부터 수신된 사용자 요청들과 관련된 메모리의 제 3 서브세트는 (a) 제 1 네트워크 운용 센터에 위치된 NMS(100)의 사용자들, 및 (b) 제 2 네트워크 운용 센터에 위치된 NMS(100)의 사용자들로부터 각각 수신된 사용자 요청들을 프로세싱하기 위해 메모리의 2개의 서브세트들(즉, 각각 제 4 VRP 및 제 5 VRP)을 형성하도록 더 세분될 수도 있다. 메모리는, 임의의 다른 적합한 방식으로 임의의 적합한 차용 특성들을 이용하여, VRP들 중에서 할당될 수도 있다는 것이 인지될 것이다.
일 실시형태에서, 예를 들어, HRP(122)를 통해 관리되는 데이터베이스 커넥션들에 대해, MRP는 NMS(100)의 모든 데이터베이스 커넥션들(또는, 일부 실시형태들에서는 데이터베이스 커넥션들의 서브세트)을 포함하며, 복수의 VRP들은 VRP들의 관련 차용 특성들에 의해 특정되는 상이한 조건 하에서의 사용을 위해 NMS(100)의 데이터베이스 커넥션들의 각각의 서브세트들을 포함할 수도 있다. 예를 들어, 데이터베이스 커넥션들의 제 1 및 제 2 서브세트들(즉, 각각, 데이터베이스에 대한 제 1 및 제 2 VRP들)은 (1) 북행(northbound) "판독" 동작들(예컨대, 클라이언트들로부터의 요청들), (2) NMS(100) 내의 내부 애플리케이션들(예컨대, NMS(100)에서 수신되는 프로세싱 알람들, NMS(100)에 의해 개시된 테스트 실행들 등)에 대한 데이터베이스 커넥션들의 할당에 대해 각각 정의될 수도 있다. 데이터베이스 커넥션들은, 임의의 다른 적합한 방식으로 임의의 적합한 차용 특성들을 이용하여, VRP들 중에서 할당될 수도 있다는 것이 인지될 것이다.
일 실시형태에서, 예를 들어, HRP(122)를 통해 관리되는 네트워크 커넥션들에 대해, MRP는 NMS(100)의 모든 네트워크 커넥션들(또는, 일부 실시형태들에서는, 네트워크 커넥션들의 서브세트)을 포함하며, 복수의 VRP들은 VRP들의 관련 차용 특성들에 의해 특정되는 상이한 조건 하에서의 사용을 위해 NMS(100)의 네트워크 커넥션들의 각각의 서브세트들을 포함할 수도 있다. 예를 들어, 네트워크 커넥션들의 제 1 및 제 2 서브세트들(즉, 각각, 데이터베이스 커넥션들에 대한 제 1 및 제 2 VRP들)은 (1) NMS(100)에 의해 관리되고 있는 네트워크 엘리먼트들로의 커넥션들 및 (2) NMS(100)를 사용하여 네트워크 엘리먼트들을 관리하기 위한 사용자들의 사용자 단말기들로의 커넥션들에 대한 네트워크 커넥션들의 할당에 대해 각각 정의될 수도 있다. 이 실례에서, NMS(100)에 의해 관리되고 있는 네트워크 엘리먼트들로의 커넥션들과 관련된 네트워크 커넥션들의 제 1 서브세트는 다수의 서브세트들의 네트워크 디바이스들의 관리와 관련된 많은 서브세트들의 네트워크 커넥션들을 형성하도록 더 세분될 수도 있으며(예컨대, 네트워크 엘리먼트들의 중요도, 네트워크 엘리먼트들의 지리적 위치들, 및/또는 이러한 세분화가 기초로 할 수도 있는 다른 적합한 특성들에 기초하여 세분됨), 사용자 단말기들로의 커넥션들과 관련된 제 2 서브세트의 네트워크 커넥션들은 다수의 서브그룹들의 사용자 단말기들과 관련된 많은 서브세트들의 네트워크 커넥션들을 형성하도록 더 세분될 수도 있다(예컨대, 사용자 단말기들의 사용자들에 의해 수행되는 기능들의 타입, 사용자 단말기들의 지리적 위치들, 및/또는 이러한 세분화가 기초로 할 수도 있는 임의의 다른 적합한 특성들에 기초하여 세분됨). 네트워크 커넥션들은, 임의의 다른 적합한 방식으로 임의의 적합한 차용 특성들을 이용하여, VRP들 중에서 할당될 수도 있다는 것이 인지될 것이다.
전술한 실례들은 주로 소정의 리소스 타입(112)의 모든 리소스들(110)이 단일 HRP(122)를 사용하여 관리되는 (그에 따라 단일 HRP(122)의 MRP가 소정의 리소스 타입(112)의 모든 리소스들(110)을 포함하는) 실시형태들에 관한 것이지만, 다양한 다른 실시형태들에서, 소정의 리소스 타입(112)의 리소스들(110)은 각각의 HRP(122)가 (및 그에 따른 각각의 관련 MRP가)리소스 타입(112)의 리소스들(110)의 서브세트만을 포함하도록 다수의 HRP(122)들을 사용하여 관리될 수도 있다. 마찬가지로, 전술한 실례들은 주로 HRP(122)들의 각각이 오로지 단일 리소스 타입(112)의 리소스들(110)을 관리하는 실시형태들에 관한 것이지만, 다양한 다른 실시형태들에서, 하나 이상의 HRP들(122)은 다수의 리소스 타입들(112)의 리소스들(110)을 관리할 수도 있다.
여러 가지 예시적인 리소스 타입들에 대해 제공된 실례들 각각에 대해 전술된 바와 같이, 전술된 실례들 각각에서 정의된 HRP들(122)에 있어서, VRP들 중 하나 이상은, 세분되는 VRP(들)에 특정적인 하나 이상의 차용 특성들에 기초하여 각각 임의의 수의 서브텐딩(subtending) VRP들(즉, 임의의 적합한 서브트리)을 포함하도록 각각 더 세분될 수도 있다. 이 방식으로, HRP들(122)의 각각은 임의의 적합한 차용 특성들 및/또는 차용 특성들의 조합들을 기초로 임의의 적합한 배열물을 이용하여 조직된 임의의 적합한 수의 VRP들을 갖는 임의의 적합한 계층 트리 구조를 사용하여 정의될 수도 있다.
전술한 실례들은 VRP들이 상이한 리소스 타입들에 대해 정의될 수도 있는 방식을 설명할 목적으로만 제공된다는 것이 인지될 것이다. 이들 리소스 타입들뿐 아니라 임의의 다른 리소스 타입들 각각에 대해, 리소스 타입에 대한 VRP들은 임의의 다른 적합한 방식으로 정의 및/또는 조직될 수도 있고(예컨대, 상이한 특성들에 기초하여 정의될 수도 있고, 상이한 계층 트리 구조들로 조직될 수도 있으며, 그 외의 것이 가능할 수도 있고, 이들의 조합들이 가능할 수도 있음), 따라서 리소스 타입들의 리소스들은 임의의 다른 적합한 방식으로 VRP들 중에 할당될 수도 있다는 것이 인지될 것이다.
특정 수의 계층 레벨들을 갖는 계층 트리 구조에 배열된 특정 수의 VRP들에 대해 주로 도시되고 설명되지만, HRP(122)는 임의의 적합한 수의 계층 레벨들을 갖는 임의의 적합한 계층 트리 구조에 배열된 임의의 적합한 수의 VRP들을 포함할 수도 있다는 것이 인지될 것이다. 상이한 HRP들(122)은 그들의 리소스들을 관리하기 위해 동일하거나 유사하거나 상이한 계층 트리 구조들을 사용할 수도 있다.
도 2는 도 1의 NMS의 리소스 타입의 리소스들에 대한 예시적인 계층 리소스 풀을 도시한다.
도 2에 도시된 바와 같이, 예시적인 HRP(200)는, 총체적으로 리소스 풀(RP)들(202)이라고 지칭될 수도 있는 마스터 리소스 풀(MRP)(202M) 및 7개의 가상 리소스 풀(VRP)들(202V1-202V7)을 포함한다. RP들(202)은 트리 구조에서 계층적으로 배열되며, MRP(202M)는 트리 구조의 뿌리를 형성하고, VRP들(202V)은 트리 구조의 나머지를 형성한다. 도 2에 도시된 바와 같이, VRP들(202V1, 202V2, 및 202V3)은 MRP(202M)의 자식들이고, VRP들(202V4, 202V5)은 VRP(202V1)의 자식들이며, VRP(202V6)는 VRP(202V3)의 자식이고, VRP(202V7)은 VRP(202V4)의 자식이다.
본원에서 설명되는 바와 같이, 예시적인 HRP(200)는 NMS(100)의 리소스들(110)의 임의의 적합한 리소스 타입(112)을 관리하는 데 사용하기 위해 정의될 수도 있다. 예시적인 HRP(122)를 설명하는 데 있어서 명료성을 위해, 예시적인 HRP(122)는 NMS(100)의 데이터베이스 커넥션들을 관리하는 데 사용하기 위해 정의되는 것으로 상정하며, 또한 1000개의 데이터베이스 커넥션들이 NMS(100)에서 이용 가능하다는 것으로 상정한다. 이 실례에서, 또한, NMS(100)가 다수의 네트워크 운용 센터들(NOCs)의 사용자들에 의해 액세스 가능하다는 것을 상정한다.
이 실례에서, MRP(202M)는 NMS(100)의 1000개의 데이터베이스 커넥션들의 논리적 그룹화를 제공하여, NMS(100)의 차용자들(130)에 의한 사용을 위해 이들 1000개의 데이터베이스 커넥션들의 할당 관리를 가능하게 한다.
이 실례에서, VRP들(202V1, 202V2, 202V3)은 (1) NMS(100)의 사용자들로부터 수신된 사용자 요청들에 응답하는 데이터베이스 액세스들, (2) NMS(100)에 의해 개시된 내부 프로세스들에 의한 데이터베이스 액세스들, 및 (3) NMS(100)과 통신하는 시스템들에 의한 데이터베이스 액세스들을 위한 데이터베이스 커넥션들을 각각 관리하고, 또한 VRP들(202V1, 202V2, 202V3)은 500개, 300개, 및 200개의 데이터베이스 커넥션들을 각각 할당받는다는 것을 상정한다.
이 실례에서, VRP들(202V4, 202V5)은 (1) 제 1 NOC에 위치된 NMS(100)의 사용자들로부터 수신된 사용자 요청들에 응답하는 데이터베이스 액세스들 및 (2) 제 2 NOC에 위치되는 NMS(100)의 사용자들로부터 수신된 사용자 요청들에 응답하는 데이터베이스 액세스들을 위한 데이터베이스 커넥션들을 각각 관리한다는 것을 상정하고, 또한 VRP들(202V4, 202V5)은 300개 및 200개의 데이터베이스 커넥션들을 각각 할당받는다는 것을 상정한다. 이 실례에서, VRP(202V7)는 제 1 NOC에 위치된 NMS(100)의 사용자들(예컨대, 리소스들로의 즉각적인 액세스를 필요로 할 수도 있고 그에 따라 그들 자신의 VRP로부터 서빙받을 수도 있는 감독자들)의 서브세트로부터 수신된 사용자 요청들에 응답하는 데이터베이스 액세스들을 위한 데이터베이스 커넥션들을 관리한다는 것을 상정하며, 또한 VRP(202V7)는 VRP(202V4)로 할당된 300개의 데이터베이스 커넥션들 중 100개의 데이터베이스 커넥션들을 할당받는다(즉, 제 1 NOC에서의 모든 다른 사용자들은 감독자들에 의한 사용을 위해 예약되지 않은 200개의 데이터베이스 커넥션들을 공유해야 한다)는 것을 상정한다.
이 실례에서, VRP(202V6)는, NMS(100)와 통신하여, 리소스들로의 즉각적인 액세스를 필요로 할 수도 있는 특정 고 우선순위 시스템에 의한 데이터베이스 액세스들을 위한 데이터베이스 커넥션들을 관리한다는 것을 상정하며, 또한 VRP(202V6)는 VRP(202V4)로 할당된 300개의 데이터베이스 커넥션들 중 50개의 데이터베이스 커넥션들을 할당받는다(즉, NMS(100)과 통신하는 모든 다른 시스템들은 고 우선순위 시스템에 의한 사용을 위해 예약되지 않은 150개의 데이터베이스 커넥션들을 공유해야 한다)는 것을 상정한다.
도 2의 HRP(200)는 단지 예시에 불과하고, 도 1의 HRP들(122)은 다양한 다른 적합한 방식들로 정의 및 조직될 수도 있다는 것이 인지될 것이다.
NMS(100)의 리소스 타입(112)의 리소스들(110)을 관리하는 데 있어서 도 2의 예시적인 HRP(200)와 같은 HRP들(122)의 사용은 도 1을 다시 참조하면 더 잘 이해될 수도 있다.
도 1에 도시된 바와 같이, RMI(120)는 관리 능력(125)을 포함한다. 관리 능력(125)은 RMI(120)의 HRP들(122)을 관리하는 관리 기능들을 제공하도록 하는 RMI(120)의 능력을 나타낸다. RMI(120)의 HRP들(122)은 임의의 적합한 방식으로 관리될 수도 있다.
일 실시형태에서, HRP들(122)은 하나 이상의 관리자들을 이용하여 (예컨대, 모든 HRP들(122)에 대한 단일 관리자, HRP들(122) 중 하나 이상이 관리자들을 공유하는 다수의 관리자들, HRP들(122)의 각각이 전용 관리자를 갖는 다수의 관리자들 등뿐 아니라 이들의 다양한 조합들을 이용하여) 관리될 수도 있다.
일 실시형태에서, 예를 들어, 단일 관리자는 RMI(120)의 HRP들(122)의 각각을 관리한다. 이 실시형태에서, 단일 관리자는, MRP들 각각 및 HRP들(122) 각각의 관련 VRP들을 포함한 HRP들(122) 각각에 리소스 관리 기능들을 제공하는 책임을 갖는다. 예시적인 실시형태가 (관리 기능이 HRP들(122) 각각에 리소스 관리 기능들을 제공하는 책임을 갖는 단일 관리자인) 도 1에 관련하여 도시된다.
일 실시형태에서, 예를 들어, RMI(120)의 HRP들(122) 각각은 그 자신의 전용 관리자에 의해 관리된다. 이 실시형태에서, HRP들(122) 각각에 대해, 관련 관리자는 MRP 및 HRP들(122)의 관련 VRP들에 리소스 관리 기능들을 제공하는 책임을 갖는다. 예시적인 실시형태들이 도 3과 관련하여 설명된다.
도 3은 도 2의 예시적인 계층 리소스 풀을 관리하는 예시적인 관리 방식을 도시한다. 도 3에 도시된 바와 같이, 도 1의 관리 능력(125)은 계층 리소스 풀 관리자(305)를 이용하여 제공된다. 계층 리소스 풀 관리자(305)는 예시적인 HRP(200)에 대한 관리 기능들을 수행한다. 이 실시형태에서, 여기에서 예시적인 HRP(200)의 관련 VRP들 및 MRP에 의해 또는 이들을 사용하여 수행되는 것으로 도시되고 설명된 다양한 기능들은 계층 리소스 풀 관리자(305)에 의해 수행된다. 이 관점에서, 예시적인 HRP(200)의 풀들 사이의 설명된 상호작용들은 설명된 기능들을 제공하기 위한 계층 리소스 풀 관리자(305)의 관련 명령들 및 루틴들의 상호작용들이다.
일 실시형태에서, 예를 들어, RMI(120)의 HRP들(122) 각각은 관리자들의 세트를 이용하여 관리된다. 이러한 일 실시형태에서, 소정의 HRP에 대해, 관리자들의 세트는 HRP(122)의 MRP에 관리 기능들을 제공하는 MRP 관리자 및 HRP(122)의 각각의 VRP들에 관리 기능들을 제공하는 복수의 VRP 관리자들을 포함한다. 이러한 실시형태들에서, 관리자들의 세트는 HRP(122)에 관련 리소스 관리 기능들을 제공하도록 상호작용한다. 예시적인 실시형태가 도 4와 관련하여 도시된다.
도 4는 도 2의 예시적인 계층 리소스 풀을 관리하기 위한 예시적인 관리 방식을 도시한다. 도 4에 도시된 바와 같이, 도 1의 관리 기능은 (1) MRP(202M)와 관련된 MRP 관리자(405M) 및 (2) VRP들(202V1-202V7)과 각각 관련된 복수의 VRP 관리자들(405V1-405V7)을 사용하여 제공된다. MRP 관리자(405M) 및 VRP 관리자들(405V1-405V7)은 여기에서 총체적으로 리소스 풀 관리자들(405)이라고 지칭될 수도 있다. MRP 관리자(405M)는 MRP(202M)에 대한 관리 기능들을 수행한다. VRP 관리자들(405V1-405V7)은 VRP들(202V1-202V7)에 대한 관리 기능들을 각각 수행한다. 리소스 풀 관리자들(405)은 전체로서 예시적인 HRP(200)에 대한 관리 기능들을 수행하도록 협력한다. 이 관점에서, 예시적인 HRP(200)의 풀들 사이의 설명된 상호작용들은 설명된 기능들을 제공하기 위한 각각의 리소스 풀 관리자들(405)의 관련 명령들 및 루틴들의 상호작용들이다.
주로 개별적인 실시형태들로 도시되고 설명되었지만, 관리자 구현물들의 이러한 실시형태들의 조합들이 소정의 NMS 내에서 활용될 수도 있다는 것이 인지될 것이다.
주로 관리자 구현물들의 특정 실시형태들에 대해 도시되고 설명되었지만, 관리자 구현물들의 임의의 다른 적합한 실시형태들이 여기에서 도시되고 설명되는 다양한 리소스 관리 기능들을 제공하는 데 이용될 수도 있다는 것이 인지될 것이다.
도 1에 도시된 바와 같이, NMS(100)는 RMI(120)에 의해 관리되는 리소스들(110)을 이용하기 위해 RMI(120)와의 상호작용들을 통해서 리소스들(110)을 획득하는 차용자들(130)에 의해 이용된다.
차용자들(130)은 NMS(100)의 리소스들(110)을 요청 및 사용할 수도 있는 임의의 엔티티들을 포함할 수도 있다. 차용자들(130)은 NMS(100) 내의 엔티티들 및/또는 NMS(100)에 원격인 엔티티들을 포함할 수도 있다. 예를 들어, 차용자들(130)은 콤포넌트들, 애플리케이션들, 프로세스들, 사용자들, 시스템들 등뿐 아니라 이들의 다양한 조합들을 포함할 수도 있다.
본원에서 설명되는 바와 같이, RMI(120)는 NMS(100)의 또는 그와 관련된 차용자들(130)에 대한 NMS(100)의 리소스들(110)의 동적 할당을 가능하게 한다. 일 실시형태에서, RMI(120)는 차용자(130)로부터 리소스 요청을 수신하고, 그 리소스 요청과 관련된 VRP들 중 하나를 식별하며, VRP들 중 식별된 하나로부터 리소스 요청을 서빙하고자 한다. RMI(120)를 사용하여 차용자(130)에게 리소스(110)를 할당하기 위한 일 실시형태에 따른 방법이 도 5와 관련하여 도시되고 설명된다.
차용자(130)는 리소스 타입(112)의 하나 이상의 리소스들(110)에 대한 리소스 요청을 개시할 수도 있다.
일 실시형태에서, 리소스들(110)을 요청하도록 차용자들(130)에 의해 이용될 수도 있는 3개 타입들의 리소스 요청들이 이용될 수도 있고, 다음과 같이 정의될 수도 있다.
(a) 차용자(130)는 리소스(110)를 요청하고, 리소스(110)가 요청 시간에 이용 가능하지 않으면, 차용자(130)는 요청된 리소스가 (예컨대, 다른 차용자(130)에 의한 리소스(110)의 철회, 리소스(110)로 하여금 차용자(130)에게로의 할당에 이용되게 하는 선점 등을 통해서) 이용 가능하게 될 때까지 무한정 기다린다.
(b) 차용자(130)는 리소스(110)를 요청하고, 리소스(110)가 요청 시간에 이용 가능하지 않으면, 차용자(130)는 요청된 리소스가 (예컨대, 다른 차용자(130)에 의한 리소스(110)의 철회, 리소스(110)으로 하여금 차용자(130)에게로의 할당에 이용되게 하는 선점 등을 통해서) 이용 가능하게 될 때까지 또는 특정 시간이 경과할 때(즉, 타임아웃이 발생하면 차용자(130)가 리소스(110)를 획득하지 않는 경우의 타임아웃)까지 기다린다.
(c) 차용자(130)는 리소스(110)를 요청하고, 리소스(110)가 요청 시간에 이용 가능하지 않으면, 차용자(130)는 리소스(110)를 획득하지 않는다.
더 적거나 더 많을 뿐 아니라 상이한 타입들의 리소스 요청들(예컨대, 상이한 관리 시스템들, 상이한 타입들의 관리 시스템들, 상이한 리소스 타입들(112), 상이한 타입들의 차용자들(130) 등뿐 아니라 이들의 조합들)이 지원될 수도 있다는 것이 인지될 것이다.
일 실시형태에서, RMI(120)는 각각의 차용자들(130)과 관련된 하나 이상의 우선순위들에 기초하여 차용자들(130)에게로의 리소스들(110)의 할당을 관리할 수도 있다.
일 실시형태에서, 각각의 차용자(130)는 그와 관련된 하나 이상의 우선순위들을 갖는다. 차용자(130)와 관련된 우선순위는 이용 가능한 우선순위들의 범위로부터의 우선순위일 수도 있다. 차용자들(130)에 대해 지원되는 이용 가능한 우선순위들의 범위는 우선순위들의 임의의 적합한 범위일 수도 있다.
리소스 관리 능력의 다양한 특징들을 설명하는 데 있어서 명료성을 위해, 리소스 관리 능력은 주로 우선순위들의 범위가 0 내지 7의 수치 범위인 예시적인 실시형태에 관해 도시되고 설명되며, 여기서 0은 최고 우선순위이고 7은 최저 우선순위이다. 이것은, 네트워크 관리를 포함한 많은 네트워킹 애플리케이션들에서의 일반적인 우선순위 범위이다. 주로 이 네트워크 우선순위 규모의 사용에 관해 도시되고 설명되지만, 우선순위 값들의 임의의 다른 적합한 범위들이 리소스 관리 능력을 제공하는 데 이용될 수도 있다는 것이 인지될 것이다.
일 실시형태에서, 소정의 리소스 타입(112)에 대해, 각각의 차용자(130)는 그와 관련된 2개의 우선순위들, 즉 셋업 우선순위 및 유지 우선순위를 가지며, 그 우선순위들 각각은 차용자들(130)에게로의 할당을 위해 이용될 수 있는 이용 가능한 우선순위들의 범위로부터의 우선순위 값일 수도 있다.
일 실시형태에서, 차용자(130)의 셋업 우선순위는, 차용자(130)가 리소스 타입(112)의 리소스를 요청하고 있을 때 사용된다. 차용자(130)의 셋업 우선순위는 그 리소스 타입(112)의 리소스들(110)로 차용자들(130)을 서빙하도록 하는 시도가 이루어지는 순서를 결정하도록 하기 위해 동일한 리소스 타입을 요청하고 있는 다른 차용자들(130)의 셋업 우선순위들과 비교된다.
일 실시형태에서, 차용자(130)의 유지 우선순위는 차용자 선점 결정 동안에 이용되며, 차용자(130)가 그 리소스 타입(112)의 리소스(들)(110), 즉 그 차용자(130)에게 현재 할당되어 있는 리소스들(110)에서 얼마나 "강하게" 유지되는지(즉, 그 리소스(들)(110)의 소유를 얼마나 "강하게" 유지하는지)를 나타낸다.
일 실시형태에서, 소정의 리소스 타입(112)에 대한 차용자(130)의 우선순위들 중 하나 이상은 차용자(130)에게로의 그 소정의 리소스 타입(112)의 리소스들(110)의 현재 할당에 기초하여 할당된다. 차용자(130)의 현재 리소스 할당은 임의의 적합한 방식으로 측정될 수도 있다. 일 실시형태에서, 예를 들어, 소정의 리소스 타입(112)에 대한 차용자(130)의 현재 리소스 할당은 차용자(130)에게 현재 할당된 그 소정의 리소스 타입(112)의 리소스들(110)의 수로서 측정된다. 차용자(130)의 현재 리소스 할당은 임의의 적합 방식으로 측정될 수도 있으며, 그에 따라 적어도 일부 실시형태들의 경우, 여기에서 "리소스들의 수"의 언급은 더 일반적으로 임의의 적합한 방식으로 측정될 수도 있는 "리소스들의 양"을 지칭하는 것으로 이해될 수도 있다. 전술된 바와 같이, 소정의 리소스 타입(112)에 대해, 차용자(130)의 셋업 우선순위 및 유지 우선순위 중 하나 또는 양측 모두는 차용자(130)에게로의 그 소정의 리소스 타입(112)의 리소스들(110)의 현재 할당에 기초하여 결정될 수도 있다. 일 실시형태에서, 차용자(130)의 현재 리소스 할당이 변하기 때문에(예컨대, 리소스들이 차용자(130)에게 할당되고 그로부터 할당해제되기 때문에), 차용자(130)의 관련 우선순위들 중 하나 이상이 변할 것이다. 차용자들(130)의 우선순위들의 결정은, 차용자들(130)의 현재 리소스 할당에 기초하여, 특정 차용자들(130)이 리소스들(110)을 독점하는 상황의 회피를 가능하게 한다.
차용자(130)의 우선순위가 차용자(130)에게 현재 할당된 리소스 타입(112)의 리소스들(110)의 수에 기초하여 할당되는 일 실시형태에서, 차용자(130)에게 현재 할당된 리소스 타입(112)의 리소스들(110)의 수는 할당 가능한 리소스 값들의 범위 내에 있다. 할당 가능한 리소스 값들의 범위는 차용자(130)에게 할당될 수도 있는 리소스들의 수의 범위(예컨대, 차용자(130)에게 할당될 수 있는 리소스들의 최소 수를 나타내는 최소사이즈 파라미터 내지 차용자(130)에게 할당될 수 있는 리소스들의 최대 수를 나타내는 최대 크기 파라미터)이다. 일 실시형태에서, 소정의 차용자(130)는 상이한 리소스 타입들(112)에 대해 그와 관련된 할당 가능한 리소스 값들의 상이한 범위들을 가질 수도 있다. 일 실시형태에서, 소정의 리소스 타입(112)에 대해, 상이한 차용자들(130)은 그와 관련된 할당 가능한 리소스 값들의 상이한 범위들을 가질 수도 있다. 각각의 차용자들(130)과 관련된 할당 가능한 리소스 값들의 범위들은 임의의 다른 적합한 방식으로 구성될 수도 있다는 것이 인지될 것이다.
리소스 관리 능력의 다양한 특징들을 설명하는 데 있어서 명료성을 위해, 리소스 관리 능력은 주로 차용자(130)에 대해 할당 가능한 리소스 값들의 범위가 0 내지 10의 수치 범위인 예시적인 실시형태에 대해 도시되고 설명된다. 할당 가능한 리소스 값들의 임의의 다른 적합한 범위(들)이 사용될 수 있고, 그 범위(들)는 상이한 리소스 타입들의 리소스들의 수들이 상이한 방식들로 측정될 수도 있기 때문에 상이한 리소스 타입들(112)에 걸쳐서 변할 수도 있다는 것이 인지될 것이다.
소정의 리소스 타입(112)에 대한 차용자(130)의 우선순위(예컨대, 셋업, 유지 및/또는 그 외)가 차용자(130)에게 현재 할당된 그 리소스 타입(112)의 리소스들(110)의 수에 기초하여 조절되는 일 실시형태에서, 차용자(130)는 차용자(130)의 우선순위를 결정하는 데 사용하기 위해 그와 관련된 다수의 우선순위 레벨들을 가질 수도 있다. 이러한 일 실시형태에서, 임의의 소정 시간에 차용자(130)를 위해 사용되는 다수의 우선순위 레벨들 중 하나는 차용자(130)에게 현재 할당된 그 리소스 타입(112)의 리소스들(110)의 수에 의존한다. 이러한 실시형태들에서, 차용자(130)와 관련된 다수의 우선순위 레벨들은 셋업 우선순위, 유지 우선순위, 또는 셋업 및 유지 우선순위들 양측 모두에 대해 할당될 수도 있다(즉, 우선순위 레벨들의 동일한 세트가 셋업 및 유지 우선순위들에 대해 이용될 수도 있고, 또는 우선순위 레벨들의 상이한 세트들이 셋업 및 유지 우선순위들에 대해 이용될 수도 있다).
소정의 리소스 타입(112)에 대한 차용자(130)의 우선순위들이 차용자(130)에게 현재 할당된 그 리소스 타입(112)의 리소스들(110)의 수에 기초하여 조절되는 이러한 일 실시형태에서, 차용자(130)는 하기와 같이 정의될 수도 있는 그 소정의 리소스 타입(112)에 대해 그와 관련된 3개의 우선순위 레벨들을 가질 수도 있다.
(a) 기저 우선순위(셋업 및 유지): 기저 우선순위는, 그 소정의 리소스 타입(112)에 대해, 차용자(130)에게 현재 할당된 리소스들의 수가 (여기에서 최소사이즈로 표기될 수도 있는) 최소 크기보다 작거나 그와 동일할 때, 차용자(130)에 사용된다;
(b) 핵심 우선순위(셋업 및 유지): 핵심 우선선위는, 그 소정의 리소스 타입(112)에 대해, 차용자(130)에게 현재 할당된 리소스들의 수가 (여기에서 핵심사이즈로 표기될 수도 있는) 핵심 크기보다 작거나 그와 동일할 때, 차용자(130)에 사용된다;
(c) 버스트 우선순위(셋업 및 유지): 버스트 우선순위는, 그 소정의 리소스 타입(112)에 대해, 차용자(130)에게 현재 할당된 리소스들의 수가 (여기에서 최대사이즈로 표기될 수도 있는) 최대 크기보다 작거나 그와 동일하지만 핵심 크기(핵심사이즈)보다 클 때, 차용자(130)에 사용된다.
소정의 리소스 타입(112)에 대한 차용자(130)의 우선순위들이 그 차용자(130)에게 현재 할당된 그 리소스 타입(112)의 리소스들(110)의 수에 기초하여 조절되는 일 실시형태에서, 차용자(130)에게 할당된 실제 우선순위는 차용자(130)를 위해 지원되는 가용 우선순위 값들의 범위와 그 차용자(130)에 대해 지원되는 우선순위 레벨들과의 맵핑을 이용하여 결정될 수도 있다.
차용자(130)를 위해 지원되는 가용 우선순위 값들의 범위와 그 차용자(130)에 대해 지원되는 우선순위 레벨들과의 맵핑은 임의의 적합한 방식으로 구현될 수도 있다. 맵핑은 가용 우선순위 값들 중 하나와 우선순위 레벨들 중 하나와의 맵핑을 포함할 수도 있다. 맵핑은 복수의 가용 우선순위 값들과 우선순위 레벨들 중 하나와의 맵핑을 포함할 수도 있다. 맵핑은 가용 우선순위 값들의 서브세트의 범위를 우선순위 레벨들 중 2개의 레벨들(예컨대, 우선순위 레벨들 중 인접한 레벨들) 사이에 포함시키는 하나 이상의 삽간들을 포함할 수도 있다. 맵핑은 이러한 맹핍 기법들의 다양한 조합들을 포함할 수도 있다. 차용자(130)를 위해 지원되는 우선순위 레벨들에 대해 차용자(130)를 위해 지원되는 가용 우선순위 값들의 범위의 맵핑은 하기의 실례를 참조하면 더 잘 이해될 수도 있다.
예를 들어, 그 소정의 리소스 타입(112)에 대해 차용자(130)가 그와 관련된 3개의 우선순위 레벨들을 갖고, 그 소정의 리소스 타입(112)에 대해 차용자(130)에 대한 가용 우선순위들의 범위가 0 내지 7의 수치 범위를 포함하는 일 실시형태에서, 차용자(130)에 대해 지원되는 우선순위 레벨들에 대해 차용자(130)에 대해 지원되는 가용 우선순위 값들의 범위의 맵핑은 하기와 같이 구현될 수도 있다.
(1) 차용자 파라미터 구성:
최소사이즈 = 3
핵심사이즈 = 6
최대사이즈 = 10
기저우선순위 = 0
핵심우선순위 = 3
버스트우선순위 = 7
(2) 리소스들의 수에 기초한 차용자 우선순위:
리소스들 1, 2, 3 - 우선순위 = 0
리소스들 4, 5, 6 - 우선순위 0(기저)과 3(핵심) 사이에 삽간된 우선순위는 다음과 같음:
리소스 4 - 우선순위 = 1
리소스 5 - 우선순위 = 2
리소스 6 - 우선순위 = 3
리소스들 7, 8, 9, 10 - 우선순위 3(핵심)과 7(버스트) 사이에 삽간된 우선순위는 다음과 같음:
리소스 7 - 우선순위 = 4
리소스 8 - 우선순위 = 5
리소스 9 - 우선순위 = 6
리소스 10 - 우선순위 = 7
위에 기초하여 정의될 수 있을 때(예컨대, 기저 우선순위 레벨은 최소사이즈 파라미터에 기초하여 정의되고, 핵심 우선순위 레벨은 핵심사이즈 파라미터에 기초하여 정의되며, 버스트 우선순위 레벨은 최대사이즈 파라미터에기초하여 정의됨), 차용자(130)에 대해 지원되는 가용 우선순위 값들의 범위와 차용자(130)에 대해 지원되는 우선순위 레벨들과의 맵핑은 또한 차용자(130)에 대해 지원되는 가용 우선순위 값들의 범위와 차용자(130)에 대해 지원되는 할당 가능한 리소스 값들의 범위와의 맵핑으로 간주될 수도 있다는 것이 인지될 것이다.
소정의 리소스 타입(112)에 대해, 차용자(130)가 그와 관련된 3개의 우선순위 레벨들을 갖고, 가용 우선순위들의 범위가 0 내지 7의 수치 범위를 포함하는 실시형태들에서, 차용자(130)에 대해 지원되는 가용 우선순위 값들의 범위와 차용자(130)에 대해 지원되는 우선순위 레벨들과의 맵핑은 임의의 다른 적합한 방식으로 구현될 수도 있다는 것이 인지될 것이다. 유사하게, 소정의 리소스 타입(112)에 대해, 차용자(130)가 그와 관련된 3개보다 많거나 또는 적은 우선순위 레벨들을 갖고, 및/또는 그 소정의 리소스 타입(112)에 대해 지원되는 가용 우선순위 레벨들의 범위가 상이한 범위의 우선순위들을 포함하는 실시형태들에서, 차용자(130)에 대해 지원되는 가용 우선순위 값들의 범위와 차용자(130)에 대해 지원되는 우선순위 레벨들과의 맵핑은 임의의 다른 적합한 방식으로 구현될 수도 있다는 것이 인지될 것이다.
전술한 설명 및 관련 실례로부터, 적어도 하나의 실시형태에서, 차용자 우선순위(예컨대, 요청 및/또는 유지 우선순위)는 차용자에게로의 할당을 위해 이용 가능한 우선순위 값들의 범위와 차용자에게 할당 가능한 리소스들의 최소 수 및 차용자에게 할당 가능한 리소스들의 최대 수에 의해 정의된 할당 가능한 리소스 값들의 범위와의 맵핑을 이용하여 결정될 수도 있다는 것이 인지될 것이다. 이러한 일 실시형태에서, 맵핑은 제 1 차용자에게로의 할당에 이용 가능한 우선순위 값들의 범위에서의 단일 우선순위 값과 할당 가능한 리소스 값들의 범위의 할당 가능한 리소스 값들과의 맵핑(예컨대, 상기 실례에서, 리소스들 1, 2, 3과 우선순위 0과의 맵핑)을 포함할 수도 있다. 이러한 일 실시형태에서, 맵핑은 차용자의 할당 가능한 리소스 값들의 범위에서의 할당 가능한 리소스 값들의 서브 범위에 대한, 차용자에게로의 할당에 이용 가능한 우선순위 값들의 범위에서의 우선순위 값들의 서브범위의 삽간(예컨대, 상기 실례에서, 우선순위들 1, 2, 3에 걸쳐서 리소스들 4, 5, 6의 삽간)을 포함할 수도 있다.
차용자들(130)의 우선순위는 가용 우선순위들의 임의의 다른 적합한 범위들, 할당 가능한 리소스 값들의 범위들, 가용 우선순위들의 범위들과 할당 가능한 리소스 값들의 범위들과의 맵핑들 등뿐 아니라 이들의 다양한 조합들을 이용하여 수행될 수도 있다는 것이 인지될 것이다. 가용 우선순위들의 범위들 및/또는 할당 가능한 리소스 값들의 범위들은 임의의 다른 적합한 방식으로 (예컨대, 상이한 타입들의 값들 등을 이용하여) 측정될 수도 있다는 것이 더 인지될 것이다.
일 실시형태에서, RMI(120)는, 제 2 VRP에 현재 할당된 리소스가 제 1 VRP와 관련된 리소스에 대한 리소스 요청에 응답하여 제 1 VRP에 대한 재할당을 위해 선점되어 리소스 요청이 서빙될 수도 있는 경우, 선점을 이용하여 차용자들(130)에게로의 리소스들(110)의 할당을 관리할 수도 있다. 이것은 또한, 제 2 VRP로부터 제 1VRP에 재할당되는 리소스가, 선점된 차용자(130)에게 현재 할당되는 제 2 VRP의 리소스들을 현재 이용하고 있는 차용자(130)의 선점을 포함할 수도 있다는 것이 인지될 것이다. 이 관점에서, "선점"이라는 용어는 전반적으로 제 2 엔티티(예컨대, HRP, VRF, 차용자)에게 현재 할당된 리소스의 제 1 개체(예컨대, HRP, VRF, 차용자)에 대한 재할당을 나타낸다.
일 실시형태에서, 차용자(130)로부터의 리소스 요청이 리소스 요청에 기초하여 식별된 VRP에 의해 서빙될 수 없다(예컨대, 식별된 VRP가 차용자(130)에게로의 할당에 대해 이용 가능한 임의의 추가 리소스들을 갖지 않는다)는 결정 시, 차용자(130)의 리소스 요청을 서빙하는 데 있어서, 식별자 VRP에 의한 사용을 위해 식별된 VRP에게로의 리소스 재할당을 트리거하고자 하도록 하기 위해 리소스 재할당 요청이 개시된다. 식별된 VRP에 대해 개시된 리소스 재할당 요청은 식별된 VRP의 관련 MRP로부터의 재할당을 위한 요청, HRP(122)의 하나 이상의 다른 VRP들로부터의 리소스의 재할당을 위한 요청 등뿐 아니라 이들의 다양한 조합들일 수도 있다. 리소스 재할당 요청은 임의의 적합한 방식으로 트리거될 수도 있으며, 이는 관련 HRP(122)가 관리되는 방식에 의존할 수도 있다. 도 3의 배열물에 관하여, 예를 들어, 리소스 재할당 요청은 계층 리소스 풀 관리자(305)에 의해 개시되어, 계층 리소스 풀 관리자(305)가 VRP들(202V) 중 하나 이상으로부터 식별된 VRP(202)로의 리소스 재할당을 초래하도록 할 수도 있다. 도 4의 배열물에 관하여, 예를 들어, 리소스 재할당 요청은 VRP 관리자들(405V) 내지 MRP 관리자(405M) 및/또는 하나 이상의 다른 VRP 관리자들(405V)에 의해 (예컨대, 직접적으로 또는 MRP 관리자(405M)를 통해) 개시될 수도 있다.
일 실시형태에서, MRP의 관리자가 식별된 VRP의 관리자의 리소스 재할당 요청을 수신할 때, MRP의 관리자는, 식별된 VRP의 관리자로부터의 리소스 요청에 기초하여, 식별된 VRP에 의한 사용을 위해 다른 VRP로부터의 리소스(예컨대, 다른 VRP의 가용 리소스 또는 다른 차용자(130)에게 현재 할당된 다른 VRP의 리소스)를 선점할 것인지를 결정한다. MRP의 관리자는 리소스가 선점될 수도 있는 후보 VRP(들)를 식별하는 데 하나 이상의 선점 인자들을 이용할 수도 있다. 마찬가지로, MRP의 관리자 및/또는 후보 VRP(들)의 관리자는, (차용자(130)의 선점이 요구되는 경우) 리소스가 선점될 후보 차용자(130)를 식별하는 데 하나 이상의 선점 인자들을 이용할 수도 있다.
일 실시형태에서, 후보 VRP의 관리자가 식별 VRP의 관리자의 리소스 재할당 요청을 수신할 때, 후보 VRP의 관리자는 리소스 재할당 요청을 서빙하고자 한다. 일 실시형태에서, 후보 VRP의 관리자는 먼저, 후보 VRP가 식별된 VRP에게 재할당될 수도 있는 임의의 미할당된 리소스들을 갖고 있어, HRP(122)의 차용자들(130) 중 어느 것도 선점될 필요가 없는지를 결정한다. 추가의 일 실시형태에서, 후보 VRP의 관리자가, 후보 VRP가 어떠한 이용 가능한 임의의 미할당 리소스들도 갖지 않는다(즉, 후보 VRP의 모든 리소스들이 차용자들(130)에게 현재 할당되어 있다)고 결정할 때, 후보 VRP의 관리자는, 식별된 VRP에 의해 요청되는 리소스를 제공하기 위해 후보 VRP의 차용자들(130) 중 하나를 선점할 것인지를 결정한다. 후보 VRP의 관리자는 리소스가 선점될 수도 있는 후보 차용자(130)를 식별하는 데 하나 이상의 선점 인자들을 이용할 수도 있다. 후보 VRP의 관리자가 식별된 VRP에 의해 요청된 리소스를 제공하기 위해 후보 VRP의 차용자들(130) 중 하나를 선점하도록 결정하면, 후보 VRP의 관리자는 (예컨대, 직접적으로 또는 MRP의 관리자를 통해서) 선점된 차용자(130)의 리소스를 식별된 VRP에 이용 가능하게 만든다. 후보 VRP의 관리자가 타깃 VRP에 의해 요청된 리소스를 제공하기 위해 후보 VRP의 차용자들(130) 중 임의의 차용자를 선점할 것을 결정하지 않으면, 후보 VRP의 관리자는 다음의 동작들, 즉 (a) 식별된 VRP에게 그것이 그 식별된 VRP에 의해 요청된 리소스를 제공할 수 없다는 것을 통지하는 동작, (b) 식별된 VRP의 리소스 재할당 요청을 하나 이상의 다른 VRP들의 관리자(들) 및/또는 MRP에게 (예컨대, HRP(122)에서 그의 부모의 관리자, HRP(122)의 하나 이상의 다른 브랜치들의 관리자(들) 등뿐 아니라 이들의 다양한 조합들) 전달하는 동작 등뿐 아니라 이들의 다양한 조합들 중 하나 이상을 개시할 수도 있다.
후보 VRP의 관리자가 식별된 VRP들 대신에 수신된 리소스 재할당 요청들을 서비스하고자 하는 실시형태들에 관해 주로 도시되고 설명되지만, 일 실시형태에서, 후보 VRP의 관리자는 리소스 재할당 요청을 거부할 수도 있다. 이러한 일 실시형태에서, 후보 VRP의 관리자는 (1) 차용자(130)로부터의 리소스(110)의 선점을 초래할 리소스 재할당 요청들을 거부하도록 허용될 수도 있고, (2) (예컨대, 후보 VRP가 하나 이상의 미할당된 리소스들을 갖는 경우와 같이) 차용자(130)로부터의 리소스(110)의 선점을 초래하지 않을 리소스 재할당 요청들을 거부하도록 허용하지 않을 수도 있다. 이러한 일 실시형태에서, 후보 VRP의 관리자는 그 요청들이 차용자(130)로부터의 리소스(110)의 선점을 초래할 것인지의 여부와는 무관하게 임의의 리소스 재할당 요청들을 거부하도록 허용될 수도 있다. 일부 실시형태들에서, 소정의 HRP(122)의 상이한 VRP들이 그와 관련된 상이한 거부 승인들을 갖는 경우, 상이한 HRP들(122)의 VRP들이 그와 관련된 상이한 거부 승인들을 갖는 경우 등뿐 아니라 이들의 다양한 조합들과 같은, 이러한 실시형태들의 조합들이 사용될 수도 있다.
이 방식으로, 리소스 재할당 요청들은 잎들로부터 뿌리를 향하는 방향으로 관련 HRP(122)의 계층 트리 구조를 진행시킬 수도 있다. 일부의 이러한 실시형태들에서, 리소스 재할당 요청들은 동시에 한 계층 레벨에 의해 및/또는 동시에 다수의 계층 레벨들에 의해 트리를 진행시킬 수도 있다. 이러한 실시형태들에서, 계층 트리 구조는 임의의 적합한 방식으로 트래버스될 수도 있다(예컨대, 하나의 자식 VRP로부터 리소스 재할당 요청을 수신한 VRP는 계층 트리 구조의 다음으로 높은 층에 대한 리소스 재할당 요청들에 앞서 그의 다른 자식 VRP들 모두 또는 일부를 선점하고자 할 수도 있고, 하나의 자식 VRP로부터 리소스 재할당 요청을 수신한 VRP는 리소스가 선점되거나 계층 트리 구조가 배출될 때까지 계층 트리 구조의 다음으로 높은 층에 대해 리소스 재할당 요청들을 개시함과 동시에 그의 다른 자식 VRP들 일부 또는 모두를 선점하고자 할 수도 있으며, 그 외의 것과 이들의 다양한 조합들이 가능하다).
이 방식으로, 리소스 재할당 요청들은 HRP(122)를 이용하여 관리된 리소스 타입(112)의 리소스들(110)이 HRP(122)의 다양한 VRP들 중에서 공유되어 차용자들(130)에게로의 제어된 동적 할당을 가능하게 할 수도 있도록 HRP 내에서 전달될 수도 있다.
일 실시형태에서, 리소스(110)가 선점될 수도 있는 후보 VRP를 식별하는 데 (그리고, 차용자(130)의 선점 경우에 있어서, 선점될 후보 차용자(130)를 식별하는 데) 이용될 수도 있는 하나 이상의 선점 인자들은,
(1) 차용자 우선순위들:
(a) 차용자 유지 우선순위들: 이들은 리소스(110)가 그로부터 선점될 수도 있는 차용자들(130)의 임대 유지 우선순위들이다. 일반적으로, 더 낮은 유지 우선순위를 갖는 차용자들(13)은 더 높은 유지 우선순위를 갖는 차용자들(13)에 앞서 선점되어야 한다.
(b) 차용자 요청 우선순위: 이것은 리소스(110)가 그를 위해 선점될 수도 있는 차용자(130)의 우선순위이다. 이것은 잠재적으로 선점될 차용자(130)로서 선택된 차용자(130)의 차용자 유지 유선순위에 비교될 수도 있다.
(2) 리소스 임대 수명: 이들은 리소스(110)가 그로부터 선점될 수도 있는 차용자들(130)에게 현재 할당된 리소스 임대의 수명이다. 일 실시형태에서, 단기 임대의 선점은 장기 임대의 선점보다 우선적인데, 이는 이것이 HRP들(122) 중 적어도 하나에서 효율적인 캐시 최적화(예컨대, 데이터베이스 커넥션들)를 허용하기 때문이다. 더 높은 우선순위를 갖는 리소스 임대는 일반적으로 차용자(130)에 대해 이용 가능한 더 길게 생존하는 리소스들(110)을 갖는 경향이 있게 될 것임이 이해될 것이다.
(3) 적절한 선점(graceful preemption): 이것은 VRP 또는 MRP가 차용자(130)로부터 리소스(110)를 강제적으로 취하는 것을 방지하기 위해 구현된다. 이것은, 요청하는 차용자(130)에게 응답하기 위해, 선점된 차용자(130)가 안전하게 양도할 수 있는 제 1 후보 리소스가 사용될 수 있지만, 선점된 차용자(130)의 제 1 후보 리소스가 매우 장수하는 리소스일 수도 있어, 임의의 선점이 다른 선점 인자들과 직접적으로 충돌하게 되기 때문에, 다른 선점 인자들과는 약간 불화를 이룰 수도 있다.
상이한 선점 인자들을 포함한 다소의 선점 인자들은 리소스(130)가 선점될 수도 있는 후보 VRP를 식별하는 데 사용될 수도 있다는 것이 인지될 것이다.
선점 인자들 중 일부 또는 모두는 서로 충돌할 수도 있기 때문에, 선점 인자들은 임의의 적합한 방식으로 (예컨대, 임의의 적합한 순서, 선점 인자들 중 상이한 것들에 대한 상이한 가중치 또는 우선순위들의 부여 등뿐 아니라 이들의 조합들로) 고려될 수도 있다는 것이다.
일 실시형태에서, 리소스가 선점될 수도 있는 후보 VRP를 식별하는 데 있어서의 선점 인자들의 사용(예컨대, 인자들이 사용됨, 서로에 대한 인자들의 가중치 부여 등)은 상이한 리소스 풀들에 대해 상이할 수도 있다. 예를 들어, 하나의 HRP(122)의 인자들의 사용은 다른 HRP(122)의 인자들의 사용과는 상이할 수도 있다. 예를 들어, 소정의 HRP(122)에 대해, 하나의 VRP의 인자들의 사용은 다른 VRP의 인자들의 사용과는 상이할 수도 있다. 선점 결정을 내리는 데 있어서 선점 인자들의 사용을 제어하는 데 임의의 적합한 레벨의 입도가 이용될 수도 있다.
일 실시형태에서, RMI(120)는 리소스 관리 능력을 제공하는 데 있어서 RMI(120)의 동작과 관련된 리소스 관리 통계를 모니터링하고 유지시킬 수도 있다. 예를 들어, RMI(120)는 리소스 임대 시간, 보유 중인 차용 카운트들, 선점 카운트들 등뿐 아니라 이들의 조합들과 같은 통계를 모니터링할 수도 있고, 유지시킬 수도 있다. 리소스 관리 통계는 리소스 관리 능력의 동적인 튜닝을 가능하게 하는 데 사용되며, 이에 따라, 모니터링되고 유지되는 리소스 관리 통계는 리소스 관리 능력을 제공하는 데 있어서 RMI(120)의 동작의 자동 튜닝을 가능하게 하는 데 사용하기 위해 적합한 임의의 타입의 통계를 포함할 수도 있다. 리소스 관리 통계는 또한 최종 사용자들에 의한 리소스 관리 능력에 가시성을 제공하는 데 사용될 수 있고, 이에 의해 리소스 관리 능력을 제공하는 데 있어 RMI(120)의 동작의 수동 튜닝을 가능하게 할 수도 있다. 리소스 관리 능력의 튜닝은, HRP들의 재정의, 하나 이상의 HRP들의 하나 이상의 VRP들의 재정의 및/또는 재조직화, 차용자 우선순위 설정 프로세서의 재정의(예컨대, 차용자(들)(130)에 대한 가용 우선순위들의 범위(들), 차용자(들)(130)에 대한 할당 가능한 리소스 값들의 범위(들), 가용 우선순위들의 범위(들)과 차용자들(130)에 대한 할당 가능 리소스 값들의 범위(들)과의 맵핑, 차용자들(130)의 우선순위들을 결정하기 위한 기초 등뿐 아니라 이들의 조합들), 차용자 선점 프로세스의 재정의(예컨대, 리소스 재할당 요청들이 제기되는 방식(예컨대, MRP 로의 계층 리소스 트리의 직접적인 트래버싱 등), 선점을 결정하는 데 있어서 사용되는 인자들, 선점을 결정하는 데 사용되는 인자들의 가중치 부여 등뿐 아니라 이들의 조합들) 등뿐 아니라 이들의 조합들과 같은 임의의 적합한 수정들을 포함할 수도 있다. 여기에서는 RMI(120)가 리소스들(110)의 관리와 관련된 리소스 관리 통계를 모니터링하고 유지하는 실시형태들에 대해 주로 도시되고 설명되지만, 임의의 다른 적합한 콤포넌트들 또는 NMS(100) 및/또는 하나 이상의 다른 시스템들의 콤포넌트들이 리소스들(110)의 관리와 관련된 리소스 관리 통계를 모니터링하고 유지시킬 수도 있다는 것이 인지될 것이다.
일 실시형태에서, NMS(100)는 RMI(120) 내로의 가시성을 지원한다. RMI(120) 내로의 가시성은 임의의 적합한 방식으로 제공될 수도 있다. 이러한 일 실시형태에서, RMI(120) 내로의 가시성은, 하나 이상의 인터페이스 모듈들(142)를 통해서 RMI(120)에 액세스하는 하나 이상의 타입들의 사용자 인터페이스들(141)을 통해 제공될 수도 있다. 사용자 인터페이스들(141)의 타입들은, RMI(120)에 액세스하고 그와 상호작용하는 데 있어서 사용하기에 적합한 사용자 인터페이스들의 임의의 타입들을 포함한다. 예를 들어, 사용자 인터페이스들(141)은 그래픽 사용자 인터페이스 (예컨대, NMS(100)의 사용자들의 사용자 워크스테이션들, 웹 콘솔 등을 경유함), 커맨드 회선 인터페이스(CLI) 유틸리티, 애플리케이션 프로그래머 인터페이스(API) 등뿐 아니라 이들의 조합들 중 하나 이상을 포함할 수도 있다. 인터페이스 모듈(142)은 사용자 인터페이스들(141)과 RMI(120) 사이의 인터페이싱을 지원하는 데 있어서의 사용을 위해 적응된 임의의 인터페이스 모듈들을 포함한다. 예를 들어, 인터페이스 모듈(142)은 자바 관리 확장(Java Management Extensions: JMX), 간단한 네트워크 관리 프로토콜(Simple Network Management Protocol: SNMP) 등뿐 아니라 이들의 조합들을 포함할 수도 있다. 사용자 인터페이스들(141) 및 인터페이스 모듈(142)을 통해 제공된 RMI(120) 내로의 가시성은 리소스 관리 통계의 리뷰 리소스 관리 능력의 다양한 양태들의 구성 및 재구성 등뿐 아니라 이들의 조합들과 같은 다양한 기능들을 수행하도록 이용될 수도 있다. 가시성이 RMI(120) 내로 제공되는 실시형태들에 대해서 주로 도시되고 설명되지만, 가시성은 RMI(120)에 의해 제공되는 리소스 관리 능력을 리뷰 및/또는 관리할 목적으로 RMI(120)에 의해 제공되는 리소스 관리 능력과 관련된 NMS(100)의 다른 엘리먼트들 내로 제공될 수도 있다.
여기에서 특정 엘리먼트들(즉, 리소스 관리 능력의 동작에 특정적인 것들)을 포함하는 것으로 주로 도시되고 설명되지만, NMS(100)는 NMS 내에서 구현될 수도 있는 임의의 다른 엘리먼트들을 포함할 수도 있다는 것이 인지될 것이다. 예를 들어, NMS(100)는 프로세서들, 메모리, 데이터베이스들(예컨대, 하나 이상의 관리 정보 베이스들(MIBs), 내부 통신 버스트, (예컨대, 네트워크 통신, NMS(100)를 사용한 사용자들의 사용자 워크스테이션들과 통신 등뿐 아니라 이들의 조합들을 위한) 입력/출력 모듈들을 포함할 수도 있다. 일 실시형태에서, 예를 들어, NMS(100)SMS EH 7과 관련하여 도시되고 설명된 컴퓨터(700)를 사용하여 구현될 수도 있다. 이 방식으로, 리소스 관리 능력은 임의의 특정 설계를 갖는 NMS로 국한되도록 의도된 것이 아니라, 리소스 관리 능력을 이용하여 관리될 수도 있는 리소스들을 갖는 임의의 NMS에서 이용될 수도 있다.
여기에서 중앙집중식 NMS인 것으로 주로 도시되고 설명되지만, NMS(100)는 분산형 방식으로 구현될 수도 있다는 것이 인지될 것이다. 예를 들어, 여기에서 설명된 바와 같이, NMS(100)의 일부분을 형성하는 것으로 도시된 차용자들(130)은 리소스 관리 능력이 제공되는 NMS(100)로부터 원격인 엔티티들을 포함할 수도 있다. 따라서, 차용자들(130)의 적어도 일부와 NMS(100) 사이의 통신은, 예컨대 NMS(100)로부터 지리적으로 멀리 떨어진 NOC들에 위치된 사용자들이 NMS(100)에 액세스할 수도 있고, 그에 따라 다양한 기능들을 수행하기 위해 NMS(100)의 리소스들을 이용할 수도 있는 임의의 적합한 통신 경로들(하나 이상의 통신 네트워크들을 포함할 수도 있음)을 통할 수도 있다. 마찬가지로, 예를 들어, 여기에서 설명되는 바와 같이, 사용자 인터페이스들(141)을 통한 NMS(100)로의 액세스는, 예컨대 NMS(100)로부터 지리적으로 멀리 떨어진 NOC들에 위치된 사용자들이 NMS(1200)에 액세스할 수도 있는 임의의 적합한 통신 경로들(하나 이상의 통신 네트워크들을 포함할 수도 있음)을 통해 원격으로 수행될 수도 있다. 마찬가지로, 예를 들어, NMS(100)의 다른 부분들은 물리적 분산 방식으로 구현될 수도 있다는 것이 인지될 것이다. 이와 같이, NMS(100)의 일부분을 형성하는 것으로 도시되고 설명된 다양한 콤포넌트들은 임의의 적합한 중앙집중형 및/또는 분산형 설계를 이용하여 구현될 수도 있다는 것이 인지될 것이다.
도 5는 시스템의 리소스를 요청하는 차용자로부터의 리소스 요청을 프로세싱하는 방법의 일 실시형태를 도시한다.
단계 502에서, 방법(500)이 시작된다.
단계 504에서, 리소스 요청이 수신된다. 리소스 요청은 차용자로부터 수신된다. 리소스 요청은 외연적 리소스 요청(예컨대, 요청 자체는 요청되는 리소스들의 타입 및/또는 양의 외재적 표시를 포함할 수도 있고 또는 포함하지 않을 수도 있는 리소스들에 대한 요청을 외재적으로 나타냄)일 수도 있고, 또는 내재적 리소스 요청(예컨대, 요청 자체는 리소스들에 대한 요청을 외연적으로 나타내지는 않지만, 그 요청에 기초하여, 리소스들이 요청을 서빙하기 위해 요구될 수도 있고 또는 요구될 것이라는 결정이 이루어질 수도 있음)일 수도 있다. 타입의 표시가 아닌 외재적 요청의 경우, 요청되는 리소스들의 타입 및 양은 리소스 요청과 관련된 하나 이상의 특성들을 이용하여 결정될 수도 있다. 내재적 요청의 경우, 요청의 하나 이상의 특성들은 리소스가 요구될 수도 있고 또는 요구될 요청으로서 그 요청을 식별하고, 요청되는 리소스들의 타입 및 양을 식별하는 데 사용될 수도 있다. 요청의 특성들은 리소스가 요구될 수도 있고 또는 요구될 요청으로 그 요청을 식별하는 데 있어서 및/또는 요청되는 리소스의 타입 및 양을 식별하는 데 있어서 사용하기에 적합한 임의의 특성들(예컨대, 요청이 소스, 요청의 타입, 요청의 적어도 하나의 파라미터 등뿐 아니라 이들의 다양한 조합들)을 포함할 수도 있다.
단계 506에서, 리소스 요청과 관련된 VRP가 식별된다. 리소스 요청과 관련된 VRP는 임의의 적합한 방식으로 식별될 수도 있다.
일 실시형태에서, 리소스 요청과 관련된 VRP는 리소스 요청 내에서 외연적으로 식별되며, 이에 의해 그 요청과 관련된 VRP는 리소스 요청으로부터 직접적으로 식별될 수도 있다. 리소스 요청 내에서 관련 VRP의 외연적 사양은 임의의 적합한 방식으로 (예컨대, 식별자들이 HRP들에 걸쳐서 고유한 경우에 그 고유한 VRP의 이용, VRP 식별자들이 그들의 각각의 리소스 타입들/HRP들 내에서만 고유한 경우의 리소스 타입/HRP 식별자 및 VRP 식별자 등뿐 아니라 이들의 조합들을 이용하여) 제공될 수도 있다는 것이 인지될 것이다. 리소스 요청의 리소스 타입의 VRP들 중 하나는 리소스 요청 내에서 외연적으로 특정될 수도 있고 또는 특정되지 않을 수도 있다.
일 실시형태에서, 리소스 요청과 관련된 VRP는 리소스 요청 내에서 외연적으로 식별되지 않으며, 이에 따라 관련 VRP는 리소스 요청과 관련된 정보 및 리소스 요청이 관련되는 HRP와 관련된 정보의 프로세싱을 이용하여 식별된다.
리소스 요청에서 요청된 리소스의 리소스 타입이 리소스 요청 내에서 외연적으로 특정되지 않는 일 실시형태에서, 리소스 요청의 리소스 타입의 VRP들 중 하나의 결정은, 리소스 요청에서 요청된 리소스의 리소스 타입을 결정하는 단계를 포함할 수도 있다. 리소스 요청에서 요청된 리소스의 리소스 타입은 리소스 요청 내에서 외연적으로 특정될 수도 있고 또는 특정되지 않을 수도 있다. 리소스 타입이 리소스 요청에서 외연적으로 특정되면, 리소스 타입은 직접적으로 결정된다. 리소스 타입이 리소스 요청 내에서 직접적으로 특정되지 않으면, 리소스 타입은 리소스 요청과 관련된 하나 이상의 특성들로부터 결정된다. 리소스의 리소스 타입을 결정하는 데 이용될 수도 있는 리소스 요청의 특성들은 리소스 요청에서 요청되는 리소스의 리소스 타입을 결정하는 데 있어서 사용하기에 적합한 임의의 특성들(예컨대, 요청의 소스, 요청의 요청 타입, 요청의 적어도 하나의 파라미터 등뿐 아니라 이들의 조합들)을 포함할 수도 있다. 이러한 실시형태들에서, 리소스 타입의 결정은 리소스 요청에서 요청된 리소스의 타입을 관리하는 데 이용되는 HRP를 식별하는 데 사용될 수도 있고, 그에 따라 리소스 요청과 관련된 하나 이상의 추가 특성들은 리소스 요청의 리소스 타입의 VRP들 중 하나를 결정하는 데 이용될 수도 있다.
일 실시형태에서, 리소스 요청과 관련된 VRP는 리소스 요청과 관련된 하나 이상의 특성들을 이용하여 식별된다. 이러한 일 실시형태에서, 리소스 요청과 관련된 VRP는 (1) 리소스 요청과 관련된 하나 이상의 특성들을 결정하고, (2) HRP와 관련된 HRP 정의 정보에 리소스 요청과 관련된 하나 이상의 특성들을 비교함으로써 식별되며, 여기서 HRP 정의 정보는 리소스 요청의 하나 이상의 특성들에 기초하여 리소스 요청과 관련된 VRPDP 리소스 요청을 상관시키는 데 있어서 사용하기에 적합한 정보를 포함한다. 이러한 일 실시형태에서, HRP 정의 정보는, HRP의 VRP들 각각에 대해, VRP와 관련된 하나 이상의 특성들을 포함하며, 이들 특성들은 VRP에 의해 서빙되는 것으로 의도된 리소스 요청들을 정의한다. 이 실시형태에서, 리소스 요청과 관련된 VRP는 (1) 리소스 요청과 관련된 하나 이상의 특성들을 결정하고, (2) 리소스 요청의 특성들과 가장 긴밀하게 매칭하는 특성들을 갖는 VRP가 식별될 때까지 VRP들 중 적어도 일부의 각각에 대한 하나 이상의 특성들에 리소스 요청의 하나 이상의 특성들을 비교함으로써 식별된다. 따라서, 리소스 요청의 특성(들)은 HRP의 VRP들 중 어느 것이 리소스 요청과 가장 긴밀하게 관련되고, 관련 HRP가 정의되는 방식에 의존할 수도 있는지를 식별하는 데 있어서 사용하기에 적합한 임의의 특성(들)(즉, 리소스 요청이 관련되는 HRP의 계층 구조를 정의하는 데 사용되는 특성)을 포함할 수도 있다. 예를 들어, 리소스 요청과 관련된 VRP를 결정하는 데 있어서 사용하기에 적합한 특성들은 요청의 소스, 리소스 타입의 요청 타입 등뿐 아니라 이들의 조합들 중 하나 이상을 포함할 수도 있다.
적어도 전술한 실시형태들 및 관련 실례들로부터, 리소스 요청 내에 포함되거나, 그로부터 결정되거나, 또는 그와 달리 관련되는 임의의 특성 또는 특성들은 차용자로부터 수신된 리소스 요청의 리소스 타입에 대한 리소스들의 할당을 관리하는 데 이용되는 VRP를 식별하는 데 이용될 수도 있다는 것이 인지될 것이다.
단계 508에서, 다수의 리소스 요청들이 계류 중인지에 대해 결정이 이루어진다. 다수의 리소스 요청들은 그와 관련된 상이한 우선순위들을 갖는 하나 이상의 차용자들로부터의 것일 수도 있어, (예컨대, 리소스 요청들이 계류 중인 리소스 요청 리소스에 수신 및 추가될 때, 리소스들이 할당되고 관련 요청들이 계류 중인 리소스 요청 리스트로부터 제거될 때, 차용자들의 우선순위들이 차용자들에게 할당된 리소스들의 현재 수에 기초하여 변하도록 리소스들이 차용자들에게 할당되고 그들로부터 할당해제 될 때 등뿐 아니라 이들의 조합들에서) 리소스 요청들이 서빙되는 순서는 하나 이상의 인자들에 응답하여 동적으로 변할 수도 있다. 다수의 리소스 요청들이 계류 중이 아닌 경우, 방법(500)은 단계 514로 진행한다. 다수의 리소스 요청들이 계류 중인 경우, 방법(500)은 단계 510으로 진행한다.
단계 510에서, 차용자 경쟁 프로세스가 수행된다. 차용자 경쟁 프로세스는 차용자들의 리소스 요청들이 서빙되는 순서를 관리하기 위한 프로세스이며, 여기서 그 순서는 하나 이상의 인자들(단계 508과 관련하여 전술됨)에 기초하여 시간에 변할 수도 있다. 단계 510으로부터, 방법(500)은 단계 512로 진행한다. 단계 512에서, 방법(500)의 차용자(즉, 단계 504에서 수신된 리소스 요청과 관련된 차용자)의 리소스 요청이 프로세싱될 수 있는지에 대한 결정이 이루어지며, 이는 단계 510의 차용자 경쟁 프로세스의 현재 상태에 기초한다. 차용자의 리소스 요청이 프로세싱될 수 없다는 결정이 내려지면, 방법(500)은 단계 510으로 되돌아간다(즉, 단계 510의 차용자 경쟁 프로세스는 단계 512에서 나타내진, 방법(500)의 차용자의 리소스 요청이 프로세싱될 수 있도록 하는 결정이 내려질 때까지 계속해서 수행된다). 차용자의 리소스 요청이 프로세싱될 수 있다는 결정이 내려지면, 방법(500)은 단계 514로 진행한다(즉, 방법(500)의 차용자의 리소스 요청은, 그것이 이후에 프로세싱될 수도 있도록 리소스 요청 큐의 전면에 도달했다). 이 방식으로, 차용자들의 리소스 요청들이 서빙되는 순서가 변할 때, 단계 510의 차용자 경쟁 프로세스는 방법(500)의 차용자의 리소스 요청이 프로세싱될 수 있을 때까지 계속해서 수행된다(즉, 방법(500)의 차용자는, 방법(500)의 차용자의 리소스 요청이 프로세싱될 수 있고, 그에 따라 방법(500)이 단계 514로 진행할 수도 있다는 단계 512에서의 결정에 의해 나타내지는, 차용자의 리소스 요청을 서비스하고자 하는 시도가 이루어지기 전의 일부 기간을 기다릴 필요가 있을 수도 있다).
단계 514에서, 식별된 VRP가 리소스 요청을 서빙하는 데 이용 가능한 (즉, 리소스 요청 시에 차용자에 의해 요청된 리소스를 차용자에게 할당하기 위한) 리소스들을 갖는지에 대한 결정이 이루어진다. 식별된 VRP가 차용자의 리소스 요청을 서빙할 수도 있도록 이용 가능한 리소스들을 갖는다면, 방법(500)은 단계 522로 진행한다. 식별된 VRP가 차용자의 리소스 요청을 서빙하지 못할 수도 있도록 이용 가능한 리소스들을 갖지 않는다면, 방법(500)은 단계 516으로 진행한다.
단계 516에서, 리소스 선점 프로세스가 수행된다. 리소스 선점 프로세스는, 차용자의 리소스 요청을 서빙하기 위해 식별된 VRP에 의한 사용을 위해 선점된 리소스를 재할당하도록 리소스를 선점할지(예컨대, VRP를 선점하고, 선택적으로, 그 VRP의 차용자를 선점할지)를 결정하기 위한 프로세스이다. 리소스 선점 프로세스는 도 1과 관련하여 제공된 선점의 설명을 참조하면 더 잘 이해될 수도 있다.
단계 518에서, 선점 요청이 승인되었는지에 대해 (즉, 식별된 VRP에 의해 요구되는리소스가 차용자의 리소스 요청을 서빙하는 데 사용하기 위해 식별된 VRP에게 선점되었고 재할당되었는지에 대해) 결정이 이루어진다. 선점 요청이 승인되지 않았다는 판저잉 이루어지면, 방법(500)은 단계 520으로 진행한다. 선점 요청이 스인되었다는 결정이 내려지면, 방법(500)은 단계 522로 진행한다.
단계 520에서, 차용자가 리소스들의 할당을 기다리는지에 대한 결정이 이루어진다. 차용자가 리소스들의 할당을 기다리는지에 대한 결정은 임의의 적합한 인자들에 기초할 수도 있다. 예를 들어, 차용자가 리소스들의 할당을 기다리는지에 대한 결정은 차용자의 구성, 즉 적어도 일부의 차용자들이 3개의 모드들(예컨대, 도 1에 관해 설명됨) 중 하나에서 동작하도록 구성될 수도 있는 구성에 기초한다. 예를 들어, 차용자가 리소스들의 할당을 기다리는지에 대한 결정은, 차용자가 리소스를 기다릴 수 있거나 기다리려고 하는 시간(예컨대, 도 1의 차용자들에 대해 설명된 바와 같이, 차용자의 리소스 요청이 타임아웃된 후, 차용자가 설정된 양의 시간을 기다리려고 하는 경우)의 길이에 기초할 수도 있다. 차용자가 리소스들의 할당을 기다리는지에 대한 결정은, 이러한 인자들의 조합뿐 아니라 임의의 다른 적합한 인자들에 초할 수도 있다. 차용자가 리소스들의 할당을 기다리지 않으면, 방법(500)은 (요청된 리소스를 차용자에게 할당하지 않고) 방법(500)이 종료되는 점인 단계 524로 진행한다. 차용자가 리소스들의 할당을 기다린다면, 방법(500)은 (차용자 선점 프로세스가 계속해서 실행 중이거나 재개되는 지점인) 단계 516 및 그 뒤의 단계 518로 되돌아간다.
단계 522에서, 리소스는 리소스 요청에 응답하여 차용자에게 할당된다. 리소스는 식별된 VRP로부터 할당된다. 단계 512-50에서 나타내진 바와 같이, 할당된 리소스는, 차용자로부터의 리소스 요청이 수신되거나 또는 리소스가 리소스 선점을 통해 식별된 VRP에게 제공될 때, 식별된 VRP로부터 이용 가능한 리소스일 수도 있다. 단계 522로부터, 방법(500)은 단계 524로 진행한다.
단계 524에서, 방법(500)이 종료된다.
명료성을 위해, 도 5의 방법(500)으로부터 생략되었지만, 리소스 선점 프로세스가 수행되는 동안, 식별된 VRP의 리소스가 이용 가능하게 되는 일 실시형태에서, 방법(500)은, 식별된 VRP의 새롭게 이용 가능한 리소스가 차용자에게 제공될 수도 있도록 (예컨대, 단계 516, 단계 518 또는 단계 520으로부터) 단계 522로 자동 진행할 수도 있다. 이러한 일 실시형태에서, 리소스 선점 프로세스는 종료될 수도 있다(또한, 적절한 종료가 바람직한 것이 인지될 것이다). 이러한 다른 실시형태에서, 리소스 선점 프로세스는 (식별된 VRP가 이 지점에서 여전히 오버로드될 가능성이 있을 때) 하나 이상의 추가 리소스들이, 식별된 VRP에게 이용 가능하게 되도록 계속 수행될 수도 있다.
여기에서는, 리소스 관리가 리소스 타입 단위(즉, HRP(122)가 리소스 타입(112)의 리소스들(110)을 관리하기 위한 각각의 리소스 타입(112)에 대해 형성됨)로 제공되는 실시형태들에 대해 주로 도시되고 설명되지만, 상이한 리소스 관리 입도가 지원될 수도 있다.
일 실시형태에서, 예를 들어, 관리될 시스템의 모든 리소스들(다수의 리소스 타입들의 리소스들을 포함함)은 관리된 시스템에 대한 하나의 전체 HRP를 형성할 수도 있다. 이러한 일 실시형태에서, HRP에 의해 관리될 리소스는 MRP 아래의 HRP의 제 1 레벨(즉, MRP에 가장 가까운 VRP들의 제 1 계층적 층)이 복수의 리소스 타입들과 관련된 리소스들을 각각 관리하기 위한 복수의 VRP들을 포함하도록 조직될 수도 있다.
일 실시형태에서, 예를 들어, 하나 이상의 리소스 타입들의 리소스들은 하나 이상의 리소스 타입들 각각에 대해 다수의 HRP들을 이용하여 개별적으로 관리될 수도 있다. 이러한 실형태들에서, HRP들은 특정 리소스 타입들의 모든 리소스들을 관리하지 않을 것이며, 그 대신에 HRP들은 특정 리소스 타입들의 리소스들의 각각의 서브세트들을 관리할 것이다.
다른 리소스 관리 입도가 지원될 수도 있음이 인지될 것이다.
여기에서는, RMI(120)가 NMS(100)의 리소스들을 간접적으로 관리하는 실시형태들(예컨대, 리소스들(110)이 토큰들 또는 리소스들(110)의 다른 적합한 표현들을 이용하여 RMI(100)에 의해 관리되는 경우)에 대해 주로 도시되고 설명되지만, 적어도 하나의 다른 실시형태에서, RMI(120)는 NMS(100)의 일부 또는 모든 리소스들을 직접적으로 관리할 수도 있다. 이러한 실시형태들에서, RMI(120)의 하나 이상의 HRP들(122)은 HRP(들)(122)이 관련되는 각각의 리소스들(110)을 통해 직접적인 관리 제어를 가질 수도 있다. 이러한 실시형태들에서, 토큰들 또는 리소스들(110)의 다른 적합한 표현들의 제어를 통해 리소스들(110)을 관리하는 HRP들(122) 대신, HRP(들)(122) 중 하나 이상이 각각의 리소스들(110)을 직접적으로 관리할 수도 있다(예컨대, 리소스들(110)을 직접적으로 할당 또는 할당해제할 수도 있다).
NMS(100)의 리소스들(110)이 MRP를 갖는 하나 이상의 HRP들(122) 각각과 복수의 VRP들을 이용하여 관리되는 실시형태들에 관해 주로 도시되고 설명되었지만, 여기에서 도시되고 설명된 리소스 관리 능력의 다양한 실시형태들은 더 일반적인 리소스 관리 방식들의 맥락 내에서 제공될 수도 있다는 것이 인지될 것이다. 일 실시형태에서, 예를 들어, 여기에서 하나 이상의 HRP들(122)을 이용하여 제공되는 것으로 도시되고 설명된 기능들 중 적어도 일부분은, 반드시 MRP 및 관련된 복수의 VRP들로서 배열되는 것은 아닌 리소스 풀들의 계층 배열을 이용하여 제공될 수도 있다. 일 실시형태에서, 예를 들어, 여기에서 하나 이상의 HRP들(122)을 이용하여 제공되는 것으로 도시되고 설명된 기능들 중 적어도 일부분은, 반드시 계층적으로 배열되는 것은 아닌 복수의 리소스 풀들을 이용하여 제공될 수도 있다. 예를 들어, 이러한 실시형태들은, 차용자 우선순위 설정 기능들, 차용자 우선순위 기능들 등뿐 아니라 이들의 다양한 조합들과 같은, 여기에서 도시되고 설명된 다양한 능력들과 함께 사용될 수도 있다. 여기에서 도시되고 설명된 계층 리소스 관리 능력의 맥락 및 다른 타입들의 리소스 관리 방식들의 맥락 양측 모두에서 사용될 수도 있는 이러한 일 실시형태가 도 6과 관련하여 도시되고 설명된다.
도 6은 차용자들 사이에서 리소스들을 재할당할지를 결정하기 위한 방법의 일 실시형태를 나타낸다. 더 구체적으로, 도 6의 방법(600)은 제 2 차용자에게 현재 할당된 리소스를 제 1 차용자에게 재할당할지의 여부를 결정하는 방법을 제공한다.
단계 602에서, 방법(600)이 시작된다.
단계 604에서, 리소스 요청이 수신된다. 리소스 요청은 제 1 차용자로부터 수신된다.
단계 606에서, 제 1 차용자의 요청 우선순위가, 제 1 차용자와 관련된 현재 리소스 할당에 기초하여 결정된다. 제 1 차용자 요청 우선순위는, 도 1 내지 도 5에 관해 여기에서 설명된 바와 같은 것을 포함한 임의의 적합한 방식으로 결정될 수도 있다.
단계 608에서, 제 2 차용자의 요청 우선순위가, 제 2 차용자와 관련된 현재 리소스 할당에 기초하여 결정된다. 리소스들이 재할당될 수도 있는 후보 차용자로서 식별되는 제 2 차용자(예컨대, 시스템의 차용자들 중에서 최저 유지 우선순위를 갖는 시스템의 차용자, 리소스 풀의 차용자들 중에서 최저 유지 우선순위를 갖는 리소스 풀의 차용자, 무작위 등)가, 임의의 적합한 방식으로 식별될 수도 있다. 제 2 차용자 요청 우선순위는 도 1 내지 도 5에 관해 여기에서 설명된 바와 같은 것을 포함하는 임의의 적합한 방식으로 결정될 수도 있다.
단계 610에서, 제 2 차용자의 제 2 차용자 리소스 할당 중 임의의 것을 제 1 차용자에게 재할당할지에 대한 결정이 이루어진다. 제 2 차용자의 제 2 차용자 리소스 할당 중 임의의 것을 제 1 차용자에게 재할당할지에 대한 결정은 적어도 제 1 차용자 요청 우선순위 및 제 2 차용자 유지 우선순위를 이용하여 이루어진다. 제 2 차용자의 제 2 차용자 리소스 할당 중 임의의 것을 제 1 차용자에게 재할당할지에 대한 결정은, 임의의 다른 적합한 인자들(예컨대, 임대 시간, 적합한 선점 고려사항들 등뿐 아니라 이들의 다양한 조합들)을 이용하여 이루어질 수도 있다. 제 2 차용자로부터의 리소스들을 제 1 차용자에게 재할당하라는 결정이 내려지면, 방법(600)은 단계 612로 진행한다. 제 2 차용자로부터의 리소스들을 제 1 차용자에게 재할당하라는 결정이 내려지면, 방법(600)은 단계 614로 진행한다.
단계 612에서, 제 2 차용자의 리소스들이 제 1 차용자에게 재할당된다. 제 2 차용자의 리소스들은 임의의 적합한 방식으로 제 1 차용자에게 재할당될 수도 있다. 단계 612로부터, 방법(600)은 단계 614(하나 이상의 제어 동작들이 수행될 수도 있는 지점임)로 진행할 수도 있고, 또는 단계 616(방법(600)이 종료되는 지점임)으로 진행할 수도 있다.
단계 614(선택적 단계)에서, 하나 이상의 제어 동작들이 수행될 수도 있다.
방법(600)이 단계 612로부터 단계 614로 진행하면, 제어 동작(들)은 제 1 차용자에게로의 제 2 차용자의 리소스의 적절한 후속 재할당(예컨대, 리소스 재할당으로부터 제 1 차용자 및/또는 제 2 차용자의 현재 리소스 할당(들)에서의 변화(들)에 기초한 제 1 차용자 요청 우선순위 및/또는 제 2 차용자 유지 우선순위의 수정)일 수도 있는 임의의 제어 동작들을 포함할 수도 있다. 방법(600)이 단계 614로 진행하면, 방법(600)은 단계 616로 진행한다.
방법(600)이 단계 610으로부터 단계 614로 진행하는 경우, 제어 동작(들)은 제 1 차용자에게로 제 2 차용자의 리소스들을 재할당할지에 대한 적절한 후속결정일 수도 있는 임의의 제어 동작들을 포함할 수도 있다. 예를 들어, 제어 동작은, 제 1 차용자에게 재할당될 수도 있는 리소스들의 다른 잠재적 소스(들)(예컨대, 동일한 리소스 풀의 다른 차용자, 상이한 리소스 풀의 하나 이상의 차용자들, 다수의 리소스 풀들의 차용자들 등뿐 아니라 이들의 다양한 조합들)를 식별하기 위한 리소스 재할당 요청을 개시하는 것을 포함할 수도 있다. 예를 들어, 제어 동작은, 시간 주기를 기다리는 것, 및 차용자들의 리소스 할당들이 시간에 따라 변할 때 차용자들의 우선순위들에 있어서의 가능한 변경에 기초하여 제 2 차용자 및/또는 임의의 다른 잠재적 차용자를 재평가하는 것을 포함할 수도 있다. 임의의 다른 적합한 제어 동작들뿐 아니라 이러한 제어동작들의 다양한 조합들이 개시될 수도 있다는 것이 인지될 것이다.
단계 616에서, 방법(600)이 종료된다.
여기에서, 우선순위들이 차용자 레벨에서 할당되는 실시형태들에 관해 주로 도시되고 설명되었지만, 적어도 일부 실시형태들에서, 우선순위들은 더 낮은 레벨(예컨대, 리소스들이 할당된 각각의 임대와 관련된 리소스들의 그룹들에 대한 리소스 임대 레벨, 차용자에게 할당된 상이한 리소스들이 상이하게 취급될 수도 있도록 하는 리소스 레벨 등뿐 아니라 이들의 다양한 조합들)에서 할당될 수도 있다. 이러한 실시형태들에서, 제 1 차용자에게 제 2 차용자로부터의 리소스들을 재할당할지에 대한 결정들은, (예컨대, 제 2 차용자가 리소스들의 각각의 그룹들을 할당받았던 임대의 우선순위들, 제 2 차용자에게 현재 할당된 리소스들의 우선순위들 등뿐 아니라 이들의 다양한 조합들에 기초하여) 제 2 차용자의 특정 리소스들 중 어느 것을 제 1 차용자에게 재할당할지에 대한 결정들을 포함할 수도 있다.
여기에서, 시스템에 대한 리소스 관리를 수행하도록 하는 리소스 관리 능력의 사용에 대해 주로 도시되고 설명되었지만, 리소스 관리 능력을 제공하도록 시스템을 구성하기 위한 구성 능력이 제공될 수도 있다. 예를 들어, 구성 능력은 여기에서 설명된 바와 같이 RMI(120)를 제공하도록 NMS(100)를 준비하기 위해 제공될 수도 있다. 그 능력은 NMS(100)에 의해, 및/또는 (1) RMI(120)를 제공하도록 NMS(100)의 준비를 결정할 수도 있고, (2) RMI(120)를 제공하도록 NMS(100)의 결정된 준비를 NMS(100)와 통신할 수도 있는 하나 이상의 다른 시스템들에 의해 지원될 수도 있다. 여기에서 설명되는 바와 같이, 리소스 관리 능력은, 임의의 적합한 타입의 시스템을 위해 제공될 수도 있고, 그에 따라 일 실시형태에서, 방법은, (a) 시스템에 의해 지원되는 리소스 타입을 식별하는 단계, (b) 리소스 타입에 대해 MRP를 포함하는 HRP 및 복수의 VRP들(VRP들은 임의의 적합한 특성들을 이용하여 정의될 수도 있고, 임의의 적합한 배열로 조직될 수도 있음)을 생성하는 단계, 및 (c) 계층 리소스 정보를 저장하는 단계를 포함한다. 일 실시형태에서, 이들 단계들은 리소스 타입들의 리소스들이 개별적으로 관리될 수도 있도록 그 시스템에 의해 지원되는 복수의 리소스 타입들 각각에 대해 수행될 수도 있다. 이러한 실시형태들에서, 계층 리소스 구성 정보(예컨대, 리소스 풀들의 정의들 및 배열들, 계층 리소스 관리(예컨대, 차용자들, 리소스 풀들 등과 관련됨)와 관련된 파라미터들 등) 등이 임의의 적합한 방식으로 구성될 수도 있다. 마찬가지로, 이러한 실시형태들에서, 계층 리소스 구성 정보 중 임의의 것은 임의의 적합한 방식으로 임의의 적합한 트리거 조건에 응답하여 재구성될 수도 있다.
도 7은 여기에서 설명되는 기능들을 수행하는 데 있어서 사용하기에 적합한 컴퓨터의 고레벨 블록도를 나타낸다. 도 7에 도시된 바와 같이, 컴퓨터(700)는 프로세서 엘리먼트(702)(예컨대, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM) 등), 리소스 관리 모듈/프로세스(705), 및 다양한 입력/출력 디바이스들(706)(예컨대, (키보드, 키패드, 마우스 등과 같은) 사용자 입력 디바이스, (디스플레이, 스피커 등과 같은) 사용자 출력 디바이스, 입력 포트, 출력 포트, 수신기, 송신기, 및 저장 디바이스들(예컨대, 테이프드라이브, 플로피드라이브, 하드디스크드라이브, 콤팩트디스크드라이브 등)을 포함한다.
여기에서 도시되고 설명된 기능들은 소프트웨어, 하드웨어, 및/또는 소프트웨어와 하드웨어의 조합으로, 예컨대 범용 컴퓨터, 하나 이상의 사용자 주문 집적회로(ASIC)들, 및/또는 임의의 다른 등가물들을 사용하여 구현될 수도 있다는 것이 인지될 것이다. 일 실시형태에서, 리소스 관리 프로세스(705)는 메모리(704) 내에 로딩될 수 있고, 전술된 바와 같은 기능들을 구현하도록 프로세서(702)에 의해 실행될 수 있다. 이와 같이, 리소스 관리 프로세스(705)(관련 데이터 구조들을 포함함)는 컴퓨터 판독가능 저장 매체, 예컨대 RAM 메모리, 자기 또는 광 드라이브 또는 디스켓 등에 저장될 수 있다.
여기에서, 주로, 리소스 관리 능력이 단일 컴퓨터의 리소스들을 관리하는 데 이용되는 실시형태들에 관해 도시되고 설명되었지만, 다른 실시형태들에서, 리소스 관리 능력은 다수의 컴퓨터들에 걸쳐서 리소스들을 관리하는 데 이용될 수도 있다. 적어도 일부의 이러한 실시형태들에서, 단일 HRP는, HRP의 상이한 VRP들이 상이한 컴퓨터들 상에 존재하는 경우, 다수의 컴퓨터들을 스패닝할 수도 있다. 마찬가지로, 적어도 일부의 이러한 실시형태들에서, 단일 VRP가, 상이한 컴퓨터들 상에 존재할 수도 있다. 이러한 실시형태들에서, 다수의 컴퓨터들은 임의의 적합한 통신 수단을 이용하여 통신할 수도 있다. 예를 들어, 컴퓨터들은 하나 이상의 시스템 버스들, 하나 이상의 통신 네트워크들(예컨대, LAN, WAN, ALC/또는 임의의 적합한 통신 기술들, 프로토콜들 등을 이용하는 임의의 다른 적합한 통신 네트워크들)을 통해 통신할 수도 있다. 이 방식으로, 리소스 관리 능력은 (예컨대, 물리적 분산 방식으로 구현된 단일 시스템들, 리소스들의 관리가 전체적으로 다수의 시스템들에 대해서 수행될 수도 있는 다수의 시스템들 등뿐 아니라 이들의 다양한 조합들에 대해) 분산형 리소스 관리를 가능하게 한다.
여기에서 소프트웨어적 방법들로서 설명된 단계들 중 일부는 하드웨어 내에서, 예를 들어 다양한 방법 단계들을 수행하도록 프로세서와 협력하는 회로로서 구현될 수도 있는 것으로 고려된다. 여기에서 설명되는 기능들/엘리먼트들 중 일부분들은 컴퓨터 프로그램 제품으로서 구현될 수도 있으며, 이 제품에서, 컴퓨터 명령들은, 컴퓨터에 의해 프로세싱될 때, 여기에서 설명된 방법들 및/또는 기법들이 호출되거나 또는 그와 달리 제공되도록 컴퓨터의 동작을 적응시킨다. 본 발명의 방법들을 호출하기 위한 명령들은 고정 또는 착탈가능 매체에 저장될 수도 있고, 브로드캐스트 또는 다른 신호 베어링 매체에서 데이터 스트림을 통해 송신될 수도 있으며, 및/또는 명령들에 따라서 동작하는 컴퓨팅 디바이스 내의 메모리 내에 저장될 수도 있다.
본 발명의 양태들은 청구범위에서 특정된다. 본 발명의 이러한 양태들 및 다른 양태들은 하기의 넘버링된 구문들에 특정된다.
1. 관리 시스템의 리소스를 할당하는 방법으로서,
제 1 차용자로부터, 시스템 리소스 할당에 대한 요청을 수신하는 단계,
상기 제 1 차용자와 관련된 현재 리소스 할당에 기초하여 상기 제 1 차용자의 요청 우선순위를 결정하는 단계,
제 2 차용자와 관련된 현재 리소스 할당에 기초하여 상기 제 2 차용자의 유지 우선순위를 결정하는 단계, 및
상기 제 1 차용자 요청 우선순위 및 상기 제 2 차용자 유지 우선순위를 이용하여, 상기 제 2 차용자 리소스 할당 중 임의의 것을 상기 제 1 차용자에게 재할당할지를 결정하는 단계를 포함하는
리소스 할당 방법.
2. 제 1 항목의 방법에 있어서,
상기 제 1 차용자 요청 우선순위는, 상기 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위와, 상기 제 1 차용자에 대해 할당 가능한 리소스들의 최소 수 및 상기 제 1 차용자에게 할당 가능한 리소스들의 최대 수에 의해 정의되는 할당 가능한 리소스 값들의 범위와의 맵핑을 이용하여 결정되는
리소스 할당 방법.
3. 제 2 항목의 방법에 있어서,
상기 맵핑은, 상기 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위에서의 단일 우선순위 값과, 할당 가능한 리소스 값들의 범위의 할당 가능한 리소스 값들의 서브범위와의 맵핑을 포함하는
리소스 할당 방법.
4. 제 3 항목의 방법에 있어서,
상기 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위에서의 상기 단일 우선순위 값은 상기 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위에서의 최고 우선순위 값인
리소스 할당 방법.
5. 제 2 항목의 방법에 있어서,
상기 맵핑은, 할당 가능한 리소스 값들의 범위에서의 할당 가능한 리소스 값들의 서브 범위에 대해, 상기 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위에서의 우선순위 값들의 서브범위의 삽간을 포함하는
리소스 할당 방법.
6. 제 2 항목의 방법에 있어서,
제 1 차용자 요청 우선순위를 평가하는 단계는,
제 1 차용자에게 현재 할당된 리소스들의 수를 결정하는 단계,
제 1 차용자에게 현재 할당된 리소스들의 수와 복수의 크기 임계의 비교에 기초하여 상기 제 1 차용자에 대한 복수의 우선순위 임계들 중 하나를 선택하는 단계; 및
제 1 차용자에 대한 우선순위 임계들 중 상기 선택된 제 2의 것에 기초하여 제 1 차용자 요청 우선순위를 결정하는 단계를 포함하는
리소스 할당 방법.
7. 제 6 항목의 방법에 있어서,
제 1 차용자에 대한 우선순위 임계치들 중 선택된 하나에 기초하여 제 1 차용자 요청 우선순위를 결정하는 단계는,
제 1 차용자에 대한 우선순위 임계치들 중 선택된 하나에 기초하여, 제 1 차용자의 요청 우선순위를 결정하는 데 이용될 맵핑의 일부분을 식별하는 단계를 포함하고,
맵핑의 식별된 부분으로부터 제 1 차용자의 요청 우선순위를 결정하는 단계를 포함하는
리소스 할당 방법.
8. 제 6 항목의 방법에 있어서,
복수의 크기 임계치들은 최소 크기 임계치 및 최대 크기 임계치를 포함하고,
최소 크기 임계치는 제 1 차용자에게 할당 가능한 리소스들의 최소 수이고,
최대 크기 임계치는 제 1 차용자에게 할당 가능한 리소스들의 최대 수인
리소스 할당 방법.
9. 제 6 항목의 방법에 있어서,
복수의 우선순위 임계치들은 기저 우선순위 임계치 및 버스트 우선순위 임계치를 포함하고,
기저 우선순위 임계치는 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위에서 최소 우선순위 값과 동일하고,
버스트 우선순위 임계치는 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위에서의 최대 우선순위 값과 동일한
리소스 할당 방법.
10. 제 1 항목의 방법에 있어서,
제 1 차용자 요청 우선순위는 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위와, 제 1 차용자와 관련된 복수의 우선순위 레벨들과의 맵핑을 이용하여 결정되는
리소스 할당 방법.
11. 제 10 항목의 방법에 있어서,
우선순위 레벨들은 우선순위 임계치를 이용하여 정의되고,
우선순위 임계치는 우선순위 값들의 범위로부터의 우선순위 값을 포함하는
리소스 할당 방법.
12. 제 1 항목의 방법에 있어서,
제 1 차용자에게로의 제 2 차용자의 리소스들의 재할당은 제 2 차용자 유지 우선순위에서의 변화에 의해 제약되는
리소스 할당 방법.
13. 제 1 항목의 방법에 있어서,
제 1 리소스는 제 2 차용자로부터 제 1 차용자에게 재할당되고,
제 1 차용자에게로의 제 1 리소스의 재할당은 제 2 차용자의 제 2 리소스가 제 1 차용자에게 재할당되는지에 대한 결정에 앞서 제 2 차용자 유지 우선선위의 증가를 유발하는
리소스 할당 방법.
14. 제 1 항목의 방법에 있어서,
제 1 차용자에게로의 제 2 차용자의 리소스들의 재할당은 제 1 차용자 요청 우선순위의 감소 및 제 2 차용자 유지 우선순위의 증가 중 적어도 하나를 트리거하는
리소스 할당 방법.
15. 제 1 항목의 방법에 있어서,
제 2 차용자는 복수의 차용자들 중 하나이고,
제 2 차용자는 복수의 차용자들과 관련된 각각의 복수의 유지 우선순위들에 기초하여 리소스 재할당 결정을 위해 선택되는
리소스 할당 방법.
16. 제 1 항목의 방법에 있어서,
제 1 차용자에게로 제 2 차용자의 리소스들을 재할당할지를 결정하는 단계는 리소스들이 제 2 차용자에게 할당된 시간 길이에 적어도 부분적으로 더 기초하는
리소스 할당 방법.
17. 제 1 항목의 방법에 있어서,
제 1 차용자에게 제 2 차용자의 리소스들을 재할당하라는 결정에 응답하여, 제 2 차용자의 리소스를 제 1 차용자에게 재할당하라는 결정을 제 2 차용자에게 표시하도록 적응된 메시지를 개시하는 단계를 더 포함하는
리소스 할당 방법.
18. 제 17 항목의 방법에 있어서,
제 2 차용자는 리소스가 제 2 차용자에 의해 사용되고 있는 태스크들의 적어도 일부분의 완료에 이어서 리소스들의 제어를 제어된 방식으로 양도하는
리소스 할당 방법.
19. 제 1 항목의 방법에 있어서,
제 1 차용자의 리소스 요청은 리소스 풀과 관련되고,
제 2 차용자로부터 제 1 차용자로 재할당된 리소스는 리소스 풀과 관련되는
리소스 할당 방법.
20. 제 1 항목의 방법에 있어서,
제 1 차용자의 리소스 요청은 제 1 리소스 풀과 관련되고,
제 2 차용자로부터 제 1 차용자에게 재할당된 리소스는 제 2 리소스 풀과 관련되는
리소스 할당 방법.
21. 관리 시스템의 리소스를 할당하는 장치로서,
제 1 차용자로부터, 시스템 리소스 할당에 대한 요청을 수신하는 수단,
제 1 차용자와 관련된 현재 리소스 할당에 기초하여 제 1 차용자의 요청 우선순위를 결정하는 수단,
제 2 차용자와 관련된 현재 리소스 할당에 기초하여 제 2 차용자의 유지 우선순위를 결정하는 수단, 및
제 1 차용자 요청 우선순위 및 제 2 차용자 유지 우선순위를 이용하여, 제 2 차용자 리소스 할당 중 임의의 것을 제 1 차용자에게 재할당할지를 결정하는 수단을 포함하는
리소스 할당 장치.
22. 프로세서에 의해 실행될 때, 프로세서로 하여금, 관리 시스템의 리소스들을 할당하는 방법을 수행하게 하는 명령들을 저장하는 컴퓨터 판독가능 매체로서,
이 방법은,
제 1 차용자로부터, 시스템 리소스 할당에 대한 요청을 수신하는 단계,
제 1 차용자와 관련된 현재 리소스 할당에 기초하여 제 1 차용자의 요청 우선순위를 결정하는 단계,
제 2 차용자와 관련된 현재 리소스 할당에 기초하여 제 2 차용자의 유지 우선순위를 결정하는 단계, 및
제 1 차용자 요청 우선순위 및 제 2 차용자 유지 우선순위를 이용하여, 제 2 차용자 리소스 할당 중 임의의 것을 제 1 차용자에게 재할당할지를 결정하는 단계를 포함하는
컴퓨터 판독가능 매체.
본 발명의 교시사항들을 포함하는 다양한 실시형태들이 여기에서 상세히 도시되고 설명되었지만, 당업자라면, 이들 교시사항들을 여전히 포함하는 다른 변형된 실시형태들을 용이하게 고안할 수 있다.

Claims (10)

  1. 관리 시스템에 의해 수행되는, 상기 관리 시스템의 리소스를 할당하는 방법으로서,
    제 1 차용자로부터, 시스템 리소스 할당을 위한 요청을 수신하는 단계와,
    상기 제 1 차용자와 관련된 현재 리소스 할당에 기초하여 상기 제 1 차용자의 요청 우선순위(a request priority)를 결정하는 단계와,
    제 2 차용자와 관련된 현재 리소스 할당에 기초하여 상기 제 2 차용자의 유지 우선순위(a hold priority)를 결정하는 단계와,
    상기 제 1 차용자의 요청 우선순위 및 상기 제 2 차용자의 유지 우선순위를 이용하여, 상기 제 2 차용자의 리소스 할당 중 임의의 것을 상기 제 1 차용자에게 재할당할지를 결정하는 단계를 포함하되,
    상기 제 1 차용자의 요청 우선순위는,
    상기 제 1 차용자에 대한 할당을 위해 이용 가능한 우선순위 값들의 범위를 상기 제 1 차용자에게 할당 가능한 리소스의 최소 개수와 상기 제 1 차용자에게 할당 가능한 리소스의 최대 개수에 의해 정의된 할당 가능한 리소스 값들의 범위로 맵핑하는 제1 맵핑, 또는
    상기 제 1 차용자에 대한 할당을 위해 이용 가능한 우선순위 값들의 범위를 상기 제 1 차용자와 관련된 복수의 우선순위 레벨들로 맵핑하는 제 2 맵핑
    중 적어도 하나를 이용하여 결정되는
    리소스 할당 방법.
  2. 제 1 항에 있어서,
    상기 제 1 맵핑은, 상기 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위에서의 단일 우선순위 값을, 할당 가능한 리소스 값들의 범위내의 할당 가능한 리소스 값들의 서브범위로 맵핑하는 것을 포함하는
    리소스 할당 방법.
  3. 제 2 항에 있어서,
    상기 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위에서의 단일 우선순위 값은 상기 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위에서의 최고 우선순위 값인
    리소스 할당 방법.
  4. 제 1 항에 있어서,
    상기 제 1 맵핑은, 상기 할당 가능한 리소스 값들의 범위에서의 할당된 리소스 값들의 서브 범위에 대해, 상기 제 1 차용자에 대한 할당을 위해 이용가능한 우선순위 값들의 범위에서의 우선순위 값들의 서브범위의 보간(interpolation)을 포함하는
    리소스 할당 방법.
  5. 제 1 항에 있어서,
    상기 제 1 차용자의 요청 우선순위를 결정하는 단계는,
    상기 제 1 차용자에게 현재 할당되어 있는 리소스의 개수를 결정하고,
    상기 제 1 차용자에게 현재 할당되어 있는 리소스의 개수와 복수의 크기 임계치의 비교에 기초하여 상기 제 1 차용자에 대한 복수의 우선순위 임계치들 중 하나를 선택하는 단계와,
    제 1 차용자에 대한 우선순위 임계치들 중 상기 선택된 임계치에 기초하여 제 1 차용자 요청 우선순위를 결정하는 단계를 포함하는
    리소스 할당 방법.
  6. 제 1 항에 있어서,
    상기 제 1 차용자로의 상기 제 2 차용자의 리소스들의 재할당은 상기 제 1 차용자의 요청 우선순위의 감소와 상기 제 2 차용자의 유지 우선순위의 증가 중 적어도 하나를 트리거하는
    리소스 할당 방법.
  7. 제 1 항에 있어서,
    상기 제 2 차용자는 복수의 차용자들 중 하나이고,
    상기 제 2 차용자는 상기 복수의 차용자들과 관련된 복수의 유지 우선순위들 각각에 기초하여 리소스의 재할당 결정을 위해 선택되는
    리소스 할당 방법.
  8. 제 1 항에 있어서,
    상기 제 1 차용자의 리소스 요청은 리소스 풀(resource pool)과 관련되고,
    상기 제 2 차용자로부터 상기 제 1 차용자로 재할당된 리소스는 상기 리소스 풀과 관련되는
    리소스 할당 방법.
  9. 관리 시스템의 리소스를 할당하는 장치로서,
    프로세서와,
    명령어를 저장하는 메모리를 포함하되,
    상기 명령어는 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
    제 1 차용자로부터, 시스템 리소스 할당을 위한 요청을 수신하는 것과,
    상기 제 1 차용자와 관련된 현재 리소스 할당에 기초하여 상기 제 1 차용자의 요청 우선순위를 결정하는 것과,
    제 2 차용자와 관련된 현재 리소스 할당에 기초하여 상기 제 2 차용자의 유지 우선순위를 결정하는 것과,
    상기 제 1 차용자의 요청 우선순위 및 상기 제 2 차용자의 유지 우선순위를 이용하여, 상기 제 2 차용자의 리소스 할당 중 임의의 것을 상기 제 1 차용자에게 재할당할지를 결정하는 것을 수행하게 하고,
    상기 제 1 차용자의 요청 우선순위는,
    상기 제 1 차용자에 대한 할당을 위해 이용 가능한 우선순위 값들의 범위를 상기 제 1 차용자에게 할당 가능한 리소스의 최소 개수와 상기 제 1 차용자에게 할당 가능한 리소스의 최대 개수에 의해 정의된 할당 가능한 리소스 값들의 범위로 맵핑하는 제1 맵핑, 또는
    상기 제 1 차용자에 대한 할당을 위해 이용 가능한 우선순위 값들의 범위를 상기 제 1 차용자와 관련된 복수의 우선순위 레벨들로 맵핑하는 제 2 맵핑
    중 적어도 하나를 이용하여 결정되는
    리소스 할당 장치.
  10. 프로세서에 의해 실행될 때, 상기 프로세서로 하여금, 관리 시스템의 리소스를 할당하는 방법을 수행하게 하는 명령어들을 저장하는 비일시적 컴퓨터 판독가능 매체로서,
    상기 방법은,
    제 1 차용자로부터, 시스템 리소스 할당을 위한 요청을 수신하는 단계와,
    상기 제 1 차용자와 관련된 현재 리소스 할당에 기초하여 상기 제 1 차용자의 요청 우선순위를 결정하는 단계와,
    제 2 차용자와 관련된 현재 리소스 할당에 기초하여 상기 제 2 차용자의 유지 우선순위를 결정하는 단계와,
    상기 제 1 차용자의 요청 우선순위 및 상기 제 2 차용자의 유지 우선순위를 이용하여, 상기 제 2 차용자의 리소스 할당 중 임의의 것을 상기 제 1 차용자에게 재할당할지를 결정하는 단계를 포함하고,
    상기 제 1 차용자의 요청 우선순위는,
    상기 제 1 차용자에 대한 할당을 위해 이용 가능한 우선순위 값들의 범위를 상기 제 1 차용자에게 할당 가능한 리소스의 최소 개수와 상기 제 1 차용자에게 할당 가능한 리소스의 최대 개수에 의해 정의된 할당 가능한 리소스 값들의 범위로 맵핑하는 제1 맵핑, 또는
    상기 제 1 차용자에 대한 할당을 위해 이용 가능한 우선순위 값들의 범위를 상기 제 1 차용자와 관련된 복수의 우선순위 레벨들로 맵핑하는 제 2 맵핑
    중 적어도 하나를 이용하여 결정되는
    컴퓨터 판독가능 매체.
KR1020127024037A 2010-03-16 2011-03-02 시스템 리소스들의 재할당을 관리하는 방법 및 장치 KR101483835B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/724,578 US8589936B2 (en) 2010-03-16 2010-03-16 Method and apparatus for managing reallocation of system resources
US12/724,578 2010-03-16
PCT/US2011/026802 WO2011115750A1 (en) 2010-03-16 2011-03-02 Method and apparatus for managing reallocation of system resources

Publications (2)

Publication Number Publication Date
KR20120129970A KR20120129970A (ko) 2012-11-28
KR101483835B1 true KR101483835B1 (ko) 2015-01-16

Family

ID=43981430

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127024037A KR101483835B1 (ko) 2010-03-16 2011-03-02 시스템 리소스들의 재할당을 관리하는 방법 및 장치

Country Status (6)

Country Link
US (1) US8589936B2 (ko)
EP (1) EP2548336B1 (ko)
JP (1) JP5463437B2 (ko)
KR (1) KR101483835B1 (ko)
CN (1) CN102835068B (ko)
WO (1) WO2011115750A1 (ko)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5821392B2 (ja) * 2011-08-12 2015-11-24 富士通株式会社 ストレージ装置、およびストレージ管理方法
US9032413B2 (en) 2011-09-01 2015-05-12 Microsoft Technology Licensing, Llc Decoupling background work and foreground work
US9164803B2 (en) * 2012-01-20 2015-10-20 Microsoft Technology Licensing, Llc Background task resource control
US9104491B2 (en) * 2012-02-21 2015-08-11 Disney Enterprises, Inc. Batch scheduler management of speculative and non-speculative tasks based on conditions of tasks and compute resources
US20130219386A1 (en) * 2012-02-21 2013-08-22 Disney Enterprises, Inc. Dynamic allocation of compute resources
CN103180830B (zh) 2012-08-31 2016-10-12 华为技术有限公司 中央处理器资源分配方法和计算节点
CN104079503B (zh) * 2013-03-27 2018-07-20 华为技术有限公司 一种资源分配方法及装置
US9519653B2 (en) 2013-04-01 2016-12-13 Ctera Networks, Ltd. Techniques for efficiently enforcing resource quotas in a multi-tenant cloud storage system
US9563474B2 (en) * 2013-06-13 2017-02-07 Wipro Limited Methods for managing threads within an application and devices thereof
US10642645B2 (en) * 2013-06-21 2020-05-05 Microsoft Technology Licensing, Llc Network mode conflict resolution
US10212050B2 (en) 2013-09-04 2019-02-19 Entit Software Llc Providing recursively-generated instantiated computing resource in a multi-tenant environment
US10467567B2 (en) 2013-09-04 2019-11-05 Micro Focus Llc Providing resources to customers via node-relationship models
CN105518650A (zh) * 2013-09-04 2016-04-20 慧与发展有限责任合伙企业 选择用于构件块的多租用供应的资源提供器
US9875145B2 (en) * 2013-12-05 2018-01-23 International Business Machines Corporation Load based dynamic resource sets
US9769227B2 (en) 2014-09-24 2017-09-19 Microsoft Technology Licensing, Llc Presentation of computing environment on multiple devices
US10635296B2 (en) 2014-09-24 2020-04-28 Microsoft Technology Licensing, Llc Partitioned application presentation across devices
US10025684B2 (en) * 2014-09-24 2018-07-17 Microsoft Technology Licensing, Llc Lending target device resources to host device computing environment
US10448111B2 (en) 2014-09-24 2019-10-15 Microsoft Technology Licensing, Llc Content projection
US9753766B2 (en) * 2014-11-25 2017-09-05 Raytheon Company Apparatus and method for allocating resources using prioritization of requests and updating of requests
US9483315B2 (en) 2015-02-03 2016-11-01 International Business Machines Corporation Autonomous dynamic optimization of platform resources
US20160269493A1 (en) * 2015-03-10 2016-09-15 Qualcomm Incorporated Methods and devices to establish services between service and connectivity strata
CN106161559A (zh) * 2015-04-21 2016-11-23 阿尔卡特朗讯 用于分布式存储网络系统共享资源分配的方法及装置
US10296383B2 (en) 2015-07-10 2019-05-21 Samsung Electronics Co., Ltd. Computing system with resource management mechanism and method of operation thereof
US9535934B1 (en) * 2015-11-17 2017-01-03 International Business Machines Corporation Schema lifecycle manager
CN105373434B (zh) * 2015-12-16 2018-11-13 上海携程商务有限公司 资源管理系统及方法
CN109076027B (zh) * 2015-12-30 2022-05-17 皇家Kpn公司 网络服务请求
US10338953B2 (en) * 2016-03-18 2019-07-02 Intel Corporation Facilitating execution-aware hybrid preemption for execution of tasks in computing environments
US10296389B2 (en) * 2016-09-15 2019-05-21 Red Hat, Inc. Time-bound conditional resource deallocation
JP6461224B2 (ja) * 2017-04-06 2019-01-30 華為技術有限公司Huawei Technologies Co.,Ltd. 中央処理装置のリソース割当方法及び計算ノード
US11029999B1 (en) * 2018-09-06 2021-06-08 Amazon Technologies, Inc. Lottery-based resource allocation with capacity guarantees
US10820326B2 (en) * 2018-11-28 2020-10-27 Qualcomm Incorporated Resource allocation for reserved resources
CN112673349A (zh) * 2018-12-21 2021-04-16 华为技术有限公司 基于QoS即服务的数据确定性可传递通信技术
FR3103596B1 (fr) * 2019-11-26 2021-11-19 Thales Sa Procede d'affectation de ressources en reponse a des requetes en fonction de leur priorite, programme d'ordinateur, bloc de controle d'affectation et systeme informatique associes
US11630706B2 (en) * 2020-09-22 2023-04-18 Intel Corporation Adaptive limited-duration edge resource management
CN114327841B (zh) * 2022-03-16 2022-06-21 上海闪马智能科技有限公司 一种资源调度方法、装置、存储介质及电子装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR950029949A (ko) * 1994-04-05 1995-11-24 윌리암 티. 엘리스 자원 할당 동기화 방법 및 그의 시스템 제어 장치

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04314147A (ja) * 1991-04-12 1992-11-05 Nec Corp メモリ管理方式
JPH1097435A (ja) * 1996-09-20 1998-04-14 Nec Corp 資源割当てシステム
US5890011A (en) 1997-01-27 1999-03-30 International Business Machines Corporation Method and system for dynamically translating bus addresses within a computer system
US6026459A (en) * 1998-02-03 2000-02-15 Src Computers, Inc. System and method for dynamic priority conflict resolution in a multi-processor computer system having shared memory resources
US6333936B1 (en) 1998-04-29 2001-12-25 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for allocating processing resources
US6457008B1 (en) * 1998-08-28 2002-09-24 Oracle Corporation Pluggable resource scheduling policies
US6477562B2 (en) * 1998-12-16 2002-11-05 Clearwater Networks, Inc. Prioritized instruction scheduling for multi-streaming processors
US20020002609A1 (en) 1999-12-29 2002-01-03 Chung David W. Telecommunications operating system
US7284244B1 (en) * 2000-05-02 2007-10-16 Microsoft Corporation Resource manager architecture with dynamic resource allocation among multiple configurations
JP2002323986A (ja) * 2001-04-25 2002-11-08 Hitachi Ltd コンピュータリソース流通システム及び方法
US7143413B2 (en) * 2002-05-15 2006-11-28 Hewlett-Packard Development Company, L.P. Method and system for allocating system resources among applications using weights
US8095620B2 (en) * 2002-06-13 2012-01-10 Elbit Systems Land and C41-Tadiran Ltd. System and method for dynamic allocation of a resource
US6996647B2 (en) * 2003-12-17 2006-02-07 International Business Machines Corporation Token swapping for hot spot management
US7315904B2 (en) * 2004-05-26 2008-01-01 Qualomm Incorporated Resource allocation among multiple applications based on an arbitration method for determining device priority
US7730428B1 (en) 2004-06-29 2010-06-01 Emc Corporation Methods and apparatus for displaying storage resources
US7856572B2 (en) 2004-11-17 2010-12-21 Nec Corporation Information processing device, program thereof, modular type system operation management system, and component selection method
JP2006155393A (ja) * 2004-11-30 2006-06-15 Toshiba Corp サーバ融通装置、サーバ融通方法およびサーバ融通プログラム
US7853953B2 (en) * 2005-05-27 2010-12-14 International Business Machines Corporation Methods and apparatus for selective workload off-loading across multiple data centers
US7694082B2 (en) 2005-07-29 2010-04-06 International Business Machines Corporation Computer program and method for managing resources in a distributed storage system
GB0524008D0 (en) * 2005-11-25 2006-01-04 Ibm Method and system for controlling the processing of requests for web resources
US7996842B2 (en) * 2006-03-30 2011-08-09 Oracle America, Inc. Computer resource management for workloads or applications based on service level objectives
US20090025004A1 (en) * 2007-07-16 2009-01-22 Microsoft Corporation Scheduling by Growing and Shrinking Resource Allocation
US20090265450A1 (en) * 2008-04-17 2009-10-22 Darren Helmer Method and apparatus for managing computing resources of management systems
JP5120061B2 (ja) * 2008-05-15 2013-01-16 富士通株式会社 優先度制御プログラム、優先度制御装置、及び優先度制御方法
US20100011367A1 (en) * 2008-07-11 2010-01-14 Gm Global Technology Operations, Inc. Methods and systems for allocating a resource of a vehicle among a plurality of uses for the resource
US9817702B2 (en) * 2008-08-12 2017-11-14 International Business Machines Corporation System resource management moderator protocol
US8566834B2 (en) * 2008-10-02 2013-10-22 Dell Products L.P. Mechanism for application management during server power changes
CN101657020A (zh) * 2009-09-22 2010-02-24 中兴通讯股份有限公司 一种无线资源控制方法及装置
US8443373B2 (en) * 2010-01-26 2013-05-14 Microsoft Corporation Efficient utilization of idle resources in a resource manager

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR950029949A (ko) * 1994-04-05 1995-11-24 윌리암 티. 엘리스 자원 할당 동기화 방법 및 그의 시스템 제어 장치

Also Published As

Publication number Publication date
US20110231853A1 (en) 2011-09-22
CN102835068A (zh) 2012-12-19
JP2013522764A (ja) 2013-06-13
JP5463437B2 (ja) 2014-04-09
US8589936B2 (en) 2013-11-19
CN102835068B (zh) 2015-06-24
EP2548336B1 (en) 2017-09-13
EP2548336A1 (en) 2013-01-23
KR20120129970A (ko) 2012-11-28
WO2011115750A8 (en) 2012-12-27
WO2011115750A1 (en) 2011-09-22

Similar Documents

Publication Publication Date Title
KR101483835B1 (ko) 시스템 리소스들의 재할당을 관리하는 방법 및 장치
KR101545910B1 (ko) 시스템 리소스들의 계층 관리를 위한 방법 및 장치
US11546644B2 (en) Bandwidth control method and apparatus, and device
EP2193472B1 (en) Method and apparatus for managing license capacity in a telecommunication network
JP2534457B2 (ja) マルチメディア・リソ―ス予約システム
US7958239B1 (en) Multilink point-to-point protocol network access server channel allocation method and apparatus
US11586392B2 (en) Multi-stream SSD QoS management
US20090304021A1 (en) Method and System For Dynamic Resource Allocation
CN107665143B (zh) 资源管理方法、装置及系统
JP2002185477A (ja) 時分割ユニバーサルマルチプルアクセスネットワーク
CN113938435B (zh) 数据传输方法、装置、电子设备、存储介质及程序产品
CN109429347B (zh) 时隙分配方法及装置
CN109298949B (zh) 一种分布式文件系统的资源调度系统
CN115766582A (zh) 流量控制方法、装置和系统、介质和计算机设备
CN111597034B (zh) 处理器资源调度方法、装置、终端设备及计算机存储介质
CN113873036B (zh) 一种通信方法、装置、服务器及存储介质
CN111314923B (zh) 一种实现动态带宽的方法及装置
CN106790755B (zh) 组网方法和组网系统
CN114071761A (zh) 基于智能通信管理网关的通信控制方法和装置
CN114968569A (zh) 一种基于分布式异构系统的任务智能处理方法
CN117354931A (zh) 资源分配方法、装置、设备和存储介质
JP2000253021A (ja) 帯域割り当て方法
JPH07121487A (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
LAPS Lapse due to unpaid annual fee