KR20180138183A - M2m 시스템에서 요청 메시지를 처리하는 방법 및 그 장치 - Google Patents

M2m 시스템에서 요청 메시지를 처리하는 방법 및 그 장치 Download PDF

Info

Publication number
KR20180138183A
KR20180138183A KR1020180070116A KR20180070116A KR20180138183A KR 20180138183 A KR20180138183 A KR 20180138183A KR 1020180070116 A KR1020180070116 A KR 1020180070116A KR 20180070116 A KR20180070116 A KR 20180070116A KR 20180138183 A KR20180138183 A KR 20180138183A
Authority
KR
South Korea
Prior art keywords
response
mode
request message
blocking
parameter
Prior art date
Application number
KR1020180070116A
Other languages
English (en)
Other versions
KR102077582B1 (ko
Inventor
김상언
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to PCT/KR2018/006944 priority Critical patent/WO2018236137A1/ko
Priority to US16/625,635 priority patent/US11290860B2/en
Publication of KR20180138183A publication Critical patent/KR20180138183A/ko
Application granted granted Critical
Publication of KR102077582B1 publication Critical patent/KR102077582B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes
    • H04L51/12
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 실시예는 M2M(Machine to Machine Communication) 기술에 관한 것으로, 발신자가 보낸 요청 메시지를 수신자가 처리하기 위한 방법 및 그 장치에 관한 것이다. 일 실시예는 M2M(Machine to Machine communication) 장치가 요청 메시지를 처리하는 방법에 있어서, 응답 유형 파라미터 정보를 포함하는 요청 메시지를 타 M2M 장치로부터 수신하는 단계와 응답 유형 파라미터 정보를 확인하고, 응답 유형 파라미터 정보에 따라 응답 모드를 결정하는 단계 및 결정된 응답 모드에 따라 구분되어 설정되는 응답 상태 코드를 포함하는 응답 메시지를 전송하는 단계를 포함하는 방법 및 장치를 제공한다.

Description

M2M 시스템에서 요청 메시지를 처리하는 방법 및 그 장치{Methods for processing a request message in M2M system and Apparatuses thereof}
본 실시예는 M2M(Machine to Machine Communication) 기술에 관한 것으로, 발신자가 보낸 요청 메시지를 수신자가 처리하기 위한 방법 및 그 장치에 관한 것이다.
사물 통신(M2M, "Machine to machine communication" 또는 MTC, "Machine type communication" 또는 스마트 디바이스 통신, "Smart Device communication" 또는 "Machine oriented communication" 또는 사물 인터넷, "Internet of Things")은 사람이 통신 과정에 개입하지 않고 통신이 이루어지는 방식의 모든 통신 방식을 지칭한다.
사물통신은 통상적으로 사람이 직접적으로 통신과 응용 제어를 수행하지 않기 때문에, 사물 간에 메시지를 교환하기 위해서 송수신 방법과 절차와 필요하다. 또한, M2M 장치 간의 원활한 메시지 교환을 위한 프로토콜이 필요하다.
특히, IoT 기기의 대중화에 따라서 다수의 사물 통신 장치가 가정 및 직장 내에서 사용되고 있으며, 동일 또는 유사한 기능을 수행하는 사물 통신 장치가 일정 목적을 위해서 다수 전개되는 상황이 존재한다.
이러한 상황에서 다수의 사물 통신 장치는 서로 다른 기능과 메시지 처리 능력이 설정될 수 있으며, 이러한 차이점은 사물통신에서 장애가 될 수 있다. 예를 들어, 특정 M2M 장치가 다른 메시지 처리 능력을 가지는 M2M 장치로 특정 방식의 메시지 처리를 요청하는 경우에 요청 메시지를 수신한 M2M 장치는 해당 방식에 대한 처리 절차가 설정되지 않을 수 있다.
따라서, M2M 시스템을 구성하는 M2M 장치 간에 원활한 메시지 처리를 위한 통일된 프로토콜이 요구되며, 서로 다른 처리 기능으로 설정된 M2M 장치 간에도 오류의 발생을 방지하면서 메시지가 처리되도록 하는 구체적인 기술이 요구되고 있는 실정이다.
전술한 배경에서 안출된 일 실시예는 M2M 장치가 다른 M2M 장치로부터 요청 메시지를 수신한 경우, 해당 요청 메시지를 처리하기 위한 모드에 대한 정보를 다른 M2M 장치로 지시하는 구체적인 방법 및 장치를 제안하고자 한다.
또한, 일 실시예는 플렉스 블록킹 응답 유형 파라미터로 설정된 요청 메시지에 대해서 M2M 장치가 선택한 응답 모드에 대한 정보를 추가적인 시스템 부하없이 발원자에게 전달하여 요청 메시지에 대한 응답 메시지가 원활하게 전달되도록 하기 위한 구체적인 방법 및 장치를 제안하고자 한다.
전술한 과제를 해결하기 위한 일 실시예는 M2M(Machine to Machine communication) 장치가 요청 메시지를 처리하는 방법에 있어서, 응답 유형 파라미터 정보를 포함하는 요청 메시지를 타 M2M 장치로부터 수신하는 단계와 응답 유형 파라미터 정보를 확인하고, 응답 유형 파라미터 정보에 따라 응답 모드를 결정하는 단계 및 결정된 응답 모드에 따라 구분되어 설정되는 응답 상태 코드를 포함하는 응답 메시지를 전송하는 단계를 포함하는 방법을 제공한다.
또한, 일 실시예는 요청 메시지를 처리하는 M2M(Machine to Machine communication) 장치에 있어서, 응답 유형 파라미터 정보를 포함하는 요청 메시지를 타 M2M 장치로부터 수신하는 수신부와 응답 유형 파라미터 정보를 확인하고, 응답 유형 파라미터 정보에 따라 응답 모드를 결정하는 제어부 및 결정된 응답 모드에 따라 구분되어 설정되는 응답 상태 코드를 포함하는 응답 메시지를 전송하는 송신부를 포함하는 M2M 장치를 제공한다.
본 개시는 M2M 장치가 다른 M2M 장치로부터 요청 메시지를 수신한 경우, 해당 요청 메시지를 처리하기 위한 모드에 대한 정보를 다른 M2M 장치로 지시하여 서로 다른 응답 모드를 지원하는 M2M 장치 간에도 원활하게 데이터 송수신이 진행되도록 하는 효과를 제공한다.
도 1은 M2M 시스템을 상위 레벨의 기능적 관점에서 도시한 도면이다.
도 2는 일 실시예에 따른 M2M 시스템 구성도를 보다 구체적으로 도시한 도면이다.
도 3은 M2M 시스템에서 요청 메시지 전송과 이에 따른 응답 정보를 수신하는 절차를 예시적으로 도시한 도면이다.
도 4는 일 실시예에 따른 공통 서비스 개체의 기능적 구조를 도시한 도면이다.
도 5 내지 도 9는 일 실시예에 따른 요청 메시지의 응답 유형 파라미터가 블록킹 모드로 설정된 경우에 요청 파라미터 별 요청 메시지 처리 동작을 설명하기 위한 도면이다.
도 10은 일 실시예에 따른 요청 메시지의 응답 유형 파라미터가 동기식 넌블록킹 모드로 설정된 경우에 요청 메시지를 처리하는 방법을 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 요청 메시지의 응답 유형 파라미터가 비동기식 넌블록킹 모드로 설정된 경우에 요청 메시지를 처리하는 방법을 설명하기 위한 도면이다. .
도 12는 일 실시예에 따른 요청 메시지의 응답 유형 파라미터가 플렉스 블록킹 모드로 설정된 경우에 요청 메시지를 처리함에 있어서 발생되는 문제점을 설명하기 위한 도면이다.
도 13은 일 실시예에 따른 M2M 장치가 요청 메시지를 처리하는 동작을 설명하기 위한 도면이다.
도 14는 일 실시예에 따른 응답 상태 코드를 예시적으로 나타낸 도면이다.
도 15는 일 실시예에 따른 M2M 장치가 응답 모드를 결정하는 동작을 설명하기 위한 도면이다.
도 16은 일 실시예에 따른 응답 모드 결정에 따른 응답 모드 별 요청 메시지 처리 절차를 설명하기 위한 도면이다.
도 17은 일 실시예에 따른 M2M 장치의 구조를 도시한 도면이다.
이하, 본 발명의 일부 실시 예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조 부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
본 발명의 실시예들은 사물 통신을 중심으로 설명한다. 사물 통신은 M2M(Machine to Machine communication), MTC(Machine Type Communication), IoT(Internet of Things), 스마트 장치 통신(Smart Device Communication, SDC), 또는 사물 지향 통신(Machine Oriented Communication) 등으로 다양하게 불려질 수 있다. 최근 oneM2M에서 사물통신과 관련된 많은 기술적 사항을 제시하고 있다. 사물 통신은 사람이 통신 과정에 개입하지 않고 통신이 이루어지는 다양한 통신을 지칭한다. 사물 통신은 에너지(energy) 분야, 엔터프라이즈(enterprise) 분야, 헬스케어(Healthcare) 분야, 공공 서비스(Public Services) 분야, 주거(Residential) 분야, 소매(Retail) 분야, 운송(Transportation)분야, 그리고 기타 분야 등으로 나뉘어진다. 본 발명은 상기 분야를 포함하며, 그 외의 분야에도 적용 가능하다.
도 1은 일 실시예에 따른 M2M 시스템을 상위 레벨의 기능적 관점에서 도시한 도면이다.
애플리케이션 개체(Application Entity, AE)(110)는 종단간(end-to-end) M2M 솔루션을 위한 응용 서비스 로직을 제공한다. 일 예로 차량 등의 집단적인 추적 애플리케이션(fleet tracking application), 원격 혈당 감시 애플리케이션(remote blood sugar monitoring application), 또는 원격 전력 검침과 제어 애플리케이션(remote power metering and controlling application) 등이 될 수 있다.
공통 서비스 개체(Common Services Entity, CSE)(120)는 에너지(energy) 분야, 엔터프라이즈(enterprise) 분야, 헬스케어(Healthcare) 분야, 공공 서비스(Public Services) 분야, 주거(Residential) 분야, 소매(Retail) 분야, 운송(Transportation)분야, 그리고 기타 분야 등에서 공통적으로 필요한 집합적인 서비스 기능이다.
이러한 서비스 기능은 참조점(Reference Points) Mca, Mcc를 통해 다른 기능으로 드러나며, 참조점 Mcn를 이용하여 기반 네트워크 서비스를 이용한다. 공통 서비스 개체의 일 예로는 데이터 관리(Data Management), 디바이스 관리(Device Management), M2M 구독 관리(M2M Subscription Management), 위치 서비스(Location Service) 등이 될 수 있다. CSE에 의해 제공되는 서브기능(subfunction)은 논리적으로 CSF(Common service function)으로 이해될 수 있다. oneM2M 노드의 CSE내에 CSF 중 일부는 필수적(mandatory)이 되며 일부는 선택적(optional)이 될 수 있다. 마찬가지로 CSF 내의 서브기능들 역시 필수적 또는 선택적이 될 수 있다.
기반 네트워크 서비스 기능(Underlying Network Services Function, NSF)(130)은 공통 서비스 개체에게 서비스를 제공한다. 서비스의 예로는 디바이스 관리, 위치 서비스(location services)와 디바이스 트리거링(device triggering)을 포함한다.
참조점(Reference Points)은 공통 서비스 개체(CSE)에서 지원되는 것으로 Mca 참조점은 애플리케이션 개체와 공통 서비스 개체 간의 사물통신을 제공하기 위한 참조점이다. Mcc 참조점은 두 공통 서비스 개체 간의 통신 사물통신을 제공하기 위한 참조점이다. Mcn 참조점은 공통 서비스 개체와 하나의 네트워크 서비스 개체간의 사물통신을 제공하기 위한 참조점이다.
보다 상세히, Mca 참조점은 하나의 애플리케이션 개체(AE)가 공통 서비스 개체에 의해 지원되는 서비스를 사용할 수 있도록 한다. Mca 참조점을 통해 제공되는 서비스들은 공통 서비스 개체가 제공하는 기능에 의존적이며, 애플리케이션 개체와 공통 서비스 개체는 동일한 물리적 개체에 존재하거나 다른 물리적 개체에 따로 존재할 수 있다. Mcc 참조점은 필요한 기능을 제공하는 다른 공통 서비스 개체의 서비스를 사용하고자 하는 공통 서비스 개체에게 그러한 사용을 가능하게 한다. Mcc 참조점을 통해 제공되는 서비스들은 공통 서비스 개체가 제공하는 기능에 의존적이다. Mcc 참조점은 서로 다른 M2M 노드 간에 지원될 수 있다. Mcn 참조점은 필요한 기능을 제공하는 기반 네트워크의 서비스 개체를 사용하고자 하는 공통 서비스 개체에게 그러한 사용을 가능하게 하며, 이는 전송과 연결 이외의 서비스를 제공한다. Mcn 참조점의 인스턴스(instance)는 기반 네트워크에서 제공되는 서비스에 의존적으로 구현된다. 두 개의 물리적 M2M 노드 간의 정보 교환은 기본 서비스를 제공하는 기반 네트워크의 전송(transport) 및 연결(connectivity) 서비스를 사용할 수 있다.
본 명세서에서는 공통 서비스 개체를 CSE로 기재할 수 있으며, 네트워크 서비스 개체를 NSE (Network Service Entity)로 기재할 수 있다. 또한, 본 명세서에서의 M2M 장치는 CSE 또는 AE를 의미하거나, CSE 또는 AE를 포함하는 장치를 의미하며, M2M 시스템을 구성하는 디바이스 또는 단말을 의미한다.
도 2는 일 실시예에 따른 M2M 시스템 구성도를 보다 구체적으로 도시한 도면이다.
도 2를 참조하면, 기반노드(Infrastructure Node, 250)는 M2M 통신을 제공하는데 필수적인 서버 기능을 수행한다. 기반노드(250)는 기반노드 응용개체(AE, 252)와 기반노드 공통서비스개체(CSE, 254)로 구성된다. 기반노드 공통서비스 개체(254)는 다양한 자원을 이용하여 구성된다. 252와 254는 Mca 참조점을 통하여 구분하고, 사물통신에 필요한 메시지, 특히 스케줄러 자원의 생성 (create), 삭제 (delete), 갱신 (update), 조회 (retrieve), 통지 (notify)하기 위한 요청메시지와 응답메시지의 구성과 처리에 사용한다.
중계노드(200)는 응용서비스노드(220)와 기반노드(250)의 M2M 통신 또는 Internet of Things, 사물통신 기능을 중계한다. 중계노드(200)는 중계노드 응용개체(202)와 중계노드 공통서비스개체(204)로 구성된다. 중계노드 공통서비스개체 (204)는 다양한 자원을 이용하여 구성된다. 202와 204는 Mca 참조점을 통하여 구분하며, 254와 204는 Mcc참조점을 이용하여 구분하고, 사물통신에 필요한 메시지, 특히 스케줄러 자원의 생성 (create), 삭제 (delete), 갱신 (update), 조회(retrieve), 통지 (notify)하기 위한 요청메시지와 응답메시지의 구성과 처리에 사용한다.
응용서비스노드(210)는 응용개체(212)와 중계노드 공통서비스개체(214)로 구성할 수 있다. 응용개체(212)는 기기의 목적상 요구되는 응용 기능을 처리한다. 응용서비스노드(210)의 공통서비스개체(214)는 다양한 자원을 이용하여 구성한다. 212와 214는 Mca 참조점을 통하여 구분하며, 214와 254는 Mcc참조점을 이용하여 구분하고, 사물통신에 필요한 메시지, 특히 스케줄러 자원의 생성(create), 삭제 (delete), 갱신 (update), 조회 (retrieve), 통지 (notify)하기 위한 요청메시지와 응답 메시지의 구성과 처리에 사용한다. 한편, 응용서비스노드(220)는 중계노드(200)를 통하여 기반노드(250)와 사물통신 기능을 수행할 수도 있다. 210과 220의 차이점은 노드를 구성하는 통신 인터페이스가 다른 것이 특징이다. 예를 들어, 220은 블루투스, ZigBee, Zwave, WiFi등의 초근거리 통신이 가능한 인터페이스를 이용하여 200을 통하여 100과 통신한다. 이에 반해, 210은 3G, LTE, 5G, Ethernet, Gigabit Ethernet, ADSL등의 통신 인터페이스를 이용하여 250과 통신한다.
응용전용노드(230, 240)는 공통서비스개체를 가지지 않고, 응용개체(242)만을 가지고 사물통신을 하는 경우를 대상으로 한다. 230은 3G, LTE, Ethernet, Gigabit Ethernet, ADSL등의 통신 인터페이스를 이용하여 250과 통신하는 경우이고, 240은 블루투스, ZigBee, Zwave, WiFi등의 초근거리 통신이 가능한 인터페이스를 이용하여 200을 통하여 250과 통신한다.
도 2에서 설명한 바와 같이, M2M 시스템은 기반노드, 중계노드, 응용 서비스 노드 및 응용전용 노드 중 적어도 하나 이상의 노드로 구성될 수 있으며, 각 노드는 CSE 또는 AE를 포함하여 구성될 수 있다. CSE와 AE는 각각의 참조점을 통해서 타 CSE 또는 AE와 통신을 수행할 수 있다.
도 3을 참조하면, 발신자(Originator, 300)는 요청 메시지를 수신자(Receiver, 310)로 전송한다(S320). 발신자(300)와 수신자(310)는 각각 M2M 장치일 수 있으며, 전술한 바와 같이 CSE 또는 AE일 수 있다. 또한, 발신자(300)와 수신자(310)는 CSE 또는 AE를 포함하는 노드 또는 서버 또는 장치일 수 있다.
요청 메시지는 하나 이상의 파라미터를 포함할 수 있다. 예를 들어, 요청 메시지에는 필수적인 파라미터와 선택적인 파라미터가 포함될 수 있다. 예를 들어, 송신 (From) 측 파라미터, 수신측 (To) 파라미터, 요청 식별 정보 (Request Identifier) 파라미터 및 동작 (Operation) 파라미터는 필수적인 파라미터로 포함된다. From 파라미터는 메시지를 전송하는 발원자에 대한 정보를 포함하고, To 파라미터는 메시지를 수신하는 수신자에 대한 정보를 포함한다. Request Identifier 파라미터는 해당 요청 메시지를 식별하기 위한 유일한 식별 정보를 포함한다. 또한, Operation 파라미터는 요청 메시지에서 요청하는 동작을 구분하기 위한 정보를 포함한다. 동작 파라미터는 생성(Create), 조회(Retrieve), 갱신(Update), 삭제(Delete), 통지(Notify) 중 어느 하나로 설정될 수 있다. 또한, 요청 메시지의 다양한 동작을 제어하기 위하여 선택적인 파라미터를 부가할 수 있다. 예를 들어 응답 유형 (Response Type)의 선택적인 파라미터는 수신자의 처리 방식을 블록킹 (blockingRequest) 방식, 동기화된 넌블록킹 (nonBlockingRequestSynch) 방식, 비동기화된 넌블록킹 (nonBlockingRequestAsynch) 방식, 수신자 맞춤형 (flexBlocking) 방식으로 지정할 수 있다.
수신자(310)는 요청 메시지가 수신되면, 해당 요청 메시지를 처리하기 위한 동작을 수행한다(S330). 예를 들어, 수신자(310)는 요청메시지(Request Message)를 송신한 발신자(300)가 해당 요청에 대한 권한을 가지고 있는지를 확인할 수 있다. 발신자(300)가 요청에 대한 권한을 가지고 있다고 판단되는 경우, 요청의 대상이 되는 리소스(requested resource)의 존재 여부를 확인한 후 요청 메시지를 처리한다. 또는, 수신자(310)는 요청 메시지의 동작 파라미터에 따라 해당하는 동작을 수행할 수 있다. 예를 들어, 동작 파라미터가 생성으로 설정되고, 특정 데이터의 변경, 추가, 삭제 등이 발생할 경우에 이를 발신자(300)측으로 알려주도록 지시하는 구독 기능이 설정되는 경우에 수신자(310)는 구독 정보를 생성하고, 해당 구독 정보에 해당하는 데이터에 변경, 추가, 삭제 등의 이벤트가 발생하는 경우에 이를 발신자(300) 측으로 통지할 수 있다.
수신자(310)는 요청 동작에 따른 처리 결과 정보를 생성하여 이를 응답메시지에 포함하여 발신자(300)로 전송한다(S340). S340 단계는 S330 단계 이전에 수행될 수도 있다. 즉, 수신자(310)는 요청 메시지를 수신하면, 이에 대한 단순 수신을 나타내는 ACK 응답 메시지를 생성하여 발신자(300)측으로 전송하고, 이후 S330 단계를 수행하여 요청 메시지를 처리할 수도 있다.
도 4는 본 발명의 일 실시예에 의한 공통 서비스 개체를 구성하는 도면이다. 도 4에서는 식별 정보의 처리 기능을 포함한다.
공통 서비스 개체가 제공하는 기능을 도 4와 같이 정리하면 식별(Addressing & Identification), 어플리케이션/서비스 계층 관리(Application and Service Layer Management), 데이터 관리 및 저장(Data Management & Repository), 위치(Location), 보안(Security), 통신 관리/전달 핸들링(Communication Management / Delivery Handling), 등록(Registration), 서비스 세션 관리(Service Session Management), 디바이스 관리(Device Management), 구독/알림(Subscription/Notification), 연결 관리(Connectivity Management), 디스커버리(Discovery), 서비스 과금/정산(Service Charging/Accounting), 네트워크 서비스 표출/서비스 실행 및 트리거링(Network Service Exposure / Service execution and triggering ), 그룹 관리(Group Management) 등이 있다.
물론, 상기 기능 이외에도 시맨틱스(Semantics), 데이터 분석(Data Analytics), 어플리케이션 인에이블먼트(Application Enablement), 네트워크 서비스 기능 관리(Network Service Function Management)등도 포함할 수 있다.
각각의 기능에 대해 살펴보면 다음과 같다.
ASM(Application and Service Layer Management)는 ADN, ASN, MN, IN의 AE와 CSE를 관리하는 것을 담당하며, 이는 CSE의 설정(configure), 트러블슈팅(troubleshoot), 업그레이드 기능과 AE의 업그레이드를 포함한다.
CMDH(Communication Management and Delivery Handling)는 다른 CSE, AE, NSE간의 통신을 책임진다. CMDH는 어느 시각에 어떤 통신 연결을 이용하여 통신을 전달할 것인지(CSE-CSE간 통신), 언제 필요하고 언제 허가되는지, 그리고 통신의 전달이 이후로 미루어질 때 통신 요청을 저장하는 것을 책임진다. CMDH는 통신에 대한 각 요청에 특화된 프로비전된 정책과 전달 핸들링 파라미터에 따라 수행된다. 기반 네트워크 데이터 전송 서비스를 이용한 통신에서 기반 네트워크는 동일한 전달 핸들링 기능을 지원할 수 있다. 이 경우 CMDH는 기반 네트워크를 사용할 수 있으며, 기반 네트워크에 동일한 전달 핸들링 기능을 액세스하는 프런트엔드로 동작할 수 있다.
DMR(Data Management and Repository)은 M2M 어플리케이션이 다른 개체와 데이터를 교환할 수 있도록 한다. DMR CSF는 데이터 저장 공간을 제공하고 이를 조정하는 기능을 제공한다. 또한 대량의 데이터를 수집하고 결합하거나, 데이터를 특정한 포맷으로 변환하거나, 또는 데이터를 분석 및 시맨틱 프로세싱을 위해 저장하는 기능을 포함한다. "데이터"라는 것은 M2M 디바이스로부터 투명하게 추출되는 로우 데이터(raw data)를 의미하거나 M2M 개체에 의해 계산 또는 결합되어 프로세싱된 데이터를 의미할 수 있다. 대량의 데이터를 수집하는 것은 빅데이터 저장 기능으로 알려진 것을 구성한다.
DMG(Device Management) CSF는 MN과 디바이스 노드 및 M2M 에어리어 네트워크에 있는 디바이스들의 디바이스 기능의 관리를 담당한다. 다음의 기능을 하나 이상 제공하는 디바이스 관리를 가능하게 한다. 어플리케이션 소프트웨어의 설치 및 세팅, 설정 세팅 및 프로비저닝, 펌웨어 업데이트, 로깅과 모니터링과 분석, 에어리어 네트워크의 토폴로지 관리, 그리고 에어리어 네트워크 관리 내의 디바이스를 포함한다.
DIS(디스커버리) CSF는 주어진 범위와 주제 내에서 허락된 권한(M2M 서비스 구독에서 허락된 것을 포함)과 주어진 범위 내에서 오리지네이터(Originator)로부터의 요청에 해당하는 정보와 리소스를 검색하는 것을 책임진다. 오리지네이터는 어플리케이션 또는 다른 CSE가 될 수 있다. 검색의 범위는 하나의 CSE가 되거나 다수의 CSE가 될 수 있다. 디스커버리 결과는 오리지네이터에게 리턴된다.
GMG(Group Management)는 요청과 관련된 그룹을 핸들링한다. 요청은 그룹과 그룹의 멤버십의 관리를 위해 전송되며 또한 그룹에 의해 지원되는 벌크 오퍼레이션도 담당한다. 그룹에 멤버를 추가 또는 삭제할 경우, 멤버가 그룹의 목적에 순응하는지를 확인할 필요가 있다. 벌크 오퍼레이션은 읽기, 쓰기, 구독하기, 알리기, 디바이스 관리 등을 포함한다. 요청 또는 구독은 그룹을 통하여 이루어지고, 그룹이 이러한 요청과 알림을 결합하는 것을 책임진다. 그룹의 멤버는 리소스에 대한 접근 권한에 대해 동일한 역할을 가진다. 이 경우, 접근 제어는 그룹에 의해 이루어진다. 기반 네트워크가 브로드캐스팅과 멀티캐스팅 기능을 제공할 경우, GMG CSF는 이러한 기능을 이용해야 한다.
LOC(Location) CSF는 위치 기반 서비스를 위해 M2M 노드(예를 들어 ASN, MN)의 지리적 위치 정보를 M2M AE가 습득할 수 있도록 한다. 동일한 또는 상이한 M2M 노드 내에 존재하는 M2M AE로부터 이러한 위치 정보가 요청될 수 있다.
NSE(Network Service Exposure) CSF는 M2M 어플리케이션을 대신하여 M2M 시스템으로부터의 서비스 요청에 대한 사용 가능하거나 지원 가능한 방식을 Mcn 참조점을 통하여 네트워크 서비스 기능을 액세스 하기 위해 기반 네트워크와의 통신을 관리한다. NSE CSF는 다른 CSF와 AF를 기반 네트워크에서 지원되는 특정한 기술과 메커니즘으로부터 은폐한다. 기반 네트워크로부터 제공되는 네트워크 서비스 기능은 디바이스 트리거링, 스몰 데이터 전송, 위치 알림, 폴리시 룰 셋팅, 위치 질의, IMS 서비스, 디바이스 관리 등을 포함하지만 이에 한정되지는 않는다. 이러한 기능들은 일반적인 전송 서비스를 포함하지 않는다.
REG(Registration)는 어플리케이션 또는 다른 CSE가 CSE에 등록하도록 핸들링하는 것을 담당하는데, 이는 CSE에서 제공되는 서비스를 사용하려는 개체의 등록을 허락하기 위함이다. REG CSF는 CSE에 대한 디바이스의 등록 뿐만 아니라 디바이스의 특성/속성의 등록도 핸들링한다.
SEC(Security)는 주의를 요하는(센서티브) 데이터 핸들링 기능, 보안 운영 기능, 보안 결합 설정 기능, 권한 부여와 액세스 제어 기능, 식별 보호 기능을 제공한다. SEC CSF가 제공하는 센서티브 데이터 핸들링 기능은 저장과 조작 과정에서 보안이 필요한 로컬 크리덴셜을 보호하는 기능을 제공한다. 센서티브 데이터 핸들링 기능 역시 보안 알고리즘을 사용한다. 이 기능은 다양한 암호기법이 분리된 보안 환경을 지원한다. 보안 운영 기능은 다음의 기능을 제공하는데, 먼저 센서티브 데이터 핸들링 기능에 의해 지원되도록 전용된 보안 환경의 생성과 운영 기능을 제공한다. 또한 보안 환경에서 보호되는 루트 크리덴셜의 포스트 프로비저닝을 지원하며, M2M 서비스와 M2M 어플리케이션 서비스와 관련된 구독의 프로비저닝과 운영을 지원한다. 보안 결합 설정 기능은 M2M 노드들 간의 보안 결합을 설정하여 기밀성, 통합성, 인증, 권한 부여가 가능하도록 한다. 권한 부여와 액세스 제어 기능은 프로비전된 보안 정책과 할당된 롤에 따라 권한 부여된 개체로의 서비스와 데이터 접근을 제어한다. 개체의 유일한 식별자가 권한 부여에 사용되며, 식별 보호 기능은 개체 또는 사용자와 결합된 실제 식별 정보와 링크되지 않도록 임시의 식별자로 기능하는 익명을 제공할 수 있다.
SCA(Service Charging and Accounting)는 서비스 계층의 과금 기능을 제공한다. 온라인 과금과 오프라인 과금을 포함하는 상이한 과금 모델들을 지원한다. SCA CSF는 과금 가능한 이벤트를 확보하고, 정보를 저장하며, 과금 기록과 과금 정보를 생성한다. SCA CSF는 기반 네트워크의 과금 시스템과 상호작용 할 수 있다. 그러나 SCA CSF는 최종 서비스 레벨의 과금 정보를 생성하고 기록할 책임을 가진다. 기반 노드 또는 서비스 계층 과금 서버의 SCA CSF는 과금을 위한 과금 정보를 핸들링하는 것을 책임진다.
SSM(Service Session Management) CSF는 단대단 서비스 계층 연결인 M2M 서비스 세션을 관리한다. SSM CSF는 M2M 어플리케이션들 간의, 또는 M2M 어플리케이션과 CSE 간의, 또는 CSE들 간의 M2M 서비스 세션을 관리한다. M2M 서비스 세션의 관리는 세션 상태의 관리, 세션 인증과 설립, 세션과 관련된 기반 네트워크 연결 및 서비스의 관리, CSE의 멀티 홉인 cse의 세션 확장의 조정, 세션 종단간의 정보의 교환, 그리고 세션의 종료를 포함한다. 주어진 M2M 서비스 세션내에서 다음 홉의 CSE 또는 어플리케이션으로/부터의 메시지 송수신을 위해 SSM CSF는 로컬 CSE 내의 CMDH CSF를 이용한다. SSM CSF는 세션 참가자의 보안 크리덴셜과 인증과 관련된 세션 관리를 위해 SEC CSF를 이용한다. SSM CSF는 세션에 특화된 과금 이벤트를 생성하며 로컬 CSE 내의 SCA CSF와도 통신한다.
SUB(Subscription and Notification)는 구독을 유지하는 알림을 제공하며, 리소스의 변화(예를 들어 리소스의 삭제)를 트래킹한다. 리소스의 구독은 M2M AE 또는 CSE에 의해 시작되며, 호스팅 CSE에 의해 접근 권한이 그랜트된다. 활성화된 구독 중에 호스팅 CSE는 구독된 리소스의 변화가 발생하는 경우 리소스 구독자가 수신하길 원하는 주소로 알림을 전송한다.
도 4 및 그에 대한 설명은 공통 서비스 개체를 구현하는 실시예들이며 본 발명이 이에 한정되지는 않는다.
한편, 본 실시예들에 적용될 수 있는 식별자(identifier)를 살펴보면 다음과 같다. M2M 식별자로는 M2M-SP-ID(M2M Service Provider Identifier), App-Inst-ID(Application Instance Identifier), App-ID(Application Identifier), CSE-ID(CSE Identifier), M2M-Node-ID(M2M Node Identifier/Device Identifier), M2M-Sub-ID(M2M Service Subscription Identifier), M2M-Request-ID(Request Identifier) 등이 있다.
oneM2M은 시스템을 구현하기 위해 충족시켜야 할 요구사항으로 전반적인 시스템 요구사항(Overall System Requirements), 관리 요구사항(Management Requirements), 데이터 모델과 의미 요구사항(Data Model & Semantics Requirements), 보안 요구사항(Security Requirements), 과금 요구사항(Charging Requirements), 운영 요구사항(Operational Requirements)을 제시하고 있다.
본 명세서에서는 M2M 시스템 기술, 특히 oneM2M 서비스 플랫폼 기술을 중심으로 설명한다. 그러나 이러한 설명이 M2M 서비스 플랫폼 기술에만 한정되는 것은 아니며, 기기간 통신, 즉 사물 통신을 제공하는 모든 시스템 및 구조와 이들 시스템에서 발생하는 통신 동작에 적용 가능하다.
또한, 본 명세서에서의 발신자, 발원자, 오리지네이터 등은 메시지를 전송하는 M2M 장치를 의미하는 것이며, 수신자, 리시버, 호스팅 CSE 등은 메시지를 수신하는 M2M 장치를 의미할 수 있다. 다만, 수신자도 응답 메시지를 전송할 수 있고, 발신자도 응답 메시지를 수신할 수 있다. 따라서, 특정 절차에서 요청 메시지를 최초로 전송하는 M2M 장치를 발신자 또는 Originator 또는 발원자로 기재하여 설명하고, 전송된 요청 메시지를 수신하는 M2M 장치를 수신자 또는 Receiver 또는 Hosting CSE로 기재하여 설명한다. 물론, 전술한 바와 같이, 발신자와 수신자 모두 메시지를 송수신할 수 있다.
또한, 본 명세서에서의 M2M 장치는 전술한 AE, CSE, NSE 등을 포함하는 다양한 노드를 의미하는 명칭으로 기재하여 설명하며, 이해의 편의를 위하여 호스팅 CSE를 중심으로 설명을 진행하나 이에 한정되는 것은 아니다. 즉, M2M 장치는 M2M 시스템을 구성하는 일 구성 장치를 의미하며, 요청 메시지를 수신하여 이에 대한 처리를 수행하고 응답 메시지를 전송하는 다양한 노드, 장치, 개체 등을 의미한다.
발신자는 수신자 측에 특정 동작을 요청하기 위한 요청 메시지를 전송할 수 있다. 전술한 도 3과 같이 발신자는 요청 메시지를 전송할 때, 필수적 파라미터와 선택적 파라미터를 요청 메시지에 포함시킬 수 있다. 예를 들어, 송신측 파라미터와 수신측 파라미터, 동작 파라미터와 요청 식별 파라미터는 필수적으로 포함된다. 또한, 선택적으로 응답 유형 파라미터가 포함될 수 있다.
즉, 수신측 M2M 장치는 아래 표 1과 같이 4가지 값 중 어느 하나의 값으로 설정된 응답 유형 파라미터를 포함하는 요청 메시지를 수신할 수 있다.
응답유형 파라미터 값 지시 응답 유형
1 nonBlockingRequestSynch
2 nonBlockingRequestAsynch
3 blockingRequest
4 flexBlocking
이 외에도, 요청 메시지에는 필요에 따라 컨텐츠 정보가 포함될 수도 있다.
수신측 M2M 장치는 요청 메시지가 수신되면, 요청 메시지의 응답 유형 파라미터가 존재하는지 확인한다. 만약, 응답 유형 파라미터가 존재하지 않는 경우에 해당 요청 메시지에 대한 응답 모드는 블록킹 모드로 결정할 수 있다.
이와 달리, 수신측 M2M 장치는 요청 메시지에 응답 유형 파라미터가 존재하는 경우, 해당 응답 유형 파라미터 값에 따라 응답 메시지를 발신자로 전송할 수 있다. 예를 들어, 응답 메시지는 응답 상태 코드 파라미터와 요청 식별 파라미터를 포함할 수 있다. 요청 식별 파라미터는 요청 메시지의 요청 식별 파라미터와 동일한 값으로 요청 메시지에 대한 응답 메시지임을 나타낼 수 있다.
구체적으로, 응답 상태 코드는 아래 표 2와 같이 설정될 수 있다. 예를 들어, 요청 메시지가 응답 유형(Response Type) 파라미터를 포함하고 있는 경우, 응답 유형 파라미터의 값이 동기화된 넌블록킹(nonBlockingRequestSynch) 또는 비동기화된 넌블록킹(nonBlockingRequestAsynch)일 때, M2M 장치는 해당 요청 메시지에 대한 처리 동작을 완료하기 전에 발신자에게 해당 요청 메시지를 정상적으로 수신하여 처리하고 있다는 것을 알리기 위해서 아래 표 2의 응답 상태 코드를 포함하는 응답 메시지를 전송할 수 있다. 한 응답 상태 코드 값이다.
응답 상태 코드 지시 정보
1000 ACCEPTED
이하에서는 요청 메시지의 동작 파라미터에 따른 발신자와 수신자의 동작 처리 과정을 보다 상세하게 도면을 참조하여 설명한다. 이하에서 설명하는 도면들은 수신측에서 처리에 성공한 것을 가정한 것으로, 수신측에서 처리가 실패한 경우에는 처리 실패를 지시하는 에러 코드를 포함하여 응답 메시지가 전송될 수 있다. 아울러, 위에서 설명한 필수적 파라미터 등은 이하에서는 필요에 따라 생략할 수 있다. 다만, 필수적 파라미터는 이해의 편의를 위해서 생략된 것으로 요청 메시지 또는 응답 메시지에 필수적으로 포함된다.
도 5 내지 도 9는 일 실시예에 따른 요청 메시지의 응답 유형 파라미터가 블록킹 모드로 설정된 경우에 요청 파라미터 별 요청 메시지 처리 동작을 설명하기 위한 도면이다.
아래에서의 도 5 내지 도 9의 요청 메시지는 응답 유형 파라미터를 포함하지 않거나, 블록킹 모드를 지시하는 값이 포함된 경우를 가정하여 설명한다. 즉, 요청 메시지를 수신자가 블록킹 모드 방식으로 처리하는 경우를 설명한다.
도 5를 참조하면, 발신자(300)는 블록킹(blockingRequest) 모드에 의한 자원 생성(Create) 동작을 요청하는 요청 메시지를 전송할 수 있다(S510). 예를 들어, 요청 메시지는 전술한 동작 파라미터, 수신측 파라미터, 송신측 파라미터 및 요청 식별 파라미터를 필수적으로 포함하며, 생성하고자 하는 자원 타입 파라미터와 컨텐츠 정보를 포함할 수 있다. 여기서, 동작 파라미터는 생성을 나타내는 값으로 설정된다.
수신자(310)는 요청 메시지를 수신하면, 요청된 동작 파라미터의 동작을 수행하여 자원을 생성하고, 그 결과를 지시하는 응답 상태 코드 파라미터와 요청 식별 파라미터를 포함하는 응답 메시지를 발신자(300)로 전송한다(S520). 응답 메시지의 요청 식별 파라미터는 요청 메시지의 요청 식별 파라미터와 동일한 값으로 설정될 수 있다.
또한, 수신자(310)는 생성 요청에 대한 처리가 성공한 경우에 이를 지시하는 응답 상태 코드의 값(예를 들어, 2001)을 설정하여 응답 메시지에 포함하여 전송할 수 있다.
도 6을 참조하면, 발신자(300)는 블록킹(blockingRequest) 모드에 의한 자원 조회(Retrieve) 동작을 요청하는 요청 메시지를 전송할 수 있다(S610). 예를 들어, 요청 메시지는 전술한 동작 파라미터, 수신측 파라미터, 송신측 파라미터 및 요청 식별 파라미터를 필수적으로 포함할 수 있다. 여기서, 동작 파라미터는 조회를 나타내는 값으로 설정된다.
수신자(310)는 요청 메시지를 수신하면, 요청된 동작 파라미터의 동작을 수행하여 조회 동작을 수행하고, 그 결과를 지시하는 응답 상태 코드 파라미터와 요청 식별 파라미터를 포함하는 응답 메시지를 발신자(300)로 전송한다(S620). 응답 메시지의 요청 식별 파라미터는 요청 메시지의 요청 식별 파라미터와 동일한 값으로 설정될 수 있다.
또한, 수신자(310)는 조회 요청에 대한 처리가 성공한 경우에 이를 지시하는 응답 상태 코드의 값(예를 들어, 2000)을 설정하여 응답 메시지에 포함하여 전송할 수 있다.
도 7을 참조하면, 발신자(300)는 블록킹(blockingRequest) 모드에 의한 자원 수정(Update) 동작을 요청하는 요청 메시지를 전송할 수 있다(S710). 예를 들어, 요청 메시지는 전술한 동작 파라미터, 수신측 파라미터, 송신측 파라미터 및 요청 식별 파라미터를 필수적으로 포함하며, 컨텐츠 정보를 포함할 수 있다.할 수 있다. 여기서, 동작 파라미터는 수정을 나타내는 값으로 설정된다.
수신자(310)는 요청 메시지를 수신하면, 요청된 동작 파라미터의 동작을 수행하여 수정 동작을 수행하고, 그 결과를 지시하는 응답 상태 코드 파라미터와 요청 식별 파라미터 및 컨텐츠 정보를 포함하는 응답 메시지를 발신자(300)로 전송한다(S720). 응답 메시지의 요청 식별 파라미터는 요청 메시지의 요청 식별 파라미터와 동일한 값으로 설정될 수 있다.
또한, 수신자(310)는 수정 요청에 대한 처리가 성공한 경우에 이를 지시하는 응답 상태 코드의 값(예를 들어, 2004)을 설정하여 응답 메시지에 포함하고, 수정된 자원에 대한 정보를 컨텐츠 정보에 포함하여 전송할 수 있다.
도 8을 참조하면, 발신자(300)는 블록킹(blockingRequest) 모드에 의한 자원 삭제(Delete) 동작을 요청하는 요청 메시지를 전송할 수 있다(S810). 예를 들어, 요청 메시지는 전술한 동작 파라미터, 수신측 파라미터, 송신측 파라미터 및 요청 식별 파라미터를 필수적으로 포함할 수 있다. 여기서, 동작 파라미터는 삭제를 나타내는 값으로 설정된다.
수신자(310)는 요청 메시지를 수신하면, 요청된 동작 파라미터의 동작을 수행하여 자원을 삭제하고, 그 결과를 지시하는 응답 상태 코드 파라미터와 요청 식별 파라미터 및 컨텐츠 정보를 포함하는 응답 메시지를 발신자(300)로 전송한다(S820). 응답 메시지의 요청 식별 파라미터는 요청 메시지의 요청 식별 파라미터와 동일한 값으로 설정될 수 있다.
또한, 수신자(310)는 삭제 요청에 대한 처리가 성공한 경우에 이를 지시하는 응답 상태 코드의 값(예를 들어, 2002)을 설정하여 응답 메시지에 포함하여 전송할 수 있다.
도 9를 참조하면, 발신자(300)는 블록킹(blockingRequest) 모드에 의한 자원 통지(Notify) 동작을 요청하는 요청 메시지를 전송할 수 있다(S910). 예를 들어, 요청 메시지는 전술한 동작 파라미터, 수신측 파라미터, 송신측 파라미터 및 요청 식별 파라미터를 필수적으로 포함하며, 통지하는 컨텐츠 정보를 포함할 수 있다. 여기서, 동작 파라미터는 통지(또는 알림)를 나타내는 값으로 설정된다.
수신자(310)는 요청 메시지를 수신하면, 요청된 동작 파라미터에 따른 통지 컨텐츠를 수신하고, 정상 수신 여부 또는 해당 통지 자원에 대한 정상 처리(예를 들어, 자원 생성)에 대한 결과를 지시하는 응답 상태 코드 파라미터와 요청 식별 파라미터를 포함하는 응답 메시지를 발신자(300)로 전송한다(S920). 응답 메시지의 요청 식별 파라미터는 요청 메시지의 요청 식별 파라미터와 동일한 값으로 설정될 수 있다.
또한, 수신자(310)는 통지 요청 메시지에 대한 정상 수신 또는 정상 자원 생성 시에 이를 지시하는 응답 상태 코드의 값(예를 들어, 2000)을 설정하여 응답 메시지에 포함하여 전송할 수 있다.
이상에서 설명한 바와 같이 요청 메시지에 응답 유형 파라미터가 존재하지 않거나, 응답 유형 파라미터 값이 블록킹 모드를 지시하는 값으로 설정된 경우에 수신자는 응답 메시지에 해당하는 동작에 대한 응답 상태 코드를 포함하여 발신자로 전송함으로써, 발신자가 해당 동작의 정상 수행 여부를 명확하게 인지할 수 있다.
한편, 응답 유형 파라미터는 전술한 바와 같이, 블록킹 모드 뿐만 아니라 동기식 넌블록킹 모드, 비동기식 넌블록킹 모드 또는 플렉스 블록킹 모드로 설정될 수도 있다ㅏ. 아래에서는 응답 유형 파라미터가 블록킹 모드가 아닌 다른 모드로 설정된 경우의 요청 메시지 처리 방법에 대해서 설명한다.
도 10은 일 실시예에 따른 요청 메시지의 응답 유형 파라미터가 동기식 넌블록킹 모드로 설정된 경우에 요청 메시지를 처리하는 방법을 설명하기 위한 도면이다.
도 10을 참조하면, 발신자(300)는 필수적 파라미터와 응답 유형 파라미터를 포함하는 요청 메시지를 수신자(310)에게 전송할 수 있다(S1010). 이 경우에 요청 메시지에 포함되는 응답 유형 파라미터는 동기식 넌블록킹 모드로 설정될 수 있다. 즉, 응답 유형 파라미터는 동기식 넌블록킹(nonBlockingRequestSynch) 모드를 지시하는 값으로 설정될 수 있다.
동기식 넌블록킹 모드는 발신자(300)가 요청 메시지를 보낸 후 다른 처리를 수행하도록 하기 위한 모드로 수신자(310)의 처리 완료 시점까지 발신자(300)는 시분할 방식에 의한 다중 처리를 수행할 수 있다. 즉, 발신자(300)가 요청 메시지를 보내고, 수신자(310)는 해당 요청 메시지를 처리하며, 발신자(300)가 추후 처리 결과를 별도의 요청 메시지를 통해서 확인하는 방법이 동기식 넌블록킹 방식이다.
구체적으로, S1010 단계의 요청 메시지를 수신한 수신자(310)는 해당 요청 메시지에 대한 정상 수신 여부를 지시하는 응답 상태 코드를 포함하는 응답 메시지를 발신자(300)에게 전송한다(S1020). S1020 단계에서 전송되는 응답 메시지에 포함되는 요청 식별 파라미터는 S1010 단계의 요청 식별 파라미터 값과 동일하게 설정된다. S1020 단계의 응답 메시지에 포함되는 응답 상태 코드는 S1010 단계의 요청 메시지를 수신자(310)가 정상적으로 수신하였는지를 나타내는 정보로 Accepted를 지시하는 값으로 설정된다. 만약, 수신자(310)가 S1010단계의 요청 메시지를 정상적으로 수신하지 못한 경우에 수신자(310)는 Error를 지시하는 응답 상태 코드가 포함된 응답 메시지를 전송하거나, S1020 단계의 메시지를 전송하지 않는다.
이를 통해서, 발신자(300)는 요청 메시지가 정상적으로 수신자(310)에게 도달되어 처리가 수행될 것인지 확인할 수 있다.
이후, 발신자(300)는 일정 시간 간격 이후에 S1010 단계에서 요청한 처리 동작에 대한 결과를 조회하기 위한 요청 메시지를 전송한다(S1030). S1030 단계의 요청 메시지는 조회를 위한 것이므로, 동작 파라미터가 조회를 지시하는 값으로 설정될 수 있다. S1030 단계의 요청 식별 파라미터는 S1010 및 S1020과 동일하게 설정될 수도 있고, 구분되어 다른 값으로 설정될 수도 있다.
수신자(310)는 S1030 단계의 요청 메시지를 수신하면, 해당 조회 동작을 수행하여 조회된 컨텐츠 정보와 응답 상태 코드를 포함하는 응답 메시지를 발신자(300)로 전송할 수 있다(S1040).
이러한 일련의 동작을 통해서 발신자(300)의 요청에 대한 응답을 처리하는 동작을 동기식 넌블록킹 모드이다.
도 11은 일 실시예에 따른 요청 메시지의 응답 유형 파라미터가 비동기식 넌블록킹 모드로 설정된 경우에 요청 메시지를 처리하는 방법을 설명하기 위한 도면이다.
도 11을 참조하면, 발신자(300)는 필수적 파라미터와 응답 유형 파라미터를 포함하는 요청 메시지를 수신자(310)에게 전송할 수 있다(S1110). 이 경우에 요청 메시지에 포함되는 응답 유형 파라미터는 비동기식 넌블록킹 모드로 설정될 수 있다. 즉, 응답 유형 파라미터는 비동기식 넌블록킹(nonBlockingRequestAsynch) 모드를 지시하는 값으로 설정될 수 있다.
비동기식 넌블록킹 모드도 발신자(300)가 요청 메시지를 보낸 후 다른 처리를 수행하도록 하기 위한 모드로 수신자(310)의 처리 완료 시점까지 발신자(300)는 시분할 방식에 의한 다중 처리를 수행할 수 있다. 다만, 비동기식 넌블록킹 모드는 발신자(300)가 요청 메시지를 보낸 후 처리 결과를 직접 조회하는 동기식 넌블록킹 모드와 달리 수신자(310)가 해당 요청 메시지를 처리한 결과에 대해서 발신자(300)로 직접 통지하는 방식이다.
구체적으로, S1110 단계의 요청 메시지를 수신한 수신자(310)는 해당 요청 메시지에 대한 정상 수신 여부를 지시하는 응답 상태 코드를 포함하는 응답 메시지를 발신자(300)에게 전송한다(S1120). S1120 단계에서 전송되는 응답 메시지에 포함되는 요청 식별 파라미터는 S1110 단계의 요청 식별 파라미터 값과 동일하게 설정된다. S1120 단계의 응답 메시지에 포함되는 응답 상태 코드는 S1110 단계의 요청 메시지를 수신자(310)가 정상적으로 수신하였는지를 나타내는 정보로 Accepted를 지시하는 값으로 설정된다. 만약, 수신자(310)가 S1110단계의 요청 메시지를 정상적으로 수신하지 못한 경우에 수신자(310)는 Error를 지시하는 응답 상태 코드가 포함된 응답 메시지를 전송하거나, S1120 단계의 메시지를 전송하지 않는다. 즉, S1120 단계에서의 응답 상태 코드의 값과 S1020 단계에서의 응답 상태 코드의 값은 동일한 값으로 설정된다.
이를 통해서, 발신자(300)는 요청 메시지가 정상적으로 수신자(310)에게 도달되어 처리가 수행될 것인지 확인할 수 있다.
이후, 수신자(310)는 S1110 단계에서의 요청 메시지에 따른 요청 동작을 수행하고, 요청 동작에 대한 처리가 완료되면, 발신자(300)로 해당 요청 처리 동작에 대한 완료 및 처리 결과 컨텐츠를 알리기 위한 통지 메시지를 전송한다(S1130).
S1130 단계의 요청 메시지는 처리 동작에 대한 알림을 위한 것이므로, 동작 파라미터가 통지를 지시하는 값으로 설정될 수 있다. S1130 단계의 요청 식별 파라미터는 S1110 및 S1120과 동일하게 설정될 수도 있고, 구분되어 다른 값으로 설정될 수도 있다.
발신자(300)는 S1130 단계의 통지를 지시하는 요청 메시지가 정상적으로 수신되면, 이에 대한 정상 수신을 지시하는 응답 상태 코드를 포함하는 응답 메시지를 수신자(310)에게 전송한다(S1140). 여기서, 응답 상태 코드는 S1130 단계의 요청 메시지에 대한 정상 수신을 지시하는 값으로 설정되며, S1120 단계의 응답 메시지에 포함되는 응답 상태 코드와 동일한 값으로 설정될 수 있다. 한편, S1140 단계의 요청 식별 파라미터 값은 S1130 단계와 동일하게 설정된다.
수신자(310)는 S1030 단계의 요청 메시지를 수신하면, 해당 조회 동작을 수행하여 조회된 컨텐츠 정보와 응답 상태 코드를 포함하는 응답 메시지를 발신자(300)로 전송할 수 있다(S1040).
이러한 일련의 동작을 통해서 발신자(300)의 요청에 대한 응답을 처리하는 동작을 비동기식 넌블록킹 모드이다.
도 10과 도 11에서 설명한 바와 같이, 발신자가 요청 메시지에 응답 유형 파라미터를 포함하되, 응답 유형 파라미터가 동기식 넌블록킹(nonBlockingRequestSynch) 또는 비동기식 넌블록킹(nonBlockingRequestAsynch)으로 설정되는 경우, 수신자는 응답 메시지에 동기식 넌블록킹(nonBlockingRequestSynch) 또는 비동기식 넌블록킹(nonBlockingRequestAsynch)을 구분하지 않고 동일한 응답 상태 코드로 Accepted를 지시하는 정보를 포함하여 응답 메시지를 전송한다. 이는 발신자와 수신자가 어떠한 응답 모드를 통해서 해당 요청 메시지를 처리할 것인지를 응답 유형 파라미터를 통해서 상호 인지하기 때문에 가능하다.
그러나, 이와 같은 동작은, 발신자가 요청 메시지에 응답 유형 파라미터를 수신자 맞춤형으로 설정한 플렉스 블록킹(flexBlocking) 모드로 설정하여 보내는 경우에 문제가 발생할 수 있다. 즉, 발신자는 수신자가 어떠한 응답 모드를 선택하여 해당 요청 메시지를 처리할 것인지를 알 수 없다. 따라서, 이후 처리 동작이 어떻게 진행될 것인지에 대한 모호성이 발생하며, 이러한 모호성은 M2M 시스템 전체의 동작에 문제가 발생되도록 만들 수 있다.
도 12는 일 실시예에 따른 요청 메시지의 응답 유형 파라미터가 플렉스 블록킹 모드로 설정된 경우에 요청 메시지를 처리함에 있어서 발생되는 문제점을 설명하기 위한 도면이다.
도 12를 참조하면, 발신자(300)는 필수적 파라미터와 응답 유형 파라미터를 포함하는 요청 메시지를 수신자(310)에게 전송할 수 있다(S1210). 이 경우에 요청 메시지에 포함되는 응답 유형 파라미터는 플렉스 블록킹 모드로 설정될 수 있다. 즉, 응답 유형 파라미터는 플렉스 블록킹(flexBlocking) 모드를 지시하는 값으로 설정될 수 있다.
플렉스 블록킹 모드의 경우에 해당 요청 메시지를 전술한 블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 중 어느 하나로 선택하여 처리하되, 해당 선택 동작을 수신자(310)가 설정된 기능 및 정책에 따라서 결정하도록 하는 것이다. 따라서, 발신자(300)는 수신자(310)가 어떠한 응답 모드를 결정하는지에 대해서 알 수가 없는 문제가 있다.
구체적으로, 수신자(310)는 요청 메시지가 수신되면, 응답 유형 파라미터를 확인하고, 응답 유형 파라미터가 플렉스 블록킹으로 설정된 경우에 해당 요청 메시지를 처리하기 위한 응답 모드를 수신자(310)의 정책을 참조하여 결정한다(S1220).
수신자(310)는 S1210 단계의 요청 메시지에 대한 정상 수신 여부를 지시하기 위한 응답 메시지를 발신자(300)로 전송한다(S1230). 이 경우에 S1230 단계의 응답 메시지에 포함되는 응답 상태 코드는 전술한 도 10 및 도 11에서의 요청 메시지 수신에 대한 정상 수신을 지시하는 응답 상태 코드와 동일한 값으로 지정된다. 즉, 응답 상태 코드는 Accepted를 지시하는 값으로 설정된다. S1230 단계의 요청 식별 파라미터와 S1210 단계의 요청 식별 파라미터는 동일한 값으로 설정된다. 한편, S1230 단계는 S1220 단계 이전에 수행될 수도 있다. 즉, S1230 단계의 응답 메시지에 응답 모드를 알려주기 위한 파라미터가 존재하지 않으므로, S1220 단계 이전에 전송되더라도 문제가 없었다.
발신자(300)는 S1230 단계의 응답 메시지를 수신하여 S1210 단계의 요청 메시지가 정상적으로 전달되었음을 확인할 수 있다(S1240). 다만, 수신자(310)가 어떠한 응답 모드를 통해서 해당 요청 메시지를 처리할 것인지에 대해서 확인할 수가 없다. 예를 들어, 발신자(300)는 해당 요청 메시지가 동기식 넌블록킹 모드를 통해서 처리되기 때문에 도 10에서와 같이 추가적인 조회 요청 메시지를 전송해야 하는지 또는 해당 요청 메시지가 비동기식 넌블록킹 모드를 통해서 처리되기 때문에 도 11과 같이 통지 요청 메시지를 수신하기 이해서 대기하면 되는 것인지 알 수가 없다. 즉, 발신자(300)는 결정된 응답 모드에 따른 동작 수행이 필요하나, 어떠한 동작을 수행해야 되는지 모호성이 발생된다.
이러한 문제점을 해결하기 위해서, 본 실시예에서는 발신자가 응답 유형 파라미터의 값으로 플렉스 블록킹(flexBlocking)을 지시하는 경우에, 수신자가 결정하는 응답 모드에 따라서 발신자가 수신자의 처리 결과를 알 수 있도록 응답 상태 코드 정보를 설정하는 방법을 제안한다. 또한, M2M 시스템 전체의 부하 상승이 없도록 해당 응답 모드 정보를 전달하는 방법을 제안하고자 한다.
도 13은 일 실시예에 따른 M2M 장치가 요청 메시지를 처리하는 동작을 설명하기 위한 도면이다.
도 13을 참조하면, M2M(Machine to Machine communication) 장치는 요청 메시지를 처리하기 위해서 응답 유형 파라미터 정보를 포함하는 요청 메시지를 타 M2M 장치로부터 수신하는 단계를 수행한다(S1300).
예를 들어, 요청 메시지는 동작 파라미터, 수신측 파라미터, 송신측 파라미터 및 요청 식별 파라미터를 포함할 수 있다. 이러한 파라미터는 위에서 설명한 필수적 파라미터이며, 동작 파라미터의 종류에 따라 컨텐츠 정보, 자원 타입 정보 등을 더 포함할 수 있다.
전술한 바와 같이, 응답 유형 파라미터는 존재하지 않거나, 존재하는 경우에 블록킹 모드, 동기식 넌블록킹 모드, 비동기식 넌블록킹 모드 및 플렉스 블록킹 모드 중 어느 하나를 지시하는 정보로 설정될 수 있다.
M2M 장치는 응답 유형 파라미터 정보를 확인하고, 응답 유형 파라미터 정보에 따라 응답 모드를 결정하는 단계를 수행한다(S1310). 예를 들어, 응답 유형 파라미터가 요청 메시지에 포함되지 않거나, 블록킹 모드를 지사하는 값으로 설정된 경우에 M2M 장치는 응답 모드를 블록킹 모드로 결정한다. 이와 달리 응답 유형 파라미터가 동기식 넌블록킹 모드를 지시하는 값으로 설정되거나, 비동기식 넌블록킹 모드를 지시하는 값으로 설정되면, M2M 장치는 각각 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드로 응답 모드를 결정한다.
한편, 응답 유형 파라미터가 플렉스 블록킹을 지시하는 값으로 설정된 경우에 M2M 장치는 정책(policy)와 기능, 한계, 요청 메시지에 알림 타켓 정보가 포함되는지 여부 등의 M2M 장치 전반적 환경을 고려하여 응답 모드를 결정한다.
예를 들어, M2M 장치는 응답 유형 파라미터가 플렉스 블록킹을 지시하는 값으로 설정된 경우에 요청 메시지에 알림 타켓 정보(Notification target information)가 존재하는지 확인하여 이에 따라 응답 모드를 결정할 수 있다.
일 예로, M2M 장치는 요청 메시지에 알림 타켓 정보가 포함되는 경우, 블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 중 어느 하나로 응답 모드를 결정할 수 있다.
다른 예로, M2M 장치는 요청 메시지에 알림 타켓 정보가 포함되지 않는 경우, 블록킹 모드 및 동기식 넌블록킹 모드 중 어느 하나로 응답 모드를 결정할 수 있다.
M2M 장치는 결정된 응답 모드에 따라 구분되어 설정되는 응답 상태 코드를 포함하는 응답 메시지를 전송하는 단계를 수행한다(S1320). 예를 들어, M2M 장치는 요청 메시지에 대한 정상 수신 여부를 지시하는 응답 상태 코드를 발신자에게 전송한다. 다만, 도 12와 같은 문제점이 발생하지 않도록 응답 상태 코드는 S1310 단계에서 결정된 응답 모드에 따라 서로 다른 값으로 설정될 수 있다.
예를 들어, 도 14를 참조하면, 응답 상태 코드는 결정된 응답 모드에 따라 블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 각각이 서로 다른 값을 갖도록 설정될 수 있다.
일 예로, M2M 장치가 응답 모드를 블록킹 모드로 결정한 경우에 응답 상태 코드는 1000으로 설정되어 응답 메시지에 포함될 수 있다.
다른 예로, M2M 장치가 응답 모드를 동기식 넌블록킹 모드로 결정한 경우에 응답 상태 코드는 1001로 설정되어 응답 메시지에 포함될 수 있다.
또 다른 예로, M2M 장치가 응답 모드를 비동기식 넌블록킹 모드로 결정한 경우에 응답 상태 코드는 1002로 설정되어 응답 메시지에 포함될 수 있다.
따라서, 이러한 방법을 통하여 M2M 장치가 결정한 응답 모드에 대해서 발신자는 응답 메시지 수신을 통해서 확인할 수 있으므로, 이후 동작에 대한 모호성을 방지할 수 있다. 또한, 별도의 파라미터가 아닌 기존 응답 상태 코드를 구분하는 방법을 사용함으로써 시스템 전체의 신호 부하를 증가시키지 않을 수 있다.
한편, 응답 메시지는 요청 메시지의 요청 식별 파라미터에 포함된 식별자와 동일한 값으로 설정된 요청 식별 파라미터를 포함할 수 있다.
이하에서는 도면을 참조하여 M2M 장치가 응답 모드를 결정하는 방법을 다시 한 번 설명한다.
도 15는 일 실시예에 따른 M2M 장치가 응답 모드를 결정하는 동작을 설명하기 위한 도면이다.
도 15를 참조하면, M2M 장치는 요청 메시지를 수신하여 응답 유형 파라미터를 확인할 수 있다(S1500). 전술한 바와 같이 응답 유형 파라미터는 존재하지 않거나, 블록킹, 동기식 넌블록킹, 비동기식 넌블록킹 및 플렉스 블록킹 중 어느 하나를 지시하는 정보를 포함할 수 있다.
만약, 응답 유형 파라미터가 플렉스 블록킹을 지시하는 값으로 설정된 경우에 M2M 장치는 요청 메시지에 알림(통지) 타켓 정보가 존재하는지 판단한다(S1510). 요청 메시지에 알림 타켓에 대한 정보가 포함되는 경우에 M2M 장치는 통지 정책 기반의 응답 모드 결정 동작을 수행한다(S1520). 예를 들어, M2M 장치에 통지 정책 기반의 응답 모드 결정에 대한 우선 순위 또는 통지 정책 기반의 응답 모드 결정 알고리즘이 미리 설정될 수 있으며, M2M 장치는 해당 우선순위 또는 알고리즘을 이용하여 응답 모드를 선택할 수 있다. M2M 장치는 통지 정책 기반으로 블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 중 어느 하나의 응답 모드를 결정할 수 있다.
일 예로, M2M 장치는 비동기식 넌블록킹 모드를 응답 모드로 결정하고, 해당 절차에 따라 요청 메시지 처리 동작을 수행할 수 있다(S1530).
다른 예로, M2M 장치는 동기식 넌블록킹 모드를 응답 모드로 결정하고, 해당 절차에 따라 요청 메시지 처리 동작을 수행할 수 있다(S1540).
또 다른 예로, M2M 장치는 블록킹 모드를 응답 모드로 결정하고, 해당 절차에 따라 요청 메시지 처리 동작을 수행할 수 있다(S1550).
이와 달리, S1510 단계에서 M2M 장치는 알림 타켓 정보가 존재하지 않는 것으로 판단할 수 있다. 이 경우 M2M 장치는 미통지 정책 기반의 응답 모드 결정 동작을 수행할 수 있다(S1525). 미통지 정책 기반의 응답 모드 결정 알고리즘은 응답 모드로 블록킹 모드 및 동기식 넌블록킹 모드 중 어느 하나로 결정을 수행하도록 설정될 수 있다. 즉, 미통지 정책 기반의 응답 모드 결정 시에는 비동기식 넌블록킹 모드는 선택될 수 없다.
일 예로, M2M 장치는 동기식 넌블록킹 모드를 응답 모드로 결정하고, 해당 절차에 따라 요청 메시지 처리 동작을 수행할 수 있다(S1540).
다른 예로, M2M 장치는 블록킹 모드를 응답 모드로 결정하고, 해당 절차에 따라 요청 메시지 처리 동작을 수행할 수 있다(S1550).
M2M 장치는 이러한 절차를 통해서 결정된 응답 모드에 따라 도 14에서 표시된 응답 상태 코드를 결정하여 응답 메시지에 포함하여 발신자로 전송할 수 있다.
일 예로, M2M 장치는 블록킹 방식으로 응답 모드를 결정하면, 응답 상태 코드를 요청 메시지의 동작 파라미터에 따라 전술한 도 5 내지 도 9 중 어느 하나로 결정하고, 응답 메시지를 해당 절차를 통해서 처리할 수 있다.
다른 예로, M2M 장치는 동기식 넌블록킹(nonBlockingRequestSynch) 방식에 따라 메시지를 처리하기로 결정하면, 해당 응답 모드에 따라 미리 설정된 응답 상태 코드를 포함하여 응답 메시지를 전송한다.
또 다른 예로, M2M 장치는 비동기식 넌블록킹(nonBlockingRequestAsynch) 모드에 따라 요청 메시지를 처리하기로 결정하면, 비동기식 넌블록킹 모드에 매핑되는 응답 상태 코드를 포함하여 응답 메시지를 전송할 수 있다.
이 외에도, M2M 장치는 동기식 넌블록킹(nonBlockingRequestSynch) 방식과 비동기식 넌블록킹(nonBlockingRequestAsynch) 방식을 구별하여 응답 상태 코드를 할당하여 응답 메시지를 전송할 수 있다.
발신자는 응답 메시지의 응답 상태 코드를 확인하여 M2M 장치가 선택한 응답 모드를 인지하고, 이후의 절차를 수행할 수 있다.
도 16은 일 실시예에 따른 응답 모드 결정에 따른 응답 모드 별 요청 메시지 처리 절차를 설명하기 위한 도면이다.
도 16을 참조하면, 수신자(310)는 발신자(300)가 전송한 요청 메시지를 수신할 수 있다. 전술한 바와 같이 요청 메시지는 필수적 파라미터와 선택적 파라미터를 포함할 수 있다. 또한, 요청 메시지에 포함되는 응답 유형 파라미터는 플렉스 블록킹을 지시하는 값으로 설정될 수 있다(S1610).
수신자(310)는 정책, 알림 타켓 정보의 존재 여부에 기초하여 응답 모드를 결정할 수 있다(S1620). 이후, 수신자(310)는 결정된 응답 모드에 매핑되어 설정된 응답 상태 코드를 포함하는 응답 메시지를 발신자(300)로 전송한다(S1630).
보다 상세하게 구분하면, 아래와 같이 응답 모드에 따라 이후 절차가 다르게 수행될 수 있다.
일 예로, 수신자(310)가 블록킹 모드를 응답 모드로 결정하면, 요청 메시지의 동작 파라미터에 따라 다양한 메시지가 전송될 수 있다. 예를 들어, S1630 단계 이후에 해당 요청 메시지 처리 결과 정보를 포함하는 응답 메시지가 전송될 수 있다(S1640).
다른 예로, 수신자(310)가 동기식 넌볼록킹 모드를 결정하는 경우, 수신자(310)는 S1630 단계 이후에 요청 메시지를 처리하고, 발신자(300)는 S1630 단계의 응답 메시지를 통해서 해당 응답 모드를 인지하여 요청 메시지 처리 결과를 조회하기 위한 조회 요청 메시지를 전송한다(S1641). 수신자(310)는 S1641 단계의 요청 메시지에 대한 응답 메시지에 요청 처리 결과 정보를 포함하여 발신자(300)로 전송한다(S1642).
또 다른 예로, 수신자(310)가 비동기식 넌블록킹 모드를 결정하는 경우, 수신자(310)는 S1630 단계 이후에 요청 메시지를 처리하고, 발신자(300)는 S1630 단계의 응답 메시지를 통해서 해당 응답 모드를 인지하여 수신자(310)의 S1645 단계의 요청 메시지를 기다린다. 수신자(310)는 요청 메시지에 대한 요청 처리 결과가 나오면, 이를 통지하는 통지 요청 메시지를 발신자(320)에게 전송한다(S1645). 발신자(300)는 S1645 단계의 요청 메시지의 정상 수신 여부를 지시하는 응답 상태 코드를 포함하는 응답 메시지를 수신자(310)로 전송한다(S1646).
이상에서의 동작을 통해서, 응답 유형 파라미터가 플렉스 블록킹으로 설정된 경우에도 발신자는 동작의 모호성 없이 해당 응답 모드에 따른 동작을 수행할 수 있다. 이하에서는 도 1 내지 도 16을 참조하여 설명한 본 실시예를 모두 실시할 수 있는 M2M 장치의 구성을 도면을 참조하여 다시 한 번 설명한다.
도 17은 일 실시예에 따른 M2M 장치의 구조를 도시한 도면이다.
도 17을 참조하면, M2M(Machine to Machine communication) 장치(1700)는 응답 유형 파라미터 정보를 포함하는 요청 메시지를 타 M2M 장치로부터 수신하는 수신부(1730)와 응답 유형 파라미터 정보를 확인하고, 응답 유형 파라미터 정보에 따라 응답 모드를 결정하는 제어부(1710) 및 결정된 응답 모드에 따라 구분되어 설정되는 응답 상태 코드를 포함하는 응답 메시지를 전송하는 송신부(1720)를 포함할 수 있다.
예를 들어, 요청 메시지는 동작 파라미터, 수신측 파라미터, 송신측 파라미터 및 요청 식별 파라미터를 포함할 수 있다. 이러한 파라미터는 위에서 설명한 필수적 파라미터이며, 동작 파라미터의 종류에 따라 컨텐츠 정보, 자원 타입 정보 등을 더 포함할 수 있다. 전술한 바와 같이, 응답 유형 파라미터는 존재하지 않거나, 존재하는 경우에 블록킹 모드, 동기식 넌블록킹 모드, 비동기식 넌블록킹 모드 및 플렉스 블록킹 모드 중 어느 하나를 지시하는 정보로 설정될 수 있다.
도한, 응답 유형 파라미터가 요청 메시지에 포함되지 않거나, 블록킹 모드를 지사하는 값으로 설정된 경우에 제어부(1710)는 응답 모드를 블록킹 모드로 결정한다. 이와 달리 응답 유형 파라미터가 동기식 넌블록킹 모드를 지시하는 값으로 설정되거나, 비동기식 넌블록킹 모드를 지시하는 값으로 설정되면, 제어부(1710)는 각각 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드로 응답 모드를 결정한다.
한편, 응답 유형 파라미터가 플렉스 블록킹을 지시하는 값으로 설정된 경우에 제어부(1710)는 정책(policy)와 기능, 한계, 요청 메시지에 알림 타켓 정보가 포함되는지 여부 등의 M2M 장치(1700) 전반적 환경을 고려하여 응답 모드를 결정한다.
예를 들어, 제어부(1710)는 응답 유형 파라미터가 플렉스 블록킹을 지시하는 값으로 설정된 경우에 요청 메시지에 알림 타켓 정보(Notification target information)가 존재하는지 확인하여 이에 따라 응답 모드를 결정할 수 있다.
일 예로, 제어부(1710)는 요청 메시지에 알림 타켓 정보가 포함되는 경우, 블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 중 어느 하나로 응답 모드를 결정할 수 있다.
다른 예로, 제어부(1710)는 요청 메시지에 알림 타켓 정보가 포함되지 않는 경우, 블록킹 모드 및 동기식 넌블록킹 모드 중 어느 하나로 응답 모드를 결정할 수 있다.
한편, 송신부(1720)는 요청 메시지에 대한 정상 수신 여부를 지시하는 응답 상태 코드를 발신자에게 전송한다. 응답 상태 코드는 결정된 응답 모드에 따라 구분되는 값으로 설정될 수 있다.
일 예로, 제어부(1710)가 응답 모드를 블록킹 모드로 결정한 경우에 응답 상태 코드는 1000으로 설정되어 응답 메시지에 포함될 수 있다.
다른 예로, 제어부(1710)가 응답 모드를 동기식 넌블록킹 모드로 결정한 경우에 응답 상태 코드는 1001로 설정되어 응답 메시지에 포함될 수 있다.
또 다른 예로, 제어부(1710)가 응답 모드를 비동기식 넌블록킹 모드로 결정한 경우에 응답 상태 코드는 1002로 설정되어 응답 메시지에 포함될 수 있다.
이 외에도, 제어부(1710)는 본 실시예에 따른 응답 유형 파라미터가 플렉스 블록킹으로 설정된 경우에 응답 모드를 결정하고, 응답 모드에 따라 응답 상태 코드를 구분하여 결정하는 데에 따른 전반적인 M2M 장치(1700)의 동작을 제어한다.
또한, 송신부(1720) 및 수신부(1730)는 발신자, 타 M2M 장치, M2M 시스템을 구성하는 다른 노드 및 사용자 단말기 중 적어도 하나와 본 실시예를 수행하는 데에 필요한 메시지, 신호 및 데이터를 송수신하는 데에 사용된다.
본 명세서에서의 "시스템", "프로세서", "컨트롤러", "컴포넌트", "모듈", "인터페이스", "모델", "유닛" 등의 용어는 일반적으로 컴퓨터 관련 엔티티 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어 또는 실행 중인 소프트웨어를 의미할 수 있다. 예를 들어, 전술한 구성요소는 프로세서에 의해서 구동되는 프로세스, 프로세서, 컨트롤러, 제어 프로세서, 개체, 실행 스레드, 프로그램 및/또는 컴퓨터일 수 있지만 이에 국한되지 않는다. 예를 들어, 컨트롤러 또는 프로세서에서 실행 중인 애플리케이션과 컨트롤러 또는 프로세서가 모두 구성 요소가 될 수 있습니다. 하나 이상의 구성 요소가 프로세스 및/또는 실행 스레드 내에 있을 수 있으며 구성 요소는 한 시스템에 위치하거나 두 대 이상의 시스템에 배포될 수 있다.
전술한 실시예에서 언급한 표준내용 또는 표준문서들은 명세서의 설명을 간략하게 하기 위해 생략한 것으로 본 명세서의 일부를 구성한다. 따라서, 위 표준내용 및 표준문서들의 일부의 내용을 본 명세서에 추가하거나 청구범위에 기재하는 것은 본 발명의 범위에 해당하는 것으로 해석되어야 한다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (16)

  1. M2M(Machine to Machine communication) 장치가 요청 메시지를 처리하는 방법에 있어서,
    응답 유형 파라미터 정보를 포함하는 요청 메시지를 타 M2M 장치로부터 수신하는 단계;
    상기 응답 유형 파라미터 정보를 확인하고, 상기 응답 유형 파라미터 정보에 따라 응답 모드를 결정하는 단계; 및
    상기 결정된 응답 모드에 따라 구분되어 설정되는 응답 상태 코드를 포함하는 응답 메시지를 전송하는 단계를 포함하는 방법.
  2. 제 1 항에 있어서,
    상기 요청 메시지는,
    동작 파라미터, 수신측 파라미터, 송신측 파라미터 및 요청 식별 파라미터를 더 포함하되,
    상기 응답 메시지는 상기 요청 식별 파라미터에 포함된 식별자와 동일한 식별자를 포함하는 것을 특징으로 하는 방법.
  3. 제 1 항에 있어서,
    상기 응답 모드는,
    블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 중 어느 하나로 결정되는 것을 특징으로 하는 방법.
  4. 제 1 항에 있어서,
    상기 응답 유형 파라미터는,
    플렉스 블록킹을 지시하는 정보를 포함하는 것을 특징으로 하는 방법.
  5. 제 4 항에 있어서,
    상기 응답 모드를 결정하는 단계는,
    상기 요청 메시지에 알림 타켓 정보(Notification target information)의 포함 여부를 더 확인하여 상기 응답 모드를 결정하는 것을 특징으로 하는 방법.
  6. 제 5 항에 있어서,
    상기 응답 모드를 결정하는 단계는,
    상기 요청 메시지에 상기 알림 타켓 정보가 포함되는 경우, 블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 중 어느 하나로 상기 응답 모드를 결정하는 것을 특징으로 하는 방법.
  7. 제 5 항에 있어서,
    상기 응답 모드를 결정하는 단계는,
    상기 요청 메시지에 상기 알림 타켓 정보가 포함되지 않는 경우, 블록킹 모드 및 동기식 넌블록킹 모드 중 어느 하나로 상기 응답 모드를 결정하는 것을 특징으로 하는 방법.
  8. 제 1 항에 있어서,
    상기 응답 상태 코드는,
    상기 결정된 응답 모드에 따라 블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 각각이 서로 다른 값을 갖도록 설정되는 것을 특징으로 하는 방법.
  9. 요청 메시지를 처리하는 M2M(Machine to Machine communication) 장치에 있어서,
    응답 유형 파라미터 정보를 포함하는 요청 메시지를 타 M2M 장치로부터 수신하는 수신부;
    상기 응답 유형 파라미터 정보를 확인하고, 상기 응답 유형 파라미터 정보에 따라 응답 모드를 결정하는 제어부; 및
    상기 결정된 응답 모드에 따라 구분되어 설정되는 응답 상태 코드를 포함하는 응답 메시지를 전송하는 송신부를 포함하는 M2M 장치.
  10. 제 9 항에 있어서,
    상기 요청 메시지는,
    동작 파라미터, 수신측 파라미터, 송신측 파라미터 및 요청 식별 파라미터를 더 포함하되,
    상기 응답 메시지는 상기 요청 식별 파라미터에 포함된 식별자와 동일한 식별자를 포함하는 것을 특징으로 하는 M2M 장치.
  11. 제 9 항에 있어서,
    상기 응답 모드는,
    블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 중 어느 하나로 결정되는 것을 특징으로 하는 M2M 장치.
  12. 제 9 항에 있어서,
    상기 응답 유형 파라미터는,
    플렉스 블록킹을 지시하는 정보를 포함하는 것을 특징으로 하는 M2M 장치.
  13. 제 12 항에 있어서,
    상기 제어부는,
    상기 요청 메시지에 알림 타켓 정보(Notification target information)의 포함 여부를 더 확인하여 상기 응답 모드를 결정하는 것을 특징으로 하는 M2M 장치.
  14. 제 13 항에 있어서,
    상기 제어부는,
    상기 요청 메시지에 상기 알림 타켓 정보가 포함되는 경우, 블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 중 어느 하나로 상기 응답 모드를 결정하는 것을 특징으로 하는 M2M 장치.
  15. 제 13 항에 있어서,
    상기 제어부는,
    상기 요청 메시지에 상기 알림 타켓 정보가 포함되지 않는 경우, 블록킹 모드 및 동기식 넌블록킹 모드 중 어느 하나로 상기 응답 모드를 결정하는 것을 특징으로 하는 M2M 장치.
  16. 제 9 항에 있어서,
    상기 응답 상태 코드는,
    상기 결정된 응답 모드에 따라 블록킹 모드, 동기식 넌블록킹 모드 및 비동기식 넌블록킹 모드 각각이 서로 다른 값을 갖도록 설정되는 것을 특징으로 하는 M2M 장치.
KR1020180070116A 2017-06-20 2018-06-19 M2m 시스템에서 요청 메시지를 처리하는 방법 및 그 장치 KR102077582B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/KR2018/006944 WO2018236137A1 (ko) 2017-06-20 2018-06-20 M2m 시스템에서 요청 메시지를 처리하는 방법 및 그 장치
US16/625,635 US11290860B2 (en) 2017-06-20 2018-06-20 Method for processing request message in M2M system and device therefor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170078225 2017-06-20
KR20170078225 2017-06-20

Publications (2)

Publication Number Publication Date
KR20180138183A true KR20180138183A (ko) 2018-12-28
KR102077582B1 KR102077582B1 (ko) 2020-02-17

Family

ID=65008496

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180070116A KR102077582B1 (ko) 2017-06-20 2018-06-19 M2m 시스템에서 요청 메시지를 처리하는 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102077582B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170007691A (ko) * 2015-07-09 2017-01-19 주식회사 케이티 M2m 시스템에서 응답 정보를 수신하는 방법 및 그 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170007691A (ko) * 2015-07-09 2017-01-19 주식회사 케이티 M2m 시스템에서 응답 정보를 수신하는 방법 및 그 장치

Also Published As

Publication number Publication date
KR102077582B1 (ko) 2020-02-17

Similar Documents

Publication Publication Date Title
US10206090B2 (en) Method and device for searching for available device in M2M environment
CN107667550B (zh) 无线通信系统中通过轮询信道来处理请求的方法及其设备
KR20160082967A (ko) M2m 통신 시스템에서 구독 및 통지를 위한 방법 및 이를 위한 장치
EP3163798B1 (en) Method for processing request messages in wireless communication system, and device for same
WO2015188440A1 (zh) 资源订阅处理方法及装置
KR20170033267A (ko) 무선 통신 시스템에서 요청 메시지를 처리하기 위한 방법 및 이를 위한 장치
TW202142010A (zh) 用戶資料更新方法、裝置、節點和儲存媒體
KR102051839B1 (ko) M2m 시스템에서 메시지를 처리하는 방법 및 그 장치
US11290860B2 (en) Method for processing request message in M2M system and device therefor
KR20150067037A (ko) M2m 시스템에서 구독의 기준정보 최적화 방법 및 장치
KR20190002340A (ko) M2m 시스템에서 요청 메시지를 처리하는 방법 및 그 장치
KR20150067044A (ko) M2m 시스템에서 노드 자원 상태에 따른 공통 서비스 실행 최적화 방법 및 장치
KR20150014345A (ko) 요청 메시지의 신뢰성을 확보하는 방법 및 장치
KR102092100B1 (ko) 공인 ip 네트워크를 통해서 사물통신을 처리하는 방법 및 그 장치
KR20190004233A (ko) M2m 시스템에서 메시지를 전송하는 방법 및 그 장치
KR102077582B1 (ko) M2m 시스템에서 요청 메시지를 처리하는 방법 및 그 장치
KR20150067041A (ko) 부하 분산을 위한 m2m 시스템에서의 등록을 제어하는 방법 및 장치
KR102465844B1 (ko) M2m 시스템에서 통지 실패시 통지 메시지를 처리하는 방법 및 장치
KR20170053130A (ko) 보안 개체에서 접근을 제어하는 방법 및 그 장치
KR20180107752A (ko) M2m 시스템에서 요청 메시지를 처리하는 방법 및 그 장치
KR20160073927A (ko) M2m 시스템에서 장치의 교체를 제어하는 방법 및 그 장치
KR20180106934A (ko) M2m 시스템에서 그룹 자원의 처리 방법과 그 장치
KR20150066401A (ko) M2m 환경에서의 데이터 적용기술
KR20160056815A (ko) M2m 시스템에서 기기 간의 연결을 제어하는 방법
KR20150066474A (ko) 데이터 전송을 위한 타겟 리소스 주소 확보 방법 및 이를 위한 장치

Legal Events

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