KR102000234B1 - Apparatus for providing home network service and method thereof - Google Patents

Apparatus for providing home network service and method thereof Download PDF

Info

Publication number
KR102000234B1
KR102000234B1 KR1020150105364A KR20150105364A KR102000234B1 KR 102000234 B1 KR102000234 B1 KR 102000234B1 KR 1020150105364 A KR1020150105364 A KR 1020150105364A KR 20150105364 A KR20150105364 A KR 20150105364A KR 102000234 B1 KR102000234 B1 KR 102000234B1
Authority
KR
South Korea
Prior art keywords
message
electronic device
registration
uri
information
Prior art date
Application number
KR1020150105364A
Other languages
Korean (ko)
Other versions
KR20160046711A (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 US14/918,682 priority Critical patent/US9749146B2/en
Publication of KR20160046711A publication Critical patent/KR20160046711A/en
Application granted granted Critical
Publication of KR102000234B1 publication Critical patent/KR102000234B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/283Processing of data at an internetworking point of a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 홈 네트워크 서비스를 제공하기 위한 장치 및 그 방법에 관한 것으로, 본 발명은 프록시에 광고 메시지를 전송하는 과정과; 프록시로부터 전자 장치 등록을 위한 제1 등록 메시지를 수신하는 과정과; 프록시에 전자 장치 등록을 위한 제2 등록 메시지를 전송하는 과정과; 프록시로부터 전자 장치 등록을 위한 제3 등록 메시지를 수신하는 과정을 포함하는 방법에 관한 것이다.The present invention relates to an apparatus and a method for providing a home network service, and in particular, to an apparatus and method for providing a home network service. Receiving a first registration message for registering an electronic device from a proxy; Sending a second registration message for electronic device registration to the proxy; And receiving a third registration message for electronic device registration from the proxy.

Description

홈 네트워크 서비스를 제공하기 위한 장치 및 그 방법{APPARATUS FOR PROVIDING HOME NETWORK SERVICE AND METHOD THEREOF}[0001] APPARATUS FOR PROVIDING HOME NETWORK SERVICE AND METHOD THEREOF [0002]

본 발명은 홈 네트워크 서비스를 제공하기 위한 장치 및 그 방법에 관한 것으로, 웹 인터페이스를 갖는 장치들이 인터넷에 연결되어 다양한 서비스를 사용자에게 제공할 수 있는 홈 네트워크 서비스를 제공하기 위한 장치 및 그 방법에 관한 것이다.The present invention relates to an apparatus and a method for providing a home network service, and more particularly, to an apparatus and method for providing a home network service in which devices having a web interface are connected to the Internet to provide various services to users will be.

최근 Wi-Fi 기술이 많이 이용됨에 따라 냉장고, 세탁기, 밥솥 등 홈 전자장치가 Wi-Fi 인터페이스를 통해 인터넷에 연결되어 사용자에게 다양한 서비스를 제공해 줄 것으로 기대하고 있다. 이러한 서비스를 제공하기 위한 최적의 솔루션으로 고려되는 것이 HTTP(hypertext transfer protocol) 웹 프로토콜인데, 이는 TCP(transmission control protocol)를 기반으로 하고 있기 때문에 일반적인 MCU(micro controller unit) 수준의 하드웨어에 올라가기에는 무리가 있다. 이러한 문제점을 해결하기 위해 IETF CORE (Constrained RESTful Environments) 워킹그룹에서는 경량화 된 웹 기반 프로토콜인 CoAP(constrained application protocol)을 표준화하였다. 그러나, CoAP 프로토콜은 UDP(user datagram protocol)를 기반으로 하기 때문에 인터넷 환경에서의 메시지 전달 신뢰성의 문제가 있으며, 이를 위해 IETF CORE에서는 로컬망에서는 CoAP, 인터넷망에서는 HTTP를 활용하는 모델을 제시하고 있다.With the recent use of Wi-Fi technology, home electronic devices such as refrigerators, washing machines, and rice cookers are expected to provide various services to users through a Wi-Fi interface. It is a hypertext transfer protocol (HTTP) web protocol that is considered as an optimal solution for providing such services. Since it is based on transmission control protocol (TCP), it can not be used for general microcontroller unit (MCU) There is a group. To solve these problems, the IETF CORE (Constrained RESTful Environments) working group standardized the CoAP (constrained application protocol), a lightweight web-based protocol. However, since the CoAP protocol is based on UDP (user datagram protocol), there is a problem of reliability of message delivery in the Internet environment. To this end, IETF CORE proposes a model using CoAP in the local network and HTTP in the Internet network .

한편, 다양한 홈 전자장치를 인터넷에 연결시켜 네트워크 서비스를 사용자에게 제공하기 위한 노력을 하고 있지만, 인터넷이나 전자장치에 익숙하지 않은 사용자에게 전자 장치를 인터넷에 연결하고 등록하는 등의 초기 설정은 쉽지 않다. 이를 위해 다양한 장치 제어 및 관리를 위한 미들웨어 프로토콜 기술이 개발되고 있지만, 네트워크 환경의 복잡성, 구현의 복잡성 등으로 인해 활용이 제한적이라는 문제가 있다.Meanwhile, efforts have been made to provide a network service to users by connecting various home electronic devices to the Internet, but it is not easy to initialize such as connecting and registering an electronic device to the Internet to a user who is not familiar with the Internet or an electronic device . To this end, middleware protocol technology for various device control and management has been developed, but there is a problem that its utilization is limited due to complexity of network environment and implementation complexity.

본 발명은 홈 전자 장치를 이용하여 홈 네트워크 서비스를 제공하기 위한 장치 및 그 방법에 관한 것이다.The present invention relates to an apparatus and a method for providing a home network service using a home electronic device.

또한, 본 발명은 Restful 웹 서비스를 기반으로 홈 네트워크 서비스를 제공하기 위한 장치 및 그 방법에 관한 것이다.The present invention also relates to an apparatus and method for providing a home network service based on a Restful Web service.

또한, 본 발명은 Restful 웹 서비스를 기반으로 홈 전자장치의 설정을 용이하게 수행할 수 있는 홈 네트워크 서비스를 제공하기 위한 장치 및 그 방법에 관한 것이다.In addition, the present invention relates to an apparatus and method for providing a home network service that can easily configure a home electronic device based on a Restful Web service.

상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한, 본 발명의 특징적인 구성은 하기와 같다.In order to accomplish the objects of the present invention as described above and achieve the characteristic effects of the present invention described below, the characteristic structure of the present invention is as follows.

일실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 프록시에 광고 메시지를 전송하는 과정과; 상기 프록시로부터 전자 장치의 등록을 위한 제1 등록 메시지를 수신하는 과정과; 상기 프록시에 상기 전자 장치의 등록을 위한 제2 등록 메시지를 전송하는 과정과; 상기 프록시로부터 상기 전자 장치의 등록을 위한 제3 등록 메시지를 수신하는 과정을 포함할 수 있다.According to an embodiment, a method for providing a home network service, the method comprising: transmitting an advertisement message to a proxy; Receiving a first registration message for registration of an electronic device from the proxy; Transmitting a second registration message for registering the electronic device to the proxy; And receiving a third registration message for registration of the electronic device from the proxy.

일실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 전자 장치로부터 광고 메시지를 수신하는 과정과; 상기 전자 장치에 상기 전자 장치의 등록을 위한 제1 등록 메시지를 전송하는 과정과; 상기 전자 장치로부터 상기 전자 장치의 등록을 위한 제2 등록 메시지를 수신하는 과정과; 상기 전자 장치에 상기 전자 장치의 등록을 위한 제3 등록 메시지를 전송하는 과정과; 서버에 상기 전자 장치의 등록을 위한 제4 등록 메시지를 전송하는 과정을 포함할 수 있다.A method for providing a home network service, the method comprising: receiving an advertisement message from an electronic device; Transmitting a first registration message for registering the electronic device to the electronic device; Receiving a second registration message for registration of the electronic device from the electronic device; Transmitting a third registration message for registration of the electronic device to the electronic device; And transmitting a fourth registration message for registering the electronic device to the server.

일실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 프록시로부터 전자 장치의 등록을 위한 제4 등록 메시지를 수신하는 과정과; 단말에 상기 전자 장치의 등록을 위한 제5 등록 메시지를 전송하는 과정과; 상기 프록시에 상기 전자 장치의 등록을 위한 제6 등록 메시지를 전송하는 과정을 포함할 수 있다.A method for providing a home network service, according to an embodiment, comprising: receiving a fourth registration message for registration of an electronic device from a proxy; Transmitting a fifth registration message for registering the electronic device to the terminal; And transmitting a sixth registration message for registering the electronic device to the proxy.

일실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 전자 장치로부터 광고 메시지를 수신하는 과정과; 상기 전자 장치에 광고 메시지를 전송하는 과정과; 서버로부터 상기 전자 장치 등록을 위한 제5 등록 메시지를 수신하는 과정을 포함할 수 있다.A method for providing a home network service, the method comprising: receiving an advertisement message from an electronic device; Transmitting an advertisement message to the electronic device; And receiving a fifth registration message for registering the electronic device from the server.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 광고 메시지는 바이너리 프로토콜을 이용하며, 프로토콜 버전, 메시지 유형, URI 길이, 전자 장치의 URI, 전자 장치의 등록 여부에 관한 정보 중 적어도 하나를 포함할 수 있다.According to another embodiment, there is provided a method for providing a home network service, wherein the advertisement message uses a binary protocol and includes at least one of a protocol version, a message type, a URI length, a URI of an electronic device, And may include at least one.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 광고 메시지를 수신하는 과정은, 상기 서버에 상기 광고 메시지를 수신함을 알려주는 알림 메시지를 전송하는 과정을 포함하며, 상기 알림 메시지는 메시지 전달을 위한 URI, Restful 메시지 형식(Method), 전달하고자 하는 요청(Request) 중 적어도 하나를 포함하며, 상기 요청은 프록시에서 전자 장치를 매핑하고 있는 외부 URI, 프록시에 전자 장치의 등록 여부에 관한 정보 중 적어도 하나를 포함할 수 있다.According to another embodiment of the present invention, there is provided a method for providing a home network service, the method comprising the steps of receiving an advertisement message, and transmitting an advertisement message informing the server that the advertisement message is received, Includes a URI for message delivery, a Restful message format (Method), and a request to be delivered, the request including an external URI mapping an electronic device at the proxy, And information regarding the presence of the user.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 서버에 발견 정보를 요청하기 위한 요청 메시지를 전송하는 과정을 더 포함하며, 상기 요청 메시지는 메시지 전달을 위한 URI, Restful 메시지 형식(Method), 요청에 대한 응답(Response) 중 적어도 하나를 포함하며, 상기 응답은 프록시에서 전자 장치를 매핑하고 있는 외부 URI, 프록시에 전자 장치의 등록 여부에 관한 정보 중 적어도 하나를 포함할 수 있다.According to another embodiment of the present invention, there is provided a method for providing a home network service, the method including transmitting a request message for requesting discovery information to the server, the request message including a URI for message delivery, A response to the request, the response may include at least one of an external URI mapping the electronic device at the proxy, information about whether the electronic device is registered in the proxy, .

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 제1 등록 메시지, 상기 제2 등록 메시지 및 상기 제3 등록 메시지는 CoAP 프로토콜을 사용하며, 확인형 메시지인지 여부에 관한 메시지 유형(Message Type), Restful 메시지 형식(Method), 시리얼 코드와 사용자 정보 및 등록 상태 업데이트에 관한 URI, 전자 장치의 등록 여부에 관한 정보를 포함하는 페이로드, 전자 장치의 시리얼 코드와 사용자 정보 및 등록 업데이트 수행 결과에 관한 정보를 포함하는 ACK 중 적어도 하나를 포함할 수 있다.A method for providing a home network service according to another embodiment, wherein the first registration message, the second registration message, and the third registration message use a CoAP protocol, and the message type (Message Type), a Restful message format (Method), a URI relating to serial code and user information and registration status update, a payload including information about whether or not the electronic device is registered, a serial code and user information of the electronic device, And an ACK including information on the result of the execution.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 제4 등록 메시지는 메시지 전달을 위한 URI, Restful 메시지 형식, 요청 메시지에 대한 응답 중 적어도 하나를 포함하며, 상기 요청은 프록시에 전자 장치를 매핑하고 있는 외부 URI, 전자 장치의 고유 코드, 사용자 ID, 사용자 비밀번호, 사용자 전화번호 중 적어도 하나를 포함할 수 있다.A method for providing a home network service, according to another embodiment, wherein the fourth registration message includes at least one of a URI for message delivery, a response message format, and a response to the request message, An external URI mapping the electronic device, a unique code of the electronic device, a user ID, a user password, and a user telephone number.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 제5 등록 메시지는 바이너리 프로토콜을 사용하며, 프로토콜 버전, 메시지 유형, URI 길이, 전자 장치의 URI 중 적어도 하나를 포함할 수 있다.According to another embodiment, a method for providing a home network service, wherein the fifth registration message uses a binary protocol and may include at least one of a protocol version, a message type, a URI length, and a URI of an electronic device .

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 전자 장치에 상기 전자 장치에 관한 정보를 요청하기 위한 정보 메시지를 전송하는 과정을 더 포함하며, 상기 정보 메시지는 확인형 메시지인지 여부에 관한 메시지 유형(Message Type), Restful 메시지 형식(Method), 전자 장치의 정보에 관한 URI, 전자 장치에 관한 정보를 포함하는 ACK 중 적어도 하나를 포함할 수 있다.According to another embodiment, there is provided a method for providing a home network service, the method further comprising transmitting to the electronic device an information message for requesting information about the electronic device, A Message Type, a Restful message format, a URI regarding the information of the electronic device, and an ACK including information about the electronic device.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 프록시에 상기 전자 장치에 관한 정보를 요청하기 위한 정보 메시지를 전송하는 과정과; 상기 단말에 상기 전자 장치에 관한 정보를 전송하기 위한 정보 메시지를 전송하는 과정을 더 포함하며, 상기 정보 메시지는 메시지 전달을 위한 URI, Restful 메시지 형식, 전달하고자 하는 요청(Request) 및 요청 메시지에 대한 응답 중 적어도 하나를 포함할 수 있다.According to another embodiment, there is provided a method for providing a home network service, comprising: transmitting an information message for requesting information about the electronic device to the proxy; Further comprising transmitting an information message for transmitting information on the electronic device to the terminal, wherein the information message includes at least one of a URI for message delivery, a Restful message format, a Request to be delivered, And a response.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 프록시에 이벤트 메시지를 전송하는 과정을 더 포함하며, 상기 이벤트 메시지는 바이너리 프로토콜을 사용하고, 프로토콜 버전, 메시지 유형, URI 길이, 이벤트 정보를 관리하는 인터넷 주소에 관한 URI 중 적어도 하나를 포함할 수 있다.A method for providing a home network service according to another embodiment, the method further comprising transmitting an event message to the proxy, wherein the event message uses a binary protocol and includes a protocol version, a message type, a URI length, And a URI related to an Internet address for managing event information.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 전자 장치에 이벤트 메시지를 전송하는 과정을 더 포함하며, 상기 이벤트 메시지는 바이너리 프로토콜 또는 CoAP 프로토콜을 사용하며, 상기 이벤트 메시지는 URI 길이, 이벤트 정보를 관리하는 인테넛 주소에 관한 URI, 확인형 메시지인지 여부에 관한 메시지 유형(Message Type), Restful 메시지 형식(Method) 및 업데이트된 URI 컨텐츠 값에 관한 정보를 포함하는 ACK 중 적어도 하나를 포함할 수 있다.According to another embodiment of the present invention, there is provided a method for providing a home network service, the method including transmitting an event message to the electronic device, wherein the event message uses a binary protocol or a CoAP protocol, At least one of an ACK including a length, a URI relating to an intuitive address for managing event information, a message type relating to whether or not the message is a confirmation message, a Restful message format (Method) . ≪ / RTI >

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 프로시로부터 이벤트 메시지를 수신하는 과정과; 상기 단말로부터 이벤트 메시지를 수신하는 과정을 더 포함하며, 상기 이벤트 메시지는 메시지 전달을 위한 인터넷 주소에 관한 URI, Restful 메시지 형식, 전달하고자 하는 요청(Request) 및 요청 메시지에 대한 응답 중 적어도 하나를 포함하며, 상기 요청 및 상기 방법은 이벤트 이름, 이벤트 값을 포함할 수 있다.According to another embodiment, there is provided a method for providing a home network service, the method comprising: receiving an event message from the procedure; The method of claim 1, further comprising the step of receiving an event message from the terminal, wherein the event message includes at least one of a URI related to an Internet address, a Restful message format, a request to be delivered, and a response to a request message And the request and the method may include an event name and an event value.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 단말로부터 상기 전자 장치의 기능 수행을 위한 적용 메시지를 수신하는 과정과; 프록시에 상기 전자 장치의 기능 수행을 위한 적용 메시지를 전송하는 과정을 더 포함하며, 상기 적용 메시지는 메시지 전달을 위한 인터넷 주소에 관한 URI, Restful 메시지 형식, 전달하고자 하는 요청(Request) 및 요청 메시지에 대한 응답 중 적어도 하나를 포함하며, 상기 요청은 펌웨어를 다운로드 할 수 있는 URI, 롤백(Rollback) 하고자 하는 펌웨어 버전, 접속하고자 하는 SSID, 접속하고자 하는 SSID의 암호, 적용 수행 결과에 대한 정보 중 적어호 하나를 포함할 수 있다.According to another embodiment of the present invention, there is provided a method for providing a home network service, the method comprising: receiving an application message for performing a function of the electronic device from the terminal; And transmitting an application message for performing the function of the electronic device to the proxy, wherein the application message includes a URI related to an Internet address, a Restful message format, a request to be delivered, and a request message The response includes at least one of a URI for downloading the firmware, a firmware version to be rolled back, an SSID to be connected, a password for the SSID to be connected, One can be included.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 전자 장치에게 기능 수행을 위한 적용 메시지를 전송하는 과정을 더 포함하며,상기 적용 메시지는 CoAP 프로토콜을 사용하고, 확인형 메시지인지 여부에 관한 메시지 유형(Message Type), Restful 메시지 형식(Method), 적용의 인터넷 주소에 관한 URI, 적용되는 기능에 관한 정보를 포함하는 페이로드, 응답을 위한 ACK 중 적어도 하나를 포함할 수 있다.According to another embodiment of the present invention, there is provided a method for providing a home network service, the method including the step of transmitting an application message for performing a function to the electronic device, the application message using a CoAP protocol, A Message Type, a Restful message format, a URI regarding the Internet address of the application, a payload including information on the applied function, and an ACK for a response.

다른 실시예에 따른, 홈 네트워크 서비스를 제공하기 위한 방법에 있어서, 상기 전자 장치로부터 기능 수행을 위한 적용 메시지를 수신하는 과정을 더 포함하며, 상기 적용 메시지는 바이너리 프로토콜을 사용하며, 프로토콜 버전, 메시지 유형, URI 길이, 적용의 인터넷 주소에 관한 URI, 적용 결과에 관한 정보 중 적어도 하나를 포함할 수 있다.According to another embodiment, there is provided a method for providing a home network service, the method including receiving an application message for performing a function from the electronic device, the application message using a binary protocol, Type, URI length, URI of the application's Internet address, and information about the application result.

본 발명은 홈 네트워크 서비스를 제공함에 있어 Restful 웹 서비스를 기반으로 홈 전자 장치의 설정을 용이하게 수행할 수 있다. 이로 인해 사용자에게 편리함을 제공할 수 있으며, 홈 전자 장치의 제조자들이 용이하게 기술 개발을 수행할 수 있다.The present invention can easily configure a home electronic device based on a Restful Web service in providing a home network service. Accordingly, convenience for the user can be provided, and the manufacturers of the home electronic device can easily perform the technology development.

도 1은 본 발명의 일 실시예에 의한 홈 네트워크 시스템의 구성을 나타내는 도면.
도 2는 본 발명의 일 실시예에 의한 홈 네트워크 시스템에서 이용하는 메시지 타입을 설명하기 위한 도면.
도 3은 본 발명의 일 실시예에 의한 홈 네트워크 시스템의 초기 설정 방법을 설명하기 위한 흐름도.
도 4a 내지 도 4d는 본 발명의 일 실시예에 의한 홈 네트워크 시스템에서 이용하는 메시지 구조를 설명하기 위한 도면.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a diagram showing a configuration of a home network system according to an embodiment of the present invention; FIG.
2 is a diagram for explaining a message type used in a home network system according to an embodiment of the present invention;
3 is a flowchart illustrating an initial setting method of a home network system according to an embodiment of the present invention.
4A to 4D illustrate a message structure used in a home network system according to an embodiment of the present invention.

이하, 본 발명의 실시예를 도면과 함께 상세히 설명한다. 본 발명을 설명함에 있어서 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the 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은 본 발명의 일 실시예에 의한 홈 네트워크 시스템의 구성을 나타내는 도면이다.1 is a diagram illustrating a configuration of a home network system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 홈 네트워크 시스템은 WoT 가전(100), WoT 프록시(110), 클라우드 서버(120) 및 스마트 단말(130)을 포함한다.Referring to FIG. 1, the home network system of the present invention includes a WoT consumer appliance 100, a WoT proxy 110, a cloud server 120, and a smart terminal 130.

WoT(web of things) 가전(100)(이하, 전자 장치)은 웹 인터페이스를 갖고 홈에서 이용하는 전자 장치로서 냉장고, 세탁기, 밥솥 등이 해당될 수 있다. 전자 장치(100)는 웹컨넥티비티를 지원하기 위한 웹 소프트웨어(CoAP)(156)와 디바이스 제어 및 관리를 위한 미들웨어(Middleware)(153) 및 응용 프로그램(Device Application)(150)을 포함할 수 있다.A web of things (hereinafter referred to as " web of things ") 100 (hereinafter referred to as an electronic apparatus) may be a refrigerator, a washing machine, a rice cooker, or the like. The electronic device 100 may include a web software (CoAP) 156 for supporting web connectivity and a middleware 153 and an application 150 for device control and management. have.

미들웨어(153)는 서버/클라이언트 구조의 단방향 메시지 전달이라는 웹 소프트웨어(CoAP)(156)의 단점을 보완하기 위해 바이너리(Binary)라는 경량화 프로토콜을 포함할 수 있다. 미들웨어(153)와 웹 소프트웨어(CoAP)(156)는 무선랜 규격인 802.11과 IP를 기반으로 데이터를 전송하는 UDP 스택을 포함하는 임베디드 OS(RTOS)(159) 상위에 위치할 수 있다.The middleware 153 may include a lightweight protocol called Binary to overcome the shortcomings of the web software (CoAP) 156, which is a unidirectional message delivery of the server / client architecture. The middleware 153 and the web application software 156 may be located on an embedded OS (RTOS) 159 including a wireless LAN standard 802.11 and a UDP stack for transmitting data based on IP.

WoT 프록시(110)(이하, 프록시)는 홈 내부 망과 홈 외부 인터넷 망을 연결시켜주는 것으로 게이트웨이 역할을 수행한다. 프록시(110)는 전자 장치(100)와의 통신을 위한 CoAP 라이브러리(169)와 디바이스 관리를 위한 미들웨어(163) 및 외부 인터넷에 연결된 서비스 노드와 통신하기 위한 HTTP 기반의 마이크로 웹서버/클라이언트(MWS/C)(166)를 포함할 수 있다. 또한, HTTP 기반으로 수신한 메시지를 전자 장치(100)에 CoAP 프로토콜로 전달하기 위한 WoT 프록시 모듈(WoT Proxy)(160)을 포함할 수 있으며, WoT 포록시 모듈(160)은 기기에서 CoAP으로 전달된 메시지를 외부 서비스 노드에 HTTP 기반으로 전달 하는 기능도 지원할 수 있다. 이때, 프록시 플랫폼(Proxy Platform)은 IP를 기반으로 데이터를 전송하는 UDP와 TCP 프로토콜을 수용할 수 있는 운영체제라면 어떤 운영 체제도 이용할 수 있다.The WoT proxy 110 (hereinafter referred to as a proxy) is a gateway for connecting a home network and a home Internet network. The proxy 110 includes a CoAP library 169 for communication with the electronic device 100, a middleware 163 for device management, and an HTTP based micro web server / client (MWS / C) < / RTI > In addition, the WoT proxy module 160 may include a WoT proxy module 160 for delivering a HTTP-based message to the electronic device 100 using the CoAP protocol. And forwarding the message to the external service node based on HTTP. At this time, the proxy platform can use any operating system that can accommodate UDP and TCP protocols for transmitting data based on IP.

클라우드 서버(120)(이하, 서버)는 프록시(110)와 통신하며 외부로 open API(application program interface)를 제공할 수 있다. 인터넷 망을 통해 HTTP 기반으로 전자 장치(100)를 모니터링하고 관리할 수 있으며, 이 기능을 오픈 API로 제공할 수 있는 웹 서버/클라이언트(Web Server/Client)(173)와 응용 서비스(WoT Service)(170)를 포함할 수 있다. 서버 플랫폼(Server Platform)은 IP를 기반으로 하는 TCP 프로토콜을 수용할 수 있는 운영체제라면 어떤 운영 체제도 사용할 수 있으며, TCP 프로토콜 상위에는 일반적인 웹 통신규약인 HTTP를 사용할 수 있어야 한다.The cloud server 120 (hereinafter referred to as a server) communicates with the proxy 110 and can provide an open application program interface (API). A Web server / client 173 and an application service (WoT service) 173 that can monitor and manage the electronic device 100 based on HTTP through the Internet network and can provide the function as an open API, (Not shown). The server platform can use any operating system that can accommodate the TCP protocol based on the IP, and HTTP, which is a general Web communication protocol, must be available to the upper layer of the TCP protocol.

스마트 단말(130)(이하, 단말)은 사용자가 open API를 이용하여 전자 장치(100)를 모니터링하고 제어할 수 있도록 한다. 단말(130)은 전자 장치(100)의 통신을 위한 CoAP 라이브러리(190)와 전자 장치(100)의 초기설정, 접근 제어 기능들을 지원하기 위한 미들웨어(189) 및 전자 장치(100)를 모니터링하고 제어할 수 있는 WoT 서비스(180) 및 오픈 API지원을 위한 웹 클라이언트(Web Client)(183)를 포함할 수 있다. 스마트 장치 플랫폼(Smart Device Platform)은 IP를 기반으로 데이터를 전송하는 UDP와 TCP 프로토콜을 수용할 수 있는 운영체제라면 어떤 운영체제라도 사용할 수 있으며, TCP 프로토콜 스택 위에는 일반적인 통신규약인 HTTP(186)를 사용하고 UDP 프로토콜 스택 위에는 웹 소프트웨어(CoAP)(190)과 미들웨어(189)가 위치할 수 있다.The smart terminal 130 (hereinafter referred to as a terminal) allows a user to monitor and control the electronic device 100 using an open API. The terminal 130 monitors and controls the CoAP library 190 for communication of the electronic device 100 and the middleware 189 and the electronic device 100 for supporting the initial setting and access control functions of the electronic device 100, And a Web client 183 for open API support. The Smart Device Platform can use any operating system that can accommodate UDP and TCP protocols that transmit data based on IP, and use HTTP (186), a general communication protocol on the TCP protocol stack. Above the UDP protocol stack, Web software (CoAP) 190 and middleware 189 can be located.

도 2는 본 발명의 일 실시예에 의한 홈 네트워크 시스템에서 이용하는 메시지 타입을 설명하기 위한 도면이다.2 is a diagram for explaining a message type used in a home network system according to an embodiment of the present invention.

도 2를 참조하면, 전자 장치(100)와 프록시(110) 사이에서는 CoAP 기반의 바이너리 형태의 메시지를 사용하며, 프록시(110)와 서버(120), 단말(130) 사이에는 HTTP를 기반으로 하는 Json(javascript standard object notation) 형태의 메시지를 사용할 수 있다.2, a CoAP-based binary type message is used between the electronic device 100 and the proxy 110, and HTTP is used between the proxy 110 and the server 120 and the terminal 130 You can use messages in the form of Json (javascript standard object notation).

본 발명에서 이용하는 미들웨어 프로토콜은 Restful 기반의 CoAP 프로토콜과 HTTP 프로토콜을 활용하여 URI와 Method(Get, Put, Delete, Post), 페이로드(Paylaod)를 정의하고 있으며, 서버(120)에서는 메시지를 능동적으로 전달할 수 없는 서버/클라이언트 구조의 CoAP 프로토콜의 제약 조건을 해결하기 위해 UDP 브로드 캐스팅을 위한 간단한 바이너리 프로토콜을 포함할 수 있다. 이때 method는 발견, 광고, 인증 등을 위한 것으로 get은 발견, 등록, 정보, 이벤트 등에 put은 광고, 발견, 등록, 정보, 이벤트, 제어, 인증 등인 경우 이용한다. WoT 가전(100)에서는 기계간 통신을 위한 프로토콜인 MQTT-S(MQ Telemetry Transport For Sensors) 등 다양한 프로토콜을 사용할 수도 있다.The middleware protocol used in the present invention defines a URI, a method (Get, Put, Delete, Post) and a Payload using a Restful-based CoAP protocol and an HTTP protocol. The server 120 actively A simple binary protocol for UDP broadcasting can be included to solve the constraint of the CoAP protocol of the server / client structure that can not be delivered. In this case, the method is used for discovery, advertisement, authentication, etc., and get is used for discovery, registration, information, event, and the like in the case of advertisement, discovery, registration, information, event, control and authentication. In WoT CE 100, various protocols such as MQ Telet Transport For Sensors (MQTT-S), which is a protocol for inter-machine communication, may be used.

도 3은 본 발명의 일 실시예에 의한 홈 네트워크 시스템의 초기 설정 방법을 설명하기 위한 흐름도이다.3 is a flowchart illustrating an initial setting method of a home network system according to an embodiment of the present invention.

도 3을 참조하면, 사용자는 단말(130)을 이용하여 서버(120)에 계정을 생성하며(300), 이때 사용자는 전자 장치(100)에 있는 QR 코드나 NFC 기능 등을 이용하여 앱을 다운로드한 후 서버(120)에 사용자의 아이디(ID) 및 비밀번호, 사용자 전화번호 정보 등을 등록할 수 있다.3, the user creates an account (300) in the server 120 using the terminal 130. At this time, the user downloads the application using the QR code or the NFC function in the electronic device 100 The user ID (ID), password, user telephone number information, and the like can be registered in the server 120.

또한, 전자 장치(100)는 최초 전원이 켜지면 고유의 SSID(Service Set Identifier)를 생성하고, software AP(access point) 모드로 동작한다(303). 단말(130)은 전자 장치(100)의 SSID를 입력하여 전자 장치(100)에 접속하는데, 이때 전자 장치(100)에서 단말(130)에 광고 메시지를 전송하면(305), 단말(130)은 전자 장치(100)에 광고 메시지를 전송한다(310). 단말(130)은 전자 장치(100)의 SSID를 미리 알 수 있으며, 필요에 따라 비밀번호를 사용할 수 있다.In addition, the electronic device 100 generates a unique SSID (Service Set Identifier) when the initial power is turned on, and operates in a software AP (access point) mode (303). The terminal 130 receives the SSID of the electronic device 100 and connects to the electronic device 100. At this time, the electronic device 100 transmits the advertisement message to the terminal 130 (305) The advertisement message is transmitted to the electronic device 100 (310). The terminal 130 can know the SSID of the electronic device 100 in advance, and can use the password as needed.

단말(130)과 전자 장치(100)는 접속한 후 초기 설정을 위한 정보를 송수신하는데(315,320), 일 예로 초기 설정을 위한 정보는 전자 장치(100)의 고유코드, 프록시(110)의 SSID 및 비밀번호, 단말(130)이 서버(120)에 등록한 아이디 및 비밀번호, 단말(130) 정보 등이다. 프록시(110)의 SSID 및 비밀번호는 단말(130)이 전자 장치(100)에 전송하는데, 일 예로, 단말(130)의 응용 어플리케이션을 통해 사용자가 프록시(110)의 SSID와 비밀번호를 입력할 수 있으며, 입력된 정보는 단말(130)의 미들웨어를 통해 전자 장치(100) 미들웨어로 전달될 수 있다.After the terminal 130 and the electronic device 100 have connected to each other, information for initial setting is transmitted and received (315, 320). For example, the information for the initial setting includes the unique code of the electronic device 100, the SSID of the proxy 110, A password, an ID and password registered in the server 120 by the terminal 130, and the terminal 130 information. The SSID and the password of the proxy 110 are transmitted to the electronic device 100 by the terminal 130. For example, the user can input the SSID and the password of the proxy 110 through the application of the terminal 130 The input information may be transmitted to the middleware of the electronic device 100 through the middleware of the terminal 130. [

단말(130)과 전자 장치(100)가 초기 설정 정보를 송수신하면 단말(130)과 전자 장치(100)는 프록시(110)의 SSID 및 비밀번호를 이용하여 프록시(110)에 접속하며(325,330), 단말(130)은 프록시(110)를 통해 서버(120)에 접속한다(333). 이때, 프록시(110)에서 전자 장치(100)에 광고 메시지를 전송하면(335), 전자 장치(100)는 광고 메시지를 프록시(110)에 전송한다(340).When the terminal 130 and the electronic device 100 transmit and receive the initial setting information, the terminal 130 and the electronic device 100 access the proxy 110 using the SSID and the password of the proxy 110 (325, 330) The terminal 130 accesses the server 120 through the proxy 110 (333). At this time, when the proxy 110 transmits an advertisement message to the electronic device 100 (335), the electronic device 100 transmits the advertisement message to the proxy 110 (340).

프록시(110)는 전자 장치(100)가 프록시(110)에 등록되어 있는지 살펴보는데, 등록되어 있지 않은 경우 등록을 위한 정보를 전자 장치(100)에 요청하며(343), 전자 장치(100)가 등록을 위한 정보를 전송하면(345), 전자 장치(100)를 등록한다(347). 이때, 일 예로, 등록을 위한 정보는 단말(130)이 서버(120)에 등록한 아이디 및 비밀번호, 단말(130) 정보, 전자 장치(100)의 고유코드 등이다.The proxy 110 checks whether the electronic device 100 is registered with the proxy 110. If the electronic device 100 is not registered, the proxy 110 requests the electronic device 100 for registration information 343, When information for registration is transmitted (345), the electronic device 100 is registered (347). In this case, for example, the registration information includes an ID and a password registered in the server 120 by the terminal 130, information of the terminal 130, and a unique code of the electronic device 100.

프록시(110)는 전자 장치(100)를 등록한 후 등록 상태 업데이트 메시지를 전자 장치(100)에 전송하며(350), 전자 장치(100)는 이에 대한 응답 메시지를 프록시(110)에 전송한다(355). 또한, 프록시(110)는 서버(120)에 전자 장치(100)의 등록을 요청하고 등록을 위한 정보를 전송하며(360), 서버(120)는 전자 장치(100)의 등록을 완료하고(363), 등록 완료 메시지를 프록시에 전송하는데(370), 이때, 서버(120)는 단말(130)에 전자 장치(100)가 서버(120)에 등록됨을 알리는 새로운 장치의 등록에 관한 메시지를 전송할 수 있다(365). 프록시(110)는 서버(120)로부터 등록 완료 메시지를 수신하면 전자 장치(100)에 등록 상태 업데이트를 요청하며(375), 전자 장치(100)는 이에 대한 응답 메시지를 프록시(110)에 전송한다(380). 프록시(110)는 전자 장치(100)로부터 등록 상태 업데이트에 대한 응답 메시지를 수신하면, 단말(130)에게 서버(120)에 전자 장치(100)가 등록됨을 알리는 새로운 장치의 등록에 관한 메시지를 전송할 수 있는데, 이는 서버(120)에서 새로운 장치의 등록에 관한 메시지를 단말(130)에 전송하지 않은 경우 이용할 수 있다.The proxy 110 registers the electronic device 100 and sends 350 a registration status update message to the electronic device 100 and the electronic device 100 sends a response message to the proxy 110 ). The proxy 110 also requests registration of the electronic device 100 to the server 120 and sends 360 the information for registration and the server 120 completes the registration of the electronic device 100 The server 120 may send a message regarding the registration of the new device informing the terminal 130 that the electronic device 100 is registered with the server 120. In this case, (365). Upon receiving the registration completion message from the server 120, the proxy 110 requests the electronic device 100 to update the registration status 375, and the electronic device 100 transmits a response message to the proxy 110 (380). When the proxy 110 receives the response to the registration status update from the electronic device 100, the proxy 110 transmits a message regarding the registration of the new device informing the terminal 120 that the electronic device 100 is registered to the server 120 , Which can be used when the server 120 has not transmitted a message regarding the registration of a new device to the terminal 130.

한편, 단말(130)은 사용자 인증을 위한 정보를 서버(120)에 전송하고(385), 서버(120)는 단말(130)로부터 수신한 사용자 인증을 위한 정보를 이용하여 서버 인증을 완료한다(391). 서버(120)는 인증이 완료되면 단말(130)로부터 수신한 사용자 인증을 위한 정보를 프록시(110)에 전송하고(390), 프록시(110)는 인증을 완료한 후(393) 인증 완료 메시지를 서버(120)에 전송하며(395), 서버(120)는 인증 완료 메시지를 단말(130)에 전송한다(399). 이때, 사용자 인증을 위한 정보는 일 예로, 전자 장치(100)의 고유코드, 사용자 ID와 비밀번호 등이다.Meanwhile, the terminal 130 transmits information for user authentication to the server 120 (step 385), and the server 120 completes the server authentication using the information for user authentication received from the terminal 130 391). The server 120 transmits the information for user authentication received from the terminal 130 to the proxy 110 in step 390 and the proxy 110 completes the authentication in step 393 and sends an authentication completion message The server 120 transmits the authentication completion message to the terminal 130 (399), and the server 120 transmits the authentication completion message to the terminal 130 (399). At this time, the information for user authentication is, for example, a unique code of the electronic device 100, a user ID and a password.

도 4a 내지 도 4b는 본 발명의 일 실시예에 의한 홈 네트워크 시스템에서 이용하는 메시지 구조를 설명하기 위한 도면이다.4A and 4B are views for explaining a message structure used in a home network system according to an embodiment of the present invention.

본 발명에서 이용하는 미들웨어 프로토콜은 CoAP 프로토콜과 바이너리 프로토콜을 포함할 수 있는데, 도 4a를 참조하면, 바이너리 프로토콜은 프로토콜 버전(Version)(400), 메시지 유형(Message type)(405), URI 길이(Length)(410), URI(415), 페이로드(Payload)(445)로 구성될 수 있으며, 관련 설명은 [표 1]에 나타내었다. The middleware protocol used in the present invention may include a CoAP protocol and a binary protocol. Referring to FIG. 4A, a binary protocol includes a protocol version 400, a message type 405, ) 410, a URI 415, and a payload 445, and a description thereof is shown in Table 1.

Field NameField Name Field Size (Byte)Field Size (Byte) DescriptionDescription VersionVersion 1One - 프로토콜 버전
· 0x01
- Protocol version
0x01
Message TypeMessage Type 1One - 메시지 기능
· 0x01 : Advertisement
· 0x02 : Discovery
· 0x03 : Event Notification
· 0x04 : Apply Complete
· 0x05 : New Device Added
· 0x06 : Authentication Complete
- Message function
· 0x01: Advertisement
0x02: Discovery
0x03: Event Notification
0x04: Apply Complete
0x05: New Device Added
0x06: Authentication Complete
URI LengthURI Length 22 - URI 문자열의 크기 (Byte)- Size of URI string (Byte) URIURI NN - 장치 및 기능별로 다르게 기술- Different technologies for different devices and functions PayloadPayload 1One - Message Type별로 다르게 기술- Different technology for each message type

광고(ADVERTISEMENT) 메시지는 소정의 장치가 네트워크에 처음 연결되거나, 전원이 켜질 때, 프록시(110) 또는 네트워크에 연결된 다른 장치에게 자신의 URI 정보 또는 등록 여부를 알려주는 메시지이다.The ADVERTISEMENT message is a message informing the proxy 110 or other device connected to the network of its URI information or registration information when a predetermined device is connected to the network for the first time or powered on.

일 예로, 전자 장치(100)와 프록시(110) 사이에서, 광고 메시지는 CoAP 프로토콜을 사용하지 않고 바이너리 프로토콜만을 사용하며, 이때 광고 메시지 구조는 도 4b를 참조하면 버전(425), 메시지 유형(430), URI 길이(435), URI(440), 등록(Registration)(445)으로 구성될 수 있다.In one example, between the electronic device 100 and the proxy 110, the advertisement message uses only the binary protocol without using the CoAP protocol, wherein the advertisement message structure includes a version 425, a message type 430 ), A URI length 435, a URI 440, and a Registration 445.

Field NameField Name Field Size (Byte)Field Size (Byte) DescriptionDescription VersionVersion 1One - 프로토콜 버전 : 0x01- Protocol version: 0x01 Message TypeMessage Type 1One - Advertisement : 0x01 - Advertisement: 0x01 URI LengthURI Length 22 - URI 문자열의 크기 (Byte)- Size of URI string (Byte) URIURI NN - 전자 장치 또는 프록시 또는 단말 자신의 URI (IP Address)- the electronic device or proxy or the terminal's own URI (IP Address) RegistrationRegistration 1One - 프록시 및 서버에 전자 장치가 등록되어 있는지 아닌지에 대한 여부
· 0x00 : Not Registered
· 0x01 : Registered in Proxy
· 0x11 : Registered in Cloud Server
· 0x12 : Registered in Cloud Server but IP
address Changed
- Whether the proxy and the server have electronic devices registered or not
0x00: Not Registered
0x01: Registered in Proxy
0x11: Registered in Cloud Server
0x12: Registered in Cloud Server but IP
address Changed

전자 장치(100)의 미들웨어는 IP 정보를 가지고 있으며 부팅시 자신의 IP가 바뀌면 v{1}/config/registration의 값을 0x12로 업데이트 한다. 광고시 바이너리 메시지의 등록 필드는 0x12로 브로드캐스트 되고, 프록시(110) 미들웨어는 등록 필드값이 0x12이면 전자 장치(100)로부터 시리얼 코드를 읽어(get v{1}/config/serial) 프록시(110)에 알려준 후 성공적으로 IP 주소가 업데이트되면 프록시(110) 미들웨어는 디바이스의 v{1}/config/registration 값을 다시 0x11로 변경한다(put v{1}/config/registration).The middleware of the electronic device 100 has IP information and updates the value of v {1} / config / registration to 0x12 when its IP changes at boot time. The registration field of the binary message at the time of advertisement is broadcasted at 0x12 and the proxy 110 middleware reads the serial code from the electronic device 100 when the registration field value is 0x12 ), The proxy 110 middleware changes the device's v {1} / config / registration value back to 0x11 (put v {1} / config / registration).

또한, 프록시(110)와 서버(120) 사이에서, 프록시(110)가 전자 장치(100)로부터 광고 메시지를 수신하면, 프록시(110)는 서버(120)에게 광고 메시지를 수신하였음을 알려주는 광고 메시지를 전송할 수 있다. 일 예로, 광고 메시지의 구조 및 관련 내용은 [표 3] 및 [표 4]에 나타내었다.Also, between the proxy 110 and the server 120, when the proxy 110 receives the advertisement message from the electronic device 100, the proxy 110 notifies the server 120 of an advertisement Message can be transmitted. For example, the structure and related contents of the advertisement message are shown in [Table 3] and [Table 4].

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {serverId}/v{1}/advertisement{serverId} / v {1} / advertisement PUTPUT advertisementadvertisement AdvInfo
(Object Array)
AdvInfo
(Object Array)
truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

‘URI’는 메시지 전달을 위한 인터넷 주소이며, ‘Method’는 Restful 메시지의 형식, ‘Requst’ 는 전달하는 메시지 이며, ‘Members’는 전달하는 메시지의 세부 내용들 이고, ‘Value’ 는 세부 내용의 실제 값이며, ‘Required’는 필수 항목인지에 대한 여부를 나타낸다. ‘{serverId}/v{1}/advertisement’는 광고 메시지를 전달할 클라우드 서버의 주소이며, ‘AdvInfo(Object Array)’는 광고를 위해 필요한 내용들이며, ‘true’는 필수항목이라는 의미이다. ‘Method’에 ‘put’이 기재된 경우, ‘Request’에 관련 내용이 기재된다.'URI' is the Internet address for message delivery, 'Method' is the format of the Restful message, 'Requst' is the message to deliver, 'Members' is the details of the message to be delivered, 'Value' Is an actual value, and 'Required' indicates whether or not it is a mandatory item. '{ServerId} / v {1} / advertisement' is the address of the cloud server to which the advertisement message is transmitted, 'AdvInfo (Object Array)' is the contents necessary for the advertisement, and 'true' If 'put' is described in 'Method', the related content is described in 'Request'.

Object NameObject Name MembersMembers TypeType DescriptionDescription AdvInfoAdvInfo uriuri stringstring 프록시에서 전자 장치를 매핑하고 있는 외부 URI (deviceId)
ex) 129.254.86.142/a
The external URI (deviceId) that is mapping the electronic device in the proxy.
ex) 129.254.86.142/a
registrationregistration hexhex 프록시에 전자 장치가 등록되어 있는지 여부
· 0x00 : Not Registered
· 0x01 : Registered in Proxy
· 0x11 : Registered in Proxy and
CloudServer
Whether an electronic device is registered with the proxy
0x00: Not Registered
0x01: Registered in Proxy
0x11: Registered in Proxy and
CloudServer

‘Objection Name’ 은 ‘Request Value’명이고, ‘Members’는 ‘Object Name’의 상세 내용들이며, ‘type’은 ‘Member’ 값들의 자료형이고, ‘AdvInfo’는 광고를 위한 요청값이며, ‘string’은 문자열이고, ‘hex’는 16진법 표기법 이다.'Object' is the name of the 'Request Value', 'Members' is the details of the 'Object Name', 'type' is the data type of 'Member' values, 'AdvInfo' is the request value for the advertisement, 'Is a string, and' hex 'is hexadecimal notation.

Json 형태의 광고 메시지는 다음과 같다.The Json type advertisement message is as follows.

{{

"advertisement": ["advertisement": [

{{

"uri": "129.254.86.142/a/","uri": "129.254.86.142/a/",

"Registration": 00"Registration": 00

},                },

{{

"uri": "129.254.86.142/b/","uri": "129.254.86.142/b/",

"Registration": 01"Registration": 01

}                }

]                ]

}}

한편, 발견(DISCOVERY) 메시지는 네트워크에 연결된 소정의 장치의 존재를 확인하기 위한 것이며, 발견 메시지를 수신한 장치는 광고 메시지를 전송하여 응답할 수 있다. 단말(130)은 주기적으로 폴링(polling)을 하며, 서버(120)는 광고 메시지 정보를 저장한다. 일 예로, 단말(130)과 서버(120) 사이에서, 단말(130)은 서버(120)로부터 발견 정보를 읽어올 수 있으며, 이를 위해서는 서버(120)에 장치 광고 정보가 저장되어 있어야 한다. 일 예로, 발견 메시지 구조 및 관련 내용은 [표 5] 및 [표 6]에 나타내었다.On the other hand, the DISCOVERY message is for confirming the existence of a predetermined device connected to the network, and the device receiving the discovery message can reply by transmitting an advertisement message. The terminal 130 periodically polls and the server 120 stores advertisement message information. For example, between the terminal 130 and the server 120, the terminal 130 can read the discovery information from the server 120, and in order to do so, the server 120 must store the device advertisement information. For example, the discovery message structure and related contents are shown in [Table 5] and [Table 6].

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {serverId}/v{1}/{userId}/discovery
(Discovery 정보 요청)
{serverId} / v {1} / {userId} / discovery
(Request Discovery Information)
GETGET discoverydiscovery DisInfo
(Object Array)
DisInfo
(Object Array)
truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

‘URI’는 메시지 전달을 위한 인터넷 주소이며, ‘Method’는 Restful 메시지의 형식, ‘Response’는 요청 메시지에 대한 응답이고, ‘Members’는 응답메시지의 세부 내용들이며, ‘Value’는 세부 내용의 실제 값이고, ‘Required’는 필수 항목인지에 대한 여부이다. ‘{serverId}/v{1}/{userId}/discovery’는 발견 메시지를 요청할 클라우드 서버의 주소이며, ‘DisInfo(Object Array)’는 발견을 위해 필요한 내용들이며, ‘true’는 필수항목이라는 의미이다. ‘Method’에 ‘GET’이 기재된 경우, ‘Response’에 관련 내용이 기재된다.'URI' is the Internet address for message delivery, 'Method' is the format of the Restful message, 'Response' is the response to the request message, 'Members' is the details of the response message, 'Value' 'Required' is a required value. 'DisInfo (Object Array)' is necessary for discovery and 'true' is a mandatory item. 'Discovery' is the address of the cloud server to request discovery message. to be. If 'GET' is listed in 'Method', the related content is described in 'Response'.

Object NameObject Name MembersMembers TypeType DescriptionDescription disInfodisInfo uriuri stringstring 프록시에서 관리되는 전자 장치 URI를 클라우드에서 매핑하고 있는 외부 URI (deviceId)An external URI (deviceId) that maps proxy-managed electronic device URIs in the cloud. registrationregistration hexhex 프록시에 전자 장치가 등록되어 있는지 여부
· 0x00 : Not Registered
· 0x01 : Registered in Proxy
· 0x11 : Registered in Proxy and Cloud Server
Whether an electronic device is registered with the proxy
0x00: Not Registered
0x01: Registered in Proxy
0x11: Registered in Proxy and Cloud Server

‘Objection Name’ 은 ‘Response Value’명이고, ‘Members’는 ‘Object Name’의 상세 내용들이며, ‘type’은 ‘Member’ 값들의 자료형이고, ‘disInfo’는 발견 요청에 응답값 이며, ‘string’은 문자열이고, ‘hex’는 16진법 표기법 이다.'Type' is a data type of 'Member' values, 'disInfo' is a response value to a discovery request, 'string' is a string value of 'response' 'Is a string, and' hex 'is hexadecimal notation.

Json 형태의 발견 메시지는 다음과 같다.The Json type discovery message is as follows.

{{

"discovery": ["discovery": [

{{

"uri": "111.245.11.10/v1/129.254.86.142/a/","uri": "111.245.11.10/v1/129.254.86.142/a/",

"Registration": 11"Registration": 11

},},

{{

"uri": "111.245.11.10/v1/129.254.86.142/b/","uri": "111.245.11.10/v1/129.254.86.142/b/",

"Registration": 11"Registration": 11

}}

]            ]

}}

또한, 서버(120)와 프록시(110) 사이에서, 프록시(110)는 서버(120)에 광고 메시지를 보낼 수 있으며, 광고 메시지를 수신한 후 서버(120)는 v{1}/{userId}/discovery정보를 업데이트 한다. 이때, 발견 메시지의 구조 및 관련 설명은 [표 3] 및 [표 4]를 참고한다.Between the server 120 and the proxy 110, the proxy 110 may send an advertisement message to the server 120, and after receiving the advertisement message, the server 120 receives v {1} / {userId} / discovery Update the information. Refer to [Table 3] and [Table 4] for the structure and related explanation of the discovery message at this time.

또한, 프록시(110)와 전자 장치(100) 사이에서, 프록시(110)는 전자 장치(100)에 발견 메시지를 전송할 수 있으며, 전자 장치(100)는 발견 메시지를 수신하면 광고 메시지로 응답한다. 이때, 발견 메시지는 CoAP 프로토콜을 사용하지 않고, 바이너리 프로토콜만을 사용한다. 도 4c를 참조하면, 발견 메시지는 버전(450), 메시지 유형(455), URI 길이(460), URI(465)로 구성되며, 관련 설명은 [표 7]에 나타내었다.Further, between the proxy 110 and the electronic device 100, the proxy 110 may send a discovery message to the electronic device 100, and the electronic device 100 responds with an advertisement message upon receipt of the discovery message. At this time, the discovery message does not use the CoAP protocol but uses only the binary protocol. Referring to FIG. 4C, the discovery message comprises a version 450, a message type 455, a URI length 460, and a URI 465, the description of which is shown in Table 7.

Field NameField Name Field SizeField Size DescriptionDescription VersionVersion 1One - 프로토콜 버전 : 0x01- Protocol version: 0x01 Message TypeMessage Type 1One - Device Discovery : 0x02 - Device Discovery: 0x02 URI LengthURI Length 22 - URI 문자열의 크기 (Byte)- Size of URI string (Byte) URIURI NN - Discovery를 요청하는 디바이스의 URI (Proxy의 IP address)- URI of device requesting discovery (IP address of Proxy)

한편, 등록(REGISTRATION) 메시지는 전자 장치(100)를 프록시(110)와 서버(120)에 등록시키기 위한 메시지이다.On the other hand, the REGISTRATION message is a message for registering the electronic device 100 with the proxy 110 and the server 120.

일 예로, 전자 장치(100)와 프록시(110) 사이에서, 프록시(110)에서 전자 장치(100)의 광고 메시지를 수신했을 때, 페이로드인 Registration 필드값이 0x00이면, 프록시(110)는 CoAP 메시지를 통해 고유 시리얼 코드를 읽어오고, 프록시(110)에 등록이 완료되면 전자 장치(100)의 등록 상태를 갱신한다. 이때, 등록 메시지는 CoAP 프로토콜을 사용하며, 메시지 구조 및 관련 내용은 [표 8]에서 나타내었다.For example, when receiving the advertisement message of the electronic device 100 at the proxy 110 between the electronic device 100 and the proxy 110, if the Registration field value of the payload is 0x00, the proxy 110 transmits a CoAP Message, and updates the registration state of the electronic device 100 when the registration is completed in the proxy 110. [ At this time, the registration message uses the CoAP protocol, and the message structure and related contents are shown in [Table 8].

Field NameField Name Field SizeField Size DescriptionDescription Client (Proxy)Client (Proxy) Message TypeMessage Type 확인형(confirmable) 메시지인 CON을 사용Use CON, confirmable message MethodMethod - 시리얼 코드 및 사용자 정보를 읽어오기 위해 GET을 사용
- 전자 장치의 등록상태를 업데이트하기 위해 PUT을 사용
- Use GET to read serial code and user information
- Use PUT to update the registration status of electronic devices
URIURI 시리얼코드 Serial code v{1}/config/serialv {1} / config / serial 사용자정보User information v{1}/config/userv {1} / config / user 등록상태 업데이트Update registration status v{1}/config/registrationv {1} / config / registration PayloadPayload 등록갱신Renew your registration - 프록시에 등록 완료 시 (PUT method 사용 시) "0x01"을 사용
- 서버에 등록 완료 시 (PUT method 사용 시) "0x11"을 사용
- When registering with proxy (when using PUT method) "0x01" is used
- When registering with the server (when using the PUT method), use "0x11"
Server (Device)Server (Device) ACKACK - 시리얼코드 : 디바이스 고유 시리얼코드 전달 (32Bytes text)- Serial code: Device specific serial code (32Bytes text) - 사용자정보 : 어플리케이션 등으로부터 수신한 사용자 정보 전달 (48Bytes text)
- ID (16Bytes)
- Password (16Bytes)
- Phone Number (16Bytes)
- User information: User information received from application etc. (48 bytes text)
- ID (16 bytes)
- Password (16Bytes)
- Phone Number (16Bytes)
- 등록갱신
· 200 (OK) response SHOULD be returned
· If no resource exists then the server MAY create a new resource with that URI, resulting in a 201 (Created) response
· If the resource could not be created or modified, then an appropriate error response code SHOULD be sent.
- renewal of registration
· 200 (OK) response SHOULD be returned
If no resource exists then the server MAY create a new resource with that URI, resulting in a 201 (Created) response
If the resource could not be created or modified, then an appropriate error response code SHOULD be sent.

‘Client(Proxy)’는 프록시(110)에서 사용하는 메시지이고, ‘Server(Device)’는 전자 장치(100)에서 사용하는 메시지이며, ‘ACK(acknowledge)’은 프록시(110)가 ‘GET’이나 ‘PUT’ 요청을 전자 장치(100)로 보냈을 때 그에 대한 응답이다.'ACK (acknowledge)' indicates that the proxy 110 transmits a 'GET' message to the proxy 110, 'Server (Device)' is a message used by the electronic device 100, 'Client (Proxy)' is a message used by the proxy 110, Or a " PUT " request to the electronic device 100. [

또한, 프록시(110)와 서버(120) 사이에서, 프록시(110)에 전자 장치(100)가 등록되면 프록시(110)는 전자 장치(100)의 ‘URI’와 매핑되는 외부 ‘URI(ID)’를 생성한 후 전자 장치(100)의 고유코드와 ‘URI’ 정보를 서비스 노드로 전달한다. 이때, 등록 메시지의 구조 및 관련 내용은 [표 9] 및 [표 10]에서 나타내었다. [표 10]에서 ‘RegReqInfo’는 등록 요청을 위한 값이다.Also, between the proxy 110 and the server 120, when the electronic device 100 is registered with the proxy 110, the proxy 110 registers the external URI (ID) with the 'URI' of the electronic device 100, 'And transmits the inherent code and' URI 'information of the electronic device 100 to the service node. The structure of the registration message and related contents are shown in [Table 9] and [Table 10]. In Table 10, 'RegReqInfo' is a value for registration request.

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {serverId}/v{1}/config/
registration
(registration 요청)
{serverId} / v {1} / config /
registration
(registration request)
PUTPUT registrationReqregistrationReq RegReqInfo
(Object)
RegReqInfo
(Object)
truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

Object NameObject Name MembersMembers TypeType DescriptionDescription RegReqInfoRegReqInfo uriuri stringstring 프록시에서 내부 디바이스를 매핑하고 있는 외부 URI (deviceId)The external URI (deviceId) mapping the internal device in the proxy serialCodeserialCode stringstring WoT 장치의 고유 코드Unique code of WoT device idid stringstring 사용자 IDUser ID passwordpassword stringstring 사용자 PasswordUser Password phonephone stringstring 사용자 전화번호User phone number

Json 형태의 등록 메시지는 다음과 같다.The Json-type registration message is as follows.

# Registration Request# Registration Request

{{

"registrationReq": {"registrationReq": {

"uri": "129.554.55.12/a","uri": "129.554.55.12/a",

"serialCode": "56543dswdfs-0ri0","serialCode": "56543dswdfs-0ri0",

"id": "etri","id": "etri",

"password": "123456","password": "123456",

"phone": "01111112222""phone": "01111112222"

}}

}}

또한, 프록시(110)와 단말(130) 사이에서, 서버(120)에 전자 장치(100)의 등록이 완료되고, 등록 결과가 전자 장치(100)에 전송되면 프록시(110)는 브로드캐스트 메시지를 통해 단말(130)에게 전자 장치(100)의 등록이 완료됨을 알릴 수 있다. 이때 등록 메시지는 바이너리 프로토콜만을 사용한다. 도 4c를 참조하면, 등록 메시지는 버전(450), 메시지 유형(455), URI 길이(460), URI(465)로 구성되며, 관련 설명은 [표 11]에 나타내었다. Between the proxy 110 and the terminal 130, when the registration of the electronic device 100 to the server 120 is completed and the registration result is transmitted to the electronic device 100, the proxy 110 transmits a broadcast message The terminal 130 can be notified that the registration of the electronic device 100 is completed. At this time, the registration message uses only the binary protocol. Referring to FIG. 4C, the registration message is composed of a version 450, a message type 455, a URI length 460, and a URI 465, and a description thereof is shown in [Table 11].

Field NameField Name Field SizeField Size DescriptionDescription VersionVersion 1One - 프로토콜 버전 : 0x01- Protocol version: 0x01 Message TypeMessage Type 1One - New Device Added : 0x05 - New Device Added: 0x05 URI LengthURI Length 22 - URI 문자열의 크기 (Byte)- Size of URI string (Byte) URIURI NN - 등록된 디바이스의 URI (Proxy에서 관리하는 URI)- URI of the registered device (URI managed by the proxy)

서버(120)에서 단말(130)로 전자 장치(100)의 등록이 완료됨을 직접 알려 줄 경우에는 Json 형태의 메시지를 사용할 수 있. 이때, uri는 등록 완료된 전자 장치(100)의 외부 URI(external URI, 외부 IP 주소), serialCode는 등록 완료된 전자 장치(100)의 시리얼코드, id는 등록 완료된 전자 장치(100)를 등록한 사용자 아이디, password는 등록 완료된 전자 장치(100)를 등록한 사용자 암호이다.When the server 120 directly informs the terminal 130 that registration of the electronic device 100 is completed, a Json-type message can be used. In this case, uri is the external URI (external URI) of the registered electronic device 100, serialCode is the serial code of the registered electronic device 100, id is the user ID registered with the registered electronic device 100, The password is a user password for registering the registered electronic device 100.

Json 형태의 등록 메시지는 다음과 같다.The Json-type registration message is as follows.

{{

“newDevice”:{"NewDevice": {

"uri": "129.254.86.142/device0", "uri": "129.254.86.142/device0",

"serialCode": "1234r3-r3r3klnff ", "serialCode": "1234r3-r3r3klnff",

"id": “test”, "id": "test",

"password": "test" /"password": "test" /

}}

}}

한편, 정보(INFORMATION) 메시지는 전자 장치(100)에 관한 정보를 요청하기 위해 이용되며, 전자 장치(100)에 관한 정보는 이름, 타입(type), 모델명, 제조사명, 하드웨어(H/W) 및 펌웨어(firmware) 버전 등이 해당될 수 있다.On the other hand, an INFORMATION message is used to request information about the electronic device 100, and the information about the electronic device 100 includes a name, a type, a model name, a manufacturer name, a hardware (H / W) And a firmware version.

일 예로, 단말(130)과 서버(120) 사이에서, 단말(130)은 서버(120)에 전자 장치(100)에 관한 정보를 요청하고 ‘Ack’으로 정보를 수신할 수 있는데, 이를 위해 서버(120)는 전자 장치(100)에 관한 정보를 등록한다. 이때, 정보 메시지의 구조 및 이에 관한 설명은 [표 12] 및 [표 13]에 나타내었다. [표 12]에서 ‘informationRes’는 장치정보 요청에 대한 응답 값이다.For example, between the terminal 130 and the server 120, the terminal 130 can request information about the electronic device 100 from the server 120 and receive information by 'Ack' (120) registers information on the electronic device (100). At this time, the structure of the information message and the description thereof are shown in [Table 12] and [Table 13]. In Table 12, 'informationRes' is the response value for the device information request.

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {serverId}/v{1}/{deviceId}/info{serverId} / v {1} / {deviceId} / info GETGET informationResinformationRes DeviceInfo
(Object
Array)
DeviceInfo
(Object
Array)
truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

Object NameObject Name MembersMembers TypeType DescriptionDescription DeviceInfoDeviceInfo deviceNamedeviceName stringstring 디바이스 이름Device Name deviceTypedeviceType hexhex 디바이스 타입Device type modelNamemodelName stringstring 모델 이름Model name manufacturermanufacturer stringstring 제조사 이름Manufacturer name serverURIserverURI stringstring 서비스 서버 URIService server URI hwVersionhwVersion stringstring H/W 버전H / W version firmwareVersionfirmwareVersion stringstring 펌웨어 버전Firmware version

Json 형태의 정보 메시지는 다음과 같다.The Json type information message is as follows.

# Information Response# Information Response

{{

"informationRes": ["informationRes": [

{{

"deviceName": "test","deviceName": "test",

"deviceType": 1600,"deviceType": 1600,

"modelName": "test","modelName": "test",

"manufacturer": "test","manufacturer": "test",

"serverURI": "122.11.5.5","serverURI": "122.11.5.5",

"hwVersion": "1.1.1","hwVersion": "1.1.1",

"firmwareVersion": "1.1.2""firmwareVersion": "1.1.2"

}}

]]

}}

또한, 서버(120)와 프록시(110) 사이에서, 서버(120)는 프록시(110)에 정보를 요청하는 정보 메시지를 전송할 수 있으며, 이때 정보 메시지는 HTTP 프로토콜을 사용한다. 정보 메시지의 구조 및 이에 관한 설명은 [표 14] 및 [표 15]에 나타내었다.Also, between the server 120 and the proxy 110, the server 120 may send an information message requesting information to the proxy 110, wherein the information message uses the HTTP protocol. The structure of the information message and the description thereof are shown in [Table 14] and [Table 15].

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {serverId}/v{1}/{deviceId}/info{serverId} / v {1} / {deviceId} / info PUTPUT informationResinformationRes DeviceInfo
(Object
Array)
DeviceInfo
(Object
Array)
truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

Object NameObject Name MembersMembers TypeType DescriptionDescription DeviceInfoDeviceInfo deviceNamedeviceName stringstring 디바이스 이름Device Name deviceTypedeviceType hexhex 디바이스 타입 (Annex A 참조)Device type (see Annex A) modelNamemodelName stringstring 모델 이름Model name manufacturermanufacturer stringstring 제조사 이름Manufacturer name serverURIserverURI stringstring 서비스 서버 URIService server URI hwVersionhwVersion stringstring H/W 버전H / W version firmwareVersionfirmwareVersion stringstring 펌웨어 버전Firmware version

Json 형태의 정보 메시지는 다음과 같다.The Json type information message is as follows.

# Information Response# Information Response

{{

"informationRes": ["informationRes": [

{{

"deviceName": "test","deviceName": "test",

"deviceType": 1600,"deviceType": 1600,

"modelName": "test","modelName": "test",

"manufacturer": "test","manufacturer": "test",

"serverURI": "122.11.5.5","serverURI": "122.11.5.5",

"hwVersion": "1.1.1","hwVersion": "1.1.1",

"firmwareVersion": "1.1.2""firmwareVersion": "1.1.2"

}}

]]

}}

또한, 프록시(110)와 전자 장치(100) 사이에서, 프록시(110)는 전자 장치(100)에게 정보를 요청할 수 있으며, 서버(120)로부터 정보를 요청하는 정보 메시지를 수신하면 수신된 정보 메시지를 전자 장치(100)에 전송한다. 프록시(110)와 전자 장치(100) 사이에서 사용하는 정보 메시지는 CoAP 프로토콜을 사용하며, 정보 메시지의 구조 및 이에 관한 설명은 [표 16]에 나타내었다. [표 16]에서 메시지 유형(Message Type)은 응답이 필요한 ‘CON’ 메시지인지 응답이 필요없는 ‘NON’ 메시지인지에 관한 것이다.Between the proxy 110 and the electronic device 100, the proxy 110 may request information from the electronic device 100, and upon receiving an information message requesting information from the server 120, To the electronic device (100). The information message used between the proxy 110 and the electronic device 100 uses the CoAP protocol, and the structure of the information message and the description thereof are shown in Table 16. In Table 16, the message type relates to whether it is a 'CON' message requiring a response or a 'NON' message not requiring a response.

Field NameField Name Field SizeField Size DescriptionDescription Client (Proxy)Client (Proxy) Message TypeMessage Type - 확인형(confirmable) 메시지인 CON을 사용- Use CON, confirmable message MethodMethod - 전자 장치 정보를 읽어오기 위해 GET을 사용- Use GET to read electronic device information URIURI - 디바이스 이름 : IP address/device/info/name
- 디바이스 타입 : IP address/device/info/type
- 모델 이름 : IP address/device/info/model
- 제조사 이름 : IP address/device/info/manufacturer
- 서비스 서버 URI : IP address/device/info/serveruri
- H/W 버전 : IP address/device/info/hwversion
- 펌웨어 버전 : IP address/device/info/fwversion
- Device name: IP address / device / info / name
- Device type: IP address / device / info / type
- Model name: IP address / device / info / model
- Manufacturer name: IP address / device / info / manufacturer
- Service server URI: IP address / device / info / serveruri
- H / W version: IP address / device / info / hwversion
- Firmware version: IP address / device / info / fwversion
Server (Device)Server (Device) ACKACK - 디바이스 이름 : 16Bytes String
- 디바이스 타입 : 2Bytes Hexcode (Annex A 참조)
- 모델 이름 : 16Bytes String
- 제조사 이름 : 16Bytes String
- 서비스 서버 URI : 32Bytes String
- H/W 버전 : 16Bytes String
- 펌웨어 버전 : 16Bytes String
- Device name: 16Bytes String
- Device type: 2 Bytes Hexcode (see Annex A)
- Model Name: 16Bytes String
- Manufacturer name: 16Bytes String
- Service server URI: 32Bytes String
- H / W version: 16Bytes String
- Firmware version: 16Bytes String

한편, 이벤트 알림(EVENT_NOTIFICATION) 메시지는 센서와 같이 특정 이벤트를 주기적으로 발생시키는 경우 관련 정보를 전송하기 위해 사용된다.Meanwhile, the EVENT_NOTIFICATION message is used to transmit related information when a specific event such as a sensor is periodically generated.

일 예로, 전자 장치(100)와 프록시(110) 사이에서, 전자 장치(100)에서 이벤트가 발생하면, 이벤트가 발생한 상황을 브로드캐스트를 통해 프록시(110)에 알리고, 프록시(110)는 CoAP 메시지를 통해 이벤트 URI로부터 이벤트 값을 알 수 있다. 이때, 이벤트 알림 메시지는 바이너리 프로토콜 또는 CoAP 프로토콜을 사용하며, 메시지 구조 및 이에 관한 설명은 도 4c, [표 17] 및 [표 18]에 나타내었다.For example, when an event occurs in the electronic device 100 between the electronic device 100 and the proxy 110, the proxy 110 notifies the proxy 110 of the occurrence of the event through a broadcast, The event value can be known from the event URI. At this time, the event notification message uses a binary protocol or a CoAP protocol, and the message structure and description thereof are shown in FIG. 4C, Table 17, and Table 18. FIG.

Field NameField Name Field SizeField Size DescriptionDescription VersionVersion 1One - 프로토콜 버전 : 0x01- Protocol version: 0x01 Message TypeMessage Type 1One - Event Notification: 0x03 - Event Notification: 0x03 URI LengthURI Length 22 - URI 문자열의 크기 (Byte)- Size of URI string (Byte) URIURI NN - Event 정보를 관리하는 URI를 기술
- URI의 기술 방식은 /v{1}/event/{event_name} 으로 기술하며 event_name은 기기별 프로파일을 참고한다.
- Describe a URI that manages Event information
- Describe the description method of URI as / v {1} / event / {event_name}, and event_name refers to device-specific profile.

Field NameField Name Field SizeField Size DescriptionDescription Client (Proxy)Client (Proxy) Message TypeMessage Type - 확인형(confirmable) 메시지인 CON을 사용- Use CON, confirmable message MethodMethod - URI의 값을 읽어오기 위한 GET을 사용- Use GET to read URI values URIURI - EVENT_NOTIFICATION 바이너리 메시지에 포함되어 있는 URI를 사용 (EVENT URI)- EVENT_NOTIFICATION Use the URI contained in the binary message (EVENT URI) Server (Device)Server (Device) ACKACK - 업데이트 된 URI content 값을 ACK로 client에 전달
- ACK 값은 기기별 프로파일을 참고한다.
- Pass the updated URI content value as ACK to client
- Refer to the device-specific profile for ACK value.

또한, 프록시(110)와 서버(120) 사이에서, 프록시(110)가 전자 장치(100)로부터 이벤트 알림 메시지를 수신하면 프록시(110)는 서버(120)에 이벤트 알림 메시지를 전송한다. 이때, 이벤트 알림 메시지의 구조 및 이에 관한 설명은 [표 19] 및 [표 20]에 나타내었다. [표 19]에서 ‘event’는 이벤트 전달을 위한 요청 메시지이고, ‘EventInfo (Object Array)’는 이벤트 세부 값이다.Between the proxy 110 and the server 120, when the proxy 110 receives an event notification message from the electronic device 100, the proxy 110 transmits an event notification message to the server 120. [ At this time, the structure of the event notification message and the description thereof are shown in [Table 19] and [Table 20]. In Table 19, 'event' is a request message for event delivery, and 'EventInfo (Object Array)' is an event detail value.

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {serverId}/v{1}/event{serverId} / v {1} / event PUTPUT eventevent EventInfo
(Object Array)
EventInfo
(Object Array)
truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

Object NameObject Name MembersMembers TypeType DescriptionDescription EventInfoEventInfo eventNameeventName stringstring 이벤트 이름Event name eventValueeventValue stringstring 이벤트 값Event value

Json 형태의 이벤트 알림 메시지는 다음과 같다.The Json event notification message is as follows.

# Event# Event

{{

"event": ["event": [

{{

"eventName": “a”,"eventName": "a",

"eventValue": "1""eventValue": "1"

},},

{{

"eventName": “b”,"eventName": "b",

"eventValue": "2""eventValue": "2"

}}

]]

}}

또한, 서버(120)와 단말(130) 사이에서, 서버(120)가 이벤트 알림 메시지를 수신하면, 단말(130)은 필요한 경우 이벤트 정보를 알 수 있으며, 이때 이벤트 알림 메시지의 구조 및 이에 관한 설명은 [표 21] 및 [표 22]에 나타내었다.Also, when the server 120 receives the event notification message between the server 120 and the terminal 130, the terminal 130 can know the event information if necessary. At this time, the structure and description of the event notification message Are shown in [Table 21] and [Table 22].

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {serverId}/v{1}/{deviceId}/event{serverId} / v {1} / {deviceId} / event GETGET eventevent EventInfo
(Object Array)
EventInfo
(Object Array)
truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

Object NameObject Name MembersMembers TypeType DescriptionDescription EventInfoEventInfo eventNameeventName hexhex 이벤트 이름Event name eventValueeventValue stringstring 이벤트 값Event value

Json 형태의 이벤트 알림 메시지는 다음과 같다.The Json event notification message is as follows.

# Event# Event

{{

"event": ["event": [

{{

"eventName": “a”,"eventName": "a",

"eventValue": "1""eventValue": "1"

},},

{{

"eventName": “b”,"eventName": "b",

"eventValue": "2""eventValue": "2"

}}

]]

}}

한편, 제어(CONTROL) 메시지는 장치 제어를 위해 사용되며, 단말(130)은 원격에서 전자 장치(100)를 제어할 수 있다.On the other hand, the CONTROL message is used for device control, and the terminal 130 can control the electronic device 100 remotely.

일 예로, 단말(130)과 서버(120) 사이에서, 서버(120)는 단말(130)로부터 제어를 요청하는 제어 메시지를 수신하며, 기기별 제어 uri 및 메시지는 미리 결정된 기기별 WoT 프로파일을 참조할 수 있다.For example, between the terminal 130 and the server 120, the server 120 receives a control message requesting control from the terminal 130, and the control uri and the message per device refer to a predetermined WoT profile per device can do.

또한, 서버(120)와 프록시(110) 사이에서, 서버(120)는 단말(130)로부터 제어를 요청하는 제어 메시지를 수신하면 이를 프록시(110)에 전송하는데, 이때, 제어 메시지는 HTTP 프로토콜을 사용하며, 기기별 제어 uri 및 메시지는 미리 결정된 기기별 WoT 프로파일을 참조할 수 있다. 일 예로, 미리 결정된 기기별 WoT 프로파일은 [표 23], [표 24]과 같이 구성될 수 있으며, [표 23], [표 24]는 전등(light) 에 관한 것이다.Between the server 120 and the proxy 110, when the server 120 receives a control message requesting control from the terminal 130, the server 120 transmits the control message to the proxy 110. At this time, And the device-specific control uri and the message can refer to the predetermined device-specific WoT profile. For example, predetermined device-specific WoT profiles can be configured as shown in [Table 23] and [Table 24], and [Table 23] and [Table 24] are related to light.

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired /v1/lights
(전체 상태조회, 설정, 삭제)
/ v1 / lights
(Full status inquiry, setting, deletion)
GETGET ControlReqControlReq ObjectObject truetrue 400,500 시 Error 메시지 참고400,500 Note the error message
PUTPUT ControlReqControlReq ObjectObject truetrue DELETEDELETE

Object NameObject Name MembersMembers TypeType DescriptionDescription ControlReqControlReq proxyIdproxyId StringString 프록시 IDProxy ID lightslights Array[Light]Array [Light] Light의 ArrayArray of Light lightlight ObjectObject errorerror ObjectObject LightLight deviceIddeviceId StringString Light IDLight ID onOffonOff IntInt On, OffOn, Off dimmingdimming IntInt 0~10, Dimming level0 to 10, Dimming level colorcolor IntInt 0~30 to 3 ErrorError StatusStatus StringString 401, 404, 501 등401, 404, 501, etc. MessageMessage StringString 에러 메시지Error message errorCodeerrorCode intint 에러 코드Error code

또한, 프록시(110)와 전자 장치(100) 사이에서, 프록시(110)는 서버(120)로부터 제어를 요청하는 메시지를 수신하면 이를 전자 장치(100)에 전송하는데, 이때, 제어 메시지는 CoAP 프로토콜을 사용하며, 제어 메시지의 구조 및 이에 관한 설명은 [표 25]에 나타내었다.Also, between the proxy 110 and the electronic device 100, when the proxy 110 receives a message requesting control from the server 120, the proxy 110 transmits the message to the electronic device 100, And the structure of the control message and a description thereof are shown in Table 25.

Field NameField Name Field SizeField Size DescriptionDescription Client (Proxy)Client (Proxy) Message TypeMessage Type - 확인형(confirmable) 메시지인 CON을 사용- Use CON, confirmable message MethodMethod - 제어코드를 전달(업데이트)하기 위해 PUT을 사용- Use PUT to transfer (update) the control code URIURI - IP/v{1}/{controlName} 으로 기술- Described as IP / v {1} / {controlName} PayloadPayload - controlName에 따라 다르게 기술하며 전자 장치의 프로파일을 참조한다.- Describe differently according to the controlName and refer to the profile of the electronic device. Server (Device)Server (Device) ACKACK - 200 (OK) response SHOULD be returned
- If no resource exists then the server MAY create a new resource with that URI, resulting in a 201 (Created) response
- If the resource could not be created or modified, then an appropriate error response code SHOULD be sent.
- 200 (OK) response SHOULD be returned
- If no resource exists then the server MAY create a new resource with that URI, resulting in a 201 (Created) response
- If the resource could not be created or modified, then an appropriate error response code SHOULD be sent.

한편, 적용(APPLY) 메시지는 업데이트, Wi-Fi connection 등 시스템 관련 기능을 수행하기 위한 메시지이다.On the other hand, the APPLY message is a message for performing system related functions such as updating and Wi-Fi connection.

일 예로, 서버(120)와 단말(130) 사이에서, 서버(120)는 단말(130)로부터 적용을 요청하는 적용 메시지를 수신할 수 있으며, 적용 메시지는 Request, Response, Result 메시지로 구성된다. 적용 메시지의 구조 및 이에 관한 설명은 [표 26] 및 [표 27]에 나타내었다. For example, between the server 120 and the terminal 130, the server 120 may receive an application message requesting application from the terminal 130, and the application message is composed of Request, Response, and Result messages. The structure of the application message and its description are shown in [Table 26] and [Table 27].

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {serverId}/v{1}/{deviceId}/apply/update
(Update 요청)
{serverId} / v {1} / {deviceId} / apply / update
(Update request)
PUTPUT firmwareUrifirmwareUri stringstring truetrue 400,500 시 Error 메시지 참고400,500 Note the error message
{serverId}/v{1}/{deviceId}/apply/rollBack
(RollBack 요청)
{serverId} / v {1} / {deviceId} / apply / rollBack
(RollBack request)
PUTPUT rollback
(object)
rollback
(object)
RollBackInfoRollBackInfo truetrue 400,500 시 Error 메시지 참고400,500 Note the error message
{serverId}/v{1}/{deviceId}/apply/apConnection
(Connection 요청)
{serverId} / v {1} / {deviceId} / apply / apConnection
(Connection request)
PUTPUT apConnection
(object)
apConnection
(object)
ConnectionInfoConnectionInfo truetrue 400,500 시 Error 메시지 참고400,500 Note the error message
{serverId}/v{1}/{deviceId}/apply/{applyName}/result
(Apply 결과)
{serverId} / v {1} / {deviceId} / apply / {applyName} / result
(Apply result)
GETGET resultresult hexhex truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

‘firmwareUri’는 펌웨어를 다운로드 할 수 있는 주소이고, ‘rollback(object)’는 시스템 롤백 요청을 위한 메시지이며, ‘apConnection(object)’는 AP 접속 요청을 위한 메시지이다.'FirmwareUri' is an address where firmware can be downloaded, 'rollback (object)' is a message for a system rollback request, and 'apConnection (object)' is a message for requesting an AP access.

Object NameObject Name MembersMembers TypeType DescriptionDescription -- firmwareUrifirmwareUri stringstring Firmware를 다운로드 할 수 있는 URI URI where firmware can be downloaded RollBackInfoRollBackInfo firmwareVersionfirmwareVersion stringstring Rollback하고자 하는 펌웨어 버전Firmware version you want to rollback firmwareUrifirmwareUri stringstring Firmware를 다운로드 할 수 있는 URIURI where firmware can be downloaded ConnectionInfoConnectionInfo ssidssid stringstring 접속하고자 하는 SSIDThe SSID you want to connect to passwordpassword stringstring 접속하고자 하는 SSID의 암호The password of the SSID you want to connect to -- resultresult hexhex 0x01 : Success
0x00 : Fail
0x01: Success
0x00: Fail

Json 형태의 적용 메시지는 다음과 같다.The application message of Json type is as follows.

# ApplyRequest# ApplyRequest

{{

"apConnection": {"apConnection": {

"ssid": “test”,"ssid": "test",

"password": "test""password": "test"

}}

}}

#Apply Result#Apply Result

{{

"result": 01  "result": 01

}}

또한, 서버(120)와 프록시(110) 사이에서, 서버(120)는 단말(130)로부터 적용을 요청하는 메시지를 수신하면 이를 프록시(110)에 전송하는데, 이때 적용 메시지는 HTTP프로토콜을 사용하며, 적용 메시지의 구조 및 이에 관한 설명은 [표 28] 및 [표 29]에 나타내었다.Also, between the server 120 and the proxy 110, when the server 120 receives a message requesting application from the terminal 130, the server 120 transmits the message to the proxy 110. In this case, the application message uses the HTTP protocol , The structure of the application message and the description thereof are shown in [Table 28] and [Table 29].

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {deviceId}/v{1}/apply/update
(Apply 요청)
{deviceId} / v {1} / apply / update
(Apply request)
PUTPUT firmwareUrifirmwareUri stringstring truetrue 400,500 시 Error 메시지 참고400,500 Note the error message
{deviceId}/v{1}/apply/rollBack
(Apply 요청)
{deviceId} / v {1} / apply / rollBack
(Apply request)
PUTPUT rollback
(object)
rollback
(object)
RollBackInfoRollBackInfo truetrue 400,500 시 Error 메시지 참고400,500 Note the error message
{deviceId}/v{1}/apply/apConnection
(Apply 요청)
{deviceId} / v {1} / apply / apConnection
(Apply request)
PUTPUT apConnection
(object)
apConnection
(object)
ConnectionInfoConnectionInfo truetrue 400,500 시 Error 메시지 참고400,500 Note the error message
{serverId}/v{1}/{deviceId}/apply/{applyName}/result
(Apply 결과)
{serverId} / v {1} / {deviceId} / apply / {applyName} / result
(Apply result)
PUTPUT resultresult hexhex truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

Object NameObject Name MembersMembers TypeType DescriptionDescription -- firmwareUrifirmwareUri stringstring Firmware를 다운로드 할 수 있는 URIURI where firmware can be downloaded RollBackInfoRollBackInfo firmwareVersionfirmwareVersion stringstring Rollback하고자 하는 펌웨어 버전Firmware version you want to rollback firmwareUrifirmwareUri stringstring Firmware를 다운로드 할 수 있는 URIURI where firmware can be downloaded ConnectionInfoConnectionInfo ssidssid stringstring 접속하고자 하는 SSIDThe SSID you want to connect to passwordpassword stringstring 접속하고자 하는 SSID의 암호The password of the SSID you want to connect to -- resultresult hexhex 0x01 : Success
0x00 : Fail
0x01: Success
0x00: Fail

Json 형태의 적용 메시지는 다음과 같다.The application message of Json type is as follows.

# ApplyRequest# ApplyRequest

{{

"apConnection": {"apConnection": {

"ssid": “test”,"ssid": "test",

"password": "test""password": "test"

}}

}}

#Apply Result#Apply Result

{{

"result": 01  "result": 01

}}

또한, 프록시(110)와 전자 장치(100) 사이에서, 프록시(110)는 서버(120)로부터 적용 요청 메시지를 수신하면 CoAP 메시지를 통해 전자 장치(100)에 적용을 요청하고, 전자 장치(100)는 적용 작업이 완료되면 바이너리 프로토콜을 사용하여 그 결과를 프록시(110)에 알린다. 프록시(110)와 전자 장치(100) 사이에서의 적용 메시지는 바이너리 프로토콜과 CoAP 프로토콜을 함께 사용하는데, 바이너리 프로토콜의 구조는 도 4d를 참조하면, 버전(470), 메시지 유형(475), URI 길이(480), URI(485) 및 적용 결과(Apply Result)(490_)으로 구성되며, 이에 관한 설명 및 CoAP 프로토콜에 관한 설명은 [표 30] 및 [표 31]에 나타내었다.Further, between the proxy 110 and the electronic device 100, when the proxy 110 receives the application request message from the server 120, it requests application to the electronic device 100 via the CoAP message, and the electronic device 100 Informs the proxy 110 of the result using the binary protocol when the application operation is completed. The application message between the proxy 110 and the electronic device 100 uses a binary protocol and a CoAP protocol together. Referring to FIG. 4D, the structure of the binary protocol includes a version 470, a message type 475, a URI length (480), URI (485) and Apply Result (490_), and a description thereof and a description of the CoAP protocol are shown in [Table 30] and [Table 31].

Field NameField Name Field SizeField Size DescriptionDescription VersionVersion 1One - 프로토콜 버전 : 0x01- Protocol version: 0x01 Message TypeMessage Type 1One - Apply Complete : 0x04- Apply Complete: 0x04 URI LengthURI Length 22 - URI 문자열의 크기 (Byte)- Size of URI string (Byte) URIURI NN - v{1}/apply/{applyName} 으로 기술- v {1} / apply / {applyName} Apply ResultApply Result 1One - 적용 결과가 정상적으로 잘 이루어졌는지에 대한 여부
· 0x01 : Success
· 0x00 : Fail
- Whether or not the application result is normally well done.
0x01: Success
· 0x00: Fail

Figure 112015072346912-pat00001
Figure 112015072346912-pat00001

페이로드에 기술할 수 있는 데이터는 적용 요청 종류에 따라 업데이트 요청일 때는 업데이트 가능한 파일, 롤백 요청일 때는 원하는 시기의 롤백 파일, AP 접속 요청일 때는 AP의 SSID와 Password로 기술한다. Ack는 일반적인 웹 Ack를 사용한다.The data that can be described in the payload is an updateable file in the case of an update request, a rollback file in a desired time in case of a rollback request, and an SSID and a password of the AP in the case of an AP connection request. Ack uses the usual Web Ack.

한편, 인증(AUTHENTICATION) 메시지는 단말(130)이 전자 장치(100)의 제어 및 관리를 위해 프록시(110)에게 접근 권한 승인을 요청하기 위한 것이다. 단말(130)은 프록시(110)로부터 새로운 장치가 등록되었다는 메시지를 수신하면, 해당 장치에 대한 접근 권한 요청을 위해 전자 장치(100)의 고유 코드를 프록시(110)에 전송한다.The AUTHENTICATION message is for requesting the terminal 130 to approve the access right to the proxy 110 in order to control and manage the electronic device 100. Upon receiving the message that the new device is registered from the proxy 110, the terminal 130 transmits a unique code of the electronic device 100 to the proxy 110 for requesting access to the device.

일 예로, 단말(130)과 서버(120) 사이에서, 인증 메시지는 ‘Request’ 메시지와 ‘Response’ 메시지로 구성되며, 인증이 완료되면 ‘v{1}/{userId}/discovery’의 장치 정보도 함께 업데이트 한다. 인증 메시지의 구조 및 및 이에 관한 설명은 [표 32] 및 [표 33]에 나타내었다.For example, the authentication message is composed of a 'Request' message and a 'Response' message between the terminal 130 and the server 120. When authentication is completed, the device information of 'v {1} / {userId} / discovery' . The structure of the authentication message and the description thereof are shown in [Table 32] and [Table 33].

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {serverId}/v{1}/{userId}/authen
(Authentication 요청)
{serverId} / v {1} / {userId} / authen
(Authentication request)
PUTPUT authenticationReqauthenticationReq AuthenCode
(object)
AuthenCode
(object)
truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

Object NameObject Name MembersMembers TypeType DescriptionDescription AuthenCodeAuthenCode uriuri stringstring 클라우드에서 관리하는 프록시에 연결된 디바이스의 URIThe URI of the device connected to the proxy managed by the cloud serialCodeserialCode stringstring 전자 장치의 고유 코드Unique code of electronic device idid stringstring 사용자 IDUser ID passwordpassword stringstring 사용자 PasswordUser Password typetype hexhex 0x01 : Master Add
0x02 : Master Delete
0x11 : Sub Add
0x12 : Sub Delete
0x01: Master Add
0x02: Master Delete
0x11: Sub Add
0x12: Sub Delete

Json 형태의 인증 메시지는 다음과 같다.The Json type authentication message is as follows.

#Authentication Request#Authentication Request

{{

"authenticationReq": {"authenticationReq": {

"uri": "111.25.51.10/129.254.86.10/a","uri": "111.25.51.10/129.254.86.10/a",

"serialCode": "1234r3-r3r3klnff ","serialCode": "1234r3-r3r3klnff",

"id": “test”,"id": "test",

"password": "test","password": "test",

“type”:00"Type": 00

}}

}}

또한, 서버(120)와 프록시(110) 사이에서, 인증 메시지는 ‘Request’ 메시지와 ‘Response’ 메시지로 구성되며, 인증 메시지의 구조 및 및 이에 관한 설명은 [표 34] 및 [표 35]에 나타내었다.Between the server 120 and the proxy 110, the authentication message includes a 'Request' message and a 'Response' message. The structure and description of the authentication message are shown in Table 34 and Table 35 Respectively.

URIURI MethodMethod RequestRequest Response
(200 OK)
Response
(200 OK)
ErrorError
MembersMembers ValueValue RequiredRequired MembersMembers ValueValue RequiredRequired {deviceId}/v{1}/authen
(Authentication 요청)
{deviceId} / v {1} / authen
(Authentication request)
PUTPUT authenticationReqauthenticationReq AuthenCode
(object)
AuthenCode
(object)
truetrue 400,500 시 Error 메시지 참고400,500 Note the error message

Object NameObject Name MembersMembers TypeType DescriptionDescription AuthenCodeAuthenCode serialCodeserialCode stringstring 전자 장치의 고유 코드Unique code of electronic device idid stringstring 사용자 IDUser ID passwordpassword stringstring 사용자 PasswordUser Password typetype hexhex 0x01 : Master Add
0x02 : Master Delete
0x11 : Sub Add
0x12 : Sub Delete
0x01: Master Add
0x02: Master Delete
0x11: Sub Add
0x12: Sub Delete

Json 형태의 인증 메시지는 다음과 같다.The Json type authentication message is as follows.

#Authentication Request#Authentication Request

{{

"authenticationReq": {"authenticationReq": {

"serialCode": "1234r3-r3r3klnff ","serialCode": "1234r3-r3r3klnff",

"id": “test”,"id": "test",

"password": "test","password": "test",

“type”:00"Type": 00

}}

}}

한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다.While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the invention.

그러므로 본 발명의 범위는 설명된 실시 예에 국한되지 않으며, 후술되는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the scope of the appended claims, and equivalents thereof.

100: WoT 가전 110: WoT 프록시
120: 클라우드 서버 130: 스마트 단말
100: WoT Appliances 110: WoT Proxy
120: Cloud server 130: Smart terminal

Claims (18)

전자 장치가 수행하는 홈 네트워크 서비스를 제공하기 위한 방법에 있어서,
프록시에 광고 메시지를 전송하는 과정과;
상기 프록시로부터 상기 전자 장치의 등록을 위한 정보를 요청하는 제1 등록 메시지를 수신하는 과정과;
상기 프록시에 상기 전자 장치의 등록을 위한 정보를 포함하는 제2 등록 메시지를 전송하는 과정과;
상기 프록시로부터 상기 전자 장치의 등록 상태 업데이트 요청하는 제3 등록 메시지를 수신하는 과정을 포함하고,
상기 등록을 위한 정보는 서버에 등록된 단말의 아이디 및 비밀번호, 상기 단말 정보, 상기 전자 장치의 고유코드를 포함하고,
상기 전자 장치와 상기 프록시 사이에 전송되는 메시지는 CoAP 기반의 바이너리 형태인, 방법.
A method for providing a home network service performed by an electronic device,
Transmitting an advertisement message to the proxy;
Receiving a first registration message requesting information for registration of the electronic device from the proxy;
Transmitting a second registration message including information for registration of the electronic device to the proxy;
And receiving a third registration message requesting a registration status update of the electronic device from the proxy,
Wherein the information for registration includes an ID and a password of the terminal registered in the server, the terminal information, and a unique code of the electronic device,
Wherein the message transmitted between the electronic device and the proxy is a CoAP-based binary form.
프록시가 수행하는 홈 네트워크 서비스를 제공하기 위한 방법에 있어서,
전자 장치로부터 광고 메시지를 수신하는 과정과;
상기 전자 장치에 상기 전자 장치의 등록을 위한 정보를 요청하는 제1 등록 메시지를 전송하는 과정과;
상기 전자 장치로부터 상기 전자 장치의 등록을 위한 정보를 포함하는 제2 등록 메시지를 수신하는 과정과;
상기 전자 장치에 상기 전자 장치의 등록 상태 업데이트 요청하는 제3 등록 메시지를 전송하는 과정과;
서버에 상기 전자 장치의 등록을 요청하기 위해 등록을 위한 정보를 포함하는 제4 등록 메시지를 전송하는 과정을 포함하고,
상기 등록을 위한 정보는 서버에 등록된 단말의 아이디 및 비밀번호, 상기 단말 정보, 상기 전자 장치의 고유코드를 포함하고,
상기 전자 장치와 상기 프록시 사이에 전송되는 메시지는 CoAP 기반의 바이너리 형태이고, 상기 서버와 상기 프록시 사이에 전송되는 메시지는 HTTP 기반의 Json 형태인, 방법.
A method for providing a home network service performed by a proxy,
Receiving an advertisement message from an electronic device;
Sending a first registration message to the electronic device to request information for registration of the electronic device;
Receiving a second registration message including information for registration of the electronic device from the electronic device;
Transmitting a third registration message requesting the electronic device to update the registration status of the electronic device;
And transmitting a fourth registration message including information for registration to request registration of the electronic device to the server,
Wherein the information for registration includes an ID and a password of the terminal registered in the server, the terminal information, and a unique code of the electronic device,
Wherein the message transmitted between the electronic device and the proxy is in a CoAP based binary form and the message transmitted between the server and the proxy is in an HTTP based Json form.
서버가 수행하는 홈 네트워크 서비스를 제공하기 위한 방법에 있어서,
프록시로부터 전자 장치의 등록을 요청하기 위해 등록을 위한 정보를 포함하는 제4 등록 메시지를 수신하는 과정과;
상기 전자 장치가 상기 서버에 등록되었음을 나타내는 제5 등록 메시지를 단말로 전송하는 과정과;
상기 전자 장치의 등록 완료를 나타내는 제6 등록 메시지를 상기 프록시로 전송하는 과정을 포함하고,
상기 등록을 위한 정보는 서버에 등록된 단말의 아이디 및 비밀번호, 상기 단말 정보, 상기 전자 장치의 고유코드를 포함하고,
상기 서버와 상기 프록시, 상기 단말 간에 전송되는 메시지는 HTTP 기반의 Json 형태인, 방법.
A method for providing a home network service performed by a server,
Receiving a fourth registration message including information for registration to request registration of an electronic device from a proxy;
Transmitting a fifth registration message to the terminal indicating that the electronic device is registered in the server;
And transmitting a sixth registration message to the proxy indicating completion of registration of the electronic device,
Wherein the information for registration includes an ID and a password of the terminal registered in the server, the terminal information, and a unique code of the electronic device,
Wherein the message transmitted between the server, the proxy, and the terminal is of the HTTP-based Json type.
삭제delete 제1항 또는 제2항에 있어서,
상기 광고 메시지는 바이너리 프로토콜을 이용하며, 프로토콜 버전, 메시지 유형, URI 길이, 전자 장치의 URI, 전자 장치의 등록 여부에 관한 정보 중 적어도 하나를 포함하는 방법.
3. The method according to claim 1 or 2,
Wherein the advertisement message uses a binary protocol and comprises at least one of a protocol version, a message type, a URI length, a URI of the electronic device, and information on whether or not the electronic device is registered.
제2항에 있어서,
상기 광고 메시지를 수신하는 과정은,
상기 서버에 상기 광고 메시지를 수신함을 알려주는 알림 메시지를 전송하는 과정을 포함하며,
상기 알림 메시지는 메시지 전달을 위한 URI, Restful 메시지 형식(Method), 전달하고자 하는 요청(Request) 중 적어도 하나를 포함하며,
상기 요청은 프록시에서 전자 장치를 매핑하고 있는 외부 URI, 프록시에 전자 장치의 등록 여부에 관한 정보 중 적어도 하나를 포함하는 방법.
3. The method of claim 2,
The receiving of the advertisement message comprises:
And transmitting a notification message informing the server that the advertisement message is received,
The notification message includes at least one of a URI for message delivery, a Restful message format, and a request to be delivered,
Wherein the request comprises at least one of an external URI mapping the electronic device at the proxy, and information about whether the electronic device is registered with the proxy.
삭제delete 제1항 또는 제2항에 있어서,
상기 제1 등록 메시지, 상기 제2 등록 메시지 및 상기 제3 등록 메시지는 CoAP 프로토콜을 사용하며, 확인형 메시지인지 여부에 관한 메시지 유형(Message Type), Restful 메시지 형식(Method), 시리얼 코드와 사용자 정보 및 등록 상태 업데이트에 관한 URI, 전자 장치의 등록 여부에 관한 정보를 포함하는 페이로드, 전자 장치의 시리얼 코드와 사용자 정보 및 등록 업데이트 수행 결과에 관한 정보를 포함하는 ACK 중 적어도 하나를 포함하는 방법.
3. The method according to claim 1 or 2,
The first registration message, the second registration message, and the third registration message use a CoAP protocol and include a message type related to whether the message is a confirmation type message, a Restful message format, a serial code, And an ACK including information about a URI relating to the registration status update, a payload including information about whether or not the electronic device is registered, a serial code and user information of the electronic device, and a result of performing the registration update.
제2항 또는 제3항에 있어서,
상기 제4 등록 메시지는 메시지 전달을 위한 URI, Restful 메시지 형식, 요청 메시지에 대한 응답 중 적어도 하나를 포함하며,
상기 요청은 프록시에 전자 장치를 매핑하고 있는 외부 URI, 전자 장치의 고유 코드, 사용자 ID, 사용자 비밀번호, 사용자 전화번호 중 적어도 하나를 포함하는 방법.
The method according to claim 2 or 3,
Wherein the fourth registration message includes at least one of a URI for message delivery, a message format for a Restful message, and a response to a request message,
Wherein the request comprises at least one of an external URI mapping an electronic device to a proxy, a unique code of the electronic device, a user ID, a user password, and a user telephone number.
제3항에 있어서,
상기 제5 등록 메시지는 바이너리 프로토콜을 사용하며,
프로토콜 버전, 메시지 유형, URI 길이, 전자 장치의 URI 중 적어도 하나를 포함하는 방법.
The method of claim 3,
Wherein the fifth registration message uses a binary protocol,
Protocol version, message type, URI length, and URI of the electronic device.
제2항에 있어서,
상기 전자 장치에 상기 전자 장치에 관한 정보를 요청하기 위한 정보 메시지를 전송하는 과정을 더 포함하며,
상기 정보 메시지는 확인형 메시지인지 여부에 관한 메시지 유형(Message Type), Restful 메시지 형식(Method), 전자 장치의 정보에 관한 URI, 전자 장치에 관한 정보를 포함하는 ACK 중 적어도 하나를 포함하는 방법.
3. The method of claim 2,
Further comprising the step of transmitting an information message for requesting information on the electronic device to the electronic device,
Wherein the information message comprises at least one of a message type relating to whether the message is an acknowledgment type message, a Restful message type, a URI relating to information of the electronic device, and an ACK including information about the electronic device.
제3항에 있어서,
상기 프록시에 상기 전자 장치에 관한 정보를 요청하기 위한 정보 메시지를 전송하는 과정과;
상기 단말에 상기 전자 장치에 관한 정보를 전송하기 위한 정보 메시지를 전송하는 과정을 더 포함하며,
상기 정보 메시지는 메시지 전달을 위한 URI, Restful 메시지 형식, 전달하고자 하는 요청(Request) 및 요청 메시지에 대한 응답 중 적어도 하나를 포함하는 방법.
The method of claim 3,
Sending an information message to the proxy to request information about the electronic device;
And transmitting an information message for transmitting information on the electronic device to the terminal,
Wherein the information message includes at least one of a URI for message delivery, a Restful message format, a Request to be delivered, and a response to a request message.
제1항에 있어서,
상기 프록시에 이벤트 메시지를 전송하는 과정을 더 포함하며,
상기 이벤트 메시지는 바이너리 프로토콜을 사용하고, 프로토콜 버전, 메시지 유형, URI 길이, 이벤트 정보를 관리하는 인터넷 주소에 관한 URI 중 적어도 하나를 포함하는 방법.
The method according to claim 1,
And transmitting an event message to the proxy,
Wherein the event message includes at least one of a protocol version, a message type, a URI length, and a URI related to an Internet address that manages event information.
제2항에 있어서,
상기 전자 장치에 이벤트 메시지를 전송하는 과정을 더 포함하며,
상기 이벤트 메시지는 바이너리 프로토콜 또는 CoAP 프로토콜을 사용하며, 상기 이벤트 메시지는 URI 길이, 이벤트 정보를 관리하는 인테넛 주소에 관한 URI, 확인형 메시지인지 여부에 관한 메시지 유형(Message Type), Restful 메시지 형식(Method) 및 업데이트된 URI 컨텐츠 값에 관한 정보를 포함하는 ACK 중 적어도 하나를 포함하는 방법.
3. The method of claim 2,
Further comprising transmitting an event message to the electronic device,
The event message uses a binary protocol or a CoAP protocol, and the event message includes a URI length, a URI regarding an intuitive address for managing event information, a message type related to whether the message is a confirmation type message, Method) and an ACK containing information about the updated URI content value.
제3항에 있어서,
상기 프록시로부터 이벤트 메시지를 수신하는 과정과;
상기 단말로부터 이벤트 메시지를 수신하는 과정을 더 포함하며,
상기 이벤트 메시지는 메시지 전달을 위한 인터넷 주소에 관한 URI, Restful 메시지 형식, 전달하고자 하는 요청(Request) 및 요청 메시지에 대한 응답 중 적어도 하나를 포함하는 방법.
The method of claim 3,
Receiving an event message from the proxy;
Further comprising the step of receiving an event message from the terminal,
Wherein the event message includes at least one of a URI relating to an Internet address for message delivery, a Restful message format, a request to be delivered, and a response to a request message.
제3항에 있어서,
상기 단말로부터 상기 전자 장치의 기능 수행을 위한 적용 메시지를 수신하는 과정과;
프록시에 상기 전자 장치의 기능 수행을 위한 적용 메시지를 전송하는 과정을 더 포함하며,
상기 적용 메시지는 메시지 전달을 위한 인터넷 주소에 관한 URI, Restful 메시지 형식, 전달하고자 하는 요청(Request) 및 요청 메시지에 대한 응답 중 적어도 하나를 포함하며,
상기 요청은 펌웨어를 다운로드 할 수 있는 URI, 롤백(Rollback) 하고자 하는 펌웨어 버전, 접속하고자 하는 SSID, 접속하고자 하는 SSID의 암호, 적용 수행 결과에 대한 정보 중 적어도 하나를 포함하는 방법.
The method of claim 3,
Receiving an application message for performing a function of the electronic device from the terminal;
And transmitting an application message for performing the function of the electronic device to the proxy,
The application message includes at least one of a URI regarding an Internet address for message delivery, a Restful message format, a request to be delivered, and a response to a request message,
Wherein the request includes at least one of a URI capable of downloading firmware, a firmware version to be rolled back, an SSID to be connected, a password of an SSID to be connected, and information on a result of application.
제2항에 있어서,
상기 전자 장치에게 기능 수행을 위한 적용 메시지를 전송하는 과정을 더 포함하며,
상기 적용 메시지는 CoAP 프로토콜을 사용하고, 확인형 메시지인지 여부에 관한 메시지 유형(Message Type), Restful 메시지 형식(Method), 적용의 인터넷 주소에 관한 URI, 적용되는 기능에 관한 정보를 포함하는 페이로드, 응답을 위한 ACK 중 적어도 하나를 포함하는 방법.
3. The method of claim 2,
And transmitting an application message for performing a function to the electronic device,
The application message uses the CoAP protocol and includes a message type (Message Type) related to whether the message is a confirmation type message, a Restful message format (Method), a URI related to the Internet address of the application, , And an ACK for a response.
제2항에 있어서,
상기 전자 장치로부터 기능 수행을 위한 적용 메시지를 수신하는 과정을 더 포함하며,
상기 적용 메시지는 바이너리 프로토콜을 사용하며, 프로토콜 버전, 메시지 유형, URI 길이, 적용의 인터넷 주소에 관한 URI, 적용 결과에 관한 정보 중 적어도 하나를 포함하는 방법.
3. The method of claim 2,
Further comprising receiving an application message for performing a function from the electronic device,
Wherein the application message uses a binary protocol and comprises at least one of a protocol version, a message type, a URI length, a URI related to an Internet address of application, and information on an application result.
KR1020150105364A 2014-10-21 2015-07-24 Apparatus for providing home network service and method thereof KR102000234B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/918,682 US9749146B2 (en) 2014-10-21 2015-10-21 Apparatus and methods for providing home network service

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020140142682 2014-10-21
KR20140142682 2014-10-21

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020190082700A Division KR102216103B1 (en) 2014-10-21 2019-07-09 Apparatus for providing home network service and method thereof

Publications (2)

Publication Number Publication Date
KR20160046711A KR20160046711A (en) 2016-04-29
KR102000234B1 true KR102000234B1 (en) 2019-07-16

Family

ID=55915807

Family Applications (6)

Application Number Title Priority Date Filing Date
KR1020150105364A KR102000234B1 (en) 2014-10-21 2015-07-24 Apparatus for providing home network service and method thereof
KR1020150105267A KR102005059B1 (en) 2014-10-21 2015-07-24 Apparatus for providing home network service and method thereof
KR1020190082700A KR102216103B1 (en) 2014-10-21 2019-07-09 Apparatus for providing home network service and method thereof
KR1020190089012A KR102216111B1 (en) 2014-10-21 2019-07-23 Apparatus for providing home network service and method thereof
KR1020210017735A KR102258608B1 (en) 2014-10-21 2021-02-08 Apparatus for providing home network service and method thereof
KR1020210066715A KR102312994B1 (en) 2014-10-21 2021-05-25 Apparatus for providing home network service and method thereof

Family Applications After (5)

Application Number Title Priority Date Filing Date
KR1020150105267A KR102005059B1 (en) 2014-10-21 2015-07-24 Apparatus for providing home network service and method thereof
KR1020190082700A KR102216103B1 (en) 2014-10-21 2019-07-09 Apparatus for providing home network service and method thereof
KR1020190089012A KR102216111B1 (en) 2014-10-21 2019-07-23 Apparatus for providing home network service and method thereof
KR1020210017735A KR102258608B1 (en) 2014-10-21 2021-02-08 Apparatus for providing home network service and method thereof
KR1020210066715A KR102312994B1 (en) 2014-10-21 2021-05-25 Apparatus for providing home network service and method thereof

Country Status (1)

Country Link
KR (6) KR102000234B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022154220A1 (en) * 2021-01-13 2022-07-21 삼성전자 주식회사 Electronic device and method for changing binary

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210009670A (en) * 2019-07-17 2021-01-27 삼성전자주식회사 Home network system, server and control method of server
KR102042186B1 (en) 2019-08-08 2019-11-27 마인엔지니어링건축사사무소 주식회사 Method for home networking system with customizable and controllable to user
KR102042194B1 (en) 2019-08-08 2019-11-07 마인엔지니어링건축사사무소 주식회사 System for home network with efficient control
KR102319511B1 (en) * 2020-10-15 2021-10-28 김재학 System for operation and service provision of IoT platform
KR20230072205A (en) * 2021-11-17 2023-05-24 삼성전자주식회사 Apparatus and method for registering home appliance to a server

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7703134B2 (en) * 2005-01-28 2010-04-20 Sony Corporation De-authentication of network component
KR20070021903A (en) * 2005-08-19 2007-02-23 한국전자통신연구원 The transport method of mobile IP broadcasting message in unmanaged mode for high speed portable internet
US7956735B2 (en) * 2006-05-15 2011-06-07 Cernium Corporation Automated, remotely-verified alarm system with intrusion and video surveillance and digital video recording
CN101207613B (en) * 2006-12-21 2012-01-04 松下电器产业株式会社 Method, system and apparatus for authentication of striding network area information communication
US20110047253A1 (en) * 2009-08-19 2011-02-24 Samsung Electronics Co. Ltd. Techniques for controlling gateway functionality to support device management in a communication system
CN102123494B (en) * 2010-01-09 2014-08-20 华为终端有限公司 Method, device and system for logging out and revoking a femto base station
EP2553643A4 (en) * 2010-03-31 2014-03-26 Mediamath Inc Systems and methods for integration of a demand side platform
JP5894193B2 (en) * 2011-02-11 2016-03-23 インターデイジタル パテント ホールディングス インコーポレイテッド System, method and apparatus for managing machine-to-machine (M2M) entities
KR101867813B1 (en) * 2011-04-12 2018-06-18 엘지전자 주식회사 Server system and online service for device management
KR102069876B1 (en) * 2012-12-21 2020-01-23 삼성전자주식회사 Electronic device, Personal cloud apparatus, Personal cloud system and Method for registering personal cloud apparatus in user portal server thereof
US20140254466A1 (en) * 2013-02-21 2014-09-11 Qualcomm Incorporated Interleaving Advertising Packets For Improved Detectability And Security
KR102056080B1 (en) * 2013-03-19 2019-12-16 삼성전자주식회사 Method and apparatus for providing state information

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022154220A1 (en) * 2021-01-13 2022-07-21 삼성전자 주식회사 Electronic device and method for changing binary

Also Published As

Publication number Publication date
KR20210064147A (en) 2021-06-02
KR20160046711A (en) 2016-04-29
KR20190084932A (en) 2019-07-17
KR20210019046A (en) 2021-02-19
KR102312994B1 (en) 2021-10-13
KR102005059B1 (en) 2019-07-30
KR102216111B1 (en) 2021-02-16
KR20190089811A (en) 2019-07-31
KR102216103B1 (en) 2021-02-16
KR20160046710A (en) 2016-04-29
KR102258608B1 (en) 2021-06-01

Similar Documents

Publication Publication Date Title
KR102216103B1 (en) Apparatus for providing home network service and method thereof
US11082421B2 (en) Bootstrap mechanism for endpoint devices
US9749146B2 (en) Apparatus and methods for providing home network service
US10575153B2 (en) Enhanced operations between service layer and management layer in an M2M system by allowing the execution of a plurality of commands on a plurality of devices
US10951429B2 (en) Server initiated remote device registration
US11032739B2 (en) Dynamic header compression for constrained networks
KR101950122B1 (en) Interworking light weight machine-to-machine protocol with device management protocol
KR101740449B1 (en) Method for changing gateway in machine-to-machine (m2m) system and device therefor
US10972428B2 (en) Assignment of tenancy to devices
US11671306B2 (en) Enhancing native service layer device management functionality
KR20190065405A (en) Enabling Multicast for Service Layer Group Operations
CN109981668A (en) Common apparatus Internet of Things communication means based on the extensive agreement of MQTT
US10405256B2 (en) Technique for access by a master device to a value taken by a characteristic managed by a peripheral device
US10440551B2 (en) Technique for determining the presence of a peripheral device in a service area of a local network
KR20130077734A (en) Information service system and method based on the information exchange protocol among the milti-devices
KR20140095410A (en) Method and Apparatus for Initial Configuration System for the Wireless Devices by using the Wireless Gateway at the Internet Environment
WO2020088787A1 (en) Compressed lwm2m registration
CN114268979A (en) Safe communication method for north interface of network management terminal
KR20090023918A (en) Device management control
KR20130069298A (en) Device architecture system
JP2015019220A (en) Communication device, communication method, and communication program

Legal Events

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