KR102023115B1 - 통합형 id 기반의 통신 방법 및 통신 시스템 - Google Patents
통합형 id 기반의 통신 방법 및 통신 시스템 Download PDFInfo
- Publication number
- KR102023115B1 KR102023115B1 KR1020170159700A KR20170159700A KR102023115B1 KR 102023115 B1 KR102023115 B1 KR 102023115B1 KR 1020170159700 A KR1020170159700 A KR 1020170159700A KR 20170159700 A KR20170159700 A KR 20170159700A KR 102023115 B1 KR102023115 B1 KR 102023115B1
- Authority
- KR
- South Korea
- Prior art keywords
- service
- terminal
- communication
- packet
- communication system
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/30—Managing network names, e.g. use of aliases or nicknames
- H04L61/3015—Name registration, generation or assignment
-
- H04L61/3075—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/30—Types of network names
- H04L2101/375—Access point names [APN]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 명세서에서 개시되는 실시예들은 통합형 ID 기반의 통신 방법 및 통신 시스템에 관한 것으로서, 효율적이고 통합적인 자원의 이용을 위한 통합형 ID를 정의하여 자원의 관리를 용이하게 하고, 트래픽을 최소화하며, 통신 속도를 향상시킬 수 있다. 기술적 과제를 달성하기 위한 기술적 수단으로서, 일 실시예에 따르면, 통신 시스템이 수행하는 통신 방법에 있어서, 접속단말에 대하여 디바이스ID를 부여하고, 각 접속단말이 보유하는 서비스에 대하여 서비스ID를 부여하는 단계; 상기 접속단말에 포함된 제1단말로부터 서비스 검색 키워드를 수신하고, 상기 키워드에 대응하는 목적 서비스를 검색하는 단계; 및 검색된 목적 서비스의 서비스ID에 기초하여, 상기 접속단말에 포함된 것으로서 상기 목적 서비스에 대응하는 제2단말과 상기 제1단말간의 목적 서비스에 대한 통신을 중계하는 단계를 포함하는 통신 방법이 개시된다.
Description
본 명세서에서 개시되는 실시예들은 통합형 ID 기반의 통신 방법 및 통신 시스템에 관한 것으로서, 효율적이고 통합적인 자원의 이용을 위한 통합형 ID를 정의하여 자원의 관리를 용이하게 하고, 트래픽을 최소화하며, 네트워킹 속도를 향상시키는 통신 방법 및 통신 시스템에 관한 것이다.
종래에는 네트워크를 구성하는 다양한 구성, 예를 들면, 통신 기기, 컴퓨팅 자원, 영상이나 이미지와 같은 콘텐츠 등에 대한 식별자가 각기 상이하여 관리가 용이하지 않았다. 또한, IP를 활용하여 디바이스를 식별하는 기존의 통신 방식에서는, 무선 기기의 경우 이동에 따라 식별자가 변경되는 문제가 있어 왔다.
관련하여 선행기술 문헌인 한국공개특허 제 10-2004-0068702호에서는 이동통신 시스템에서 무선 네트워크 관리 시스템의 자원관리 방법을 제안하고 있다. 이때, 선행기술의 이동통신 시스템은 무선 기기의 이동성(mobility)를 위하여 기지국에 식별값을 부여하여 관리하는 방법을 선택하고 있다.
상술한 선행기술에 의할 때, 기지국 및 기지국의 제어기에 대해 별도 관리되는 자원을 통합하여 관리할 수 있다는 장점은 있으나 이는 무선 기기에만 한정되며, 콘텐츠 등 네트워크를 구성하는 다른 요소에 대해서는 통합 관리가 어렵다는 문제에서 벗어나지 못한다.
한편, 전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
본 명세서에서 개시되는 실시예들은, 통신 방법 및 이를 수행하기 위한 장치를 개시하는 데에 목적이 있다.
또한 실시예들은, 다종 다양한 개체에 대해 단순화된 통합형 ID를 부여함으로써 관리의 효율성이 향상되고, 서비스 제공자 간 정보 교류 및 협업이 용이하며, 각 서비스를 빌딩블록 삼아 풍부한 형태의 서비스로 매쉬업(mashup)할 수 있는 통신 방법 및 통신 시스템을 제공하는 데에 목적이 있다.
또한 실시예들은, 단말의 주소 정보가 IP에 한정되지 않고, non-IP도 포함하여 다양한 통신모듈을 사용하는 무선 센서 네트워크, 이종 네트워크를 지원할 수 있도록 하는 데에 목적이 있다.
또한 실시예들은, 여러 자원을 활용하여 다종 다양한 형태의 자원 혹은 서비스들을 통합, 효율적인 자원 관리를 제공하는 데에 목적이 있다.
또한, 실시예들은, 네트워크 내 캐싱(In-network Caching)을 활용하여 트래픽 증폭 정도를 낮추는 데에 목적이 있다.
또한 실시예들은, IoT 포함 다양한 기기가 수많은 센싱 정보를 만들거나 비디오 스트리밍이 많아서 전체적으로 데이터 트래픽이 많이 발생하는 환경, 협력적 네트워킹이 필요한 환경에 대하여 ID기반의 라우팅을 제공하고, 링크의 효율을 향상시키는 데에 목적이 있다.
또한, 실시예들은, 콘텐츠의 해시 값 혹은 서비스의 공개키의 해시 값에 기초한 고정 길이의 서비스ID로 라우팅을 수행하여 패킷 처리 부담을 감소시키는 데에 목적이 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 일 실시예에 따르면, 통신 시스템이 수행하는 통신 방법에 있어서, 둘 이상의 접속단말들 각각에 대하여 디바이스ID를 부여하고, 각 접속단말이 보유하는 서비스에 대하여 서비스ID를 부여하는 단계; 상기 접속단말들 중 제1단말로부터 서비스 검색 키워드를 수신하고, 상기 키워드에 대응하는 목적 서비스를 검색하는 단계; 및 상기 목적 서비스의 서비스ID에 기초하여, 상기 접속단말들 중 상기 목적 서비스에 대응하는 제2단말과 상기 제1단말간의 통신을 중계하는 단계를 포함하는 통신 방법이 개시된다.
다른 실시예에 따르면, 통신 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체가 개시된다. 이때 통신 방법은, 통신 시스템이 수행하는 것으로서, 둘 이상의 접속단말들 각각에 대하여 디바이스ID를 부여하고, 각 접속단말이 보유하는 서비스에 대하여 서비스ID를 부여하는 단계; 상기 접속단말들 중 제1단말로부터 서비스 검색 키워드를 수신하고, 상기 키워드에 대응하는 목적 서비스를 검색하는 단계; 및 상기 목적 서비스의 서비스ID에 기초하여, 상기 접속단말들 중 상기 목적 서비스에 대응하는 제2단말과 상기 제1단말간의 통신을 중계하는 단계를 포함할 수 있다.
또 다른 실시예에 따르면, 통신 시스템에 의해 수행되며, 통신 방법을 수행하기 위해 매체에 저장된 컴퓨터 프로그램이 개시된다. 이때 통신 방법은, 통신 시스템이 수행하는 것으로서, 둘 이상의 접속단말들 각각에 대하여 디바이스ID를 부여하고, 각 접속단말이 보유하는 서비스에 대하여 서비스ID를 부여하는 단계; 상기 접속단말들 중 제1단말로부터 서비스 검색 키워드를 수신하고, 상기 키워드에 대응하는 목적 서비스를 검색하는 단계; 및 상기 목적 서비스의 서비스ID에 기초하여, 상기 접속단말들 중 상기 목적 서비스에 대응하는 제2단말과 상기 제1단말간의 통신을 중계하는 단계를 포함할 수 있다.
또 다른 실시예에 따르면, 접속단말에 대하여 디바이스ID를 부여하고, 각 접속단말이 보유하는 서비스에 대하여 서비스ID를 부여하는 리졸버를 포함하는 통신 시스템이 개시된다.
전술한 과제 해결 수단 중 어느 하나에 의하면, 본 명세서에서 개시되는 실시예들은, 통신 방법 및 이를 수행하기 위한 장치를 개시할 수 있다.
또한 실시예들은, 다종 다양한 개체에 대해 단순화된 통합형 ID를 부여함으로써 관리의 효율성이 향상되고, 서비스 제공자 간 정보 교류 및 협업이 용이하며, 각 서비스를 빌딩블록 삼아 풍부한 형태의 서비스로 매쉬업(mashup)할 수 있는 통신 방법 및 통신 시스템을 제공할 수 있다.
또한 실시예들은, 단말의 주소 정보가 IP에 한정되지 않고, non-IP도 포함하여 다양한 통신모듈을 사용하는 무선 센서 네트워크, 이종 네트워크를 지원할 수 있다.
또한 실시예들은, 여러 자원을 활용하여 다종 다양한 형태의 자원 혹은 서비스들을 통합, 효율적인 자원 관리를 제공할 수 있다.
또한, 실시예들은, 네트워크 내 캐싱(In-network Caching)을 활용하여 트래픽 증폭 정도를 낮출 수 있다.
또한 실시예들은, IoT 포함 다양한 기기가 수많은 센싱 정보를 만들거나 비디오 스트리밍이 많아서 전체적으로 데이터 트래픽이 많이 발생하는 환경, 협력적 네트워킹이 필요한 환경에 대하여 ID기반의 라우팅을 제공하고, 링크의 효율을 향상시킬 수 있다.
또한, 실시예들은, 콘텐츠의 해시값 혹은 서비스의 공개키의 해시값에 기초한 고정 길이의 서비스ID로 라우팅을 수행하여 패킷 처리 부담을 감소시킬 수 있다.
개시되는 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 개시되는 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 일 실시예에 따른 통신 시스템의 구성을 도시한 블록도이다.
도 2 내지 도 5는 일 실시예에 따른 통신 시스템의 동작을 설명하기 위한 예시도이다.
도 6 내지 도 8은 일 실시예에 따른 통신 방법을 설명하기 위한 순서도이다.
도 9는 일 실시예에 따른 통신 시스템이 수행하는 통신 방법을 설명하기 위한 예시도이다.
도 2 내지 도 5는 일 실시예에 따른 통신 시스템의 동작을 설명하기 위한 예시도이다.
도 6 내지 도 8은 일 실시예에 따른 통신 방법을 설명하기 위한 순서도이다.
도 9는 일 실시예에 따른 통신 시스템이 수행하는 통신 방법을 설명하기 위한 예시도이다.
아래에서는 첨부한 도면을 참조하여 다양한 실시예들을 상세히 설명한다. 아래에서 설명되는 실시예들은 여러 가지 상이한 형태로 변형되어 실시될 수도 있다. 실시예들의 특징을 보다 명확히 설명하기 위하여, 이하의 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 널리 알려져 있는 사항들에 관해서 자세한 설명은 생략하였다. 그리고, 도면에서 실시예들의 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 구성이 다른 구성과 "연결"되어 있다고 할 때, 이는 '직접적으로 연결'되어 있는 경우뿐 아니라, '그 중간에 다른 구성을 사이에 두고 연결'되어 있는 경우도 포함한다. 또한, 어떤 구성이 어떤 구성을 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한, 그 외 다른 구성을 제외하는 것이 아니라 다른 구성들을 더 포함할 수도 있음을 의미한다.
이하 첨부된 도면을 참고하여 실시예들을 상세히 설명하기로 한다.
다만, 설명에 앞서 이하에서 사용될 용어에 대해 정의한다.
실시예에 따른 통신 시스템(100)이 제공하는 통신 방법은 '접속단말(200)' 사이에서 통신을 중계할 수 있다. 이때 접속단말(200)의 요청에 따라 접속단말(200) 사이에서 송수신되는 리소스, 영상이나 이미지 등의 콘텐츠, 스트리밍이나 채팅 등의 서비스를 통합하여 '서비스'로 간주할 수 있다. 이때, 상술한 서비스 등에 부여되는 고유의 식별자를 '서비스ID'라 한다.
또한, '접속단말(200)'이란, 실시예에 따라 통신 시스템(100)에 접속하여 네트워킹을 수행하는 단말로서, 스마트폰, 노트북, PC 등의 사용자 단말, 서버 등 통신이 가능한 데이터 저장 장치 및 비콘 등 통신 중계기 등을 포함할 수 있다. 이때 접속단말(200)에 부여되는 고유의 식별자를 '디바이스ID'라 한다.
실시예에 따라, 통신 시스템(100)에 접속하여 서비스의 검색 및 제공을 요청하는 접속단말(200)을 제1단말, 제1단말이 요청한 서비스를 보유하는 접속단말(200)을 제2단말이라 한다.
이때, 제1단말 및 제2단말의 구분은, 용이한 설명을 위하여 실시예 상에서의 동작에 따라 구분한 것일 뿐, 단말 고유의 기능 상의 차이에 의한 구분은 아니다.
한편, 제1단말이 통신 시스템(100)에 접속하여 제공을 요청하는 서비스를 '목적 서비스'라고 한다.
그 외에 정의가 필요한 용어들은 이하에서 서술되는 관련 부분에서 정의하도록 한다.
도 1은 일 실시예에 따른 통신 시스템(100)의 구성을 도시한 블록도이다.
본 명세서의 실시예에 따르면, 통신 시스템(100)이 제공하는 통신 방법은 통신 기기, 토폴로지 및 서비스 등 통신의 요소를 통합적으로 관리할 수 있는 통합형 ID에 기반한 통신 방법을 지원할 수 있다.
도 1을 참고하면, 일 실시예에 따른 통신 시스템(100)은 리졸버(110), 매쳐(120) 및 SDN 컨트롤러(130)를 포함할 수 있다.
실시예에 따르면, 리졸버(110)는 통신 기기, 리소스, 서비스 등에 통합형 ID를 부여하고, 네트워크를 구성하며, 사용자가 요청하는 서비스에 대응하는 ID를 발견할 수 있다. 또한, 매쳐(120)는 통합형 ID에 기초하여 토폴로지를 관리하고, 접속단말(200) 사이의 통신 경로를 설정하며, 접속단말(200)의 요청에 따라 자원을 할당할 수 있다. 또한, SDN 컨트롤러(130)는 SDN 스위치를 제어할 수 있다. 이하에서는 리졸버(110), 매쳐(120) 및 SDN 컨트롤러(130) 등 통신 시스템(100)의 각 구성의 동작을 구체적으로 설명한다.
실시예에 따르면, 리졸버(110)는 통합형 ID를 부여하고, 관리할 수 있다. 실시예에 따르면, 자원, 서비스 등을 통합적으로 관리하기 위한 통합형 ID구조는 디바이스ID와 서비스ID의 2계층으로 구성될 수 있다.
실시예에 따르면 리졸버(110)는 고정된 길이의 ID를 생성할 수 있다. 이때, 고정된 길이의 ID는 해시값 또는 경량 관리값에 기초하여 설정될 수 있다. 가령, 해시값을 ID로 사용하는 경우, 보안성을 담보할 수 있다. 예를 들어, 영상, 이미지의 콘텐츠의 경우 그 자체의 해시값을 ID로 사용하고, 스트리밍, 채팅 등 서비스의 경우 서비스의 공개키의 해시값을 ID로 사용할 수 있으며, 이때 ID 자체에 보안성이 내재한다. 이와 같은 ID에 기초하여 콘텐츠의 경우 수신한 데이터가 올바른지 무결성을 검증할 수 있고, 스트리밍, 채팅 등 서비스의 경우 공개키의 무결성 및 대상의 인증 여부를 검증할 수 있다.
관련하여 도 2는, 실시예에 따른 통신 시스템(100)에서 리졸버(110)가 접속단말(200)에 대하여 디바이스ID를 부여하는 동작을 개략적으로 도시한 예시도이다.
도 2에 따르면, 리졸버(110)는 통신에 참가하고자 하는 접속단말(200)에 대하여 디바이스ID를 부여하고, 부여한 디바이스ID를 라우팅 주소와 맵핑하여 디바이스ID DB에 저장할 수 있다.
구체적으로, 리졸버(110)는 통신에 참가하고자 하는 접속단말(200)로부터 참가 요청을 수신할 수 있다. 이때, 참가 요청은 고유 코드(예를 들어 WiFi 또는 LTE 등의 규격의 통신 모듈의 라우팅 주소)를 포함할 수 있고, 리졸버(110)는 수신한 고유 코드가 디바이스ID DB에 이미 등록되어 있는지 확인할 수 있다. 그리고 접속단말(200)의 고유 코드가 등록되어 있지 않으면, 리졸버(110)는 접속단말(200)에 대하여 디바이스ID를 부여하고, 부여한 디바이스ID와 고유 코드를 맵핑하여 디바이스ID DB에 저장할 수 있다.
예를 들어, 도 2에 예시된 바와 같이 MAC 주소가 00-1a-e9-8d-08-73이고 IP 주소가 143.248.30.13인 WiFi 기기로부터 참가 요청을 수신한 경우, 리졸버(110)는 해당 접속단말(200)에 '001'이라는 디바이스ID를 부여하고, 해당 기기의 MAC주소와 IP주소를 디바이스ID '001'에 맵핑하여 저장할 수 있다.
실시예에 따르면, 디바이스ID DB는 디바이스ID 필드와, 통신 규격의 종류를 기재하기 위한 인터페이스(Interface) 필드, MAC 주소 필드와 IP주소 필드 등의 구성을 포함할 수 있다.
또한, 리졸버(110)는 접속단말(200)에 부여한 디바이스ID에 대한 정보를 해당 접속단말(200)로 전송할 수 있다.
이때, 리졸버(110)는 접속단말(200)에 대하여 고유한 ID와 LTE, Bluetooth, WiFi등 다양한 통신 가능한 모듈의 라우팅 주소를 등록함으로써, 다양한 방식으로 통신을 제공할 수 있으며, 라우팅 주소가 바뀔 때마다 정보를 갱신함으로써 손쉽게 모빌리티 문제를 해결할 수 있다.
한편, 리졸버(110)는 접속단말(200)이 보유하는 서비스를 식별하기 위하여, 접속단말(200)이 보유하는 각 서비스에 대하여 서비스ID를 부여할 수 있다. 관련하여 도 3은, 실시예에 따른 서비스ID의 구조를 개략적으로 도시한 도면이다.
도3을 참고하면, 서비스ID는 캐시 비트(Cache Bit), 시리얼 넘버(Serial Number) 및 세그먼트 플래그(Segmaent Flag)를 포함할 수 있다.
실시예에 따르면, 캐시 비트는 서비스ID의 첫 비트에 위치할 수 있으며, 중간 노드들 혹은 통신 참가 노드들은 캐시 비트를 참조하여 해당 서비스 캐싱 여부를 결정할 수 있다. 이에 따라 ID 확인만으로 캐시를 수행하여 네트워크 내 캐싱에 의한 링크를 최대한 효율적으로 활용할 수 있다.
또한, 세그먼트 플래그는 서비스ID가 가리키는 서비스의 분할 여부에 대한 정보를 나타낼 수 있다. 가령, 해당 플래그가 설정되어 있으면, 해당 서비스의 속성값으로 세그먼트 번호가 기록되어 있다는 것을 나타낸다. 따라서 실시예에 따르면, 세그먼트 단위로 캐싱이 가능하다.
한편, 도 4는 실시예에 따라 리졸버(110)가 서비스에 관한 정보를 갱신하는 동작을 개략적으로 도시한 예시도이다. 도 4에 도시된 바와 같이, 리졸버(110)는 통신에 참가한 접속단말(200)이 보유하고 있는 서비스를 등록하고, 서비스가 발생하거나 종료될 때마다 서비스 정보를 갱신할 수 있다.
구체적으로, 리졸버(110)는 접속단말(200)로부터 디바이스 ID, 서비스 ID 및 서비스별 속성정보를 포함하는 정보를 수신할 수 있다. 이때 속성 정보는, 예를 들어, 대역폭에 대한 정보나 세그먼트 번호 등을 포함할 수 있다.
그리고 리졸버(110)는 접속단말(200)로부터 수신한 서비스ID를 이용하여 서비스ID DB에 등록되어 있는 정보를 확인할 수 있다. 그리고 서비스ID DB에 미리 등록되어 있는 정보를 최근에 수신한 정보로 갱신할 수 있다.
또한, 리졸버(110)는 각 서비스에 대응하는 속성 정보를 각 서비스ID와 맵핑하여 보관할 수 있다.
한편, 리졸버(110)는 상술한 바와 같은 통합형 ID에 기초하여 제1단말 및 제2단말 사이의 통신을 중계할 수 있다.
먼저, 리졸버(110)는 접속단말(200) 중 서비스 검색을 요청하는 단말인, 제1단말로부터 서비스 검색 키워드를 수신하고, 수신한 키워드에 대응하는 목적 서비스를 검색할 수 있다.
또한, 리졸버(110)는 검색된 목적 서비스의 서비스ID를 제1단말에 송신할 수 있다. 목적 서비스의 서비스ID를 수신한 제1단말은 매쳐(120)에 자원 할당 및 경로 설정을 요청할 수 있다.
이때, 매쳐(120)는 제1단말로부터 수신한 서비스ID에 기초하여, 목적 서비스에 대응하는 제2단말을 검색하고, 제1단말에서 제2단말로의 경로를 설정하고, 자원을 할당할 수 있다. 또한, 매쳐(120)는 설정한 경로를 SDN 컨트롤러(130)에 제공할 수 있다. 실시예에 따르면, 매쳐(120)는 자원과 토폴로지 정보에 기초하여 Dijkstra 알고리즘에 따라 최적의 경로를 찾을 수 있다.
또한, SDN 컨트롤러(130)는 네트워크의 SDN 스위치들의 플로우 테이블을 수정할 수 있다. 또한, 경로 설정 및 자원 할당이 완료된 것을 확인한 제1단말은, 제2단말에 전송할 인터레스트 패킷을 생성할 수 있다. 이때 SDN스위치들은 제1단말로부터 인터레스트 패킷을 수신하고, 상술한 플로우 테이블에 따라 제2단말에 전송할 수 있다.
이때, 리졸버(110) 및 매쳐(120)에 의해 자원의 상태가 중앙집중형으로 관리되고, 경로가 설정되고, SDN 컨트롤러(130)가 포워딩 정보를 제공하므로, SDN스위치는 별도의 PIT를 관리할 필요가 없다.
이때, 인터레스트 패킷의 이동 경로 중 서비스ID에 대응하는 중간 노드가 있으면, 중간 노드는 인터레스트 패킷에 대응하는 데이터 패킷을 생성하여 제1단말로 전송할 수 있다. 다시 말해, 인터레스트 패킷의 이동 경로 중 캐싱이 되어 있다면, SDN스위치가 데이터 패킷을 생성하여 제1단말로 전달할 수 있다. 실시예에 따르면, 데이터 패킷을 수신한 제1단말은 응답 패킷(Data_Ack Packet)을 제2단말에 전송할 수 있다.
한편, 만약 캐싱이 없으면, 제2단말은 인터레스트 패킷에 대응하는 데이터 패킷을 생성하고, SDN스위치는 제2단말이 생성한 데이터 패킷을 제1단말로 전달할 수 있다. 이때, 데이터 패킷을 수신한 제1단말은 응답 패킷을 생성하여 제2단말로 송신할 수 있다.
상술한 바와 같은, 인터레스트 패킷, 데이터 패킷 및 응답 패킷을 포함하는 패킷은 디바이스ID 및 서비스ID을 포함하는 헤더를 포함할 수 있다.
도 5를 참고하면, 실시예에 따른 헤더를 도식화한 예시도가 도시되어 있다.
도 5에 따르면, 통합형 ID 기반의 헤더는 다음과 같은 정보를 포함할 수 있다. ① Version: 통합형 ID 기반 통신을 위한 프로토콜의 버전에 대한 정보, ② Packet Type: 인터레스트 패킷, 데이터 패킷, 응답 패킷 중 어느 것인지에 대한 정보, ③ Hash Type: 통합형 ID를 만드는데 사용된 해시 알고리즘에 관한 정보, ④ Hop Limit: 패킷의 Life time을 결정하는 정보로서 Hop Limit가 0이 되면 자동 폐기됨, ⑤ Header Len: 헤더의 전체 길이에 대한 정보, ⑥ PTC: 신뢰성 있는 전송 여부에 대한 정보, ⑦ DF: 설정되면 단편화를 금지함, ⑧ MF: 설정되면 단편화되어 있음을 표시, ⑨ Frag. Offset: 단편화되어 있을 때, 전체 데이터에 대한 오프셋 정보, ⑩ Src. Flex ID: 제1단말의 디바이스ID, ⑪ Dst. Flex ID: 서비스의 ID, ⑫ Packet Len: 헤더와 데이터의 크기를 합한 전체 길이에 대한 정보, ⑬ Seq Number: (PTC가 설정되어 있을 때) 시퀀스 번호, ⑭ Ack Number: (PTC가 설정되어 있을 때) 응답 번호, ⑮ Option Header Field: 옵션 정보 등을 포함할 수 있다.
실시예에 따르면, 헤더는 해시를 SHA1으로 사용하게 되면, ID가 총 20바이트에 해당하게 되어 신뢰성 있는 전송에서는 62바이트, 신뢰성 없는 전송에서는 54바이트가 할당되므로, 비교적 적은 리소스를 필요로 한다.
한편, 도 6 내지 도 8는 통신 시스템(100)이 수행하는 통신 방법을 설명하기 위한 순서도들이다. 도 6 내지 도 8에 도시된 실시예에 따른 통신 방법은 도 1 내지 도 5와 관련한 실시예에 따른 통신 시스템(100)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 1 내지 도 5와 관련한 실시예에 따른 통신 시스템(100)에 관하여 이상에서 기술한 내용은 도 6 내지 도 8에 도시된 실시예들에 따른 데이터 분석 방법에도 적용될 수 있다.
도 6을 참고하면, 통신 시스템(100)은 둘 이상의 접속단말(200) 각각에 대하여 디바이스ID를 부여하고, 각 접속단말(200)이 보유하는 서비스에 대하여 서비스ID를 부여할 수 있다(S61). 이때, 통신 시스템(100)은 접속단말(200)에 대하여 디바이스ID를 부여하되, 상기 디바이스ID를 라우팅 주소와 맵핑하여 디바이스ID DB에 저장할 수 있다. 또한, 서비스ID는 캐시 비트, 시리얼 넘버 및 세그먼트 플래그를 포함하여 구성될 수 있다. 또한, 통신 시스템(100)은 각 접속단말(200)이 보유하는 서비스에 대하여 서비스ID를 부여하되, 각 서비스에 대응하는 해시값에 기초하여 서비스ID를 부여할 수 있다.
그리고 통신 시스템(100)은 접속단말(200) 중 제1단말로부터 서비스 검색 키워드를 수신하고(S62), 키워드에 대응하는 목적 서비스를 검색할 수 있다(S63). 이때, 통신 시스템(100)은 서비스ID DB에 포함된 정보에 기초하여 목적 서비스를 검색할 수 있다.
또한, 통신 시스템(100)은 검색된 목적 서비스의 서비스ID에 기초하여, 접속단말(200) 중 목적 서비스에 대응하는 제2단말과 제1단말간의 목적 서비스에 대한 통신을 중계할 수 있다(S64).
실시예에 따르면, 통신 시스템(100)은 통신을 중계함에 있어서(S64), 제1단말 및 제2단말간에 데이터 패킷을 전달할 수 있다. 이때 데이터 패킷은 인터레스트 패킷, 데이터 패킷 및 응답 패킷 중 적어도 하나를 포함할 수 있다. 이때, 패킷의 헤더는 서비스ID를 생성하는 데 사용된 해시 알고리즘에 관한 정보를 포함할 수 있다.
도 7을 참고하면, 통신 시스템(100)은 통신을 중계함에 있어서(S64), 디바이스ID에 기초하여 제1단말에서 제2단말로의 경로를 설정하고(S71), 제1단말이 생성한 인터레스트 패킷을 경로에 따라 전달할 수 있다(S72).
다음으로 도 8을 참고하면, 통신 시스템(100)은 제1단말이 생성한 인터레스트 패킷을 경로에 따라 전달하는 중, 인터레스트 패킷에 대응하는 캐싱이 있으면, 캐싱에 기초하여 생성한 데이터 패킷을 제1단말로 전달할 수 있다(S82). 한편, 캐싱이 없으면, 제2단말이 인터레스트 패킷에 대응하여 생성한 데이터 패킷을 제1단말로 전달할 수 있다(S83). 데이터 패킷을 전달받은 제1단말은 응답 패킷을 생성하며, 통신 시스템(100)은 응답 패킷을 제2단말로 전달할 수 있다(S84).
한편, 도 9를 참고하면, 엣지 네트워크를 가정하여 통신 시스템(100)이 수행하는 통신 방법의 일 실시예로서, 통신 방법은 데이터 평면(Data Plane)과 제어 평면(Control Plane) 상에서 수행될 수 있다.
도 9에 따르면, 제어 평면은 리졸버, 매쳐 및 SDN 컨트롤러를 구성으로 할 수 있다. 또한, 제어 평면을 기준으로 윗단(Northbound API)의 데이터 평면은 서비스 검색을 요청하거나 서비스를 보유하고 있는 접속단말(200)을 포함하며, 엣지 네트워크에 등록되어 있는 서비스/콘텐츠/리소스를 사용하는 역할을 한다. 또한, 제어 평면을 기준으로 아랫단(Southbound API)에는 엣지 네트워크에 기기/토폴로지 및 서비스/콘텐츠/리소스가 등록될 수 있다.
실시예에 따르면, 데이터 평면 내에서 접속단말(200)은 서로 디바이스ID 및 서비스ID를 통해 데이터를 송수신할 수 있다.
이상의 실시예들에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field programmable gate array) 또는 ASIC 와 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램특허 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다.
구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로부터 분리될 수 있다.
뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU 들을 재생시키도록 구현될 수도 있다.
도 6 내지 도 8을 통해 설명된 실시예들에 따른 통신 방법은 컴퓨터에 의해 실행 가능한 명령어 및 데이터를 저장하는, 컴퓨터로 판독 가능한 매체의 형태로도 구현될 수 있다. 이때, 명령어 및 데이터는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 소정의 프로그램 모듈을 생성하여 소정의 동작을 수행할 수 있다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터 기록 매체일 수 있는데, 컴퓨터 기록 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함할 수 있다. 예를 들어, 컴퓨터 기록 매체는 HDD 및 SSD 등과 같은 마그네틱 저장 매체, CD, DVD 및 블루레이 디스크 등과 같은 광학적 기록 매체, 또는 네트워크를 통해 접근 가능한 서버에 포함되는 메모리일 수 있다.
또한 도 6 내지 도 8을 통해 설명된 실시예들에 따른 통신 방법은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 컴퓨터 프로그램(또는 컴퓨터 프로그램 제품)으로 구현될 수도 있다. 컴퓨터 프로그램은 프로세서에 의해 처리되는 프로그래밍 가능한 기계 명령어를 포함하고, 고레벨 프로그래밍 언어(High-level Programming Language), 객체 지향 프로그래밍 언어(Object-oriented Programming Language), 어셈블리 언어 또는 기계 언어 등으로 구현될 수 있다. 또한 컴퓨터 프로그램은 유형의 컴퓨터 판독가능 기록매체(예를 들어, 메모리, 하드디스크, 자기/광학 매체 또는 SSD(Solid-State Drive) 등)에 기록될 수 있다.
따라서 도 6 내지 도 8을 통해 설명된 실시예들에 따른 통신 방법은 상술한 바와 같은 컴퓨터 프로그램이 컴퓨팅 장치에 의해 실행됨으로써 구현될 수 있다. 컴퓨팅 장치는 프로세서와, 메모리와, 저장 장치와, 메모리 및 고속 확장포트에 접속하고 있는 고속 인터페이스와, 저속 버스와 저장 장치에 접속하고 있는 저속 인터페이스 중 적어도 일부를 포함할 수 있다. 이러한 성분들 각각은 다양한 버스를 이용하여 서로 접속되어 있으며, 공통 머더보드에 탑재되거나 다른 적절한 방식으로 장착될 수 있다.
여기서 프로세서는 컴퓨팅 장치 내에서 명령어를 처리할 수 있는데, 이런 명령어로는, 예컨대 고속 인터페이스에 접속된 디스플레이처럼 외부 입력, 출력 장치상에 GUI(Graphic User Interface)를 제공하기 위한 그래픽 정보를 표시하기 위해 메모리나 저장 장치에 저장된 명령어를 들 수 있다. 다른 실시예로서, 다수의 프로세서 및(또는) 다수의 버스가 적절히 다수의 메모리 및 메모리 형태와 함께 이용될 수 있다. 또한 프로세서는 독립적인 다수의 아날로그 및(또는) 디지털 프로세서를 포함하는 칩들이 이루는 칩셋으로 구현될 수 있다.
또한 메모리는 컴퓨팅 장치 내에서 정보를 저장한다. 일례로, 메모리는 휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 다른 예로, 메모리는 비휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 또한 메모리는 예컨대, 자기 혹은 광 디스크와 같이 다른 형태의 컴퓨터 판독 가능한 매체일 수도 있다.
그리고 저장 장치는 컴퓨팅 장치에게 대용량의 저장공간을 제공할 수 있다. 저장 장치는 컴퓨터 판독 가능한 매체이거나 이런 매체를 포함하는 구성일 수 있으며, 예를 들어 SAN(Storage Area Network) 내의 장치들이나 다른 구성도 포함할 수 있고, 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치, 혹은 테이프 장치, 플래시 메모리, 그와 유사한 다른 반도체 메모리 장치 혹은 장치 어레이일 수 있다.
상술된 실시예들은 예시를 위한 것이며, 상술된 실시예들이 속하는 기술분야의 통상의 지식을 가진 자는 상술된 실시예들이 갖는 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 상술된 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 명세서를 통해 보호 받고자 하는 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태를 포함하는 것으로 해석되어야 한다.
100: 통신 시스템 110: 리졸버
120: 매쳐 130: SDN 컨트롤러
200: 접속단말
120: 매쳐 130: SDN 컨트롤러
200: 접속단말
Claims (12)
- 통신 시스템이 수행하는 통신 방법에 있어서,
둘 이상의 접속단말들 각각에 대하여 디바이스ID를 부여하고, 각 접속단말이 보유하는 서비스에 대하여 서비스ID를 부여하는 단계;
상기 접속단말들 중 제1단말로부터 서비스 검색 키워드를 수신하고, 상기 키워드에 대응하는 목적 서비스를 검색하는 단계; 및
상기 목적 서비스의 서비스ID에 기초하여, 상기 접속단말들 중 상기 목적 서비스에 대응하는 제2단말과 상기 제1단말간의 통신을 중계하는 단계를 포함하며,
상기 통신을 중계하는 단계는,
상기 디바이스 ID에 기초하여 상기 제1 단말로부터 상기 제2 단말까지의 통신 경로를 설정하는 단계;
상기 제1 단말이 상기 목적 서비스의 서비스 ID를 헤더에 포함하는 인터레스트 패킷을 생성하여 상기 통신 경로를 따라 전송하는 단계; 및
상기 인터레스트 패킷이 상기 통신 경로를 따라 이동하는 중에 상기 헤더에 포함된 서비스 ID에 대응되는 노드가 발견되면, 상기 노드가 상기 인터레스트 패킷에 대응되는 데이터 패킷을 생성하여 상기 제1 단말에 전송함으로써 상기 목적 서비스를 제공하는 단계를 포함하는, 통신 방법. - 제1항에 있어서,
상기 서비스ID를 부여하는 단계는,
상기 접속단말에 대하여 디바이스ID를 부여하되, 상기 디바이스ID를 라우팅 주소와 맵핑하여 디바이스ID DB에 저장하는 것을 특징으로 하는, 통신 방법. - 제1항에 있어서,
상기 서비스ID는 캐시 비트, 시리얼 넘버 및 세그먼트 플래그를 포함하는 것을 특징으로 하는, 통신 방법. - 제1항에 있어서,
상기 서비스ID를 부여하는 단계는,
각 접속단말이 보유하는 서비스에 대하여 서비스ID를 부여하되, 각 서비스에 대응하는 해시값에 기초하여 서비스ID를 부여하는 것을 특징으로 하는, 통신 방법. - 제4항에 있어서,
상기 통신을 중계하는 단계는,
상기 제1단말 및 상기 제2단말간에 인터레스트 패킷, 데이터 패킷 및 응답 패킷 중 적어도 하나를 전달하되, 상기 패킷의 헤더는 상기 서비스ID를 생성하는 데 사용된 해시 알고리즘에 관한 정보를 포함하는 것을 특징으로 하는, 통신 방법. - 삭제
- 삭제
- 제 1 항에 기재된 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체.
- 통신 시스템에 의해 수행되며, 제 1 항에 기재된 방법을 수행하기 위해 기록매체에 저장된 컴퓨터 프로그램.
- 접속단말들에 대하여 디바이스ID를 부여하고, 각 접속단말이 보유하는 서비스에 대하여 서비스ID를 부여하며, 상기 접속단말들 중 제1 단말로부터 서비스 검색 키워드를 수신하면 상기 키워드에 대응하는 목적 서비스를 검색하는 리졸버;
상기 목적 서비스의 서비스 ID에 대응하는 제2 단말을 검색하고, 상기 디바이스 ID에 기초하여 상기 제1 단말로부터 상기 제2 단말까지의 통신 경로를 설정하는 매쳐; 및
상기 서비스 ID에 기초하여 상기 접속단말들 간의 패킷을 전달하는 SDN 스위치를 제어하는 SDN 컨트롤러를 포함하며,
상기 SDN 컨트롤러는, 상기 제1 단말이 상기 목적 서비스의 서비스 ID를 헤더에 포함하는 인터레스트 패킷을 생성하여 전달하면 상기 인터레스트 패킷을 상기 설정된 통신 경로를 따라 전송하며, 상기 인터레스트 패킷이 상기 통신 경로를 따라 이동하는 중에 상기 헤더에 포함된 서비스 ID에 대응되는 노드가 발견되면, 상기 노드가 상기 인터레스트 패킷에 대응되는 데이터 패킷을 생성하여 상기 제1 단말에 전송함으로써 상기 목적 서비스를 제공하도록 제어하는, 통신 시스템. - 삭제
- 삭제
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160158686 | 2016-11-25 | ||
KR20160158686 | 2016-11-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180059387A KR20180059387A (ko) | 2018-06-04 |
KR102023115B1 true KR102023115B1 (ko) | 2019-09-20 |
Family
ID=62628334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170159700A KR102023115B1 (ko) | 2016-11-25 | 2017-11-27 | 통합형 id 기반의 통신 방법 및 통신 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102023115B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102214640B1 (ko) * | 2019-11-26 | 2021-02-15 | 부산대학교 산학협력단 | 이종 IoT 플랫폼 식별체계 상호연동을 위한 관리체계 방법 및 장치 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004362002A (ja) * | 2003-05-30 | 2004-12-24 | Ntt Docomo Inc | サービス仲介装置、通信装置及び方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102094505B1 (ko) * | 2013-10-04 | 2020-03-27 | 삼성전자주식회사 | 디바이스 및 디바이스에 의한 BLE(Bluetooth Low Energy) 패킷 브로드캐스트 방법, 디바이스에 의한 AP(application processor)의 동작 모드 조절 방법 |
KR20160116364A (ko) * | 2015-03-30 | 2016-10-10 | 권형석 | 전자장치를 이용한 정보제공 운영 시스템 및 서비스 이용 방법 |
-
2017
- 2017-11-27 KR KR1020170159700A patent/KR102023115B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004362002A (ja) * | 2003-05-30 | 2004-12-24 | Ntt Docomo Inc | サービス仲介装置、通信装置及び方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20180059387A (ko) | 2018-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020259509A1 (zh) | 一种应用迁移方法及装置 | |
US12047287B2 (en) | Data transmission method and apparatus, network adapter, and storage medium | |
EP3070887B1 (en) | Communication method, device and system for virtual extensible local area network | |
TWI675572B (zh) | 網路服務系統及網路服務方法 | |
KR101857511B1 (ko) | 가상 머신 마이그레이션을 판정하는 방법 및 장치 | |
WO2015196815A1 (zh) | Ip硬盘与存储***,及其数据操作方法 | |
US20150067033A1 (en) | Relay Server Load Balancing and Placement using In-Band Signaling | |
WO2016177145A1 (zh) | 报文发送方法及装置 | |
WO2015196755A1 (zh) | 一种身份位置分离网络中的地址分配方法及接入服务节点 | |
CN106507414B (zh) | 报文转发方法及装置 | |
KR101786620B1 (ko) | 소프트웨어 정의 네트워크에서 서브넷을 지원하는 방법, 장치 및 컴퓨터 프로그램 | |
JP2016019270A (ja) | 通信方法及び通信プログラム | |
EP3086512B1 (en) | Implementation method and apparatus for vlan to access vf network and fcf | |
US9948598B2 (en) | Delivery control device, data delivery system, delivery control method, and non-transitory computer readable medium storing delivery control program | |
US10574579B2 (en) | End to end quality of service in storage area networks | |
CN114422218A (zh) | 一种租户隔离方法、装置及存储介质 | |
KR102023115B1 (ko) | 통합형 id 기반의 통신 방법 및 통신 시스템 | |
US20150350079A1 (en) | Method of message routing for a distributed computing system | |
JP6193155B2 (ja) | 通信装置、通信システム、通信方法およびプログラム | |
US10798195B2 (en) | Fast roaming with shared services in enterprise fabric based networks | |
KR101378313B1 (ko) | 오픈플로우(OpenFlow)를 이용하여 사용자 단말 장치와 로컬 호스트 사이의 통신을 지원하기 위한 방법, 장치, 시스템 및 컴퓨터 판독 가능한 기록 매체 | |
JP5937563B2 (ja) | 通信基地局およびその制御方法 | |
US20150109957A1 (en) | Transmission path control system | |
US20230171673A1 (en) | Method and system for routing an internet protocol data packet between wireless computer devices connected to a cellular network | |
KR101786616B1 (ko) | 소프트웨어 정의 네트워크에서 서브넷을 지원하는 방법, 장치 및 컴퓨터 프로그램 |
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 |