KR20080092332A - Method and system for light-weight soap transport for web services based management - Google Patents

Method and system for light-weight soap transport for web services based management Download PDF

Info

Publication number
KR20080092332A
KR20080092332A KR1020087004334A KR20087004334A KR20080092332A KR 20080092332 A KR20080092332 A KR 20080092332A KR 1020087004334 A KR1020087004334 A KR 1020087004334A KR 20087004334 A KR20087004334 A KR 20087004334A KR 20080092332 A KR20080092332 A KR 20080092332A
Authority
KR
South Korea
Prior art keywords
message
soap
block
rmcp
rsp
Prior art date
Application number
KR1020087004334A
Other languages
Korean (ko)
Other versions
KR101200875B1 (en
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 KR20080092332A publication Critical patent/KR20080092332A/en
Application granted granted Critical
Publication of KR101200875B1 publication Critical patent/KR101200875B1/en

Links

Images

Classifications

    • 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/02Standardisation; Integration
    • H04L41/0246Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
    • H04L41/0273Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using web services for network management, e.g. simple object access protocol [SOAP]
    • 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/04Network management architectures or arrangements
    • H04L41/052Network management architectures or arrangements using standardised network management architectures, e.g. telecommunication management network [TMN] or unified network management architecture [UNMA]
    • 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/34Signalling channels for network management communication
    • H04L41/344Out-of-band transfers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Certain aspects of a method and system for light-weight simple object access protocol (SOAP) transport for web services based management are disclosed. Aspects of a method may include managing a system using a simple object access protocol (SOAP) message that is mapped over one or both of: a remote management and control protocol (RMCP) and a RMCP security extensions protocol (RSP) to enable remote management of systems using Web services in out-of-band (OOB) management devices.

Description

웹 서비스 기반 관리를 위한 경량 SOAP 전송을 위한 방법 및 시스템{METHOD AND SYSTEM FOR LIGHT-WEIGHT SOAP TRANSPORT FOR WEB SERVICES BASED MANAGEMENT}METHOD AND SYSTEM FOR LIGHT-WEIGHT SOAP TRANSPORT FOR WEB SERVICES BASED MANAGEMENT}

본원 발명의 특정 실시예들은 네트워크 통신에 관한 것이다. 특히, 본원 발명의 특정 실시예들은 웹 서비스 기반 관리를 위한 경량(light-weight) 단순 객체 접속 프로토콜(simple object access protocol; SOAP) 전송을 위한 방법 및 시스템에 관한 것이다.Certain embodiments of the present invention relate to network communication. In particular, certain embodiments of the present invention relate to methods and systems for light-weight simple object access protocol (SOAP) transport for web service based management.

웹 서비스 아키텍처(architecture)는 풍부한 웹 기반 기능들을 규정하는 세부 사항들의 집합(suite)에 기초하고, 다양한 서비스 요구들에 부합하도록 구성될 수 있다. 웹 서비스 아키텍처는 관리 애플리케이션들(applications) 및 관리되는 리소스들(resources) 사이에서 상호 이용 가능성을 촉진하도록 시스템 관리의 영역에서 이용될 수 있다. 웹 서비스 아키텍처는 시스템 관리에 중심적일 수 있는 동작들의 공통 세트를 보이기 위해 웹 서비스 세부 사항들 및 사용 요구들의 중심 세트를 식별 가능하게 될 수 있다. 예를 들면, 세부 사항들은 관리 리소스들의 존재를 발견하고 이들 사이에서 운용 가능하게 될 수 있다. 개별적 관리 리소스들은 조정에 의해 생성되고, 재명칭되고(renamed), 또는 삭제될 수 있다. The web services architecture is based on a suite of details that define rich web-based functions and can be configured to meet various service needs. The web services architecture can be used in the area of system management to promote interoperability between management applications and managed resources. The web services architecture may be capable of identifying a central set of web service details and usage needs to show a common set of operations that may be central to system management. For example, the details can discover the existence of management resources and become operable between them. Individual management resources may be created, renamed, or deleted by coordination.

웹 서비스 세부 사항들은 순응성(conformant) 웹 서비스 구현들을 위한 최소 구현 요구들을 규정할 수 있다. 웹 서비스 세부 사항들의 구현은 이 동작들의 세트 너머로 확장될 수 있도록 자유할 수 있고, 또는 기능이 목표 장치 또는 시스템에 적합하지 않으면, 이 기능의 하나 또는 그 이상의 영역들을 지원하지 않도록 선택될 수 있다. Web service details may specify minimum implementation requirements for conformant web service implementations. Implementation of the web service details may be free to extend beyond this set of operations, or may be chosen not to support one or more areas of this function if the function is not suitable for the target device or system.

웹 서비스들은 웹을 통해 발간되고, 위치되고, 인용될 수 있는 자기충족적(self-contained)이고 자기기술적(self-describing)인 모듈러 애플리케이션(modular application)들일 수 있다. 웹 서비스 규정 언어(web services definition language; WSDL)는 서비스 공급자들이 여러 프로토콜들 또는 인코딩들상에서 웹 서비스 요청들의 기본 형식을 기술하는 것을 가능하게 할 수 있다. 웹 서비스들은 네트워크 종단들(endpoints) 또는 포트들(ports)의 집합일 수 있다. WSDL에서, 종단들 및 메시지들의 추상적 정의들은 교환되는 데이터의 추상적 기술(description)들인 메시지들, 및 동작들의 추상적 집합들인 포트 유형들의 추상적 정의들의 재사용을 허용하도록 종단들 및 메시지들의 구체적인 네트워크 배치 또는 데이터 형식 결합으로부터 분리될 수 있다. 특정 포트 유형을 위한 데이터 형식 세부 사항들 및 구체적인 프로토콜은 재사용가능한 결합을 구성할 수 있다. 포트는 네트워크 주소를 재사용가능한 결합과 연관시켜 규정될 수 있고, 포트들의 집합은 서비스를 규정할 수 있다.Web services can be self-contained and self-describing modular applications that can be published, located, and cited over the web. A web services definition language (WSDL) may enable service providers to describe the basic format of web service requests on various protocols or encodings. Web services may be a collection of network endpoints or ports. In WSDL, abstract definitions of endpoints and messages are specific network layout or data of endpoints and messages to allow reuse of messages that are abstract descriptions of the data being exchanged, and port types that are abstract sets of operations. Can be separated from formal combinations. Data format details and specific protocols for a particular port type may constitute a reusable combination. Ports can be defined by associating network addresses with reusable bonds, and a collection of ports can define a service.

용어 "시스템 관리가능성(system manageability)"은 OS-존재 및 OS-부재 모두에서 원격 시스템 접속 및 제어를 가능하게 하는 광범위한 기술들을 표현할 수 있다. 이 기술들은 유지(maintenance)에 관련된 현장(on-site) 정보 기술(information technology; IT)을 최소화하는 것, 국부(local) 사용자에게 시스템 이용가능성 및 성능을 최대화하는 것, IT 관리자들에 의한 국부 시스템들로의 원격 가시성(visibility) 및 접속을 최대화하는 것, 및 이 접속을 강건히 유지하기위해 요구되는 시스템 전력 소모를 최소화하는 것에 기본적으로 초점이 맞추어진다.The term “system manageability” may represent a wide range of technologies that enable remote system access and control in both OS-existent and OS-absent. These technologies include minimizing on-site information technology (IT) related to maintenance, maximizing system availability and performance for local users, and localization by IT administrators. The primary focus is on maximizing remote visibility and connectivity to systems, and minimizing system power consumption required to maintain this connection robustly.

컴퓨터 시스템들의 웹 서비스 기반 관리는 대중적으로 증가하여 왔다. 대역 외(out-of-band; OOB) 또는 OS-부재 환경에서 웹 서비스를 사용하는 시스템의 원격 관리는, 네트워크 제어기 또는 베이스보드 관리 제어기들(baseboard management controllers; BMCs)과 같은 시스템내에 존재하는 OOB 관리 장치들을 위한 중요한 변화들을 만들고 있다. Web service based management of computer systems has been increasing in popularity. Remote management of a system using web services in an out-of-band (OOB) or OS-free environment is an OOB that resides in a system such as a network controller or baseboard management controllers (BMCs). Making significant changes for management devices.

부가적인 종래적이고 전통적인 접근들의 한계들 및 단점들은 추후 기술되는 첨부된 도면들과 본원 발명의 나머지 부분들과 같이, 본원 발명의 일부 측면들과 비교를 통해 당해 기술의 숙련자에게 명백해질 것이다.The limitations and disadvantages of additional conventional and traditional approaches will become apparent to those skilled in the art in comparison with some aspects of the invention, such as the accompanying drawings and the rest of the invention described later.

실질적으로 적어도 하나의 도면들과 관련하여 도시되는 것과 같이, 웹 서비스 기반 관리를 위한 경량 단순 객체 접속 프로토콜(simple object access protocol; SOAP) 전송을 위한 방법 및/또는 시스템은 청구항들에서 더 완전히 기술된다.As substantially shown in connection with at least one of the figures, a method and / or system for lightweight simple object access protocol (SOAP) transport for web service based management is more fully described in the claims. .

본원 발명의 다른 장점들, 측면들, 및 진보적 형태들 뿐만 아니라 기재된 실시예는 추후 기재되는 첨부된 도면들로부터 더 자세히 이해할 수 있다.Other advantages, aspects, and progressive forms of the present invention, as well as the described embodiments, can be understood in more detail from the appended drawings, which will be described later.

도 1a는 본원 발명의 실시예에 따른 RMCP/RSP 맵핑상에 SOAP가 있는 예시적인 아키텍처의 블럭도이다.1A is a block diagram of an exemplary architecture with SOAP on RMCP / RSP mapping in accordance with an embodiment of the invention.

도 1b는 본원 발명의 실시예에 따른 네트워크 인터페이스 하드웨어가 있는 호스트를 도시한 블럭도이다. 1B is a block diagram illustrating a host with network interface hardware in accordance with an embodiment of the invention.

도 1c는 본원 발명의 실시예에 관련되어 이용될 수 있는 예시적인 클라이언트 서버 아키텍처의 블럭도이다.1C is a block diagram of an example client server architecture that may be used in connection with an embodiment of the present invention.

도 2는 본원 발명의 다양한 실시예에 따른, 다양한 SOAP 전송들이 있는 WS-MAN 스택을 도시한 블럭도이다.2 is a block diagram illustrating a WS-MAN stack with various SOAP transports, in accordance with various embodiments of the present invention.

도 3은 본원 발명의 실시예에 따른, ASF 스택으로부터 WS-MAN 스택으로의 이동 경로가 있는 ASF 스택과 공존할 수 있는 WS-MAN 스택을 도시한 블럭도이다. 3 is a block diagram illustrating a WS-MAN stack that can coexist with an ASF stack with a movement path from the ASF stack to the WS-MAN stack in accordance with an embodiment of the present invention.

도 4는 본원 발명의 다양한 실시예에 따른, 웹 서비스 기반 관리를 위한 RMCP 패킷의 발신 메시지 처리를 위한 예시적인 단계들을 도시한 흐름도이다.4 is a flowchart illustrating exemplary steps for processing an outgoing message of an RMCP packet for web service based management, in accordance with various embodiments of the present invention.

도 5는 본원 발명의 다양한 실시예에 따른, 웹 서비스 기반 관리를 위한 RMCP 패킷의 착신 메시지 처리를 위한 예시적인 단계들을 도시한 흐름도이다.5 is a flowchart illustrating exemplary steps for processing an incoming message of an RMCP packet for web service based management according to various embodiments of the present disclosure.

본원 발명의 특정 실시예들은 웹 서비스 기반 관리를 위한 경량 SOAP 전송을 위한 방법 및 시스템에서 발견될 수 있다. 원격 관리 및 제어 프로토콜(remote management and control protocol; RMCP), 및 OOB 관리 장치들에서 웹 서비스들을 사용하는 시스템들의 원격 관리를 가능하게 하는 RMCP 보안 확장 프로토콜(RMCP security extensions protocol; RSP)의 하나 또는 모두 상에서 맵핑되는 SOAP 메시지를 사용하여 시스템을 관리하는 것을 포함할 수 있다.Certain embodiments of the present invention may be found in a method and system for lightweight SOAP transport for web service based management. One or both of the remote management and control protocol (RMCP), and the RMCP security extensions protocol (RSP), which enables remote management of systems using web services in OOB management devices. It may include managing the system using SOAP messages mapped over the web.

도 1a는 본원 발명의 실시예에 따라 RMCP/RSP 맵핑상에 SOAP가 있는 예시적인 아키텍처의 블럭도이다. 도 1a를 참조하면, SOAP 블럭(102), RMCP 블럭(104), RSP 블럭(106), 사용자 데이터그램 프로토콜(user datagram protocol; UDP) 블럭(108), 인터넷 프로토콜(Internet protocol; IP) 블럭(110), 및 매체 접속 제어(medium access control; MAC) 계층 및 물리적(physical; PHY) 계층(MAC/PHY) 블럭(112)이 도시된다.1A is a block diagram of an exemplary architecture with SOAP on RMCP / RSP mapping in accordance with an embodiment of the invention. Referring to FIG. 1A, a SOAP block 102, an RMCP block 104, an RSP block 106, a user datagram protocol (UDP) block 108, an Internet protocol (IP) block ( 110, and a medium access control (MAC) layer and a physical (PHY) layer (MAC / PHY) block 112 are shown.

MAC/PHY 계층 블럭(112)은 2개 또는 그 이상의 엔티티(entity)들 사이에 공유될 수 있는 매체에 접속을 제어하도록 할 수 있는 적절한 논리, 회로, 및/또는 코드를 포함할 수 있다. MAC/PHY 계층 블럭(112)은 각각의 네트워크 인터페이스 제어기(network interface controller; NIC)에 고유한 MAC 주소를 포함할 수 있다. MAC/PHY 계층 블럭(112)은 데이터 패킷을 비트들로 인코딩하고 디코딩하도록 할 수 있다. MAC/PHY 계층 블럭(112)은 전송 프로토콜 지식 및 관리를 제공하도록 할 수 있고, 물리적 계층의 오류, 흐름 제어, 및 프레임 동기화(frame synchronization)를 다룰 수 있다. MAC/PHY 계층 블럭(112)은 네트워크상의 컴퓨터가 데이터에 접속하기 위한 방법, 및 데이터를 전송하기 위한 허가를 얻는 방법을 제어할 수 있다. MAC/PHY 계층 블럭(112)은 예를 들면, 전기적 및 기계적 레벨에서 네트워크를 통해 전기적 임펄스(impulse), 빛, 또는 무선 신호와 같은 비트 스트림을 전송하여 2개의 장치를 연결하는 물리적 매체상에서 정보의 전송을 제공할 수 있다. MAC/PHY 계 층 블럭(112)은 예를 들면 케이블과 같은 운반자(carrier)상에서 데이터를 송신하고 수신하기 위한 하드웨어(hardware)를 제공한다. MAC/PHY 계층(112)은 예를 들면, 네트워크 표준 모델의 최하위 계층에 대응할 수 있다.The MAC / PHY layer block 112 may include suitable logic, circuitry, and / or code that may enable control of a connection to a medium that may be shared between two or more entities. The MAC / PHY layer block 112 may include a MAC address unique to each network interface controller (NIC). The MAC / PHY layer block 112 may enable encoding and decoding the data packet into bits. The MAC / PHY layer block 112 may provide transport protocol knowledge and management and may handle errors in the physical layer, flow control, and frame synchronization. The MAC / PHY layer block 112 may control how a computer on the network accesses the data and how to obtain permission to send the data. The MAC / PHY layer block 112 transmits a bit stream, such as electrical impulse, light, or wireless signals, over a network at electrical and mechanical levels, for example, to provide information on a physical medium that connects two devices. Can provide transmission. MAC / PHY layer block 112 provides hardware for transmitting and receiving data on a carrier such as, for example, a cable. The MAC / PHY layer 112 may correspond to the lowest layer of the network standard model, for example.

이더넷 프레임은 MAC/PHY 계층 블럭(112)에 연관된 이더넷 헤더(134), 이더넷 페이로드(Ethernet payload; 136), 순환 잉여 검사(cyclic redundancy check; CRC)(138) 필드를 포함할 수 있다. 이더넷 헤더 필드(134)는 예를 들면 이더넷 목적지 주소 및 이더넷 소스 주소, 및 프레임 유형을 포함할 수 있다. 이더넷 페이로드(136)는 사용자 정보를 전송하도록 이용될 수 있는 이더넷 패킷의 부분을 포함할 수 있다. CRC 필드(138)는 CRC 데이터 유효 계산과 연관된 데이터를 포함할 수 있다. CRC 필드(138)는 데이터 전송 오류들을 위해 이용될 수 있다.The Ethernet frame may include an Ethernet header 134, an Ethernet payload 136, and a cyclic redundancy check (CRC) field 138 associated with the MAC / PHY layer block 112. Ethernet header field 134 may include, for example, an Ethernet destination address and an Ethernet source address, and a frame type. Ethernet payload 136 may comprise a portion of an Ethernet packet that may be used to transmit user information. CRC field 138 may include data associated with CRC data validity calculation. CRC field 138 may be used for data transmission errors.

IP 블럭(110)은 네트워크 계층에 대응할 수 있다. 네트워크 계층은 네트워크 기능이 상호 접속되는 방법을 규정할 수 있고, 원격 네트워크일지라도 한 컴퓨터에서 다른 컴퓨터로 데이터를 수신하는 것을 가능하게 할 수 있다. IP 데이터그램은 IP 블럭(110)에 연관된 IP 헤더(130) 및 IP 페이로드(132)를 포함할 수 있다. IP 헤더(130)는 버전 및 헤더 길이 필드, 서비스 유형 필드, 총 길이 필드, 식별 필드, 플래그(flag) 필드, TTL(time-to-live) 필드, 프로토콜 필드, 헤더 체크섬(checksum) 필드, 소스 IP 주소 필드, 및 목적지 IP 주소 필드를 포함할 수 있다. IP block 110 may correspond to a network layer. The network layer may define how network functions are interconnected and may enable receiving data from one computer to another, even in a remote network. The IP datagram may include an IP header 130 and an IP payload 132 associated with the IP block 110. IP header 130 includes a version and header length field, a service type field, a total length field, an identification field, a flag field, a time-to-live field, a protocol field, a header checksum field, a source. IP address field, and destination IP address field.

UDP 블럭(108)은 IP 블럭(110)상에 계층화될 수 있다. UDP 블럭(108)은 전송 계층에 대응할 수 있다. 전송 계층은 각각의 애플리케이션으로부터의 데이터를 추 적하고, 데이터를 하위 계층들로 전송하기 위해 데이터의 단일 흐름으로 결합하도록 할 수 있다. 전송 계층은 또한 잠재적으로 대량의 애플리케이션 데이터가 전송을 위해 쪼개지기 위한 수단을 규정할 책임이 있을 수 있다. UDP 블럭(108)은 TCP의 흐름 관리 유형들 및 신뢰도의 일부를 제외하지만, 더 큰 효율로 애플리케이션 처리들 사이에서 데이터를 송신하도록 이용될 수 있다. UDP 데이터그램은 UDP 블럭(108)에 연관된 UDP 헤더(126), 및 UDP 페이로드(128)를 포함할 수 있다. UDP 헤더(126)는 출발지 포트 필드, 목적지 포트 필드, UDP 길이 필드, 및 UDP 체크섬 필드를 포함할 수 있다. UDP block 108 may be layered on IP block 110. UDP block 108 may correspond to a transport layer. The transport layer can keep track of data from each application and combine it into a single flow of data to transfer the data to lower layers. The transport layer may also be responsible for defining the means by which potentially large amounts of application data are split for transmission. UDP block 108 excludes some of the flow management types and reliability of TCP, but can be used to transmit data between application processes with greater efficiency. The UDP datagram can include a UDP header 126 associated with the UDP block 108, and a UDP payload 128. The UDP header 126 may include a source port field, a destination port field, a UDP length field, and a UDP checksum field.

RSP 블럭(106)은 RMCP 메시지들을 위해 보전(integrity) 및 재실행 방지(anti-replay) 서비스를 제공하도록 할 수 있다. RSP 메시지는 RSP 헤더(120), RSP 페이로드(122), 및 RSP 트레일러(trailer)(124)를 포함할 수 있다. RSP가 사용될 때, 전체적인 RMCP 메시지는 RSP 헤더(120) 및 RSP 트레일러(124)에 밀봉될 수 있다. RSP 헤더(120)는 UDP 헤더(126) 및 RMCP 헤더(116) 사이에 삽입될 수 있다. RSP 트레일러(124)는 RMCP 메시지의 데이터 블럭의 끝에 위치될 수 있고, 보안 확장들은 UDP 계층 상에 적용될 수 있다.The RSP block 106 may enable to provide integrity and anti-replay services for RMCP messages. The RSP message may include an RSP header 120, an RSP payload 122, and an RSP trailer 124. When an RSP is used, the overall RMCP message may be sealed in the RSP header 120 and the RSP trailer 124. The RSP header 120 may be inserted between the UDP header 126 and the RMCP header 116. RSP trailer 124 may be located at the end of the data block of the RMCP message, and security extensions may be applied on the UDP layer.

RSP 헤더(120)는 예를 들면 세션 ID(session ID), 및 순차 번호(sequence number)와 같은 2개의 필드를 포함할 수 있다. 세션 ID는 각각의 엔티티에 의해 선택되고, RSP 세션 프로토콜(RSP session protocol; RSSP) 개방 세션 요청/응답 메시지들을 사용하여 교환될 수 있는 임의의 수일 수 있다. 세션 ID들은 특정 메시지를 처리하도록 이용될 수 있는 특정 세션 상태를 식별하도록 이용될 수 있다. 순차 번호들은 메시지들을 위한 재실행 방지 서비스를 제공하도록 슬라이딩(sliding) 수신 윈도우와 함께 이용될 수 있다. 순차 번호는 송신자(sender)에 의해 헤더에 삽입되는 고유한 단조 증가하는 번호일 수 있다. 세션이 생성될 때, 순차 번호는 0으로 초기화될 수 있고, 주어진 메시지에 대해 발신 처리의 시작에서 1로 증가한다. 새로운 세션은 0으로 다시 둘러싸는 순차 번호에 앞서 생성될 수 있다.The RSP header 120 may include two fields, for example, a session ID and a sequence number. The session ID can be any number selected by each entity and exchanged using RSP session protocol (RSP) open session request / response messages. Session IDs may be used to identify a particular session state that may be used to process a particular message. The sequential numbers may be used with a sliding receiving window to provide a redo prevention service for messages. The sequence number may be a unique monotonically increasing number inserted into the header by the sender. When a session is created, the sequence number can be initialized to zero and incremented to one at the beginning of the origination process for a given message. A new session may be created prior to the sequence number again surrounded by zero.

RSP 트레일러(124)는 예를 들면, 패드 필드(pad field), 패드 길이 필드, 다음 헤더 필드, 및 보전 데이터 필드와 같은 4개의 필드를 포함할 수 있다. 패드 필드는 보호되는 RMCP 메시지내의 보전 데이터 필드를 위한 데이터 워드(word) 정렬을 제공할 수 있다. 패드 길이 필드는 메시지에 존재하는 패드 바이트들의 수를 규정할 수 있다. 다음 헤더 필드는 RSP 헤더(120) 및 RSP 트레일러(124) 사이에 밀봉된 메시지의 유형을 나타낼 수 있다. 보전 데이터 필드는 예를 들면 RSP 헤더(120), RMCP 메시지, 및 RSP 트레일러(124)의 특정 필드들 상에서 수행되는 키 방식의 해시 함수(keyed hash function)와 같은 보전 알고리즘의 결과를 유지하도록 이용될 수 있다.The RSP trailer 124 may include four fields, for example, a pad field, a pad length field, a next header field, and a maintenance data field. The pad field may provide data word alignment for the integrity data field in the protected RMCP message. The pad length field may specify the number of pad bytes present in the message. The next header field may indicate the type of message sealed between the RSP header 120 and the RSP trailer 124. The conservation data field may be used to maintain the results of conservation algorithms such as, for example, a keyed hash function performed on certain fields of the RSP header 120, the RMCP message, and the RSP trailer 124. Can be.

RMCP 블럭(104)은 관리되는 클라이언트가 OS-부재 상태일 때 클라이언트 제어 기능을 위해 이용될 수 있다. OS-부재 환경에서, RMCP 메시지들은 관리 콘솔(console)과 관리되는 클라이언트 사이에서 교환될 수 있다. 클라이언트 제어 기능들은 리셋(reset), 전력 상승, 및 전력 강하와 같은 동작들을 포함할 수 있다. 프로토콜들은 OS-존재 구동기(driver)들의 부재에서 정보를 분석하도록 경고-송신 장치들의 펌웨어(firmware)를 활성화할 수 있다.The RMCP block 104 can be used for client control functions when the managed client is in an OS-absent state. In an OS-free environment, RMCP messages can be exchanged between a management console and a managed client. Client control functions may include operations such as reset, power up, and power down. The protocols may activate firmware of alert-sending devices to analyze information in the absence of OS-existent drivers.

RMCP 메시지는 매체들(media)에 독립적일 수 있고, 매체에 의존하는 경우, 연관된 헤더 필드들은 다를 수 있다. RMCP 메시지는 RMCP 헤더(116) 및 RMCP 페이로드(118)를 포함할 수 있다. RMCP 헤더(116)는 버전 필드, 예비(reserved) 필드, 순차 번호 필드, 및 메시지의 클래스 필드를 포함할 수 있다. 버전 필드는 RMCP 헤더의 버전을 식별할 수 있다. 순차 번호 필드는 RMCP 메시지에 연관된 순차 번호를 나타낼 수 있다. 순차 번호들은 UDP상에서 신뢰도를 보장하고, 메시지 정렬(ordering) 및 동일한 메시지들의 인식을 용이하게 하도록 이용될 수 있다. 순차 번호는 매번 고유 메시지가 예를 들면 관리 콘솔 또는 클라이언트 시스템과 같은 동일한 출발지(source)로부터 송신된 때에 증가될 수 있다. 메시지 초기화자(initiator)가 잃어버린 RMCP 응답(acknowledge)으로 인해 메시지를 재시도할 때, 메시지 초기화자는 상기 메시지 초기화자가 RMCP 메시지를 연관된 응답에 일치시키는 것을 허용하는 동일한 순차 번호로 원래의 전송의 정확한 메시지를 송신할 수 있다. The RMCP message may be independent of the media, and, depending on the media, the associated header fields may be different. The RMCP message may include an RMCP header 116 and an RMCP payload 118. The RMCP header 116 may include a version field, a reserved field, a sequential number field, and a class field of a message. The version field may identify a version of the RMCP header. The sequence number field may indicate a sequence number associated with the RMCP message. Sequential numbers can be used to ensure reliability on UDP and to facilitate message ordering and recognition of identical messages. The sequence number may be incremented each time a unique message is sent from the same source, such as, for example, a management console or client system. When a message initiator retries a message due to a missing RMCP response, the message initiator initiates the exact message of the original transmission with the same sequence number that allows the message initiator to match the RMCP message to the associated response. Can be sent.

RMCP 페이로드(118)는 IANA(Internet assigned number authority; IANA) 기업 번호 필드, 메시지 유형 필드, 메시지 태그 필드, 예비 필드, 데이터 길이 필드, 및 데이터 필드를 포함할 수 있다. IANA 기업 번호 필드는 메시지에 대한 메시지 유형 값들 및 데이터 필드 형식을 규정하는 엔티티에 연관된 iana 기업 번호를 나타낼 수 있다. 메시지 유형 필드는 이전의 필드의 값에 연관된 엔티티에 의해 규정될 수 있다. 메시지 태그 필드는 요청-응답 쌍을 일치시키도록 이용될 수 있다. 데이터 길이 필드는 데이터 필드를 나타내는 바이트의 수를 나타낼 수 있다. 데이 터 필드는 특정 회사 번호 및 메시지 유형에 연관된 데이터를 나타낼 수 있다.The RMCP payload 118 may include an Internet assigned number authority (IANA) enterprise number field, message type field, message tag field, spare field, data length field, and data field. The IANA Business Number field may indicate an iana business number associated with the entity that defines the message type values and data field format for the message. The message type field may be defined by an entity associated with the value of the previous field. The message tag field can be used to match the request-response pair. The data length field may indicate the number of bytes representing the data field. The data field may represent data associated with a specific company number and message type.

관리 콘솔로부터 송신된 현재의 핑(ping)은 클라이언트가 현재의 퐁(pong)에 응답하는 것을 요청할 수 있다. 관리 콘솔로부터의 성능(capability) 요청은 클라이언트가 성능 응답으로 응답하는 것을 요청할 수 있다. 관리 콘솔로부터의 시스템 상태 요청은 클라이언트가 시스템 상태 응답으로 응답하는 것을 요청할 수 있다. RMCP 페이로드(118)의 메시지 태그 필드는 응답을 연관된 요청에 결합하기 위한 방법을 제공할 수 있다. 예를 들면, 관리 콘솔은 관리되는 클라이언트에게 12h로 설정된 메시지 태그 필드 세트가 있는 현재의 핑을 송신할 수 있다. 클라이언트의 경고-송신 장치는 메시지를 송신하기 전에 연관된 현재의 퐁 응답내로 수신된 메시지로부터 메시지 태그 필드 값을 복사할 수 있다. 관리 콘솔이 현재의 퐁을 수신할 때, 관리 콘솔은 메시지를 메시지 태그 필드들을 일치시키는 것에 의해 연관된 현재의 핑에 메시지를 맵핑(map)할 수 있다.The current ping sent from the management console may request that the client respond to the current pong. A capability request from the management console may request that the client respond with a performance response. The system status request from the management console may request that the client respond with a system status response. The message tag field of the RMCP payload 118 may provide a method for combining the response with the associated request. For example, the management console can send a managed client a current ping with a set of message tag fields set to 12h. The alert-sending device at the client may copy the message tag field value from the received message in the associated current Pong response prior to sending the message. When the management console receives the current pong, the management console may map the message to the associated current ping by matching the message tag fields.

도 1b는 본원 발명의 실시예에 따른 네트워크 인터페이스 하드웨어가 있는 호스트를 도시한 블럭도이다. 도 1b를 참조하면, 서버, 클라이언트, 또는 예를 들면 호스트(152) 및 네트워크 인터페이스 하드웨어(network interface hardware; NIHW) 장치(154)를 포함할 수 있는 유사 네트워크 기계와 같은 네트워킹 시스템(150)이 도시된다. 호스트(152)는 중앙 처리 유닛(CPU; 156), 메모리(158), 및 칩셋(160)을 포함할 수 있다. CPU(156), 메모리(158), 및 칩셋(160)은 예를 들면 버스(162)를 통해 통신적으로 결합될 수 있다.1B is a block diagram illustrating a host with network interface hardware in accordance with an embodiment of the invention. 1B, a networking system 150 is shown, such as a server, client, or similar network machine that may include, for example, a host 152 and network interface hardware (NIHW) device 154. do. The host 152 may include a central processing unit (CPU) 156, a memory 158, and a chipset 160. CPU 156, memory 158, and chipset 160 may be communicatively coupled, for example, via bus 162.

네트워킹 시스템(150)은 다양한 네트워킹 프로토콜들의 동작 또는 제공을 가 능하게 할 수 있다. 예를 들면, 네트워킹 시스템(150)은 TCP/IP 접속의 제공을 가능하게 할 수 있다. 이것과 관련하여, 네트워킹 시스템(150)은 예를 들면, 인터넷 제어 메시지 프로토콜(Internet control message protocol; ICMP), SOAP, RMCP, RSP, UDP, IP, 주소 결정 프로토콜(address resolution protocol; ARP), 스트림 제어 전송 프로토콜(stream control transmission protocol; SCTP), 및/또는 경로 최대 전송 유닛(path maximum transmission unit; PMTU) 발견 프로토콜의 제공을 가능하게 할 수 있다. ICMP 프로토콜은 예를 들면 라우터(router)들이 IP 네트워크의 패킷 처리에 관한 오류 및/또는 제어 메시지들을 송신하는 것을 허용할 수 있다. ARP 프로토콜은 IP 주소들을 대응하는 이더넷 주소들로 맵핑할 수 있는 TCP/IP 쌍내의 하위-레벨 프로토콜을 언급할 수 있다. SCTP는 예를 들면 IP 네트워크와 같은 비접속(connectionless) 패킷 네트워크상에서 메시지들을 신호하는 PSTN(public switched telephone network)의 전송을 제공할 수 있다. PMTU는 주어진 물리적 네트워크 매체에 송신될 수 있는 데이터의 최대 유닛을 언급할 수 있다. 다른 실시예에서, SCTP는 TCP보다 전송 프로토콜로서 사용될 수 있다.Networking system 150 may enable operation or provision of various networking protocols. For example, networking system 150 may enable provision of a TCP / IP connection. In this regard, the networking system 150 may be, for example, Internet control message protocol (ICMP), SOAP, RMCP, RSP, UDP, IP, address resolution protocol (ARP), streams. It may enable the provision of a stream control transmission protocol (SCTP), and / or a path maximum transmission unit (PMTU) discovery protocol. The ICMP protocol may, for example, allow routers to send error and / or control messages regarding packet processing in an IP network. The ARP protocol may refer to a low-level protocol within a TCP / IP pair that can map IP addresses to corresponding Ethernet addresses. SCTP may provide for the transmission of public switched telephone networks (PSTNs) for signaling messages on a connectionless packet network, for example an IP network. The PMTU may refer to the maximum unit of data that can be transmitted on a given physical network medium. In other embodiments, SCTP may be used as the transport protocol rather than TCP.

호스트(152)는 네트워크 접속을 위해 파라미터들을 설정하는 것을 가능하게 할 수 있다. 예를 들면, 호스트(152)는 시간 스탬핑(stamping), 윈도우 스케일링(scaling), 지연 응답(acknowledgement) 정책, 사용되는 흐름 제어 방식, 혼잡 조치(handling), 선택적 응답(selective acknowledgement; SACK), 사용되는 버퍼들, 및/또는 그 밖의 전송 관련 파라미터들을 포함할 수 있다. 호스트(152)는 또한 예를 들면, IPv4 또는 IPv6를 지원하는 정보를 포함하는 네트워크 계층 파라미터 들, 및 비 절편(no fragments) 및 또는 홉(hop) 제한과 같은 선택들을 설정할 수 있다. 호스트(152)는 또한 예를 들면 가상 국부 영역 네트워크(virtual local area network; VLAN) 및 사용되는 출발지 주소를 제공하는 정보를 포함하는 데이터 링크 계층 파라미터들을 설정할 수 있다.The host 152 may enable setting parameters for network connection. For example, host 152 may use time stamping, window scaling, delayed acknowledgment policies, flow control schemes used, handling, selective acknowledgment (SACK), and use. Buffers, and / or other transmission related parameters. The host 152 may also set network layer parameters including information supporting IPv4 or IPv6, for example, and choices such as no fragments and / or hop restriction. The host 152 may also set data link layer parameters including information providing, for example, a virtual local area network (VLAN) and a source address used.

CPU(156)는 네트워크상에서 원격 사용자들 또는 클라이언트들에 연관된 네트워킹(networking) 동작들의 성능 및/또는 관리의 제공을 가능하게 할 수 있는 적절한 논리, 회로, 및/또는 코드를 포함할 수 있다.. CPU(156)는 또한 네트워크상에서 원격 클라이언트들에게 제공될 수 있는 서비스 애플리케이션들의 성능 및/또는 관리를 제공하도록 할 수 있다.CPU 156 may include suitable logic, circuitry, and / or code that may enable the provision of performance and / or management of networking operations associated with remote users or clients on a network. The CPU 156 may also be configured to provide performance and / or management of service applications that may be provided to remote clients on the network.

메모리(158)는 CPU(156)에 의해 제공되는 서비스 애플리케이션들 및/또는 네트워킹 동작들에 관한 정보의 저장을 가능하게 할 수 있는 적절한 논리, 회로, 및/또는 코드를 포함할 수 있다. 칩셋(160)은 예를 들면 메모리 관리, PCI 마스터(master) 및 중재기(arbitrator), 그래픽 인터페이스, USB를 위한 I/O 마스터, 오디오, 및/또는 병렬 장치들을 지원하도록 할 수 있는 적절한 논리, 회로, 및/또는 코드를 포함할 수 있다. 이러한 점에서, 칩셋(160)은 CPU(156) 동작들의 제공의 서비스를 공급하는 적어도 하나의 집적 회로(IC)를 포함할 수 있다. 일부 경우에서, 칩셋(160)에 의해 제공되는 서비스들은 별개의 IC들로 구현될 수 있다. 칩셋(160)을 구현하기 위한 하나 또는 그 이상의 IC들의 선택은 제공되는 서비스들의 수 및/또는 유형에 기초할 수 있다. NIHW 장치(154)는 호스트(152)와 통신하는 것을 가능하게 할 수 있는 적절한 논리, 회로, 및/또는 코드를 포함할 수 있다. 이런 한 점에서, NIHW 장치(154)는 CPU(156), 메모리(158), 및/또는 칩셋(160)과 통신을 가능하게 할 수 있다.Memory 158 may include suitable logic, circuitry, and / or code that may enable storage of information regarding service applications and / or networking operations provided by CPU 156. Chipset 160 may include, for example, suitable logic to enable memory management, PCI master and arbitrator, graphical interface, I / O master for USB, audio, and / or parallel devices, Circuitry, and / or code. In this regard, chipset 160 may include at least one integrated circuit (IC) that provides a service of provision of CPU 156 operations. In some cases, services provided by chipset 160 may be implemented in separate ICs. The selection of one or more ICs for implementing chipset 160 may be based on the number and / or type of services provided. The NIHW device 154 may include suitable logic, circuitry, and / or code that may enable communication with the host 152. In this regard, NIHW device 154 may enable communication with CPU 156, memory 158, and / or chipset 160.

도 1c는 본원 발명의 실시예와 관련하여 이용될 수 있는 예시적인 클라이언트 서버 아키텍처의 블럭도이다. 도 1c를 참조하면, 호스트(171), 및 복수의 클라이언트들(173, 175, 177, 179)을 포함하는 시스템(170)이 도시된다. 호스트(171)는 OOB 관리 장치들 또는 클라이언트들, 예를 들면 클라이언트(173), 클라이언트(175), 클라이언트(177), 및 클라이언트(179)에서 웹 서비스들을 사용하는 시스템들의 원격 관리를 가능하게 하기 위해, 원격 관리 및 제어 프로토콜(remote management and control protocol; RMCP), 및 RMCP 보안 확장 프로토콜(RSP) 중 하나 또는 모두 상에서 맵핑되는 SOAP 메시지를 사용하여 시스템(170)을 관리하는 것을 가능하게 할 수 있는 적절한 논리, 회로, 및/또는 코드를 포함할 수 있다.1C is a block diagram of an example client server architecture that may be used in connection with an embodiment of the present invention. Referring to FIG. 1C, a system 170 is shown that includes a host 171 and a plurality of clients 173, 175, 177, 179. The host 171 enables remote management of OOB management devices or clients, for example, systems using web services at client 173, client 175, client 177, and client 179. To this end, it may be possible to manage the system 170 using SOAP messages mapped over one or both of remote management and control protocol (RMCP), and RMCP Security Extension Protocol (RSP). Appropriate logic, circuitry, and / or code.

시스템(170)은 복수의 클라이언트들(173, 175, 177, 179)을 관리하기 위해 RMCP를 이용할 수 있는 관리 콘솔을 포함할 수 있다. 관리 콘솔은 임의의 정지(shutdown) 동작이 정상적인 방식에서 운용될 수 있도록 하기 위해, OS-존재 방법을 기본 방법으로서 이용하여, 관리되는 클라이언트를 전력-강하 또는 리셋할 수 있다. 관리되는 클라이언트가 OS-존재 방법들에 응답하는 것이 실패한다면 관리 콘솔은 RMCP를 사용할 수 있다.System 170 may include a management console that may use RMCP to manage a plurality of clients 173, 175, 177, 179. The management console can power down or reset the managed client using the OS-existing method as the primary method, in order to allow any shutdown operation to operate in the normal manner. The management console may use RMCP if the managed client fails to respond to OS-existing methods.

도 2는 본원 발명의 다양한 실시예에 따라 다양한 SOAP 전송들이 있는 웹 서비스 관리(Web services management; WS-MAN) 스택을 도시한 블럭도이다. 도 2를 참조하면, 다양한 SOAP 전송들이 있는 WS-MAN 스택(200)이 도시된다. WS-MAN 스 택(200)은 MAC/PHY 계층 블럭(240), IP 블럭(238), UDP 블럭(234), 전송 제어 프로토콜(transmission control protocol; TCP) 블럭(236), RMCP/RSP 블럭(222), HTTP(hyper text transfer protocol; HTTP) 블럭(220), 보안 HTTP(secure HTTP; HTTPS) 블럭(216), 전송 계층 보안 프로토콜(transport layer security protocol; TLS) 블럭(218), SOAP 블럭(212), 기술(description) 블럭(210), 보안 프로파일(profile) 블럭(208), 데이터 전송 블럭(206), WS-MAN 블럭(204), 및 원격 관리 애플리케이션 블럭(202)을 포함할 수 있다.2 is a block diagram illustrating a Web services management (WS-MAN) stack with various SOAP transports in accordance with various embodiments of the present invention. 2, a WS-MAN stack 200 with various SOAP transports is shown. WS-MAN stack 200 includes MAC / PHY layer block 240, IP block 238, UDP block 234, transmission control protocol (TCP) block 236, RMCP / RSP block ( 222, a hyper text transfer protocol (HTTP) block 220, a secure HTTP (HTTPS) block 216, a transport layer security protocol (TLS) block 218, a SOAP block ( 212, description block 210, security profile block 208, data transfer block 206, WS-MAN block 204, and remote management application block 202. .

MAC/PHY 계층 블럭(240)은 2개 또는 그 이상의 엔티티들 사이에서 공유될 수 있는 매체로의 접속을 제어 가능하도록 할 수 있는 적절한 논리, 회로, 및/또는 코드를 포함할 수 있다. MAC/PHY 계층 블럭(240)은 각각의 네트워크 인터페이스 제어기(network interface controller; NIC)에 고유할 수 있는 MAC 주소를 포함할 수 있다. MAC/PHY 계층 블럭(240)은 전송 프로토콜 지식을 제공하도록 할 수 있고, 물리적 계층, 흐름 제어, 및 프레임 동기화의 오류들을 제어할 수 있다. MAC/PHY 계층 블럭(240)은 예를 들면 케이블들과 같은 운반자(carrier)상에서 데이터를 송신하고 수신하기 위한 하드웨어를 제공한다. MAC/PHY 계층 블럭(240)은 물리적 계층에 대응할 수 있다. IP 블럭(238)은 네트워크 계층에 대응할 수 있다. 네트워크 계층은 네트워크 기능들이 접속되는 방법을 규정할 수 있고, 한 컴퓨터로부터 심지어 원격 네트워크상일 수 있는 경우의 다른 컴퓨터로 데이터를 수신하는 것을 가능하게 할 수 있다.The MAC / PHY layer block 240 may include suitable logic, circuitry, and / or code that may enable control of a connection to a medium that may be shared between two or more entities. The MAC / PHY layer block 240 may include a MAC address that may be unique to each network interface controller (NIC). MAC / PHY layer block 240 may provide transport protocol knowledge and may control errors in physical layer, flow control, and frame synchronization. MAC / PHY layer block 240 provides hardware for transmitting and receiving data on a carrier such as, for example, cables. The MAC / PHY layer block 240 may correspond to a physical layer. IP block 238 may correspond to a network layer. The network layer may define how network functions are connected and may enable receiving data from one computer to another computer, even if it may be on a remote network.

UDP 블럭(234) 및 TCP 블럭(236)은 IP 블럭(238)상에서 계층화될 수 있다. UDP 블럭(234) 및 TCP 블럭(236)은 전송 계층에 대응할 수 있다. 전송 계층은 각각의 애플리케이션으로부터 데이터를 추적하는 것을 가능하게 할 수 있고, 하위 계층들로 데이터를 전송하기 위해 데이터의 단일 흐름으로 데이터를 결합할 수 있다. 전송 계층은 또한 잠재적으로 대량의 애플리케이션 데이터가 전송을 위해 쪼개지기 위한 수단을 규정할 책임이 있을 수 있다. UDP 블럭(108)은 TCP 블럭(236)의 흐름 관리 유형들 및 신뢰도의 일부를 제외하지만, 더 큰 효율로 애플리케이션 처리들 사이에서 데이터를 송신하도록 이용될 수 있다.UDP block 234 and TCP block 236 may be layered on IP block 238. UDP block 234 and TCP block 236 may correspond to the transport layer. The transport layer can enable tracking of data from each application and can combine the data into a single flow of data to send the data to the lower layers. The transport layer may also be responsible for defining the means by which potentially large amounts of application data are split for transmission. UDP block 108 excludes some of the flow management types and reliability of TCP block 236, but can be used to transmit data between application processes with greater efficiency.

RMCP/RSP 블럭(222)은 RMCP 메시지들을 위해 보전(integrity) 및 재실행 방지(anti-replay) 서비스를 제공 가능하게 할 수 있다. RSP가 사용될 때, 전체의 RMCP 메시지는 RSP 헤더 및 RSP 트레일러(trailer)내에 밀봉될 수 있다. RMCP/RSP 블럭(222)은, 관리되는 클라이언트가 OS-부재 상태일 때 클라이언트 제어 기능들을 위해 이용될 수 있다. OS-부재 환경에서, RMCP 메시지들은 관리 콘솔과 관리되는 클라이언트 사이에서 교환될 수 있다. 클라이언트 제어 기능들은 리셋, 전력-상승, 및 전력-강하와 같은 동작들을 포함할 수 있다. 프로토콜들은 경보-송신 장치들의 펌웨어가 OS-존재 구동기들의 부재에서 정보를 분석하는 것을 가능하게 할 수 있다. The RMCP / RSP block 222 may enable providing integrity and anti-replay services for RMCP messages. When an RSP is used, the entire RMCP message can be sealed in the RSP header and the RSP trailer. RMCP / RSP block 222 may be used for client control functions when the managed client is in an OS-absent state. In an OS-free environment, RMCP messages can be exchanged between the management console and the managed client. Client control functions may include operations such as reset, power-up, and power-drop. The protocols may enable the firmware of the alert-transmitting devices to analyze the information in the absence of OS-existent drivers.

HTTP 블럭(220)은 클라이언트와 서버 사이에서 하이퍼텍스트 문서들과 그 밖의 파일들의 전송을 가능하게 하여 웹을 구현 가능하게 할 수 있을 것이다. HTTPS 블럭(216)은 HTTP 접속들의 프라이버시(privacy)를 보장하기 위해 보안 소켓 계층(secure sockets layer; SSL) 또는 전송 계층 보안(transport layer security; TLS) 알고리즘을 사용하도록 할 수 있다. TLS 프로토콜 블럭(218)은 예를 들면, 웹 브라우징(web browsing), 이메일, 인터넷 팩스, 및 다른 데이터 전송들과 같은 다양한 애플리케이션들을 위해 인터넷상에서 안전한 통신들을 제공하도록 할 수 있다. WS-MAN 스택(200)의 다양한 SOAP 전송들은 UDP 블럭(234), TCP 블럭(236), RMCP/RSP 블럭(222), HTTP 블럭(220), 및 HTTPS 블럭(216) 및 TLS 블럭(218)을 포함할 수 있다.HTTP block 220 may enable the transfer of hypertext documents and other files between the client and server to enable the web. The HTTPS block 216 can enable the use of secure sockets layer (SSL) or transport layer security (TLS) algorithms to ensure the privacy of HTTP connections. TLS protocol block 218 may allow for providing secure communications on the Internet for various applications, such as, for example, web browsing, email, Internet fax, and other data transmissions. The various SOAP transports in the WS-MAN stack 200 are UDP block 234, TCP block 236, RMCP / RSP block 222, HTTP block 220, and HTTPS block 216 and TLS block 218. It may include.

SOAP 블럭(212)은 예를 들면 HTTP를 사용하여 컴퓨터 네트워크상에서 XML 기반 메시지들과 같은 마크업(markup) 언어 메시지들을 교환하도록 할 수 있다. SOAP 블럭(212)은 더 많은 추상적 계층이 생성될 수 있는 기초적 메시징(messaging) 하부 구조(framework)를 제공하는 것에 의해 WS-MAN 스택(200)의 기반 계층을 형성할 수 있다. SOAP 블럭(212)은 예를 들면 클라이언트와 같은 한 네트워크 노드가 예를 들면 서버와 같은 다른 노드로 요청 메시지를 송신할 수 있고, 서버가 클라이언트로 응답 메시지를 송신할 수 있는 원격 프로시저 호출(remote procedure call; RPC)을 구현하도록 할 수 있다. SOAP 블럭(212)은 분산되고 분배되는 환경에서 구조화된 정보의 교환을 위해 의도된 경량(light-weight) 프로토콜일 수 있다. SOAP block 212 may allow for the exchange of markup language messages, such as XML-based messages, on a computer network using, for example, HTTP. SOAP block 212 can form the foundation layer of WS-MAN stack 200 by providing a basic messaging framework in which more abstract layers can be created. The SOAP block 212 may be a remote procedure call where, for example, one network node, such as a client, may send a request message to another node, such as a server, and the server may send a response message to the client. procedure call (RPC). SOAP block 212 may be a light-weight protocol intended for the exchange of structured information in a distributed and distributed environment.

SOAP 결합(binding) 세부 사항은 결합에 의해 제공되는 형태들을 선언할 수 있다. SOAP 결합 세부 사항은 기본적인 프로토콜의 서비스들이 SOAP 메시지 정보 세트(infoset)들을 전송하기 위해 사용되는 방법을 나타내고, 기본적인 프로토콜의 서비스들이 결합에 의해 제공되는 형태들에 의해 형성된 계약(contract)을 이행하도록 사용되는 방법을 나타낼 수 있다. SOAP 결합 세부 사항은 결합에 참여될 수 있는 잠재적 실패(failure)들을 다루는 방법을 나타낼 수 있고, 특정된 결합의 순응성 구현(conformant implementation)을 구축하기 위한 요구 사항들을 규정할 수 있다.SOAP binding details can declare the types provided by the binding. SOAP binding details indicate how the services of the underlying protocol are used to transmit SOAP message information sets, and the services of the underlying protocol are used to fulfill the contract formed by the forms provided by the association. How it can be done. SOAP binding details may indicate how to deal with potential failures that may participate in the binding, and may specify requirements for building a conformant implementation of the specified binding.

본원 발명의 실시예에 따라, 하나 또는 그 이상의 매개체들을 통해 SOAP 메시지의 생성, 전송, 및 처리는 분산 상태 기계(distributed state machine)에 관하여 특정될 수 있다. 상태는 송신을 위해 수집되거나 처리를 위해 수신되는 메시지들의 콘텐츠를 제한하지 않고 포함하는 주어진 시점에서 SOAP 노드에 알려진 정보를 포함할 수 있다. 각각의 노드에서 상태는 국부적 처리, 또는 인접한 노드로부터 수신된 정보 중 어느 하나에 의해 업데이트될 수 있다. 결합 세부 사항의 목적은 결합에 특정될 수 있는 부가적인 처리가 있는 중심적인 SOAP 규칙을 증가시키는 것과, 기본적인 프로토콜이 메시지 경로의 인접한 노드들 사이에서 정보를 전송하도록 사용될 수 있는 방식으로 구체화하는 것일 수 있다.In accordance with an embodiment of the present invention, the generation, transmission, and processing of a SOAP message via one or more intermediaries may be specified in terms of a distributed state machine. The state may include information known to the SOAP node at a given point in time, including without restricting the content of the messages collected for transmission or received for processing. The status at each node may be updated by either local processing or information received from adjacent nodes. The purpose of the join details may be to increase the central SOAP rules with additional processing that may be specific to the join, and to specify in such a way that the underlying protocol can be used to transfer information between adjacent nodes in the message path. have.

메시지 경로를 통해 주어진 SOAP 메시지의 전송을 관리하는 분산 상태 기계는 각각의 노드들의 쌍을 연결하는 결합 세부 사항들과 관련된 각각의 노드에서 중심적인 SOAP 처리의 조합일 수 있다. 메시지 전송의 결합의 최소 의무는 SOAP 메시지 정보 세트가 수신 SOAP 노드에서 결합하는 것에 의하여 전송되고 재구성될 수 있는 수단을 구체화하는 것과 엔벨로프(envelope)의 전송이 기본적인 프로토콜의 설비들을 사용하여 영향받을 수 있는 방식을 구체화하는 것일 수 있다. The distributed state machine that manages the transmission of a given SOAP message through the message path may be a combination of SOAP processing central to each node associated with the binding details connecting each pair of nodes. The minimum obligation of combining message transmissions is to specify the means by which a set of SOAP message information can be transmitted and reconstructed by combining at the receiving SOAP node and that the transmission of envelopes can be affected using the facilities of the underlying protocol. It may be to embody the manner.

기술(description) 블럭(210)은 사용자들 사이에서 통신하기 위한 프로그래밍 모델, 전송, 또는 프로토콜을 허용할 수 있다. 기술(description) 블럭(210)은 WS-MAN 스택(200)에 의해 수신되고 생성되는 메시지들을 표현할 수 있고, WS-MAN 스택(200)에 의해 생성되는 애플리케이션 레벨 오류 메시지들을 나타낼 수 있다. 보안 프로파일 블럭(208)은 전송 동안 스누핑(snooping), 도청(interception), 재실행, 및 정정과 같은 공격들에 대응하여 관리 동작들 및 응답들을 보호하도록 복수의 보안 프로파일들을 포함할 수 있다. 전송 계층은 메시지 보전, 보호, 인증, 및/또는 보안에 대해 책임이 있을 수 있다. 보안 프로파일들은 기술적(descriptive) 및 메타데이터(metadata) 목적들을 위해 이용될 수 있고, SOAP 트래픽(traffic)에서 보이지 않을 수 있다.Description block 210 may allow a programming model, transmission, or protocol for communicating between users. The description block 210 may represent messages received and generated by the WS-MAN stack 200 and may indicate application level error messages generated by the WS-MAN stack 200. Security profile block 208 may include a plurality of security profiles to protect management operations and responses against attacks such as snooping, interception, replay, and correction during transmission. The transport layer may be responsible for message integrity, protection, authentication, and / or security. Security profiles may be used for descriptive and metadata purposes and may not be visible in SOAP traffic.

데이터 전송 블럭(206)은 예를 들면, 값들을 얻고, 설정하고, 계산하는 복수의 리소스 접근 동작들을 포함할 수 있다. 예를 들면, WS-전송 세부 사항은 단일 리소스 접근을 위한 기초로서 이용될 수 있다. WS-계산 메시지들은 다중-경우의 검색을 위해 이용될 수 있다. WS-이벤팅(eventing) 메시지들은 클라이언트가 이벤트 메시지들을 동의하고 수신하는 것을 허용하는 것에 의해 이벤트들을 보내고 알리도록 이용될 수 있다.The data transfer block 206 may include a plurality of resource access operations, for example, to obtain, set, and calculate values. For example, WS-transmission details can be used as the basis for a single resource access. WS-calculated messages can be used for multi-case retrieval. WS-eventing messages can be used to send and notify events by allowing the client to accept and receive event messages.

WS-관리 블럭(204)은 PC들, 서버들, 장치들, 웹 서비스들, 및 그 밖의 관리 가능한 엔티티들과 같은 시스템들을 관리하기 위한 일반적인 SOAP 기반 프로토콜을 포함할 수 있다. WS-관리 블럭(204)은 웹 서비스들이 하드웨어 및 소프트웨어 모두의 관리 서비스들에서 구현될 수 있기 위해 웹 서비스 프로토콜들을 제한하도록 복수의 요구 사항들에 부합하도록 설계될 수 있다. WS-관리 블럭(204)은 그 밖의 웹 서비스 세부 사항들과의 호환성을 보장할 수 있다. WS-관리 블럭(204)은 시스템들 이 훌륭하거나(out of the box), 전력 소모가 적거나, 또는 그밖에 이용할 수 없는지에 관계없이 IT 관리자들이 원격으로 네트워크들상에서 장치들에 접속하는 것을 가능하게 할 수 있다. 원격 관리 애플리케이션 블럭(202)은 PC 데스크톱 시스템들 및/또는 서버들과 같은 시스템들과 대역외(out of band) 원격 관리 능력을 가능하게 할 수 있다.The WS-Management Block 204 may include a generic SOAP based protocol for managing systems such as PCs, servers, devices, web services, and other manageable entities. WS-management block 204 can be designed to meet a plurality of requirements to limit web service protocols so that web services can be implemented in management services of both hardware and software. The WS-Management Block 204 can ensure compatibility with other web service details. WS-management block 204 allows IT administrators to remotely access devices on networks, whether the systems are out of the box, low power consumption, or otherwise unavailable. can do. The remote management application block 202 may enable out of band remote management capability with systems such as PC desktop systems and / or servers.

본원 발명의 예시적인 실시예에 따라, RMCP상의 SOAP는 RMCP/RSP 전송상의 SOAP 메시지들의 맵핑을 포함할 수 있다. RMCP/RSP는 UDP상의 계층화된 메시지 기초 프로토콜이다. RMCP/RSP는 클라이언트 및 서버 시스템에서 OOB 관리 솔루션(solution)에 기초하여 ASF 및 IPMI(Intelligent Platform Management Interface)에서의 전송으로서 사용될 수 있다. RMCP는 순차화(sequencing), 메시지 레벨 응답(acknowledgements), 및 제한된 재전송(limited retansmissions)에 관하여 UDP상에서 신뢰도를 제공할 수 있다. RSP는 메시지 보전 및 데이터 기초 인증의 형태로 UDP상에서 충분한 보안을 제공할 수 있다. 본원 발명의 실시예에 따라, 부가적인 암호(encryption) 서비스들은 SOAP 메시지들의 부분들을 암호화하거나, RMCP+를 사용하는 암호 제공을 부가하는 것에 의하여 제공될 수 있다.According to an exemplary embodiment of the present invention, SOAP on RMCP may comprise a mapping of SOAP messages on RMCP / RSP transport. RMCP / RSP is a layered message based protocol over UDP. RMCP / RSP can be used as a transport in ASF and Intelligent Platform Management Interface (IPMI) based on OOB management solutions in client and server systems. RMCP may provide reliability over UDP with respect to sequencing, message level acknowledgments, and limited retansmissions. The RSP may provide sufficient security over UDP in the form of message integrity and data based authentication. According to an embodiment of the present invention, additional encryption services may be provided by encrypting portions of SOAP messages or by adding a cryptographic provision using RMCP +.

도 3은 본원 발명의 실시예에 따라, ASF 스택으로부터 WS-MAN 스택으로 이동 경로가 있는 ASF 스택과 공존할 수 있는 WS-MAN 스택을 도시한 블럭도이다. 도 3을 참조하면, 다양한 SOAP 전송들이 있는 WS-MAN이 도시된다. WS-MAN 스택(300)은 MAC/PHY 계층 블럭(340), IP 블럭(338), UDP 블럭(334), TCP 블럭(336), PET(Platform Event Trap) 블럭(322), SNMP(Simple Network Management Protocol) 블럭(324), RSSP 블럭(326), 및 RAKP(RSSP Authentication and Key Generation Protocol) 블럭(328)을 포함할 수 있다. WS-MAN 스택(300)은 또한 RSP 블럭(330), RMCP 블럭(332), HTTP 블럭(320), HTTPS 블럭(316), TLS 블럭(318), ASF 블럭(314), SOAP 블럭(312), 기술(description) 블럭(310), 보안 프로파일 블럭(308), 데이터 전송 블럭(306), WS-관리(WS-management) 블럭(304), 및 원격 관리 애플리케이션 블럭(302)을 포함할 수 있다. 도 3의 다양한 프로토콜들 및 SOAP 전송들은 실질적으로 도 2에 도시된 바와 같을 것이다.3 is a block diagram illustrating a WS-MAN stack that can coexist with an ASF stack with a movement path from an ASF stack to a WS-MAN stack, in accordance with an embodiment of the invention. Referring to FIG. 3, a WS-MAN with various SOAP transports is shown. The WS-MAN stack 300 includes a MAC / PHY layer block 340, an IP block 338, a UDP block 334, a TCP block 336, a platform event trap (PET) block 322, and a simple network (SNMP). Management protocol (block) 324, RSSP block 326, and RSPP (RSSP Authentication and Key Generation Protocol) block 328. WS-MAN stack 300 also includes RSP block 330, RMCP block 332, HTTP block 320, HTTPS block 316, TLS block 318, ASF block 314, SOAP block 312. , Description block 310, security profile block 308, data transfer block 306, WS-management block 304, and remote management application block 302. . The various protocols and SOAP transports of FIG. 3 will be substantially as shown in FIG. 2.

RSP 블럭(330)은 RMCP 메시지들을 위해 보전 및 재실행 방지 서비스들을 제공하는 것을 가능하게 할 수 있다. RSP가 사용될 때, 전체적인 RMCP 메시지는 RSP 헤더 및 RSP 트레일러에 밀봉될 수 있다. RMCP 블럭(332)은 관리되는 클라이언트가 OS-부재 상태에 있을 때 클라이언트 제어 기능들을 위해 이용될 수 있다. OS-부재 환경에서, RMCP 메시지들은 관리 콘솔과 관리되는 클라이언트 사이에서 교환될 수 있다. 클라이언트 제어 기능들은 리셋, 전력 상승, 전력 강하와 같은 동작들을 포함할 수 있다. 프로토콜들은 경고 송신 장치들의 펌웨어가 OS-존재 구동기들의 부존재에서 정보를 분석하는 것을 가능하게 할 수 있다.The RSP block 330 may enable providing preservation and redo prevention services for RMCP messages. When an RSP is used, the entire RMCP message can be sealed in the RSP header and the RSP trailer. The RMCP block 332 can be used for client control functions when the managed client is in an OS-absent state. In an OS-free environment, RMCP messages can be exchanged between the management console and the managed client. Client control functions may include operations such as reset, power up, power down. The protocols may enable the firmware of alert sending devices to parse the information in the absence of OS-existent drivers.

발신 메시지 처리를 위한 동작에서, RMCP 요청 초기화자(initiator)가 메시지를 생성할 때, 이것의 RMCP 프로토콜 엔진은 RMCP 보안 확장 기능이 활성화되었는지 판단하기 위해 장치 보안 정책에 접속할 수 있다. 상기 기능이 활성화된 경우라면, RMCP 블럭(332)은 적절한 RSP 세션이 메시지에 대해 존재하는지 판단할 수 있다. 만일 적절한 세션이 존재하지 않는다면, RMCP 블럭(332)은 세션을 생성하기 위해 RSSP 블럭(326)을 사용할 수 있다. 만일 세션이 존재하지만, 메시지 전송 시기에 존재하지 않는다면, RMCP 블럭(332)은 RMCP 메시지가 송신되기 전 시기인 세션이 도착할 때까지 기다릴 것이다. 만일 세션이 존재하고 이 세션이 메시지 전송 시기에 존재한다면, RMCP 블럭(332)은 추가적 처리를 위해 다음 하위 계층으로 세션 ID, RMCP 메시지, 및 RMCP 메시지 길이를 전달할 것이다.In operation for outgoing message processing, when the RMCP request initiator generates a message, its RMCP protocol engine may access a device security policy to determine if the RMCP security extension has been activated. If the function is activated, the RMCP block 332 can determine if an appropriate RSP session exists for the message. If no suitable session exists, the RMCP block 332 can use the RSSP block 326 to create a session. If the session exists but does not exist at the time of message transmission, the RMCP block 332 will wait until the session arrives, which is when the RMCP message is sent. If the session exists and this session exists at the time of message transmission, the RMCP block 332 will forward the session ID, RMCP message, and RMCP message length to the next lower layer for further processing.

송신 장치의 RSP 프로토콜 엔진이 RMCP 블럭(332)으로부터 메시지를 수신할 때, RSP 블럭(330)은 메시지의 시작부에 RSP 헤더를 삽입할 수 있고, 세션 ID 값을 헤더의 세션 ID 필드로 복사할 수 있다. RSP 블럭(330)은 세션 ID를 세션 상태에 사용할 수 있고, 세션의 순차 번호를 증가시킬 수 있고, 이 후에 이 값을 RSP 헤더의 상기 순차 번호 필드로 삽입할 수 있다. RSP 블럭(330)은 메시지의 데이터 블럭의 끝에 RSP 트레일러를 생성하게 할 수 있다. RSP 블럭(330)은 데이터 워드 영역상에서 보호되는 메시지의 보전 데이터 필드를 정렬하기 위해 요구되는 패딩(padding)의 양을 계산할 수 있다. RSP 블럭(330)은 메시지의 데이터 블럭의 끝에 위치하기 위해 RMCP 블럭(332)으로부터 전달된 RMCP 메시지 길이를 사용할 수 있고, RSP 트레일러들의 패드(pad) 길이 및 다음 헤더 필드들을 위해 패드 바이트들 및 값들의 수정된 번호를 삽입할 수 있다. When the sending device's RSP protocol engine receives a message from the RMCP block 332, the RSP block 330 can insert an RSP header at the beginning of the message and copy the session ID value into the session ID field of the header. Can be. The RSP block 330 may use the session ID for the session state, increment the sequence number of the session, and then insert this value into the sequence number field of the RSP header. The RSP block 330 may cause the RSP trailer to be created at the end of the data block of the message. The RSP block 330 may calculate the amount of padding required to align the integrity data fields of the protected message on the data word area. The RSP block 330 can use the RMCP message length passed from the RMCP block 332 to locate at the end of the data block of the message, and the pad bytes and value for the pad length of the RSP trailers and the next header fields. You can insert a modified number of them.

RSP 블럭(330)은 세션 상태에 접속하기 위해 세션 ID를 사용할 수 있고, 메시지와 함께 이용되는 특정 보전 알고리즘을 판단할 수 있고, 밀봉된 메시지상에서 보전 데이터를 계산할 수 있다. 계산된 값은 보호된 RMCP 메시지를 생성하기 위해 RSP 트레일러의 보전 데이터 필드로 삽입될 수 있다. RSP 블럭(330)은 RSP 헤더 및 RSP 트레일러의 부가(addition)를 책임지기 위해 부가의 원인이 되는 메시지 길이를 업데이트하도록 할 수 있고, 추가적인 처리를 위해 예를 들면 UDP 블럭(334)과 같은 다음 하위 계층 프로토콜로 UDP 출발지 및 목적지 포트 값들, 보호된 RMCP 메시지 길이, 및 보호된 RMCP 메시지를 전달할 수 있다.The RSP block 330 can use the session ID to access the session state, determine the particular conservation algorithm used with the message, and calculate the conservation data on the sealed message. The calculated value can be inserted into the conservation data field of the RSP trailer to generate a protected RMCP message. The RSP block 330 can cause the length of the message that causes the addition to be updated to be responsible for the addition of the RSP header and the RSP trailer, and the next subordinate, for example the UDP block 334, for further processing. The layer protocol can convey UDP source and destination port values, protected RMCP message length, and protected RMCP message.

UDP 블럭(334)이 RSP 블럭(330)으로부터 메시지를 수신할 때, 송신 장치의 UDP 프로토콜 엔진은 헤더를 보호된 RMCP 메시지의 시작부에 삽입할 수 있다. UDP 블럭(334)은 RSP 블럭(330)으로부터 전달된 포트 값들을 UDP 헤더의 출발지 포트 및 목적지 포트 필드들로 복사하도록 할 수 있다. UDP 블럭(334)은 UDP 패킷 길이 및 체크섬을 계산하고 이 값들을 UDP 길이 및 체크섬 필드들에 삽입하도록 할 수 있다. 결과적인 UDP 패킷은 추가적인 처리를 하고 최종적으로 목적지로 전송하기 위해 예를 들면, IP 블럭(338), 및 MAC/PHY 계층 블럭(340)과 같은 다른 하위 계층 프로토콜들로 전달될 수 있다. When the UDP block 334 receives the message from the RSP block 330, the UDP protocol engine of the transmitting device may insert the header at the beginning of the protected RMCP message. The UDP block 334 can cause the port values delivered from the RSP block 330 to be copied into the source port and destination port fields of the UDP header. The UDP block 334 can calculate the UDP packet length and checksum and insert these values into the UDP length and checksum fields. The resulting UDP packet may be forwarded to other lower layer protocols such as, for example, IP block 338, and MAC / PHY layer block 340 for further processing and finally forwarding to the destination.

착신 메시지 처리를 위한 동작에서, 보호된 RMCP 메시지를 포함하는 프레임이 목적지에 도착하면, 예를 들면 수신 장치의 MAC/PHY 계층 블럭(340) 및 IP 블럭(338)과 같은 하위 계층 프로토콜들은 추가적인 처리를 위해 예를 들면 UDP 블럭(334)과 같은 다음 상위 계층 프로토콜로 결과적인 패킷을 전달할 수 있다. 수신 장치의 UDP 블럭(334)은 UDP 헤더의 체크섬 필드를 검증하도록 할 수 있다. 체크섬 필드가 비유효한(invalid) 경우, UDP 블럭(334)은 패킷을 폐기할 수 있다. 체크섬 필드가 유효하면, UDP 블럭(334)은 목적지 포트 필드의 값에 의해 특정된 상위 계층 프로토콜을 제공하는지 검증할 수 있다. 상위 계층 프로토콜이 제공되지 않는다 면, UDP 블럭(334)은 패킷을 폐기할 수 있다. 상위 계층 프로토콜이 제공된다면, UDP 블럭(334)은 자신의 헤더를 제거하고, 보호된 RMCP 메시지 길이를 업데이트하고, 보호된 RMCP 메시지 및 그 길이를 추가적 처리를 위해 예를 들면 RSP 블럭(330)과 같은 다음 상위 계층 프로토콜로 전달할 수 있다.In operation for incoming message processing, when a frame containing a protected RMCP message arrives at the destination, lower layer protocols such as MAC / PHY layer block 340 and IP block 338 of the receiving device are further processed. For example, the resulting packet may be forwarded to the next higher layer protocol such as, for example, UDP block 334. The UDP block 334 of the receiving device can verify the checksum field of the UDP header. If the checksum field is invalid, the UDP block 334 may discard the packet. If the checksum field is valid, the UDP block 334 can verify that it provides a higher layer protocol specified by the value of the destination port field. If no higher layer protocol is provided, the UDP block 334 may discard the packet. If a higher layer protocol is provided, the UDP block 334 removes its header, updates the protected RMCP message length, and processes the protected RMCP message and its length with, for example, the RSP block 330 for further processing. It can be passed to the same next higher layer protocol.

RSP 블럭(330)이 UDP 블럭(334)으로부터 보호된 RMCP 메시지를 수신할 때, RSP 블럭(330)은 RMCP 보안 확장 기능이 활성화되었는지 판단하기 위해 장치 보안 정책에 접속할 수 있다. 상기 기능이 비활성된 경우, RSP 블럭(330)은 메시지를 폐기할 수 있다. 기능이 활성화된 경우, RSP 블럭(330)은 이 메시지에 대한 세션 상태를 발견하도록 RSP 헤더의 세션 ID 값을 사용할 수 있다. 이 메시지에 대해 세션 상태가 발견되지 않을 경우, RSP 블럭(330)은 이 메시지를 폐기할 수 있다. 세션이 존재하지만 보호된 RMCP 메시지를 받아들이도록 허용하지 않는 시기라면, RSP 블럭(330)은 메시지를 폐기할 수 있다. 세션이 존재하고 보호된 RMCP 메시지를 받아들이도록 허용하는 시기라면, RSP 블럭(330)은 RSP 트레일러의 보전 데이터 필드를 발견하고 검증하기 위해 UDP 블럭(334)으로부터 전달된 보호된 RMCP 메시지 길이 및 세션 상태에 특정된 보전 알고리즘을 사용할 수 있다. 보전 데이터 필드가 비유효한 경우, RSP 블럭(330)은 이 메시지를 폐기할 수 있다. 보전 데이터 필드가 유효한 경우, RSP 블럭(330)은 RSP 헤더의 순차 번호 필드를 사용하고, 이 메시지가 새롭고 전에 수신된 메시지 및 슬라이딩 수신 윈도우(sliding receive window)에 관한 메시지의 위치가 복제되지 않았는지 판단하기 위해 세션 상태의 슬라이딩 수신 윈도우 정보를 사용할 수 있다.When the RSP block 330 receives a protected RMCP message from the UDP block 334, the RSP block 330 may access a device security policy to determine if the RMCP security extension has been activated. If the function is disabled, the RSP block 330 may discard the message. If the function is activated, the RSP block 330 can use the session ID value of the RSP header to detect the session state for this message. If no session state is found for this message, the RSP block 330 may discard this message. If the session exists but does not allow to accept protected RMCP messages, the RSP block 330 may discard the message. If it is time for the session to exist and allow to accept a protected RMCP message, then the RSP block 330 detects the protected data field of the RSP trailer and validates the protected RMCP message length and session state passed from the UDP block 334. The conservation algorithm specified in. If the integrity data field is invalid, the RSP block 330 may discard this message. If the preservation data field is valid, the RSP block 330 uses the sequential number field of the RSP header and checks if this message is new and has not replicated the position of the message relative to the previously received message and the sliding receive window. The sliding reception window information of the session state may be used to determine.

수신된 메시지는 새롭게 될 수 있고, 슬라이딩 수신 윈도우의 내부 또는 슬라이딩 수신 윈도우의 우측에 있을 수 있다. 수신된 메시지가 새롭지 않으면, RSP 블럭(330)은 이 메시지를 폐기할 수 있다. 만일 상기 수신된 메시지가 슬라이딩 수신 윈도우의 우측에 있다면, 슬라이딩 수신 윈도우는 상기 메시지를 처리하기 위해 우측으로 진행될 수 있다. 본원 발명의 실시예에 따라, 메시지는 부적절하게 수신되어, 적절히 처리될 수 있다. 만일 순차 번호 처리가 성공적으로 완수되면, RSP 블럭(330)은 다음 헤더 필드에 상기 순차 번호 값을 저장하고, 메시지의 끝에서 제거될 수 있는 패드 바이트들의 수를 계산하도록 패드 길이 필드의 값을 사용할 수 있다. RSP 블럭(330)은 RSP 헤더 및 RSP 트레일러를 제거하고, RMCP 메시지의 길이 값을 업데이트할 수 있다. RSP 블럭(330)은 부가적인 처리를 위해 예를 들면 RMCP 블럭(332)과 같은 다음 상위 계층 프로토콜로 RMCP 메시지 및 이에 대응하는 길이를 전달할 수 있다.The received message may be new and may be inside the sliding receive window or to the right of the sliding receive window. If the received message is not new, the RSP block 330 may discard this message. If the received message is on the right side of the sliding receive window, the sliding receive window may proceed to the right to process the message. In accordance with an embodiment of the present invention, the message may be inappropriately received and properly processed. If sequential number processing is successfully completed, RSP block 330 stores the sequential number value in the next header field and uses the value of the pad length field to calculate the number of pad bytes that can be removed at the end of the message. Can be. The RSP block 330 may remove the RSP header and the RSP trailer and update the length value of the RMCP message. The RSP block 330 may forward the RMCP message and its corresponding length to the next higher layer protocol such as, for example, the RMCP block 332 for further processing.

RSSP 블럭(326)은 관리 콘솔과 이에 대응하는 클라이언트들 사이의 연관(association)을 설정하도록 할 수 있다. 상기 연관은 예를 들면 키 재료(keying material), 및 순차 번호들에 사용되는 특정한 알고리즘들과 같은 관계(relationship)를 규정하는 상태 정보의 추적을 유지할 수 있다. 연관은 연관을 설정하고 해제하기 위해 송신될 수 있는 메시지들의 세트가 있는 세션 프로토콜을 통해 설정될 수 있다. RSSP 블럭(326)은 예를 들면, 검색(discovery), 생성, 메시지 전송, 및 메시지 파괴와 같은 4가지 시기로 세션을 나누도록 할 수 있다. 세션은 예를 들면 운용자 세션들 및 관리자(administrator) 세션들과 같이 세션을 생성 하기 위해 사용되는 관리 콘솔 사용자 역할에 기초하여 하나 또는 그 이상의 유형으로 더 나누어질 수 있다. 본원 발명의 실시예에 따라, 관리되는 클라이언트는 적어도 각각의 유형의 2개의 세션들을 동시에 제공할 수 있다. The RSSP block 326 may be configured to establish an association between the management console and the corresponding clients. The association may keep track of state information that defines a relationship, such as, for example, a keying material, and the particular algorithms used for the sequence numbers. An association may be established via a session protocol with a set of messages that may be sent to establish and release an association. The RSSP block 326 may allow the session to be divided into four periods, for example, discovery, generation, message transmission, and message destruction. The session may be further divided into one or more types based on the administrative console user role used to create the session, such as, for example, operator sessions and administrator sessions. In accordance with an embodiment of the present invention, a managed client may simultaneously provide at least two types of two sessions.

검색 시기동안, 관리 콘솔 및 관리되는 클라이언트는 특정한 관리되는 클라이언트가 RMCP 보안 확장을 제공하는지 판단하기 위해 RMCP 현재의 핑/퐁(ping/pong) 메시지들을 사용할 수 있다. 만일 관리되는 클라이언트가 RMCP 보안 확장을 제공하고, 관리 콘솔이 상기 관리되는 클라이언트와 연관을 설정하려고 시도한다면, 관리 콘솔은 상기 관리되는 클라이언트를 위한 세션 프로토콜의 생성 시기로 전환할 수 있다. 생성 시기동안, 관리 콘솔 및 관리되는 클라이언트는 세션 ID들을 교환하기 위해 RSSP 개방 세션 요청/응답 메시지들을 사용할 수 있고, 세션을 위한 RSP 보전 알고리즘, 및 RSSP 인증 및 키 생성 프로토콜(RSSP authentication and key generation protocol; RAKP)을 결정할 수 있다. 관리 콘솔은 선택된 인증 및 키 생성 프로토콜을 초기화할 수 있고, RSP 보전 알고리즘을 위해 요구되는 필요한 키 재료(keying material)를 생성할 수 있다. RSSP가 성공적이면, 관리 콘솔과 관리되는 클라이언트 사이의 연관은 형성될 수 있고, 세션 프로토콜의 메시지 전송 시기로 전환할 수 있다. RSSP가 손실 메시지로 인해 성공적이지 않으면, 양쪽의 엔티티들은 자신들의 프로토콜 상태를 재-초기화할 수 있다. 만일 관리 콘솔이 손실 메시지를 탐지한다면, 시작부에서 프로토콜을 재시작할 수 있다.During the retrieval time, the management console and managed client can use the RMCP current ping / pong messages to determine if a particular managed client provides RMCP security extensions. If a managed client provides an RMCP security extension and a management console attempts to establish an association with the managed client, the management console may switch to the creation of a session protocol for the managed client. During generation, the management console and managed client can use RSSP open session request / response messages to exchange session IDs, the RSP integrity algorithm for the session, and the RSSP authentication and key generation protocol. RAKP) can be determined. The management console can initialize the selected authentication and key generation protocol and generate the required keying material required for the RSP conservation algorithm. If the RSSP is successful, an association between the management console and the managed client may be established and may transition to the message transmission time of the session protocol. If the RSSP is not successful due to missing messages, both entities can re-initialize their protocol state. If the management console detects a missing message, you can restart the protocol at the beginning.

메시지 전송 시기 동안, 관리 콘솔 및 관리되는 클라이언트는 클라이언트를 관리하기 위해 필요한 원하는 메시지를 교환할 수 있다. 각각의 이들 메시지들은 생성 시기동안 결정된 RSP 보전 알고리즘에 의해 제공되는 보전 보호가 있는 RSP 헤더 및 RSP 트레일러내에 밀봉될 수 있다. 만일 관리 콘솔이 세션을 폐쇄하려고 시도한다면, 파괴 시기로 전환할 수 있다. 파괴 시기 동안, 관리 콘솔 및 관리되는 클라이언트는 RSSP 폐쇄 세션 요청/응답 메시지들을 교환할 수 있고, 세션을 종료할 수 있다. 생성 시기의 끝에서 세션의 설정에 앞서 RMCP 보안 확장 UDP 포트로 전송되는 복수의 메시지들은 바이패스(bypass) 세션 ID를 사용할 수 있는 RSP 헤더내에 밀봉될 수 있다.During the message transmission period, the management console and the managed client can exchange the desired messages needed to manage the client. Each of these messages may be sealed in an RSP header and RSP trailer with integrity protection provided by the RSP conservation algorithm determined during generation. If the management console attempts to close the session, it can switch to the destruction time. During the disruption period, the management console and the managed client may exchange RSSP closed session request / response messages and terminate the session. At the end of the creation time a plurality of messages sent to the RMCP Secure Extended UDP port may be sealed in an RSP header that may use a bypass session ID prior to the establishment of the session.

RAKP 블럭(328)은 관리 콘솔을 주어진 관리되는 클라이언트와 상호 인증하고, RMCP 메시지들에 대한 보호를 제공하기 위해 복수의 보전 알고리즘들로 사용될 수 있는 쌍방식(pair-wise) 고유 대칭 키 재료를 생성하기 위해, 사전-공유된(pre-shared) 키들 및 HMAC(keyed-hashed message authentication code; HMAC) 기반 보전 알고리즘들을 이용할 수 있다. PET 블럭(322)은 경고들을 송신하기 위해 SNMP 트랩(trap) 프로토콜 데이터 유닛들(protocol data units; PDUs)을 이용하도록 할 수 있다. SNMP 블럭(324)은 제공되는 관리 정보 베이스(information base)를 사용하여 관리 에이전트(agent)에게 질문하도록 네트워크 관리 애플리케이션들에 의해 이용될 수 있다. SNMP 블럭(324)은 SNMP 트랩 PDU들을 송신하도록 할 수 있다.RAKP block 328 mutually authenticates the management console with a given managed client and generates a pair-wise unique symmetric key material that can be used with multiple conservation algorithms to provide protection for RMCP messages. To do this, pre-shared keys and keyed-hashed message authentication code (HMAC) based preservation algorithms can be used. PET block 322 may enable the use of SNMP trap protocol data units (PDUs) to send alerts. The SNMP block 324 can be used by network management applications to query the management agent using the provided management information base. The SNMP block 324 may enable sending SNMP trap PDUs.

PET 블럭(322)은 관리되는 클라이언트로부터 관리 콘솔로 경고들을 송신하도록 할 수 있다. SNMP 블럭(324)은 제공되는 관리 정보 베이스를 사용하여 관리 에이전트에게 질문하기 위해 네트워크 관리 애플리케이션에 의해 이용될 수 있다.The PET block 322 can send alerts from the managed client to the management console. The SNMP block 324 can be used by the network management application to query the management agent using the provided management information base.

관리 콘솔은 클라이언트 시스템들을 관리하기 위해 RMCP를 이용할 수 있다. 관리 콘솔은 임의의 정지(shutdown) 동작이 정상적인 방식으로 운용될 수 있도록 하기 위해 관리되는 클라이언트의 전력을 강하하거나 리셋하기 위한 기본 방법으로서 OS-존재 방법들을 이용할 수 있다. 만일 관리되는 클라이언트가 OS-존재 방법들에 응답하는 것에 실패한다면, 관리 콘솔들은 RMCP를 적용할 수 있다.The management console can use RMCP to manage client systems. The management console may use OS-existent methods as the primary way to power down or reset the managed client so that any shutdown operation can be operated in the normal manner. If the managed client fails to respond to OS-existing methods, the management consoles can apply RMCP.

경고 표준 형식(alert standard format; ASF) 블럭(314)은 RMCP 메시지들을 위한 인증 및 보전 서비스들을 제공하는 보안 확장의 세트를 포함할 수 있다. RMCP-인지(aware) 관리 콘솔은 예를 들면 임의의 차후 메시지들을 발행(issuing)하는 것에 의해 관리되는 클라이언트의 RMCP 성능들을 판단할 수 있다. 관리 콘솔은 관리되는 클라리언트로 유도되는 RMCP 현재 핑 메시지를 발행할 수 있다. RMCP-인지 클라이언트는 RMCP 헤더(116)의 RMCP 버전이 클라이언트에 의해 제공되는 버전인 한, RMCP 메시지의 수신(receipt)을 응답할 수 있다. 클라이언트는 RMCP 현재 퐁(pong) 메시지로 응답할 수 있고, 제공되는 엔티티들의 필드가 자신의 ASF 버전을 나타내도록 설정할 수 있다. 관리 콘솔은 관리되는 클라이언트로 RMCP 성능 요청 메시지를 발행하도록 할 수 있다. 클라이언트는 RMCP 헤더(116)의 RMCP 버전이 클라이언트에 의해 제공되는 버전인 한, RMCP 메시지의 수신을 응답할 수 있다. 클라이언트는 경고 송신 장치의 비휘발성 스토리지내로 사전에 구성된 시스템 성능들로 되돌려 주는 것에 의해 RMCP 성능 응답 메시지로 응답할 수 있다.Alert standard format (ASF) block 314 may include a set of security extensions that provide authentication and preservation services for RMCP messages. The RMCP-aware management console can determine the RMCP capabilities of the managed client, for example by issuing any subsequent messages. The management console may issue an RMCP current ping message directed to the managed client. The RMCP-aware client may respond to receipt of an RMCP message as long as the RMCP version of the RMCP header 116 is the version provided by the client. The client may respond with an RMCP current pong message and may set the field of entities provided to indicate its ASF version. The management console can cause the managed client to issue RMCP capability request messages. The client may respond to receipt of the RMCP message as long as the RMCP version of the RMCP header 116 is the version provided by the client. The client may respond with an RMCP Performance Response message by returning to preconfigured system capabilities into non-volatile storage of the alert sending device.

웹 서비스들은 SOAP 블럭(312) 또는 XML 기반 메시징(messaging), 및 HTTP 블럭(320) 또는 HTTPS(320)를 통신을 위한 SOAP 전송으로서 이용할 수 있다. HTTP/HTTPS상에서 SOAP의 사용은 HTTP/TLS/TCP 스택 구현을 요구할 수 있다. HTTP/TLS/TCP 스택 구현은 내장된 장치들에 대해 복잡할 수 있고, 큰 HTTP(S)/TLS/TCP 코드 풋프린트(footprint)들은 제한된 메모리 리소스들을 가진 장치들에 대해 비용적으로 효율적이지 않을 수 있다. 게다가, 전송 프로토콜 처리를 위해 요구되는 처리 전력은 용납될 수 없는 응답 시간, 또는 전력 소비를 이끌 수 있다. 따라서, SOAP를 위한 경량(light-weight) 전송은 OOB 관리 환경에서 이용될 수 있다.Web services may use SOAP block 312 or XML-based messaging, and HTTP block 320 or HTTPS 320 as the SOAP transport for communication. The use of SOAP over HTTP / HTTPS may require implementation of the HTTP / TLS / TCP stack. HTTP / TLS / TCP stack implementations can be complex for embedded devices, and large HTTP (S) / TLS / TCP code footprints may not be cost effective for devices with limited memory resources. Can be. In addition, the processing power required for transport protocol processing can lead to unacceptable response time, or power consumption. Thus, light-weight transport for SOAP can be used in an OOB management environment.

ASF 세부 사항들은 OOB 관리 환경의 컴퓨터 시스템들의 원격 관리를 위해 규정된다. RMCP 블럭(332), 및 RSP 블럭(330)은 ASF 세부 사항들에 의해 규정된 프로토콜들의 한 쌍의 부분이다. 본원 발명의 실시예에 따라, 웹 서비스 인터페이스는 시스템들의 원격 관리를 위해 제공될 수 있다.ASF details are specified for remote management of computer systems in an OOB managed environment. RMCP block 332 and RSP block 330 are part of a pair of protocols defined by ASF details. In accordance with an embodiment of the present invention, a web service interface may be provided for remote management of systems.

본원 발명의 실시예에 따라, RMCP/RSP상에서 SOAP의 사용은 다수의 이익을 가질 수 있다. 예를 들면, RMCP/RSP 블럭(222)은 HTTP 블럭(220), HTTPS 블럭(216), TLS 블럭(218), 및 TCP 블럭(236)의 조합보다 덜 복잡할 수 있다. RMCP/RSP 블럭(222)은 메시징 의미론(semantic), 신뢰도 제공, 인증 제공, 및 멀티캐스트(multicast)를 위한 제공이 있는 경량 전송일 수 있다. RMCP/RSP 블럭(222)은 전력, 메모리, 및 처리 제한 관점에서 OOB 관리 환경에 더 적합할 수 있다. RMCP/RSP 상에서 SOAP의 사용은 존재하는 ASF/IPMI 구조에 영향을 줄 수 있고, OOB 관리 환경을 위한 WS-MAN 관리 솔루션들을 가능하게 할 수 있다. RMCP/RSP상에서 SOAP의 사용은 ASF로부터 WS-MAN 기반 관리 솔루션들로 더 나은 이동 경로를 제공할 수 있다.According to an embodiment of the present invention, the use of SOAP over RMCP / RSP can have a number of benefits. For example, RMCP / RSP block 222 may be less complex than a combination of HTTP block 220, HTTPS block 216, TLS block 218, and TCP block 236. The RMCP / RSP block 222 may be a lightweight transmission with messaging semantics, reliability provision, authentication provision, and provision for multicast. The RMCP / RSP block 222 may be more suitable for an OOB management environment in terms of power, memory, and processing limitations. The use of SOAP over RMCP / RSP can affect the existing ASF / IPMI architecture and enable WS-MAN management solutions for the OOB management environment. The use of SOAP over RMCP / RSP can provide a better migration path from ASF to WS-MAN based management solutions.

RMCP/RSP상에서 SOAP의 사용은 예를 들면, 경량 SOAP 전송으로 언급될 수 있다. 경량 SOAP 전송은 더 작은 코드 풋프린트에 적합할 수 있고, 구현하기에 더 쉬울 수 있다. 경량 SOAP 전송은 HTTP 블럭(220) 또는 HTTPS 블럭(216)과 비교하여 더 적은 수의 처리 주기들이 필요할 수 있다. 경량 SOAP 전송은 OOB 동작에 대해 보안과 신뢰도를 제공할 수 있다. 경량 SOAP 전송은 SOAP 메시지들의 멀티캐스팅, 단방향 메시지 교환 방식(message-exchange-pattern; MEP), 및 요청-응답 MEP을 제공하도록 할 수 있다.The use of SOAP on RMCP / RSP can be referred to as a lightweight SOAP transport, for example. Lightweight SOAP transport may be suitable for smaller code footprints and may be easier to implement. Lightweight SOAP transport may require fewer processing cycles compared to HTTP block 220 or HTTPS block 216. Lightweight SOAP transport can provide security and reliability for OOB operations. Lightweight SOAP transport can provide multicasting, message-exchange-pattern (MEP), and request-response MEP of SOAP messages.

RMCP 메시지는 미디어(media)에 독립적일 수 있고, 매체에 의존하는 경우, 연관된 헤더 필드들이 다를 수 있다. RMCP 메시지는 RMCP 헤더(116), 및 RMCP 페이로드(118)를 포함할 수 있다. RMCP 헤더(116)는 버전 필드, 예비 필드, 순차 번호 필드, 및 메시지 클래스 필드를 포함할 수 있다. 웹 서비스들로 불리는 새로운 메시지 클래스는 RMCP 맵핑상에서 SOAP를 위해 이용될 수 있다. 버전 필드는 RMCP 헤더의 버전을 식별할 수 있다. 순차 번호 필드는 RMCP 메시지와 연관된 순차 번호를 식별할 수 있다. 순차 번호들은 UDP상에서 신뢰도를 보장하고, 메시지 정렬(ordering) 및 동일한 메시지들의 인식을 쉽게 하기 위해 이용될 수 있다. 순차 번호는 고유 메시지가 예를 들면 관리 콘솔, 또는 클라이언트 시스템과 같은 동일한 출발지로부터 송신되는 매번 증가될 수 있다. 메시지 초기화자가 RMCP 응답 손실로 인해 메시지를 재시도할 때, 메시지 초기화자는 메시지 초기화자가 RMCP 메시지를 연관된 응답과 일치시키도록 허용하는 동일한 순차 번호를 가진 원래의 전송의 정확한 메시지를 송신할 수 있다.The RMCP message may be media independent and, if dependent on the media, the associated header fields may be different. The RMCP message may include an RMCP header 116, and an RMCP payload 118. The RMCP header 116 may include a version field, a spare field, a sequence number field, and a message class field. A new message class called Web Services can be used for SOAP over RMCP mapping. The version field may identify a version of the RMCP header. The sequence number field may identify a sequence number associated with the RMCP message. Sequential numbers can be used to ensure reliability on UDP and to facilitate message ordering and recognition of identical messages. The sequence number may be incremented each time a unique message is sent from the same source, such as, for example, a management console or client system. When a message initiator attempts to retry a message due to a loss of an RMCP response, the message initiator may send the exact message of the original transmission with the same sequence number that allows the message initiator to match the RMCP message with the associated response.

RMCP 페이로드(118)는 IANA(Internet assigned numbers authority) 기업 번호 필드, 메시지 유형 필드, 메시지 태그 필드, 예비 필드, 데이터 길이 필드, 및 데이터 필드를 포함할 수 있다. IANA 기업 번호 필드는 메시지에 대한 메시지 유형 값들 및 데이터 필드 형식을 규정하는 엔티티에 연관된 IANA 기업 번호를 나타낼 수 있다. 새로운 IANA 기업 번호는 RMCP상의 SOAP에 대해 할당될 수 있다. 메시지 유형 필드는 이전의 필드의 값에 연관된 엔티티에 의해 규정될 수 있다. 예를 들면, RMCP상의 SOAP에 대해, 메시지 유형 필드의 값은 유니캐스트(unicast) 단방향 SOAP 메시지를 위해 O과 동일할 수 있다. 메시지 유형 필드의 값은 멀티캐스트 단방향 SOAP 메시지를 위해 1과 동일할 수 있다. 메시지 유형 필드의 값은 유니캐스트 SOAP 요청을 위해 2와 동일할 수 있다. 메시지 유형 필드의 값은 유니캐스트 응답을 위해 3과 동일할 수 있다. 메시지 유형 필드의 값은 멀티캐스트 SOAP 요청을 위해 4와 동일할 수 있다.The RMCP payload 118 may include an Internet assigned numbers authority (IANA) enterprise number field, message type field, message tag field, spare field, data length field, and data field. The IANA enterprise number field may indicate an IANA enterprise number associated with the entity that defines the message type values and data field format for the message. A new IANA enterprise number can be assigned for SOAP over RMCP. The message type field may be defined by an entity associated with the value of the previous field. For example, for SOAP over RMCP, the value of the message type field may be equal to O for a unicast unidirectional SOAP message. The value of the message type field may be equal to 1 for a multicast unidirectional SOAP message. The value of the message type field may be equal to 2 for a unicast SOAP request. The value of the message type field may be equal to 3 for a unicast response. The value of the message type field may be equal to 4 for a multicast SOAP request.

메시지 태그 필드는 요청-응답 쌍들을 일치시키기 위해 이용될 수 있다. 데이터 길이 필드는 데이터 필드를 표현하는 바이트들의 수를 나타낼 수 있다. 데이터 필드는 특정 기업 번호 및 메시지 유형에 연관된 데이터를 나타낼 수 있다. RMCP상의 SOAP를 위한 데이터 길이 필드는 SOAP 메시지가 예를 들면 65535 바이트 길이까지 될 수 있기 위해, 예비 필드를 사용하여 예를 들면 2 바이트까지 확장될 수 있다. ASF 세부 사항에서 규정된 바와 같은 순차화(sequencing), 메시지 응답들(message acknowledgements), 및 재전송 방식들은 UDP상에서 더 나은 신뢰도를 제공하기 위해 임의의 변경없이 사용될 수 있다.The message tag field can be used to match request-response pairs. The data length field may indicate the number of bytes representing the data field. The data field may represent data associated with a particular business number and message type. The data length field for SOAP on RMCP can be extended to, for example, 2 bytes using a spare field, so that the SOAP message can be up to 65535 bytes in length. Sequencing, message acknowledgments, and retransmission schemes as defined in the ASF details may be used without any change to provide better reliability over UDP.

경량 전송을 위한 URI(uniform resource identifier) 방식은 다음의 문법에 따라 규정될 수 있다.Uniform resource identifier (URI) scheme for lightweight transmission may be defined according to the following syntax.

soap.rmcp://<host>[:<port>][/<rel_path>][?<query>]soap.rmcp: // <host> [: <port>] [/ <rel_path>] [? <query>]

URI 방식에 대한 의미론(semantics)들은 OOB 관리 서비스들에 대해 예를 들면 RMCP에 대한 0x026F, 또는 RMCP/RSP에 대한 0x0298과 같은 복수의 기본 포트 번호들을 포함할 수 있다. 포트가 특정되면, 대응하는 포트 번호가 사용될 수 있다. 포트 번호가 특정되지 않으면, 기본 포트 번호가 사용될 수 있다. 호스트는 IP 주소로 결정될 수 있다. IP 주소, 및 포트 번호는 메시지를 보내기 위해 사용될 수 있다.Semantics for the URI scheme may include a plurality of base port numbers, such as 0x026F for RMCP or 0x0298 for RMCP / RSP for OOB management services. If a port is specified, the corresponding port number can be used. If no port number is specified, a default port number may be used. The host can be determined by an IP address. The IP address, and port number can be used to send the message.

도 4는 본원 발명의 다양한 실시예에 따라 웹 서비스 기반 관리를 위한 RMCP 패킷의 발신 메시지 처리를 위한 예시적인 단계들을 도시한 흐름도이다. 도 4를 참조하면, 예시적인 단계들이 단계(402)에서 시작할 수 있다. 단계(404)에서, RMCP 요청 초기화자는 SOAP 메시지를 수신할 수 있다. 단계(405)에서, RMCP 헤더는 SOAP 메시지로 삽입될 수 있다. 단계(406)에서, RMCP 프로토콜 엔진은 RMCP 보안 확장 기능이 활성화되었는지 판단하기 위해 장치 보안 정책에 접속할 수 있다. 만일 RMCP 보안 확장 기능이 활성화되지 않았다면, 제어는 단계(407)로 이동한다. 단계(407)에서, 보안이 요구되는지 판단될 수 있다. 보안이 요구된다면, 제어는 단계(408)로 이동한다. 단계(408)에서, 메시지는 폐기될 수 있다. 만일 보안이 요구되지 않는다면, 제어는 단계(409)로 이동할 수 있다. 단계(409)에서, RSP 블럭(330)은 RSP 헤더, 및 RSP 트레일러의 부가를 책임지기 위해 메시지 길이를 업데 이트하도록 할 수 있고, UDP 출발지 및 목적지 포트 값들, RMCP 메시지 길이, 및 RMCP 메시지를 추가적인 처리를 위해 예를 들면 UDP 블럭(334)과 같은 다음 하위 계층 프로토콜로 전달할 수 있다. 단계(411)에서, UDP 블럭(334)은 RSP 블럭(330)으로부터 메시지를 수신할 수 있고, 송신 장치의 UDP 프로토콜 엔진은 RMCP 메시지의 시작부에 헤더를 삽입할 수 있다. 이 후에 제어는 단계(430)로 이동한다.4 is a flowchart illustrating exemplary steps for processing an outgoing message of an RMCP packet for web service based management in accordance with various embodiments of the present invention. Referring to FIG. 4, example steps may begin at step 402. In step 404, the RMCP request initiator can receive a SOAP message. In step 405, the RMCP header may be inserted into the SOAP message. In step 406, the RMCP protocol engine may access the device security policy to determine if the RMCP security extension has been activated. If the RMCP security extension has not been activated, control passes to step 407. In step 407, it may be determined whether security is required. If security is required, control passes to step 408. At step 408, the message may be discarded. If no security is required, control may move to step 409. In step 409, the RSP block 330 can cause the message length to be updated to account for the addition of the RSP header, and the RSP trailer, adding UDP source and destination port values, RMCP message length, and RMCP message. For processing, it may pass to the next lower layer protocol, such as, for example, UDP block 334. In step 411, the UDP block 334 can receive the message from the RSP block 330, and the UDP protocol engine of the transmitting device can insert the header at the beginning of the RMCP message. Control then passes to step 430.

만일 RMCP 보안 확장 기능이 활성화된다면, 제어는 단계(410)로 이동할 수 있다. 단계(410)에서, 적절한 RSP 세션이 SOAP 메시지에 대해 존재하는지 판단될 수 있다. 만일 적절한 RSP 세션이 SOAP 메시지에 대해 존재하지 않는다면, 제어는 단계(418)로 이동한다. 단계(418)에서, RSSP 블럭(326)은 세션을 생성하도록 할 수 있다. 이 후에, 제어는 단계(416)로 이동할 수 있다. 만일 적절한 RSP 세션이 SOAP 메시지에 대해 존재한다면, 제어는 단계(412)로 이동한다. 단계(412)에서, 메시지의 RSP 세션이 전환 시기인지 판단될 수 있다. 만일 RSP 세션이 메시지 전환 시기에 있지 않다면, 제어는 단계(414)로 이동한다. 단계(414)에서, 시스템은 세션이 RMCP 메시지가 송신되고 단계(412)로 제어를 복귀시키기 전 시기에 도달할 때까지 특정 기간 동안 기다릴 수 있다. 만일 RSP 세션이 메시지 전환 시기에 있다면, 제어는 단계(416)로 이동한다. 단계(416)에서, RMCP 블럭(332)은 추가적인 처리를 위해 세션 ID, RMCP 메시지, 및 RMCP 메시지 길이를 다음 하위 계층 프로토콜로 전달할 수 있다.If the RMCP security extension is activated, control may move to step 410. In step 410, it may be determined whether an appropriate RSP session exists for the SOAP message. If no appropriate RSP session exists for the SOAP message, control passes to step 418. In step 418, the RSSP block 326 can cause the session to be created. Thereafter, control may move to step 416. If an appropriate RSP session exists for the SOAP message, control passes to step 412. In step 412, it may be determined whether the RSP session of the message is a switch time. If the RSP session is not at the message transition time, control passes to step 414. In step 414, the system may wait for a certain period of time until the session reaches a time before an RMCP message is sent and returns control to step 412. If the RSP session is at the message transition time, control passes to step 416. In step 416, the RMCP block 332 may forward the session ID, RMCP message, and RMCP message length to the next lower layer protocol for further processing.

단계(420)에서, 송신 장치의 RSP 프로토콜 엔진은 SOAP 메시지를 RMCP 블럭(332)으로부터 수신할 수 있고, RSP 블럭(330)은 메시지의 시작부에 RSP 헤더를 삽입할 수 있고, 세션 ID 값을 RSP 헤더의 세션 ID 필드로 복사할 수 있다. 단계(422)에서, RSP 블럭(330)은 세션 상태에 접속하기 위해 세션 ID를 사용할 수 있고, 세션의 순차 번호를 증가시킬 수 있고, 이 후에, 세션 순차 번호 값을 RSP 헤더의 순차 번호 필드로 삽입할 수 있다. 단계(424)에서, RSP 블럭(330)은 메시지의 데이터 블럭의 끝에 RSP 트레일러를 생성하도록 할 수 있다. RSP 블럭(330)은 데이터 워드 경계(boundary)상의 보호된 메시지의 보전 데이터 필드를 정렬하기 위해 요구되는 패딩(padding)의 양을 계산할 수 있다. RSP 블럭(330)은 메시지의 데이터 블럭의 끝을 발견하기 위해 RMCP 블럭(332)으로부터 전달된 RMCP 메시지 길이를 사용할 수 있고, 패드 바이트들, 및 RSP 트레일러의 패드 길이 및 다음 헤더 필드들에 대한 값들의 정정 번호를 삽입할 수 있다. RSP 블럭(330)은 세션 상태에 접속하기 위해 세션 ID를 사용할 수 있고, 메시지와 같이 이용된 특정 보전 알고리즘을 판단할 수 있고, 밀봉된 메시지상의 보전 데이터를 계산할 수 있다. 계산된 값은 보호된 RMCP 메시지를 생성하기 위해 RSP 트레일러의 보전 데이터 필드내로 삽입될 수 있다.In step 420, the RSP protocol engine of the transmitting device may receive a SOAP message from the RMCP block 332, the RSP block 330 may insert an RSP header at the beginning of the message, and set the session ID value. Can be copied to the session ID field of the RSP header. In step 422, the RSP block 330 may use the session ID to access the session state, increase the sequence number of the session, and then, replace the session sequence number value with the sequence number field of the RSP header. Can be inserted. In step 424, the RSP block 330 may cause the RSP trailer to be created at the end of the data block of the message. The RSP block 330 may calculate the amount of padding required to align the integrity data fields of the protected message on the data word boundary. The RSP block 330 can use the RMCP message length passed from the RMCP block 332 to find the end of the data block of the message, the pad bytes, and the value for the pad length and the next header fields of the RSP trailer. Can be used to insert a correction number. The RSP block 330 can use the session ID to access the session state, determine the particular conservation algorithm used with the message, and calculate the conservation data on the sealed message. The calculated value can be inserted into the maintenance data field of the RSP trailer to generate a protected RMCP message.

단계(426)에서, RSP 블럭(330)은 RSP 헤더 및 RSP 트레일러의 부가를 확인하기 위해 메시지 길이를 업데이트 하도록 할 수 있고, UDP 출발지 및 목적지 포트 값들, 보호된 RMCP 메시지 길이, 및 보호된 RMCP 메시지를 추가적인 처리를 위해 예를 들면 UDP 블럭(334)과 같은 다음 하위 계층 프로토콜로 전달하도록 할 수 있다. 단계(428)에서, UDP 블럭(334)은 RSP 블럭(330)으로부터 메시지를 수신할 수 있고, 송신 장치의 UDP 프로토콜 엔진은 보호된 RMCP 메시지의 시작부에 헤더를 삽 입할 수 있다. 단계(430)에서, UDP 블럭(334)은 RSP 블럭(330)으로부터 전달된 포트 값들을 UDP 헤더의 출발지 포트 및 목적지 포트 필드들에 복사할 수 있다. 단계(432)에서, UDP 블럭(334)은 UDP 패킷 길이 및 체크섬을 계산하도록 할 수 있고, 이 값들을 UDP 길이 및 체크섬 필드들에 삽입하도록 할 수 있다. 단계(434)에서, 결과적인 UDP 패킷은 추가적인 처리 및 결과적으로 목적지로의 전송을 위해 예를 들면 IP 블럭(338), 및 MAC/PHY 계층 블럭(340)과 같은 그 밖의 하위 계층 프로토콜들로 전달될 수 있다.In step 426, the RSP block 330 can cause the message length to be updated to confirm the addition of the RSP header and the RSP trailer, the UDP source and destination port values, the protected RMCP message length, and the protected RMCP message. May be forwarded to the next lower layer protocol such as, for example, UDP block 334 for further processing. At step 428, the UDP block 334 can receive the message from the RSP block 330, and the UDP protocol engine of the transmitting device can insert a header at the beginning of the protected RMCP message. At step 430, the UDP block 334 can copy the port values delivered from the RSP block 330 to the source port and destination port fields of the UDP header. In step 432, the UDP block 334 can cause the UDP packet length and checksum to be calculated and insert these values into the UDP length and checksum fields. In step 434, the resulting UDP packet is forwarded to other lower layer protocols such as, for example, IP block 338, and MAC / PHY layer block 340 for further processing and consequently transmission to the destination. Can be.

도 5는 본원 발명의 다양한 실시예에 따른 웹 서비스 기반 관리를 위한 RMCP 패킷의 착신 메시지 처리를 위한 예시적인 단계들을 도시한 흐름도이다. 도 5를 참조하면, 예시적인 단계들은 단계(502)에서 시작할 수 있다. 단계(504)에서, 수신 장치의 예를 들면 MAC/PHY 계층 블럭(340), 및 IP 블럭(338)과 같은 하위 계층 프로토콜들은 추가적인 처리를 위해 예를 들면 UDP 블럭(334)과 같은 다음 상위 계층 프로토콜로 수신된 보호된 RMCP 메시지를 전달할 수 있다. 단계(506)에서, 수신 장치의 UDP 블럭(334)은 UDP 헤더의 체크섬 필드를 검증하도록 할 수 있다. 단계(508)에서, 체크섬 필드가 유효한지 판단될 수 있다. 만일 체크섬 필드가 유효하지 않은 경우, 제어는 단계(510)로 이동한다. 단계(510)에서, UDP 블럭(334)은 패킷을 폐기할 수 있다. 만일 체크섬 필드가 유효하다면, 제어는 단계(512)로 이동한다. 단계(512)에서, 수신된 메시지가 목적지 포트 필드의 값에 의해 특정된 상위 계층 프로토콜을 지원하는지 판단될 수 있다. 만일 수신된 메시지가 상위 계층 프로토콜을 지원하지 않는다면, 제어는 단계(510)로 이동한다. 단계(510)에서, UDP 블럭(334)은 패킷을 폐기할 수 있다. 만일 상위 계층 프로토콜이 지원된다면, 제어는 단계(516)로 이동한다. 단계(516)에서, UDP 블럭(334)은 헤더를 제거할 수 있고, 보호된 RMCP 메시지 길이를 업데이트할 수 있고, 추가적인 처리를 위해 예를 들면 RSP 블럭(330)과 같은 다음 상위 계층 프로토콜로 보호된 RMCP 메시지 및 이것의 길이를 전달할 수 있다.5 is a flowchart illustrating exemplary steps for processing an incoming message of an RMCP packet for web service based management according to various embodiments of the present disclosure. Referring to FIG. 5, example steps may begin at step 502. In step 504, lower layer protocols such as the MAC / PHY layer block 340, and the IP block 338, of the receiving device may be added to the next higher layer such as the UDP block 334 for further processing. It can forward protected RMCP messages received by the protocol. In step 506, the UDP block 334 of the receiving device can cause the checksum field of the UDP header to be verified. At step 508, it may be determined whether the checksum field is valid. If the checksum field is invalid, control moves to step 510. At step 510, UDP block 334 may discard the packet. If the checksum field is valid, control passes to step 512. In step 512, it may be determined whether the received message supports the higher layer protocol specified by the value of the destination port field. If the received message does not support the higher layer protocol, control passes to step 510. At step 510, UDP block 334 may discard the packet. If higher layer protocols are supported, control passes to step 516. In step 516, the UDP block 334 can remove the header, update the protected RMCP message length, and protect it with the next higher layer protocol such as, for example, the RSP block 330 for further processing. RMCP message and its length can be passed.

단계(518)에서, RSP 블럭(330)은 UDP 블럭(334)으로부터 보호된 RMCP 메시지를 수신할 수 있고, RSP 블럭(330)은 RMCP 보안 확장 기능이 활성화되었는지 판단하기 위해 장치 보안 정책에 접속할 수 있다. 만일 RMCP 보안 확장 기능이 비활성되었다면, 제어는 단계(519)로 이동한다. 단계(519)에서, 보안이 요구되는지 판단될 수 있다. 만일 보안이 요구된다면, 제어는 단계(510)로 이동한다. 단계(510)에서, RSP 블럭(330)은 메시지를 폐기할 수 있다. 보안이 요구되지 않는다면, 제어는 단계(534)로 이동한다.In step 518, the RSP block 330 may receive the RMCP message protected from the UDP block 334, and the RSP block 330 may access the device security policy to determine if the RMCP security extension is enabled. have. If the RMCP security extension has been disabled, control passes to step 519. In step 519, it may be determined whether security is required. If security is required, control passes to step 510. In step 510, the RSP block 330 may discard the message. If no security is required, control passes to step 534.

만일 RMCP 보안 확장 기능이 활성화되었다면, 제어는 단계(520)로 이동한다. 단계(520)에서, RSP 블럭(330)이 이 메시지에 대한 세션 상태를 발견하기 위해 RSP 헤더의 세션 ID 값을 사용할 수 있는지 판단할 수 있다. 만일 세션 상태가 이 메시지에 대해 발견되지 않는다면, 제어는 단계(510)로 이동한다. 단계(510)에서, RSP 블럭(330)은 이 메시지를 폐기할 수 있다. 만일 세션 상태가 이 메시지에 대해 발견된다면, 제어는 단계(522)로 이동한다.If the RMCP security extension has been activated, control passes to step 520. In step 520, it may be determined whether the RSP block 330 can use the session ID value of the RSP header to discover the session state for this message. If no session state is found for this message, control passes to step 510. In step 510, the RSP block 330 may discard this message. If session state is found for this message, control passes to step 522.

단계(522)에서, 세션이 메시지 허용 시기에 있는지 판단될 수 있다. 만일 세션이 메시지 허용 시기에 있지 않으면, 제어는 단계(510)로 이동한다. 단계(510)에 서, RSP 블럭(330)은 메시지를 폐기할 수 있다. 만일 세션이 메시지 허용 시기에 있다면, 제어는 단계(524)로 이동한다. 단계(524)에서, RSR 블럭(330)은 RSP 트레일러의 보전 데이터 필드를 발견하고 검증하기 위해 UDP 블럭(334)으로부터 전달된 보호된 RMCP 메시지 길이, 및 세션 상태에 특정된 보전 알고리즘을 사용할 수 있다. 단계(526)에서, 보전 데이터 필드가 유효한지 판단될 수 있다. 만일 보전 데이터 필드가 비유효하다면, 제어는 단계(510)로 이동한다. 단계(510)에서, RSP 블럭(330)은 메시지를 폐기할 수 있다. 만일 보전 데이터 필드가 유효하다면, 제어는 단계(528)로 이동한다. 단계(528)에서, RSP 블럭(330)은 수신된 메시지가 새롭고 이전에 수신된 메시지, 및 상기 슬라이딩 수신 윈도우에 관련된 메시지의 위치가 복제된 것이 아닌지 판단하기 위해 슬라이딩 수신 윈도우 정보, 및 RSP 헤더의 순차 번호 필드를 사용할 수 있다. 만일, 수신된 메시지가 새롭지 않다면, 제어는 단계(510)로 이동한다. 단계(510)에서, RSP 블럭(330)은 메시지를 폐기할 수 있다.In step 522, it may be determined whether the session is at a message acceptance time. If the session is not in message acceptance time, control passes to step 510. In step 510, the RSP block 330 may discard the message. If the session is at message accept time, control passes to step 524. In step 524, the RSR block 330 may use a protected RMCP message length passed from the UDP block 334 and a conservation algorithm specific to the session state to discover and verify the conservation data fields of the RSP trailer. . In step 526, it may be determined whether the integrity data field is valid. If the maintenance data field is invalid, control moves to step 510. In step 510, the RSP block 330 may discard the message. If the maintenance data field is valid, control passes to step 528. In step 528, the RSP block 330 is configured to determine whether the received message is a new and previously received message, and the location of the message relative to the sliding receive window is not a duplicate of the sliding receive window information, and the RSP header. You can use the sequence number field. If the received message is not new, control passes to step 510. In step 510, the RSP block 330 may discard the message.

만일 수신된 메시지가 새로운 메시지이면, 제어는 단계(530)로 이동한다. 단계(530)에서, 수신된 메시지는 새로울 수 있고, 슬라이딩 수신 윈도우의 내부에 있거나, 또는 슬라이딩 수신 윈도우의 우측에 있을 수 있다. 만일 수신된 메시지가 슬라이딩 수신 윈도우의 우측에 있다면, 슬라이딩 수신 윈도우는 상기 메시지를 처리하기 위해 우측으로 전진될 수 있다. 본원 발명의 실시예에 따라, 메시지는 불규칙하게 수신되어, 적절히 처리될 수 있다. 단계(530)에서, 만일 순차 번호 처리가 성공적으로 완료되면, RSP 블럭(330)은 상기 순차 번호 값을 다음 헤더 필드에 저장할 수 있고, 메시지의 끝에서 제거될 수 있는 패드 바이트들의 수를 계산하기 위 해 패드 길이 필드의 값을 사용할 수 있다. 단계(532)에서, RSP 블럭(330)은 RSP 블럭 및 RSP 트레일러를 제거할 수 있고, RMCP 메시지의 길이 값을 업데이트할 수 있다. 단계(534)에서, RSP 블럭(330)은 RMCP 메시지 및 대응하는 길이를 추가적인 처리를 위해 예를 들면 RMCP 블럭(332)과 같은 다음 상위 계층 프로토콜로 전달할 수 있다. 이 후에, 제어는 단계(536)로 이동한다.If the received message is a new message, control moves to step 530. In step 530, the received message may be new, inside the sliding receive window, or on the right side of the sliding receive window. If the received message is on the right side of the sliding receive window, the sliding receive window can be advanced to the right to process the message. In accordance with an embodiment of the present invention, messages may be received irregularly and processed appropriately. In step 530, if sequential number processing is successfully completed, RSP block 330 may store the sequential number value in the next header field and calculate the number of pad bytes that may be removed at the end of the message. You can use the value in the Pad Length field for this purpose. In step 532, the RSP block 330 may remove the RSP block and the RSP trailer and update the length value of the RMCP message. In step 534, the RSP block 330 may forward the RMCP message and the corresponding length to the next higher layer protocol such as, for example, the RMCP block 332 for further processing. After this, control passes to step 536.

본원 발명의 실시예에 따라, 웹 서비스 기반 관리를 위한 경량 SOAP(simple object access protocol) 전송은 경량 전송 프로토콜상에서 맵팽되는 SOAP(312) 메시지를 사용하여 시스템(150)을 관리하는 것을 포함할 수 있다. 경량 전송 프로토콜은 예를 들면, 클라이언트(173, 175, 177, 179)와 같은 OOB 관리 장치들에서 웹 서비스들을 사용하여 시스템의 원격 관리를 가능하게 하기 위해 RMCP(332), 및 RSP(330) 중 하나 또는 모두일 수 있다. 시스템(150)은 맵핑된 SOAP 메시지 및 하나 또는 그 이상의 웹 서비스들을 사용하여 관리될 수 있다. 경량 전송 프로토콜은 OOB 동작을 위해 보안 및 신뢰도를 제공할 수 있다. 경량 전송 프로토콜은 단방향 MEP, 요청-응답 MEP, 및 SOAP 메시지들의 멀티캐스팅을 지원하도록 할 수 있다. 경량 전송 프로토콜은 SOAP 메시지의 재전송 및 수신의 응답을 제공하도록 할 수 있다. 시스템(150)은 메시지 인증에 의해 보호될 수 있고, 및/또는 맵핑된 SOAP 메시지의 보전을 검사하여 보호될 수 있다. 경량 전송 프로토콜은 SOAP 메시지들의 재실행 방지 보호를 제공하도록 할 수 있다.In accordance with an embodiment of the present invention, lightweight simple object access protocol (SOAP) transport for web services based management may include managing system 150 using SOAP 312 messages mapped over the lightweight transport protocol. . The lightweight transport protocol is one of the RMCP 332 and the RSP 330 to enable remote management of the system using web services, for example, in OOB management devices such as clients 173, 175, 177, 179. It can be one or all. System 150 may be managed using a mapped SOAP message and one or more web services. The lightweight transport protocol may provide security and reliability for OOB operation. The lightweight transport protocol may enable to support unidirectional MEP, request-response MEP, and multicasting of SOAP messages. The lightweight transport protocol may allow to provide a response of retransmission and receipt of a SOAP message. System 150 may be protected by message authentication and / or may be protected by checking the integrity of the mapped SOAP message. The lightweight transport protocol may provide for redo protection of SOAP messages.

본원 발명의 다른 실시예는 기계에 의해 실행가능한 적어도 하나의 코드 부분을 갖는 컴퓨터 프로그램이 저장된 기계-판독가능 스토리지를 제공할 수 있고 , 이에 따라, 상기 기계가 웹 서비스 기반 관리를 위한 경량 SOAP 전송을 위해 상기 기술된 것과 같은 단계들을 수행하도록 할 수 있다.Another embodiment of the present invention may provide machine-readable storage in which a computer program having at least one code portion executable by a machine is stored, whereby the machine provides a lightweight SOAP transport for web service based management. To perform the same steps as described above.

출원인은 어떠한 본원의 주장 또는 진술도 출원인의 특허청구범위의 구현이 ASF 세부 사항에 순응적이지 않은 동작을 필수적으로 결과하는 승인(admission) 또는 표현(representation)과 같이 해석되어서는 안된다는 것을 제시한다. 반대로, 출원인은 출원인의 특허청구범위의 구현이 ASF 세부 사항에 실제로 순응적인 동작을 여전히 결과할 수 있다는 것을 제시한다.Applicant suggests that no claims or statements herein should be construed as an admission or representation that would result in an implementation of the Applicant's claims that would necessarily result in an operation that is not compliant with ASF details. On the contrary, the Applicant suggests that the implementation of the Applicant's claims may still result in an operation that is actually compliant with the ASF details.

따라서, 본원 발명은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 본원 발명은 적어도 하나의 컴퓨터 시스템에 집중 방식, 또는 다른 구성요소들이 여러 대의 접속된 컴퓨터 시스템들에 걸쳐 분산된 분산 방식으로 구현될 수 있다. 본원에 기재된 방법을 수행하기 위해 적응된 임의의 종류의 컴퓨터 시스템, 또는 그 밖의 장치가 조화된다. 하드웨어 및 소프트웨어의 전형적인 조합은 판독되고 실행될 때 본원에 기재된 방법들을 수행하는 컴퓨터 시스템을 제어하는 컴퓨터 프로그램을 가진 범용 컴퓨터 시스템일 수 있다.Thus, the present invention can be implemented in hardware, software, or a combination of hardware and software. The invention may be implemented in a centralized manner in at least one computer system, or in a distributed manner in which other components are distributed across several connected computer systems. Any kind of computer system, or other apparatus, adapted for carrying out the methods described herein is matched. A typical combination of hardware and software may be a general purpose computer system with a computer program that, when read and executed, controls the computer system performing the methods described herein.

본원 발명은 또한 컴퓨터 프로그램 제품(computer program product)에 내장될 수 있다. 이때, 상기 컴퓨터 프로그램 제품은 여기서 설명한 방법들의 구현을 가능하게 하는 모든 특징들을 모두 포함하며, 컴퓨터 시스템에 탑재될 경우에는 그러한 방법들을 수행할 수 있다. 본원 발명의 문맥에서 컴퓨터 프로그램이란, 어떠한 종류의 언어, 코드 또는 표기법으로 나타낸, 일단의 명령에 관한 어떠한 종류의 표현을 뜻한다. 이때, 상기 일단의 명령들이란, 정보 처리 능력을 가진 시스템이 어떤 특정한 기능을 직접적으로, 또는 다음의 (a) 다른 프로그램 언어, 코드나 표기법으로 변환(conversion)되거나, (b) 상이한 물질적인 형태로 재생산을 각각 거치거나 또는 두 가지 모두를 거친 후에, 수행하도록 의도된 것들을 말한다.The invention may also be embedded in a computer program product. At this point, the computer program product includes all the features that enable the implementation of the methods described herein, and may be implemented when mounted on a computer system. By computer program in the context of the present invention is meant any kind of expression with respect to a set of instructions, expressed in any kind of language, code or notation. In this case, the set of instructions means that a system having an information processing capability converts a particular function directly or to (a) another programming language, code or notation, or (b) a different material form. Refers to those intended to be performed after each reproduction or both.

본원 발명이 특정한 실시예들에 관하여 설명되었지만, 본원 발명의 사상에서 벗어남이 없이, 다양한 변경이 이뤄질 수 있고 또한 균등물들이 치환될 수 있다는 점은 당해 기술 분야에 숙련된 자들에게 이해될 것이다. 추가적으로, 본 발명의 사상에서 벗어남이 없이, 특정한 상황이나 물적 요건을 본 발명의 지침에 맞게 조절할 수 있도록 다양한 개조가 이뤄질 수 있다. 따라서, 본원 발명은 개시된 특정한 실시예에 한정되는 것이 아니며, 본원 발명은 첨부된 청구 범위의 사상 내에 들어오는 모든 실시예들을 포함한다.While the invention has been described with respect to specific embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the spirit of the invention. In addition, various modifications may be made to adapt a particular situation or material requirement to the teachings of the present invention without departing from its spirit. Accordingly, the invention is not to be limited to the specific embodiments disclosed and it is intended that the invention include all embodiments falling within the spirit of the appended claims.

Claims (36)

네트워크 정보를 처리하기 위한 방법에 있어서,In the method for processing network information, 원격 관리 및 제어 프로토콜(remote management and control protocol; RMCP), 및 RMCP 보안 확장 프로토콜(RMCP security extensions protocol; RSP) 중 하나 또는 모두 상에 맵핑된(mapped) 단순 객체 접속 프로토콜(simple object access protocol; SOAP)을 사용하여 시스템을 관리하는 단계를 포함하는 네트워크 정보를 처리하기 위한 방법.Simple object access protocol (MAP) mapped onto one or both of remote management and control protocol (RMCP) and RMCP security extensions protocol (RSP) Managing the system using &lt; RTI ID = 0.0 &gt;). &Lt; / RTI &gt; 청구항 1에 있어서, 상기 맵핑된 SOAP 메시지, 및 하나 또는 그 이상의 웹 서비스들을 사용하여 상기 시스템을 관리하는 단계를 포함하는 네트워크 정보 처리 방법.The method of claim 1, comprising managing the system using the mapped SOAP message and one or more web services. 청구항 2에 있어서, 대역 외(out-of-band; OOB) 관리를 통한, 상기 하나 또는 그 이상의 웹 서비스들에 의하여 상기 시스템을 원격으로 관리하는 단계를 포함하는 네트워크 정보를 처리하기 위한 방법.3. The method of claim 2, comprising remotely managing the system by the one or more web services, via out-of-band (OBB) management. 청구항 3에 있어서, 상기 OOB 관리를 통해 상기 시스템을 보안화하는(securing) 단계를 포함하는 네트워크 정보를 처리하기 위한 방법.4. The method of claim 3, comprising securing the system via the OOB management. 청구항 1에 있어서, 상기 맵핑(mapping)은 상기 SOAP 메시지들의 단방향 메시지 교환을 제공하는 네트워크 정보를 처리하기 위한 방법.The method of claim 1, wherein the mapping provides one-way message exchange of the SOAP messages. 청구항 1에 있어서, 상기 맵핑은 상기 SOAP 메시지들의 요청-응답(request-response) 메시지 교환을 제공하는 네트워크 정보를 처리하기 위한 방법.The method of claim 1, wherein the mapping provides for a request-response message exchange of the SOAP messages. 청구항 1에 있어서, 상기 맵핑은 상기 SOAP 메시지들의 멀티캐스팅(multicasting)을 제공하는 네트워크 정보를 처리하기 위한 방법.The method of claim 1, wherein the mapping provides for multicasting of the SOAP messages. 청구항 1에 있어서, 상기 맵핑된 SOAP 메시지를 재전송하는 단계를 포함하는 네트워크 정보를 처리하기 위한 방법.The method of claim 1, comprising retransmitting the mapped SOAP message. 청구항 1에 있어서, 상기 맵핑된 SOAP 메시지의 수신(receipt)을 응답하는 단계를 포함하는 네트워크 정보를 처리하기 위한 방법.The method of claim 1, comprising responding to a receipt of the mapped SOAP message. 청구항 1에 있어서, 상기 맵핑된 SOAP 메시지를 인증하는 것에 의해 상기 시스템을 보안화하는 단계를 포함하는 네트워크 정보를 처리하기 위한 방법.The method of claim 1, comprising securing the system by authenticating the mapped SOAP message. 청구항 1에 있어서, 상기 맵핑된 SOAP 메시지의 보전(integrity)을 검사하는 것에 의해 상기 시스템을 보안화하는 단계를 포함하는 네트워크 정보를 처리하기 위한 방법.The method of claim 1, comprising securing the system by checking the integrity of the mapped SOAP message. 청구항 1에 있어서, 상기 맵핑은 상기 SOAP 메시지들의 재실행 방지(anti-replay) 보호를 제공하는 네트워크 정보를 처리하기 위한 방법.The method of claim 1, wherein the mapping provides anti-replay protection of the SOAP messages. 네트워크 정보를 처리하기 위한 시스템에 있어서,In the system for processing network information, 원격 관리 및 제어 프로토콜(remote management and control protocol; RMCP), 및 RMCP 보안 확장 프로토콜(RMCP security extensions protocol; RSP) 중 하나 또는 모두 상에 맵핑되는(mapped) 단순 객체 접속 프로토콜(simple object access protocol; SOAP)을 사용하여 시스템의 관리를 가능하게 하는 하나 또는 그 이상의 회로들을 포함하는 네트워크 정보를 처리하기 위한 시스템.Simple object access protocol (mapped) mapped onto one or both of remote management and control protocol (RMCP) and RMCP security extensions protocol (RSP) System for processing network information comprising one or more circuits that enable management of the system using &lt; RTI ID = 0.0 &gt; 청구항 13에 있어서,The method according to claim 13, 상기 하나 또는 그 이상의 회로들은 상기 맵핑된 SOAP 메시지, 및 하나 또는 그 이상의 웹 서비스들을 사용하여 상기 시스템의 관리를 가능하게 하는 네트워크 정보를 처리하기 위한 시스템.The one or more circuits are for processing network information that enables management of the system using the mapped SOAP message and one or more web services. 청구항 14에 있어서,The method according to claim 14, 상기 하나 또는 그 이상의 회로들은 대역 외(out-of-band; OOB) 관리를 통한, 상기 하나 또는 그 이상의 웹 서비스들에 의하여 상기 시스템의 원격 관리를 가능하게 하는 네트워크 정보를 처리하기 위한 시스템.The one or more circuits are for processing network information that enables remote management of the system by the one or more web services, through out-of-band (OOB) management. 청구항 15에 있어서,The method according to claim 15, 상기 하나 또는 그 이상의 회로들은 상기 OOB 관리를 통해 상기 시스템을 보안화하는(securing) 것을 가능하게 하는 네트워크 정보를 처리하기 위한 시스템.Wherein the one or more circuits are capable of securing the system via the OOB management. 청구항 13에 있어서,The method according to claim 13, 상기 맵핑은 상기 SOAP 메시지들의 단방향 메시지 교환을 제공하는 네트워크 정보를 처리하기 위한 시스템.Wherein said mapping provides network information for providing one-way message exchange of said SOAP messages. 청구항 13에 있어서,The method according to claim 13, 상기 맵핑은 상기 SOAP 메시지들의 요청-응답(request-response) 메시지 교환을 제공하는 네트워크 정보를 처리하기 위한 시스템.And the mapping provides network information for providing a request-response message exchange of the SOAP messages. 청구항 13에 있어서, The method according to claim 13, 상기 맵핑은 상기 SOAP 메시지들의 멀티캐스팅(multicasting)을 제공하는 네트워크 정보를 처리하기 위한 시스템.And the mapping is for processing network information that provides multicasting of the SOAP messages. 청구항 13에 있어서, The method according to claim 13, 상기 하나 또는 그 이상의 회로들은 상기 맵핑된 SOAP 메시지의 재전송을 가 능하게 하는 네트워크 정보를 처리하기 위한 시스템.The one or more circuits are for processing network information that enables retransmission of the mapped SOAP message. 청구항 13에 있어서, The method according to claim 13, 상기 하나 또는 그 이상의 회로들은 상기 맵핑된 SOAP 메시지의 수신(receipt)의 응답을 가능하게 하는 네트워크 정보를 처리하기 위한 시스템.The one or more circuits are systems for processing network information that enable a response of a receipt of the mapped SOAP message. 청구항 13에 있어서, The method according to claim 13, 상기 하나 또는 그 이상의 회로들은 상기 맵핑된 SOAP 메시지를 인증하는 것에 의하여 상기 시스템을 보안화하는 것을 가능하게 하는 네트워크 정보를 처리하기 위한 시스템.The one or more circuits are configured to process network information enabling to secure the system by authenticating the mapped SOAP message. 청구항 13에 있어서,The method according to claim 13, 상기 하나 또는 그 이상의 회로들은 상기 맵핑된 SOAP 메시지의 보전(integrity)을 검사하는 것에 의하여 상기 시스템을 보안화하는 것을 가능하게 하는 네트워크 정보를 처리하기 위한 시스템.The one or more circuits are configured to process network information making it possible to secure the system by checking the integrity of the mapped SOAP message. 청구항 13에 있어서,The method according to claim 13, 상기 맵핑은 상기 SOAP 메시지들의 재실행 방지(anti-replay) 보호를 제공하는 네트워크 정보를 처리하기 위한 시스템.Wherein said mapping provides network information for providing anti-replay protection of said SOAP messages. 네트워크 정보를 처리하기 위한 적어도 하나의 코드부(code section)를 갖는 컴퓨터 프로그램이 저장된 기계-판독 가능 스토리지(storage)로서,A machine-readable storage in which a computer program having at least one code section for processing network information is stored, 상기 적어도 하나의 코드부는 원격 관리 및 제어 프로토콜(remote management and control protocol; RMCP), 및 RMCP 보안 확장 프로토콜(RMCP security extensions protocol; RSP) 중 하나 또는 모두 상에 맵핑된(mapped) 단순 객체 접속 프로토콜(simple object access protocol; SOAP)을 사용하여 시스템을 관리하는 단계를 포함하는 단계들을 수행하도록 기계를 작동시키기 위하여 상기 기계에 의해 실행가능한 기계-판독 가능 스토리지.The at least one code portion is a simple object access protocol (mapped) on one or both of a remote management and control protocol (RMCP), and an RMCP security extensions protocol (RSP). Machine-readable storage executable by the machine to operate the machine to perform the steps comprising managing the system using a simple object access protocol (SOAP). 청구항 25에 있어서,The method according to claim 25, 상기 적어도 하나의 코드부는 상기 맵핑된 SOAP 메시지, 및 하나 또는 그 이상의 웹 서비스들을 사용하여 상기 시스템을 관리하기 위한 코드를 포함하는 기계-판독 가능 스토리지.And the at least one code portion comprises code for managing the system using the mapped SOAP message and one or more web services. 청구항 26에 있어서,The method of claim 26, 상기 적어도 하나의 코드부는 대역 외(out-of-band; OOB) 관리를 통한, 상기 하나 또는 그 이상의 웹 서비스들에 의하여 상기 시스템을 원격으로 관리하기 위한 코드를 포함하는 기계-판독 가능 스토리지.And the at least one code portion comprises code for remotely managing the system by the one or more web services, through out-of-band (OBB) management. 청구항 27에 있어서,The method of claim 27, 상기 적어도 하나의 코드부는 상기 OOB 관리를 통해 상기 시스템을 보안화(securing)하기 위한 코드를 포함하는 기계-판독 가능 스토리지.And the at least one code portion comprises code for securing the system through the OOB management. 청구항 25에 있어서,The method according to claim 25, 상기 맵핑은 상기 SOAP 메시지들의 단방향(one-way) 메시지 교환을 제공하는 기계-판독 가능 스토리지.And the mapping provides a one-way message exchange of the SOAP messages. 청구항 25에 있어서,The method according to claim 25, 상기 맵핑은 상기 SOAP 메시지들의 요청-응답(request-response) 메시지 교환을 제공하는 기계-판독 가능 스토리지.And the mapping provides a request-response message exchange of the SOAP messages. 청구항 25에 있어서,The method according to claim 25, 상기 맵핑은 상기 SOAP 메시지들의 멀티캐스팅(multicasting)을 제공하는 기계-판독 가능 스토리지.And the mapping provides multicasting of the SOAP messages. 청구항 25에 있어서,The method according to claim 25, 상기 적어도 하나의 코드부는 상기 맵핑된 SOAP 메시지를 재전송(retransmitting)하기 위한 코드를 포함하는 기계-판독 가능 스토리지.And the at least one code portion comprises code for retransmitting the mapped SOAP message. 청구항 25에 있어서,The method according to claim 25, 상기 적어도 하나의 코드부는 상기 맵핑된 SOAP 메시지의 수신(receipt)을 응답(acknowledging)하기 위한 코드를 포함하는 기계-판독 가능 스토리지.And the at least one code portion comprises code for acknowledging the receipt of the mapped SOAP message. 청구항 25에 있어서,The method according to claim 25, 상기 적어도 하나의 코드부는 상기 맵핑된 SOAP 메시지를 인증하는 것에 의하여 상기 시스템을 보안화(securing)하기 위한 코드를 포함하는 기계-판독 가능 스토리지.And the at least one code portion comprises code for securing the system by authenticating the mapped SOAP message. 청구항 25에 있어서,The method according to claim 25, 상기 적어도 하나의 코드부는 상기 맵핑된 SOAP 메시지의 보전(integrity)을 검사하는 것에 의하여 상기 시스템을 보안화(securing)하기 위한 코드를 포함하는 기계-판독 가능 스토리지.And the at least one code portion comprises code for securing the system by checking the integrity of the mapped SOAP message. 청구항 25에 있어서,The method according to claim 25, 상기 맵핑은 상기 SOAP 메시지들의 재실행 방지(anti-replay) 보호를 제공하는 기계-판독 가능 스토리지.And the mapping provides anti-replay protection of the SOAP messages.
KR1020087004334A 2006-01-12 2007-01-12 Method and system for light-weight soap transport for web services based management KR101200875B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US75858606P 2006-01-12 2006-01-12
US60/758,586 2006-01-12
PCT/US2007/000832 WO2007084369A2 (en) 2006-01-12 2007-01-12 Method and system for light-weight soap transport for web services based management

Publications (2)

Publication Number Publication Date
KR20080092332A true KR20080092332A (en) 2008-10-15
KR101200875B1 KR101200875B1 (en) 2012-11-13

Family

ID=38288130

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087004334A KR101200875B1 (en) 2006-01-12 2007-01-12 Method and system for light-weight soap transport for web services based management

Country Status (5)

Country Link
EP (1) EP1977557A2 (en)
KR (1) KR101200875B1 (en)
CN (1) CN101351993B (en)
HK (1) HK1127830A1 (en)
WO (1) WO2007084369A2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9888095B2 (en) * 2015-06-26 2018-02-06 Microsoft Technology Licensing, Llc Lightweight transport protocol
CN112925660B (en) * 2021-02-26 2024-04-30 中科斯欧(合肥)科技股份有限公司 Industrial interconnection information interaction system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW586069B (en) * 2001-03-01 2004-05-01 Ibm A method and a bridge for coupling a server and a client of different object types

Also Published As

Publication number Publication date
KR101200875B1 (en) 2012-11-13
EP1977557A2 (en) 2008-10-08
WO2007084369A2 (en) 2007-07-26
WO2007084369A3 (en) 2007-11-08
HK1127830A1 (en) 2009-10-09
CN101351993B (en) 2012-08-29
CN101351993A (en) 2009-01-21

Similar Documents

Publication Publication Date Title
US8769021B2 (en) Method and system for light-weight SOAP transport for web services based management
Stewart et al. RFC 9260: Stream Control Transmission Protocol
US10616379B2 (en) Seamless mobility and session continuity with TCP mobility option
Kumar et al. Implementation and analysis of QUIC for MQTT
KR100910818B1 (en) Method and system for tunneling macsec packets through non-macsec nodes
CA2421665C (en) Wireless provisioning device
Arregoces et al. Data center fundamentals
US7447901B1 (en) Method and apparatus for establishing a dynamic multipoint encrypted virtual private network
CN1938982B (en) Method and apparatus for preventing network attacks by authenticating internet control message protocol packets
US11888818B2 (en) Multi-access interface for internet protocol security
New et al. Reliable Delivery for syslog
US11924248B2 (en) Secure communications using secure sessions
WO2014075213A1 (en) Bidirectional forwarding detection (bfd) session negotiation method, device and system
CN114422432A (en) Reliable coverage based on reliable transport layer
Scudder et al. Bgp monitoring protocol (bmp)
Monia et al. iFCP-a protocol for internet fibre channel storage networking
CN110771117B (en) Session layer communication using ID-oriented network
KR101200875B1 (en) Method and system for light-weight soap transport for web services based management
CN102469063B (en) Routing protocol security alliance management method, Apparatus and system
JP2017208718A (en) Communication device and communication method
CN101753353B (en) SNMP based safety management method, Trap message processing method and device
New et al. RFC3195: Reliable Delivery for syslog
Huawei Technologies Co., Ltd. TCP/IP
Jennings et al. Rfc 6940: Resource Location and Discovery (Reload) Base Protocol
Senevirathne et al. Transparent Interconnection of Lots of Links (TRILL): Fault Management

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20100630

Effective date: 20120924

GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151106

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161024

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee