KR101947169B1 - IP 터널링을 이용한IoT 디바이스제어 방법 및장치 - Google Patents

IP 터널링을 이용한IoT 디바이스제어 방법 및장치 Download PDF

Info

Publication number
KR101947169B1
KR101947169B1 KR1020170083897A KR20170083897A KR101947169B1 KR 101947169 B1 KR101947169 B1 KR 101947169B1 KR 1020170083897 A KR1020170083897 A KR 1020170083897A KR 20170083897 A KR20170083897 A KR 20170083897A KR 101947169 B1 KR101947169 B1 KR 101947169B1
Authority
KR
South Korea
Prior art keywords
iot
data packet
address
data
control
Prior art date
Application number
KR1020170083897A
Other languages
English (en)
Other versions
KR20190003258A (ko
Inventor
정현조
Original Assignee
주식회사 아라드네트웍스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아라드네트웍스 filed Critical 주식회사 아라드네트웍스
Priority to KR1020170083897A priority Critical patent/KR101947169B1/ko
Publication of KR20190003258A publication Critical patent/KR20190003258A/ko
Application granted granted Critical
Publication of KR101947169B1 publication Critical patent/KR101947169B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2592Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/12Setup of transport tunnels

Landscapes

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

Abstract

IoT 디바이스 제어 방법 및 장치가 제공된다. 일 실시예에 따른 IoT 디바이스제어 방법은, IoT 디바이스 제어 장치에 의해 수행되며,복수의 IoT 디바이스 중, 제어 대상 디바이스에 대한 제어 데이터를 식별하는 단계와 상기 복수의 IoT 디바이스에 대하여 미리 저장된 이너 헤더 어드레스 정보 중, 상기 제어 대상 디바이스의 이너 헤더 어드레스를 식별하는 단계와 상기 식별된 이너 헤더 어드레스 및 상기 제어 데이터를 기초로 제1 데이터 패킷을 생성하는 단계와 상기 제1 데이터 패킷 및 미리 설정된 아웃터 헤더 어드레스를 기초로, 제2 데이터 패킷을 생성하는 단계와 상기 제2 데이터 패킷을, 미리 지정된 AP를 통해 상기 아웃터 헤더 어드레스와 동일한 클래스 대역대의 미리 설정된 IP(Internet Protocol)주소로 브로드캐스팅하는 단계를 포함할 수 있다.

Description

IP 터널링을 이용한IoT 디바이스제어 방법 및장치 {METHOD AND APPARATUS FOR CONTROLLING IoT DEVICE USING IP TUNNELING}
본 발명은IP 터널링을 이용한 IoT 디바이스제어 방법 및장치에 관한 것이다. 보다 자세하게는, Wi-Fi 통신 환경에서 IP 터널링을 이용하여 다수의 IoT 디바이스를 제어하는 방법 및 이를 지원하는 장치에 관한 것이다.
Wi-Fi 통신 환경은 일정 범위의 이동성을 보장하면서도 이동 통신망 대비 저렴한 비용에 무선 통신 서비스를 제공한다.이에 따라, 가정용, 사무용 또는 공공 장소 등에서, Wi-Fi 통신 방식에 따른 인터넷 통신이 널리 이용되고 있다.
그러나, Wi-Fi 통신 방식을 이용하는 경우, 하나의 AP(Access Point)에 접속할 수 있는 모바일 단말의 접속 대수가 제한적이며, AP에 접속 중인 모바일 단말의 대수가 많을수록 서비스 품질이 저하되는 문제가 발생한다.
이 같은 문제는, Wi-Fi로 다수의 IoT 디바이스를 제어해야 하는 경우 두드러진다.즉,한정된 수량의 AP에 다수의 IoT디바이스가 접속된 경우, 각각의 IoT 디바이스가 사용자가 지정한 시간에 원하는 명령을 실행하지 못하게 되거나, IoT 디바이스로부터 수집된 센싱 정보를 수신하는 데에도 시간 지연의 문제가 발생한다.특히, 드론과 같이 이동성을 갖는 IoT 디바이스가 AP와 통신하는 경우, 통신 품질의 저하는 IoT 디바이스의 충돌, 파손 등의 문제를 발생시킬 수 있다.
그럼에도, Wi-Fi 통신 환경에서 한정된 수량의 AP에 다수의 IoT 디바이스가 접속한 경우에도, 안정적인 통신 환경 지원할 수 있는 통신 방법은 제공되지 않고 있다.
한국등록특허 제10-0996570호
본 발명이 해결하고자 하는 기술적 과제는, Wi-Fi통신 환경에 VPN(Virtual Private Network) 기술이 적용된 통신 방법을 제공하는 것이다.
구체적으로 본 발명이 해결하고자 하는 기술적 과제는,Wi-Fi 통신 환경에서 제1 IP 대역을 갖고 AP에 접속된 IoT 디바이스와,제1 IP 대역과 다른 제2 IP 대역을 갖는 IoT제어 장치 사이의 데이터 통신을 제공하는 방법 및 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 다른 기술적 과제는,AP와 IoT디바이스 사이의 데이터 통신 전에 상호 간의 연결 설립 또는 인증 과정의 수행이 없더라도,AP와 IoT디바이스가 가상 접속된 것으로 취급하여, 데이터 통신을 수행하는 방법 및 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 또 다른 기술적 과제는, AP에 수신된 데이터 패킷을 인터넷 프로토콜로 변환하지 않고 인터넷 프로토콜 기반의 IoT 제어 장치에서 수신할 수 있는 방법 및 장치를 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.
상기 기술적 과제를 해결하기 위한, IP 터널링을 이용한 IoT 디바이스제어 방법은, IoT 디바이스 제어 장치에 의해 수행되며,복수의 IoT 디바이스 중, 제어 대상 디바이스에 대한 제어 데이터를 식별하는 단계와 상기 복수의 IoT 디바이스에 대하여 미리 저장된 이너 헤더 어드레스 정보 중, 상기 제어 대상 디바이스의 이너 헤더 어드레스를 식별하는 단계와 상기 식별된 이너 헤더 어드레스 및 상기 제어 데이터를 기초로 제1 데이터 패킷을 생성하는 단계와 상기 제1 데이터 패킷 및 미리 설정된 아웃터 헤더 어드레스를 기초로, 제2 데이터 패킷을 생성하는 단계와 상기 제2 데이터 패킷을, 미리 지정된 AP를 통해 상기 아웃터 헤더 어드레스와 동일한 클래스 대역대의 미리 설정된 IP(Internet Protocol)주소로 브로드캐스팅하는 단계를 포함할 수 있다.
또한, 상기 기술적 과제를 해결하기 위한,IP 터널링을 이용한 IoT 데이터 통신 방법은,IoT디바이스에 의해 수행되는 IoT데이터 통신 방법으로서, 상기 IoT 디바이스에 대하여 미리 설정된 IP 주소를 기초로, 미리 지정된 AP와 가상 연결을 설립하는 단계와 상기 AP를 통해 C 클래스 대역의 아웃터 헤더 어드레스및 제어 데이터를 포함하는 데이터 패킷을 수신하는 단계와 상기 수신된 데이터 패킷에 대한 디캡슐화를 수행함에 따라, A클래스 대역의 이너 헤더 어드레스로 구성된 이너 헤더를 포함하는 데이터 패킷을 생성하는 단계와 상기 생성된 데이터 패킷 상의 상기 이너 헤더 어드레스에 기초하여, 상기 데이터 패킷 상의 제어 데이터가 상기 IoT 디바이스에 대응되는 제어 데이터인지 판단하는 단계와 상기 데이터 패킷 상의 제어 데이터가 상기 IoT 디바이스에 대응되는 제어 데이터로 판단되면, 상기 제어 데이터를 처리하는 단계를 포함할 수 있다.
또한, 상기 기술적 과제를 해결하기 위한,IP 터널링을 이용한 IoT 디바이스 제어 장치는,하나 이상의 프로세서와 미리 지정된 AP와 연동하여 복수의 IoT(Internet of Things)디바이스와 통신하는 네트워크 인터페이스와 상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리와 상기 컴퓨터 프로그램 및 상기 복수의 IoT 디바이스에 대한 이너 헤더 어드레스를 저장하는 스토리지를 포함하되,상기 컴퓨터 프로그램은, 상기 복수의 IoT 디바이스 중, 제어 대상 디바이스에 대한 제어 데이터를 식별하는 오퍼레이션과 상기 복수의 IoT 디바이스에 대하여 미리 저장된 이너 헤더 어드레스 정보 중, 상기 제어 대상 디바이스의 이너 헤더 어드레스를 식별하는 오퍼레이션과 상기 식별된 이너 헤더 어드레스 및 상기 제어 데이터를 기초로 제1 데이터 패킷을 생성하는 오퍼레이션과 상기 제1 데이터 패킷 및 미리 설정된 아웃터 헤더 어드레스를 기초로, 제2 데이터 패킷을 생성하는 오퍼레이션과및 상기 제2 데이터 패킷을, 상기 미리 지정된 AP를 통해 상기 아웃터 헤더 어드레스와 동일한 클래스 대역대의 미리 설정된 IP(Internet Protocol)주소로 브로드캐스팅하는 오퍼레이션을 포함할 수 있다.
또한, 상기 기술적 과제를 해결하기 위한, IP터널링을 이용한 IoT(Internet of Things)디바이스 제어 시스템은,복수의 IoT 디바이스에 대한 제1 클래스 대역 정보를 저장하고, 상기 복수의 IoT 디바이스 중, 적어도 하나의 제어 대상 디바이스에 대한 제어 데이터가 식별되면, 상기 제어 데이터 및 제1 클래스 대역 정보를 기초로, 제2 클래스 대역 정보를 아웃터 헤더 상에 포함하는 상기 제어 대상 디바이스에 대한 데이터 패킷을 생성하고, 미리 지정된 AP를 통해, 상기 생성된 데이터 패킷을 브로드캐스팅하는 IoT 디바이스 제어 장치와 상기 제2 클래스 대역 정보에 따라, 상기 IoT 디바이스와 상기 IoT 디바이스 제어 장치 간의 데이터 패킷을 교환하는 AP와 상기 AP를 통해 브로드캐스팅되는 데이터 패킷을 수신하고, 상기 수신된 데이터 패킷에 대한 디캡슐화(Decapsulation)를 수행하고, 상기 디캡슐화된 데이터 패킷 상에서 상기 제1 클래스 대역 정보를 식별함에 따라, 상기 수신된 데이터 패킷 상의 제어 데이터가 IoT 디바이스에 대응되는 제어 데이터인지 판단하고, 상기 판단한 결과, 상기 데이터 패킷 상의 제어 데이터가 상기 IoT 디바이스에 대응되는 제어 데이터인 경우, 상기 제어 데이터를 처리하는 IoT 디바이스를 포함할 수 있다.
본 발명에 따르면, 하나의 AP에 다수의 IoT 디바이스가 접속하여도 안정적으로 IoT 디바이스와 IoT 제어 장치가 통신할 수 있는 장점이 있다.
또한, 본 발명에 따르면, IEEE 802.11n등 Wi-Fi 표준에 따른 통신 방식을 유지하므로, 기존의 통신 인프라를 이용하면서도, 무선 공유기 등 AP와 이종의 IP대역 클래스를 이용 중인 장치 사이의 통신을 제공할 수 있는 효과가 있다.이에 따라, AP의 IP 대역의 클래스가 제공하는 호스트 주소 보다 훨씬 많은 호스트 주소를 제공할 이용할 수 있는 효과가 있다. 즉, AP와 IoT 디바이스 사이의 1대 다 통신 시에 접속 가능한 IoT 디바이스의 수량이 획기적으로 증가하는 효과가 있다.
또한, 본 발명에 따르면,IoT 디바이스로부터 AP에 수신된 정보가 IP 변환을 거치지 않고, 바로 IoT 제어 장치에 수신됨으로써, 데이터 수신 속도의 증가 및 네트워크 자원의 효율적 이용이 가능해지는 장점이 있다.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른,IP 터널링을 이용한 IoT 디바이스제어 시스템의 구성도이다.
도 2는 본 발명의 다른 실시예에서 따른,IP 터널링을 이용한 IoT 디바이스제어시스템의 동작을 설명하기 위한 예시도이다.
도 3은 본 발명의 또 다른 실시예에 따른, IoT디바이스 제어 장치의블록도이다.
도 4는 본 발명의 또 다른 실시예에 따른,IoT디바이스 제어장치에 의해 수행되는 IoT디바이스 제어 방법의 순서도이다.
도 5는 본 발명의 또 다른 실시예에 따른, IoT디바이스에 의해 수행되는 IoT데이터 통신방법의 순서도이다.
도 6은 본 발명의 몇몇 실시예에서 참조되는, 데이터 패킷의 캡슐화 또는 디캡슐화를 설명하기 위한 예시도이다.
도 7은 본 발명의 또 다른 실시예에 따른,IP 터널링을 이용한 IoT 디바이스제어시스템의 신호 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
본 명세서에서, IP(Internet Protocol)는 인터넷 상의 하나의 단말에서 다른 단말에 데이터를 보내는 데 사용되는 프로토콜이며, IP 주소는 데이터의 송신 단말 및 수신 단말을 구별하기 위한 고유 주소이다. 특히, 본 명세서의 IP주소(또는 어드레스)는, IPv4뿐만 아니라 IPv6의 주소체계를 갖는 IP 주소일 수 있다.
본 명세서에서,터널링이란, 하위층 통신 규약의 패킷을 상위층 통신 규약으로 캡슐화하는 것으로, 통신망상의 두 점 간에 통신이 되도록 하는 것을 의미한다. 즉, 통신망 상의 통신이 이뤄지는 두 점 사이의 통신 경로인 터널을 생성하는 것을 터널링이라 한다.터널링이 형성되면, 통신망상에서는 통상의 패킷과 캡슐화된 패킷을 구별할 수 없으나 캡슐화를 해제할 수 있는 양단의 기기는 본래의 패킷을 선별할 수 있다.특히, IP 터널링이란, 원 데이터 패킷에 IP 헤더를 부가함으로써, 통신망에서는, 원 데이터 패킷에 캡슐로 덧씌워진 IP 헤더의 프로토콜에 따라 데이터 패킷을 취급하도록 하는 터널링을 의미한다.
도 1은 본 발명의 일 실시예에 따른,IP 터널링을 이용한 IoT 디바이스제어 시스템의 구성도이다.
이하, 설명의 편의를 위하여, 이하. IoT 디바이스제어 시스템은 제어 시스템이라 약칭하기로 한다.
도 1을 참조하면, 제어 시스템은, 하나 이상의 IoT디바이스(10), AP(Access Point)(50) 및 IoT디바이스 제어 장치(100)를 포함할 수 있다.
IoT 디바이스는 무선 인터넷에 연결되어IoT디바이스 제어 장치(100) 또는 사용자 단말로부터 제어 명령을 수신하고, 센싱 정보를 수집하여IoT디바이스 제어 장치(100)에 송신하는장치로서, 예를 들어, 홈 네트워크에 접속된 가전 기기, AP 반경 내의 드론 등일 수 있다.
한편, 도 1에서 하나 이상의 IoT 디바이스(10)의 예로 IoT 디바이스1(10-1), IoT 디바이스2(10-2), IoT 디바이스N(10-N)이 도시되었다.또한, 도 1에서, 하나 이상의 IoT 디바이스(10)는 제어 시스템의 다른 구성요소와 구별되는 다수의 IoT 디바이스 그룹임을 강조하기 위하여,별도 구획화되어 도시되었으나, 예시된 IoT 디바이스1(10-1), IoT 디바이스2(10-2), IoT 디바이스N(10-N)로 구성된 별도의 물리적 구성요소를 의미하는 것은 아니다.다만, 본 발명의 실시예에 따르면, 하나 이상의 IoT 디바이스(10)그룹은 AP(50)와의 터널링 과정에서 터널의 양단 중 일단을 구성함으로써 하나의 물리적 단위처럼 취급될 수도 있다.
하나 이상의 IoT 디바이스(10)는 모두 IP 터널링을 수행하기 위하여, 데이터 패킷에 대한 캡슐화 및 디캡슐화를 수행할 수 있으며, 이를 위해, IP 터널링 소프트웨어를 저장하고 실행할 수 있다.
AP(50)는 IoT 디바이스 제어 장치(100)와 전용 회선에 의해 물리적으로 연결되어, 인터넷 신호를 Wi-Fi 신호로 변환하고 브로드캐스팅할 수 있다. 또한, AP(50)가 하나 이상의 IoT 디바이스(10)로부터 무선 신호를 수신하고 이를 인터넷 신호로 변환하여 IoT 디바이스 제어 장치(100)에 제공함에 따라, IoT 디바이스(10)와 IoT 디바이스 제어 장치(100)간에 무선 인터넷 통신을 제공할 수 있게 된다.
단, 본 발명의 실시예에 따르면, IoT 디바이스(10)와 IoT 디바이스 제어 장치(100)간의 통신 과정에서, AP(50)는 무선 신호를 수신하고, 인터넷 신호로 변환하는 과정을 수행할 필요 없이, IoT 디바이스(10)로부터 인터넷 신호 자체를 수신하여 IoT 디바이스 제어 장치(100)에 제공할 수 있다. 이에 대한 상세 설명은 도 5에 대한 설명에서 후술한다.
IoT 디바이스 제어 장치(100)는 AP를 경유하여 하나 이상의 IoT 디바이스(10)와 통신할 수 있는 컴퓨팅 장치로서, 예를 들어, 서버 장치일 수 있다. 도시되지 않았으나, IoT 디바이스 제어 장치(100)는, 사용자 단말과 네트워크를 통해 통신함으로써, 하나 이상의 IoT 디바이스(10)에 대한 제어 명령을 수신하고, 수신된 제어 명령을 IP 프로토콜 변환 또는 캡슐화하여 AP에 전할 수도 있다.
도 1에서, IoT 디바이스 제어 장치(100)의 이너 헤더 어드레스(Inner Header Address) 로서, 10.2.10.254가 예시되었고, 아웃터 헤더 어드레스(Outer Head Address)로서 192.168.0.253이 예시되었다.상기 이너 헤더 어드레스및 아웃터 헤더 어드레스는 각각 IP 대역의 클래스가 A클래스인 경우와 C클래스인 경우이며, 본 발명의 실시예는 이에 한정되지 않다.
이너 헤더 어드레스는 IoT 디바이스 제어 장치(100) 또는 IoT 디바이스(10)가 송수신하는 데이터 패킷의 이너 헤더에 포함된정보로서, 각 장치의 통신 프로토콜,자신의 소스 주소(Source Address), 목적지 주소(Destination Address)를 포함할 수 있다.또한, 이너 헤더 어드레스는 목적지 포트 번호를 포함할 수도 있다.
아웃터 헤더 어드레스는 IoT 디바이스 제어 장치(100) 또는 IoT 디바이스(10)가 송수신하는 데이터 패킷의 아웃터 헤더에 포함된정보로서, 각 장치 간 터널의 통신 프로토콜,터널 시점의 소스 주소(Source Address), 터널 종점의 목적지 주소(Destination Address)를 포함할 수 있다.또한, 아웃터 헤더 어드레스는 가상 라우터 및 목적지 포트 번호를 포함할 수도 있다.
이하, IoT 디바이스 제어 장치(100)가 A 클래스의 IP 대역으로 통신하고, AP(50) 및 하나 이상의 IoT 디바이스(10)가 C클래스의 IP 대역으로 통신하는 경우를 예로 들어 설명하도록 한다.
본 발명의 실시예에 따르면, IoT 디바이스 제어 장치(100)가 A 클래스의 IP 대역주소를 갖지만, AP(50) 및 하나 이상의 IoT디바이스(10)와 통신하기 위하여, 송신하고자 하는 데이터 패킷을 예시된 아웃터 헤더 어드레스를 포함하는 아웃터 헤더로 캡슐화하여 AP(50)에전달함으로써, C 클래스의 IP 대역 주소를 갖는 기기들과 통신할 수 있다. 이때, 아웃터 헤더를 제외한 데이터 패킷은 이너 헤더로서, 이너 헤더 어드레스를 포함하며, 이너 헤더 어드레스상에 IoT 디바이스 제어 장치(100)의 고유 IP 주소가 기록될 수 있다.
AP(50)는 IP 대역 주소가192.168.0.254로서, IoT 디바이스 제어 장치(100)의 전용 AP인 경우가 도 1에서 예시되었다.
또한, 하나 이상의 IoT 디바이스(10)는 공통된 하나의 C 클래스의 IP 대역 주소로, 192.168.0.1을 갖는 경우가 예시되었다. 이때, IoT 디바이스1(10-1), IoT 디바이스2(10-2), IoT 디바이스N(10-N)등 각각의 IoT디바이스는 개별적인 A클래스의 IP 대역 주소를 가질 수 있다.즉, AP(50) 관점에서데이터 패킷이 예시된 아웃터 헤더 어드레스상의 1개의 IP 대역 주소(192. 168.0.1)를 가지므로, 하나 이상의 IoT 디바이스(10)는 복수 대의 IoT 디바이스가 아닌 1개의 IoT디바이스로 식별되지만, 실제 IoT 디바이스들은 각각의 개별적인 IP 주소를 갖는다.이 경우, IoT 디바이스들의 개별적인 IP 주소는 IoT 디바이스 각각에 미리 설정되고, IoT 디바이스 제어 장치(100)에 미리 저장될 수 있다.
다음으로, 도 2를 참조하여, 제어 시스템의 IP 터널링에 대하여 자세히 설명한다.
도 2는 본 발명의 다른 실시예에서 따른,IP 터널링을 이용한 IoT 디바이스제어시스템의 동작을 설명하기 위한 예시도이다.
도 2를 참조하면, IoT디바이스 제어 장치(100)는 IoT 디바이스(10) 중 어느 하나를 제어하기 위한 제어 데이터를 기초로 A클래스의 IP대역 주소를 갖는 이너 헤더 어드레스를 헤더로 포함하는 데이터 패킷(이하, 제1 데이터 패킷)을 생성할 수 있다.
그러나, AP(50)및 하나 이상의 IoT디바이스(10)의 프로토콜, 예를 들어, Wi-Fi 통신 방식에 의하면, 제1 데이터 패킷의 전송이 불가능하다.IoT디바이스 제어 장치(100)는 Wi-Fi통신 방식에 따라, 데이터 패킷을 전송하기 위하여, 제1 데이터 패킷에 아웃터 헤더를 부가하여, Wi-Fi 통신망에서 통신 가능한 제2 데이터 패킷을 생성할 수 있다. 예를 들어, 아웃터 헤더는 C 클래스의 IP대역 주소를 포함할 수 있다.
이에 따라, AP(50)로부터 하나 이상의 IoT 디바이스(10)까지의 터널링이 수행된다.즉, 아웃터 헤더 상의 C 클래스의 IP 대역 주소로 통신하는 AP(50)와 하나 이상의 IoT 디바이스(10)그룹을 양단으로 하는 터널이 생성된다.
도 2에서, IoT 디바이스 제어 장치(100)와 AP(50) 및 하나 이상의 IoT디바이스(10)간의 통신은 192.168.0.X 의 IP대역 주소 기반으로 수행됨이 예시되었다.
이후, 하나 이상의 IoT디바이스(10)그룹에 속하는 각각의 IoT 디바이스(10-1, 10-2, 10-N)는 제2 데이터 패킷에 대하여 디캡슐화(Decapsulation)를 수행할 수 있다.특히, 아웃터 헤더 어드레스로 구성된 아웃터 헤더를 제거함으로써, 제1 데이터 패킷을 얻는다. 이때, 제1 데이터 패킷에 대하여, 각각의 IoT 디바이스(10-1, 10-2, 10-N)는 헤더(이하, 아웃터 헤더와 구별되는 개념인 이너 헤더로 칭하기로 한다.)상의 이너 헤더 어드레스를 식별함에 따라,제1 데이터 패킷 상의 제어 데이터가 자신을 제어하기 위한 것인지 판별할 수 있다.도 2에서 특히, IoT 디바이스1(10-1)의 이너 헤더 어드레스 상의 IP 주소가 10.2.10.1이고,IoT 디바이스2(10-2)의 이너 헤더 어드레스 상의 IP 주소가 10.2.10.2이고, IoT 디바이스N(10-N)의 이너 헤더 어드레스 상의 IP 주소가 10.2.10.N인 경우가 예시되었다.
상기 판별 결과, 제어 데이터가 자신을 제어하기 위한 것인 경우, 즉, 식별된 이너 헤더 어드레스상의 목적지 주소가 자신의 IP 주소인 경우, IoT 디바이스는 이를 식별하고, 제어 데이터 처리하거나 명령을 수행할 수 있다.반면,식별된 이너 헤더 어드레스상의 목적지 주소가 자신의 IP 주소가 다른 경우, IoT 디바이스는 제어 데이터를 삭제할 수 있다.
도 2를 참조하면, 상기와 같은 터널링 및 디캡슐화를 수행함에 따라, 하나 이상의 IoT 디바이스(10) 그룹에 포함된 IoT 디바이스는 AP(50)와 개별적인 터널을 생성할 수 있으며, 이를 통해 데이터 패킷을 교환할 수 있다.
IoT 디바이스 제어 장치(100)와 IoT 디바이스(10)는 각각 송신하고자 하는 데이터를이너 헤더를 더해 제1 데이터 패킷으로 생성할 수 있으며, 아웃터 헤더를 더해 제2 데이터 패킷으로 생성할 수 있다.
또한, IoT 디바이스 제어 장치(100)와 IoT 디바이스(10)는 각각 수신한 데이터 패킷에 대한 디캡슐화를 수행하여, 이너 헤더 상의 이너 헤더 어드레스를 식별할 수 있다.
도 2에서 특히, 각각의 IoT 디바이스가 개별적인 A 클래스의 IP 대역 주소를 가짐에 따라, IoT 디바이스가 224개만큼 접속할 수 있는 효과가 있다.
이에 따라, 하나의 외부 IP,즉, 아웃터 헤더 어드레스 상의 IP 대역 주소192.168.0.1에 총 224개의 호스트 주소를 할당할 수 있으므로, AP(50)에 접속 가능한 IoT 디바이스 대수의 제약이 없어지는 효과가 있다.반면, 이와 같은 IP 터널링을 이용하지 않는 경우, 즉, C클래스의 IP 대역 주소에 따른 호스트 주소를 할당하는 경우, 28개만 할당할 수 있으므로, AP(50)에 접속 가능한 IoT 디바이스 대수가 현격히 줄어들게 된다.
도 3은 본 발명의 또 다른 실시예에 따른, IoT디바이스 제어 장치(100)의 블록도이다.
이하, 도3을 참조하여, IoT디바이스 제어 장치(100)의 구조와 동작에 대하여 자세히 설명한다.
도 3을 참조하면, IoT디바이스 제어 장치(100)는 하나 이상의 프로세서(101), AP(50)를 통해 하나 이상의IoT디바이스(10)와 터널을 생성시키는네트워크 인터페이스(102), 프로세서(101)에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리(103)와,컴퓨터 프로그램을 저장하는 스토리지(104)를 포함할 수 있다.
프로세서(101)는 IoT 디바이스 제어 장치(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(101)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다. 또한, 프로세서(101)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. IoT 디바이스 제어 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.
네트워크 인터페이스(102)는 IoT 디바이스 제어 장치(100)의 유무선 인터넷 통신을 지원한다. 또한, 네트워크 인터페이스(102)는 공중 통신망인 인터넷 외에 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 네트워크 인터페이스(102)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.네트워크 인터페이스(102)는 사용자 단말로부터 IoT 디바이스를 제어하기 위한 신호를 수신할 수도 있다.
특히, 네트워크 인터페이스(102)는물리적으로 연결된 AP(50)와 연동하여하나 이상의 IoT(10) 그룹 사이의 터널을 생성할 수 있다. 한편, 본 발명의 일 실시예에 따르면, 네트워크 인터페이스는 AP(50)를 포함하여 구성될 수도 있다.
메모리(103)는각종데이터, 명령및/또는정보를저장한다. 메모리(103)는 본 발명의 실시예들에 따른 IP 터널링 및/또는 IoT 디바이스 제어방법을 실행하기 위하여 스토리지(104)로부터 하나 이상의 프로그램(105)을 로드(load)할 수 있다. 도3에서 메모리(103)의 예시로 RAM이 도시되었다.
스토리지(104)는 상기 하나 이상의 프로그램(105) 및 IoT 디바이스 주소(106)를비임시적으로저장할 수있다. 도 3에서 상기 하나 이상의 프로그램(105)의 예시로 IP 터널링 소프트웨어(105)가 도시되었다.본 발명의 실시예에 따른 방법들은, 프로세서(101)가 IP 터널링 소프트웨어(105)를 실행함에 따라 수행될 수 있다.
스토리지(104)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시메모리등과같은비휘발성메모리, 하드디스크, 착탈형디스크, 또는본발명이속하는기술분야에서잘알려진임의의형태의컴퓨터로읽을수있는기록매체를포함하여구성될수있다.
IP 터널링 소프트웨어(105)는 본 발명의 실시예에 따라 매니지먼트 터널 및 데이터 터널을 생성, 관리, 데이터 캡슐화 및 디캡슐화를 수행하기 위해 IoT 디바이스 제어 장치(100) 및/또는 IoT 디바이스(10)에 설치되는 에이전트일 수 있다.
또한, IoT 디바이스 주소(106)는 각각의 IoT 디바이스의 고유의 IP 주소일 수 있다. 예를 들어, A 클래스의 IP 주소 대역에 따른,각 IoT 디바이스의 목적지 주소일 수 있다.IoT 디바이스 제어 장치(100)는 각각의 IoT 디바이스를 식별하기 위하여, IoT 디바이스 주소(106)를 미리 저장할 수 있다. 즉,IoT 디바이스 제어 장치(100)는 통신 대상 각각의 IP주소 정보를 미리 저장할 수 있다.
또한, 도시되지 않았으나, IoT 디바이스 제어 장치(100)는 IoT디바이스(10)의 제어를 위한 입력을 수신하거나 제어 현황을 알리는 인터페이스를 제공하기 위하여 입력부 및 출력부를 포함할 수도 있다.
도 4는 본 발명의 또 다른 실시예에 따른, IoT디바이스 제어장치에 의해 수행되는 IoT디바이스 제어 방법의 순서도이다.
이하, 도 4를 참조하여 IoT 디바이스 제어 장치(100)가 수행하는 IoT 디바이스 제어 방법에 대하여 설명하도록 한다. 이하의 각 단계는 IoT 디바이스 제어 장치(100)에 의해 수행되며,특히,이하의 각 단계는 프로세서(101)가 동기화 소프트웨어(105)에 따른 연산을 수행함에 따라 실행된다.
도 4를 참조하면,IoT 디바이스 제어 장치(100)는 복수의 IoT 디바이스(10)중, 제어 대상 디바이스에 대한 제어 데이터를 식별할 수 있다(S10).
일 실시예에 따르면, IoT 디바이스 제어 장치(100)는 제어 대상 디바이스에 대한 제어 데이터가 미리 설정된 알고리즘에 따라 트리거되면 이를 식별할 수 있다. 다른 실시예에 따르면, IoT 디바이스 제어 장치(100)는 사용자 단말로부터 특정 ID의 IoT 디바이스에 대한 명령을 수신함으로써, 제어 대상 디바이스의 제어 데이터를 식별할 수도 있다.
IoT 디바이스 제어 장치(100)는 복수의 IoT 디바이스(10)에 대하여 미리 저장된어드레스 정보 중, 제어 대상 디바이스의 어드레스를 식별할 수 있다.
IoT 디바이스 제어 장치(100)는 식별된 어드레스 및 제어 데이터를 기초로 제1 데이터 패킷을 생성할 수 있다. 구체적으로 식별된 어드레스 정보를 이너 헤더로 포함하고,이너 헤더가 제어 데이터에 부가된 데이터 패킷이 생성될 수 있다. IoT 디바이스 제어 장치(100)는 상기 제1 데이터 패킷을 기초로 확장 패킷을 생성할 수 있다(S20). 구체적으로, 제1 데이터 패킷 및 미리 설정된 아웃터 헤더 어드레스를 기초로, 제2 데이터 패킷이 생성될 수 있다. 미리 설정된 아웃터 헤더 어드레스는 AP(50)와 IoT 디바이스(10)사이의 터널에서 데이터 패킷을 교환하는데 이용되는 IP 대역 주소를 포함할 수 있다.이에 따라, 제2 데이터 패킷이 터널을 통해 AP(50)와 IoT 디바이스(10)그룹 사이에서 송수신된다.
이때, IoT 디바이스 제어 장치(100)는 미리 설정된 IP 주소를 기초로 터널링을 수행할 수 있다(S30). 즉, 상술한 아웃터 헤더 어드레스를 기초로, AP(50)와 복수의 IoT 디바이스(10)그룹 사이의 터널이 생성된다.
IoT 디바이스 제어 장치(100)는 AP(50)와 연동하여 생성된 터널을 통해, 제2 데이터 패킷을브로드캐스팅할 수 있다(S40).구체적으로, IoT 디바이스 제어 장치(100)는, AP(50)를 통해 상기 미리 설정된 아웃터 헤더 어드레스와 동일한 클래스 대역대의 미리 설정된 IP 주소로 브로드캐스팅할 수 있다.예를 들면, 도 1에 도시된 바와 같이,미리 설정된 아웃터 헤더 어드레스192.168.0.253와 동일한 클래스의 대역대인 아웃터 헤더 어드레스192.168.0.1로 제2 데이터 패킷이 브로드캐스팅될 수 있다.
다음으로, IoT 디바이스 제어 장치(100)는 미리 설정된 IP 주소를 갖는 복수의 IoT 디바이스 중, 제1 데이터 패킷 상의이너 헤더 어드레스에 대응되는 이너 헤더 어드레스를 갖는 제어 대상 디바이스와 데이터 패킷 교환을 위한 터널링을 수행할 수도 있다.즉, 제2 데이터 패킷이 브로드캐스팅된 후, 동일한 아웃터 헤더 어드레스를 미리 설정된 IP주소로 갖는 각각의 IoT 디바이스(10)들은, 디캡슐을 수행하여, 제2 데이터 패킷의 아웃터 헤더를 제거하고, 제1 데이터 패킷을 생성할 수 있다. 이때, 특정 IoT 디바이스가 제1 데이터 패킷 상의 이너 헤더 어드레스에 대응되는 이너 헤더 어드레스를 갖는 경우, 제어 데이터가 상기 특정 IoT디바이스를 제어하기 위한 데이터이며, 제어 데이터가 상기 특정 IoT 디바이스에 전달됨으로써, IoT 디바이스 제어 장치(100)와 IoT 디바이스 (10) 사이에서 실제적인 데이터 패킷의 교환이 이뤄진다.본 명세서에서 이와 같은 실제 데이터 패킷 교환을 위한 통신 경로 생성, 즉 디캡슐화 및 이너 헤더 어드레스식별 과정을 IoT 디바이스 제어 장치(100)와 제어 대상 디바이스 간의 터널링으로 칭할 수 있다.
상기 터널링이 수행됨에 따라 생성된 터널을 통해, IoT 디바이스 제어 장치(100)로부터 제어 대상 디바이스에 제2 데이터 패킷이송신된다.
한편, 본 발명의 다른 실시예에 따르면,도 4의 단계(S10)에서, IoT 디바이스 제어 장치(100)는 사용자 단말로부터 제어 대상 디바이스에 대한 제어 데이터 및 상기 제어 대상 디바이스의 이너 헤더 어드레스를 포함하는 데이터 패킷을 수신함으로써 제어 데이터를 식별할 수도 있다.이때, 사용자 단말로부터 수신된 데이터 패킷은 아웃터 헤더 상의 IP 대역 클래스가, IoT 디바이스 제어 장치(100)의 IP대역 클래스와 다른 클래스를 갖는 데이터 패킷일 수도 있다. 예를 들어, IoT 디바이스 제어 장치(100)의 이너 헤더 어드레스상의 IP 대역 주소는 A 클래스인데, 사용자 단말로부터 수신된 데이터 패킷의 아웃터 헤더에 C클래스의 대역 주소 등 A 클래스와 다른 대역 주소가 포함된 경우이다.
이 경우, IoT 디바이스 제어 장치(100)는 A 클래스 대역과 다른 적어도 하나의 아웃터 헤더에 대한 디캡슐화를 수행함에 따라, A 클래스 대역을 이너 헤더로 갖는 데이터 패킷을 생성할 수 있다. 만약, 아웃터 헤더가 복수개 있는 경우에도, IoT 디바이스 제어 장치(100)는 순차적으로 디캡슐화를 수행함으로써, 이너 헤더 상에 A 클래스 대역의 IP 주소를 갖는 데이터 패킷을 생성할 수 있다.
또한, IoT 디바이스 제어 장치(100)는 디캡슐된 데이터 패킷 상의 제어 데이터를식별할 수 있다.
예를 들면,IoT 디바이스 제어 장치(100)는 사용자로부터 C 클래스의 아웃터 헤더 어드레스를 아웃터 헤더로 갖는 데이터 패킷을 수신하여, A 클래스의 어드레스를 이너 헤더로 갖는 제1 데이터 패킷을 생성하고, 이를 다시 AP(50)를 통해 복수의 IoT 디바이스(10)와 통신하기 위해 아웃터 헤더로 C클래스의 아웃터 헤더 어드레스를 아웃터 헤더로 갖는 제2 데이터 패킷으로 생성하여, AP(50)에 전달할 수 있다.
다음으로,IoT디바이스에 의해 수행되는 IoT데이터 통신 방법을 설명한다.
도 5는 본 발명의 또 다른 실시예에 따른, IoT디바이스에 의해 수행되는 IoT데이터 통신 방법의 순서도이다.
도 5를 참조하면, 복수의 IoT 디바이스(10)그룹에 속하는 적어도 하나의 IoT디바이스는 미리 설정된 IP 주소를 기초로, 미리 지정된 AP(50)와 가상 연결을 설립할 수 있다(S510). 즉, IoT디바이스는 전원이 들어오면, AP(50)와 실제 네트워크 연결을 고려하지 않고, 가상의 접속 상태를 인식할 수 있다. 즉, IoT 디바이스가 미리 지정된 AP(50)와 접속을 위한 인증 메시지 교환 과정을 수행하지 않고, IoT디바이스에 등록된 미리 지정된 AP(50)에 대한 IP 주소를 식별함에 따라 가상 연결이 설립된다.
예를 들어, IoT디바이스는 도 1에 예시된 AP(50)의 미리 설정된 IP 주소인 192.168.0.254를 알고 있으므로, AP(50)와 연결을 위한 인증 메시지 교환 없이 현재 접속 중인 AP가 IP 주소 192.168.0.254에 해당하는 AP(50)인 것으로 인식할 수 있다.
IoT디바이스는,IoT디바이스 제어 장치(100)로부터 AP(50)를 통해, C 클래스 대역의 아웃터 헤더 어드레스및 제어 데이터를 포함하는 데이터 패킷을 수신할 수 있다(S520). 이때, IoT디바이스는 슬립 모드(Sleep mode)에서 깨어나,자신의 상태를 IoT디바이스 제어 장치(100)에 알릴 수 있다.
다음으로, IoT디바이스는 수신된 데이터 패킷에 대한 디캡슐화를 수행함에 따라, A클래스 대역의 어드레스로 구성된 이너 헤더를 포함하는 데이터 패킷을 생성할 수 있다(S530).
IoT디바이스는 상기 생성된 데이터 패킷 상의 이너 헤더 어드레스에 기초하여, 상기 데이터 패킷 상의 제어 데이터가 자신에 대응되는 제어 데이터인지 판단할 수 있다(S540). 이때, 제어 데이터가 자신과 무관한 경우,IoT디바이스는 디캡슐된 데이터 패킷을 폐기한다(S545).
반면, 데이터 패킷 상의 이너 헤더 어드레스가 IoT디바이스의 IP 주소에 대응되는 경우, IoT디바이스는 제어 데이터를 처리하고, 제어 데이터에 따른 각종 명령을 수행할 수 있다(S550).
지금까지 IoT디바이스 제어 장치(100)로부터 제어 데이터를 포함하는 데이터 패킷이 IoT디바이스로 송신되는 경우가 주로 설명되었으나, IoT디바이스에서 IoT디바이스 제어 장치(100)로 센싱 정보 등 IoT 데이터가 송신되는 경우에도 상기 실시예와 동일한 방식의 통신 방법이 이용될 수 있다.
즉, IoT 데이터가 A 클래스의 어드레스를 갖는 이너 헤더와 결합되어 IoT 데이터 패킷이 생성되고, 여기에 C클래스의 아웃터 헤더 어드레스를 갖는 아웃터 헤더가 부가되어 제1 IoT 데이터 패킷이 생성될 수 있다. IoT 디바이스로부터 제1 IoT 데이터 패킷이 AP(50)를 통해 송신되는 과정 역시 터널링 형성으로 볼 수 있으며, AP(50)로부터 제1 IoT 데이터 패킷이 수신되면, IoT 디바이스 제어 장치(100)는디캡슐화를 통해, 제2 IoT 데이터 패킷을 생성하고, IoT 데이터를 식별할 수 있다.IoT 디바이스 제어 장치(100)는 제2 IoT 데이터 패킷 상의 이너 헤더를 기초로 복수의 IoT 디바이스(10)중에서 적어도 하나의 디바이스를 제어 대상 디바이스로 식별할 수 있다.또한, 식별된 제어 대상 디바이스에 대한, 제2 IoT 데이터 패킷 상의 IoT 데이터를 처리할 수 있다.
도 6은 본 발명의 몇몇 실시예에서 참조되는, 데이터 패킷의 캡슐화 또는 디캡슐화를 설명하기 위한 예시도이다.
도 4 및 도 5에 대한 설명에서, 제1 데이터 패킷을 제2 데이터 패킷으로 생성하는 과정 및 IoT 데이터 패킷을 제1 IoT 데이터 패킷으로 생성하는 과정이 설명되었다.이와 같은 과정을 캡슐화로 칭할 수 있다.
반대로, 제2 데이터 패킷으로부터 아웃터 헤더를 제거하여 제1 데이터 패킷을 생성하는 과정 및, 제1 IoT 데이터 패킷의 아웃터 헤더를 제거하여 제2 IoT 데이터 페킷을 생성하는 과정을 디캡슐화라 한다.
도 6을 참조하면,상기 제1 데이터 패킷 및 제2 IoT 데이터 패킷은 데이터 패킷(610)에 해당한다. 여기에 아웃터 헤더(611)이 부가되는 과정이 캡슐화이며, 부가되어 확장된 데이터 패킷(620)이 제2 데이터 패킷 및 제1 IoT 데이터 패킷에 해당한다.
반대로, 상기 제2 데이터 패킷 및 제1IoT 데이터 패킷 같은 데이터 패킷(620)에 아웃터 헤더(611)가 제거되는 과정이 디캡슐화이며, 디캡슐화된 원본 데이터 패킷(610)이 제1 데이터 패킷 및 제2 IoT 데이터 패킷에 해당한다.
도 6에서 도시되지 않았으나, 아웃터 헤더는 통신 환경에 따라 캡슐화 과정에서 제2 헤더 뿐만 아니라 제3 헤더 등이 추가될 수도 있다. 이 경우, 기기들은 순차적으로 자신의 통신 환경에 맞도록 하나 또는 둘 이상의 아웃터 헤더를 제거하여 사용할 수 있다.
지금까지, 모니터링 시스템의 구성 요소인 IoT 디바이스 제어 장치(100)의 동작 및 신뢰성 인증 방법에 대하여 주로 설명하였다.이하, 모니터링 시스템의 각 구성 요소의 동작에 대하여 자세히 설명하도록 한다.
도 7은 본 발명의 또 다른 실시예에 따른,IP 터널링을 이용한 IoT 디바이스제어시스템의 신호 흐름도이다.
도 7을 참조하면, IoT디바이스 제어 시스템은, IoT 디바이스 제어 장치(100)와 AP(50) 복수의 IoT 디바이스(10)를 포함할 수 있다.
IoT 디바이스 제어 장치 (100)는 복수의 IoT 디바이스(10)에 대한 제1 클래스 대역 정보를 미리 저장한다(S710). 또한, IoT 디바이스 제어 장치(100)는 복수의 IoT 디바이스 중, 적어도 하나의 제어 대상 디바이스에 대한 제어 데이터를식별하고, 제어 데이터 및 제1 클래스 대역 정보를 기초로, 제2 클래스 대역 정보를 아웃터 헤더 상에 포함하는 제어 대상 디바이스에 대한 데이터 패킷을 생성할 수 있다(S714). 예를 들어, 제1 클래스 대역 정보는 A 클래스 대역의 IP 주소일 수 있으며, 제2 클래스 대역 정보는 C 클래스 대역의 IP 주소일 수 있다.
IoT 디바이스 제어 장치(100)가 제어 대상 디바이스에 대한 데이터 패킷을 생성하기 전 또는 후에, AP(50)와 IoT디바이스(10) 사이에 가상 연결이 설립된다(S712). 가상 연결에 대한 설명은 도 5에서 상술한 설명으로 대체한다.
이때, AP(50)는 생성된 데이터 패킷을 IoT 디바이스 제어 장치(100)의 제어 하에 브로드캐스팅할 수 있다.구체적으로, AP(50)는 제2 클래스 대역 정보에 따라, IoT 디바이스(10)와 IoT 디바이스 제어 장치(100) 간의 데이터 패킷을 교환하기 위한 터널을 생성한다(S715).
상기 터널을 통해, 데이터 패킷이IoT 디바이스 제어 장치(100)로부터 IoT 디바이스(10)로 송신되면, IoT 디바이스(10)는,AP(50)를 통해 브로드캐스팅되는 데이터 패킷을 수신하고, 상기 수신된 데이터 패킷에 대한 디캡슐화를 수행한다. 또한, IoT 디바이스(10)는 디캡슐화된 데이터 패킷 상에서 제1 클래스 대역 정보를 식별함에 따라 수신된 데이터 패킷 상의 제어 데이터가 IoT 디바이스에 대응되는 제어 데이터인지 판단하고, 상기 판단한 결과, 상기 데이터 패킷 상의 제어 데이터가 상기 IoT 디바이스에 대응되는 제어 데이터인 경우, 상기 제어 데이터를 처리한다(S717).
또한, 상기 터널을 통해, IoT 데이터 패킷이IoT 디바이스 제어 장치(100)로 IoT 디바이스(10)로부터 송신되면,IoT 디바이스 제어 장치(100)는 IoT데이터 패킷을 수신하고, 상기 수신된 IoT데이터 패킷에 대한 디캡슐화를 수행한다(S721).또한, 패킷이IoT 디바이스 제어 장치(100)는, 디캡슐화된 IoT데이터 패킷 상에서 제1 클래스 대역 정보를 식별함에 따라 수신된 IoT데이터 패킷 상의 IoT데이터를 송신한 IoT디바이스를 식별하고, IoT데이터를 처리한다(S723).
지금까지 첨부된 도면을 참조하여 설명된 본 발명의 실시예에 따른 방법들은 컴퓨터가 읽을 수 있는 코드로 구현된 컴퓨터프로그램의 실행에 의하여 수행될 수 있다. 상기 컴퓨터프로그램은 인터넷 등의 네트워크를 통하여 제1 컴퓨팅 장치로부터 제2 컴퓨팅 장치에 송신되어 상기 제2 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 제2 컴퓨팅 장치에서 사용될 수 있다.
상기 제1 컴퓨팅 장치 및 상기 제2 컴퓨팅 장치는, 서버 장치, 데스크탑 PC와 같은 고정식 컴퓨팅 장치, 노트북, 스마트폰, 태블릿 PC와 같은 모바일 컴퓨팅 장치를 모두 포함한다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다.

Claims (10)

  1. IoT(Internet of Things) 디바이스 제어 장치에 의해 수행되는, IoT 디바이스 제어 방법으로서,
    미리 설정된 동일한 아웃터 헤더 어드레스를 갖는 복수의 IoT 디바이스 중, 제어 대상 디바이스에 대한 제어 데이터를 식별하는 단계;
    상기 복수의 IoT 디바이스에 대하여 미리 저장된 이너 헤더 어드레스(Inner Header Address) 정보 중, 상기 제어 대상 디바이스의 이너 헤더 어드레스를 식별하는 단계;
    상기 식별된 이너 헤더 어드레스 및 상기 제어 데이터를 기초로 제1 데이터 패킷을 생성하는 단계;
    상기 제1 데이터 패킷 및 상기 아웃터 헤더 어드레스를 기초로, 제2 데이터 패킷을 생성하는 단계; 및
    상기 제2 데이터 패킷을, 미리 지정된 AP를 통해 상기 아웃터 헤더 어드레스와 동일한 클래스 대역대의 미리 설정된 IP(Internet Protocol) 주소로 브로드캐스팅하는 단계를 포함하는,
    IP 터널링을 이용한 IoT 디바이스 제어 방법.
  2. 제1 항에 있어서,
    상기 브로드캐스팅하는 단계는,
    상기 미리 설정된 IP 주소를 갖는 복수의 IoT 디바이스 중, 상기 이너 헤더 어드레스에 대응되는 이너 헤더 어드레스를 갖는 제어 대상 디바이스와 데이터 패킷 교환을 위한 터널링을 수행하는 단계; 및
    상기 터널링이 수행됨에 따라 생성된 터널을 통해, 상기 제2 데이터 패킷을 송신하는 단계를 포함하는,
    IP 터널링을 이용한 IoT 디바이스 제어 방법.
  3. 제 1항에 있어서,
    상기 제1 데이터 패킷은 A클래스 대역의 어드레스를 포함하는,이너 헤더(Inner Header)를포함하고,
    상기 제2 데이터 패킷은 상기 제1 데이터 패킷에 아웃터 헤더(Outer Header)가 부가된 확장 패킷이며,
    상기 아웃터 헤더는 C 클래스 대역의 아웃터 헤더 어드레스를 포함하는,
    IP 터널링을 이용한 IoT 디바이스 제어 방법.
  4. 제 1 항에 있어서,
    상기 복수의 IoT 디바이스 중 적어도 하나로부터 상기 미리 지정된 AP를 통해, 상기 적어도 하나의 디바이스에 대한 제1 IoT 데이터 패킷을 수신하는 단계를 더 포함하되,
    상기 제1 IoT 데이터 패킷은,
    상기 적어도 하나의 디바이스에 대한IoT 데이터에 상기 제어 대상 디바이스에서 생성된 아웃터 헤더가 부가된 확장 패킷이며, 상기 아웃터 헤더는C 클래스 대역의 아웃터 헤더 어드레스를 포함하는,
    IP 터널링을 이용한 IoT 디바이스 제어 방법.
  5. 제 4항에 있어서,
    상기 제1 IoT 데이터 패킷에 대한 디캡슐화(Decapsulation)를 수행함에 따라, 상기 제1 IoT 데이터 패킷에서 상기 아웃터 헤더가 제거된 제2 IoT 데이터 패킷을 생성하는 단계;
    상기 제2 IoT 데이터 패킷 상의 이너 헤더를 기초로 상기 적어도 하나의 디바이스를 제어 대상 디바이스로 식별하는 단계;및
    상기 식별된 제어 대상 디바이스에 대한, 상기 제2 IoT 데이터 패킷 상의 IoT 데이터를 처리하는 단계를 포함하는,
    IP 터널링을 이용한 IoT 디바이스 제어 방법.
  6. 제 1 항에 있어서,
    상기 제1 데이터 패킷은 A클래스 대역의 어드레스가 포함된, 이너 헤더를포함하고,
    상기 제어 데이터를 식별하는 단계는,
    사용자 단말로부터 상기 제어 대상 디바이스에 대한 제어 데이터 및 상기 제어 대상 디바이스의 이너 헤더 어드레스를 포함하는 데이터 패킷을 수신하는 단계를 포함하되,
    상기 사용자 단말로부터 수신된 데이터 패킷이 상기 A클래스 대역과 다른 아웃터 헤더를 적어도 하나 포함하는 경우,
    상기 A 클래스 대역과 다른 적어도 하나의 아웃터 헤더에 대한 디캡슐화를 수행함에 따라, A 클래스 대역을 이너 헤더로 갖는 데이터 패킷을 생성하는 단계; 및
    상기 생성된A 클래스 대역을 이너 헤더로 갖는 데이터 패킷 상의 제어 데이터를 식별하는 단계를 더 포함하는
    IP 터널링을 이용한 IoT 디바이스 제어 방법.
  7. 삭제
  8. 삭제
  9. 하나 이상의 프로세서;
    미리 지정된 AP와 연동하여 복수의 IoT(Internet of Things) 디바이스와 통신하는 네트워크 인터페이스;
    상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리; 및
    상기 컴퓨터 프로그램 및 상기 복수의 IoT 디바이스에 대한 이너 헤더 어드레스를 저장하는 스토리지를 포함하되,
    상기 컴퓨터 프로그램은,
    상기 복수의 IoT 디바이스 중, 제어 대상 디바이스에 대한 제어 데이터를 식별하는 오퍼레이션;
    상기 복수의 IoT 디바이스에 대하여 미리 저장된 이너 헤더 어드레스 정보 중, 상기 제어 대상 디바이스의 이너 헤더 어드레스를 식별하는 오퍼레이션;
    상기 식별된 이너 헤더 어드레스 및 상기 제어 데이터를 기초로 제1 데이터 패킷을 생성하는 오퍼레이션;
    상기 제1 데이터 패킷 및 미리 설정된 아웃터 헤더 어드레스를 기초로, 제2 데이터 패킷을 생성하는 오퍼레이션; 및
    상기 제2 데이터 패킷을, 상기 미리 지정된 AP를 통해 상기 아웃터 헤더 어드레스와 동일한 클래스 대역대의 미리 설정된 IP(Internet Protocol) 주소로 브로드캐스팅하는 오퍼레이션을 포함하고, 상기 복수의 IoT 디바이스는 미리 설정된 동일한 상기 아웃터 헤더 어드레스를 갖는,
    IP 터널링을 이용한 IoT 디바이스 제어 장치.
  10. IoT(Internet of Things) 디바이스 제어 시스템으로서,
    복수의 IoT 디바이스에 대한 제1 클래스 대역 정보를 저장하고, 상기 복수의 IoT 디바이스 중, 적어도 하나의 제어 대상 디바이스에 대한 제어 데이터가 식별되면, 상기 제어 데이터 및 제1 클래스 대역 정보를 기초로, 제2 클래스 대역 정보를 아웃터 헤더 상에 포함하는 상기 제어 대상 디바이스에 대한 데이터 패킷을 생성하고, 미리 지정된 AP를 통해, 상기 생성된 데이터 패킷을 브로드캐스팅하는 IoT 디바이스 제어 장치;
    상기 제2 클래스 대역 정보에 따라, 상기 IoT 디바이스와 상기 IoT 디바이스 제어 장치 간의 데이터 패킷을 교환하는 AP; 및
    상기 AP를 통해 브로드캐스팅되는 데이터 패킷을 수신하고, 상기 수신된 데이터 패킷에 대한 디캡슐화(Decapsulation)를 수행하고, 상기 디캡슐화된 데이터 패킷 상에서 상기 제1 클래스 대역 정보를 식별함에 따라, 상기 수신된 데이터 패킷 상의 제어 데이터가 IoT 디바이스에 대응되는 제어 데이터인지 판단하고, 상기 판단한 결과, 상기 데이터 패킷 상의 제어 데이터가 상기 IoT 디바이스에 대응되는 제어 데이터인 경우, 상기 제어 데이터를 처리하는 IoT 디바이스를 포함하고, 상기 복수의 IoT 디바이스는 미리 설정된 동일한 아웃터 헤더 어드레스를 갖는,
    IP 터널링을 이용한 IoT 디바이스 제어 시스템.
KR1020170083897A 2017-06-30 2017-06-30 IP 터널링을 이용한IoT 디바이스제어 방법 및장치 KR101947169B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170083897A KR101947169B1 (ko) 2017-06-30 2017-06-30 IP 터널링을 이용한IoT 디바이스제어 방법 및장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170083897A KR101947169B1 (ko) 2017-06-30 2017-06-30 IP 터널링을 이용한IoT 디바이스제어 방법 및장치

Publications (2)

Publication Number Publication Date
KR20190003258A KR20190003258A (ko) 2019-01-09
KR101947169B1 true KR101947169B1 (ko) 2019-02-12

Family

ID=65017334

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170083897A KR101947169B1 (ko) 2017-06-30 2017-06-30 IP 터널링을 이용한IoT 디바이스제어 방법 및장치

Country Status (1)

Country Link
KR (1) KR101947169B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102216884B1 (ko) * 2020-06-17 2021-02-18 넥스컨텔레컴 주식회사 무선 근거리 네트워크 기반의 비대칭 통신을 지원하는 터널 서버 및 그의 동작 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020034179A1 (en) * 1999-02-15 2002-03-21 Ville Ollikainen IP tunneling service without a return connection

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5944823A (en) * 1996-10-21 1999-08-31 International Business Machines Corporations Outside access to computer resources through a firewall
KR100996570B1 (ko) 2008-07-24 2010-11-24 주식회사 케이티 모바일 ip를 이용한 가상사설망 접속 방법 및 시스템
US9525627B2 (en) * 2014-05-27 2016-12-20 Google Inc. Network packet encapsulation and routing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020034179A1 (en) * 1999-02-15 2002-03-21 Ville Ollikainen IP tunneling service without a return connection

Also Published As

Publication number Publication date
KR20190003258A (ko) 2019-01-09

Similar Documents

Publication Publication Date Title
US11647548B2 (en) Network access method, device, and system
US9468030B2 (en) Method, device, and network system of establishing a tunnel
US10958581B2 (en) Data transmission method and communications apparatus
JP6131484B2 (ja) ユーザ端末のアクセスを制御するための方法、装置、およびシステム
CA3064945C (en) Virtual-machine dataplane with dhcp-server functionality
JP2008017315A (ja) 無線ブリッジ通信機
US9131431B2 (en) Wireless access point device, network system and network auto-establishing method of the same
KR101947169B1 (ko) IP 터널링을 이용한IoT 디바이스제어 방법 및장치
US20160248727A1 (en) Delivery control device, data delivery system, delivery control method, and non-transitory computer readable medium storing delivery control program
CN111163463A (zh) 一种无线设备接入路由器的方法、装置、设备和存储介质
US11412448B2 (en) Remote wake-up of a device behind a NAT
CN111669309A (zh) 一种建立VxLAN的方法及无线控制器、交换机
CN114846774B (zh) 一种通信方法及装置
KR101947170B1 (ko) 동적 vpn 관리 방법 및 장치
CN114340037B (zh) 一种LoRaWAN设备间通信方法、系统、设备及介质
CN111465081A (zh) 管控指令接收、发送方法、装置、设备及存储介质
CN111107046B (zh) 一种数据流的传输方法及装置
CN111866195B (zh) 一种端口协商方法及装置
KR101306305B1 (ko) 이기종 네트워크 기반 데이터 동시 전송 서비스 방법 및 장치
US20240163753A1 (en) Handling layer 3 measurements of a user equipment
US11044223B2 (en) Connection establishment for node connected to multiple IP networks
JP2016208084A (ja) ネットワークシステム及び制御装置
KR20130010751A (ko) 이기종 네트워크 기반 데이터 동시 전송 서비스 장치 및 그 방법
JP2020509621A (ja) パケット処理

Legal Events

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