KR20190008595A - Gateway server for relaying between iot device on non-tcp/ip network and iot server based on onem2m and method thereof - Google Patents

Gateway server for relaying between iot device on non-tcp/ip network and iot server based on onem2m and method thereof Download PDF

Info

Publication number
KR20190008595A
KR20190008595A KR1020170090128A KR20170090128A KR20190008595A KR 20190008595 A KR20190008595 A KR 20190008595A KR 1020170090128 A KR1020170090128 A KR 1020170090128A KR 20170090128 A KR20170090128 A KR 20170090128A KR 20190008595 A KR20190008595 A KR 20190008595A
Authority
KR
South Korea
Prior art keywords
tcp
iot
packet
server
based network
Prior art date
Application number
KR1020170090128A
Other languages
Korean (ko)
Other versions
KR102025631B1 (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 KR1020170090128A priority Critical patent/KR102025631B1/en
Publication of KR20190008595A publication Critical patent/KR20190008595A/en
Application granted granted Critical
Publication of KR102025631B1 publication Critical patent/KR102025631B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • H04L69/085Protocols for interworking; Protocol conversion specially adapted for interworking of IP-based networks with other networks
    • 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/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/106Mapping addresses of different types across networks, e.g. mapping telephone numbers to data network addresses
    • 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/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/32

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Disclosed is a method for transmitting uplink data in a gateway server to relay an Internet of things (IoT) device on a network based on a non-transmission control protocol/internet protocol (non-TCP/IP) and an IoT server based on one machine to machine (M2M) standard; and an operating method thereof. The method for transmitting uplink data comprises: a step of receiving a non-TCP/IP packet including state information from an IoT device; a step of identifying a container name corresponding to the received state information; a step of converting the state information or the container name obtained in the received non-TCP/IP packet into a format depending on the one M2M standard; and a step of transmitting the converted state information or the converted container name to an IoT server. Therefore, the present invention can guarantee compatibility between a non-IP based network and the IoT server.

Description

Non-TCP/IP 기반의 네트워크상의 IoT 기기와 oneM2M 표준 기반의 IoT 서버 상호간을 중계하는 게이트웨이 서버 및 그 동작 방법{GATEWAY SERVER FOR RELAYING BETWEEN IOT DEVICE ON NON-TCP/IP NETWORK AND IOT SERVER BASED ON ONEM2M AND METHOD THEREOF}TECHNICAL FIELD [0001] The present invention relates to a gateway server for relaying between an IoT device on a non-TCP / IP-based network and an IoT server based on oneM2M standard and a method of operating the gateway server. METHOD THEREOF}

본 발명은 Non-TCP/IP 기반의 네트워크상의 IoT 기기와 oneM2M 표준 기반의 IoT 서버 상호간을 중계하는 게이트웨이 서버 및 그 동작 방법에 관한 것으로, 더욱 상세하게는 모비우스 플랫폼이 설치된 IoT 서버와 비 IP 기반 IoT 기기 사이에 게이트웨이 서버에서, 양자를 중계하여 호환성을 보장하는 통신 방법에 관한 것이다.The present invention relates to a gateway server for relaying between an IoT device on a non-TCP / IP-based network and an IoT server based on oneM2M standard, and more particularly to an IoT server equipped with a Mobius platform and a non- And a gateway server between the IoT devices, thereby ensuring compatibility.

현재 사물 인터넷(IoT, Internet of Things) 기술은 전 세계적으로 많은 관심이 집중되고 있고, 매우 빠른 속도로 발전하고 있다. 이에 따라 사물 인터넷과 관련된 기기들의 수가 2011년에는 20억개에서 2020년에는 120억개로 증가할 것으로 예측되고 있으며, 스마트폰을 포함하면 훨씬 많은 수의 기기가 보급될 것으로 예측되고 있다.Currently, the Internet of Things (IoT) technology has been attracting a great deal of attention worldwide and is developing very rapidly. As a result, the number of devices related to Internet of Things is expected to increase from 2 billion in 2011 to 12 billion by 2020, and it is predicted that a larger number of devices will be supplied including smart phones.

현재 IoT 시장에서 다양한 성공적인 비즈니스 사례가 등장하지 못하는 큰 이유 중 하나는 IoT 서비스를 만들기 위해 제품부터 서버 등 기반 플랫폼을 개발하는데 많은 비용이 들고 기반 플랫폼이 서비스에 종속적인 경우가 많아 개발 후에도 다른 개발사들에서 개발한 제품들은 서로 호환이 불가능하다는 문제가 있었다.One of the major reasons why various successful business cases do not appear in the current IoT market is that it is costly to develop base platform such as product and server to make IoT service and base platform is dependent on service. The products developed by the present invention are incompatible with each other.

이 때문에 다양한 표준화 단체에서 사물 인터넷의 표준화를 위한 플랫폼 표준화를 진행하고 있는 상황인데, 그 중에서 oneM2M(one Machine to Machine)에서는 다양한 표준화 단체에서 제시하고 있는 플랫폼들을 하나로 규합하여, 최상의 플랫폼에 대한 표준화 및 플랫폼 활용 방안을 제시하고 있다.OneM2M (one machine to machine) is a platform for standardization of Internet of things in various standardization organizations. In oneM2M (one Machine to Machine), the platforms suggested by various standardization organizations are grouped into one, And suggests ways to utilize the platform.

한편, 모비우스(Mobius)는 oneM2M 표준을 따라 구현된 IoT 서버용 소프트웨어 플랫폼이다. 현재는 open alliance for IoT standard (OCEAN)을 통해 새로운 버전들이 개발되어 공개되고 있다. Mobius는 서버용 플랫폼으로서 사물로부터 수집한 데이터의 저장과 관리 기능을 수행하며, 이러한 기능을 HTTP, CoAP과 같은 통신 프로토콜이 사용하는 REST API를 통해 제어할 수 있도록 했다.Mobius, on the other hand, is a software platform for IOT servers implemented according to the oneM2M standard. Currently, new versions are being developed and released through the open alliance for IoT standard (OCEAN). Mobius is a server platform that stores and manages data collected from objects and allows them to be controlled via the REST APIs used by communication protocols such as HTTP and CoAP.

&Cube는 IoT 시스템의 게이트웨이 및 기기용 소프트웨어 플랫폼으로 Mobius 및 기기의 소프트웨어와 소켓 인터페이스를 통해 데이터를 주고받는다. 일반적으로 Mobius로의 데이터 전송은 소켓 인터페이스 위의 HTTP를 통해 전송되며, 상태정보와 제어신호는 MQTT를 통해 수신 받는다.& Cube is a software platform for gateways and devices in the IoT system, which exchanges data via Mobius and its software and socket interfaces. In general, data transmission to Mobius is transmitted over HTTP over the socket interface, and status information and control signals are received through the MQTT.

이때, 기존의 oneM2M 기반의 Mobius 서버와 &Cube 게이트웨이로 구성된 시스템은 TCP/IP 기반 네트워크를 통해 연결된 기기들과 정보를 주고받을 수 있는 인터페이스만이 구성되어있어 ZigBee 기반의 네트워크와의 호환이 어려운 실정이다.In this case, the existing oneM2M-based Mobius server and the & Cube gateway system are configured only to interface with the devices connected through the TCP / IP based network, making it difficult to be compatible with the ZigBee-based network .

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT(Internet of Things) 서버 상호간을 중계하는 게이트웨이 서버에서 수행되는 상향 링크 데이터 전송 방법을 제공하는 데 있다.According to an aspect of the present invention, there is provided an apparatus and method for controlling an Internet of Things (IOT) device on a non-TCP / IP (Non-Transmission Control Protocol / Internet Protocol) (Internet of Things) server of an Internet service provider (ISP).

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT(Internet of Things) 서버 상호간을 중계하는 게이트웨이 서버에서 수행되는 하향 링크 데이터 전송 방법을 제공하는 데 있다.It is another object of the present invention to solve the above problems and to provide an apparatus and method for controlling an Internet of Things (IOT) device on a non-TCP / IP (Non-Transmission Control Protocol / Internet Protocol) Based IoT (Internet of Things) server between a plurality of servers connected to each other.

상기와 같은 문제점을 해결하기 위한 본 발명의 또 다른 목적은, Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT(Internet of Things) 서버 상호간을 중계하는 게이트웨이 서버를 제공하는 데 있다.It is another object of the present invention to solve the above problems and to provide an IoT (Internet of Things) device on a non-TCP / IP (Non-Transmission Control Protocol / Internet Protocol) Based Internet-of-things (IoT) servers.

상기 목적을 달성하기 위한 본 발명의 일 측면은, Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT(Internet of Things) 서버 상호간을 중계하는 게이트웨이 서버에서 수행되는 상향 링크 데이터 전송 방법을 제공한다.According to one aspect of the present invention, there is provided a method of controlling an Internet of Things (IoT) device on a non-TCP / IP (Non-Transmission Control Protocol / Internet Protocol) And provides an uplink data transmission method performed in a gateway server relaying between Internet of Things (IoT) servers.

여기서 상향 링크 데이터 전송 방법은, IoT 기기로부터 상태 정보를 포함한 Non-TCP/IP 패킷을 수신하는 단계, 수신된 상태 정보에 대응되는 컨테이너 이름(container name)을 식별하는 단계, 수신된 Non-TCP/IP 패킷에서 획득한 상태 정보 또는 컨테이너 이름을 oneM2M 표준에 따른 형식으로 변환하는 단계 및 변환된 상태 정보 또는 변환된 컨테이너 이름을 IoT 서버에 전송하는 단계를 포함할 수 있다. Here, the uplink data transmission method includes: receiving a non-TCP / IP packet including status information from the IoT device; identifying a container name corresponding to the received status information; Converting the status information or the container name obtained in the IP packet into a format according to the oneM2M standard, and transmitting the converted status information or the converted container name to the IoT server.

여기서, Non-TCP/IP 기반의 네트워크는 ZigBee 네트워크이고, Non-TCP/IP 패킷은 ZigBee 패킷일 수 있다.Here, the non-TCP / IP based network may be a ZigBee network, and the non-TCP / IP packets may be a ZigBee packet.

여기서, 상량 링크 데이터 전송 방법은, Non-TCP/IP 패킷에서 Non-TCP/IP 패킷을 전송한 IoT 기기의 Non-TCP/IP기반의 네트워크 주소를 추출하고, 추출된 Non-TCP/IP기반의 네트워크 주소를 컨테이너 이름과 매핑하여 저장하는 단계를 더 포함할 수 있다.Here, the normal link data transmission method extracts a non-TCP / IP-based network address of an IoT device that has transmitted a non-TCP / IP packet in a non-TCP / IP packet, And mapping the network address to the container name and storing the network address.

여기서, 게이트웨이 서버는, &Cube 의 소프트웨어 플랫폼이 설치되고, &Cube 의 소프트웨어 플랫폼 이 IoT 서버에 설치된 모비우스 플랫폼과 연동함으로써 IoT 서버와 데이터를 송수신할 수 있다. Here, the gateway server can transmit data to and from the IoT server by installing & Cube's software platform, and & Cube's software platform interworking with the Mobius platform installed on the IoT server.

상기 목적을 달성하기 위한 본 발명의 다른 측면은, Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT(Internet of Things) 서버 상호간을 중계하는 게이트웨이 서버에서 수행되는 하향 링크 데이터 전송 방법을 제공한다.According to another aspect of the present invention, there is provided an Internet-of-things (IoT) device on a non-TCP / IP (Non-Transmission Control Protocol / Internet Protocol) The present invention provides a downlink data transmission method performed by a gateway server relaying Internet to Things (IoT) servers.

여기서 하향 링크 데이터 전송 방법은, IoT 서버로부터 제어 메시지를 수신하는 단계, 제어 메시지로부터 컨테이너 이름(container name)과 제어 정보인 컨텐트 인스턴스(content instance)를 획득하는 단계, 컨네이너 이름을 이용하여 제어 정보를 전달할 IoT 기기의 Non-TCP/IP 기반의 네트워크 주소를 획득하는 단계, Non-TCP/IP 기반의 네트워크 주소와 컨텐트 인스턴스로부터 획득한 제어 정보를 포함하여 Non-TCP/IP 패킷을 생성하는 단계 및 생성한 Non-TCP/IP 패킷을 제어 정보를 전달할 IoT 기기로 전송하는 단계를 포함할 수 있다.Here, the downlink data transmission method includes receiving a control message from the IOT server, acquiring a container name and a content instance from the control message, Obtaining a non-TCP / IP-based network address of the IoT device to transmit the non-TCP / IP-based network address, generating non-TCP / IP packets including the non-TCP / IP-based network address and the control information obtained from the content instance, And transmitting the generated non-TCP / IP packet to the IoT device for transmitting the control information.

여기서, Non-TCP/IP 기반의 네트워크는 ZigBee 네트워크이고, Non-TCP/IP 패킷은 ZigBee 패킷일 수 있다.Here, the non-TCP / IP based network may be a ZigBee network, and the non-TCP / IP packets may be a ZigBee packet.

여기서, 컨네이터 이름은 Non-TCP/IP 기반의 네트워크 주소와 매핑되어 미리 저장될 수 있다.Here, the con- nector name may be mapped to a non-TCP / IP-based network address and stored in advance.

여기서, 게이트웨이 서버는, &Cube 의 소프트웨어 플랫폼이 설치되고, &Cube 의 소프트웨어 플랫폼이 IoT 서버에 설치된 모비우스 플랫폼과 연동함으로써 IoT 서버와 데이터를 송수신할 수 있다.Here, the gateway server can transmit data to and from the IoT server by installing & Cube's software platform, and & Cube's software platform interworking with the Mobius platform installed on the IoT server.

여기서, IoT 서버로부터 제어 메시지를 수신하는 단계는, &Cube 의 소프트웨어 플랫폼을 이용하여 oneM2M 표준의 문자열 형태로 제어 메시지를 수신할 수 있다.Here, receiving the control message from the IoT server can receive the control message in a character string of oneM2M standard using & Cube's software platform.

상기 목적을 달성하기 위한 본 발명의 다른 측면은, Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT 서버 상호간을 중계하는 게이트웨이 서버(gateway server)를 제공한다.According to another aspect of the present invention, there is provided an Internet-of-things (IoT) device on a non-TCP / IP (Non-Transmission Control Protocol / Internet Protocol) And provides a gateway server that relays the IoT servers to each other.

여기서 게이트웨이 서버는, 적어도 하나의 프로세서, 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory)를 포함할 수 있다.The gateway server may include at least one processor, a memory that stores instructions that direct the at least one processor to perform at least one step.

여기서 적어도 하나의 단계는, IoT 기기로부터 상태 정보를 포함한 Non-TCP/IP 패킷을 수신하는 단계, 수신된 상태 정보에 대응되는 컨테이너 이름(container name)을 식별하는 단계, 수신된 Non-TCP/IP 패킷에서 획득한 상태 정보 또는 컨테이너 이름을 oneM2M 표준에 따른 형식으로 변환하는 단계 및 변환된 상태 정보 또는 변환된 컨테이너 이름을 IoT 서버에 전송하는 단계를 포함할 수 있다.Wherein at least one of the steps comprises: receiving a non-TCP / IP packet including status information from the IoT device; identifying a container name corresponding to the received status information; Converting the state information or the container name obtained in the packet into a format according to the oneM2M standard, and transmitting the converted state information or the converted container name to the IoT server.

여기서, Non-TCP/IP 기반의 네트워크는 ZigBee 네트워크이고, Non-TCP/IP 패킷은 ZigBee 패킷일 수 있다.Here, the non-TCP / IP based network may be a ZigBee network, and the non-TCP / IP packets may be a ZigBee packet.

여기서, 명령어들은 적어도 하나의 프로세서가, Non-TCP/IP 패킷에서 Non-TCP/IP 패킷을 전송한 IoT 기기의 Non-TCP/IP기반의 네트워크 주소를 추출하고, 추출된 Non-TCP/IP기반의 네트워크 주소를 컨테이너 이름과 매핑하여 저장하도록 지시할 수 있다.At least one processor extracts a non-TCP / IP-based network address of an IoT device that has transmitted a non-TCP / IP packet in a non-TCP / IP packet, May be mapped to the container name and stored.

여기서, 게이트웨이 서버는, &Cube 의 소프트웨어 플랫폼이 설치되고, &Cube 의 소프트웨어 플랫폼 이 IoT 서버에 설치된 모비우스 플랫폼과 연동함으로써 IoT 서버와 데이터를 송수신할 수 있다.Here, the gateway server can transmit data to and from the IoT server by installing & Cube's software platform, and & Cube's software platform interworking with the Mobius platform installed on the IoT server.

여기서, 명령어들은 적어도 하나의 프로세서가, IoT 서버로부터 제어 메시지를 수신하는 단계, 제어 메시지로부터 컨테이너 이름(container name)과 제어 정보인 컨텐트 인스턴스(content instance)를 획득하는 단계, 컨네이너 이름을 이용하여 제어 정보를 전달할 IoT 기기의 Non-TCP/IP 기반의 네트워크 주소를 획득하는 단계, Non-TCP/IP 기반의 네트워크 주소와 컨텐트 인스턴스로부터 획득한 제어 정보를 포함하여 Non-TCP/IP 패킷을 생성하는 단계 및 생성한 Non-TCP/IP 패킷을 제어 정보를 전달할 IoT 기기로 전송하는 단계를 더 수행하도록 지시할 수 있다.Here, the instructions include at least one processor receiving a control message from the IOT server, obtaining a content instance from a control message, the container name being a control information, Obtaining a non-TCP / IP-based network address of the IoT device to which the control information is to be transmitted, generating a non-TCP / IP packet including the non-TCP / IP-based network address and the control information obtained from the content instance And transmitting the generated non-TCP / IP packet to the IoT device for transmitting the control information.

여기서, 명령어들은 적어도 하나의 프로세서가, oneM2M 표준의 문자열 형태로 제어 메시지를 수신하도록 지시할 수 있다. Here, the instructions may instruct the at least one processor to receive the control message in the form of a string of oneM2M standard.

상기와 같은 본 발명에 따른 Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT(Internet of Things) 서버 상호간을 중계하는 게이트웨이 서버, 상향 링크 데이터 전송 방법 또는 하향 링크 데이터 전송 방법을 이용할 경우에는 IP 기반이 아닌 네트워크와도 oneM2M 표준에 따른 데이터 통신을 할 수 있다.(Internet of Things) device on a non-TCP / IP (Non-Transmission Control Protocol / Internet Protocol) based network according to the present invention and an Internet of Things (IOT) based on oneM2M When a gateway server that relays servers, an uplink data transmission method, or a downlink data transmission method is used, data communication according to the oneM2M standard can be performed with a non-IP network.

또한, oneM2M 표준에 따른 &Cube 및 모비우스 플랫폼과 호환하여 동작될 수 있어, 기존 시스템에 용이하게 도입할 수 있는 장점이 있다.Also, it can be operated in compatibility with the & Cube & Mobius platform according to the oneM2M standard, so that it can be easily introduced into existing systems.

도 1은 oneM2M 표준 플랫폼의 구조를 나타낸 개념도이다.
도 2는 본 발명의 일 실시예에 따른 모비우스(Mobius) 플랫폼을 설명하기 위한 개념도이다.
도 3은 본 발명의 일 실시예에 따른 IoT 서버와 연동되는 ZigBee 기반의 네트워크에 대한 개념도이다.
도 4는 본 발명의 일 실시예에 따른 게이트웨이 서버를 중심으로 한 전체 시스템 구성도이다.
도 5는 본 발명의 일 실시예에 따른 ZigBee 네트워크와 M2M 표준 기반의 IoT 서버 상호간을 중계하는 게이트웨이 서버에서 수행되는 데이터 전송 방법에 대한 데이터 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 게이트웨이 서버에 구동되는 소프트웨어(ZIS)를 중심으로 한 데이터 전송 과정을 시간의 흐름에 따라 도시한 개념도이다.
도 7은 본 발명의 일 실시예에 따른 게이트웨이 서버에서 수행되는 상향 링크 데이터 전송 방법에 대한 흐름도이다.
도 8은 본 발명의 일 실시예에 따른 게이트웨이 서버에서 수행되는 하향 링크 데이터 전송 방법에 대한 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 게이트웨이 서버의 구성도이다.
1 is a conceptual diagram showing a structure of a oneM2M standard platform.
2 is a conceptual diagram illustrating a Mobius platform according to an embodiment of the present invention.
3 is a conceptual diagram of a ZigBee-based network interworking with an IoT server according to an embodiment of the present invention.
FIG. 4 is a block diagram of an overall system including a gateway server according to an exemplary embodiment of the present invention. Referring to FIG.
5 is a data flow diagram of a data transmission method performed in a gateway server that relays between a ZigBee network and an M2T standard based IoT server according to an embodiment of the present invention.
FIG. 6 is a conceptual diagram illustrating a data transmission process centered on software (ZIS) driven in a gateway server according to an embodiment of the present invention, according to the flow of time.
7 is a flowchart illustrating an uplink data transmission method performed in a gateway server according to an embodiment of the present invention.
8 is a flowchart illustrating a downlink data transmission method performed in a gateway server according to an embodiment of the present invention.
9 is a configuration diagram of a gateway server according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 oneM2M 표준 플랫폼의 구조를 나타낸 개념도이다. 1 is a conceptual diagram showing a structure of a oneM2M standard platform.

도 1을 참조하면, oneM2M 표준 플랫폼에 따른 구조는 필드 도메인(Field Domain)과 인프라스트럭쳐 도메인(Infrastructure Domain)으로 구분될 수 있다.Referring to FIG. 1, a structure according to oneM2M standard platform can be divided into a field domain and an infrastructure domain.

여기서, AE(Application Entity)는 어플리케이션 로직을 제공하며 ,다양한 서비스들을 제공하는 어플리케이션을 의미할 수 있다. 또한, CSE를 관리하는 목적의 AE도 oneM2M 표준 플랫폼에 포함될 수 있다. Here, an AE (Application Entity) may mean an application providing application logic and providing various services. In addition, AEs for managing CSEs can be included in the oneM2M standard platform.

또한, AE는 CSE(Common Service Entity)를 포함하고 있는 논리적 기기인지 여부에 따라 ASN-AE(Application Service Node-AE)와 ADN-AE(Application Dedicated Node-AE)로 구분될 수 있다. AE는 센서를 비롯한 각종 IoT 기기들이 이에 해당할 수 있는데, CSE를 포함하는 ASN-AE는 서버와 마찬가지로 데이터를 저장하고 관리하는 기능이 있을 수 있다. In addition, the AE can be divided into an Application Service Node-AE (ASN-AE) and an Application Dedicated Node-AE (ADN-AE) according to whether the logical device includes a CSE (Common Service Entity). AE may correspond to various IoT devices including sensors, and ASN-AE including CSE may have a function of storing and managing data like a server.

CSE는 사물 인터넷(Internet of Things, IoT)의 다양한 AE 들에게 공통적으로 제공해야하는 서비스 기능들로 이루어진 플랫폼일 수 있다. 이러한 공통 서비스들은 레퍼런스 포인트들을 통하여 제공될 수 있으며, CSE의 위치에 따라 ASN-CSE(Application Service Node-CSE), MN-CSE(Middle Node-CSE)와 IN-CSE(Infrastructure Node-CSE)로 구분될 수 있다. ASN-CSE에는 &Cube에서 제공하는 Lavender가 설치될 수 있다. The CSE may be a platform of service functions that must be commonly provided to various AEs of the Internet of Things (IoT). These common services can be provided through reference points and classified into Application Service Node-CSE, Middle Node-CSE and Infrastructure Node-CSE depending on the location of the CSE. . ASN-CSE can be installed with Lavender provided by & Cube.

예를 들어, CSE는 등록, 검색, 보안, 그룹, 데이터, 구독 및 통지, 기기관리 등 12가지 공통 기능을 제공할 수 있다.For example, the CSE can provide 12 common functions: registration, search, security, group, data, subscription and notification, and device management.

NSE(Network Sertvice Entity)는 네트워크 서비스를 제공하는 플랫폼일 수 있다. 예를 들면, NSE는 디바이스 관리, 디바이스 트리거링, 네트워크 연동 등과 같은 서비스들을 제공할 수 있다.The Network Security Entity (NSE) may be a platform for providing network services. For example, an NSE may provide services such as device management, device triggering, network interworking, and the like.

MN(Middle Node)는 게이트웨이 역할을 하는 노드를 의미할 수 있으며, ASN-AE와 마찬가지로 CSE를 포함하여 공통 서비스 기능을 제공할 수 있다.The MN (Middle Node) may mean a node acting as a gateway, and may provide a common service function including the CSE as in the ASN-AE.

한편, oneM2M 표준 플랫폼은 각 노드들간의 인터페이스를 위하여 AE와 CSE간의 M2M(Machine to Machine) 통신으로 Mca, CSE 들간의 M2M 통신으로 Mcc, CSE와 NSE 간의 M2M 통신으로 Mcn, 서로 다른 서비스 도메인의 CSE간의 M2M 통신으로 Mcc 레퍼런스 포인트를 제공할 수 있다.On the other hand, oneM2M standard platform is composed of Mca by M2M (Machine to Machine) communication between AE and CSE for each node, Mcc by M2M communication between CSEs, Mcn by M2M communication between CSE and NSE, CSE of different service domains The Mcc reference point can be provided by the M2M communication.

여기서, 노드간 연결에서, 점선으로 표시된 것은 무선 연결을 의미할 수 있고, 모든 노드는 게이트웨이인 MN을 통해 데이터를 전달하는 것으로 표현하였다.Here, in the inter-node connection, the dotted line may denote a wireless connection, and all the nodes express data transmission through the gateway MN.

인프라스트럭쳐 도메인의 IN(infrastructure node)는 IoT 서버를 의미할 수 있으며, AE와 CSE로 구성될 수 있다. 여기서, IN 에 있는 CSE는 Mobius가 해당할 수 있는데, Mobius는 사용자 애플리케이션과 연동되어 사물 인터넷 서비스를 제공하는데 필요한 기능을 수행할 수 있다. Mobius에 대해서는 이하에서 더 자세히 설명한다.The infrastructure node (IN) of the infrastructure domain may be an IOT server, and may be composed of AE and CSE. Here, the CSE in IN may correspond to Mobius, and Mobius can perform the functions necessary to provide the Internet service of objects in conjunction with the user application. Mobius is described in more detail below.

도 2는 본 발명의 일 실시예에 따른 모비우스(Mobius) 플랫폼을 설명하기 위한 개념도이다.2 is a conceptual diagram illustrating a Mobius platform according to an embodiment of the present invention.

모비우스 플랫폼은 사물 간에 인터넷을 할 수 있는 물리적 기반인 통신 네트워크가 원활하게 작동하도록 하는 운영체제를 의미할 수 있다. 모비우스 플랫폼은 각종 IoT 기기와 사용자 애플리케이션의 통신 연결을 중계하여, 서로간의 통신 연결을 쉽고 편리하게 할 수 있다. 특히, 개방형 개발 환경에서 누구든지 IoT 서비스를 만들어 사용하는 것을 돕는다.The Mobius platform can refer to an operating system that allows a communication network to function smoothly, which is a physical basis for Internet connectivity between objects. The Mobius platform relays communication connections between various IoT devices and user applications, making it easy and convenient to establish communication links with each other. In particular, anyone in an open development environment can help you create and use IoT services.

도 2를 참조하면, 모비우스 플랫폼은 IoT 기기와 사용자 애플리케이션을 연결하는 중간 매개체로서, IoT 기기가 모비우스 플랫폼이 구동되는 IoT 서버로 데이터(제어 결과, 상태 정보 등)을 전송하면, 모비우스 플랫폼은 데이터를 저장하고 사용자 애플리케이션으로 전달할 수 있다. Referring to FIG. 2, the Mobius platform is an intermediate medium for connecting the IoT device and the user application. When the IoT device transmits data (control result, status information, etc.) to the IoT server in which the Mobius platform is operated, Can store and deliver the data to the user application.

사용자 애플리케이션은 IoT 기기의 상태나 센싱 정보 등을 조회하거나, IoT 기기를 제어할 수 있다.The user application can inquire the status or sensing information of the IoT device, or control the IoT device.

한편, 도 2에서와 같이, 모비우스 플랫폼은 IoT 기기들과의 통신 프로토콜로서, HTTP, CoAP(Constrained Application Protocol), MQTT(Message Queue Telemetry Transport)를 지원할 수 있으며, 사용자 애플리케이션과의 통신 프로토콜로서, HTTP를 지원할 수 있다. 예를 들면, HTTP 서버 위에 MQTT 브로커와 CoAP 서버를 구현하고, MQTT와 CoAP 프로토콜 메시지를 HTTP 메시지로 변환하는 형태로 MQTT와 CoAP를 지원할 수 있다.2, the Mobius platform is a communication protocol with IoT devices, and can support HTTP, CoAP (Constrained Application Protocol), and MQTT (Message Queue Telemetry Transport). As a communication protocol with a user application, It can support HTTP. For example, MQTT and CoAP can be supported by implementing MQTT broker and CoAP server on HTTP server and converting MQTT and CoAP protocol messages into HTTP messages.

또한, 모비우스 서버(Mobius Server)의 데이터베이스(Database, DB)는 대용량 데이터 처리를 위한 메모리 기반의 Redis DB와 데이터를 저장하는 NoSQL(non Structured Query Language) DB인 Mongo DB를 지원할 수 있다.In addition, the database (DB) of Mobius Server can support memory-based Redis DB for large-capacity data processing and Mongo DB, which is a NoSQL (non Structured Query Language) database for storing data.

도 2에서 CoAP Proxy는 CoAP 프로토콜을 지원하는 소프트웨어 모듈일 수 있으며, MQTT server는 MQTT 프로토콜을 지원하는 소프트웨어 모듈일 수 있다.In FIG. 2, the CoAP Proxy may be a software module supporting the CoAP protocol, and the MQTT server may be a software module supporting the MQTT protocol.

이처럼, 모비우스 플랫폼을 설치한 IoT 서버는 통신 프로토콜로서 HTTP, CoAP, MQTT 프로토콜을 지원하므로 TCP/IP 기반의 네트워크와 통신할 수 있는 반면, 상기 Non-TCP/IP 기반의 네트워크와 직접 통신하기 어려운 문제를 가질 수 있다.As such, the IoT server with the Mobius platform can communicate with the TCP / IP based network because it supports the HTTP, CoAP, and MQTT protocols as communication protocols, while it is difficult to directly communicate with the non-TCP / You can have a problem.

이하에서는 Non-TCP/IP 기반의 네트워크 중 하나인 ZigBee 기반의 네트워크를 설명한다.Hereinafter, a ZigBee-based network which is one of non-TCP / IP based networks will be described.

도 3은 본 발명의 일 실시예에 따른 IoT 서버와 연동되는 ZigBee 기반의 네트워크에 대한 개념도이다.3 is a conceptual diagram of a ZigBee-based network interworking with an IoT server according to an embodiment of the present invention.

도 3을 참조하면, ZigBee 기반의 네트워크(ZigBee network)는 코디네이터(coordinator, C), 라우터(router, R), 종단기기(end device, E)로 구성될 수 있다.Referring to FIG. 3, a ZigBee network may include a coordinator (C), a router (R), and an end device (E).

여기서, 각각의 ZigBee 기반의 네트워크 마다 하나의 코디네이터가 필요할 수 있다. 코디네이터는 네트워크 정보를 초기화할 수 있으며, IEEE 802.15.4 표준의 PAN코디네이터와 같은 역할을 수행할 수 있다. 이때, FFD(Full Function Device)만이 코디네이터가 될 수도 있다.Here, one coordinator may be required for each ZigBee-based network. The coordinator can initialize the network information and perform the same function as the PAN coordinator of the IEEE 802.15.4 standard. At this time, only the FFD (Full Function Device) may become the coordinator.

라우터는 필요하면 사용하는 선택적인 기기(또는 노드)로서 여러개의 라우터가 존재 할 수 있다. ZigBee 기반의 네트워크는 기본적으로 저전력 근거리 통신이므로, 라우터를 통해 멀티홉으로 네트워크를 확장할 수 있게 된다. 라우터는 코디네이터 혹은 이미 네트워크에 접속중인 다른 라우터를 통해 네트워크에 참여할 수 있다. IEEE 802.15.4표준의 코디네이터와 유사한 역할을 할 수 있고, FFD만이 라우터가 될 수도 있다.A router may have multiple routers as optional devices (or nodes) to use if necessary. ZigBee-based networks are basically low-power, short-range communications, so you can extend your network to multiple hops through routers. The router can join the network through the coordinator or another router already connected to the network. It can play a role similar to the coordinator of the IEEE 802.15.4 standard, and only FFD can be a router.

종단기기는 가장 하위 계층의 기기로서, 필요할때 설치할 수 있는 기기이며 라우팅에는 참여하지 못할 수 있다. 하나의 ZigBee 기반의 네트워크에는 여러개의 종단기기가 존재할 수 있다. 종단기기는 코디네이터 또는 이미 네트워크에 접속중인 라우터를 통해 네트워크에 참여할 수 있다. 종단기기의 데이터는 라우터를 통해 중계되어 다른 종단기기나 코디네이터에 전달될 수 있다.An end-point device is the lowest-level device that can be installed when needed, and may not participate in routing. A single ZigBee-based network may have several end devices. The end device can join the network via a coordinator or a router already connected to the network. The data of the end-device can be relayed through the router and forwarded to another terminator or coordinator.

본 발명에 따른 방법 또는 장치가 적용될 수 있는 ZigBee 기반의 네트워크는 게이트웨이 서버(gateway server)를 통해 IoT 서버로 연결되거나 다른 네트워크들에 연결될 수 있다.A ZigBee-based network to which a method or apparatus according to the present invention may be applied may be connected to an IoT server or to other networks via a gateway server.

즉, 본 발명의 일 실시예에 따른 ZigBee 기반의 네트워크상의 기기들은 TCP/IP 기반의 네트워크와 마찬가지로 게이트웨이 서버를 거쳐 데이터를 전달하는 방식을 취할 수 있다.That is, devices on a ZigBee-based network according to an embodiment of the present invention can take a method of transmitting data via a gateway server as in a TCP / IP-based network.

이하에서는, 본 발명의 일 실시예에서 제안하는 게이트웨이 서버의 동작 방법을 설명한다. Hereinafter, an operation method of the gateway server proposed in an embodiment of the present invention will be described.

도 4는 본 발명의 일 실시예에 따른 게이트웨이 서버를 중심으로 한 전체 시스템 구성도이다.FIG. 4 is a block diagram of an overall system including a gateway server according to an exemplary embodiment of the present invention. Referring to FIG.

도 4를 참조하면, 가운데 도시된 게이트웨이 서버(Gateway)를 중심으로, ZigBee 통신 모듈이 있는 IoT 기기(Device로 표기) 및 IoT 서버(IoT server) 상호간의 데이터 중계 시스템을 설명할 수 있다.Referring to FIG. 4, a data relay system between an IoT device (represented by a device) and an IoT server (IoT server) having a ZigBee communication module can be described centering on a gateway server shown in the middle.

먼저, 본 발명의 일 실시예에 따른 게이트웨이 서버(Gateway)는 하드웨어로서 라즈베리 파이(Raspberry pi)가 탑재될 수 있으며, 구동되는 소프트웨어로는 &Cube의 Thyme이 사용될 수 있다. 여기서, 라즈베리 파이는 라즈베리파이 재단에서 개발한 싱글 보드 컴퓨터로 예시적인 것이며, 이뿐만 아니라 다양한 서버 구동용 하드웨어가 사용될 수 있다.First, a gateway server according to an embodiment of the present invention may include Raspberry pi as hardware, and Thyme of & cube may be used as software to be driven. Here, Raspberry Pie is an example of a single board computer developed by the Raspberry Pie Foundation, and various other server-based hardware can be used.

또한, 게이트웨이 서버의 내부에 ZIS(Zigbee internetworking software)는 본 발명의 일 실시예에 따른 게이트웨이 서버의 동작 방법을 구현하기 위한 소프트웨어 모듈을 명시하기 위하여 Thyme과 별도로 도시한 것이나, Thyme에 결합되어 구현될 수 있어, 예시적인 것으로 이해되어야 한다.In addition, Zigbee internetworking software (ZIS) in the gateway server is shown separately from Thyme in order to specify a software module for implementing a method of operating the gateway server according to an embodiment of the present invention, And should be understood to be illustrative.

여기서, 본 발명의 일 실시예에 따른 ZIS는 다른 소프트웨어 모듈인 Thyme과 TCP/IP 소켓 인터페이스(socket interface)를 사용하여 데이터를 주고 받을 수 있으며, ZigBee 통신을 지원하는 통신 모듈인 ZigBee module과는 직렬 포트(serial port)를 통해 데이터를 주고 받을 수 있다.Herein, the ZIS according to an embodiment of the present invention can send and receive data using a TCP / IP socket interface with another software module Thyme, and a ZigBee module, which is a communication module supporting ZigBee communication, You can send and receive data through a serial port.

구체적으로, ZIS는 IoT 기기의 상태 정보 또는 센싱 정보를 ZigBee module로부터 전달받으면, Thyme으로 전달하는 역할을 수행할 수 있고, Thyme으로부터 전달되는 제어 메시지를 수신하여, ZigBee module에 목적 IoT 기기의 주소를 명시하여 전송하는 역할을 수행할 수 있다.Specifically, the ZIS receives the status information or sensing information of the IoT device from the ZigBee module, and transmits the status message or the sensing information to the Thyme module. The ZIS module receives the control message transmitted from the Thyme module and transmits the address of the target IoT device to the ZigBee module And can perform a role of explicit transmission.

여기서, ZigBee module은 게이트웨이 서버에 내장되는 모듈과 IoT 기기에 내장되는 모듈을 각각 도시한 것이다.Here, the ZigBee module is a module embedded in the gateway server and a module embedded in the IoT device, respectively.

여기서, IoT 기기(Device)는 센서인 경우를 예로 들면, 하드웨어로서 온도, 습도, 거리등을 감지할 수 있는 센서 모듈(sensor module)을 탑재할 수 있고, 소프트웨어 모듈로는 TAS(thig adaptation software)가 설치될 수 있다. Here, the IoT device may be a sensor, for example, and may be equipped with a sensor module capable of sensing temperature, humidity, distance, etc. as a hardware, and a thig adaptation software (TAS) Can be installed.

TAS는 사물인터넷 디바이스 플랫폼인 &Cube에서 센서의 값을 지속적으로 측정하고 서버 플랫폼인 모비우스(Mobius)로 측정된 값을 전달, 사물을 제어하는 기능을 하는데 활용하는 소프트웨어를 의미할 수 있다. TAS can refer to the software that continuously measures the sensor value in & Cube, the Internet device platform of objects, and transmits the measured value to the server platform, Mobius, to control the object.

구체적으로 TAS는 센서 모듈 API(sensor mudule API)를 이용하여 필요한 데이터를 읽고, ZigBee module로 전송할 패킷(packet)을 생성할 수 있고, 수신받은 제어 패킷을 처리하여 seonsor module API를 호출함으로써 제어 명령에 따른 동작을 수행하도록 할 수 있다.Specifically, the TAS can read the required data using the sensor module API (sensor module API), generate a packet to be transmitted to the ZigBee module, process the received control packet, call the seonsor module API, Can be performed.

한편, IoT 서버는 도 2에서 설명한 모비우스 플랫폼이 구동될 수 있는데, 모비우스는 수집한 데이터를 트리 형태로 저장 및 관리할 수 있다. On the other hand, the IoT server can operate the Mobius platform described in FIG. 2, and Mobius can store and manage the collected data in a tree form.

예를 들어, 게이트웨이 서버의 Thyme과 대응하여 게이트웨이 역할을 하는 Thyme이 있을 수 있고, 그 하위 트리로서, oneM2M 표준 리소스인 컨테이너(container)가 존재할 수 있다. For example, there may be a Thyme functioning as a gateway in correspondence with Thyme of the gateway server. As a subtree thereof, a container which is a standard resource of oneM2M may exist.

컨테이너는 폴더와 같은 역할을 하여 시간에 따라 컨텐트 인스턴스(content instance)를 저장할 수 있다. 예를 들어, 컨테이너로서 습도(Humidity), 압력(Pressure), 온도(Temperature), LED(Light emitting diode)가 각각 관리될 수 있다. 컨텐트 인스턴스는 실제 감지된 온도 값, 습도 값 등이거나 제어를 위한 값으로서 문자열 형태로 저장될 수 있다.The container acts as a folder and can store a content instance over time. For example, Humidity, Pressure, Temperature, and LEDs can be managed as containers, respectively. The content instance may be stored in the form of a string as an actual sensed temperature value, a humidity value, etc., or as a value for control.

사용자 애플리케이션(User App)은 도 2의 설명을 참조할 수 있으므로 중복 설명을 방지하기 위하여 별도의 설명은 생략한다.Since the user application can refer to the description of FIG. 2, a separate description will be omitted in order to avoid redundant explanations.

이하에서는 구체적으로, 게이트웨이 서버에 탑재되는 소프트웨어 모듈인 ZIS의 동작 과정을 상향 링크(uplink) 데이터 전송과 하향 링크(downlink) 데이터 전송 각각으로 나누어 설명한다.Hereinafter, the operation procedure of the ZIS, which is a software module mounted on the gateway server, will be described by dividing into an uplink data transmission and a downlink data transmission, respectively.

도 5는 본 발명의 일 실시예에 따른 ZigBee 네트워크와 M2M 표준 기반의 IoT 서버 상호간을 중계하는 게이트웨이 서버에서 수행되는 데이터 전송 방법에 대한 데이터 흐름도이다.5 is a data flow diagram of a data transmission method performed in a gateway server that relays between a ZigBee network and an M2T standard based IoT server according to an embodiment of the present invention.

도 5를 참조하면, 도 4에서 도시한 게이트웨이 서버의 ZIS가 IoT 서버와 ZigBee 네트워크 상호간의 데이터 전송을 중계하는 과정을 설명할 수 있다.Referring to FIG. 5, the process of relaying the data transfer between the IOT server and the ZigBee network of the gateway server shown in FIG. 4 can be described.

여기서, 도 4에 따른 ZIS는 그 기능적 분류에 따라 소프트웨어 모듈인 데이터 형식화와 소켓 인터페이스 모듈(Entity for formatting and socket interface), ZigBee 패킷 처리 모듈(Entity for processing ZigBee packets), ZigBee 네트워크 관리 모듈(Entity for network management)로 나눌 수 있다.The ZIS according to FIG. 4 includes a software module, a data formatting module, a socket interface module (Entity for formatting and socket interface), a ZigBee packet processing module (Entity for processing ZigBee packets), a ZigBee network management module network management).

따라서, 이하에서는 각각의 모듈별로 동작 과정을 서술하나, 이것은 예시적인 것으로 전부나 일부가 통합되어 구현될 수 있다.Therefore, although the operation procedure is described below for each module, it is an exemplary one, and all or a part of them may be integrated.

먼저, 상향링크 데이터 전송은 다음과 같은 과정으로 수행될 수 있다.First, uplink data transmission can be performed by the following process.

게이트웨이 서버가 ZigBee 네트워크를 통해 ZigBee 네트워크로부터 기기 상태, 센서의 결과값 등의 정보를 포함한 패킷들(packets for state information)을 수신하면, 게이트웨이 서버의 ZigBee 패킷 처리 모듈은 수신된 패킷들에서 송신한 장치의 ZigBee 모듈 주소, 기기 상태나 센서의 결과값 정보를 획득할 수 있다.When the gateway server receives packets for state information from the ZigBee network, including the device status and the result of the sensor, through the ZigBee network, the ZigBee packet processing module of the gateway server transmits the packets ZigBee module address, device status or sensor result information.

여기서, ZigBee 패킷 처리 모듈은 획득한 기기 상태 또는 센서의 결과값 정보를 바탕으로 IoT 서버의 모비우스 플랫폼 상의 컨테이너 이름(container name)을 식별할 수 있다. 이렇게 식별된 컨테이너 이름 및 기기 상태 또는 센서 결과값 정보는 데이터 형식화와 소켓 인터페이스 모듈로 전달될 수 있다.Here, the ZigBee packet processing module can identify the container name on the mobius platform of the IoT server based on the acquired device status or the result information of the sensor. The container name and device status or sensor result information thus identified can be passed to the data formatting and socket interface module.

데이터 형식화와 소켓 인터페이스 모듈은, 전달받은 컨테이너 이름 및 기기 상태 또는 센서 결과값 정보를 oneM2M 표준에 정의된 형태로 변환하고, TCP/IP 기반의 소켓 인터페이스를 이용하여 게이트웨이 서버 내부에서 구동되는 다른 소프트웨어 모듈인 &Cube의 Thyme으로 전달할 수 있다. 여기서, Thyme은 전달받은 문자열을 IoT 서버로 전송할 수 있다.The data formatting and socket interface module converts the received container name, device status or sensor result information into the form defined in oneM2M standard and uses other TCP / IP-based socket interface to communicate with other software modules You can pass it to Thyme of Inn & Cube. Here, Thyme can transmit the received string to the IoT server.

다음으로, 하향링크 데이터 전송은 다음과 같은 과정으로 수행될 수 있다.Next, downlink data transmission can be performed by the following process.

Thyme이 IoT 서버로부터 수신된 제어 메시지(control message)를 oneM2M 표준의 문자열(string) 형태로 데이터 형식화와 소켓 인터페이스 모듈로 전달하면, 데이터 형식화와 소켓 인터페이스 모듈은, 전달받은 문자열에서, 컨테이너 이름과 제어 정보나 값인 컨텐트 인스턴스를 획득할 수 있다.When Thyme transfers the control message received from the IoT server to the data formatting and socket interface module in the form of a string of oneM2M standard, the data formatting and socket interface module sends the container name and control Information instance or a content instance that is a value.

그리고나면, 데이터 형식화와 소켓 인터페이스 모듈은 컨테이너 이름(container name)을 ZigBee 네트워크 관리 모듈로 전송하며, 제어 정보나 값은 ZigBee 패킷 처리 모듈로 전송할 수 있다.The data formatting and socket interface module then sends the container name to the ZigBee network management module, and the control information and values can be sent to the ZigBee packet processing module.

ZigBee 네트워크 관리 모듈은 전달받은 컨테이너 이름을 이용하여 ZigBee 네트워크 상의 ZigBee module의 주소를 확인하고, 확인된 주소를 ZigBee 패킷 처리 모듈로 전달할 수 있다.The ZigBee network management module can identify the address of the ZigBee module on the ZigBee network using the container name received and forward the confirmed address to the ZigBee packet processing module.

ZigBee 패킷 처리 모듈은 전달받은 제어 정보나 값 및 ZigBee module의 주소를 포함하는 ZigBee 패킷을 생성하고, 생성된 ZigBee 패킷을 ZigBee 네트워크상의 IoT 기기로 전송할 수 있다.The ZigBee packet processing module can generate a ZigBee packet including the received control information or value and the address of the ZigBee module, and transmit the generated ZigBee packet to the IoT device on the ZigBee network.

한편, 상향 링크와 하향 링크는 순서대로 발생하지 않으므로, 데이터 형식화와 소켓 인터페이스 모듈 및 ZigBee 패킷 처리 모듈은 상향 링크와 하향 링크를 적절히 스케줄링하기 위하여 다중화 기능이 구현될 수 있다.On the other hand, the uplink and downlink do not occur in order, so that the data formatting, the socket interface module, and the ZigBee packet processing module can be implemented in a multiplexing function in order to appropriately schedule the uplink and downlink.

도 6은 본 발명의 일 실시예에 따른 게이트웨이 서버에 구동되는 소프트웨어(ZIS)를 중심으로 한 데이터 전송 과정을 시간의 흐름에 따라 도시한 개념도이다.FIG. 6 is a conceptual diagram illustrating a data transmission process centered on software (ZIS) driven in a gateway server according to an embodiment of the present invention, according to the flow of time.

도 6을 참조하면, TAS는 앞서 도 4에서 설명한 바와 같이 ZigBee 네트워크 상에 위치한 IoT 기기에서 구동되는 소프트웨어 모듈이며, ZIS는 본 발명의 일 실시예에 따른 게이트웨이 서버에서 구동되는 소프트웨어 모듈이고, AE는 게이트웨이 서버의 소프트웨어 모듈인 Thyme을 oneM2M 표준에 따라 대응시켜 표시한 것이고, CSE는 IoT 서버에서 구동되는 모비우스 플랫폼을 oneM2M 표준에 따라 대응시켜 표시한 것이다.Referring to FIG. 6, TAS is a software module that is driven by an IoT device located on a ZigBee network as described above with reference to FIG. 4, ZIS is a software module driven by a gateway server according to an exemplary embodiment of the present invention, Thyme, a software module of the gateway server, is displayed in correspondence with the oneM2M standard. CSE is a representation of the Mobius platform running on the IOT server in accordance with the oneM2M standard.

CSE인 Mobius까지의 데이터 전송은 상향 링크(Uplink) 전송을 나타내며, ZigBee 네트워크까지의 반대 방향의 전송은 하향 링크(downlink)를 나타낸다. The data transmission to the CSE Mobius indicates uplink transmission, and the transmission in the opposite direction to the ZigBee network indicates a downlink.

상향 링크는 ZigBee 네트워크의 IoT 기기에 설치된 TAS로부터 시작할 수 있다. TAS는 상태 정보 data를 ZigBee 패킷을 이용해 ZIS로 전달할 수 있다. ZIS는 전달 받은 패킷을 통해 oneM2M 문자열을 생성하고 &Cube의 Thyme으로 TCP/IP 소켓을 통해 문자열을 전송할 수 있다. Thyme은 전달 받은 문자열을 HTTP 프로토콜을 이용하여 Mobius로 전달할 수 있다. The uplink can be started from the TAS installed in the IoT device of the ZigBee network. TAS can forward state information data to ZIS using ZigBee packet. ZIS can generate the oneM2M string through the forwarded packet and send the string via TCP / IP socket with & Cube's Thyme. Thyme can forward the received string to Mobius using the HTTP protocol.

하향 링크는 주로 업데이트한 데이터의 acknowledgement 또는 제어 메시지 전달을 위해 발생할 수 있다. 모비우스 플랫폼에서는 앞에서 설명한 바와 같이 하향 링크 데이터 전송을 위해 주로 MQTT 프로토콜을 사용할 수 있다. MQTT는 저 전력 통신 기술로 IoT 통신을 위해 개발되었다. MQTT 프로토콜의 동작은 특정 URI에 대한 구독 신청을 한 개체들에게 URI의 정보가 바뀔 경우 알림(notification) 메시지를 전송하는 방식으로 이루어질 수 있다. 모비우스 플랫폼은 상태 정보의 모니터링을 원하는 사용자와 제어를 위한 기기가 구독을 하여 notification을 받는 방법으로 하향 링크 전송을 발생시킬 수 있다.The downlink may occur mainly for acknowledgment of updated data or control message transmission. In the MobiSM platform, as described above, the MQTT protocol can mainly be used for downlink data transmission. MQTT was developed for IoT communication with low power communication technology. The operation of the MQTT protocol can be performed by transmitting a notification message to the individuals who subscribe to a specific URI when the URI information is changed. The Mobius platform can generate a downlink transmission by a method in which a user who wants to monitor status information and a device for control subscribe to and receive notifications.

도 7은 본 발명의 일 실시예에 따른 게이트웨이 서버에서 수행되는 상향 링크 데이터 전송 방법에 대한 흐름도이다.7 is a flowchart illustrating an uplink data transmission method performed in a gateway server according to an embodiment of the present invention.

도 7을 참조하면, Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT(Internet of Things) 서버 상호간을 중계하는 게이트웨이 서버에서 수행되는 상향 링크 데이터 전송 방법은, IoT 기기로부터 상태 정보를 포함한 Non-TCP/IP 패킷을 수신하는 단계(S100), 수신된 상태 정보에 대응되는 컨테이너 이름(container name)을 식별하는 단계(S110), 수신된 Non-TCP/IP 패킷에서 획득한 상태 정보 또는 상기 컨테이너 이름을 oneM2M 표준에 따른 형식으로 변환하는 단계(S120) 및 변환된 상태 정보 또는 변환된 컨테이너 이름을 IoT 서버에 전송하는 단계(S130)를 포함할 수 있다. Referring to FIG. 7, an Internet of Things (IOT) device on a non-TCP / IP based network and an Internet of Things (IOT) server based on oneM2M The uplink data transmission method performed by the gateway server that relays to each other includes receiving a non-TCP / IP packet including status information from the IoT device (SlOO), receiving a container name corresponding to the received status information, (S120) of converting the status information acquired from the received non-TCP / IP packet or the container name into a format according to oneM2M standard (S120), and converting the converted status information or the container name into IoT To the server (S130).

여기서, 상기 Non-TCP/IP 기반의 네트워크는 ZigBee 네트워크이고, 상기 Non-TCP/IP 패킷은 ZigBee 패킷일 수 있다.Here, the Non-TCP / IP based network may be a ZigBee network, and the Non-TCP / IP packet may be a ZigBee packet.

여기서, 상량 링크 데이터 전송 방법은, 상기 Non-TCP/IP 패킷에서 상기 Non-TCP/IP 패킷을 전송한 IoT 기기의 Non-TCP/IP기반의 네트워크 주소를 추출하고, 추출된 Non-TCP/IP기반의 네트워크 주소를 상기 컨테이너 이름과 매핑하여 저장하는 단계를 더 포함할 수 있다.Here, the normal link data transmission method extracts a Non-TCP / IP-based network address of the IoT device that has transmitted the Non-TCP / IP packet from the Non-TCP / IP packet, Based network address to the container name and storing the mapping.

여기서, 상기 게이트웨이 서버는, &Cube 의 소프트웨어 플랫폼이 설치되고, 상기 &Cube 의 소프트웨어 플랫폼 이 IoT 서버에 설치된 모비우스 플랫폼과 연동함으로써 상기 IoT 서버와 데이터를 송수신할 수 있다. Here, the gateway server has a & Cube software platform installed therein, and the software platform of the & Cube can communicate with the IoT server by interworking with a mobius platform installed in the IoT server.

여기서, &Cube 의 소프트웨어 플랫폼으로는 앞에서 설명한 Thyme 뿐만 아니라, Rosemary, Lavender가 있을 수 있다. &Cube의 소프트웨어 플랫폼은 Java 또는 Node.js 기반의 프레임워크(framework)를 지원할 수 있다.Here, & Cube's software platform can be Rosemary, Lavender as well as Thyme mentioned above. & Cube's software platform can support Java or Node.js based frameworks.

도 8은 본 발명의 일 실시예에 따른 게이트웨이 서버에서 수행되는 하향 링크 데이터 전송 방법에 대한 흐름도이다.8 is a flowchart illustrating a downlink data transmission method performed in a gateway server according to an embodiment of the present invention.

도 8을 참조하면, Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT(Internet of Things) 서버 상호간을 중계하는 게이트웨이 서버에서 수행되는 하향 링크 데이터 전송 방법은, IoT 서버로부터 제어 메시지를 수신하는 단계(S200), 상기 제어 메시지로부터 컨테이너 이름(container name)과 제어 정보인 컨텐트 인스턴스(content instance)를 획득하는 단계(S210), 상기 컨네이너 이름을 이용하여 상기 제어 정보를 전달할 IoT 기기의 Non-TCP/IP 기반의 네트워크 주소를 획득하는 단계(S220), 상기 Non-TCP/IP 기반의 네트워크 주소와 상기 컨텐트 인스턴스로부터 획득한 제어 정보를 포함하여 Non-TCP/IP 패킷을 생성하는 단계(S230) 및 생성한 Non-TCP/IP 패킷을 상기 제어 정보를 전달할 IoT 기기로 전송하는 단계(S240)를 포함할 수 있다.Referring to FIG. 8, an Internet of Things (IOT) device on a non-TCP / IP based network and an Internet of Things (IOT) server based on oneM2M The downlink data transmission method performed by the gateway server that relays to each other includes receiving a control message from the IoT server (S200), receiving a container name and a content instance as control information from the control message Obtaining a non-TCP / IP-based network address of the IoT device to which the control information is to be transferred using the container name (S220), obtaining the non-TCP / IP-based network address Generating a Non-TCP / IP packet including control information obtained from the content instance (S230), and transmitting the generated Non-TCP / IP packet to the IoT device for transmitting the control information Step S240.

여기서, 상기 Non-TCP/IP 기반의 네트워크는 ZigBee 네트워크이고, 상기 Non-TCP/IP 패킷은 ZigBee 패킷일 수 있다.Here, the Non-TCP / IP based network may be a ZigBee network, and the Non-TCP / IP packet may be a ZigBee packet.

여기서, 상기 컨네이터 이름은 상기 Non-TCP/IP 기반의 네트워크 주소와 매핑되어 미리 저장될 수 있다.Here, the con- nector name may be mapped to the non-TCP / IP-based network address and stored in advance.

여기서, 상기 게이트웨이 서버는, &Cube 의 소프트웨어 플랫폼이 설치되고, 상기 &Cube 의 소프트웨어 플랫폼이 IoT 서버에 설치된 모비우스 플랫폼과 연동함으로써 상기 IoT 서버와 데이터를 송수신할 수 있다.Here, the gateway server has a & Cube software platform installed therein, and the software platform of the & Cube can communicate with the IoT server by interworking with a mobius platform installed in the IoT server.

여기서, 상기 IoT 서버로부터 제어 메시지를 수신하는 단계(S200)는, 상기 &Cube 의 소프트웨어 플랫폼을 이용하여 oneM2M 표준의 문자열 형태로 상기 제어 메시지를 수신할 수 있다.Here, the step S200 of receiving the control message from the IoT server may receive the control message in the form of a character string of the oneM2M standard using the software platform of & cube.

도 9는 본 발명의 일 실시예에 따른 게이트웨이 서버의 구성도이다.9 is a configuration diagram of a gateway server according to an embodiment of the present invention.

도 9를 참조하면, Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT 서버 상호간을 중계하는 게이트웨이 서버(gateway server, 100)는, 적어도 하나의 프로세서(processor, 110), 상기 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instruction)을 저장하는 메모리(memory, 120)를 포함할 수 있다.Referring to FIG. 9, a gateway for relaying an IoT (Internet of Things) device on a non-TCP / IP-based network and an IoT server based on oneM2M (one Machine to Machine) A gateway server 100 includes at least one processor 110 and a memory 120 for storing instructions that direct the at least one processor to perform at least one step can do.

여기서 상기 적어도 하나의 단계는, IoT 기기로부터 상태 정보를 포함한 Non-TCP/IP 패킷을 수신하는 단계, 수신된 상태 정보에 대응되는 컨테이너 이름(container name)을 식별하는 단계, 수신된 Non-TCP/IP 패킷에서 획득한 상태 정보 또는 상기 컨테이너 이름을 oneM2M 표준에 따른 형식으로 변환하는 단계 및 변환된 상태 정보 또는 변환된 컨테이너 이름을 IoT 서버에 전송하는 단계를 포함할 수 있다.Wherein the at least one step comprises: receiving a non-TCP / IP packet including status information from the IoT device; identifying a container name corresponding to the received status information; Converting the state information obtained in the IP packet or the container name into a format according to the oneM2M standard, and transmitting the converted state information or the converted container name to the IoT server.

여기서, 상기 Non-TCP/IP 기반의 네트워크는 ZigBee 네트워크이고, 상기 Non-TCP/IP 패킷은 ZigBee 패킷일 수 있다.Here, the Non-TCP / IP based network may be a ZigBee network, and the Non-TCP / IP packet may be a ZigBee packet.

여기서, 상기 명령어들은 상기 적어도 하나의 프로세서가, 상기 Non-TCP/IP 패킷에서 상기 Non-TCP/IP 패킷을 전송한 IoT 기기의 Non-TCP/IP기반의 네트워크 주소를 추출하고, 추출된 Non-TCP/IP기반의 네트워크 주소를 상기 컨테이너 이름과 매핑하여 저장하도록 지시할 수 있다.Here, the instructions may be such that the at least one processor extracts a non-TCP / IP-based network address of an IoT device that has transmitted the Non-TCP / IP packet in the Non-TCP / IP packet, It may be instructed to map the TCP / IP-based network address to the container name and store the same.

여기서, 상기 게이트웨이 서버는, &Cube 의 소프트웨어 플랫폼이 설치되고, 상기 &Cube 의 소프트웨어 플랫폼 이 IoT 서버에 설치된 모비우스 플랫폼과 연동함으로써 상기 IoT 서버와 데이터를 송수신할 수 있다.Here, the gateway server has a & Cube software platform installed therein, and the software platform of the & Cube can communicate with the IoT server by interworking with a mobius platform installed in the IoT server.

여기서, 상기 명령어들은 상기 적어도 하나의 프로세서가, IoT 서버로부터 제어 메시지를 수신하는 단계, 상기 제어 메시지로부터 컨테이너 이름(container name)과 제어 정보인 컨텐트 인스턴스(content instance)를 획득하는 단계, 상기 컨네이너 이름을 이용하여 상기 제어 정보를 전달할 IoT 기기의 Non-TCP/IP 기반의 네트워크 주소를 획득하는 단계, 상기 Non-TCP/IP 기반의 네트워크 주소와 상기 컨텐트 인스턴스로부터 획득한 제어 정보를 포함하여 Non-TCP/IP 패킷을 생성하는 단계 및 생성한 Non-TCP/IP 패킷을 상기 제어 정보를 전달할 IoT 기기로 전송하는 단계를 더 수행하도록 지시할 수 있다.Wherein the instructions cause the at least one processor to receive a control message from an IoT server, obtain a content instance from the control message, the container name and control information, Obtaining a non-TCP / IP-based network address of the IoT device to which the control information is to be transmitted using a name, a non-TCP / IP-based network address of the IoT device, Generating a TCP / IP packet, and transmitting the generated non-TCP / IP packet to the IoT device for transmitting the control information.

여기서, 상기 명령어들은 상기 적어도 하나의 프로세서가, oneM2M 표준의 문자열 형태로 상기 제어 메시지를 수신하도록 지시할 수 있다. Here, the instructions may direct the at least one processor to receive the control message in the form of a string of oneM2M standard.

여기서 게이트웨이 서버의 예를 들면, 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 노트북(notebook), 스마트폰(smart phone), 태블릿 PC(tablet PC), 모바일폰(mobile phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB(digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), PDA(Personal Digital Assistant) 등일 수 있다.Examples of the gateway server include a portable computer such as a desktop computer, a laptop computer, a notebook, a smart phone, a tablet PC, a mobile phone, Such as a smart watch, a smart glass, an e-book reader, a portable multimedia player (PMP), a portable game machine, a navigation device, a digital camera, a digital multimedia broadcasting (DMB) A digital audio recorder, a digital audio player, a digital video recorder, a digital video player, a PDA (Personal Digital Assistant), and the like.

여기서 게이트웨이 서버(100)는, non-TCP/IP 기반의 네트워크와 통신할 수 있는 통신 모듈(130)을 더 포함할 수 있다. 통신 모듈의 예를 들면, ZigBee module이 있을 수 있다.Here, the gateway server 100 may further include a communication module 130 capable of communicating with a non-TCP / IP-based network. An example of a communication module is a ZigBee module.

여기서 게이트웨이 서버(100)는, non-TCP/IP 기반의 네트워크 주소와 컨테이너 이름을 저장할 수 있는 저장소(storage, 140)를 더 포함할 수 있다.Here, the gateway server 100 may further include a storage 140 for storing non-TCP / IP-based network addresses and container names.

본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.The methods according to the present invention can be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the computer readable medium may be those specially designed and constructed for the present invention or may be available to those skilled in the computer software.

컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer-readable media include hardware devices that are specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions may include machine language code such as those produced by a compiler, as well as high-level language code that may be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate with at least one software module to perform the operations of the present invention, and vice versa.

또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다.Furthermore, the above-mentioned method or apparatus may be implemented by combining all or a part of the structure or function, or may be implemented separately.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

Claims (15)

Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT(Internet of Things) 서버 상호간을 중계하는 게이트웨이 서버에서 수행되는 상향 링크 데이터 전송 방법에서,
IoT 기기로부터 상태 정보를 포함한 Non-TCP/IP 패킷을 수신하는 단계;
수신된 상태 정보에 대응되는 컨테이너 이름(container name)을 식별하는 단계;
수신된 Non-TCP/IP 패킷에서 획득한 상태 정보 또는 상기 컨테이너 이름을 oneM2M 표준에 따른 형식으로 변환하는 단계; 및
변환된 상태 정보 또는 변환된 컨테이너 이름을 IoT 서버에 전송하는 단계를 포함하는, 상향 링크 데이터 전송 방법.
A gateway server that relays Internet of Things (IoT) devices on a non-TCP / IP-based network to IoT (Internet of Things) servers based on oneMac OneM2M In the uplink data transmission method performed in the uplink,
Receiving a non-TCP / IP packet including status information from the IoT device;
Identifying a container name corresponding to the received status information;
Converting the status information obtained in the received Non-TCP / IP packet or the container name into a format according to oneM2M standard; And
And transmitting the converted state information or the converted container name to the IoT server.
청구항 1에서,
상기 Non-TCP/IP 기반의 네트워크는 ZigBee 네트워크이고, 상기 Non-TCP/IP 패킷은 ZigBee 패킷인, 상향 링크 데이터 전송 방법.
In claim 1,
Wherein the non-TCP / IP-based network is a ZigBee network, and the Non-TCP / IP packet is a ZigBee packet.
청구항 1에서,
상기 Non-TCP/IP 패킷에서 상기 Non-TCP/IP 패킷을 전송한 IoT 기기의 Non-TCP/IP기반의 네트워크 주소를 추출하고, 추출된 Non-TCP/IP기반의 네트워크 주소를 상기 컨테이너 이름과 매핑하여 저장하는 단계를 더 포함하는, 상향 링크 데이터 전송 방법.
In claim 1,
Extracting a non-TCP / IP-based network address of the IoT device that has transmitted the Non-TCP / IP packet from the Non-TCP / IP packet, extracting the extracted non-TCP / IP- And mapping and storing the uplink data.
청구항 1에서,
상기 게이트웨이 서버는,
&Cube 의 소프트웨어 플랫폼이 설치되고, 상기 &Cube 의 소프트웨어 플랫폼 이 IoT 서버에 설치된 모비우스 플랫폼과 연동함으로써 상기 IoT 서버와 데이터를 송수신하는, 상향 링크 데이터 전송 방법.
In claim 1,
The gateway server comprises:
≪ / RTI > wherein the software platform of & Cube is installed, and the software platform of the & Cube interacts with the Mobius platform installed in the IoT server to transmit and receive data to and from the IoT server.
Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT(Internet of Things) 서버 상호간을 중계하는 게이트웨이 서버에서 수행되는 하향 링크 데이터 전송 방법에서,
IoT 서버로부터 제어 메시지를 수신하는 단계;
상기 제어 메시지로부터 컨테이너 이름(container name)과 제어 정보인 컨텐트 인스턴스(content instance)를 획득하는 단계;
상기 컨네이너 이름을 이용하여 상기 제어 정보를 전달할 IoT 기기의 Non-TCP/IP 기반의 네트워크 주소를 획득하는 단계;
상기 Non-TCP/IP 기반의 네트워크 주소와 상기 컨텐트 인스턴스로부터 획득한 제어 정보를 포함하여 Non-TCP/IP 패킷을 생성하는 단계; 및
생성한 Non-TCP/IP 패킷을 상기 제어 정보를 전달할 IoT 기기로 전송하는 단계를 포함하는, 하향 링크 데이터 전송 방법.
A gateway server that relays Internet of Things (IoT) devices on a non-TCP / IP-based network to IoT (Internet of Things) servers based on oneMac OneM2M In the downlink data transmission method performed in the mobile station,
Receiving a control message from the IoT server;
Obtaining a container name and a content instance as control information from the control message;
Obtaining a non-TCP / IP-based network address of the IoT device through which the control information is to be transmitted using the container name;
Generating a non-TCP / IP packet including the non-TCP / IP-based network address and the control information obtained from the content instance; And
And transmitting the generated non-TCP / IP packet to the IoT device for transmitting the control information.
청구항 5에서,
상기 Non-TCP/IP 기반의 네트워크는 ZigBee 네트워크이고, 상기 Non-TCP/IP 패킷은 ZigBee 패킷인, 하향 링크 데이터 전송 방법.
In claim 5,
Wherein the non-TCP / IP-based network is a ZigBee network, and the Non-TCP / IP packet is a ZigBee packet.
청구항 5에서,
상기 컨네이터 이름은 상기 Non-TCP/IP 기반의 네트워크 주소와 매핑되어 미리 저장되는, 하향 링크 데이터 전송 방법.
In claim 5,
Wherein the con- tainer name is mapped with the non-TCP / IP-based network address and stored in advance.
청구항 5에서,
상기 게이트웨이 서버는,
&Cube 의 소프트웨어 플랫폼이 설치되고, 상기 &Cube 의 소프트웨어 플랫폼 이 IoT 서버에 설치된 모비우스 플랫폼과 연동함으로써 상기 IoT 서버와 데이터를 송수신하는, 하향 링크 데이터 전송 방법.
In claim 5,
The gateway server comprises:
≪ / RTI > wherein a software platform of & Cube is installed and the software platform of & Cube interoperates with a mobius platform installed in an IOT server to transmit and receive data to and from the IoT server.
청구항 8에서,
상기 IoT 서버로부터 제어 메시지를 수신하는 단계는,
상기 &Cube 의 소프트웨어 플랫폼을 이용하여 oneM2M 표준의 문자열 형태로 상기 제어 메시지를 수신하는, 하향 링크 데이터 전송 방법.
In claim 8,
The receiving of the control message from the IoT server comprises:
And receiving the control message in the form of a string of oneM2M standard using the < RTI ID = 0.0 >& Cube ' s < / RTI > software platform.
Non-TCP/IP(Non-Transmission Control Protocol/Internet Protocol) 기반의 네트워크상의 IoT(Internet of Things) 기기와 oneM2M(one Machine to Machine) 표준 기반의 IoT 서버 상호간을 중계하는 게이트웨이 서버(gateway server)로서,
적어도 하나의 프로세서(processor);
상기 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instruction)을 저장하는 메모리(memory)를 포함하고,
상기 적어도 하나의 단계는,
IoT 기기로부터 상태 정보를 포함한 Non-TCP/IP 패킷을 수신하는 단계;
수신된 상태 정보에 대응되는 컨테이너 이름(container name)을 식별하는 단계;
수신된 Non-TCP/IP 패킷에서 획득한 상태 정보 또는 상기 컨테이너 이름을 oneM2M 표준에 따른 형식으로 변환하는 단계; 및
변환된 상태 정보 또는 변환된 컨테이너 이름을 IoT 서버에 전송하는 단계를 포함하는, 게이트웨이 서버.
It is a gateway server that relays Internet-of-Things (IoT) devices on a non-TCP / IP-based network to IoT servers based on oneM2M (one Machine to Machine) ,
At least one processor;
And a memory for storing instructions that direct the at least one processor to perform at least one step,
Wherein the at least one step comprises:
Receiving a non-TCP / IP packet including status information from the IoT device;
Identifying a container name corresponding to the received status information;
Converting the status information obtained in the received Non-TCP / IP packet or the container name into a format according to oneM2M standard; And
And transmitting the converted state information or the converted container name to the IoT server.
청구항 10에서,
상기 Non-TCP/IP 기반의 네트워크는 ZigBee 네트워크이고, 상기 Non-TCP/IP 패킷은 ZigBee 패킷인, 게이트웨이 서버.
In claim 10,
Wherein the non-TCP / IP-based network is a ZigBee network, and the Non-TCP / IP packet is a ZigBee packet.
청구항 11에서,
상기 명령어들은 상기 적어도 하나의 프로세서가,
상기 Non-TCP/IP 패킷에서 상기 Non-TCP/IP 패킷을 전송한 IoT 기기의 Non-TCP/IP기반의 네트워크 주소를 추출하고, 추출된 Non-TCP/IP기반의 네트워크 주소를 상기 컨테이너 이름과 매핑하여 저장하도록 지시하는, 게이트웨이 서버.
In claim 11,
Wherein the instructions cause the at least one processor to:
Extracting a non-TCP / IP-based network address of the IoT device that has transmitted the Non-TCP / IP packet from the Non-TCP / IP packet, extracting the extracted non-TCP / IP- The gateway server instructs to map and store.
청구항 10에서,
상기 게이트웨이 서버는,
&Cube 의 소프트웨어 플랫폼이 설치되고, 상기 &Cube 의 소프트웨어 플랫폼 이 IoT 서버에 설치된 모비우스 플랫폼과 연동함으로써 상기 IoT 서버와 데이터를 송수신하는, 게이트웨이 서버.
In claim 10,
The gateway server comprises:
&Cube's software platform, and the < Cube > software platform interacts with the Mobius platform installed in the IoT server to send and receive data to and from the IoT server.
청구항 10에서,
상기 명령어들은 상기 적어도 하나의 프로세서가,
IoT 서버로부터 제어 메시지를 수신하는 단계;
상기 제어 메시지로부터 컨테이너 이름(container name)과 제어 정보인 컨텐트 인스턴스(content instance)를 획득하는 단계;
상기 컨네이너 이름을 이용하여 상기 제어 정보를 전달할 IoT 기기의 Non-TCP/IP 기반의 네트워크 주소를 획득하는 단계;
상기 Non-TCP/IP 기반의 네트워크 주소와 상기 컨텐트 인스턴스로부터 획득한 제어 정보를 포함하여 Non-TCP/IP 패킷을 생성하는 단계; 및
생성한 Non-TCP/IP 패킷을 상기 제어 정보를 전달할 IoT 기기로 전송하는 단계를 더 수행하도록 지시하는, 게이트웨이 서버.
In claim 10,
Wherein the instructions cause the at least one processor to:
Receiving a control message from the IoT server;
Obtaining a container name and a content instance as control information from the control message;
Obtaining a non-TCP / IP-based network address of the IoT device through which the control information is to be transmitted using the container name;
Generating a non-TCP / IP packet including the non-TCP / IP-based network address and the control information obtained from the content instance; And
And transmitting the generated non-TCP / IP packet to the IoT device that will transmit the control information.
청구항 14에서,
상기 명령어들은 상기 적어도 하나의 프로세서가,
oneM2M 표준의 문자열 형태로 상기 제어 메시지를 수신하도록 지시하는, 게이트웨이 서버.
In claim 14,
Wherein the instructions cause the at least one processor to:
directs to receive the control message in the form of a string of oneM2M standard.
KR1020170090128A 2017-07-17 2017-07-17 Gateway server for relaying between iot device on non-tcp/ip network and iot server based on onem2m and method thereof KR102025631B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170090128A KR102025631B1 (en) 2017-07-17 2017-07-17 Gateway server for relaying between iot device on non-tcp/ip network and iot server based on onem2m and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170090128A KR102025631B1 (en) 2017-07-17 2017-07-17 Gateway server for relaying between iot device on non-tcp/ip network and iot server based on onem2m and method thereof

Publications (2)

Publication Number Publication Date
KR20190008595A true KR20190008595A (en) 2019-01-25
KR102025631B1 KR102025631B1 (en) 2019-09-26

Family

ID=65280518

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170090128A KR102025631B1 (en) 2017-07-17 2017-07-17 Gateway server for relaying between iot device on non-tcp/ip network and iot server based on onem2m and method thereof

Country Status (1)

Country Link
KR (1) KR102025631B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102025435B1 (en) * 2019-06-05 2019-09-25 주식회사 오픈케어랩 Method for proving iot service using container, apparatus and system using the same
KR20210044007A (en) * 2019-10-14 2021-04-22 주식회사 엘지유플러스 Apparatus control management system and control method thereof
KR102366156B1 (en) * 2020-11-27 2022-02-23 한국전력공사 Network relay system and data transmission method for narrowband wireless communication system
KR20220075791A (en) * 2020-11-30 2022-06-08 주식회사 쉬프트베리 Method and server for controlling network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150102690A (en) * 2014-02-28 2015-09-07 팔로 알토 리서치 센터 인코포레이티드 Content name resolution for information centric networking
KR20170033424A (en) * 2014-07-22 2017-03-24 콘비다 와이어리스, 엘엘씨 Interworking light weight machine-to-machine protocol with device management protocol
KR20170074861A (en) * 2014-10-27 2017-06-30 엘지전자 주식회사 Method and apparatus for ensuring operation of control messages in a wireless communication system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150102690A (en) * 2014-02-28 2015-09-07 팔로 알토 리서치 센터 인코포레이티드 Content name resolution for information centric networking
KR20170033424A (en) * 2014-07-22 2017-03-24 콘비다 와이어리스, 엘엘씨 Interworking light weight machine-to-machine protocol with device management protocol
KR20170074861A (en) * 2014-10-27 2017-06-30 엘지전자 주식회사 Method and apparatus for ensuring operation of control messages in a wireless communication system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102025435B1 (en) * 2019-06-05 2019-09-25 주식회사 오픈케어랩 Method for proving iot service using container, apparatus and system using the same
KR20210044007A (en) * 2019-10-14 2021-04-22 주식회사 엘지유플러스 Apparatus control management system and control method thereof
KR102366156B1 (en) * 2020-11-27 2022-02-23 한국전력공사 Network relay system and data transmission method for narrowband wireless communication system
KR20220075791A (en) * 2020-11-30 2022-06-08 주식회사 쉬프트베리 Method and server for controlling network

Also Published As

Publication number Publication date
KR102025631B1 (en) 2019-09-26

Similar Documents

Publication Publication Date Title
Noura et al. Interoperability in internet of things: Taxonomies and open challenges
US11991255B2 (en) Interworking service for the restful internet of things
Datta et al. An IoT gateway centric architecture to provide novel M2M services
US20210211511A1 (en) Systems and methods for enabling access to third party services via a service layer
KR100978336B1 (en) Remote access
JP6434611B2 (en) Interworking lightweight machine-to-machine protocol using device management protocol
JP6302050B2 (en) System and method for improved discovery
US8761747B2 (en) Universal browser
CN109981668A (en) Common apparatus Internet of Things communication means based on the extensive agreement of MQTT
KR102025631B1 (en) Gateway server for relaying between iot device on non-tcp/ip network and iot server based on onem2m and method thereof
Sembroiz et al. A novel cloud-based IoT architecture for smart building automation
Klauck et al. Chatty things-Making the Internet of Things readily usable for the masses with XMPP
Abane et al. Ndn-over-zigbee: A zigbee support for named data networking
CN112804338A (en) Method for remote communication between Web front end and Internet of things equipment
CN104412566A (en) Methodes and nodes for handling an address of a resource
Cirani et al. mjCoAP: An open-source lightweight Java CoAP library for Internet of Things applications
Han Semantic service provisioning for 6LoWPAN: powering internet of things applications on Web
Seol et al. Design and realization of personal IoT architecture based on mobile gateway
US20070130312A1 (en) Web service provision apparatus and method and web service request apparatus and method
Schuster et al. Global-scale federated access to smart objects using xmpp
US20100049804A1 (en) Instant Messaging
Pawar et al. A comparative study of nomadic mobile service provisioning approaches
Vahidnia et al. Cellular Internet of Things for practitioners
Klauck Seamless integration of smart objects into the internet using XMPP and mDNS/DNS-SD
KR20170025550A (en) Gateway and control method thereof

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