KR101913013B1 - Gs1 코드 기반 사물 정보 검색 서비스 시스템 및 그 방법 - Google Patents

Gs1 코드 기반 사물 정보 검색 서비스 시스템 및 그 방법 Download PDF

Info

Publication number
KR101913013B1
KR101913013B1 KR1020160175382A KR20160175382A KR101913013B1 KR 101913013 B1 KR101913013 B1 KR 101913013B1 KR 1020160175382 A KR1020160175382 A KR 1020160175382A KR 20160175382 A KR20160175382 A KR 20160175382A KR 101913013 B1 KR101913013 B1 KR 101913013B1
Authority
KR
South Korea
Prior art keywords
information
service
identification code
space
time
Prior art date
Application number
KR1020160175382A
Other languages
English (en)
Other versions
KR20180072899A (ko
Inventor
김대영
권기웅
김동수
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020160175382A priority Critical patent/KR101913013B1/ko
Publication of KR20180072899A publication Critical patent/KR20180072899A/ko
Application granted granted Critical
Publication of KR101913013B1 publication Critical patent/KR101913013B1/ko

Links

Images

Classifications

    • G06F17/30861
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/30Managing network names, e.g. use of aliases or nicknames
    • H04L61/3015Name registration, generation or assignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

GS1 코드 기반 사물 정보 검색 서비스 시스템 및 그 방법이 개시된다. 일 실시예에 따른 적어도 하나의 사물에 대한 사물 이벤트가 캡쳐됨에 따라, 상기 사물과 연관된 식별 코드 정보 및 사물 시공간 정보를 수신하는 단계; 상기 사물의 시공간 정보를 상기 사물에 대한 사물 정보 검색 서비스와 연관된 데이터베이스에 저장하는 단계; 및 상기 사물 정보 검색 서비스에 대한 요청에 따라, 상기 시공간 정보와 연관된 상기 사물에 대한 서비스를 제공하는 단계를 포함할 수 있다.

Description

GS1 코드 기반 사물 정보 검색 서비스 시스템 및 그 방법{SYSTEM AND METHOD FOR GS1 BASED THING INFORMATION SEARCHING SERVICE}
아래의 설명은 사물인터넷(internet of things: IoT)에서 GS1 코드를 사물 식별자로 이용하여 다양한 사물이 생산해내는 막대한 양의 정보를 전역에 걸쳐 신속하고 안전하게 검색하는 기술에 관한 것이다.
사물 인터넷의 발전으로 인해 다양한 사물들로부터 막대한 양의 센서데이터가 생산되고 있으며 생산된 데이터는 사용 목적에 따라 전역적으로 분산되어 지정된 저장소에 저장되고 있다.
최근에는 저장소의 막대한양의 데이터를 분석함으로써 의미 있는 정보들이 새롭게 추출되고 있으며 추출된 정보는 다양한 사물 인터넷 응용(예를 들면, 헬스케어, 스마트카, 딥러닝)에서 유용하게 이용되고 있다.
분산된 저장소로부터 간접적으로 혹은 사물로부터 직접적으로 데이터를 얻어 의미 있는 정보를 추출하기 위해서는 사용자가 저장소 혹은 사물의 논리적 위치 정보(예를 들면, IP 주소, URL)를 미리 알아야 하는 전제가 필요하다.
그러나 이기종의 저장소 혹은 개개 사물의 논리적 위치 정보를 사용자 개인이 미리 알고 있는 것은 현실적으로 불가능하기 때문에 개인 사용자를 대신하여 원하는 사물의 정보를 전역에 걸쳐 검색할 수 있는 사물 정보 검색 서비스의 개발이 필요하다.
한국공개특허 제10-2015-0088624호(공개일 2015년 08월 03일)에는 사물 검색 브라우저 기반 스마트 디바이스 및 이를 이용한 사물 매쉬업 방법이 개시되었다. 그러나 종래의 기술은 스마트 디바이스 주변에 사물이 존재할 경우에만 사물 검색 서비스가 가능하고 사물과의 직접적인 연결을 통해 실시간 데이터만 얻을 수 있어 과거의 막대한 양의 데이터를 분석하고 새로운 의미를 추출하는 응용에서 사용하는데 한계가 있다.
본 발명이 이루고자 하는 기술적 과제는 사물에 부착된 GS1 코드를 이용하여 사물이 생산하는 데이터에 접근할 수 있는 저장소 및 사물의 논리적 위치 정보, 즉 IP 주소 또는 URL을 사물의 시공간 정보 기반 질의를 통해 전역에 걸쳐 신속하고 안전하게 검색해주는 시스템을 제공하는 데 있다.
일 실시예에 따르면, 사물 정보 검색 서비스 제공 방법은, 적어도 하나의 사물에 대한 사물 이벤트가 캡쳐됨에 따라, 상기 사물과 연관된 식별 코드 정보 및 사물 시공간 정보를 수신하는 단계; 상기 사물의 시공간 정보를 상기 사물에 대한 사물 정보 검색 서비스와 연관된 데이터베이스에 저장하는 단계; 및 상기 사물 정보 검색 서비스에 대한 요청에 따라, 상기 시공간 정보와 연관된 상기 사물에 대한 서비스를 제공하는 단계를 포함할 수 있다.
상기 식별 코드 정보는 상기 사물과 연관된 GS1 코드를 포함할 수 있다.
상기 사물 시공간 정보를 수신하는 단계는, 상기 사물 이벤트를 무선 통신을 사용하여 사물 게이트웨이를 통해 캡쳐하는 단계; 상기 캡쳐된 사물 이벤트로부터 상기 식별 코드 정보를 추출하는 단계; 및 상기 사물 이벤트로부터 추출된 상기 사물과 연관된 시간 정보 및 위치 정보를 획득하거나, 상기 사물 게이트웨이와 연관된 시간 정보 및 위치 정보를 획득하고, 획득된 시간 정보 및 위치 정보를 상기 사물 시공간 정보로서 수신하는 단계를 포함할 수 있다.
상기 사물에 대한 서비스를 제공하는 단계는, 상기 게이트웨이를 통해, 상기 식별 코드 정보를 사용하여 오브젝트 네임 서비스(Object Name Service; ONS) 서버에 상기 식별 코드 정보와 연관된 사물 정보 검색 서비스에 대한 서비스 리스트를 요청하는 단계; 상기 리스트에 대한 요청에 기반하여 상기 ONS 서버로부터 상기 서비스 리스트를 수신하는 단계; 및 상기 서비스 리스트에 포함된 적어도 하나의 서비스 중 선택된 서비스를, 상기 시공간 정보와 연관된 상기 사물에 대한 서비스로서 제공하는 단계를 포함할 수 있다.
상기 사물 시공간 정보를 수신하는 단계는, 상기 사물 이벤트를 무선 통신을 사용하여 사물 게이트웨이를 통해 캡쳐하는 단계; 상기 캡쳐된 사물 이벤트로부터 식별 코드 정보를 추출하는 단계; 및 상기 사물 이벤트로부터 추출된 상기 사물과 연관된 시간 정보 및 위치 정보를 획득하거나, 상기 데이터 저장소와 연관된 시간 정보 및 위치 정보를 획득하고, 획득된 시간 정보 및 위치 정보를 상기 사물 시공간 정보로서 수신하는 단계를 포함할 수 있다.
상기 사물에 대한 서비스를 제공하는 단계는, 상기 데이터 저장소를 통해, 상기 식별 코드 정보를 사용하여 오브젝트 네임 서비스(Object Name Service; ONS) 서버에 상기 식별 코드 정보와 연관된 사물 정보 검색 서비스에 대한 서비스 리스트를 요청하는 단계; 상기 리스트에 대한 요청에 기반하여 상기 ONS 서버로부터 상기 서비스 리스트를 수신하는 단계; 및 상기 서비스 리스트에 포함된 적어도 하나의 서비스 중 선택된 서비스를, 상기 시공간 정보와 연관된 상기 사물에 대한 서비스로서 제공하는 단계를 포함할 수 있다.
상기 사물 시공간 정보는 상기 사물 이벤트를 캡쳐한 시간 정보 및 상기 사물과 연관된 논리적 위치 또는 물리적 위치에 대한 정보를 포함하고, 상기 사물과 연관된 논리적 위치는 상기 사물, 상기 사물 게이트웨이 또는 상기 데이터 저장소의 IP 주소 또는 URL을 포함하고, 상기 사물과 연관된 물리적 위치는 상기 사물, 상기 사물 게이트웨이 또는 상기 데이터 저장소의 GPS 정보 또는 국제 위치 식별 코드(Global Location Number; GLN) 정보를 포함할 수 있다.
상기 데이터베이스에 저장하는 단계는, 상기 식별 코드 정보 및 상기 사물 시공간 정보를 전송한 주체의 식별 정보에 기초하여 상기 주체를 인증하고 상기 인증의 결과에 따라 상기 식별 코드 정보 및 상기 사물 시공간 정보를 상기 데이터베이스에 저장하는 단계를 포함할 수 있다.
상기 주체의 인증과 연관된 정보를 캐시 메모리에 저장하는 단계를 포함하고, 상기 주체의 인증은 상기 캐시 메모리에 저장된 정보를 사용하여 수행될 수 있다.
상기 데이터베이스에 저장하는 단계는, 상기 수신된 사물 시공간 정보의 최신성을 판단하는 단계; 상기 수신된 사물 시공간 정보의 최신의 것으로 인정된 때, 상기 수신된 사물 시공간 정보로 상기 데이터베이스에 기 저장된 사물 시공간 정보를 갱신하는 단계; 및 상기 기 저장된 사물 시공간 정보를 누적 데이터베이스로 전달하여 저장하는 단계를 포함할 수 있다.
상기 사물에 대한 서비스는 상기 사물에 대한 디스커버리 서비스일 수 있다.
상기 사물에 대한 서비스는 상기 사물에 대한 위치 기반 검색 서비스, 식별 코드 기반 검색 서비스 및 상기 사물과 연관된 시간 검색 서비스 중 적어도 하나를 포함할 수 있다.
상기 사물에 대한 서비스는 사용자 단말에 제공되고, 상기 사용자 단말로부터의 요청에 따라, 상기 사용자 단말의 상기 사물과 연관된 데이터에 대한 직접 접근을 허용하기 위해 사용되는, 상기 사물과 연관된 논리적 위치에 대한 정보 및 상기 직접 접근을 위해 사용되는 프로토콜 정보 중 적어도 하나를 제공하는 단계를 더 포함할 수 있다.
상기 사물 이벤트는 상기 사물과 연관된 식별 코드 정보 및 적어도 하나의 센서로부터 측정된 상기 사물과 관련된 데이터를 포함할 수 있다.
사물 정보 검색 서비스 제공 시스템은 적어도 하나의 사물에 대한 사물 이벤트가 캡쳐됨에 따라, 상기 사물과 연관된 식별 코드 정보 및 사물 시공간 정보를 수신하고, 상기 시공간 정보와 연관된 상기 사물에 대한 서비스를 제공하는 인터페이스 모듈; 상기 사물과 연관된 식별 코드 정보 및 상기 사물의 시공간 정보를 전송한 주체의 식별 정보에 기초하여 상기 주체를 인증하는 접근제어 모듈; 및 상기 인증의 결과에 따라 상기 식별 코드 정보 및 상기 사물의 시공간 정보를 저장하고, 정보 검색 서비스에 대한 요청에 따라, 상기 시공간 정보와 연관된 상기 사물에 대한 서비스를 검색하는 주 저장소를 포함할 수 있다.
상기 사물 정보 검색 서비스 제공 시스템은, 상기 주체의 인증과 연관된 정보를 캐시 메모리에 저장하고, 상기 캐시 메모리에 저장된 정보를 사용하여 주체의 인증을 수행하도록 제공하는 캐시 모듈을 더 포함할 수 있다.
일 실시예에 따르면, 사물의 유일한 식별 코드 정보인 GS1 코드를 이용하여 해당 사물의 시공간 정보 검색을 통해 사물의 막대한 양의 센서 데이터를 이용해 새로운 정보를 추출할 수 있으며, 이를 새로운 응용에 이용하려 하는 연구자 및 사용자들에게 데이터 소스를 제공할 수도 있다. 또한, 사용자 단말 주변에 존재하는 사물뿐만 아니라 전역으로 멀리 떨어진 지역에 있는 사물의 정보를 검색할 수 있어 다양한 위치 기반 서비스 응용에 사용될 수 있다.
일 실시예에 따르면, 사물의 정보를 보호하기 위해 사람과 사물간 접근 제어 관계를 사물의 서비스 단계까지 세분화하여 정의함으로써 사물 인터넷을 위한 보편적인 접근 제어 방법으로 이용될 수 있고, 그래프 기반 DB를 이용함으로써 사람과 사물간의 관계를 시각화하여 보다 쉽게 사람과 사물간의 관계를 정의하는데 도움을 줄 수 있다.
일 실시예에 따르면, 주 저장소와 캐시를 분리하여 재사용될 가능성이 큰 사물 정보를 용량이 작고 빠른 메모리 기반의 캐시에 저장하고, 원본 사물 정보를 상대적으로 용량이 큰 하드 디스크 기반의 주 저장소에 저장함으로써 주 저장소만 사용할 때 보다 사물 정보 검색에 대해 신속하게 응답할 수 있다.
도 1은 일 실시예에 있어서, 사물 이벤트에서 추출한 사물의 시공간 정보를 검색된 사물 정보 검색 서비스 제공 시스템에 저장하는 방법을 설명하기 위한 도면이다.
도 2는 일 실시예에 있어서, 사용자 단말이 시공간 정보를 이용해 사물의 데이터를 획득하는 방법을 설명하기 위한 도면이다.
도 3은 일 실시예에 있어서, 사물의 시공간 정보가 정보 검색 서비스 제공 시스템에 저장될 때 사물, 사물 게이트웨이, 저장소, ONS 서버, 사물 정보 검색 서비스 제공 시스템 간의 통신을 과정을 설명하기 위한 흐름도이다.
도 4는 일 실시예에 있어서, 사용자 단말이 사물의 데이터에 접근하려고 할 때 사물, 사용자 단말, ONS 서버, 사물 정보 검색 서비스 제공 시스템, 저장소 간의 통신 과정을 설명하기 위한 흐름도이다.
도 5는 일 실시예에 있어서, 사물의 시공간 정보를 정보 검색 서비스 제공 시스템에 저장하기 위하여 사물의 저장소 존재 여부에 따라 사물 이벤트를 저장소 혹은 사물에 전달하는 방법을 설명하기 위한 흐름도이다.
도 6은 일 실시예에 있어서, 주체의 인증 및 권한 여부에 따라 사물의 시공간 정보를 사물 정보 검색 서비스 제공 시스템에 저장하는 방법을 설명하기 위한 흐름도이다.
도 7은 일 실시예에 있어서, 주체의 인증 및 권한 여부에 기초하여 사물의 시공간 정보를 검색하는 방법을 설명하기 위한 흐름도이다.
도 8 은 일 실시예에 있어서, 사용자 단말이 사물 정보 검색 서비스 제공 시스템으로부터 획득한 사물의 논리적 위치 정보를 이용하여 사물과 데이터 통신을 시도할 때 사물이 지원하는 통신 프로토콜 보유 여부에 따라 사용자 단말과 사물간의 직접 통신을 수행하는 방법을 설명하기 위한 흐름도이다.
도 9 는 일 실시예에 따른 사물 정보 검색 서비스 제공 시스템의 구성을 설명하기 위한 블록도이다.
도 10 은 일 실시예에 따른 사물 정보 검색 서비스 제공 시스템의 접근제어 모듈에서 객체간 관계 및 접근 제어 모델의 예를 설명하기 위한 도면이다.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
도 1은 일 실시예에 있어서, 사물 이벤트에서 추출한 사물의 시공간 정보를 검색된 사물 정보 검색 서비스 제공 시스템에 저장하는 방법을 설명하기 위한 도면이다.
도 1에서는 사물(100)에 의해 생성된 사물 이벤트를 사물 게이트웨이(200)가 캡쳐하고, 캡쳐된 사물 이벤트로부터 추출된 사물의 식별 코드 정보를 오브젝트 네임 서비스(Object Name Service; ONS) 서버(300)로 전달하고, ONS 서버(300)로부터 수신된 사물의 식별 코드 정보와 연관된 서비스 리스트 중 정보 검색 서비스(500)의 IP 주소 또는 URL 을 획득하고, 사물에 대한 이벤트 저장을 위한 저장소(400)를 통해 혹은 사물 게이트웨이(200)가 직접 사물의 시공간 정보를 해당 사물 정보 검색 서비스 제공 시스템(500)에 저장하는 방법을 기재하고 있다.
사물(100)은 GS1 코드를 식별 코드 정보로서 포함하는 디바이스가 사물로서 사용될 수 있다.
사물(100)은 제조 과정에서 GS1 코드가 삽입되어 자신의 식별 코드 정보를 광고하는 경우를 제외하고, 무선 통신이 가능한, 예를 들면, BLE 스티커 및 RFID 태그에 식별 코드 정보를 입력하여 사물에 부착한 후 광고할 수 있다.
사물(100)에서 발생하는 사물 이벤트는 식별 코드 정보가 필수적으로 포함되어야 하며 추가적으로 센서 데이터가 더 포함될 수 있다.
사물 게이트웨이(200)는 사물 게이트웨이의 위치 정보를 포함하고 사물에 부착된 BLE 스티커 및 RFID 태그 정보를 읽을 수 있는 BLE 게이트웨이 및 RFID 리더가 사물 게이트웨이(200)로서 사용될 수 있다.
사물 게이트웨이(200)의 위치 정보는 논리적 위치 정보(즉, IP 주소 또는 URL)와 물리적 위치 정보(즉, 국제 위치 식별 코드(Global Location Number(GLN) 정보 또는 GPS 정보)를 포함할 수 있다.
사물 게이트웨이(200)는 사물(100)로부터 생성된 사물 이벤트를 캡쳐할 수 있고, 사물 이벤트에 사물(100)이 캡처된 시간 정보 및 사물 게이트웨이(200)의 위치 정보를 추가할 수 있다.
사물 게이트웨이(200)는 위치 정보가 추가된 사물 이벤트를 저장소(400)에 전달하거나 사물 이벤트를 저장할 저장소(400)가 지정되지 않았다면 사물 게이트웨이(200)가 직접 ONS 서버(300)에 사물 정보 검색 서비스에 대한 서비스 리스트를 요청하고, ONS 서버(300)로부터 서비스 리스트를 응답 받음으로써 사물(100)과 연관된 시공간 정보를 사물 정보 검색 서비스 제공 시스템(500)에 저장할 수 있다. 이때, 사물 정보 검색 서비스 제공 시스템(500)과 연관된 데이터베이스에 사물의 시공간 정보를 저장할 수 있다.
ONS 서버(300)는 사물의 식별 코드 정보와 연관된 서비스 리스트를 검색하고, 사물의 시공간 정보를 저장하고 있는 사물 정보 검색 서비스 제공 시스템(500)으로부터 시공간 정보와 연관된 사물에 대한 서비스를 추출하기 위해 요구되는 정보를 사물 게이트웨이(200) 또는 저장소(400)에 전달할 수 있다.
저장소(400)는 사물(100)로부터 발생한 사물 이벤트를 저장하고, 추후에 주체(예를 들면, 사용자 단말 등의 클라이언트)에 사물의 과거 데이터를 제공할 수 있다.
저장소(400)가 사물 이벤트를 전달받을 경우, ONS 서버(300)를 통해 사물과 연관된 사물 검색 서비스(500)를 검색하고, 사물 이벤트에서 시공간 정보를 추출한 후, 추출된 시공간 정보를 사물에 대한 사물 정보 검색 서비스 제공 시스템(500)에 저장할 수 있다.
사물 정보 검색 서비스 제공 시스템(500)은 사물 게이트웨이(200) 또는 저장소(400)로부터 획득된 사물의 시공간 정보를 저장할 때, 저장을 요청한 주체에 대해 인증 및 접근 권한을 식별할 수 있다. 사물 정보 검색 서비스 제공 시스템(500)은 인증이 완료된 주체에 대한 접근 권한을 식별한 후, 해당 정보(예를 들면, 사물, 게이트웨이, 사용자 단말, 저장소의 물리적 위치 정보, 논리적 위치 정보 등)를 사물 정보 검색 서비스 제공 시스템(500)의 데이터 베이스(Data Base; DB)에 저장할 수 있다.
실시예들에서는, 사물(100)의 식별 코드 정보로서 GS1 코드를 사용하고, GS1 코드는 직렬화된 국제 거래 단품 식별코드(Serialized Global Trade Item Number; SGTIN)가 사용될 수 있고 SGTIN은 사물을 인스턴스(Instance)별로 구별할 수 있다. SGTIN 에서 시리얼 번호를 생략함으로써 국제 거래 단품 식별코드(Global Trad Item Number; GTIN) 생성할 수 있고 GTIN은 사물을 클래스(Class)별로 구별할 수 있다. 예컨대, 동일한 타입의 복수 개의 상품의 경우 동일한 상품 클래스에 속하므로 같은 GTIN을 가질 수 있지만 서로 다른 인스턴스이기 때문에 다른 SGTIN 을 가질 수 있다.
ONS 서버(300)는 사물(100)의 식별 코드 정보인 SGTIN 에서 추출된 GTIN에 대응하여 사물(100)의 클래스(Class)별 정보인 사물(100)의 서비스 리스트를 제공할 수 있다. ONS 서버(300)는 ONS를 제공하는 서버, 기타 장치 또는 설비일 수 있다.
사물(100)의 식별 코드 정보에 대응될 수 있는 GS1 Element String(GS1ES)가 ONS 질의(예컨대, FQDN(Fully Qualified Domain Name))로 변환되어 ONS 서버(300)로 전달되고, ONS 서버(300)는 GS1 아이디와 연관된 서비스 리스트를 사물 게이트웨이(200) 또는 저장소(400)로 제공할 수 있다. 말하자면, ONS 서버(300)를 통해, 사물 게이트웨이(200) 또는 저장소(400)는 사물의 식별 코드 정보와 연관된 사물 정보 검색 서비스에 대한 서비스 리스트를 획득할 수 있고, 서비스 리스트를 통해 사물(100)과 연관된 사물 정보 검색 서비스 제공 시스템(500)에 접근할 수 있다.
ONS 서버(300)에 의해 수신된 서비스 목록은 NAPTR(Name Authority Pointer) 타입의 레코드를 포함할 수 있다.
사물(100), 사물 게이트웨이(200), ONS 서버(300), 저장소(400), 사물 정보 검색 서비스 제공 시스템(500) 간의 통신 방법에 대해서는 후술될 도 3를 참조하여 더 자세하게 설명된다.
도 2는 일 실시예에 있어서, 사용자 단말이 시공간 정보를 이용해 사물의 데이터를 획득하는 방법을 설명하기 위한 도면이다.
도 2에서는 사물(100)로부터 식별 코드 정보에 대한 정보를 획득한 사용자 단말(600)이 ONS 서버(300)를 통해 사물(100)과 연관된 해당 사물 정보 검색 서비스 제공 시스템(500)을 탐색하여 사물(100)의 시공간 정보를 검색하여 획득하고, 시공간 정보를 기반으로 사물의 과거 정보를 포함하는 저장소(400)와 실시간 정보를 포함하는 사물(100)에 접근하여 데이터를 획득하는 방법을 기재하고 있다.
사용자 단말(600)은 인터넷에 연결될 수 있으며, 예를 들면, BLE 스티커 및 RFID 태그를 읽을 수 있는 모든 디바이스가 사용자 단말로서 사용될 수 있다.
사용자 단말(600)은 사물(100)로부터 식별 코드 정보를 인식할 수 있다. 사용자 단말(600)은 식별 코드 정보와 연관된 사물 정보 검색 서비스 정보를 획득하기 위하여, ONS 서버(300)에 식별 코드 정보에 기초하여 연관된 서비스 리스트를 요청할 수 있다.
ONS서버(300)는 수신된 식별 코드 정보와 연관된 서비스를 검색하여, 사물(100)과 연관된 사물 정보 검색 서비스에 대한 서비스 리스트를 사용자 단말(600)로 전달할 수 있다.
사용자 단말(600)은 ONS 서버(300)로부터 제공된 식별 코드 정보와 연관된 서비스 리스트에서 사물 정보 검색 서비스 제공 시스템(500)의 정보(예컨대, IP 주소 또는 URL)를 추출하여 사물 정보 검색 서비스 제공 시스템(500)에 사물(100)의 시공간 정보를 요청할 수 있다. 예를 들면, 사용자 단말(600)은 사물 정보 검색 서비스 제공 시스템(500)을 통해 사물(100)의 최신 시공간 정보, 시간 범위 내 시공간 정보, 특정 위치 범위 내 시공간 정보에 대한 질의를 요청할 수 있다.
사물 정보 검색 서비스 제공 시스템(500)은 사용자 단말의 요청에 따라 사물(100)의 시공간 정보를 검색하여 사용자 단말(600)로 전달할 수 있다. 다시 말해서, 사물 정보 검색 서비스 제공 시스템(500)은 시공간 정보와 연관된 사물에 대한 서비스를 사용자 단말(600)로 전달할 수 있다. 이때, 사물에 대한 서비스는 사물에 대한 디스커버리 서비스일 수 있으며, 예를 들면, 사물에 대한 위치 기반 검색 서비스, 식별 코드 기반 검색 서비스 및 사물과 연관된 시간 검색 서비스 중 적어도 하나를 포함할 수 있다.
사용자 단말(600)은 시공간 정보를 이용하여 사물(100)의 과거 정보를 포함하는 저장소(400) 또는 실시간 정보를 포함하는 사물(100)에 접근하여 원하는 데이터를 획득할 수 있다.
사물(100), ONS 서버(300), 저장소(400), 사물 정보 검색 서비스 제공 시스템(500), 사용자 단말(600) 간의 통신 방법에 대해서는 후술될 도 4를 참조하여 더 자세하게 설명된다.
도 3은 일 실시예에 있어서, 사물의 시공간 정보가 정보 검색 서비스 제공 시스템에 저장 될 때 사물, 사물 게이트웨이, 저장소, ONS 서버, 사물 정보 검색 서비스 제공 시스템 간의 통신을 과정을 설명하기 위한 흐름도이다.
도 3에서는 전술된 사물(100), 사물 게이트웨이(200), ONS 서버(300), 저장소(400), 사물 정보 검색 서비스 제공 시스템(500) 간의 통신 방법이 구체적으로 설명된다.
단계(705)에서 사물(100)에서 사물 이벤트가 생성될 수 있다. 이때, 사물 이벤트는 사물(100)의 식별 코드 정보, 위치 정보, 센서 데이터를 포함할 수 있으며, 식별 코드 정보는 필수로 포함되어야 하고, 나머지 정보는 포함되거나 포함되지 않을 수 있다. 위치 정보는 사물의 논리적 위치 정보와 논리적 위치 정보를 포함할 수 있다.
단계(710)에서 게이트웨이(200)는 사물로부터 생성된 사물 이벤트를 무선 통신을 사용하여 캡쳐할 수 있다. 예를 들면, 사물 이벤트가 BLE 또는 RFID통신을 통해 사물 게이트웨이(200)에 의해 캡쳐될 수 있다. 사물(100)은 BLE 또는 RFID 통신을 통해 식별 코드 정보를 광고할 수 있고, BLE 또는 RFID 통신 프로토콜을 지원하지 않을 경우 BLE 스티커 또는 RFID 태그에 식별 코드 정보를 입력하고 식별 코드 정보가 입력된 스티커 또는 태그 사물(100)에 부착함으로써 식별 코드 정보를 광고할 수 있다.
단계(715)에서 캡쳐된 사물 이벤트에 대하여 사물 이벤트를 캡쳐한 시간 정보, 사물(100)의 위치 정보(예를 들면, 사물과 연관된 논리적 위치 또는 물리적 위치)를 추가할 수 있다. 사물 이벤트에 사물(100)의 위치 정보가 누락되었을 경우 사물(100)의 위치 정보를 대략적으로 파악할 수 있도록 사물 게이트웨이(200)의 위치 정보를 추가할 수 있고, 사물 이벤트에서 위치 정보가 포함되어 있을 경우 위치 정보를 추가하는 것을 생략할 수도 있다.
단계(720)에서 사물 이벤트를 저장할 지정된 저장소(400)가 존재할 경우, 사물 게이트웨이(200)는 사물 이벤트를 저장소(400)로 전달될 수 있다. 예컨대, 정보를 저장할 목적으로 만들어진 사물(100)의 경우 사물 이벤트를 저장하기로 지정된 저장소(400)가 존재할 수 있다.
단계(725)에서 사물 이벤트로부터 사물(100)의 식별 코드 정보인 SGTIN을 추출할 수 있고, SGTIN 으로부터 시리얼 번호를 제거함으로써 GTIN 을 추출할 수 있다.
단계(730)에서 추출한 사물(100)의 GTIN 은 최초에 응용 유일 문자열(Application Unique String; AUS)로 변환된 후 ONS 서버(300)가 인식할 수 있는ONS 질의(Fully Qualified Domain Name; FQDN)로 변환될 수 있다. GTIN 을 ONS 질의로 변환하기 위해 태그 데이터 변환(Tag Data Translation; TDT)표준을 따를 수 있고, 저장소(400)가 태그 데이터 변환을 지원할 경우, 저장소(400)가 직접 변환을 실행할 수 있지만 저장소(400)가 태그 데이터의 변환을 지원하지 않을 경우, 외부 서버가 대신 실행 할 수 있다.
단계(735)에서 변환된 ONS 질의는 ONS 인프라를 통해 사물(100)의 GTIN 과 연관된 ONS 서버(300)에 전달되고 ONS 서버(300)에서 식별 코드 정보와 연관된 사물 점보 검색 서비스에 대한 서비스 리스트를 검색할 수 있다.
단계(740)에서 ONS 서버(300)에서 사물(100)의 서비스 리스트가 검색됨에 따라 서비스 리스트를 저장소(400)로 제공할 수 있다. 이때, 저장소(400)는 서비스 리스트가 재사용될 것을 예상하여 서비스 리스트를 캐싱할 수 있다. 캐싱을 할 경우 추후에, 사물(100)에 대한 서비스 리스트가 재요청되었을 때, 단계(730), 단계(735), 단계(740)이 생략될 수 있다.
단계(745)에서 저장소(400)는 서비스 리스트에 기초하여 사물 정보 검색 서비스 제공 시스템(500)의 정보(예컨대, IP 주소 또는 URL)를 추출할 수 있다. 서비스 리스트에서 사물 정보 검색 서비스 제공 시스템(500)의 정보를 식별하고 추출하기 위해 사물 정보 검색 서비스 제공 시스템(500)의 서비스 타입을 표준으로 정의할 수 있다.
단계(750)에서 저장소(400)는 사물(100)의 시공간 정보를 생성할 수 있다. 시공간 정보는 사물 이벤트를 캡쳐한 시간 정보 저장소(400)의 논리적 위치 정보, 사물(100)의 위치 정보를 포함할 수 있다.
단계(755)에서 저장소(400)에 의해 생성된 사물(100)의 시공간 정보는 ONS 서버(300)를 통해 탐색된 사물 정보 검색 서비스 제공 시스템(500)에 저장될 수 있다.
단계(760)에서 사물 이벤트를 저장하기로 한 저장소(400)가 존재하지 않을 경우, 사물 게이트웨이(200)가 단계(725), 단계(730), 단계(735), 단계(740), 단계(745)의 프로세스를 수행할 수 있다. 사물 게이트웨이(200)는 사물(100)의 SGTIN 과 GTIN 을 추출할 수 있다.
단계(765)에서 사물 게이트웨이(200)는 GTIN 을 ONS 질의로 변환할 수 있다.
단계(770)에서 사물 게이트웨이(200)는 ONS 질의를 통해 ONS 서버(300)에게 사물(100)의 서비스 리스트를 요청할 수 있다.
단계(775)에서 사물 게이트웨이(200)는 ONS 서버(300)으부터 사물(100)의 식별 코드 정보와 연관된 사물 정보 검색 서비스에 대한 서비스 리스트를 수신할 수 있다.
단계(780)에서 사물 게이트웨이(200)는 사물(100)의 서비스 리스트로부터 사물 정보 검색 서비스 제공 시스템의 정보를 추출할 수 있다.
단계(785)에서 사물 게이트웨이(200)는 사물(100)의 사물 이벤트로부터 시공간 정보를 추출할 수 있다. 이때, 시공간 정보는 단계(750)과 달리 사물 이벤트를 캡쳐한 시간, 사물(100)의 위치 정보를 포함할 수 있다.
단계(790)에서 사물 게이트웨이(200)에 의해 사물 이벤트로부터 추출된 사물(100)의 시공간 정보는 ONS 서버(300)를 통해 찾은 사물 정보 검색 서비스 제공 시스템(500)에 저장될 수 있다.
도 4는 일 실시예에 있어서, 사용자 단말이 사물의 데이터에 접근하려고 할 때 사물, 사용자 단말, ONS 서버, 사물 정보 검색 서비스 제공 시스템, 저장소 간의 통신 과정을 설명하기 위한 흐름도이다.
도 4에서는 전술된 사물(100), ONS 서버(300), 저장소(400), 사물 정보 검색 서비스 제공 시스템(500) 및 사용자 단말(600) 간의 통신 방법이 구체적으로 설명된다.
단계(805)에서 사물(100)은 식별 코드 정보를 광고할 수 있다. 이때, 식별 코드 정보는 사물(100)을 인스턴스 별로 구별할 수 있는 SGTIN 을 사용할 수 있다. 식별 코드 정보는 제조 과정에서 사물(100)에 삽입되어 식별 코드 정보를 자동으로 광고하는 경우를 제외하고 BLE 스티커 및 RFID 태그에 식별 코드 정보가 입력되어 사물에 부착된 후 광고될 수 있다.
단계(810)에서 사물(100)의 식별 코드 정보는 사용자 단말(600)의 BLE 또는 RFID 통신 모듈이 활성화 되었을 경우, 사용자 단말(600)에 전달될 수 있다. 예를 들면, 사용자 단말의 통신 모듈이 온(On)되어 있을 경우, 사물의 식별 코드 정보가 전달될 수 있다.
단계(815)에서 사물(100)의 식별 코드 정보인 SGTIN 을 기반으로 추출된GTIN 은 최초 응용 유일 문자열(Application Unique String; AUS)로 변환된 후 ONS 가 인식할 수 있는ONS 질의(Fully Qualified Domain Name; FQDN)로 변환될 수 있다. GTIN 을 ONS 질의로 변환하기 위해 태그 데이터 변환(Tag Data Translation; TDT)표준을 따를 수 있고 사용자 단말(600)이 태그 데이터 변환을 지원할 경우 사용자 단말(600)이 직접 변환을 실행할 수 있지만, 사용자 단말이 태그 데이터 변환을 지원하지 않는 경우, 외부 서버가 대신 태그 데이터의 변환을 실행 할 수 있다.
단계(820)에서 변환된 ONS 질의는 ONS 인프라를 통해 사물(100)의 GTIN 과 연관된 ONS 서버(300)에 전달될 수 있고, ONS 서버(300)는 사물(100)의 서비스 리스트를 검색할 수 있다.
단계(825)에서 ONS 서버(300)는 사물(100)과 연관된 서비스 리스트가 검색 됨에 따라 서비스 리스트를 사용자 단말(600)에게 제공할 수 있다. 이때, 사용자 단말(600)은 서비스 리스트가 재사용될 것을 예상하여 서비스 리스트를 캐싱할 수 있다. 이와 같이, 캐싱을 할 경우, 추후에 사물(100)에 대한 서비스 리스트가 재요청되었을 때, 단계(815), 단계(820), 단계(825)를 생략할 수 있다.
단계(830)에서 사용자 단말(600)은 서비스 리스트로부터 사물 정보 검색 서비스 제공 시스템(500)의 정보(예컨대, IP 주소 또는 URL)를 추출할 수 있다. 서비스 리스트에서 사물 정보 검색 서비스 제공 시스템(500)의 정보를 식별하고 추출하기 위하여 사물 정보 검색 서비스 제공 시스템(500)의 서비스 타입을 표준으로 정의할 수 있다.
단계(835)에서 사용자 단말(600)은 서비스 리스트로부터 추출한 사물 서비스 검색 서비스 제공 시스템(500)의 정보를 이용하여 사물 정보 검색 서비스 제공 시스템(500)에 사물의 시공간 정보를 요청할 수 있다.
단계(840)에서 사물 정보 검색 서비스 제공 시스템(500)은 시공간 정보를 응답할 수 있다. 이때, 사물 정보 검색 서비스 제공 시스템(500)은 최신 시공간 정보 질의에 대하여 사물(100)의 최신 위치 정보를 응답할 수 있다. 또는 사물 정보 검색 서비스 제공 시스템(500)은 특정 시간 범위 내 시공간 정보 질의에 대하여 특정 시간 범위 내에 사물의 정보가 저장된 저장소(400)들의 논리적 위치 정보와 사물(100)이 이동한 위치 정보를 응답할 수 있다. 또는 사물 정보 검색 서비스 제공 시스템(500)은 특정 위치 범위 내 시공간 정보 질의에 대해 특정 위치 및 특정 범위 내에 존재하는 모든 사물들의 식별 코드 정보를 응답할 수 있다.
단계(845)에서 사용자 단말(600)은 사물 정보 검색 서비스 제공 시스템(500)으로부터 제공받은 시공간 정보에 기초하여 저장소(400)의 논리적 위치 정보를 추출할 수 있다. 논리적 위치 정보는 저장소(400)의 IP 주소 혹은 URL 을 포함할 수 있다.
단계(850)에서 사용자 단말(600)은 저장소(400)의 논리적 위치 정보를 이용하여 저장소(400)에 해당 사물(100)의 과거 정보를 요청할 수 있다.
단계(855)에서 저장소(400)는 사물(100)의 과거 정보에 대한 요청에 대해 사용자 단말(600)에게 해당 과거 정보를 제공할 수 있다.
단계(860)에서 사용자 단말(600)은 사물 정보 검색 서비스 제공 시스템(500)으로부터 제공받은 시공간 정보에 기초하여 사물(100)의 논리적 위치 정보를 추출할 수 있다. 논리적 위치 정보는 사물(100)의 IP 주소 혹은 URL 을 포함할 수 있다.
단계(865)에서 사용자 단말(600)은 추출된 사물(100)의 논리적 위치 정보를 이용하여 사물(100)에 직접적으로 실시간 정보를 요청할 수 있다.
단계(870)에서 사물(100)은 실시간 정보를 사용자 단말(600)에게 제공할 수 있다.
도 5는 일 실시예에 있어서, 사물의 시공간 정보를 정보 검색 서비스에 저장하기 위하여 사물의 저장소 존재 여부에 따라 사물 이벤트를 저장소 혹은 사물에 전달하는 방법을 설명하기 위한 흐름도이다.
사물 게이트웨이(200)는 단계(715)를 처리한 후 사물 이벤트를 저장소(400)로 전달할 것인지에 대한 여부를 결정할 수 있다(910). 사물 이벤트에 대해 사물 이벤트를 저장하기로 지정된 저장소(400)가 존재할 경우 사물 이벤트가 저장소(400)로 전달될 수 있고(920), 단계(725)이 수행될 수 있다. 사물 이벤트에 대해 사물 이벤트를 저장하기로 지정된 저장소(400)가 존재하지 않을 경우, 단계(720), 단계(730), 단계(735), 단계(740), 단계(745), 단계(750), 단계(755)를 생략하고 단계(760)이 수행될 수 있다.
도 6은 일 실시예에 있어서, 주체의 인증 및 권한 여부에 따라 사물의 시공간 정보를 사물 정보 검색 서비스 제공 시스템에 저장하는 방법을 설명하기 위한 흐름도이다.
저장소(400)가 단계(750)를 처리한 후 단계(755)에서, 사물(100)의 시공간 정보를 사물 정보 검색 서비스 제공 시스템(500)에 저장할 수 있다.
사물(100)의 시공간 정보가 사물 정보 검색 서비스 제공 시스템(500)에 전달 되면(1010), 사물 정보 검색 서비스 제공 시스템(500)은 우선적으로 주체(예를 들면, 사용자)의 식별 정보에 기초하여 주체를 인증할 수 있다(1020). 예를 들면, 사물 정보 검색 서비스 제공 시스템(500)은 기 저장된 인증 정보와 비교함으로써 주체를 인증할 수 있다. 사물 정보 검색 서비스 제공 시스템(500)은 주체를 인증함으로써 인증된 주체로부터 전송된 시공간 정보를 식별할 수 있다. 사물 정보 검색 서비스 제공 시스템(500)은 주체가 인증되지 않을 경우, 주체 인증 확인에 실패할 수 있고, 사물(100)의 시공간 데이터를 저장하지 않고 프로세스를 종료할 수 있다.
사물 정보 검색 서비스 제공 시스템(500)은 주체의 인증이 완료됨에 따라, 인증된 주체가 사물(100)에 대한 저장 접근 권한이 있는지 여부를 확인할 수 있다(1040). 이때, 저장 접근 권한이 있는 부여된 주체가 저장을 요청할 경우 사물(100)의 시공간 정보를 사물 정보 검색 서비스 제공 시스템의 DB 에 저장할 수 있고(1060), 저장 접근 권한이 부여되지 않은 주체의 경우, 주체의 권한 확인에 실패하여(1050) 사물(100)의 시공간 데이터를 저장하지 않는다.
또한, 사물 게이트웨이(200)가 단계(785)를 처리한 후 단계(790)에서, 사물(100)의 시공간 정보를 사물 정보 검색 서비스 제공 시스템(500)에 저장할 수 있다.
사물(100)의 시공간 정보가 사물 정보 검색 서비스 제공 시스템(500)에 전달되면(1010) 사물 정보 검색 서비스 제공 시스템(500)은 우선적으로 주체의 식별 정보에 기초하여 주체를 인증할 수 있다(1020). 예를 들면, 사물 정보 검색 서비스 제공 시스템(500)은 기 저장된 인증 정보와 비교함으로써 주체를 인증할 수 있다. 사물 정보 검색 서비스 제공 시스템(500)은 주체를 인증함으로써 인증된 주체로부터 전송된 시공간 정보를 식별할 수 있다. 사물 정보 검색 서비스 제공 시스템(500)은 주체를 인증하지 못할 경우, 주체 인증 확인에 실패할 수 있고, 사물(100)의 시공간 데이터를 저장하지 않고 프로세스를 종료할 수 있다.
사물 정보 검색 서비스 제공 시스템(500)은 주체의 인증이 완료됨에 따라, 인증된 주체가 사물(100)에 대한 저장 접근 권한이 있는지 여부를 확인할 수 있다(1040). 이때, 저장 접근 권한이 있는 부여된 주체가 저장을 요청할 경우 사물(100)의 시공간 정보를 사물 정보 검색 서비스 제공 시스템의 DB 에 저장할 수 있고(1060), 저장 접근 권한이 부여되지 않은 주체의 경우, 주체의 권한 확인에 실패하여(1050) 사물(100)의 시공간 데이터를 저장하지 않는다.
도 7은 일 실시예에 있어서, 주체의 인증 및 권한 여부에 기초하여 사물의 시공간 정보를 검색하는 방법을 설명하기 위한 흐름도이다.
사용자 단말(600)에서 단계(830)를 처리한 후 단계(835)에서, 사물(100)의 시공간 정보 검색을 실시할 수 있다.
사용자 단말(600)의 시공간 정보 검색 질의가 사물 정보 검색 서비스 제공 시스템(500)에 전달될 수 있다(1110). 사물 정보 검색 서비스 제공 시스템(500)은 주체의 식별 정보에 기초하여 주체를 인증할 수 있다. 예를 들면, 사물 정보 검색 서비스 제공 시스템(500)은 기 저장된 인증 정보와 비교함으로써 주체를 인증할 수 있다. 이때, 사물 정보 검색 서비스 제공 시스템(500)은 기 저장된 인증 정보와 주체의 식별 정보가 일치할 경우, 단계(1140)의 사물에 대한 접근 권한 여부가 부여된 주체인지 판단할 수 있다. 사물 정보 검색 서비스 제공 시스템(500)은 기 저장된 인증 정보와 주체의 식별 정보가 일치하지 않을 경우, 주체의 인증 확인에 실패하여 사용자 단말(600)의 시공간 정보 검색 질의는 처리되지 않는다.
단계(1140)에서 사물 정보 검색 서비스 제공 시스템은 접근 권한이 있는 주체가 검색을 요청한 경우, 사물(100)의 시공간 정보를 사물 정보 검색 서비스 제공 시스템(500)의 DB 에서 검색하고(1160), 단계(840)으로 넘어갈 수 있다. 또한, 사물 정보 검색 서비스 제공 시스템은 접근 권한이 없는 주체의 경우, 주체의 권환 확인이 실패하고(1150) 사용자 단말(600)의 시공간 정보 검색 질의는 처리되지 않고 종료된다.
도 8 은 일 실시예에 있어서, 사용자 단말이 사물 정보 검색 서비스 제공 시스템으로부터 획득한 사물의 논리적 위치 정보를 이용하여 사물과 데이터 통신을 시도할 때 사물이 지원하는 통신 프로토콜 보유 여부에 따라 사용자 단말과 사물간의 직접 통신을 수행하는 방법을 설명하기 위한 흐름도이다.
사용자 단말(600)에서 단계(860)을 처리한 후 단계(865)에서, 사물(100)의 실시간 정보를 사물에게 직접 요청할 수 있다. 사용자 단말(600)에서 사물(100)이 지원하는 통신 프로토콜이 사용자 단말(600)에 존재하는지 여부를 확인함으로써 사용자 단말(600)과 사물(100)이 직접 통신이 가능한지를 판단할 수 있다(1210).
사물(100)과 직접 통신이 가능한 경우, 사용자 단말(600)은 사물(100)에 직접 실시간 정보를 요청할 수 있다(1220). 사물(100)과 직접 통신이 불가능한 경우 사용자 단말(600)은 사물(100)의 실시간 데이터 요청을 사물 정보 검색 서비스(500)에 전달할 수 있다(1230). 이때, 사물 정보 검색 서비스 제공 시스템(500)은 사용자 단말(600)을 대신해 사물(100)에 직접 실시간 정보를 요청할 수 있다(1240).
사물 정보 검색 서비스 제공 시스템(500)은 미리 사물 인터넷의 대표적인 통신 프로토콜(예를 들어, CoAP, lwM2M 와 같은 사물 통신 프로토콜)을 모듈 형태로 구현해놓음으로써 사물(100)과의 직접 통신을 수행할 수 있다.
단계(870)에서, 실시간 정보 요청을 받은 사물(100)은 실시간 정보를 사용자 단말(600)로 제공할 수 있다. 다시 말해서, 사용자 단말(600)이 사물(100)과 직접 통신이 가능한 경우, 사물(100)이 사물(100)의 실시간 정보를 사용자 단말(600)로 직접 제공할 수 있다(1250).
사용자 단말(600)이 사물(100)과 직접 통신이 불가능한 경우, 사물(100)은 실시간 정보를 사물 정보 검색 서비스 제공 시스템(500)에서 응답할 수 있다(1260). 이때, 사물 정보 검색 서비스 제공 시스템(500)은 사물(100)을 대신해 사물(100)의 실시간 정보를 사용자 단말(600)에게 전달할 수 있다(1270).
도 9 는 일 실시예에 따른 사물 정보 검색 서비스 제공 시스템의 구성을 설명하기 위한 블록도이다.
사물 정보 검색 서비스 제공 시스템(500)은 주 저장소(510), 접근 제어 모듈(520), 캐싱 모듈(530) 및 인터페이스 모듈(540)을 포함할 수 있다.
주 저장소(510)는 사물의 시공간 정보를 사물에 대한 사물 정보 검색 서비스와 연관된 데이터베이스에 저장할 수 있다. 주 저장소(510)는 접근제어 모듈(520)로부터 주체에 대한 인증 및 권한이 확인됨에 따라 저장 권한이 있고 인증된 주체의 저장 요청에 대해서 사물(100)의 시공간 정보를 DB 에 저장할 수 있고, 검색 권한이 있고 인증된 사용자의 검색 요청에 대해서 사물(100)의 시공간 정보를 DB 에서 검색할 수 있다.
주 저장소(510)는 위치 검색 모듈(511), 최신정보 검색 모듈(512), 시간 검색 모듈(513), 저장/갱신 모듈(514), 최신정보 DB(515) 및 과거정보 DB(516)를 포함할 수 있다.
위치 검색 모듈(511)은 특정 공간에 대한 위치 정보, 특정 거리에 대한 거리 범위 정보가 입력됨을 수신할 경우, 주어졌을 때 특정 공간 위치의 특정 거리 범위에 존재하는 모든 사물들의 시공간 정보와 연관된 사물에 대한 서비스를 응답할 수 있다. 예를 들면, 위치 검색 모듈(511)은 특정 공간 위치 정보로서 GPS 좌표 (x, y)와 특정 거리 범위 정보로서 거리 단위 z(z는 정수)km가 주어졌을 때 위치 검색 모듈(511)은 GPS 좌표 (x, y)에서 z km 범위 안에 모든 사물(100)의 시공간 정보와 연관된 사물에 대한 서비스의 목록을 응답할 수 있다.
최신정보 검색 모듈(512)은 최신 정보 검색 요청에 대해 사물의 최신 시공간 정보를 응답해 줄 수 있다. 예를 들면, 최신정보 검색 모듈(512)은 최신정보 DB(515)로부터 사물의 최신 시공간 정보를 검색하여 최신 정보 검색 요청을 응답할 수 있다. 최신정보 검색 모듈(512)은 최신 시공간 정보로서 사물의 현재 위치정보(예컨대, 사물의IP 주소, URL, GPS, GLN)와 현재 사물(100)의 정보가 저장되고 있는 사물, 사물 게이트웨이 또는 저장소의 논리적 위치 정보(예컨대, 저장소의 IP주소, URL)를 포함할 수 있다.
시간 검색 모듈(513)은 사물의 식별 코드 정보, 시간 정보(검색 시작 시간, 검색 종료 시간)가 입력됨을 수신할 경우, 식별 코드 정보에 대응하는 사물과 시간 정보에 포함된 시간 범위 동안 사물의 정보가 저장된 사물, 사물 게이트웨이 또는 저장소의 논리적 위치 정보에 대한 목록 및/또는 사물이 이동했던 모든 물리적 위치 정보의 목록을 응답할 수 있다.
저장/갱신 모듈(514)은 정보 저장 요청에 대해 사물의 시공간 정보를 사물에 대한 사물 정보 검색 서비스와 연관된 주 저장소의 DB 에 저장하거나 새로운 값으로 갱신할 수 있다.
저장/갱신 모듈(514)을 통해 사물의 새로운 시공간 정보를 저장할 경우 최신정보 DB(515)에 현재 저장되어 있는 사물에 대응하는 시공간 정보를 새로운 시공간 정보로 갱신할 수 있다. 이때, 갱신이 완료되면 과거 정보 DB(516)에서는 갱신되기 이전의 시공간 정보를 저장할 수 있다.
주 저장소(510)는 사물의 시공간 정보를 분리하여 저장할 수 있다. 예를 들면, 주 저장소(510)는 사물의 최신 시공간 정보를 최신정보 DB(515)에 저장하고, 사물의 과거 시공간 정보를 과거정보 DB(516)에 저장할 수 있다.
최신정보 DB(515)는 수신된 사물의 시공간 정보의 최신성을 판단하고, 수신된 사물의 시공간 정보가 최신의 것으로 인정될 때, 수신된 사물의 시공간 정보로 기 저장된 사물 시공간 정보를 갱신할 수 있다. 저장/갱신 모듈(514)에 의해 항상 해당 사물(100)에 대응하는 기존의 시공간 정보를 새 정보로 갱신 때문에 최신정보 DB(515)는 항상 최신 정보를 유지할 수 있다.
과거정보 DB(516)는 기 저장된 사물의 시공간 정보를 누적하여 저장할 수 있다. 과거정보 DB(516)는 저장/갱신 모듈(514)에 의해 항상 사물의 새로운 시공간 정보가 저장 및 축적되기 때문에 사물의 시간에 따라 변하는 사물의 위치 정보를 추적할 수 있다.
접근제어 모듈(520)은 저장 및 검색 요청에 대해 식별 코드 정보 및 사물 시공간 정보를 전송한 주체의 식별 정보에 기초하여 주체를 인증하고, 인증의 결과에 따라 주체의 접근 권한 여부를 판단할 수 있다. 이때, 인증 및 접근 권한이 확인될 경우 주 저장소(510)로 요청을 전달하지만 인증 및 접근 권한 확인이 실패할 경우 인증 및 권한 확인 실패 메시지를 주체에게 응답할 수 있다.
접근제어 모듈(520)은 권한 체크 모듈(521), 인증 모듈(522), 권한 모듈(523) 및 객체 관계 정의 모듈(524)를 포함할 수 있다.
인증 모듈(522)은 저장 및 검색을 요청한 주체를 인증할 수 있다. 예를 들면, 인증 모듈(522)은 인증을 위하여 OAuth 2.0 표준을 이용할 수 있다. 다시 말해서, 최초에 사용자는 아이디(ID) 와 패스워드(Password)를 이용하여 무작위로 생성된 토큰(token)과 리프레시 토큰(refresh token)을 발급받을 수 있다. 이후에는 발급받은 토큰을 확인함으로써 사용자의 인증을 실시할 수 있다. 이때, 기 설정된 시간이 경과한 후에는 발급받은 토큰이 유효성을 잃게 되기 때문에 리프레시 토큰을 이용해 새로운 토큰을 발급받음으로써 계속 인증이 수행될 수 있다.
권한 체크 모듈(521)은 인증이 완료된 주체에 대하여 사물 정보 검색 서비스에 대한 검색 권한이 있는지 판단할 수 있다. 권한 체크 모듈(521)은 주체가 사물에 대한 저장 및 검색 권한 여부를 확인하기 위해서 접근제어 모듈용 DB(525)을 통하여 주체에게 부여된 저장 및 검색 권한 여부에 대하여 질의할 수 있고, 모듈용 DB(525)는 상기 질의에 대해 결과를 응답할 수 있다.
저장 요청에 대해 저장 권한이 있는 주체의 경우 주 저장소(510)에 해당 정보를 저장 할 수 있고, 검색 요청에 대해 검색 권한이 있는 주체의 경우 주 저장소(510)에서 시공간 정보와 연관된 사물에 대한 서비스를 포함하는 정보를 검색할 수 있다. 저장 및 검색 권한이 없는 주체의 경우 권한 확인 실패 메시지를 전달할 수 있다.
권한 모듈(523)은 주체(예를 들면, 사용자)에게 사물에 대한 접근 권한을 부여할 수 있다. 접근 권한을 부여하는 방법에 대해서는 후술될 도 10을 참조하여 더 자세하게 설명된다.
객체 관계 정의 모듈(524)은 주체와 다른 객체 간의 관계를 정의할 수 있다. 주체를 제외한 다른 객체는 사물, 서비스, 그룹 객체를 포함할 수 있고 주체와 객체간의 관계를 어떻게 정의 하는가에 따라 사용자의 사물에 대한 접근 권한이 달라질 수 있다. 주체와 다른 객체 간의 관계를 정의하는 방법은 후술될 도 10을 참조하여 더 자세하게 설명된다.
접근제어 모듈용 DB(525)는 주체와 다른 객체 간의 관계 및 사물에 대한 접근 권한 정보를 저장하고 주체의 권한 여부 확인 질의를 응답할 수 있다. 접근제어 모듈용 DB(525)는 객체간의 관계 및 권한을 쉽게 시각화할 수 있는 그래프 기반의 DB가 사용될 수 있다. 그래프 기반의 DB 를 이용한 접근 제어 모델의 시각화함으로써 보다 쉽게 주체와 사물간의 접근제어 관계를 표현하고 관리 할 수 있다.
인증 모듈용 DB(526)는 주체의 식별 정보(예컨대, ID, 패스워드)를 저장할 수 있고, 토큰에 대한 토큰 정보(예컨대, 토큰, 리프레스 토큰)를 임시적으로 저장함으로써 주체의 인증 요청 질의에 대한 결과를 응답할 수 있다.
캐싱 모듈(530)은 검색을 빠르게 하기 위하여 메모리에 사용 가능성이 높은 정보를 캐싱할 수 있다. 예를 들면, 캐싱 모듈(530)은 자주 사용될 확률이 높은 사물의 시공간 정보, 주체의 인증과 관련된 정보 및 주체와 사물간의 접근 권한 정보를 상대적으로 빠른 캐싱 모듈용 DB(135)에 저장하여 주체의 검색 및 저장 요청에 대해 빠른 응답을 할 수 있다.
캐싱 모듈(530)은 캐시 입/출력 모듈(531), 캐시 삭제 판단 모듈(532), 캐싱 결정 모듈(533), 캐시 체크 모듈(534) 및 캐싱 모듈 용 DB(135)를 포함할 수 있다.
캐시 입/출력 모듈(531)은 주 저장소(510) 및 접근제어 모듈(520)와 관련된 각각의 캐시 정보를 캐싱 모듈 DB(535)에 캐싱하거나 캐시 검색에 대해 캐싱 모듈 DB(535)을 통하여 검색해서 원하는 정보를 보다 빠르게 획득할 수 있다.
캐시 삭제 판단 모듈(532)은 캐싱 모듈DB(535)에 캐싱된 정보에 대해 삭제 여부를 판단하고 삭제를 실행할 수 있다. 이때, 삭제 여부 판단을 위해 LRU 알고리즘을 이용할 수 있다. 이외에도 삭제 여부 판단을 위하여 다양한 알고리즘이 적용될 수 있다.
다시 말해서, 캐싱된 정보 중에서 기 설정된 기준 이상의 사용 빈도이고, 기 설정된 기간 이상의 정보를 캐싱 모듈 DB(535)에서 삭제할 수 있다. 이때, 사용 빈도 및 오래된 정도를 판단하기 위해 캐싱 모듈 DB(535)에 정보가 캐싱될 때 항상 만료 시간을 지정하여 만료 시간이 경과할 경우, 기간이 경과한 정보를 삭제함으로써 오래된 정보를 삭제할 수 있다. 또한, 캐싱된 정보가 사용될 때마다 상기 정보의 만료 시간을 갱신함으로써 사용 빈도가 높은 정보를 보존할 수 있다.
캐싱 결정 모듈(533)은 캐싱되지 않은 정보에 대해 캐싱의 포함 여부를 결정할 수 있다. 예를 들면, 캐싱을 실행하는 정보로 사용자의 사물(100)에 대한 권한 정보, 사용자의 토큰 정보, 사물(100)의 최신 정보를 포함할 수 있다.
캐시 체크 모듈(534)은 주 저장소(510) 및 접근제어 모듈(520)이 검색하고자 하는 정보가 캐시에 저장되어 있는지 검색하여 응답할 수 있다. 만약, 검색하고자 하는 정보가 캐싱되어 있을 경우, 주 저장소(510) 및 접근제어 모듈(520)은 실제 정보가 저장되어 있는 DB 를 검색하지 않고, 캐시 체크 모듈(534)로부터 응답한 정보를 사용자에게 보다 빠르게 제공할 수 있다.
이때, 예를 들면, 실제 정보가 저장되어 있는 DB 는 사용자의 사물(100)에 대한 권한 정보가 저장된 접근제어 모듈용 DB(525), 사용자의 토큰 정보가 저장된 인증 모듈용 DB(526), 사물의 최신 정보가 저장된 최신정보 DB(515)를 포함 할 수 있다.
캐시 모듈DB(535)는 주체의 사물에 대한 권한 정보, 주체의 토큰 정보, 사물의 최신 정보를 캐싱할 수 있고, 정보 검색의 요청에 따라 캐싱된 정보를 검색 결과로서 응답할 수 있다. 이때, 캐시 모듈 DB(535)는 정보를 임시적으로 캐싱하고 빠른 응답이 요구되기 때문에 용량이 작지만 빠른 메모리 기반 DB가 사용될 수 있다.
인터페이스 모듈(540)은 사물과 관련된 정보를 읽고, 쓰고 응답하기 위한 인터페이스를 제공하기 위한 것으로, 사물과 직접적인 통신을 위하여 다양한 사물 통신 프로토콜을 보유할 수 있다. 인터페이스 모듈(540)은 읽기 인터페이스(541), 쓰기 인터페이스(542), 응답 인터페이스(543) 및 사물 통신 프로토콜 집합소(544)를 포함할 수 있다.
인터페이스 모듈(540)은 예를 들면, Restfull API 형태로 제공될 수 있다.
읽기 인터페이스(541)는 사물의 시공간 정보를 검색하기 위하여 사용될 수 있다.
쓰기 인터페이스(542)는 사물의 시공간 정보를 저장하기 위하여 사용될 수 있다.
응답 인터페이스(543)는 사물 정보 검색 서비스에 대한 요청에 따라 시공간 정보와 연관된 사물에 대한 서비스를 제공하기 위하여 사용될 수 있다.
사물 통신 집합소(544)는 사용자 단말이 사물과 직접적인 통신이 불가능 경우 사물 정보 검색 서비스 제공 시스템이 사물간의 대표적인 통신 프로토콜(예를 들어, CoAP, lwM2M 와 같은 사물 통신 프로토콜)을 지원하여 사물과의 통신이 가능하도록 제공할 수 있다.
도 10 은 일 실시예에 따른 사물 정보 검색 서비스 제공 시스템의 접근제어 모듈에서 객체간 관계 및 접근 제어 모델의 예를 설명하기 위한 도면이다.
접근제어 모듈(520)의 객체 관계 정의 모듈(524) 및 권한 모듈(523)에서 객체간 관계 및 접근 제어가 이루어질 수 있다. 객체간 관계 모델에서 사용자(1305), 사물(1310), 서비스(1315), 그룹(1320) 등을 객체를 포함할 수 있고, 객체들은 소유(1325), 관리(1330), 보유(1335), 동참(1340) 등의 관계를 지닐 수 있으며, 객체들은 읽기(1345), 쓰기(1350) 등의 권한을 가질 수 있다.
도 10에서는 사용자, 사물, 서비스, 그룹에 대한 객체에 대한 접근 제어 모델을 예를 들어 설명하기로 한다. 또한, 이때, 각각의 객체에 대한 관계에 대하여 설명하자면, 사용자가 사물을 소유한 것을 소유, 사물이 서비스를 보유한 것으로 보유, 사용자가 그룹을 관리하는 것을 보유, 사용자가 그룹에 동참하는 것을 동참하는 것이라고 관계를 정의할 수 있다.
사용자(1305)는 식별 정보로서 예를 들면, 사용자 ID를 사용할 수 있다. 사용자(1305)는 사물(1310)과 소유(1325) 관계를 맺을 수 있다. 예를 들면, 사물1(1310)을 소유한 사용자 1은 사물 1(1310) 및 사물 1(1310)이 보유한 모든 서비스(1315)에 대한 모든 접근 권한을 가질 수 있다. 또한, 사용자 1은 사용자 1과 관리(1330) 관계를 맺고 있는 그룹(1320) 또는 다른 사용자에게 사물 1(1310)에 대한 접근 권한을 부여할 수 있다. 이때, 사용자 1이 소유한 그룹(1320) 및 다른 사용자(예컨대, 사용자2, 사용자 3, 사용자 4)에게 권한을 부여할 수 있다.
사용자 1(1305)은 그룹(1320)과 관리(1330) 관계를 맺을 수 있다. 그룹(1320)을 관리하는 사용자 1(1305)은 그룹(1320)에 다른 사용자 또는 다른 그룹을 동참시킬 수 있고, 이때 그룹(1320)과 다른 사용자는 동참 관계(1340)가 맺어진다. 그룹(1320)에 동참한 사용자들은 그룹(1320)과 동일 또는 유사한 접근 권한을 가질 수 있다
사물 1(1310)은 식별 정보로 사물의 식별 코드 정보(예컨대, SGTIN)를 사용 할 수 있다. 사물 1(1310)은 서비스들(1315)과 보유 관계(1335)를 맺을 수 있다. 사물 1(1310)이 보유한 서비스들(1315)은 사물 1(1310)의 식별 정보인 식별 코드 정보를 기반으로 ONS 서버로부터 획득된 서비스 목록을 통해 자동으로 생성될 수 있다. 예를 들면, 사물1(1310)의 식별 코드 정보를 ONS 질의로 변환하여 ONS 서버에 서비스 리스트를 요청하고, 요청에 대한 응답인 서비스 리스트에서 켬(On)/끔(Off), 온도라는 서비스가 포함될 수 있고, 서비스 리스트를 이용하여 '사물 1: 켬/끔', '사물 1: 온도' 라는 서비스들(1315)을 생성할 수 있다.
서비스(1315)의 식별 정보로서 서비스 이름을 단독으로 사용할 경우 서로 다른 사물이라도 보유한 서비스의 이름이 같을 수 있기 때문에 서로 다른 사물이 동일한 서비스(1315)를 공유할 수 있다. 이때, 서비스의 이름이 동일할 경우를 예방하고 서비스(1315)의 식별 정보가 유일함을 보장하기 위해 서비스의 식별 정보로서 사물 1(1310)의 식별 코드 정보에 '사물 1: 서비스 이름'을 추가하여 사용할 수 있다.
서비스(1315)의 접근 권한은 서비스(1315)를 보유한 사물 1(1310)과 관련하여, 사물 1(1310)을 소유한 사용자 1(1305)에 의하여 사용자 1(1305)이 관리하는 그룹(1320) 또는 다른 사용자(사용자 2, 사용자 3, 사용자 4)에게 부여할 수 있다. 서비스(1315)와 읽기(1345) 권한이 맺어진 그룹(1320) 또는 다른 사용자는 서비스(1315)가 제공하는 값을 읽을 수 있고 서비스(1315)와 쓰기 권한(1350)이 맺어진 그룹(1320) 또는 다른 사용자는 서비스(1315)의 설정 값을 변경할 수 있다. 예를 들면, '사물1: 켬/끔' 과 '사물1: 온도' 서비스의 접근 권한은 '사용자1(1305)'에 의해 사용자1이 관리하는 그룹들(예컨대, '사용자1: 공용', '사용자1: 개인') 또는 다른 사용자들(예컨대, '사용자2', '사용자3', '사용자4')에게 부여할 수 있다. '사물1: 온도' 서비스의 읽기 권한(1345)을 가지는 '사용자1: 개인' 그룹은 '사물1: 온도' 서비스의 값을 읽을 수 있다. 예를 들면, 읽기 권한을 가지는 사용자 1: 개인 그룹은 사물1(1310)의 온도가 몇 도인지 확인할 수 있다. 또한, '사물1: 온도' 서비스의 쓰기 권한(1350)을 가지는 '사용자2'와 '사용자1: 개인' 그룹은 '사물1: 온도' 서비스의 값을 변경할 수 있다. 예를 들면, 쓰기 권한을 가지는 사용자 2와 사용자 1: 개인 그룹은 사물1에 대한 온도를 조절할 수 있다.
그룹(1320)의 식별 정보로서 사용자들이 무작위로 만드는 그룹 이름을 단독으로 사용할 경우 서로 다른 사용자라도 같은 그룹 이름을 생성할 수 있기 때문에 서로 다른 사용자가 동일한 그룹을 공유할 수 있다. 이때, 그룹의 식별 정보의 유일함을 보장하기 위하여 그룹의 식별 정보로서 사용자 1(1305)의 식별 정보에 '사용자 1: 그룹 이름'을 추가하여 사용할 수 있다.
그룹(1320)은 공용 그룹과 개인 그룹으로 분류할 수 있으며, 공용 그룹의 경우, 공용 그룹에 포함된 사용자들은 공용 그룹과 동일한 접근 권한을 가질 수 있다. 공용 그룹 객체(1320)의 식별 정보는 그룹 이름으로서 항상 '공용'을 부가하여 사용할 수 있다. 예를 들면, '사용자1: 공용' 그룹이 '사물1: 켬/끔'서비스에 읽기 권한(1345)이 있기 때문에 사용자1: 공용 그룹에 포함된 사용자들은 동일하게 '사물1: 켬/끔' 서비스에 대한 읽기 권한을 가질 수 있다.
개인 그룹은 그룹(1320)에 동참 관계(1340)을 맺은 모든 사용자(1305)와 동일한 접근 권한을 가질 수 있다. 그룹(1320)이 서비스(1315)와 읽기 권한이 맺어있을 경우 그룹(1320)과 동참 관계(1340)을 맺은 모든 사용자는 서비스가 제공하는 값을 읽을 수 있고, 그룹(1320)이 서비스(1315)와 쓰기 권한이 맺어있을 경우 그룹(1320)과 동참 관계(1340)를 맺은 모든 사용자(1305)는 서비스(1315)가 제공하는 값을 변경할 수 있다. 예를 들면, '사용자1: 개인' 그룹은 '사물1: 온도' 서비스와 읽기(1345) 및 쓰기(1350) 권한 관계를 맺고 있고 '사용자3', '사용자4'와는 동참 관계(1340)를 맺고 있기 때문에 '사용자1: 개인' 그룹에 동참하는 '사용자3', '사용자4'는 '사물1: 온도' 서비스의 값을 읽고 변경할 수 있다. 다시 말해서, '사용자3', '사용자4'는 사물 1의 온도가 몇 도인지 확인하고 온도 값을 조절할 수도 있다.
사용자(1305)이 사물(1310)에 대응하는 사물의 시공간 정보를 사물 정보 검색 서비스 제공 시스템에 저장하고 검색할 수 있는지 여부를 확인하기 위해서 사용자(1305)와 사물(1310)이 보유한 서비스(1315) 사이의 권한을 확인할 수 있다. 사용자 (1305)와 사물(1310)이 보유한 서비스(1315) 사이에 읽기 관계(1345)가 맺어진 경우, 사용자(1305)는 사물(1310)에 대응하는 사물의 시공간 정보를 사물 정보 검색 서비스 제공 시스템에서 검색할 수 있다. 사용자(1305)와 사물(1310)이 보유한 서비스(1315) 사이에 쓰기(1345)가 맺어진 경우 사용자(1305)는 사물(1310)에 대응하는 사물의 시공간 정보를 사물 정보 검색 서비스 제공 시스템에 저장할 수 있다. 예를 들면, 사용자2는 사물 1이 보유한 서비스(1315)의 읽기 권한(1345) 및 쓰기 권한(1350)을 모두 부여 받았기 때문에 사물1의 시공간 정보를 사물 정보 검색 서비스 제공 시스템에서 검색하거나 저장할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (16)

  1. 적어도 하나의 사물에 대한 사물 이벤트가 캡쳐됨에 따라, 상기 사물과 연관된 식별 코드 정보 및 사물 시공간 정보를 수신하는 단계;
    상기 사물의 시공간 정보를 상기 사물에 대한 사물 정보 검색 서비스와 연관된 데이터베이스에 저장하는 단계; 및
    상기 사물 정보 검색 서비스에 대한 요청에 따라, 상기 시공간 정보와 연관된 상기 사물에 대한 서비스를 제공하는 단계를 포함하고,
    상기 사물 시공간 정보를 수신하는 단계는,
    상기 사물 이벤트를 무선 통신을 사용하여 사물 게이트웨이를 통해 캡쳐하는 단계;
    상기 캡쳐된 사물 이벤트로부터 상기 식별 코드 정보를 추출하는 단계; 및
    상기 사물 이벤트로부터 추출된 상기 사물과 연관된 시간 정보 및 위치 정보를 획득하고, 상기 사물 이벤트에 상기 위치 정보가 누락된 경우에는 상기 사물 게이트웨이의 위치 정보를 상기 사물의 위치 정보로서 획득하고, 획득된 시간 정보 및 위치 정보를 상기 사물 시공간 정보로서 수신하는 단계
    를 포함하고,
    상기 캡쳐된 사물 이벤트는 상기 사물의 과거의 사물 이벤트를 저장하고 있는 데이터 저장소로 전달되어 저장되고, 상기 과거의 사물 이벤트와 함께 관리되고,
    상기 사물에 대한 서비스를 제공하는 단계는,
    상기 데이터 저장소를 통해, 상기 식별 코드 정보를 사용하여 오브젝트 네임 서비스(Object Name Service; ONS) 서버에 상기 식별 코드 정보와 연관된 사물 정보 검색 서비스에 대한 서비스 리스트를 요청하는 단계;
    상기 데이터 저장소를 통해, 상기 리스트에 대한 요청에 기반하여 상기 ONS 서버로부터 상기 서비스 리스트를 수신하는 단계; 및
    상기 서비스 리스트에 포함된 적어도 하나의 서비스 중 선택된 서비스를, 상기 시공간 정보와 연관된 상기 사물에 대한 서비스로서 제공하는 단계
    를 포함하고,
    상기 식별 코드 정보는 상기 사물을 클래스별로 구별하기 위한 식별 코드 또는 상기 사물을 인스턴스별로 구별하기 위한 식별 코드를 포함하고, 상기 수신되는 서비스 리스트는 상기 식별 코드 정보가 포함하는 식별 코드에 따라 상이하게 되는 사물 정보 검색 서비스 제공 방법.
  2. 제1항에 있어서,
    상기 식별 코드 정보는 상기 사물과 연관된 GS1 코드를 포함하는, 사물 정보 검색 서비스 제공 방법.
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 제1항에 있어서,
    상기 시간 정보는 상기 사물 이벤트를 캡쳐한 시간 정보를 포함하고, 상기 사물과 연관된 위치 정보는 상기 사물의 IP 주소 또는 URL, 또는 상기 사물의 GPS 정보 또는 국제 위치 식별 코드(Global Location Number; GLN) 정보를 포함하고,
    상기 사물 게이트웨이의 위치 정보는 상기 사물 게이트웨이의 IP 주소 또는 URL, 또는 상기 사물 게이트웨이의 GPS 정보 또는 GLN 정보를 포함하는, 사물 정보 검색 서비스 제공 방법.
  8. 제1항에 있어서,
    상기 데이터베이스에 저장하는 단계는,
    상기 식별 코드 정보 및 상기 사물 시공간 정보를 전송한 주체의 식별 정보에 기초하여 상기 주체를 인증하고 상기 인증의 결과에 따라 상기 식별 코드 정보 및 상기 사물 시공간 정보를 상기 데이터베이스에 저장하는 단계
    를 포함하는, 사물 정보 검색 서비스 제공 방법.
  9. 제8항에 있어서,
    상기 주체의 인증과 연관된 정보를 캐시 메모리에 저장하는 단계
    를 포함하고, 상기 주체의 인증은 상기 캐시 메모리에 저장된 정보를 사용하여 수행되는, 사물 정보 검색 서비스 제공 방법.
  10. 제1항에 있어서,
    상기 데이터베이스에 저장하는 단계는,
    상기 수신된 사물 시공간 정보의 최신성을 판단하는 단계;
    상기 수신된 사물 시공간 정보가 최신의 것으로 인정된 때, 상기 수신된 사물 시공간 정보로 상기 데이터베이스에 기 저장된 사물 시공간 정보를 갱신하는 단계; 및
    상기 기 저장된 사물 시공간 정보를 누적 데이터베이스로 전달하여 저장하는 단계
    를 포함하는, 사물 정보 검색 서비스 제공 방법.
  11. 제1항에 있어서,
    상기 사물에 대한 서비스는 상기 사물에 대한 디스커버리 서비스인, 사물 정보 검색 서비스 제공 방법.
  12. 제1항에 있어서,
    상기 사물에 대한 서비스는 상기 사물에 대한 위치 기반 검색 서비스, 식별 코드 기반 검색 서비스 및 상기 사물과 연관된 시간 검색 서비스 중 적어도 하나를 포함하는, 사물 정보 검색 서비스 제공 방법.
  13. 제1항에 있어서,
    상기 사물에 대한 서비스는 사용자 단말에 제공되고,
    상기 사용자 단말로부터의 요청에 따라, 상기 사용자 단말의 상기 사물과 연관된 데이터에 대한 직접 접근을 허용하기 위해 사용되는, 상기 사물과 연관된 논리적 위치에 대한 정보 및 상기 직접 접근을 위해 사용되는 프로토콜 정보 중 적어도 하나를 제공하는 단계
    를 더 포함하는, 사물 정보 검색 서비스 제공 방법.
  14. 제1항에 있어서,
    상기 사물 이벤트는 상기 사물과 연관된 식별 코드 정보 및 적어도 하나의 센서로부터 측정된 상기 사물과 관련된 데이터를 포함하는, 사물 정보 검색 서비스 제공 방법.
  15. 적어도 하나의 사물에 대한 사물 이벤트가 캡쳐됨에 따라, 상기 사물과 연관된 식별 코드 정보 및 사물 시공간 정보를 수신하고, 상기 시공간 정보와 연관된 상기 사물에 대한 서비스를 제공하는 인터페이스 모듈;
    상기 사물과 연관된 식별 코드 정보 및 상기 사물의 시공간 정보를 전송한 주체의 식별 정보에 기초하여 주체를 인증하는 접근제어 모듈; 및
    상기 인증의 결과에 따라 상기 식별 코드 정보 및 상기 사물의 시공간 정보를 저장하고, 정보 검색 서비스에 대한 요청에 따라, 상기 시공간 정보와 연관된 상기 사물에 대한 서비스를 검색하는 주 저장소
    를 포함하고,
    상기 사물 시공간 정보는, 상기 사물 이벤트가 무선 통신을 사용하여 사물 게이트웨이를 통해 캡쳐됨에 따라, 상기 캡쳐된 사물 이벤트로부터 추출되는 상기 식별 코드 정보, 상기 사물과 연관된 시간 정보 및 위치 정보를 포함하고, 상기 사물 이벤트에 상기 위치 정보가 누락된 경우에는 상기 사물 게이트웨이의 위치 정보를 상기 사물의 위치 정보로서 포함하도록 구성되고,
    상기 캡쳐된 사물 이벤트는 상기 사물의 과거의 사물 이벤트를 저장하고 있는 데이터 저장소로 전달되어 저장되고, 상기 과거의 사물 이벤트와 함께 관리되고,
    상기 사물에 대한 서비스는,
    상기 데이터 저장소를 통해, 상기 식별 코드 정보를 사용하여 오브젝트 네임 서비스(Object Name Service; ONS) 서버에 상기 식별 코드 정보와 연관된 사물 정보 검색 서비스에 대한 서비스 리스트가 요청됨에 따라, 상기 데이터 저장소를 통해, 상기 ONS 서버로부터 수신된 상기 서비스 리스트에 포함된 적어도 하나의 서비스 중에서 선택되는 서비스이고,
    상기 식별 코드 정보는 상기 사물을 클래스별로 구별하기 위한 식별 코드 또는 상기 사물을 인스턴스별로 구별하기 위한 식별 코드를 포함하고, 상기 수신되는 서비스 리스트는 상기 식별 코드 정보가 포함하는 식별 코드에 따라 상이하게 되는 사물 정보 검색 서비스 제공 시스템.
  16. 제15항에 있어서,
    상기 주체의 인증과 연관된 정보를 캐시 메모리에 저장하고, 상기 캐시 메모리에 저장된 정보를 사용하여 상기 주체의 인증을 수행하도록 제공하는 캐시 모듈을 더 포함하는 사물 정보 검색 서비스 제공 시스템.
KR1020160175382A 2016-12-21 2016-12-21 Gs1 코드 기반 사물 정보 검색 서비스 시스템 및 그 방법 KR101913013B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160175382A KR101913013B1 (ko) 2016-12-21 2016-12-21 Gs1 코드 기반 사물 정보 검색 서비스 시스템 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160175382A KR101913013B1 (ko) 2016-12-21 2016-12-21 Gs1 코드 기반 사물 정보 검색 서비스 시스템 및 그 방법

Publications (2)

Publication Number Publication Date
KR20180072899A KR20180072899A (ko) 2018-07-02
KR101913013B1 true KR101913013B1 (ko) 2018-10-30

Family

ID=62914021

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160175382A KR101913013B1 (ko) 2016-12-21 2016-12-21 Gs1 코드 기반 사물 정보 검색 서비스 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR101913013B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116595061B (zh) * 2023-06-06 2023-11-24 深圳市大同信息技术有限公司 基于物联网的物品管理方法、系统、存储介质及电子设备

Also Published As

Publication number Publication date
KR20180072899A (ko) 2018-07-02

Similar Documents

Publication Publication Date Title
JP7079805B2 (ja) 期限付セキュアアクセス
CN111434084B (zh) 来自实体的访问信息的许可
US11276131B2 (en) Property management system utilizing a blockchain network
CN102089767B (zh) 无人值守应用程序的经认证数据库连接
EP3093784B1 (en) Client computer for querying a database stored on a server via a network
JP6435398B2 (ja) 端末識別子を促進する方法及びシステム
US20160239657A1 (en) Digital identity system
CN105100034B (zh) 一种网络应用中访问功能的方法和设备
US20100214062A1 (en) Verification apparatus and authentication apparatus
CN102710770A (zh) 一种上网设备识别方法及其实现系统
US10148658B2 (en) Information processing apparatus and method, and program
CN104052616A (zh) 一种对互联网数据中心中的业务进行管理的方法及系统
CN101763575A (zh) 许可管理设备、许可管理方法以及计算机可读介质
US11641356B2 (en) Authorization apparatus, data server and communication system
CN105915714A (zh) 终端丢失提示方法及装置
KR20170041523A (ko) 스크래핑 서비스 제공 방법, 그를 위한 서버 장치 및 시스템
US20160028718A1 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
JP5035521B2 (ja) 認証システム
CN114691617A (zh) 一种智能终端数据压缩防冗余交互方法、装置及相关组件
KR101913013B1 (ko) Gs1 코드 기반 사물 정보 검색 서비스 시스템 및 그 방법
JP6350659B2 (ja) 薬歴情報管理装置および方法、登録端末装置および方法、並びにプログラム
US8924529B2 (en) Client device identification through cache manipulation
JP6551765B1 (ja) 生体認証システム、情報処理装置およびプログラム
KR102399524B1 (ko) 개인 식별정보 수집 및 임치 관리 방법 및 시스템
CN113051614A (zh) 信息访问处理方法、装置、设备及系统

Legal Events

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