KR101545910B1 - 시스템 리소스들의 계층 관리를 위한 방법 및 장치 - Google Patents

시스템 리소스들의 계층 관리를 위한 방법 및 장치 Download PDF

Info

Publication number
KR101545910B1
KR101545910B1 KR1020127024031A KR20127024031A KR101545910B1 KR 101545910 B1 KR101545910 B1 KR 101545910B1 KR 1020127024031 A KR1020127024031 A KR 1020127024031A KR 20127024031 A KR20127024031 A KR 20127024031A KR 101545910 B1 KR101545910 B1 KR 101545910B1
Authority
KR
South Korea
Prior art keywords
resource
resources
borrower
vrp
resource request
Prior art date
Application number
KR1020127024031A
Other languages
English (en)
Other versions
KR20120128681A (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 KR20120128681A publication Critical patent/KR20120128681A/ko
Application granted granted Critical
Publication of KR101545910B1 publication Critical patent/KR101545910B1/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
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • 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/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • 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
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

시스템의 리소스들을 관리하는 능력이 제공된다. 시스템 리소스들은 시스템 리소스들의 계층 조직을 이용하여 관리된다. 시스템의 리소스들은 적어도 하나의 계층 리소스 풀을 이용하여 관리되며, 여기서 계층 리소스 풀은 마스터 리소스 풀 및 복수의 가상 리소스 풀들을 포함한다. 마스터 리소스 풀은 계층 리소스 풀에 의해 관리되는 리소스들의 논리 표현을 포함한다. 가상 리소스 풀들은 계층 리소스 풀에 의해 관리되는 리소스들의 각각의 서브세트들의 논리적 표현을 포함한다. 관리 시스템의 리소스들을 관리하는 방법은, 차용자로부터, 관리 시스템의 복수의 리소스들 중 하나에 대한 리소스 요청을 수신하되, 리소스들이 계층 리소스 풀을 이용하여 관리되는 단계, 리소스 요청과 관련된 VRP를 식별하는 단계, 및 식별된 VRP로부터의 리소스 요청을 서빙할지를 판정하는 단계를 포함한다.

Description

시스템 리소스들의 계층 관리를 위한 방법 및 장치{METHOD AND APPARATUS FOR HIERARCHICAL MANAGEMENT OF SYSTEM RESOURCES}
관련 출원의 교차 참조
본 출원은 "METHOD AND APPARATUS FOR MANAGING REALLOCATION OF SYSTEM RESOURCES"라는 명칭으로 2010년 3월 16일에 출원되었고, 그 전체가 참조로서 본원에 포함되는 미국 특허 출원 제 12/724578 호(대리인 관리번호: 807116-US-NP)에 관련된다.
분야
본 발명은 전반적으로 네트워크 관리 시스템들과 같은 시스템들의 시스템 리소스들에 관한 것이며, 배타적인 것이 아니라, 더 구체적으로, 시스템 리소스들의 관리에 관한 것이다.
네트워크 관리 시스템(NMS)들은 많은 여러 가지 타입들의 통신 네트워크들을 관리하는 데 이용된다. NMS들은 일반적으로 통신 네트워크들의 다양한 양태들을 관리하는 데 이용되는 많은 네트워크 관리 기능들을 지원한다. 네트워크 관리 기능들은 NMS들, 예컨대 프로세서 쓰레드들, 메모리 등의 다양한 하드웨어 및 소프트웨어 리소스들을 이용하여 제공된다. 그 결과, NMS의 리소스는 다양한 네트워크 관리 기능들을 제공하는 데 필요한 리소스들에 대한 경쟁적 요청들로 인해 흔히 심각한 논란 하에 있다. 많은 경우들에 있어서, NMS 리소스들 자체는 NMS의 성능, 신뢰성, 예측성 및 확장성을 보장하도록 관리되어야 한다. NMS 리소스들의 부적절한 관리는 흔히 NMS 플랫폼 열화를 야기하며, 그에 따라 NMS의 사용자들 및 NMS에 의해 관리되는 통신 네트워크에 좋지 못한 경험들을 초래한다. 또한, NMS 리소스들의 부적절한 관리로부터 기인할 수도 있는 리소스 고갈은 실제 문제점에 상관하기 어려운 다양한 방식들로 자체를 드러내어, 리소스 고갈의 근본 원인에 실질적으로 어떠한 전망도 없게 한다. NMS 리소스 관리 방식들이 오늘날 존재하지만, 이들 접근방안들은 NMS의 성능, 신뢰성, 예측성 및 확장성에서의 보장을 가능하게 할 리소스 관리를 넘는 수준의 제어를 제공하지 않고 단지 시스템 처리율과 리소스 소모 사이의 균형을 유지시키고자 할 따름이다.
종래기술에서의 다양한 결함들은 시스템의 리소스들을 관리하는 실시형태들에 의해 해결된다. 시스템의 리소스들을 관리하는 능력이 제공된다. 시스템 리소스들은 시스템 리소스들의 계층 조직을 이용하여 관리된다. 시스템의 리소스들은 적어도 하나의 계층 리소스 풀을 이용하여 관리되며, 여기서 계층 리소스 풀은 마스터 리소스 풀 및 복수의 가상 리소스 풀들을 포함한다. 마스터 리소스 풀은 계층 리소스 풀에 의해 관리되는 리소스들의 논리 표현을 포함한다. 가상 리소스 풀들은 계층 리소스 풀에 의해 관리되는 리소스들의 각각의 서브세트들의 논리적 표현을 포함한다. 일 실시형태에서, 관리 시스템의 리소스들을 관리하는 방법은, 차용자로부터, 관리 시스템의 복수의 리소스들 중 하나에 대한 리소스 요청을 수신하되, 리소스들이 계층 리소스 풀을 이용하여 관리되는 단계, 리소스 요청과 관련된 VRP를 식별하는 단계, 및 식별된 VRP로부터의 리소스 요청을 서빙할지를 판정하는 단계를 포함한다.
본원의 교시사항들은 첨부한 도면과 함께 하기의 상세한 설명을 고려함으로써 용이하게 이해될 수 있다.
도 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)의 계층 관리를 수행하는 데 사용되는 계층 트리 구조로 조직된다. 일 실시형태에서, MPR는 계층 트리 구조의 루트를 형성하고, VRP들은 계층 트리 구조의 나머지를 형성한다. VPR들은 임의의 적합한 방식으로 (예컨대, 임의의 적합한 수의 계층 레벨들, 계층 레벨(들) 전체에 걸친 VRP들의 임의의 적합한 배열, MPR와 VRP들 사이의 임의의 적합한 부모/자식 관계들 등뿐 아니라 이들의 다양한 조합들을 이용하여) 계층 트리 구조 내에 조직될 수도 있다.
일 실시형태에서, 소정의 HRP(122)에 대한 MPR는 그 소정의 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)를 통해 관리되는 데이터베이스 커넥션들에 대해, MPR는 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. 관리 시스템의 리소스들을 관리하는 방법으로서,
차용자로부터, 관리 시스템의 복수의 리소스들 중 하나에 대한 요청을 수신하되, 리소스들은 마스터 리소스 풀(MRP) 및 복수의 가상 리소스 풀들(VRP)을 포함하는 계층 리소스 풀(HRP)을 이용하여 관리되는 단계,
리소스 요청과 관련된 VRP를 식별하는 단계, 및
식별된 VRP로부터의 리소스 요청을 서빙할지를 판정하는 단계를 포함하는
리소스 관리 방법.
2. 제 1 항목의 방법에 있어서,
시스템은 복수의 리소스 타입들을 포함하고, HRP를 이용하여 관리되는 리소스들은 리소스 타입들 중 하나의 리소스 타입의 리소스들인
리소스 관리 방법.
3. 제 2 항목의 방법에 있어서,
MRP는 리소스 타입들 중 하나의 리소스 타입의 모든 리소스들의 논리적 표현을 포함하고, VRP들은 리소스 타입들 중 하나의 리소스 타입의 리소스들의 각각의 서브세트들의 논리적 표현을 포함하는
리소스 관리 방법.
4. 제 1 항목의 방법에 있어서,
HRP는 트리 구조를 이용하여 배열되고, HRP는 트리의 뿌리인
리소스 관리 방법.
5. 제 1 항목의 방법에 있어서,
리소스 요청에 관련된 VRP는 리소스 요청과 관련된 적어도 하나의 특성에 기초하여 식별되는
리소스 관리 방법.
6. 제 5 항목의 방법에 있어서,
리소스 요청과 관련된 적어도 하나의 특성은 리소스 요청의 소스, 리소스 요청의 리소스 타입, 및 리소스 요청에서 요청된 리소스를 이용하여 수행될 태스크의 태스크 타입 중 적어도 하나를 포함하는
리소스 관리 방법.
7. 제 1 항목의 방법에 있어서,
VRP들 각각은 그와 관련된 적어도 하나의 특성을 갖고, 리소스 요청과 관련된 VRP를 식별하는 단계는,
리소스 요청과 관련된 적어도 하나의 특성을 식별하는 단계, 및
리소스 요청의 적어도 하나의 특성이 VRP의 적어도 하나의 특성과 매칭되는 VRP를 식별하는 단계를 포함하는
리소스 관리 방법.
8. 제 1 항목의 방법에 있어서,
차용자는 제 1 차용자이고,
이 방법은,
제 2 차용자로부터 제 2 리소스 요청을 수신하는 단계, 및
제 1 차용자와 관련된 제 1 우선순위 및 제 2 차용자와 관련된 제 2 우선순위에 기초하여, 제 1 요청을 서빙할 것인지 또는 제 2 요청을 서빙할 것인지를 판정하는 단계를 더 포함하는
리소스 관리 방법.
9. 제 1 항목의 방법에 있어서,
식별된 VRP로부터 리소스 요청을 서빙할 것인지를 판정하는 단계는 차용자의 우선순위에 기초하여 수행되는
리소스 관리 방법.
10. 제 9 항목의 방법에 있어서,
차용자의 우선순위는 차용자의 현재 리소스 할당에 기초하는
리소스 관리 방법.
11. 제 1 항목의 방법에 있어서,
식별된 VRP로부터 리소스 요청을 서빙할 것인지를 판정하는 단계는,
리소스 요청이 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 있는지를 판정하는 단계를 포함하는
리소스 관리 방법.
12. 제 11 항목의 방법에 있어서,
리소스 요청이 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 있다는 판정에 응답하여, 식별된 VRP로부터 차용자에게 요청된 리소스를 할당하는 단계를 포함하는
리소스 관리 방법.
13. 제 11 항목의 방법에 있어서,
리소스 요청이 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 없다는 판정에 응답하여, 차용자의 리소스 요청을 서빙함에 있어서, VRP들 중 하나로부터의 리소스들을 식별된 VRP에 재할당할 것인지를 판정하는 단계를 더 포함하는
리소스 관리 방법.
14. 제 11 항목의 방법에 있어서,
리소스 요청이 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 없다는 판정에 응답하여, VRP들 중 하나로부터의 리소스를 식별된 VRP에 재할당하는 단계를 더 포함하는
리소스 관리 방법.
15. 제 14 항목의 방법에 있어서,
재할당된 리소스는 VRP들 중 하나 이상의 VRP의 임의아 차용자들을 선점하지 않고 VRP들 중 하나로부터 재할당되는
리소스 관리 방법.
16. 제 14 항목의 방법에 있어서,
재할당된 리소스는 VRP들 중 하나 이상의 VRP의 차용자를 선점함으로써 VRP들 중 하나로부터 재할당되는
리소스 관리 방법.
17. 제 16 항목의 방법에 있어서,
선점된 차용자는 VRP들 중 하나의 VRP의 복수의 차용자들 중 하나이고,
선점된 차용자는 VRP들 중 하나의 VRP의 차용자들의 각각의 복수의 우선순위들에 기초하여 선택되는
리소스 관리 방법.
18. 제 1 항목의 방법에 있어서,
차용자는 제 1 차용자이고,
이 방법은,
리소스 요청이, 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 없다는 판정이 내려질 때,
제 1 차용자와 관련된 현재 리소스 할당에 기초하여 제 1 차용자의 요청 우선순위를 판정하는 단계,
제 1 차용자와 관련된 현재 리소스 할당에 기초하여 제 1 차용자의 요청 우선순위를 판정하는 단계, 및
제 1 차용자 요청 우선순위 및 제 2 차용자 유지 우선순위를 이용하여, 제 2 차용자의 리소스를 제 1 차용자에게 재할당할지를 판정하는 단계를 더 포함하는
리소스 관리 방법.
19. 관리 시스템의 리소스들을 관리하는 장치로서,
차용자로부터, 관리 시스템의 복수의 리소스들 중 하나에 대한 요청을 수신하되, 리소스들은 마스터 리소스 풀(MRP) 및 복수의 가상 리소스 풀들(VRP)을 포함하는 계층 리소스 풀(HRP)을 이용하여 관리되는 수단,
리소스 요청과 관련된 VRP를 식별하는 수단, 및
식별된 VRP로부터 리소스 요청을 서빙할지를 판정하는 수단을 포함하는
리소스 관리 장치.
20. 프로세서에 의해 실행될 때, 프로세서로 하여금, 관리 시스템의 리소스들을 관리하는 방법을 수행하게 하는 명령들을 저장하는 컴퓨터 판독가능 매체로서,
방법은,
차용자로부터, 관리 시스템의 복수의 리소스들 중 하나에 대한 요청을 수신하되, 리소스들은 마스터 리소스 풀(MRP) 및 복수의 가상 리소스 풀들(VRP)을 포함하는 계층 리소스 풀(HRP)을 이용하여 관리되는 단계,
리소스 요청과 관련된 VRP를 식별하는 단계, 및
식별된 VRP로부터 리소스 요청을 서빙할지를 판정하는 단계를 포함하는
컴퓨터 판독가능 매체.
본 발명의 교시사항들을 포함하는 다양한 실시형태들이 여기에서 상세히 도시되고 설명되었지만, 당업자라면, 이들 교시사항들을 여전히 포함하는 다른 변형된 실시형태들을 용이하게 고안할 수 있다.

Claims (24)

  1. 관리 시스템의 리소스들을 관리하는 방법으로서,
    차용자로부터, 상기 관리 시스템의 복수의 리소스들 중 하나에 대한 요청을 수신하는 단계 - 상기 리소스들은 마스터 리소스 풀(MRP; master resource pool) 및 복수의 가상 리소스 풀(VRP; virtual resource pools)을 포함하는 계층 리소스 풀(HRP; hierarchical resource pool)을 이용하여 관리됨 - 와,
    상기 리소스 요청과 관련된 VRP를 식별하는 단계 - 상기 리소스 요청과 관련된 VRP는 상기 리소스 요청과 관련된 적어도 하나의 특성에 기초하여 식별됨 - 와,
    상기 식별된 VRP로부터 상기 리소스 요청을 서빙할지를 판정하는 단계를 포함하는
    리소스 관리 방법.
  2. 제 1 항에 있어서,
    상기 관리 시스템은 복수의 리소스 타입들의 리소스들을 포함하고,
    상기 HRP를 이용하여 관리되는 리소스들은 상기 리소스 타입들 중 하나의 타입의 리소스들인
    리소스 관리 방법.

  3. 제 1 항에 있어서,
    상기 VRP의 각각은 그와 관련된 적어도 하나의 특성을 갖고,
    상기 리소스 요청과 관련된 상기 VRP를 식별하는 단계는
    상기 리소스 요청과 관련된 적어도 하나의 특성을 식별하는 단계와,
    상기 리소스 요청의 상기 적어도 하나의 특성이 상기 VRP의 상기 적어도 하나의 특성과 매칭되는 VRP를 식별하는 단계를 포함하는
    리소스 관리 방법.
  4. 제 1 항에 있어서,
    상기 차용자는 제 1 차용자이고,
    상기 방법은,
    제 2 차용자로부터 제 2 리소스 요청을 수신하는 단계와,
    상기 제 1 차용자와 관련된 제 1 우선순위 및 상기 제 2 차용자와 관련된 제 2 우선순위에 기초하여, 상기 제 1 차용자로부터의 리소스 요청을 먼저 서빙할 것인지 또는 상기 제 2 리소스 요청을 먼저 서빙할 것인지를 판정하는 단계를 더 포함하는
    리소스 관리 방법.
  5. 제 1 항에 있어서,
    상기 식별된 VRP로부터 상기 리소스 요청을 서빙할 것인지를 판정하는 단계는 상기 차용자의 우선순위에 기초하여 수행되고,
    상기 차용자의 우선순위는 상기 차용자의 현재 리소스 할당에 기초하는
    리소스 관리 방법.
  6. 제 1 항에 있어서,
    상기 식별된 VRP로부터 상기 리소스 요청을 서빙할 것인지를 판정하는 단계는, 상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 있는지를 판정하는 단계를 포함하는
    리소스 관리 방법.
  7. 제 6 항에 있어서,
    상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 있다는 판정에 응답하여, 상기 식별된 VRP로부터 상기 차용자에게 요청된 리소스를 할당하는 단계와,
    상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 없다는 판정에 응답하여, 상기 차용자의 상기 리소스 요청을 서빙함에 있어서 상기 식별된 VRP에 의한 사용을 위해, 상기 VRP 중 하나로부터의 리소스들을 상기 식별된 VRP에 재할당할 것인지를 판정하는 단계를 더 포함하는
    리소스 관리 방법.
  8. 제 6 항에 있어서,
    상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 없다는 판정에 응답하여, 상기 VRP 중 하나로부터의 리소스를 상기 식별된 VRP에 재할당하는 단계를 더 포함하는
    리소스 관리 방법.
  9. 관리 시스템의 리소스들을 관리하는 장치로서,
    프로세서와 상기 프로세서에 통신하도록 연결된 메모리를 포함하되, 상기 프로세서는,
    차용자로부터, 상기 관리 시스템의 복수의 리소스들 중 하나에 대한 요청을 수신 - 상기 리소스들은 마스터 리소스 풀(MRP) 및 복수의 가상 리소스 풀(VRP)을 포함하는 계층 리소스 풀(HRP)을 이용하여 관리됨 - 하고,
    상기 리소스 요청과 관련된 VRP를 식별 - 상기 리소스 요청과 관련된 VRP는 상기 리소스 요청과 관련된 적어도 하나의 특성에 기초하여 식별됨 - 하고,
    상기 식별된 VRP로부터 상기 리소스 요청을 서빙할지를 판정하도록 구성된
    리소스 관리 장치.
  10. 프로세서에 의해 실행될 때, 상기 프로세서로 하여금, 관리 시스템의 리소스들을 관리하는 방법을 수행하게 하는 명령어들을 저장하는 비일시적 컴퓨터 판독가능 매체로서,
    상기 방법은,
    차용자로부터, 상기 관리 시스템의 복수의 리소스들 중 하나에 대한 요청을 수신하는 단계 - 상기 리소스들은 마스터 리소스 풀(MRP) 및 복수의 가상 리소스 풀(VRP)을 포함하는 계층 리소스 풀(HRP)을 이용하여 관리됨 - 와,
    상기 리소스 요청과 관련된 VRP를 식별하는 단계 - 상기 리소스 요청과 관련된 VRP는 상기 리소스 요청과 관련된 적어도 하나의 특성에 기초하여 식별됨 - 와,
    상기 식별된 VRP로부터 상기 리소스 요청을 서빙할지를 판정하는 단계를 포함하는
    비일시적 컴퓨터 판독가능 매체.

  11. 제 9 항에 있어서,
    상기 시스템은 복수의 리소스 타입들의 리소스들을 포함하고,
    상기 HRP를 이용하여 관리되는 리소스들은 상기 리소스 타입들 중 하나의 타입의 리소스들인
    리소스 관리 장치.
  12. 제 9 항에 있어서,
    상기 VRP의 각각은 그와 관련된 적어도 하나의 특성을 갖고,
    상기 리소스 요청과 관련된 상기 VRP를 식별하기 위해 상기 프로세서는
    상기 리소스 요청과 관련된 적어도 하나의 특성을 식별하고,
    상기 리소스 요청의 적어도 하나의 특성이 상기 VRP의 적어도 하나의 특성과 매칭되는 VRP를 식별하도록 구성되는
    리소스 관리 장치.
  13. 제 9 항에 있어서,
    상기 차용자는 제 1 차용자이고, 상기 프로세서는,
    제 2 차용자로부터 제 2 리소스 요청을 수신하고,
    상기 제 1 차용자와 관련된 제 1 우선순위 및 상기 제 2 차용자와 관련된 제 2 우선순위에 기초하여, 상기 제 1 차용자로부터의 리소스 요청을 먼저 서빙할 것인지 또는 상기 제 2 리소스 요청을 먼저 서빙할 것인지를 판정하도록 더 구성되는
    리소스 관리 장치.
  14. 제 9 항에 있어서,
    상기 프로세서는
    상기 식별된 VRP로부터 상기 리소스 요청을 서빙할 것인지를 상기 차용자의 우선순위에 기초하여 판정하도록 구성되고,
    상기 차용자의 우선순위는 상기 차용자의 현재 리소스 할당에 기초하는
    리소스 관리 장치.
  15. 제 9 항에 있어서,
    상기 식별된 VRP로부터 상기 리소스 요청을 서빙할 것인지를 판정하기 위하여, 상기 프로세서는
    상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 있는지를 판정하도록 구성된
    리소스 관리 장치.
  16. 제 15 항에 있어서,
    상기 프로세서는
    상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 있다는 판정에 응답하여, 상기 식별된 VRP로부터 상기 차용자에게 요청된 리소스를 할당하고,
    상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 없다는 판정에 응답하여, 상기 차용자의 상기 리소스 요청을 서빙함에 있어서 상기 식별된 VRP에 의한 사용을 위해, 상기 VRP 중 하나로부터의 리소스들을 상기 식별된 VRP에 재할당할 것인지를 판정하도록 더 구성된
    리소스 관리 장치.
  17. 제 15 항에 있어서,
    상기 프로세서는
    상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 없다는 판정에 응답하여, 상기 VRP 중 하나로부터의 리소스를 상기 식별된 VRP에 재할당하도록 더 구성된
    리소스 관리 장치.
  18. 제 10 항에 있어서,
    상기 시스템은 복수의 리소스 타입들의 리소스들을 포함하고,
    상기 HRP를 이용하여 관리되는 리소스들은 상기 리소스 타입들 중 하나의 타입의 리소스들인
    비일시적 컴퓨터 판독가능 매체.
  19. 제 10 항에 있어서,
    상기 VRP의 각각은 그와 관련된 적어도 하나의 특성을 갖고,
    상기 리소스 요청과 관련된 상기 VRP를 식별하는 단계는
    상기 리소스 요청과 관련된 적어도 하나의 특성을 식별하는 단계와,
    상기 리소스 요청의 상기 적어도 하나의 특성이 상기 VRP의 상기 적어도 하나의 특성과 매칭되는 VRP를 식별하는 단계를 포함하는
    비일시적 컴퓨터 판독가능 매체.
  20. 제 10 항에 있어서,
    상기 차용자는 제 1 차용자이고,
    상기 방법은,
    제 2 차용자로부터 제 2 리소스 요청을 수신하는 단계와,
    상기 제 1 차용자와 관련된 제 1 우선순위 및 상기 제 2 차용자와 관련된 제 2 우선순위에 기초하여, 상기 제 1 차용자로부터의 리소스 요청을 먼저 서빙할 것인지 또는 상기 제 2 리소스 요청을 먼저 서빙할 것인지를 판정하는 단계를 더 포함하는
    비일시적 컴퓨터 판독가능 매체.
  21. 제 10 항에 있어서,
    상기 식별된 VRP로부터 상기 리소스 요청을 서빙할 것인지를 판정하는 단계는 상기 차용자의 우선순위에 기초하여 수행되고,
    상기 차용자의 우선순위는 상기 차용자의 현재 리소스 할당에 기초하는
    비일시적 컴퓨터 판독가능 매체.
  22. 제 10 항에 있어서,
    상기 식별된 VRP로부터 상기 리소스 요청을 서빙할 것인지를 판정하는 단계는, 상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 있는지를 판정하는 단계를 포함하는
    비일시적 컴퓨터 판독가능 매체.
  23. 제 22 항에 있어서,
    상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 있다는 판정에 응답하여, 상기 식별된 VRP로부터 상기 차용자에게 요청된 리소스를 할당하는 단계와,
    상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 없다는 판정에 응답하여, 상기 차용자의 상기 리소스 요청을 서빙함에 있어서 상기 식별된 VRP에 의한 사용을 위해, 상기 VRP 중 하나로부터의 리소스들을 상기 식별된 VRP에 재할당할 것인지를 판정하는 단계를 더 포함하는
    비일시적 컴퓨터 판독가능 매체.
  24. 제 22 항에 있어서,
    상기 리소스 요청이 상기 식별된 VRP에 현재 할당된 리소스들을 이용하여 서빙될 수 없다는 판정에 응답하여, 상기 VRP 중 하나로부터의 리소스를 상기 식별된 VRP에 재할당하는 단계를 더 포함하는
    비일시적 컴퓨터 판독가능 매체.
KR1020127024031A 2010-03-16 2011-03-02 시스템 리소스들의 계층 관리를 위한 방법 및 장치 KR101545910B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/724,542 US8463908B2 (en) 2010-03-16 2010-03-16 Method and apparatus for hierarchical management of system resources
US12/724,542 2010-03-16
PCT/US2011/026827 WO2011115752A1 (en) 2010-03-16 2011-03-02 Method and apparatus for hierarchical management of system resources

Publications (2)

Publication Number Publication Date
KR20120128681A KR20120128681A (ko) 2012-11-27
KR101545910B1 true KR101545910B1 (ko) 2015-08-20

Family

ID=43989845

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127024031A KR101545910B1 (ko) 2010-03-16 2011-03-02 시스템 리소스들의 계층 관리를 위한 방법 및 장치

Country Status (6)

Country Link
US (1) US8463908B2 (ko)
EP (1) EP2548335A1 (ko)
JP (1) JP5571239B2 (ko)
KR (1) KR101545910B1 (ko)
CN (1) CN102835067A (ko)
WO (1) WO2011115752A1 (ko)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011114454B4 (de) * 2010-10-18 2017-03-23 Avaya Inc. Ressourchenallokation unter verwendung gemeinsam genutzter ressourcenpools
US8782240B2 (en) * 2010-10-18 2014-07-15 Avaya Inc. Resource allocation using shared resource pools
CN102609315A (zh) * 2012-01-31 2012-07-25 苏州佳世达电通有限公司 可调整程序使用资源的电子装置
CN102638367B (zh) * 2012-03-23 2014-12-31 中兴通讯股份有限公司 媒体面资源板的管理方法及系统
US9244742B2 (en) * 2012-05-31 2016-01-26 Vmware, Inc. Distributed demand-based storage quality of service management using resource pooling
US20130346465A1 (en) * 2012-06-21 2013-12-26 Microsoft Corporation Application enhancement using edge data center
US20130346558A1 (en) * 2012-06-21 2013-12-26 Microsoft Corporation Delivery controller between cloud and enterprise
CN102984073B (zh) * 2012-11-29 2016-12-07 上海快应信息科技有限公司 一种组播业务中的资源管理装置及方法
KR101384564B1 (ko) * 2012-11-29 2014-04-17 (주)투비소프트 데이터셋 전송 프로토콜을 이용한 다중 요청 처리 방법
CN103902637B (zh) * 2012-12-27 2019-12-27 伊姆西公司 用于向用户提供计算资源的方法和装置
WO2014114727A1 (en) * 2013-01-25 2014-07-31 Nokia Solutions And Networks Oy Unified cloud resource controller
EP2782010A1 (en) * 2013-03-19 2014-09-24 STMicroelectronics (Grenoble 2) SAS Hierarchical resource management
EP2782038A1 (en) 2013-03-19 2014-09-24 STMicroelectronics (Grenoble 2) SAS Resource management in a processor for trusted and untrusted applications
EP2782007A1 (en) 2013-03-19 2014-09-24 STMicroelectronics (Grenoble 2) SAS Launching multiple applications in containers on a processor
CN103813481A (zh) * 2013-09-23 2014-05-21 杭州优能通信系统有限公司 一种智能终端设备及其业务处理方法
CN103634379B (zh) * 2013-11-13 2017-02-01 华为技术有限公司 一种分布式存储空间的管理方法和分布式存储系统
US10025684B2 (en) * 2014-09-24 2018-07-17 Microsoft Technology Licensing, Llc Lending target device resources to host device computing environment
US10635296B2 (en) 2014-09-24 2020-04-28 Microsoft Technology Licensing, Llc Partitioned application presentation across devices
US10448111B2 (en) 2014-09-24 2019-10-15 Microsoft Technology Licensing, Llc Content projection
US9769227B2 (en) 2014-09-24 2017-09-19 Microsoft Technology Licensing, Llc Presentation of computing environment on multiple devices
KR102402780B1 (ko) * 2015-06-04 2022-05-27 삼성전자 주식회사 메모리 관리 방법 및 장치
CN105072193A (zh) * 2015-08-27 2015-11-18 浪潮集团有限公司 一种多数据中心下的云海os部署方法
US10452442B2 (en) * 2015-11-27 2019-10-22 Huawei Technologies Co., Ltd. System and method for resource management
CN106027596A (zh) * 2016-04-27 2016-10-12 乐视控股(北京)有限公司 一种任务分发方法和装置
CN107454601B (zh) * 2017-08-22 2020-12-29 南京邮电大学 一种超密集环境下考虑小区间干扰的无线虚拟映射方法
US10911367B2 (en) 2018-06-27 2021-02-02 Oracle International Corporation Computerized methods and systems for managing cloud computer services
US11190599B2 (en) 2018-06-27 2021-11-30 Oracle International Corporation Method and system for cloud service pre-provisioning
US10785129B2 (en) 2018-06-27 2020-09-22 Oracle International Corporation Computerized methods and systems for maintaining and modifying cloud computer services
US11115344B2 (en) 2018-06-27 2021-09-07 Oracle International Corporation Computerized methods and systems for migrating cloud computer services
US11907743B2 (en) 2019-05-21 2024-02-20 Oracle International Corporation System and method for relocating customer virtual machine instances in a multi-tenant cloud service
EP3964959A1 (en) * 2020-09-03 2022-03-09 ARM Limited Data processing

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020002609A1 (en) 1999-12-29 2002-01-03 Chung David W. Telecommunications operating system
WO2009128052A1 (en) 2008-04-17 2009-10-22 Alcatel Lucent Method and apparatus for managing computing resources of management systems

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
WO1999056475A1 (en) * 1998-04-29 1999-11-04 Telefonaktiebolaget Lm Ericsson (Publ) Resource allocation
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
US7824244B2 (en) * 2007-05-30 2010-11-02 Corning Incorporated Methods and apparatus for polishing a semiconductor wafer
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
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
CN101061464B (zh) * 2004-11-17 2012-07-04 日本电气株式会社 信息处理设备及其程序、模块化系统的运行管理系统和组件选择方法
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
US7996842B2 (en) 2006-03-30 2011-08-09 Oracle America, Inc. Computer resource management for workloads or applications based on service level objectives
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
US8443373B2 (en) 2010-01-26 2013-05-14 Microsoft Corporation Efficient utilization of idle resources in a resource manager

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020002609A1 (en) 1999-12-29 2002-01-03 Chung David W. Telecommunications operating system
WO2009128052A1 (en) 2008-04-17 2009-10-22 Alcatel Lucent Method and apparatus for managing computing resources of management systems

Also Published As

Publication number Publication date
JP5571239B2 (ja) 2014-08-13
WO2011115752A1 (en) 2011-09-22
JP2013522765A (ja) 2013-06-13
US20110231550A1 (en) 2011-09-22
EP2548335A1 (en) 2013-01-23
CN102835067A (zh) 2012-12-19
KR20120128681A (ko) 2012-11-27
US8463908B2 (en) 2013-06-11

Similar Documents

Publication Publication Date Title
KR101545910B1 (ko) 시스템 리소스들의 계층 관리를 위한 방법 및 장치
KR101483835B1 (ko) 시스템 리소스들의 재할당을 관리하는 방법 및 장치
CN108667748B (zh) 一种控制带宽的方法、装置、设备和存储介质
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
CN105335229B (zh) 一种业务资源的调度方法和装置
US20090304021A1 (en) Method and System For Dynamic Resource Allocation
CN107665143B (zh) 资源管理方法、装置及系统
CN111464331A (zh) 一种线程创建的控制方法、系统及终端设备
CN109429347B (zh) 时隙分配方法及装置
CN109298949B (zh) 一种分布式文件系统的资源调度系统
CN116339989A (zh) 一种混部服务器、混部服务器的资源管理方法及装置
US6470406B1 (en) Managing isochronous processes in a heterogenous work environment
CN115766582A (zh) 流量控制方法、装置和系统、介质和计算机设备
CN111597034B (zh) 处理器资源调度方法、装置、终端设备及计算机存储介质
CN111459651A (zh) 一种负载均衡方法、装置、存储介质及调度系统
CN111314923B (zh) 一种实现动态带宽的方法及装置
CN117834438A (zh) 一种资源动态调整方法、装置、设备及存储介质
JP3251400B2 (ja) 分散処理システムにおけるタスク割当て方法及び分散処理システム
CN114071761A (zh) 基于智能通信管理网关的通信控制方法和装置
CN114968569A (zh) 一种基于分布式异构系统的任务智能处理方法
JP2000253021A (ja) 帯域割り当て方法

Legal Events

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