Nothing Special   »   [go: up one dir, main page]

KR20170119098A - Apparatus and method for bluetooth communication - Google Patents

Apparatus and method for bluetooth communication Download PDF

Info

Publication number
KR20170119098A
KR20170119098A KR1020160046825A KR20160046825A KR20170119098A KR 20170119098 A KR20170119098 A KR 20170119098A KR 1020160046825 A KR1020160046825 A KR 1020160046825A KR 20160046825 A KR20160046825 A KR 20160046825A KR 20170119098 A KR20170119098 A KR 20170119098A
Authority
KR
South Korea
Prior art keywords
bluetooth device
gateway
coap
layer
message
Prior art date
Application number
KR1020160046825A
Other languages
Korean (ko)
Other versions
KR102503257B1 (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 KR1020160046825A priority Critical patent/KR102503257B1/en
Publication of KR20170119098A publication Critical patent/KR20170119098A/en
Application granted granted Critical
Publication of KR102503257B1 publication Critical patent/KR102503257B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L67/28
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04W4/008
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/08Upper layer protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/16Gateway arrangements

Landscapes

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

Abstract

블루투스 통신을 위한 방법 및 장치가 제공된다. 블루투스 장치는 게이트웨이에 의해 제공되는 게이트웨이 기능을 통해 외부의 다른 장치와 통신한다. 블루투스 장치의 프로토콜 스택에 있어서, CoAP 계층은 L2CAP 계층의 바로 상위의 계층이다. 또한, 게이트웨이의 블루투스 통신을 위한 프로토콜 스택에 있어서, CoAP 계층은 L2CAP 계층의 바로 상위의 계층이다. 프로토콜 스택 중 일부가 생략됨에 따라, 블루투스 장치 및 게이트웨이는 고효율의 통신을 제공한다.A method and apparatus for Bluetooth communication are provided. The Bluetooth device communicates with other external devices through a gateway function provided by the gateway. In the protocol stack of a Bluetooth device, the CoAP layer is directly above the L2CAP layer. Also, in the protocol stack for the Bluetooth communication of the gateway, the CoAP layer is directly above the L2CAP layer. As part of the protocol stack is omitted, Bluetooth devices and gateways provide highly efficient communications.

Description

블루투스 통신을 위한 장치 및 방법{APPARATUS AND METHOD FOR BLUETOOTH COMMUNICATION}[0001] APPARATUS AND METHOD FOR BLUETOOTH COMMUNICATION [0002]

아래의 실시예들은 블루투스 통신을 하기 위한 방법 및 장치에 관한 것으로 보다 상세히는 사물인터넷을 위해 블루투스 통신을 위한 간략한 프로토콜 스택을 갖는 방법 및 장치가 제공된다.The following embodiments relate to a method and apparatus for Bluetooth communication, and more particularly to a method and apparatus having a simplified protocol stack for Bluetooth communication for the Internet of Things.

블루투스(Bluetooth) 기술은 근거리 무선 통신 기술로서, 10m 이내의 주변의 기기들과의 통신을 제공하는 기술이다. 최근에는, 다양한 센서를 지원할 수 있도록 저전력 규격인 블루투스 로우 에너지(Bluetooth Low Enengy; BLE) 규격이 개발되었다.Bluetooth technology is a short-range wireless communication technology that provides communication with peripheral devices within 10 meters. In recent years, a Bluetooth low energy (BLE) standard has been developed to support various sensors.

블루투스 표준으로서, 블루투스 기기(device) 및 서비스의 종류 별로 프로파일 규격을 제정되고 있다. 그러나, 프로파일 규격의 개발은 블루투스 기기가 새롭게 개발되는 속도를 따라가지 못하고 있다. 따라서, 블루투스 기기의 제조사가 상위 계층(layer)의 통신 규격 또는 어플리케이션 프로그래밍 인터페이스(Application Programming Interface; API)를 제공하고 있다.As a Bluetooth standard, a profile specification is established for each type of Bluetooth device and service. However, the development of profile specifications is not keeping pace with the speed at which Bluetooth devices are newly developed. Accordingly, the manufacturer of the Bluetooth device provides an upper layer communication standard or an application programming interface (API).

이러한 상황은 서로 다른 제품들 간의 연동 또는 서로 다른 제조사의 제품들 간의 연동을 어렵게 만든다. 예를 들면, 스마트폰(smartphone)과 같은 블루투스 기기는 다양한 다른 블루투스 기기들을 검색하고, 검색된 다른 블루투스 기기들과 연동(interoperate)되어야 한다. 이러한 연동이 블루투스 기기의 제조사에 의해 작성된 프로그램(예를 들면, 앱(App))을 통해서만 이루어진다면, 호환성 및 연동성(interoperability)에 있어서 문제가 발생한다.This situation makes interworking between different products or interworking between products of different manufacturers difficult. For example, a Bluetooth device, such as a smartphone, must search for a variety of other Bluetooth devices and interoperate with other Bluetooth devices searched. If this interlocking is performed only through a program (e.g., an App) created by the manufacturer of the Bluetooth device, there is a problem in compatibility and interoperability.

한편, 인터넷을 통해 연결된 다양한 사물들이 인터넷에 연결되어 서로 연동되는 사물인터넷(Internet of Things; IoT) 시대로 진입함에 따라, 블루투스 기기들의 인터넷으로의 연동을 가능하게 하는 방법에 대한 기술 표준들이 제정되었다.Meanwhile, as the various objects connected to the Internet are connected to the Internet and entered into the Internet of Things (IoT) era, a technical standard has been established for a method of enabling the Bluetooth devices to interoperate with the Internet .

이러한 기술 표준들로서, 1) 블루투스 기기가 알이에스티(Representational State Transfer; REST) API 를 지원하게 하는 방법, 2) 에이치티티피(HyperText Transfer Protocol; HTTP) 프록시(proxy)를 통해 블루투스 기기가 인터넷에 액세스 하는 방법 및 3) 6엘오더블유피에이엔(IPv6 over Low power Wireless Personal Area Networks; 6LoWPAN), 아이피브이6(Internet Protocol version 6; IPv6) 및 유디피(User Datagram Protocol; UDP)의 계층들을 엘2씨에이피(Link Layer Control and Adaptation Protocol; L2CAP)의 상위의 계층으로서 구현하는 인터넷 프로토콜 지원 프로파일(Internet Protocol Support Profile Specification; IPSP)이 있다. 아래에서는 3가지의 방법들에 대해 간략하게 살펴본다.These technical standards include: 1) how a Bluetooth device supports a Representational State Transfer (REST) API; 2) how a Bluetooth device is connected to the Internet via a HyperText Transfer Protocol (HTTP) proxy; 3) IPv6 over low power wireless personal area networks (6LoWPAN), Internet Protocol version 6 (IPv6) and User Datagram Protocol (UDP) There is an Internet Protocol Support Profile Specification (IPSP) which is implemented as an upper layer of a L2CAP (Link Layer Control and Adaptation Protocol). Below we briefly discuss the three methods.

1) 블루투스 기기가 REST API를 지원하는 방법1) How does a Bluetooth device support the REST API?

블루투스 인터넷 게이트웨이(gateway)는 인터넷을 통해 클라이언트로부터 요청을 수신한다. 블루투스 인터넷 게이트웨이는 요청을 블루투스 기기의 에이티티(Attribute Protocol; ATT) 및/또는 지에이티티(Generic Attribute Profile; GATT)로 변환한다. 상기의 변환을 통해 블루투스 기기 및 클라이언트 간의 통신이 이루어진다.A Bluetooth Internet gateway receives a request from a client over the Internet. The Bluetooth Internet gateway converts the request to an attribute protocol (ATT) and / or a generic attribute profile (GATT) of the Bluetooth device. Communication between the Bluetooth device and the client is performed through the above conversion.

이러한 방법은 기존의 블루투스 스택을 그대로 사용한다. 기존의 블루투스 스택을 그대로 사용함에 따라, 이러한 방법은 전술된 호환성 및 연동성의 문제를 그대로 갖는다. 따라서, 블루투스 인터넷 게이트웨이는 다양한 블루투스 기기들의 내부의 속성을 인식할 수 있어야 하며, 서로 다른 내부의 속성을 갖는 다양한 블루투스 기기들과 연동할 수 있어야 한다. 또한, 외부의 서버 또한 블루투스 기기의 내부의 속성을 미리 알고 있어야 한다.This method uses the existing Bluetooth stack. As the existing Bluetooth stack is used intact, this method has the problems of compatibility and interoperability described above. Accordingly, the Bluetooth Internet gateway should be able to recognize the internal properties of various Bluetooth devices and be able to interoperate with various Bluetooth devices having different internal attributes. In addition, the external server must also know the internal properties of the Bluetooth device in advance.

이러한 방법은 응용(application) 계층의 표준이 아니기 때문에, 이러한 방법이 사용될 경우, 수집된 데이터의 인식이 어렵다.Since this method is not a standard for the application layer, it is difficult to recognize the collected data when this method is used.

2) HTTP 프록시를 통해 블루투스 기기가 인터넷에 액세스 하는 방법2) How a Bluetooth device accesses the Internet through an HTTP proxy

이러한 방법에서, 블루투스 HTTP 프록시 서비스(HTTP Proxy Service; HPS) 클라이언트 및 블루투스 HPS 서버 간의 블루투스 구간에서는 기존의 블루투스 스택이 그대로 사용된다. 블루투스 HPS 서버는 게이트웨이의 기능을 수행한다. 블루투스 HPS 서버는 자체의 매핑을 통해 블루투스의 프로토콜을 HTTP와 같은 인터넷 프로토콜로 변환한다. 이러한 변환에 의해 블루투스 HPS 클라이언트 및 원격의 HTTP 서버 간의 통신이 이루어진다.In this way, the Bluetooth stack between the Bluetooth Proxy Service (HPS) client and the Bluetooth HPS server is used as it is. The Bluetooth HPS server functions as a gateway. The Bluetooth HPS server translates the Bluetooth protocol into an internet protocol such as HTTP through its own mapping. This conversion enables communication between the Bluetooth HPS client and the remote HTTP server.

이러한 방식에서, 게이트웨이의 기능을 수행하는 블루투스 HPS 서버가 블루투스 기기의 속성을 모두 알고 있어야 한다. 따라서, 이러한 방식이 사용될 경우, 통신에 있어서 연동성 및 호환성이 떨어질 수 있다.In this way, the Bluetooth HPS server performing the gateway function must know all the properties of the Bluetooth device. Therefore, when such a scheme is used, interoperability and compatibility in communication may be deteriorated.

3) IPSP를 사용하는 방법.3) How to use IPSP.

IPSP를 사용하는 방법은, 블루투스 ATT 및 GATT 를 사용하지 않고 L2CAP 상에 6LowPAN, IPv6, UDP, TCP 및 응용 계층 스택을 구현한다. 이러한 구현을 통해 통신이 이루어진다. 이러한 방법은, 인터넷 프로토콜을 그대로 블루투스 노드에 탑재하기 때문에, 높은 호환성 및 연동성을 확보할 수 있다.The method of using IPSP implements 6LowPAN, IPv6, UDP, TCP and application layer stack on L2CAP without using Bluetooth ATT and GATT. Communication is achieved through this implementation. In this method, since the Internet protocol is directly mounted on the Bluetooth node, high compatibility and interoperability can be ensured.

그러나, 이러한 방법에 따르면, TCP, IP 및 6LoWPAN의 프로토콜 스택이 그대로 블루투스 노드에서 구현된다. 따라서, 이러한 방법이 사용되면, 메모리 문제, 성능 문제 및 블루투스 네트워크 효율성 문제가 발생한다.However, according to this method, the protocol stack of TCP, IP and 6LoWPAN is implemented in the Bluetooth node as it is. Therefore, when this method is used, memory problems, performance problems, and Bluetooth network efficiency problems arise.

블루투스와 관련하여, 한국공개특허 제2014-0027503호 및 한국등록특허 제10-1397744호 등이 제시된 바 있다.Korean Patent Publication No. 2014-0027503 and Korean Patent No. 10-1397744 have been proposed in connection with Bluetooth.

일 실시예는 국제 표준 프로토콜을 블루투스에 적용함으로써 다양한 현재의 기기 및 미래의 기기에 적용될 수 있는 통신 방법을 제공할 수 있다.One embodiment can provide a communication method that can be applied to various current devices and future devices by applying an international standard protocol to Bluetooth.

일 실시예는 프로토콜 스택 중 일부를 생략함으로써 고효율의 통신을 제공하는 장치 및 방법을 제공할 수 있다.One embodiment may provide an apparatus and method for providing highly efficient communication by omitting some of the protocol stacks.

일 측면에 있어서, 적어도 하나의 프로그램을 수행하는 처리부; 및 블루투스 통신을 수행하는 통신부를 포함하고, 상기 적어도 하나의 프로그램은 CoAP 계층의 코드 및 L2CAP 계층의 코드를 포함하고, 상기 CoAP 계층은 상기 L2CAP 계층의 바로 상위의 계층인 블루투스 장치가 제공된다.In one aspect, there is provided an apparatus comprising: a processing unit for performing at least one program; And a communication unit for performing Bluetooth communication, wherein the at least one program includes a code of a CoAP layer and a code of an L2CAP layer, and the CoAP layer is a layer immediately above the L2CAP layer.

상기 블루투스 장치에서 IP 계층, UDP 계층 및 6LoWPAN 계층은 제외될 수 있다.In the Bluetooth device, the IP layer, the UDP layer, and the 6LoWPAN layer may be excluded.

상기 적어도 하나의 프로그램은 CoAP 지원 프로파일을 포함할 수 있다.The at least one program may include a CoAP support profile.

상기 CoAP 지원 프로파일은 GATT 및 ATT를 통해 상기 블루투스 장치가 CoAP의 기능을 지원한다는 것이 검색되게 할 수 있다.The CoAP support profile may allow the Bluetooth device to search through the GATT and ATT to support the function of the CoAP.

상기 블루투스 장치는 CoAP GET 메시지를 포함하는 브로드캐스트 메시지를 브로드캐스트하고, 브로드캐스트 메시지에 대응하는 응답 메시지를 게이트웨이로부터 수신함으로써 상기 게이트웨이에 대한 정보를 획득할 수 있다.The Bluetooth device can obtain information about the gateway by broadcasting a broadcast message including a CoAP GET message and receiving a response message corresponding to the broadcast message from the gateway.

상기 블루투스 장치는 브로드캐스트 메시지를 관찰하고, 상기 브로드캐스트 메시지를 수신함에 따라 상기 브로드캐스트 메시지를 브로드캐스트한 게이트웨이를 발견할 수 있다.The Bluetooth device observes a broadcast message and may discover a gateway that broadcasts the broadcast message upon receiving the broadcast message.

상기 블루투스 장치는 상기 블루투스 장치를 게이트웨이에 등록하기 위해 상기 블루투스 장치에 대한 정보 및 상기 블루투스 장치의 리소스의 경로를 포함하는 데이터 메시지를 상기 게이트웨이로 전송할 수 있고, 상기 블루투스 장치에 대한 정보가 기록된 경로를 포함하는 응답 메시지를 상기 게이트웨이로부터 수신할 수 있다.The Bluetooth device may transmit to the gateway a data message including information on the Bluetooth device and a resource path of the Bluetooth device to register the Bluetooth device in the gateway, From the gateway.

상기 블루투스 장치는 상기 경로를 사용하여 상기 블루투스 장치의 리소스를 상기 게이트웨이에 등록할 수 있다.The Bluetooth device can register the resource of the Bluetooth device with the gateway using the path.

다른 일 측에 있어서, 블루투스 장치에 의해 수행되는, 상기 블루투스 장치를 게이트웨이에 등록하는 단계; 및 상기 게이트웨이에 의해 제공되는 게이트웨이 기능을 통해 통신을 수행하는 단계를 포함하고, 상기 블루투스 장치의 프로토콜 스택은 CoAP 계층 및 L2CAP 계층을 포함하고, 상기 CoAP 계층은 상기 L2CAP 계층의 바로 상위의 계층인 통신 방법이 제공된다.On another side, registering the Bluetooth device with a gateway, the Bluetooth device being performed by a Bluetooth device; And performing a communication through a gateway function provided by the gateway, wherein the protocol stack of the Bluetooth device includes a CoAP layer and an L2CAP layer, and the CoAP layer is a layer directly above the L2CAP layer Method is provided.

상기 통신 방법은, 상기 블루투스 장치의 리소스를 상기 게이트웨이에 등록하는 단계를 더 포함할 수 있다.The communication method may further include registering the resource of the Bluetooth device in the gateway.

또 다른 일 측에 있어서, 적어도 하나의 프로그램을 수행하는 처리부; 및 블루투스 통신을 수행하는 통신부를 포함하고, 상기 적어도 하나의 프로그램은 MQTT 계층의 코드 및 L2CAP 계층의 코드를 포함하고, 상기 MQTT 계층은 상기 L2CAP 계층의 바로 상위의 계층인 블루투스 장치가 제공된다.A processing unit for executing at least one program on another side; And a communication unit for performing Bluetooth communication, wherein the at least one program includes a code of an MQTT layer and a code of an L2CAP layer, and the MQTT layer is a layer immediately above the L2CAP layer.

또 다른 일 측에 있어서, 적어도 하나의 프로그램을 수행하는 처리부; 블루투스 통신을 위한 제1 통신부; 및 인터넷과의 연동을 위한 제2 통신부를 포함하고, 상기 적어도 하나의 프로그램은 제1 통신부 용 코드를 포함하고, 상기 제1 통신부 용 코드는 CoAP 계층의 코드 및 L2CAP 계층의 코드를 포함하고, 상기 CoAP 계층은 상기 L2CAP 계층의 바로 상위의 계층인 게이트웨이가 제공된다.A processing unit for executing at least one program on another side; A first communication unit for Bluetooth communication; And a second communication unit for interworking with the Internet, wherein the at least one program includes a code for a first communication unit, the code for the first communication unit includes a code of a CoAP layer and a code of an L2CAP layer, The CoAP layer is provided as a layer directly above the L2CAP layer.

상기 적어도 하나의 프로그램은 프록시 모듈을 포함할 수 있다.The at least one program may comprise a proxy module.

상기 프록시 모듈은 상기 CoAP 계층의 상위의 계층일 수 있다.The proxy module may be an upper layer of the CoAP layer.

상기 프록시 모듈은 상기 제1 통신부를 통해 연결된 블루투스 장치의 주소를 상기 게이트웨이 내부의 URI-경로에 매핑함으로써 상기 블루투스 장치 및 상기 제2 통신부를 통해 연결된 장치 간의 통신을 가능하게 할 수 있다.The proxy module may enable communication between devices connected through the Bluetooth device and the second communication unit by mapping an address of a Bluetooth device connected through the first communication unit to a URI-path inside the gateway.

상기 제1 통신부는 블루투스 장치로부터 CoAP의 요청 메시지를 수신할 수 있다.The first communication unit may receive a CoAP request message from the Bluetooth device.

상기 처리부는 상기 CoAP의 요청 메시지로부터 URI-호스트 및 URI-포트를 제거할 수 있고, 상기 요청 메시지에 IP 헤더 및 UDP 헤더를 세팅할 수 있다.The processing unit may remove the URI-host and the URI-port from the CoAP request message, and may set an IP header and a UDP header in the request message.

상기 제2 통신부는 상기 IP 헤더 및 상기 UDP 헤더가 세팅된 요청 메시지를 외부 장치로 전달할 수 있다.The second communication unit may forward the request message in which the IP header and the UDP header are set to an external device.

상기 제2 통신부는 외부 장치로부터 CoAP의 요청 메시지를 수신할 수 있다.The second communication unit may receive a CoAP request message from an external device.

상기 처리부는 상기 CoAP의 요청 메시지로부터 URI-호스트, URI-포트, URI-경로 중 프리픽스, URI-경로 중 블루투스 장치 식별자, IP 헤더 및 UDP 헤더를 제거할 수 있다.The processing unit may remove URI-host, URI-port, URI-path prefix, URI-path Bluetooth device identifier, IP header, and UDP header from the CoAP request message.

상기 제1 통신부는 상기 URI-호스트, 상기 URI-포트, 상기 프리픽스, 상기 블루투스 장치 식별자, 상기 IP 헤더 및 상기 UDP 헤더가 제거된 요청 메시지를 블루투스 장치로 전달할 수 있다.The first communication unit may transmit a request message to the Bluetooth device in which the URI-host, the URI-port, the prefix, the Bluetooth device identifier, the IP header, and the UDP header are removed.

상기 게이트웨이는 CoAP Ping 요청 메시지를 포함하는 브로드캐스트 메시지를 브로드캐스트하고, 블루투스 장치로부터 상기 CoAP Ping 요청 메시지에 대응하는 CoAP Ping 응답 메시지를 수신함으로써 상기 블루투스 장치를 검출할 수 있다.The gateway can detect the Bluetooth device by broadcasting a broadcast message including a CoAP Ping request message and receiving a CoAP Ping response message corresponding to the CoAP Ping request message from the Bluetooth device.

상기 게이트웨이는 브로드캐스트 메시지를 관찰할 수 있다.The gateway can observe the broadcast message.

상기 게이트웨이는 가상 CoAP Ping 응답 메시지를 포함하는 상기 브로드캐스트 메시지를 수신함에 따라 상기 브로드캐스트 메시지를 브로드캐스트한 블루투스 장치를 발견할 수 있다.Upon receiving the broadcast message including the virtual CoAP Ping response message, the gateway may discover a Bluetooth device that broadcasts the broadcast message.

상기 게이트웨이는 연결 요청 메시지를 블루투스 장치로 전송할 수 있고, 상기 블루투스 장치로부터 상기 블루투스 장치의 리소스의 경로를 포함하는 응답 메시지를 수신할 수 있고, 상기 경로를 포함하는 재질의 메시지를 상기 블루투스 장치로 전송할 수 있고, 상기 경로에 대한 정보를 포함하는 응답 메시지를 상기 블루투스 장치로부터 수신할 수 있다.The gateway can transmit a connection request message to the Bluetooth device, receive a response message including the path of the resource of the Bluetooth device from the Bluetooth device, send a message containing the route to the Bluetooth device And may receive a response message from the Bluetooth device that includes information about the path.

또 다른 일 측에 있어서, 게이트웨이에 의해 수행되는, 블루투스 장치를 검색하는 단계; 및 블루투스 장치에게 게이트웨이 기능을 제공하는 단계를 포함하고, 상기 게이트웨이의 블루투스 통신을 위한 프로토콜 스택은 CoAP 계층 및 L2CAP 계층을 포함하고, 상기 CoAP 계층은 상기 L2CAP 계층의 바로 상위의 계층인 통신 방법이 제공된다.On another side, searching for a Bluetooth device, performed by a gateway; And providing a gateway function to the Bluetooth device, wherein a protocol stack for Bluetooth communication of the gateway includes a CoAP layer and an L2CAP layer, and the CoAP layer is a communication method that is a layer immediately above the L2CAP layer do.

상기 통신 방법은, 상기 블루투스 장치의 리소스를 확인하는 단계를 더 포함할 수 있다.The communication method may further include confirming a resource of the Bluetooth device.

또 다른 일 측에 있어서, 적어도 하나의 프로그램을 수행하는 처리부; 블루투스 통신을 위한 제1 통신부; 및 인터넷과의 연동을 위한 제2 통신부를 포함하고, 상기 적어도 하나의 프로그램은 제1 통신부 용 코드를 포함하고, 상기 제1 통신부 용 코드는 MQTT 계층의 코드 및 L2CAP 계층의 코드를 포함하고, 상기 MQTT 계층은 상기 L2CAP 계층의 바로 상위의 계층인 게이트웨이가 제공된다.A processing unit for executing at least one program on another side; A first communication unit for Bluetooth communication; And a second communication unit for interworking with the Internet, wherein the at least one program includes a code for a first communication unit, the code for the first communication unit includes a code of an MQTT layer and a code of an L2CAP layer, The MQTT layer is provided with a gateway which is a layer immediately above the L2CAP layer.

국제 표준 프로토콜을 블루투스에 적용함으로써 다양한 현재의 기기 및 미래의 기기에 적용될 수 있는 통신 방법이 제공된다.By applying the international standard protocol to Bluetooth, a communication method that can be applied to various current devices and future devices is provided.

프로토콜 스택 중 일부를 생략함으로써 고효율의 통신을 제공하는 장치 및 방법이 제공된다.An apparatus and method for providing highly efficient communication by omitting some of the protocol stacks are provided.

도 1은 일 실시예에 따른 블루투스를 사용하여 통신하는 시스템을 도시한다.
도 2는 일 실시예에 따른 블루투스 장치의 구조도이다.
도 3은 일 실시예에 따른 게이트웨이의 구조도이다.
도 4는 일 실시예에 따른 블루투스 장치의 프로토콜 구조를 나타낸다.
도 5는 일 실시예에 따른 게이트웨이의 프로토콜 구조를 나타낸다.
도 6은 일 실시예에 따른 블루투스 장치 및 게이트웨이의 통신의 구조를 설명한다.
도 7은 일 실시예에 따른 블루투스 장치의 통신 방법의 흐름도이다.
도 8는 일 실시예에 따른 게이트웨이 통신 방법의 흐름도이다.
도 9는 일 예에 따른 블루투스 장치들 간의 CoAP를 이용하는 통신을 도시한다.
도 10은 일 예에 따른 브로드캐스트를 사용하는 CoAP를 지원하는 블루투스 장치의 검색 방법의 흐름도이다.
도 11은 일 예에 따른 관찰을 사용하는 CoAP를 지원하는 블루투스 장치의 검색 방법의 흐름도이다.
도 12는 일 예에 따른 블루투스 장치의 리소스를 검색하는 방법의 흐름도이다.
도 13은 일 예에 따른 게이트웨이의 외부 장치로부터의 요청을 처리하는 방법의 흐름도이다.
도 14는 일 예에 따른 게이트웨이의 외부 장치로부터의 요청을 처리하는 방법의 흐름도이다.
도 15는 일 예에 따른 게이트웨이 검색 방법의 흐름도이다.
도 16은 일 예에 따른 관찰을 사용하는 CoAP를 지원하는 게이트웨이의 검색 방법의 흐름도이다.
도 17은 일 예에 따른 블루투스 장치를 등록하는 방법의 흐름도이다.
도 18은 일 예에 따른 블루투스 장치의 리소스를 등록하는 방법의 흐름도이다.
도 19는 일 예에 따른 블루투스 장치의 구조도이다.
도 20은 일 예에 따른 게이트웨이의 구조도이다.
도 21은 일 실시예에 따른 블루투스 장치 및 게이트웨이의 통신의 구조를 설명한다.
도 22는 일 예에 따른 어드버타이징 채널 프레임 포맷을 나타낸다.
도 23은 일 예에 따른 데이터 채널 프레임 포맷을 나타낸다.
1 illustrates a system for communicating using Bluetooth according to one embodiment.
2 is a block diagram of a Bluetooth device according to an exemplary embodiment of the present invention.
3 is a structural diagram of a gateway according to an embodiment.
4 illustrates a protocol structure of a Bluetooth device according to an exemplary embodiment.
5 shows a protocol structure of a gateway according to an embodiment.
6 illustrates a structure of communication between a Bluetooth device and a gateway according to an embodiment.
7 is a flowchart of a communication method of a Bluetooth device according to an embodiment.
8 is a flowchart of a gateway communication method according to an embodiment.
9 illustrates communication using a CoAP between Bluetooth devices according to an example.
10 is a flowchart of a search method of a Bluetooth device supporting CoAP using broadcast according to an example.
11 is a flowchart of a search method of a Bluetooth device supporting CoAP using observation according to an example.
12 is a flowchart of a method of searching for a resource of a Bluetooth device according to an example.
13 is a flowchart of a method of processing a request from an external device of a gateway according to an example.
14 is a flowchart of a method of processing a request from an external device of a gateway according to an example.
15 is a flowchart of a gateway search method according to an example.
16 is a flowchart of a search method of a gateway supporting CoAP using observation according to an example.
17 is a flowchart of a method of registering a Bluetooth device according to an example.
18 is a flowchart of a method of registering a resource of a Bluetooth device according to an example.
19 is a structural diagram of a Bluetooth device according to an example.
20 is a structural diagram of a gateway according to an example.
21 illustrates a structure of communication between a Bluetooth device and a gateway according to an embodiment.
Figure 22 shows the format of the advertising channel frame according to an example.
23 shows a data channel frame format according to an example.

후술하는 예시적 실시예들에 대한 상세한 설명은, 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 실시예를 실시할 수 있기에 충분하도록 상세히 설명된다. 다양한 실시예들은 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 실시예의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 예시적 실시예들의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다.The following detailed description of exemplary embodiments refers to the accompanying drawings, which illustrate, by way of illustration, specific embodiments. These embodiments are described in sufficient detail to enable those skilled in the art to practice the embodiments. It should be understood that the various embodiments are different, but need not be mutually exclusive. For example, certain features, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the invention in connection with an embodiment. It is also to be understood that the location or arrangement of the individual components within each disclosed embodiment may be varied without departing from the spirit and scope of the embodiments. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the exemplary embodiments is to be limited only by the appended claims, along with the full scope of equivalents to which such claims are entitled, if properly explained.

도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다. 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.In the drawings, like reference numerals refer to the same or similar functions throughout the several views. The shape and size of the elements in the figures may be exaggerated for clarity.

실시예에서 사용된 용어는 실시예를 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 실시예에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않으며, 추가적인 구성이 예시적 실시예들의 실시 또는 예시적 실시예들의 기술적 사상의 범위에 포함될 수 있음을 의미한다. 어떤 구성요소(component)가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기의 2개의 구성요소들이 서로 간에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있으나, 상기의 2개의 구성요소들의 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.The terms used in the examples are intended to illustrate the embodiments and are not intended to limit the invention. In the examples, the singular includes the plural unless otherwise stated in the specification. It is noted that the terms "comprises" and / or "comprising" used in the specification are intended to be inclusive in a manner similar to the components, steps, operations, and / And that additional configurations may be encompassed within the scope of the embodiments of the exemplary embodiments or the technical ideas of the exemplary embodiments. When it is mentioned that a component is "connected" or "connected" to another component, the two components may be directly connected or connected to each other, It is to be understood that other components may be present in the middle of the components.

제1 및 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기의 구성요소들은 상기의 용어들에 의해 한정되어서는 안 된다. 상기의 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하여 지칭하기 위해서 사용된다. 예를 들어, 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.The terms first and second, etc. may be used to describe various components, but the components should not be limited by the terms above. The above terms are used to distinguish one component from another. For example, without departing from the scope of the right, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

또한 실시예들에 나타나는 구성요소들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성요소가 분리된 하드웨어나 하나의 소프트웨어 구성 단위로만 이루어짐을 의미하지 않는다. 즉, 각 구성요소는 설명의 편의상 각각의 구성요소로 나열된 것이다. 예를 들면, 구성요소들 중 적어도 두 개의 구성요소들이 하나의 구성요소로 합쳐질 수 있다. 또한, 하나의 구성요소가 복수의 구성요소들로 나뉠 수 있다. 이러한 각 구성요소의 통합된 실시예 및 분리된 실시예 또한 본질에서 벗어나지 않는 한 권리범위에 포함된다.In addition, the components shown in the embodiments are shown independently to represent different characteristic functions, which does not mean that each component is composed of separate hardware or one software constituent unit. That is, each component is listed as each component for convenience of explanation. For example, at least two of the components may be combined into a single component. Also, one component can be divided into a plurality of components. The integrated embodiments and the separate embodiments of each of these components are also included in the scope of the right without departing from the essence.

또한, 일부의 구성요소는 본질적인 기능을 수행하는 필수적인 구성요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성요소일 수 있다. 실시예들은 실시예의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 예를 들면, 단지 성능 향상을 위해 사용되는 구성요소와 같은, 선택적 구성요소가 제외된 구조 또한 권리 범위에 포함된다.Also, some components are not essential components to perform essential functions, but may be optional components only to improve performance. Embodiments may be implemented only with components that are essential to implementing the essentials of the embodiments, and structures within which the optional components are excluded, such as, for example, components used only for performance enhancement, are also included in the scope of the right.

이하에서는, 기술분야에서 통상의 지식을 가진 자가 실시예들을 용이하게 실시할 수 있도록 하기 위하여, 첨부된 도면을 참조하여 실시예들을 상세히 설명하기로 한다. 실시예들을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings in order to facilitate embodiments of the present invention by those skilled in the art. In the following description of the embodiments, detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present disclosure rather unclear.

기존의 블루투스 표준은, 블루투스 기기 별로 프로파일 표준을 제정하였고, 프로파일 표준이 준수되도록 하였다. 그러나, 사물인터넷의 시대에서는 표준의 제정 속도가 새로운 제품의 출시 속도를 따라가지 못하고 있다.The existing Bluetooth standard established a profile standard for each Bluetooth device and made it conform to the profile standard. However, in the Internet world of things, the rate of standardization has not been able to keep pace with the speed of new product launches.

표준의 제정 및 새로운 제품의 출시 간의 격차에 의해, 한 회사의 제품들 간에만 연동이 되는 호환성의 문제가 발생하였다. 또한, 다양한 기기들을 수용할 수 있는 게이트웨이 및 응용의 개발이 어렵게되는 문제가 발생하였다.Due to the gap between the enactment of standards and the launch of new products, interoperability problems between products of a company have arisen. In addition, it has been difficult to develop gateways and applications capable of accommodating various devices.

따라서, 아래의 실시예들은 미래에 개발될 다양한 블루투스 기반의 사물인터넷 기기를 수용할 수 있는 호환성을 확보하는 프로토콜 구조를 제안한다. 또한, 아래의 실시예들은 기존의 인터넷 프로토콜을 그대로 블루투스 노드 상에 구현할 경우에 발생하는 메시지 오버헤드, 보안 및 재전송 등과 같은 기능 상의 중복 문제를 해결함으로써 효율성을 확보할 수 있다.Therefore, the following embodiments propose a protocol structure for ensuring compatibility to accommodate various Bluetooth-based Internet devices to be developed in the future. In addition, the following embodiments can solve the redundancy problem of function, such as message overhead, security and retransmission, which occurs when a conventional Internet protocol is implemented on a Bluetooth node as it is, thereby securing efficiency.

또한, 아래의 실시예들에서는, 블루투스 기기가 표준에 따라서 효율적으로 사물인터넷에 연결하는 것을 가능하게 하는 프로토콜 구조를 제안한다.
The following embodiments also propose a protocol structure that enables a Bluetooth device to efficiently connect to the Internet of things according to the standard.

도 1은 일 실시예에 따른 블루투스를 사용하여 통신하는 시스템을 도시한다.1 illustrates a system for communicating using Bluetooth according to one embodiment.

시스템(100)은 블루투스 장치(110) 및 게이트웨이(120)를 포함할 수 있다. 블루투스 장치(110)는 복수일 수 있다.The system 100 may include a Bluetooth device 110 and a gateway 120. The Bluetooth device 110 may be plural.

블루투스 장치(110)는 사물인터넷을 지원할 수 있다. 블루투스 장치(110)의 프로토콜 구조는 블루투스 물리 계층, 블루투스 논리 계층, L2CAP 계층, 씨오에이피(Constrained Application Protocol; CoAP) 계층 및 응용 계층으로 구성될 수 있다.The Bluetooth device 110 can support the object Internet. The protocol structure of the Bluetooth device 110 may include a Bluetooth physical layer, a Bluetooth logical layer, an L2CAP layer, a Constrained Application Protocol (CoAP) layer, and an application layer.

블루투스 장치(110)의 인터넷 네트워킹은 CoAP의 통합 리소스 식별자(Uniform Resource Identifier; URI) 경로 및 블루투스 기기 간의 매핑을 통해 이루어질 수 있다. 이러한 매핑의 과정은 게이트웨이(120)에 의해 수행될 수 있다.The Internet networking of the Bluetooth device 110 may be accomplished through a mapping between a Uniform Resource Identifier (URI) path of the CoAP and a Bluetooth device. The process of this mapping can be performed by the gateway 120. [

게이트웨이(120)는 블루투스 통신을 통해 블루투스 장치(110)와 통신할 수 있다. 또한, 게이트웨이(120)는 인터넷을 통해 외부의 다른 장치와 통신할 수 있다.
The gateway 120 may communicate with the Bluetooth device 110 via Bluetooth communication. In addition, the gateway 120 can communicate with other external devices via the Internet.

도 2는 일 실시예에 따른 블루투스 장치의 구조도이다.2 is a block diagram of a Bluetooth device according to an exemplary embodiment of the present invention.

블루투스 장치(110)는 처리부(210), 통신부(220) 및 저장부(230)를 포함할 수 있다.The Bluetooth device 110 may include a processing unit 210, a communication unit 220, and a storage unit 230.

처리부(210)는 블루투스 장치(110)의 동작을 위해 요구되는 작업을 처리할 수 있다. 예를 들면, 처리부(210)는 적어도 하나의 프로세서(processor)일 수 있다. 처리부(210)는 실시예들에서 설명된 처리부(210)의 동작 또는 단계의 코드를 실행(execute)할 수 있다The processing unit 210 may process a task required for the operation of the Bluetooth device 110. [ For example, the processing unit 210 may be at least one processor. The processing unit 210 may execute the code of the operation or step of the processing unit 210 described in the embodiments

통신부(220)는 블루투스 장치(110)의 동작을 위해 요구되는 데이터 또는 정보를 수신할 수 있으며, 블루투스 장치(110)의 동작을 위해 요구되는 데이터 또는 정보를 전송할 수 있다. 통신부(220)는 네트워크 내의 다른 장치로 데이터를 전송할 수 있고, 다른 장치로부터 데이터를 수신할 수 있다. 예를 들면, 통신부(220)는 블루투스 통신을 위한 네트워크 칩(chip) 또는 블루투스 통신을 위한 부품일 수 있다.The communication unit 220 may receive data or information required for the operation of the Bluetooth device 110 and may transmit data or information required for the operation of the Bluetooth device 110. [ The communication unit 220 can transmit data to other devices in the network and can receive data from other devices. For example, the communication unit 220 may be a network chip for Bluetooth communication or a component for Bluetooth communication.

저장부(230)는 블루투스 장치(110)의 동작을 위해 요구되는 데이터를 저장할 수 있다. 예를 들면, 저장부(230)는 메모리(memory)일 수 있다. 저장부(230)는 램(RAM) 및 플레시(flash) 메모리 등과 같은 내장형의 저장 매체를 포함할 수 있고, 메모리 카드 등과 같은 탈착가능한 저장 매체를 포함할 수 있다.The storage unit 230 may store data required for operation of the Bluetooth device 110. [ For example, the storage unit 230 may be a memory. The storage unit 230 may include a built-in storage medium such as a RAM and a flash memory, and may include a removable storage medium such as a memory card or the like.

저장부(230)는 적어도 하나의 프로그램을 저장할 수 있다. 처리부(210)는 적어도 하나의 프로그램을 실행할 수 있다. 처리부(210)는 저장부(230)로부터 적어도 하나의 프로그램의 코드를 독출(read)할 수 있고, 독출된 코드를 실행할 수 있다.The storage unit 230 may store at least one program. The processing unit 210 may execute at least one program. The processing unit 210 can read the code of at least one program from the storage unit 230 and execute the read code.

적어도 하나의 프로그램은 블루투스 통신을 위한 프로그램일 수 있다.At least one program may be a program for Bluetooth communication.

통신부(220)는 블루투스 통신을 수행할 수 있다. 통신부(220)는 블루투스 통신을 통해 다른 장치로 데이터를 전송할 수 있고, 다른 장치로부터 데이터를 수신할 수 있다.The communication unit 220 can perform Bluetooth communication. The communication unit 220 can transmit data to another device via Bluetooth communication and can receive data from another device.

블루투스 장치(110)의 처리부(210), 통신부(220) 및 저장부(230)의 동작, 기능 및 특징에 대해서 실시예들을 참조하여 아래에서 상세하게 설명된다.
Operations, functions, and characteristics of the processing unit 210, the communication unit 220, and the storage unit 230 of the Bluetooth device 110 will be described in detail below with reference to embodiments.

도 3은 일 실시예에 따른 게이트웨이의 구조도이다.3 is a structural diagram of a gateway according to an embodiment.

게이트웨이(120)는 처리부(310), 제1 통신부(320), 제2 통신부(330) 및 저장부(340)를 포함할 수 있다.The gateway 120 may include a processing unit 310, a first communication unit 320, a second communication unit 330, and a storage unit 340.

처리부(310)는 게이트웨이(120)의 동작을 위해 요구되는 작업을 처리할 수 있다. 예를 들면, 처리부(310)는 적어도 하나의 프로세서(processor)일 수 있다. 처리부(310)는 실시예들에서 설명된 처리부(310)의 동작 또는 단계의 코드를 실행(execute)할 수 있다The processing unit 310 can process a job required for the operation of the gateway 120. [ For example, the processing unit 310 may be at least one processor. The processing unit 310 may execute the code of the operation or step of the processing unit 310 described in the embodiments

제1 통신부(320) 및 제2 통신부(330)는 게이트웨이(120)의 동작을 위해 요구되는 데이터 또는 정보를 수신할 수 있으며, 게이트웨이(120)의 동작을 위해 요구되는 데이터 또는 정보를 전송할 수 있다. 제1 통신부(320) 및 제2 통신부(330)는 네트워크 내의 다른 장치로 데이터를 전송할 수 있고, 다른 장치로부터 데이터를 수신할 수 있다. 예를 들면, 제1 통신부(320) 및 제2 통신부(330)의 각각은 네트워크 칩(chip) 또는 포트(port)일 수 있다.The first communication unit 320 and the second communication unit 330 may receive data or information required for the operation of the gateway 120 and may transmit data or information required for the operation of the gateway 120 . The first communication unit 320 and the second communication unit 330 can transmit data to other devices in the network and can receive data from other devices. For example, each of the first communication unit 320 and the second communication unit 330 may be a network chip or a port.

저장부(340)는 게이트웨이(120)의 동작을 위해 요구되는 데이터를 저장할 수 있다. 예를 들면, 저장부(340)는 메모리(memory)일 수 있다. 저장부(340)는 램(RAM) 및 플레시(flash) 메모리 등과 같은 내장형의 저장 매체를 포함할 수 있고, 메모리 카드 등과 같은 탈착가능한 저장 매체를 포함할 수 있다.The storage unit 340 may store data required for operation of the gateway 120. [ For example, the storage unit 340 may be a memory. The storage unit 340 may include a built-in storage medium such as a RAM and a flash memory, and may include a removable storage medium such as a memory card or the like.

저장부(340)는 적어도 하나의 프로그램을 저장할 수 있다. 처리부(310)는 적어도 하나의 프로그램을 실행할 수 있다. 처리부(310)는 저장부(340)로부터 적어도 하나의 프로그램의 코드를 독출(read)할 수 있고, 독출된 코드를 실행할 수 있다.The storage unit 340 may store at least one program. The processing unit 310 may execute at least one program. The processing unit 310 can read the code of at least one program from the storage unit 340 and execute the read code.

제1 통신부(320)는 블루투스 통신을 위한 블루투스 인터페이스일 수 있다. 예를 들면, 제1 통신부(320)는 블루투스 통신 칩일 수 있다.The first communication unit 320 may be a Bluetooth interface for Bluetooth communication. For example, the first communication unit 320 may be a Bluetooth communication chip.

제2 통신부(330)는 인터넷과의 연동을 위한 인터넷 인터페이스일 수 있다. 예를 들면, 제2 통신부(330)는 와이파이 칩 또는 이더넷 칩일 수 있다.The second communication unit 330 may be an Internet interface for interworking with the Internet. For example, the second communication unit 330 may be a Wi-Fi chip or an Ethernet chip.

제1 통신부(320)는 블루투스 장치(110)와의 통신을 위해 사용될 수 있다. 제2 통신부(330)는 블루투스 장치(110) 및 다른 장치 간의 통신에 대하여 게이트웨이 기능을 제공하기 위해 사용될 수 있다.The first communication unit 320 may be used for communication with the Bluetooth device 110. [ The second communication unit 330 may be used to provide a gateway function for communication between the Bluetooth device 110 and another device.

게이트웨이(120)의 처리부(310), 제1 통신부(320), 제2 통신부(330) 및 저장부(340)의 동작, 기능 및 특징에 대해서 실시예들을 참조하여 아래에서 상세하게 설명된다.
The operation, functions, and characteristics of the processing unit 310, the first communication unit 320, the second communication unit 330, and the storage unit 340 of the gateway 120 will be described in detail below with reference to embodiments.

도 4는 일 실시예에 따른 블루투스 장치의 프로토콜 구조를 나타낸다.4 illustrates a protocol structure of a Bluetooth device according to an exemplary embodiment.

블루투스 장치(110)의 프로토콜 구조는 제어기(controller) 및 호스트(host)로 분류될 수 있다. 예를 들면, 제어기는 통신부(220)에 대응하고, 호스트는 처리부(210)에 대응할 수 있다. 또는, 호스트는 처리부(210)에 의해 수행되는 적어도 하나의 프로그램의 일부에 대응할 수 있다.The protocol structure of the Bluetooth device 110 may be classified into a controller and a host. For example, the controller corresponds to the communication unit 220, and the host can correspond to the processing unit 210. [ Alternatively, the host may correspond to a portion of at least one program executed by the processing unit 210. [

호스트 제어기 인터페이스는 처리부(210)가 통신부(220)를 제어하기 위한 인터페이스일 수 있다.The host controller interface may be an interface for the processing unit 210 to control the communication unit 220.

프로토콜 구조의 제일 하위의 계층은 물리적 계층일 수 있다. 다음의 계층은 링크(또는, 데이터 링크(link)) 계층일 수 있다. 다음의 계층은 호스트 제어기 인터페이스일 수 있다.The lowest layer of the protocol structure may be the physical layer. The next layer may be a link (or a data link) layer. The next layer may be the host controller interface.

다음의 계층은 L2CAP일 수 있다. ATT 계층, GATT, 지에이피(Generic Access Profile; GAP) 및 씨에스피(CoAP Support Profile; CSP)는 L2CAP 계층의 상위의 계층일 수 있다. CoAP는 L2CAP의 상위의 계층일 수 있다. 응용은 CoAP의 상위의 계층일 수 있다.The next layer may be L2CAP. The ATT layer, the GATT, the Generic Access Profile (GAP), and the CoAP Support Profile (CSP) may be the upper layers of the L2CAP layer. The CoAP may be an upper layer of L2CAP. The application may be an upper layer of the CoAP.

처리부(210)에 의해 수행되는 적어도 하나의 프로그램은 호스트 제이기 인터페이스 계층, L2CAP 계층, CoAP 계층 및 응용 계층을 포함할 수 있다. 처리부(210)에 의해 수행되는 적어도 하나의 프로그램은 ATT 계층, GATT 계층, GAP 계층 및 CSP 계층을 포함할 수 있다. 예를 들면, 적어도 하나의 프로그램은 호스트 제어기 인터페이스 계층의 코드, L2CAP 계층의 코드, CoAP 계층의 코드 및 응용 계층의 코드를 포함할 수 있다. 또한, 적어도 하나의 프로그램은 ATT 계층의 코드, GATT 계층의 코드, GAP 계층의 코드 및 CSP 계층의 코드를 포함할 수 있다.At least one program performed by the processing unit 210 may include a host-initiating interface layer, an L2CAP layer, a CoAP layer, and an application layer. At least one program performed by the processing unit 210 may include an ATT layer, a GATT layer, a GAP layer, and a CSP layer. For example, the at least one program may include code of a host controller interface layer, code of an L2CAP layer, code of a CoAP layer, and code of an application layer. In addition, the at least one program may include code of an ATT layer, code of a GATT layer, code of a GAP layer, and code of a CSP layer.

블루투스 장치(110)에서, 아이이티에프(Internet Engineering Task Force; IETF) CoAP 계층은 L2CAP 계층의 바로 상위의 계층일 수 있다.In the Bluetooth device 110, the Internet Engineering Task Force (IETF) CoAP layer may be directly above the L2CAP layer.

블루투스 장치(110) 및/또는 적어도 하나의 프로그램의 프로토콜 구조에서, IP 계층, UDP 계층 및 6LoWPAN 계층은 제외될 수 있다.In the Bluetooth device 110 and / or the protocol structure of at least one program, the IP layer, the UDP layer and the 6LoWPAN layer may be excluded.

CoAP 계층의 이하의 계층인 L2CAP 계층, 호스트 제어기 인터페이스 계층, 링크 계층 및 물리적 계층은 BLE 모듈에 대응할 수 있다. 말하자면, 블루투스 장치(110)에서, CoAP 계층은 BLE의 바로 상위의 계층일 수 있다.The L2CAP layer, the host controller interface layer, the link layer, and the physical layer, which are the following layers of the CoAP layer, can correspond to the BLE module. In other words, in the Bluetooth device 110, the CoAP layer may be directly above the BLE.

IETF CoAP는 저용량 소형 기기를 위해 UDP 계층의 위에서 동작하도록 설계된 프로토콜일 수 있다.The IETF CoAP may be a protocol designed to operate above the UDP layer for low-volume handheld devices.

L2CAP 계층은 데이터그램 형태의 데이터를 전송할 수 있다. 또한, L2CAP 계층은 노드를 식별할 수 있으며, 메시지를 노드로 전송할 수 있고, 노드로부터 메시지를 수신할 수 있다.The L2CAP layer can transmit data in the form of a datagram. In addition, the L2CAP layer can identify the node, send the message to the node, and receive the message from the node.

말하자면, IP 계층, UDP 계층 및 6LoWPAN 계층이 없더라도 CoAP는 L2CAP 계층의 바로 위에서 동작할 수 있다. 이러한 동작을 통해, 블루투스 장치(110)는 효율적인 통신을 가능하게 하면서도 표준 사물인터넷 프로토콜을 사용할 수 있다.That is to say, although there is no IP layer, UDP layer and 6LoWPAN layer, CoAP can operate directly above the L2CAP layer. Through this operation, the Bluetooth device 110 can use standard object Internet protocol while enabling efficient communication.

게이트웨이(120) 또는 스마트폰과 같은 단말은 CoAP의 표준을 이용하여 블루투스 장치(110)와 통신할 수 있다. 따라서, 블루투스 장치(110) 및 다른 다양한 블루투스 장치들 간의 연동이 가능할 수 있다.A terminal such as the gateway 120 or a smart phone can communicate with the Bluetooth device 110 using the CoAP standard. Thus, interworking between the Bluetooth device 110 and various other Bluetooth devices may be possible.

CoAP 계층은 CoAP 클라이언트 기능 및 CoAP 서버 기능의 적어도 일부를 포함할 수 있다. CoAP 클라이언트 기능은 CoAP 요청의 메시지를 전송하는 기능을 포함할 수 있다. CoAP 서버 기능은 CoAP 요청을 수신하는 기능 및 CoAP 요청에 대한 응답의 메시지를 전송하는 기능을 포함할 수 있다.The CoAP layer may include at least a part of the CoAP client function and the CoAP server function. The CoAP client function may include the ability to send a message of a CoAP request. The CoAP server function may include a function of receiving a CoAP request and a function of transmitting a message of a response to a CoAP request.

CSP는 GATT 및 ATT를 통하여 블루투스 장치(100)가 CoAP의 기능을 지원한다는 것이 검색되게 할 수 있다.The CSP can be configured to detect that the Bluetooth device 100 supports the CoAP function through the GATT and ATT.

GAP, GATT, ATT 및 L2CAP은 기존의 블루투스 스택의 GAP, GATT, ATT 및 L2CAP에 각각 대응할 수 있다.GAP, GATT, ATT and L2CAP can correspond to GAP, GATT, ATT and L2CAP of the existing Bluetooth stack respectively.

블루투스 장치(100)가 CoAP을 지원하지 않는 다른 블루투스 장치와 통신을 할 필요가 없는 경우, CSP, GAP, GATT 및 ATT는 모두 생략될 수 있다. 이러한 경우, 블루투스 장치(110)는 CoAP 및 L2CAP만을 이용하여 다른 블루투스 장치를 검색하고, 검색된 다른 블루투스 장치의 속성을 알아내는 것이 요구될 수 있다.
If Bluetooth device 100 does not need to communicate with other Bluetooth devices that do not support CoAP, CSP, GAP, GATT, and ATT may all be omitted. In this case, the Bluetooth device 110 may be required to search another Bluetooth device using only the CoAP and the L2CAP, and to find the properties of other Bluetooth devices searched.

도 5는 일 실시예에 따른 게이트웨이의 프로토콜 구조를 나타낸다.5 shows a protocol structure of a gateway according to an embodiment.

게이트웨이(120)의 프로토콜 구조는 제1 통신부(320) 측 프로토콜 구조 및 제2 통신부(330) 측 프로토콜 구조로 분류될 수 있다. 제1 통신부(320) 측 프로토콜 구조는 좌측에 도시되었고, 제2 통신부(330) 측 프로토콜 구조는 우측에 도시되었다.The protocol structure of the gateway 120 may be classified into the protocol structure of the first communication unit 320 and the protocol structure of the second communication unit 330. The protocol structure of the first communication unit 320 side is shown on the left side and the protocol structure of the second communication unit 330 side is shown on the right side.

적어도 하나의 프로그램은 제1 통신부(320)를 위해 사용되는 제1 통신부(320) 용 코드 및 제2 통신부(330)를 위해 사용되는 제2 통신부 용 코드를 포함할 수 있다.The at least one program may include a code for the first communication unit 320 used for the first communication unit 320 and a code for the second communication unit used for the second communication unit 330. [

우선, 제1 통신부(320) 측 프로토콜 구조를 살펴본다.First, the protocol structure of the first communication unit 320 will be described.

제1 통신부(320) 측 프로토콜 구조의 제일 하위의 계층은 BLE일 수 있다. BLE는 물리적 계층, 링크 계층, 호스트 제어기 인터페이스 계층 및 L2CAP을 포함할 수 있다. 물리적 계층, 링크 계층, 호스트 제어기 인터페이스 계층 및 L2CAP에 대해서 도 4를 참조하여 전술된 설명이 적용될 수 있다.The lowest layer of the protocol structure of the first communication unit 320 may be BLE. The BLE may include a physical layer, a link layer, a host controller interface layer, and an L2CAP. The description given above with reference to FIG. 4 can be applied to the physical layer, the link layer, the host controller interface layer and the L2CAP.

CoAP는 L2CAP의 상위의 계층일 수 있다.The CoAP may be an upper layer of L2CAP.

L2CAP의 하위의 계층은 도시된 것과 같이 BLE 모듈일 수 있다. 또는, BLE 모듈은 전통적인 블루투스 물리 계층 및 논리 계층으로 대체될 수 있다. 예를 들면, L2CAP의 하위의 계층은 전통적인 블루투스 물리 계층 및 논리 계층일 수 있다.The lower layer of L2CAP may be a BLE module as shown. Alternatively, the BLE module may be replaced by a traditional Bluetooth physical layer and a logical layer. For example, the lower layer of the L2CAP may be a traditional Bluetooth physical layer and a logical layer.

처리부(310)에 의해 수행되는 적어도 하나의 프로그램은 제1 통신부(320) 용 BLE 모듈, L2CAP 계층 및 CoAP 계층을 포함할 수 있다. 예를 들면, 처리부(310)에 의해 수행되는 제1 통신부(320) 용 코드는 BLE 모듈의 코드, L2CAP 계층의 코드 및 CoAP 계층의 코드를 포함할 수 있다.At least one program executed by the processing unit 310 may include a BLE module for the first communication unit 320, an L2CAP layer, and a CoAP layer. For example, the code for the first communication unit 320 performed by the processing unit 310 may include a code of the BLE module, a code of the L2CAP layer, and a code of the CoAP layer.

게이트웨이(120)의 제1 통신부(320) 측 프로토콜 구조에서, IETF CoAP 계층은 L2CAP 계층의 바로 상위의 계층일 수 있다.In the protocol structure of the first communication unit 320 side of the gateway 120, the IETF CoAP layer may be directly above the L2CAP layer.

게이트웨이(120)의 제1 통신부(320) 측 프로토콜 구조에서, IP 계층, UDP 계층 및 6LoWPAN 계층은 제외될 수 있다.In the protocol structure of the first communication unit 320 of the gateway 120, the IP layer, the UDP layer, and the 6LoWPAN layer may be excluded.

다음으로, 제2 통신부(330) 측 프로토콜 구조를 살펴본다.Next, the protocol structure of the second communication unit 330 will be described.

제2 통신부(330) 측 프로토콜 구조는 통상적인 티씨피/아이피(Transmission Control Protocol/Internet Protocol; TCP/IP) 스택에 대응할 수 있다.The protocol structure of the second communication unit 330 may correspond to a typical TCP / IP (Internet Protocol) stack.

제2 통신부(330) 측 프로토콜 구조의 제일 하위의 계층은 와이파이(WiFi) 및/또는 이더넷(Ethernet)일 수 있다. 와이파이 및/또는 이더넷은 와이파이 및/또는 이더넷 통신을 위한 물리적 계층 및 링크 계층을 의미할 수 있다.The lowest layer of the protocol structure of the second communication unit 330 may be WiFi and / or Ethernet. WiFi and / or Ethernet may refer to the physical and link layers for WiFi and / or Ethernet communications.

IP는 와이파이(WiFi) 및/또는 이더넷(Ethernet)의 상위의 계층일 수 있다.The IP may be a higher layer of WiFi and / or Ethernet.

UDP는 IP의 상위의 계층일 수 있다.UDP can be the upper layer of IP.

CoAP 및/또는 HTTP는 UDP의 상위의 계층일 수 있다.The CoAP and / or HTTP may be an upper layer of UDP.

적어도 하나의 프로그램은 프록시 모듈을 포함할 수 있다. 프록시 모듈은 제1 통신부(320) 측 프로토콜 구조의 CoAP 계층 및 제2 통신부(330) 측 프로토콜 구조의 CoAP 계층 및/또는 HTTP 계층의 상위의 계층일 수 있다.
At least one program may include a proxy module. The proxy module may be a CoAP layer of the protocol structure of the first communication unit 320 and a CoAP layer of the protocol structure of the second communication unit 330 and / or an upper layer of the HTTP layer.

도 6은 일 실시예에 따른 블루투스 장치 및 게이트웨이의 통신의 구조를 설명한다.6 illustrates a structure of communication between a Bluetooth device and a gateway according to an embodiment.

도 6에서는, 블루투스 장치(110), 게이트웨이(120) 및 외부 장치(610)가 도시되었다.In Fig. 6, a Bluetooth device 110, a gateway 120, and an external device 610 are shown.

블루투스 장치(110)는 블루투스 노드일 수 있다. 외부 장치(610)는 외부의 인터넷 노드일 수 있다.The Bluetooth device 110 may be a Bluetooth node. The external device 610 may be an external Internet node.

외부 장치(610)는 사물인터넷 서버일 수 있다. 예를 들면, 외부 장치(610)의 프로토콜 구조는 와이파이(WiFi) 및/또는 이더넷(Ethernet), IP, UDP 및/또는 TCP, CoAP 및 응용 계층을 포함할 수 있다.The external device 610 may be a matter Internet server. For example, the protocol structure of the external device 610 may include WiFi and / or Ethernet, IP, UDP and / or TCP, CoAP and an application layer.

블루투스 장치(110)의 통신부(220) 및 게이트웨이(120)의 제1 통신부(320)는 블루투스 통신을 통해 서로 간에 통신할 수 있다. 게이트웨이(120)의 제2 통신부(330) 및 외부 장치(610)는 유무선 네트워크를 통해 서로 간에 통신할 수 있다The communication unit 220 of the Bluetooth device 110 and the first communication unit 320 of the gateway 120 can communicate with each other through Bluetooth communication. The second communication unit 330 and the external device 610 of the gateway 120 can communicate with each other through a wired / wireless network

게이트웨이(120)의 프록시 모듈은 블루투스 장치(110) 및 게이트웨이(120) 내부의 URI-경로(path) 간의 매핑(mapping)을 관리할 수 있다.The proxy module of the gateway 120 may manage the mapping between the Bluetooth device 110 and the URI-path within the gateway 120.

게이트웨이(120)의 프록시 모듈은 제1 통신부(320)를 통해 연결된 블루투스 장치(110)의 주소를 게이트웨이(120) 내부의 URI-경로에 매핑함으로써 블루투스 장치(110) 및 제2 통신부(330)를 통해 연결된 외부 장치(610) 간의 통신을 가능하게 할 수 있다.The proxy module of the gateway 120 maps the address of the Bluetooth device 110 connected through the first communication unit 320 to the URI path of the gateway 120 to thereby transmit the Bluetooth device 110 and the second communication unit 330 Thereby enabling communication between the external devices 610 connected thereto.

블루투스 장치(110)가 외부 장치(610)로 요청을 전송할 경우, 블루투스 장치(110)는 CoAP 메시지 내의 URI-호스트(host)의 옵션 및 URI-포트(port)의 옵션을 이용할 수 있다. 블루투스 장치(110)의 처리부(210)는 URI-호스트의 옵션 및 URI-포트의 옵션을 포함하는 CoAP의 요청 메시지를 생성할 수 있다. 블루투스 장치(110)의 통신부(220)는 CoAP의 요청 메시지를 게이트웨이(120)로 전송할 수 있다.When the Bluetooth device 110 transmits a request to the external device 610, the Bluetooth device 110 may use the option of URI-host in the CoAP message and the option of URI-port. The processing unit 210 of the Bluetooth device 110 may generate a request message of the CoAP including an option of the URI-host and an option of the URI-port. The communication unit 220 of the Bluetooth device 110 may transmit a CoAP request message to the gateway 120. [

게이트웨이(120)의 제1 통신부(320)는 블루투스 장치(110)로부터 URI-호스트의 옵션 및 URI-포트의 옵션을 포함하는 CoAP의 요청 메시지를 수신할 수 있다. 게이트웨이(120)의 처리부(310)는 CoAP의 요청 메시지로부터 URI-호스트 및 URI-포트를 제거할 수 있고, 요청 메시지에 IP 헤더 및 UDP 헤더를 세팅할 수 있다. 게이트웨이(120)의 제2 통신부(330)는 IP 헤더 및 UDP 헤더가 세팅된 요청 메시지를 외부 장치(610)로 전달할 수 있다.The first communication unit 320 of the gateway 120 may receive a request message of the CoAP including the option of the URI-host and the option of the URI-port from the Bluetooth device 110. The processing unit 310 of the gateway 120 may remove the URI-host and the URI-port from the CoAP request message, and may set the IP header and the UDP header in the request message. The second communication unit 330 of the gateway 120 may forward the request message with the IP header and the UDP header set to the external device 610.

외부 장치(610)는 요청 메시지에 대한 응답 메시지를 게이트웨이(120)로 전송할 수 있다. 게이트웨이(120)의 제2 통신부(330)는 요청 메시지에 대한 응답 메시지를 수신할 수 있다. 게이트웨이(120)의 제1 통신부(320)는 응답 메시지를 블루투스 장치(110)로 전달할 수 있다. 블루투스 장치(110)의 통신부(220)는 게이트웨이(120)로부터 응답 메시지를 수신할 수 있다. 게이트웨이(120)의 처리부(310)는 요청 메시지에 대한 응답 메시지를 수신하였을 때, 요청 메시지를 전송한 블루투스 장치(110)로 응답 메시지가 전달될 수 있도록 세션(session)을 관리할 수 있다.
The external device 610 may send a response message to the request message to the gateway 120. The second communication unit 330 of the gateway 120 may receive a response message to the request message. The first communication unit 320 of the gateway 120 may transmit a response message to the Bluetooth device 110. [ The communication unit 220 of the Bluetooth device 110 may receive a response message from the gateway 120. [ When the processing unit 310 of the gateway 120 receives the response message to the request message, the processing unit 310 may manage the session so that the response message may be transmitted to the Bluetooth device 110 that transmitted the request message.

도 7은 일 실시예에 따른 블루투스 장치의 통신 방법의 흐름도이다.7 is a flowchart of a communication method of a Bluetooth device according to an embodiment.

단계(710)에서, 블루투스 장치(110)는 블루투스 장치(110)를 게이트웨이(120)에 등록할 수 있다.In step 710, the Bluetooth device 110 may register the Bluetooth device 110 with the gateway 120. [

단계(720)에서, 블루투스 장치(110)는 블루투스 장치(110)의 리소스를 게이트웨이(120)에 등록할 수 있다.In step 720, the Bluetooth device 110 may register the resources of the Bluetooth device 110 with the gateway 120. [

단계(730)에서, 블루투스 장치(110)는 게이트웨이(120)에 의해 제공되는 게이트웨이 기능을 사용하여 통신을 수행할 수 있다. 통신의 대상은 외부 장치(610)일 수 있다.In step 730, the Bluetooth device 110 may perform communication using the gateway function provided by the gateway 120. [ The object of the communication may be the external device 610. [

블루투스 장치(110)의 프로토콜 스택은 CoAP 계층 및 L2CAP 계층을 포함할 수 있고, CoAP 계층은 L2CAP 계층의 바로 상위의 계층일 수 있다.
The protocol stack of the Bluetooth device 110 may include a CoAP layer and an L2CAP layer, and the CoAP layer may be a layer immediately above the L2CAP layer.

도 8는 일 실시예에 따른 게이트웨이 통신 방법의 흐름도이다.8 is a flowchart of a gateway communication method according to an embodiment.

단계(810)에서, 게이트웨이(120)는 블루투스 장치(110)를 검색할 수 있다.In step 810, the gateway 120 may search for the Bluetooth device 110.

단계(820)에서, 게이트웨이(120)는 블루투스 장치(110)의 리소스를 확인할 수 있다.In step 820, the gateway 120 can identify the resources of the Bluetooth device 110. [

단계(830)에서, 게이트웨이(120)는 블루투스 장치(110)와 통신할 수 있다. 게이트웨이(120)는 블루투스 장치(110)에게 게이트웨이 기능을 제공할 수 있다.
At step 830, the gateway 120 may communicate with the Bluetooth device 110. [ The gateway 120 may provide a gateway function to the Bluetooth device 110.

도 9는 일 예에 따른 블루투스 장치들 간의 CoAP를 이용하는 통신을 도시한다.9 illustrates communication using a CoAP between Bluetooth devices according to an example.

도 9에서 예시된 통신에서는, 게이트웨이(120) 없이 블루투스 장치들 간의 통신이 이루어질 수 있다.In the communication illustrated in Fig. 9, communication between the Bluetooth devices can be made without the gateway 120. Fig.

예를 들면, 블루투스 장치(110)는 사물인터넷 노드일 수 있고, 다른 블루투스 장치(910)는 사물인터넷 서버일 수 있다. 또는. 블루투스 장치(110)는 사물인터넷 서버일 수 있고, 다른 블루투스 장치(910)는 사물인터넷 노드일 수 있다.For example, the Bluetooth device 110 may be a destination Internet node and the other Bluetooth device 910 may be a destination Internet server. or. The Bluetooth device 110 may be a destination Internet server and the other Bluetooth device 910 may be a destination Internet node.

블루투스 장치(110)는 게이트웨이(120) 없이 CoAP 클라이언트 및/또는 CoAP 서버의 역할을 수행할 수 있다.The Bluetooth device 110 may serve as a CoAP client and / or a CoAP server without the gateway 120. [

블루투스 장치(110)는 스마트폰과 같이 블루투스 노드를 제어하고, 블루투스 노드로부터 값을 획득하는 역할을 수행할 수 있다. 블루투스 장치(110)는 다른 블루투스 장치(910)를 제어할 수 있고, 다른 블루투스 장치(910)로부터 값을 획득할 수 있다. 이러한 경우, 블루투스 장치(110)는 CoAP의 요청 메시지를 다른 블루투스 장치(910)로 전송하는 CoAP 클라이언트의 동작을 수행할 수 있다. 다른 블루투스 장치(910)는 CoAP의 요청 메시지에 대한 CoAP의 응답 메시지를 블루투스 장치(110)로 전송하는 CoAP 서버의 동작을 수행할 수 있다.The Bluetooth device 110 may control a Bluetooth node such as a smart phone, and may obtain a value from the Bluetooth node. The Bluetooth device 110 may control another Bluetooth device 910 and may obtain a value from another Bluetooth device 910. [ In this case, the Bluetooth device 110 can perform the operation of the CoAP client that transmits the request message of the CoAP to the other Bluetooth device 910. The other Bluetooth device 910 can perform an operation of the CoAP server transmitting the CoAP response message to the Bluetooth device 110 in response to the CoAP request message.

상기의 역할은 바뀔 수 있다. 다른 블루투스 장치(910)는 스마트폰과 같이 블루투스 노드를 제어하고, 블루투스 노드로부터 값을 획득하는 역할을 수행할 수 있다. 다른 블루투스 장치(910)는 블루투스 장치(110)를 제어할 수 있고, 블루투스 장치(110)로부터 값을 획득할 수 있다. 이러한 경우, 다른 블루투스 장치(910)는 CoAP의 요청 메시지를 블루투스 장치(110)로 전송하는 CoAP 클라이언트의 동작을 수행할 수 있다. 블루투스 장치(110)는 CoAP의 요청 메시지에 대한 CoAP의 응답 메시지를 다른 블루투스 장치(910)로 전송하는 CoAP 서버의 동작을 수행할 수 있다.The above roles may be changed. The other Bluetooth device 910 may control the Bluetooth node such as a smart phone and perform a role of acquiring a value from the Bluetooth node. Another Bluetooth device 910 may control the Bluetooth device 110 and may obtain a value from the Bluetooth device 110. [ In this case, the other Bluetooth device 910 can perform the operation of the CoAP client transmitting the CoAP request message to the Bluetooth device 110. [ The Bluetooth device 110 may perform an operation of a CoAP server that transmits a CoAP response message to a CoAP request message to another Bluetooth device 910. [

블루투스 장치(110) 및 다른 블루투스 장치(910)는 블루투스 주소를 사용하여 서로를 식별할 수 있다. 말하자면, 블루투스 노드들 간의 식별은 블루투스 주소를 통해 이루어질 수 있다.
The Bluetooth device 110 and the other Bluetooth device 910 can identify each other using the Bluetooth address. That is to say, the identification between the Bluetooth nodes can be done through the Bluetooth address.

도 10은 일 예에 따른 브로드캐스트를 사용하는 CoAP를 지원하는 블루투스 장치의 검색 방법의 흐름도이다.10 is a flowchart of a search method of a Bluetooth device supporting CoAP using broadcast according to an example.

게이트웨이(120)는 블루투스 장치(110)를 검색할 수 있다. 예를 들면, 블루투스 장치(110)는 블루투스 지원 센서 노드일 수 있다. 또한, 블루투스 장치(110)는 사물인터넷 기기일 수 있으며, CoAP를 지원하는 BLE 기기일 수 있다.The gateway 120 can search for the Bluetooth device 110. [ For example, the Bluetooth device 110 may be a Bluetooth enabled sensor node. Also, the Bluetooth device 110 may be an object Internet device and may be a BLE device supporting CoAP.

실시예에서, 검색의 주체는 게이트웨이(120)가 아닌 스마트폰이나 블루투스 장치(110)일 수 있다. 또한, 검색의 대상은 다른 블루투스 장치일 수 있다. 말하자면, 아래의 실시예에서, 게이트웨이(120)는 블루투스 장치(110)로 대체될 수 있다.In an embodiment, the subject of the search may be a smartphone or a Bluetooth device 110, rather than a gateway 120. [ Also, the object of the search may be another Bluetooth device. In other words, in the following embodiment, the gateway 120 may be replaced with a Bluetooth device 110. [

도 10에서, 제1 블루투스 장치(1010) 및 제2 블루투스 장치(1020)의 각각은 블루투스 장치(110)에 대응할 수 있다.In FIG. 10, each of the first Bluetooth device 1010 and the second Bluetooth device 1020 may correspond to the Bluetooth device 110.

도 8을 참조하여 전술된 단계(810)는 아래의 단계들(1030, 1040 및 1050)을 포함할 수 있다.Step 810 described above with reference to FIG. 8 may include the following steps 1030, 1040, and 1050.

게이트웨이(120)는 제1 통신부(320)의 통신 범위 내에서 CoAP를 지원하는 블루투스 장치(110)를 검색할 수 있다. 블루투스 장치(110)의 검색에 있어서, 전통적인 블루투스 스택의 GATT 및 ATT가 사용될 수 있다. 그러나, CoAP 및 L2CAP의 구조만을 가지고, 블루투스 장치(110)의 검색이 가능해지면, 게이트웨이(120)의 구조가 더 간단해질 수 있고, 절차가 더 단순하게 될 수 있다.The gateway 120 can search for the Bluetooth device 110 supporting the CoAP within the communication range of the first communication unit 320. [ In searching for the Bluetooth device 110, the GATT and ATT of a conventional Bluetooth stack may be used. However, with the structure of the CoAP and the L2CAP, when the Bluetooth device 110 can be searched, the structure of the gateway 120 can be simplified, and the procedure can be simplified.

실시예에서, 게이트웨이(120)의 메시지의 생성은 게이트웨이(120)의 처리부(310)에 의해 이루어질 수 있다. 게이트웨이(120)의 메시지의 전송 및 수신은 게이트웨이(120)의 제1 통신부(320)에 의해 이루어질 수 있다. 제1 블루투스 장치(1010)의 메시지의 생성은 제1 블루투스 장치(1010)의 처리부에 의해 이루어질 수 있다. 제1 블루투스 장치(1010)의 메시지의 전송 및 수신은 제1 블루투스 장치(1010)의 통신부에 의해 이루어질 수 있다. 제2 블루투스 장치(1020)의 메시지의 생성은 제2 블루투스 장치(1020)의 처리부에 의해 이루어질 수 있다. 제1 블루투스 장치(1020)의 메시지의 전송 및 수신은 제1 블루투스 장치(1020)의 통신부에 의해 이루어질 수 있다. 제1 블루투스 장치(1010)의 처리부 및 제2 블루투스 장치(1020)의 처리부의 각각은 블루투스 장치(110)의 처리부(210)에 대응할 수 있다. 제1 블루투스 장치(1010)의 통신부 및 제2 블루투스 장치(1020)의 통신부의 각각은 블루투스 장치(110)의 통신부(220)에 대응할 수 있다.In an embodiment, the generation of the message of the gateway 120 may be performed by the processing unit 310 of the gateway 120. [ The transmission and reception of messages of the gateway 120 may be performed by the first communication unit 320 of the gateway 120. [ The generation of the message of the first Bluetooth device 1010 may be performed by the processing unit of the first Bluetooth device 1010. The transmission and reception of the message of the first Bluetooth device 1010 may be performed by the communication unit of the first Bluetooth device 1010. The generation of the message of the second Bluetooth device 1020 may be performed by the processing unit of the second Bluetooth device 1020. [ The transmission and reception of the message of the first Bluetooth device 1020 may be performed by the communication unit of the first Bluetooth device 1020. The processing unit of the first Bluetooth device 1010 and the processing unit of the second Bluetooth device 1020 may correspond to the processing unit 210 of the Bluetooth device 110, respectively. The communication unit of the first Bluetooth device 1010 and the communication unit of the second Bluetooth device 1020 may correspond to the communication unit 220 of the Bluetooth device 110, respectively.

단계(1030)에서, 게이트웨이(120)는 브로드캐스트 메시지를 생성할 수 있다. 게이트웨이(120)는 브로드캐스트 메시지를 브로드캐스트할 수 있다.In step 1030, the gateway 120 may generate a broadcast message. The gateway 120 may broadcast a broadcast message.

브로드캐스트 메시지는 게이트웨이(120)의 주변에 통신 가능한 CoAP를 지원하는 블루투스 장치(110)를 검색하기 위한 메시지일 수 있다.The broadcast message may be a message for searching for a Bluetooth device 110 that supports a CoAP capable of communicating around the gateway 120. [

브로드캐스트 메시지의 블루투스 링크 계층 패킷 타입은 어드버타이징 인디케이션(advertising indication; ADV_IND)일 수 있다. 브로드캐스트 메시지의 에이디(AD) 타입은 CoAP 메시지라는 것을 나타내는 값을 가질 수 있다. 브로드캐스트 메시지의 페이로드는 CoAP Ping(핑) 요청 메시지를 포함할 수 있다.The Bluetooth link layer packet type of the broadcast message may be an advertisement indication (ADV_IND). The AD type of the broadcast message may have a value indicating that it is a CoAP message. The payload of the broadcast message may include a CoAP Ping (ping) request message.

CoAP Ping 요청 메시지의 트랜잭션(transaction) 타입은 컨퍼머블(confirmable)일 수 있다. CoAP Ping 요청 메시지의 토큰(token) 길이는 0일 수 있다. CoAP Ping 요청 메시지의 코드는 0.00 (즉, 빔(empty))일 수 있다. CoAP Ping 요청 메시지는 트랜잭션 타입, 토큰 길이 및 코드 외의 다른 옵션을 포함하지 않을 수 있다. CoAP Ping 요청 메시지는 4바이트일 수 있다.The transaction type of the CoAP Ping request message may be confirmable. The token length of the CoAP Ping request message may be zero. The code of the CoAP Ping request message may be 0.00 (i.e., empty). The CoAP Ping request message may not include the transaction type, token length, and other options besides the code. The CoAP Ping request message may be 4 bytes.

통신 범위 내에 있는 블루투스 장치들은 브로드캐스트 메시지를 수신할 수 있다.Bluetooth devices within the communication range can receive broadcast messages.

단계(1040)에서, 브로드캐스트 메시지를 수신한 제1 블루투스 장치(1010)는 브로드캐스트 메시지에 대한 응답 메시지를 생성할 수 있다. 제1 블루투스 장치(1010)는 응답 메시지를 게이트웨이(120)로 전송할 수 있다.In step 1040, the first Bluetooth device 1010 receiving the broadcast message may generate a response message for the broadcast message. The first Bluetooth device 1010 may send a response message to the gateway 120. [

응답 메시지의 블루투스 링크 계층 패킷 타입은 어드버타이징 다이렉트 인디케이션(advertising direct indication; ADV_DIRECT_IND)일 수 있다. 응답 메시지의 AD 타입은 CoAP 메시지라는 것을 나타내는 값을 가질 수 있다. 응답 메시지의 페이로드는 CoAP Ping 요청 메시지에 대한 CoAP Ping 응답 메시지를 포함할 수 있다.The Bluetooth link layer packet type of the response message may be an advertising direct indication (ADV_DIRECT_IND). The AD type of the response message may have a value indicating that it is a CoAP message. The payload of the response message may include a CoAP Ping response message for the CoAP Ping request message.

CoAP Ping 응답 메시지의 트랜잭션 타입은 리셋(reset; RST)일 수 있다. CoAP Ping 응답 메시지의 토큰 길이는 0일 수 있다. CoAP Ping 응답 메시지의 코드는 0.00 (즉, 빔)일 수 있다. CoAP Ping 응답 메시지의 메시지 식별자(message identifier; MID)는 CoAP Ping 요청 메시지의 MID와 동일할 수 있다. CoAP Ping 응답 메시지는 4바이트일 수 있다.The transaction type of the CoAP Ping response message may be a reset (RST). The token length of the CoAP Ping response message may be zero. The code of the CoAP Ping response message may be 0.00 (i.e., beam). The message identifier (MID) of the CoAP Ping response message may be the same as the MID of the CoAP Ping request message. The CoAP Ping reply message may be 4 bytes.

응답 메시지를 수신한 게이트웨이(120)는 주변에 CoAP를 지원하는 제1 블루투스 장치(1010)가 존재한다는 것을 인식할 수 있다. 예를 들면, 게이트웨이(120)는 제1 블루투스 장치(1010)의 주소를 알 수 있다.The gateway 120 receiving the response message can recognize that the first Bluetooth device 1010 supporting the CoAP is present. For example, the gateway 120 may know the address of the first Bluetooth device 1010.

단계(1050)에서, 브로드캐스트 메시지를 수신한 제2 블루투스 장치(1020)는 브로드캐스트 메시지에 대한 응답 메시지를 생성할 수 있다. 제2 블루투스 장치(1020)는 응답 메시지를 게이트웨이(120)로 전송할 수 있다.In step 1050, the second Bluetooth device 1020 receiving the broadcast message may generate a response message to the broadcast message. The second Bluetooth device 1020 may send a response message to the gateway 120. [

응답 메시지를 수신한 게이트웨이(120)는 주변에 CoAP를 지원하는 제2 블루투스 장치(1020)가 존재한다는 것을 인식할 수 있다. 예를 들면, 게이트웨이(120)는 제2 블루투스 장치(1020)의 주소를 알 수 있다.Upon receiving the response message, the gateway 120 may recognize that the second Bluetooth device 1020 supporting the CoAP is present. For example, the gateway 120 may know the address of the second Bluetooth device 1020.

전술된 것처럼, 게이트웨이(120)는 브로드캐스트 메시지를 사용하여 블루투스 장치(110)를 검색할 수 있다. 게이트웨이(120)는 CoAP Ping 요청 메시지를 포함하는 브로드캐스트 메시지를 브로드캐스트하고, 블루투스 장치(110)로부터 CoAP Ping 요청 메시지에 대응하는 CoAP Ping 응답 메시지를 수신함으로써 블루투스 장치(110)를 검출할 수 있다.
As described above, the gateway 120 can search for the Bluetooth device 110 using the broadcast message. The gateway 120 may detect the Bluetooth device 110 by broadcasting a broadcast message including the CoAP Ping request message and receiving a CoAP Ping response message corresponding to the CoAP Ping request message from the Bluetooth device 110 .

도 11은 일 예에 따른 관찰을 사용하는 CoAP를 지원하는 블루투스 장치의 검색 방법의 흐름도이다.11 is a flowchart of a search method of a Bluetooth device supporting CoAP using observation according to an example.

게이트웨이(120)는 블루투스 장치(110)를 검색할 수 있다. 예를 들면, 블루투스 장치(110)는 블루투스 지원 센서 노드일 수 있다. 또한, 블루투스 장치(110)는 사물인터넷 기기일 수 있으며, CoAP를 지원하는 BLE 기기일 수 있다.The gateway 120 can search for the Bluetooth device 110. [ For example, the Bluetooth device 110 may be a Bluetooth enabled sensor node. Also, the Bluetooth device 110 may be an object Internet device and may be a BLE device supporting CoAP.

실시예에서, 제1 게이트웨이(1110) 및 제2 게이트웨이(1120)의 각각은 스마트폰일 수 있다.In an embodiment, each of the first gateway 1110 and the second gateway 1120 may be a smart phone.

도 11에서, 제1 게이트웨이(1110) 및 제2 게이트웨이(1120)의 각각은 게이트웨이(120)에 대응할 수 있다.In FIG. 11, each of the first gateway 1110 and the second gateway 1120 may correspond to the gateway 120.

도 8을 참조하여 전술된 단계(810)는 아래의 단계(1130)를 포함할 수 있다.Step 810 described above with reference to FIG. 8 may include step 1130 below.

실시예에서, 블루투스 장치(110)의 메시지의 생성은 블루투스 장치(110)의 처리부(210)에 의해 이루어질 수 있다. 블루투스 장치(110)의 메시지의 전송 및 수신은 블루투스 장치(110)의 통신부(220)에 의해 이루어질 수 있다. 제1 게이트웨이(1110)의 메시지의 전송 및 수신은 제1 게이트웨이(1110)의 제1 통신부에 의해 이루어질 수 있다. 제2 게이트웨이(1120)의 메시지의 전송 및 수신은 제2 게이트웨이(1120)의 통신부에 의해 이루어질 수 있다. 제1 게이트웨이(1110)의 통신부 및 제2 게이트웨이(1120)의 통신부의 각각은 게이트웨이(120)의 제1 통신부(320)에 대응할 수 있다.In an embodiment, the message of the Bluetooth device 110 may be generated by the processing unit 210 of the Bluetooth device 110. The transmission and reception of the message of the Bluetooth device 110 may be performed by the communication unit 220 of the Bluetooth device 110. [ The transmission and reception of the message of the first gateway 1110 may be performed by the first communication unit of the first gateway 1110. The transmission and reception of messages of the second gateway 1120 may be performed by a communication unit of the second gateway 1120. The communication unit of the first gateway 1110 and the communication unit of the second gateway 1120 may correspond to the first communication unit 320 of the gateway 120, respectively.

단계(1130)에서, 블루투스 장치(110)는 브로드캐스트 메시지를 생성할 수 있다. 블루투스 장치(110)는 브로드캐스트 메시지를 브로드캐스트할 수 있다. 블루투스 장치(110)는 주기적으로 브로드캐스트 메시지를 브로드캐스트할 수 있다.At step 1130, the Bluetooth device 110 may generate a broadcast message. The Bluetooth device 110 may broadcast a broadcast message. The Bluetooth device 110 may periodically broadcast a broadcast message.

브로드캐스트 메시지는 통신 가능한 CoAP를 지원하는 블루투스 장치(110)가 존재함을 알리기 위한 메시지일 수 있다. 브로드캐스트 메시지는 블루투스 장치(110)가 CoAP를 지원하는 블루투스 노드임을 나타낼 수 있다.The broadcast message may be a message for notifying that the Bluetooth device 110 supporting the CoAP capable of communicating exists. The broadcast message may indicate that the Bluetooth device 110 is a Bluetooth node that supports CoAP.

브로드캐스트 메시지의 블루투스 링크 계층 패킷 타입은 ADV_IND일 수 있다. 브로드캐스트 메시지의 AD 타입은 CoAP 메시지라는 것을 나타내는 값을 가질 수 있다. 브로드캐스트 메시지의 페이로드는 가상 CoAP Ping 응답 메시지를 포함할 수 있다.The Bluetooth link layer packet type of the broadcast message may be ADV_IND. The AD type of the broadcast message may have a value indicating that it is a CoAP message. The payload of the broadcast message may include a virtual CoAP Ping response message.

가상 CoAP Ping 응답 메시지의 트랜잭션 타입은 RST일 수 있다. 가상 CoAP Ping 응답 메시지의 토큰 길이는 0일 수 있다. 가상 CoAP Ping 응답 메시지의 코드는 0.00 (즉, 빔)일 수 있다. 가상 CoAP Ping 응답 메시지의 MID는 임의의 값을 가질 수 있다. 가상 CoAP Ping 응답 메시지는 4바이트일 수 있다.The transaction type of the virtual CoAP Ping response message may be RST. The token length of the virtual CoAP Ping response message may be zero. The code of the virtual CoAP Ping reply message may be 0.00 (i.e., beam). The MID of the virtual CoAP Ping response message can have any value. The virtual CoAP Ping reply message may be 4 bytes.

통신 범위 내에 있는 게이트웨이들은 브로드캐스트 메시지를 수신할 수 있다.Gateways within the communication range can receive broadcast messages.

브로드캐스트 메시지를 관찰하고 있던 제1 게이트웨이(1110)는 브로드캐스트 메시지를 수신할 수 있다. 제1 게이트웨이(1110)는 브로드캐스트 메시지를 수신함에 따라 CoAP를 지원하는 BLE 기기인 블루투스 장치(110)를 발견할 수 있다.The first gateway 1110 that is watching the broadcast message can receive the broadcast message. Upon receiving the broadcast message, the first gateway 1110 may discover the Bluetooth device 110, which is a BLE device supporting CoAP.

또한, 브로드캐스트 메시지를 관찰하고 있던 제2 게이트웨이(1120)는 브로드캐스트 메시지를 수신할 수 있다. 제2 게이트웨이(1120)는 브로드캐스트 메시지를 수신함에 따라 CoAP를 지원하는 BLE 기기인 블루투스 장치(110)를 발견할 수 있다.In addition, the second gateway 1120, which was watching the broadcast message, can receive the broadcast message. Upon receiving the broadcast message, the second gateway 1120 may discover the Bluetooth device 110 as a BLE device supporting CoAP.

전술된 것처럼, 게이트웨이(120)는 브로드캐스트 메시지를 관찰할 수 있다. 게이트웨이(120)는 가상 CoAP Ping 응답 메시지를 포함하는 브로드캐스트 메시지를 수신함에 따라 브로드캐스트 메시지를 브로드캐스트한 블루투스 장치(110)를 발견할 수 있다.
As described above, the gateway 120 can observe the broadcast message. The gateway 120 may discover the Bluetooth device 110 that broadcasted the broadcast message as it receives the broadcast message including the virtual CoAP Ping response message.

도 12는 일 예에 따른 블루투스 장치의 리소스를 검색하는 방법의 흐름도이다.12 is a flowchart of a method of searching for a resource of a Bluetooth device according to an example.

게이트웨이(120)가 블루투스 장치(110)를 발견 또는 검색한 후, 게이트웨이(120)는 블루투스 장치(110)가 어떤 리소스를 가지고 있는지를 확인할 수 있다.After the gateway 120 discovers or retrieves the Bluetooth device 110, the gateway 120 can determine what resources the Bluetooth device 110 has.

리소스는 기능(function) 및 속성(attribute)을 포함할 수 있다.A resource may include a function and an attribute.

실시예에서, 게이트웨이(120)는 L2CAP 계층 위의 CoAP를 이용하여 블루투스 장치(110)의 리소스를 검색할 수 있다.In an embodiment, the gateway 120 may retrieve the resources of the Bluetooth device 110 using the CoAP over the L2CAP layer.

도 8을 참조하여 전술된 단계(820)는 아래의 단계들(1210, 1220, 1230, 1240 및 1250)을 포함할 수 있다.Step 820 described above with reference to FIG. 8 may include the following steps 1210, 1220, 1230, 1240, and 1250.

실시예에서, 블루투스 장치(110)의 메시지의 전송 및 수신은 통신부(220)에 의해 이루어질 수 있다. 블루투스 장치(110)에 의해 전송되는 메시지는 처리부(210)에 의해 생성될 수 있다. 게이트웨이(120)의 메시지의 전송 및 수신은 제1 통신부(320)에 의해 이루어질 수 있다. 게이트웨이(120)에 의해 전송되는 메시지는 처리부(310)에 의해 생성될 수 있다.In an embodiment, the transmission and reception of messages of the Bluetooth device 110 may be performed by the communication unit 220. [ The message transmitted by the Bluetooth device 110 may be generated by the processing unit 210. [ The transmission and reception of the message of the gateway 120 may be performed by the first communication unit 320. [ The message transmitted by the gateway 120 may be generated by the processing unit 310. [

단계(1210)에서, 게이트웨이(120)는 블루투스 장치(110)와 통신 채널을 설립(establish)할 수 있다. 설립된 통신 채널은 소정의 시간 동안 유지될 수 있다.At step 1210, the gateway 120 may establish a communication channel with the Bluetooth device 110. The established communication channel may be maintained for a predetermined time.

통신 채널을 설립하기 위해 게이트웨이(120)는 연결 요청(connect request; CONNECT_REQ) 메시지를 블루투스 장치(110)로 전송할 수 있다.To establish a communication channel, the gateway 120 may send a connect request (CONNECT_REQ) message to the Bluetooth device 110.

단계(1220)에서, 게이트웨이(120)는 "CoAP GET(겟) /.cb" 메시지를 블루투스 장치(110)로 전송할 수 있다. "CoAP GET /.cb" 메시지는 링크 계층(Link Layer; LL) 데이터 패킷의 형태로 전송될 수 있다.In step 1220, the gateway 120 may send a "CoAP GET / .cb" message to the Bluetooth device 110. The "CoAP GET / .cb" message may be transmitted in the form of a Link Layer (LL) data packet.

".cb"는 CoAP 메시지의 URI-경로 옵션에 포함될 수 있다. ".cb"의 역할은 IETF CoAP 규격(예를 들면, 알에프씨7252(RFC7252))의 ".wellknown/core"의 역할과 동일할 수 있다."다만, ".wellknown/core"는 블루투스 통신에 있어서는 너무 길 수 있기 때문에, 단순하게 줄여서 사용될 수 있다.".cb" may be included in the URI-route option of the CoAP message. The role of ".cb" may be the same as the role of ".wellknown / core" in the IETF CoAP specification (eg, RFC 7252) Since it can be too long, it can be used simply abbreviated.

단계(1230)에서, 연결 요청 메시지를 수신한 블루투스 장치(110)는 연결 요청 메시지에 대한 응답 메시지를 전송할 수 있다.In step 1230, the Bluetooth device 110 having received the connection request message may transmit a response message to the connection request message.

응답 메시지의 크기가 소정의 제1 값의 이상인 경우, 블루투스 L2에서 응답 메시지가 여러 개의 서브 메시지들로 나뉘어질 수 있고, 나뉘어진 서브 메시지들이 전송될 수 있다.If the size of the response message is greater than or equal to a predetermined first value, the response message may be divided into a plurality of sub messages in the Bluetooth L2, and divided sub messages may be transmitted.

또한, 응답 메시지의 크기가 소정의 제2 값의 이상인 경우, CoAP의 블록와이즈(blockwise) 전송(transfer) 기능이 사용될 수 있다.In addition, if the size of the response message is greater than or equal to a predetermined second value, a blockwise transfer function of the CoAP can be used.

응답 메시지의 페이로드는 블루투스 장치(110)의 리소스의 경로를 포함할 수 있다. 리소스는 복수일 수 있다. 페이로드는 복수의 리소스들의 경로들의 목록을 포함할 수 있다.The payload of the response message may include the path of the resource of the Bluetooth device 110. The resource may be plural. The payload may include a list of paths of a plurality of resources.

단계(1230)는 단계(1231) 및 단계(1232)를 포함할 수 있다.Step 1230 may include steps 1231 and 1232. [

단계(1231)에서, 블루투스 장치(110)는 "CoAP 2.05 Content(컨텐츠)" 메시지를 게이트웨이(120)로 전송할 수 있다. "CoAP 2.05 Content" 메시지는 LL 데이터 패킷의 형태로 전송될 수 있다.In step 1231, the Bluetooth device 110 may send a "CoAP 2.05 Content (Content)" message to the gateway 120. [ The "CoAP 2.05 Content" message may be transmitted in the form of an LL data packet.

단계(1232)에서, 블루투스 장치(110)는 "CoAP 2.05 continue(컨티뉴)" 메시지를 게이트웨이(120)로 전송할 수 있다. "CoAP 2.05 continue" 메시지는 LL 데이터 패킷의 형태로 전송될 수 있다.In step 1232, the Bluetooth device 110 may send a "CoAP 2.05 continue" message to the gateway 120. The "CoAP 2.05 continue" message may be transmitted in the form of an LL data packet.

단계(1240)에서, 게이트웨이(120)는 리소스의 경로에 대한 재질의(re-question) 메시지를 블루투스 장치(110)로 전송할 수 있다. 재질의 메시지는 경로에 대한 세부의 정보를 요청하는 메시지일 수 있다.At step 1240, the gateway 120 may send a re-question message to the Bluetooth device 110 about the path of the resource. The material message may be a message requesting details of the path.

예를 들면, "container"라는 리소스의 경로가 존재하는 경우, 게이트웨이(120)는 "CoAP GET(겟) /container Accept(어셉트):link-format(링크-포맷)" 메시지를 블루투스 장치(110)로 전송할 수 있다. "CoAP GET /container Accept:link-format" 메시지는 LL 데이터 패킷의 형태로 전송될 수 있다.For example, if there is a path of a resource called " container ", the gateway 120 transmits a "CoAP GET / ). The "CoAP GET / container Accept: link-format" message may be transmitted in the form of an LL data packet.

단계(1250)에서, 리소스의 경로에 대한 재질의 메시지를 수신한 블루투스 장치(110)는 재질의 메시지에 대한 응답 메시지를 전송할 수 있다. 응답 메시지는 리소스의 경로에 대한 정보를 포함할 수 있다.In step 1250, the Bluetooth device 110 receiving the message of the material for the path of the resource may transmit a response message to the message of the material. The response message may include information about the path of the resource.

응답 메시지의 크기가 소정의 제1 값의 이상인 경우, 블루투스 L2에서 응답 메시지가 여러 개의 서브 메시지들로 나뉘어질 수 있고, 나뉘어진 서브 메시지들이 전송될 수 있다.If the size of the response message is greater than or equal to a predetermined first value, the response message may be divided into a plurality of sub messages in the Bluetooth L2, and divided sub messages may be transmitted.

또한, 응답 메시지의 크기가 소정의 제2 값의 이상인 경우, CoAP의 블록와이즈 전송 기능이 사용될 수 있다.Also, when the size of the response message is equal to or larger than a predetermined second value, the block-wise transmission function of CoAP can be used.

응답 메시지의 페이로드는 리소스의 경로에 대한 정보를 포함할 수 있다.The payload of the response message may include information about the path of the resource.

단계(1250)는 단계(1251) 및 단계(1252)를 포함할 수 있다.Step 1250 may include steps 1251 and 1252. [

단계(1251)에서, 블루투스 장치(110)는 "CoAP 2.05 content" 메시지를 게이트웨이(120)로 전송할 수 있다. "CoAP 2.05 content" 메시지는 LL 데이터 패킷의 형태로 전송될 수 있다.At step 1251, the Bluetooth device 110 may send a "CoAP 2.05 content" message to the gateway 120. The "CoAP 2.05 content" message may be transmitted in the form of an LL data packet.

단계(1252)에서, 블루투스 장치(110)는 "CoAP 2.05 continue" 메시지를 게이트웨이(120)로 전송할 수 있다. "CoAP 2.05 continue" 메시지는 LL 데이터 패킷의 형태로 전송될 수 있다.At step 1252, the Bluetooth device 110 may send a "CoAP 2.05 continue" message to the gateway 120. The "CoAP 2.05 continue" message may be transmitted in the form of an LL data packet.

전술된 것처럼, 게이트웨이(120)는 블루투스 장치(110)의 리소스를 검색하기 위해 연결 요청 메시지를 블루투스 장치(110)로 전송할 수 있다. 게이트웨이(120)는 블루투스 장치(110)로부터 연결 요청 메시지에 대한 응답 메시지를 수신할 수 있다. 응답 메시지는 블루투스 장치(110)의 리소스의 경로를 포함할 수 있다. 게이트웨이(120)는 리소스의 경로를 포함하는 재질의 메시지를 블루투스 장치(110)로 전송할 수 있다. 게이트웨이(120)는 리소스의 경로에 대한 정보를 포함하는 응답 메시지를 블루투스 장치(110)로부터 수신할 수 있다. 게이트웨이(120)는 재질의 메시지에 대한 응답 메시지로부터 리소스의 경로에 대한 정보를 획득할 수 있다.
As described above, the gateway 120 may send a connection request message to the Bluetooth device 110 to retrieve the resources of the Bluetooth device 110. [ The gateway 120 may receive a response message to the connection request message from the Bluetooth device 110. [ The response message may include the path of the resource of the Bluetooth device 110. [ The gateway 120 may transmit a message of a material including the path of the resource to the Bluetooth device 110. [ The gateway 120 may receive a response message from the Bluetooth device 110 that includes information on the path of the resource. The gateway 120 may obtain information on the path of the resource from the response message to the message of the material.

도 13은 일 예에 따른 게이트웨이의 외부 장치로부터의 요청을 처리하는 방법의 흐름도이다.13 is a flowchart of a method of processing a request from an external device of a gateway according to an example.

게이트웨이(120)는 외부 장치(610)로부터의 요청을 처리할 수 있다. 게이트웨이(120)를 통해 블루투스 장치(110)는 외부 장치(610)로부터의 요청에 대한 응답을 제공할 수 있다.The gateway 120 may process the request from the external device 610. Through the gateway 120, the Bluetooth device 110 may provide a response to a request from the external device 610.

실시예에서, 블루투스 장치(110)의 메시지의 전송 및 수신은 통신부(220)에 의해 이루어질 수 있다. 블루투스 장치(110)에 의해 전송되는 메시지는 처리부(210)에 의해 생성될 수 있다. 게이트웨이(120)에 있어서, 게이트웨이(120) 및 블루투스 장치(110) 간의 메시지의 전송 및 수신은 제1 통신부(320)에 의해 이루어질 수 있다. 게이트웨이(120)에 있어서, 게이트웨이(120) 및 외부 장치(610) 간의 메시지의 전송 및 수신은 제2 통신부(330)에 의해 이루어질 수 있다. 게이트웨이(120)에 의해 전송되는 메시지는 처리부(310)에 의해 생성될 수 있다.In an embodiment, the transmission and reception of messages of the Bluetooth device 110 may be performed by the communication unit 220. [ The message transmitted by the Bluetooth device 110 may be generated by the processing unit 210. [ In the gateway 120, transmission and reception of messages between the gateway 120 and the Bluetooth device 110 may be performed by the first communication unit 320. [ In the gateway 120, transmission and reception of messages between the gateway 120 and the external device 610 can be performed by the second communication unit 330. [ The message transmitted by the gateway 120 may be generated by the processing unit 310. [

단계(1310)에서, 게이트웨이(120)의 처리부(310)는 블루투스 장치(110)를 검색할 수 있고, 검색된 블루투스 장치(110)의 주소를 저장할 수 있다.In step 1310, the processing unit 310 of the gateway 120 may search for the Bluetooth device 110 and may store the address of the searched Bluetooth device 110.

단계(1310)는 도 8을 참조하여 전술된 단계(810)에 대응할 수 있다. 블루투스 장치(110)의 검색을 위해 도 10 및 도 11을 참조하여 전술된 실시예가 사용될 수 있다.Step 1310 may correspond to step 810 described above with reference to FIG. The embodiments described above with reference to FIGS. 10 and 11 may be used for the search of the Bluetooth device 110. FIG.

단계(1320)에서, 게이트웨이(120)는 블루투스 장치(110)의 리소스를 검색할 수 있고, 검색된 리소스의 정보를 저장할 수 있다.In step 1320, the gateway 120 may retrieve the resources of the Bluetooth device 110 and may store information of the retrieved resources.

단계(1320)는 도 8을 참조하여 전술된 단계(820)에 대응할 수 있다. 블루투스 장치(110)의 리소스의 검색을 위해 도 12를 참조하여 전술된 실시예가 사용될 수 있다.Step 1320 may correspond to step 820 described above with reference to FIG. The above-described embodiment with reference to FIG. 12 can be used for searching for the resources of the Bluetooth device 110. FIG.

단계(1330)에서, 게이트웨이(120)의 처리부(310)는 블루투스 장치(110)의 리소스에 대한 매핑을 생성할 수 있다. 게이트웨이(120)의 처리부(310)는 블루투스 장치(110)의 리소스 및 게이트웨이(120)의 리소스 경로 간의 매핑을 생성할 수 있다. 게이트웨이(120)는 블루투스 장치(110)의 리소스 및 게이트웨이(120)의 리소스 경로 간의 매핑을 저장할 수 있다.In step 1330, the processing unit 310 of the gateway 120 may generate a mapping for the resource of the Bluetooth device 110. [ The processing unit 310 of the gateway 120 may generate a mapping between the resource of the Bluetooth device 110 and the resource path of the gateway 120. [ The gateway 120 may store a mapping between a resource of the Bluetooth device 110 and a resource path of the gateway 120. [

리소스 경로는 프리픽스(prefix), 블루투스 장치 식별자 및 리소스 식별자를 포함할 수 있다.The resource path may include a prefix, a Bluetooth device identifier, and a resource identifier.

프리픽스는 블루투스 네트워크 내의 노드에 대한 경로임을 나타낼 수 있다.The prefix may indicate a path to a node in the Bluetooth network.

블루투스 장치 식별자는 검색된 블루투스 장치(110)의 식별자일 수 있다. 리소스 식별자는 검색된 리소스의 식별자일 수 있다.The Bluetooth device identifier may be an identifier of the searched Bluetooth device 110. The resource identifier may be an identifier of the retrieved resource.

예를 들면, 프리픽스가 "ble"이고, 블루투스 기기 식별자가 "00123"이고, 리소스의 식별자가 "temp"이면, 리소스 경로는 "/ble/00123/temp"일 수 있다.For example, if the prefix is "ble", the Bluetooth device identifier is "00123", and the identifier of the resource is "temp", then the resource path may be "/ ble / 00123 / temp".

단계(1330)는 도 8을 참조하여 전술된 단계(820)에 대응할 수 있다. 말하자면, 단계(820)는 단계들(1320 및 1330)을 포함할 수 있다.Step 1330 may correspond to step 820 described above with reference to FIG. That is to say, step 820 may include steps 1320 and 1330.

아래의 단계들(1340, 1350, 1355, 1360, 1365, 1370, 1380 및 1390)은 도 7을 참조하여 전술된 단계(730) 및 도 8을 참조하여 전술된 단계(830)의 각각에 대응할 수 있다.The following steps 1340, 1350, 1355, 1360, 1365, 1370, 1380 and 1390 may correspond to each of step 730 described above with reference to FIG. 7 and step 830 described above with reference to FIG. 8 have.

단계(1340)에서, 게이트웨이(120)는 외부 장치(610)로부터 요청 메시지를 수신할 수 있다.In step 1340, the gateway 120 may receive a request message from the external device 610. [

요청 메시지는 CoAP의 요청 메시지일 수 있다.The request message may be a request message of the CoAP.

게이트웨이(120)는 요청 메시지의 URI-경로를 사용하여 요청 메시지의 목적지(destination)인 블루투스 장치(110)의 주소를 검색할 수 있다.The gateway 120 may use the URI-path of the request message to retrieve the address of the Bluetooth device 110 which is the destination of the request message.

단계(1350)에서, 요청 메시지의 목적지인 블루투스 장치(110)와의 블루투스 연결이 성립되어 있지 않은 경우, 게이트웨이(120)의 처리부(310)는 게이트웨이(120) 및 블루투스 장치(110) 간의 연결을 성립시킬 수 있다. 블루투스 연결의 성립을 위해 게이트웨이(120)는 CONNECT_REQ 메지지를 블루투스 장치(110)로 전송할 수 있다. CONNECT_REQ 메지지를 통해 게이트웨이(120) 및 블루투스 장치(110) 간의 연결이 성립될 수 있다.The processing unit 310 of the gateway 120 establishes a connection between the gateway 120 and the Bluetooth device 110 when the Bluetooth connection with the Bluetooth device 110 that is the destination of the request message is not established in step 1350 . The gateway 120 may send a CONNECT_REQ message to the Bluetooth device 110 to establish a Bluetooth connection. A connection between the gateway 120 and the Bluetooth device 110 can be established through the CONNECT_REQ message.

단계(1355)에서, 게이트웨이(120)의 처리부(310)는 요청 메시지의 필드를 제거할 수 있다. 게이트웨이(120)의 처리부(310)는 요청 메시지로부터 1) URI-호스트, 2) URI-포트, 3) URI-경로 중 프리픽스 및 4) URI-경로 중 블루투스 장치 식별자를 제거할 수 있고, 요청 메시지로부터 IP 헤더 및 UDP 헤더를 제거할 수 있다.At step 1355, the processing unit 310 of the gateway 120 may remove the field of the request message. The processing unit 310 of the gateway 120 may remove the Bluetooth device identifier of the URI-host, the URI-port, the URI-path prefix and the URI-path from the request message, Lt; RTI ID = 0.0 > UDP < / RTI >

단계(1360)에서, 게이트웨이(120)는 요청 메시지를 블루투스 장치(110)로 전달할 수 있다.In step 1360, the gateway 120 may forward the request message to the Bluetooth device 110.

단계(1365)에서, 게이트웨이(120)의 처리부(310)는 요청 메시지에 대한 응답 메시지를 전달하기 위해 요구되는 정보를 저장할 수 있다. 게이트웨이(120)의 처리부(310)는 요청 메시지를 전송한 소스인 외부 장치(610)의 주소 및 포트 번호를 저장할 수 있다. 또한, 게이트웨이(120)는 요청 메시지의 토큰 필드 및 MID 필드를 저장할 수 있다.In step 1365, the processing unit 310 of the gateway 120 may store information required to forward a response message to the request message. The processing unit 310 of the gateway 120 may store the address and the port number of the external device 610, which is the source of the request message. In addition, the gateway 120 may store the token field and the MID field of the request message.

단계(1370)에서, 게이트웨이(120)는 블루투스 장치(110)로부터 요청 메시지에 대한 응답 메시지를 수신할 수 있다.In step 1370, the gateway 120 may receive a response message to the request message from the Bluetooth device 110. [

단계(1380)에서, 응답 메시지를 수신하면, 게이트웨이(120)의 처리부(310)는 저장된 외부 장치(610)의 주소, 외부 장치(610)의 포트 번호, 토큰 필드 및 MID 필드를 참고하여 응답 메시지의 목적지인 외부 장치(610)를 식별할 수 있다.Upon receiving the response message, the processing unit 310 of the gateway 120 refers to the address of the external device 610, the port number of the external device 610, the token field, and the MID field in step 1380, Lt; RTI ID = 0.0 > 610 < / RTI >

단계(1390)에서, 게이트웨이(120)는 응답 메시지를 외부 장치(610)로 전달할 수 있다.
In step 1390, the gateway 120 may forward the response message to the external device 610. [

도 14는 일 예에 따른 게이트웨이의 외부 장치로부터의 요청을 처리하는 방법의 흐름도이다.14 is a flowchart of a method of processing a request from an external device of a gateway according to an example.

게이트웨이(120)는 블루투스 장치(110)로부터의 요청을 처리할 수 있다. 게이트웨이(120)를 통해 외부 장치(610)는 블루투스 장치(110)로부터의 요청에 대한 응답을 제공할 수 있다.The gateway 120 may process the request from the Bluetooth device 110. Through the gateway 120, the external device 610 can provide a response to the request from the Bluetooth device 110. [

실시예에서, 블루투스 장치(110)의 메시지의 전송 및 수신은 통신부(220)에 의해 이루어질 수 있다. 블루투스 장치(110)에 의해 전송되는 메시지는 처리부(210)에 의해 생성될 수 있다. 게이트웨이(120)에 있어서, 게이트웨이(120) 및 블루투스 장치(110) 간의 메시지의 전송 및 수신은 제1 통신부(320)에 의해 이루어질 수 있다. 게이트웨이(120)에 있어서, 게이트웨이(120) 및 외부 장치(610) 간의 메시지의 전송 및 수신은 제2 통신부(330)에 의해 이루어질 수 있다. 게이트웨이(120)에 의해 전송되는 메시지는 처리부(310)에 의해 생성될 수 있다.In an embodiment, the transmission and reception of messages of the Bluetooth device 110 may be performed by the communication unit 220. [ The message transmitted by the Bluetooth device 110 may be generated by the processing unit 210. [ In the gateway 120, transmission and reception of messages between the gateway 120 and the Bluetooth device 110 may be performed by the first communication unit 320. [ In the gateway 120, transmission and reception of messages between the gateway 120 and the external device 610 can be performed by the second communication unit 330. [ The message transmitted by the gateway 120 may be generated by the processing unit 310. [

우선, 도 13을 참조하여 전술된 단계들(1310, 1320 및 1330)이 수행될 수 있다.First, the steps 1310, 1320, and 1330 described above with reference to FIG. 13 can be performed.

아래의 단계들(1410, 1420, 1430, 1440, 1450, 1460, 1470 및 1480)은 도 7을 참조하여 전술된 단계(730) 및 도 8을 참조하여 전술된 단계(830)의 각각에 대응할 수 있다.The following steps 1410, 1420, 1430, 1440, 1450, 1460, 1470 and 1480 may correspond to each of the above described step 730 with reference to FIG. 7 and step 830 described above with reference to FIG. 8 have.

다음으로, 단계(1410)에서, 게이트웨이(120)는 블루투스 장치(110)로부터 요청 메시지를 수신할 수 있다.Next, at step 1410, the gateway 120 may receive a request message from the Bluetooth device 110. [

요청 메시지는 CoAP의 요청 메시지일 수 있다.The request message may be a request message of the CoAP.

게이트웨이(120)는 요청 메시지의 URI-경로를 사용하여 요청 메시지의 목적지인 외부 장치(610)의 주소를 검색할 수 있다.The gateway 120 may use the URI-path of the request message to retrieve the address of the external device 610 that is the destination of the request message.

단계(1420)에서, 게이트웨이(120)의 처리부(310)는 요청 메시지의 필드를 추출할 수 있고, 추출된 필드를 제거할 수 있다. 게이트웨이(120)의 처리부(310)는 요청 메시지로부터 1) URI-호스트 및 2) URI-포트를 추출할 수 있다. 게이트웨이(120)의 처리부(310)는 요청 메시지로부터 1) URI-호스트 및 2) URI-포트를 제거할 수 있다.In step 1420, the processing unit 310 of the gateway 120 may extract the field of the request message and may remove the extracted field. The processing unit 310 of the gateway 120 may extract 1) URI-host and 2) URI-port from the request message. The processing unit 310 of the gateway 120 may remove 1) the URI-host and 2) the URI-port from the request message.

단계(1430)에서, 게이트웨이(120)의 처리부(310)는 요청 메시지의 헤더를 설정할 수 있다. 게이트웨이(120)의 처리부(310)는 추출된 URI-호스트를 요청 메시지의 IP 헤더의 목적지 주소로 설정할 수 있다. 게이트웨이(120)의 처리부(310)는 추출된 URI-호스트를 요청 메시지의 IP 헤더의 목적지 주소로 설정할 수 있다.In step 1430, the processing unit 310 of the gateway 120 may set the header of the request message. The processing unit 310 of the gateway 120 may set the extracted URI-host as the destination address of the IP header of the request message. The processing unit 310 of the gateway 120 may set the extracted URI-host as the destination address of the IP header of the request message.

단계(1440)에서, 게이트웨이(120)는 요청 메시지를 외부 장치(610)로 전달할 수 있다.At step 1440, the gateway 120 may forward the request message to the external device 610.

단계(1450)에서, 게이트웨이(120)의 처리부(310)는 요청 메시지에 대한 응답 메시지를 전달하기 위해 요구되는 정보를 저장할 수 있다. 게이트웨이(120)의 처리부(310)는 요청 메시지의 토큰 필드, MID 필드, 목적지 IP 주소, 포트 번호를 저장할 수 있고, 요청 메시지를 전송한 블루투스 장치(110)의 블루투스 장치 식별자 및 블루투스 장치(110)의 주소를 저장할 수 있다.In step 1450, the processing unit 310 of the gateway 120 may store information required to forward a response message to the request message. The processing unit 310 of the gateway 120 may store the token field, the MID field, the destination IP address, and the port number of the request message. The processing unit 310 of the gateway 120 may store the Bluetooth device identifier of the Bluetooth device 110, Can be stored.

단계(1460)에서, 게이트웨이(120)는 외부 장치(610)로부터 요청 메시지에 대한 응답 메시지를 수신할 수 있다.In step 1460, the gateway 120 may receive a response message for the request message from the external device 610. [

단계(1470)에서, 응답 메시지를 수신하면, 게이트웨이(120)의 처리부(310)는 저장된 토큰 필드, 저장된 MID 필드, 저장된 목적지 IP 주소, 저장된 포트 번호, 저장된 블루투스 장치(110)의 블루투스 장치 식별자 및 저장된 블루투스 장치(110)의 주소를 참고하여 응답 메시지의 목적지인 블루투스 장치(110)를 식별할 수 있다.Upon receiving the response message, the processing unit 310 of the gateway 120 receives the stored token field, the stored MID field, the stored destination IP address, the stored port number, the Bluetooth device identifier of the stored Bluetooth device 110, It is possible to identify the Bluetooth device 110 as a destination of the response message by referring to the stored address of the Bluetooth device 110. [

단계(1480)에서, 게이트웨이(120)는 응답 메시지를 블루투스 장치(110)로 전달할 수 있다.
In step 1480, the gateway 120 may forward a response message to the Bluetooth device 110. [

도 15는 일 예에 따른 게이트웨이 검색 방법의 흐름도이다.15 is a flowchart of a gateway search method according to an example.

블루투스 장치(110)의 동작 모드에 따라서는, 게이트웨이(120)가 블루투스 장치(110)를 검색하는 것이 아니라, 블루투스 장치(110)가 게이트웨이(120)를 검색해야 하는 경우도 발생할 수 있다. 실시예에서는, 블루투스 장치(110)가 게이트웨이(120)를 검색하는 과정이 설명된다.Depending on the operation mode of the Bluetooth device 110, it may happen that the gateway device 120 does not search for the Bluetooth device 110 but the Bluetooth device 110 needs to search for the gateway device 120. [ In the embodiment, a process in which the Bluetooth device 110 searches for the gateway 120 will be described.

블루투스 장치(110)는 블루투스 지원 센서 노드일 수 있다. 또한, 블루투스 장치(110)는 사물인터넷 기기일 수 있으며, CoAP를 지원하는 BLE 기기일 수 있다.The Bluetooth device 110 may be a Bluetooth-enabled sensor node. Also, the Bluetooth device 110 may be an object Internet device and may be a BLE device supporting CoAP.

도 7을 참조하여 전술된 단계(710)는 아래의 단계들(1510 및 1520)을 포함할 수 있다.Step 710 described above with reference to FIG. 7 may include the following steps 1510 and 1520.

실시예에서, 게이트웨이(120)의 메시지의 생성은 게이트웨이(120)의 처리부(310)에 의해 이루어질 수 있다. 게이트웨이(120)의 메시지의 전송 및 수신은 게이트웨이(120)의 제1 통신부(320)에 의해 이루어질 수 있다. 블루투스 장치(110)의 메시지의 생성은 블루투스 장치(110)의 처리부(210)에 의해 이루어질 수 있다. 블루투스 장치(110)의 메시지의 전송 및 수신은 블루투스 장치(110)의 통신부(220)에 의해 이루어질 수 있다.In an embodiment, the generation of the message of the gateway 120 may be performed by the processing unit 310 of the gateway 120. [ The transmission and reception of messages of the gateway 120 may be performed by the first communication unit 320 of the gateway 120. [ The message of the Bluetooth device 110 may be generated by the processing unit 210 of the Bluetooth device 110. The transmission and reception of the message of the Bluetooth device 110 may be performed by the communication unit 220 of the Bluetooth device 110. [

단계(1510)에서, 블루투스 장치(110)는 브로드캐스트 메시지를 생성할 수 있다. 블루투스 장치(110)는 브로드캐스트 메시지를 브로드캐스트할 수 있다.At step 1510, the Bluetooth device 110 may generate a broadcast message. The Bluetooth device 110 may broadcast a broadcast message.

브로드캐스트 메시지는 블루투스 장치(110)의 주변에 통신 가능한 CoAP를 지원하는 게이트웨이(120)를 검색하기 위한 메시지일 수 있다.The broadcast message may be a message for searching for a gateway 120 supporting a CoAP capable of communicating around the Bluetooth device 110. [

브로드캐스트 메시지의 블루투스 링크 계층 패킷 타입은 ADV_IND일 수 있다. 브로드캐스트 메시지의 페이로드는 "CoAP GET /gw" 요청 메시지를 포함할 수 있다. 요청 메시지의 "gw"는 게이트웨이 노드임을 나타내는 URI-경로의 문자열의 일 예일 수 있다.The Bluetooth link layer packet type of the broadcast message may be ADV_IND. The payload of the broadcast message may include a "CoAP GET / gw " request message. The "gw" in the request message may be an example of a URI-path string indicating that it is a gateway node.

통신 범위 내에 있는 게이트웨이(120)는 브로드캐스트 메시지를 수신할 수 있다.The gateway 120 within the communication range can receive the broadcast message.

단계(1520)에서, 브로드캐스트 메시지를 수신한 게이트웨이(120)는 브로드캐스트에 대한 응답 메시지를 생성할 수 있다. 게이트웨이(120)는 응답 메시지를 블루투스 장치(110)로 전송할 수 있다.In step 1520, the gateway 120 receiving the broadcast message may generate a response message for the broadcast. The gateway 120 may send a response message to the Bluetooth device 110.

응답 메시지의 블루투스 링크 계층 패킷 타입은 ADV_DIRECT_IND일 수 있다. 응답 메시지의 페이로드는 "CoAP 2.05 컨텐츠(Content)" 메시지를 포함할 수 있다.The Bluetooth link layer packet type of the response message may be ADV_DIRECT_IND. The payload of the response message may include a "CoAP 2.05 Content (Content)" message.

"CoAP 2.05 컨텐츠(Content)" 메시지는 "CoAP GET /gw" 메시지에 대응할 수 있다.The "CoAP 2.05 Content (Content)" message may correspond to the "CoAP GET / gw"

"CoAP 2.05 컨텐츠(Content)" 메시지는 게이트웨이(120) 자체에 대한 정보를 포함할 수 있고, 블루투스 장치(110)를 등록할 수 있게 하는 URI-경로를 포함할 수 있다.The "CoAP 2.05 Content (Content)" message may include information about the gateway 120 itself and may include a URI-path that allows the Bluetooth device 110 to register.

전술된 것처럼, 블루투스 장치(110)는 CoAP GET 메시지를 포함하는 브로드캐스트 메시지를 브로드캐스트하고, 게이트웨이(120)로부터 브로드캐스트 메시지에 대응하는 응답 메시지를 수신함으로써 게이트웨이(120)에 대한 정보를 획득할 수 있다.As described above, the Bluetooth device 110 obtains information about the gateway 120 by broadcasting a broadcast message including a CoAP GET message and receiving a response message corresponding to the broadcast message from the gateway 120 .

블루투스 장치(110)는 게이트웨이(120)에 대한 정보 및 URI-경로를 사용하여 게이트웨이(120)에 블루투스 장치(110)를 등록할 수 있다.
The Bluetooth device 110 may register the Bluetooth device 110 with the gateway 120 using the information about the gateway 120 and the URI-path.

도 16은 일 예에 따른 관찰을 사용하는 CoAP를 지원하는 게이트웨이의 검색 방법의 흐름도이다.16 is a flowchart of a search method of a gateway supporting CoAP using observation according to an example.

블루투스 장치(110)는 게이트웨이(120)를 검색할 수 있다.The Bluetooth device 110 may search the gateway 120.

도 7을 참조하여 전술된 단계(710)는 아래의 단계(1610)를 포함할 수 있다.Step 710 described above with reference to FIG. 7 may include step 1610 below.

실시예에서, 게이트웨이(120)의 메시지의 생성은 게이트웨이(120)의 처리부(310)에 의해 이루어질 수 있다. 게이트웨이(120)의 메시지의 전송 및 수신은 게이트웨이(120)의 제1 통신부(320)에 의해 이루어질 수 있다. 블루투스 장치(110)의 메시지의 생성은 블루투스 장치(110)의 처리부(210)에 의해 이루어질 수 있다. 블루투스 장치(110)의 메시지의 전송 및 수신은 블루투스 장치(110)의 통신부(220)에 의해 이루어질 수 있다.In an embodiment, the generation of the message of the gateway 120 may be performed by the processing unit 310 of the gateway 120. [ The transmission and reception of messages of the gateway 120 may be performed by the first communication unit 320 of the gateway 120. [ The message of the Bluetooth device 110 may be generated by the processing unit 210 of the Bluetooth device 110. The transmission and reception of the message of the Bluetooth device 110 may be performed by the communication unit 220 of the Bluetooth device 110. [

단계(1610)에서, 게이트웨이(120)는 브로드캐스트 메시지를 생성할 수 있다. 게이트웨이(120)는 브로드캐스트 메시지를 브로드캐스트할 수 있다. 게이트웨이(120)는 주기적으로 브로드캐스트 메시지를 브로드캐스트할 수 있다.At step 1610, the gateway 120 may generate a broadcast message. The gateway 120 may broadcast a broadcast message. The gateway 120 may periodically broadcast a broadcast message.

브로드캐스트 메시지는 통신 가능한 CoAP를 지원하는 게이트웨이(120)가 존재함을 알리기 위한 메시지일 수 있다. 브로드캐스트 메시지는 게이트웨이(120)가 CoAP를 지원하는 블루투스 노드임을 나타낼 수 있다.The broadcast message may be a message for notifying that the gateway 120 supporting the CoAP capable of communicating exists. The broadcast message may indicate that the gateway 120 is a Bluetooth node that supports CoAP.

브로드캐스트 메시지의 블루투스 링크 계층 패킷 타입은 ADV_IND일 수 있다. 브로드캐스트 메시지의 AD 타입은 CoAP 메시지라는 것을 나타내는 값을 가질 수 있다. 브로드캐스트 메시지의 페이로드는 "CoAP NON(논) PUT(풋) /gw" 메시지를 포함할 수 있다.The Bluetooth link layer packet type of the broadcast message may be ADV_IND. The AD type of the broadcast message may have a value indicating that it is a CoAP message. The payload of the broadcast message may include a "CoAP NON (non) PUT / gw" message.

통신 범위 내에 있는 블루투스 장치(110)는 브로드캐스트 메시지를 수신할 수 있다.The Bluetooth device 110 within the communication range can receive the broadcast message.

브로드캐스트 메시지를 관찰하고 있던 블루투스 장치(110)는 브로드캐스트 메시지를 수신할 수 있다. 제1 게이트웨이(1110)는 브로드캐스트 메시지를 수신함에 따라 CoAP를 지원하는 BLE 기기인 게이트웨이(120)를 발견할 수 있다.The Bluetooth device 110 that is watching the broadcast message can receive the broadcast message. The first gateway 1110 may discover a gateway 120 that is a BLE device that supports CoAP as it receives the broadcast message.

전술된 것처럼, 블루투스 장치(110)는 브로드캐스트 메시지를 관찰할 수 있다. 블루투스 장치(110)는 CoAP 메시지를 포함하는 브로드캐스트 메시지를 수신함에 따라 브로드캐스트 메시지를 브로드캐스트한 게이트웨이(120)를 발견할 수 있다.
As described above, the Bluetooth device 110 can observe the broadcast message. The Bluetooth device 110 may discover the gateway 120 that broadcasted the broadcast message as it receives the broadcast message including the CoAP message.

도 17은 일 예에 따른 블루투스 장치를 등록하는 방법의 흐름도이다.17 is a flowchart of a method of registering a Bluetooth device according to an example.

도 15 또는 도 16을 참조하여 전술된 실시예에 따라서 블루투스 장치(110)가 게이트웨이(120)를 발견한 경우, 블루투스 장치(110)는 블루투스 장치(110) 자신을 게이트웨이(120)에 등록할 수 있다.When the Bluetooth device 110 finds the gateway 120 according to the embodiment described above with reference to FIG. 15 or 16, the Bluetooth device 110 can register the Bluetooth device 110 itself with the gateway 120 have.

도 7을 참조하여 전술된 단계(710)는 단계들(1710, 1720 및 1730)을 포함할 수 있다. 또한, 단계들(1710, 1720 및 1730)은 도 15를 참조하여 전술된 단계(1520)의 이후에 수행될 수 있으며, 도 16을 참조하여 전술된 단계(1610)의 이후에 수행될 수 있다.Step 710 described above with reference to FIG. 7 may include steps 1710, 1720, and 1730. Steps 1710, 1720, and 1730 may also be performed after step 1520 described above with reference to FIG. 15 and may be performed after step 1610 described above with reference to FIG.

실시예에서, 블루투스 장치(110)의 메시지의 전송 및 수신은 통신부(220)에 의해 이루어질 수 있다. 블루투스 장치(110)에 의해 전송되는 메시지는 처리부(210)에 의해 생성될 수 있다. 게이트웨이(120)의 메시지의 전송 및 수신은 제1 통신부(320)에 의해 이루어질 수 있다. 게이트웨이(120)에 의해 전송되는 메시지는 처리부(310)에 의해 생성될 수 있다.In an embodiment, the transmission and reception of messages of the Bluetooth device 110 may be performed by the communication unit 220. [ The message transmitted by the Bluetooth device 110 may be generated by the processing unit 210. [ The transmission and reception of the message of the gateway 120 may be performed by the first communication unit 320. [ The message transmitted by the gateway 120 may be generated by the processing unit 310. [

단계(1710)에서, 블루투스 장치(110)는 게이트웨이(120)와 통신 채널을 설립할 수 있다. 설립된 통신 채널은 소정의 시간 동안 유지될 수 있다.In step 1710, the Bluetooth device 110 may establish a communication channel with the gateway 120. The established communication channel may be maintained for a predetermined time.

통신 채널을 설립하기 위해 블루투스 장치(110)는 CONNECT_REQ 메시지를 게이트웨이(120)로 전송할 수 있다.The Bluetooth device 110 may send a CONNECT_REQ message to the gateway 120 to establish a communication channel.

단계(1720)에서, 블루투스 장치(110)는 데이터 메시지를 전송할 수 있다. 데이터 메시지는 L2 데이터 메시지일 수 있다.In step 1720, the Bluetooth device 110 may send a data message. The data message may be an L2 data message.

데이터 메시지의 크기가 소정의 제1 값의 이상인 경우, 블루투스 L2에서 데이터 메시지가 여러 개의 서브 메시지들로 나뉘어질 수 있고, 나뉘어진 서브 메시지들이 전송될 수 있다.If the size of the data message is greater than or equal to a predetermined first value, then in Bluetooth L2 the data message may be divided into several sub-messages, and the sub-messages may be transmitted.

또한, 데이터 메시지의 크기가 소정의 제2 값의 이상인 경우, CoAP의 블록와이즈(blockwise) 전송(transfer) 기능이 사용될 수 있다.In addition, if the size of the data message is greater than or equal to a predetermined second value, a blockwise transfer function of the CoAP can be used.

데이터 메시지의 페이로드는 블루투스 장치(110)에 대한 정보를 포함할 수 있다. 또한, 페이로드는 블루투스 장치(110)의 리소스의 경로를 포함할 수 있다.The payload of the data message may include information about the Bluetooth device 110. The payload may also include the path of the resource of the Bluetooth device 110. [

단계(1720)는 단계(1721) 및 단계(1722)를 포함할 수 있다.Step 1720 may include steps 1721 and 1722.

단계(1731)에서, 블루투스 장치(110)는 "CoAP POST(포스트) /gw, 001" 메시지를 게이트웨이(120)로 전송할 수 있다. "CoAP POST /gw, 001" 메시지는 LL 데이터 패킷의 형태로 전송될 수 있다.In step 1731, the Bluetooth device 110 may send a "CoAP POST / gw, 001" message to the gateway 120. The "CoAP POST / gw, 001" message may be transmitted in the form of an LL data packet.

단계(1732)에서, 블루투스 장치(110)는 "continue" 메시지를 게이트웨이(120)로 전송할 수 있다. "continue" 메시지는 LL 데이터 패킷의 형태로 전송될 수 있다.At step 1732, the Bluetooth device 110 may send a "continue" message to the gateway 120. The "continue" message may be transmitted in the form of an LL data packet.

단계(1740)에서, 게이트웨이(120)는 데이터 메시지에 대한 응답 메시지를 블루투스 장치(110)로 전송할 수 있다. 응답 메시지는 블루투스 장치(110)에 대한 정보가 게이트웨이(120)에 등록되었음을 나타낼 수 있다.At step 1740, the gateway 120 may send a response message to the Bluetooth device 110 for a data message. The response message may indicate that information about the Bluetooth device 110 has been registered with the gateway 120.

예를 들면, 게이트웨이(120)는 응답 메시지로서 "CoAP 2.01, Location(위치): /gw/ble/001"의 메시지를 블루투스 장치(110)로 전송할 수 있다. CoAP 2.01, Location: /gw/ble/001"는 LL 데이터 패킷의 형태로 전송될 수 있다.For example, the gateway 120 may transmit a message of "CoAP 2.01, Location: / gw / ble / 001" to the Bluetooth device 110 as a response message. CoAP 2.01, Location: / gw / ble / 001 "may be transmitted in the form of an LL data packet.

응답 메시지는 블루투스 장치(110)에 대한 정보가 기록된 경로를 나타낼 수 있다. "CoAP 2.01, Location: /gw/ble/001" 메시지에서, "Location" 옵션의 값인 "/gw/ble/001"이 블루투스 장치(110)에 대한 정보가 기록된 경로를 나타낼 수 있다.The response message may indicate a path where information on the Bluetooth device 110 is recorded. In the message " CoAP 2.01, Location: / gw / ble / 001 ", the value of "Location" option "/ gw / ble / 001" may indicate the path where information on the Bluetooth device 110 is recorded.

전술된 것처럼, 블루투스 장치(110)는 블루투스 장치(110)를 게이트웨이(120)에 등록하기 위해 블루투스 장치(110)에 대한 정보 및 블루투스 장치(110)의 리소스의 경로를 포함하는 데이터 메시지를 게이트웨이(120)로 전송하고, 블루투스 장치(110)에 대한 정보가 기록된 경로를 포함하는 응답 메시지를 게이트웨이(120)로부터 수신할 수 있다.
The Bluetooth device 110 sends a data message including the information about the Bluetooth device 110 and the path of the resources of the Bluetooth device 110 to the gateway 120 in order to register the Bluetooth device 110 in the gateway 120 120, and receive a response message from the gateway 120 including a path in which information on the Bluetooth device 110 is recorded.

도 18은 일 예에 따른 블루투스 장치의 리소스를 등록하는 방법의 흐름도이다.18 is a flowchart of a method of registering a resource of a Bluetooth device according to an example.

블루투스 장치(110)는 블루투스 장치(110) 자신의 리소스를 게이트웨이(120)에 등록할 수 있다. 리소스는 기능 및 속성을 포함할 수 있다. 또한, 블루투스 장치(110)는 복수의 리소스들을 게이트웨이(120)에 등록할 수 있다.The Bluetooth device 110 may register the resource of the Bluetooth device 110 in the gateway 120. A resource may include functions and attributes. In addition, the Bluetooth device 110 can register a plurality of resources with the gateway 120. [

블루투스 장치(110)는 도 17을 참조하여 전술된 단계(1740)에서 획득된 블루투스 장치(110)에 대한 정보가 기록된 경로를 사용하여 리소스를 게이트웨이(120)에 등록할 수 있다.The Bluetooth device 110 may register the resource with the gateway 120 using the path where the information about the Bluetooth device 110 acquired in the step 1740 described above with reference to Fig. 17 is recorded.

도 7을 참조하여 전술된 단계(720)는 아래의 단계들(1810 및 1820)을 포함할 수 있다.Step 720, described above with reference to FIG. 7, may include the following steps 1810 and 1820.

실시예에서, 블루투스 장치(110)의 메시지의 전송 및 수신은 통신부(220)에 의해 이루어질 수 있다. 블루투스 장치(110)에 의해 전송되는 메시지는 처리부(210)에 의해 생성될 수 있다. 게이트웨이(120)의 메시지의 전송 및 수신은 제1 통신부(320)에 의해 이루어질 수 있다. 게이트웨이(120)에 의해 전송되는 메시지는 처리부(310)에 의해 생성될 수 있다.In an embodiment, the transmission and reception of messages of the Bluetooth device 110 may be performed by the communication unit 220. [ The message transmitted by the Bluetooth device 110 may be generated by the processing unit 210. [ The transmission and reception of the message of the gateway 120 may be performed by the first communication unit 320. [ The message transmitted by the gateway 120 may be generated by the processing unit 310. [

단계(1810)에서, 블루투스 장치(110)는 리소스 등록 메시지를 게이트웨이(120)로 전송할 수 있다.In step 1810, the Bluetooth device 110 may send a resource registration message to the gateway 120. [

리소스 등록 메시지의 크기가 소정의 제1 값의 이상인 경우, 블루투스 L2에서 리소스 등록 메시지가 여러 개의 서브 메시지들로 나뉘어질 수 있고, 나뉘어진 서브 메시지들이 전송될 수 있다.If the size of the resource registration message is greater than or equal to a predetermined first value, the resource registration message may be divided into a plurality of sub messages in the Bluetooth L2, and divided sub messages may be transmitted.

또한, 리소스 등록 메시지의 크기가 소정의 제2 값의 이상인 경우, CoAP의 블록와이즈 전송 기능이 사용될 수 있다.In addition, when the size of the resource registration message is larger than a predetermined second value, the block-wise transmission function of the CoAP can be used.

리소스 등록 메시지의 페이로드는 블루투스 장치(110)에 대한 정보가 기록된 경로를 포함할 수 있고, 블루투스 장치(110)의 리소스에 대한 정보를 포함할 수 있다. 리소스는 복수일 수 있다. 리소스 등록 메시지의 페이로드는 복수의 리소스들에 대한 정보를 포함할 수 있다.The payload of the resource registration message may include a path where information about the Bluetooth device 110 is recorded and information about a resource of the Bluetooth device 110. [ The resource may be plural. The payload of the resource registration message may include information about a plurality of resources.

단계(1810)는 단계(1811) 및 단계(1812)를 포함할 수 있다.Step 1810 may include steps 1811 and 1812.

단계(1811)에서, 블루투스 장치(110)는 "CoAP POST /gw/ble/001, <resource>" 메시지를 게이트웨이(120)로 전송할 수 있다. "CoAP POST /gw/ble/001, <resource>" 메시지는 LL 데이터 패킷의 형태로 전송될 수 있다.At step 1811, the Bluetooth device 110 may send a "CoAP POST / gw / ble / 001, <resource>" message to the gateway 120. "CoAP POST / gw / ble / 001, < resource >" message can be transmitted in the form of an LL data packet.

"/gw/ble/001"는 도 17을 참조하여 전술된 단계(1740)에서 획득된 블루투스 장치(110)에 대한 정보가 기록된 경로를 나타낼 수 있다. 예를 들면, "/gw/ble/001"는 블루투스 장치(110)의 식별자가 될 수 있다."/ gw / ble / 001" may indicate the path where information on the Bluetooth device 110 obtained in the above-described step 1740 is recorded with reference to FIG. For example, "/ gw / ble / 001" may be an identifier of the Bluetooth device 110.

<resource>는 블루투스 장치(110)의 리소스에 대한 정보를 나타낼 수 있다. "CoAP POST /gw/ble/001" 메시지의 페이로드는 블루투스 장치(110)의 리소스에 대한 정보를 포함할 수 있다.The < resource > may indicate information about a resource of the Bluetooth device 110. [ The payload of the "CoAP POST / gw / ble / 001" message may include information about the resources of the Bluetooth device 110. [

단계(1812)에서, 블루투스 장치(110)는 "continue" 메시지를 게이트웨이(120)로 전송할 수 있다. "continue" 메시지는 LL 데이터 패킷의 형태로 전송될 수 있다.At step 1812, the Bluetooth device 110 may send a "continue" message to the gateway 120. The "continue" message may be transmitted in the form of an LL data packet.

단계(1820)에서, 게이트웨이(120)는 리소스 등록 메시지에 대한 응답 메시지를 블루투스 장치(110)로 전송할 수 있다. 응답 메시지는 LL 데이터 패킷의 형태로 전송될 수 있다.In step 1820, the gateway 120 may send a response message to the Bluetooth device 110 in response to the resource registration message. The response message may be transmitted in the form of an LL data packet.

예를 들면, 응답 메시지는 "CoAP 2.01, Location: /gw/ble/001/data1" 메시지일 수 있다.For example, the response message may be "CoAP 2.01, Location: / gw / ble / 001 / data1 ".

응답 메시지는 블루투스 장치(110)의 리소스에 대한 정보를 포함할 수 있다.The response message may include information about the resources of the Bluetooth device 110. [

"Location" 옵션의 값은 블루투스 장치(110)의 리소스에 대한 정보가 기록된 경로를 나타낼 수 있다. 예를 들면, 경로 "/gw/ble/001/data1"에 블루투스 장치(110)의 리소스에 대한 정보가 기록될 수 있다.The value of the "Location" option may indicate a path where information on the resources of the Bluetooth device 110 is recorded. For example, information on the resources of the Bluetooth device 110 may be recorded in the path "/ gw / ble / 001 / data1 ".

전술된 것처럼, 블루투스 장치(110)는 블루투스 장치(110) 자신에 대한 정보가 기록된 경로를 사용하여 리소스를 게이트웨이(120)에 등록할 수 있다.
As described above, the Bluetooth device 110 can register the resource with the gateway 120 using the path in which the information about the Bluetooth device 110 itself is recorded.

도 19는 일 예에 따른 블루투스 장치의 구조도이다.19 is a structural diagram of a Bluetooth device according to an example.

블루투스 장치(110)에서, CoAP는 엠큐티티(MQ Telemetry Transport; MQTT)로 대체될 수 있다.In the Bluetooth device 110, the CoAP may be replaced with an MQ Teletext Transport (MQTT).

MQTT는 TCP에 기반하여 설계되었으나, 간단한 메시지 구조를 제공할 수 있다. 따라서, MQTT 계층은 L2CAP 계층의 바로 상위의 계층이 될 수 있다.Although MQTT is designed based on TCP, it can provide a simple message structure. Therefore, the MQTT layer can be directly above the L2CAP layer.

응용 계층은 블루투스의 복잡한 절차 및 규격을 직접 사용하지 않더라도 MQTT 규격을 사용함으로써 서비스를 제공할 수 있다.The application layer can provide services by using the MQTT standard even if the complicated procedures and specifications of Bluetooth are not used directly.

실시예들을 참조하여 전술된 CoAP에 대한 내용은 MQTT에 적용될 수 있다. 예를 들면, 처리부(210)에 수행되는 적어도 하나의 프로그램은 MQTT 계층의 코드를 포함할 수 있고, MQTT 계층은 L2CAP 계층의 바로 상위의 계층일 수 있다.
The contents of the CoAP described above with reference to the embodiments can be applied to the MQTT. For example, at least one program executed in the processing unit 210 may include code of an MQTT layer, and the MQTT layer may be a layer immediately above the L2CAP layer.

도 20은 일 예에 따른 게이트웨이의 구조도이다.20 is a structural diagram of a gateway according to an example.

게이트웨이(120)에서, CoAP는 MQTT로 대체될 수 있다. UDP는 TCP로 대체될 수 있다. 실시예들을 참조하여 전술된 CoAP에 대한 내용은 MQTT에 적용될 수 있다. 또한, 실시예들을 참조하여 전술된 UDP에 대한 내용은 TCP에 적용될 수 있다. 예를 들면, 처리부(310)에 수행되는 적어도 하나의 프로그램은 MQTT 계층의 코드를 포함할 수 있고, MQTT 계층은 L2CAP 계층의 바로 상위의 계층일 수 있다.
At the gateway 120, the CoAP may be replaced with an MQTT. UDP can be replaced with TCP. The contents of the CoAP described above with reference to the embodiments can be applied to the MQTT. In addition, the contents of UDP described above with reference to the embodiments can be applied to TCP. For example, the at least one program performed by the processing unit 310 may include code of the MQTT layer, and the MQTT layer may be a layer immediately above the L2CAP layer.

도 21은 일 실시예에 따른 블루투스 장치 및 게이트웨이의 통신의 구조를 설명한다.21 illustrates a structure of communication between a Bluetooth device and a gateway according to an embodiment.

블루투스 장치(110), 게이트웨이(120) 및 외부 장치(610)에 있어서, CoAP는 MQTT로 대체될 수 있다. UDP는 TCP로 대체될 수 있다. 실시예들을 참조하여 전술된 CoAP에 대한 내용은 MQTT에 적용될 수 있다. 또한, 실시예들을 참조하여 전술된 UDP에 대한 내용은 TCP에 적용될 수 있다.
In the Bluetooth device 110, the gateway 120, and the external device 610, the CoAP may be replaced with an MQTT. UDP can be replaced with TCP. The contents of the CoAP described above with reference to the embodiments can be applied to the MQTT. In addition, the contents of UDP described above with reference to the embodiments can be applied to TCP.

기본적으로 통신 프로토콜은, 오픈 시스템즈 인터커넥션(Open Systems Interconnection; OSI) 7 계층들 중 하나의 계층에서 역할을 하도록 구성될 수 있다. 시스템에 프로토콜을 적용할 때, 각 계층에 적합한 프로토콜이 선택될 수 있고, 선택된 프로토콜들에 의해 프로토콜 스택이 구성될 수 있다.Basically, the communication protocol can be configured to act in one of the seven layers of the Open Systems Interconnection (OSI). When applying a protocol to a system, a protocol suitable for each layer can be selected, and the protocol stack can be configured by selected protocols.

통상적인 프로토콜 계층 구조는, 물리 계층, 논리 계층, 네트워크 계층, 전송(transport) 계층, 세션(session) 계층, 응용 계층을 포함할 수 있다. 블루투스 규격에 따른 IPSP 또한 이러한 구조를 따를 수 있다.A typical protocol layer structure may include a physical layer, a logical layer, a network layer, a transport layer, a session layer, and an application layer. IPSP according to the Bluetooth standard can also follow this structure.

CoAP 프로토콜은 세션 계층 및 응용 계층에 해당한다. 블루투스의 물리 계층, 논리 계층 및 CoAP 프로토콜의 특징에 따라, 블루투스 장치(110)의 논리 계층 및 CoAP 프로토콜은, 네트워크 계층 및 전송 계층의 프로토콜 없이, 직접적으로 연결될 수 있다. 직접적인 연결에 따라 효율성 및 호환성이 확보될 수 있다. 또한, 블루투스 장치(110)의 네트워킹 기능은 게이트웨이(120)와의 협력을 통해 수행될 수 있다.
The CoAP protocol corresponds to the session layer and the application layer. Depending on the characteristics of the physical layer, the logical layer and the CoAP protocol of Bluetooth, the logical layer and the CoAP protocol of the Bluetooth device 110 can be directly connected without a network layer and a transport layer protocol. Efficiency and compatibility can be ensured by direct connection. In addition, the networking function of the Bluetooth device 110 may be performed in cooperation with the gateway 120. [

도 22는 일 예에 따른 어드버타이징 채널 프레임 포맷을 나타낸다.Figure 22 shows the format of the advertising channel frame according to an example.

어드버타이징 채널 프레임 포맷(Advertising Channel Frame Format)(2200)은 프리앰블(Preamble)(2210), 접근 주소(Access Address)(2220), 어드버타이징 채널 피디유 헤더(Advertising Channel PDU(Protocol Data Unit) Header)(2230), 어드버타이징 주소(Advertising Address)(2240), CoAP 헤더/옵션들(CoAP Header/Options)(2250), CoAP 페이로드(2260) 및 순환중복검사(Cyclic Redundancy Check; CRC)(2270)를 포함할 수 있다.The advertisement channel frame format 2200 includes a preamble 2210, an access address 2220, an Advertising Channel PDU (Protocol Data (PDU) (CoAP Header / Options) 2250, CoAP payload 2260, and Cyclic Redundancy Check (CRC) 2270. [0040]

어드버타이징 채널 프레임 포맷(2200)은 전술된 메시지 중 어드버타이징 채널에 관련된 메시지의 포맷으로서 사용될 수 있다.
The advertising channel frame format 2200 may be used as the format of the message related to the advertising channel among the messages described above.

도 23은 일 예에 따른 데이터 채널 프레임 포맷을 나타낸다.23 shows a data channel frame format according to an example.

데이터 채널 프레임 포맷(Data Channel Frame Format)(2300)은 프리앰블(Preamble)(2310), 접근 주소(Access Address)(2320), 데이터 채널 피디유 헤더(Data Channel PDU(Protocol Data Unit) Header)(2330), CoAP 헤더/옵션들(CoAP Header/Options)(2340), CoAP 페이로드(2350) 및 순환중복검사(Cyclic Redundancy Check; CRC)(2360)를 포함할 수 있다.The data channel frame format 2300 includes a preamble 2310, an access address 2320, a data channel PDU header 2330 CoAP header / options 2340, CoAP payload 2350 and Cyclic Redundancy Check (CRC) 2360. The CoAP header /

데이터 채널 프레임 포맷(2300)은 전술된 메시지 중 데이터 채널에 관련된 메시지의 포맷으로서 사용될 수 있다.
The data channel frame format 2300 can be used as the format of the message related to the data channel among the above-mentioned messages.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA) A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI &gt; or equivalents, even if it is replaced or replaced.

110: 블루투스 장치
120: 게이트웨이
610: 외부 장치
110: Bluetooth device
120: Gateway
610: External device

Claims (20)

적어도 하나의 프로그램을 수행하는 처리부; 및
블루투스 통신을 수행하는 통신부
를 포함하고,
상기 적어도 하나의 프로그램은 CoAP 계층의 코드 및 L2CAP 계층의 코드를 포함하고,
상기 CoAP 계층은 상기 L2CAP 계층의 바로 상위의 계층인 블루투스 장치.
A processing unit for executing at least one program; And
A communication unit that performs Bluetooth communication
Lt; / RTI &gt;
Wherein the at least one program comprises code of a CoAP layer and code of an L2CAP layer,
Wherein the CoAP layer is a layer immediately above the L2CAP layer.
제1항에 있어서,
상기 적어도 하나의 프로그램은 CoAP 지원 프로파일을 포함하는 블루투스 장치.
The method according to claim 1,
Wherein the at least one program comprises a CoAP support profile.
제2항에 있어서,
상기 CoAP 지원 프로파일은 GATT 및 ATT를 통해 상기 블루투스 장치가 CoAP의 기능을 지원한다는 것이 검색되게 하는 블루투스 장치.
3. The method of claim 2,
Wherein the CoAP support profile allows the Bluetooth device to be detected through the GATT and ATT to support the function of the CoAP.
제1항에 있어서,
상기 블루투스 장치는 CoAP GET 메시지를 포함하는 브로드캐스트 메시지를 브로드캐스트하고, 브로드캐스트 메시지에 대응하는 응답 메시지를 게이트웨이로부터 수신함으로써 상기 게이트웨이에 대한 정보를 획득하는 블루투스 장치.
The method according to claim 1,
Wherein the Bluetooth device broadcasts a broadcast message including a CoAP GET message and obtains information about the gateway by receiving a response message corresponding to the broadcast message from the gateway.
제1항에 있어서,
상기 블루투스 장치는 브로드캐스트 메시지를 관찰하고, 상기 브로드캐스트 메시지를 수신함에 따라 상기 브로드캐스트 메시지를 브로드캐스트한 게이트웨이를 발견하는 블루투스 장치.
The method according to claim 1,
Wherein the Bluetooth device observes a broadcast message and finds a gateway that broadcasts the broadcast message upon receiving the broadcast message.
제1항에 있어서,
상기 블루투스 장치는 상기 블루투스 장치를 게이트웨이에 등록하기 위해 상기 블루투스 장치에 대한 정보 및 상기 블루투스 장치의 리소스의 경로를 포함하는 데이터 메시지를 상기 게이트웨이로 전송하고, 상기 블루투스 장치에 대한 정보가 기록된 경로를 포함하는 응답 메시지를 상기 게이트웨이로부터 수신하는 블루투스 장치.
The method according to claim 1,
The Bluetooth device transmits a data message including information on the Bluetooth device and a resource path of the Bluetooth device to the gateway in order to register the Bluetooth device in the gateway, And receives a response message from the gateway.
제6항에 있어서,
상기 블루투스 장치는 상기 경로를 사용하여 상기 블루투스 장치의 리소스를 상기 게이트웨이에 등록하는 블루투스 장치.
The method according to claim 6,
And the Bluetooth device registers the resource of the Bluetooth device with the gateway using the path.
블루투스 장치에 의해 수행되는,
상기 블루투스 장치를 게이트웨이에 등록하는 단계; 및
상기 게이트웨이에 의해 제공되는 게이트웨이 기능을 통해 통신을 수행하는 단계
를 포함하고,
상기 블루투스 장치의 프로토콜 스택은 CoAP 계층 및 L2CAP 계층을 포함하고,
상기 CoAP 계층은 상기 L2CAP 계층의 바로 상위의 계층인 통신 방법.
Performed by a Bluetooth device,
Registering the Bluetooth device with a gateway; And
Performing communication through a gateway function provided by the gateway
Lt; / RTI &gt;
Wherein the protocol stack of the Bluetooth device includes a CoAP layer and an L2CAP layer,
Wherein the CoAP layer is a layer immediately above the L2CAP layer.
제8항에 있어서,
상기 블루투스 장치의 리소스를 상기 게이트웨이에 등록하는 단계
를 더 포함하는 통신 방법.
9. The method of claim 8,
Registering the resources of the Bluetooth device with the gateway
Lt; / RTI &gt;
적어도 하나의 프로그램을 수행하는 처리부; 및
블루투스 통신을 수행하는 통신부
를 포함하고,
상기 적어도 하나의 프로그램은 MQTT 계층의 코드 및 L2CAP 계층의 코드를 포함하고,
상기 MQTT 계층은 상기 L2CAP 계층의 바로 상위의 계층인 블루투스 장치.
A processing unit for executing at least one program; And
A communication unit that performs Bluetooth communication
Lt; / RTI &gt;
Wherein the at least one program comprises code of an MQTT layer and code of an L2CAP layer,
Wherein the MQTT layer is a layer immediately above the L2CAP layer.
적어도 하나의 프로그램을 수행하는 처리부;
블루투스 통신을 위한 제1 통신부; 및
인터넷과의 연동을 위한 제2 통신부
를 포함하고,
상기 적어도 하나의 프로그램은 제1 통신부 용 코드를 포함하고,
상기 제1 통신부 용 코드는 CoAP 계층의 코드 및 L2CAP 계층의 코드를 포함하고,
상기 CoAP 계층은 상기 L2CAP 계층의 바로 상위의 계층인 게이트웨이.
A processing unit for executing at least one program;
A first communication unit for Bluetooth communication; And
A second communication unit for interworking with the Internet
Lt; / RTI &gt;
Wherein the at least one program includes a code for a first communication unit,
Wherein the code for the first communication unit includes a code of a CoAP layer and a code of an L2CAP layer,
Wherein the CoAP layer is a layer immediately above the L2CAP layer.
제11항에 있어서,
상기 적어도 하나의 프로그램은 프록시 모듈을 포함하고,
상기 프록시 모듈은 상기 CoAP 계층의 상위의 계층이고,
상기 프록시 모듈은 상기 제1 통신부를 통해 연결된 블루투스 장치의 주소를 상기 게이트웨이 내부의 URI-경로에 매핑함으로써 상기 블루투스 장치 및 상기 제2 통신부를 통해 연결된 장치 간의 통신을 가능하게 하는 게이트웨이.
12. The method of claim 11,
Wherein the at least one program comprises a proxy module,
Wherein the proxy module is an upper layer of the CoAP layer,
Wherein the proxy module enables communication between devices connected through the Bluetooth device and the second communication unit by mapping an address of a Bluetooth device connected through the first communication unit to a URI-path inside the gateway.
제11항에 있어서,
상기 제1 통신부는 블루투스 장치로부터 CoAP의 요청 메시지를 수신하고,
상기 처리부는 상기 CoAP의 요청 메시지로부터 URI-호스트 및 URI-포트를 제거하고, 상기 요청 메시지에 IP 헤더 및 UDP 헤더를 세팅하고,
상기 제2 통신부는 상기 IP 헤더 및 상기 UDP 헤더가 세팅된 요청 메시지를 외부 장치로 전달하는 게이트웨이.
12. The method of claim 11,
The first communication unit receives a CoAP request message from the Bluetooth device,
The processing unit removes the URI-host and the URI-port from the CoAP request message, sets an IP header and a UDP header in the request message,
And the second communication unit transmits a request message with the IP header and the UDP header set to an external device.
제11항에 있어서,
상기 제2 통신부는 외부 장치로부터 CoAP의 요청 메시지를 수신하고,
상기 처리부는 상기 CoAP의 요청 메시지로부터 URI-호스트, URI-포트, URI-경로 중 프리픽스, URI-경로 중 블루투스 장치 식별자, IP 헤더 및 UDP 헤더를 제거하고,
상기 제1 통신부는 상기 URI-호스트, 상기 URI-포트, 상기 프리픽스, 상기 블루투스 장치 식별자, 상기 IP 헤더 및 상기 UDP 헤더가 제거된 요청 메시지를 블루투스 장치로 전달하는 게이트웨이.
12. The method of claim 11,
The second communication unit receives a CoAP request message from an external device,
The processing unit removes the URI-host, URI-port, URI-path prefix, URI-path Bluetooth device identifier, IP header, and UDP header from the CoAP request message,
Wherein the first communication unit transmits to the Bluetooth device a request message in which the URI-host, the URI-port, the prefix, the Bluetooth device identifier, the IP header, and the UDP header are removed.
제11항에 있어서,
상기 게이트웨이는 CoAP Ping 요청 메시지를 포함하는 브로드캐스트 메시지를 브로드캐스트하고, 블루투스 장치로부터 상기 CoAP Ping 요청 메시지에 대응하는 CoAP Ping 응답 메시지를 수신함으로써 상기 블루투스 장치를 검출하는 게이트웨이.
12. The method of claim 11,
Wherein the gateway broadcasts a broadcast message including a CoAP Ping request message, and receives a CoAP Ping response message corresponding to the CoAP Ping request message from the Bluetooth device, thereby detecting the Bluetooth device.
제11항에 있어서,
상기 게이트웨이는 브로드캐스트 메시지를 관찰할 수 있고,
상기 게이트웨이는 가상 CoAP Ping 응답 메시지를 포함하는 상기 브로드캐스트 메시지를 수신함에 따라 상기 브로드캐스트 메시지를 브로드캐스트한 블루투스 장치를 발견하는 게이트웨이.
12. The method of claim 11,
The gateway can observe the broadcast message,
Wherein the gateway detects the Bluetooth device broadcasting the broadcast message upon receiving the broadcast message including the virtual CoAP Ping response message.
제11항에 있어서,
상기 게이트웨이는 연결 요청 메시지를 블루투스 장치로 전송하고, 상기 블루투스 장치로부터 상기 블루투스 장치의 리소스의 경로를 포함하는 응답 메시지를 수신하고, 상기 경로를 포함하는 재질의 메시지를 상기 블루투스 장치로 전송하고, 상기 경로에 대한 정보를 포함하는 응답 메시지를 상기 블루투스 장치로부터 수신하는 게이트웨이.
12. The method of claim 11,
The gateway transmits a connection request message to the Bluetooth device, receives a response message including the path of the resource of the Bluetooth device from the Bluetooth device, transmits a message including the route to the Bluetooth device, And receives a response message from the Bluetooth device, the response message including information about the path.
게이트웨이에 의해 수행되는,
블루투스 장치를 검색하는 단계; 및
블루투스 장치에게 게이트웨이 기능을 제공하는 단계
를 포함하고,
상기 게이트웨이의 블루투스 통신을 위한 프로토콜 스택은 CoAP 계층 및 L2CAP 계층을 포함하고,
상기 CoAP 계층은 상기 L2CAP 계층의 바로 상위의 계층인 통신 방법.
Performed by the gateway,
Searching for a Bluetooth device; And
Step to provide gateway function to Bluetooth device
Lt; / RTI &gt;
The protocol stack for the Bluetooth communication of the gateway includes a CoAP layer and an L2CAP layer,
Wherein the CoAP layer is a layer immediately above the L2CAP layer.
제18항에 있어서,
상기 블루투스 장치의 리소스를 확인하는 단계
를 더 포함하는 통신 방법.
19. The method of claim 18,
Confirming a resource of the Bluetooth device
Lt; / RTI &gt;
적어도 하나의 프로그램을 수행하는 처리부;
블루투스 통신을 위한 제1 통신부; 및
인터넷과의 연동을 위한 제2 통신부
를 포함하고,
상기 적어도 하나의 프로그램은 제1 통신부 용 코드를 포함하고,
상기 제1 통신부 용 코드는 MQTT 계층의 코드 및 L2CAP 계층의 코드를 포함하고,
상기 MQTT 계층은 상기 L2CAP 계층의 바로 상위의 계층인 게이트웨이.
A processing unit for executing at least one program;
A first communication unit for Bluetooth communication; And
A second communication unit for interworking with the Internet
Lt; / RTI &gt;
Wherein the at least one program includes a code for a first communication unit,
Wherein the code for the first communication unit includes a code of an MQTT layer and a code of an L2CAP layer,
Wherein the MQTT layer is a layer immediately above the L2CAP layer.
KR1020160046825A 2016-04-18 2016-04-18 Apparatus and method for bluetooth communication KR102503257B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160046825A KR102503257B1 (en) 2016-04-18 2016-04-18 Apparatus and method for bluetooth communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160046825A KR102503257B1 (en) 2016-04-18 2016-04-18 Apparatus and method for bluetooth communication

Publications (2)

Publication Number Publication Date
KR20170119098A true KR20170119098A (en) 2017-10-26
KR102503257B1 KR102503257B1 (en) 2023-02-24

Family

ID=60301108

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160046825A KR102503257B1 (en) 2016-04-18 2016-04-18 Apparatus and method for bluetooth communication

Country Status (1)

Country Link
KR (1) KR102503257B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190083214A (en) * 2018-01-03 2019-07-11 삼성전자주식회사 Electronic device for transmitting or receiving data via external electronic device and method thereof
KR102500082B1 (en) * 2021-11-29 2023-02-16 주식회사 아이엠알 Coap-based load balancer device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100513288B1 (en) * 2003-01-13 2005-09-09 삼성전자주식회사 System and method for accessing to home network public network
KR20120002087A (en) * 2010-06-30 2012-01-05 한국전자통신연구원 Apparatus and method for selecting of ap considering network performance
KR101397744B1 (en) * 2006-11-15 2014-05-20 엘지전자 주식회사 Bluetooth interface apparatus and method
KR101579928B1 (en) * 2014-07-31 2015-12-23 서경대학교 산학협력단 METHOD AND RECORDING MEDIUM FOR COMPATIBILITY BETWEEN IEC61850 AND CoAP
JP2016045964A (en) * 2014-08-26 2016-04-04 富士通株式会社 Method for internet of things (iot) device configuration construction and recording medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100513288B1 (en) * 2003-01-13 2005-09-09 삼성전자주식회사 System and method for accessing to home network public network
KR101397744B1 (en) * 2006-11-15 2014-05-20 엘지전자 주식회사 Bluetooth interface apparatus and method
KR20120002087A (en) * 2010-06-30 2012-01-05 한국전자통신연구원 Apparatus and method for selecting of ap considering network performance
KR101579928B1 (en) * 2014-07-31 2015-12-23 서경대학교 산학협력단 METHOD AND RECORDING MEDIUM FOR COMPATIBILITY BETWEEN IEC61850 AND CoAP
JP2016045964A (en) * 2014-08-26 2016-04-04 富士通株式会社 Method for internet of things (iot) device configuration construction and recording medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190083214A (en) * 2018-01-03 2019-07-11 삼성전자주식회사 Electronic device for transmitting or receiving data via external electronic device and method thereof
WO2019135551A1 (en) * 2018-01-03 2019-07-11 삼성전자 주식회사 Electronic device for transmitting/receiving data through external electronic device, and data transmitting/receiving method therefor
US11265361B2 (en) 2018-01-03 2022-03-01 Samsung Electronics Co., Ltd Electronic device for transmitting/receiving data through external electronic device, and data transmitting/receiving method therefor
KR102500082B1 (en) * 2021-11-29 2023-02-16 주식회사 아이엠알 Coap-based load balancer device

Also Published As

Publication number Publication date
KR102503257B1 (en) 2023-02-24

Similar Documents

Publication Publication Date Title
EP3243317B1 (en) Machine-to-machine protocol indication and negotiation
EP3228123B1 (en) Efficient hybrid resource and schedule management in time slotted channel hopping networks
US10425194B2 (en) Cross-layer and cross-application acknowledgment for data transmission
EP3195566B1 (en) Service layer interworking using mqtt protocol
US10863422B2 (en) Mechanisms for ad hoc service discovery
US10820253B2 (en) Distributed reactive resource and schedule management in time slotted channel hopping networks
KR101842316B1 (en) Method and system of providing internet protocol(ip) data communication in a nfc peer to peer communication environment
CN106233700A (en) For bluetooth equipment being integrated into the method and apparatus in neighbours&#39; sensing network
KR20190013964A (en) IoT device connection, discovery and networking
US11824685B2 (en) Method for implementing GRE tunnel, access point and gateway
JP2017528956A (en) Efficient central resource and schedule management in timeslot channel hopping networks
EP3566407A1 (en) Cross-device segmentation offload
KR20140069307A (en) Systems and method for reduced power wireless communication
CN110620716B (en) Data transmission method, related device and system
JP2018526923A (en) Enhanced neighborhood discovery for communication networks
US10992578B2 (en) Message retargeting in machine-to-machine service layer communications
KR102503257B1 (en) Apparatus and method for bluetooth communication
EP3857368A1 (en) Advanced resource link binding management
TW200807988A (en) Configuring a host device by way of MMP
JP6428702B2 (en) Management device and management system

Legal Events

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