KR101499454B1 - 랜덤 코드를 이용하여 네트워크 코딩 기법을 적용하는 무선네트워크 - Google Patents

랜덤 코드를 이용하여 네트워크 코딩 기법을 적용하는 무선네트워크 Download PDF

Info

Publication number
KR101499454B1
KR101499454B1 KR1020080136661A KR20080136661A KR101499454B1 KR 101499454 B1 KR101499454 B1 KR 101499454B1 KR 1020080136661 A KR1020080136661 A KR 1020080136661A KR 20080136661 A KR20080136661 A KR 20080136661A KR 101499454 B1 KR101499454 B1 KR 101499454B1
Authority
KR
South Korea
Prior art keywords
message
source
node
random code
relay
Prior art date
Application number
KR1020080136661A
Other languages
English (en)
Other versions
KR20100078405A (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 KR1020080136661A priority Critical patent/KR101499454B1/ko
Publication of KR20100078405A publication Critical patent/KR20100078405A/ko
Application granted granted Critical
Publication of KR101499454B1 publication Critical patent/KR101499454B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0076Distributed coding, e.g. network coding, involving channel coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

랜덤 코드를 이용하여 네트워크 코딩 기법을 적용하는 무선 네트워크가 개시된다. 제1 소스 노드는 제1 랜덤 코드를 가지고 제1 소스 메시지에 속하는 복수의 제1 서브 메시지들을 가공하여 제1 전송 메시지를 생성하고, 제2 소스 노드는 제2 랜덤 코드를 가지고 제2 소스 메시지에 속하는 제2 서브 메시지들을 가공하여 제2 전송 메시지를 생성한다. 그리고, 중계 노드는 제3 랜덤 코드를 가지고 제1 소스 메시지 및 제2 소스 메시지를 가공하여 중계 메시지를 생성한다. 이 때, 제1 소스 노드에 대응되는 제1 목적 노드는 제2 전송 메시지를 엿듣고, 엿들은 제2 전송 메시지 및 중계 메시지를 기초로 제1 소스 메시지를 추출한다. 또한, 제2 소스 노드에 대응되는 제2 목적 노드는 제1 전송 메시지를 엿듣고, 엿들은 제1 전송 메시지 및 중계 메시지를 기초로 제2 소스 메시지를 추출한다.
네트워크 코딩, 랜덤 코드, 중계, 선형, 독립, 메시지, 소스, 목적

Description

랜덤 코드를 이용하여 네트워크 코딩 기법을 적용하는 무선 네트워크{WIRELESS NETWORK OF APPLYING NETWORK CODING SCHEME USING RANDOM CODE}
본 발명의 실시예들은 네트워크 코딩 기법을 사용하는 무선 네트워크에 관한 것으로, 특히 무선 네트워크의 컨트롤 오버헤드를 줄이고, 무선 네트워크의 성능(throughput)을 향상시키기 위한 기술에 관한 것이다.
메시(mesh) 네트워크, 애드혹(ad-hoc) 네트워크, 센서 네트워크와 같은 무선 네트워크에 적용되는 통신 프로토콜들에 관한 연구가 활발히 진행되고 있다. 특히, 무선 네트워크에 속하는 노드들 각각은 제한된 송신 전력을 가지며, 노드들 사이의 채널들의 상태는 변하므로 무선 네트워크의 성능을 높이는 데에는 한계가 있다.
최근, 무선 네트워크에 적용될 수 있는 네트워크 코딩 기법에 관한 관심이 증가하고 있다. 네트워크 코딩 기법을 사용하는 무선 네트워크에서, 중계 노드는 적어도 두 개의 노드들에 대응하는 메시지들을 적절히 인코딩하여 네트워크 코딩된 메시지를 생성하고, 네트워크 코딩된 메시지를 상기 적어도 두 개의 노드들로 전달한다. 이 때, 적어도 두 개의 노드들은 네트워크 코딩 메시지를 적절히 디코딩함 으로써, 원하는(desired) 메시지들을 추출할 수 있다.
네트워크 코딩 기법을 사용하는 무선 네트워크는 무선 자원(예를 들어, 시간 자원)을 비교적 효율적으로 사용할 수 있다. 다만, 네트워크 코딩 기법을 사용하는 무선 네트워크가 더 높은 성능을 달성하고, 무선 네트워크에서 발생하는 오버헤드를 줄이기 위해서는 더 많은 연구들이 이루어져야 한다.
본 발명의 일실시예에 따른 제1 소스 노드는 제1 랜덤 코드를 가지고 제1 소스 메시지에 속하는 복수의 제1 서브 메시지들을 가공하여 제1 전송 메시지를 생성하고, 제2 소스 노드는 제2 랜덤 코드를 가지고 제2 소스 메시지에 속하는 제2 서브 메시지들을 가공하여 제2 전송 메시지를 생성한다.
그리고, 중계 노드는 제3 랜덤 코드를 가지고 제1 소스 메시지 및 제2 소스 메시지를 가공하여 중계 메시지를 생성할 수 있다.
이 때, 제1 소스 노드에 대응되는 제1 목적 노드는 제2 전송 메시지를 엿듣고, 엿들은 제2 전송 메시지 및 중계 메시지를 기초로 제1 소스 메시지를 추출한다. 그리고, 제2 소스 노드에 대응되는 제2 목적 노드는 제1 전송 메시지를 엿듣고, 엿들은 제1 전송 메시지 및 중계 메시지를 기초로 제2 소스 메시지를 추출한다.
본 발명의 일실시예에 따른 중계 노드의 네트워크 코딩 방법은 제1 소스 노드로부터 적어도 하나의 제1 전송 메시지를 수신하는 단계, 제2 소스 노드로부터 적어도 하나의 제2 전송 메시지들을 수신하는 단계 및 적어도 하나의 제3 랜덤 코드를 가지고 제1 소스 메시지 및 제2 소스 메시지를 가공하여 적어도 하나의 중계 메시지를 생성하는 단계를 포함한다.
이 때, 상기 제1 소스 노드는 적어도 하나의 제1 랜덤 코드를 가지고 제1 소스 메시지에 속하는 복수의 제1 서브 메시지들을 가공하여 상기 적어도 하나의 제1 전송 메시지를 생성하고, 상기 제2 소스 노드는 적어도 하나의 제2 랜덤 코드를 가지고 제2 소스 메시지에 속하는 제2 서브 메시지들을 가공하여 상기 적어도 하나의 제2 전송 메시지를 생성한다.
또한, 본 발명의 일실시예에 따른 제1 목적 노드의 동작 방법은 제2 소스 노드로부터 전송된 적어도 하나의 제2 전송 메시지를 엿듣는 단계, 중계 노드로부터 적어도 하나의 중계 메시지를 수신하는 단계 및 상기 엿들은 적어도 하나의 제2 전송 메시지 및 상기 적어도 하나의 중계 메시지를 기초로 제1 소스 메시지를 추출하는 단계를 포함한다.
이 때, 제1 소스 노드는 적어도 하나의 제1 랜덤 코드를 가지고 상기 제1 소스 메시지에 속하는 복수의 제1 서브 메시지들을 가공하여 적어도 하나의 제1 전송 메시지를 생성하고, 상기 제2 소스 노드는 적어도 하나의 제2 랜덤 코드를 가지고 제2 소스 메시지에 속하는 제2 서브 메시지들을 가공하여 상기 적어도 하나의 제2 전송 메시지를 생성하고, 상기 중계 노드는 적어도 하나의 제3 랜덤 코드를 가지고 상기 제1 소스 메시지 및 상기 제2 소스 메시지를 가공하여 상기 적어도 하나의 중계 메시지를 전송한다.
또한, 본 발명의 일실시예에 따른 제1 소스 노드의 동작 방법은 제1 소스 노드가 복수의 제1 서브 메시지들로 제1 소스 메시지를 분할하는 단계, 상기 제1 소스 노드가 적어도 하나의 제1 랜덤 코드를 가지고 상기 복수의 제1 서브 메시지들 가공하여 적어도 하나의 제1 전송 메시지를 생성하는 단계 및 상기 제1 소스 노드가 중계 노드 및 제2 목적 노드로 상기 적어도 하나의 제1 전송 메시지를 전송하는 단계를 포함한다.
이 때, 제2 소스 노드는 적어도 하나의 제2 랜덤 코드를 가지고 제2 소스 메시지에 속하는 제2 서브 메시지들을 가공하여 적어도 하나의 제2 전송 메시지를 생성하고,
상기 중계 노드는 적어도 하나의 제3 랜덤 코드를 가지고 상기 제1 소스 메시지 및 상기 제2 소스 메시지를 가공하여 적어도 하나의 중계 메시지를 생성하고, 상기 제1 목적 노드는 엿들은 상기 적어도 하나의 제2 전송 메시지 및 상기 적어도 하나의 중계 메시지를 기초로 상기 제1 소스 메시지를 추출하고, 상기 제2 목적 노드는 엿들은 상기 적어도 하나의 제1 전송 메시지 및 상기 적어도 하나의 중계 메시지를 기초로 상기 제2 소스 메시지를 추출한다.
본 발명의 일실시예에 따른 중계 노드는 랜덤 코드를 사용함으로써 목적 노드들이 어떤 서브 메시지들을 엿들었는지에 대한 컨트롤 정보 없이도 네트워크 코딩 기법을 적용할 수 있다. 이에 따라, 무선 네트워크에서 발생하는 컨트롤 오버헤드가 감소될 수 있다.
또한, 본 발명의 일실시예에 따른 목적 노드들 각각은 소스 노드들로부터 전송된 메시지들 중 적어도 하나를 엿들음으로써, 무선 네트워크의 성능을 높일 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 무선 네트워크를 도시한 도면이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 무선 네트워크는 제1 소스 노드(S1), 제2 소스 노드(S2), 중계 노드(R), 제1 목적 노드(D1) 및 제2 목적 노드(D2)를 포함한다. 다만, 본 발명의 일실시예에 따른 무선 네트워크는 도 1에 도시된 바와 다르게, 둘 이상의 소스 노드들, 중계 노드들 및 목적 노드들을 포함할 수 있으며, 후술하는 본 발명의 실시예들은 이러한 무선 네트워크에 동일하게 적용될 수 있다.
제1 소스 노드(S1)로부터 중계 노드(R)로의 채널을 h1R, 제2 소스 노드(S2)로부터 중계 노드(R)로의 채널을 h2R, 중계 노드(R)로부터 제1 목적 노드(D1)로의 채널을 hR1, 중계 노드(R)로부터 제2 목적 노드(D2)로의 채널을 hR2라고 한다. 또한, 제1 소스 노드(S1)로부터 제2 목적 노드(D2)로의 채널을 h12, 제2 소스 노드(S2)로부터 제1 목적 노드(D1)로의 채널을 h21이라고 한다. 이 때, h1R, h2R은 직접 채널(direct channel)이라고 부르며, h12 및 h21을 엿듣는 채널(overhearing channel)이라고 부르기로 한다.
또한, 제1 소스 노드(S1)는 제1 목적 노드(D1)와 짝(pair)을 이루며, 제1 소스 노드(S1)가 제1 목적 노드(D1)로 전송하고자 하는 메시지를 제1 소스 메시지(M1)라고 가정한다. 또한, 제2 소스 노드(S2)는 제2 목적 노드(D2)와 짝을 이루 며, 제2 소스 노드(S2)가 제2 목적 노드(D2)로 전송하고자 하는 메시지를 제2 소스 메시지(M2)라고 가정한다.
도 2는 무선 네트워크의 시간에 따른 동작들을 설명하기 위한 도면이다.
도 2의 210은 무선 네트워크가 네트워크 코딩 기법을 사용하지 않는 경우, 무선 네트워크의 시간에 따른 동작들을 나타낸다.
무선 네트워크가 네트워크 코딩 기법을 사용하지 않는 경우, 제1 소스 노드(S1)가 제1 소스 메시지(M1)를 제1 목적 노드(D1)로 전송하고, 제2 소스 노드(S2)가 제2 소스 메시지(M2)를 제2 목적 노드(D2)로 전송하기 위해서는 네 개의 시간 슬롯들이 필요하다.
즉, 제1 소스 노드(S1)는 phase 1에 대응하는 제1 시간 슬롯에서 중계 노드(R)로 제1 소스 메시지(M1)를 전송한다. 또한, 제2 소스 노드(S2)는 phase 2에 대응하는 제2 시간 슬롯에서 중계 노드(R)로 제2 소스 메시지(M2)를 전송한다. 이 때, 중계 노드(R)는 제1 소스 메시지(M1) 및 제2 소스 메시지(M2)를 phase 3 및 phase 4에 대응하는 제3 시간 슬롯 및 제4 시간 슬롯에서 제1 목적 노드(D1) 및 제2 목적 노드(D2)로 전달한다.
반면에, 도 2의 220은 무선 네트워크가 네트워크 코딩 기법을 사용하는 경우, 무선 네트워크의 시간에 따른 동작들의 일예를 나타낸다.
무선 네트워크가 네트워크 코딩 기법을 사용하는 경우, 제1 소스 노드(S1)가 제1 소스 메시지(M1)를 제1 목적 노드(D1)로 전송하고, 제2 소스 노드(S2)가 제2 소스 메시지(M2)를 제2 목적 노드(D2)로 전송하기 위해서는 3 개의 시간 슬롯들이 필요하다.
즉, 제1 시간 슬롯에서, 제1 소스 노드(S1)는 제1 소스 메시지(M1)를 제2 목적 노드(D2) 및 중계 노드(R)로 전송한다. 이 때, 제1 소스 메시지(M1)는 엿듣는 채널(h12)을 통하여 제2 목적 노드(D2)로 전송되며, 직접 채널(h1R)을 통하여 중계 노드(R)로 전송된다.
또한, 제2 시간 슬롯에서, 제2 소스 노드(S2)는 제2 소스 메시지(M2)를 제1 목적 노드(D1) 및 중계 노드(R)로 전송한다. 이 때, 제2 소스 메시지(M2)는 엿듣는 채널(h21)을 통하여 제2 목적 노드(D1)로 전송되며, 직접 채널(h2R)을 통하여 중계 노드(R)로 전송된다.
이 때, 중계 노드(R)는 제1 시간 슬롯 및 제2 시간 슬롯에서 수신된 제1 소스 메시지(M1) 및 제2 소스 메시지(M2)를 네트워크 코딩 기법에 따라 인코딩한다. 예를 들어, 중계 노드(R)는 XOR 연산을 통하여 제1 소스 메시지(M1) 및 제2 소스 메시지(M2)를 인코딩하여 네트워크 코딩된 메시지(XOR(M1, M2))를 생성할 수 있다.
또한, 제3 시간 슬롯에서, 중계 노드(R)는 네트워크 코딩된 메시지(XOR(M1, M2))를 제1 목적 노드(D1) 및 제2 목적 노드(D1)로 전송한다. 이 때, 제1 목적 노드(D1)는 제2 시간 슬롯에서 엿들은(overheard) 제2 소스 메시지(M2)를 이용하여 네트워크 코딩된 메시지(XOR(M1, M2))로부터 제1 소스 메시지(M1)를 추출한다. 유사하게, 제2 목적 노드(D2)는 제1 시간 슬롯에서 엿들은(overheard) 제1 소스 메시지(M1)를 이용하여 네트워크 코딩된 메시지(XOR(M1, M2))로부터 제2 소스 메시 지(M2)를 추출한다.
다만, 무선 네트워크가 도 2의 220에 도시된 바와 같이 동작하는 경우, 여러 문제들이 발생할 수 있다.
일반적으로, 엿듣는 채널들(h12, h21)의 상태는 직접 채널들(h1R, h2R)의 상태보다 좋지 않다. 따라서, 제1 소스 노드(S1) 및 제2 소스 노드(S2)가 제1 시간 슬롯 및 제2 시간 슬롯에서 엿듣는 채널들(h12, h21)을 사용하는 경우, 제1 소스 노드(S1) 및 제2 소스 노드(S2)의 적용 가능한 데이터 전송률은 엿듣는 채널들(h12, h21)의 상태에 의해 제한된다.
예를 들어, 제1 소스 노드(S1)가 제1 시간 슬롯에서 제1 소스 메시지(M1)를 전송하는 경우, 제1 소스 노드(S1)는 중계 노드(R)에 대해서는 높은 데이터 전송률을 적용할 수 있으나, 제2 목적 노드(R1)에 대해서는 낮은 데이터 전송률을 적용해야 하므로, 제1 소스 노드(S1)의 적용 가능한 데이터 전송률이 감소하는 문제가 발생한다. 또 다른 예를 들어, 엿듣는 채널(h12)에서 손실이 발생할 확률이 75%(전송에 성공할 확률이 25%)라고 가정하는 경우, 제1 소스 노드(S1)는 전송에 성공하기 위하여 4(=1/0.25) 번 제1 소스 메시지(M1)를 전송해야 하며, 이러한 전송 횟수의 증가는 무선 네트워크 전체의 성능을 저하시키는 원인이 된다.
또한, 엿듣는 채널을 이용하여 네트워크 코딩 기법을 적용하는 일반적인 무선 네트워크에서, 중계 노드(R)가 네트워크 코딩 기법을 적용하기 위해서는 제1 소 스 메시지(M1)에 속하는 패킷들 중 제2 목적 노드(D2)가 엿들은 패킷들(또는 서브 메시지들)에 대한 정보 및 제2 소스 메시지(M2)에 속하는 패킷들 중 제1 목적 노드(D1)가 엿들은 패킷들에 대한 정보를 알아야 한다. 이러한 엿들은 패킷들에 대한 정보가 중계 노드(R)로 제공됨으로 인해 무선 네트워크에서 발생하는 오버헤드는 무선 네트워크의 성능을 저하시키는 원인이 될 수 있다.
그러나, 본 발명의 실시예들에 따르면, 중계 노드(R)는 제1 목적 노드(D1) 및 제2 목적 노드가 엿들은 패킷들에 대한 정보 없이도 네트워크 코딩 기법을 적용할 수 있다. 특히, 중계 노드(R)는 랜덤 코드를 이용하여 중계 메시지를 생성함으로써, 무선 네트워크에서 발생하는 컨트롤 오버헤드를 줄일 수 있다.
도 3은 제1 목적 노드 및 제2 목적 노드에 의해 엿들은(overheard) 서브 메시지들 및 엿듣지 못한 서브 메시지들을 도시한 도면이다.
도 3을 참조하면, 제1 소스 노드(S1)의 제1 소스 메시지(M1)는 8개의 제1 서브 메시지들로, 제2 소스 노드(S2)의 제2 소스 메시지(M2)는 8개의 제2 서브 메시지들로 나타낼 수 있다.
제1 시간 슬롯에서, 제1 소스 노드(S1)는 제1 소스 메시지(M1)를 전송하고, 제2 목적 노드(D2)는 제1 소스 메시지(M1)를 엿듣는다. 이 때, 일반적으로 제1 소스 노드(S1)로부터 제2 목적 노드(D2)까지의 엿듣는 채널의 상태는 좋지 않으므로, 제2 목적 노드(D2)는 제1 소스 메시지(M1)를 완전히 수신하지 못한다. 즉, 제2 목적 노드(D2)는 제1 서브 메시지들 중 1, 3, 6, 7 번째 제1 서브 메시지들만을 성공적으로 수신하고, 2, 4, 5, 8 번째 제1 서브 메시지들을 수신하는 데에는 실패한 다.
이와 유사하게, 제2 시간 슬롯에서 제2 소스 노드(S2)는 제2 소스 메시지(M2)를 전송하고, 제1 목적 노드(D1)는 제2 소스 메시지(M2)를 엿듣는다. 이 때, 제1 목적 노드(D1)는 제1 소스 메시지(M1)를 완전히 수신하지 못한다. 즉, 제2 목적 노드(D2)는 제2 서브 메시지들 중 1, 3, 5 번째 제2 서브 메시지들만을 성공적으로 수신하고, 2, 4, 6, 7, 8 번째 제2 서브 메시지들을 수신하는 데에는 실패한다.
또한, 중계 노드(R)는 제1 목적 노드(D1)가 엿들은 1, 3, 6, 7 번째 제1 서브 메시지들에 관한 정보 및 제2 목적 노드(D2)가 엿들은 1, 3, 5 번째 제2 서브 메시지들에 관한 정보를 파악한다. 그리고, 중계 노드(R)는 상기 정보를 기초로 제1 서브 메시지들의 일부(도 3에서 1, 3, 6 번째 제1 서브 메시지들) 및 제2 서브 메시지들의 일부(도 3에서 1, 3, 5 번째 제2 서브 메시지들)를 XOR 연산에 따라 인코딩한다. 그리고, 중계 노드(R)는 인코딩된 메시지들과 제1 서브 메시지들의 나머지 및 제2 서브 메시지들의 나머지를 포함하는 중계 메시지를 제1 목적 노드(D1) 및 제2 목적 노드(D2)로 전송한다.
이 때, 중계 노드(R)가 중계 메시지를 생성하기 위해서는 제1 목적 노드(D1) 및 제2 목적 노드(D2)가 어떤 서브 메시지들을 성공적으로 수신하였는지를 파악해야 함을 알 수 있다. 즉, 이것은 제1 목적 노드(D1) 및 제2 목적 노드(D2)가 어떤 서브 메시지들을 성공적으로 엿들었는지에 대한 컨트롤 정보를 중계 노드(R)로 제공해야 한다는 것을 의미한다. 제1 목적 노드(D1) 및 제2 목적 노드(D2)가 컨트롤 정보를 중계 노드(R)로 제공하는 것은 무선 네트워크에 많은 오버헤드를 발생시키는 원인이 될 수 있다.
아래에서 설명하겠지만, 본 발명의 실시예들에 따르면, 제1 목적 노드(D1) 및 제2 목적 노드(D2)가 어떤 서브 메시지들을 성공적으로 엿들었는지에 대한 컨트롤 정보를 중계 노드(R)로 제공하지 않더라도, 중계 노드(R)는 랜덤 코드를 사용하여 네트워크 코딩된 중계 메시지를 생성할 수 있다. 이러한 본 발명의 실시예들에 따르면, 무선 네트워크에서 발생하는 오버헤드를 줄일 수 있다.
도 4는 본 발명의 일실시예에 따른 제1 소스 노드의 동작 방법을 나타낸 동작 흐름도이다.
도 4를 참조하면, 본 발명의 일실시예에 따른 제1 소스 노드는 제1 소스 메시지(M1)를 N1 개의 제1 서브 메시지들(M11, M12, M13, . . ., M1N1)로 분할한다(S400).
또한, 본 발명의 일실시예에 따른 제1 소스 노드는 j를 1로 셋팅한다 (S410).
또한, 본 발명의 일실시예에 따른 제1 소스 노드는 제1 랜덤 코드 C1 j를 생성한다(S420).
여기서, j는 제1 소스 노드가 제1 소스 메시지(M1)를 전송하는 횟수를 나타내는 인덱스이다. 즉, 중계 노드가 N1 개의 제1 서브 메시지들 모두를 성공적으로 수신할 수 있도록 제1 소스 노드는 제1 소스 메시지(M1)와 관련된 제1 전송 메시지 를
Figure 112008090395536-pat00001
번 전송한다고 가정하는 경우, C1 j는 제1 소스 노드가 j 번째 전송되는 제1 전송 메시지를 생성하는 과정에서 사용되는 제1 랜덤 코드를 의미한다.
이 때, 제1 랜덤 코드 C1 j는 N1 개의 계수들을 포함하는 벡터의 형태를 가질 수 있다. 특히, 제1 랜덤 코드 C1 j에 포함되는 N1 개의 계수들은 2m(m은 양의 정수임)의 사이즈를 갖는 유한체(Finite Field)로부터 랜덤하게 선택될 수 있다. 그리고, 제1 랜덤 코드 C1 j에 포함되는 N1 개의 계수들 각각이 선택되는 확률은 균일 분포(uniform distribution)를 가질 수 있다.
또한, 본 발명의 일실시예에 따른 제1 소스 노드는 제1 랜덤 코드 C1 j를 가지고 제1 서브 메시지들(M11, M12, M13, . . ., M1N1)을 가공하여 제1 전송 메시지 X1 j를 생성한다(S430).
이 때, 생성된 제1 전송 메시지 X1 j는 제1 시간 슬롯에서 멀티캐스트 또는 브로드캐스트된다. 따라서, 제1 전송 메시지 X1 j는 직접 채널을 통하여 중계 노드로 전달되고, 제2 목적 노드는 엿듣는 채널을 통하여 제1 전송 메시지 X1 j의 전부 또는 일부를 엿듣는다.
또한, 본 발명의 일실시예에 따른 제1 소스 노드는 중계 노드로부터 확인 메시지(ACK)를 수신하였는지 여부를 판단한다(S440).
예를 들어, 중계 노드는 N1 개의 제1 서브 메시지들을 수신함에 응답하여 확인 메시지를 제1 소스 노드로 제공할 수 있고, 제1 소스 노드는 확인 메시지가 수신될 때까지 제1 전송 메시지를 반복적으로 전송할 수 있다.
이 때, 본 발명의 일실시예에 따른 제1 소스 노드는 중계 노드로부터 확인 메시지를 수신하는 경우, 제1 시간 슬롯에서의 동작을 종료한다. 다만, 본 발명의 일실시예에 따른 제1 소스 노드는 중계 노드로부터 확인 메시지를 수신하는 경우, j를 1만큼 증가시킨다(S450). 그리고, 본 발명의 일실시예에 따른 제1 소스 노드는 j+1 번째 제1 랜덤 코드를 가지고 j+1 번째 제1 전송 메시지를 생성한다.
상술한 내용을 기초로 제1 전송 메시지 X1 j는 하기 수학식 1을 통하여 표현될 수 있다.
X1 j = C1 jM1
C1 j = [c11 j c12 j c13 j c14 j . . . c1N1 j]
M1 = [M11 M12 M13 . . . M1N1]
여기서, C1 j는 유한체
Figure 112008090395536-pat00002
의 원소이고,
Figure 112008090395536-pat00003
은 2m(m은 양의 정수임)의 사이즈를 가지며,
Figure 112008090395536-pat00004
에 속하는 원소들 각각은 N1개의 원소들로 이루어진 벡터이다.
이 때, 제1 소스 노드가
Figure 112008090395536-pat00005
번 제1 전송 메시지를 전송하는 경우,
Figure 112008090395536-pat00006
개의 제1 랜덤 코드들로 구성된 코딩 행렬 C1이 하기 수학식 2와 같이 정의될 수 있다.
Figure 112008090395536-pat00007
여기서, 제1 전송 메시지가 제1 소스 노드로부터 중계 노드로 전송되는 과정에서 발생하는 손실과 관련된 손실 행렬을 L1R이라고 가정한다. 손실 행렬 L1R은 제 1 소스 노드 및 중계 노드 사이의 채널에 따라 변한다.
이 때, 중계 노드에서 수신된 제1 전송 메시지 X1R는 하기 수학식 3과 같이 나타낼 수 있다.
X1R=L1RC1M1
이 때,
Figure 112008090395536-pat00008
개의 제1 랜덤 코드들로 구성된 코딩 행렬 C1은 L1RC1의 역행렬이 존재하도록 생성될 수 있다. 특히,
Figure 112008090395536-pat00009
개의 제1 랜덤 코드들은 서로 선형 독립일 수 있다. 여기서, m이 무한대로 증가함에 따라 L1RC1의 역행렬이 존재할 확률은 1로 가까워진다.
또한, 제2 목적 노드가 엿들은 제1 전송 메시지 X12는 상술한 내용과 유사하게 하기 수학식 4와 같이 표현될 수 있다.
X12=L12C1M1
여기서, 제1 전송 메시지가 제1 소스 노드로부터 제2 목적 노드로 전송되는 과정에서 발생하는 손실과 관련된 손실 행렬을 L12이라고 가정한다. 이 때, 후술하겠지만, 제2 목적 노드는 엿들은 제1 전송 메시지 X12를 저장하고 있다가, 중계 노드로부터 전송된 중계 메시지와 엿들은 제1 전송 메시지 X12를 함께 이용하여 제2 소스 메시지를 추출한다.
또한, 도 4에 도시되지 아니하였으나, 제1 소스 노드의 동작과 유사하게 본 발명의 일실시예에 따른 제2 소스 노드는 제2 소스 메시지 M2를 N2 개의 제2 서브 메시지들로 분할한다. 그리고, 본 발명의 일실시예에 따른 제2 소스 노드는 N2 개의 제2 서브 메시지들과 제2 랜덤 코드 C2 j를 이용하여 제2 전송 메시지를 생성하고, 제2 전송 메시지를 전송한다. 이 때, 중계 노드는 제2 전송 메시지를 직접 채널을 통해 수신하고, 제1 목적 노드는 제2 전송 메시지를 엿듣는 채널을 통해 엿듣는다.
도 5는 제1 소스 노드가 제1 전송 메시지를 생성하는 과정을 개념적으로 나타낸 도면이다.
도 5를 참조하면, 제1 소스 노드는 N1 개의 제1 서브 메시지들을 준비한다. 그리고, 제1 소스 노드는 N1 개의 계수들로 이루어진 제1 랜덤 코드 C1 j를 가지고 N1 개의 제1 서브 메시지들을 가공하여 제1 전송 메시지 X1 j를 생성한다.
이 때, 제1 전송 메시지 X1 j에는 제1 랜덤 코드 C1 j에 관한 정보 및 헤더 정보가 부가된다. 즉, 중계 노드 및 제2 목적 노드는 부가된 제1 랜덤 코드 C1 j에 관한 정보를 기초로 제1 랜덤 코드 C1 j가 무엇인지 파악할 수 있다.
제2 목적 노드가 최종적으로 제2 소스 메시지를 추출하거나, 제1 목적 노드가 제1 소스 메시지를 추출하는 과정에 대해서는 후술하기로 한다.
도 6은 본 발명의 일실시예에 따른 중계 노드가 수신된 제1 전송 메시지들을 기초로 제1 소스 메시지를 추출하는 과정을 개념적으로 나타낸 도면이다.
도 6을 참조하면, 제1 소스 노드는 N1 개의 제1 랜덤 코드들 및 제1 서브 메시지들을 이용하여 N1 개의 제1 전송 메시지들을 생성하고, N1 개의 제1 전송 메시지들을 중계 노드로 전송한다.
N1 개의 제1 전송 메시지들은 채널을 통하여 제1 소스 노드에서 수신된다. 잡음을 무시하는 경우, 제1 소스 노드에서 수신되는 제1 전송 메시지들은 L1RX1이다.
중계 노드는 N1 개의 제1 랜덤 코드들로 이루어진 코딩 행렬 C1과 손실 행렬 L1R에 대해 내적을 수행한 결과의 역행렬 (L1RC1)-1을 계산한다. 그리고, 중계 노드는 계산된 역행렬 (L1RC1)-1을 이용하여 수신된 N1 개의 제1 전송 메시지들로부터 제 1 소스 메시지 M1을 추출할 수 있다.
도 7은 본 발명의 일실시예에 따른 중계 노드의 동작 방법을 나타낸 동작 흐름도이다.
도 7을 참조하면, 본 발명의 일실시예에 따른 중계 노드는 최초에 제1 소스 메시지의 전송 횟수를 나타내는 인덱스 j를 1로 셋팅한다(S711).
또한, 본 발명의 일실시예에 따른 중계 노드는 제1 시간 슬롯에서 제1 소스 노드로부터 j 번째 제1 전송 메시지를 수신한다(S712).
여기서, 제1 전송 메시지는 제1 소스 노드가 제1 랜덤 코드를 가지고 제1 소스 메시지에 속하는 N1 개의 제1 서브 메시지들을 가공함으로써 생성된 것이다.
또한, 본 발명의 일실시예에 따른 중계 노드는 지금까지 성공적으로 수신된 제1 서브 메시지들의 개수가 N1 개인지 여부를 판단한다(S713).
만약, 지금까지 성공적으로 수신된 제1 서브 메시지들의 개수가 N1 개보다 작다면, 본 발명의 일실시예에 따른 중계 노드는 j를 1만큼 증가시킨다(S714). 이 때, 제1 소스 노드는 중계 노드로부터 확인 메시지를 수신하지 못하였으므로, j+1 번째의 제1 전송 메시지를 중계 노드로 전송한다.
반대로, 지금까지 성공적으로 수신된 제1 서브 메시지들의 개수가 N1 개인 경우, 본 발명의 일실시예에 따른 중계 노드는 제1 소스 노드로 확인 메시지를 전송한다(S713). 이 때, 제1 소스 노드는 확인 메시지에 응답하여 제1 전송 메시지 의 전송을 중단한다. 그리고, 중계 노드는 N1 개의 제1 서브 메시지들을 추출한다.
또한, 본 발명의 일실시예에 따른 중계 노드는 j를 1로 셋팅한다(S721).
또한, 본 발명의 일실시예에 따른 중계 노드는 제2 시간 슬롯에서 j 번째 제2 전송 메시지를 수신한다(S722).
여기서, 제2 전송 메시지는 제2 랜덤 코드를 가지고 제2 소스 메시지에 속하는 N2 개의 제2 서브 메시지들을 가공함으로써 제2 소스 노드에 의해 생성된 것이다.
또한, 본 발명의 일실시예에 따른 중계 노드는 N2 개의 제2 서브 메시지들을 성공적으로 수신하였는지 여부를 판단한다(S723).
만약, N2 개의 제2 서브 메시지들을 성공적으로 수신하지 못한 경우, 본 발명의 일실시예에 따른 중계 노드는 j를 1만큼 증가시킨다(S724). 이 때, 제2 소스 노드는 중계 노드로부터 확인 메시지를 수신하지 못하였으므로, j+1 번째 제2 전송 메시지를 중계 노드로 전송한다.
반대로, N2 개의 제2 서브 메시지들을 성공적으로 수신한 경우, 본 발명의 일실시예에 따른 중계 노드는 제2 소스 노드로 확인 메시지를 전송한다(S725). 이 때, 제2 소스 노드는 확인 메시지에 응답하여 제2 전송 메시지의 전송을 중단한다. 그리고, 본 발명의 일실시예에 따른 중계 노드는 N2 개의 제2 서브 메시지들을 추출한다.
또한, 본 발명의 일실시예에 따른 중계 노드는 제1 랜덤 코드 및 제2 랜덤 코드에 대하여 독립적인 별도의 제3 랜덤 코드 Cj R를 생성한다(S731).
여기서, 제3 랜덤 코드는 N1+N2 개의 계수들을 포함하고, N1+N2 개의 계수들은 유한체로부터 임의로 선택된다. 특히, N1+N2 개의 계수들이 선택될 확률은 균일 분포를 갖는다. 또한, 모든 j에 대하여, Cj R는 선형 독립적이다.
또한, 본 발명의 일실시예에 따른 중계 노드는 생성된 제3 랜덤 코드를 가지고 제1 소스 메시지 및 제2 소스 메시지를 가공하여 중계 메시지 Xj R를 생성하고, 생성된 중계 메시지를 제1 목적 노드 및 제2 목적 노드로 전송한다(S732).
또한, 본 발명의 일실시예에 따른 중계 노드는 제1 목적 노드 및 제2 목적 노드로부터 확인 메시지를 수신할 때까지 중계 메시지를 전송한다. 즉, 본 발명의 일실시예에 따른 중계 노드는 확인 메시지를 수신하였는지 여부를 판단한다(S733).
만약, 확인 메시지를 수신하지 못하였다면, 본 발명의 일실시예에 따른 중계 노드는 j를 1만큼 증가시키고, j+1 번째 중계 메시지를 생성한다. 반대로, 확인 메시지를 수신한 경우, 중계 노드는 중계 메시지의 생성 및 전송을 중단한다.
중계 메시지를 생성하는 과정에 대해서는 도 9와 관련하여 상세히 설명한다.
도 8은 본 발명의 일실시예에 따른 제1 목적 노드의 동작 방법을 나타낸 동작 흐름도이다.
도 8을 참조하면, 본 발명의 일실시예에 따른 제1 목적 노드는 j를 1로 셋팅 한다(S810).
또한, 본 발명의 일실시예에 따른 제1 목적 노드는 제2 소스 노드로부터 전송된 j 번째 제2 전송 메시지를 엿듣는다(S820). 여기서, 제2 전송 메시지는 제2 랜덤 코드를 가지고 제2 소스 메시지에 속하는 N2 개의 제2 서브 메시지들을 가공함으로써, 제2 소스 노드에 의해 생성된 것이다.
또한, 본 발명의 일실시예에 따른 제1 목적 노드는 j를 1로 셋팅한다(S830).
또한, 본 발명의 일실시예에 따른 제1 목적 노드는 직접 채널을 통하여 중계 노드로부터 j 번째 중계 메시지를 수신한다(S840). 여기서, 중계 메시지는 제3 랜덤 코드를 가지고 N1 개의 제1 서브 메시지들 및 N2 개의 제2 서브 메시지들을 가공함으로써, 중계 노드에 의해 생성된 것이다.
또한, 본 발명의 일실시예에 따른 제1 목적 노드는 N1+N2 개의 서브 메시지들을 성공적으로 수신하였는지 여부를 판단한다(S850).
만약, 성공적으로 수신된 서브 메시지들의 개수가 N1+N2 개보다 작다면, 본 발명의 일실시예에 따른 제1 목적 노드는 j를 1만큼 증가시킨다(S870). 반대로, 성공적으로 수신된 서브 메시지들의 개수가 N1+N2 개인 경우, 본 발명의 일실시예에 따른 제1 목적 노드는 중계 노드로 확인 메시지를 전송하고, N1 개의 제1 서브 메시지들 및 N2 개의 제2 서브 메시지들을 추출한다(S860).
도 8과 관련하여 제1목적 노드의 동작 방법에 대하여 설명된 내용은 제2 목적 노드의 동작 방법에도 유사하게 적용될 수 있다. 따라서, 제2 목적 노드의 동작 방법에 대한 상세한 설명은 생략한다.
도 9는 본 발명의 일실시예에 따른 중계 노드가 중계 메시지를 생성하는 과정을 개념적으로 나타낸 도면이다.
도 9를 참조하면, 중계 노드는 적어도 하나의 제1 전송 메시지로부터 N1 개의 제1 서브 메시지들을 추출하고, 적어도 하나의 제2 전송 메시지로부터 N2 개의 제2 서브 메시지들을 추출한다.
이 때, 중계 노드는 N1 개의 제1 서브 메시지들 및 N2 개의 제2 서브 메시지들을 가공하는 데에 사용하기 위한 제3 랜덤 코드 Cj R를 생성한다.
도 9를 간단하게 표현하기 위하여 도 9에는 제3 랜덤 코드 Cj R에 포함되는 계수들이 c11, c12, c13, . . ., c1N1, c21, c22, c23, . . ., c2N2으로 표현되었다. 다만, 도 9의 표현과 달리 설명의 편의를 위해 j 번째 제3 랜덤 코드 Cj R은 하기 수학식 5와 같이 나타낼 수 있다.
Cj R = [cj R1 cj R2 cj R3 cj R4 . . . cj R(N1+ N2)]
상기 수학식 5에서, 제3 랜덤 코드 Cj R에 속하는 계수들 각각은 유한체로부 터 선형 독립적으로 균일 분포를 가지고 선택된다.
이 때, 중계 노드는 하기 수학식 6과 같이 j 번째 제3 랜덤 코드 Cj R를 가지고 M1 및 M2를 가공하여 j 번째 중계 메시지 Xj R를 생성하고, 제3 시간 슬롯에서 j 번째 중계 메시지 Xj R를 제1 목적 노드 및 제2 목적 노드로 전송한다.
Figure 112008090395536-pat00010
중계 노드는 제1 목적 노드 및 제2 목적 노드로부터 확인 메시지를 수신할 때까지, 중계 메시지를 생성한다. 여기서, 중계 노드가
Figure 112008090395536-pat00011
개의 중계 메시지들을 생성한다고 가정한다. 그리고, 중계 노드가
Figure 112008090395536-pat00012
개의 중계 메시지들을 전송하는 동안, 제1 목적 노드는
Figure 112008090395536-pat00013
개의 메시지들을 성공적으로 수신한다고 가정한다.
이 때, 제1 목적 노드에서 중계 노드로부터 수신된 중계 메시지들로 이루어 진 행렬은 하기 수학식 7과 같이 표현될 수 있다.
Figure 112008090395536-pat00014
여기서,
Figure 112008090395536-pat00015
,
Figure 112008090395536-pat00016
이고, CR1은 M1을 가공하는 데에 사용되는 것이고, CR2는 M2를 가공하는 데에 사용되는 것이라고 가정한다. 이 때, LR1은 중계 메시지가 중계 노드로부터 제1 목적 노드로 전송되는 과정에서 발생하는 손실과 관련된 손실 행렬이다.
이 때, 제1 목적 노드는 제1 시간 슬롯에서 제2 소스 노드로부터 엿들은 제2 전송 메시지들과 제3 시간 슬롯에서 수신된 중계 메시지들을 결합할 수 있다. 이 때, 결합된 메시지들로 이루어진 행렬을 Y1이라고 가정하는 경우, Y1은 하기 수학식 8을 통하여 표현될 수 있다.
Figure 112008090395536-pat00017
여기서, L21은 제1 목적 노드가 제2 소스 노드로부터 제2 전송 메시지들을 엿듣는 과정에서 발생하는 손실과 관련된 손실 행렬이고, C2는 제2 소스 노드에 의해 사용된 제2 랜덤 코드들로 이루어진 코딩 행렬이다.
이 때, CR1, C2, CR2는 T1의 역행렬이 존재하도록 생성된다. 따라서, 제1 목적 노드는 T1의 역행렬을 계산함으로써, 쉽게 제1 소스 메시지 및 제2 소스 메시지를 추출할 수 있다.
제2 목적 노드 또한 제1 목적 노드와 동일한 방법을 사용하여 제1 소스 메시지 및 제2 소스 메시지를 추출할 수 있으므로, 제2 목적 노드의 동작 방법에 대한 상세한 설명은 생략한다.
결국, 본 발명의 실시예들에 따르면, 중계 노드는 제1 목적 노드 및 제2 목적 노드가 어떤 서브 메시지들을 제대로 수신하였는지에 대한 정보 없이도 네트워크 코딩된 중계 메시지를 생성할 수 있다. 또한, 제1 목적 노드 및 제2 목적 노드 각각은 엿들은 서브 메시지들 및 중계 메시지를 기초로 제1 소스 메시지 및 제2 소스 메시지를 추출할 수 있음을 알 수 있다.
본 발명의 실시예들에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해 져야 한다.
도 1은 본 발명의 일실시예에 따른 무선 네트워크를 도시한 도면이다.
도 2는 무선 네트워크의 시간에 따른 동작들을 설명하기 위한 도면이다.
도 3은 제1 목적 노드 및 제2 목적 노드에 의해 엿들은(overheard) 서브 메시지들 및 엿듣지 못한 서브 메시지들을 도시한 도면이다.
도 4는 본 발명의 일실시예에 따른 제1 소스 노드의 동작 방법을 나타낸 동작 흐름도이다.
도 5는 제1 소스 노드가 제1 전송 메시지를 생성하는 과정을 개념적으로 나타낸 도면이다.
도 6은 본 발명의 일실시예에 따른 중계 노드가 수신된 제1 전송 메시지들을 기초로 제1 소스 메시지를 추출하는 과정을 개념적으로 나타낸 도면이다.
도 7은 본 발명의 일실시예에 따른 중계 노드의 동작 방법을 나타낸 동작 흐름도이다.
도 8은 본 발명의 일실시예에 따른 제1 목적 노드의 동작 방법을 나타낸 동작 흐름도이다.
도 9는 본 발명의 일실시예에 따른 중계 노드가 중계 메시지를 생성하는 과정을 개념적으로 나타낸 도면이다.

Claims (17)

  1. 제1 소스 노드로부터 적어도 하나의 제1 전송 메시지를 수신하는 단계;
    제2 소스 노드로부터 적어도 하나의 제2 전송 메시지들을 수신하는 단계; 및
    적어도 하나의 제3 랜덤 코드를 이용하여 제1 소스 메시지 및 제2 소스 메시지를 가공하여 적어도 하나의 중계 메시지를 생성하는 단계
    를 포함하고,
    상기 제1 소스 노드는 적어도 하나의 제1 랜덤 코드를 이용하여 제1 소스 메시지에 속하는 복수의 제1 서브 메시지들을 가공하여 상기 적어도 하나의 제1 전송 메시지를 생성하고, 상기 제2 소스 노드는 적어도 하나의 제2 랜덤 코드를 이용하여 제2 소스 메시지에 속하는 제2 서브 메시지들을 가공하여 상기 적어도 하나의 제2 전송 메시지를 생성하는 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  2. 제1항에 있어서,
    상기 제1 소스 노드에 대응되는 제1 목적 노드 및 상기 제2 소스 노드에 대응되는 제2 목적 노드로 상기 적어도 하나의 중계 메시지를 전송하는 단계
    를 더 포함하는 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  3. 제1항에 있어서,
    상기 제1 소스 노드에 대응되는 제1 목적 노드는 상기 적어도 하나의 제2 전송 메시지를 엿듣고(overhearing), 상기 엿들은(overheard) 적어도 하나의 제2 전송 메시지 및 상기 중계 메시지를 기초로 상기 제1 소스 메시지를 추출하는 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  4. 제1항에 있어서,
    상기 제2 소스 노드에 대응되는 제2 목적 노드는 상기 적어도 하나의 제1 전송 메시지를 엿듣고, 상기 엿들은 적어도 하나의 제1 전송 메시지 및 상기 중계 메시지를 기초로 상기 제2 소스 메시지를 추출하는 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  5. 제1항에 있어서,
    상기 적어도 하나의 중계 메시지를 생성하는 단계는
    각각 선형 독립적인(linearly independent) 상기 적어도 하나의 제3 랜덤 코드를 생성하는 단계
    를 포함하는 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  6. 제5항에 있어서,
    상기 적어도 하나의 제3 랜덤 코드를 생성하는 단계는
    상기 제1 소스 노드에 대응되는 제1 목적 노드 및 상기 제2 소스 노드에 대응되는 제2 목적 노드가 성공적으로 상기 중계 메시지를 디코딩할 수 있도록 상기 적어도 하나의 제3 랜덤 코드를 생성하는 단계인 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  7. 제5항에 있어서,
    상기 적어도 하나의 제3 랜덤 코드를 생성하는 단계는
    상기 적어도 하나의 제3 랜덤 코드를 포함하는 코딩 행렬 및 손실 행렬(Loss Matrix)에 대해 내적(inner-product)을 수행한 결과의 역행렬이 존재하도록 상기 적어도 하나의 제3 랜덤 코드를 생성하는 단계이고,
    상기 손실 행렬은 상기 중계 메시지가 전송되는 과정에서 발생하는 손실과 관련된 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  8. 제1항에 있어서,
    상기 적어도 하나의 제1 랜덤 코드, 상기 적어도 하나의 제2 랜덤 코드 및 상기 적어도 하나의 제3 랜덤 코드 각각은 유한체(Finite Field)로부터 임의적으로 선택된 복수의 계수들을 포함하는 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  9. 제8항에 있어서,
    상기 복수의 계수들이 선택되는 확률은 균일 분포(uniform distribution)를 갖는 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  10. 제1항에 있어서,
    상기 적어도 하나의 제1 전송 메시지를 수신하는 단계는
    제1 시간 슬롯에서 상기 적어도 하나의 제1 전송 메시지를 수신하는 단계이고,
    상기 적어도 하나의 제2 전송 메시지를 수신하는 단계는
    상기 제1 시간 슬롯과 구별되는 제2 시간 슬롯에서 상기 적어도 하나의 제2 전송 메시지를 수신하는 단계인 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  11. 제2항에 있어서,
    상기 적어도 하나의 중계 메시지를 전송하는 단계는
    상기 제1 목적 노드 또는 상기 제2 목적 노드로부터 확인(ACKnowledgment) 메시지를 수신할 때까지 상기 적어도 하나의 중계 메시지를 전송하는 단계인 것을 특징으로 하는 중계 노드의 네트워크 코딩 방법.
  12. 제2 소스 노드로부터 전송된 적어도 하나의 제2 전송 메시지를 엿듣는 단계;
    중계 노드로부터 적어도 하나의 중계 메시지를 수신하는 단계; 및
    상기 엿들은 적어도 하나의 제2 전송 메시지 및 상기 적어도 하나의 중계 메시지를 기초로 제1 소스 메시지를 추출하는 단계
    를 포함하고,
    제1 소스 노드는 적어도 하나의 제1 랜덤 코드를 이용하여 상기 제1 소스 메시지에 속하는 복수의 제1 서브 메시지들을 가공하여 적어도 하나의 제1 전송 메시지를 생성하고, 상기 제2 소스 노드는 적어도 하나의 제2 랜덤 코드를 이용하여 제2 소스 메시지에 속하는 제2 서브 메시지들을 가공하여 상기 적어도 하나의 제2 전송 메시지를 생성하고, 상기 중계 노드는 적어도 하나의 제3 랜덤 코드를 이용하여 상기 제1 소스 메시지 및 상기 제2 소스 메시지를 가공하여 상기 적어도 하나의 중계 메시지를 전송하는 것을 특징으로 하는 제1 목적 노드의 동작 방법.
  13. 제12항에 있어서,
    상기 제1 소스 메시지를 추출하는 단계는
    상기 적어도 하나의 제2 랜덤 코드를 인지하는 단계;
    상기 적어도 하나의 제3 랜덤 코드를 인지하는 단계; 및
    상기 적어도 하나의 제2 랜덤 코드 및 상기 적어도 하나의 제3 랜덤 코드를 이용하여 상기 제1 소스 메시지를 추출하는 단계
    를 포함하는 것을 특징으로 하는 제1 목적 노드의 동작 방법.
  14. 제12항에 있어서,
    상기 적어도 하나의 제1 랜덤 코드, 상기 적어도 하나의 제2 랜덤 코드 및 상기 적어도 하나의 제3 랜덤 코드 각각은 유한체(Finite Field)로부터 임의적으로 선택된 복수의 계수들을 포함하는 것을 특징으로 하는 제1 목적 노드의 동작 방법.
  15. 제12항에 있어서,
    상기 제1 소스 메시지를 추출하는 단계는
    상기 적어도 하나의 제3 랜덤 코드를 포함하는 코딩 행렬 및 손실 행렬(Loss Matrix)에 대해 내적(inner-product)을 수행한 결과의 역행렬을 계산하고, 상기 계산된 역행렬을 이용하여 상기 제1 소스 메시지를 추출하는 단계이고,
    상기 손실 행렬은 상기 중계 메시지가 전송되는 과정에서 발생하는 손실과 관련된 것을 특징으로 하는 제1 목적 노드의 동작 방법.
  16. 제1 소스 노드가 복수의 제1 서브 메시지들로 제1 소스 메시지를 분할하는 단계;
    상기 제1 소스 노드가 적어도 하나의 제1 랜덤 코드를 이용하여 상기 복수의 제1 서브 메시지들 가공하여 적어도 하나의 제1 전송 메시지를 생성하는 단계; 및
    상기 제1 소스 노드가 중계 노드 및 제2 목적 노드로 상기 적어도 하나의 제1 전송 메시지를 전송하는 단계
    를 포함하고,
    제2 소스 노드는 적어도 하나의 제2 랜덤 코드를 이용하여 제2 소스 메시지에 속하는 제2 서브 메시지들을 가공하여 적어도 하나의 제2 전송 메시지를 생성하고,
    상기 중계 노드는 적어도 하나의 제3 랜덤 코드를 이용하여 상기 제1 소스 메시지 및 상기 제2 소스 메시지를 가공하여 적어도 하나의 중계 메시지를 생성하고,
    상기 제1 목적 노드는 엿들은 상기 적어도 하나의 제2 전송 메시지 및 상기 적어도 하나의 중계 메시지를 기초로 상기 제1 소스 메시지를 추출하고,
    상기 제2 목적 노드는 엿들은 상기 적어도 하나의 제1 전송 메시지 및 상기 적어도 하나의 중계 메시지를 기초로 상기 제2 소스 메시지를 추출하는 것을 특징으로 하는 제1 소스 노드의 동작 방법.
  17. 제1항 내지 제16항 중 어느 한 항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR1020080136661A 2008-12-30 2008-12-30 랜덤 코드를 이용하여 네트워크 코딩 기법을 적용하는 무선네트워크 KR101499454B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080136661A KR101499454B1 (ko) 2008-12-30 2008-12-30 랜덤 코드를 이용하여 네트워크 코딩 기법을 적용하는 무선네트워크

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080136661A KR101499454B1 (ko) 2008-12-30 2008-12-30 랜덤 코드를 이용하여 네트워크 코딩 기법을 적용하는 무선네트워크

Publications (2)

Publication Number Publication Date
KR20100078405A KR20100078405A (ko) 2010-07-08
KR101499454B1 true KR101499454B1 (ko) 2015-03-09

Family

ID=42639623

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080136661A KR101499454B1 (ko) 2008-12-30 2008-12-30 랜덤 코드를 이용하여 네트워크 코딩 기법을 적용하는 무선네트워크

Country Status (1)

Country Link
KR (1) KR101499454B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180019261A (ko) 2016-08-16 2018-02-26 주식회사 알엔웨어 네트워크 코딩을 이용한 무선 멀티캐스트 시스템

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101801151B1 (ko) 2011-08-24 2017-12-28 삼성전자주식회사 네트워크 코딩을 사용하는 무선 네트워크 및 상기 무선 네트워크에서 버퍼링 타임을 적응적으로 조절하는 방법
KR101412036B1 (ko) * 2013-01-11 2014-06-26 이화여자대학교 산학협력단 네트워크 코딩된 소스 데이터의 위치 유사성 정보를 이용한 근사 복호화의 복호화 성능 예측 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070280233A1 (en) * 2006-06-01 2007-12-06 Lockheed Martin Corporation System and method for network coding and/or multicast
KR100787969B1 (ko) * 2006-10-25 2007-12-24 연세대학교 산학협력단 셀룰러 통신 시스템 및 네트워크 코딩을 사용한 tdd전송 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070280233A1 (en) * 2006-06-01 2007-12-06 Lockheed Martin Corporation System and method for network coding and/or multicast
KR100787969B1 (ko) * 2006-10-25 2007-12-24 연세대학교 산학협력단 셀룰러 통신 시스템 및 네트워크 코딩을 사용한 tdd전송 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180019261A (ko) 2016-08-16 2018-02-26 주식회사 알엔웨어 네트워크 코딩을 이용한 무선 멀티캐스트 시스템

Also Published As

Publication number Publication date
KR20100078405A (ko) 2010-07-08

Similar Documents

Publication Publication Date Title
JP4272663B2 (ja) 通信受信機
KR101751497B1 (ko) 행렬 네트워크 코딩을 사용하는 장치 및 방법
US9231738B2 (en) Communication method for relay node and next node of the relay node for network coding
CN107040334B (zh) 用于设备辅助通信的方法、装置和计算机可读介质
JP2019533405A (ja) 低い電力消費量を持つネットワークにおける電文分割のための可変サブパケット長
US10931405B2 (en) Relaying method and device and destination with feedback in an OMAMRC system
CN112600647B (zh) 基于网络编码续航的多跳无线网络传输方法
US8855028B2 (en) Apparatus and method for bidirectional communication between multi-nodes using relay node
KR101499454B1 (ko) 랜덤 코드를 이용하여 네트워크 코딩 기법을 적용하는 무선네트워크
Yu et al. Poisson receivers: A probabilistic framework for analyzing coded random access
CN109873687B (zh) 一种物联网中基于信噪比的信息处理方法、系统及存储介质
US9451523B2 (en) Method and apparatus for managing packet in system supporting network coding
CN111918305B (zh) 同频自组自愈网方法及装置
CN113543206A (zh) 数据传输的方法、系统和装置
Hussain et al. Erasure floor analysis of distributed LT codes
WO2022062426A1 (zh) 中继基站的多播调度方法和装置、存储介质及电子装置
CN110048812B (zh) 一种物联网中基于发射功率的数据传输方法、系统及存储介质
KR20140062400A (ko) 네트워크 코딩 기반 멀티캐스트 트래픽을 송수신하는 기지국 및 복수의 멤버 노드들
Farkaš Adaptive feedback supported communication for IoT and space applications
CN114867082B (zh) 一种大规模电力物联网设备免授权接入系统及方法
CN110048811B (zh) 一种物联网中低时延的信息处理方法、系统及存储介质
Jeyasekar et al. Reliable multicast using rateless forward error correction and orthogonal-scheduling in MANET
Utkovski et al. Protocol coding with reordering of user resources: Capacity results for the z-channel
Censor-Hillel et al. Computing in additive networks with bounded-information codes
Tarapiah et al. Analysis the performance of network coding for ad hoc networks in realistic simulation scenarios

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
LAPS Lapse due to unpaid annual fee