KR20180120576A - Methods for processing M2M communication via public IP And Apparatuses thereof - Google Patents

Methods for processing M2M communication via public IP And Apparatuses thereof Download PDF

Info

Publication number
KR20180120576A
KR20180120576A KR1020180042814A KR20180042814A KR20180120576A KR 20180120576 A KR20180120576 A KR 20180120576A KR 1020180042814 A KR1020180042814 A KR 1020180042814A KR 20180042814 A KR20180042814 A KR 20180042814A KR 20180120576 A KR20180120576 A KR 20180120576A
Authority
KR
South Korea
Prior art keywords
packet
connection
relay
relay server
public
Prior art date
Application number
KR1020180042814A
Other languages
Korean (ko)
Other versions
KR102092100B1 (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 주식회사 케이티
Priority to PCT/KR2018/004373 priority Critical patent/WO2018199523A1/en
Publication of KR20180120576A publication Critical patent/KR20180120576A/en
Application granted granted Critical
Publication of KR102092100B1 publication Critical patent/KR102092100B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention relates to a private IP-based M2M communication method via a public IP in a machine to machine (M2M) communication system and an apparatus thereof. An embodiment of the present invention provides a method for enabling a M2M communication apparatus to communicate with another M2M communication apparatus through a public internet protocol (IP) network, including the steps of: transmitting a connection packet for setting a connection to a relay server through a relay client module; setting the connection with the relay server by receiving response information to the connection packet for setting the connection; including a request message to be transmitted to another M2M communication apparatus in a publish packet to be transmitted to the relay server when the connection with the relay server is set; and receiving the publish packet including a response message generated by another M2M communication apparatus with regard to the request message, from the relay server, and the apparatus thereof. Accordingly, the present invention can provide a smooth communication method configured in different networks between the M2M communication apparatuses.

Description

공인 IP 네트워크를 통해서 사물통신을 처리하는 방법 및 그 장치{Methods for processing M2M communication via public IP And Apparatuses thereof}METHOD FOR PROCESSING < RTI ID = 0.0 > M2M < / RTI > communication via IP &

본 발명은 M2M(Machine to Machine communication) 시스템에서 공인 IP를 경유하는 사설 IP 기반의 사물통신 방법과 그 장치에 대한 것이다.The present invention relates to a private IP-based object communication method and apparatus using a public IP in a machine-to-machine communication (M2M) system.

사물 통신(M2M, "Machine to machine communication" 또는 MTC, "Machine type communication" 또는 스마트 디바이스 통신, "Smart Device communication" 또는 "Machine oriented communication" 또는 사물 인터넷, "Internet of Things")은 사람이 통신 과정에 개입하지 않고 통신이 이루어지는 방식의 모든 통신 방식을 지칭한다. "Machine to Machine Communication" or MTC, "Machine Type Communication" or "Smart Device Communication" or "Machine oriented communication" or "Internet of Things" In which communication is performed without intervening in the network.

사물통신은 통상적으로 사람이 직접적으로 통신과 응용 제어를 수행하지 않기 때문에, 사물 간에 메시지를 교환하기 위해서 송수신 방법과 절차와 필요하다. 또한, M2M 장치 간의 원활한 메시지 교환을 위한 프로토콜이 필요하다. Since object communication does not normally perform communication and application control directly by a person, transmission and reception methods and procedures are required to exchange messages between objects. There is also a need for a protocol for smooth message exchange between M2M devices.

특히, IoT 기기의 대중화에 따라서 다수의 사물 통신 장치가 가정 및 직장 내에서 사용되고 있으며, 동일 또는 유사한 기능을 수행하는 사물 통신 장치가 일정 목적을 위해서 다수 전개되는 상황이 존재한다. Particularly, in accordance with popularization of IoT devices, a plurality of object communication devices are used in the home and office, and a plurality of object communication devices performing the same or similar functions are deployed for a certain purpose.

이러한 상황에서 다수의 사물 통신 장치는 동일한 네트워크에 전개될 수도 있고, 서로 다른 네트워크에 전개될 수도 있다. 예를 들어, 서로 다른 사설 네트워크에 구성되는 사물 통신 장치가 상호 통신을 수행할 필요성도 발생할 수 있다. In this situation, a plurality of object communication devices may be deployed in the same network or may be deployed in different networks. For example, there may be a need for object communication devices configured in different private networks to perform mutual communication.

그러나, 현재 사물 통신 네트워크는 동일 네트워크에 존재하는 사물 통신 장치 간의 통신 프로토콜을 정의하고 있을 뿐, 서로 다른 네트워크에 포함되는 사물 통신 장치 간의 통신에 대해서는 고려되지 않고 있다. However, current object communication networks only define communication protocols between object communication devices existing in the same network, and communication between object communication devices included in different networks is not considered.

특히, 서로 다른 사설 IP 네트워크에 구성되는 사물 통신 장치가 공인 IP 네트워크를 통해서 통신을 수행하는 경우에 사설 IP 네트워크의 방화벽 등으로 인해서 원활하게 통신이 수행되지 못하는 문제점이 있다. In particular, when the object communication apparatus configured in different private IP networks performs communication through the public IP network, communication can not be smoothly performed due to a firewall of the private IP network or the like.

전술한 배경에서 안출된 일 실시예는 서로 다른 네트워크에 구성되는 사물 통신 장치 간의 원활한 통신 방법을 제공하고자 한다. One embodiment disclosed in the above background is to provide a method for smooth communication between object communication devices formed in different networks.

또한, 일 실시예는 사설 IP를 사용하는 사물 통신 장치가 공인 IP를 통해서 수행이 가능하도록 외부 사설 IP를 사용하는 사물 통신 장치와 통신을 수행할 수 있도록 하는 방법 및 장치를 제공하고자 한다. In addition, one embodiment of the present invention is to provide a method and apparatus for enabling a object communication apparatus using a private IP to communicate with a object communication apparatus using an external private IP so as to be able to perform through a public IP.

전술한 과제를 해결하기 위한 일 실시예는 M2M(Machine to Machine communication) 장치가 공인 IP(Internet Protocol) 네트워크를 통해서 타 M2M 장치와 통신을 수행하는 방법에 있어서, 중계 클라이언트 모듈을 통해서 중계 서버로의 연결 설정을 위한 연결 패킷을 전송하고, 연결 설정을 위한 연결 패킷에 대한 응답 정보를 수신하여 중계 서버와의 연결을 설정하는 단계와 중계 서버와의 연결이 설정되면, 타 M2M 장치로 전송하기 위한 요청 메시지를 퍼블리쉬 패킷에 포함하여 중계 서버로 전송하는 단계 및 요청 메시지에 대해서 타 M2M 장치가 생성한 응답 메시지를 포함하는 퍼블리쉬 패킷을 중계 서버로부터 수신하는 단계를 포함하는 방법을 제공한다. According to an embodiment of the present invention, there is provided a method of communicating with another M2M device through a public IP (Internet Protocol) network, the method comprising: A step of transmitting a connection packet for establishing a connection, receiving response information for a connection packet for establishing a connection and establishing a connection with a relay server, and transmitting a request for transmission to another M2M device Transmitting the message to the relay server by including the message in a public packet, and receiving a public packet including the response message generated by another M2M device with respect to the request message from the relay server.

또한, 일 실시예는 중계 서버가 공인 IP(Internet Protocol) 네트워크를 통해서 M2M(Machine to Machine communication) 장치 간의 통신을 중계하는 방법에 있어서, M2M 장치 및 타 M2M 장치 각각의 중계 클라이언트 모듈로부터 연결 설정을 위한 연결 패킷을 수신하여, M2M 장치 및 타 M2M 장치 각각과의 연결을 설정하는 단계와 M2M 장치의 중계 클라이언트 모듈로부터 타 M2M 장치로 전송하기 위한 요청 메시지를 포함하는 퍼블리쉬 패킷을 수신하는 단계와 요청 메시지를 포함하는 퍼블리쉬 패킷을 타 M2M 장치의 중계 클라이언트 모듈로 전송하는 단계와 타 M2M 장치의 중계 클라이언트 모듈로부터 요청 메시지에 대한 응답 메시지를 포함하는 퍼블리쉬 패킷을 수신하는 단계 및 응답 메시지를 포함하는 퍼블리쉬 패킷을 M2M 장치의 중계 클라이언트 모듈로 전송하는 단계를 포함하는 방법을 제공한다. According to an embodiment of the present invention, there is provided a method of relaying communication between M2M (machine to machine communication) devices via a public IP (Internet Protocol) network, Receiving a connection packet for establishing a connection with each of the M2M device and the other M2M devices, receiving a public packet including a request message for transferring from the relay client module of the M2M device to another M2M device, Receiving a public packet including a response message for a request message from the relay client module of the other M2M device and transmitting a public packet including a response message to the relay client module of the other M2M device; To the relay client module of the M2M device It provides a way.

또한, 일 실시예는 공인 IP(Internet Protocol) 네트워크를 통해서 타 M2M 장치와 통신을 수행하는 M2M(Machine to Machine communication) 장치에 있어서, 중계 클라이언트 모듈을 통해서 중계 서버로의 연결 설정을 위한 연결 패킷을 전송하고, 연결 설정을 위한 연결 패킷에 대한 응답 정보를 수신하여 중계 서버와의 연결을 설정하는 제어부와 중계 서버와의 연결이 설정되면, 타 M2M 장치로 전송하기 위한 요청 메시지를 퍼블리쉬 패킷에 포함하여 중계 서버로 전송하는 송신부 및 요청 메시지에 대해서 타 M2M 장치가 생성한 응답 메시지를 포함하는 퍼블리쉬 패킷을 중계 서버로부터 수신하는 수신부를 포함하는 M2M 장치를 제공한다. In an exemplary embodiment of the present invention, an M2M (Machine to Machine Communication) device for communicating with another M2M device through a public IP network includes a connection packet for establishing a connection to a relay server through a relay client module When the connection between the control server and the relay server is established, the request message for transmission to another M2M device is included in the public packet, And a receiving unit for receiving, from a relay server, a transmission packet including a transmission unit for transmitting the request message and a response message generated by another M2M device to the relay server.

또한, 일 실시예는 공인 IP(Internet Protocol) 네트워크를 통해서 M2M(Machine to Machine communication) 장치 간의 통신을 중계하는 중계 서버에 있어서, M2M 장치 및 타 M2M 장치 각각의 중계 클라이언트 모듈로부터 연결 설정을 위한 연결 패킷을 수신하여, M2M 장치 및 타 M2M 장치 각각과의 연결을 설정하는 제어부와 M2M 장치의 중계 클라이언트 모듈로부터 타 M2M 장치로 전송하기 위한 요청 메시지를 포함하는 퍼블리쉬 패킷을 수신하는 수신부 및 요청 메시지를 포함하는 퍼블리쉬 패킷을 타 M2M 장치의 중계 클라이언트 모듈로 전송하는 송신부를 포함하되, 수신부는 타 M2M 장치의 중계 클라이언트 모듈로부터 요청 메시지에 대한 응답 메시지를 포함하는 퍼블리쉬 패킷을 더 수신하고, 송신부는 응답 메시지를 포함하는 퍼블리쉬 패킷을 M2M 장치의 중계 클라이언트 모듈로 더 전송하는 중계 서버를 제공한다. In an exemplary embodiment, a relay server for relaying communication between M2M (machine to machine communication) devices through a public IP (Internet Protocol) network, the relay server comprising: A receiving unit for receiving a public packet including a control unit for receiving a packet and establishing a connection with each of the M2M device and the other M2M devices and a request message for transferring the request message from the relaying client module of the M2M device to another M2M device, And a transmitting unit for transmitting the public packet to the relay client module of the other M2M apparatus, wherein the receiving unit further receives a public packet including a response message for the request message from the relay client module of the other M2M apparatus, And transmits the included public packet to the relay client module To the relay server.

본 개시는 서로 다른 사설 IP를 사용하는 복수의 사물 통신 장치가 공인 IP를 통해서 원활하게 메시지를 송수신할 수 있는 효과를 제공한다. The present disclosure provides an effect that a plurality of object communication apparatuses using different private IPs can smoothly transmit and receive messages through the public IP.

또한, 본 개시는 서로 다른 네트워크에 구성되는 사물 통신 장치 간에 공인 또는 사설 IP의 제한없이 필요에 따라 데이터를 송수신할 수 있는 효과를 제공한다. The present disclosure also provides the effect that data can be transmitted and received as needed between object communication apparatuses configured in different networks without limitation of public or private IP.

도 1은 M2M 시스템을 상위 레벨의 기능적 관점에서 도시한 도면이다.
도 2는 일 실시예에 따른 M2M 시스템 구성도를 보다 구체적으로 도시한 도면이다.
도 3은 M2M 시스템에서 요청 메시지 전송과 이에 따른 응답 정보를 수신하는 절차를 예시적으로 도시한 도면이다.
도 4는 일 실시예에 따른 공통 서비스 개체의 기능적 구조를 도시한 도면이다.
도 5는 공인 IP와 사설 IP를 사용하는 경우에 발생할 수 있는 문제점을 설명하기 위한 도면이다.
도 6은 사설 IP를 사용하는 M2M 장치 간에 공인 IP 네트워크를 경유하여 통신을 수행하는 경우에 발생할 수 있는 문제점을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 M2M 장치의 동작을 설명하기 위한 도면이다.
도 8은 일 실시예에 다른 중계 서버의 동작을 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 중계 서버가 M2M 장치와 통합되어 구성된 구조를 예시적으로 도시한 도면이다.
도 10은 일 실시예에 따른 중계 서버가 독립적으로 구성된 구조를 예시적으로 도시한 도면이다.
도 11은 일 실시예에 따른 연결 패킷을 이용하여 중계 서버와 연결을 설정하는 절차를 설명하기 위한 도면이다.
도 12는 다른 실시예에 따른 연결 패킷을 이용하여 중계 서버와 연결을 설정하는 절차를 설명하기 위한 도면이다.
도 13은 일 실시예에 따른 퍼블리쉬 패킷을 이용하여 메시지를 전달하는 절차를 설명하기 위한 도면이다.
도 14는 다른 실시예에 따른 퍼블리쉬 패킷을 이용하여 메시지를 전달하는 절차를 설명하기 위한 도면이다.
도 15는 일 실시예에 따른 연결 패킷 포맷과 고정 헤더의 구조를 도시한 도면이다.
도 16은 일 실시예에 따른 연결 패킷 가변 헤더의 구조를 도시한 도면이다.
도 17은 일 실시예에 따른 연결 패킷 페이로드의 구조를 도시한 도면이다.
도 18은 일 실시예에 따른 연결 확인 패킷 포맷과 각 헤더의 구조를 도시한 도면이다.
도 19는 일 실시예에 따른 가입(subscribe) 패킷 포맷과 고정 헤더, 가변 헤더 및 페이로드의 구조를 도시한 도면이다.
도 20은 일 실시예에 따른 가입(subscribe) 확인 패킷 포맷과 고정 헤더, 가변 헤더 및 페이로드의 구조를 도시한 도면이다.
도 21은 일 실시예에 따른 퍼블리쉬 패킷 포맷과 고정 헤더, 가변 헤더 구조를 도시한 도면이다.
도 22는 일 실시예에 다른 퍼블리쉬 확인 패킷 포맷과 고정 헤더, 가변 헤더 구조를 도시한 도면이다.
도 23은 일 실시예에 따른 M2M 장치의 구조를 도시한 도면이다.
도 24는 일 실시예에 따른 중계 서버의 구조를 도시한 도면이다.
BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is a diagram illustrating the M2M system from a high level functional view.
FIG. 2 is a view showing a more detailed structure of the M2M system according to one embodiment.
FIG. 3 is an exemplary diagram illustrating a procedure for transmitting a request message and receiving response information in the M2M system.
FIG. 4 is a diagram illustrating a functional structure of a common service entity according to an embodiment.
FIG. 5 is a diagram for explaining a problem that may occur when using a public IP and a private IP.
FIG. 6 is a diagram for explaining a problem that may occur when communication is performed between M2M devices using a private IP via a public IP network.
7 is a diagram for explaining the operation of the M2M device according to an embodiment.
8 is a diagram for explaining the operation of a relay server according to an embodiment.
FIG. 9 is a diagram illustrating a structure in which a relay server according to an embodiment is integrated with an M2M device.
10 is a diagram illustrating a structure in which a relay server according to an embodiment is configured independently.
11 is a diagram for explaining a procedure for establishing a connection with a relay server using a connection packet according to an embodiment.
12 is a diagram for explaining a procedure for establishing a connection with a relay server using a connection packet according to another embodiment.
13 is a diagram for explaining a procedure for delivering a message using a public packet according to an embodiment.
14 is a diagram for explaining a procedure of delivering a message using a public packet according to another embodiment.
15 is a diagram illustrating a structure of a connection packet format and a fixed header according to an embodiment.
16 is a diagram illustrating a structure of a connection packet variable header according to an embodiment.
17 is a diagram illustrating a structure of a connection packet payload according to an embodiment.
18 is a diagram illustrating a connection acknowledgment packet format and the structure of each header according to an embodiment.
FIG. 19 is a diagram illustrating a structure of a subscribe packet format, a fixed header, a variable header, and a payload according to an embodiment.
FIG. 20 is a diagram illustrating a structure of a subscribe acknowledgment packet format, a fixed header, a variable header, and a payload according to an embodiment.
21 is a diagram illustrating a public packet format, a fixed header, and a variable header structure according to an embodiment.
FIG. 22 is a diagram illustrating another format of a public-key confirmation packet, a fixed header, and a variable header according to an embodiment of the present invention.
23 is a diagram illustrating a structure of an M2M device according to an embodiment.
24 is a diagram illustrating a structure of a relay server according to an embodiment.

이하, 본 발명의 일부 실시 예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조 부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to exemplary drawings. It should be noted that, in adding reference numerals to the constituent elements of the drawings, the same constituent elements are denoted by the same reference symbols as possible even if they are shown in different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In describing the components of the present invention, terms such as first, second, A, B, (a), and (b) may be used. These terms are intended to distinguish the constituent elements from other constituent elements, and the terms do not limit the nature, order or order of the constituent elements. When a component is described as being "connected", "coupled", or "connected" to another component, the component may be directly connected or connected to the other component, Quot; may be " connected, " " coupled, " or " connected. &Quot;

본 발명의 실시예들은 사물 통신을 중심으로 설명한다. 사물 통신은 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)분야, 그리고 기타 분야 등으로 나뉘어진다. 본 발명은 상기 분야를 포함하며, 그 외의 분야에도 적용 가능하다.Embodiments of the present invention will be described with reference to object communication. Object communication is variously called M2M (Machine to Machine communication), MTC (Machine Type Communication), IoT (Internet of Things), Smart Device Communication (SDC), or Machine Oriented Communication . OneM2M has recently introduced many technical issues related to object communication. Object communication refers to various communication in which communication is performed without a person intervening in the communication process. In the field of telecommunication, there are various fields such as energy field, enterprise field, healthcare field, public service field, residential field, retail field, transportation field, and others Field, and so on. The present invention includes the above-mentioned fields, and is applicable to other fields.

도 1은 일 실시예에 따른 M2M 시스템을 상위 레벨의 기능적 관점에서 도시한 도면이다. 1 is a diagram illustrating a high-level functional view of an M2M system according to an embodiment.

애플리케이션 개체(Application Entity, AE)(110)는 종단간(end-to-end) M2M 솔루션을 위한 응용 서비스 로직을 제공한다. 일 예로 차량 등의 집단적인 추적 애플리케이션(fleet tracking application), 원격 혈당 감시 애플리케이션(remote blood sugar monitoring application), 또는 원격 전력 검침과 제어 애플리케이션(remote power metering and controlling application) 등이 될 수 있다. An application entity (AE) 110 provides application service logic for an end-to-end M2M solution. For example, a fleet tracking application such as a vehicle, a remote blood sugar monitoring application, or a remote power metering and controlling application.

공통 서비스 개체(Common Services Entity, CSE)(120)는 에너지(energy) 분야, 엔터프라이즈(enterprise) 분야, 헬스케어(Healthcare) 분야, 공공 서비스(Public Services) 분야, 주거(Residential) 분야, 소매(Retail) 분야, 운송(Transportation)분야, 그리고 기타 분야 등에서 공통적으로 필요한 집합적인 서비스 기능이다.The Common Services Entity (CSE) 120 may be used for various services such as an energy field, an enterprise field, a healthcare field, a public service field, a residential field, ), Transportation (transportation), and other fields.

이러한 서비스 기능은 참조점(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 내의 서브기능들 역시 필수적 또는 선택적이 될 수 있다. This service function is exposed as a different function through reference points Mca, Mcc, and uses the base network service using the reference point Mcn. One example of the common service entity may be data management, device management, M2M subscription management, location service, and the like. The subfunctions provided by the CSE can be logically understood as a CSF (Common Service Function). Some of the CSFs within the CSE of oneM2M node are mandatory and some may be optional. Similarly, the subfunctions in the CSF may also be mandatory or optional.

기반 네트워크 서비스 기능(Underlying Network Services Function, NSF)(130)은 공통 서비스 개체에게 서비스를 제공한다. 서비스의 예로는 디바이스 관리, 위치 서비스(location services)와 디바이스 트리거링(device triggering)을 포함한다. An underlying network services function (NSF) 130 provides services to the common service entity. Examples of services include device management, location services and device triggering.

참조점(Reference Points)은 공통 서비스 개체(CSE)에서 지원되는 것으로 Mca 참조점은 애플리케이션 개체와 공통 서비스 개체 간의 사물통신을 제공하기 위한 참조점이다. Mcc 참조점은 두 공통 서비스 개체 간의 통신 사물통신을 제공하기 위한 참조점이다. Mcn 참조점은 공통 서비스 개체와 하나의 네트워크 서비스 개체간의 사물통신을 제공하기 위한 참조점이다.Reference Points are supported in a common service entity (CSE), and the Mca reference point is a reference point for providing object communication between an application entity and a common service entity. The Mcc reference point is a reference point for providing communications between the two common service entities. The Mcn reference point is a reference point for providing object communication between a common service entity and one network service entity.

보다 상세히, Mca 참조점은 하나의 애플리케이션 개체(AE)가 공통 서비스 개체에 의해 지원되는 서비스를 사용할 수 있도록 한다. Mca 참조점을 통해 제공되는 서비스들은 공통 서비스 개체가 제공하는 기능에 의존적이며, 애플리케이션 개체와 공통 서비스 개체는 동일한 물리적 개체에 존재하거나 다른 물리적 개체에 따로 존재할 수 있다. Mcc 참조점은 필요한 기능을 제공하는 다른 공통 서비스 개체의 서비스를 사용하고자 하는 공통 서비스 개체에게 그러한 사용을 가능하게 한다. Mcc 참조점을 통해 제공되는 서비스들은 공통 서비스 개체가 제공하는 기능에 의존적이다. Mcc 참조점은 서로 다른 M2M 노드 간에 지원될 수 있다. Mcn 참조점은 필요한 기능을 제공하는 기반 네트워크의 서비스 개체를 사용하고자 하는 공통 서비스 개체에게 그러한 사용을 가능하게 하며, 이는 전송과 연결 이외의 서비스를 제공한다. Mcn 참조점의 인스턴스(instance)는 기반 네트워크에서 제공되는 서비스에 의존적으로 구현된다. 두 개의 물리적 M2M 노드 간의 정보 교환은 기본 서비스를 제공하는 기반 네트워크의 전송(transport) 및 연결(connectivity) 서비스를 사용할 수 있다.More specifically, the Mca reference point allows one application entity (AE) to use the services supported by the common service entity. The services provided through the Mca reference point are dependent on the functionality provided by the common service entity, and the application entity and the common service entity may reside in the same physical entity or in different physical entities. The Mcc reference point enables such use by a common service entity that wishes to use the services of other common service entities that provide the necessary functionality. The services provided through the Mcc reference point are dependent on the functionality provided by the common service entity. Mcc reference points can be supported between different M2M nodes. The Mcn reference point enables such use by a common service entity that wishes to use the service object of the underlying network providing the necessary functionality, which provides services other than transport and connection. The instance of the Mcn reference point is implemented dependent on the service provided in the underlying network. Information exchange between two physical M2M nodes can use the transport and connectivity services of the underlying network to provide basic services.

본 명세서에서는 공통 서비스 개체를 CSE로 기재할 수 있으며, 네트워크 서비스 개체를 NSE (Network Service Entity)로 기재할 수 있다. 또한, 본 명세서에서의 M2M 장치는 CSE 또는 AE를 의미하거나, CSE 또는 AE를 포함하는 장치를 의미하며, M2M 시스템을 구성하는 디바이스 또는 단말을 의미한다. In this specification, a common service entity can be described as a CSE, and a network service entity can be described as a network service entity (NSE). In this specification, the M2M device means CSE or AE, means a device including CSE or AE, and means a device or terminal constituting the M2M system.

도 2는 일 실시예에 따른 M2M 시스템 구성도를 보다 구체적으로 도시한 도면이다. FIG. 2 is a view showing a more detailed structure of the M2M system according to one embodiment.

도 2를 참조하면, 기반노드(Infrastructure Node, 250)는 M2M 통신을 제공하는데 필수적인 서버 기능을 수행한다. 기반노드(250)는 기반노드 응용개체(AE, 252)와 기반노드 공통서비스개체(CSE, 254)로 구성된다. 기반노드 공통서비스 개체(254)는 다양한 자원을 이용하여 구성된다. 252와 254는 Mca 참조점을 통하여 구분하고, 사물통신에 필요한 메시지, 특히 스케줄러 자원의 생성 (create), 삭제 (delete), 갱신 (update), 조회 (retrieve), 통지 (notify)하기 위한 요청메시지와 응답메시지의 구성과 처리에 사용한다.Referring to FIG. 2, an infrastructure node 250 performs a server function necessary to provide M2M communication. The originating node 250 is comprised of an originating node application entity (AE) 252 and an originating node common service entity (CSE) 254. Based node common service entity 254 is configured using various resources. 252 and 254 are divided through an Mca reference point and a message for communication of objects, particularly a request message for creating, deleting, updating, retrieving, and notifying the scheduler resource And for constructing and processing response messages.

중계노드(200)는 응용서비스노드(220)와 기반노드(250)의 M2M 통신 또는 Internet of Things, 사물통신 기능을 중계한다. 중계노드(200)는 중계노드 응용개체(202)와 중계노드 공통서비스개체(204)로 구성된다. 중계노드 공통서비스개체 (204)는 다양한 자원을 이용하여 구성된다. 202와 204는 Mca 참조점을 통하여 구분하며, 254와 204는 Mcc참조점을 이용하여 구분하고, 사물통신에 필요한 메시지, 특히 스케줄러 자원의 생성 (create), 삭제 (delete), 갱신 (update), 조회(retrieve), 통지 (notify)하기 위한 요청메시지와 응답메시지의 구성과 처리에 사용한다.The relay node 200 relays the M2M communication or the Internet of Things communication between the application service node 220 and the base node 250. The relay node 200 includes a relay node application entity 202 and a relay node common service entity 204. The relay node common service entity 204 is configured using various resources. 202 and 204 are divided through Mca reference points and 254 and 204 are classified using Mcc reference points and messages necessary for object communication, in particular, create, delete, update, Used to construct and process request and response messages to retrieve and 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과 통신한다.The application service node 210 may include an application entity 212 and a relay node common service entity 214. The application entity 212 processes the application functions required for the purpose of the device. The common service entity 214 of the application service node 210 is configured using various resources. 212 and 214 are divided through Mca reference points and 214 and 254 are classified using Mcc reference points and messages necessary for object communication, in particular, create, delete, update, Used to construct and process request and response messages to retrieve and notify. Meanwhile, the application service node 220 may perform the object communication function with the base node 250 through the relay node 200. The difference between 210 and 220 is that the communication interfaces constituting the node are different. For example, the 220 communicates with 200 through 200 using an interface capable of a near-field communication such as Bluetooth, ZigBee, Zwave, and WiFi. On the other hand, the 210 communicates with 250 using a communication interface such as 3G, LTE, 5G, Ethernet, Gigabit Ethernet, ADSL and the like.

응용전용노드(230, 240)는 공통서비스개체를 가지지 않고, 응용개체(242)만을 가지고 사물통신을 하는 경우를 대상으로 한다. 230은 3G, LTE, Ethernet, Gigabit Ethernet, ADSL등의 통신 인터페이스를 이용하여 250과 통신하는 경우이고, 240은 블루투스, ZigBee, Zwave, WiFi등의 초근거리 통신이 가능한 인터페이스를 이용하여 200을 통하여 250과 통신한다.The application dedicated nodes 230 and 240 do not have a common service entity but do object communication using only the application entity 242. [ 230 is used to communicate with 250 using a communication interface such as 3G, LTE, Ethernet, Gigabit Ethernet, ADSL and the like, and 240 is used to communicate with 250 through 200 using an interface capable of Bluetooth communication, ZigBee, Zwave, WiFi, Lt; / RTI >

도 2에서 설명한 바와 같이, M2M 시스템은 기반노드, 중계노드, 응용 서비스 노드 및 응용전용 노드 중 적어도 하나 이상의 노드로 구성될 수 있으며, 각 노드는 CSE 또는 AE를 포함하여 구성될 수 있다. CSE와 AE는 각각의 참조점을 통해서 타 CSE 또는 AE와 통신을 수행할 수 있다. As described in FIG. 2, the M2M system may be configured as at least one of an infrastructure node, a relay node, an application service node, and an application dedicated node, and each node may be configured to include a CSE or an AE. CSE and AE can communicate with other CSEs or AEs through their respective reference points.

도 3을 참조하면, 발신자(Originator, 300)는 요청 메시지를 수신자(Receiver, 310)로 전송한다(S320). 발신자(300)와 수신자(310)는 각각 M2M 장치일 수 있으며, 전술한 바와 같이 CSE 또는 AE일 수 있다. 또한, 발신자(300)와 수신자(310)는 CSE 또는 AE를 포함하는 노드 또는 서버 또는 장치일 수 있다.Referring to FIG. 3, the originator 300 transmits a request message to a receiver 310 (S320). The sender 300 and the receiver 310 may each be an M2M device and may be CSE or AE as described above. Also, the sender 300 and the recipient 310 may be nodes or servers or devices, including CSE or AE.

요청 메시지는 하나 이상의 파라미터를 포함할 수 있다. 예를 들어, 요청 메시지에는 필수적인 파라미터와 선택적인 파라미터가 포함될 수 있다. 예를 들어, 송신 (From) 측 파라미터, 수신측 (To) 파라미터, 요청 식별 정보 (Request Identifier) 파라미터 및 동작 (Operation) 파라미터는 필수적인 파라미터로 포함된다. From 파라미터는 메시지를 전송하는 발신자에 대한 정보를 포함하고, To 파라미터는 메시지를 수신하는 수신자에 대한 정보를 포함한다. Request Identifier 파라미터는 해당 요청 메시지를 식별하기 위한 유일한 식별 정보를 포함한다. 또한, Operation 파라미터는 요청 메시지에서 요청하는 동작을 구분하기 위한 정보를 포함한다. 동작 파라미터는 생성(Create), 조회(Retrieve), 갱신(Update), 삭제(Delete), 통지(Notify) 중 어느 하나로 설정될 수 있다. 또한, 요청 메시지의 다양한 동작을 제어하기 위하여 선택적인 파라미터를 부가할 수 있다. 예를 들어 응답 유형 (Response Type)의 선택적인 파라미터는 수신자의 처리 방식을 블록킹 (blockingRequest) 방식, 동기화된 넌블럭킹 (nonBlockingRequestSynch) 방식, 비동기화된 넌블럭킹 (nonBlockingRequestAsynch) 방식, 수신자 맞춤형 (flexBlocking) 방식으로 지정할 수 있다.The request message may include one or more parameters. For example, the request message may include mandatory and optional parameters. For example, the From side parameter, the To parameter, the Request Identifier parameter and the Operation parameter are included as mandatory parameters. The From parameter includes information about the sender sending the message, and the To parameter includes information about the recipient receiving the message. The Request Identifier parameter contains unique identification information for identifying the request message. In addition, the operation parameter includes information for distinguishing the requested operation from the request message. The operation parameter may be set to one of Create, Retrieve, Update, Delete, and Notify. In addition, optional parameters may be added to control various operations of the request message. For example, the optional parameters of the response type include a blocking processing method, a non-blocking blocking request method, a non-blocking blocking method, a non-blocking blocking method, a flexBlocking method, .

수신자(310)는 요청 메시지가 수신되면, 해당 요청 메시지를 처리하기 위한 동작을 수행한다(S330). 예를 들어, 수신자(310)는 요청메시지(Request Message)를 송신한 발신자(300)가 해당 요청에 대한 권한을 가지고 있는지를 확인할 수 있다. 발신자(300)가 요청에 대한 권한을 가지고 있다고 판단되는 경우, 요청의 대상이 되는 리소스(requested resource)의 존재 여부를 확인한 후 요청 메시지를 처리한다. 또는, 수신자(310)는 요청 메시지의 동작 파라미터에 따라 해당하는 동작을 수행할 수 있다. 예를 들어, 동작 파라미터가 생성으로 설정되고, 특정 데이터의 변경, 추가, 삭제 등이 발생할 경우에 이를 발신자(300)측으로 알려주도록 지시하는 구독 기능이 설정되는 경우에 수신자(310)는 구독 정보를 생성하고, 해당 구독 정보에 해당하는 데이터에 변경, 추가, 삭제 등의 이벤트가 발생하는 경우에 이를 발신자(300) 측으로 통지할 수 있다. When the request message is received, the receiver 310 performs an operation for processing the request message (S330). For example, the receiver 310 can check whether the sender 300 having transmitted the request message has the right to the request. When it is determined that the sender 300 has the authority for the request, the request message is processed after confirming whether the requested resource exists. Alternatively, the receiver 310 may perform a corresponding operation according to the operation parameter of the request message. For example, when an operation parameter is set to be generated and a subscription function for instructing the sender 300 to inform the sender 300 of a change, addition, deletion, or the like of specific data occurs, the receiver 310 transmits the subscription information And notifies the sender 300 of the occurrence of an event such as change, addition, deletion, etc. in the data corresponding to the subscription information.

수신자(310)는 요청 동작에 따른 처리 결과 정보를 생성하여 이를 응답메시지에 포함하여 발신자(300)로 전송한다(S340). S340 단계는 S330 단계 이전에 수행될 수도 있다. 즉, 수신자(310)는 요청 메시지를 수신하면, 이에 대한 단순 수신을 나타내는 ACK 응답 메시지를 생성하여 발신자(300)측으로 전송하고, 이후 S330 단계를 수행하여 요청 메시지를 처리할 수도 있다.The receiver 310 generates processing result information according to the request operation and includes it in a response message and transmits it to the sender 300 (S340). The step S340 may be performed before the step S330. That is, when the receiver 310 receives the request message, it generates an ACK response message indicating simple reception of the ACK response message, and transmits the ACK response message to the sender 300, and then performs a step S330 to process the request message.

도 4는 본 발명의 일 실시예에 의한 공통 서비스 개체를 구성하는 도면이다. 도 4에서는 식별 정보의 처리 기능을 포함한다.4 is a diagram illustrating a common service entity according to an exemplary embodiment of the present invention. Fig. 4 includes a function of processing identification information.

공통 서비스 개체가 제공하는 기능을 도 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) 등이 있다. The functions provided by the common service object can be summarized as shown in FIG. 4, and can be classified into Addressing & Identification, Application and Service Layer Management, Data Management & Repository, Location, Security, Communication Management / Delivery Handling, Registration, Service Session Management, Device Management, Subscription / Notification, Connection Management Service Charging / Accounting, Network Service Exposure / Service Execution and Triggering, Group Management, and so on.

각각의 기능에 대해 살펴보면 다음과 같다.Each of the functions will be described as follows.

ASM(Application and Service Layer Management)는 ADN, ASN, MN, IN의 AE와 CSE를 관리하는 것을 담당하며, 이는 CSE의 설정(configure), 장애처리(troubleshoot), 업그레이드 기능과 AE의 업그레이드를 포함한다.Application and Service Layer Management (ASM) is responsible for managing AEs and CSEs for ADN, ASN, MN, and IN, including configuration, troubleshoot, upgrading, and upgrading of AEs. .

CMDH(Communication Management and Delivery Handling)는 다른 CSE, AE, NSE간의 통신을 책임진다. CMDH는 어느 시각에 어떤 통신 연결을 이용하여 통신을 전달할 것인지(CSE-CSE간 통신), 언제 필요하고 언제 허가되는지, 그리고 통신의 전달이 이후로 미루어질 때 통신 요청을 저장하는 것을 책임진다. CMDH는 통신에 대한 각 요청에 특화된 프로비전된 정책과 전달 핸들링 파라미터에 따라 수행된다. 기반 네트워크 데이터 전송 서비스를 이용한 통신에서 기반 네트워크는 동일한 전달 핸들링 기능을 지원할 수 있다. 이 경우 CMDH는 기반 네트워크를 사용할 수 있으며, 기반 네트워크에 동일한 전달 핸들링 기능을 액세스하는 프런트엔드로 동작할 수 있다.Communication Management and Delivery Handling (CMDH) is responsible for communication between other CSEs, AEs, and NSEs. CMDH is responsible for storing the communication requests at which time to communicate using which communication connection (CSE-CSE communication), when it is needed and when it is allowed, and when the transmission of the communication is postponed. CMDH is performed according to the provisioning policy and delivery handling parameters specific to each request for communication. Based network data transmission service, the underlying network can support the same forwarding handling function. In this case, the CMDH can use the underlying network and can act as a front end accessing the same forwarding handling function to the underlying network.

DMR(Data Management and Repository)은 M2M 애플리케이션이 다른 개체와 데이터를 교환할 수 있도록 한다. DMR CSF는 데이터 저장 공간을 제공하고 이를 조정하는 기능을 제공한다. 또한 대량의 데이터를 수집하고 결합하거나, 데이터를 특정한 포맷으로 변환하거나, 또는 데이터를 분석하고 의미를 처리하기 위해 저장하는 기능을 포함한다. "데이터"라는 것은 M2M 디바이스로부터 투명하게 추출되는 가공되지 않은 원시 데이터(raw data)를 의미하거나 M2M 개체에 의해 계산 또는 결합되어 처리된 데이터를 의미할 수 있다. 대량의 데이터를 수집하는 것은 빅데이터 저장 기능으로 알려진 것을 구성한다.Data Management and Repository (DMR) allows M2M applications to exchange data with other objects. The DMR CSF provides the ability to provide and coordinate data storage. It also includes the ability to collect and combine large amounts of data, convert data to a specific format, or store data for analysis and semantic processing. &Quot; Data " means raw raw data that is transparently extracted from an M2M device, or may refer to data processed or combined and processed by an M2M entity. Collecting large amounts of data constitutes what is known as Big Data Storage.

DMG(Device Management) CSF는 MN과 디바이스 노드 및 M2M 국부통신망에 있는 디바이스들의 디바이스 기능의 관리를 담당한다. 다음의 기능을 하나 이상 제공하는 디바이스 관리를 가능하게 한다. 애플리케이션 소프트웨어의 설치 및 세팅, 설정 세팅 및 프로비저닝, 펌웨어 업데이트, 로깅과 모니터링과 분석, 국부통신망의 토폴로지 관리, 그리고 국부통신망 관리 내의 디바이스를 포함한다. DMG (Device Management) The CSF is responsible for managing the device functions of devices in the MN, device nodes, and M2M local network. It enables device management to provide one or more of the following functions: Installation and configuration of application software, configuration settings and provisioning, firmware update, logging and monitoring and analysis, topology management of local networks, and devices in local network management.

DIS(탐색) CSF는 주어진 범위와 주제 내에서 허락된 권한(M2M 서비스 구독에서 허락된 것을 포함)과 주어진 범위 내에서 발신자(Originator)의 요청에 해당하는 정보와 리소스를 검색하는 것을 책임진다. 발신자는 애플리케이션 또는 다른 CSE가 될 수 있다. 검색의 범위는 하나의 CSE가 되거나 다수의 CSE가 될 수 있다. 탐색 결과는 발신자에게 전달된다.The DIS (Search) CSF is responsible for retrieving information and resources granted in the given scope and subject (including those allowed in the M2M service subscription) and within the given scope for the Originator's request. The sender can be an application or another CSE. The scope of the search may be one CSE or multiple CSEs. The search results are delivered to the caller.

GMG(Group Management)는 요청과 관련된 그룹을 핸들링한다. 요청은 그룹과 그룹의 멤버십의 관리를 위해 전송되며 또한 그룹에 의해 지원되는 벌크 오퍼레이션도 담당한다. 그룹에 멤버를 추가 또는 삭제할 경우, 멤버가 그룹의 목적에 순응하는지를 확인할 필요가 있다. 벌크 오퍼레이션은 읽기, 쓰기, 구독하기, 알리기, 디바이스 관리 등을 포함한다. 요청 또는 구독은 그룹을 통하여 이루어지고, 그룹이 이러한 요청과 알림을 결합하는 것을 책임진다. 그룹의 멤버는 리소스에 대한 접근 권한에 대해 동일한 역할을 가진다. 이 경우, 접근 제어는 그룹에 의해 이루어진다. 기반 네트워크가 브로드캐스팅과 멀티캐스팅 기능을 제공할 경우, GMG CSF는 이러한 기능을 이용해야 한다.Group Management (GMG) handles the group associated with the request. Requests are sent for the management of group and group membership, and are also responsible for the bulk operations supported by the group. When adding or deleting members to a group, you need to make sure that the members conform to the purpose of the group. Bulk operations include read, write, subscribe, notify, and device management. The request or subscription is made through the group, and the group is responsible for combining these requests and notifications. Members of a group have the same role in access rights to resources. In this case, access control is done by the group. If the underlying network provides broadcasting and multicasting capabilities, the GMG CSF should use these functions.

LOC(Location) CSF는 위치 기반 서비스를 위해 M2M 노드(예를 들어 ASN, MN)의 지리적 위치 정보를 M2M AE가 습득할 수 있도록 한다. 동일한 또는 상이한 M2M 노드 내에 존재하는 M2M AE로부터 이러한 위치 정보가 요청될 수 있다. LOC (Location) The CSF enables the M2M AE to acquire the geographical location information of M2M nodes (eg ASN, MN) for location based services. This location information may be requested from an M2M AE that is in the same or a different M2M node.

NSE(Network Service Exposure) CSF는 M2M 애플리케이션을 대신하여 M2M 시스템으로부터의 서비스 요청에 대한 사용 가능하거나 지원 가능한 방식을 Mcn 참조점을 통하여 네트워크 서비스 기능을 액세스 하기 위해 기반 네트워크와의 통신을 관리한다. NSE CSF는 다른 CSF와 AF를 기반 네트워크에서 지원되는 특정한 기술과 메커니즘으로부터 은폐한다. 기반 네트워크로부터 제공되는 네트워크 서비스 기능은 디바이스 트리거링, 스몰 데이터 전송, 위치 알림, 폴리시 룰 셋팅, 위치 질의, IMS 서비스, 디바이스 관리 등을 포함하지만 이에 한정되지는 않는다. 이러한 기능들은 일반적인 전송 서비스를 포함하지 않는다 NSE (Network Service Exposure) The CSF manages communication with the underlying network to access network service functions through the Mcn reference point on an available or supportable way for service requests from the M2M system on behalf of the M2M application. The NSE CSF conceals other CSFs and AFs from specific technologies and mechanisms supported in the underlying network. The network service functions provided from the underlying network include, but are not limited to, device triggering, small data transfer, location notification, policy rule setting, location query, IMS service, device management and the like. These functions do not include common transport services

REG(Registration)는 애플리케이션 또는 다른 CSE가 CSE에 등록하도록 핸들링하는 것을 담당하는데, 이는 CSE에서 제공되는 서비스를 사용하려는 개체의 등록을 허락하기 위함이다. REG CSF는 CSE에 대한 디바이스의 등록 뿐만 아니라 디바이스의 특성/속성의 등록도 핸들링한다.REG (Registration) is responsible for handling applications or other CSEs to register with the CSE, which allows the registration of entities that want to use the services provided by the CSE. The REG CSF handles not only device registration for the CSE, but also device property / attribute registration.

SEC(Security)는 주의를 요하는 민감한 데이터 핸들링 기능, 보안 운영 기능, 보안 결합 설정 기능, 권한 부여와 액세스 제어 기능, 식별 보호 기능을 제공한다. SEC CSF가 제공하는 민감한 데이터 핸들링 기능은 저장과 조작 과정에서 보안이 필요한 로컬 크리덴셜을 보호하는 기능을 제공한다. 민감한 데이터 핸들링 기능 역시 보안 알고리즘을 사용한다. 이 기능은 다양한 암호기법이 분리된 보안 환경을 지원한다. 보안 운영 기능은 다음의 기능을 제공하는데, 먼저 민감한 데이터 핸들링 기능에 의해 지원되도록 전용된 보안 환경의 생성과 운영 기능을 제공한다. 또한 보안 환경에서 보호되는 루트 크리덴셜의 포스트 프로비저닝을 지원하며, M2M 서비스와 M2M 애플리케이션 서비스와 관련된 구독의 프로비저닝과 운영을 지원한다. 보안 결합 설정 기능은 M2M 노드들 간의 보안 결합을 설정하여 기밀성, 통합성, 인증, 권한 부여가 가능하도록 한다. 권한 부여와 액세스 제어 기능은 프로비전된 보안 정책과 할당된 롤에 따라 권한 부여된 개체로의 서비스와 데이터 접근을 제어한다. 개체의 유일한 식별자가 권한 부여에 사용되며, 식별 보호 기능은 개체 또는 사용자와 결합된 실제 식별 정보와 링크되지 않도록 임시의 식별자로 기능하는 익명을 제공할 수 있다.SEC (Security) provides sensitive data handling, security operation, security association setting, authorization and access control, and identification protection. The sensitive data handling functionality provided by the SEC CSF provides the ability to protect local credentials that require security during storage and manipulation. Sensitive data handling also uses security algorithms. This feature supports separate security environments with different cryptographic techniques. The security operations function provides the following functions, first providing the creation and operation functions of a dedicated security environment to be supported by sensitive data handling functions. It also supports post provisioning of root credentials protected in a secure environment and supports the provisioning and operation of subscriptions related to M2M services and M2M application services. The security association setting function establishes a security association between M2M nodes to enable confidentiality, integrity, authentication, and authorization. Authorization and access control functions control the access of services and data to authorized entities according to the provisioned security policies and assigned roles. The unique identifier of the entity is used for authorization, and the identity protection function can provide anonymity that serves as a temporary identifier so that it is not linked to the actual identity information associated with the entity or user.

SCA(Service Charging and Accounting)는 서비스 계층의 과금 기능을 제공한다. 온라인 과금과 오프라인 과금을 포함하는 상이한 과금 모델들을 지원한다. SCA CSF는 과금 가능한 이벤트를 확보하고, 정보를 저장하며, 과금 기록과 과금 정보를 생성한다. SCA CSF는 기반 네트워크의 과금 시스템과 상호작용 할 수 있다. 그러나 SCA CSF는 최종 서비스 레벨의 과금 정보를 생성하고 기록할 책임을 가진다. 기반 노드 또는 서비스 계층 과금 서버의 SCA CSF는 과금을 위한 과금 정보를 핸들링하는 것을 책임진다.Service Charging and Accounting (SCA) provides billing for the service layer. Supports different billing models, including online and offline billing. The SCA CSF acquires billable events, stores information, and generates billing records and billing information. The SCA CSF can interact with the billing system of the underlying network. However, the SCA CSF is responsible for generating and recording billing information at the final service level. The SCA CSF of the base node or service layer charging server is responsible for handling billing information for billing.

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와도 통신한다.SSM (Service Session Management) The CSF manages M2M service sessions that are end-to-end service layer connections. The SSM CSF manages M2M service sessions between M2M applications, or between M2M applications and CSEs, or between CSEs. Management of the M2M service session includes management of the session state, establishment and authentication of the session, management of the underlying network connection and service related to the session, coordination of the session expansion of the CSE multi-hop cse, . Within a given M2M service session, the SSM CSF uses the CMDH CSF in the local CSE to send / receive messages to / from the next hop CSE or application. The SSM CSF uses the SEC CSF for session credentials for session participants and for session management related to authentication. The SSM CSF generates session-specific billing events and also communicates with the SCA CSF in the local CSE.

SUB(Subscription and Notification)는 구독을 유지하는 알림을 제공하며, 리소스의 변화(예를 들어 리소스의 삭제)를 추적한다. 리소스의 구독은 M2M AE 또는 CSE에 의해 시작되며, 호스팅 CSE에 의해 접근 권한이 허락된다. 활성화된 구독 중에 호스팅 CSE는 구독된 리소스의 변화가 발생하는 경우 리소스 구독자가 수신하길 원하는 주소로 알림을 전송한다.Subscription and Notification (SUB) provides notifications to maintain subscriptions and tracks changes in resources (for example, deletion of resources). The subscription of the resource is initiated by the M2M AE or CSE and is authorized by the hosting CSE. During an active subscription, the hosting CSE sends a notification to the address that the resource subscriber wants to receive in the event of a change in the subscribed resource.

도 4 및 그에 대한 설명은 공통 서비스 개체를 구현하는 실시예들이며 본 발명이 이에 한정되지는 않는다. 4 and the description thereof are embodiments for implementing a common service entity, and the present invention is not limited thereto.

한편, 본 실시예들에 적용될 수 있는 식별자(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) 등이 있다.An identifier that can be applied to the present embodiments will be described as follows. The M2M identifier includes an M2M Service Provider Identifier (M2M-SP-ID), an App-Inst-ID (Application Instance Identifier), an App-ID (Application Identifier), a CSE-ID (CSE Identifier), an M2M- A Node Identifier / Device Identifier, an M2M Service Subscription Identifier (M2M-Sub-ID), and an M2M-Request-ID (Request Identifier).

oneM2M은 시스템을 구현하기 위해 충족시켜야 할 요구사항으로 전반적인 시스템 요구사항(Overall System Requirements), 관리 요구사항(Management Requirements), 데이터 모델과 의미 요구사항(Data Model & Semantics Requirements), 보안 요구사항(Security Requirements), 과금 요구사항(Charging Requirements), 운영 요구사항(Operational Requirements)을 제시하고 있다.oneM2M is a requirement that must be fulfilled to implement the system. It includes overall system requirements, management requirements, data model & semantics requirements, security requirements Requirements, Charging Requirements, and Operational Requirements.

본 명세서에서는 M2M 시스템 기술, 특히 oneM2M 서비스 플랫폼 기술을 중심으로 설명한다. 그러나 이러한 설명이 M2M 서비스 플랫폼 기술에만 한정되는 것은 아니며, 기기간 통신, 즉 사물 통신을 제공하는 모든 시스템 및 구조와 이들 시스템에서 발생하는 통신 동작에 적용 가능하다.This document focuses on M2M system technology, especially oneM2M service platform technology. However, this description is not limited to the M2M service platform technology, but is applicable to all systems and structures that provide inter-device communication, i.e., object communication, and communication operations occurring in these systems.

또한, 본 명세서에서의 M2M 장치는 전술한 AE, CSE, NSE 등을 포함하는 다양한 노드를 의미하는 명칭으로 기재하여 설명하며, 이해의 편의를 위하여 호스팅 CSE를 중심으로 설명을 진행하나 이에 한정되는 것은 아니다. 즉, M2M 장치는 M2M 시스템을 구성하는 일 구성 장치를 의미하며, 요청 메시지를 수신하여 이에 대한 처리를 수행하고 응답 메시지를 전송하는 다양한 노드, 장치, 개체 등을 의미한다. The M2M device in this specification describes the various nodes including the above-mentioned AE, CSE, NSE, and the like, and for the sake of understanding, the description will be made with reference to the hosting CSE. However, no. That is, the M2M device refers to a constituent device that constitutes the M2M system, and refers to various nodes, devices, and entities that receive a request message, perform processing thereon, and transmit a response message.

도 5는 공인 IP와 사설 IP를 사용하는 경우에 발생할 수 있는 문제점을 설명하기 위한 도면이고, 도 6은 사설 IP를 사용하는 M2M 장치 간에 공인 IP 네트워크를 경유하여 통신을 수행하는 경우에 발생할 수 있는 문제점을 설명하기 위한 도면이다. FIG. 5 is a view for explaining a problem that may occur when using a public IP and a private IP, and FIG. 6 is a diagram for explaining a problem that may occur when communication is performed via a public IP network among M2M devices using a private IP Fig.

도 5 및 도 6을 참조하면, M2M 장치(500, 550)는 서로 다른 네트워크네트워크에 구성될 수 있다. 5 and 6, the M2M devices 500 and 550 may be configured in different network networks.

일 예를 들어, M2M 장치 #1(500)은 사설 IP 네트워크에 구성되고, M2M 장치 #2(550)는 공인 IP 네트워크에 구성될 수 있다. 이 경우에 M2M 장치 #1(500)은 방화벽을 통과하여 TCP/IP를 통해서 M2M 장치 #2(550)와 연결되어 통신을 수행하게 된다. For example, the M2M device # 1 500 may be configured in a private IP network, and the M2M device # 2 550 may be configured in a public IP network. In this case, the M2M device # 1 500 is connected to the M2M device # 2 550 through TCP / IP through the firewall to perform communication.

다른 예를 들어, M2M 장치 #1(500)과 M2M 장치 #2(550)는 서로 다른 사설 IP 네트워크에 구성되고, 방화벽을 통과하여 TCP/IP를 통해서 연결되어 통신을 수행하게 된다. In another example, the M2M device # 1 500 and the M2M device # 2 550 are configured in different private IP networks, and are connected through a firewall and connected via TCP / IP to perform communication.

그러나, 위에서 설명한 두 가지 경우 모두 사설 IP 네트워크와 공인 IP 네트워크 간의 통신 문제로 통신이 원활하게 이루어지지 않을 수 있다. 예를 들어, 공인 IP를 사용하는 M2M 장치 #2(550)는 사설 IP를 사용하는 M2M 장치 #1(500)과 통신을 수행하는 경우 통신을 시작할 수 없는 문제점이 있다. 또한, 사설 IP를 사용하는 M2M 장치(500, 550) 간에 공인 IP를 통해서 통신을 수행하는 경우에 어느 M2M 장치도 통신을 시작할 수 없는 문제점이 있다. However, in both of the cases described above, the communication between the private IP network and the public IP network may not be smooth. For example, when the M2M device # 2 550 using the public IP communicates with the M2M device # 1 500 using the private IP, communication can not be started. In addition, when the communication is performed through the public IP between the M2M devices 500 and 550 using the private IP, there is a problem that any M2M device can not start communication.

이는 사설 IP 네트워크에서의 통신 시작 패킷은 공인 IP 네트워크로 전달되어 통신이 가능하지만, 공인 IP 네트워크에서의 통신 시작 패킷은 사설 IP 네트워크로 전달되지 못하기 때문이다. 즉, 방화벽으로 인해서 공인 IP 네트워크을 통한 패킷은 사설 IP 네트워크로 진입하지 못하여 통신 시작을 위한 패킷이 전달되지 못하는 문제점이 발생할 수 있다. This is because the communication start packet in the private IP network is communicated to the public IP network and communication is possible, but the communication start packet in the public IP network can not be transmitted to the private IP network. That is, a packet through the public IP network due to the firewall can not enter into the private IP network, so that a packet for starting communication can not be delivered.

따라서, 사설 IP를 사용하는 M2M 장치는 공인 IP를 사용하는 M2M 장치와 통신하기 위하여, 사설 IP를 사용하는 M2M 장치에서 통신을 시작하는 경우에만 통신이 가능한 문제점이 있다. 또한, 사설 IP를 사용하는 M2M 장치들이 공인 IP를 통해서 통신을 어느 쪽도 시작할 수 없는 문제점이 있다. Therefore, the M2M device using the private IP has a problem that communication can be performed only when communication is started in the M2M device using the private IP to communicate with the M2M device using the public IP. In addition, there is a problem that M2M devices using private IP can not start communication through public IP.

이러한 문제점을 해결하기 위해서 안출된 본 개시는 M2M 시스템에서 공인 IP를 경유하는 사설 IP 기반의 M2M 장치가 사물 통신을 수행하는 구체적인 방법에 대해서 제안하고자 한다. 특히, 공인 IP를 사용하는 M2M 장치가 사설 IP를 사용하는 M2M 장치와 통신을 수행하기 위한 구체적인 절차를 제시하고, 사설 IP를 사용하는 M2M 장치 간의 사물 통신을 수행하기 위한 구체적인 절차를 제시한다. To solve this problem, the present disclosure which has been devised to solve this problem is to propose a concrete method of performing object communication by a private IP-based M2M device via public IP in the M2M system. In particular, the M2M device using the public IP provides a specific procedure for performing communication with the M2M device using the private IP, and a concrete procedure for performing the object communication between the M2M device using the private IP is presented.

이하에서 설명하는 M2M 장치는 사설 IP 또는 공인 IP를 사용하는 개체를 의미하며, 해당 M2M 장치와 메시지를 주고 받는 타 M2M 장치도 사설 IP 또는 공인 IP를 사용하는 개체를 의미한다. 다만, M2M 장치와 타 M2M 장치는 공인 IP 네트워크에 의한 위에서 설명한 문제를 야기시키는 위치에 구성되는 것으로 가정하여 설명한다. 예를 들어, M2M 장치가 사설 IP를 사용하는 경우에 타 M2M 장치는 공인 IP를 사용하거나 M2M 장치와 다른 사설 IP를 사용할 수 있다. 이와 달리, M2M 장치가 공인 IP를 사용하는 경우에 타 M2M 장치는 사설 IP를 사용할 수 있다. The M2M device described below refers to an entity using a private IP or a public IP, and another M2M device exchanging messages with the corresponding M2M device also means an entity using a private IP or a public IP. However, it is assumed that the M2M device and the other M2M device are configured in a position causing the problem described above by the public IP network. For example, if an M2M device uses private IP, other M2M devices may use public IP or use a different private IP than the M2M device. Alternatively, if the M2M device uses public IP, the other M2M device may use the private IP.

한편, 본 명세서에서의 중계 서버는 M2M 장치 또는 타 M2M 장치가 전송하는 메시지를 전달하기 위한 개체를 의미하는 것으로 중계 모듈, 전달 서버, 중계 프로토콜 서버 등을 포함할 수 있다. 또한, 중계 서버는 M2M 장치들의 메시지를 전달하기 위한 다양한 프로토콜 기반으로 동작할 수 있다. 예를 들어, 중계 서버는 MQTT(Message Queuing Telemetry Transport) 기반의 프로토콜로 동작할 수 있다. 즉, 중계 서버는 MQTT 모듈, MQTT 서버 등을 의미할 수 있으며, 동일하게 중계 클라이언트 모듈은 MQTT 클라이언트 모듈을 의미할 수도 있다. In the present specification, the relay server means an entity for delivering a message transmitted by the M2M device or another M2M device, and may include a relay module, a delivery server, a relay protocol server, and the like. In addition, the relay server may operate on a variety of protocols for communicating messages of M2M devices. For example, the relay server can operate with a Message Queuing Telemetry Transport (MQTT) -based protocol. That is, the relay server may mean an MQTT module, an MQTT server, or the like, and the relay client module may also mean an MQTT client module.

이하, M2M 장치와 중계 서버의 동작에 대해서 도면을 참조하여 설명한다. Hereinafter, the operation of the M2M device and the relay server will be described with reference to the drawings.

도 7은 일 실시예에 따른 M2M 장치의 동작을 설명하기 위한 도면이다. 7 is a diagram for explaining the operation of the M2M device according to an embodiment.

도 7을 참조하면, M2M(Machine to Machine communication) 장치는 중계 클라이언트 모듈을 통해서 중계 서버로의 연결 설정을 위한 연결 패킷을 전송하고, 연결 설정을 위한 연결 패킷에 대한 응답 정보를 수신하여 중계 서버와의 연결을 설정하는 단계를 수행할 수 있다(S700). 예를 들어, M2M 장치는 공인 IP 네트워크를 경유하여 타 사설 IP를 사용하는 타 M2M 장치 또는 공인 IP를 사용하는 타 M2M 장치 또는 사설 IP를 사용하는(M2M 장치가 공인 IP 사용 시) 타 M2M 장치와 통신을 수행하기 위해서 중계 서버로의 연결 설정을 먼저 수행할 수 있다. Referring to FIG. 7, a machine-to-machine communication (M2M) apparatus transmits a connection packet for establishing a connection to a relay server through a relay client module, receives response information for a connection packet for establishing a connection, (S700). ≪ / RTI > For example, an M2M device may communicate with another M2M device that uses another private IP or another M2M device that uses public IP, or another M2M device that uses a private IP (when the M2M device uses public IP) In order to perform communication, connection setup to the relay server can be performed first.

이를 위해서, M2M 장치는 중계 서버와 연결을 설정하기 위한 연결 패킷을 중계 서버로 전송하고, 중계 서버로부터 연결 패킷에 대한 응답 정보를 포함하는 연결 확인 패킷을 수신할 수 있다. 이 경우, M2M 장치는 M2M 장치와 연결된 중계 클라이언트 모듈을 통해서 연결 패킷 및 연결 확인 패킷을 송수신할 수 있다. M2M 장치는 연결 확인 패킷을 수신하여 연결 설정을 수행할 수 있다. 한편, 중계 클라이언트 모듈은 M2M 장치가 노드인 경우에 M2M 장치 내부에 구성되는 일 모듈일 수 있고, M2M 장치가 AE, CSE 등인 경우에 동일 노드에 구성되는 별도의 모듈일 수 있다. 본 명세서에서는 M2M 장치를 AE 또는 CSE와 중계 클라이언트 모듈을 포함하는 노드로 가정하여 설명하나, 이에 한정되는 것은 아니며, 각 개체인 경우에도 중계 클라이언트 모듈과 연계되는 것을 전제로 본 개시가 동일하게 적용될 수 있다. To this end, the M2M device may transmit a connection packet for establishing a connection with the relay server to the relay server, and receive a connection confirmation packet including response information for the connection packet from the relay server. In this case, the M2M device can transmit and receive the connection packet and the connection confirmation packet through the relay client module connected to the M2M device. The M2M device can receive the connection confirmation packet and perform connection setup. Meanwhile, the relay client module may be one module configured in the M2M device when the M2M device is a node, and may be a separate module configured in the same node when the M2M device is AE, CSE, and the like. In this specification, the M2M device is assumed to be a node including an AE or a CSE and a relay client module. However, the present disclosure is not limited thereto. have.

또는, 연결 확인 패킷을 M2M 장치가 수신하는 경우, M2M 장치는 중계 서버로 가입 패킷을 전송하고, 이에 대한 가입 확인 패킷을 수신할 수 있다. 가입 패킷은 중계 서버에서 해당 M2M 장치의 AE 또는 CSE를 식별하기 위한 식별정보를 포함할 수 있다. M2M 장치는 가입 확인 패킷을 수신하여 연결 설정을 수행할 수도 있다. Alternatively, when the M2M device receives the connection confirmation packet, the M2M device can transmit the subscription packet to the relay server and receive the registration confirmation packet. The subscription packet may include identification information for identifying the AE or CSE of the corresponding M2M device in the relay server. The M2M device may receive the subscription confirmation packet and perform the connection setup.

한편, 중계 서버와 중계 클라이언트 모듈 간의 연결 패킷은 아래와 같은 포맷으로 구성될 수 있다. The connection packet between the relay server and the relay client module may be configured in the following format.

예를 들어, 연결 패킷은 2 바이트의 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성될 수 있다. 또한, 가변 헤더는 프로토콜 이름 필드, 프로토콜 레벨 필드, 연결 플래그 필드 및 연결 유지(Keep Alive) 필드를 포함하고, 페이로드 영역은 클라이언트 모듈 식별자 정보를 포함할 수 있다. For example, the connection packet may consist of a 2-byte fixed header, a variable header, and a payload area. In addition, the variable header may include a protocol name field, a protocol level field, a connection flag field, and a keep alive field, and the payload area may include client module identifier information.

또한, 중계 서버는 M2M 시스템을 구성하는 노드인 미들 노드 및 인프라 노드와는 독립적으로 구성될 수 있다. 이 경우에 미들 노드 및 인프라 노드는 중계 클라이언트 모듈을 이용하여 독립적으로 구성된 중계 서버와 통신을 수행할 수 있다. In addition, the relay server can be configured independently of the middle node and the infrastructure node, which constitute the M2M system. In this case, the middle node and the infrastructure node can communicate with the relay server independently configured using the relay client module.

또는, 중계 서버는 M2M 시스템을 구성하는 노드인 미들 노드 또는 인프라 노드에 구성될 수도 있다. 이 경우에도 중계 서버와 미들 노드 또는 인프라 노드에 구성되는 각 개체와 통신을 수행하기 위한 중계 클라이언트 모듈은 각 노드에 같이 구성될 수 있다. Alternatively, the relay server may be configured as a middle node or an infrastructure node, which is a node constituting the M2M system. In this case, the relay client module for communicating with the relay server, the middle node, or each entity configured in the infrastructure node may be configured in each node.

한편, 연결 설정 절차는 M2M 장치와 통신을 수행하기 위한 타 M2M 장치도 동일한 방식으로 수행할 수 있다. 예를 들어, 타 M2M 장치도 중계 서버와 연결 패킷 및 연결 확인 패킷 송수신 절차를 통해서 연결을 설정할 수 있다. 또는, 타 M2M 장치는 중계 서버와 연결 패킷 및 연결 확인 패킷 송수신 절차를 진행하고, 가입 패킷 및 가입 확인 패킷 송수신 절차를 통해서 연결을 설정할 수 있다. Meanwhile, the connection establishment procedure may be performed in the same manner as other M2M devices for performing communication with the M2M device. For example, another M2M device can establish a connection with a relay server through connection packet and connection acknowledgment packet transmission / reception procedures. Alternatively, the other M2M device may proceed with the connection packet and connection acknowledgment packet transmission / reception procedure with the relay server, and establish the connection through the connection packet and the connection acknowledgment packet transmission / reception procedure.

M2M 장치는 중계 서버와의 연결이 설정되면, 타 M2M 장치로 전송하기 위한 요청 메시지를 퍼블리쉬 패킷에 포함하여 중계 서버로 전송하는 단계를 수행할 수 있다(S710). When the connection with the relay server is established, the M2M device may perform a step of including a request message for transmission to another M2M device in a public packet and transmitting the message to the relay server (S710).

예를 들어, M2M 장치는 중계 서버와의 연결을 설정하여 연결 설정이 완료되면, 타 M2M 장치로 보내기 위한 요청 메시지를 퍼블리쉬 패킷에 포함하여 중계 서버로 전송한다. 퍼블리쉬 패킷은 사물 통신 메시지임을 지시하는 정보, 메시지 타입을 지시하는 정보(요청 또는 응답), 발신자의 식별정보 및 수신자의 식별정보를 포함할 수 있다. For example, when the M2M device establishes a connection with the relay server and completes the connection setup, the M2M device transmits a request message for transmission to another M2M device in a public packet and transmits the message to the relay server. The public packet may include information indicating that it is a message communication message, information indicating a message type (request or response), identification information of the sender, and identification information of the receiver.

한편, 퍼블리쉬 패킷은 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며, 고정 헤더는 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고, 가변 헤더는 토픽 네임 필드 및 패킷 식별 필드를 포함할 수 있다. 페이로드 영역에는 요청 메시지가 포함될 수 있으며, 요청 메시지에 요청 식별정보가 포함될 수 있다. 요청 식별정보는 추후 응답 메시지에 포함되어 응답 메시지가 어느 요청 메시지에 대한 응답인지를 식별할 수 있는 정보를 나타낸다. The public packet includes a fixed header, a variable header, and a payload field. The fixed header includes a QoS level field including information on a QoS level of a packet or a relay protocol, a duplicate transmission flag field, and a packet type field, The variable header may include a topic name field and a packet identification field. The payload field may include a request message, and the request message may include request identification information. The request identification information includes information that can be included in a later response message to identify which response message is a response to the request message.

필요에 따라, M2M 장치는 퍼블리쉬 패킷에 대한 응답 정보를 포함하는 퍼블리쉬 확인 패킷을 중계 서버로부터 수신할 수도 있다. 퍼블리쉬 확인 패킷은 퍼블리쉬 패킷의 정상 수신 여부에 대한 정보를 포함할 수 있다. Optionally, the M2M device may receive a publish confirmation packet containing response information for the publish packet from the relay server. The public confirmation packet may include information on whether or not the public packet is normally received.

M2M 장치는 요청 메시지에 대해서 타 M2M 장치가 생성한 응답 메시지를 포함하는 퍼블리쉬 패킷을 중계 서버로부터 수신하는 단계를 수행할 수 있다(S720). The M2M device may perform a step of receiving a public message including a response message generated by another M2M device from the relay server in response to the request message (S720).

예를 들어, 중계 서버가 S710 단계에서의 퍼블리쉬 패킷은 타 M2M 장치로 전달하고, 타 M2M 장치로부터 수신한 응답 메시지를 포함하는 퍼블리쉬 패킷을 M2M 장치로 전달할 수 있다. 이에 따라 M2M 장치는 요청 메시지에 대한 응답 메시지가 포함되는 퍼블리쉬 패킷을 중계 클라이언트 모듈을 통해서 중계 서버로부터 수신할 수 있다. 필요에 따라, M2M 장치는 응답 메시지를 포함하는 퍼블리쉬 패킷에 대한 확인 정보를 퍼블리쉬 확인 패킷에 포함하여 중계 서버로 전송한다. 퍼블리쉬 확인 패킷은 퍼블리쉬 패킷의 정상 수신 여부에 대한 정보를 포함할 수 있다. 또한, 전술한 바와 같이, 응답 메시지를 퍼블리쉬 패킷의 페이로드에 포함될 수 있으며, 응답 메시지는 요청 식별정보 및 응답 상태 코드 정보를 포함할 수 있다. 요청 식별정보는 요청 메시지와 동일한 값으로 설정되어, 해당 응답 메시지가 어느 요청 메시지에 대한 응답 결과를 포함하는지를 지시할 수 있다. 응답 상태 코드는 해당 요청 메시지에서 요구하는 절차의 처리 결과에 대한 코드 값을 포함한다. 예를 들어, 해당 요청 메시지에 대한 처리가 성공인 경우에 '2000'으로 응답 결과 코드가 설정될 수 있으며, 이는 처리 성공을 지시하는 코드 값을 의미한다. For example, the relay server may forward the public packet in step S710 to another M2M device, and may transmit a public packet including a response message received from another M2M device to the M2M device. Accordingly, the M2M device can receive the public packet including the response message for the request message from the relay server through the relay client module. If necessary, the M2M device includes confirmation information for the public packet including the response message in the publicity confirmation packet, and transmits it to the relay server. The public confirmation packet may include information on whether or not the public packet is normally received. Also, as described above, the response message may be included in the payload of the public packet, and the response message may include the request identification information and the response status code information. The request identification information may be set to the same value as the request message, indicating that the response message includes the result of the response to the request message. The response status code includes a code value for the processing result of the procedure required in the corresponding request message. For example, if the processing of the request message is successful, the response result code may be set to '2000', which means a code value indicating a success of the processing.

중계 클라이언트 모듈과 중계 서버 간의 패킷 교환은 중계 프로토콜에 따라 수행될 수 있으며, 중계 클라이언트 모듈과 M2M 개체(ex, AE 또는 CSE) 간의 데이터 교환은 M2M 프로토콜에 의해서 이루어질 수 있다.The packet exchange between the relay client module and the relay server can be performed according to the relay protocol, and the exchange of data between the relay client module and the M2M entity (ex, AE or CSE) can be performed by the M2M protocol.

또한, M2M 장치와 타 M2M 장치 간의 데이터 교환은 각각 중계 서버와의 연결을 설정한 이후에 진행되므로, 각 M2M 장치가 서로 다른 네트워크에 위치하거나, 공인 IP 네트워크를 경유하는 경우에도 연결 설정을 기반으로 통신을 시작할 수 있다. Also, since the data exchange between the M2M device and the other M2M devices is performed after establishing the connection with the relay server, when the M2M devices are located in different networks or pass through the public IP network, Communication can be started.

따라서, 전술한 공인 IP 네트워크에서 사설 IP 네트워크로의 통신 개시가 불가능한 문제는 본 실시예에 따라 해결될 수 있다. Therefore, the problem that the communication from the public IP network to the private IP network can not be started can be solved according to the present embodiment.

이상에서 설명한 내용은 타 M2M 장치에서도 동일하게 수행될 수 있다. The above description can be similarly performed in other M2M devices.

도 8은 일 실시예에 다른 중계 서버의 동작을 설명하기 위한 도면이다. 8 is a diagram for explaining the operation of a relay server according to an embodiment.

도 8을 참조하면, 중계 서버는 M2M 장치 및 타 M2M 장치 각각의 중계 클라이언트 모듈로부터 연결 설정을 위한 연결 패킷을 수신하여, M2M 장치 및 타 M2M 장치 각각과의 연결을 설정하는 단계를 수행할 수 있다(S800). 8, the relay server may perform a step of receiving a connection packet for establishing connection from the relay client module of each of the M2M device and the other M2M devices, and establishing a connection with each of the M2M device and the other M2M devices (S800).

예를 들어, 중계 서버는 중계 서버를 통해서 통신을 수행하고자 하는 M2M 장치들로부터 연결 패킷을 수신하고, 연결 패킷에 기초하여 연결 설정을 수행할 수 있다. 연결 패킷은 각각의 M2M 장치에 구성될 수 있는 중계 클라이언트 모듈로부터 수신될 수 있다. 또한, 중계 서버는 연결 패킷에 대한 응답 정보를 포함하는 연결 확인 패킷을 각 M2M 장치로 전송할 수 있다. For example, the relay server can receive the connection packet from the M2M devices that want to perform communication through the relay server, and can perform the connection setup based on the connection packet. A connection packet may be received from a relay client module that may be configured for each M2M device. Also, the relay server may transmit a connection confirmation packet including response information to the connection packet to each M2M device.

또는, 중계 서버는 연결 패킷 수신, 연결 확인 패킷 전송 후에 각 M2M 장치로부터 가입 패킷을 수신하고, 가입 패킷에 대한 가입 확인 패킷을 각 M2M 장치로 전송하여 연결 설정을 수행할 수도 있다. 예를 들어, 가입 패킷은 연결 설정을 요청하는 M2M 장치에 대한 식별정보를 포함할 수 있다. 또는, 가입 패킷은 연결 설정을 요청하는 M2M 장치의 요청 메시지 전송과 관련된 식별정보 및 응답 메시지 수신과 관련된 식별정보에 대한 정보를 포함할 수 있다. 물론, 해당 M2M 장치가 M2M 네트워크를 사용하는 사물 통신 장치 패킷임을 지시하는 정보도 포함될 수 있다. Alternatively, the relay server may receive the connection packet, transmit the connection confirmation packet, receive the subscription packet from each M2M device, and transmit the subscription confirmation packet for the subscription packet to each M2M device to perform the connection setup. For example, the subscription packet may include identification information for the M2M device requesting connection establishment. Alternatively, the subscription packet may include identification information related to the transmission of the request message of the M2M device requesting the connection establishment and information on the identification information related to the reception of the response message. Of course, information indicating that the corresponding M2M device is an object communication device packet using the M2M network may also be included.

한편, 중계 서버는 M2M 시스템을 구성하는 노드인 미들 노드 및 인프라 노드와는 독립적으로 구성될 수 있다. 이 경우에 미들 노드 및 인프라 노드는 중계 클라이언트 모듈을 이용하여 독립적으로 구성된 중계 서버와 통신을 수행할 수 있다. Meanwhile, the relay server can be configured independently of the middle node and the infrastructure node, which are nodes constituting the M2M system. In this case, the middle node and the infrastructure node can communicate with the relay server independently configured using the relay client module.

또는, 중계 서버는 M2M 시스템을 구성하는 노드인 미들 노드 또는 인프라 노드에 구성될 수도 있다. 이 경우에도 중계 서버와 미들 노드 또는 인프라 노드에 구성되는 각 개체와 통신을 수행하기 위한 중계 클라이언트 모듈은 각 노드에 같이 구성될 수 있다. Alternatively, the relay server may be configured as a middle node or an infrastructure node, which is a node constituting the M2M system. In this case, the relay client module for communicating with the relay server, the middle node, or each entity configured in the infrastructure node may be configured in each node.

중계 서버는 M2M 장치의 중계 클라이언트 모듈로부터 타 M2M 장치로 전송하기 위한 요청 메시지를 포함하는 퍼블리쉬 패킷을 수신하는 단계를 수행할 수 있다(S810). 예를 들어, 중계 서버는 M2M 장치가 타 M2M 장치로 전송하기 위한 요청 메시지를 퍼블리쉬 패킷을 통해서 중계 클라이언트 모듈로부터 수신할 수 있다. The relay server may perform a step of receiving a public packet including a request message for transfer from the relay client module of the M2M device to another M2M device (S810). For example, the relay server may receive a request message from the relay client module through a public packet for the M2M device to transmit to another M2M device.

예를 들어, 퍼블리쉬 패킷은 사물 통신 메시지임을 지시하는 정보, 메시지 타입을 지시하는 정보(요청 또는 응답), 발신자의 식별정보 및 수신자의 식별정보를 포함할 수 있다. 또는, 퍼블리쉬 패킷은 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며, 고정 헤더는 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고, 가변 헤더는 토픽 네임 필드 및 패킷 식별 필드를 포함할 수 있다. For example, the public packet may include information indicating that the message is a message of object communication, information indicating a message type (request or response), identification information of the sender, and identification information of the receiver. Alternatively, the public packet is composed of a fixed header, a variable header, and a payload field, and the fixed header includes a QoS level field including information on the QoS level of the packet or the relay protocol, a duplicate transmission flag field, and a packet type field, The variable header may include a topic name field and a packet identification field.

필요에 따라, 중계 서버는 퍼블리쉬 패킷에 대한 응답 정보를 포함하는 퍼블리쉬 확인 패킷을 M2M 장치로 전송할 수도 있다. 퍼블리쉬 확인 패킷은 퍼블리쉬 패킷의 정상 수신 여부에 대한 정보를 포함할 수 있다. If necessary, the relay server may transmit a publicity confirmation packet including response information to the public packet to the M2M device. The public confirmation packet may include information on whether or not the public packet is normally received.

중계 서버는 요청 메시지를 포함하는 퍼블리쉬 패킷을 타 M2M 장치의 중계 클라이언트 모듈로 전송하는 단계를 수행할 수 있다(S820). 예를 들어, 중계 서버는 퍼블리쉬 패킷이 수신되면, 해당 퍼블리쉬 패킷에서 지시하는 대상 타 M2M 장치에 대한 식별정보를 확인하고, 연결 설정된 타 M2M 장치의 중계 클라이언트 모듈로 요청 메시지를 포함하는 퍼블리쉬 패킷을 전송할 수 있다. 즉, 중계 서버는 중계 클라이언트 모듈로부터 퍼블리쉬 패킷이 수신되면, 토픽 네임을 참조하여 해당 패킷을 수신자 측의 중계 클라이언트 모듈로 전송한다. The relay server may perform a step of transmitting the public packet including the request message to the relay client module of the other M2M device (S820). For example, when the relay server receives the public packet, the relay server confirms the identification information of the target other M2M device indicated by the corresponding public packet, and transmits the public packet including the request message to the relay client module of another connected M2M device . That is, when the relay server receives the broadcast packet from the relay client module, the relay server refers to the topic name and transmits the packet to the relay client module on the receiver side.

예를 들어, 중계 서버는 M2M 장치로부터 수신한 퍼블리쉬 패킷을 이용하여 가입 패킷을 통해서 확인한 타 M2M 장치의 식별정보에 따라 요청 메시지의 수신자인 타 M2M 장치로 퍼블리쉬 패킷을 전송할 수 있다. 타 M2M 장치는 퍼블리쉬 패킷 수신 이전에 중계 서버와 연결 설정 과정을 수행하였으므로, 중계 서버가 공인 IP 네트워크를 사용하더라도 사설 IP를 사용하는 타 M2M 장치로 요청 메시지를 포함하는 퍼블리쉬 패킷을 전송할 수 있다. For example, the relay server can transmit a public packet to another M2M device, which is a receiver of the request message, according to the identification information of another M2M device, which is confirmed through the subscription packet, using the public packet received from the M2M device. Since the other M2M device has performed the connection establishment process with the relay server before receiving the public packet, even if the relay server uses the public IP network, the other M2M device can transmit the public packet including the request message to another M2M device using the private IP.

필요에 따라, 중계 서버는 타 M2M 장치로부터 요청 메시지를 포함하는 퍼블리쉬 패킷에 대한 수신 확인을 지시하는 퍼블리쉬 확인 패킷을 수신할 수 있다. 타 M2M 장치의 중계 클라이언트 모듈은 퍼블리쉬 패킷의 요청 메시지를 M2M 장치의 AE 또는 CSE로 전달할 수 있다. If necessary, the relay server may receive a publish acknowledgment packet from the other M2M device instructing receipt of a broadcast packet including a request message. The relay client module of the other M2M device can forward the request message of the public packet to the AE or the CSE of the M2M device.

중계 서버는 타 M2M 장치의 중계 클라이언트 모듈로부터 요청 메시지에 대한 응답 메시지를 포함하는 퍼블리쉬 패킷을 수신하는 단계를 수행할 수 있다(S830). 타 M2M 장치의 AE 또는 CSE는 요청 메시지를 처리한 응답 메시지를 타 M2M 장치로 전달하고, 타 M2M 장치의 중계 클라이언트 모듈은 응답 메시지를 퍼블리쉬 패킷에 포함하여 중계 서버로 전송할 수 있다. 이에 따라, 중계 서버는 타 M2M 장치의 중계 클라이언트 모듈로부터 응답 메시지를 포함하는 퍼블리쉬 패킷을 수신할 수 있다. The relay server may perform a step of receiving a public packet including a response message to the request message from the relay client module of another M2M device (S830). The AE or CSE of the other M2M device may transmit a response message to the other M2M device that processed the request message and the relaying client module of the other M2M device may transmit the response message to the relay server by including the response message in the publish packet. Accordingly, the relay server can receive the public packet including the response message from the relay client module of the other M2M device.

필요에 따라, 중계 서버는 퍼블리쉬 패킷에 대한 퍼블리쉬 확인 패킷을 타 M2M 장치로 전송할 수 있다. If necessary, the relay server can transmit a publish confirmation packet for the public packet to another M2M device.

중계 서버는 응답 메시지를 포함하는 퍼블리쉬 패킷을 M2M 장치의 중계 클라이언트 모듈로 전송하는 단계를 수행할 수 있다(S840). 중계 서버는 응답 메시지를 포함하는 퍼블리쉬 패킷의 수신자 식별정보를 확인하고, 해당 수신자 식별정보가 지시하는 M2M 장치로 응답 메시지를 포함하는 퍼블리쉬 패킷을 전송할 수 있다. The relay server may perform a step of transmitting the public packet including the response message to the relay client module of the M2M device (S840). The relay server can confirm the receiver identification information of the public packet including the response message and transmit the public packet including the response message to the M2M device indicated by the receiver identification information.

필요에 따라, 중계 서버는 M2M 장치로부터 퍼블리쉬 확인 패킷을 수신할 수 있다. M2M 장치의 중계 클라이언트 모듈은 중계 서버로부터 퍼블리쉬 패킷을 수신하고, 퍼블리쉬 패킷에 포함되는 응답 메시지를 M2M 장치의 AE 또는 CSE로 전달한다. 또한, M2M 장치의 중계 클라이언트 모듈은 퍼블리쉬 패킷에 대한 정상 수신 여부를 지시하는 퍼블리쉬 확인 패킷을 중계 서버로 전송할 수 있다. If necessary, the relay server can receive the publish confirmation packet from the M2M device. The relay client module of the M2M device receives the public packet from the relay server and transmits the response message included in the public packet to the AE or CSE of the M2M device. In addition, the relay client module of the M2M apparatus can transmit a broadcast confirmation packet indicating whether the public packet is normally received to the relay server.

이상의 동작을 통해서 중계 서버는 M2M 장치와 타 M2M 장치가 공인 IP 네트워크를 통해서 데이터를 송수신하는 동작을 중계하여 원활하게 통신이 수행되도록 제어할 수 있다. 전술한 바와 같이, 중계 서버는 인프라 노드 또는 미들 노드에 포함되어 구성될 수도 있고, 독립적으로 구성되어 인프라 노드 또는 미들 노드와 통신을 수행할 수도 있다. Through the above operation, the relay server can relay the operation of transmitting and receiving data through the public IP network by the M2M device and the other M2M device so that the communication can be smoothly performed. As described above, the relay server may be included in an infrastructure node or a middle node, and may be independently configured to perform communication with an infrastructure node or a middle node.

한편, 도 7 및 도 8에서의 각 동작은 필요에 따라 각 단계가 분리되거나, 그 순서가 변경될 수도 있으며, 전술한 설명에서의 일부가 단계로 추가될 수도 있다. On the other hand, each of the operations in Figs. 7 and 8 may be divided into steps as required or the order thereof may be changed, and some of the above description may be added as steps.

이하에서는, 전술한 본 개시에 따른 보다 세부적인 다양한 실시예 및 절차를 도면을 참조하여 상세하게 설명한다. In the following, various more detailed embodiments and procedures according to the above-described present disclosure will be described in detail with reference to the drawings.

도 9는 일 실시예에 따른 중계 서버가 M2M 장치와 통합되어 구성된 구조를 예시적으로 도시한 도면이고, 도 10은 일 실시예에 따른 중계 서버가 독립적으로 구성된 구조를 예시적으로 도시한 도면이다. FIG. 9 is a diagram illustrating a structure in which a relay server according to an embodiment is integrated with an M2M device, and FIG. 10 is a diagram illustrating an exemplary structure in which a relay server according to an embodiment is configured independently .

도 9를 참조하면, 중계 서버는 미들 노드 또는 인프라 노드에 포함되어 구성될 수 있다. 이 경우, ADN 또는 ASN의 M2M 장치는 중계 클라이언트 모듈을 통해서 중계 서버와 패킷을 주고 받을 수 있다. 유사하게 미들 노드도 중계 클라이언트 모듈을 통해서 미들 노드 또는 인프라 노드의 중계 서버와 패킷을 송수신할 수 있다. Referring to FIG. 9, a relay server may be included in a middle node or an infrastructure node. In this case, the M2M device of the ADN or ASN can exchange packets with the relay server through the relay client module. Likewise, the middle node can also send and receive packets to or from a relay node of a middle node or an infrastructure node through a relay client module.

도 10을 참조하면, 중계 서버는 M2M 시스템의 노드와는 독립적으로 구성될 수도 있다. 이 경우에 중계 서버는 ASN, ADN과 같은 노드와 미들 노드 및 인프라 노드 중 적어도 하나와 중계 클라이언트 모듈을 통해서 패킷을 송수신할 수 있다. Referring to FIG. 10, the relay server may be configured independently of the nodes of the M2M system. In this case, the relay server can transmit and receive packets through the relay client module with at least one of the node such as the ASN and the ADN, the middle node, and the infrastructure node.

또는, 중계 서버는 독립적으로 구성되며, 인프라 노드도 중계 서버를 포함하여 구성될 수도 있다. 이 경우, 미들 노드, ASN, ADN 등의 노드와 중계 서버는 중계 클라이언트 프로토콜을 통해서 패킷을 송수신하고, 인프라 노드와는 중계 서버 간의 패킷 교환을 통해서 통신을 수행할 수 있다. Alternatively, the relay server may be configured independently, and the infrastructure node may also be configured including the relay server. In this case, the nodes such as the middle node, the ASN, and the ADN and the relay server can exchange packets through the relay client protocol, and perform communication through the packet exchange between the infrastructure node and the relay server.

이와 같이, 중계 서버는 M2M 시스템과 공존하여 또는 독립적으로 구성되어 전술한 패킷 교환 동작을 수행할 수 있다. In this manner, the relay server can coexist with the M2M system or independently, and can perform the above-described packet exchange operation.

이하에서는 필요에 따라 M2M 장치를 AE 또는 발신자 설명하고, 타 M2M 장치를 CSE 또는 수신자로 설명할 수 있다. Hereinafter, an M2M device may be described as an AE or a caller as necessary, and another M2M device may be described as a CSE or a receiver.

도 11은 일 실시예에 따른 연결 패킷을 이용하여 중계 서버와 연결을 설정하는 절차를 설명하기 위한 도면이다. 11 is a diagram for explaining a procedure for establishing a connection with a relay server using a connection packet according to an embodiment.

도 11을 참조하면, AE(1100)는 중계 서버(1150)로 접속하기 위하여 중계 클라이언트 모듈(1110)로 초기 접속을 수행한다(S1101). 중계 클라이언트 모듈(1110)은 중계 서버(1150)로 연결 패킷을 전송한다(S1102). Referring to FIG. 11, the AE 1100 performs initial connection to the relay client module 1110 to access the relay server 1150 (S1101). The relay client module 1110 transmits a connection packet to the relay server 1150 (S1102).

동일하게 CSE(1190)도 연결 설정을 위해서 중계 클라이언트 모듈(1180)로 초기 접속을 수행하고(S1103), 중계 클라이언트 모듈(1180)은 중계 서버(1150)로 연결 패킷을 전송한다(S1104). Similarly, the CSE 1190 performs initial connection to the relay client module 1180 for connection establishment (S1103), and the relay client module 1180 transmits a connection packet to the relay server 1150 (S1104).

이 때, AE(1100), CSE(1190)와 중계 클라이언트 모듈(1110, 1180)은 중계 프로토콜 도메인이 아닌 M2M 프로토콜을 사용할 수 있고, 중계 클라이언트 모듈(1110, 1180)과 중계 서버(1150)는 중계 프로토콜 도메인을 사용할 수 있다. 예를 들어, M2M 프로토콜에 따른 M2M 메시지는 요청 메시지와 응답 메시지 등이 있을 수 있고, M2M 메시지의 표현 방법은 Extensible Markup Language(XML), JavaScript Object Notation(JSON) 및 Concise Binary Object Representation(CBOR) 중 적어도 하나가 사용될 수 있다. 따라서, 중계 클라이언트 모듈(1110, 1180)은 M2M 메시지를 중계 프로토콜로 변환할 수 있다. 예를 들어, 가입 패킷의 Topic Name은 ‘oneM2M/req/+/SP-relative-AE-ID’ 또는 'oneM2M/resp/SP-relative-AE-ID/+’로 설정될 수 있다. 유사하게, 가입 패킷의 Topic Filter는 ‘/oneM2M/req/+/SP-relative-AE-ID’ 또는 '/oneM2M/resp/SP-relative-AE-ID/+’로 설정될 수 있다. At this time, the AE 1100, the CSE 1190 and the relay client modules 1110 and 1180 can use the M2M protocol instead of the relay protocol domain, and the relay client modules 1110 and 1180 and the relay server 1150 can relay Protocol domains can be used. For example, an M2M message according to the M2M protocol may include a request message and a response message, and an M2M message may be expressed using Extensible Markup Language (XML), JavaScript Object Notation (JSON), and Concise Binary Object Representation At least one can be used. Accordingly, the relay client module 1110, 1180 can convert the M2M message into a relay protocol. For example, the Topic Name of the subscription packet may be set to 'oneM2M / req / + / SP-relative-AE-ID' or 'oneM2M / resp / SP-relative-AE-ID / +'. Similarly, the Topic Filter of the subscription packet may be set to '/ oneM2M / req / + / SP-relative-AE-ID' or '/ oneM2M / resp / SP-relative-AE-ID / +'.

이후, AE(1100)측의 중계 클라이언트 모듈(1110)은 중계 서버(1150)로 가입 패킷을 전송하고(S1105), CSE(1190)측의 중계 클라이언트 모듈(1180)도 중계 서버(1150)로 가입 패킷을 전송한다(S1106).Thereafter, the relay client module 1110 on the AE 1100 side transmits the subscription packet to the relay server 1150 (S1105), and the relay client module 1180 on the CSE 1190 side also registers with the relay server 1150 And transmits the packet (S1106).

가입 패킷은 M2M 시스템을 지시하는 정보, 요청 메시지에 관련된 AE 식별정보, 응답 메시지에 관련된 AE 식별정보를 포함할 수 있다. 유사하게 CSE(1190) 측의 가입 패킷은 M2M 시스템을 지시하는 정보, 요청 메시지에 관련된 CSE 식별정보, 응답 메시지에 관련된 CSE 식별정보를 포함할 수 있다.The subscription packet may include information indicating the M2M system, AE identification information related to the request message, and AE identification information related to the response message. Similarly, the subscription packet on the CSE 1190 side may include information indicating the M2M system, CSE identification information related to the request message, and CSE identification information related to the response message.

이와 같은 절차를 통해서 AE(1100) 및 CSE(1190)는 중계 서버(1150)와 연결 설정을 수행할 수 있다. Through the above procedure, the AE 1100 and the CSE 1190 can establish a connection with the relay server 1150.

도 12는 다른 실시예에 따른 연결 패킷을 이용하여 중계 서버와 연결을 설정하는 절차를 설명하기 위한 도면이다. 12 is a diagram for explaining a procedure for establishing a connection with a relay server using a connection packet according to another embodiment.

도 12를 참조하면, 중계 서버(1150)는 연결 설정 과정에서의 패킷에 대한 확인 패킷(ACK)을 전송할 수 있다. 예를 들어, AE(1100)는 중계 서버(1150)로 접속하기 위하여 중계 클라이언트 모듈(1110)로 초기 접속을 수행한다(S1210). 중계 클라이언트 모듈(1110)은 중계 서버(1150)로 연결 패킷을 전송한다(S1220). Referring to FIG. 12, the relay server 1150 can transmit an acknowledgment packet (ACK) for a packet in the connection establishment process. For example, the AE 1100 performs an initial connection to the relay client module 1110 to connect to the relay server 1150 (S1210). The relay client module 1110 transmits the connection packet to the relay server 1150 (S1220).

중계 서버(1150)는 연결 패킷에 대한 정상 수신 여부를 지시하는 정보를 포함하는 연결 확인 패킷(CONNACK)을 중계 클라이언트 모듈(1110)로 전송할 수 있다(S1230). The relay server 1150 may transmit a connection confirmation packet (CONNACK) including information indicating whether the connection packet is normally received to the relay client module 1110 (S1230).

동일하게 CSE(1190)도 연결 설정을 위해서 중계 클라이언트 모듈(1180)로 초기 접속을 수행하고(S1240), 중계 클라이언트 모듈(1180)은 중계 서버(1150)로 연결 패킷을 전송한다(S1250). 중계 서버(1150)는 연결 패킷에 대한 정상 수신 여부를 지시하는 정보를 포함하는 연결 확인 패킷(CONNACK)을 중계 클라이언트 모듈(1180)로 전송할 수 있다(S1260). Similarly, the CSE 1190 performs initial connection to the relay client module 1180 in step S 1240 for connection establishment, and the relay client module 1180 transmits a connection packet to the relay server 1150 in step S 1250. The relay server 1150 can transmit a connection confirmation packet (CONNACK) including information indicating whether the connection packet is normally received to the relay client module 1180 (S1260).

이 때, AE(1100), CSE(1190)와 중계 클라이언트 모듈(1110, 1180)은 중계 프로토콜 도메인이 아닌 M2M 프로토콜을 사용할 수 있고, 중계 클라이언트 모듈(1110, 1180)과 중계 서버(1150)는 중계 프로토콜 도메인을 사용할 수 있다. 예를 들어, M2M 프로토콜에 따른 M2M 메시지는 요청 메시지와 응답 메시지 등이 있을 수 있고, M2M 메시지의 표현 방법은 Extensible Markup Language(XML), JavaScript Object Notation(JSON) 및 Concise Binary Object Representation(CBOR) 중 적어도 하나가 사용될 수 있다. 따라서, 중계 클라이언트 모듈(1110, 1180)은 M2M 메시지를 중계 프로토콜로 변환할 수 있다. 예를 들어, 가입 패킷의 Topic Name은 ‘oneM2M/req/+/SP-relative-AE-ID’ 또는 'oneM2M/resp/SP-relative-AE-ID/+’로 설정될 수 있다. 유사하게, 가입 패킷의 Topic Filter는 ‘/oneM2M/req/+/SP-relative-AE-ID’ 또는 '/oneM2M/resp/SP-relative-AE-ID/+’로 설정될 수 있다.At this time, the AE 1100, the CSE 1190 and the relay client modules 1110 and 1180 can use the M2M protocol instead of the relay protocol domain, and the relay client modules 1110 and 1180 and the relay server 1150 can relay Protocol domains can be used. For example, an M2M message according to the M2M protocol may include a request message and a response message, and an M2M message may be expressed using Extensible Markup Language (XML), JavaScript Object Notation (JSON), and Concise Binary Object Representation At least one can be used. Accordingly, the relay client module 1110, 1180 can convert the M2M message into a relay protocol. For example, the Topic Name of the subscription packet may be set to 'oneM2M / req / + / SP-relative-AE-ID' or 'oneM2M / resp / SP-relative-AE-ID / +'. Similarly, the Topic Filter of the subscription packet may be set to '/ oneM2M / req / + / SP-relative-AE-ID' or '/ oneM2M / resp / SP-relative-AE-ID / +'.

이후, AE(1100)측의 중계 클라이언트 모듈(1110)은 중계 서버(1150)로 가입 패킷을 전송하고(S1270), CSE(1190)측의 중계 클라이언트 모듈(1180)도 중계 서버(1150)로 가입 패킷을 전송한다(S1280). 전술한 바와 같이, 가입 패킷은 M2M 시스템을 지시하는 정보, 요청 메시지에 관련된 AE 식별정보, 응답 메시지에 관련된 AE 식별정보를 포함할 수 있다. 유사하게 CSE(1190) 측의 가입 패킷은 M2M 시스템을 지시하는 정보, 요청 메시지에 관련된 CSE 식별정보, 응답 메시지에 관련된 CSE 식별정보를 포함할 수 있다.Thereafter, the relay client module 1110 on the AE 1100 side transmits the subscription packet to the relay server 1150 (S1270), and the relay client module 1180 on the CSE 1190 side also subscribes to the relay server 1150 And transmits the packet (S1280). As described above, the subscription packet may include information indicating the M2M system, AE identification information related to the request message, and AE identification information related to the response message. Similarly, the subscription packet on the CSE 1190 side may include information indicating the M2M system, CSE identification information related to the request message, and CSE identification information related to the response message.

또한, 중계 서버(1150)는 연결 패킷에 대한 정상 수신 여부를 지시하는 정보를 포함하는 가입 확인 패킷(SUBACK)을 AE(1100)측의 중계 클라이언트 모듈(1110)로 전송할 수 있다(S1290). 동일하게, 중계 서버(1150)는 가입 패킷에 대한 정상 수신 여부를 지시하는 정보를 포함하는 가입 확인 패킷(SUBACK)을 CSE(1180) 측의 중계 클라이언트 모듈(1180)로 전송할 수 있다(S1295). In addition, the relay server 1150 may transmit a subscription acknowledgment packet (SUBACK) including information indicating normal reception of the connection packet to the relay client module 1110 on the AE 1100 side (S1290). Similarly, the relay server 1150 can transmit a subscription acknowledgment packet (SUBACK) including information indicating normal reception of the subscription packet to the relay client module 1180 on the CSE 1180 side (S1295).

이와 같은 절차를 통해서 AE(1100) 및 CSE(1190)는 중계 서버(1150)와 연결 설정을 수행할 수 있다. Through the above procedure, the AE 1100 and the CSE 1190 can establish a connection with the relay server 1150.

연결 설정이 완료되면, M2M 장치는 퍼블리쉬 패킷을 이용하여 중계 서버와 통신을 수행할 수 있다. Once the connection setup is completed, the M2M device can communicate with the relay server using the public packet.

도 13은 일 실시예에 따른 퍼블리쉬 패킷을 이용하여 메시지를 전달하는 절차를 설명하기 위한 도면이다. 13 is a diagram for explaining a procedure for delivering a message using a public packet according to an embodiment.

도 13을 참조하면, 연결 설정이 완료된 후에 AE(1100)는 요청 메시지를 M2M 메시지 형식으로 중계 클라이언트 모듈(1110)로 전달한다(S1310). 중계 클라이언트 모듈(1110)은 중계 서버(1150)로 퍼블리쉬 패킷을 전송한다(S1320). 이를 위해서, 중계 클라이언트 모듈(1110)은 요청 메시지를 퍼블리쉬 패킷 포맷에 따라 페이로드에 포함하여 전송할 수 있다. Referring to FIG. 13, after connection setup is completed, the AE 1100 transmits a request message to the relay client module 1110 in the M2M message format (S1310). The relay client module 1110 transmits the public packet to the relay server 1150 (S1320). To this end, the relay client module 1110 may transmit the request message in a payload according to a public packet format.

퍼블리쉬 패킷은 고정 헤더에 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고, 가변 헤더에 토픽 네임 필드 및 패킷 식별 필드를 포함하여 구성될 수 있다. 일 예로, 퍼블리쉬 패킷의 Topic Name은 ‘oneM2M/req/SP-relative-AE-ID/SP-relative-CSE-ID’로 설정될 수 있다. The public packet includes a QoS level field, a redundant transmission flag field, and a packet type field including information on a QoS level of a packet or a relay protocol in a fixed header, and includes a topic name field and a packet identification field in a variable header . For example, the topic name of the public packet may be set to 'oneM2M / req / SP-relative-AE-ID / SP-relative-CSE-ID'.

중계 서버(1150)는 수신된 퍼블리쉬 패킷을 요청 메시지의 수신측 중계 클라이언트 모듈(1180)로 전송한다(S1330). 중계 클라이언트 모듈(1180)은 퍼블리쉬 패킷의 페이로드에 포함되는 요청 메시지를 M2M 메시지로 변환하여 CSE(1190)로 전달한다(S1340).The relay server 1150 transmits the received public packet to the relay client module 1180 on the receiving side of the request message (S1330). The relay client module 1180 converts the request message included in the payload of the public packet into an M2M message and transmits the message to the CSE 1190 (S1340).

이러한 프로토콜 변환 및 중계 과정을 통해서 AE(1100)는 CSE(1190)로 요청 메시지를 전달할 수 있고, 동일한 방식으로 응답 메시지가 CSE(1190)에서 AE(1100)로 전달될 수 있다. The AE 1100 can forward the request message to the CSE 1190 through the protocol conversion and the relay process, and the response message can be transferred from the CSE 1190 to the AE 1100 in the same manner.

예를 들어, CSE(1190)는 응답 메시지를 M2M 메시지 형식으로 중계 클라이언트 모듈(1180)로 전달한다(S1350). 중계 클라이언트 모듈(1180)은 중계 서버(1150)로 퍼블리쉬 패킷을 전송한다(S1360). 이를 위해서, 중계 클라이언트 모듈(1180)은 응답 메시지를 퍼블리쉬 패킷 포맷에 따라 페이로드에 포함하여 전송할 수 있다. For example, the CSE 1190 transmits a response message to the relay client module 1180 in the M2M message format (S1350). The relay client module 1180 transmits the public packet to the relay server 1150 (S1360). For this purpose, the relay client module 1180 can transmit the response message in the payload according to the public packet format.

퍼블리쉬 패킷은 고정 헤더에 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고, 가변 헤더에 토픽 네임 필드 및 패킷 식별 필드를 포함하여 구성될 수 있다. 일 예로, 퍼블리쉬 패킷의 Topic Name은 ‘oneM2M/resp/SP-relative-AE-ID/SP-relative-CSE-ID’로 설정될 수 있다. The public packet includes a QoS level field, a redundant transmission flag field, and a packet type field including information on a QoS level of a packet or a relay protocol in a fixed header, and includes a topic name field and a packet identification field in a variable header . For example, the Topic Name of the public packet may be set to 'oneM2M / resp / SP-relative-AE-ID / SP-relative-CSE-ID'.

중계 서버(1150)는 수신된 퍼블리쉬 패킷을 응답 메시지의 수신측 중계 클라이언트 모듈(1110)로 전송한다(S1370). 중계 클라이언트 모듈(1110)은 퍼블리쉬 패킷의 페이로드에 포함되는 응답 메시지를 M2M 메시지로 변환하여 AE(1100)로 전달한다(S1380). 중계 클라이언트 모듈(1110)은 수신된 퍼블리쉬 패킷의 페이로드에 포함되는 응답 메시지를 M2M 메시지로 변환하여 AE(1100)로 전달함으로써, AE(1100)와 CSE(1190)는 요청 메시지와 응답 메시지를 송수신할 수 있다. The relay server 1150 transmits the received public packet to the relay client module 1110 on the receiving side of the response message (S1370). The relay client module 1110 converts the response message included in the payload of the public packet into an M2M message and transmits it to the AE 1100 (S1380). The relay client module 1110 converts the response message included in the payload of the received public packet into an M2M message and transmits the response message to the AE 1100. The AE 1100 and the CSE 1190 send and receive a request message and a response message, can do.

도 14는 다른 실시예에 따른 퍼블리쉬 패킷을 이용하여 메시지를 전달하는 절차를 설명하기 위한 도면이다. 도 14에서는 요청 메시지 발신자를 Originator로 기재하여 설명하고, 요청 메시지 수신자를 Receiver로 기재하여 설명한다. 이는 위에서 설명한 AE 또는 CSE 또는 M2M 시스템의 노드가 될 수 있다. 14 is a diagram for explaining a procedure of delivering a message using a public packet according to another embodiment. 14, the sender of the request message is described as Originator, and the recipient of the request message is described as Receiver. This can be the node of the AE or CSE or M2M system described above.

도 14를 참조하면, 연결 설정이 완료된 후에 Originator(1400)는 요청 메시지를 M2M 메시지 형식으로 중계 클라이언트 모듈(1110)로 전달한다(S1400). 중계 클라이언트 모듈(1110)은 중계 서버(1150)로 퍼블리쉬 패킷을 전송한다(S1405). 이를 위해서, 중계 클라이언트 모듈(1110)은 요청 메시지를 퍼블리쉬 패킷 포맷에 따라 페이로드에 포함하여 전송할 수 있다. Referring to FIG. 14, after connection setup is completed, the originator 1400 transmits a request message to the relay client module 1110 in an M2M message format (S1400). The relay client module 1110 transmits the public packet to the relay server 1150 (S1405). To this end, the relay client module 1110 may transmit the request message in a payload according to a public packet format.

퍼블리쉬 패킷은 고정 헤더에 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고, 가변 헤더에 토픽 네임 필드 및 패킷 식별 필드를 포함하여 구성될 수 있다. 일 예로, 퍼블리쉬 패킷의 Topic Name은 ‘/oneM2M/req/Originator-ID/Receiver-ID’로 설정될 수 있다. The public packet includes a QoS level field, a redundant transmission flag field, and a packet type field including information on a QoS level of a packet or a relay protocol in a fixed header, and includes a topic name field and a packet identification field in a variable header . For example, the topic name of the public packet may be set to '/ oneM2M / req / Originator-ID / Receiver-ID'.

중계 서버(1150)는 수신된 퍼블리쉬 패킷의 정상 수신 여부에 대한 정보를 포함하는 퍼블리쉬 확인(Publish ACK, PUBACK) 패킷을 중계 클라이언트 모듈(1110)로 전송한다(S1410). 예를 들어, 중계 서버(1150)는 요청 메시지를 포함하는 퍼블리쉬 패킷이 정상 수신 되었거나, 해당 퍼블리쉬 패킷을 수신자로 처리가 가능한 경우에 정상 수신을 지시하는 정보를 포함하는 퍼블리쉬 확인 패킷을 중계 클라이언트 모듈(1110)로 전송한다. The relay server 1150 transmits a Publish ACK (PUBACK) packet including information on whether or not the received public packet is normally received to the relay client module 1110 (S1410). For example, the relay server 1150 transmits a publicity confirmation packet including information indicating that a public packet including a request message has been received normally or normal reception if the public packet can be processed as a receiver, to the relay client module 1110).

이후, 중계 서버(1150)는 수신된 퍼블리쉬 패킷을 요청 메시지의 수신측 중계 클라이언트 모듈(1180)로 전송한다(S1415). 중계 클라이언트 모듈(1180)은 퍼블리쉬 패킷의 페이로드에 포함되는 요청 메시지를 M2M 메시지로 변환하여 Receiver(1490)로 전달한다(S1425). 다만, 수신측 중계 클라이언트 모듈(1180)은 요청 메시지를 포함하는 퍼블리쉬 패킷을 중계 서버(1150)로부터 수신하고, 정상 수신 여부를 지시하는 정보를 포함하는 퍼블리쉬 확인 패킷을 중계 서버(1150)로 전송할 수 있다(S1420). S1420 단계는 S1425 단계 이전에 수행될 수도 있고, 이후에 수행될 수도 있다. Then, the relay server 1150 transmits the received public packet to the relay client module 1180 on the receiving side of the request message (S1415). The relay client module 1180 converts the request message included in the payload of the public packet into an M2M message and transmits the message to the receiver 1490 (S1425). However, the receiving-side relay client module 1180 may receive the public packet including the request message from the relay server 1150, and may transmit the publicity check packet including the information indicating the normal reception status to the relay server 1150 (S1420). The step S1420 may be performed before or after the step S1425.

이러한 프로토콜 변환 및 중계 과정을 통해서 Originator(1400)는 Receiver(1490)로 요청 메시지를 전달할 수 있고, 동일한 방식으로 응답 메시지가 Receiver(1490)에서 Originator(1400)로 전달될 수 있다. Through the protocol conversion and relay process, the originator 1400 can transmit a request message to the receiver 1490 and the response message can be transmitted from the receiver 1490 to the originator 1400 in the same manner.

예를 들어, Receiver(1490)는 응답 메시지를 M2M 메시지 형식으로 중계 클라이언트 모듈(1180)로 전달한다(S1430). 중계 클라이언트 모듈(1180)은 중계 서버(1150)로 응답 메시지를 포함하는 퍼블리쉬 패킷을 전송한다(S1435). 이를 위해서, 중계 클라이언트 모듈(1180)은 응답 메시지를 퍼블리쉬 패킷 포맷에 따라 페이로드에 포함하여 전송할 수 있다. For example, the receiver 1490 transmits a response message to the relay client module 1180 in an M2M message format (S1430). The relay client module 1180 transmits a public packet including a response message to the relay server 1150 (S1435). For this purpose, the relay client module 1180 can transmit the response message in the payload according to the public packet format.

퍼블리쉬 패킷은 고정 헤더에 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고, 가변 헤더에 토픽 네임 필드 및 패킷 식별 필드를 포함하여 구성될 수 있다. 일 예로, 응답 메시지를 포함하는 퍼블리쉬 패킷의 Topic Name은‘/oneM2M/resp/Originator-ID/Receiver-ID’로 설정될 수 있다. The public packet includes a QoS level field, a redundant transmission flag field, and a packet type field including information on a QoS level of a packet or a relay protocol in a fixed header, and includes a topic name field and a packet identification field in a variable header . For example, the topic name of the public packet including the response message may be set to '/ oneM2M / resp / Originator-ID / Receiver-ID'.

중계 서버(1150)는 응답 메시지를 포함하는 퍼블리쉬 패킷을 수신하면, 이에 대한 정상 수신 여부를 지시하는 정보를 포함하는 퍼블리쉬 확인 패킷을 중계 클라이언트 모듈(1180)로 전송할 수 있다(S1440).Upon receiving the public packet including the response message, the relay server 1150 may transmit a publicity confirmation packet including information indicating normal reception of the public packet to the relay client module 1180 in operation S1440.

응답 메시지를 포함하는 퍼블리쉬 패킷이 정상 수신되고, Originator(1400)로 정상 중계가 가능하여 퍼블리쉬 확인 패킷을 전송한 경우에, 중계 서버(1150)는 수신된 퍼블리쉬 패킷을 응답 메시지의 수신측 중계 클라이언트 모듈(1110)로 전송한다(S1445). 수신측 중계 클라이언트 모듈(1110)은 응답 메시지를 포함하는 퍼블리쉬 패킷이 수신되면, 이에 대한 정상 수신 또는 정상 처리 가능 여부를 지시하는 정보를 포함하는 퍼블리쉬 확인 패킷을 중계 서버(1150)로 전송할 수 있다. When the public packet including the response message is normally received and the originator 1400 can normally relay the packet, the relay server 1150 transmits the received public packet to the relay client module (Step S1445). Upon reception of the public packet including the response message, the receiving-side relay client module 1110 can transmit a broadcast confirmation packet including information indicating normal reception or normal processing to the relay server 1150.

중계 클라이언트 모듈(1110)은 퍼블리쉬 패킷의 페이로드에 포함되는 응답 메시지를 M2M 메시지로 변환하여 Originator(1400)로 전달한다(S1455). 중계 클라이언트 모듈(1110)은 수신된 퍼블리쉬 패킷의 페이로드에 포함되는 응답 메시지를 M2M 메시지로 변환하여 Originator(1400)로 전달함으로써, Originator(1400)와 Receiver(1490)는 요청 메시지와 응답 메시지를 송수신할 수 있다. The relay client module 1110 converts the response message included in the payload of the public packet into an M2M message and transmits the message to the originator 1400 (S1455). The relay client module 1110 converts the response message included in the payload of the received public packet into an M2M message and transmits the message to the originator 1400. The originator 1400 and the receiver 1490 send and receive a request message and a response message, can do.

한편, 일대일 통신이 아닌 일대다 통신의 효율적으로 처리하기 위하여, 위에서 예시적으로 설명한 퍼블리쉬 패킷의 Topic Name은 응용 서비스 또는 그룹 등을 처리하기 위하여 아래의 예시와 같이 설정될 수도 있다. Meanwhile, in order to efficiently process one-to-many communication rather than one-to-one communication, the topic name of the public packet described above may be set as shown in the following example to process an application service or a group.

- Application을 공유하기 위한 Topic Name: /oneM2M/resource/AE/App-ID- Topic Name for sharing application: / oneM2M / resource / AE / App-ID

- Group을 공유하기 위한 Topic Name: /oneM2M/resource/group/groupName- Topic Name for sharing Group: / oneM2M / resource / group / groupName

이 외에도 토픽 네임은 다양한 형태로 설정될 수 있으며, 이는 미리 각 구성 개체 설정될 수 있다. In addition, the topic name can be set in various forms, which can be set in advance for each constituent entity.

이하에서는, 전술한 패킷들의 구성과 각 헤더 및 페이로드의 구성을 보다 상세하게 도면을 참조하여 설명한다. 각 도면의 패킷의 포맷 및 구조는 예시적으로 도시한 것으로 해당 도면에 한정되는 것은 아니다. Hereinafter, the configuration of the above-described packets and the configuration of each header and payload will be described in more detail with reference to the drawings. The format and structure of packets in each drawing are illustratively shown and are not limited to those drawings.

도 15는 일 실시예에 따른 연결 패킷 포맷과 고정 헤더의 구조를 도시한 도면이다. 15 is a diagram illustrating a structure of a connection packet format and a fixed header according to an embodiment.

도 15를 참조하면, 연결 패킷은 2 바이트의 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성될 수 있다. 즉, 연결 패킷 포맷은 고정 헤더, 가변 헤더 및 페이로드로 설정될 수 있으며, 고정 헤더는 2바이트의 정보를 포함하고, 가변 헤더와 페이로드의 길이는 가변적으로 설정될 수 있다. Referring to FIG. 15, the connection packet may be composed of a 2-byte fixed header, a variable header, and a payload area. That is, the connection packet format can be set as a fixed header, a variable header, and a payload, and the fixed header includes 2 bytes of information, and the variable header and the payload length can be set to be variable.

예를 들어, 고정 헤더는 고정 헤더는 예약(Reserver) 필드와 패킷 타입 정보를 포함하는 필드 및 잔여 길이 필드로 구성될 수 있다. 예를 들어, 예약 필드은 0 값으로 설정되고, 패킷 타입 정보를 포함하는 필드는 해당 패킷이 연결(CONNECT) 패킷임을 나타내기 위한 특정 값으로 설정될 수 있다. 해당 특정 값은 미리 설정될 수 있다. 한편, 잔여 길이 필드는 가변 헤더와 페이로드에 따라 그 값이 가변적으로 구성될 수 있다. 예를 들어, 잔여 길이 필드의 값은 “0” 또는 “1”의 값으로 설정도리 수 있으며, 페이로드의 존재 여부, 페이 로드 길이 또는 가변 헤더의 길이나 존재 여부에 따라 0 또는 1의 값이 미리 설정된 규칙에 의해서 결정될 수 있다. 이 외에도, 연결 패킷 포맷의 헤더 및 각 필드의 길이는 설정에 따라 달라질 수 있다. For example, a fixed header may be composed of a fixed header including a Reserver field, a field including packet type information, and a remaining length field. For example, the reserved field may be set to a value of 0, and a field containing packet type information may be set to a specific value to indicate that the packet is a CONNECT packet. The specific value can be preset. On the other hand, the remaining length field may be variable in value depending on the variable header and the payload. For example, the value of the remaining length field may be set to a value of " 0 " or " 1 ", and may be a value of 0 or 1 depending on the presence or absence of a payload, And can be determined by a predetermined rule. In addition, the header of the connection packet format and the length of each field may vary depending on the setting.

도 16은 일 실시예에 따른 연결 패킷 가변 헤더의 구조를 도시한 도면이다. 16 is a diagram illustrating a structure of a connection packet variable header according to an embodiment.

도 16을 참조하면, 연결 패킷의 가변 헤더는 프로토콜 이름 필드, 프로토콜 레벨 필드, 연결 플래그 필드 및 연결 유지(Keep Alive) 필드를 포함할 수 있다. 예를 들어, 프로토콜 이름 필드는 해당 패킷이 사용하는 중계 프로토콜을 지시하는 정보를 포함할 수 있다. 구체적으로, 프로토콜 이름 필드는 해당 패킷이 MQTT 프로토콜을 사용하는 패킷임을 지시하는 정보를 포함할 수 있다. Referring to FIG. 16, the variable header of the connection packet may include a protocol name field, a protocol level field, a connection flag field, and a keep alive field. For example, the protocol name field may include information indicating a relay protocol used by the packet. Specifically, the protocol name field may include information indicating that the packet is a packet using the MQTT protocol.

또한, 프로토콜 레벨 필드는 해당 프로토콜의 버전을 지시하는 정보를 포함할 수 있으며, 1600과 같이 프로토콜 레벨의 값이 4인 경우에 MQTT 버전 3.1.1을 지시할 수 있다. In addition, the protocol level field may include information indicating the version of the protocol, and may indicate MQTT version 3.1.1 when the value of the protocol level is 4, such as 1600.

한편, 연결 플래그 필드는 사용자 이름 플래그, 패스워드 플래그, Will Retain, Will QoS, Will Flag, Clean session, Reserved 등의 세부 플래그를 포함할 수 있다. 일 예로, Clean Session 필드는 세션의 리셋 여부를 지시하는 정보를 포함할 수 있습니다. 예를 들어, Clean Session이 0으로 설정되면 서버는 현재 세션의 상태를 기반으로 클라이언트 모듈과의 통신을 재개할 수 있다. 다른 예로, Will Flag는 연결 오류에 대한 정보를 포함할 수 있습니다. 예를 들어, 서버가 입출력 오류 및 네트워크 오류 상황인지, 클라이언트 모듈과 유지 시간 내에 통신을 수행하지 못하였는지, 프로토콜 오류인지 등에 대한 정보를 포함할 수 있다. 또 다른 예로, Will QoS는 Will 메시지를 개시할 때 사용할 QoS 수준을 지정하는 정보를 포함한다. 또 다른 예로, Will Retaion은 해당 패킷을 유지할지 말지를 지시하는 정보를 포함할 수 있다. 또 다른 예로, 패스워드 플래그는 해당 페이로드에 패스워드의 존재 여부에 대한 정보를 포함할 수 있다. 이와 같이, 연결 플래그 필드는 연결 패킷에 대한 다양한 설정 정보를 포함할 수 있다. 즉 1610과 같이 연결 패킷의 값이 설정되는 경우에 Will Flag 값이 1로 설정됨을 나타낼 수 있다. On the other hand, the connection flag field may include a detailed flag such as a user name flag, a password flag, a Will Retain, a Will QoS, a Will Flag, a Clean session, and a Reserved. As an example, the Clean Session field can contain information that indicates whether the session is reset. For example, if the Clean Session is set to 0, the server can resume communication with the client module based on the current state of the session. As another example, the Will Flag can contain information about connection errors. For example, the server may include information on whether there is an input / output error and a network error situation, a communication failure within the retention time with the client module, a protocol error, and the like. As another example, the Will QoS includes information specifying the QoS level to use when initiating the Will message. As another example, the Will Retaion may include information indicating whether to keep the packet. As another example, the password flag may include information on whether or not a password exists in the payload. As such, the connection flag field may include various configuration information for the connection packet. That is, when the value of the connection packet is set as 1610, it can be shown that the Will Flag value is set to 1. [

한편, 가변 헤더의 연결 유지 필드는 클라이언트 모듈이 전송하는 두 개의 연속적인 제어 패킷 사이에서 경과할 수 있는 최대 시간 간격에 대한 정보를 나타내며, 초 단위로 설정될 수 있다. On the other hand, the connection maintaining field of the variable header indicates information on the maximum time interval that can be elapsed between two consecutive control packets transmitted by the client module, and can be set in units of seconds.

또한, 필요에 따라 헤더 및 각 영역의 길이는 설정에 따라 달라질 수 있다. Also, the lengths of the header and each area may be changed depending on the setting, if necessary.

도 17은 일 실시예에 따른 연결 패킷 페이로드의 구조를 도시한 도면이다. 17 is a diagram illustrating a structure of a connection packet payload according to an embodiment.

도 17을 참조하면, 페이로드는 클라이언트 모듈 식별자 정보를 포함할 수 있다. 또한, 필요에 따라 사용자 이름과 패스워드를 포함할 수 있다. 클라이언트 모듈 식별자 정보는 해당 중계 서버에서 클라이언트 모듈을 식별하기 위한 식별정보를 포함하고, 설정된 경우에 해당 사용자에 대한 이름 정보와 패스워드 등을 선택적으로 포함할 수 있다. Referring to FIG. 17, the payload may include client module identifier information. Also, it can include a user name and a password as needed. The client module identifier information includes identification information for identifying the client module in the relay server, and may optionally include name information and a password for the corresponding user when set.

이 경우에도 각 영역 및 페이로드 길이는 가변될 수 있다. Even in this case, each area and payload length can be varied.

이상에서 살펴본 바와 같이, 연결 패킷은 다양한 정보를 포함하여 구성될 수 있다. 이하, 연결 패킷에 대한 응답으로의 연결 확인 패킷의 포맷과 각 필드에 대해서 설명한다. As described above, the connection packet may include various information. Hereinafter, the format of the connection confirmation packet in response to the connection packet and each field will be described.

도 18은 일 실시예에 따른 연결 확인 패킷 포맷과 각 헤더의 구조를 도시한 도면이다. 18 is a diagram illustrating a connection acknowledgment packet format and the structure of each header according to an embodiment.

도 18을 참조하면, 연결 확인 패킷은 2 바이트의 고정 헤더와 가변 헤더 및 페이로드로 구성될 수 있다. 예를 들어, 고정 헤더는 예약 필드(ex, 0000으로 설정)와 패킷 타입 필드 및 잔여 길이 필드로 구성될 수 있다. 이는 전술한 연결 패킷과 유사하게 설정될 수 있다. Referring to FIG. 18, the connection confirmation packet may be composed of a 2-byte fixed header, a variable header, and a payload. For example, the fixed header may comprise a reserved field (ex 0000), a packet type field, and a residual length field. This can be set similar to the above-described connection packet.

가변 헤더도 예약 필드(ex, 0으로 설정)와 잔여 길이 필드 및 연결 반환 코드 정보 필드로 구성될 수 있다. 이를 통해서, 클라이언트 모듈은 중계 서버로 요청한 연결 패킷에 대한 처리 결과를 연결 반환 코드 필드의 값을 통해서 확인할 수 있다. The variable header may also be composed of a reserved field (ex, set to 0), a remaining length field, and a linked return code information field. Through this, the client module can check the processing result of the connection packet requested to the relay server through the value of the connection return code field.

또한, 가변 헤더는 SP(Session Present Flag)와 예약 및 연결 응답 코드 필드를 포함할 수 있다. 한편, 페이로드는 생략될 수 있다.The variable header may also include a Session Present Flag (SP) and a Reservation and Connection Response Code field. On the other hand, the payload can be omitted.

도 19는 일 실시예에 따른 가입(subscribe) 패킷 포맷과 고정 헤더, 가변 헤더 및 페이로드의 구조를 도시한 도면이다. FIG. 19 is a diagram illustrating a structure of a subscribe packet format, a fixed header, a variable header, and a payload according to an embodiment.

도 19를 참조하면, 가입(SUBSCRIBE) 패킷은 고정 헤더와 가변 헤더 및 페이로드로 구성되는 포맷으로 설정된다. 고정 헤더는 2바이트로 설정될 수 있으며, 가변 헤더 및 페이로드는 그 길이가 가변적으로 설정될 수 있다. Referring to FIG. 19, a SUBSCRIBE packet is set in a format composed of a fixed header, a variable header, and a payload. The fixed header can be set to two bytes, and the variable header and the payload can be set to have a variable length.

연결 패킷과 동일하게 고정 헤더는 예약 필드와 패킷 타입 정보 필드 및 잔여 길이 필드로 구성될 수 있으며, 1900과 같이 각 필드에 포함되는 값이 설정될 수 있다. 한편, 가변 헤더는 패킷 식별정보를 포함할 수 있다. Like the connection packet, the fixed header may be composed of a reserved field, a packet type information field, and a remaining length field, and a value included in each field such as 1900 may be set. On the other hand, the variable header may include packet identification information.

또한, 페이로드는 길이 필드, 토픽 필터 필드 및 QoS 필드로 구성하며, 토픽필터와 토픽 필터에 해당하는 QoS는 쌍으로 여러 개가 포함될 수 있다. In addition, the payload includes a length field, a topic filter field, and a QoS field, and QoS corresponding to the topic filter and the topic filter may be included in pairs.

도 20은 일 실시예에 따른 가입(subscribe) 확인 패킷 포맷과 고정 헤더, 가변 헤더 및 페이로드의 구조를 도시한 도면이다. FIG. 20 is a diagram illustrating a structure of a subscribe acknowledgment packet format, a fixed header, a variable header, and a payload according to an embodiment.

도 20을 참조하면, 가입 패킷에 대한 확인 정보를 포함하는 가입 확인 패킷은 고정 헤더와 가변 헤더 및 페이로드로 구성된다. Referring to FIG. 20, the subscription confirmation packet including confirmation information on the subscription packet includes a fixed header, a variable header, and a payload.

가입 패킷과 동일하게 고정 헤더는 예약 필드과 패킷 타입 정보 필드 및 잔여 길이 필드로 구성될 수 있으며, 각 필드에는 2000의 예와 같이 정보가 포함될 수 있다. 한편, 가변 헤더는 패킷 식별정보를 포함할 수 있다. Like the subscription packet, the fixed header may be composed of a reservation field, a packet type information field, and a remaining length field, and each field may include information as in the example of 2000. [ On the other hand, the variable header may include packet identification information.

또한, 페이로드는 응답 코드의 리스트 정보를 포함할 수 있다. 이를 통해서, 가입 패킷에 대한 중계 서버의 처리 결과를 응답 코드 별로 설정된 정보를 통해서 중계 클라이언트 모듈은 획득할 수 있다. The payload may also include list information of the response code. Through this, the relay client module can acquire the processing result of the relay server for the subscription packet through the information set for each response code.

이하에서는, 요청 메시지 및 응답 메시지를 중계하기 위한 퍼블리쉬 패킷과 그에 대한 퍼블리쉬 확인 패킷의 구조를 설명한다. Hereinafter, a structure of a public packet for relaying a request message and a response message and a structure of a publish confirmation packet will be described.

도 21은 일 실시예에 따른 퍼블리쉬 패킷 포맷과 고정 헤더, 가변 헤더 구조를 도시한 도면이다. 21 is a diagram illustrating a public packet format, a fixed header, and a variable header structure according to an embodiment.

도 21을 참조하면, 퍼블리쉬 패킷은 고정 헤더와 가변 헤더 및 페이로드로 구성된다. 예를 들어, 고정 헤더는 RETAIN, QoS 레벨, 중복 전송 플래그(DUG flag), 패킷 타입 정보 및 잔여 길이 필드로 구성될 수 있다. Referring to FIG. 21, a public packet includes a fixed header, a variable header, and a payload. For example, the fixed header may comprise RETAIN, a QoS level, a DUG flag, packet type information, and a residual length field.

일 예로, 고정 헤더는 2 바이트로 구성될 수 있으며, 각 비트 별로 할당된 정보를 운반할 수 있다. 예를 들어, QoS 레벨 필드는 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함한다. 또한, 중복 전송 플래그 필드는 해당 패킷이 중복 전송인지를 나타내는 정보를 포함한다. 또한, 패킷 타입 필드는 해당 패킷이 퍼블리쉬 패킷임을 지시하는 정보를 포함한다. For example, the fixed header may be composed of two bytes and may carry information allocated for each bit. For example, the QoS level field includes information about the QoS level of a packet or a relaying protocol. Also, the redundant transmission flag field includes information indicating whether the packet is a redundant transmission. In addition, the packet type field includes information indicating that the packet is a public packet.

다른 예로, 가변 헤더는 토픽 네임과 패킷 식별정보를 포함할 수 있다. 토픽 네임은 전술한 바와 같이 요청 및 응답 메시지에 따라 달라질 수 있으며, 발신자 정보 및 수신자 정보를 포함할 수 있다. 예를 들어, 요청 메시지의 경우에 ‘/oneM2M/req/Originator-ID/Receiver-ID’로 설정되며, 응답 메시지의 경우에 ‘/oneM2M/resp/Originator-ID/Receiver-ID’로 설정될 수 있다. 패킷 식별정보는 해당 패킷을 식별하기 위해서 미리 설정된 인덱스 정보를 포함할 수 있다. 또한, 패킷 식별정보는 QoS 레벨이 1 또는 2인 퍼블리쉬 패킷에만 존재할 수 있다. In another example, the variable header may include a topic name and packet identification information. The topic name may vary depending on the request and response message, as described above, and may include caller information and recipient information. For example, the request message may be set to '/ oneM2M / req / Originator-ID / Receiver-ID', and in the case of a response message, '/ oneM2M / resp / Originator-ID / Receiver- have. The packet identification information may include preset index information for identifying the packet. In addition, the packet identification information may exist only in a public packet having a QoS level of 1 or 2.

한편, 퍼블리쉬 패킷의 페이로드는 M2M 시스템에서 정의된 요청 메시지 또는 응답 메시지가 포함될 수 있다. 예를 들어, 페이로드에 포함되는 요청 메시지는 해당 요청 메시지의 요청 종류를 지시하는 정보, 발신자 식별정보, 수신자 식별정보 및 요청 식별정보를 포함할 수 있다. 페이로드에 응답 메시지가 포함되는 경우에 응답 메시지는 요청 식별정보 및 응답 결과 코드 정보를 포함할 수 있다. Meanwhile, the payload of the public packet may include a request message or a response message defined in the M2M system. For example, the request message included in the payload may include information indicating a request type of the request message, caller identification information, recipient identification information, and request identification information. In the case where the response message is included in the payload, the response message may include the request identification information and the response result code information.

도 22는 일 실시예에 다른 퍼블리쉬 확인 패킷 포맷과 고정 헤더, 가변 헤더 구조를 도시한 도면이다. FIG. 22 is a diagram illustrating another format of a public-key confirmation packet, a fixed header, and a variable header according to an embodiment of the present invention.

도 22를 참조하면, 퍼블리쉬 확인 패킷(PUBACK 패킷)은 고정 헤더와 가변 헤더 및 페이로드 영역 중 적어도 하나를 포함하여 구성될 수 있다.Referring to FIG. 22, the PUBACK packet may include at least one of a fixed header, a variable header, and a payload area.

연결 패킷, 가입 패킷 등과 동일하게 고정 헤더는 예약 영역과 패킷 타입 정보 영역 및 잔여 길이 영역으로 구성하며, 각 영역에 포함되는 값은 도 22와 같이 포함될 수 있다. 한편, 가변 헤더는 패킷 식별정보를 포함할 수 있다. 예를 들어, 패킷 식별정보를 통해서 해당 퍼블리쉬 확인 패킷이 어떤 퍼블리쉬 패킷에 대한 응답인지를 나타낼 수 있다. 또한, 퍼블리쉬 확인 패킷의 페이로드는 생략이 가능하다. Like the connection packet, the subscription packet, etc., the fixed header is composed of the reserved area, the packet type information area and the remaining length area, and the value included in each area may be included as shown in FIG. On the other hand, the variable header may include packet identification information. For example, through packet identification information, it is possible to indicate to which broadcast packet the corresponding broadcast confirmation packet is a response. In addition, the payload of the publish confirmation packet can be omitted.

이상에서 설명한 각 패킷의 구조 및 필드는 일 실시예를 설명한 것으로, 설정에 의해서 변경되거나 일부 필드가 생략 또는 추가될 수도 있다. The structure and fields of each packet described above are illustrative of one embodiment, and may be changed by setting or some fields may be omitted or added.

또한, 본 실시예들에 따르면 두 개의 M2M 장치 중 한 쪽이 방화벽을 통하여 통신을 하는 경우 인터넷 프토토콜을 이용하여 두 개의 기기 중 어느 쪽에서도 통신을 시작할 수 있다. 또한, 두 개의 기기가 모두 방화벽을 통하여 공인 IP 네트워크를 통하여 통신을 하는 경우에도 인터넷 프로토콜을 이용하여 두 개의 기기 중 어느 쪽에서도 통신을 시작할 수 있다. 또한, 중계 프로토콜을 이용하여 요청 메시지 및 응답 메시지를 교환이 가능하며, 동일한 Application을 다수의 디바이스에서 사용이 가능하다. 또한, 중계 프로토콜을 이용하여 집단적인 처리 기능 수행이 가능하다. 따라서, 본 실시예에 따르면 네트워크 전체의 트래픽의 증가를 방지하면서 발신자가 요청한 동작이 정확하게 수행되었는지를 확인할 수 있다. In addition, according to the present embodiments, when one of the two M2M devices communicates through a firewall, communication can be started from either of the two devices using the Internet protocol. In addition, even when both devices communicate through a firewall through a public IP network, both devices can start communication using the Internet protocol. In addition, the request message and the response message can be exchanged using the relay protocol, and the same application can be used in a plurality of devices. Also, collective processing functions can be performed using a relay protocol. Therefore, according to the present embodiment, it is possible to check whether the operation requested by the caller is correctly performed while preventing the increase of the traffic of the entire network.

이하에서는 도 1 내지 도 22를 참조하여 설명한 본 실시예를 모두 실시할 수 있는 M2M 장치의 구성 및 중계 서버의 구성을 도면을 참조하여 다시 한 번 설명한다. Hereinafter, the configuration of the M2M device and the configuration of the relay server that can implement all of the embodiments described with reference to Figs. 1 to 22 will be described once again with reference to the drawings.

도 23은 일 실시예에 따른 M2M 장치의 구조를 도시한 도면이다. 23 is a diagram illustrating a structure of an M2M device according to an embodiment.

도 23을 참조하면, 공인 IP(Internet Protocol) 네트워크를 통해서 타 M2M 장치와 통신을 수행하는 M2M 장치(2300)는, 중계 클라이언트 모듈을 통해서 중계 서버로의 연결 설정을 위한 연결 패킷을 전송하고, 연결 설정을 위한 연결 패킷에 대한 응답 정보를 수신하여 중계 서버와의 연결을 설정하는 제어부(2310)와 중계 서버와의 연결이 설정되면, 타 M2M 장치로 전송하기 위한 요청 메시지를 퍼블리쉬 패킷에 포함하여 중계 서버로 전송하는 송신부(2320) 및 요청 메시지에 대해서 타 M2M 장치가 생성한 응답 메시지를 포함하는 퍼블리쉬 패킷을 중계 서버로부터 수신하는 수신부(2330)를 포함할 수 있다. 23, an M2M device 2300 that communicates with another M2M device through a public IP (Internet Protocol) network transmits a connection packet for establishing a connection to a relay server through a relay client module, When the connection between the control unit 2310 and the relay server is established by receiving the response information for the connection packet for setting and establishing a connection with the relay server, the request message for transmission to another M2M device is included in the public packet, And a receiving unit 2330 for receiving from the relay server a public packet including a transmitting unit 2320 for transmitting the request message and a response message generated by another M2M device to the request message.

또한, 송신부(2320)는 중계 서버와 연결을 설정하기 위한 연결 패킷을 중계 서버로 전송하고, 수신부(2330)는 중계 서버로부터 연결 패킷에 대한 응답 정보를 포함하는 연결 확인 패킷을 수신할 수 있다. The transmitting unit 2320 transmits a connection packet for establishing a connection with the relay server to the relay server, and the receiving unit 2330 can receive the connection confirmation packet including the response information for the connection packet from the relay server.

한편, 연결 확인 패킷을 M2M 장치가 수신하는 경우, 송신부(2320)는 중계 서버로 가입 패킷을 전송하고, 수신부(2330)는 이에 대한 가입 확인 패킷을 수신할 수 있다. 가입 패킷은 중계 서버에서 해당 M2M 장치의 AE 또는 CSE를 식별하기 위한 식별정보를 포함할 수 있다. 제어부(2310)는 가입 확인 패킷을 수신하여 연결 설정을 수행할 수도 있다. Meanwhile, when the connection confirmation packet is received by the M2M device, the transmitter 2320 transmits the subscription packet to the relay server, and the receiver 2330 can receive the subscription confirmation packet. The subscription packet may include identification information for identifying the AE or CSE of the corresponding M2M device in the relay server. The controller 2310 may receive the subscription confirmation packet and perform the connection setup.

한편, 중계 서버와 중계 클라이언트 모듈 간의 연결 패킷은 아래와 같은 포맷으로 구성될 수 있다. 예를 들어, 연결 패킷은 2 바이트의 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성될 수 있다. 또한, 가변 헤더는 프로토콜 이름 필드, 프로토콜 레벨 필드, 연결 플래그 필드 및 연결 유지(Keep Alive) 필드를 포함하고, 페이로드 영역은 클라이언트 모듈 식별자 정보를 포함할 수 있다. The connection packet between the relay server and the relay client module may be configured in the following format. For example, the connection packet may consist of a 2-byte fixed header, a variable header, and a payload area. In addition, the variable header may include a protocol name field, a protocol level field, a connection flag field, and a keep alive field, and the payload area may include client module identifier information.

한편, 연결 설정 절차는 M2M 장치와 통신을 수행하기 위한 타 M2M 장치도 동일한 방식으로 수행할 수 있다. 예를 들어, 타 M2M 장치도 중계 서버와 연결 패킷 및 연결 확인 패킷 송수신 절차를 통해서 연결을 설정할 수 있다. 또는, 타 M2M 장치는 중계 서버와 연결 패킷 및 연결 확인 패킷 송수신 절차를 진행하고, 가입 패킷 및 가입 확인 패킷 송수신 절차를 통해서 연결을 설정할 수 있다. Meanwhile, the connection establishment procedure may be performed in the same manner as other M2M devices for performing communication with the M2M device. For example, another M2M device can establish a connection with a relay server through connection packet and connection acknowledgment packet transmission / reception procedures. Alternatively, the other M2M device may proceed with the connection packet and connection acknowledgment packet transmission / reception procedure with the relay server, and establish the connection through the connection packet and the connection acknowledgment packet transmission / reception procedure.

퍼블리쉬 패킷은 사물 통신 메시지임을 지시하는 정보, 메시지 타입을 지시하는 정보(요청 또는 응답), 발신자의 식별정보 및 수신자의 식별정보를 포함할 수 있다. The public packet may include information indicating that it is a message communication message, information indicating a message type (request or response), identification information of the sender, and identification information of the receiver.

한편, 퍼블리쉬 패킷은 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며, 고정 헤더는 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고, 가변 헤더는 토픽 네임 필드 및 패킷 식별 필드를 포함할 수 있다. 페이로드 영역에는 요청 메시지가 포함될 수 있으며, 요청 메시지에 요청 식별정보가 포함될 수 있다. 요청 식별정보는 추후 응답 메시지에 포함되어 응답 메시지가 어느 요청 메시지에 대한 응답인지를 식별할 수 있는 정보를 나타낸다. The public packet includes a fixed header, a variable header, and a payload field. The fixed header includes a QoS level field including information on a QoS level of a packet or a relay protocol, a duplicate transmission flag field, and a packet type field, The variable header may include a topic name field and a packet identification field. The payload field may include a request message, and the request message may include request identification information. The request identification information includes information that can be included in a later response message to identify which response message is a response to the request message.

필요에 따라, 수신부(2330)는 퍼블리쉬 패킷에 대한 응답 정보를 포함하는 퍼블리쉬 확인 패킷을 중계 서버로부터 수신할 수도 있다. 퍼블리쉬 확인 패킷은 퍼블리쉬 패킷의 정상 수신 여부에 대한 정보를 포함할 수 있다. If necessary, the receiving unit 2330 may receive a publicity confirmation packet including response information for the public packet from the relay server. The public confirmation packet may include information on whether or not the public packet is normally received.

또한, 송신부(2320)는 응답 메시지를 포함하는 퍼블리쉬 패킷에 대한 확인 정보를 퍼블리쉬 확인 패킷에 포함하여 중계 서버로 전송한다. 퍼블리쉬 확인 패킷은 퍼블리쉬 패킷의 정상 수신 여부에 대한 정보를 포함할 수 있다. 또한, 전술한 바와 같이, 응답 메시지는 퍼블리쉬 패킷의 페이로드에 포함될 수 있으며, 요청 식별정보 및 응답 상태 코드 정보를 포함할 수 있다. 요청 식별정보는 요청 메시지와 동일한 값으로 설정되어, 해당 응답 메시지가 어느 요청 메시지에 대한 응답 결과를 포함하는지를 지시할 수 있다. 응답 상태 코드는 해당 요청 메시지에서 요구하는 절차의 처리 결과에 대한 코드 값을 포함한다.In addition, the transmitting unit 2320 transmits confirmation information about the public packet including the response message to the relay server in the publicity confirmation packet. The public confirmation packet may include information on whether or not the public packet is normally received. Also, as described above, the response message may be included in the payload of the public packet, and may include the request identification information and the response status code information. The request identification information may be set to the same value as the request message, indicating that the response message includes the result of the response to the request message. The response status code includes a code value for the processing result of the procedure required in the corresponding request message.

이 외에도, 제어부(2310)는 본 실시예에 따른 중계 서버를 이용하여 요청 메시지를 전송하고, 응답 메시지를 수신하는 데에 따른 전반적인 M2M 장치(2300)의 동작을 제어한다. In addition, the control unit 2310 transmits the request message using the relay server according to the present embodiment, and controls the overall operation of the M2M apparatus 2300 according to receiving the response message.

또한, 송신부(2320) 및 수신부(2330)는 중계 서버, 타 M2M 장치, 중계 클라이언트 모듈 중 적어도 하나와 본 실시예를 수행하는 데에 필요한 메시지, 신호 및 데이터를 송수신하는 데에 사용된다. The transmitting unit 2320 and the receiving unit 2330 are used to transmit and receive messages, signals, and data necessary for performing the present embodiment with at least one of the relay server, the other M2M device, and the relay client module.

도 24는 일 실시예에 따른 중계 서버의 구조를 도시한 도면이다. 24 is a diagram illustrating a structure of a relay server according to an embodiment.

도 24를 참조하면, 공인 IP(Internet Protocol) 네트워크를 통해서 M2M 장치 간의 통신을 중계하는 중계 서버(2400)는, M2M 장치 및 타 M2M 장치 각각의 중계 클라이언트 모듈로부터 연결 설정을 위한 연결 패킷을 수신하여, M2M 장치 및 타 M2M 장치 각각과의 연결을 설정하는 제어부(2410)와 M2M 장치의 중계 클라이언트 모듈로부터 타 M2M 장치로 전송하기 위한 요청 메시지를 포함하는 퍼블리쉬 패킷을 수신하는 수신부(2430) 및 요청 메시지를 포함하는 퍼블리쉬 패킷을 타 M2M 장치의 중계 클라이언트 모듈로 전송하는 송신부(2420)를 포함할 수 있다. 24, a relay server 2400 for relaying communication between M2M devices via a public IP (Internet Protocol) network receives a connection packet for establishing connection from the relay client module of each of the M2M device and the other M2M devices A controller 2410 for establishing a connection with each of the M2M device and the other M2M devices, a receiver 2430 for receiving a public packet including a request message for transferring the request message from the relay client module of the M2M device to another M2M device, And a transmitting unit 2420 for transmitting the public packet including the received public packet to the relay client module of the other M2M device.

수신부(2430)는 타 M2M 장치의 중계 클라이언트 모듈로부터 요청 메시지에 대한 응답 메시지를 포함하는 퍼블리쉬 패킷을 더 수신하고, 송신부(2420)는 응답 메시지를 포함하는 퍼블리쉬 패킷을 M2M 장치의 중계 클라이언트 모듈로 더 전송할 수 있다. The receiving unit 2430 further receives a public packet including a response message to the request message from the relay client module of the other M2M device and the transmitting unit 2420 transmits the public packet including the response message to the relay client module of the M2M device Lt; / RTI >

수신부(2430)는 중계 서버를 통해서 통신을 수행하고자 하는 M2M 장치들로부터 연결 패킷을 수신할 수 있다. 연결 패킷은 각각의 M2M 장치에 구성될 수 있는 중계 클라이언트 모듈로부터 수신될 수 있다. 또한, 송신부(2420)는 연결 패킷에 대한 응답 정보를 포함하는 연결 확인 패킷을 각 M2M 장치로 전송할 수 있다. The receiving unit 2430 can receive the connection packet from the M2M devices that intend to perform communication through the relay server. A connection packet may be received from a relay client module that may be configured for each M2M device. In addition, the transmitter 2420 may transmit a connection confirmation packet including response information for the connection packet to each M2M device.

또는, 수신부(2430)는 연결 패킷 수신, 연결 확인 패킷 전송 후에 각 M2M 장치로부터 가입 패킷을 수신하고, 송신부(2420)는 가입 패킷에 대한 가입 확인 패킷을 각 M2M 장치로 전송하여 연결 설정을 수행할 수도 있다. 예를 들어, 가입 패킷은 연결 설정을 요청하는 M2M 장치에 대한 식별정보를 포함할 수 있다. 또는, 가입 패킷은 연결 설정을 요청하는 M2M 장치의 요청 메시지 전송과 관련된 식별정보 및 응답 메시지 수신과 관련된 식별정보에 대한 정보를 포함할 수 있다. 물론, 해당 M2M 장치가 M2M 네트워크를 사용하는 사물 통신 장치 패킷임을 지시하는 정보도 포함될 수 있다. Alternatively, the receiving unit 2430 receives the connection packet and the connection confirmation packet from the M2M device, and the transmission unit 2420 transmits a connection confirmation packet for the connection packet to each M2M device to perform connection setup It is possible. For example, the subscription packet may include identification information for the M2M device requesting connection establishment. Alternatively, the subscription packet may include identification information related to the transmission of the request message of the M2M device requesting the connection establishment and information on the identification information related to the reception of the response message. Of course, information indicating that the corresponding M2M device is an object communication device packet using the M2M network may also be included.

한편, 중계 서버(2400)는 M2M 시스템을 구성하는 노드인 미들 노드 및 인프라 노드와는 독립적으로 구성될 수 있다. 이 경우에 미들 노드 및 인프라 노드는 중계 클라이언트 모듈을 이용하여 독립적으로 구성된 중계 서버와 통신을 수행할 수 있다. Meanwhile, the relay server 2400 may be configured independently of a middle node and an infrastructure node, which are nodes constituting the M2M system. In this case, the middle node and the infrastructure node can communicate with the relay server independently configured using the relay client module.

또는, 중계 서버(2400)는 M2M 시스템을 구성하는 노드인 미들 노드 또는 인프라 노드에 구성될 수도 있다. 이 경우에도 중계 서버와 미들 노드 또는 인프라 노드에 구성되는 각 개체와 통신을 수행하기 위한 중계 클라이언트 모듈은 각 노드에 같이 구성될 수 있다. Alternatively, the relay server 2400 may be configured as a middle node or an infrastructure node, which is a node constituting the M2M system. In this case, the relay client module for communicating with the relay server, the middle node, or each entity configured in the infrastructure node may be configured in each node.

한편, 퍼블리쉬 패킷은 사물 통신 메시지임을 지시하는 정보, 메시지 타입을 지시하는 정보(요청 또는 응답), 발신자의 식별정보 및 수신자의 식별정보를 포함할 수 있다. 또는, 퍼블리쉬 패킷은 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며, 고정 헤더는 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고, 가변 헤더는 토픽 네임 필드 및 패킷 식별 필드를 포함할 수 있다. Meanwhile, the public packet may include information indicating that it is a message communication message, information indicating a message type (request or response), identification information of the sender, and identification information of the receiver. Alternatively, the public packet is composed of a fixed header, a variable header, and a payload field, and the fixed header includes a QoS level field including information on the QoS level of the packet or the relay protocol, a duplicate transmission flag field, and a packet type field, The variable header may include a topic name field and a packet identification field.

필요에 따라, 송신부(2420)는 퍼블리쉬 패킷에 대한 응답 정보를 포함하는 퍼블리쉬 확인 패킷을 M2M 장치로 전송할 수도 있다. 퍼블리쉬 확인 패킷은 퍼블리쉬 패킷의 정상 수신 여부에 대한 정보를 포함할 수 있다. If necessary, the transmitting unit 2420 may transmit a publicity confirmation packet including response information to the public packet to the M2M device. The public confirmation packet may include information on whether or not the public packet is normally received.

또한, 제어부(2410)는 퍼블리쉬 패킷이 수신되면, 해당 퍼블리쉬 패킷에서 지시하는 대상 타 M2M 장치에 대한 식별정보를 확인하고, 송신부(2420)는 연결 설정된 타 M2M 장치의 중계 클라이언트 모듈로 요청 메시지를 포함하는 퍼블리쉬 패킷을 전송할 수 있다. 즉, 제어부(2410)는 중계 클라이언트 모듈로부터 퍼블리쉬 패킷이 수신되면, 토픽 네임을 참조하여 해당 패킷을 수신자 측의 중계 클라이언트 모듈로 전송한다. 수신부(2430)는 타 M2M 장치로부터 요청 메시지를 포함하는 퍼블리쉬 패킷에 대한 수신 확인을 지시하는 퍼블리쉬 확인 패킷을 수신할 수 있다. 또한, 송신부(2420)는 퍼블리쉬 패킷에 대한 퍼블리쉬 확인 패킷을 타 M2M 장치로 전송할 수 있다. 또한, 수신부(2430)는 M2M 장치로부터 퍼블리쉬 확인 패킷을 수신할 수 있다.  When receiving the public packet, the control unit 2410 confirms the identification information of the target other M2M device indicated by the corresponding public packet, and the transmitting unit 2420 transmits a request message to the relaying client module of another connected M2M device A public packet can be transmitted. That is, when the broadcast packet is received from the relay client module, the control unit 2410 refers to the topic name and transmits the packet to the relay client module on the receiver side. The receiving unit 2430 may receive a publicity confirmation packet from the other M2M device that instructs the reception confirmation of the public packet including the request message. In addition, the transmitting unit 2420 may transmit a publicity confirmation packet for the public packet to another M2M device. Also, the receiving unit 2430 can receive the publish confirmation packet from the M2M device.

이 외에도, 제어부(2410)는 본 실시예에 따른 중계 서버를 이용하여 요청 메시지를 전송하고, 응답 메시지를 수신하는 데에 따른 전반적인 중계 서버(2400)의 동작을 제어한다. In addition, the control unit 2410 transmits the request message using the relay server according to the present embodiment, and controls the overall operation of the relay server 2400 according to receiving the response message.

또한, 송신부(2420) 및 수신부(2430)는 타 중계 서버, M2M 장치, 타 M2M 장치, 중계 클라이언트 모듈 중 적어도 하나와 본 실시예를 수행하는 데에 필요한 메시지, 신호 및 데이터를 송수신하는 데에 사용된다. The transmitting unit 2420 and the receiving unit 2430 are used for transmitting and receiving messages, signals, and data necessary for performing the present embodiment with at least one of the other relay server, the M2M device, the other M2M device, and the relaying client module do.

전술한 실시예에서 언급한 표준내용 또는 표준문서들은 명세서의 설명을 간략하게 하기 위해 생략한 것으로 본 명세서의 일부를 구성한다. 따라서, 위 표준내용 및 표준문서들의 일부의 내용을 본 명세서에 추가하거나 청구범위에 기재하는 것은 본 발명의 범위에 해당하는 것으로 해석되어야 한다. The standard content or standard documents referred to in the above-mentioned embodiments constitute a part of this specification, for the sake of simplicity of description of the specification. Therefore, it is to be understood that the content of the above standard content and portions of the standard documents are added to or contained in the scope of the present invention.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.

Claims (20)

M2M(Machine to Machine communication) 장치가 공인 IP(Internet Protocol) 네트워크를 통해서 타 M2M 장치와 통신을 수행하는 방법에 있어서,
중계 클라이언트 모듈을 통해서 중계 서버로의 연결 설정을 위한 연결 패킷을 전송하고, 상기 연결 설정을 위한 연결 패킷에 대한 응답 정보를 수신하여 상기 중계 서버와의 연결을 설정하는 단계;
상기 중계 서버와의 연결이 설정되면, 타 M2M 장치로 전송하기 위한 요청 메시지를 퍼블리쉬 패킷에 포함하여 상기 중계 서버로 전송하는 단계; 및
상기 요청 메시지에 대해서 상기 타 M2M 장치가 생성한 응답 메시지를 포함하는 퍼블리쉬 패킷을 상기 중계 서버로부터 수신하는 단계를 포함하는 방법.
1. A method for a M2M (Machine to Machine Communication) device to communicate with another M2M device through a public IP (Internet Protocol) network,
Transmitting a connection packet for establishing a connection to a relay server through a relay client module, receiving response information for a connection packet for establishing the connection, and establishing a connection with the relay server;
When the connection with the relay server is established, including a request message for transmission to another M2M device in a public packet and transmitting the request message to the relay server; And
And receiving from the relay server a public packet including a response message generated by the other M2M device with respect to the request message.
제 1 항에 있어서,
상기 중계 서버는,
미들 노드 또는 인프라 노드에 구성되는 것을 특징으로 하는 방법.
The method according to claim 1,
The relay server includes:
A middle node or an infrastructure node.
제 1 항에 있어서,
상기 중계 서버는,
미들 노드 및 인프라 노드와는 독립적으로 구성되며, 상기 미들 노드 또는 상기 인프라 노드에 구성되는 중계 클라이언트 모듈과 통신을 수행하는 것을 특징으로 하는 방법.
The method according to claim 1,
The relay server includes:
Wherein the central node and the infrastructure node are independently configured to communicate with a middle node or a relay client module configured in the infrastructure node.
제 1 항에 있어서,
상기 타 M2M 장치는,
상기 중계 서버와 연결 패킷 송수신 절차를 수행하여 연결 설정을 완료한 후에 상기 요청 메시지를 포함하는 퍼블리쉬 패킷을 상기 중계 서버로부터 수신하는 것을 특징으로 하는 방법.
The method according to claim 1,
The other M2M device,
Receiving a broadcast packet including the request message from the relay server after completion of connection establishment by performing a connection packet transmission / reception procedure with the relay server.
제 1 항에 있어서,
상기 연결 패킷은,
2 바이트의 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며,
상기 가변 헤더는 프로토콜 이름 필드, 프로토콜 레벨 필드, 연결 플래그 필드 및 연결 유지(Keep Alive) 필드를 포함하고,
상기 페이로드 영역은 상기 클라이언트 모듈 식별자 정보를 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
The connection packet includes:
A 2-byte fixed header, a variable header, and a payload area,
The variable header includes a protocol name field, a protocol level field, a connection flag field, and a keep alive field,
Wherein the payload area comprises the client module identifier information.
제 1 항에 있어서,
상기 퍼블리쉬 패킷은,
고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며,
상기 고정 헤더는 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고,
상기 가변 헤더는 토픽 네임 필드 및 패킷 식별 필드를 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
The public packet includes:
A fixed header, a variable header, and a payload area,
The fixed header includes a QoS level field including information on a QoS level of a packet or a relay protocol, a duplicate transmission flag field, and a packet type field,
Wherein the variable header comprises a topic name field and a packet identification field.
중계 서버가 공인 IP(Internet Protocol) 네트워크를 통해서 M2M(Machine to Machine communication) 장치 간의 통신을 중계하는 방법에 있어서,
M2M 장치 및 타 M2M 장치 각각의 중계 클라이언트 모듈로부터 연결 설정을 위한 연결 패킷을 수신하여, 상기 M2M 장치 및 타 M2M 장치 각각과의 연결을 설정하는 단계;
상기 M2M 장치의 중계 클라이언트 모듈로부터 상기 타 M2M 장치로 전송하기 위한 요청 메시지를 포함하는 퍼블리쉬 패킷을 수신하는 단계;
상기 요청 메시지를 포함하는 퍼블리쉬 패킷을 상기 타 M2M 장치의 중계 클라이언트 모듈로 전송하는 단계;
상기 타 M2M 장치의 중계 클라이언트 모듈로부터 상기 요청 메시지에 대한 응답 메시지를 포함하는 퍼블리쉬 패킷을 수신하는 단계; 및
상기 응답 메시지를 포함하는 퍼블리쉬 패킷을 상기 M2M 장치의 중계 클라이언트 모듈로 전송하는 단계를 포함하는 방법.
A method for a relay server relaying communication between M2M (machine to machine communication) devices via a public IP (Internet Protocol) network,
Receiving a connection packet for establishing a connection from the relay client module of each of the M2M device and the other M2M devices, and establishing a connection with the M2M device and each of the other M2M devices;
Receiving a public packet including a request message for transfer from the relay client module of the M2M device to the other M2M device;
Transmitting a public packet including the request message to a relay client module of the other M2M device;
Receiving a public packet including a response message for the request message from a relay client module of the other M2M device; And
And sending a public packet containing the response message to a relay client module of the M2M device.
제 7 항에 있어서,
상기 중계 서버는,
미들 노드 또는 인프라 노드에 구성되는 것을 특징으로 하는 방법.
8. The method of claim 7,
The relay server includes:
A middle node or an infrastructure node.
제 7 항에 있어서,
상기 연결 패킷은,
2 바이트의 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며,
상기 가변 헤더는 프로토콜 이름 필드, 프로토콜 레벨 필드, 연결 플래그 필드 및 연결 유지(Keep Alive) 필드를 포함하고,
상기 페이로드 영역은 상기 클라이언트 모듈 식별자 정보를 포함하는 것을 특징으로 하는 방법.
8. The method of claim 7,
The connection packet includes:
A 2-byte fixed header, a variable header, and a payload area,
The variable header includes a protocol name field, a protocol level field, a connection flag field, and a keep alive field,
Wherein the payload area comprises the client module identifier information.
제 7 항에 있어서,
상기 퍼블리쉬 패킷은,
고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며,
상기 고정 헤더는 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고,
상기 가변 헤더는 토픽 네임 필드 및 패킷 식별 필드를 포함하는 것을 특징으로 하는 방법.
8. The method of claim 7,
The public packet includes:
A fixed header, a variable header, and a payload area,
The fixed header includes a QoS level field including information on a QoS level of a packet or a relay protocol, a duplicate transmission flag field, and a packet type field,
Wherein the variable header comprises a topic name field and a packet identification field.
공인 IP(Internet Protocol) 네트워크를 통해서 타 M2M 장치와 통신을 수행하는 M2M(Machine to Machine communication) 장치에 있어서,
중계 클라이언트 모듈을 통해서 중계 서버로의 연결 설정을 위한 연결 패킷을 전송하고, 상기 연결 설정을 위한 연결 패킷에 대한 응답 정보를 수신하여 상기 중계 서버와의 연결을 설정하는 제어부;
상기 중계 서버와의 연결이 설정되면, 타 M2M 장치로 전송하기 위한 요청 메시지를 퍼블리쉬 패킷에 포함하여 상기 중계 서버로 전송하는 송신부; 및
상기 요청 메시지에 대해서 상기 타 M2M 장치가 생성한 응답 메시지를 포함하는 퍼블리쉬 패킷을 상기 중계 서버로부터 수신하는 수신부를 포함하는 M2M 장치.
1. An M2M (Machine to Machine Communication) device for performing communication with another M2M device via a public IP (Internet Protocol) network,
A control unit for transmitting a connection packet for establishing a connection to a relay server through a relay client module, receiving response information for a connection packet for establishing the connection, and establishing a connection with the relay server;
A transmitter for transmitting a request message for transmission to another M2M device in a public packet to the relay server when the connection with the relay server is established; And
And a receiving unit for receiving, from the relay server, a public packet including a response message generated by the other M2M device with respect to the request message.
제 11 항에 있어서,
상기 중계 서버는,
미들 노드 또는 인프라 노드에 구성되는 것을 특징으로 하는 M2M 장치.
12. The method of claim 11,
The relay server includes:
The middle node or the infrastructure node.
제 11 항에 있어서,
상기 중계 서버는,
미들 노드 및 인프라 노드와는 독립적으로 구성되며, 상기 미들 노드 또는 상기 인프라 노드에 구성되는 중계 클라이언트 모듈과 통신을 수행하는 것을 특징으로 하는 M2M 장치.
12. The method of claim 11,
The relay server includes:
Wherein the intermediate node and the infrastructure node are independently configured to perform communication with the relay node module configured in the middle node or the infrastructure node.
제 11 항에 있어서,
상기 타 M2M 장치는,
상기 중계 서버와 연결 패킷 송수신 절차를 수행하여 연결 설정을 완료한 후에 상기 요청 메시지를 포함하는 퍼블리쉬 패킷을 상기 중계 서버로부터 수신하는 것을 특징으로 하는 M2M 장치.
12. The method of claim 11,
The other M2M device,
Receiving a public packet including the request message from the relay server after completion of connection establishment by performing a connection packet transmission / reception procedure with the relay server.
제 11 항에 있어서,
상기 연결 패킷은,
2 바이트의 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며,
상기 가변 헤더는 프로토콜 이름 필드, 프로토콜 레벨 필드, 연결 플래그 필드 및 연결 유지(Keep Alive) 필드를 포함하고,
상기 페이로드 영역은 상기 클라이언트 모듈 식별자 정보를 포함하는 것을 특징으로 하는 M2M 장치.
12. The method of claim 11,
The connection packet includes:
A 2-byte fixed header, a variable header, and a payload area,
The variable header includes a protocol name field, a protocol level field, a connection flag field, and a keep alive field,
And the payload area includes the client module identifier information.
제 11 항에 있어서,
상기 퍼블리쉬 패킷은,
고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며,
상기 고정 헤더는 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고,
상기 가변 헤더는 토픽 네임 필드 및 패킷 식별 필드를 포함하는 것을 특징으로 하는 M2M 장치.
12. The method of claim 11,
The public packet includes:
A fixed header, a variable header, and a payload area,
The fixed header includes a QoS level field including information on a QoS level of a packet or a relay protocol, a duplicate transmission flag field, and a packet type field,
Wherein the variable header comprises a topic name field and a packet identification field.
공인 IP(Internet Protocol) 네트워크를 통해서 M2M(Machine to Machine communication) 장치 간의 통신을 중계하는 중계 서버에 있어서,
M2M 장치 및 타 M2M 장치 각각의 중계 클라이언트 모듈로부터 연결 설정을 위한 연결 패킷을 수신하여, 상기 M2M 장치 및 타 M2M 장치 각각과의 연결을 설정하는 제어부;
상기 M2M 장치의 중계 클라이언트 모듈로부터 상기 타 M2M 장치로 전송하기 위한 요청 메시지를 포함하는 퍼블리쉬 패킷을 수신하는 수신부; 및
상기 요청 메시지를 포함하는 퍼블리쉬 패킷을 상기 타 M2M 장치의 중계 클라이언트 모듈로 전송하는 송신부를 포함하되,
상기 수신부는, 상기 타 M2M 장치의 중계 클라이언트 모듈로부터 상기 요청 메시지에 대한 응답 메시지를 포함하는 퍼블리쉬 패킷을 더 수신하고,
상기 송신부는, 상기 응답 메시지를 포함하는 퍼블리쉬 패킷을 상기 M2M 장치의 중계 클라이언트 모듈로 더 전송하는 중계 서버.
1. A relay server for relaying communication between M2M (machine to machine communication) devices via a public IP (Internet Protocol) network,
A controller for receiving a connection packet for establishing a connection from the relay client module of each of the M2M device and the other M2M devices and establishing connection with the M2M device and each of the other M2M devices;
A receiving unit for receiving a public packet including a request message for transfer from the relay client module of the M2M device to the other M2M device; And
And a transmitter for transmitting the public packet including the request message to the relay client module of the other M2M device,
Wherein the receiving unit further receives a public packet including a response message for the request message from the relay client module of the other M2M device,
Wherein the transmitter further transmits a public packet including the response message to the relay client module of the M2M device.
제 17 항에 있어서,
상기 중계 서버는,
미들 노드 또는 인프라 노드에 구성되는 것을 특징으로 하는 중계 서버.
18. The method of claim 17,
The relay server includes:
A middle node or an infrastructure node.
제 17 항에 있어서,
상기 연결 패킷은,
2 바이트의 고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며,
상기 가변 헤더는 프로토콜 이름 필드, 프로토콜 레벨 필드, 연결 플래그 필드 및 연결 유지(Keep Alive) 필드를 포함하고,
상기 페이로드 영역은 상기 클라이언트 모듈 식별자 정보를 포함하는 것을 특징으로 하는 중계 서버.
18. The method of claim 17,
The connection packet includes:
A 2-byte fixed header, a variable header, and a payload area,
The variable header includes a protocol name field, a protocol level field, a connection flag field, and a keep alive field,
Wherein the payload area includes the client module identifier information.
제 17 항에 있어서,
상기 퍼블리쉬 패킷은,
고정 헤더, 가변 헤더 및 페이로드 영역으로 구성되며,
상기 고정 헤더는 패킷 또는 중계 프로토콜의 QoS 레벨에 대한 정보를 포함하는 QoS 레벨 필드, 중복전송 플래그 필드 및 패킷 타입 필드를 포함하고,
상기 가변 헤더는 토픽 네임 필드 및 패킷 식별 필드를 포함하는 것을 특징으로 하는 중계 서버.
18. The method of claim 17,
The public packet includes:
A fixed header, a variable header, and a payload area,
The fixed header includes a QoS level field including information on a QoS level of a packet or a relay protocol, a duplicate transmission flag field, and a packet type field,
Wherein the variable header includes a topic name field and a packet identification field.
KR1020180042814A 2017-04-27 2018-04-12 Methods for processing M2M communication via public IP And Apparatuses thereof KR102092100B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2018/004373 WO2018199523A1 (en) 2017-04-27 2018-04-16 Method for processing machine to machine communication via public ip network, and apparatus therefor

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR1020170054667 2017-04-27
KR20170054667 2017-04-27
KR1020170064401 2017-05-24
KR20170064401 2017-05-24

Publications (2)

Publication Number Publication Date
KR20180120576A true KR20180120576A (en) 2018-11-06
KR102092100B1 KR102092100B1 (en) 2020-03-24

Family

ID=64329571

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180042814A KR102092100B1 (en) 2017-04-27 2018-04-12 Methods for processing M2M communication via public IP And Apparatuses thereof

Country Status (1)

Country Link
KR (1) KR102092100B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102292351B1 (en) * 2020-04-06 2021-08-20 김도경 IoT device control and detection system using RS-485 communication module

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101466210B1 (en) * 2013-09-27 2014-11-27 에스케이 텔레콤주식회사 Method And Apparatus for Delivering Long Sentence Message to M2M Device
KR20150112039A (en) * 2011-06-29 2015-10-06 프리스타일 테크놀러지 피티와이 리미티드 Systems, methods, and/or apparatus for enabling communication between devices using different communication protocols
KR20160036690A (en) * 2014-09-25 2016-04-05 가온미디어 주식회사 Mechanism for Handling Multi-Connected M2M/IoT Device using Link
WO2016123778A1 (en) * 2015-02-05 2016-08-11 华为技术有限公司 M2m data processing method, device and system
US9596596B2 (en) * 2010-02-15 2017-03-14 Telefonaktiebolaget Lm Ericsson (Publ) Machine-to-machine device triggering using session initiation protocol uniform resourse identifier

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9596596B2 (en) * 2010-02-15 2017-03-14 Telefonaktiebolaget Lm Ericsson (Publ) Machine-to-machine device triggering using session initiation protocol uniform resourse identifier
KR20150112039A (en) * 2011-06-29 2015-10-06 프리스타일 테크놀러지 피티와이 리미티드 Systems, methods, and/or apparatus for enabling communication between devices using different communication protocols
KR101466210B1 (en) * 2013-09-27 2014-11-27 에스케이 텔레콤주식회사 Method And Apparatus for Delivering Long Sentence Message to M2M Device
KR20160036690A (en) * 2014-09-25 2016-04-05 가온미디어 주식회사 Mechanism for Handling Multi-Connected M2M/IoT Device using Link
WO2016123778A1 (en) * 2015-02-05 2016-08-11 华为技术有限公司 M2m data processing method, device and system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102292351B1 (en) * 2020-04-06 2021-08-20 김도경 IoT device control and detection system using RS-485 communication module

Also Published As

Publication number Publication date
KR102092100B1 (en) 2020-03-24

Similar Documents

Publication Publication Date Title
EP3965370A1 (en) Routing rule configuration method and communication apparatus
JP6254702B2 (en) Notification message transmission method and apparatus for M2M system
JP2020519144A (en) Service capability disclosure facility (SCEF) based Internet of Things (IOT) communication method and system
CN107667550B (en) Method for processing request through polling channel in wireless communication system and apparatus therefor
KR20160082967A (en) Method for subscription and notification in m2m communication system and device therefor
KR20150063906A (en) Methods and apparatuses for searching available device on M2M environment
US11095747B2 (en) Method and apparatus for receiving response information in M2M system
WO2019157968A1 (en) Communication method, apparatus and system
EP3163798B1 (en) Method for processing request messages in wireless communication system, and device for same
WO2014086523A1 (en) A messaging network with a control data channel
KR102051839B1 (en) Methods for processing a message in M2M system and Apparatuses thereof
KR102092100B1 (en) Methods for processing M2M communication via public IP And Apparatuses thereof
US20200344584A1 (en) Method for processing request message in m2m system and device therefor
KR20190002340A (en) Methods for processing a request message in M2M system and Apparatuses thereof
KR20190004233A (en) Methods for transmitting a message in M2M system and Apparatuses thereof
KR20150014345A (en) The method for ensuring operation of multiple nodes
KR102465844B1 (en) Method and apparatus for processing notification message in event of nitification failture in m2m system
KR102077582B1 (en) Methods for processing a request message in M2M system and Apparatuses thereof
KR20190104843A (en) Communication method for between M2M device which is not connect to Internet and M2M Server
KR20180107752A (en) Methods for processing a request message in M2M system And Apparatuses thereof
KR20150066401A (en) Data handling technique in the M2M Environment
KR20170053130A (en) Methods for controlling contact in Machine to Machine communication secure element and Apparatuses thereof
KR20180106934A (en) Methods for processing group resources in M2M system And Apparatuses thereof
KR20150066240A (en) Middle node for synchronization of notification message delivery
Lee et al. A robust inter-domain DDS gateway based on token passing for large-scale Cyber-Physical Systems

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