KR20070061084A - Sca based application system and the method of exchanging component in operation thereof - Google Patents
Sca based application system and the method of exchanging component in operation thereof Download PDFInfo
- Publication number
- KR20070061084A KR20070061084A KR1020060043703A KR20060043703A KR20070061084A KR 20070061084 A KR20070061084 A KR 20070061084A KR 1020060043703 A KR1020060043703 A KR 1020060043703A KR 20060043703 A KR20060043703 A KR 20060043703A KR 20070061084 A KR20070061084 A KR 20070061084A
- Authority
- KR
- South Korea
- Prior art keywords
- component
- name
- data
- input port
- data input
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
도 1은 본 발명의 실시예에 따른 SCA 기반 애플리케이션 시스템을 도시한 블록도이다. 1 is a block diagram illustrating an SCA-based application system according to an embodiment of the present invention.
도 2는 본 발명의 실시예에 따른 네이밍 서비스를 위해 네이밍 서버에 등록되는 네이밍 트리를 도시한 블록도이다. 2 is a block diagram illustrating a naming tree registered in a naming server for a naming service according to an embodiment of the present invention.
도 3은 본 발명의 실시예에 따른 컴포넌트를 도시한 블록도이다.3 is a block diagram illustrating components in accordance with an embodiment of the present invention.
도 4는 본 발명의 실시예에 따른 데이터 타입을 나타낸 것이다.4 illustrates a data type according to an embodiment of the present invention.
도 5는 본 발명의 실시예에 따른 애플리케이션 서비스 시작 과정을 나타낸 순서도이다.5 is a flowchart illustrating a process of starting an application service according to an embodiment of the present invention.
도 6은 본 발명의 실시예에 따라 교체되는 컴포넌트와 관련된 서비스 중지 과정을 나타낸 순서도이다.6 is a flowchart illustrating a service stopping process associated with a component to be replaced according to an embodiment of the present invention.
도 7은 본 발명의 실시예에 따라 컴포넌트 교체 이후 애플리케이션 서비스 재시작 과정을 나타낸 순서도이다.7 is a flowchart illustrating a process of restarting an application service after component replacement according to an embodiment of the present invention.
본 발명은 에스시에이(Software Communication Architecture: 이하, SCA라 칭한다.) 기반 애플리케이션 시스템 및 이의 운용 중 컴포넌트 교체방법에 관한 것이다. The present invention relates to a software communication architecture (hereinafter referred to as SCA) based application system and a method of replacing components during its operation.
SCA는 합동 전술 무선 시스템(Joint Tactical Radio System: JTRS) 합동 프로그램 사무국(Joint Program Office: JPO)에서 통신 시스템간 상호 연동성을 크게 개선하고, 개발 및 배치 비용을 줄이고자 제안한 표준화된 통신 소프트웨어 구조이다. SCA is a standardized communication software architecture proposed by the Joint Tactical Radio System (JTRS) Joint Program Office (JPO) to significantly improve interoperability between communication systems and reduce development and deployment costs.
SCA는 크게 애플리케이션(Application)과 운영환경(Operating Environment)의 계층구조로 구성되며, 이중 운영환경은 실시간 운영체계(Real-Time Operating System: RTOS)와 코어 프레임워크(Core Framework: CF) 및 코바(Common Object Request Broker Architecture: CORBA) 인터페이스로 이루어진다. SCA는 분산 객체 모델의 산업표준인 코바(CORBA: Common Object Request Broker Architecture)를 미들웨어(Middleware)로 채택하여 이기종의 하드웨어와 소프트웨어의 통합 환경을 제공하는데, 이는 특정 시스템에 한정되는 규격이 아닌 독립적인 시스템 디자인 프레임워크이다.SCA is composed of hierarchical structure of application and operating environment, and dual operating environment consists of Real-Time Operating System (RTOS), Core Framework (CF) and COVA ( It consists of the Common Object Request Broker Architecture (CORBA) interface. SCA adopts CORBA (Common Object Request Broker Architecture), an industry standard for distributed object models, as a middleware to provide an integrated environment of heterogeneous hardware and software. System design framework.
SCA 기반 애플리케이션 시스템(SCA based application system)은 SCA 구조를 기반으로 이루어진 통신 시스템을 의미하며, 소프트웨어 기반 무선통신(Sofeware Defined Radio: SDR) 시스템은 SCA 기반 애플리케이션 시스템의 대표적인 예이다. 소프트웨어 기반 무선통신 시스템은 하드웨어의 수정 없이 모듈화된 소프트웨어의 변환을 통해 다수의 무선 통신규격을 복합적으로 수용할 수 있으며, 소프트웨어 프레임워크의 표준으로 SCA를 채택한다. An SCA based application system refers to a communication system based on an SCA structure, and a software defined radio (SDR) system is a representative example of an SCA based application system. Software-based wireless communication systems can accommodate multiple wireless communication standards by converting modular software without modification of hardware and adopt SCA as a standard of software framework.
SCA 기반 애플리케이션 시스템에서 웨이브폼(Waveform) 기능을 수행하는 애플리케이션은 다수의 컴포넌트를 하나의 패키지로 묶어 배치하여 실행한다. 이로 인해, 애플리케이션 운영 중 하나 또는 복수의 컴포넌트에 고장이 발생하거나 교체가 필요한 경우, 전체 애플리케이션 패키지를 시스템으로부터 제거하고 새로운 컴포넌트가 적용된 애플리케이션 패키지를 다시 제작하여 패키지 전체를 다시 시스템에 로딩하고 실행할 수 있을 뿐, 운용 중 컴포넌트를 교체하는 것은 불가능하였다.An application that performs a waveform function in an SCA-based application system executes a bundle of components in a single package. As a result, if one or multiple components of an application operation fail or require replacement, the entire application package can be removed from the system and the application package with the new components rebuilt to load and run the entire package back into the system. It was not possible to replace components during operation.
만약, 애플리케이션의 재배치가 생략된다면 하나 또는 복수의 컴포넌트에 고장이 발생하거나 교체되는 경우 실제 해당 컴포넌트의 런타임 정보인 입출력 포트들 각각의 포트별 목적지 정보(Port Object Reference)가 변경되어 해당 컴포넌트와 연결되어 있는 모든 커넥션 정보가 끊어지게 된다. 이로 인해, 고장이 발생하거나 교체되는 해당 컴포넌트와 관련된 입출력 포트로 다른 컴포넌트가 데이터를 송신하려 할 경우 잘못된 메모리 주소로 데이터를 쓰는 오류를 유발하여 애플리케이션 전체가 영향을 받아서 시스템이 다운되는 현상을 초래할 수 있다.If the redeployment of the application is omitted, when a failure or replacement of one or more components occurs, the destination information (Port Object Reference) of each input / output port, which is the runtime information of the corresponding component, is changed and connected with the corresponding component. All connection information that is present will be lost. As a result, if another component attempts to send data to the I / O port associated with the component that is failing or replaced, it can cause an error in writing the data to the wrong memory address, causing the entire application to be affected and the system to crash. have.
이 때문에, 기지국과 같이 이동통신 서비스를 위하여 중단 없이 작동하는 장치에서는 애플리케이션 패키지의 교체를 위하여 전체 애플리케이션을 종료시켜야 하는 SCA 기반 애플리케이션 시스템을 적용하기 어려웠다. Because of this, it is difficult to apply the SCA-based application system that must terminate the entire application in order to replace the application package in the device that operates without interruption for the mobile communication service, such as the base station.
이와 같은 문제점을 해결하기 위하여, 본 발명은 운용중 임의의 컴포넌트를 교체하더라도, 이로 인한 오류의 발생이나 시스템의 다운을 방지하는 SCA 기반 애플리케이션 시스템 및 이의 운용 중 컴포넌트 교체방법을 제시한다. In order to solve such a problem, the present invention proposes an SCA-based application system and a method for replacing a component during its operation, even if any component is replaced during operation, thereby preventing the occurrence of an error or a system down.
이러한 기술적 과제를 달성하기 위하여 본 발명의 특징에 따른 에스시에이 기반 애플리케이션 시스템은, 특정 애플리케이션의 운용에 필요한 컴포넌트를 선택적으로 구동시키기 위한 구동정보를 나타내는 XML 파일을 저장하는 XML 파일 저장부, XML 파일을 해석하여 상기 컴포넌트를 구동시키는 어셈블리 컨트롤러 및 컴포넌트 교체 시 교체되는 컴포넌트의 이름과 교체되는 컴포넌트의 데이터 입력 포트의 이름을 등록 취소하고, 새롭게 배치되어 구동되는 컴포넌트의 이름과 새롭게 배치되어 구동되는 컴포넌트의 데이터 입력 포트의 이름을 등록하는 네이밍 서버를 포함한다.According to an aspect of the present invention, an SCS-based application system includes an XML file storage unit and an XML file storing an XML file representing driving information for selectively driving a component required for operating a specific application. An assembly controller for analyzing and driving the component and the name of the component to be replaced and the data input port of the component to be replaced when the component is replaced, and the name of the newly arranged and driven component and the data of the newly placed and driven component Contains a naming server that registers the name of the input port.
한편, 본 발명의 특징에 따른 어셈블리 컨트롤러에 의해 구동되는 둘 이상의 컴포넌트를 구비하는 에스시에이 기반 애플리케이션 시스템의 운용 중 컴포넌트 교체방법은, (a) 교체될 컴포넌트의 등록 취소 요청 신호를 생성하는 단계, (b) 교체될 컴포넌트의 이름과 교체될 컴포넌트의 데이터 입력 포트의 이름을 등록 취소하고, 시스템에서 삭제하는 단계, (c) 새로운 컴포넌트를 배치시켜 구동시키는 단계 및 (d) 새로운 컴포넌트의 이름과 새로운 컴포넌트의 데이터 입력 포트의 이름을 등록하고, 애플리케이션 서비스를 재개하는 단계를 포함한다.On the other hand, the component replacement method during the operation of the SSIS-based application system having two or more components driven by the assembly controller according to an aspect of the present invention, (a) generating a deregistration request signal of the component to be replaced, ( b) unregister the name of the component to be replaced and the name of the data input port of the component to be replaced, delete it from the system, (c) deploy and run the new component, and (d) name and new component of the new component. Registering the name of the data input port of the, and resuming the application service.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명 이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and like reference numerals designate like parts throughout the specification.
또한 어떤 부분이 어떤 구성 요소를 ”포함“한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. In addition, when a part is said to "include" a certain component, it means that it may further include other components, without excluding other components unless otherwise stated.
또한, 본 명세서에서 기재한 모듈(Module)이란 용어는 특정한 기능이나 동작을 처리하는 하나의 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현할 수 있다.In addition, the term module described herein refers to a unit for processing a specific function or operation, which may be implemented in hardware, software, or a combination of hardware and software.
도 1은 본 발명의 실시예에 따른 SCA 기반 애플리케이션 시스템을 도시한 블록도이다.1 is a block diagram illustrating an SCA-based application system according to an embodiment of the present invention.
도 1에 도시된 바와 같이, SCA 기반 애플리케이션 시스템(100)은 네이밍 서버(Naming Server, 110), 어셈블리 컨트롤러(Assembly Controller, 120), XML 파일 저장부(130), 컴포넌트 A(140) 및 컴포넌트 B(150)로 구성된다. As shown in FIG. 1, the SCA-based
참고로, 도 1에 도시한 SCA 기반 애플리케이션 시스템(100)은 컴포넌트 A(140)와 컴포넌트 B(150)의 두 개의 컴포넌트만을 포함하나, 이는 설명의 편의를 위한 것으로, 통상적인 SCA 기반 애플리케이션 시스템은 적어도 세 개 이상의 컴포넌트를 포함한다. SCA 기반 애플리케이션 시스템에 배치되는 컴포넌트(Component) 는 기능의 완전한 집합을 구현하는 소프트웨어 모듈이나 요소로서 정의되며, 보통 공유 라이브러리의 형태이지만 배치 환경에 따라 이진 코드(Binary Code), 바이트 코드(Byte Code), 혹은 스크립트 언어(Script Language)로 작성된 소스 파일 중 하나이다.For reference, the SCA-based
컴포넌트 A(140)와 컴포넌트 B(150), 즉 SCA 기반 애플리케이션 시스템(100) 내의 모든 컴포넌트는 어셈블리 컨트롤러(120)에 의해 구동됨에 따라 자신의 이름과 자신의 데이터 입력 포트의 이름을 네이밍 서버(110)에 등록한다. SCA 기반 애플리케이션 시스템(100)에 포함되는 하나의 컴포넌트가 다른 컴포넌트로 데이터를 전송할 때, 예컨대 컴포넌트 A(140)가 컴포넌트 B(150)로 데이터 전송 시, 컴포넌트 A(140)는 네이밍 서버(110)로 출력 데이터 목적지 질의 정보를 전송하고, 이에 따라 수신되는 컴포넌트 B(150)의 데이터 입력 포트 정보를 자신의 출력 데이터 목적지 정보(Object Reference)로 인식하여 데이터를 전달한다. SCA 기반 애플리케이션 시스템(100) 내의 모든 컴포넌트는 각각 데이터 입력 포트(141, 151)와 데이터 출력 포트(142, 152)를 구비하며, 자신의 데이터 입력 포트로 수신되는 데이터를 감시하고, 자신이 수신할 데이터가 아닌 데이터가 입력되면, 이를 수신하지 않음으로써 오류의 발생을 방지한다. 한편, 자신의 비정상적인 운용중단을 감지하거나 어셈블리 컨트롤러(120)로부터 컴포넌트 교체 요구를 수신한 컴포넌트는 네이밍 서버(110)에 등록된 자신의 이름과 자신의 데이터 입력포트의 이름의 등록을 취소한다.All components in
XML 파일 저장부(130)는 SCA 기반 애플리케이션 시스템(100) 내의 모든 컴포 넌트의 구동정보를 정의하는 XML 파일을 저장한다. 여기에서, 구동정보란 어셈블리 컨트롤러(120)에 임의의 애플리케이션이 배치되어 실행됨에 따라 해당 애플리케이션의 실행에 필요한 컴포넌트만을 선택적으로 구동시키기 위한 정보이다. XML 파일은 저장, 배치 및 논리적 구조에 제한요소를 주는 메커니즘(Mechanism)을 제공하는 것으로, 데이터 오브젝트(Object)의 분류와 이를 처리하는 컴퓨터 프로그램의 활동을 기술하는 확장성 작성 언어(XML: eXtensible Markup Language)로 구성되며, 엔터티(Entity)라는 단위로 저장된다. 엔터티(Entity)는 해석(Parse)되거나 또는 해석되지 않은 데이터로 구성되는데, 이중 해석(Parse)된 데이터는 글자(Letter)로 구성되어 일부는 글자 데이터를 형성하고, 일부는 코드(Markup)을 형성한다. The XML
어셈블리 컨트롤러(120)는 SCA 기반 애플리케이션 시스템(100) 내의 모든 컴포넌트, 즉 컴포넌트 A(140)와 컴포넌트 B(150)의 구동을 제어한다. 어셈블리 컨트롤러(120)는 각 컴포넌트의 구동을 시작시키거나 중지하도록 제어하고, 임의의 애플리케이션이 SCA 기반 애플리케이션 시스템(100)에 배치되어 구동되면 네이밍 서버(110)에 자신의 이름과 애플리케이션의 이름을 등록한다. 어셈블리 컨트롤러(120)는 XML 파일 저장부(130)에 저장된 XML 파일을 해석(Parse)하여 SCA 기반 애플리케이션 시스템(100) 내의 모든 컴포넌트 중 해당 애플리케이션의 실행에 필요한 컴포넌트를 선택적으로 구동시킨다. 어셈블리 컨트롤러(120)는 SCA 기반 애플리케이션 시스템(100) 관리자의 컴포넌트 교체요구를 수신하면, 교체할 컴포넌트로 컴포넌트 교체 요구신호를 전달하고, 해당 컴포넌트를 삭제한다. 또한, 임의의 컴포넌트로부터 비정상적인 운용중단의 발생을 통보받은 어셈블리 컨트롤러(120)는 해당 컴포넌트를 삭제한다.The
네이밍 서버(110)는 임의의 애플리케이션이 배치되어 구동됨에 따라 어셈블리 컨트롤러와 컴포넌트로부터 등록 요청신호를 수신하여 어셈블리 컨트롤러(120), 애플리케이션, 컴포넌트 및 각 컴포넌트의 데이터 입력 포트의 이름을 네이밍 트리(Naming Tree)에 등록한다. 네이밍 서버(110)는 SCA 기반 애플리케이션 시스템(100) 내 임의의 컴포넌트로부터 데이터를 전송할 다른 컴포넌트의 이름을 포함하는 출력 데이터 목적지 질의 정보를 수신하면, 네이밍 트리에 등록된 해당 컴포넌트의 데이터 입력 포트 정보를 전달한다. 한편, 네이밍 서버(110)는 비정상적인 운용중단이 발생하거나 컴포넌트 교체 요구를 수신한 컴포넌트로부터 등록취소 요청신호를 수신하면, 해당 컴포넌트의 이름과 데이터 입력 포트의 이름의 등록을 취소한다. The
도 2는 본 발명의 실시예에 따른 네이밍 서비스를 위해 네이밍 서버에 등록되는 네이밍 트리를 도시한 블록도이다. 2 is a block diagram illustrating a naming tree registered in a naming server for a naming service according to an embodiment of the present invention.
네이밍 서버(도 1의 110)는 임의의 애플리케이션 X가 SCA 기반 애플리케이션 시스템(도 1의 100)에 배치되어 구동됨에 따라 어셈블리 컨트롤러(도 1의 120)와 컴포넌트 A(도 1의 140) 및 컴포넌트 B(도 1의 150)로부터 등록 요청신호를 수신하면, 도 2로 도시한 바와 같은 네이밍 트리를 구성한다. 이때, 도시한 컴포넌트A_DataPort와 컴포넌트 B_DataPort는 각각 컴포넌트 A(도 1의 140)와 컴포넌트 B(150)의 데이터 입력 포트를 의미한다. The naming server (110 in FIG. 1) is an assembly controller (120 in FIG. 1) and component A (140 in FIG. 1) and component B as any application X is deployed and driven in an SCA-based application system (100 in FIG. 1). Upon receiving the registration request signal from 150 in FIG. 1, a naming tree as shown in FIG. 2 is constructed. In this case, the illustrated component A_DataPort and component B_DataPort mean data input ports of component A (140 of FIG. 1) and
네이밍 서버(도 1의 110)는 애플리케이션 X의 하단에 어셈블리 컨트롤러(도 1의 120)와 컴포넌트 A(도 1의 140) 및 컴포넌트 B(도 1의 150)의 이름을 등록하고, 컴포넌트 A(도 1의 140)의 이름 하단에 컴포넌트 A(도 1의 140)의 데이터 입력 포트(141)의 이름을, 컴포넌트 B(도 1의 150)의 이름 하단에 컴포넌트 B(도 1의 150)의 데이터 입력포트(151)의 이름을 등록한다.The naming server (110 in FIG. 1) registers the names of the assembly controller (120 in FIG. 1) and component A (140 in FIG. 1) and component B (150 in FIG. 1) at the bottom of application X, and component A (FIG. 1). Enter the name of the
여기에서, 어셈블리 컨트롤러(도 1의 120)와 컴포넌트 A(도 1의 140), 컴포넌트 B(도 1의 150), 데이터 입력 포트(141) 및 데이터 입력포트(151) 각각의 이름은 SCA 기반 애플리케이션 시스템(도 1의 100) 내에서 유일해야 하므로 전 세계적으로 유일한 고유 아이디(Universally Unique Identifier: UUID)를 기반으로 작성된다.Here, the names of the assembly controller (120 in FIG. 1) and component A (140 in FIG. 1), component B (150 in FIG. 1),
도 3은 본 발명의 실시예에 따른 컴포넌트를 도시한 블록도이다.3 is a block diagram illustrating components in accordance with an embodiment of the present invention.
도 3에 도시한 바와 같이, 컴포넌트 A(140)는 데이터 입력 포트(141), 데이터 출력 포트(142), 운용정보 입출력 포트(143), 제어부(144), 출력 데이터 목적지 정보 저장부(145), 운용상태 관리부(146), 데이터 저장부(147) 및 수신 데이터 모니터링부(148)을 포함한다.As shown in FIG. 3, the
데이터 입력 포트(141)와 데이터 출력 포트(142)는 다른 컴포넌트와의 상호 통신을 위한 것이고, 운용정보 입출력 포트(143)는 컴포넌트 A(140)의 운용정보를 송수신하기 위한 것이다. 운용정보 입출력 포트(143)는 애플리케이션 구동 시 어셈블리 컨트롤러(도 1의 120)로부터의 구동 명령 수신과 컴포넌트 A(140)의 이름과 데이터 입력 포트(141)의 이름을 포함하는 등록 요청신호를 네이밍 서버(도 1의 110)로 전달하기 위한 것이다. 또한, 운용정보 입출력 포트(143)는 어셈블리 컨트 롤러(도 1의 120)로부터 컴포넌트 A(140)의 교체요구를 수신하거나, 구동중인 컴포넌트 A(140)에 비정상적인 운용 중단의 발생 시, 운용상태 관리부(146)에서 생성되는 등록 취소 요청신호를 네이밍 서버(도 1의 110)로 전달하기 위한 것이다. The
출력 데이터 목적지 정보 저장부(145)는 제어부(144)에 의해 정의되는 데이터 입력 포트(141)와 데이터 출력 포트(142) 정보를 저장하고, 네이밍 서버(도 1의 110)으로부터 수신되는 출력 데이터 목적지 정보를 저장한다.The output data destination
운용상태 관리부(146)는 컴포넌트의 운용상태에 따라 네이밍 서버(도 1의 110)로 전달할 등록 요청 신호나 등록 취소 요청 신호를 생성한다. 운용상태 관리부(156)는 애플리케이션 구동시 어셈블리 컨트롤러(도 1의 120)로부터 구동정보를 수신한 제어부(144)에 의해 컴포넌트 A(140)가 구동을 시작하면, 등록 요청 신호를 생성한다. 운용상태 관리부(156)는 어셈블리 컨트롤러(도 1의 120)로부터 컴포넌트 A(140)의 교체요구를 수신하거나 구동중인 컴포넌트 A(140)의 비정상적인 운용 중단의 발생을 감지하면 등록 취소 요청 신호를 생성한다. 데이터 저장부(147)는 다른 컴포넌트와 입출력되는 데이터를 저장한다. The operation
제어부(144)는 컴포넌트 A(140)의 구동을 제어한다. 제어부(144)는 어셈블리 컨트롤러(도 1의 120)로부터 구동정보를 수신하면, 컴포넌트 A(140)를 구동시키고, 이 때 감지되는 컴포넌트 A(140)의 런타임 정보를 이용하여 데이터 입력 포트(141)와 데이터 출력 포트(142)를 정의한다. 제어부(144)는 운용상태 관리부(146)에서 등록 요청 신호가 생성되었음을 감지하면, 컴포넌트 A(140)의 이름과 데이터 입력 포트(141)의 이름을 포함하는 등록 요청 신호를 네이밍 서버(도 1의 110)로 전달하고, 운용상태 관리부(146)에서 등록 취소 요청 신호가 생성되면, 등록 취소 요청 신호를 네이밍 서버(도 1의 110)로 전달한다. The
제어부(144)는 다른 컴포넌트로의 데이터 전송이 필요하면, 데이터를 전송할 다른 컴포넌트의 이름이나 다른 컴포넌트의 데이터 입력 포트의 이름을 포함하는 출력 데이터 목적지 질의 정보를 네이밍 서버(도 1의 110)로 전달하고, 그에 따라 네이밍 서버(도 1의 110)로부터 수신되는 출력 데이터 목적지 정보를 출력 데이터 목적지 정보 저장부(145)에 저장한다.When data transmission to another component is required, the
제어부(144)는 데이터 저장부(147)에 저장된 데이터를 출력 데이터 목적지 정보 저장부(145)에 저장된 정보에 따라 데이터 출력 포트(142)를 통해 정해진 출력 데이터 목적지 정보로 전달하고, 수신 데이터 모니터링부(148)의 모니터링 결과에 따라 데이터 입력 포트(141)로 입력되는 데이터의 저장 여부를 결정하여 선별적으로 데이터 저장부(147)에 저장한다. The
수신 데이터 모니터링부(148)는 데이터 입력 포트(141)로 수신되는 데이터를 모니터링하고, 그 결과에 따른 제어부의 제어에 따라 데이터를 데이터 저장부(147)로 전달하거나 또는 삭제한다. 여기에서, 수신 데이터 모니터링부(148)에 의한 데이터 모니터링은 컴포넌트 A(140)가 수신할 데이터가 아닌 다른 목적지 주소로 전달될 데이터를 수신하였는지의 여부를 판별하기 위한 것으로, 이를 위한 본 발명의 실시예에 따른 데이터 타입을 도 4로 나타내었다. The reception
도 4는 본 발명의 실시예에 따른 데이터 타입을 나타낸 것이다.4 illustrates a data type according to an embodiment of the present invention.
도 4에 도시한 데이터 타입은 SCA 기반 애플리케이션 시스템(도 1의 100)내 의 컴포넌트 상호간에 오류 없는, 정확한 데이터 송수신을 위한 것으로, 스트링(String) 타입의 에스알씨(Src) 컴포넌트 구분자와 스트링 타입의 디에스티(Dst) 컴포넌트 구분자, 스트링 타입의 아이디(Id) 및 애니(Any) 타입의 밸류(Value) 변수를 포함한다. 여기에서, 에스알씨(Src) 컴포넌트 구분자와 스트링 타입의 디에스티(Dst) 컴포넌트 구분자는 각각 데이터를 전송하는 컴포넌트와 데이터를 수신하는 컴포넌트를 나타낸다. 또한, 아이디(Id)는 밸류(Value) 정보가 어떤 종류의 값인지를 구분하기 위한 구분자이며, 밸류(Value)는 컴포넌트 상호간에 실제 전송되는 데이터이다.The data type shown in FIG. 4 is for error-free and accurate data transmission and reception between components in an SCA-based application system (100 in FIG. 1), and includes an Src component identifier of a string type and a string type. It includes a Dst component identifier, an ID (Id) of a string type, and a Value variable of an Any type. Here, the Src component identifier and the string type DST component identifier indicate a component for transmitting data and a component for receiving data, respectively. In addition, ID (Id) is a delimiter for identifying what kind of value the value (Value) information, the value (Value) is the data actually transmitted between the components.
이러한 데이터 타입을 이용하여, 수신 데이터 모니터링부(도 3의 148)는 데이터 입력 포트(도 3의 141)을 통해 컴포넌트 A(도 3의 140)로 입력되는 데이터의 디에스티(Dst)를 모니터링함으로써, 컴포넌트 A(도 3의 140)이 수신할 데이터가 수신되었는지의 여부를 판별할 수 있다.Using this data type, the reception
도 5는 본 발명의 실시예에 따른 애플리케이션 서비스 시작 과정을 나타낸 순서도이다.5 is a flowchart illustrating a process of starting an application service according to an embodiment of the present invention.
SCA 기반 애플리케이션 시스템(도 1의 100)에 임의의 애플리케이션 X가 배치되어 구동되면, 어셈블리 컨트롤러(도 1의 120)는 XML 파일 저장부(도 1의 130)에 저장된 XML 파일을 해석(Parse)하여(S301), 애플리케이션 X의 실행에 필요한 컴포넌트 A(도 1의 140)와 컴포넌트 B(도 1의 150)를 구동시킨다(S302). 어셈블리 컨트롤러(도 1의 120)로부터 구동정보를 수신한 컴포넌트 A(도 1의 140)와 컴포넌트 B(도 1의 150)는 각각 자신의 이름과 자신의 데이터 입력 포트의 이름을 네이밍 서 버(도 1의 110)에 등록하기 위해 등록 요청 신호를 생성하여 네이밍 서버(도 1의 110)로 전달한다. 네이밍 서버(도 1의 110)는 이를 수신하여, 컴포넌트 A(도 1의 140)와 컴포넌트 B(도 1의 150) 각각의 이름과 데이터 입력 포트의 이름을 등록한다(S303). 컴포넌트 A(도 1의 140)와 컴포넌트 B(도 1의 150) 각각은 컴포넌트 상호간 데이터 송수신을 위해 데이터를 전송할 다른 컴포넌트의 이름이나 다른 컴포넌트의 데이터 입력 포트의 이름을 포함하는 출력 데이터 목적지 질의 정보를 네이밍 서버(도 1의 110)로 전달하고, 그에 따라 네이밍 서버(도 1의 110)로부터 출력 데이터 목적지 정보를 수신한다. 컴포넌트 A(도 1의 140)와 컴포넌트 B(도 1의 150)는 각각 수신한 출력 데이터 목적지 정보에 따라 데이터를 전달함으로써 애플리케이션 X 서비스가 시작된다(S304).When an arbitrary application X is placed and driven in the SCA-based application system (100 in FIG. 1), the assembly controller (120 in FIG. 1) parses the XML file stored in the XML file storage unit (130 in FIG. 1). In operation S301, component A (140 in FIG. 1) and component B (150 in FIG. 1) required for the execution of the application X are driven (S302). Component A (140 of FIG. 1) and Component B (150 of FIG. 1), which have received the driving information from the assembly controller (120 of FIG. 1), have their own name and the name of their data input port, respectively. In order to register at 110 of 1, a registration request signal is generated and transmitted to the naming server (110 of FIG. 1). The naming server 110 (110 of FIG. 1) receives this and registers a name of each of component A (140 of FIG. 1) and component B (150 of FIG. 1) and a name of a data input port (S303). Each of component A (140 in FIG. 1) and component B (150 in FIG. 1) outputs output data destination query information including the name of another component or the name of a data input port of another component to transmit data to and from each other. It forwards to the naming server (110 in FIG. 1) and receives output data destination information from the naming server (110 in FIG. 1) accordingly. The component X (140 of FIG. 1) and the component B (150 of FIG. 1) start the application X service by delivering data according to the received output data destination information, respectively (S304).
도 6은 본 발명의 실시예에 따라 교체되는 컴포넌트와 관련된 서비스 중지 과정을 나타낸 순서도이다.6 is a flowchart illustrating a service stopping process associated with a component to be replaced according to an embodiment of the present invention.
컴포넌트 A(도 1의 140)가 교체되는 경우를 예로써 설명한다.The case where component A (140 in FIG. 1) is replaced will be described as an example.
컴포넌트 A(도 1의 140)의 비정상적인 운용 중단이 발생하거나 어셈블리 컨트롤러(도 1의 120)로부터 SCA 기반 애플리케이션 시스템(도 1의 100) 관리자에 의한 교체요구를 수신하면(S401), 운용상태 감지부(도 3의 146)는 등록 취소 요청 신호를 생성하고, 이를 감지한 제어부(도 3의 144)는 등록 취소 요청 신호를 네이밍 서버(도 1의 110)로 전달한다. 네이밍 서버(도 1의 110)는 컴포넌트 A(도 1의 140)로부터 등록 취소 요청 신호를 수신함에 따라 컴포넌트 A(도 1의 140)의 이름과 컴포넌트 A(도 1의 140)의 데이터 입력 포트(도 3의 141)의 이름을 등록 취소한 다(S402). 네이밍 서버(도 1의 110)에서 등록 취소된 컴포넌트 A(도 1의 140)는 SCA 기반 애플리케이션 시스템(도 1의 100)의 메모리에서 삭제된다(S403).When abnormal operation interruption of the component A (140 of FIG. 1) occurs or a replacement request by the SCA-based application system (100 of FIG. 1) administrator is received from the assembly controller (120 of FIG. 1) (S401), the operation
도 7은 본 발명의 실시예에 따라 컴포넌트 교체 이후 애플리케이션 서비스 재시작 과정을 나타낸 순서도이다.7 is a flowchart illustrating a process of restarting an application service after component replacement according to an embodiment of the present invention.
컴포넌트 A(도 1의 140)가 교체되어 배치되면, 어셈블리 컨트롤러(도 1의 120)는 XML 파일 저장부(도 1의 130)에 저장된 컴포넌트 A(도 1의 140)의 XML 파일을 해석(Parse)하여(S501), 컴포넌트 A(도 1의 140)을 구동시킨다(S502). 컴포넌트 A(도 1의 140)는 등록 요청 신호를 네이밍 서버(도 1의 110)로 전달하고, 이를 수신한 네이밍 서버(도 1의 110)는 컴포넌트 A(도 1의 140)의 이름과 컴포넌트 A(도 1의 140)의 데이터 입력 포트(도 1의 141)의 이름을 등록한다(S503).When component A (140 in FIG. 1) is replaced and disposed, the assembly controller (120 in FIG. 1) parses an XML file of component A (140 in FIG. 1) stored in an XML file storage unit (130 in FIG. 1). In step S501, the component A (140 in FIG. 1) is driven (S502). Component A (140 in FIG. 1) transmits a registration request signal to the naming server (110 in FIG. 1), and the naming server (110 in FIG. 1) that receives it receives the name of component A (140 in FIG. 1) and component A. The name of the data input port (141 in FIG. 1) in (140 in FIG. 1) is registered (S503).
컴포넌트 A(도 1의 140)와 컴포넌트 B(도 1의 150) 각각은 컴포넌트 상호간 데이터 송수신을 위해 데이터를 전송할 다른 컴포넌트의 이름이나 다른 컴포넌트의 데이터 입력 포트의 이름을 포함하는 출력 데이터 목적지 질의 정보를 네이밍 서버(도 1의 110)로 전달하고, 그에 따라 네이밍 서버(도 1의 110)로부터 출력 데이터 목적지 정보를 수신한다. 컴포넌트 A(도 1의 140)와 컴포넌트 B(도 1의 150)는 각각 수신한 출력 데이터 목적지 정보에 따라 데이터를 전달함으로써 애플리케이션 X 서비스가 재개된다(S504). Each of component A (140 in FIG. 1) and component B (150 in FIG. 1) outputs output data destination query information including the name of another component or the name of a data input port of another component to transmit data to and from each other. It forwards to the naming server (110 in FIG. 1) and receives output data destination information from the naming server (110 in FIG. 1) accordingly. The component X (140 of FIG. 1) and the component B (150 of FIG. 1) respectively resume application X services by delivering data according to the received output data destination information (S504).
이상과 같이 본 발명은, 네이밍 서버(도 1의 110)의 네이밍 서비스와 새로운 데이터 타입의 이용을 통해 컴포넌트의 비정상적인 운용중단의 발생 또는 SCA 기반 애플리케이션 시스템(도 1의 100) 관리자의 요구에 따른 컴포넌트 교체 시 잘못된 목적지 정보로의 데이터 전달을 방지하는 운용 중 컴포넌트 교체 가능한 SCA 기반 애플리케이션 시스템을 제공할 수 있다.As described above, the present invention provides a component according to a request of an administrator of an SCA-based application system (100 of FIG. 1) or occurrence of abnormal downtime of a component through the use of a naming service and a new data type of a naming server (110 of FIG. 1). It is possible to provide an SCA-based application system in which components can be replaced during operation, which prevents data from being transferred to wrong destination information during replacement.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.The embodiments of the present invention described above are not implemented only through the apparatus and the method, but may be implemented through a program for realizing a function corresponding to the configuration of the embodiment of the present invention or a recording medium on which the program is recorded. Implementation may be easily implemented by those skilled in the art from the description of the above-described embodiments.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements of those skilled in the art using the basic concepts of the present invention defined in the following claims are also provided. It belongs to the scope of rights.
전술한 구성에 의하여, 컴포넌트의 비정상적인 운용중단의 발생 또는 SCA 기반 애플리케이션 시스템 관리자의 요구에 따른 컴포넌트 교체로 인한 잘못된 목적지 정보로의 데이터 전달과 이에 기인한 애플리케이션 전체 시스템의 다운을 방지할 수 있다.By the above-described configuration, it is possible to prevent data from being delivered to wrong destination information due to abnormal operation interruption of a component or replacement of a component according to a request of an SCA-based application system administrator, and downtime of the entire application system.
이로 인해, 기지국과 같이 이동통신 서비스를 위하여 중단 없이 작동하는 장치에 SCA 기반 애플리케이션 시스템의 적용이 가능해 짐은 물론, 운용 중에도 애플리 케이션 컴포넌트의 자유로운 교체가 가능하다.As a result, the SCA-based application system can be applied to devices that operate uninterruptedly for mobile communication services such as base stations, and the free replacement of application components during operation.
Claims (15)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050119908 | 2005-12-08 | ||
KR20050119908 | 2005-12-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070061084A true KR20070061084A (en) | 2007-06-13 |
KR100858156B1 KR100858156B1 (en) | 2008-09-10 |
Family
ID=38357019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060043703A KR100858156B1 (en) | 2005-12-08 | 2006-05-16 | SCA Based Application System and the Method of Exchanging Component in Operation thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100858156B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008069428A1 (en) * | 2006-12-08 | 2008-06-12 | Electronics And Telecommunications Research Institute | System and method for controlling priority in sca multi-component and multi-port environment |
WO2009078542A1 (en) * | 2007-12-17 | 2009-06-25 | Electronics And Telecommunications Research Institute | Naming service system and method of sca-based application component |
KR100927232B1 (en) * | 2007-12-18 | 2009-11-16 | 한국전자통신연구원 | How to set port of application system |
CN111596898A (en) * | 2020-05-08 | 2020-08-28 | 湖南智领通信科技有限公司 | SCA subassembly and server based on CORBA subassembly |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100585015B1 (en) * | 2003-10-30 | 2006-05-29 | 삼성에스디에스 주식회사 | Storage Recorded with Program for appending/replacing a New Componet in ERP |
KR100590730B1 (en) * | 2003-12-09 | 2006-06-15 | 한국전자통신연구원 | file system based on SCA system and method for arranging and managing software component file thereof |
KR100519916B1 (en) * | 2003-12-26 | 2005-10-10 | 한국전자통신연구원 | file parsing device, and parsing and storing method thereof |
-
2006
- 2006-05-16 KR KR1020060043703A patent/KR100858156B1/en not_active IP Right Cessation
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008069428A1 (en) * | 2006-12-08 | 2008-06-12 | Electronics And Telecommunications Research Institute | System and method for controlling priority in sca multi-component and multi-port environment |
US8650573B2 (en) | 2006-12-08 | 2014-02-11 | Electronics And Telecommunications Research Institute | System and method for controlling priority in SCA multi-component and multi-port environment |
WO2009078542A1 (en) * | 2007-12-17 | 2009-06-25 | Electronics And Telecommunications Research Institute | Naming service system and method of sca-based application component |
KR100918849B1 (en) * | 2007-12-17 | 2009-09-28 | 한국전자통신연구원 | System and method for naming service of SCA based application component |
KR100927232B1 (en) * | 2007-12-18 | 2009-11-16 | 한국전자통신연구원 | How to set port of application system |
US8219717B2 (en) | 2007-12-18 | 2012-07-10 | Electronics And Telecommunications Research Institute | Port setting method of application system |
CN111596898A (en) * | 2020-05-08 | 2020-08-28 | 湖南智领通信科技有限公司 | SCA subassembly and server based on CORBA subassembly |
CN111596898B (en) * | 2020-05-08 | 2024-01-30 | 湖南智领通信科技有限公司 | SCA component based on CORBA component and server |
Also Published As
Publication number | Publication date |
---|---|
KR100858156B1 (en) | 2008-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8584081B2 (en) | Server side application integration framework | |
US8347318B2 (en) | Application component communication apparatus of SCA-based system and method thereof | |
US7908580B2 (en) | Connecting an integrated development environment with an application instance | |
US7752598B2 (en) | Generating executable objects implementing methods for an information model | |
US7581142B2 (en) | Method and system usable in sensor networks for handling memory faults | |
US8010973B2 (en) | Class loader for managing a network | |
US20070240171A1 (en) | Device, Method, And Computer Program Product For Accessing A Non-Native Application Executing In Virtual Machine Environment | |
US20080127055A1 (en) | Application proxy | |
KR100845234B1 (en) | Apparatus and method for parsing domain profile in software communication architecture | |
US20060085690A1 (en) | Method to chain events in a system event log | |
US6594709B1 (en) | Methods and apparatus for transferring data using a device driver | |
KR100858156B1 (en) | SCA Based Application System and the Method of Exchanging Component in Operation thereof | |
US7237222B1 (en) | Protocol for controlling an execution process on a destination computer from a source computer | |
US20150052321A1 (en) | Minimally disruptive virtual machine snapshots | |
CN100498697C (en) | Applied-programm interface controlling method and its controlling functional module | |
KR101024249B1 (en) | Real-time data replication system | |
US8880950B2 (en) | Method, apparatus or software for processing exceptions produced by an application program | |
CN101119320A (en) | Operation control method of distributed router system | |
US7849369B2 (en) | Failure resistant multiple computer system and method | |
KR100808662B1 (en) | SCA Based Application System and the Method of Exchanging Component in Operation thereof | |
CN104426880A (en) | Network-based centralized automatic file collection and distribution device | |
Jain et al. | Software architecture of the NEXRAD open systems radar product generator (ORPG) | |
CN105162633B (en) | A kind of method and apparatus managing network in the multiple operating system based on container | |
Avarias et al. | Introducing high performance distributed logging service for acs | |
US20110125932A1 (en) | Port setting method of application system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120831 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20130829 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140827 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |