KR20240077376A - 위치 기반 데이터 통신 시스템 및 그것의 동작방법 - Google Patents
위치 기반 데이터 통신 시스템 및 그것의 동작방법 Download PDFInfo
- Publication number
- KR20240077376A KR20240077376A KR1020230042694A KR20230042694A KR20240077376A KR 20240077376 A KR20240077376 A KR 20240077376A KR 1020230042694 A KR1020230042694 A KR 1020230042694A KR 20230042694 A KR20230042694 A KR 20230042694A KR 20240077376 A KR20240077376 A KR 20240077376A
- Authority
- KR
- South Korea
- Prior art keywords
- communication device
- data
- master node
- destination vector
- communication
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 507
- 238000000034 method Methods 0.000 title claims abstract description 75
- 239000013598 vector Substances 0.000 claims abstract description 327
- 239000000872 buffer Substances 0.000 description 31
- 238000010586 diagram Methods 0.000 description 27
- 230000005540 biological transmission Effects 0.000 description 11
- 230000014509 gene expression Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000002591 computed tomography Methods 0.000 description 2
- 238000002595 magnetic resonance imaging Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000002583 angiography Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 230000036760 body temperature Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/20—Communication route or path selection, e.g. power-based or shortest path routing based on geographic position or location
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/033—Topology update or discovery by updating distance vector protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/248—Connectivity information update
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/18—Selecting a network or a communication service
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명의 일 실시예에 따른 위치 기반 데이터 통신 시스템의 동작방법은, 제1 통신 장치로부터, 제2 통신 장치가 제1 목적벡터, 제2 목적벡터 및 데이터를 수신하는 동작 및, 상기 제2 통신 장치가, 상기 제1 목적벡터 또는 상기 제2 목적벡터 중 적어도 하나에 기초하여 상기 데이터를 제3 통신 장치로 전송하는 동작을 포함할 수 있다.
Description
본 발명은 위치 기반 데이터 통신 시스템 및 그것의 동작방법에 관한 것이다.
통신 기술 및 통신 장치가 나날이 발전하면서 통신속도는 시간을 거듭할수록 빨라지고 있다. 통신의 속도는 통신사업자의 차별화 수단이자 훌륭한 마케팅 도구이다. 그러나, 사용자들은 통신사들이 홍보하는 통신속도 수치를 체감하지 못한다는 불만을 표시하기도 한다.
실제로, 여러 통신사들이 통신속도를 최대치로 구현하였다고 하지만, 인터넷 품질 측정 서비스에 따르면, 통신사들이 구현했다는 수치에 한참 미치지 못하여 이슈가 되기도 한다.
이러한 현상에는 여러가지 이유가 있겠지만, 그 중 하나는 TCP/IP 프로토콜 통신 시스템을 기반으로 하고, 수많은 보안제품으로 인프라를 구성하고 있는 구조적 문제점이다. 현재 통신 인프라는 서버자원 보호를 위하여 부수적인 네트워크 장비가 복잡하게 얽히고 설켜있어 데이터 처리 과정이 매우 복잡하고, 자연스럽게 비용 역시 높게 책정이 되고 있다. 나아가, 스마트폰의 활성화로 데이터 통신 부하량이 기하급수적으로 증가하고 있는데, TCP/IP 내부가 공개되어 있어 TCP/IP 프로토콜을 기반으로 한 통신 시스템에서 이러한 문제를 해결하는 것은 사실상 불가능하다는 전문가 견해가 적지 않다.
위 문제점을 해결하기 위하여 TCP/IP를 대체할 수 있는 효율적이고, 간단한 데이터 처리 과정을 가지고 있는 프로토콜 개발이 필요하다.
본 발명은 기존 프로토콜과 대비하여 높은 확장성과 간단한 데이터 처리 및 높은 경제성을 가질 수 있는 통신 프로토콜로써, 위치 기반 데이터 통신 시스템 및 그것의 동작방법을 제공하는 것을 목적으로 한다.
본 발명은 기존 프로토콜과 대비하여 신속하고 효율적인 데이터 송수신이 가능한 통신 프로토콜로써, 위치 기반 데이터 통신 시스템 및 그것의 동작방법을 제공하는 것을 목적으로 한다.
본 발명의 일 실시예에 따른 위치 기반 데이터 통신 시스템의 동작 방법은 제1 통신 장치로부터, 제2 통신 장치가 제1 목적벡터, 제2 목적벡터 및 데이터를 수신하는 동작 및, 상기 제2 통신 장치가, 상기 제1 목적벡터 또는 상기 제2 목적벡터 중 적어도 하나에 기초하여 상기 데이터를 제3 통신 장치로 전송하는 동작을 포함할 수 있다.
일 실시예에 있어서, 상기 데이터를 상기 제3 통신 장치로 전송하는 동작은, 상기 제1 목적벡터 또는 상기 제2 목적벡터 중 적어도 하나를 전송하는 동작을 포함할 수 있다.
일 실시예에 있어서, 상기 제1 통신 장치는 적어도 하나의 통신 장치를 포함하는 제1 통신 장치 그룹에 포함되고, 상기 제3 통신 장치는 적어도 하나의 통신 장치를 포함하는 제2 통신 장치 그룹에 포함될 수 있다.
일 실시예에 있어서, 상기 제1 목적벡터는 상기 제2 통신 장치 그룹에 연관되고, 상기 제2 목적벡터는 상기 제3 통신 장치에 연관될 수 있다.
일 실시예에 있어서, 상기 제1 목적벡터, 상기 제2 목적벡터 및 데이터는 하나의 패킷 데이터에 포함될 수 있다.
일 실시예에 따른 위치 기반 데이터 통신을 수행하는 통신 장치는, 메모리, 외부 통신 장치와 신호를 송신 또는 수신하기 위한 통신 회로, 및 상기 메모리 및 상기 통신 회로에 전기적으로 연결된 프로세서를 포함할 수 있다.
일 실시예에 따르면, 상기 프로세서는 제1 통신 장치로부터, 제2 통신 장치가 제1 목적벡터, 제2 목적벡터 및 데이터를 수신하고, 상기 제2 통신 장치가, 상기 제1 목적벡터 또는 상기 제2 목적벡터 중 적어도 하나에 기초하여 상기 데이터를 제3 통신 장치로 전송하도록 할 수 있다.
본 발명의 위치 기반 통신 장치 및 그것의 동작방법에 따르면, 실제 위치(혹은 가상 위치)를 활용하므로 IP주소 부족 문제를 해결할 수 있으며, 데드락 이슈가 발생되지 아니하며, 기존 프로토콜보다 패킷의 크기가 작고, 최적의 경로를 쉽게 검색할 수 있어 패킷 전송을 빠르게 처리할 수 있다.
본 발명의 위치 기반 통신 장치 및 그것의 동작방법에 따르면, 실제 위치(혹은 가상 위치)를 활용하므로 IP주소 부족 문제를 해결할 수 있으며, 통신 장치 그룹의 개념을 제시하여 신속하고 효과적으로 패킷 전송을 수행할 수 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시예에 따른 데이터 통신 네트워크 환경을 설명하기 위한 도면이다.
도 2a 내지 도 2c는 본 발명의 실시예에 따른 통신 장치를 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 데이터 통신의 동작을 나타낸 흐름도이다.
도 4a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 4b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 5a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 5b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 6a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 6b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 7a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 7b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 8a 내지 8b는 본 발명의 일 실시예에 따른 데이터 통신 네트워크 환경을 설명하기 위한 도면이다.
도 9a 내지 9b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 10은 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 12는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 13은 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 14는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 15는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 1은 본 발명의 일 실시예에 따른 데이터 통신 네트워크 환경을 설명하기 위한 도면이다.
도 2a 내지 도 2c는 본 발명의 실시예에 따른 통신 장치를 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 데이터 통신의 동작을 나타낸 흐름도이다.
도 4a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 4b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 5a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 5b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 6a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 6b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 7a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 7b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 8a 내지 8b는 본 발명의 일 실시예에 따른 데이터 통신 네트워크 환경을 설명하기 위한 도면이다.
도 9a 내지 9b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 10은 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 12는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 13은 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 14는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
도 15는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다.
이하, 본 발명의 다양한 실시예가 첨부된 도면을 참조하여 기재된다. 본 발명은 특정 실시예에 대해 한정되지 아니하며, 본 발명의 실시예들의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 문서에서, "가진다", "가질 수 있다", "포함한다", 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 문서에서, "A 또는 B", "A 또는/및 B 중 적어도 하나", 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B", "A 및 B 중 적어도 하나", 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 문서에서 사용된 "제1", "제2", "첫째", 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 본 문서에 기재된 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 바꾸어 명명될 수 있다.
본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)", 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성(또는 설정)된"은 "특별히 설계된(specifically designed to)"것만을 반드시 의미하지는 않는다.
본 문서에 있어서 제1 전자 장치(들)(또는 제1 통신장치(들))와 제2 전자 장치(들)(또는 제2 통신장치(들)) 사이에서 송수신되는, 예컨대, "명령(command)", "명령어(instruction)", "제어 정보", "메시지", "정보", "데이터", "패킷", "데이터 패킷", "인텐트(intent)" 및/또는 "신호"는 그 표현에 구애됨 없이 인간이 인지할 수 있는 사상이나 구체적인 전기적 표현(예: 디지털 부호/아날로그 물리량)을 포함하거나 그 자체를 지칭하는 것일 수 있다. 상기 열거된 예시적인 표현이 사용하게 되는 맥락에 따라 다양하게 해석될 수 있음은 본 문서에서 개시된 발명이 속한 기술분야의 통상의 기술자에게 자명할 것이다. 본 문서에서 “가 B보다 크다”는 단순히 “가 B보다 크다”는 의미를 갖고 있을 뿐만 아니라 “가 B보다 같거나 크다”라는 의미도 포함한다.
본 문서에서 사용된 용어들은 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 다른 실시예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은 관련 기술의 문맥 상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시예들을 배제하도록 해석될 수 없다.
도 1은 본 발명의 일 실시예에 따른 데이터 통신 네트워크 환경을 설명하기 위한 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 데이터 통신 시스템은 적어도 하나 이상의 통신 장치들(10)과 적어도 하나 이상의 전자 장치들(20)을 포함할 수 있다.
통신 장치(10)는 라우터(router), 스위치(switch), 허브(hub) 등 데이터 통신에 활용될 수 있는 통신장비를 포함할 수 있다. 적어도 하나 이상의 통신 장치는 서로 다른 네트워크망을 연결하는 엑세스 라우터로써 게이트웨이 역할을 할 수 있다.
전자 장치(20)는 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 예를 들어, 컴퓨터는 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 또한, 전자 장치(20)는 휴대성과 이동성이 보장되는 무선 통신 장치로서, 내비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communication), PDC(Personal Digital Cellular), PHS(Personal Handphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(smartphone), 스마트 패드(smartpad), 태블릿 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.
네트워크는 통신 네트워크(telecommunications network), 컴퓨터 네트워크(computer network), 인터넷, 혹은 전화망(telephone network) 중 적어도 하나를 포함할 수 있다. 네트워크에 액세스하기 위한 통신 프로토콜은, 예를 들면, LTE(Long-Term Evolution), LTE-A(LTE Advanced), CDMA(Code Division Multiple Access), WCDMA(Wideband CDMA), UMTS(Universal Mobile Telecommunications System), WiBro(Wireless Broadband), GSM(Global System for Mobile communications), 5G 표준통신 프로토콜, TCP/IP(Transmission Control Protocol/Internet Protocol), UDP(User Datagram Protocol) 중 적어도 하나를 사용할 수 있다.
다만, 이는 예시적인 것으로서, 본 발명이 적용되는 실시예에 따라 당해 기술분야에서 적용 가능한 다양한 유, 무선 통신 기술이 이용될 수 있다.
도 2a는 본 발명의 일 실시예에 따른 통신 장치(100)를 나타내는 블록도이다. 특히, 도 2a는 n차원 좌표계 기준을 적용하는 경우에 구성될 수 있는 통신 장치를 나타내는 블록도이다.
도 2a에 도시된 바와 같이, 통신 장치(100)는 먹스(201), 적어도 하나 이상의 버퍼들(203), 적어도 하나 이상의 센더들(205), 프로세서(207) 및 메모리(209)를 포함할 수 있다.
본 발명의 실시예에 따르면, 통신 장치(100)는 패킷 데이터를 외부로부터 입력받아 또 다른 통신 장치로 패킷 데이터를 제공할 수 있다. 본 발명의 일 실시예에 따르면, 패킷 데이터는 목적벡터(destination vector), 데이터정보 및 ECC(Error Correction code)정보를 포함할 수 있다. 다만, 이는 일 실시예일 뿐이며, 이에 제한되지 않는다.
본 발명의 일 실시예에 따르면, 통신 장치(100)는 목적벡터를 추출하고, 추출된 목적벡터와 데이터정보 및 ECC 정보를 캡슐화하여 패킷 데이터를 생성할 수 있다.
본 발명의 일 실시예에 따르면, 통신 장치(100)는 패킷 데이터의 전송이 시작되는 출발지에 해당하는 통신 장치의 위치와 목적지에 해당하는 통신 장치의 위치를 활용하여 목적벡터를 추출할 수 있다. 통신 장치들의 위치는 직각좌표계, 구면좌표계, 원통좌표계 중 어느 하나로 표현될 수 있다.
한편, 본 발명의 실시예에 따르면, 통신 장치(100)는 실제 위치를 반영한 좌표값이 통신 장치(100)의 식별정보로 미리 설정되어 있을 수 있다. 상기 좌표값은 실제 위치를 반영할 수도 있지만, 설계자가 가상으로 설정할 수도 있다. 서로 다른 위치에 존재하는 통신 장치는 서로 좌표값이 다를 수 있다.
본 발명의 실시예에 따르면, 목적벡터는 출발지에 해당하는 통신 장치에 대응하는 좌표값과 목적지에 해당하는 통신 장치에 대응하는 좌표값에 좌표차이를 의미한다. 본 발명의 실시예에 따르면, 좌표값은 직각좌표계, 구면좌표계, 원통좌표계 등 위치를 구분할 수 있는 n차원 좌표계에 따른 값을 지칭할 수 있다.
먹스(201)는 입력된 패킷 데이터에 포함된 목적벡터에 기초하여 기 설정된 기준에 따라 적어도 하나 이상의 버퍼들(203)에 패킷 데이터를 제공할 수 있다.
버퍼(203)는 먹스(201)로부터 제공받은 패킷 데이터를 센더(205)에 제공할 수 있다.
센더(205)는 버퍼(203)로부터 제공받은 패킷 데이터를 외부 또 다른 통신 장치 혹은 전자 장치에 제공할 수 있다. 본 발명의 실시예에 따르면, 센더(205)는 기 설정된 방향으로만 패킷 데이터를 전송할 수 있다.
프로세서(207)는 중앙처리장치(CPU), 어플리케이션 프로세서(AP) 혹은 커뮤니케이션 프로세서(CP) 중 적어도 하나 이상을 포함할 수 있다. 프로세서(270)는 먹스(201), 버퍼(203) 및 센더(205)와 전기적으로 연결되며, 동작 중에, 메모리(209)에 저장된 명령어, 프로그램 혹은 소프트웨어에 따라 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다. 따라서, 상기 명령어, 어플리케이션 프로그램 혹은 소프트웨어의 실행은 프로세서(207)의 동작으로 이해될 수 있다.
본 발명의 실시예에 따르면, 프로세서(207)는 목적벡터를 추출할 수 있다. 예컨대, 목적지에 해당하는 통신 장치에 대응하는 좌표값이 (3,2)이고, 출발지에 해당하는 통신 장치에 대응하는 좌표값이 (1,3)이라면, 프로세서(207)는 (2,-1)를 목적벡터로 추출할 수 있다.
프로세서(207)는 목적벡터에 기초하여 데이터 전송 네트워크 망을 선택할 수 있다. 본 발명의 실시예에 따르면, 프로세서(207)는 목적벡터의 각 좌표 부호와 복수의 후보 네트워크 망 각각에 대응하는 부호의 튜플(tuple)이 일치하는 네트워크 망을 타겟 네트워크 망으로 선택할 수 있다.
프로세서(207)는 선택된 타겟 네트워크 망에 따라 패킷 데이터가 목적지까지 전송될 수 있도록 먹스(201), 버퍼(203) 및 센더(205)를 제어할 수 있다.
메모리(209)는 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리(209)는 통신 장치(100)에 적어도 하나의 다른 구성요소에 연관된 명령 혹은 데이터를 저장할 수 있다. 예를 들면, 메모리(209)는 실행 시에, 프로세서(207)가 본 명세서에서 설명되는 다양한 동작을 수행하도록 하는 명령어(instructions)를 저장할 수 있다. 일 예로, 상기 명령어는 어플리케이션 프로그램의 패키지 파일에 포함될 수 있다.
도 2b 및 도 2c는 본 발명의 실시예에 따른 통신 장치를 나타내는 블록도이다. 특히, 도 2b는 2차원 좌표계 기준을 적용하는 경우에 구성될 수 있는 통신 장치를 나타내는 블록도이다. 한편, 도 2c는 3차원 좌표계 기준을 적용하는 경우에 구성될 수 있는 통신 장치를 나타내는 블록도이다.
이하에서는 설명의 편의를 위하여 2차원 직각좌표계를 기준으로 구체적인 내용에 대하여 설명한다.
도 2b에 도시된 바와 같이, 통신 장치(110)가 2차원 직각좌표계(n=2)에 의하여 좌표값이 설정된다면, 통신 장치(110)는 먹스(210), 제1 버퍼(231), 제2 버퍼(233), 제3 버퍼(235), 제1 센더(251) 및 제2 센더(253), 프로세서(270), 메모리(290)를 포함할 수 있다.
도 3은 본 발명의 실시예에 따른 데이터 통신의 동작을 나타낸 흐름도이다.
동작 S301에서, 통신 장치(110)는 현재 위치(출발지)의 좌표값과 목적지에 해당하는 통신 장치에 대응하는 좌표값을 확인할 수 있다. 구체적으로, 프로세서(270)는 기 설정된 출발지의 좌표값과 목적지에 해당하는 통신 장치에 대응하는 좌표값을 확인할 수 있다. 예를 들어, 현재 위치의 좌표값()을 (1,3), 목적지에 해당하는 통신 장치에 대응하는 좌표값()를 (3,2)라고 가정하겠다.
동작 S303에서, 통신 장치(110)는 목적벡터를 추출할 수 있다. 구체적으로, 프로세서(270)는 현재 위치의 좌표값()인 (1,3)과 목적지에 해당하는 통신 장치에 대응하는 좌표값()인 (3,2)을 활용하여 목적벡터()를 추출할 수 있다. 예컨대, 프로세서(270)는 목적벡터()를 목적지에 해당하는 통신 장치에 대응하는 좌표값()인 (3,2)에 현재 위치의 좌표값()인 (1,3)를 빼서 추출할 수 있다. 이 경우, 목적벡터()는 (2, -1)로 추출될 수 있다.
동작 S305에서, 통신 장치(110)는 추출된 목적벡터()에 기초하여 복수의 후보 네트워크 망 중 데이터가 실제로 전송될 타겟 네트워크 망을 선택할 수 있다. 구체적으로, 프로세서(270)는 목적벡터()의 각 좌표 부호와 후보 네트워크 망들 각각의 부호 튜플(tuple)이 일치하는 네트워크 망을 타겟 네트워크 망으로 선택할 수 있다.
본 발명의 실시예에 따르면, 프로세서(270)는 아래 수학식 1에 따라 타겟 네트워크 망을 선택할 수 있다.
(수학식 1)
수학식 1에서, 는 후보 네트워크 망의 부호를 나타내는 값이고, 는 목적벡터의 좌표값을 나타내며, 은 차원 수를 나타낸다.
2차원 직각좌표계를 따른 경우, 후보 네트워크 망은 총 4가지 존재할 수 있다. 제1 후보 네트워크 망의 좌표값은 (1,1), 제2 후보 네트워크 망의 좌표값은 (1, -1), 제3 후보 네트워크 망의 좌표값은 (-1,1) 및 제4 후보 네트워크 망의 좌표값은 (-1, -1)일 수 있다.
제1 후보 네트워크 망의 경우, 이므로, 수학식 1을 만족하지 않는다.
제2 후보 네트워크 망의 경우, 이므로, 수학식 1을 만족한다.
제3 후보 네트워크 망의 경우, 이므로, 수학식 1을 만족하지 않는다.
제4 후보 네트워크 망의 경우, 이므로, 수학식 1을 만족하지 않는다.
이와 같이, 프로세서(270)는 목적벡터()의 좌표값인 (2, -1)과 상기 수학식 1을 활용하여 제2 후보 네트워크 망을 타겟 네트워크 망으로 선택할 수 있다.
동작 S307에서, 통신 장치(110)는 타겟 네트워크 망에 기반하여 패킷 데이터를 최종 목적지까지 전송할 수 있다. 구체적으로, 프로세서(270)는 타겟 네트워크 망에 기반하여 패킷 데이터를 최종 목적지까지 도달할 수 있도록 먹스(210), 버퍼들(231, 233, 235) 및 센더들(251, 253)를 제어할 수 있다.
도 2b를 참조하면, 먹스(210)는 프로세서(270)의 제어에 의하여 입력된 패킷 데이터에 포함된 목적벡터에 기초하여 타겟 네트워크 망에 따라 제1 버퍼(231) 내지 제3 버퍼(235)에 패킷 데이터를 제공할 수 있다.
본 발명의 실시예에 따르면, 먹스(210)는 프로세서(270)의 제어에 의하여 목적벡터()의 좌표값에 기초하여 버퍼들(231, 233, 235)에 패킷 데이터를 제공할 수 있다.
본 발명의 일 실시예에 따르면, 타겟 네트워크 망의 좌표값이 (1, 1)인 경우, 프로세서(270)는 아래 규칙에 따라 패킷 데이터를 먹스(210)에서 버퍼(231, 233, 235)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x>0, y>0인 경우(Cond 1), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제1 버퍼(231)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x>0, y=0인 경우(Cond 2), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제2 버퍼(233)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x=0, y>0인 경우(Cond 3), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제3 버퍼(235)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x=0, y=0인 경우(Cond 4), 프로세서(270)는 패킷 데이터를 먹스(210)에서 외부로 출력할 수 있다. 즉, 패킷 데이터는 사용자에게 전달될 수 있다.
본 발명의 다른 실시예에 따르면, 타겟 네트워크 망의 좌표값이 (1, -1)인 경우, 프로세서(270)는 아래 규칙에 따라 패킷 데이터를 먹스(210)에서 버퍼(231, 233, 235)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x>0, y<0인 경우(Cond 1), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제1 버퍼(231)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x>0, y=0인 경우(Cond 2), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제2 버퍼(233)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x=0, y<0인 경우(Cond 3), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제3 버퍼(235)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x=0, y=0인 경우(Cond 4), 프로세서(270)는 패킷 데이터를 먹스(210)에서 외부로 출력할 수 있다. 즉, 패킷 데이터는 사용자에게 전달될 수 있다.
본 발명의 다른 실시예에 따르면, 타겟 네트워크 망의 좌표값이 (-1, 1)인 경우, 프로세서(270)는 아래 규칙에 따라 패킷 데이터를 먹스(210)에서 버퍼(231, 233, 235)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x<0, y>0인 경우(Cond 1), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제1 버퍼(231)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x<0, y=0인 경우(Cond 2), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제2 버퍼(233)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x=0, y>0인 경우(Cond 3), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제3 버퍼(235)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x=0, y=0인 경우(Cond 4), 프로세서(270)는 패킷 데이터를 먹스(210)에서 외부로 출력할 수 있다. 즉, 패킷 데이터는 사용자에게 전달될 수 있다.
본 발명의 다른 실시예에 따르면, 타겟 네트워크 망의 좌표값이 (-1, -1)인 경우, 프로세서(270)는 아래 규칙에 따라 패킷 데이터를 먹스(210)에서 버퍼(231, 233, 235)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x<0, y<0인 경우(Cond 1), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제1 버퍼(231)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x<0, y=0인 경우(Cond 2), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제2 버퍼(233)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x=0, y<0인 경우(Cond 3), 프로세서(270)는 패킷 데이터를 먹스(210)에서 제3 버퍼(235)로 제공할 수 있다.
목적벡터()의 좌표값 (x,y)가 x=0, y=0인 경우(Cond 4), 프로세서(270)는 패킷 데이터를 먹스(210)에서 외부로 출력할 수 있다. 즉, 패킷 데이터는 사용자에게 전달될 수 있다.
본 발명의 실시예에 따르면, 프로세서(270)는 각 버퍼(231, 233, 235)에 저장된 패킷 데이터를 타겟 네트워크 망에 기초하여 제1 센더(251) 혹은 제2 센더(253)으로 제공할 수 있다. 프로세서(270)는 버퍼(231, 233, 235)에 저장된 패킷 데이터를 유휴(idle) 상태에 있는 센더에 제공할 수 있다.
본 발명의 일 실시예에 따르면, 타겟 네트워크 망의 좌표값이 (1, 1)인 경우, 프로세서(270)의 제어에 의하여 제1 센더(251)는 x축에 대하여 x값이 증가하는 방향으로만 패킷 데이터를 전송할 수 있으며, 제2 센더(253)는 y축에 대하여 y값이 증가하는 방향으로만 패킷 데이터를 전송할 수 있다.
본 발명의 다른 실시예에 따르면, 타겟 네트워크 망의 좌표값이 (1, -1)인 경우, 프로세서(270)의 제어에 의하여 제1 센더(251)는 x축에 대하여 x값이 증가하는 방향으로만 패킷 데이터를 전송할 수 있으며, 제2 센더(253)는 y축에 대하여 y값이 감소하는 방향으로만 패킷 데이터를 전송할 수 있다.
본 발명의 다른 실시예에 따르면, 타겟 네트워크 망의 좌표값이 (-1, 1)인 경우, 프로세서(270)의 제어에 의하여 제1 센더(251)는 x축에 대하여 x값이 감소하는 방향으로만 패킷 데이터를 전송할 수 있으며, 제2 센더(253)는 y축에 대하여 y값이 증가하는 방향으로만 패킷 데이터를 전송할 수 있다.
본 발명의 다른 실시예에 따르면, 타겟 네트워크 망의 좌표값이 (-1, -1)인 경우, 프로세서(270)의 제어에 의하여 제1 센더(251)는 x축에 대하여 x값이 감소하는 방향으로만 패킷 데이터를 전송할 수 있으며, 제2 센더(253)는 y축에 대하여 y값이 감소하는 방향으로만 패킷 데이터를 전송할 수 있다.
도면에 도시되진 아니하였으나, 통신 장치(100)는 ECC를 더 포함할 수 있다. ECC는 패킷 데이터의 손상을 감지하고 수정할 수 있다. ECC는 패킷 데이터에 포함된 프레임 검사 시퀀스(Frame Check Sequence)에 기초하여 패킷 데이터의 손상을 감지하고 수정할 수 있다.
도 4a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다. 도 4b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
특히, 도 4a 및 도 4b는 타겟 네트워크 망의 좌표값이 (1,1)인 경우, 본 발명의 통신 장치의 데이터 통신 동작방법을 설명하기 위한 도면이다.
도 4a에서는, 복수의 통신 장치들로 구성되어 있으며, 데이터가 x축, y축 모두 양의 방향으로 전송되는 제1 네트워크 망에 따라 패킷 데이터가 전송되고 있는 시스템(400)에 대하여 도시되고 있다. 도면에 도시되어 있지 않지만, 패킷 데이터가 현재 위치하고 있는 통신 장치의 좌표값을 (x,y)로 가정한다.
동작 S401에서, 데이터 통신을 위한 초기값이 설정될 수 있다. 출발지에 해당하는 통신 장치는 목적지에 해당하는 통신 장치의 좌표값과 자신의 좌표값을 확인하여 목적벡터()인 를 추출할 수 있으며, 이고, 이므로, 통신 장치는 제1 네트워크 망을 타겟 네트워크 망으로 선택할 수 있다. 는 x축 상에서 패킷 데이터가 양의 방향으로 이동하는 홉(hop) 값이며, 는 y축 상에서 패킷 데이터가 양의 방향으로 이동하는 홉(hop)값이다. 및 는 자연수이다.
동작 S403에서, 통신 장치는 목적벡터()의 x값이 0인지 확인할 수 있다.
만약, 목적벡터()의 x값이 0이 아닌 경우(동작 S403에서, 'No'), 동작 S405에서, 출발지에 해당하는 통신 장치는 x축에서 만큼 증가한 좌표값에 위치한 통신 장치에게 패킷 데이터를 제공할 수 있다.
동작 S407에서, 패킷 데이터를 제공받은 통신 장치는 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 통신 장치는 다시 목적벡터()의 x값이 0인지 확인할 수 있다. 목적벡터()의 x값이 0이 아닌 경우, 동작 S405부터 동작 S407 동작이 다시 수행될 수 있다.
반면에, 목적벡터()의 x값이 0인 경우(동작 S403에서, 'Yes'), 동작 S409에서, 통신 장치는 목적벡터()의 y값이 0인지 확인할 수 있다.
만약, 목적벡터()의 y값이 0이 아닌 경우(동작 S409에서, 'No'), 동작 S411에서, 통신 장치는 y축에서 만큼 증가한 좌표값에 위치한 통신 장치에게 패킷 데이터를 제공할 수 있다.
동작 S413에서, 패킷 데이터를 제공받은 통신 장치는 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 통신 장치는 다시 목적벡터()의 y값이 0인지 확인할 수 있다. 목적벡터()의 y값이 0이 아닌 경우, 동작 S411부터 동작 S413 동작이 다시 수행될 수 있다.
반면에, 목적벡터()의 y값이 0인 경우(동작 S409에서, 'Yes'), 패킷 데이터는 사용자에게 출력될 수 있다.
도 4b에서는, 패킷 데이터의 이동 경로가 x축 진행 후, y축 진행하는 방식으로 설명되어 있으나, 이는 설명의 편의를 위한 것이며, 이에 제한되는 것은 아니다.
도 5a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다. 도 5b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
특히, 도 5a 및 도 5b는 타겟 네트워크 망의 좌표값이 (1, -1)인 경우, 본 발명의 통신 장치의 데이터 통신 동작방법을 설명하기 위한 도면이다.
도 5a에서는, 복수의 통신 장치들로 구성되어 있으며, 데이터가 x축 양의 방향, y축 음의 방향으로 전송되는 제2 네트워크 망에 따라 패킷 데이터가 전송되고 있는 시스템(500)에 대하여 도시되고 있다. 도면에 도시되어 있지 않지만, 패킷 데이터가 현재 위치하고 있는 통신 장치의 좌표값을 (x,y)로 가정한다.
동작 S501에서, 데이터 통신을 위한 초기값이 설정될 수 있다. 출발지에 해당하는 통신 장치는 목적지에 해당하는 통신 장치의 좌표값과 자신의 좌표값을 확인하여 목적벡터()인 를 추출할 수 있으며, 이고, 이므로, 통신 장치는 제2 네트워크 망을 타겟 네트워크 망으로 선택할 수 있다. 는 x축 상에서 패킷 데이터가 양의 방향으로 이동하는 홉(hop) 값이며, 는 y축 상에서 음의 방향으로 패킷 데이터가 이동하는 홉(hop) 값이다. 및 는 자연수이다.
동작 S503에서, 통신 장치는 목적벡터()의 x값이 0인지 확인할 수 있다.
만약, 목적벡터()의 x값이 0이 아닌 경우(동작 S503에서, 'No'), 동작 S505에서, 출발지에 해당하는 통신 장치는 x축에서 만큼 증가한 좌표값에 위치한 통신 장치에게 패킷 데이터를 제공할 수 있다.
동작 S507에서, 패킷 데이터를 제공받은 통신 장치는 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 통신 장치는 다시 목적벡터()의 x값이 0인지 확인할 수 있다. 목적벡터()의 x값이 0이 아닌 경우, 동작 S505부터 동작 S507 동작이 다시 수행될 수 있다.
반면에, 목적벡터()의 x값이 0인 경우(동작 S503에서, 'Yes'), 동작 S509에서, 통신 장치는 목적벡터()의 y값이 0인지 확인할 수 있다.
만약, 목적벡터()의 y값이 0이 아닌 경우(동작 S509에서, 'No'), 동작 S511에서, 통신 장치는 y축에서 만큼 감소한 좌표값에 위치한 통신 장치에게 패킷 데이터를 제공할 수 있다.
동작 S513에서, 패킷 데이터를 제공받은 통신 장치는 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 통신 장치는 다시 목적벡터()의 y값이 0인지 확인할 수 있다. 목적벡터()의 y값이 0이 아닌 경우, 동작 S511부터 동작 S513 동작이 다시 수행될 수 있다.
반면에, 목적벡터()의 y값이 0인 경우(동작 S509에서, 'Yes'), 패킷 데이터는 사용자에게 출력될 수 있다.
도 5b에서는, 패킷 데이터의 이동 경로가 x축 진행 후, y축 진행하는 방식으로 설명되어 있으나, 이는 설명의 편의를 위한 것이며, 이에 제한되는 것은 아니다.
도 6a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다. 도 6b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
특히, 도 6a 및 도 6b는 타겟 네트워크 망의 좌표값이 (-1,1)인 경우, 본 발명의 통신 장치의 데이터 통신 동작방법을 설명하기 위한 도면이다.
도 6a에서는, 복수의 통신 장치들로 구성되어 있으며, 데이터가 x축 음의 방향, y축 양의 방향으로 전송되는 제3 네트워크 망에 따라 패킷 데이터가 전송되고 있는 시스템(600)에 대하여 도시되고 있다. 도면에 도시되어 있지 않지만, 패킷 데이터가 현재 위치하고 있는 통신 장치의 좌표값을 (x,y)로 가정한다.
동작 S601에서, 데이터 통신을 위한 초기값이 설정될 수 있다. 출발지에 해당하는 통신 장치는 목적지에 해당하는 통신 장치의 좌표값과 자신의 좌표값을 확인하여 목적벡터()인 를 추출할 수 있으며, 이고, 이므로, 통신 장치는 제3 네트워크 망을 타겟 네트워크 망으로 선택할 수 있다. 는 x축 상에서 패킷 데이터가 음의 방향으로 이동하는 홉(hop) 값이며, 는 y축 상에서 패킷 데이터가 양의 방향으로 이동하는 홉(hop) 값이다. 및 는 자연수이다.
동작 S603에서, 통신 장치는 목적벡터()의 x값이 0인지 확인할 수 있다.
만약, 목적벡터()의 x값이 0이 아닌 경우(동작 S603에서, 'No'), 동작 S605에서, 출발지에 해당하는 통신 장치는 x축에서 만큼 감소한 좌표값에 위치한 통신 장치에게 패킷 데이터를 제공할 수 있다.
동작 S607에서, 패킷 데이터를 제공받은 통신 장치는 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 통신 장치는 다시 목적벡터()의 x값이 0인지 확인할 수 있다. 목적벡터()의 x값이 0이 아닌 경우, 동작 S605부터 동작 S607 동작이 다시 수행될 수 있다.
반면에, 목적벡터()의 x값이 0인 경우(동작 S603에서, 'Yes'), 동작 S609에서, 통신 장치는 목적벡터()의 y값이 0인지 확인할 수 있다.
만약, 목적벡터()의 y값이 0이 아닌 경우(동작 S609에서, 'No'), 동작 S611에서, 통신 장치는 y축에서 만큼 증가한 좌표값에 위치한 통신 장치에게 패킷 데이터를 제공할 수 있다.
동작 S613에서, 패킷 데이터를 제공받은 통신 장치는 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 통신 장치는 다시 목적벡터()의 y값이 0인지 확인할 수 있다. 목적벡터()의 y값이 0이 아닌 경우, 동작 S611부터 동작 S613 동작이 다시 수행될 수 있다.
반면에, 목적벡터()의 y값이 0인 경우(동작 S609에서, 'Yes'), 패킷 데이터는 사용자에게 출력될 수 있다.
도 6b에서는, 패킷 데이터의 이동 경로가 x축 진행 후, y축 진행하는 방식으로 설명되어 있으나, 이는 설명의 편의를 위한 것이며, 이에 제한되는 것은 아니다.
도 7a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다. 도 7b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
특히, 도 7a 및 도 7b는 타겟 네트워크 망의 좌표값이 (-1, -1)인 경우, 본 발명의 통신 장치의 데이터 통신 동작방법을 설명하기 위한 도면이다.
도 7a에서는, 복수의 통신 장치들로 구성되어 있으며, 데이터가 x축, y축 모두 음의 방향으로 전송되는 제4 네트워크 망에 따라 패킷 데이터가 전송되고 있는 시스템(700)에 대하여 도시되고 있다.
동작 S701에서, 데이터 통신을 위한 초기값이 설정될 수 있다. 출발지에 해당하는 통신 장치는 목적지에 해당하는 통신 장치의 좌표값과 자신의 좌표값을 확인하여 목적벡터()인 를 추출할 수 있으며, 이고, 이므로, 통신 장치는 제4 네트워크 망을 타겟 네트워크 망으로 선택할 수 있다. 는 x축 상에서 패킷 데이터가 음의 방향으로 이동하는 홉(hop) 값이며, 는 y축 상에서 패킷 데이터가 음의 방향으로 이동하는 홉(hop) 값이다. 및 는 자연수이다.
동작 S703에서, 통신 장치는 목적벡터()의 x값이 0인지 확인할 수 있다.
만약, 목적벡터()의 x값이 0이 아닌 경우(동작 S703에서, 'No'), 동작 S705에서, 출발지에 해당하는 통신 장치는 x축에서 만큼 감소한 좌표값에 위치한 통신 장치에게 패킷 데이터를 제공할 수 있다.
동작 S707에서, 패킷 데이터를 제공받은 통신 장치는 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 통신 장치는 다시 목적벡터()의 x값이 0인지 확인할 수 있다. 목적벡터()의 x값이 0이 아닌 경우, 동작 S705부터 동작 S707 동작이 다시 수행될 수 있다.
반면에, 목적벡터()의 x값이 0인 경우(동작 S703에서, 'Yes'), 동작 S709에서, 통신 장치는 목적벡터()의 y값이 0인지 확인할 수 있다.
만약, 목적벡터()의 y값이 0이 아닌 경우(동작 S709에서, 'No'), 동작 S711에서, 통신 장치는 y축에서 만큼 감소한 좌표값에 위치한 통신 장치에게 패킷 데이터를 제공할 수 있다.
동작 S713에서, 패킷 데이터를 제공받은 통신 장치는 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 통신 장치는 다시 목적벡터()의 y값이 0인지 확인할 수 있다. 목적벡터()의 y값이 0이 아닌 경우, 동작 S711부터 동작 S713 동작이 다시 수행될 수 있다.
반면에, 목적벡터()의 y값이 0인 경우(동작 S709에서, 'Yes'), 패킷 데이터는 사용자에게 출력될 수 있다.
도 7b에서는, 패킷 데이터의 이동 경로가 x축 진행 후, y축 진행하는 방식으로 설명되어 있으나, 이는 설명의 편의를 위한 것이며, 이에 제한되는 것은 아니다.
도 8a 내지 8b는 본 발명의 일 실시예에 따른 데이터 통신 네트워크 환경을 설명하기 위한 도면이다.
도 8a를 참조하면, 보다 효율적인 데이터 송수신 시스템 환경을 위해 적어도 하나의 통신 장치가 그룹핑되어 하나의 통신 장치 그룹을 형성할 수 있다. 바람직하게는, 하나의 통신 장치 그룹은 복수개의 통신 장치를 포함할 수 있다. 도 8에서는 3개의 통신 장치 그룹(810, 820, 830)을 예시로 하여 설명한다. 각각의 통신 장치 그룹은 제1 통신 장치 그룹(810), 제2 통신 장치 그룹(820), 제3 통신 장치 그룹(830)이라 지칭한다.
각각의 통신 장치 그룹(810, 820, 830)은 적어도 하나의 마스터 노드(811, 821, 831)와 연관될 수 있다. 마스터 노드(811, 821, 831)는 통신 장치 그룹(810, 820, 830) 내에 또는 그룹 외부에 존재할 수 있다. 통신 장치 그룹(예: 도 8a의 통신 장치 그룹(810))에 포함된 통신 장치들이 다른 통신 장치 그룹(예: 도 8b의 통신 장치 그룹(820))에 포함된 통신 장치들과 통신하기 위해서는 마스터 노드를 이용할 수 있다.
도 8a를 참조하여 설명하면, 제1 통신 장치 그룹(810)은 제1 마스터 노드(811)와 연관되고, 제2 통신 장치 그룹(820)은 제2 마스터 노드(821)와 연관되며, 제3 통신 장치 그룹(830)은 제3 마스터 노드(831)과 연관될 수 있다. 여기서 제1 통신 장치 그룹(810)이 제1 마스터 노드(811)와 연관된다는 것은, 제1 통신 장치 그룹(810) 내의 통신 장치들은 제1 마스터 노드(811)를 통해서 다른 그룹 내의 통신 장치들과 데이터를 송신 또는 수신함을 의미할 수 있다. 이에 의하면, 제1 마스터 노드(811)가 제2 통신 장치 그룹(820) 내의 통신 장치들로 데이터를 전송하기 위해서는 제2 마스터 노드(821)와 통신을 수행할 수 있다.
일 실시예에 따르면, 마스터 노드(811, 821, 831)는 통신 장치 그룹내의 일반적인 통신 장치와 같이 데이터의 출발지 또는 목적지로서 데이터를 송신, 수신 또는 처리하는 통신 장치일 수 있다. 또는, 마스터 노드(811, 821, 831)는 통신 장치 그룹 내의 일반적인 통신 장치와는 달리 데이터를 전달하는 중계기로서의 역할만을 수행할 수도 있다.
일 실시예에 따르면, 하나의 네트워크 망 내에는 적어도 하나의 통신 장치 그룹이 존재할 수 있다. 또는 하나의 통신 장치 그룹 내의 통신 장치들이 서로 다른 네트워크 망을 이용할 수도 있다.
일 실시예에 따르면, 각 마스터 노드 간 통신을 위해 마스터 노드에 할당되는 좌표 값은 통신 장치 그룹내에서 통신 장치와의 통신을 위해 마스터노드에 할당된 좌표 값과 반드시 일치하지 않을 수 있다. 마스터 노드 간의 관계에서 할당되는 좌표 값은, 하나의 그룹 내에서 마스터 노드와 일반적인 통신 장치 간의 관계에서 할당되는 좌표 값과 다른 값을 가질 수 있다.
본 발명의 다양한 실시예에 따라 마스터 노드 간 데이터 전송에는 본 발명에서 제시하는 위치기반 프로토콜에 따라 도 3 내지 도 7b에 도시된 방식이 활용될 수 있지만, 이에 의해 본 발명의 범위가 제한되는 것은 아니다.
일 실시예에 따르면, 각 통신 장치에 대한 마스터 노드들(811, 821, 831)의 집합은 또 하나의 상위 통신그룹(850)을 형성할 수 있다. 다시 말해 하나의 상위 통신그룹(850)은 복수개의 통신 장치 그룹(810, 820, 830)에 대한 마스터 노드(811, 821, 831)들을 포함할 수 있다. 하나의 상위 통신그룹(850)은 적어도 하나의 상위 마스터 노드와 연관될 수 있다. 하나의 상위 통신그룹은 적어도 하나의 상위 마스터 노드를 포함하거나 적어도 하나의 상위 마스터 노드와 연결될 수 있다. 일 실시예에 따르면, 하나의 네트워크 망 내에는 적어도 하나의 상위 통신그룹이 존재할 수 있다. 반대로, 하나의 상위 통신그룹은 복수개의 네트워크 망을 이용할 수도 있다.
가장 하위의 통신 장치는 좌표 an = (xn, yn)으로 표기할 수 있다. 하나의 통신 장치 그룹 내의 통신 장치의 집합은 {a1, a2, …, an}-로 표기할 수 있다. 각각의 통신 장치 그룹은 b1 = {a1, a2, …, an}, b2 = {a1, a2, …, an}, …, bn = {a1, a2, …, an}와 같이 표기할 수 있다. 이 경우, b1, b2, b3는 각 그룹의 마스터 노드를 의미할 수 있다. 있다. 상위 통신그룹은 각각의 마스터 노드들의 집합으로 c1 = {b1, b2, …, bn}, c2 = {b1, b2, …, bn}, …, cn = {b1, b2, …, bn}과 같이 표기할 수 있다. c1, c2, c3는 각 상위 통신그룹에 연관되는 상위 마스터 노드를 의미할 수 있다.
도 8b에서는 4개의 통신 장치 그룹(810, 820, 830, 840)을 예시하였다. 각각의 통신 장치 그룹은 제1 통신 장치 그룹(810), 제2 통신 장치 그룹(820), 제3 통신 장치 그룹(830), 제4 통신 장치 그룹(840)이라 지칭한다. 적어도 하나의 통신 장치들이 그룹핑되어 각각의 통신 장치 그룹 내에 포함될 수 있다.
하나의 통신 장치 그룹은 적어도 하나의 마스터 노드를 포함할 수 있다. 도 8b에서는 하나의 통신 장치 그룹 당 하나의 마스터 노드를 예시한다. 제1 통신 장치 그룹(810)은 제1 마스터 노드(811)를 포함하고, 제2 통신 장치 그룹(820)은 제2 마스터 노드(821)를 포함하고, 제3 통신 장치 그룹(830)은 제3 마스터 노드(831)를 포함하고, 제4 통신 장치 그룹(840)은 제4 마스터 노드(841)를 포함할 수 있다.
제1 통신 장치 그룹(810)은 제1 마스터 노드(811)를 통해 외부 통신 장치 그룹으로 데이터를 전송하거나 외부 통신 장치 그룹으로부터 데이터를 수신할 수 있고, 제2 통신 장치 그룹(820)은 제2 마스터 노드(821)를 통해 외부 통신 장치 그룹으로 데이터를 전송하거나 외부 통신 장치 그룹으로부터 데이터를 수신할 수 있다. 제3 통신 장치 그룹(830)은 제3 마스터 노드(831)를 통해 외부 통신 장치 그룹으로 데이터를 전송하거나 외부 통신 장치 그룹으로부터 데이터를 수신할 수 있고, 제4 통신 장치 그룹(840)은 통해 외부 통신 장치 그룹으로 데이터를 전송하거나 외부 통신 장치 그룹으로부터 데이터를 수신할 수 있다.
다시 말해, 서로 다른 통신 장치 그룹 내의 통신 장치들이 서로 통신하기 위해서는 상위 그룹에 포함된 통신 장치들(즉, 마스터 노드들) 간에 패킷 데이터의 전송이 먼저 진행된 후에 하위 통신 장치 그룹내에 포함된 통신장치들 간 패킷 데이터 전송이 진행될 수 있다.
예를 들어, 제1 통신 장치 그룹(810)내의 제1 통신 장치가 제2 통신 장치 그룹(820)내의 제2 통신 장치로 데이터를 전송하고자 하는 경우에 제1 통신 장치는 제1 마스터 노드(811)로 데이터를 우선 전송할 수 있다. 이를 수신한 제1 마스터 노드(811)는 제2 마스터 노드(821)를 통해 제2 통신 장치 그룹 내의 제2 통신 장치로 데이터를 전송할 수 있다. 이하 도 9를 참조하여 자세히 설명한다.
도 9a는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다. 도 9a를 참조하여 도 8b에 도시된 바와 같은 네트워크 환경에서 데이터 흐름을 설명한다. 도 9a에서는 제1 통신 장치 그룹(810) 내의 제1 통신 장치(911)가 제2 통신 장치 그룹(820) 내의 제2 통신 장치(921)로 데이터를 전송하는 경우를 가정하여 본 발명의 이해를 돕고자 한다.
일 실시예에 따르면, 제1 통신 장치(911)는 제1 마스터 노드(811)를 통해 제2 통신 장치 그룹(820)으로 데이터를 전송할 수 있다. 제1 통신 장치(911)는 제1 마스터 노드(811)로 데이터를 전송하고, 제1 마스터 노드(811)가 제2 마스터 노드(821)로 데이터를 전송한 후, 상기 제2 마스터 노드(821)가 제2 통신 장치(921)로 데이터를 전송할 수 있다.
본 발명의 일 실시예에 따르면, 제1 통신 장치(911)가 제2 통신 장치(921)로 데이터를 전송하기 위해 적어도 2개의 목적벡터가 필요할 수 있다. 일 실시예에 따르면, 하나의 목적벡터는 통신 장치 그룹 또는 마스터 노드에 연관된 것이고 다른 하나의 목적벡터는 통신 장치 그룹 내 통신 장치에 연관된 것일 수 있다. 각각의 목적벡터를 제1 목적벡터, 제2 목적벡터라 지칭한다.
제1 마스터 노드(811)가 제2 마스터 노드(821)는 제1 목적벡터에 기초하여 제2 마스터 노드(821)로 데이터를 전송하고, 제2 마스터 노드(821)는 제2 목적벡터에 기초하여 제2 통신 장치 그룹(820) 내의 제2 통신 장치(921)로 데이터를 전송할 수 있다.
제1 통신 장치(911)는 데이터를 전송하는 동안 제1 목적벡터 및 제2 목적벡터를 전송할 수 있다. 제1 통신 장치(911)가 제2 통신 장치(921)로 전송하는 패킷 데이터는 상기 데이터, 상기 제1 목적벡터 및 상기 제2 목적벡터를 포함할 수 있다.
제1 통신 장치(911)가 제1 마스터 노드(811)로 데이터를 전송하거나 제1 마스터 노드(811)로부터 데이터를 수신하는 방식은 도 3 내지 도 7a에서 설명한 바와 같은 방식이 활용될 수 있지만, 데이터를 전송하는 방식은 이에 한정되지 않고 다양한 방식이 활용될 수 있다. 예를 들어, 제1 통신 장치(911)는 제1 마스터 노드(811)로 데이터를 전송하기 위해 도 3 내지 도 7a에서 설명한 바와 같이 목적벡터를 산출할 수도 있다.
제1 통신 장치(911)로부터 제1 목적벡터, 제2 목적벡터 및 데이터를 수신한 제1 마스터 노드(811)는 제1 목적벡터를 확인할 수 있다. 제1 마스터 노드(811)는 상기 제1 목적벡터에 기초하여 데이터를 외부 통신 장치로 보낼 것인지 여부를 결정할 수 있다.
제1 마스터 노드(811)는 제1 목적벡터가 제1 마스터 노드(811)(또는 제1 통신 장치 그룹(810)에 연관된 것인지 확인할 수 있다. 도 9a의 실시예에 따르면, 상기 제1 목적벡터는 제2 마스터 노드(821)(또는 제2 통신 장치 그룹(820))에 연관된 것이므로, 제1 마스터 노드(811)는 외부 마스터 노드로 데이터를 전송할 수 있다. 이 경우, 마스터 노드 간의 데이터 전송 방식에 따라 제1 마스터 노드(811)는 제2 마스터 노드(821)로 데이터를 전송할 수 있다. 제1 마스터 노드(811)는 제1 목적벡터, 제2 목적벡터, 데이터를 제2 마스터 노드(821)로 전송할 수 있다. 이 경우 상기 제1 목적벡터, 제2 목적벡터, 데이터는 하나의 패킷 데이터에 포함되어 전송될 수 있다.
제1 마스터 노드(811)가 목적벡터에 기초하여 제2 마스터 노드(812)로 데이터를 전송하는 방식은 도 3 내지 도 7a에서 설명한 바와 같은 방식이 활용될 수 있지만, 데이터를 전송하는 방식은 이에 한정되지 않고 다양한 방식이 활용될 수 있다.
제1 마스터 노드(811)로부터 제1 목적벡터, 제2 목적벡터 및 데이터를 수신한 제2 마스터 노드(821)는 상기 제1 목적벡터 또는 상기 제2 목적벡터 중 적어도 하나에 기초하여 제2 통신 장치(921)로 데이터를 전송할 수 있다.
일 실시예에 따르면, 제2 마스터 노드(821)는 제1 목적벡터를 확인할 수 있다. 제2 마스터 노드(821)는 제1 목적벡터에 기초하여 데이터를 외부 통신 장치 그룹으로 보낼 것인지 결정할 수 있다. 이를 위해, 제2 마스터 노드(821)는 제1 목적벡터가 제2 마스터 노드(821)(또는 제2 통신 장치 그룹(820))에 연관된 것인지 확인할 수 있다.
여기서, 제1 목적벡터가 마스터 노드와 연관된다는 것은 제1 목적벡터가 지시하는 목적지가 해당 마스터 노드인 경우를 의미할 수 있다. 또는 제1 목적벡터가 기 설정된 값을 가지는 경우를 의미할 수 있다.
도 9a의 실시예에 따르면, 상기 제1 목적벡터가 제2 마스터 노드(821)(또는 제2 통신 장치 그룹(820))에 연관된 것이므로, 제2 마스터 노드(821)는 제2 통신 장치 그룹(820) 내의 통신 장치로 데이터를 전송할 수 있다.
제2 마스터 노드(821)는 제2 목적벡터를 확인할 수 있다. 제2 마스터 노드(821)는 제2 목적벡터에 기초하여 데이터를 제2 통신 장치 그룹(820) 내에서 다른 통신장치로 보낼 것인지 결정할 수 있다. 이를 위해, 제2 마스터 노드(821)는 제2 목적벡터가 목적지가 제2 마스터 노드(821)에 연관된 것인지 확인할 수 있다. 제2 목적벡터에 따른 목적지는 제2 통신 장치(921)이므로 제2 마스터 노드(821)는 데이터를 통신 장치 그룹 내에서 다른 통신 장치로 전송할 수 있다. 상기 제1 목적벡터, 제2 목적벡터, 데이터는 하나의 패킷 데이터에 포함되어 전송될 수 있다.
제2 마스터 노드(821)가 목적벡터에 기초하여 제2 통신 장치(921)로 데이터를 전송하거나 제2 통신 장치(921)로부터 데이터를 수신하는 방식은 도 3 내지 도 7a에서 설명한 바와 같은 방식이 활용될 수 있지만, 데이터를 전송하는 방식은 이에 한정되지 않고 다양한 방식이 활용될 수 있다.
제1 목적벡터, 제2 목적벡터 및 데이터를 수신한 제2 통신 장치(921)는 상기 제1 목적벡터 또는 상기 제2 목적벡터 중 적어도 하나에 기초하여 데이터를 최종적으로 수신할 수 있다.
제2 통신 장치(921)는 적어도 제2 목적벡터를 확인할 수 있다. 제2 통신 장치(921)는 제2 목적벡터가 제2 통신 장치(911)에 연관된 것인지 확인할 수 있다. 도 9a의 실시예에 따르면, 제2 목적벡터가 제2 통신 장치(911)에 연관된 것이므로 제2 통신 장치(921)는 데이터를 최종적으로 수신할 수 있다.
그룹 내에서 통신 장치 간 데이터를 송신 또는 수신하는 방식은 도 3 내지 도 7a에서 설명한 바와 같은 방식이 활용될 수 있지만, 데이터를 전송하는 방식은 이에 한정되지 않고 다양한 방식이 활용될 수 있다.
도 9b는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 예시적으로 설명하기 위한 도면이다. 도 9b에서는 제1 통신 장치 그룹(810) 내의 제1 통신 장치(911)가 제3 통신 장치 그룹(830) 내의 제3 통신 장치(931)로 데이터를 전송하는 경우를 가정하여 본 발명의 이해를 돕고자 한다.
일 실시예에 따르면, 제1 통신 장치(911)는 제1 마스터 노드(811)를 통해 데이터를 전송할 수 있다. 우선, 제1 통신 장치(911)는 제1 마스터 노드(811)로 데이터를 전송하고, 제1 마스터 노드(811)가 제2 마스터 노드(821)로 데이터를 전송한 후, 제2 마스터 노드(821)가 제3 마스터 노드(831)로 데이터를 전송하고, 제3 마스터 노드(831)가 제3 통신 장치(931)로 데이터를 전송할 수 있다. 각각의 데이터는 제1 목적벡터 및 제2 목적벡터와 함께 전송될 수 있다.
일 실시예에 따르면, 제1 통신 장치(911)는 제1 마스터 노드(811)와 제3 마스터 노드(831) 간의 제1 목적벡터를 산출할 수 있다. 또한, 제1 통신 장치(911)는 제3 통신 장치(931)와 제3 마스터 노드(921) 간의 제2 목적벡터를 산출할 수 있다.
일 실시예에 따르면, 제1 통신 장치(911)는 데이터를 전송하는 동안 상기 제1 목적벡터 및 상기 제2 목적벡터를 전송할 수 있다. 예를 들어, 제1 통신 장치(911)가 제2 통신 장치(921)로 전송하는 패킷 데이터는 제1 목적벡터, 제2 목적벡터 및 데이터를 포함할 수 있다.
제1 통신 장치(911)로부터 제1 목적벡터, 제2 목적벡터 및 데이터를 수신한 제1 마스터 노드(811)는 제1 목적벡터 또는 제2 목적벡터 중 적어도 하나에 기초하여 제2 마스터 노드(821)로 데이터를 전송할 수 있다.
일 실시예에 따르면, 제1 마스터 노드(811)는 제1 목적벡터를 확인할 수 있다. 제1 마스터 노드(811)는 제1 목적벡터에 기초하여 데이터를 외부 통신 장치로 보낼 것인지 결정할 수 있다. 제1 마스터 노드(811)는 제1 목적벡터에서 지시하는 목적지가 제1 마스터 노드(811) 인지 여부를 확인할 수 있다.
도 9b의 실시예에 따르면, 제1 목적벡터에 연관된 목적지는 제3 마스터 노드(821)(또는 제2 통신 장치 그룹(820))이므로, 제1 마스터 노드(811)는 데이터를 외부 통신 장치 그룹으로 전송할 수 있다. 이 경우, 제1 마스터 노드(811)는 제1 목적벡터, 제2 목적벡터 및 데이터를 제2 마스터 노드(821)로 전송할 수 있다.
제1 마스터 노드(811)로부터 제1 목적벡터, 제2 목적벡터 및 데이터를 수신한 제2 마스터 노드(821)는 제1 목적벡터를 확인할 수 있다. 제2 마스터 노드(821)는 제1 목적벡터에 기초하여 데이터를 외부 통신 장치 그룹으로 보낼 것인지 결정할 수 있다. 도 9b의 실시예에 따르면, 상기 제1 목적벡터는 제2 마스터 노드(821)에 연관된 것이 아니므로, 제2 마스터 노드(821)는 데이터를 제3 마스터 노드(831)로 전송할 수 있다. 이 경우, 제2 마스터 노드(821)는 제1 목적벡터, 제2 목적벡터 및 데이터를 제3 마스터 노드(831)로 전송할 수 있다.
제2 마스터 노드(821)가 목적벡터에 기초하여 제3 마스터 노드(931)로 데이터를 전송하는 방식은 도 3 내지 도 7a에서 설명한 바와 같은 방식이 활용될 수 있지만, 데이터를 전송하는 방식은 이에 한정되지 않고 다양한 방식이 활용될 수 있다.
제2 마스터 노드(821)로부터 제1 목적벡터, 제2 목적벡터 및 데이터를 수신한 제3 마스터 노드(831)는 적어도 제2 목적벡터를 확인할 수 있다. 제2 통신 장치(921)는 제2 목적벡터가 지시하는 목적지가 제3 통신 장치(931)인지 여부를 확인할 수 있다. 도 9b에서 제시한 바에 의하면, 제2 목적벡터가 지시하는 제3 통신 장치(931)이므로, 제3 통신 장치(931)는 데이터를 최종적으로 수신할 수 있다.
통신 장치 그룹 내의 통신 장치 간 데이터를 송신 또는 수신하는 방식은 도 3 내지 도 7a에서 설명한 바와 같은 방식이 활용될 수 있지만, 데이터를 송신 또는 수신 방식은 이에 한정되지 않고 다양한 방식이 활용될 수 있다.
도 10은 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 10을 참조하여, 데이터의 출발지인 제1 통신 장치(예: 도 9a 또는 도 9b의 통신 장치(911))의 동작을 설명한다. 여기서 제 2 마스터 노드(도 9a 또는 도 9b의 제2 마스터 노드(921) 또는 제3 마스터 노드(931))는 데이터의 목적지인 제2 통신 장치가 포함된 제2 통신 장치 그룹에 연관된 마스터 노드일 수 있다.
동작 S1001에서, 제1 통신 장치는 현재 위치와 목적 위치를 확인할 수 있다. 제1 통신 장치는 현재 위치와 목적 위치를 확인하여, 제1 마스터 노드(811)의 좌표값, 제2 마스터 노드의 좌표값, 및 최종 목적지에 대응하는 좌표값을 확인할 수 있다. 구체적으로, 제1 통신 장치(911)(예: 프로세서(270))는 기 설정된 출발지의 좌표값과 목적지에 해당하는 통신 장치에 대응하는 좌표값을 확인할 수 있다.
제1 통신 장치에 대응하는 좌표값(는 (2,1)일 수 있다. 제2 통신 장치에 대응하는 좌표값()는 (1, 1), 제1 통신 장치 그룹 내에서 제1 마스터 노드의 좌표값()는 (3, 2), 제2 통신 장치 그룹 내에서 제2 마스터 노드의 좌표값 ()는 (1, 2)로 가정한다.
제1 마스터 노드(811)와 제2 마스터 노드(821)는 마스터 노드 간의 상대적 위치에 의해 좌표 값을 추가적으로 가질 수도 있다. 제1 마스터 노드(811)의 좌표값()를 (1, 1), 제2 마스터 노드(821)의 좌표값()을 (2, 1)로 가정한다.
동작 S1003에서, 제1 통신 장치는 제1 목적벡터를 추출할 수 있다. 구체적으로, 제1 통신 장치는 제1 마스터 노드와 제2 마스터 노드의 좌표값을 활용하여 제1 목적벡터()를 추출할 수 있다. 제1 통신 장치는 제1 목적벡터()를 최종 목적지인 제2 마스터 노드에 대응하는 좌표값() (2, 1)에서 출발지인 제1 마스터 노드에 대응하는 좌표값() (1, 1)을 빼서 추출할 수 있다. 이 경우, 제1 목적벡터()는 (1, 0)으로 추출될 수 있다.
동작 S1005에서, 제1 통신 장치는 제2 목적벡터를 추출할 수 있다. 구체적으로, 제1 통신 장치는 제2 마스터 노드와 목적지인 제2 통신 장치의 좌표값을 활용하여 제2 목적벡터()를 추출할 수 있다. 제1 통신 장치는 제2 목적벡터()를 제2 통신 장치의 좌표값()인 (1, 3)에서 제2 마스터 노드에 대응하는 좌표값()인 (1, 2)를 빼서 추출할 수 있다. 이 경우, 제2 목적벡터()는 (0, 1)로 추출될 수 있다.
일 실시예에 따르면, 제1 목적벡터 값 및 제2 목적벡터 값은 하나의 목적벡터로 표현될 수 있다. 제1 목적벡터가 이고 제2 목적벡터가 인 경우 목적벡터는 의 형태를 가질 수 있다. 예를 들어, 제1 목적벡터()가 (1, 0)이고 제2 목적벡터()가 (0, 1)인 경우 목적벡터는 (1, 0, 0, 1)로 생성될 수 있다.
동작 S1007에서, 제1 통신 장치는 제1 목적벡터, 제2 목적벡터 및 데이터를 외부 통신 장치로 전송할 수 있다. 외부 통신 장치는 제1 통신 장치 그룹 내의 다른 통신 장치 이거나 제1 통신 장치 그룹의 마스터 노드일 수 있다.
도 10에 도시된 각 동작의 순서는 경우에 따라서 생략되거나 변경될 수 있다. 예를 들어 제1 목적벡터와 제2 목적벡터가 생성되는 순서는 반드시 도 10에 도시된 바에 따라 수행되어야 하는 것은 아니고, 제2 목적벡터를 먼저 생성한 후 제1 목적벡터를 생성할 수도 있다.
도 11은 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 11을 참조하여, 데이터를 수신하는 통신 장치의 동작을 설명한다. 통신 장치는 통신 장치 그룹(예: 도 9a의 통신 장치 그룹(810)) 내의 통신 장치(예: 도 9a의 통신 장치(911, 921)) 또는 마스터 노드(예: 도 9a의 마스터 노드(811))일 수 있다. 통신 장치는 도 1의 통신 장치(110)와 동일 또는 유사한 구성을 포함할 수 있으며, 도 1의 통신 장치(110)와 같이 동작할 수 있다.
일 실시예에 따르면, 통신 장치는 제1 목적벡터, 제2 목적벡터 및 데이터를 수신하고, 제1 목적벡터 또는 제2 목적벡터 중 적어도 하나에 기초하여 데이터를 외부 통신 장치로 전송할 수 있다.
동작 S1101에서, 통신 장치는 제1 목적벡터, 제2 목적벡터 및 데이터를 수신할 수 있다. 일 실시예에 따르면, 제1 목적벡터, 제2 목적벡터는 함께 하나의 목적벡터로 표현될 수 있다.
동작 S1103에서, 통신 장치는 제1 목적벡터 또는 제2 목적벡터 중 적어도 하나를 추출할 수 있다. 일 실시예에 따르면, 통신 장치는 전송된 패킷 데이터로부터 제1 목적벡터 및 제2 목적벡터를 추출할 수 있다. 또한, 통신 장치는 필요에 따라 하나의 목적벡터로부터 제1 목적벡터 또는 제2 목적벡터 중 하나를 우선하여 추출할 수도 있다.
동작 S1105에서, 통신 장치는 제1 목적벡터 또는 제2 목적벡터 중 적어도 하나에 기초하여 외부 통신 장치로 데이터를 전송할 수 있다. 여기서 외부 통신 장치는 마스터 노드(예: 도 9a의 마스터 노드(821))) 또는 동일한 통신 장치 그룹 내의 통신 장치를 포함할 수 있다.
도 12는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
이하에서는 도 12를 참조하여 통신 장치 그룹을 결정하기 위한 마스터 노드의 데이터 송수신 동작을 설명한다. 마스터 노드는 도 1의 통신 장치(110)와 동일 또는 유사한 구성을 포함할 수 있으며, 도 1의 통신 장치(110)와 같이 동작할 수 있다. 이하에서 설명의 편의를 위해 2개의 마스터 노드를 가정하여 설명한다. 일 실시예에 따르면, 제1 마스터 노드는 제1 목적벡터, 제2 목적벡터 및 데이터를 수신하고, 상기 제1 목적벡터에 기초하여 데이터를 제2 마스터 노드로 전송할 수 있다.
동작 S1201에서, 제1 마스터 노드는 제1 목적벡터, 제2 목적벡터 및 데이터를 수신할 수 있다. 일 실시예에 따르면, 제1 목적벡터, 제2 목적벡터는 함께 하나의 목적벡터를 구성할 수 있다. 다시 말해, 목적벡터는 제1 목적벡터 값 및 제2 목적벡터 값을 포함할 수 있다. 이 경우, 제1 마스터 노드에서 수신하는 데이터는 동일한 통신 장치 그룹 내의 일반적인 통신 장치가 전송하거나 외부 마스터 노드가 전송한 것일 수 있다.
동작 S1203에서, 통신 장치는 제1 목적벡터를 확인할 수 있다. 이를 위해, 통신 장치는 전송된 패킷 데이터로부터 적어도 제1 목적벡터를 추출할 수 있다.
동작 S1205에서, 통신 장치는 제1 목적벡터에 기초하여 제2 마스터 노드로 데이터를 전송할 수 있다. 여기서, 제1 마스터 노드와 제2 마스터 노드는 서로 다른 통신 장치 그룹에 포함될 수 있다.
제1 마스터 노드는 상기 제1 목적벡터가 지시하는 목적지가 제1 마스터 노드(또는 해당 통신 장치 그룹)인지 여부를 결정할 수 있다. 제1 마스터 노드가 지시하는 목적지가 제1 마스터 노드가 아닌 경우, 마스터 노드는 데이터를 제2 마스터 노드로 전송할 수 있다. 제1 목적벡터 값은 동작 S1201에서 수신한 목적벡터 값과 다른 값을 가질 수 있다. 제2 마스터 노드는 본 발명에서 제시된 다양한 데이터 송수신 방식에 따라서 결정될 수 있다.
일 실시예에 따르면 제1 마스터 노드는, 제1 목적벡터가 제1 마스터 노드를 지시하는 경우, 제2 목적벡터를 확인하거나 동일한 통신 장치 그룹 내 다른 통신 장치로 데이터를 전송할 수 있다.
도 13은 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 13을 참조하여, 통신 장치 그룹 내에서 데이터를 전송하는 마스터 노드의 동작을 설명한다. 마스터 노드는 도 1의 통신 장치(110)와 동일 또는 유사한 구성을 포함할 수 있으며, 도 1의 통신 장치(110)와 같이 동작할 수 있다. 이하에서 설명의 편의를 위해 2개의 마스터 노드를 가정하여 설명한다.
일 실시예에 따르면, 제1 마스터 노드(예: 도 9b의 마스터 노드(811))로부터 제1 목적벡터, 제2 목적벡터 및 데이터를 수신한 제2 마스터 노드(예: 도 9b의 마스터 노드(821))는 적어도 제2 목적벡터에 기초하여 데이터를 통신 장치 그룹 내 통신 장치로 전송할 수 있다. 이 경우, 제1 마스터 노드, 제2 마스터 노드는 일종의 통신 장치로 동작할 수 있으므로 본 발명의 다양한 실시예에서 각각 제1 통신 장치, 제2 통신 장치, 제3 통신 장치와 같이 지칭할 수도 있다.
동작 S1301에서, 제2 마스터 노드는 제1 목적벡터, 제2 목적벡터 및 데이터를 수신할 수 있다. 이하에서는, 제2 마스터 노드에서 수신하는 데이터는 제1 마스터 노드에서 전송하는 것을 예시로 하지만, 제2 마스터 노드에서 수신하는 데이터는 동일한 통신 장치 그룹 내의 통신 장치에서 전송한 것일 수도 있다.
동작 S1303에서, 제2 마스터 노드는 제2 목적벡터를 확인할 수 있다. 이를 위해, 제2 마스터 노드는 전송된 패킷 데이터로부터 제2 목적벡터를 추출할 수 있다. 본 발명의 일 실시예에 따르면, 제2 목적벡터는 제1 목적벡터와 함께 하나의 목적벡터 형태로 전송될 수 있다. 목적벡터로 (1, 0, 0, 1)을 수신하였다면, 제2 목적벡터는 (0, 1)일 수 있다.
일 실시예에 따르면, 동작 S1303은 동작 S1205에 후속하여 수행될 수 있다. 도 12에 관한 설명에서 제1 목적벡터의 확인 결과 제1 목적벡터에 의해 지시되는 목적지가 제2 마스터 노드이면, 제2 마스터 노드는 동작 S1303을 수행할 수 있다.
동작 S1305에서, 제2 마스터 노드는 제2 목적벡터에 기초하여 통신 장치 그룹 내 통신 장치로 데이터를 전송할 수 있다.
일 실시예에 따르면, 제2 마스터 노드는 제2 목적벡터를 확인하고, 상기 제2 목적벡터가 지시하는 목적지가 제2 마스터 노드인지 여부를 결정할 수 있다. 제2 목적벡터가 지시하는 목적지가 제2 마스터 노드가 아닌 경우, 예를 들어, 제2 목적벡터가 미리 설정된 특정 값이 아닌 경우, 제2 마스터 노드는 통신 장치 그룹 내 다른 통신 장치로 데이터를 전송할 수 있다. 제2 목적벡터가 지시하는 목적지가 제2 마스터 노드라면 제2 마스터 노드는 데이터를 최종적으로 수신할 수 있다. 예를 들어, 제2 목적벡터가 (0, 0)인 경우 제2 마스터 노드는 데이터를 최종적으로 수신할 수 있다.
제2 마스터 노드가 다른 통신 장치로 데이터를 전송하는 경우, 데이터는 적어도 제2 목적벡터와 함께 전송될 수 있다. 이 경우, 제2 목적벡터 값은 동작 S1301에서 수신한 목적벡터 값과 다른 값을 가질 수 있다.
도 13에 도시된 동작들은 통신 장치 그룹 내 일반적인 통신장치에 의해서도 수행될 수 있다. 데이터를 수신한 통신 장치가 통신 장치 그룹 내 일반적인 통신 장치라면 해당 통신 장치는 제2 목적벡터에 기초하여 데이터를 전송할 수 있다. 예를 들어, 통신 장치는 제2 목적벡터를 확인하고, 상기 제2 목적벡터가 상기 통신 장치에 연관된 것인지 여부를 결정할 수 있다. 제2 목적벡터가 지시하는 목적지가 상기 통신 장치가 아닌 경우 통신 장치는 데이터를 통신 장치 그룹 내 다른 통신 장치로 전송할 수 있다. 제2 목적벡터가 지시하는 목적지가 상기 통신 장치라면 통신 장치는 데이터를 최종적으로 수신하고 사용자에게 출력할 수 있다.
도 14는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다.
도 14를 참조하여, 통신 장치 그룹 간 데이터를 송신 또는 수신하는 마스터 노드의 동작을 설명한다. 통신 장치는 도 1의 통신 장치(110)와 동일 또는 유사한 구성을 포함할 수 있으며, 도 1의 통신 장치(110)와 같이 동작할 수 있다. 특히, 도 15는 타겟 네트워크 망의 좌표값이 (1, -1)인 경우, 본 발명의 마스터 노드가 제1 목적벡터에 기초하여 통신 장치 그룹을 결정하는 방법을 제시한다. 통신 장치 또는 마스터 노드는 도 3 내지 도 7b의 설명에 따라 타겟 네트워크 망을 결정할 수 있으나, 타겟 네트워크 망을 결정하는 방식은 이에 제한되지 않고 다양한 방식이 적용될 수 있다.
도 14에서는, 복수의 통신 장치들로 구성되어 있으며, 데이터가 x축 양의 방향, y축 음의 방향으로 전송되는 제2 네트워크 망에 따라 패킷 데이터가 전송되고 있는 시스템에서 동작하는 마스터 노드를 예시한다. 패킷 데이터가 현재 위치하고 있는 통신 장치의 좌표값은 (x, y)로 가정한다.
도 14의 설명에서 데이터 통신을 위한 초기값이 설정될 수 있다. 출발지에 해당하는 통신 장치는 목적지에 해당하는 통신 장치의 좌표값과 자신의 좌표값을 확인하여 목적벡터()인 를 추출할 수 있다. 도 15에서, 이고, 이므로 제2 네트워크 망이 타겟 네트워크 망으로 결정될 수 있다. 타겟 네트워크 망은 출발지에 해당하는 통신 장치, 또는 마스터 노드에서 결정할 수 있다. 는 x축 상에서 패킷 데이터가 양의 방향으로 이동하는 홉(hop) 값이며, 는 y축 상에서 음의 방향으로 패킷 데이터가 이동하는 홉(hop) 값이다. 및 는 자연수이다.
동작 S1401에서, 마스터 노드는 목적벡터 및 데이터를 수신할 수 있다. 일 실시예에 따르면, 목적벡터는 제1 목적벡터 및 제2 목적벡터를 포함할 수 있다. 목적벡터()는 (과 같이 표현되고 마스터 노드는 제1 목적벡터()인 및 제2 목적벡터()인 를 추출할 수 있다.
동작 S1403에서, 마스터 노드는 제1 목적벡터()의 x값이 0인지 확인할 수 있다.
만약, 제1 목적벡터()의 x값이 0이 아닌 경우(동작 S1403에서, 'No'), 동작 S1405에서, 출발지에 해당하는 마스터 노드는 x축에서 만큼 증가한 좌표값에 위치한 마스터 노드에게 패킷 데이터를 제공할 수 있다.
동작 S1405에서, 패킷 데이터를 제공받은 마스터 노드는 제1 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 마스터 노드는 다시 제1 목적벡터()의 x값이 0인지 확인할 수 있다. 제1 목적벡터()의 x값이 0이 아닌 경우, 동작 S1405부터 동작 S1407이 다시 수행될 수 있다.
반면에, 제1 목적벡터()의 x값이 0인 경우(동작 S1403에서, 'Yes'), 동작 S1409에서, 마스터 노드는 제1 목적벡터()의 y값이 0인지 확인할 수 있다.
만약, 제1 목적벡터()의 y값이 0이 아닌 경우(동작 S1409에서, 'No'), 동작 S1411에서, 마스터 노드는 y축에서 만큼 감소한 좌표값에 위치한 마스터 노드에게 패킷 데이터를 제공할 수 있다.
동작 S1413에서, 패킷 데이터를 제공받은 마스터 노드는 제1 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 마스터 노드는 다시 제1 목적벡터()의 y값이 0인지 확인할 수 있다. 제1 목적벡터()의 y값이 0이 아닌 경우, 동작 S1411부터 동작 S1413이 다시 수행될 수 있다.
반면에, 제1 목적벡터()의 y값이 0인 경우(동작 S1409에서, 'Yes'), 마스터 노드는 통신 장치 그룹 또는 마스터 노드를 결정하는 동작을 종료할 수 있다. 이후 마스터 노드는 도 15에 도시된 바와 같이 제2 목적벡터 제2 목적벡터 ()에 기초하여 통신 장치 그룹 내로 데이터를 전송할 수 있다.
도 15는 본 발명의 일 실시예에 따른 데이터 통신의 동작방법을 나타낸 흐름도이다. 특히, 도 15는 통신 장치 그룹 내에서 통신 장치들 간 데이터를 전송하는 방법을 제시한다.
동작 S1501에서, 마스터 노드는 수신한 목적벡터에서 제2 목적벡터()인 를 추출할 수 있다. 이하에서, 는 x축 상에서 패킷 데이터가 양의 방향으로 이동하는 홉(hop) 값이며, 는 y축 상에서 음의 방향으로 패킷 데이터가 이동하는 홉(hop) 값이다. 및 는 자연수이다.
동작 S1503에서, 마스터 노드는 제2 목적벡터()의 x값이 0인지 확인할 수 있다.
만약, 제2 목적벡터()의 x값이 0이 아닌 경우(동작 S1503에서, 'No'), 동작 S1505에서, 출발지에 해당하는 마스터 노드는 x축에서 만큼 증가한 좌표값에 위치한 통신 장치로 패킷 데이터를 제공할 수 있다. 이 경우, 마스터 노드와 통신 장치는 동일한 통신 장치 그룹에 포함될 수 있으며, 여기서 통신 장치는 마스터 노드가 아닌 일반적인 통신 장치를 의미할 수 있다.
동작 S1507에서, 패킷 데이터를 제공받은 통신 장치는 제2 목적벡터()를 으로 업데이트할 수 있다.
그리고 나서, 통신 장치는 다시 제2 목적벡터()의 x값이 0인지 확인할 수 있다. 제2 목적벡터()의 x값이 0이 아닌 경우, 동작 S1503부터 동작 S1507 동작이 다시 수행될 수 있다.
반면에, 제2 목적벡터()의 x값이 0인 경우(동작 S1503에서, 'Yes'), 동작 S1509에서, 마스터 노드 또는 통신 장치는 제2 목적벡터()의 y값이 0인지 확인할 수 있다.
만약, 제2 목적벡터()의 y값이 0이 아닌 경우(동작 S1509에서, 'No'), 동작 S1511에서, 마스터 노드 또는 통신 장치는 y축에서 만큼 감소한 좌표값에 위치한 통신 장치에게 패킷 데이터를 제공할 수 있다.
동작 S1513에서, 패킷 데이터를 제공받은 통신 장치는 제2 목적벡터()를 로 업데이트할 수 있다.
그리고 나서, 통신 장치는 다시 제2 목적벡터()의 y값이 0인지 확인할 수 있다. 제2 목적벡터()의 y값이 0이 아닌 경우, 동작 S1509부터 동작 S1513 동작이 다시 수행될 수 있다.
반면에, 제2 목적벡터()의 y값이 0인 경우(동작 S1509에서, 'Yes'), 마스터 노드 또는 통신 장치는 사용자에게 데이터를 출력할 수 있다.
도 14 내지 도 15에서는, 패킷 데이터의 이동 경로가 x축 진행 후, y축 진행하는 방식으로 설명되어 있으나, 이는 설명의 편의를 위한 것으로 이에 의해 본 발명의 범위가 제한되는 것은 아니다. 또한, 도 14와 도 15의 타겟 네트워크 망이 반드시 일치하여야 하는 것은 아니다. 따라서, 데이터의 이동 방향은 도 14와 도 15에서 서로 다르게 진행될 수 있다.
본 발명에 제시된 프로토콜은 기존 프로토콜과 대비하여 높은 확장성과 간단한 데이터 처리 및 높은 경제성을 가질 수 있다. 또한 본 발명에 제시된 프로토콜에 따르면, 기존 프로토콜과 대비하여 신속하고 효율적인 데이터 송수신이 가능할 수 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.
한편, 본 명세서에 기재된 다양한 실시예들은 하드웨어, 미들웨어, 마이크로코드, 소프트웨어 및/또는 이들의 조합에 의해 구현될 수 있다. 예를 들어, 다양한 실시예들은 하나 이상의 주문형 반도체(ASIC)들, 디지털 신호 프로세서(DSP)들, 디지털 신호 프로세싱 디바이스(DSPD)들, 프로그램어블 논리 디바이스(PLD)들, 필드 프로그램어블 게이트 어레이(FPGA)들, 프로세서들, 컨트롤러들, 마이크로컨트롤러들, 마이크로프로세서들, 여기서 제시되는 기능들을 수행하도록 설계되는 다른 전자 유닛들 또는 이들의 조합 내에서 구현될 수 있다.
또한, 예를 들어, 다양한 실시예들은 명령들을 포함하는 컴퓨터-판독가능한 매체에 수록되거나 인코딩될 수 있다. 컴퓨터-판독가능한 매체에 수록 또는 인코딩된 명령들은 프로그램 가능한 프로세서 또는 다른 프로세서로 하여금 예컨대, 명령들이 실행될 때 방법을 수행하게끔 할 수 있다. 컴퓨터-판독가능한 매체는 컴퓨터 저장 매체를 포함하며, 컴퓨터 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수도 있다. 예를 들어, 이러한 컴퓨터-판독가능한 매체는 RAM, ROM, EEPROM, CD-ROM 또는 기타 광학 디스크 저장 매체, 자기 디스크 저장 매체 또는 기타 자기 저장 디바이스를 포함할 수 있다.
이러한 하드웨어, 소프트웨어, 펌웨어 등은 본 명세서에 기술된 다양한 동작들 및 기능들을 지원하도록 동일한 디바이스 내에서 또는 개별 디바이스들 내에서 구현될 수 있다. 추가적으로, 본 발명에서 "~부"로 기재된 구성요소들, 유닛들, 모듈들, 컴포넌트들 등은 함께 또는 개별적이지만 상호 운용 가능한 로직 디바이스들로서 개별적으로 구현될 수 있다. 모듈들, 유닛들 등에 대한 서로 다른 특징들의 묘사는 서로 다른 기능적 실시예들을 강조하기 위해 의도된 것이며, 이들이 개별 하드웨어 또는 소프트웨어 컴포넌트들에 의해 실현되어야만 함을 필수적으로 의미하지 않는다. 오히려, 하나 이상의 모듈들 또는 유닛들과 관련된 기능은 개별 하드웨어 또는 소프트웨어 컴포넌트들에 의해 수행되거나 또는 공통의 또는 개별의 하드웨어 또는 소프트웨어 컴포넌트들 내에 통합될 수 있다.
특정한 순서로 동작들이 도면에 도시되어 있지만, 이러한 동작들이 원하는 결과를 달성하기 위해 도시된 특정한 순서, 또는 순차적인 순서로 수행되거나, 또는 모든 도시된 동작이 수행되어야 할 필요가 있는 것으로 이해되지 말아야 한다. 임의의 환경에서는, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 더욱이, 상술한 실시예에서 다양한 구성요소들의 구분은 모든 실시예에서 이러한 구분을 필요로 하는 것으로 이해되어서는 안 되며, 기술된 구성요소들이 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키징될 수 있다는 것이 이해되어야 한다.
이상으로 설명한 본 문서의 다양한 실시예들에 따른 전자 장치, 서버, 혹은 외부 장치는, 예를 들면, 스마트폰, 태블릿 PC, 이동 전화기, 영상 전화기, 데스크탑 PC, 랩탑 PC, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라, 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따르면 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체 형(예: 전자 의복), 신체 부착 형(예: 스킨 패드(skin pad) 또는 문신), 또는 생체 이식 형(예: implantable circuit) 중 적어도 하나를 포함할 수 있다.
어떤 실시예들에서, 전자 장치 또는 외부 장치는 가전 제품(home appliance)일 수 있다. 가전 제품은, 예를 들면, 텔레비전, DVD 플레이어(Digital Video Disk player), 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스, 게임 콘솔, 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시예에서, 전자 장치, 외부 장치, 웨어러블 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 내비게이션(navigation) 장치, 위성 항법 시스템 (GNSS(Global Navigation Satellite System)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 가정용 로봇, 또는 사물 인터넷 장치(internet of things) (예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
Claims (5)
- 위치 기반 데이터 통신 시스템의 동작방법에 있어서,
제1 통신 장치로부터, 제2 통신 장치가 제1 목적벡터, 제2 목적벡터 및 데이터를 수신하는 동작;
상기 제2 통신 장치가, 상기 제1 목적벡터 또는 상기 제2 목적벡터 중 적어도 하나에 기초하여 상기 데이터를 제3 통신 장치로 전송하는 동작을 포함하는,
위치 기반 데이터 통신 시스템의 동작방법.
- 청구항 1에 있어서,
상기 데이터를 상기 제3 통신 장치로 전송하는 동작은, 상기 제1 목적벡터 또는 상기 제2 목적벡터 중 적어도 하나를 전송하는 동작을 포함하는,
위치 기반 데이터 통신 시스템의 동작 방법.
- 청구항 1에 있어서,
적어도 하나의 통신 장치를 포함하는 제1 통신 장치 그룹은 상기 제1 통신 장치를 포함하고,
적어도 하나의 통신 장치를 포함하는 제2 통신 장치 그룹은 상기 제3 통신 장치를 포함하며,
상기 제1 목적벡터는 상기 제2 통신 장치 그룹에 연관되고,
상기 제2 목적벡터는 상기 제3 통신 장치에 연관되는,
위치 기반 데이터 통신 시스템의 동작 방법.
- 청구항 1에 있어서,
상기 제1 목적벡터, 상기 제2 목적벡터 및 상기 데이터는 하나의 패킷 데이터에 포함되는, 위치 기반 데이터 통신 시스템의 동작 방법.
- 위치 기반 데이터 통신을 수행하는 통신 장치에 있어서,
메모리;
외부 통신 장치와 신호를 송신 또는 수신하기 위한 통신 회로, 및
상기 메모리 및 상기 통신 회로에 전기적으로 연결된 프로세서를 포함하고,
상기 프로세서는,
제1 통신 장치로부터, 제2 통신 장치가 제1 목적벡터, 제2 목적벡터 및 데이터를 수신하고, 상기 제2 통신 장치가, 상기 제1 목적벡터 또는 상기 제2 목적벡터 중 적어도 하나에 기초하여 상기 데이터를 제3 통신 장치로 전송하도록 하는,
통신 장치.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220158976 | 2022-11-24 | ||
KR20220158976 | 2022-11-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240077376A true KR20240077376A (ko) | 2024-05-31 |
Family
ID=91330503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230042694A KR20240077376A (ko) | 2022-11-24 | 2023-03-31 | 위치 기반 데이터 통신 시스템 및 그것의 동작방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20240077376A (ko) |
-
2023
- 2023-03-31 KR KR1020230042694A patent/KR20240077376A/ko not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102405651B1 (ko) | 홈 오토메이션 시스템을 위한 클라우드 동기화된 아키텍처 | |
US20160277205A1 (en) | Internet of things (iot) communication method, communication end, and user end | |
US10044799B2 (en) | Implementing synchronization of state information betweeen instances of an application as well as between different applications in an efficient, scalable manner | |
US20160182639A1 (en) | Internet of things network system using fog computing network | |
KR101481536B1 (ko) | 디바이스 동적 연결을 위한 제어-룰 설정 방법 | |
KR20140127744A (ko) | 다중 무선 억세스를 위한 전자 장치 및 그 방법 | |
JP2018166323A (ja) | ネットワークサービス構成方法およびネットワーク管理装置 | |
WO2017045450A1 (zh) | 资源的操作处理方法及装置 | |
WO2022099709A1 (zh) | 一种卫星回传信息的确定方法及装置 | |
CN109155939A (zh) | 一种负载迁移方法、装置及系统 | |
CN105978940A (zh) | 一种智能穿戴设备的好友添加方法及系统 | |
US20150213138A1 (en) | Thing device based on thing searching browser, and mashup method between things | |
CN110326262B (zh) | 将无线设备抽象为虚拟以太网接口 | |
EP3570567B1 (en) | Method and device for operating instance resources | |
KR101426994B1 (ko) | 토폴로지를 이용하여 데이터를 공유하는 장치 및 방법 | |
EP2942711B1 (en) | Dynamic generation of proxy connections | |
US20150188991A1 (en) | Simulated tethering of computing devices | |
CN116472782A (zh) | 双连接移动通信系统 | |
KR20240077376A (ko) | 위치 기반 데이터 통신 시스템 및 그것의 동작방법 | |
KR102649698B1 (ko) | 위치 기반 데이터 통신 시스템, 장치 및 그것의 동작방법 | |
TWI715390B (zh) | 網狀網路之傳輸訊號之方法及其遙控控制系統 | |
KR102554449B1 (ko) | 위치 기반 데이터 통신 시스템 및 그것의 동작방법 | |
KR102607821B1 (ko) | 위치 기반 데이터 통신 시스템 및 그것의 동작방법 | |
JP2017150989A (ja) | 目標追尾装置 | |
US9854035B2 (en) | Maintaining state synchronization of an application between computing devices as well as maintaining state synchronization of common information between different applications without requiring periodic synchronization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E601 | Decision to refuse application |