KR102307030B1 - Internet of Things Communication System with Packet Safety Verification - Google Patents

Internet of Things Communication System with Packet Safety Verification Download PDF

Info

Publication number
KR102307030B1
KR102307030B1 KR1020200021020A KR20200021020A KR102307030B1 KR 102307030 B1 KR102307030 B1 KR 102307030B1 KR 1020200021020 A KR1020200021020 A KR 1020200021020A KR 20200021020 A KR20200021020 A KR 20200021020A KR 102307030 B1 KR102307030 B1 KR 102307030B1
Authority
KR
South Korea
Prior art keywords
iot device
address
iot
packet
virtual
Prior art date
Application number
KR1020200021020A
Other languages
Korean (ko)
Other versions
KR102307030B9 (en
KR20210106185A (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 KR1020200021020A priority Critical patent/KR102307030B1/en
Publication of KR20210106185A publication Critical patent/KR20210106185A/en
Application granted granted Critical
Publication of KR102307030B1 publication Critical patent/KR102307030B1/en
Publication of KR102307030B9 publication Critical patent/KR102307030B9/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L61/1511
    • H04L61/1552
    • H04L61/2007
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4552Lookup mechanisms between a plurality of directories; Synchronisation of directories, e.g. metadirectories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

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

Abstract

본 발명은 패킷의 안전성 검증 기능을 구비한 사물인터넷 통신 시스템에 대한 것이다.
본 발명에 따르면, 서브 네트워크에 접속되어 있으며, 패킷을 생성하여 송신하거나 수신하는 복수의 사물인터넷 장치, 상기 복수의 사물인터넷 장치로부터 전달받은 식별명칭, 매칭번호 및 가상 IP 주소를 등록하고, 등록된 상기 매칭번호 및 가상 IP 주소를 통신하고자 하는 사물인터넷 장치에 제공하여 사물인터넷 장치와 다른 사물인터넷 장치 사이의 통신을 연결시키는 인터넷 서버, 그리고 각각의 서브 네트워크마다 설치되어 있으며, 해당 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치에게 매칭 엔트리 정보를 각각 할당하고, 상기 사물인터넷 장치로부터 수신된 패킷을 검증하며, 검증이 완료된 패킷의 헤더에 포함된 사물인터넷 장치의 IP 주소를 실재 IP주소에서 가상 IP주소로 변경하여 해당 사물인터넷 장치에 전송하는 게이트키퍼를 포함한다.
본 발명에 따르면, 모든 데이터 패킷은 송신측 또는 수신측 사물인터넷 장치가 접속되어 있는 게이트키퍼를 통하여 전송되며, 게이트키퍼는 패킷에 포함된 송신측 사물인터넷 장치의 실재 IP주소를 가상 IP주소로 변경하여 전달하므로, 실재 IP주소가 외부에 노출되는 것을 방지할 수 있다.
The present invention relates to an IoT communication system having a packet safety verification function.
According to the present invention, a plurality of IoT devices connected to a sub-network that generate and transmit or receive packets, an identification name, a matching number, and a virtual IP address transmitted from the plurality of IoT devices are registered and registered. An Internet server that connects the communication between the IoT device and other IoT devices by providing the matching number and the virtual IP address to the IoT device to communicate, and installed in each subnetwork and connected to the corresponding subnetwork Allocating matching entry information to a plurality of IoT devices, verifying a packet received from the IoT device, and converting the IP address of the IoT device included in the header of the verified packet from the real IP address to the virtual IP address It includes a gatekeeper that changes to and transmits to the corresponding IoT device.
According to the present invention, all data packets are transmitted through a gatekeeper to which the sending or receiving IoT device is connected, and the gatekeeper changes the real IP address of the sending IoT device included in the packet to a virtual IP address. to prevent the actual IP address from being exposed to the outside.

Description

패킷의 안전성 검증 기능을 구비한 사물인터넷 통신 시스템{Internet of Things Communication System with Packet Safety Verification}Internet of Things Communication System with Packet Safety Verification

본 발명은 IP 주소 변환과 통과 패킷 안전성 검증 기능을 구비한 사물인터넷 통신 시스템에 관한 것으로서, 더욱 상세하게는 사물인터넷 장치에 실재 IP주소와 가상 IP 주소를 부여하고, 외부에 위치한 다른 사물인터넷 장치와 통신을 할 경우에는 가상 IP 주소를 이용하여 통신하는 사물인터넷 통신 시스템에 관한 것이다.The present invention relates to an IoT communication system having IP address conversion and pass packet safety verification functions, and more particularly, to an IoT device by giving an actual IP address and a virtual IP address, and to another IoT device located outside In the case of communication, it relates to an IoT communication system that communicates using a virtual IP address.

기존 사물인터넷 운영 IP 통신에서는 32 bit 사설 IP 주소를 가지고 NAT(Network Address Translation) 장치를 통하여 IPv4 프로토콜에 입각하여 인터넷으로 사물인터넷 장치를 연결되도록 하는 방법을 사용한다. In the existing IoT operation IP communication, a method of connecting IoT devices to the Internet based on the IPv4 protocol through a NAT (Network Address Translation) device with a 32-bit private IP address is used.

어떤 IP 패킷이 NAT 장치를 통과할 때마다, 사설 IP 주소-공용 IP 주소 변환 과정이 이루어져야 하고, 포트번호(Port Number) 변환 과정도 동시에 이루어진다. NAT 장치는 들어가고 나가는 패킷에 대하여 주소와 포트번호를 변환시키는 방침을 나타내는 엔트리 정보를 보유하고 있다. 그래서 피요청 사물인터넷 장치로 연결 설정을 하기 위해서는 이 피요청 사물인터넷 장치 소속 NAT 장치가 보유한 방침 엔트리 정보를 요청 장치가 알아내는 과정이 필요한데 NAT 관리, 즉, IP 주소 변환과 포트 번호 변환를 수행하는 과정이 매우 복잡하다. 또한 피요청 사물인터넷 장치의 이름을 알고 장치로 연결을 시도하는 방법은 SDN 기술과 DNS 기술을 모두 사용 가능하나, 이 또한 NAT 관리와 함께 이루어져야 하므로 매우 복잡한 문제점이 있었다. Whenever an IP packet passes through a NAT device, a private IP address-public IP address translation process must be performed, and a port number translation process is also performed at the same time. The NAT device holds entry information indicating the policy of translating addresses and port numbers for incoming and outgoing packets. Therefore, in order to establish a connection to the requested IoT device, it is necessary for the requesting device to find out the policy entry information held by the NAT device belonging to the requested IoT device. NAT management, that is, IP address translation and port number translation This is very complicated. In addition, both SDN technology and DNS technology can be used to know the name of the requested IoT device and try to connect to the device.

최근에 미국이 큰 흐름으로 방향 잡고 있는 사물인터넷 운영 네트워크 환경은 사물인터넷 장치에게 128 bit 주소를 부여하고 IPv6 네트워크 프로토콜에 기반하여 사물 인터넷 장치를 운영하는 방법이다. 상기의 방법은 NAT 장치 자체가 필요 없다. The Internet of Things (IoT) operating network environment, which the United States is taking a major trend in recent years, is a method of assigning a 128-bit address to an IoT device and operating the IoT device based on the IPv6 network protocol. The above method does not require the NAT device itself.

피요청 사물인터넷 장치의 이름을 알고 이 장치로 연결을 시도하는 방법은 SDN 기술과 DNS 기술을 모두 사용 가능하나, 128 bit 주소체계를 다루는 DNS 버전 6 의 지원이 있어야 가능하다. 물론 모든 사물인터넷 장치에게 이상적으로 IPv6와 DNS 버전 6 가 일괄적으로 적용된다면 당연히 이 방식이 NAT 장치 이용 방법보다는 좋은 방식이다. Both SDN technology and DNS technology can be used to know the name of the requested IoT device and try to connect to this device, but it is possible only with the support of DNS version 6, which handles 128-bit address system. Of course, if IPv6 and DNS version 6 are ideally applied to all IoT devices, of course, this method is better than the NAT device method.

문제는 기존 IPv4 프로토콜과 기존 DNS 체계에 입각하여 배치 운영되는 사물인터넷 장치들과의 호환 운영을 고려하면 IPv4와 IPv6 두 가지 방식이 병행으로 존재해야 하고, 두 가지 다른 시스템간의 인터페이스가 존재해야 하기 때문에 시스템이 너무 복잡해지는 문제점이 있었다. The problem is that when considering the compatibility operation with IoT devices deployed and operated based on the existing IPv4 protocol and the existing DNS system, both IPv4 and IPv6 methods must exist in parallel, and an interface between two different systems must exist. There was a problem that the system became too complicated.

아울러 IPv6 프로토콜을 그대로 사용할 경우 128 bit 주소 체계를 그대로 따라야 하므로 모든 패킷의 주소가 128 bit로 이루어진다. 이는 패킷의 오버헤드가 많아지는 문제점을 발생시키며, IPv6 방식 사물 인터넷 장치를 사용하는 방식은 100% 공용 IP 주소를 사용하는 방식이다. 그러므로 해커가 해당 사물 인터넷 장치를 공격하기 위하여 IP 주소를 알아내기 위하여 스캔 방식으로 모니터링 방식을 적용한다면 원하는 공격대상의 사물인터넷 장치의 IP 주소 및 연결된 위치를 쉽게 해커에게 허용할 수 밖에 없다. 즉, 해커의 공격에 매우 취약할 수 밖에 없다.In addition, if the IPv6 protocol is used as it is, the 128-bit address system must be followed as it is, so all packets have 128-bit addresses. This causes a problem in that the overhead of the packet increases, and the method of using the IPv6-type Internet of Things device is a method of using a 100% public IP address. Therefore, if a hacker applies a scanning method of monitoring to find an IP address in order to attack a corresponding IoT device, the IP address and connected location of the IoT device of the desired attack target can be easily allowed to the hacker. In other words, it is inevitably very vulnerable to hacker attacks.

특히 사물 인터넷 장치는 일반 컴퓨터나 스마트폰 수준의 컴퓨팅 능력을 가지고 자체적으로 이러한 공격에 대비할 수 있는 충분한 컴퓨팅 자원을 보유하고 있지 않다. 그러므로 사물인터넷 장치에게 공용 IPv6 주소를 일률적으로 부여하는 방법을 바꾸어 헤커의 공격에 근본적으로 대처할 수 있는 새로운 기술을 필요로 한다.In particular, Internet of Things devices do not have sufficient computing resources to prepare for such attacks on their own with the computing power of a general computer or smartphone. Therefore, there is a need for a new technology that can fundamentally respond to hacker attacks by changing the method of uniformly assigning public IPv6 addresses to IoT devices.

본 발명의 배경이 되는 기술은 대한민국 공개특허공보 제10-2016-0023368호(2016.03.03. 공개)에 개시되어 있다.The technology underlying the present invention is disclosed in Korean Patent Application Laid-Open No. 10-2016-0023368 (published on March 3, 2016).

본 발명이 이루고자 하는 기술적 과제는, 사물인터넷 장치에 실재 IP주소와 가상 IP 주소를 부여하고, 외부에 위치한 다른 사물인터넷 장치와 통신을 할 경우에는 가상 IP 주소를 이용하여 통신하는 사물인터넷 통신 시스템을 제공하는데 목적이 있다. The technical problem to be achieved by the present invention is to provide an IoT communication system that gives real IP addresses and virtual IP addresses to IoT devices, and communicates using virtual IP addresses when communicating with other IoT devices located outside. It is intended to provide

이러한 기술적 과제를 이루기 위한 본 발명의 실시예에 따르면, 패킷의 안전성 검증 기능을 구비한 사물인터넷 통신 시스템에 있어서, 서브 네트워크에 접속되어 있으며, 패킷을 생성하여 송신하거나 수신하는 복수의 사물인터넷 장치, 상기 복수의 사물인터넷 장치로부터 전달받은 식별명칭, 매칭번호 및 가상 IP 주소를 등록하고, 등록된 상기 매칭번호 및 가상 IP 주소를 통신하고자 하는 사물인터넷 장치에 제공하여 사물인터넷 장치와 다른 사물인터넷 장치 사이의 통신을 연결시키는 인터넷 서버, 그리고 각각의 서브 네트워크마다 설치되어 있으며, 해당 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치에게 매칭 엔트리 정보를 각각 할당하고, 상기 사물인터넷 장치로부터 수신된 패킷을 검증하며, 검증이 완료된 패킷의 헤더에 포함된 사물인터넷 장치의 IP 주소를 실재 IP주소에서 가상 IP주소로 변경하여 해당 사물인터넷 장치에 전송하는 게이트키퍼를 포함한다. According to an embodiment of the present invention for achieving this technical problem, in an IoT communication system having a packet safety verification function, a plurality of IoT devices connected to a subnetwork and generating and transmitting or receiving packets; The identification name, matching number, and virtual IP address received from the plurality of IoT devices are registered, and the registered matching number and virtual IP address are provided to the IoT device to communicate between the IoT device and other IoT devices. an Internet server that connects communication of , and a gatekeeper that changes the IP address of the IoT device included in the header of the verified packet from the real IP address to a virtual IP address and transmits it to the corresponding IoT device.

상기 사물인터넷 장치는, 장비, 전자기기, 자동자, 드론 및 로봇 중에서 적어도 어느 하나를 포함할 수 있다. The IoT device may include at least any one of equipment, electronic devices, automatic vehicles, drones, and robots.

상기 사물인터넷 장치는, 식별명칭이 부여된 상태에서 게이트키퍼에게 동적 주소 할당 요청 신호를 송신하며, 상기 게이트키퍼는, 매칭번호, 실재 IP 주소 및 가상 IP 주소를 포함하는 매칭 엔트리 정보를 생성하여 해당 사물인터넷 장치에게 할당하며, 상기 할당된 매칭 엔트리 정보를 주소 매핑 테이블 형태로 저장할 수 있다. The IoT device transmits a dynamic address assignment request signal to a gatekeeper in a state in which an identification name is assigned, and the gatekeeper generates matching entry information including a matching number, a real IP address, and a virtual IP address, It is allocated to the IoT device, and the allocated matching entry information may be stored in the form of an address mapping table.

상기 인터넷 서버는, 소프트웨어 정의 네트워킹 (SDN, Software-Defined Networking) 사용 기술과 DNS (Domain Name System) 사용 기술 중에서 선택된 하나의 기술을 기반으로 할 수 있다. The Internet server may be based on one technology selected from a technology using software-defined networking (SDN) and a technology using a domain name system (DNS).

패킷을 송신하는 사물인터넷 장치를 제1 사물인터넷 장치라고 하고, 패킷을 수신하는 사물인터넷 장치를 제2 사물인터넷 장치라고 할 경우, 상기 인터넷 서버는, 상기 제1 사물인터넷 장치로부터 전달받은 제2 사물인터넷 장치의 식별명칭과 기 등록된 정보를 비교하여 제2 사물인터넷 장치의 매칭번호 및 가상 IP주소를 추출하고, 추출된 제2 사물인터넷 장치의 매칭번호 및 가상 IP주소를 제1 사물인터넷 장치에 전달할 수 있다. When an IoT device that transmits a packet is called a first IoT device and an IoT device that receives a packet is called a second IoT device, the Internet server may The matching number and virtual IP address of the second IoT device are extracted by comparing the identification name of the Internet device with the registered information, and the matching number and virtual IP address of the second IoT device are extracted to the first IoT device. can transmit

상기 패킷은 헤더와 데이터부를 포함하며, 상기 헤더는, 상기 제1 사물인터넷 장치의 IP 주소, 제2 사물인터넷 장치의 IP 주소, 제1 사물인터넷 장치의 매칭번호 및 제2 사물인터넷 장치의 매칭번호를 포함할 수 있다. The packet includes a header and a data part, and the header includes an IP address of the first IoT device, an IP address of a second IoT device, a matching number of the first IoT device, and a matching number of the second IoT device. may include.

제1 서브 네트워크에 접속되어 있는 제1 사물인터넷 장치가 상기 제2 사물인터넷 장치에게 패킷을 전송할 경우, 상기 제1 서브 네트워크에 포함된 제1 게이트키퍼는, 상기 저장된 주소 매칭 테이블을 이용하여 상기 패킷의 헤더에 포함된 제1 사물인터넷 장치의 실재 IP 주소를 가상 IP 주소로 변경하고, 변경된 헤더가 포함된 패킷을 상기 제2 사물인터넷 장치가 접속된 제2 게이트키퍼에 전송할 수 있다. When the first IoT device connected to the first subnetwork transmits a packet to the second IoT device, the first gatekeeper included in the first subnetwork uses the stored address matching table to transmit the packet. The real IP address of the first IoT device included in the header of ' may be changed to a virtual IP address, and the packet including the changed header may be transmitted to the second gatekeeper to which the second IoT device is connected.

상기 제2 게이트키퍼는, 상기 수신된 패킷의 헤더에 포함된 제2 사물인터넷 장치의 가상 IP 주소를 추출하고, 상기 저장된 주소 매칭 테이블을 이용하여 추출된 제2 사물인터넷 장치의 가상 IP 주소를 실재 IP 주소로 변경하고, 변경된 헤더가 포함된 패킷을 제2 사물인터넷 장치에 전달할 수 있다. The second gatekeeper extracts the virtual IP address of the second IoT device included in the header of the received packet, and uses the stored address matching table to store the extracted virtual IP address of the second IoT device. The IP address may be changed and the packet including the changed header may be transmitted to the second IoT device.

동일 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치간의 통신을 수행할 경우, 사물인터넷 장치에서 송신 또는 수신되는 패킷은 동일한 게이트키퍼를 경유하며, 상기 게이트키퍼는, 송신측 사물인터넷 장치로부터 수신된 패킷의 헤더에 포함된 송신측 사물인터넷 장치의 실재 IP 주소를 가상 IP 주소로 변경하고, 수신측 사물인터넷 장치의 가상 IP 주소를 실재 IP주소로 변경하고, 변경된 패킷을 수신측 사물인터넷 장치에 전달할 수 있다. When communication is performed between a plurality of IoT devices connected to the same subnetwork, packets transmitted or received from the IoT device pass through the same gatekeeper, and the gatekeeper receives the packets received from the sending IoT device. can change the real IP address of the sending IoT device included in the header of the have.

또한, 본 발명의 실시예에 따르면, P2P를 기반으로 하는 사물인터넷 통신 연결 시스템에 있어서, 서브 네트워크에 접속되어 있으며, 패킷을 생성하여 송신하거나 수신하는 복수의 사물인터넷 장치, 상기 복수의 사물인터넷 장치로부터 전달받은 식별명칭, 매칭번호 및 가상 IP 주소를 등록하고, 등록된 상기 매칭번호 및 가상 IP 주소를 통신하고자 하는 사물인터넷 장치에 제공하여 사물인터넷 장치와 다른 사물인터넷 장치 사이의 통신을 연결시키는 인터넷 서버, 그리고 각각의 서브 네트워크마다 설치되어 있으며, 해당 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치에게 매칭 엔트리 정보를 각각 할당하고, 상기 사물인터넷 장치로부터 수신된 패킷을 검증하며, 검증이 완료된 패킷의 헤더에 포함된 사물인터넷 장치의 IP 주소를 실재 IP주소에서 가상 IP주소로 변경하여 해당 사물인터넷 장치에 전송하는 게이트키퍼를 포함하며, 상기 게이트키퍼는, 상기 사물인터넷장치로부터 생성된 세션 설정 요청 패킷을 검증하여 세션 설정을 수행한다. In addition, according to an embodiment of the present invention, in the P2P-based IoT communication connection system, a plurality of IoT devices connected to a subnetwork and generating and transmitting or receiving packets, the plurality of IoT devices Internet that connects the communication between the IoT device and other IoT devices by registering the identification name, matching number, and virtual IP address received from It is installed in a server and each sub-network, and it allocates matching entry information to a plurality of IoT devices connected to the respective sub-network, verifies the packet received from the IoT device, and a gatekeeper that changes the IP address of the IoT device included in the header from the real IP address to the virtual IP address and transmits it to the corresponding IoT device, wherein the gatekeeper is configured to include a session establishment request packet generated from the IoT device. Validate the session setup.

상기 사물인터넷 장치는, 장비, 전자기기, 자동자, 드론 및 로봇 중에서 적어도 어느 하나를 포함할 수 있다. The IoT device may include at least any one of equipment, electronic devices, automatic vehicles, drones, and robots.

상기 사물인터넷 장치는, 식별명칭이 부여된 상태에서 게이트키퍼에게 동적 주소 할당 요청 신호를 송신하며, 상기 게이트키퍼는, 매칭번호, 실재 IP 주소 및 가상 IP 주소를 포함하는 매칭 엔트리 정보를 생성하여 해당 사물인터넷 장치에게 할당하며, 상기 할당된 매칭 엔트리 정보를 주소 매핑 테이블 형태로 저장할 수 있다. The IoT device transmits a dynamic address assignment request signal to a gatekeeper in a state in which an identification name is assigned, and the gatekeeper generates matching entry information including a matching number, a real IP address, and a virtual IP address, It is allocated to the IoT device, and the allocated matching entry information may be stored in the form of an address mapping table.

상기 패킷에 포함된 헤더는, 송신측에 해당하는 상기 제1 사물인터넷 장치의 IP 주소, 수신측에 해당하는 제2 사물인터넷 장치의 IP 주소, 제1 사물인터넷 장치의 매칭번호 및 제2 사물인터넷 장치의 매칭번호를 포함할 수 있다. The header included in the packet includes the IP address of the first IoT device corresponding to the transmitting side, the IP address of the second IoT device corresponding to the receiving side, the matching number of the first IoT device, and the second IoT device. It may include the matching number of the device.

상기 인터넷 서버는, 상기 제1 사물인터넷 장치로부터 전달받은 제2 사물인터넷 장치의 식별명칭과 기 등록된 정보를 비교하여 제2 사물인터넷 장치의 매칭번호 및 가상 IP주소를 추출하고, 추출된 제2 사물인터넷 장치의 매칭번호 및 가상 IP주소를 제1 사물인터넷 장치에 전달할 수 있다. The Internet server compares the identification name of the second IoT device received from the first IoT device with pre-registered information to extract a matching number and virtual IP address of the second IoT device, and the extracted second The matching number and virtual IP address of the IoT device may be transmitted to the first IoT device.

제1 서브 네트워크에 접속되어 있는 제1 사물인터넷 장치가 제2 서브 네트워크에 접속되어 있는 제2 사물인터넷 장치에게 세션 요청 패킷을 전송하면, 상기 제1 서브 네트워크에 포함된 제1 게이트키퍼는, 상기 저장된 주소 매칭 테이블을 이용하여 상기 패킷의 헤더에 포함된 제1 사물인터넷 장치의 실재 IP 주소를 가상 IP 주소로 변경하고, 변경된 헤더가 포함된 세션 요청 패킷을 상기 제2 서브 네트워크에 포함된 제2 게이트키퍼에 전송할 수 있다. When the first IoT device connected to the first subnetwork transmits a session request packet to the second IoT device connected to the second subnetwork, the first gatekeeper included in the first subnetwork is configured to: The real IP address of the first IoT device included in the header of the packet is changed to a virtual IP address using the stored address matching table, and the session request packet including the changed header is transferred to the second subnetwork included in the second subnetwork. can be sent to the gatekeeper.

상기 제2 게이트키퍼는, 상기 세션 요청 패킷의 헤더에 포함된 제1 사물인터넷 장치의 식별명칭과 가상IP주소를 검증하여 세션 요청 패킷에 대한 수락여부를 판단하고, 수락할 경우에는 상기 저장된 주소 매칭 테이블을 이용하여 제2 사물인터넷 장치의 가상 IP 주소를 실재 IP 주소로 변경하고, 변경된 헤더가 포함된 데이터를 요청하는 패킷을 제2 사물인터넷 장치에 전달할 수 있다. The second gatekeeper determines whether to accept the session request packet by verifying the identification name and virtual IP address of the first IoT device included in the header of the session request packet, and if accepted, matches the stored address Using the table, the virtual IP address of the second IoT device may be changed to a real IP address, and a packet requesting data including the changed header may be transmitted to the second IoT device.

상기 세션 요청 패킷에 대한 검증이 완료되어 세션 설정이 완료되면, 상기 제1 사물인터넷 장치는, 생성된 패킷을 제2 게이트키퍼에 전송하고, 제2 사물인터넷 장치는, 생성된 패킷을 제1 게이트키퍼에 전송할 수 있다. When verification of the session request packet is completed and session establishment is completed, the first IoT device transmits the generated packet to a second gatekeeper, and the second IoT device transmits the generated packet to the first gate. can be sent to the keeper.

또한, 본 발명의 실시예에 따르면, DNS(Domain Name System)를 기반으로 하는 사물인터넷 통신 연결 시스템에 있어서, 서브 네트워크에 접속되어 있으며, 패킷을 생성하여 송신하거나 수신하는 복수의 사물인터넷 장치, 복수의 소속 서버를 포함하며, 상기 사물인터넷 장치로부터 전달받은 도메인 형태의 식별명칭, 매칭번호 및 가상 IP 주소를 복수의 소속 서버 중에서 어느 하나의 소속서버에 등록시키고, 등록된 상기 매칭번호 및 가상 IP 주소를 통신하고자 하는 사물인터넷 장치에 제공하여 사물인터넷 장치와 다른 사물인터넷 장치 사이의 통신을 연결시키는 인터넷 서버, 그리고 각각의 서브 네트워크마다 설치되어 있으며, 해당 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치에게 매칭 엔트리 정보를 각각 할당하고, 상기 사물인터넷 장치로부터 수신된 패킷을 검증하며, 검증이 완료된 패킷의 헤더에 포함된 사물인터넷 장치의 IP 주소를 실재 IP주소에서 가상 IP주소로 변경하여 해당 사물인터넷 장치에 전송하는 게이트키퍼를 포함한다. Further, according to an embodiment of the present invention, in the Internet of Things communication connection system based on DNS (Domain Name System), a plurality of IoT devices connected to a subnetwork and generating and transmitting or receiving packets, a plurality of of a server belonging to, and registering an identification name, matching number, and virtual IP address in the form of a domain received from the IoT device in any one affiliate server among a plurality of affiliate servers, and the registered matching number and virtual IP address an Internet server that connects communication between the IoT device and other IoT devices by providing Allocating matching entry information, verifying the packet received from the IoT device, changing the IP address of the IoT device included in the header of the verified packet from the real IP address to the virtual IP address, Includes a gatekeeper that transmits to

상기 사물인터넷 장치는, 장비, 전자기기, 자동자, 드론 및 로봇 중에서 적어도 어느 하나를 포함할 수 있다. The IoT device may include at least any one of equipment, electronic devices, automatic vehicles, drones, and robots.

상기 사물인터넷 장치는, 식별명칭이 부여된 상태에서 게이트키퍼에게 동적 주소 할당 요청 신호를 송신하며, 상기 게이트키퍼는, 매칭번호, 실재 IP 주소 및 가상 IP 주소를 포함하는 매칭 엔트리 정보를 생성하여 해당 사물인터넷 장치에게 할당하며, 상기 할당된 매칭 엔트리 정보를 주소 매핑 테이블 형태로 저장할 수 있다. The IoT device transmits a dynamic address assignment request signal to a gatekeeper in a state in which an identification name is assigned, and the gatekeeper generates matching entry information including a matching number, a real IP address, and a virtual IP address, It is allocated to the IoT device, and the allocated matching entry information may be stored in the form of an address mapping table.

송신측에 해당하는 제1 사물인터넷 장치가 제1 서브 네트워크에 접속되어 있고, 수신측에 해당하는 제2 사물인터넷 장치가 제2 서브 네트워크에 접속되어 있는 상태에서, 제1 사물인터넷 장치가 상기 인터넷 서버로 상기 제2 사물인터넷 장치의 IP주소에 관한 질의를 하면, 상기 인터넷 서버는, 복수의 소속 서버 중에서 상위네임 서버에 제2 사물인터넷 장치의 IP주소에 관한 질의를 전달하고, 상기 상위네임 서버에 DNS 쿼리의 결과가 없으면 상기 상위네임 서버는 하위네임 서버의 IP주소를 제1 사물인터넷 장치에 전달하여 질의 및 응답을 계속적으로 수행할 수 있다. In a state where the first IoT device corresponding to the transmitting side is connected to the first sub-network and the second IoT device corresponding to the receiving side is connected to the second sub-network, the first IoT device is connected to the Internet When a query regarding the IP address of the second IoT device is made to a server, the Internet server transmits a query regarding the IP address of the second IoT device to an upper-level name server among a plurality of affiliated servers, and the upper-level name server If there is no result of the DNS query, the upper-level name server may transmit the IP address of the lower-level name server to the first IoT device to continuously perform queries and responses.

상기 소속 서버는, 자신의 데이터베이스에 등록된 상기 매칭 엔트리 정보를 이용하여 제2 사물인터넷 장치의 가상 IP주소를 추출하고, 추출된 가상 IP주소를 제1 사물인터넷 장치에게 DNS reply 형식으로 전달할 수 있다. The affiliated server may extract the virtual IP address of the second IoT device using the matching entry information registered in its database, and transmit the extracted virtual IP address to the first IoT device in the form of a DNS reply. .

상기 패킷에 포함된 헤더는, 송신측에 해당하는 상기 제1 사물인터넷 장치의 IP 주소, 수신측에 해당하는 제2 사물인터넷 장치의 IP 주소, 제1 사물인터넷 장치의 매칭번호 및 제2 사물인터넷 장치의 매칭번호를 포함할 수 있다. The header included in the packet includes the IP address of the first IoT device corresponding to the transmitting side, the IP address of the second IoT device corresponding to the receiving side, the matching number of the first IoT device, and the second IoT device. It may include the matching number of the device.

상기 제1 사물인터넷 상기 제2 사물인터넷 장치에게 데이터를 요청하는 패킷을 전송하면, 상기 제1 서브 네트워크에 포함된 제1 게이트키퍼는, 상기 저장된 주소 매칭 테이블을 이용하여 상기 패킷의 헤더에 포함된 제1 사물인터넷 장치의 실재 IP 주소를 가상 IP 주소로 변경하고, 변경된 헤더가 포함된 패킷을 상기 제2 서브 네트워크에 포함된 제2 게이트키퍼에 전송할 수 있다. When a packet requesting data is transmitted to the first IoT device, the first gatekeeper included in the first subnetwork uses the stored address matching table to determine the The real IP address of the first IoT device may be changed to a virtual IP address, and a packet including the changed header may be transmitted to a second gatekeeper included in the second subnetwork.

상기 제2 게이트키퍼는, 상기 패킷의 헤더에 포함된 제1 사물인터넷 장치의 식별명칭과 가상IP주소를 검증하여 데이터를 요청하는 패킷에 대한 수락여부를 결정하고, 수락할 경우에는 상기 주소 매칭 테이블을 이용하여 제2 사물인터넷 장치의 가상 IP 주소를 실재 IP 주소로 변경하고, 변경된 헤더가 포함된 패킷을 상기 제2 사물인터넷 장치에 전달할 수 있다. .The second gatekeeper verifies the identification name and virtual IP address of the first IoT device included in the header of the packet to determine whether to accept the data request packet, and if accepted, the address matching table can be used to change the virtual IP address of the second IoT device to a real IP address, and transmit a packet including the changed header to the second IoT device. .

상기 제2 사물인터넷 장치는, 상기 제1 사물인터넷 장치로부터 요청된패킷을 생성하고, 생성된 패킷을 제2 게이트키퍼를 통해 상기 제1 사물인터넷장치로 전달될 수 있다. The second IoT device may generate a packet requested from the first IoT device, and transmit the generated packet to the first IoT device through a second gatekeeper.

이와 같이 본 발명에 따르면, 모든 데이터 패킷은 송신측 또는 수신측 사물인터넷 장치가 접속되어 있는 게이트키퍼를 통하여 전송되며, 게이트키퍼는 패킷에 포함된 송신측 사물인터넷 장치의 실재 IP주소를 가상 IP주소로 변경하여 전달하므로, 실재 IP주소가 외부에 노출되는 것을 방지할 수 있다 또한, 외부에서 특정 사물인터넷 장치를 공격할 경우에는 특정 사물인터넷 장치가 어떤 목적으로 사용되는지 트래픽 분석 (Traffic Analysis) 공격을 통해 정보를 획득할 수 있으나, 실재 IP주소와 외부에 노출된 가상 IP 주소가 서로 상이하므로 트래픽 분석 공격을 난해하게 할 수 있다. As described above, according to the present invention, all data packets are transmitted through the gatekeeper to which the sending or receiving IoT device is connected, and the gatekeeper converts the real IP address of the sending IoT device included in the packet into a virtual IP address. In addition, when a specific IoT device is attacked from the outside, the traffic analysis attack is performed to determine what purpose the specific IoT device is used for. Although information can be obtained through this, the real IP address and the virtual IP address exposed to the outside are different from each other, making the traffic analysis attack difficult.

또한, 본 발명에 따르면, 정당한 접근으로 가장하고 접속을 시도하는 마스커라드 (Masquerade) 공격, 사물인터넷 장치가 정상적으로 작동할 수 없도록 하는 DoS (Denial of Service) 공격, 제3자가 중간에 끼어드는 Man-In-Middle-Attack (MIMA) 공격 및 사물인터넷 장치로 침투시키려는 웜 및 바이러스 등을 게이트키퍼 단계에서 차단할 수 있는 효과를 지닌다. In addition, according to the present invention, a Masquerade attack that attempts to access under the guise of a legitimate access, a Denial of Service (DoS) attack that prevents the IoT device from operating normally, and a Man intervening in the middle -It has the effect of blocking In-Middle-Attack (MIMA) attacks and worms and viruses that try to infiltrate IoT devices at the gatekeeper stage.

도 1은 본 발명의 실시예에 따른 사물인터넷 통신 시스템을 설명하기 위한 구성도이다.
도 2는 본 발명의 실시예에 따른 사물인터넷 통신 시스템을 이용한 통신방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 다른 실시예에 따른 동일한 네트워크에 접속된 사물인터넷 장치 간의 통신을 수행하는 방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 실시예에 따른 SDN을 기반의 사물인터넷 통신 시스템을 이용한 P2P통신 방법을 설명하기 위한 흐름도이다.
도 5는 본 발명의 실시예에 따른 DNS기반의 사물인터넷 통신 방법을 설명하기 위한 흐름도이다.
도 6은 도 5 에 도시된 S510단계를 설명하기 위한 도면이다.
1 is a configuration diagram for explaining an IoT communication system according to an embodiment of the present invention.
2 is a flowchart illustrating a communication method using an IoT communication system according to an embodiment of the present invention.
3 is a flowchart illustrating a method of performing communication between IoT devices connected to the same network according to another embodiment of the present invention.
4 is a flowchart illustrating a P2P communication method using an SDN-based IoT communication system according to an embodiment of the present invention.
5 is a flowchart illustrating a DNS-based IoT communication method according to an embodiment of the present invention.
FIG. 6 is a view for explaining step S510 shown in FIG. 5 .

이하 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다. 이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings. In this process, the thickness of the lines or the size of the components shown in the drawings may be exaggerated for clarity and convenience of explanation.

또한 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In addition, the terms to be described later are terms defined in consideration of functions in the present invention, which may vary according to the intention or custom of the user or operator. Therefore, definitions of these terms should be made based on the content throughout this specification.

이하에서는 도 1을 이용하여 본 발명의 실시예에 따른 사물인터넷 통신 시스템에 대하여 설명한다. Hereinafter, an IoT communication system according to an embodiment of the present invention will be described with reference to FIG. 1 .

도 1은 본 발명의 실시예에 따른 사물인터넷 통신 시스템을 설명하기 위한 구성도이다. 1 is a configuration diagram for explaining an IoT communication system according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명의 실시예에 따르면 사물인터넷 통신 시스템은 복수의 사물인터넷 장치(110, 120, 130, 140), 게이트키퍼(210, 220, 230, 240) 및 인터넷 서버(300)를 포함한다. 1, according to an embodiment of the present invention, an IoT communication system includes a plurality of IoT devices 110, 120, 130, 140, gatekeepers 210, 220, 230, 240, and an Internet server ( 300) is included.

먼저, 사물인터넷 장치(110, 120, 130, 140)는 센서와 모선통신용모듈을 내장화한 상태에서 무선 인터넷을 이용하여 사물 간의 데이터를 주고 받아 분석 및 처리를 하는 장치를 나타낸다. 여기서, 사물 인터넷 장치(110, 120, 130, 140)는 장비, 전자기기, 자동자, 드론 및 로봇 등을 포함한다. First, the IoT devices 110 , 120 , 130 , and 140 represent devices that transmit and receive data between things using the wireless Internet in a state in which a sensor and a module for bus communication are built-in, and analyze and process the data. Here, the IoT devices 110 , 120 , 130 , and 140 include equipment, electronic devices, automatic vehicles, drones, and robots.

사물인터넷 장치(110, 120, 130, 140)는 네트워크에 접속되어 있으며, 기기를 식별하기 위한 식별명칭과 실재 IP 주소를 포함한다. IP 주소는 임의로 할당되는 것이 아니라 어떤 규칙에 따라 인접한 숫자를 그룹으로 묶어 관리된다. 즉, 복수의 사물 인터넷 장치(110, 120, 130, 140)는 해당되는 서브 네트워크로 그룹화된다. 그리고 복수의 사물 인터넷 장치(110, 120, 130, 140)는 생성된 데이터를 패킷의 단위로 분할하여 네트워크를 통해 전송한다. 여기서 패킷은 헤더와 데이터부를 포함하며, 헤더에는 패킷을 송수신하는 사물인터넷 장치(110, 120, 130, 140)의 식별명칭과 IP주소를 포함한다. The IoT devices 110 , 120 , 130 , and 140 are connected to a network and include an identification name for identifying the device and an actual IP address. IP addresses are not randomly assigned, but are managed by grouping adjacent numbers according to a certain rule. That is, the plurality of IoT devices 110 , 120 , 130 , and 140 are grouped into corresponding sub-networks. In addition, the plurality of IoT devices 110 , 120 , 130 , 140 divides the generated data into packets and transmits them through the network. Here, the packet includes a header and a data part, and the header includes identification names and IP addresses of the IoT devices 110 , 120 , 130 , 140 that transmit and receive packets.

이를 다시 설명하면, 패킷을 송신하는 사물인터넷 장치(110, 120, 130, 140)의 식별명칭 및 IP주소와, 패킷을 수신하는 사물인터넷 장치(110, 120, 130, 140)의 식별명칭 및 IP주소를 포함한다. In other words, the identification names and IP addresses of the IoT devices 110, 120, 130, and 140 that transmit packets, and the identification names and IP addresses of the IoT devices 110, 120, 130, and 140 that receive packets are described. include address.

한편, 본 발명의 실시예에서는 복수의 사물인터넷 장치(110, 120, 130, 140)중에서 패킷을 송신하는 사물인터넷장치를 제1 사물인터넷 장치(110)라고 하고, 패킷을 수신하는 사물인터넷 장치를 제2 사물인터넷 장치(120)라고 한다. 또한, 제1 사물인터넷 장치(110)가 접속되어 있는 네트워크는 제1 서브 네트워크이고, 제2 사물인터넷 장치(120)가 접속되어 있는 네트워크는 제2 서브 네트워크로서, 제1 서브 네트워크와 제2 서브 네트워크는 상이하다. Meanwhile, in the embodiment of the present invention, an IoT device that transmits a packet among the plurality of IoT devices 110, 120, 130, 140 is referred to as a first IoT device 110, and an IoT device that receives the packet is referred to as the first IoT device 110. It is called a second IoT device 120 . In addition, the network to which the first IoT device 110 is connected is a first sub-network, and the network to which the second IoT device 120 is connected is a second sub-network. The network is different.

게이트키퍼(210,220,230,240)는 복수의 서브 네트워크마다 설치되어 있으며, 내부의 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치(110, 120, 130, 140)에서 전송하는 패킷과 외부의 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치(110, 120, 130, 140)로부터 수신되는 패킷을 전달받고, 전달받은 패킷에 포함된 사물인터넷 IP주소의 변환과 검증을 수행한다. The gatekeepers 210, 220, 230, and 240 are installed in each of a plurality of sub-networks, and are connected to packets transmitted from a plurality of IoT devices 110, 120, 130, and 140 connected to the internal sub-network and to the external sub-network. A packet received from a plurality of IoT devices 110 , 120 , 130 , and 140 is received, and an IoT IP address included in the received packet is converted and verified.

이를 다시 설명하면, 해당되는 서브 네트워크에 접속되어 있는 사물인터넷 장치(110, 120, 130, 140)로부터 동적 주소 할당 요청 신호를 수신할 경우, 게이트키퍼(210,220,230,240)는 해당 사물인터넷 장치(110, 120, 130, 140)에 매칭 엔트리 정보를 할당한다. 여기서 매칭 엔트리 정보는 임의로 할당하는 매칭번호와 가상 IP 주소를 포함한다. 그리고, 게이트키퍼(210,220,230,240)는 사물인터넷 장치(110, 120, 130, 140)에 부여되어 있는 식별 명칭 및 실재 IP주소를 포함하는 기본정보와 할당한 매칭 엔트리 정보를 매칭하여 주소 매핑 테이블 형태로 저장한다. 따라서, 게이트키퍼(210,220,230,240)는 서브 네트워크에 접속되어 있는 모든 사물인터넷 장치(110, 120, 130, 140)들의 전체 숫자만큼의 주소 매핑 테이블(AMT, Address Mapping Table)을 가진다.In other words, when receiving a dynamic address assignment request signal from the IoT devices 110 , 120 , 130 , 140 connected to the corresponding sub-network, the gatekeepers 210 , 220 , 230 , and 240 perform the corresponding IoT devices 110 , 120 , 130, 140) are assigned matching entry information. Here, the matching entry information includes an arbitrarily assigned matching number and a virtual IP address. In addition, the gatekeepers 210, 220, 230, and 240 match basic information including identification names and real IP addresses given to the IoT devices 110, 120, 130, and 140 with the allocated matching entry information, and store it in the form of an address mapping table. do. Accordingly, the gatekeepers 210 , 220 , 230 , and 240 have as many address mapping tables (AMTs) as the total number of all IoT devices 110 , 120 , 130 , and 140 connected to the sub-network.

예를 들어 설명하면, EN777의 식별명칭이 부여된 제1 사물인터넷 장치(110)가 해당되는 제1 게이트키퍼(210)에게 동적 주소 할당 요청 신호를 송신하면, 게이트키퍼(210)는 매칭번호(Nonce777), 가상 IP 주소(vIP_EN777) 및 실재 IP 주소(rIP_EN777)를 생성하여 제1 사물인터넷 장치(110)에게 할당한다. 그리고, 제1 게이트키퍼(210)는 할당한 매칭 엔트리 정보를 하기의 표1과 같이 주소 매핑 테이블 형태로 저장한다.For example, when the first IoT device 110 to which the identification name of EN777 is assigned transmits a dynamic address assignment request signal to the corresponding first gatekeeper 210, the gatekeeper 210 returns a matching number ( Nonce777), a virtual IP address (vIP_EN777), and a real IP address (rIP_EN777) are generated and allocated to the first IoT device 110 . Then, the first gatekeeper 210 stores the allocated matching entry information in the form of an address mapping table as shown in Table 1 below.

식별명칭Distinguished name 매칭번호matching number 가상 IP 주소virtual IP address 실재 IP 주소real IP address EN777EN777 Nonce777Nonce777 vIP_EN777vIP_EN777 rIP_EN777rIP_EN777

그 다음, 제1 사물인터넷 장치(110)로부터 패킷을 수신하면, 제1 게이트키퍼(210)는 패킷의 헤더에 포함된 제1 사물인터넷 장치(110)의 실재 IP주소를 추출한다. 그리고, 제1게이트키퍼(210)는 기 저장된 엔트리 정보를 이용하여 추출된 실재 IP주소를 가상 IP주소로 변경한 다음, 변경된 패킷을 제2 사물인터넷 장치(120)에 송신한다. Then, upon receiving the packet from the first IoT device 110 , the first gatekeeper 210 extracts the real IP address of the first IoT device 110 included in the header of the packet. Then, the first gatekeeper 210 changes the extracted real IP address to a virtual IP address using pre-stored entry information, and then transmits the changed packet to the second IoT device 120 .

반면에, 제1 게이트키퍼(210)에서 송신된 패킷은 제2 서브 네트워크에 설치된 제2 게이트키퍼(220)에 전달된다. 그러면, 제2 게이트키퍼(220)는 수신된 패킷의 헤더에 포함된 제2 사물인터넷 장치(120)의 가상 IP주소를 추출한다. 그 다음 제2 게이트키퍼(220)는 기 저장된 매칭 엔트리 정보를 이용하여 추출된 가상 IP주소를 실재 IP주소로 변경하고, 변경된 패킷을 제2 사물인터넷 장치(120)에 전달한다.On the other hand, the packet transmitted from the first gatekeeper 210 is transferred to the second gatekeeper 220 installed in the second subnetwork. Then, the second gatekeeper 220 extracts the virtual IP address of the second IoT device 120 included in the header of the received packet. Next, the second gatekeeper 220 changes the extracted virtual IP address to a real IP address using the previously stored matching entry information, and transmits the changed packet to the second IoT device 120 .

이를 다시 설명하면, 복수의 사물인터넷 장치(110. 120, 130, 140)에서 송신 또는 수신되는 패킷은 해당되는 게이트키퍼(210,220, 230, 240)를 거치게 되며, 게이트키퍼(210,220, 230, 240)는 전달받은 패킷에 포함된 실재 IP주소를 가상 IP주소로 변경하여 브로드캐스팅한다. 한편, 외부의 다른 어떤 장치가 호출장치로 동작하고 사물인터넷 장치(110. 120, 130, 140)가 피호출장치로 동작할 경우, 외부의 장치는 피호출장치의 매칭 엔트리 정보를 이용하여 서브 네트워크로 진입하게 된다. 즉, 해당 서브 네트워크에 접속된 사물인터넷 장치(110. 120, 130, 140)와 통신을 하려면 가상 IP주소를 이용하여 게이트키퍼(210,220, 230, 240)에 접근 가능하다. 그러므로, 게이트키퍼(210,220, 230, 240)는 진입된 패킷을 해당 사물인터넷 장치(110. 120, 130, 140)에 전달하기 전에 먼저 신뢰성을 검증하고, 검증에 통과된 패킷을 해당 사물인터넷 장치(110. 120, 130, 140)에 전달한다. In other words, packets transmitted or received from the plurality of IoT devices 110. 120, 130, 140 pass through the corresponding gatekeepers 210, 220, 230, and 240, and the gatekeepers 210, 220, 230, and 240. broadcasts by changing the real IP address included in the received packet to a virtual IP address. On the other hand, when some other external device operates as the calling device and the IoT devices 110. 120, 130, and 140 operate as the called device, the external device uses the matching entry information of the called device to access the subnetwork. will enter into That is, in order to communicate with the IoT devices 110. 120, 130, and 140 connected to the corresponding subnetwork, the gatekeepers 210, 220, 230, and 240 can be accessed using the virtual IP address. Therefore, the gatekeepers 210, 220, 230, and 240 first verify reliability before delivering the entered packet to the corresponding IoT device 110. 120, 130, and 140, and transmit the packet passing the verification to the corresponding IoT device ( 110. 120, 130, 140).

마지막으로, 인터넷 서버(300)는 사물인터넷 장치(110. 120, 130, 140)의 식별명칭을 이용하여 해당 사물인터넷 장치(110. 120, 130, 140)의 IP주소를 추출하고, 추출된 사물인터넷 장치(110. 120, 130, 140)의 IP주소를 이용하여 사물인터넷 장치(110. 120, 130, 140)를 통신시킨다. Finally, the Internet server 300 extracts the IP addresses of the IoT devices 110. 120, 130, 140 by using the identification names of the IoT devices 110. 120, 130, 140, and extracts the extracted things. The Internet of Things devices 110. 120, 130, and 140 are communicated using the IP addresses of the Internet devices 110. 120, 130, and 140.

부연하자면, 사물인터넷 장치(110. 120, 130, 140)는 해당되는 게이트키퍼(210, 220, 230, 240)로부터 할당받은 매칭 엔트리 정보를 인터넷 서버(300)에 전달한다. 그러면 인터넷 서버(300)는 수신된 매칭 엔트리 정보를 등록시킨다. 메칭 엔트리 정보에 대한 등록이 완료된 상태에서 패킷을 송신하는 제1 사물인터넷 장치(110)가 패킷을 수신하는 제2 사물인터넷 장치(120)의 식별명칭만을 알고 있는 상태에서 패킷을 전송할 경우, 제1 사물인터넷 장치(110)는 제2 사물인터넷 장치(120)에 대한 IP 주소를 인터넷 서버(300)에 요청한다. 그러면, 인터넷 서버(300)는 기 등록된 매칭 엔트리 정보를 이용하여 제2 사물인터넷 장치(120)의 식별 명칭에 매칭되는 IP주소를 추출한다. 그리고, 인터넷 서버(300)는 추출된 제2 사물인터넷 장치(120)의 IP주소를 해당 제1 사물인터넷 장치(110)에 전달한다. In other words, the IoT devices 110 , 120 , 130 , and 140 transmit matching entry information allocated from the corresponding gatekeepers 210 , 220 , 230 , and 240 to the Internet server 300 . Then, the Internet server 300 registers the received matching entry information. When the first IoT device 110 that transmits the packet knows only the identification name of the second IoT device 120 that receives the packet in a state in which registration for matching entry information is completed, and transmits the packet, the first The IoT device 110 requests an IP address for the second IoT device 120 from the Internet server 300 . Then, the Internet server 300 extracts an IP address matching the identification name of the second IoT device 120 using the previously registered matching entry information. Then, the Internet server 300 transmits the extracted IP address of the second IoT device 120 to the corresponding first IoT device 110 .

한편, 사물인터넷 장치간의 통신을 수행하기 위하여 사물인터넷 장치의 명칭에 대응하는 IP주소를 추출하는 방법은 소프트웨어 정의 네트워킹(SDN, Software-Defined Networking) 사용 기술과 DNS (Domain Name System) 사용 기술로 분류된다. 첫 번째 방법은 제1사물인터넷 장치(110)에서 요청하는 제2사물인터넷 장치(120)의 IP 주소를 식별명칭을 이용하여 추출하고, 추출된 제2사물인터넷 장치(120)의 IP 주소를 이용하여 제1 사물인터넷 장치와 제2사물인터넷 장치 간의 연결 설정을 시도할 때, SDN제어기가 중앙에서 제어 장치 역할을 수행한다. On the other hand, the method of extracting the IP address corresponding to the name of the IoT device in order to perform communication between the IoT devices is classified into a technology using software-defined networking (SDN) and a technology using the domain name system (DNS). do. The first method extracts the IP address of the second IoT device 120 requested by the first IoT device 110 using an identification name, and uses the extracted IP address of the second IoT device 120 . Thus, when attempting to establish a connection between the first IoT device and the second IoT device, the SDN controller acts as a central control device.

반면에, 두 번째 방법은 DNS 시스템의 질의/응답 (Query/Reply) 프로토콜을 이용하여 제2 사물인터넷 장치(120)의 IP 주소를 추출하는 방법이다. 부연하자면, 제1 사물인터넷 장치(110)가 제2 사물인터넷 장치(120)의 도메인 이름을 알고 있는 상태에서 제2 사물인터넷 장치(120)의 IP 주소를 요청한다, 그러면, DNS 시스템은 복수의 소속 서버들과의 질의/응답을 통해 제2 사물인터넷 장치(120)의 도메인 이름과 매칭되는 IP 주소를 추출한다. On the other hand, the second method is a method of extracting the IP address of the second IoT device 120 using the Query/Reply protocol of the DNS system. In other words, the first IoT device 110 requests the IP address of the second IoT device 120 in a state where it knows the domain name of the second IoT device 120 . Then, the DNS system sends a plurality of An IP address matching the domain name of the second IoT device 120 is extracted through a query/response with affiliated servers.

한편, 제1 사물인터넷 장치(110)와 제2 사물인터넷 장치(120)가 P2P (Peer-to-Peer) 통신을 할 때는 SDN 기술을 사용한다. 또한, 제1 사물인터넷 장치(110)가 클라이언트이고 제2 사물인터넷 장치(120)가 서버로 동작하는 관계일 경우, 즉 클라이언트/서버 방식에서의 인터넷 통신에서는 DNS 기술을 사용한다. Meanwhile, when the first IoT device 110 and the second IoT device 120 perform peer-to-peer (P2P) communication, SDN technology is used. In addition, when the first IoT device 110 is a client and the second IoT device 120 operates as a server, the DNS technology is used in Internet communication in a client/server method.

이하에서는 도 2를 이용하여 본 발명의 실시예에 따른 사물인터넷 통신 시스템을 이용한 통신방법을 설명한다. Hereinafter, a communication method using an IoT communication system according to an embodiment of the present invention will be described with reference to FIG. 2 .

도 2는 본 발명의 실시예에 따른 사물인터넷 통신 시스템을 이용한 통신방법을 설명하기 위한 흐름도이다. 2 is a flowchart illustrating a communication method using an IoT communication system according to an embodiment of the present invention.

도 2에 도시된 바와 같이, 본 발명의 실시예에 따른 제1 사물인터넷 장치(110) 및 제2 사물인터넷 장치(120)는 해당되는 제1게이트키퍼(210) 및 제2 게이트키퍼(220)에 동적 주소 할당 요청 신호를 송신한다. 그러면, 제1게이트키퍼(210) 및 제2 게이트키퍼(220)는 해당되는 제1 사물인터넷 장치(110) 및 제2 사물인터넷 장치(120)에 매칭 엔트리 정보를 할당한다(S210). As shown in FIG. 2 , the first IoT device 110 and the second IoT device 120 according to an embodiment of the present invention include a corresponding first gatekeeper 210 and a second gatekeeper 220 . Sends a dynamic address allocation request signal to Then, the first gatekeeper 210 and the second gatekeeper 220 allocate matching entry information to the corresponding first IoT device 110 and the second IoT device 120 ( S210 ).

부연하자면, 제1 사물인터넷 장치(110) 및 제2 사물인터넷 장치(120)는 식별명칭이 부여된 상태에서 제1게이트키퍼(210) 및 제2 게이트키퍼(220)에게 동적 주소 할당 신호를 송신한다. 여기서, 제1 게이트키퍼(210)는 제1 사물인터넷 장치(110)가 접속되어 있는 서브 네트워크에 설치된 것이고, 제2 게이트키퍼(220)는 제2 사물인터넷 장치(120)가 접속된 서브 네트워크에 설치된 것이다. In other words, the first IoT device 110 and the second IoT device 120 transmit a dynamic address allocation signal to the first gatekeeper 210 and the second gatekeeper 220 in a state in which identification names are assigned. do. Here, the first gatekeeper 210 is installed in the sub-network to which the first IoT device 110 is connected, and the second gatekeeper 220 is installed in the sub-network to which the second IoT device 120 is connected. it will be installed

그러면, 제1게이트키퍼(210) 및 제2 게이트키퍼(220)는 제1 사물인터넷 장치(110) 및 제2 사물인터넷 장치(120)의 식별명칭을 인증하고, 인증이 완료된 제1 사물인터넷 장치(110) 및 제2 사물인터넷 장치(120)에게 주소 관련 정보를 할당한다. 여기서 주소 관련 정보는 매칭번호, 가상 IP 주소 및 실재 IP 주소를 포함한다. 그리고, 제1게이트키퍼(210) 및 제2 게이트키퍼(220)는 자신의 주소 매핑 테이블에 새로운 매칭 엔트리 정보(식별명칭, 매칭번호, 가상 IP 주소 및 실재 IP)를 등록한다. 이때, 매칭번호는 제1게이트키퍼(210) 및 제2 게이트키퍼(220)가 특정 사물인터넷 장치의 가상 IP 주소와 실재 IP 주소와의 관계를 찾기 위한 인덱스 값으로 이용된다. Then, the first gatekeeper 210 and the second gatekeeper 220 authenticate the identification names of the first IoT device 110 and the second IoT device 120 , and the authentication is completed for the first IoT device. Address-related information is allocated to the 110 and the second IoT device 120 . Here, the address-related information includes a matching number, a virtual IP address, and a real IP address. Then, the first gatekeeper 210 and the second gatekeeper 220 register new matching entry information (identification name, matching number, virtual IP address, and real IP) in their address mapping tables. In this case, the matching number is used as an index value for the first gatekeeper 210 and the second gatekeeper 220 to find the relationship between the virtual IP address and the real IP address of a specific IoT device.

그 다음, 제1 사물인터넷 장치(110) 및 제2 사물인터넷 장치(120)는 할당받은 매칭 엔트리 정보를 인터넷 서버(300)에 전달하여 등록시킨다(S220).Next, the first IoT device 110 and the second IoT device 120 transfer the allocated matching entry information to the Internet server 300 and register it ( S220 ).

부연하자면, 매칭 엔트리 정보를 할당받은 제1 사물인터넷 장치(110) 및 제2 사물인터넷 장치(120)는 인터넷 서버(300)에 주소 관련 정보의 등록절차를 수행한다. 여기서, 인터넷 서버(300)는 소프트웨어 정의 네트워킹 (SDN, Software-Defined Networking) 사용 기술과 DNS (Domain Name System) 사용 기술 중에서 선택된 하나의 기술을 기반으로 한다. In other words, the first IoT device 110 and the second IoT device 120 to which the matching entry information is allocated perform a registration procedure of address-related information in the Internet server 300 . Here, the Internet server 300 is based on one technology selected from a technology using software-defined networking (SDN) and a technology using a domain name system (DNS).

먼저, SDN을 기반으로 하는 인터넷 서버(300)에 주소 관련 정보를 등록할 경우, 제1 사물인터넷 장치(110) 및 제2 사물인터넷 장치(120)는 식별명칭, 매칭번호, 가상 IP 주소를 SDN기반의 인터넷 서버(300)에 송신한다. 예를 들어 제1 사물인터넷 장치(110)의 식별명칭이

Figure 112020018236017-pat00001
이고, 제1게이트키퍼(210)로부터 매칭번호(
Figure 112020018236017-pat00002
), 가상 IP 주소(vIP_
Figure 112020018236017-pat00003
) 및 실재 IP 주소(rIP_
Figure 112020018236017-pat00004
)를 할당 받았다고 가정한다. 그러면 제1 사물인터넷 장치(110)는 식별명칭(
Figure 112020018236017-pat00005
), 매칭번호(Nonce
Figure 112020018236017-pat00006
) 및 가상 IP 주소(vIP_
Figure 112020018236017-pat00007
)를 SDN 인터넷 서버(300)에 송신하여 등록시킨다. First, when registering address-related information in the SDN-based Internet server 300 , the first IoT device 110 and the second IoT device 120 provide an identification name, a matching number, and a virtual IP address to the SDN. It is transmitted to the base Internet server 300 . For example, the identification name of the first IoT device 110 is
Figure 112020018236017-pat00001
and the matching number from the first gatekeeper 210 (
Figure 112020018236017-pat00002
), virtual IP address (vIP_
Figure 112020018236017-pat00003
) and real IP address (rIP_
Figure 112020018236017-pat00004
) is assumed to be assigned. Then, the first IoT device 110 identifies the name (
Figure 112020018236017-pat00005
), matching number (Nonce)
Figure 112020018236017-pat00006
) and virtual IP address (vIP_
Figure 112020018236017-pat00007
) is transmitted to the SDN Internet server 300 and registered.

반면에, DNS를 기반으로 하는 인터넷 서버(300)에 주소 관련 정보를 등록할 경우, 사물인터넷 장치(100)는 도매인 식별명칭, 매칭번호, 가상 IP 주소를 DNS기반의 인터넷 서버(300)에 송신한다.On the other hand, when registering address-related information in the DNS-based Internet server 300 , the IoT device 100 transmits the wholesaler identification name, matching number, and virtual IP address to the DNS-based Internet server 300 . do.

예를 들어 사물인터넷 장치(100)의 식별명칭이

Figure 112020018236017-pat00008
.utopia.com이고, 게이트키퍼(200)로부터 매칭번호(
Figure 112020018236017-pat00009
), 가상 IP 주소(vIP_
Figure 112020018236017-pat00010
) 및 실재 IP 주소(rIP_
Figure 112020018236017-pat00011
)를 할당 받았다고 가정한다. 그러면 사물인터넷 장치(100)는 식별명칭(
Figure 112020018236017-pat00012
.utopia.com), 매칭번호(
Figure 112020018236017-pat00013
,) 및 가상 IP 주소(vIP_
Figure 112020018236017-pat00014
)를 SDN 인터넷 서버(300)에 송신한다. For example, the identification name of the IoT device 100 is
Figure 112020018236017-pat00008
It is .utopia.com, and the matching number (
Figure 112020018236017-pat00009
), virtual IP address (vIP_
Figure 112020018236017-pat00010
) and real IP address (rIP_
Figure 112020018236017-pat00011
) is assumed to be assigned. Then, the IoT device 100 identifies the name (
Figure 112020018236017-pat00012
.utopia.com), matching number (
Figure 112020018236017-pat00013
,) and virtual IP address (vIP_
Figure 112020018236017-pat00014
) to the SDN Internet server 300 .

SDN 또는 DMS 기반의 인터넷 서버(300)는 전달받은 등록 요청 정보를 인증하여 등록한 다음, 해당 사물인터넷 장치(100)에게 등록 완료신호를 전달한다(S225). The SDN or DMS-based Internet server 300 authenticates and registers the received registration request information, and then transmits a registration completion signal to the corresponding IoT device 100 (S225).

S220단계 및 S225 단계에서 등록이 완료되면, 제1 사물인터넷 장치(110)는 다른 서브 네트워크에 접속된 제2 사물인터넷 장치(120)에게 패킷을 전달하기 위하여 제2 사물인터넷 장치(120)의 IP주소 정보를 인터넷 서버(300)에 요청하여 수신한다(S230).When registration is completed in steps S220 and S225, the first IoT device 110 transmits the IP of the second IoT device 120 to the second IoT device 120 connected to another sub-network. The address information is requested and received from the Internet server 300 (S230).

부연하자면, 제2 사물인터넷 장치(120)의 식별명칭만을 알고 있는 상태에서, 제1 사물인터넷 장치(110)는 인터넷 서버(300)에게 제2 사물인터넷 장치(120)의 매칭 번호 및 IP주소를 요청한다. 그러면, 인터넷 서버(300)는 수신된 제2 사물인터넷 장치(120)의 식별명칭을 이용하여 등록되어 있는 매칭번호 및 가상 IP주소를 추출한 다음, 추출된 매칭번호 및 가상 IP주소를 제1 사물인터넷 장치(110)에게 전달한다. In other words, in a state where only the identification name of the second IoT device 120 is known, the first IoT device 110 sends the matching number and IP address of the second IoT device 120 to the Internet server 300 . request. Then, the Internet server 300 extracts the registered matching number and virtual IP address using the received identification name of the second IoT device 120 , and then uses the extracted matching number and virtual IP address as the first Internet of Things (IoT) address. to the device 110 .

그 다음, 제1 사물인터넷 장치(110)는 패킷을 생성하여 제1 게이트키퍼(210)에게 전달한다(S240). Next, the first IoT device 110 generates a packet and transmits it to the first gatekeeper 210 (S240).

한편, 패킷은 헤더와 데이터부를 포함하며, 헤더에는 제1 사물인터넷 장치(110)와 제2 사물인터넷 장치(120)의 주소에 관한 정보를 포함한다. 이를 다시 설명하면, 제1 사물인터넷 장치(110)는 제1 게이트키퍼(210)로부터 할당받은 매칭번호 및 실재 IP주소와 인터넷 서버(300)로부터 전달받은 제2 사물인터넷 장치(120)의 매칭번호 및 가상 IP주소를 헤더에 삽입한다. 패킷을 전달받은 제1 게이트키퍼(210)는 패킷의 헤더값을 변경하고, 변경된 패킷을 제2 사물인터넷 장치(120)를 향하여 브로드캐스팅한다(S250).Meanwhile, the packet includes a header and a data part, and the header includes information on addresses of the first IoT device 110 and the second IoT device 120 . In other words, the first IoT device 110 includes the matching number and the real IP address assigned from the first gatekeeper 210 and the matching number of the second IoT device 120 received from the Internet server 300 . and a virtual IP address are inserted into the header. Upon receiving the packet, the first gatekeeper 210 changes the header value of the packet and broadcasts the changed packet toward the second IoT device 120 (S250).

부연하자면, 제1 게이트키퍼(210)는 전달받은 패킷에서 제1 사물인터넷 장치(110)의 매칭번호 및 실재 IP주소를 추출한다. 그리고, 제1 게이트키퍼(210)는 추출된 매칭번호를 이용하여 기 저장된 주소 매핑 테이블에서 제1 사물인터넷 장치(110)의 가상 IP주소를 획득한다. 그 다음, 제1 게이트키퍼(210)는 패킷의 헤더에 포함된 제1 사물인터넷 장치(110)의 실재 IP 주소를 획득한 가상 IP주소로 변경한다. In other words, the first gatekeeper 210 extracts the matching number and the real IP address of the first IoT device 110 from the received packet. Then, the first gatekeeper 210 obtains the virtual IP address of the first IoT device 110 from a pre-stored address mapping table using the extracted matching number. Next, the first gatekeeper 210 changes the real IP address of the first IoT device 110 included in the header of the packet to the obtained virtual IP address.

S250에서 전송된 패킷은 제2 사물인터넷 장치(120)가 접속되어 있는 서브 네트워크에 설치된 제2 게이트키퍼(220)에 먼저 도달한다. 그러면, 제2게이트키퍼(220)는 수신된 패킷의 헤더값을 변경하고, 변경된 패킷을 제2 사물인터넷 장치(120)에 전달한다(S260).The packet transmitted in S250 first arrives at the second gatekeeper 220 installed in the subnetwork to which the second IoT device 120 is connected. Then, the second gatekeeper 220 changes the header value of the received packet, and transmits the changed packet to the second IoT device 120 (S260).

특정 사물인터넷 장치(110,120,130,140)에 접근하기 위해서는 해당 사물인터넷 장치(110,120,130,140)가 접속되어 있는 게이트키퍼(21, 220, 230, 240)를 먼저 경유해야 한다. 즉, 제1게이트키퍼(210)에서 브로드캐스팅된 패킷은 제2 사물인터넷 장치(120)에 도달하기 전에 제2 게이트키퍼(220)을 거친다. 이때, 제2 게이트키퍼(220)는 패킷의 헤더에 포함된 제2 사물인터넷 장치(120)의 매칭번호 및 가상 IP 주소를 추출하고, 추출된 매칭번호를 이용하여 제2 사물인터넷 장치(120)의 실재 IP 주소를 획득한다. 그 다음, 제2 게이트키퍼(220)는 패킷이 헤더에 포함된 제2 사물인터넷 장치(120)의 가상 IP 주소를 획득한 실재 IP 주소로 변경한 다음, 변경된 패킷을 제2 사물인터넷 장치(120)에 전달한다. In order to access a specific IoT device 110 , 120 , 130 , 140 , the corresponding IoT device 110 , 120 , 130 , 140 must first pass through the gatekeepers 21 , 220 , 230 , and 240 . That is, the packet broadcast from the first gatekeeper 210 passes through the second gatekeeper 220 before reaching the second IoT device 120 . At this time, the second gatekeeper 220 extracts the matching number and virtual IP address of the second IoT device 120 included in the header of the packet, and uses the extracted matching number to perform the second IoT device 120 . Get the real IP address of Next, the second gatekeeper 220 changes the virtual IP address of the second IoT device 120 included in the packet header to the real IP address obtained, and then converts the changed packet to the second IoT device 120 . ) is transmitted to

본 발명의 실시예에 따른 사물인터넷 통신 시스템은 가상 IP 주소를 이용하여 사물인터넷 장치(100)간의 통신을 유도함으로써, 실재 IP주소를 이용하여 사물인터넷 장치(110)에 접근하는 것을 차단할 수 있다. 또한, 게이트키퍼(200)는 라우터와 같은 역할을 구현하되, 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치(100)에서 송신 또는 수신되는 모든 패킷을 검증하여, 사물인터넷 장치(100)에게 전달되는 패킷이 악성 또는 공격성을 포함하고 있는지의 여부를 구분하여 해커의 공격으로부터 사물인터넷 장치를 보호한다. The IoT communication system according to an embodiment of the present invention may block access to the IoT device 110 using the real IP address by inducing communication between the IoT devices 100 using the virtual IP address. In addition, the gatekeeper 200 implements the same role as a router, but verifies all packets transmitted or received from the plurality of IoT devices 100 connected to the sub-network, and is transmitted to the IoT device 100 . It protects IoT devices from hacker attacks by identifying whether a packet contains malicious or aggressive content.

이하에서는 도 3을 이용하여 동일한 네트워크에 접속된 사물인터넷 장치들 간의 통신을 수행하는 방법에 대하여 설명한다. Hereinafter, a method of performing communication between IoT devices connected to the same network using FIG. 3 will be described.

도 3은 본 발명의 다른 실시예에 따른 동일한 네트워크에 접속된 사물인터넷 장치 간의 통신을 수행하는 방법을 설명하기 위한 흐름도이다. 3 is a flowchart illustrating a method of performing communication between IoT devices connected to the same network according to another embodiment of the present invention.

도 3에서는 설명의 편의상 제1 서브네트워크에 포함되는 제1 사물인터넷장치(110-1, 110-2, 110-3)을 예시로 하여 설명한다. In FIG. 3, for convenience of description, the first IoT devices 110-1, 110-2, and 110-3 included in the first subnetwork will be described as an example.

이때 제1 서브 네트워크에 연결되어 있는 복수의 사물인터넷 장치는 자율주행차량(

Figure 112020018236017-pat00015
)(110-1), 자율주행차량(
Figure 112020018236017-pat00016
)(110-2) 및 카메라 장치(
Figure 112020018236017-pat00017
)(110-3)을 포함할 수 있다. At this time, the plurality of IoT devices connected to the first sub-network are autonomous vehicles (
Figure 112020018236017-pat00015
) (110-1), autonomous vehicle (
Figure 112020018236017-pat00016
) (110-2) and the camera device (
Figure 112020018236017-pat00017
) (110-3).

도 4에서는 자율주행차량(

Figure 112020018236017-pat00018
)(110-1)이 동일 서브네트워크에 소속된 자율주행차량(
Figure 112020018236017-pat00019
)(110-2) 및 카메라 장치(
Figure 112020018236017-pat00020
)(110-3)에 각각 데이터 패킷을 보내는 경우에 대하여 설명한다. 4, the autonomous vehicle (
Figure 112020018236017-pat00018
) (110-1) is an autonomous vehicle belonging to the same subnetwork (
Figure 112020018236017-pat00019
) (110-2) and the camera device (
Figure 112020018236017-pat00020
), a case in which data packets are transmitted to 110-3 will be described.

먼저, 자율주행차량(

Figure 112020018236017-pat00021
)(110-1), 자율주행차량(
Figure 112020018236017-pat00022
)(110-2) 및 카메라 장치(
Figure 112020018236017-pat00023
)(110-3)는 해당 게이트키퍼(200)에 동적 주소 할당 요청신호를 송신하여 게이트키퍼(200)로부터 매칭번호, 가상 IP주소 및 실재 IP 주소를 할당 받는다. 그리고, 제1 자율주행차량(
Figure 112020018236017-pat00024
)(110-1), 제2 자율주행차량(
Figure 112020018236017-pat00025
)(110-2) 및 카메라 장치(
Figure 112020018236017-pat00026
)(110-3)는 SDN 또는 DNS 기반의 인터넷 서버(300)에 각각의 매칭 번호 및 IP주소가 등록된 상태이다. First, autonomous vehicles (
Figure 112020018236017-pat00021
) (110-1), autonomous vehicle (
Figure 112020018236017-pat00022
) (110-2) and the camera device (
Figure 112020018236017-pat00023
) 110-3 transmits a dynamic address assignment request signal to the corresponding gatekeeper 200 to receive a matching number, virtual IP address, and real IP address assigned from the gatekeeper 200 . And, the first autonomous vehicle (
Figure 112020018236017-pat00024
) (110-1), the second autonomous vehicle (
Figure 112020018236017-pat00025
) (110-2) and the camera device (
Figure 112020018236017-pat00026
) 110-3 indicates that each matching number and IP address are registered in the SDN or DNS-based Internet server 300 .

그 다음, 도 3에 도시된 바와 같이, 제1 자율주행차량(

Figure 112020018236017-pat00027
)(110-1)은 제2 자율주행차량(
Figure 112020018236017-pat00028
)(110-2)과의 양방향 통신을 수행하기 위하여 패킷을 전송한다(S310). Then, as shown in FIG. 3, the first autonomous vehicle (
Figure 112020018236017-pat00027
) (110-1) is the second autonomous vehicle (
Figure 112020018236017-pat00028
) transmits a packet to perform bidirectional communication with 110-2 (S310).

이때, 전송된 패킷의 해더에는 제1 자율주행차량(

Figure 112020018236017-pat00029
)(110-1)의 실재 IP주소 및 매칭번호(
Figure 112020018236017-pat00030
)와 제2 자율주행차량(
Figure 112020018236017-pat00031
)(110-2)의 가상 IP주소 및 매칭번호(
Figure 112020018236017-pat00032
)를 포함한다. 전송된 패킷은 해당 게이트키퍼(200)에 먼저 도달하게 된다. At this time, in the header of the transmitted packet, the first autonomous vehicle (
Figure 112020018236017-pat00029
) (110-1) real IP address and matching number (
Figure 112020018236017-pat00030
) and the second autonomous vehicle (
Figure 112020018236017-pat00031
) (110-2) virtual IP address and matching number (
Figure 112020018236017-pat00032
) is included. The transmitted packet arrives at the corresponding gatekeeper 200 first.

그러면, 게이트키퍼(200)는 패킷을 검증하고, 패킷의 헤더를 변경한다. 그 다음, 게이트키퍼(200)는 변경된 패킷을 제2 자율주행차량(

Figure 112020018236017-pat00033
)(110-2)에게 전달한다(S320).Then, the gatekeeper 200 verifies the packet and changes the header of the packet. Then, the gatekeeper 200 transmits the changed packet to the second autonomous vehicle (
Figure 112020018236017-pat00033
) to (110-2) (S320).

부연하자면, 게이트키퍼(200)는 전달받은 패킷의 헤더에 포함된 제1 자율주행차량(

Figure 112020018236017-pat00034
)(110-1)의 실재 IP주소 및 매칭번호(
Figure 112020018236017-pat00035
)를 추출하고, 기 저장된 주소 매핑 테이블을 이용하여 제1 자율주행차량(
Figure 112020018236017-pat00036
)(110-1)의 가상 IP 주소를 획득한다. 그리고 게이트키퍼(200)는 패킷의 헤더에 포함된 제1 자율주행차량(
Figure 112020018236017-pat00037
)(110-1)의 실재 IP 주소를 획득한 가상 IP로 변경한다. In other words, the gatekeeper 200 is the first autonomous vehicle (
Figure 112020018236017-pat00034
) (110-1) real IP address and matching number (
Figure 112020018236017-pat00035
) and using a pre-stored address mapping table to extract the first autonomous vehicle (
Figure 112020018236017-pat00036
) obtains a virtual IP address of 110-1. And the gatekeeper 200 is the first autonomous vehicle (
Figure 112020018236017-pat00037
) (110-1) changes the real IP address to the acquired virtual IP.

또한, 게이트키퍼(200)는 전달받은 패킷의 헤더에 포함된 제2 자율주행차량(

Figure 112020018236017-pat00038
)(110-2)의 가상 IP주소 및 매칭번호(
Figure 112020018236017-pat00039
)를 추출하고, 기 저장된 주소 매핑 테이블을 이용하여 제2 자율주행차량(
Figure 112020018236017-pat00040
)(110-2)의 실재 IP 주소를 획득한다. 그리고 게이트키퍼(200)는 패킷의 헤더에 포함된 제2 자율주행차량(
Figure 112020018236017-pat00041
)(110-2)의 가상 IP 주소를 획득한 실재 IP로 변경한다.In addition, the gatekeeper 200 includes the second autonomous vehicle (
Figure 112020018236017-pat00038
) (110-2) virtual IP address and matching number (
Figure 112020018236017-pat00039
) and using a pre-stored address mapping table to extract the second autonomous vehicle (
Figure 112020018236017-pat00040
) to obtain the real IP address of 110-2. And the gatekeeper 200 is the second autonomous vehicle (
Figure 112020018236017-pat00041
), the virtual IP address of 110-2 is changed to the obtained real IP.

그리고, 게이트키퍼(200)는 변경된 패킷을 제2 자율주행차량(

Figure 112020018236017-pat00042
)(110-2)에 전달한다. Then, the gatekeeper 200 transmits the changed packet to the second autonomous vehicle (
Figure 112020018236017-pat00042
) to (110-2).

또한, 제1 자율주행차량(

Figure 112020018236017-pat00043
)(110-1)과 동일 서브 네트워크에 머무르는 카메라 장치(
Figure 112020018236017-pat00044
)(110-3)와의 통신을 수행할 경우, 제1 자율주행차량(
Figure 112020018236017-pat00045
)(110-1)은 패킷을 생성하여 송신한다(S330). In addition, the first autonomous vehicle (
Figure 112020018236017-pat00043
) (110-1) and a camera device (
Figure 112020018236017-pat00044
) (110-3), the first autonomous vehicle (
Figure 112020018236017-pat00045
) 110-1 generates and transmits a packet (S330).

이때, 제1 자율주행차량(

Figure 112020018236017-pat00046
)(110-3)에서 전송된 패킷의 해더에는 제1 자율주행차량(
Figure 112020018236017-pat00047
)(110-1)의 실재 IP주소 및 매칭번호(
Figure 112020018236017-pat00048
)와 카메라 장치(
Figure 112020018236017-pat00049
)(110-3)의 가상 IP주소 및 매칭번호(
Figure 112020018236017-pat00050
)를 포함한다. 전송된 패킷은 해당 게이트키퍼(200)에 먼저 도달하게 된다. At this time, the first autonomous vehicle (
Figure 112020018236017-pat00046
) in the header of the packet transmitted in 110-3, the first autonomous vehicle (
Figure 112020018236017-pat00047
) (110-1) real IP address and matching number (
Figure 112020018236017-pat00048
) and the camera device (
Figure 112020018236017-pat00049
) (110-3) virtual IP address and matching number (
Figure 112020018236017-pat00050
) is included. The transmitted packet arrives at the corresponding gatekeeper 200 first.

그러면, 게이트키퍼(200)는 패킷을 검증하고, 패킷의 헤더를 변경한다. 그 다음, 게이트키퍼(200)는 변경된 패킷을 카메라 장치(

Figure 112020018236017-pat00051
)(110-3)에게 전달한다(S340).Then, the gatekeeper 200 verifies the packet and changes the header of the packet. Then, the gatekeeper 200 transmits the changed packet to the camera device (
Figure 112020018236017-pat00051
) (110-3) (S340).

부연하자면, 게이트키퍼(200)는 전달받은 패킷의 헤더에 포함된 제1 자율주행차량(

Figure 112020018236017-pat00052
)(110-1)의 실재 IP주소 및 매칭번호(
Figure 112020018236017-pat00053
)를 추출하고, 기 저장된 주소 매핑 테이블을 이용하여 제1 자율주행차량(
Figure 112020018236017-pat00054
)(110-1)의 가상 IP 주소를 획득한다. 그리고 게이트키퍼(200)는 패킷의 헤더에 포함된 제1 자율주행차량(
Figure 112020018236017-pat00055
)(110-1)의 실재 IP 주소를 획득한 가상 IP로 변경한다. In other words, the gatekeeper 200 is the first autonomous vehicle (
Figure 112020018236017-pat00052
) (110-1) real IP address and matching number (
Figure 112020018236017-pat00053
) and using a pre-stored address mapping table to extract the first autonomous vehicle (
Figure 112020018236017-pat00054
) obtains a virtual IP address of 110-1. And the gatekeeper 200 is the first autonomous vehicle (
Figure 112020018236017-pat00055
) (110-1) changes the real IP address to the acquired virtual IP.

또한, 게이트키퍼(200)는 전달받은 패킷의 헤더에 포함된 카메라 장치(

Figure 112020018236017-pat00056
)(110-3)의 가상 IP주소 및 매칭번호(
Figure 112020018236017-pat00057
)를 추출하고, 기 저장된 주소 매핑 테이블을 이용하여 카메라 장치(
Figure 112020018236017-pat00058
)(110-3)의 실재 IP 주소를 획득한다. 그리고 게이트키퍼(200)는 패킷의 헤더에 포함된 카메라 장치(
Figure 112020018236017-pat00059
)(110-3)의 의 가상 IP 주소를 획득한 실재 IP로 변경한다.In addition, the gatekeeper 200 includes a camera device (
Figure 112020018236017-pat00056
) (110-3) virtual IP address and matching number (
Figure 112020018236017-pat00057
), and the camera device (
Figure 112020018236017-pat00058
) to obtain the real IP address of (110-3). And the gatekeeper 200 is a camera device included in the header of the packet (
Figure 112020018236017-pat00059
), the virtual IP address of 110-3 is changed to the obtained real IP.

그리고, 게이트키퍼(200)는 변경된 패킷을 카메라 장치(

Figure 112020018236017-pat00060
)(110-3)에 전달한다.Then, the gatekeeper 200 transmits the changed packet to the camera device (
Figure 112020018236017-pat00060
) to (110-3).

이와 같이, 본 발명의 실시예에 따른 사물인터넷 통신 방법은 모바일 에지 컴퓨팅(mobile edge computing) 기술을 구현할 수 있다. 부연하자면, 게이트키퍼(200)는 MEC 기술을 적용하여 동일 서브 네트워크에 접속되어 있는 사물인터넷 장치(110-1, 110-2, 110-3)간의 통신을 수행한다. 특히, 사물인터넷 통신 방법은 자율주행 자동차 환경에서 MEC 기술을 적용하여 통신의 보안성을 극대화하고 데이터 전송을 단축할 수 있는 효과를 도모할 수 있다. 이하에서는 도 4를 이용하여 본 발명의 다른 실시예에 따른 SDN 기반의 사물인터넷 통신 시스템을 이용하여 P2P통신 방법에 대하여 더욱 상세하게 설명한다. As such, the IoT communication method according to an embodiment of the present invention may implement a mobile edge computing technology. In other words, the gatekeeper 200 performs communication between the IoT devices 110-1, 110-2, and 110-3 connected to the same subnetwork by applying the MEC technology. In particular, the IoT communication method can achieve the effect of maximizing communication security and shortening data transmission by applying MEC technology in an autonomous vehicle environment. Hereinafter, a P2P communication method using an SDN-based IoT communication system according to another embodiment of the present invention will be described in more detail with reference to FIG. 4 .

도 4는 본 발명의 다른 실시예에 따른 SDN을 기반의 사물인터넷 통신 시스템을 이용한 P2P통신 방법을 설명하기 위한 흐름도이다. 4 is a flowchart illustrating a P2P communication method using an SDN-based IoT communication system according to another embodiment of the present invention.

먼저, 제1사물인터넷 장치(110) 및 제2 사물인터넷 장치(120)는 해당되는 제1 게이트키퍼(210) 및 제2게이트키퍼(220)에게 동적 주소 할당 요청 신호를 송신하고, 그에 따라 제1 게이트키퍼(210) 및 제2게이트키퍼(220)로부터 매칭번호, 가상 IP 주소 및 실재 IP 주소를 할당 받은 상태라고 가정한다. First, the first IoT device 110 and the second IoT device 120 transmit a dynamic address allocation request signal to the corresponding first gatekeeper 210 and the second gatekeeper 220, and accordingly It is assumed that matching numbers, virtual IP addresses, and real IP addresses are allocated from the first gatekeeper 210 and the second gatekeeper 220 .

그 다음, 도 4에 도시된 바와 같이, 제1 사물인터넷 장치(110)는 인터넷 서버(300)에게 제2 사물인터넷장치(120)의 IP주소를 질의(query)하고, 그에 대한 정보를 수신한다(S410). Then, as shown in FIG. 4 , the first IoT device 110 queries the Internet server 300 for the IP address of the second IoT device 120 , and receives information therefor. (S410).

부연하자면, 식별명칭이

Figure 112020018236017-pat00061
이고, 제1 게이트키퍼(210)로부터 [
Figure 112020018236017-pat00062
, vIP_
Figure 112020018236017-pat00063
, rIP_
Figure 112020018236017-pat00064
]의 매칭 엔트리 정보를 할당받은 제1 사물인터넷 장치(110)가 식별명칭이
Figure 112020018236017-pat00065
인 제2사물인터넷 장치(120)에게 패킷을 송신하고자 할 경우, 제1 사물인터넷 장치(110)는 제2사물인터넷 장치의 식별명칭(
Figure 112020018236017-pat00066
)을 인터넷서버(300)에 전달하여 IP주소를 요청한다. In other words, the identification name is
Figure 112020018236017-pat00061
and from the first gatekeeper 210 [
Figure 112020018236017-pat00062
, vIP_
Figure 112020018236017-pat00063
, rIP_
Figure 112020018236017-pat00064
The first IoT device 110 to which the matching entry information of ] is assigned has an identification name
Figure 112020018236017-pat00065
When a packet is to be transmitted to the second IoT device 120, the first IoT device 110 provides an identification name (
Figure 112020018236017-pat00066
) to the Internet server 300 to request an IP address.

그러면, 인터넷 서버(300)는 데이터베이스에 저장된 등록정보를 이용하여 식별명칭(

Figure 112020018236017-pat00067
)에 매칭되는 매칭번호(
Figure 112020018236017-pat00068
) 및 가상 IP 주소(vIP_
Figure 112020018236017-pat00069
)를 추출한 다음, 추출된 매칭번호(
Figure 112020018236017-pat00070
) 및 가상 IP 주소(vIP_
Figure 112020018236017-pat00071
)를 제1 사물인터넷 장치(110)에 응답형식으로 전달한다.Then, the Internet server 300 uses the registration information stored in the database to identify the name (
Figure 112020018236017-pat00067
) matching number (
Figure 112020018236017-pat00068
) and virtual IP address (vIP_
Figure 112020018236017-pat00069
), and then the extracted matching number (
Figure 112020018236017-pat00070
) and virtual IP address (vIP_
Figure 112020018236017-pat00071
) to the first IoT device 110 in the form of a response.

S410단계가 완료되면, 제1 사물인터넷 장치(110)는 자신의 주소 정보와 제2 사물인터넷 장치(120)의 주소 정보를 포함하는 세션 설정 패킷을 생성하여 송신한다(S420).When step S410 is completed, the first IoT device 110 generates and transmits a session establishment packet including its own address information and address information of the second IoT device 120 (S420).

이때, 주소 영역과 관련한 패킷 헤더의 관련 필드는 [S.IP= rIP_

Figure 112020018236017-pat00072
, D.IP= vIP_
Figure 112020018236017-pat00073
, Op.1=
Figure 112020018236017-pat00074
, Op.2=
Figure 112020018236017-pat00075
]로 구성된다. 생성된 패킷은 목적지인 제2 사물인터넷 장치(120)로 전송된다. 전송된 패킷은 제1 게이트키퍼(210)에 도달하게 된다. 그러면, 제1 게이트키퍼(210)는 패킷의 헤더를 [S.IP= vIP_
Figure 112020018236017-pat00076
, D.IP= vIP_
Figure 112020018236017-pat00077
, Op.1=
Figure 112020018236017-pat00078
, Op.2=
Figure 112020018236017-pat00079
]로 변경한 다음, 제2 사물인터넷 장치(120)가 접속되어 있는 제2 게이트키퍼(220) 방향으로 브로드캐스팅한다. At this time, the related field of the packet header related to the address area is [S.IP= rIP_
Figure 112020018236017-pat00072
, D.IP= vIP_
Figure 112020018236017-pat00073
, Op.1=
Figure 112020018236017-pat00074
, Op.2=
Figure 112020018236017-pat00075
] is composed of The generated packet is transmitted to the second IoT device 120 as a destination. The transmitted packet arrives at the first gatekeeper 210 . Then, the first gatekeeper 210 sets the header of the packet to [S.IP=vIP_
Figure 112020018236017-pat00076
, D.IP= vIP_
Figure 112020018236017-pat00077
, Op.1=
Figure 112020018236017-pat00078
, Op.2=
Figure 112020018236017-pat00079
], and then broadcast in the direction of the second gatekeeper 220 to which the second IoT device 120 is connected.

브로드캐스팅된 패킷은 인터넷을 통상적은 방법으로 경유하여 제2 게이트키퍼(220)에 도달한다. 그러면, 제2 게이트키퍼(220)는 도달한 패킷의 보안성을 검증하고, 패킷의 헤더를 [S.IP= vIP_

Figure 112020018236017-pat00080
, D.IP= rIP_
Figure 112020018236017-pat00081
, Op.1=
Figure 112020018236017-pat00082
, Op.2=
Figure 112020018236017-pat00083
]로 변경한다. 그리고, 변경된 패킷을 실질적으로 rIP_
Figure 112020018236017-pat00084
를 사용하는 제2 사물인터넷 장치(120)에 전달한다. The broadcast packet arrives at the second gatekeeper 220 via the Internet in the usual way. Then, the second gatekeeper 220 verifies the security of the arrived packet, and sets the header of the packet to [S.IP=vIP_
Figure 112020018236017-pat00080
, D.IP= rIP_
Figure 112020018236017-pat00081
, Op.1=
Figure 112020018236017-pat00082
, Op.2=
Figure 112020018236017-pat00083
change to ]. And, the changed packet is effectively rIP_
Figure 112020018236017-pat00084
is transmitted to the second IoT device 120 using

제2 사물인터넷 장치(120)가 제1 사물인터넷 장치(110)의 세션 요청을 받아들이면, 제2 사물인터넷 장치(120)는 센션 요청 수락 응답 패킷을 생성하여 송신한다(S430). When the second IoT device 120 accepts the session request from the first IoT device 110 , the second IoT device 120 generates and transmits a session request acceptance response packet ( S430 ).

부연하자면, 제2 사물인터넷 장치(120)는 세션 요청 패킷의 헤더에 포함된 제1 사물인터넷 장치(110)의 주소관련 정보(

Figure 112020018236017-pat00085
, vIP_
Figure 112020018236017-pat00086
)를 추출한다. 그리고, 제2 사물인터넷 장치(120)는 추출된 주소관련 정보를 이용하여 패킷 헤더의 관련 필드가 [S.IP=rIP_
Figure 112020018236017-pat00087
, D.IP= vIP_
Figure 112020018236017-pat00088
, Op.1=
Figure 112020018236017-pat00089
, Op.2=
Figure 112020018236017-pat00090
]로 구성된 패킷을 생성하여 제1 사물인터넷 장치(110)에게 송신한다. In other words, the second IoT device 120 includes address-related information (
Figure 112020018236017-pat00085
, vIP_
Figure 112020018236017-pat00086
) is extracted. Then, the second IoT device 120 uses the extracted address-related information to set the related field of the packet header to [S.IP=rIP_
Figure 112020018236017-pat00087
, D.IP= vIP_
Figure 112020018236017-pat00088
, Op.1=
Figure 112020018236017-pat00089
, Op.2=
Figure 112020018236017-pat00090
] is generated and transmitted to the first IoT device 110 .

송신된 패킷은 제2 게이트키퍼(220)에 도달하게 되고, 제2 게이트키퍼(220)는 패킷 헤더를 [S.IP=vIP_

Figure 112020018236017-pat00091
, D.IP= vIP_
Figure 112020018236017-pat00092
, Op.1=
Figure 112020018236017-pat00093
, Op.2=
Figure 112020018236017-pat00094
]로 변경하여 제1 사물인터넷 장치(110)와 동일한 서브네트워크에 포함된 제1 게이트키퍼(210)에 브로드캐스팅한다. The transmitted packet arrives at the second gatekeeper 220, and the second gatekeeper 220 sets the packet header to [S.IP=vIP_
Figure 112020018236017-pat00091
, D.IP= vIP_
Figure 112020018236017-pat00092
, Op.1=
Figure 112020018236017-pat00093
, Op.2=
Figure 112020018236017-pat00094
] to broadcast to the first gatekeeper 210 included in the same subnetwork as the first IoT device 110 .

브로드캐스팅된 패킷은 인터넷의 통상적인 방법으로 경유하여 제1 게이트키퍼(210)에 도달한다. 그러면, 제1 게이트키퍼(210)는 도달한 패킷의 보안성을 검증하고, 패킷의 헤더를 [S.IP=vIP_

Figure 112020018236017-pat00095
, D.IP= rIP_
Figure 112020018236017-pat00096
, Op.1=
Figure 112020018236017-pat00097
, Op.2=
Figure 112020018236017-pat00098
]로 변경한다. 그리고, 변경된 패킷을 실질적으로 rIP_
Figure 112020018236017-pat00099
를 사용하는 제1 사물인터넷 장치(110)에 전달한다. The broadcast packet arrives at the first gatekeeper 210 via the usual method of the Internet. Then, the first gatekeeper 210 verifies the security of the arrived packet, and sets the header of the packet to [S.IP=vIP_
Figure 112020018236017-pat00095
, D.IP= rIP_
Figure 112020018236017-pat00096
, Op.1=
Figure 112020018236017-pat00097
, Op.2=
Figure 112020018236017-pat00098
change to ]. And, the changed packet is effectively rIP_
Figure 112020018236017-pat00099
is transmitted to the first IoT device 110 using

세션 요청에 대한 수락 응답이 완료되면, 제1 사물인터넷 장치(110)와 제2 사물인터넷 장치(120)는 양향방 P2P 통신을 수행한다(S440).When the acceptance response to the session request is completed, the first IoT device 110 and the second IoT device 120 perform two-way P2P communication (S440).

즉, 제1 사물인터넷 장치(110)가 패킷을 생성하여 전송하면, 전송된 패킷은 소속된 제1 게이트키퍼(210)에 도달하지 않고 제2 사물인터넷 장치(120)가 소속되어 있는 제2 게이트키퍼(220)에 도달한다. 그러면, 제2 게이트키퍼(220)는 수신된 패킷에 대한 검증 및 주소변환 과정을 수행한 다음, 패킷의 헤더값이 변경된 패킷을 제2 사물인터넷 장치(120)에게 전달한다. That is, when the first IoT device 110 generates and transmits a packet, the transmitted packet does not reach the first gatekeeper 210 to which it belongs, and the second gate to which the second IoT device 120 belongs. The keeper 220 is reached. Then, the second gatekeeper 220 performs verification and address conversion on the received packet, and then transmits the packet in which the header value of the packet is changed to the second IoT device 120 .

마찬가지로, 제2 사물인터넷 장치(120)가 패킷을 생성하여 전송하면, 전송된 패킷은 소속된 제2 게이트키퍼(220)에 도달하지 않고 제1 사물인터넷 장치(110)가 소속되어 있는 제1 게이트키퍼(210)에 도달한다. 그러면, 제1 게이트키퍼(210)는 수신된 패킷에 대한 검증 및 주소변환 과정을 수행한 다음, 패킷의 헤더값이 변경된 패킷을 제1 사물인터넷 장치(110)에게 전달한다. Similarly, when the second IoT device 120 generates and transmits a packet, the transmitted packet does not reach the second gatekeeper 220 to which it belongs, and does not reach the first gate to which the first IoT device 110 belongs. The keeper 210 is reached. Then, the first gatekeeper 210 performs verification and address conversion on the received packet, and then transmits the packet in which the header value of the packet is changed to the first IoT device 110 .

이하에서는 도 5 및 도 6을 이용하여 본 발명의 다른 실시예에 따른 DNS기반의 사물인터넷 통신 방법에 대해 더욱 상세하게 설명한다. Hereinafter, a DNS-based IoT communication method according to another embodiment of the present invention will be described in more detail with reference to FIGS. 5 and 6 .

도 5는 본 발명의 다른 실시예에 따른 DNS기반의 사물인터넷 통신 방법을 설명하기 위한 흐름도이다. 5 is a flowchart illustrating a DNS-based IoT communication method according to another embodiment of the present invention.

먼저, 제1 사물인터넷 장치(110) 및 제2 사물인터넷 장치(120)는 해당 제1게이트키퍼(210) 및 제2 게이트키퍼(220)에게 동적 주소 할당 요청 신호를 송신하고, 그에 따라 제1게이트키퍼(210) 및 제2 게이트키퍼(220)로부터 매칭번호, 가상 IP 주소 및 실재 IP 주소를 할당받은 상태라고 가정한다. First, the first IoT device 110 and the second IoT device 120 transmit a dynamic address allocation request signal to the corresponding first gatekeeper 210 and the second gatekeeper 220, and accordingly, the first It is assumed that a matching number, a virtual IP address, and a real IP address are allocated from the gatekeeper 210 and the second gatekeeper 220 .

그 다음 도 5에 도시된 바와 같이, 제1사물인터넷 장치(110)는 인터넷 서버(300)에게 제2 사물인터넷장치(120)의 IP주소를 질의(query)하고, 그에 대한 정보를 수신한다(S510). Then, as shown in FIG. 5 , the first IoT device 110 queries the Internet server 300 for the IP address of the second IoT device 120 and receives information about it ( S510).

부연하자면, 식별명칭이

Figure 112020018236017-pat00100
이고, 제1 게이트키퍼(210)로부터 [
Figure 112020018236017-pat00101
, vIP_
Figure 112020018236017-pat00102
, rIP_
Figure 112020018236017-pat00103
]의 매칭 엔트리 정보를 할당받은 제1 사물인터넷 장치(110)가 식별명칭이
Figure 112020018236017-pat00104
인 제2사물인터넷 장치(120)에게 패킷을 송신하고자 할 경우, 제1 사물인터넷 장치(110)는 제2사물인터넷 장치의 도메인 식별명칭(
Figure 112020018236017-pat00105
.utopia.com)을 인터넷서버(300)에 전달하여 IP주소를 요청한다. In other words, the identification name is
Figure 112020018236017-pat00100
and from the first gatekeeper 210 [
Figure 112020018236017-pat00101
, vIP_
Figure 112020018236017-pat00102
, rIP_
Figure 112020018236017-pat00103
The first IoT device 110 to which the matching entry information of ] is assigned has an identification name
Figure 112020018236017-pat00104
When a packet is to be transmitted to the second IoT device 120, the first IoT device 110 sets the domain identification name (
Figure 112020018236017-pat00105
utopia.com) to the Internet server 300 to request an IP address.

한편, DNS기반의 인터넷 서버(300)는 복수의 소속 서버(AU)로 구성된다. 소속 서버는 가장 상위에 있는 루트 도메인 서버와, 복수의 하위 도메인 서버를 포함한다. 한편, 루트 도메인 서버의 IP 주소는 변경되지 않으므로 복수의 모든 도메인 서버들은 루트 도메인 서버를 인지하고 있다. On the other hand, the DNS-based Internet server 300 is composed of a plurality of affiliated servers (AU). The affiliated server includes a root domain server at the highest level and a plurality of sub-domain servers. Meanwhile, since the IP address of the root domain server is not changed, all of the plurality of domain servers recognize the root domain server.

이하에서는 도 6을 이용하여 제1 사물인터넷 장치(110)가 복수의 소속 서버와의 질의를 통해 제2 사물인터넷 장치(120)의 주소 정보를 획득하는 과정을 설명한다. Hereinafter, a process in which the first IoT device 110 acquires address information of the second IoT device 120 through a query with a plurality of affiliated servers will be described with reference to FIG. 6 .

도 6은 도 5 에 도시된 S510단계를 설명하기 위한 도면이다. FIG. 6 is a view for explaining step S510 shown in FIG. 5 .

도 6에 도시된 바와 같이, 먼저 제1 사물인터넷 장치(110)는 제2 사물인터넷 장치(120)의 주소를 알아내기 위하여 가장 가까운 곳에 위치하는 DNS 서버에 IP 주소를 문의한다(S511).As shown in FIG. 6 , first, the first IoT device 110 inquires for an IP address of the nearest DNS server in order to find out the address of the second IoT device 120 ( S511 ).

가장 가까운 곳에 위치하는 DNS 서버(이하 "제1 소속서버"라고 함)가 제2 사물인터넷 장치(120)의 IP주소를 알고 있다면 즉시 IP 주소를 제공한다. 반면에 제1 소속서버가 제2 사물인터넷 장치(120)의 IP주소를 모를 경우, 제1 소속서버는 루트 도메인서버에 문의를 요청한다(S512). If the nearest DNS server (hereinafter referred to as a “first affiliated server”) knows the IP address of the second IoT device 120 , it immediately provides the IP address. On the other hand, when the first affiliate server does not know the IP address of the second IoT device 120, the first affiliate server requests an inquiry from the root domain server (S512).

루트 도메인서버는 제2 사물인터넷 장치(120)의 도메인 식별 명칭을 이용하여 관련 소속서버의 IP 주소를 제1 소속서버에 전달한다(S513). The root domain server transmits the IP address of the related affiliate server to the first affiliate server using the domain identification name of the second IoT device 120 (S513).

예를 들어, 제2 사물인터넷 장치(120)의 도메인 식별 명칭이

Figure 112020018236017-pat00106
.utopia.com일 경우, 최상위 도메인이 ".com"이 된다. 따라서, 루트 도메인서버는 ".com"이 등록된 소속 서버의 IP주소를 제1 소속서버에 전달한다. For example, the domain identification name of the second IoT device 120 is
Figure 112020018236017-pat00106
If it is .utopia.com, the top-level domain will be ".com". Accordingly, the root domain server transfers the IP address of the affiliated server where ".com" is registered to the first affiliated server.

그러면, 제1 소속서버는 ".com"을 관리하는 네임서버에게 문의한다(S614). Then, the first affiliated server inquires of the name server managing ".com" (S614).

그러면,".com"네임서버는 자신의 데이터베이스를 이용하여 제2 사물인터넷 장치(120)의 IP주소를 검색한다. 검색된 결과 제2 사물인터넷 장치(120)의 IP 주소를 모를 경우, ".com"네임서버는 하위서버인 "utopia"의 네임서버의 IP주소를 제1 소속서버에 제공한다(S515). Then, the ".com" name server searches for the IP address of the second IoT device 120 using its own database. As a result of the search, if the IP address of the second IoT device 120 is unknown, the ".com" name server provides the IP address of the name server of "utopia", which is a subordinate server, to the first affiliated server (S515).

제1 소속서버는 ".com"네임서버로부터 전달받은 "utopia"의 네임서버의 IP주소를 이용하여 "utopia"의 네임서버에게 제2 사물인터넷 장치(120)의 IP주소를 문의한다(S516).The first affiliated server inquires the IP address of the second IoT device 120 from the name server of “utopia” using the IP address of the name server of “utopia” received from the name server “.com” (S516) .

마지막으로"utopia"의 네임서버는 자신의 데이터베이스를 이용하여 문의받은 제2 사물인터넷 장치(120)의 IP주소를 검색한다. 그리고, 제2 사물인터넷 장치(120)의 IP주소가 검색되면, "utopia"의 네임서버는 제2 사물인터넷 장치(120)의 매칭번호 및 IP주소를 추출하여 제1 소속서버에게 제공한다(S517). Finally, the name server of “utopia” searches for the IP address of the inquired second IoT device 120 using its own database. Then, when the IP address of the second IoT device 120 is found, the name server of “utopia” extracts the matching number and IP address of the second IoT device 120 and provides it to the first affiliated server (S517). ).

그러면, 제1 소속서버는 제2 사물인터넷 장치(120)의 매칭번호(

Figure 112020018236017-pat00107
) 및 IP주소(vIP_
Figure 112020018236017-pat00108
)를 제1 사물인터넷 장치(110)에게 전달한다(S518). Then, the first affiliated server receives the matching number (
Figure 112020018236017-pat00107
) and IP address (vIP_
Figure 112020018236017-pat00108
) to the first IoT device 110 (S518).

S610 단계를 완료하면, 제1 사물인터넷 장치(110)는 클라이언트 자격으로 제2 사물인터넷 장치(120)에게 HTTP요청 패킷을 송신한다(S520). Upon completion of step S610, the first IoT device 110 transmits an HTTP request packet to the second IoT device 120 as a client (S520).

부연하자면, 제1 사물인터넷 장치(110)는 HTTP요청 패킷을 생성한다. 이때, HTTP요청 패킷의 헤더의 관련 필드는 [S.IP= rIP_

Figure 112020018236017-pat00109
, D.IP= vIP_
Figure 112020018236017-pat00110
, Op.1=
Figure 112020018236017-pat00111
, Op.2=
Figure 112020018236017-pat00112
]로 구성된다. 생성된 HTTP요청 패킷은 제2 사물인터넷 장치(120)를 향하여 전송된다. 전송된 HTTP요청 패킷은 제2 사물인터넷 장치(120)에 전달되기 전에 제1 게이트키퍼(210)에 도달하며, 제1 게이트키퍼(210)는 HTTP요청 패킷의 헤더를 [S.IP= vIP_
Figure 112020018236017-pat00113
, D.IP= vIP_
Figure 112020018236017-pat00114
, Op.1=
Figure 112020018236017-pat00115
, Op.2=
Figure 112020018236017-pat00116
]로 변경한다. 그 다음, 제1 게이트키퍼(210)는 제2 사물인터넷 장치(120)가 속한 제2 게이트키퍼(220)방향으로 HTTP요청 패킷을 브로드캐스팅한다. In other words, the first IoT device 110 generates an HTTP request packet. At this time, the relevant field of the header of the HTTP request packet is [S.IP= rIP_
Figure 112020018236017-pat00109
, D.IP= vIP_
Figure 112020018236017-pat00110
, Op.1=
Figure 112020018236017-pat00111
, Op.2=
Figure 112020018236017-pat00112
] is composed of The generated HTTP request packet is transmitted toward the second IoT device 120 . The transmitted HTTP request packet arrives at the first gatekeeper 210 before being delivered to the second IoT device 120, and the first gatekeeper 210 sets the header of the HTTP request packet to [S.IP=vIP_
Figure 112020018236017-pat00113
, D.IP= vIP_
Figure 112020018236017-pat00114
, Op.1=
Figure 112020018236017-pat00115
, Op.2=
Figure 112020018236017-pat00116
change to ]. Next, the first gatekeeper 210 broadcasts the HTTP request packet in the direction of the second gatekeeper 220 to which the second IoT device 120 belongs.

HTTP요청 패킷은 인터넷을 통상적인 방법으로 경유하여 제2 게이트키퍼(220)에 도달한다. 그러면, 제2 게이트키퍼(220)는 패킷을 검증하고, 검증이 완료된 패킷의 헤더를 S.IP= vIP_

Figure 112020018236017-pat00117
, D.IP= rIP_
Figure 112020018236017-pat00118
, Op.1=
Figure 112020018236017-pat00119
, Op.2=
Figure 112020018236017-pat00120
]로 변경한 다음, 변경된 HTTP요청 패킷을 실질적으로 rIP_
Figure 112020018236017-pat00121
를 사용하는 제2 사물인터넷 장치(120)에 전달한다. The HTTP request packet arrives at the second gatekeeper 220 via the Internet in a conventional manner. Then, the second gatekeeper 220 verifies the packet, and sets the header of the verified packet as S.IP=vIP_
Figure 112020018236017-pat00117
, D.IP= rIP_
Figure 112020018236017-pat00118
, Op.1=
Figure 112020018236017-pat00119
, Op.2=
Figure 112020018236017-pat00120
], then the changed HTTP request packet is effectively rIP_
Figure 112020018236017-pat00121
is transmitted to the second IoT device 120 using

만약, 제2 사물인터넷 장치(120)가 제1 사물인터넷 장치(110)의 HTTP요청에 의해 명시된 파일 정보를 제공해 줄 수 있다면, 제2 사물인터넷 장치(120)는 HTTP 응답 패킷을 생성하고, 생성된 HTTP 응답 패킷을 제1 사물인터넷 장치(110)로 향하여 전송한다(S530).If the second IoT device 120 can provide file information specified by the HTTP request of the first IoT device 110 , the second IoT device 120 generates and generates an HTTP response packet. The HTTP response packet is transmitted toward the first IoT device 110 (S530).

부연하자면, 제2 사물인터넷 장치(120)는 HTTP 응답 패킷의 헤더에 포함된 제1 사물인터넷 장치(110)의 주소관련 정보(

Figure 112020018236017-pat00122
, vIP_
Figure 112020018236017-pat00123
)를 추출한다. 그리고, 제2 사물인터넷 장치(120)는 추출된 주소관련 정보를 이용하여 패킷 헤더의 관련 필드가 [S.IP=rIP_
Figure 112020018236017-pat00124
, D.IP= vIP_
Figure 112020018236017-pat00125
, Op.1=
Figure 112020018236017-pat00126
, Op.2=
Figure 112020018236017-pat00127
]로 구성된 HTTP 응답 패킷을 생성하여 제1 사물인터넷 장치(110)에게 송신한다. In other words, the second IoT device 120 includes address-related information (
Figure 112020018236017-pat00122
, vIP_
Figure 112020018236017-pat00123
) is extracted. Then, the second IoT device 120 uses the extracted address-related information to set the related field of the packet header to [S.IP=rIP_
Figure 112020018236017-pat00124
, D.IP= vIP_
Figure 112020018236017-pat00125
, Op.1=
Figure 112020018236017-pat00126
, Op.2=
Figure 112020018236017-pat00127
] is generated and transmitted to the first IoT device 110 .

송신된 HTTP 응답 패킷은 제2 게이트키퍼(220)에 도달하게 되고, 제2 게이트키퍼(220)는 패킷 헤더를 [S.IP=vIP_

Figure 112020018236017-pat00128
, D.IP= vIP_
Figure 112020018236017-pat00129
, Op.1=
Figure 112020018236017-pat00130
, Op.2=
Figure 112020018236017-pat00131
]로 변경하여 제1 사물인터넷 장치(110)에 소속되어 있는 제1 게이트키퍼(210)에 브로드캐스팅한다. The transmitted HTTP response packet arrives at the second gatekeeper 220, and the second gatekeeper 220 sets the packet header to [S.IP=vIP_
Figure 112020018236017-pat00128
, D.IP= vIP_
Figure 112020018236017-pat00129
, Op.1=
Figure 112020018236017-pat00130
, Op.2=
Figure 112020018236017-pat00131
] to broadcast to the first gatekeeper 210 belonging to the first IoT device 110 .

브로드캐스팅된 HTTP 응답 패킷은 인터넷의 통상적인 방법으로 경유하여 제1 게이트키퍼(210)에 도달한다. 그러면, 제1 게이트키퍼(210)는 도달한 패킷의 보안성을 검증하고, 패킷의 헤더를 [S.IP=vIP_

Figure 112020018236017-pat00132
, D.IP= rIP_
Figure 112020018236017-pat00133
, Op.1=
Figure 112020018236017-pat00134
, Op.2=
Figure 112020018236017-pat00135
]로 변경한다. 그리고, 변경된 패킷을 실질적으로 rIP_
Figure 112020018236017-pat00136
를 사용하는 제1 사물인터넷 장치(110)에 전달한다. 이렇게 하여 제1 사물인터넷 장치(110)는 제2 사물인터넷장치(120)에서 보내주는 HTTP 응답 패킷에 포함된 원하는 파일 정보를 수신할 수 있다. The broadcast HTTP response packet arrives at the first gatekeeper 210 via a conventional method of the Internet. Then, the first gatekeeper 210 verifies the security of the arrived packet, and sets the header of the packet to [S.IP=vIP_
Figure 112020018236017-pat00132
, D.IP= rIP_
Figure 112020018236017-pat00133
, Op.1=
Figure 112020018236017-pat00134
, Op.2=
Figure 112020018236017-pat00135
change to ]. And, the changed packet is effectively rIP_
Figure 112020018236017-pat00136
is transmitted to the first IoT device 110 using In this way, the first IoT device 110 may receive desired file information included in the HTTP response packet sent from the second IoT device 120 .

이와 같이 본 발명에 따르면, 모든 데이터 패킷은 송신측 또는 수신측 사물인터넷 장치가 접속되어 있는 게이트키퍼를 통하여 전송되며, 게이트키퍼는 패킷에 포함된 송신측 사물인터넷 장치의 실재 IP주소를 가상 IP주소로 변경하여 전달하므로, 실재 IP주소가 외부에 노출되는 것을 방지할 수 있다 또한, 외부에서 특정 사물인터넷 장치를 공격할 경우에는 특정 사물인터넷 장치가 어떤 목적으로 사용되는지 트래픽 분석 (Traffic Analysis) 공격을 통해 정보를 획득할 수 있으나, 실재 IP주소와 외부에 노출된 가상 IP 주소가 서로 상이하므로 트래픽 분석 공격을 난해하게 할 수 있다. As described above, according to the present invention, all data packets are transmitted through the gatekeeper to which the sending or receiving IoT device is connected, and the gatekeeper converts the real IP address of the sending IoT device included in the packet into a virtual IP address. In addition, when a specific IoT device is attacked from the outside, the traffic analysis attack is performed to determine what purpose the specific IoT device is used for. Although information can be obtained through this, the real IP address and the virtual IP address exposed to the outside are different from each other, making the traffic analysis attack difficult.

또한, 본 발명에 따른 사물인터넷 통신 시스템은 정당한 접근으로 가장하고 접속을 시도하는 마스커라드 (Masquerade) 공격, 사물인터넷 장치가 정상적으로 작동할 수 없도록 하는 DoS (Denial of Service) 공격, 제3자가 중간에 끼어드는 Man-In-Middle-Attack (MIMA) 공격 및 사물인터넷 장치로 침투시키려는 웜 및 바이러스 등을 게이트키퍼 단계에서 차단할 수 있는 효과를 지닌다. In addition, the IoT communication system according to the present invention provides a masquerade attack that attempts to access under the guise of a legitimate access, a Denial of Service (DoS) attack that prevents the IoT device from operating normally, and a third party intervenes It has the effect of blocking Man-In-Middle-Attack (MIMA) attacks and worms and viruses that try to infiltrate IoT devices at the gatekeeper stage.

본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호범위는 아래의 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.Although the present invention has been described with reference to the embodiment shown in the drawings, this is merely exemplary, and it will be understood by those skilled in the art that various modifications and equivalent other embodiments are possible therefrom. will be. Therefore, the true technical protection scope of the present invention should be determined by the technical spirit of the following claims.

110, 120, 130, 140 : 사물인터넷 장치
210, 220, 230, 240 : 게이트키퍼
300 : 인터넷 서버
110, 120, 130, 140: IoT device
210, 220, 230, 240: Gatekeeper
300: Internet Server

Claims (26)

패킷의 안전성 검증 기능을 구비한 사물인터넷 통신 시스템에 있어서,
서브 네트워크에 접속되어 있으며, 패킷을 생성하여 송신하거나 수신하는 복수의 사물인터넷 장치,
상기 복수의 사물인터넷 장치로부터 전달받은 식별명칭, 매칭번호 및 가상 IP 주소를 등록하고, 등록된 상기 매칭번호 및 가상 IP 주소를 통신하고자 하는 사물인터넷 장치에 제공하여 사물인터넷 장치와 다른 사물인터넷 장치 사이의 통신을 연결시키는 인터넷 서버, 그리고
각각의 서브 네트워크마다 설치되어 있으며, 해당 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치에게 매칭 엔트리 정보를 각각 할당하고, 상기 사물인터넷 장치로부터 수신된 패킷을 검증하며, 검증이 완료된 패킷의 헤더에 포함된 사물인터넷 장치의 IP 주소를 실재 IP주소에서 가상 IP주소로 변경하여 해당 사물인터넷 장치에 전송하는 게이트키퍼를 포함하는 사물인터넷 통신 시스템.
In the IoT communication system having a packet safety verification function,
A plurality of IoT devices connected to the subnetwork and generating and transmitting or receiving packets;
The identification name, matching number, and virtual IP address received from the plurality of IoT devices are registered, and the registered matching number and virtual IP address are provided to the IoT device to communicate between the IoT device and other IoT devices. an Internet server that connects the communications of
It is installed in each sub-network, and it allocates matching entry information to a plurality of IoT devices connected to the corresponding sub-network, verifies the packet received from the IoT device, and is included in the header of the verified packet. An IoT communication system including a gatekeeper that changes the IP address of an existing IoT device from an actual IP address to a virtual IP address and transmits it to the corresponding IoT device.
제1항에 있어서,
상기 사물인터넷 장치는,
장비, 전자기기, 자동자, 드론 및 로봇 중에서 적어도 어느 하나를 포함하는 사물인터넷 통신 시스템.
According to claim 1,
The IoT device is
An IoT communication system including at least one of equipment, electronic devices, automatons, drones, and robots.
제1항에 있어서,
상기 사물인터넷 장치는,
식별명칭이 부여된 상태에서 게이트키퍼에게 동적 주소 할당 요청 신호를 송신하며,
상기 게이트키퍼는,
매칭번호, 실재 IP 주소 및 가상 IP 주소를 포함하는 매칭 엔트리 정보를 생성하여 해당 사물인터넷 장치에게 할당하며, 상기 할당된 매칭 엔트리 정보를 주소 매핑 테이블 형태로 저장하는 사물인터넷 통신 시스템.
According to claim 1,
The IoT device is
Sends a dynamic address allocation request signal to the gatekeeper with an identification name assigned,
The gatekeeper is
An IoT communication system for generating matching entry information including a matching number, a real IP address, and a virtual IP address, allocating the matching entry information to the corresponding IoT device, and storing the allocated matching entry information in the form of an address mapping table.
제3항에 있어서,
상기 인터넷 서버는,
소프트웨어 정의 네트워킹 (SDN, Software-Defined Networking) 사용 기술과 DNS (Domain Name System) 사용 기술 중에서 선택된 하나의 기술을 기반으로 하는 사물인터넷 통신 시스템.
4. The method of claim 3,
The internet server is
An IoT communication system based on one technology selected from the technology using Software-Defined Networking (SDN) and the technology using Domain Name System (DNS).
제4항에 있어서,
패킷을 송신하는 사물인터넷 장치를 제1 사물인터넷 장치라고 하고, 패킷을 수신하는 사물인터넷 장치를 제2 사물인터넷 장치라고 할 경우,
상기 인터넷 서버는,
상기 제1 사물인터넷 장치로부터 전달받은 제2 사물인터넷 장치의 식별명칭과 기 등록된 정보를 비교하여 제2 사물인터넷 장치의 매칭번호 및 가상 IP주소를 추출하고, 추출된 제2 사물인터넷 장치의 매칭번호 및 가상 IP주소를 제1 사물인터넷 장치에 전달하는 사물인터넷 통신 시스템.
5. The method of claim 4,
If the IoT device that transmits the packet is called the first IoT device and the IoT device that receives the packet is called the second IoT device,
The internet server is
The matching number and virtual IP address of the second IoT device are extracted by comparing the identification name of the second IoT device received from the first IoT device with previously registered information, and matching of the extracted second IoT device An IoT communication system that delivers a number and a virtual IP address to the first IoT device.
제5항에 있어서,
상기 패킷은 헤더와 데이터부를 포함하며,
상기 헤더는,
상기 제1 사물인터넷 장치의 IP 주소, 제2 사물인터넷 장치의 IP 주소, 제1 사물인터넷 장치의 매칭번호 및 제2 사물인터넷 장치의 매칭번호를 포함하는 사물인터넷 통신 시스템.
6. The method of claim 5,
The packet includes a header and a data part,
The header is
An IoT communication system including an IP address of the first IoT device, an IP address of a second IoT device, a matching number of the first IoT device, and a matching number of the second IoT device.
제6항에 있어서,
제1 서브 네트워크에 접속되어 있는 제1 사물인터넷 장치가 상기 제2 사물인터넷 장치에게 패킷을 전송할 경우,
상기 제1 서브 네트워크에 포함된 제1 게이트키퍼는,
상기 저장된 주소 매칭 테이블을 이용하여 상기 패킷의 헤더에 포함된 제1 사물인터넷 장치의 실재 IP 주소를 가상 IP 주소로 변경하고, 변경된 헤더가 포함된 패킷을 상기 제2 사물인터넷 장치가 접속된 제2 게이트키퍼에 전송하는 사물인터넷 통신 시스템.
7. The method of claim 6,
When the first IoT device connected to the first subnetwork transmits a packet to the second IoT device,
A first gatekeeper included in the first subnetwork,
The real IP address of the first IoT device included in the header of the packet is changed to a virtual IP address using the stored address matching table, and the packet including the changed header is converted into a second IoT device connected to the second IoT device. Internet of Things communication system that transmits to the gatekeeper.
제7항에 있어서,
상기 제2 게이트키퍼는,
상기 수신된 패킷의 헤더에 포함된 제2 사물인터넷 장치의 가상 IP 주소를 추출하고, 상기 저장된 주소 매칭 테이블을 이용하여 추출된 제2 사물인터넷 장치의 가상 IP 주소를 실재 IP 주소로 변경하고, 변경된 헤더가 포함된 패킷을 제2 사물인터넷 장치에 전달하는 사물인터넷 통신 시스템.
8. The method of claim 7,
the second gatekeeper,
Extracting the virtual IP address of the second IoT device included in the header of the received packet, changing the extracted virtual IP address of the second IoT device to the real IP address using the stored address matching table, An IoT communication system that delivers a packet including a header to a second IoT device.
제1항에 있어서,
동일 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치간의 통신을 수행할 경우, 사물인터넷 장치에서 송신 또는 수신되는 패킷은 동일한 게이트키퍼를 경유하며,
상기 게이트키퍼는,
송신측 사물인터넷 장치로부터 수신된 패킷의 헤더에 포함된 송신측 사물인터넷 장치의 실재 IP 주소를 가상 IP 주소로 변경하고, 수신측 사물인터넷 장치의 가상 IP 주소를 실재 IP주소로 변경하고, 변경된 패킷을 수신측 사물인터넷 장치에 전달하는 사물인터넷 통신 시스템.
According to claim 1,
When communication is performed between a plurality of IoT devices connected to the same subnetwork, packets transmitted or received from the IoT devices pass through the same gatekeeper,
The gatekeeper is
The real IP address of the sending IoT device included in the header of the packet received from the sending IoT device is changed to a virtual IP address, the virtual IP address of the receiving IoT device is changed to the real IP address, and the changed packet is changed. An IoT communication system that delivers
P2P를 기반으로 하는 사물인터넷 통신 연결 시스템에 있어서,
서브 네트워크에 접속되어 있으며, 패킷을 생성하여 송신하거나 수신하는 복수의 사물인터넷 장치,
상기 복수의 사물인터넷 장치로부터 전달받은 식별명칭, 매칭번호 및 가상 IP 주소를 등록하고, 등록된 상기 매칭번호 및 가상 IP 주소를 통신하고자 하는 사물인터넷 장치에 제공하여 사물인터넷 장치와 다른 사물인터넷 장치 사이의 통신을 연결시키는 인터넷 서버, 그리고
각각의 서브 네트워크마다 설치되어 있으며, 해당 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치에게 매칭 엔트리 정보를 각각 할당하고, 상기 사물인터넷 장치로부터 수신된 패킷을 검증하며, 검증이 완료된 패킷의 헤더에 포함된 사물인터넷 장치의 IP 주소를 실재 IP주소에서 가상 IP주소로 변경하여 해당 사물인터넷 장치에 전송하는 게이트키퍼를 포함하며,
상기 게이트키퍼는,
상기 사물인터넷장치로부터 생성된 세션 설정 요청 패킷을 검증하여 세션 설정을 수행하는 사물인터넷 통신 시스템.
In the IoT communication connection system based on P2P,
A plurality of IoT devices connected to the subnetwork and generating and transmitting or receiving packets;
The identification name, matching number, and virtual IP address received from the plurality of IoT devices are registered, and the registered matching number and virtual IP address are provided to the IoT device to communicate between the IoT device and other IoT devices. an Internet server that connects the communications of
It is installed in each sub-network, and it allocates matching entry information to a plurality of IoT devices connected to the corresponding sub-network, verifies the packet received from the IoT device, and is included in the header of the verified packet. It includes a gatekeeper that changes the IP address of the IoT device from an actual IP address to a virtual IP address and transmits it to the IoT device,
The gatekeeper is
An IoT communication system for performing session establishment by verifying the session establishment request packet generated from the IoT device.
제10항에 있어서,
상기 사물인터넷 장치는,
장비, 전자기기, 자동자, 드론 및 로봇 중에서 적어도 어느 하나를 포함하는 사물인터넷 통신 시스템.
11. The method of claim 10,
The IoT device is
An IoT communication system including at least one of equipment, electronic devices, automatons, drones, and robots.
제11항에 있어서,
상기 사물인터넷 장치는,
식별명칭이 부여된 상태에서 게이트키퍼에게 동적 주소 할당 요청 신호를 송신하며,
상기 게이트키퍼는,
매칭번호, 실재 IP 주소 및 가상 IP 주소를 포함하는 매칭 엔트리 정보를 생성하여 해당 사물인터넷 장치에게 할당하며, 상기 할당된 매칭 엔트리 정보를 주소 매핑 테이블 형태로 저장하는 사물인터넷 통신 시스템.
12. The method of claim 11,
The IoT device is
Sends a dynamic address allocation request signal to the gatekeeper with an identification name assigned,
The gatekeeper is
An IoT communication system for generating matching entry information including a matching number, a real IP address, and a virtual IP address, allocating the matching entry information to the corresponding IoT device, and storing the allocated matching entry information in the form of an address mapping table.
제11항에 있어서,
상기 패킷에 포함된 헤더는,
송신측에 해당하는 제1 사물인터넷 장치의 IP 주소, 수신측에 해당하는 제2 사물인터넷 장치의 IP 주소, 제1 사물인터넷 장치의 매칭번호 및 제2 사물인터넷 장치의 매칭번호를 포함하는 사물인터넷 통신 시스템.
12. The method of claim 11,
The header included in the packet is
IoT including the IP address of the first IoT device corresponding to the transmitting side, the IP address of the second IoT device corresponding to the receiving side, the matching number of the first IoT device, and the matching number of the second IoT device communication system.
제13항에 있어서,
상기 인터넷 서버는,
상기 제1 사물인터넷 장치로부터 전달받은 제2 사물인터넷 장치의 식별명칭과 기 등록된 정보를 비교하여 제2 사물인터넷 장치의 매칭번호 및 가상 IP주소를 추출하고, 추출된 제2 사물인터넷 장치의 매칭번호 및 가상 IP주소를 제1 사물인터넷 장치에 전달하는 사물인터넷 통신 시스템.
14. The method of claim 13,
The internet server is
The matching number and virtual IP address of the second IoT device are extracted by comparing the identification name of the second IoT device received from the first IoT device with previously registered information, and matching of the extracted second IoT device An IoT communication system that delivers a number and a virtual IP address to the first IoT device.
제14항에 있어서,
제1 서브 네트워크에 접속되어 있는 제1 사물인터넷 장치가 제2 서브 네트워크에 접속되어 있는 제2 사물인터넷 장치에게 세션 요청 패킷을 전송하면,
상기 제1 서브 네트워크에 포함된 제1 게이트키퍼는,
주소 매칭 테이블을 이용하여 상기 패킷의 헤더에 포함된 제1 사물인터넷 장치의 실재 IP 주소를 가상 IP 주소로 변경하고, 변경된 헤더가 포함된 세션 요청 패킷을 상기 제2 서브 네트워크에 포함된 제2 게이트키퍼에 전송하는 사물인터넷 통신 시스템.
15. The method of claim 14,
When the first IoT device connected to the first subnetwork transmits a session request packet to the second IoT device connected to the second subnetwork,
A first gatekeeper included in the first subnetwork,
The real IP address of the first IoT device included in the header of the packet is changed to a virtual IP address using the address matching table, and the session request packet including the changed header is transferred to the second gate included in the second subnetwork. Internet of Things communication system that transmits to the keeper.
제15항에 있어서,
상기 제2 게이트키퍼는,
상기 세션 요청 패킷의 헤더에 포함된 제1 사물인터넷 장치의 식별명칭과 가상IP주소를 검증하여 세션 요청 패킷에 대한 수락여부를 판단하고,
수락할 경우에는 상기 저장된 주소 매칭 테이블을 이용하여 제2 사물인터넷 장치의 가상 IP 주소를 실재 IP 주소로 변경하고, 변경된 헤더가 포함된 데이터를 요청하는 패킷을 제2 사물인터넷 장치에 전달하는 사물인터넷 통신 시스템.
16. The method of claim 15,
the second gatekeeper,
determining whether to accept the session request packet by verifying the identification name and virtual IP address of the first IoT device included in the header of the session request packet;
In case of acceptance, the virtual IP address of the second IoT device is changed to an actual IP address using the stored address matching table, and a packet requesting data including the changed header is transmitted to the second IoT device. communication system.
제16항에 있어서,
상기 세션 요청 패킷에 대한 검증이 완료되어 세션 설정이 완료되면,
상기 제1 사물인터넷 장치는,
생성된 패킷을 제2 게이트키퍼에 전송하고,
제2 사물인터넷 장치는,
생성된 패킷을 제1 게이트키퍼에 전송하는 사물인터넷 통신 시스템.
17. The method of claim 16,
When verification of the session request packet is completed and session establishment is completed,
The first IoT device,
Transmitting the generated packet to the second gatekeeper,
The second IoT device,
An IoT communication system that transmits the generated packet to the first gatekeeper.
DNS(Domain Name System)를 기반으로 하는 사물인터넷 통신 연결 시스템에 있어서,
서브 네트워크에 접속되어 있으며, 패킷을 생성하여 송신하거나 수신하는 복수의 사물인터넷 장치,
복수의 소속 서버를 포함하며, 상기 사물인터넷 장치로부터 전달받은 도메인 형태의 식별명칭, 매칭번호 및 가상 IP 주소를 복수의 소속 서버 중에서 어느 하나의 소속서버에 등록시키고, 등록된 상기 매칭번호 및 가상 IP 주소를 통신하고자 하는 사물인터넷 장치에 제공하여 사물인터넷 장치와 다른 사물인터넷 장치 사이의 통신을 연결시키는 인터넷 서버, 그리고
각각의 서브 네트워크마다 설치되어 있으며, 해당 서브 네트워크에 접속되어 있는 복수의 사물인터넷 장치에게 매칭 엔트리 정보를 각각 할당하고, 상기 사물인터넷 장치로부터 수신된 패킷을 검증하며, 검증이 완료된 패킷의 헤더에 포함된 사물인터넷 장치의 IP 주소를 실재 IP주소에서 가상 IP주소로 변경하여 해당 사물인터넷 장치에 전송하는 게이트키퍼를 포함하는 사물인터넷 통신 시스템.
In the Internet of Things communication connection system based on DNS (Domain Name System),
A plurality of IoT devices connected to the subnetwork and generating and transmitting or receiving packets;
It includes a plurality of affiliated servers, and registers the domain type identification name, matching number, and virtual IP address received from the IoT device in any one affiliated server among the plurality of affiliated servers, and the registered matching number and virtual IP address An Internet server that connects the communication between the IoT device and another IoT device by providing the address to the IoT device with which it wants to communicate; and
It is installed in each sub-network, and it allocates matching entry information to a plurality of IoT devices connected to the corresponding sub-network, verifies the packet received from the IoT device, and is included in the header of the verified packet. An IoT communication system including a gatekeeper that changes the IP address of an existing IoT device from an actual IP address to a virtual IP address and transmits it to the corresponding IoT device.
제18항에 있어서,
상기 사물인터넷 장치는,
장비, 전자기기, 자동자, 드론 및 로봇 중에서 적어도 어느 하나를 포함하는 사물인터넷 통신 시스템.
19. The method of claim 18,
The IoT device is
An IoT communication system including at least one of equipment, electronic devices, automatons, drones, and robots.
제18항에 있어서,
상기 사물인터넷 장치는,
식별명칭이 부여된 상태에서 게이트키퍼에게 동적 주소 할당 요청 신호를 송신하며,
상기 게이트키퍼는,
매칭번호, 실재 IP 주소 및 가상 IP 주소를 포함하는 매칭 엔트리 정보를 생성하여 해당 사물인터넷 장치에게 할당하며, 상기 할당된 매칭 엔트리 정보를 주소 매핑 테이블 형태로 저장하는 사물인터넷 통신 시스템.
19. The method of claim 18,
The IoT device is
Sends a dynamic address allocation request signal to the gatekeeper with an identification name assigned,
The gatekeeper is
An IoT communication system for generating matching entry information including a matching number, a real IP address, and a virtual IP address, allocating the matching entry information to the corresponding IoT device, and storing the allocated matching entry information in the form of an address mapping table.
제20항에 있어서,
송신측에 해당하는 제1 사물인터넷 장치가 제1 서브 네트워크에 접속되어 있고, 수신측에 해당하는 제2 사물인터넷 장치가 제2 서브 네트워크에 접속되어 있는 상태에서,
상기 제1 사물인터넷 장치가 상기 인터넷 서버로 상기 제2 사물인터넷 장치의 IP주소에 관한 질의하면,
상기 인터넷 서버는,
복수의 소속 서버 중에서 상위네임 서버에 제2 사물인터넷 장치의 IP주소에 관한 질의를 전달하고, 상기 상위네임 서버에 DNS 쿼리의 결과가 없으면 상기 상위네임 서버는 하위네임 서버의 IP주소를 제1 사물인터넷 장치에 전달하여 질의 및 응답을 계속적으로 수행하는 사물인터넷 통신 시스템.
21. The method of claim 20,
In a state where the first IoT device corresponding to the transmitting side is connected to the first sub-network and the second IoT device corresponding to the receiving side is connected to the second sub-network,
When the first IoT device queries the Internet server about the IP address of the second IoT device,
The internet server is
A query regarding the IP address of the second IoT device is transmitted to the upper-level name server among the plurality of affiliated servers, and if there is no DNS query result in the upper-level name server, the upper-level name server returns the IP address of the lower-level name server to the first thing An Internet of Things (IoT) communication system that continuously performs queries and responses by sending it to Internet devices.
제21항에 있어서,
상기 소속 서버는,
자신의 데이터베이스에 등록된 상기 매칭 엔트리 정보를 이용하여 제2 사물인터넷 장치의 가상 IP주소를 추출하고, 추출된 가상 IP주소를 제1 사물인터넷 장치에게 DNS reply 형식으로 전달하는 사물인터넷 통신 시스템.
22. The method of claim 21,
The affiliated server is
An IoT communication system that extracts a virtual IP address of a second IoT device using the matching entry information registered in its own database, and delivers the extracted virtual IP address to the first IoT device in a DNS reply format.
제21항에 있어서,
상기 패킷에 포함된 헤더는
송신측에 해당하는 상기 제1 사물인터넷 장치의 IP 주소, 수신측에 해당하는 제2 사물인터넷 장치의 IP 주소, 제1 사물인터넷 장치의 매칭번호 및 제2 사물인터넷 장치의 매칭번호를 포함하는 사물인터넷 통신 시스템.
22. The method of claim 21,
The header included in the packet is
A thing including the IP address of the first IoT device corresponding to the transmitting side, the IP address of the second IoT device corresponding to the receiving side, the matching number of the first IoT device, and the matching number of the second IoT device Internet communication system.
제23항에 있어서,
상기 제1 사물인터넷 장치가 상기 제2 사물인터넷 장치에게 데이터를 요청하는 패킷을 전송하면,
상기 제1 서브 네트워크에 포함된 제1 게이트키퍼는,
상기 저장된 주소 매칭 테이블을 이용하여 상기 패킷의 헤더에 포함된 제1 사물인터넷 장치의 실재 IP 주소를 가상 IP 주소로 변경하고, 변경된 헤더가 포함된 패킷을 상기 제2 서브 네트워크에 포함된 제2 게이트키퍼에 전송하는 사물인터넷 통신 시스템.
24. The method of claim 23,
When the first IoT device transmits a data request packet to the second IoT device,
A first gatekeeper included in the first subnetwork,
The real IP address of the first IoT device included in the header of the packet is changed to a virtual IP address using the stored address matching table, and the packet including the changed header is converted to a second gate included in the second subnetwork. Internet of Things communication system that transmits to the keeper.
제24항에 있어서,
상기 제2 게이트키퍼는,
상기 패킷의 헤더에 포함된 제1 사물인터넷 장치의 식별명칭과 가상IP주소를 검증하여 데이터를 요청하는 패킷에 대한 수락여부를 결정하고,
수락할 경우에는 상기 주소 매칭 테이블을 이용하여 제2 사물인터넷 장치의 가상 IP 주소를 실재 IP 주소로 변경하고, 변경된 헤더가 포함된 패킷을 상기 제2 사물인터넷 장치에 전달하는 사물인터넷 통신 시스템.
25. The method of claim 24,
the second gatekeeper,
determining whether to accept the data request packet by verifying the identification name and virtual IP address of the first IoT device included in the header of the packet;
In the case of acceptance, the IoT communication system changes the virtual IP address of the second IoT device to an actual IP address using the address matching table, and transmits a packet including the changed header to the second IoT device.
제25항에 있어서,
상기 제2 사물인터넷 장치는,
상기 제1 사물인터넷 장치로부터 요청된 패킷을 생성하고, 생성된 패킷을 제2 게이트키퍼를 통해 상기 제1 사물인터넷 장치로 전달하는 사물인터넷 통신 시스템.
26. The method of claim 25,
The second IoT device,
An IoT communication system that generates a packet requested from the first IoT device and transmits the generated packet to the first IoT device through a second gatekeeper.
KR1020200021020A 2020-02-20 2020-02-20 Internet of Things Communication System with Packet Safety Verification KR102307030B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200021020A KR102307030B1 (en) 2020-02-20 2020-02-20 Internet of Things Communication System with Packet Safety Verification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200021020A KR102307030B1 (en) 2020-02-20 2020-02-20 Internet of Things Communication System with Packet Safety Verification

Publications (3)

Publication Number Publication Date
KR20210106185A KR20210106185A (en) 2021-08-30
KR102307030B1 true KR102307030B1 (en) 2021-09-30
KR102307030B9 KR102307030B9 (en) 2022-05-10

Family

ID=77502143

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200021020A KR102307030B1 (en) 2020-02-20 2020-02-20 Internet of Things Communication System with Packet Safety Verification

Country Status (1)

Country Link
KR (1) KR102307030B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009135697A (en) 2007-11-29 2009-06-18 Mitsubishi Electric Corp Ip packet repeating method in communications network, and gateway device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102169302B1 (en) * 2014-04-30 2020-10-23 삼성전자주식회사 A method, a terminal and a server for providing communication service

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009135697A (en) 2007-11-29 2009-06-18 Mitsubishi Electric Corp Ip packet repeating method in communications network, and gateway device

Also Published As

Publication number Publication date
KR102307030B9 (en) 2022-05-10
KR20210106185A (en) 2021-08-30

Similar Documents

Publication Publication Date Title
CN109981803B (en) Service request processing method and device
US10277554B2 (en) Transparent proxy authentication via DNS processing
US10009271B2 (en) Routing method and network transmission apparatus
US5884024A (en) Secure DHCP server
US9807050B2 (en) Protocol addressing for client and destination identification across computer networks
US8930573B2 (en) Computer networks with unique identification
KR100485801B1 (en) Network connecting apparatus and method for offering direct connection between network devices existing different private networks
CN1954576B (en) Technique device and system for handling initiation requests
KR100908320B1 (en) Method for protecting and searching host in internet protocol version 6 network
US20090106453A1 (en) Domain name system using dynamic dns and global address management method for dynamic dns server
JP2003289340A (en) Identifier inquiry method, communication terminal and network system
JP4077351B2 (en) Name / address converter
KR100738535B1 (en) Authentication system in dstm communication network and method using the same
CN108337257B (en) Authentication-free access method and gateway equipment
CN100525318C (en) Improved method for assigning network identifiers using interface identifiers
KR102293195B1 (en) IoT security system according to network hierarchy structure
CN101410817A (en) Usage of automatic configuration name space of automatic protocol proxy
CN110445889B (en) Method and system for managing IP address of switch under Ethernet environment
Akashi et al. Classification of DHCP spoofing and effectiveness of DHCP snooping
CN102025769A (en) Access method of distributed internet
US20060159087A1 (en) Method for identifying personal information on a network
US20100023620A1 (en) Access controller
KR102307030B1 (en) Internet of Things Communication System with Packet Safety Verification
CN108696506B (en) Method, medium, and system for establishing connection between client and terminal device
RU2706866C1 (en) Methods, devices, computer-readable media and systems for establishing certified connections with terminals in a local network

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
G170 Re-publication after modification of scope of protection [patent]