KR100768087B1 - 자원 관리 시스템 및 방법 - Google Patents

자원 관리 시스템 및 방법 Download PDF

Info

Publication number
KR100768087B1
KR100768087B1 KR1020060065106A KR20060065106A KR100768087B1 KR 100768087 B1 KR100768087 B1 KR 100768087B1 KR 1020060065106 A KR1020060065106 A KR 1020060065106A KR 20060065106 A KR20060065106 A KR 20060065106A KR 100768087 B1 KR100768087 B1 KR 100768087B1
Authority
KR
South Korea
Prior art keywords
clp
cim
information
ufip
instance
Prior art date
Application number
KR1020060065106A
Other languages
English (en)
Other versions
KR20070061210A (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 KR20070061210A publication Critical patent/KR20070061210A/ko
Application granted granted Critical
Publication of KR100768087B1 publication Critical patent/KR100768087B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

1. 청구범위에 기재된 발명이 속하는 기술분야
본 발명은 명령행 프로토콜을 지원하는 WBEM 기반 자원 관리 시스템 및 방법에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은 종래의 WBEM 구조를 개선하여 WBEM 구조에서도 SMASH 표준의 명령행 프로토콜(CLP : command line protocol)을 지원할 수 있는 자원 관리 구조를 제시함으로써, 사용자가 사용자-친화적인 명령행 인터페이스를 통하여 보안을 유지하면서 시스템 자원에 접근하여 시스템 자원을 관리할 수 있는 자원 관리 시스템 및 방법을 제공하는데 목적이 있음.
3. 발명의 해결방법의 요지
본 발명은, 명령행 프로토콜(CLP : Command Line Protocol)을 지원하는 WBEM 기반 자원 관리 시스템으로서, 소정 사용자 단말로부터 CLP 명령을 입력받아 서버로 전달하는 클라이언트; 및 상기 클라이언트로부터 전달된 CLP 명령의 대상인 CLP 타겟을 분석(resolution)하여 CLP 영역의 관리 대상 표현을 WBEM 구조에서 이해되는 CIM 영역의 관리 대상 표현으로 변환함으로써 자원에 접근하여 자원 관리를 수행하고 상기 자원 관리 결과를 상기 클라이언트에 전달하는 상기 서버를 포함하되, 상기 서버는 SSH 서버, CLP 액세스 포인트, CLP 서비스, CIM 서버, MAP 프로바이더 및 SMASH 프로바이더를 포함함.
4. 발명의 중요한 용도
본 발명은 자원 관리 시스템 등에 이용됨.
WBEM, SMASH, CIM, CLP

Description

자원 관리 시스템 및 방법{System and method for resource management}
도 1은 종래의 예시적인 WBEM 구조를 나타내는 도면,
도 2는 종래의 예시적인 SMASH 구조를 나타내는 도면,
도 3은 본 발명의 일실시예에 따른 자원 관리 시스템의 구성도,
도 4는 본 발명의 일실시예에 따른 자원 관리 방법의 흐름도,
도 5는 도 4의 자원 관리 방법 중 세션 확립 과정에 대한 상세 흐름도,
도 6은 도 4의 자원 관리 방법 중 CLP 서비스에서의 CLP 타겟 분석 과정에 대한 상세 흐름도,
도 7은 도 4의 자원 관리 방법 중 MAP 프로바이더에서의 CLP 타겟 분석 과정에 대한 상세 흐름도,
도 8은 본 발명의 일실시예에 따른 MAP_Ufip 클래스 및 그 속성을 나타내는 도면,
도 9는 도 4의 자원 관리 방법 중 관리 대상 정보 추출 과정의 상세 흐름도이다.
*도면의 주요 부분에 대한 부호 설명
310 : SSH 클라이언트 320 : MAP
321 : SSH 서버 322 : CLP 액세스 포인트
323 : CLP 서비스 324 : CIM 서버
325 : SMASH 프로바이더 326 : MAP 프로바이더
본 발명은 컴퓨터 시스템의 자원 관리 기술에 관한 것으로, 보다 상세하게는 사용자에게 사용자-친화적(user-friendly)인 명령행 인터페이스(command-line interface)를 제공함으로써 컴퓨터 시스템의 자원을 쉽게 관리할 수 있는 자원 관리 시스템 및 방법에 관한 것이다.
현재 각종 운영 체제(OS : operating system)는 독자적인 시스템 자원 관리 기술을 제공하고 있어 이기종 시스템간 관리의 일관성을 보장할 수 없다.
이기종 시스템간 자원 관리를 일관된 방법으로 하기 위하여 DMTF(Distributed management task force)는 WBEM(Web-based enterprise management) 표준을 제정하였다. WBEM은 데이터 모델인 CIM(공통 정보 모델 : common information model) 및 데이터의 인코딩/전송을 위한 CIM-XML 프로토콜을 따르는 자원 관리 구조(architecture)이다. 도 1은 예시적인 상기 WBEM 구조를 나 타내는 도면으로, WBEM 구조는 CIM 클라이언트(101), CIM-OM(CIM 객체 관리자 : CIM object manager)(102) 및 프로바이더(provider)(103)를 포함한다. 도 1에서 도시되지 않았으나, WBEM 구조는 시스템 자원에 대한 CIM 스키마(schema)를 추가/수정하는 Mof 컴파일러 및 CIM 스키마를 저장하는 저장소(repository)를 더 포함할 수 있음은 당업자에게 자명하다. 사용자는 상기 CIM 클라이언트(101), CIM-OM(102) 및 프로바이더(103)를 통하여 시스템 자원에 접근하여 관리할 수 있다. 여기서, 시스템 자원이란 CPU, 프로세스, 하드웨어 등 컴퓨터 프로그램을 작동시키기 위한 모든 기능과 기구의 총칭으로 자원 관리의 측면에서 관리 대상(managed element)으로도 표현된다. 소정 사용자 단말로부터 입력된 명령에 기초하여, CIM 클라이언트(101)는 XML로 인코딩된 요청/응답(request/response) 메시지를 HTTP 프로토콜을 이용하여 CIM-OM(102)과 교환한다. CIM-OM(102)은 CIM 서버로서, 상기 CIM 클라이언트(101)로부터 수신되는 요청을 처리하여 프로바이더(103)에 전달하고, 프로바이더(103)로부터 작업 결과를 전달받아 CIM 클라이언트(101)에게 전달하는 메시지 중개자(broker) 역할을 수행할 뿐, 시스템 자원에 직접 접근하지 않는다. 프로바이더(103)는 CIM-OM(102)으로부터 호출되는 라이브러리로서, CIM-OM(102)의 요청에 따라 해당 시스템 자원에 접근하여 자원을 제어하고 정보를 추출하는 능동적 관리를 수행한다. 이때, 상기 CIM 클라이언트는 일정한 규격 없이 다양한 형태(예를 들어, 다양한 GUI(graphical user interface))로 개발되기 때문에, 이종 시스템에 있어서 클라이언트 간 상호 운용성(interoperability)이 떨어지고, 사용자가 다양한 형태로 개발된 CIM 클라이언트에 접근하기 어려운 문제점이 있다.
한편, SMASH(System management architecture for server hardware)는 상기 DMTF에 의해 제정된 표준이다. 명령행 프로토콜(CLP : command line protocol) 및 SSH(Secure shell) 프로토콜을 포함하는 상기 SMASH 표준에 의하여 사용자는 사용자-친화적인 방법 즉, 명령행 인터페이스를 통하여 보안이 유지되는 방법으로 시스템 자원에 접근할 수 있다. SMASH는 원래 OOB(Out-of-band) 환경에서 서버 하드웨어의 원격 관리를 용이하게 하도록 개발된 자원 관리 구조이나, IB(In-band) 환경에서의 자원 관리 구조로 확장 가능하다. 도 2는 예시적인 상기 SMASH 구조를 나타내는 도면으로, SMASH 구조는 SSH 프로토콜을 따르는 SSH 클라이언트(201), 서버로서의 MAP(Management access point)(202) 및 MAP(202)에 포함된 프로바이더(203)를 포함한다. SSH 프로토콜에 의하면, SSH 클라이언트(201)는 사용자에게 단순히 명령행 인터페이스를 제공하는 형태이므로 별도의 개발이 요구되지 않는 장점이 있다. 또한, SSH 클라이언트(201)는 운영 체제에 기반한 사용자 계정(user account)을 이용하여 MAP(202)에 접근함으로써 자원 관리 시스템의 보안성을 높일 수 있는 장점이 있다. 하지만, 상기 장점에도 불구하고, SMASH는 오직 클라이언트 인터페이스만을 고려하고 MAP(202)의 구체적인 구현에 대해서는 언급하지 않기 때문에 WBEM과 같이 클라이언트부터 서버에 이르는 완성된 구조가 아닌 문제점이 있다.
요약하자면, WBEM 구조는 클라이언트로부터 서버에 이르는 완성된 자원 관리 구조이나, 별도의 클라이언트가 필요하고 상기 클라이언트는 다양하게 개발될 수 있기 때문에, 사용자가 시스템의 관리를 위하여 다양하게 개발된 각각의 클라이언트를 사용하기 어려운 단점이 있다. 반면, SMASH 구조에서의 클라이언트는 사용자 에게 사용자 친화적인 명령행 인터페이스를 제공하는 단순한 형태의 SSH 클라이언트이기 때문에, 별도의 클라이언트를 필요로 하지 않고 사용자는 SSH 클라이언트를 쉽게 사용할 수 있으며 아울러 클라이언트와 서버 간 통신에서 보안을 유지할 수 있는 장점이 있으나, MAP의 구체적인 구성에 대한 언급이 없다는 문제점이 있다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 제안된 것으로, 종래의 WBEM 구조를 개선하여 WBEM 구조에서도 SMASH 표준의 명령행 프로토콜(CLP : command line protocol)을 지원할 수 있는 자원 관리 구조를 제시함으로써, 사용자가 사용자-친화적인 명령행 인터페이스를 통하여 보안을 유지하면서 시스템 자원에 접근하여 시스템 자원을 관리할 수 있는 자원 관리 시스템 및 방법을 제공하는데 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명은, 명령행 프로토콜(CLP : Command Line Protocol)을 지원하는 WBEM 기반 자원 관리 시스템으로서, 소정 사용자 단말로부터 CLP 명령을 입력받아 서버로 전달하는 클라이언트; 및 상기 클라이언트로부터 전달된 CLP 명령의 대상인 CLP 타겟을 분석(resolution)하여 CLP 영역의 관리 대상 표현을 WBEM 구조에서 이해되는 CIM 영역의 관리 대상 표현으로 변환함으로써 자원에 접근하여 자원 관리를 수행하고 상기 자원 관리 결과를 상기 클라이언트에 전달하는 상기 서버를 포함하되, 상기 서버는 SSH 서버, CLP 액세스 포인트, CLP 서비스, CIM 서버, MAP 프로바이더 및 SMASH 프로바이더를 포함한다.
한편, 본 발명의 방법은, 명령행 프로토콜(CLP : Command Line Protocol)을 지원하는 WBEM 기반 자원 관리 방법으로서, 소정 사용자 단말로부터 CLP 명령이 입력되어 소정 클라이언트를 통하여 소정 서버로 진입하는 제 1 단계; 상기 소정 서버에서 상기 진입한 CLP 명령의 CLP 타겟에 대한 분석(resolution)이 수행됨으로써 CLP 영역의 관리 대상 표현이 CIM 영역의 관리 대상 표현으로 변환되는 제 2 단계; 상기 제 2 단계에서 변환된 CIM 영역의 관리 대상 표현에 대응되는 관리 대상에 접근하여 정보를 추출하는 제 3 단계; 및 상기 제 3 단계에서 추출된 관리 대상의 정보가 상기 소정 클라이언트를 통하여 상기 소정 사용자 단말로 반환되는 제 4 단계를 포함한다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실 시예를 상세히 설명하기로 한다.
도 3은 본 발명의 일실시예에 따른 자원 관리 시스템의 구성도이다.
도 3에 도시된 바와 같이, 본 발명의 일실시예에 따른 자원 관리 시스템은 클라이언트로서 SSH 클라이언트(310) 및 서버로서 MAP(320)를 포함하며, 상기 MAP(320)은 종래의 SMASH 표준에서 정의되지 않은 구체적인 구성을 포함한다. 즉, MAP(320)은 SSH 서버(321), CLP 액세스 포인트(322), CLP 서비스(323), CIM 서버(324), SMASH 프로바이더(325) 및 MAP 프로바이더(326)를 포함한다. 여기서, 시스템 자원에 대한 CIM 스키마(schema)를 추가/수정하는 Mof 컴파일러(331) 및 상기 CIM 스키마를 저장하는 저장소(repository)(332)는 WBEM 표준에 기반한 것으로 구체적인 설명을 생략하기로 한다.
SSH 클라이언트(310)는 SMASH 표준의 SSH 프로토콜(SSHv2 프로토콜을 포함함)에 따른 클라이언트로서, 사용자의 시스템 자원 접근 시도에 따라 세션 연결 요청을 SSH 서버(321)에 전달한다. 후술할 CLP 액세스 포인트(322)에서 상기 세션 연결 요청에 따라 세션이 확립되면, SSH 클라이언트(310)는 소정 사용자 단말로부터 CLP 명령을 입력받을 수 있는 상태가 된다. 따라서 SSH 클라이언트(310)는 사용자 단말로부터 상기 CLP 명령을 입력받고 이 명령을 SSH 프로토콜에 따라 보안이 유지되는 방법 및 텍스트 모드(text-mode)로 SSH 서버(321)에 전달한다.
SSH 서버(321)는 SSH 클라이언트(310)로부터 전달된 세션 연결 요청에 따라, 상기 사용자를 식별하기 위하여 OS(Operating System : 운영체제) 사용자 계정을 이용한 사용자 인증을 수행하고, 상기 사용자 인증이 수행되면 CLP 액세스 포인트(322)를 가동시킨다. 전술한 바와 같이, 상기 SSH 서버(321)에 의해 가동된 CLP 액세스 포인트(322)에서 상기 세션 연결 요청에 따른 세션이 확립되면, SSH 클라이언트(310)로부터 상기 보안이 유지되는 방법 및 텍스트 모드의 CLP 명령이 SSH 서버(321)로 입력된다. 따라서 SSH 서버(321)는 입력된 상기 CLP 명령을 표준 입력 인터페이스(standard input interface)를 통하여 CLP 액세스 포인트(322)에 전달한다.
일단 사용자 인증이 성공하면 CLP 액세스 포인트(322)는 SSH 서버(321)에 의해 가동되며, 전술한 바와 같이, CLP 액세스 포인트(322)는 세션을 확립한다. CLP 액세스 포인트(322)는 상기 사용자 계정 정보(사용자 이름, 권한 등) 및 CIM 서버(324)의 상태를 검토한다. 검토 결과, 사용자가 유효한 사용자이고 CIM 서버(324)가 구동 중이라면, CLP 액세스 포인트(322)는 사용자 단말로 CLP 프롬프트(prompt)를 전달하여 CLP 명령이 입력되는 것을 대기함으로써 유효하게 세션을 확립하고, 상기 세션 확립에 대한 소정 정보(이하, 사용자 세션 정보)를 저장 관리한다. 여기서, 상기 세션은 다양한 환경 변수(현재 출력 메시지 세팅(setting), 현재 사용자 이름, 현재 사용자 권한, 현재 작업 스포닝(spawning) 정책, 현재 언어 선택 및 현재 출력 레벨 등)에 의해 결정된다. 반면, 검토 결과, 사용자가 유효한 사용자가 아니거나 또는 CIM 서버(324)가 구동 중이 아니라면, 에러(error) 메시지가 생성되어 사용자 단말로 전달된다. 전술한 바와 같이, 상기 세션 확립 결과 사용자 단말로부터 상기 CLP 명령을 입력받을 수 있는 상태가 되어 CLP 명령이 SSH 클라이언트(310) 및 SSH 서버(321)를 통하여 CLP 액세스 포인트(322)에 전달되면, CLP 액세스 포인트(322)는 전달된 상기 CLP 명령에 상기 사용자 세션 정보를 더하여 IPC(프로세스 간 통신 : interprocess communication) 요청 메시지를 생성하여 CLP 서비스(323)에 전달한다.
즉, SSH 클라이언트(310)의 세션 연결 요청, SSH 서버(321)의 사용자 인증 및 가동된 CLP 액세스 포인트(322)의 사용자 계정 정보 및 CIM 서버(324)의 구동 여부 검토 등 일련의 과정을 통하여 유효하게 세션이 확립되면, 사용자 단말로부터 CLP 명령이 입력될 수 있는 상태가 되고, 이에 따라 입력된 CLP 명령은 SSH 클라이언트(310), SSH 서버(321) 및 CLP 액세스 포인트(322)를 통하여 CLP 서비스(323)에 전달된다.
CLP 서비스(323)는 CLP 액세스 포인트(322)로부터 전달된 상기 IPC 요청 메시지로부터 상기 사용자 세션 정보를 복구한 다음, 상기 CLP 명령을 분석한다. 상기 CLP 명령은 명령어(verb), 선택사항(options), CLP 타겟(CLP target) 및 속성(properties)으로 구성되며, 이 중 CLP 타겟(CLP target)에 대하여 상기 CLP 타겟의 유효성 여부를 검토하는 파싱(parsing) 및 상기 CLP 타겟의 UFiP(User-friendly instance path)를 CIM 인스턴스 경로로 변환하는 고수준 분석(high-level resolution)을 수행한다(도 6 참조). 이때, 상기 고수준 분석이 수행되기 위해서는 상기 CLP 타겟의 UFiP를 CIM 인스턴스 경로로 변환하기 위한 정보(이하, MAP_UFiP 인스턴스 정보)가 필요하고, 상기 MAP_UFiP 인스턴스 정보는 MAP 프로바이더(326)에 의해 산출되기 때문에(도 7 참조), CLP 서비스(323)는 상기 파싱에 기초하여 MAP 프로바이더(326)에게 MAP_UFiP 인스턴스 정보를 요청하는 메시지(이하, CIM 요청 메시지)를 생성하여 CIM 서버(324)를 통하여 전달하고, MAP 프로바이더(326)로부터 MAP_UFiP 인스턴트 정보에 대한 메시지(이하, CIM 응답 메시지)를 CIM 서버(325)를 통하여 전달받는다.
여기서, CLP 타겟은 CLP 영역에서의 관리 대상(managed element)을 총칭하는 표현이다. CLP 영역에서, CLP 타겟은 하나의 관리 대상을 표현하기 위한 인스턴스 전체 경로인 UFiP 자체 또는 서로 다른 두 관리 대상의 상호 연관 관계를 표현하기 위한 연관 관계(UFiP=>Association=>UFiP)로 표현된다. 여기서, UFiP는 일련의 UFiT의 조합이고(예를 들어, UFiP=/admin1/UFiT/UFiT/.../UFiT) 각각의 UFiT는 UFcT(User-friendly instance tag)와 인스턴스 일련번호(instance suffixe)의 조합으로 표현되며, 선행하는 UFiT는 후행하는 UFiT를 포함하는 관계를 갖는다. 이에 대응하여, CIM 영역에서는, 상기 관리 대상은 상속이나 연관 관계를 갖는 CIM 클래스로 표현되고, 상기 CIM 클래스로부터 생성된 각각의 실제 관리 대상 객체는 CIM 인스턴스로 표현된다. 이때, 복잡한 관리 영역에서 CIM 인스턴스 파악을 위하여 상기 CIM 인스턴스는 인스턴스의 전체 경로인 CIM 인스턴스 경로(예를 들어, Namespace:CIMClassName.key1=value1,key2=value2,...)로 표현된다. 결과적으로, 상기 UFiP는 상기 CIM 인스턴스 경로와 대응한다. 즉, 상기 UFcT는 상기 CIM 클래스 이름(CIMClassName)과 대응하고, 상기 인스턴스 일련번호는 상기 키값(key1=value1,key2=value2,...)에 대응한다. 또한, 상기 MAP_UFiP 인스턴스 정보는 UFiP를 CIM 인스턴스 경로로 변환하기 위하여 사용되는 소정 데이터 구조로 MAP_UFiP 클래스 및 그 속성으로 표현된다(도 8 참조). 상기 CLP 타겟 분석을 수행하여 상기 UFiP를 상기 CIM 인스턴스 경로로 변환하는 이유는 본 발명의 CIM 서버(324)가 CLP 영역이 아닌 CIM 영역의 관리 대상 표현만을 이해하여 CIM 인스턴스 경로에 기초하여 관리 대상에 접근할 수 있기 때문이다.
상기 파싱 및 고수준 분석 결과 획득된 CIM 인스턴스 경로에 기초하여, CLP 서비스(323)는 CIM 서버(324)를 통하여 SMASH 프로바이더(325)에게 상기 CIM 인스턴스 경로에 대응하는 CIM 인스턴스에 접근하여 관리 대상 정보를 추출하도록 하는 메시지(이하, 작업 수행 요청 메시지)를 전달한다. 또한, CLP 서비스(323)는 추출된 상기 관리 대상 정보를 CIM 서버(324)를 통하여 제공받아 CLP 형식의 응답 메시지(이하, 작업 수행 응답 메시지)로 변경하고, CLP 서비스(323)에 일시적으로 저장되어 있는 상기 사용자 세션 정보를 갱신하여 상기 작업 수행 응답 메시지에 더함으로써, 상기 IPC 요청 메시지에 대응하는 IPC 응답 메시지를 생성하여 CLP 액세스 포인트(322)에 전달한다. 여기서, IPC 응답 메시지가 CLP 액세스 포인트(322)에 전달되면, 갱신된 상기 사용자 세션 정보는 CLP 액세스 포인트(322)에서 저장 관리되고, 상기 작업 수행 응답 메시지는 SSH 서버(321) 및 SSH 클라이언트(310)를 통해 텍스트 모드로 사용자 단말에 제공됨으로써, 사용자 단말로부터 입력된 CLP 명령에 대응하는 자원 관리의 결과가 제공된다.
CIM 서버(324)는 CLP 서비스(323)와 MAP 프로바이더(326) 사이에 상기 CIM 요청/응답 메시지 전달 및 CLP 서비스(323)와 SMASH 프로바이더(325) 사이에 상기 작업 수행 요청/응답 메시지를 전달하는 메시지 중개자이다.
MAP 프로바이더(326)는 전술한 바와 같이, 상기 CIM 요청 메시지에 기초하여 상기 MAP_UFiP 인스턴스 정보를 산출하는 저수준 분석(low-level resolution)을 수행한다(도 7 참조).
SMASH 프로바이더(325)는 전술한 바와 같이, 상기 작업 수행 요청 메시지에 기초하여 실제 관리 대상에 접근하여 관리 대상 정보를 추출한다. 이때, 상기 관리 대상에 접근하여 관리 대상 정보를 추출하기 위해서는, CIM 영역의 작업 수행 요청 메시지를 실제 관리 대상이 이해할 수 있는 정보로 변환하거나, 실제 관리 대상으로부터 추출된 정보를 CIM 영역의 정보로 변환하여야 한다. 이는 CIM 서버(324)가 이해할 수 있는 CIM 영역의 표현을 실제 관리 대상이 이해할 수 없기 때문이다. 따라서 SMASH 프로바이더(325)는 상기 CIM 서버(324)와 관리 대상 사이의 정보를 변환하는 기능을 수행한다.
이와 같이 본 발명의 일실시예에 따른 상기 자원 관리 시스템은 구체적인 서버(MAP)의 구성을 제시함으로써 SMASH 표준의 사용자 친화적인 명령행 프로토콜을 지원할 수 있다.
도 4는 본 발명의 일실시예에 따른 자원 관리 방법의 흐름도이다.
우선, 소정 사용자의 시스템 자원 접근 허용 여부를 결정하기 위하여 세션이 확립된다(s401)(도 5 참조).
상기 s401 단계에서 세션이 유효하게 확립된다면, 사용자 단말로부터 CLP 명령이 입력되어 SSH 클라이언트(310), SSH 서버(321), CLP 액세스 포인트(322) 및 CLP 서비스(323)에 순차적으로 전달된다(s402). 보다 상세하게는, 상기 CLP 명령은 SSH 프로토콜(SSHv2 프로토콜을 포함함)에 따른 SSH 클라이언트(310)에 의하여 보안이 유지되는 방법 및 텍스트 모드로 SSH 서버(321)에 전달되고, 다시 표준 입력 인터페이스를 통하여 SSH 서버(321)에서 CLP 액세스 포인트(322)로 전달된다. CLP 액세스 포인트(322)에서는 SSH 서버(321)로부터 전달된 CLP 명령에 사용자 세션 정보가 추가된 IPC 요청 메시지가 생성되어 CLP 서비스(323)에 전달된다.
다음으로, CLP 액세스 포인트(322)로부터 전달된 IPC 요청 메시지로부터 복구된 상기 CLP 명령의 CLP 타겟에 대하여 CLP 서비스(323) 및 MAP 프로바이더(326)에 의한 CLP 타겟 분석이 수행된다(s403). 즉, CLP 서비스(323)는 전달된 상기 CLP 명령의 CLP 타겟에 대한 파싱 및 고수준 분석을 수행하고(도 6 참조), MAP 프로바이더(326)는 상기 고수준 분석 수행을 위하여 CLP 타겟에 대한 저수준 분석을 수행한다(도 7 참조).
다음으로, 상기 타겟 분석 결과에 기초하여 대응하는 관리 대상의 정보가 추출되어 소정 응답 메시지로 생성된다(s404)(도 9 참조).
소정 응답 메시지로 생성된 상기 관리 대상의 정보는 CLP 서비스(323), CLP 액세스 포인트(322), SSH 서버(321) 및 SSH 클라이언트(310)에 의해 사용자 단말로 출력된다(s405). 보다 상세하게는, 상기 s402 단계에 대응하여, CLP 서비스(323)에서 생성된 IPC 응답 메시지는 CLP 액세스 포인트(322)로 전달되고, 상기 IPC 응답 메시지 중 작업 수행 응답 메시지는 SSH 서버(321)를 및 SSH 클라이언트(310)를 통하여 텍스트 모드로 사용자 단말에 제공됨으로써 본 발명의 일실시예에 따른 자원 관리 방법이 종료된다. .
도 5는 도 4의 세션 확립 과정에 대한 상세 흐름도이다.
우선, 사용자의 시스템 자원 접근 시도가 있으면, SSH 클라이언트(310)는 세션 연결 요청 메시지를 생성하여 SSH 서버(321)에 전달한다(s501).
SSH 서버(321)는 상기 세션 연결 요청에 따라 OS 사용자 계정을 이용하여 사용자 인증을 수행한다(s502)
상기 사용자 인증이 유효하게 수행되면, SSH 서버(321)는 CLP 액세스 포인트(322)를 가동시킨다(s503).
가동된 CLP 액세스 포인트(322)는 상기 사용자 계정 정보를 이용하여 사용자의 유효성 및 CIM 서버(324)의 구동 여부를 검토한다(s504).
상기 검토 결과, 상기 사용자가 유효하고 CIM 서버(324)가 구동중이면 CLP 프롬프트를 생성하여(s505) 사용자 단말로 출력함으로써(s507) CLP 명령이 입력되기를 기다린다(s505). 즉, 세션이 유효하게 확립되는 경우에 소정 사용자의 시스템 자원 접근이 허용되며 그 결과 전술한 바와 같이 본 발명의 일실시예에 따른 자원 관리 시스템 및 방법의 보안성이 향상된다.
반면, 상기 검토 결과, 상기 사용자가 유효하지 않거나 또는 CIM 서버(324)가 구동중이 아니라면 에러 메시지를 생성하여(s506) 사용자 단말로 출력함으로써(s507) 자원 관리 과정이 종료하고 상기 s402 내기 s405 단계는 수행되지 않는다.
도 6은 도 4의 CLP 타겟 분석 과정 중 CLP 서비스에서의 CLP 타겟 파싱 및 고수준 분석 과정에 대한 상세 흐름도이다.
우선, CLP 서비스(323)는 입력된 CLP 명령의 구성요소인 CLP 타겟이 UFiP 그 자체인지 또는 두 UFiP 사이의 연관관계를 나타내는 경우인지를 검토한다(s601). 전술한 바와 같이, CLP 타겟은 CLP 영역에서 하나의 관리 대상을 표현하기 위한 UFiP 자체로 표현되거나 또는 서로 다른 두 관리 대상의 상호 연관 관계를 나타내는 경우로 UFiP=>AssociationName=>UFiP로 표현된다.
상기 검토 결과, CLP 타겟이 UFiP이면 바로 s603 단계로 가지만, CLP 타겟이 연관관계를 나타내는 경우에는 연관관계 이름을 추출하고(s602) s603 단계로 간다.
다음으로, 상기 UFiP(UFiP 또는 연관관계에서의 첫 번째 UFiP)를 추출한다(s603).
추출된 상기 UFiP으로부터 UFiT를 추출하고(s604), 추출된 상기 UFiT로부터 UFcT 및 인스턴스 일련번호를 각각 추출한다(s605).
다음으로, 추출된 상기 UFcT가 존재하는지 여부를 검토하여(s606), UFcT가 존재하지 않으면 에러 응답 메시지를 생성함으로써(s607) 상기 CLP 타겟 분석 과정(s403)이 종료된다. 이러한 경우, CLP 타겟 분석 결과가 생성되지 않기 때문에 상기 CLP 타겟 분석 결과에 대응하는 관리 대상 정보가 추출되지 않으므로 상기 s404 단계는 수행되지 않고 바로 상기 s405 단계에 의하여 상기 에러 응답 메시지가 사용자 단말로 출력된다.
반면, s606 단계에 의한 검토 결과, UFcT가 존재하면 해당 UFcT가 그 직전에 추출된 UFcT에 포함되는지 여부 즉, 상기 포함하는 관계가 형성되는지를 검토한다(s608).
s608 단계에 의한 검토 결과, 포함하는 관계가 형성되지 않는다면 상기 UFcT가 존재하지 않는 경우와 마찬가지로 에러 응답 메시지를 생성함으로써(s607) 상기 CLP 타겟 분석 과정(s403)이 종료된다.
반면, s608 단계에 의한 검토 결과, 상기 포함하는 관계가 형성된다면 상기 UFiP에 UFiT가 더 존재하는지 검토하여(s609) UFiT가 더 존재한다면 상기 s604 내기 s609 단계를 반복 수행함으로써 상기 UFiP의 모든 UFiT에 대하여 분석을 수행한다.
다음으로, 두 번째 UFiP가 존재하는지 검토하여(s610) 두 번째 UFiP가 존재한다면 상기 s603 내지 s610 단계를 반복 수행함으로써 모든 CLP 타겟의 UFiP에 대하여 분석을 수행한다. 전술한 바와 같이, CLP 타겟이 두 UFiP 사이의 연관관계를 나타내는 경우에 두 번째 UFiP가 존재한다.
즉, 상기 s601 내지 s610 단계에서 CLP 타겟에 대한 유효성 여부가 검토되며, 이 과정을 CLP 타겟 파싱이라 한다.
상기 CLP 타겟이 상기 CLP 타겟 파싱 과정을 통과하면, 상기 CLP 타겟을 절대 표현(absolute target)으로 변환함으로써 CLP 타겟을 재형성한다(s611). 이는, 경우에 따라 UFiP 정보가 상대 표현(relative target)으로 표현된 경우도 있기 때문이다.
다음으로, 상기 재형성된 CLP 타겟을 CIM 인스턴스 경로로 변환하기 위하여 MAP_UFiP 인스턴스 정보를 요청하는 CIM 요청 메시지를 생성하여 CIM 서버(324)를 통해 MAP 프로바이더(326)에 전달한다(s612).
MAP 프로바이더(326)로부터 반환된 MAP_UFiP 인스턴스 정보로부터 CIM 인스턴스 경로를 추출함으로써(s613) CLP 타겟에 대한 고수준 분석 과정이 종료한다.
여기서, MAP 프로바이더(326)가 상기 CIM 요청 메시지에 기초하여 MAP_UFiP 인스턴스 정보를 생성하여 CIM 응답 메시지로 CLP 서비스(323)에 전달하는 과정은 상기 CLP 타겟에 대한 고수준 분석 과정 아래에서 작동하므로 저수준 분석 과정이라 하며 이하의 도 7에서 상술한다.
도 7은 도 4의 CLP 타겟 분석 과정 중 MAP 프로바이더에서의 CLP 타겟 저수준 분석 과정에 대한 상세 흐름도이다.
MAP 프로바이더(326)는 CLP 서비스(323)로부터 전달된 CIM 요청 메시지를 수신하고(s701) 상기 CIM 요청 메시지로부터 UFiP 키값(key value)을 추출한다(s702). 여기서, 상기 UFiP 키값(key value)은 MAP_UFiP 클래스의 UFiP 속성이다(도 8 참조).
상기 UFiP 키값이 하나의 UFiP를 나타내는지 또는 두 UFiP 사이의 연관관계를 나타내는 경우인지를 검토하여(s703) 연관관계를 나타내는 경우에는 연관관계 이름을 추출한다(s704).
다음으로, 상기 UFiP 키값에 해당하는 UFiP(UFiP 또는 연관관계에서의 첫 번 째 UFiP)를 추출하고(s705) 추출된 상기 UFiP으로부터 UFiT를 추출하며(s706) 추출된 상기 UFiT로부터 UFcT 및 인스턴스 일련번호를 각각 추출한다(s707).
다음으로, 상기 UFiP에 UFiT가 더 존재하는지 검토하여(s708) UFiT가 더 존재한다면 상기 s706 내지 s708 단계를 반복 수행함으로써 상기 UFiP의 모든 UFiT에 대하여 분석을 수행한다.
다음으로, UFcT, CIM 클래스 이름 및 키값을 맵핑하기 위한 소정 테이블(이하, UFcT/CIM 클래스 맵핑테이블)에서 상기 추출된 UFcT 중 마지막 UFcT를 찾는다(s709). 이것은 UFiP의 구조(포함관계)에 있어서 실제 관리대상은 마지막 UFiT로 표현이 되고 선행되는 UFiT는 이 마지막 UFiT를 포함하기 때문이다. 상기 맵핑 테이블을 이용하면 상기 마지막 UFiT의 UFcT에 대응하는 실제 CIM 클래스 이름을 획득할 수 있다.
상기 마지막 UFcT가 상기 맵핑 테이블에 존재하는지 검토하여(s710), 존재하지 않는다면 유효한 MAP_UFiP Instance가 존재하지 않음을 나타내는 정보가 생성되고(s711) 이에 대한 CIM 응답 메시지가 생성되어(s714) CIM 서버(324)를 통해 CLP 서비스(323)에 반환됨으로써 CLP 타겟에 대한 저수준 분석 과정이 종료한다.
반면, 상기 마지막 UFcT가 상기 맵핑 테이블에 존재한다면(즉, 상기 UFcT에 대응하는 실제 CIM 클래스 이름을 획득된다면) 두 번째 UFiP의 존재하는지 검토하고(s712), 검토 결과 존재하는 경우에는 상기 두 번째 UFiP에 대하여 s705 내지 s712 단계를 반복 수행한다. 전술한 바와 같이, 상기 두 UFiP 사이의 연관관계를 나타내는 경우에 두 번째 UFiP가 존재한다.
다음으로, 상기 UFiT의 인스턴스 일련번호 및 상기 UFcT/CIM 클래스 맵핑테이블로부터 획득된 CIM 클래스 이름에 기초하여 MAP_UFiP Class의 각종 속성을 획득함으로써 MAP_UFiP 인스턴스 정보가 산출된다(s713). 도 8은 상기 MAP_UFiP 클래스 및 그 속성을 예시적으로 나타내는 도면이다. 도 8에 도시된 바와 같이, MAP_UFiP 클래스에는 UFiP, UFcT, InstanceSuffixe, CimInstancePath, ContainedMEs[], associations[], verbs[] 및 required[] 등의 속성이 포함되어 있으며 MAP 프로바이더(326)에 의해서 산출된다. 여기서, UFiP 속성은 CLP 서비스(323)가 CLP 타겟의 속성을 요청할 때 사용되는 키값이다. CimInstancePath 속성은 관리 대상의 CIM 인스턴스 경로를 포함하는 스트링 배열이다. 그 외에 ContainedMEs[]는 관리 대상인 CLP 타겟 이름을 포함하는 스트링 배열, associations[]는 관리 대상 사이의 연관 관계인 CLP 타겟 이름을 포함하는 스트링 배열, verbs[]는 관리 대상에 적용될 수 있는 명령어를 포함하는 스트링 배열, required[]는 CLP 형식의 응답 메시지에서 표시되어야 하는 디폴트(default) 값을 포함하는 스트링 배열이다.
마지막으로, 산출된 MAP_UFiP 인스턴스 정보에 대한 CIM 응답 메시지가 생성되어 CLP 서비스(323)로 출력됨으로써(s714) MAP 프로바이더에서의 CLP 타겟 저수준 분석 과정이 종료한다.
도 9는 도 4의 자원 관리 방법 중 관리 대상 정보 추출 과정의 상세 흐름도이다.
우선, CLP 서비스(323) 및 MAP 프로바이더(326)에서의 CLP 타겟 분석 결과 추출된 CIM 인스턴스 경로에 기초하여, CIM 서비스(323)는 상기 추출된 CIM 인스턴스 경로에 대응하는 CIM 인스턴스(관리 대상)의 정보를 추출하는 메시지(작업 수행 요청 메시지)를 CIM 서버(324)를 통하여 SMASH 프로바이더(325)에 전달한다(s901).
SMASH 프로바이더(325)는 우선 대응하는 관리 대상이 존재하는지 여부를 검토하고(s902) 상기 검토 결과 상기 대응하는 관리 대상이 존재하지 않는다면 에러 응답 메시지를 생성하여(s903) 사용자 단말로 출력한다.
반면, 상기 검토 결과 상기 대응하는 관리 대상이 존재한다면 SMASH 프로바이더(325)는 관리 대상에 접근하여 소정 정보를 추출한다(s904). 전술한 바와 같이, SMASH 프로바이더는 관리 대상으로부터 정보를 추출함에 있어서 CIM 서버(324)와 관리 대상 사이의 정보를 변환하는 기능을 수행한다.
상기 관리 대상으로부터 추출된 정보가 CIM 서버(324)를 통하여 CLP 서비스(323)에 전달되면, CLP 서비스는 상기 관리 대상 정보를 CLP 형식의 응답 메시지(작업 수행 응답 메시지)로 변경하여(s905) 사용자 단말로 출력함으로써 상기 관리 대상 정보 추출 과정이 종료한다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기 로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것은 아니다.
이상에서 설명한 바와 같이 본 발명은, 종래의 WBEM 구조를 개선하여 WBEM 구조에서도 SMASH 표준의 명령행 프로토콜(CLP : command line protocol)을 지원할 수 있는 자원 관리 구조를 제시함으로써, 사용자가 사용자-친화적인 명령행 인터페이스를 통하여 보안을 유지하면서 시스템 자원에 접근하여 시스템 자원을 관리할 수 있다.

Claims (22)

  1. 명령행 프로토콜(CLP : Command Line Protocol)을 지원하는 WBEM 기반 자원 관리 시스템으로서,
    소정 사용자 단말로부터 CLP 명령을 입력받아 서버로 전달하는 클라이언트; 및
    상기 클라이언트로부터 전달된 CLP 명령의 대상인 CLP 타겟을 분석(resolution)하여 CLP 영역의 관리 대상 표현을 WBEM 구조에서 이해되는 CIM 영역의 관리 대상 표현으로 변환함으로써 자원에 접근하여 자원 관리를 수행하고 상기 자원 관리 결과를 상기 클라이언트에 전달하는 상기 서버
    를 포함하되,
    상기 서버는 SSH 서버, CLP 액세스 포인트, CLP 서비스, CIM 서버, MAP 프로바이더 및 SMASH 프로바이더를 포함하는 자원 관리 시스템.
  2. 제 1 항에 있어서,
    상기 클라이언트는,
    SSH 프로토콜을 따르는 SSH 클라이언트로서,
    상기 SSH 프로토콜은 SSHv2 프로토콜을 포함하는 것을 특징으로 하는 자원 관리 시스템.
  3. 제 2 항에 있어서,
    상기 SSH 클라이언트는 CLP 명령을 입력받기 전에 세션 연결 요청 메시지를 생성하여 상기 SSH 서버에 전달하고,
    상기 SSH 서버는 상기 세션 연결 요청에 기초하여 OS 사용자 계정을 이용한 사용자 인증을 수행하고, 상기 사용자 인증이 유효하게 수행되면 상기 CLP 액세스 포인트를 가동시키고,
    가동된 상기 CLP 액세스 포인트는 상기 사용자 계정 정보에 따른 사용자의 유효성 및 상기 CIM 서버의 구동 여부를 검토함으로써 상기 CLP 명령을 입력받기 전 세션을 확립하고 상기 세션 확립에 대한 소정 정보(사용자 세션 정보)를 저장 관리하는 것을 특징으로 하는 자원 관리 시스템.
  4. 제 3 항에 있어서,
    상기 CLP 액세스 포인트의 상기 검토 결과로서,
    사용자가 유효한 사용자이고 상기 CIM 서버가 구동중이면 CLP 프롬프트가 생성됨으로써 CLP 명령이 입력될 수 있고,
    상기 사용자가 유효한 사용자가 아니거나 또는 상기 CIM 서버가 구동 중이 아니라면 에러 메시지가 생성됨으로써 CLP 명령이 입력될 수 없는 것을 특징으로 하는 자원 관리 시스템.
  5. 제 4 항에 있어서,
    상기 소정 사용자 단말로부터 CLP 명령이 입력되면,
    상기 SSH 클라이언트는 CLP 명령을 보안이 유지되는 방법에서 텍스트 모드로 상기 SSH 서버에 전달하고,
    상기 SSH 서버는 상기 SSH 클라이언트로부터 전달된 CLP 명령을 상기 CLP 액세스 포인트에 전달하고,
    상기 CLP 액세스 포인트는 CLP 명령의 진입점(entry point)으로서 상기 SSH 서버로부터 전달된 CLP 명령에 사용자 세션 정보를 더하여 상기 CLP 서비스에 전달함으로써, 상기 CLP 명령이 상기 서버에 진입하는 것을 특징으로 하는 자원 관리 시스템.
  6. 제 5 항에 있어서,
    상기 서버에 CLP 명령이 진입하면,
    상기 CLP 서비스는 CLP 명령의 대상인 CLP 타겟에 대하여 유효성 여부를 검토하는 파싱 및 CLP 타겟(CLP 영역의 관리 대상 표현)을 CIM 영역의 관리 대상 표현으로 변환하는 제 1 분석을 수행하고,
    상기 MAP 프로바이더는 상기 제 1 분석의 수행을 위하여 CLP 타겟을 CIM 영역의 관리 대상 표현으로 변환하기 위한 소정 정보를 산출하는 제 2 분석을 수행하며,
    상기 SMASH 프로바이더는 상기 제 1 및 제 2 분석 결과에 기초하여 산출된 CIM 영역의 관리 대상 표현에 대응하는 관리 대상에 접근하여 정보를 산출하되,
    상기 CLP 서비스, 상기 MAP 프로바이더 및 상기 SMASH 프로바이더는 메시지 중개자인 상기 CIM 서버를 통하여서 연결되는 것을 특징으로 하는 자원 관리 시스템.
  7. 제 6 항에 있어서,
    상기 CLP 영역의 관리 대상 표현은 UFiP(User friendly instance path) 또는 UFiP 사이의 연관 관계이고, 상기 CIM 영역의 관리 대상 표현은 CIM 인스턴스 경로이며, 상기 CLP 영역의 관리 대상 표현을 CIM 영역의 관리 대상 표현으로 변환하기 위한 소정 정보는 MAP_UFiP 인스턴스 정보인 것을 특징으로 하는 자원 관리 시스템.
  8. 제 7 항에 있어서,
    상기 CLP 서비스는,
    CLP 타겟의 모든 UFiP에 대하여 UFiP를 추출하고, 상기 UFiP로부터 모든 UFiT(User friendly instance tag)를 추출하고, 상기 모든 UFiT에 대하여 UfcT(User friendly class tag) 및 인스턴스 일련번호를 추출하고,
    상기 UFcT의 존재 여부 및 포함관계 형성 여부를 검토하여,
    상기 검토 결과, 상기 UFcT가 존재하고 포함관계가 형성된다면 CLP 타겟을 절대 표현으로 변환함으로써 CLP 타겟을 재형성하고,
    상기 검토 결과, 상기 UFcT가 존재하지 않거나 또는 포함관계가 형성되지 않는다면 에러 응답 메시지를 생성함으로써 상기 CLP 타겟에 대한 파싱을 수행하는 것을 특징으로 하는 자원 관리 시스템.
  9. 제 8 항에 있어서,
    상기 CLP 서비스는,
    상기 재형성된 CLP 타겟에 대한 UFiP를 CIM 인스턴스 경로로 변환하기 위하여 상기 MAP_UFiP 인스턴스 정보를 요청하는 CIM 요청 메시지를 생성하여 상기 MAP 프로바이더에게 전달하고,
    상기 CIM 요청 메시지에 대응하여 MAP_UFiP 인스턴스 정보에 대한 메시지(CIM 응답 메시지)를 상기 MAP 프로바이더로부터 전달받고,
    상기 MAP_UFiP 인스턴스 정보로부터 상기 CIM 인스턴스 경로를 추출함으로써 상기 UFiP를 CIM 인스턴스 경로로 변환하는 상기 제 1 분석을 수행하는 것을 특징으로 하는 자원 관리 시스템.
  10. 제 9 항에 있어서,
    상기 MAP 프로바이더는,
    상기 CLP 서비스로부터 수신된 CIM 요청 메시지로부터 추출되는 UFiP 키값에 해당하는 모든 UFiP에 대하여 UFiP를 추출하고, 상기 추출한 UFiP로부터 모든 UFiT((User friendly instance tag)를 추출하고, 상기 추출한 모든 UFiT에 대하여 UFcT(User friendly class tag) 및 인스턴스 일련번호를 추출하고,
    상기 UFcT, CIM 클래스 이름 및 키값을 맵핑하기 위한 소정 테이블(UFcT/CIM 클래스 맵핑 테이블)에 마지막 UFcT가 존재하는지 여부를 검토하여,
    상기 검토 결과, 상기 마지막 UFcT가 존재한다면 상기 인스턴스 일련번호 및 상기 소정 테이블(UFcT/CIM 클래스 맵핑 테이블)에 기초하여 MAP_UFiP 클래스의 각종 속성을 획득함으로써 MAP_UFiP 인스턴스 정보를 산출하고,
    상기 검토 결과, 상기 마지막 UFcT가 존재하지 않는다면 상기 MAP_UFiP 인스턴스 정보가 존재하지 않음을 나타내는 정보를 산출하고,
    상기 산출된 정보(상기 MAP_UFiP 인스턴스 정보 또는 상기 MAP_UFiP 인스턴스 정보가 존재하지 않음을 나타내는 정보)에 대한 CIM 응답 메시지를 생성하여 상기 CLP 서비스에 반환함으로써 상기 제 2 분석을 수행하는 것을 특징으로 하는 자원 관리 시스템.
  11. 제 10 항에 있어서,
    상기 MAP_UFiP 인스턴스 정보는,
    MAP_UFiP 클래스 및 그 속성을 포함하며,
    상기 속성은 UFiP 속성 및 "CimInstancePath" 속성을 포함하는 것을 특징으로 하는 자원 관리 시스템.
  12. 제 11 항에 있어서,
    상기 SMASH 프로바이더는,
    상기 CLP 서비스로부터 상기 추출된 CIM 인스턴스 경로에 대응하는 CIM 인스턴스(관리 대상)의 정보를 추출하기 위한 메시지(작업 수행 요청 메시지)를 수신하고,
    상기 대응하는 관리 대상이 존재하는지 여부를 검토하여,
    상기 검토 결과, 상기 대응하는 관리 대상이 존재하지 않는다면 에러 응답 메시지를 생성하여 상기 CLP 서비스에 반환하고,
    상기 검토 결과, 상기 대응하는 관리 대상이 존재한다면 관리 대상에 접근하여 소정 정보(관리 대상 정보)를 추출하여 상기 CLP 서비스에 반환하되,
    상기 관리 대상에 접근함에 있어 CIM 영역의 정보와 관리 대상이 이해할 수 있는 영역의 정보를 상호 변환하는 것을 특징으로 하는 자원 관리 시스템.
  13. 명령행 프로토콜(CLP : Command Line Protocol)을 지원하는 WBEM 기반 자원 관리 방법으로서,
    소정 사용자 단말로부터 CLP 명령이 입력되어 소정 클라이언트를 통하여 소정 서버로 진입하는 제 1 단계;
    상기 소정 서버에서 상기 진입한 CLP 명령의 CLP 타겟에 대한 분석(resolution)이 수행됨으로써 CLP 영역의 관리 대상 표현이 CIM 영역의 관리 대상 표현으로 변환되는 제 2 단계;
    상기 제 2 단계에서 변환된 CIM 영역의 관리 대상 표현에 대응되는 관리 대상에 접근하여 정보를 추출하는 제 3 단계; 및
    상기 제 3 단계에서 추출된 관리 대상의 정보가 상기 소정 클라이언트를 통하여 상기 소정 사용자 단말로 반환되는 제 4 단계
    를 포함하는 자원 관리 방법.
  14. 제 13 항에 있어서,
    상기 소정 서버는,
    SSH 서버, CLP 액세스 포인트, CLP 서비스, CIM 서버, MAP 프로바이더 및 SMASH 프로바이더를 포함하는 것을 특징으로 하는 자원 관리 방법.
  15. 제 14 항에 있어서,
    상기 제 1 단계는,
    상기 소정 클라이언트가 SSH 프로토콜(SSHv2 프로토콜을 포함)을 따르는 SSH 클라이언트로서,
    상기 SSH 프로토콜에 의하여 보안이 유지되는 방법 및 텍스트 모드로 CLP 명령을 상기 SSH 서버로 전달하는 것을 특징으로 하는 자원 관리 방법.
  16. 제 15 항에 있어서,
    상기 제 2 단계는,
    CLP 타겟의 유효성 여부를 검토하는 파싱을 수행하는 제 5 단계;
    상기 제 5 단계에서 수행된 파싱 결과에 기초하여 CLP 영역의 관리 대상 표현을 CIM 영역의 관리 대상 표현으로 변환하기 위한 정보를 요청하는 제 6 단계;
    상기 제 6 단계의 요청에 기초하여 CLP 영역의 관리 대상 표현을 CIM 영역의 관리 대상 표현으로 변환하기 위한 정보를 산출하여 반환하는 제 7 단계; 및
    상기 제 7 단계에서 반환된 정보로부터 CLP 영역의 관리 대상 표현에 대응하는 CIM 영역의 관리 대상 표현을 산출함으로써 CLP 영역의 관리 대상 표현을 CIM 영역의 관리 대상 표현으로의 변환을 수행하는 제 8 단계
    를 포함하는 자원 관리 방법.
  17. 제 16 항에 있어서,
    상기 CLP 영역의 관리 대상 표현은 UFiP(User friendly instance path) 또는 UFiP 사이의 연관 관계이고, 상기 CIM 영역의 관리 대상 표현은 CIM 인스턴스 경로이며, 상기 CLP 영역의 관리 대상 표현을 CIM 영역의 관리 대상 표현으로 변환하기 위한 소정 정보는 MAP_UFiP 인스턴스 정보인 것을 특징으로 하는 자원 관리 방법.
  18. 제 17 항에 있어서,
    상기 제 5 단계는,
    CLP 타겟의 모든 UFiP에 대하여 UFiP를 추출하고, 상기 추출한 UFiP로부터 모든 UFiT((User friendly instance tag)를 추출하고, 상기 추출한 모든 UFiT에 대하여 UfcT(User friendly class tag) 및 인스턴스 일련번호를 추출하는 단계;
    상기 UFcT의 존재 여부 및 포함관계 형성 여부를 검토하는 단계;
    상기 검토 결과, UFcT가 존재하고 포함관계가 형성된다면 CLP 타겟을 절대 표현으로 변환함으로써 CLP 타겟을 재형성하는 단계; 및
    상기 검토 결과, UFcT가 존재하지 않거나 또는 포함관계가 형성되지 않는다면 에러 응답 메시지를 생성하는 단계
    를 포함하는 자원 관리 방법.
  19. 제 17 항에 있어서,
    상기 제 7 단계는,
    상기 재형성된 CLP 타겟에 대한 UFiP를 CIM 인스턴스 경로로 변환하기 위하여 상기 MAP_UFiP 인스턴스 정보를 요청하는 CIM 요청 메시지를 수신하는 단계;
    상기 수신된 CIM 요청 메시지로부터 추출되는 UFiP 키값에 해당하는 모든 UFiP에 대하여 UFiP를 추출하고, 상기 추출한 UFiP로부터 모든 UFiT((User friendly instance tag)를 추출하고, 상기 추출한 모든 UFiT에 대하여 UFcT(User friendly class tag) 및 인스턴스 일련번호를 추출하는 단계;
    상기 UFcT, CIM 클래스 이름 및 키값을 맵핑하기 위한 UFcT/CIM 클래스 맵핑 테이블에 마지막 UFcT가 존재하는지 여부를 검토하는 단계;
    상기 검토 결과, 마지막 UFcT가 존재한다면 상기 인스턴스 일련번호 및 상기 UFcT/CIM 클래스 맵핑 테이블에 기초하여 MAP_UFiP 클래스의 각종 속성을 획득함으로써 MAP_UFiP 인스턴스 정보를 산출하는 단계;
    상기 검토 결과, 마지막 UFcT가 존재하지 않는다면 상기 MAP_UFiP 인스턴스 정보가 존재하지 않음을 나타내는 정보를 산출하는 단계; 및
    상기 산출된 정보(상기 MAP_UFiP 인스턴스 정보 또는 상기 MAP_UFiP 인스턴스 정보가 존재하지 않음을 나타내는 정보)에 대한 CIM 응답 메시지를 생성하여 반환하는 단계
    를 포함하는 자원 관리 방법.
  20. 제 16 항에 있어서,
    상기 제 3 단계는,
    CIM 인스턴스 경로에 대응하는 CIM 인스턴스(관리 대상)의 정보를 추출하기 위한 메시지(작업 수행 요청 메시지)를 수신하는 단계;
    대응하는 관리 대상이 존재하는지 여부를 검토하는 단계;
    상기 검토 결과, 대응하는 관리 대상이 존재하지 않는다면 에러 응답 메시지를 생성하여 반환하는 단계; 및
    상기 검토 결과, 대응하는 관리 대상이 존재한다면 관리 대상에 접근하여 소정 정보(관리 대상 정보)를 추출하여 반환하는 단계
    를 포함하는 자원 관리 방법.
  21. 제 13 항에 있어서,
    상기 제 1 단계의 소정 사용자 단말로부터 CLP 명령이 입력되기 전에 세션을 확립하는 단계를 더 포함하는 자원 관리 방법.
  22. 제 21 항에 있어서,
    상기 세션을 확립하는 단계는,
    상기 소정 사용자 단말의 접근 시도에 따라 상기 CLP 명령을 입력받기 전에 세션 연결 요청을 수행하는 단계;
    상기 세션 연결 요청에 기초하여 OS 사용자 계정을 이용한 사용자 인증을 수행하는 단계;
    상기 사용자 인증이 유효하게 수행되면 상기 CLP 액세스 포인트가 가동되는 단계;
    상기 가동된 CLP 액세스 포인트에서 상기 사용자 계정 정보에 따른 사용자의 유효성 및 상기 CIM 서버의 구동 여부를 검토하는 단계; 및
    상기 검토 결과, 사용자가 유효한 사용자이고 상기 CIM 서버가 구동 중이면 CLP 프롬프트가 생성되어 CLP 명령을 대기하고, 사용자가 유효한 사용자가 아니거나 또는 상기 CIM 서버가 구동 중이 아니라면 에러 메시지가 생성되는 단계
    를 포함하는 자원 관리 방법.
KR1020060065106A 2005-12-08 2006-07-11 자원 관리 시스템 및 방법 KR100768087B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20050120230 2005-12-08
KR1020050120230 2005-12-08

Publications (2)

Publication Number Publication Date
KR20070061210A KR20070061210A (ko) 2007-06-13
KR100768087B1 true KR100768087B1 (ko) 2007-10-17

Family

ID=38357148

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060065106A KR100768087B1 (ko) 2005-12-08 2006-07-11 자원 관리 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR100768087B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101532263B1 (ko) * 2014-01-22 2015-06-30 전자부품연구원 프런트 엔드 어플리케이션 라이브러리를 이용한 클라우드 스토리지 서비스 방법 및 시스템
KR101586720B1 (ko) * 2014-01-22 2016-01-21 전자부품연구원 클라우드 스토리지 표준 관리를 위한 프런트-엔드 어플리케이션 라이브러리 설계

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020091809A1 (en) 1998-05-08 2002-07-11 Menzies Steven J. Management information to object mapping
US20030217195A1 (en) 2002-05-16 2003-11-20 Sun Microsystems, Inc. Method and apparatus for managing host-based data services using CIM providers
US20050138316A1 (en) 2003-12-17 2005-06-23 Groves David W. Method and system for assigning a resource

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020091809A1 (en) 1998-05-08 2002-07-11 Menzies Steven J. Management information to object mapping
US20030217195A1 (en) 2002-05-16 2003-11-20 Sun Microsystems, Inc. Method and apparatus for managing host-based data services using CIM providers
US20050138316A1 (en) 2003-12-17 2005-06-23 Groves David W. Method and system for assigning a resource

Also Published As

Publication number Publication date
KR20070061210A (ko) 2007-06-13

Similar Documents

Publication Publication Date Title
US8549471B2 (en) Method and apparatus for providing API service and making API mash-up, and computer readable recording medium thereof
CN110083455B (zh) 图计算处理方法、装置、介质及电子设备
US20130132372A1 (en) Systems and methods for dynamic service integration
JP2005505051A (ja) クライアント−サーバネットワークにおいてファイルタイプの関連性により分散型のプログラムの実行方法
EP3270298A1 (en) Server and data processing method
US20180307692A1 (en) Software application interface for mediating access to services of a centralized data store
US20210344766A1 (en) Systems and methods for decentralization of blockchain-based processes employing a blockchain-associated front end or blockchain-associated user interface
US20080040418A1 (en) Accessing existing data using a service oriented architecture gateway
US7237222B1 (en) Protocol for controlling an execution process on a destination computer from a source computer
WO2009033424A1 (fr) Procédé et système d'obtention d'information de commandes d'utilisateur et dispositif pour enregistrer les commandes d'utilisateur
KR100768087B1 (ko) 자원 관리 시스템 및 방법
US20170131980A1 (en) Model driven architecture for network management and configuration
US7885997B2 (en) Data processing method, program, device, message structure, message generation method, and message transmission method
US7860987B2 (en) Apparatus for providing service in response to user request and method therefor
CN112769975B (zh) 一种数据集成方法、装置、服务器及存储介质
CN114285859A (zh) 中间层区块链服务的数据处理方法、装置、设备及存储介质
US7562084B2 (en) System and method for mapping between instrumentation and information model
JP5091003B2 (ja) 情報処理システム、情報処理方法、プログラム、及び、記録媒体
JP4529766B2 (ja) 情報提供システム、情報提供方法、サーバ及び情報提供プログラム
JP2000235497A (ja) ポリシマクロ方法及びポリシマクロプログラムを格納した記憶媒体
CN111274053A (zh) 一种通过nova调用qemu guest agent接口的方法
KR100420103B1 (ko) 엑스엠엘 기반의 웹 어플리케이션 구현 시스템 및 방법
US8127026B2 (en) User operation acting device, user operation acting program, and computer readable recording medium
KR20130113787A (ko) Pc방의 가상 ⅰp를 이용한 게임 서비스 제공 방법 및 시스템
US20240231762A1 (en) Event consumption for high-level programing language platform

Legal Events

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

Payment date: 20101001

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee