KR101339442B1 - Apparatus and method for data transfer using network coding scheme - Google Patents
Apparatus and method for data transfer using network coding scheme Download PDFInfo
- Publication number
- KR101339442B1 KR101339442B1 KR1020120005288A KR20120005288A KR101339442B1 KR 101339442 B1 KR101339442 B1 KR 101339442B1 KR 1020120005288 A KR1020120005288 A KR 1020120005288A KR 20120005288 A KR20120005288 A KR 20120005288A KR 101339442 B1 KR101339442 B1 KR 101339442B1
- Authority
- KR
- South Korea
- Prior art keywords
- packet
- node
- transmitting
- buffer
- link
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0009—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9063—Intermediate storage in different physical parts of a node or terminal
Abstract
본 발명은 네트워크 코딩 기술을 이용한 데이터 전송 장치 및 방법에 관한 것으로, 중간전달노드로 전송된 패킷을 버퍼에 저장하는 단계와, 상기 패킷에 대하여 유니캐스트 링크와 바이캐스트 링크의 전송 우선순위를 산출하는 단계와, 상기 우선순위 값이 최대인 링크를 선택하고 상기 버퍼에 저장된 패킷을 코딩 및 전송하는 단계 및 상기 패킷을 수신한 2개의 송수신 노드에서 디코딩 버퍼에 저장된 기존의 패킷 정보로 상기 패킷을 디코딩하는 단계를 포함하여 이루어지는 네트워크 코딩 기술을 이용한 데이터 전송 방법을 일 실시예로 제안한다. 본 발명에 따르면 다중 홉 네트워크에서 두 개의 노드가 선형 위상에서 서로 데이터를 주고 받을 경우 뿐만 아니라 공유 미디움 다중 홉 네트워크에서도 네트워크 코딩을 이용하여 데이터를 전송할 수 있다.The present invention relates to an apparatus and method for transmitting data using a network coding technique, the method comprising: storing a packet transmitted to an intermediate forwarding node in a buffer, and calculating transmission priorities of a unicast link and a bicast link for the packet; Selecting a link having the maximum priority value, coding and transmitting a packet stored in the buffer, and decoding the packet with existing packet information stored in a decoding buffer at the two transmitting and receiving nodes receiving the packet. In one embodiment, a data transmission method using a network coding technique including a step is proposed. According to the present invention, not only when two nodes exchange data with each other in a linear topology but also in a shared medium multi-hop network, data can be transmitted using network coding.
Description
본 발명은 네트워크 코딩 기술을 이용한 데이터 전송 장치 및 방법에 관한 것으로, 종래 복호 후 재전송 방식(Decode-and-forward)의 제약을 극복하고 일반 다중홉 네트워크에 적용 가능한 네트워크 코딩 기술에 관한 것이다.The present invention relates to an apparatus and method for transmitting data using a network coding technique. The present invention relates to a network coding technique applicable to a general multihop network, overcoming the limitations of a conventional decoding-and-forward scheme.
네트워크 코딩 기술이란 패킷을 전송하는 과정에서 중간전달노드가 여러 개의 패킷을 선형결합 혹은 논리합(XOR, Exclusive OR) 연산하여 전송하고, 수신노드가 이를 디코딩하여 수신하는 방법으로 데이터를 전송하는 기술이다.Network coding technology is a technique in which an intermediate node forwards a plurality of packets by linear combining or logical OR (XOR, Exclusive OR) operation in the process of transmitting a packet, and the receiving node transmits data by decoding and receiving them.
네트워크 코딩은 두 개의 노드가 선형 위상에서 상호 데이터를 교환할 때 적용 가능한 복호 후 재전송(Decode-and-forward) 방식으로 구현할 수 있다.Network coding can be implemented in a decode-and-forward scheme that is applicable when two nodes exchange data with each other in a linear topology.
이와 같은 네트워크 코딩 기술은 R.Ahlswede, N.Cai, S.-Y.R. Li 및 R.W.Yeung에 의해 제안된 "Network Information Flow(IEEE Trans on Info Theory, vol.46, no.4, pp.1204-1216, Jul.2000)"와 R.Koetter와 M.Medard에 제안된 "An algebraic approach to network coding(IEEE/ACM Trans. Networking, vol.11, no.5, pp.782-795, Oct.2003)" 등의 논문에 상세히 개시되어 있다.Such network coding techniques are described in R. Ahlswede, N. Cai, S.-Y.R. "Network Information Flow (IEEE Trans on Info Theory, vol.46, no.4, pp.1204-1216, Jul.2000)" proposed by Li and RWYeung, and "Suggested by R.Koetter and M.Medard". An algebraic approach to network coding (IEEE / ACM Trans. Networking, vol. 11, no. 5, pp.782-795, Oct. 2003).
도 1은 종래 복호 후 재전송 방식(Decode-and-forward) 기법을 도시한 것이다.1 illustrates a conventional decode-and-forward scheme.
네트워크에서 두 개의 노드 A와 B가 서로 데이터를 주고 받고자 할 때 중간에 있는 릴레이 노드 R이 중계를 해준다.Relay node R in the middle relays when two nodes A and B want to exchange data with each other.
먼저 노드 A가 노드 R로 패킷 X를 전송하고 노드 B가 노드 R로 패킷 Y를 전송한다. 노드 A와 노드 B는 각각 자신이 보낸 패킷 X와 Y를 로컬 버퍼에 저장한다.First, node A transmits packet X to node R, and node B transmits packet Y to node R. Node A and Node B respectively store their sent packets X and Y in a local buffer.
노드 R은 노드 A와 B로부터 전송된 패킷 X와 패킷 Y를 선형 결합하여 동시에 노드 A와 B로 전송하고 노드 A와 B는 자신의 로컬 버퍼에 저장되어 있던 패킷 X와 Y를 이용하여 각각 Y와 X를 복호 및 수신한다.Node R linearly combines packet X and packet Y transmitted from nodes A and B and simultaneously transmits to node A and B. Nodes A and B use Y and Y, respectively, stored in their local buffer. Decode and receive X.
그러나 이와 같은 복호 후 재전송 방식(Decode-and-forward)은 다중 홉에서 두 개의 노드가 선형 위상에서 서로 데이터를 주고 받는 상황에서만 적용할 수 있다는 단점이 있다.However, this decode-and-forward method has a disadvantage in that it can be applied only in a situation where two nodes exchange data with each other in a linear phase in multiple hops.
본 발명이 해결하려는 과제는 노드에 수신된 패킷을 디코딩하기 위하여 패킷을 전송한 이전 노드의 정보에 따라 패킷을 분리하여 저장하고 노드에서 전송한 모든 패킷을 디코딩 버퍼에 저장하는 구조의 네트워크 코딩 방안을 제시하는 것이다.An object of the present invention is to provide a network coding scheme in which a packet is separated and stored according to information of a previous node transmitting a packet, and all packets transmitted from the node are stored in a decoding buffer in order to decode the packet received at the node. To present.
본 발명이 해결하려는 다른 과제는 이웃 노드 간의 패킷 버퍼의 길이 정보에 따라 패킷 및 링크의 전송 우선순위와 전송 방향 및 네트워크 코딩의 적용 여부를 결정하는 네트워크 코딩 방안을 제시하는 것이다.Another object of the present invention is to propose a network coding scheme for determining transmission priority, transmission direction, and network coding of packets and links according to packet buffer length information between neighboring nodes.
상기 과제를 해결하기 위해 본 발명은, 중간전달노드로 패킷을 전송하거나 중간전달노드로부터 전송된 패킷을 디코딩하여 데이터를 획득하는 두 개의 송수신 노드와, 상기 송수신 노드에서 전송된 패킷을 버퍼에 저장하고 상기 패킷의 전송 링크를 선택하여 상기 패킷을 코딩 후 상기 송수신 노드로 전송하는 중간전달노드를 포함하여 이루어지는 네트워크 코딩 기술을 이용한 데이터 전송 장치를 일 실시예로 제안한다.In order to solve the above problems, the present invention provides two transmitting and receiving nodes for obtaining data by transmitting a packet to an intermediate forwarding node or decoding a packet transmitted from an intermediate forwarding node, and storing the packet transmitted from the transmitting and receiving node in a buffer. According to an embodiment of the present invention, a data transmission apparatus using a network coding technique including an intermediate transfer node configured to select a transmission link of the packet and transmit the packet to the transmission / reception node after coding the packet is proposed.
상기 버퍼는 상기 패킷을 상기 패킷의 플로우와 상기 패킷을 전송한 송수신 노드에 따라 분류하여 저장하거나, 상기 패킷을 상기 패킷의 플로우가 전송될 목적지 송수신 노드와 상기 패킷을 전송한 송수신 노드에 따라 분류하여 저장할 수 있다.The buffer classifies and stores the packet according to the flow of the packet and the transmitting / receiving node that transmitted the packet, or classifies the packet according to a destination transmitting / receiving node to which the flow of the packet is transmitted and the transmitting / receiving node that transmitted the packet. Can be stored.
상기 전송 링크 선택은 상기 송수신 노드와 상기 중간전달노드의 버퍼의 큐 길이의 차인 우선순위 값의 최대값에 따라 결정할 수 있다.The transmission link selection may be determined according to a maximum value of a priority value that is a difference between queue lengths of a buffer between the transmitting and receiving node and the intermediate forwarding node.
상기 패킷 코딩은 상기 패킷의 선형결합 또는 논리합(XOR, Exclusive OR)에 의해 이루어질 수 있다.The packet coding may be performed by linear combining or OR of the packets.
상기 선형결합 또는 논리합(XOR, Exclusive OR)에 의해 코딩된 패킷을 서로 간섭이 없으며 전송 노드가 같은 두 개의 유니캐스트 링크를 이용하여 바이캐스트(멀티캐스트) 링크를 생성하고 전송할 수 있다.Packets coded by the linear combination or logical OR (XOR) are not interfered with each other, and a transmitting node may generate and transmit a bicast (multicast) link using two identical unicast links.
상기 과제를 해결하기 위해 본 발명은, 중간전달노드로 전송된 패킷을 버퍼에 저장하는 단계와, 상기 패킷에 대하여 유니캐스트 링크와 바이캐스트 링크의 전송 우선순위를 산출하는 단계와, 상기 우선순위 값이 최대인 링크를 선택하고 상기 버퍼에 저장된 패킷을 코딩 및 전송하는 단계 및 상기 패킷을 수신한 2개의 송수신 노드에서 디코딩 버퍼에 저장된 기존의 패킷 정보로 상기 패킷을 디코딩하는 단계를 포함하여 이루어지는 네트워크 코딩 기술을 이용한 데이터 전송 방법을 일 실시예로 제안한다.In order to solve the above problems, the present invention provides a method comprising: storing a packet transmitted to an intermediate forwarding node in a buffer, calculating a transmission priority of a unicast link and a bicast link with respect to the packet, and the priority value. Selecting the maximum link, coding and transmitting the packet stored in the buffer, and decoding the packet with existing packet information stored in the decoding buffer at the two transmitting and receiving nodes that received the packet. The data transmission method using the technology is proposed as an embodiment.
상기 패킷 버퍼 저장 단계는, 상기 중간전달노드로 전송된 패킷을 전송한 송수신 노드와 플로우에 따라 분리하여 저장하거나, 상기 중간전달노드로 전송된 패킷을 전송한 송수신 노드와 목적지 송수신 노드에 따라 분리하여 저장할 수 있다.The packet buffer storing step may be performed by separately storing and storing the packet transmitted to the intermediate forwarding node according to the flow and the transmission / reception node and the destination transmission / reception node transmitting the packet transmitted to the intermediate forwarding node. Can be stored.
상기 유니캐스트 링크가 노드 j-> 노드 k라 할 때, 상기 우선순위 값은 상기 노드 j와 노드 k의 패킷 버퍼의 길이 차이거나, 상기 노드 j와 노드 k의 패킷 버퍼의 길이 차와 상기 패킷의 전송 속도의 곱일 수 있다.When the unicast link is node j-> node k, the priority value is the difference between the lengths of the packet buffers of node j and node k, or the difference between the lengths of the packet buffers of node j and node k and the packet. It can be the product of the transmission rates.
상기 바이캐스트 링크가 노드 j-> 노드 i, 노드 k라 할 때, 상기 우선순위 값은 상기 바이캐스트 링크를 두 개의 유니캐스트 링크 노드 j-> 노드 i와 노드 j-> 노드 k로 분리하고 상기 분리된 유니캐스트 링크 각각의 패킷 버퍼 길이 차이를 산출하여 합한 값이거나, 상기 분리된 유니캐스트 링크 각각의 패킷 버퍼 길이 차이를 산출하여 합한 값과 상기 패킷의 전송 속도의 곱일 수 있다.When the bicast link is node j-> node i, node k, the priority value divides the bicast link into two unicast link nodes j-> node i and node j-> node k and the The packet buffer length difference of each of the divided unicast links may be calculated and summed, or the packet buffer length difference of each of the divided unicast links may be calculated and summed and the transmission rate of the packet.
상기 패킷 코딩 및 전송 단계는, 상기 패킷을 선형결합 또는 논리합(XOR, Exclusive OR)하여 전송할 수 있다.In the packet coding and transmitting step, the packet may be linearly combined or ORed (XOR, Exclusive OR).
본 발명에 의하면 다중 홉에서 두 개의 노드가 선형 위상에서 서로 데이터를 송수신하는 종래 복호 후 전송 방식의 단점을 극복하여 일반 다중 홉 네트워크에서도 적용 가능한 네트워크 코딩을 구현할 수 있다.According to the present invention, it is possible to implement network coding applicable to a general multi-hop network by overcoming the disadvantage of the conventional post-decoding transmission method in which two nodes transmit and receive data with each other in a linear topology.
도 1은 종래 복호 후 재전송 방식(Decode-and-forward) 기법을 도시한 것이다.
도 2는 본 발명의 일 실시예에 따른 네트워크 코딩 원리를 간략하게 도시한 것이다.
도 3은 본 발명의 일 실시예에 따른 플로우/이전노드정보 기반의 패킷 버퍼 구조에서 노드 k가 수신한 패킷을 저장하는 패킷 버퍼의 예를 도시한 것이다.
도 4는 본 발명의 일 실시예에 따른 목적지노드/이전노드정보 기반의 패킷 버퍼 구조에서 수신한 패킷을 저장하는 예를 도시한 것이다.
도 5는 본 발명의 일 실시예에 따른 단방향 링크와 양방향 링크의 예를 도시한 것이다.1 illustrates a conventional decode-and-forward scheme.
2 briefly illustrates a network coding principle according to an embodiment of the present invention.
3 illustrates an example of a packet buffer for storing a packet received by node k in a packet buffer structure based on flow / previous node information according to an embodiment of the present invention.
4 illustrates an example of storing a received packet in a packet buffer structure based on destination node / previous node information according to an embodiment of the present invention.
5 illustrates an example of a unidirectional link and a bidirectional link according to an embodiment of the present invention.
이하, 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 이하에서 사용되는 용어는 단지 특정 실시예를 언급하기 위한 것이며, 본 발명을 한정하는 것을 의도하지 않는다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the invention.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다.
Throughout the specification, when a part is said to "include" a certain component, it means that it may further include other components, except to exclude other components unless specifically stated otherwise.
<실시예 1> - 노드의 패킷 버퍼 구조 및 패킷 저장 방법Example 1 Packet Buffer Structure and Packet Storage Method of Node
실시예 1은 노드의 패킷 버퍼 구조와 상기 패킷 버퍼에 패킷을 저장하는 방법에 관한 것이다.
도 2는 본 발명의 일 실시예에 따른 네트워크 코딩 원리를 간략하게 도시한 것이다.2 briefly illustrates a network coding principle according to an embodiment of the present invention.
도 2에서 보듯, 노드 j는 노드 i로부터 패킷 를 수신하며 노드 k로부터 패킷 를 수신하고 상기 패킷들을 전송한 노드 j와 노드 k 즉, 이전노드의 정보를 이용하여 두 개의 패킷을 각각 버퍼 와 에 저장한다.As shown in Figure 2, node j is a packet from node i. Receive a packet from node k Receive two packets and buffer each of them using node j and node k, i. Wow .
상기 버퍼는 노드 i로부터 수신한 f1 플로우 패킷을 저장하는 노드 j의 패킷 버퍼이며, 는 노드 k로부터 수신한 f2 플로우 패킷을 저장하는 노드 j의 패킷 버퍼이다.remind The buffer is a packet buffer of node j that stores the f 1 flow packet received from node i, Is a packet buffer of node j that stores the f 2 flow packet received from node k.
이때 에 저장된 패킷은 모두 노드 i로부터 수신되었으므로 노드 i의 디코딩 버퍼 에 저장되어 있으며, 에 저장된 패킷은 모두 노드 k로부터 수신되었으므로 노드 k의 디코딩 버퍼 에도 저장되어 있다.At this time All packets stored in are received from node i, so the decoding buffer of node i Stored in All packets stored in are received from node k, so the decoding buffer of node k It is also stored in.
따라서 노드 j가 두 패킷 버퍼 와 에서 임의의 패킷을 꺼내어 선형 결합한 후 각각 노드 i와 노드 k에 전송하면 노드 i와 노드 k는 각각의 디코딩 버퍼 와 에 있는 패킷 정보를 사용하여 전송된 패킷들을 복호화할 수 있다.Thus node j buffers two packets Wow Extracts a random packet, linearly combines it, and sends it to node i and node k, respectively. Wow The transmitted packet can be decoded using the packet information in.
이는 결과적으로 '노드 i-> 노드 j-> 노드 k' 및 '노드 k-> 노드 j-> 노드 i'의 경로로 패킷 전송이 이루어지는 것과 동일하다.This is the same as packet transmission in the path of 'node i-> node j-> node k' and 'node k-> node j-> node i'.
도 2에 따르면, 본 발명의 일 실시예에 따른 네트워크 코딩을 이용한 데이터 전송에서 노드 j 즉, 중간전달노드는 플로우/이전노드정보 기반의 패킷 버퍼 구조 또는 목적지노드/이전노드정보 기반의 패킷 버퍼 구조를 가진다.According to FIG. 2, in a data transmission using network coding, node j, that is, an intermediate transfer node, has a packet buffer structure based on flow / previous node information or a packet buffer structure based on destination node / previous node information in accordance with an embodiment of the present invention. Has
이때 플로우는 두 노드 사이에 데이터를 주고 받는 하나의 세션, 예를 들어 UDP/TCP session 등을 의미한다.In this case, the flow refers to one session for exchanging data between two nodes, for example, a UDP / TCP session.
따라서 동일한 두 노드 사이에 서로 다른 다수의 플로우가 존재할 수 있으며, 이때 패킷 버퍼에 저장된 패킷들은 라우팅, 스케쥴링 및 코딩 결정 기술에 의해 코딩되어 다음 노드에 전송된다.Thus, there may be multiple different flows between the same two nodes, where packets stored in the packet buffer are coded by routing, scheduling and coding decision techniques and transmitted to the next node.
상기 라우팅, 스케쥴링 및 코딩 결정 기술은 아래 실시예 2에서 자세히 설명하도록 한다.The routing, scheduling, and coding decision techniques are described in detail in Example 2 below.
도 3은 본 발명의 일 실시예에 따른 플로우/이전노드정보 기반의 패킷 버퍼 구조에서 노드 k가 수신한 패킷을 저장하는 패킷 버퍼의 예를 도시한 것이다.3 illustrates an example of a packet buffer for storing a packet received by node k in a packet buffer structure based on flow / previous node information according to an embodiment of the present invention.
도 3에서 보듯, 플로우/이전노드정보 기반 패킷 버퍼 구조에서 각 노드는 패킷을 플로우별로 분리하며 해당 플로우가 수신된 노드에 따라 패킷 버퍼를 생성하고 각각의 패킷 버퍼에 패킷을 저장한다.As shown in FIG. 3, each node in the flow / previous node information-based packet buffer structure separates packets for each flow, generates a packet buffer according to the node where the flow is received, and stores the packet in each packet buffer.
이때 는 노드 n으로부터 수신한 f 플로우 패킷을 저장하는 노드 k의 패킷 버퍼이며 는 f 플로우의 i번째 패킷이다.At this time Is the packet buffer of node k that stores the f flow packet received from node n. Is the i th packet of the f flow.
도 3에서 보면, 노드 k는 f1 플로우 패킷(,)과 f2 플로우 패킷()을 수신한다.In Figure 3, node k is the f 1 flow packet ( , ) And f 2 flow packets ( .
이때 와 는 노드 x로부터 수신되었으므로 노드 k는 상기 패킷을 각각 패킷 버퍼 와 에 저장하며, 는 노드 y로부터 수신되었으므로 노드 k는 상기 패킷을 패킷 버퍼 에 저장한다.At this time Wow Is received from node x, so node k buffers each of these packets. Wow Store in, Node k buffers the packet because .
도 4는 본 발명의 일 실시예에 따른 목적지노드/이전노드정보 기반의 패킷 버퍼 구조에서 수신한 패킷을 저장하는 예를 도시한 것이다.4 illustrates an example of storing a received packet in a packet buffer structure based on destination node / previous node information according to an embodiment of the present invention.
도 4의 실시예에서는, 목적지노드/이전노드정보 기반 패킷 버퍼 구조에서 각 노드는 플로우/이전노드정보 기반 패킷 버퍼를 플로우의 목적지를 기준으로 생성하여 패킷을 저장한다.In the embodiment of FIG. 4, each node in the destination node / previous node information-based packet buffer structure generates a flow / previous node information-based packet buffer based on the destination of the flow and stores the packet.
즉, 노드 x로부터 목적지 노드가 d1인 f1 플로우 패킷과 f2 플로우 패킷이 수신되면 상기 패킷들은 동일한 패킷 버퍼에 저장된다.That is, f 1 with destination node d 1 from node x Flow packet and f 2 When a flow packet is received, the packets are stored in the same packet buffer.
이때 는 노드 n으로부터 수신되며 목적지 노드가 d인 패킷을 저장하는 노드 k의 패킷 버퍼를 의미한다.At this time Denotes a packet buffer of node k that receives a packet from node n and stores a packet whose destination node is d.
도 4에서 보면, 노드 k는 노드 x로부터 패킷 과 패킷 를 수신하고 노드 y로부터 패킷 을 수신한다.In Figure 4, node k is a packet from node x. And packets Receive a packet from node y Lt; / RTI >
이때 노드 x로부터 수신한 패킷 과 패킷 는 다른 플로우를 가지나, 목적지 노드가 d1으로 동일하므로 동일한 패킷 버퍼 에 저장된다.Packet received from node x And packets Has a different flow, but the same packet buffer because the destination node is equal to d 1 / RTI >
또한 노드 y로부터 수신한 는 상기 패킷 버퍼 와는 다른 패킷 버퍼 에 저장된다.Also received from node y The packet buffer Different packet buffers / RTI >
도 3과 도 4의 실시예에서 노드 x 또는 노드 y에서 전송된 모든 패킷은 각 노드의 디코딩 패킷 버퍼에 저장된다.In the embodiment of Figures 3 and 4, all packets transmitted at node x or node y are stored in the decoding packet buffer of each node.
이때 상기 디코딩 패킷 버퍼에 저장된 패킷은 향후 노드 k에서 코딩되어 전송된 패킷을 디코딩하기 위해 사용되며 일정시간이 경과 후 상기 디코딩 패킷 버퍼에서 삭제될 수 있다.
In this case, the packet stored in the decoding packet buffer is used to decode a packet coded and transmitted in the future node k, and may be deleted from the decoding packet buffer after a predetermined time elapses.
<실시예 2> - 스케쥴링, 라우팅 및 코딩 결정 방법Example 2 Scheduling, Routing, and Coding Decision Method
실시예 2는 이웃 노드간의 패킷 버퍼 길이 정보를 이용하여 패킷 및 링크의 전송 우선순위, 전송 방향 및 네트워크 코딩의 적용 여부를 결정하는 방법에 관한 것이다.
도 5는 본 발명의 일 실시예에 따른 단방향 링크와 바이캐스트 링크의 예를 도시한 것이다.5 illustrates an example of a unidirectional link and a bicast link according to an embodiment of the present invention.
도 5에서 보듯, 본 발명의 실시예에서 링크는 하나의 발신노드에서 하나의 수신노드로 패킷을 전송하는 유니캐스트 링크와 두 개의 수신노드들로 패킷을 멀티캐스트 전송하는 바이캐스트 링크로 구분한다.As shown in FIG. 5, in the embodiment of the present invention, a link is divided into a unicast link for transmitting a packet from one originating node to a receiving node and a bicast link for multicasting a packet to two receiving nodes.
아래에서는 패킷 및 링크의 전송 우선순위, 전송 방향 및 네트워크 코딩의 적용 여부를 결정하는 방법을 각 단계별로 상세히 설명한다.
In the following, a method for determining the transmission priority, transmission direction, and network coding of a packet and a link will be described in detail for each step.
1) 링크 전송의 우선순위 결정 단계1) Prioritization step of link transmission
A. 유니캐스트 링크의 전송 우선순위 결정 A. Determining Transmission Priority for Unicast Links
(또는 ) 를 시간 t에서의 패킷 버퍼의 길이라고 하면, 유니캐스트 링크(노드 j-> 노드 k)를 사용한 에 있는 패킷 전송의 우선순위는 아래의 수학식 1에 의해서 결정된다. (or ) Is the length of the packet buffer at time t, using a unicast link (node j-> node k) The priority of packet transmission in is determined by
상기 수학식 1에서 는 노드 j의 패킷 버퍼이며, 는 노드 k의 패킷 버퍼이고, 는 링크 노드 j-> 노드 k의 패킷 전송 속도이다.In Equation (1) Is the packet buffer for node j, Is the packet buffer for node k, Is the packet transmission rate of link node j-> node k.
도 3에서 설명한 바와 같이 패킷은 플로우 및 이전노드 정보를 기반으로 각각 다른 패킷 버퍼에 저장하므로 노드 j의 패킷 버퍼 에서 노드 k로 전송된 패킷은 노드 k의 패킷 버퍼 에 저장된다.As described in FIG. 3, the packets are stored in different packet buffers based on the flow and previous node information. Packets sent to node k in node packet buffer / RTI >
이때 링크 j->k 전송의 우선순위는 상기 버퍼 길이의 차와 패킷 전송 속도를 곱한 최대값으로 결정하며 상기 최대값은 아래의 수학식 2에 의해 결정된다.At this time, the priority of the link j-> k transmission is determined as the maximum value multiplied by the difference in the buffer length and the packet transmission rate, and the maximum value is determined by
B. 바이캐스트 링크의 전송 우선순위 결정 B. Determining Transmission Priority for Bicast Links
바이캐스트 링크 j->i, k 는 두 개의 유니캐스트 링크 j->i 와 j->k 로 분리할 수 있으며 상기 분리된 유니캐스트 링크 각각의 패킷 버퍼의 길이 차이의 합과 상기 패킷의 전송 속도의 곱으로 바이캐스트 링크의 전송 우선순위를 결정한다.The bicast link j-> i, k can be divided into two unicast links j-> i and j-> k, and the sum of the length difference of the packet buffers of each of the separated unicast links and the transmission rate of the packet are The transmission priority of the bicast link is determined by the product of.
이때 바이캐스트 링크의 패킷 전송 속도는 상기 분리된 두 개의 유니캐스트 링크의 패킷 전송 속도 중 작은 값으로 결정되며, 노드 j는 반드시 노드 i로부터 전달된 패킷을 저장하는 패킷 버퍼와 노드 k로부터 전달된 패킷을 저장하는 패킷 버퍼를 선택하여 링크 j->i,k를 통해 패킷을 전송한다.At this time, the packet transmission rate of the bicast link is determined as the smaller value of the packet transmission rates of the two separate unicast links, and node j must be a packet buffer for storing the packet transmitted from node i and a packet transmitted from node k. Select the packet buffer to store the packet to send the packet through the link j-> i, k.
일례로 패킷 버퍼 에 저장된 패킷과 패킷 버퍼 에 저장된 패킷의 바이캐스트 링크를 통한 전송의 우선순위는 아래의 수학식 3에 의해 결정된다.Packet buffer Packets and packet buffers stored in Priority of transmission on the bicast link of the packet stored in is determined by Equation 3 below.
상기 수학식 3에서 는 바이캐스트 링크 노드 j-> 노드 i, 노드 k의 패킷 전송 속도이다.In Equation (3) Is the packet transmission rate of the bicast link node j-> node i, node k.
또한, 바이캐스트 링크 노드 j-> 노드 i, 노드 k의 가중치의 최대값은 아래의 수학식 4에 의해 결정된다.In addition, the maximum value of the weight of the bicast link node j-> node i, node k is determined by Equation 4 below.
2) 전송 링크 결정 단계 (스케줄링/라우팅)2) Transmission link determination step (scheduling / routing)
상기 링크 전송의 우선순위 결정 단계에 의해 링크의 전송 우선순위가 결정되면 링크간 간섭이 없으며 우선순위 값의 합이 가장 큰 링크들을 선택하여 패킷을 전송한다.When the transmission priority of the link is determined by the priority determining step of the link transmission, the link is selected without the interference between the links and the sum of the priority values is the largest, and the packet is transmitted.
이때 각 링크들은 상기 링크 전송의 우선순위 결정 단계에서 상기 수학식 2와 수학식 4에 의해 가장 큰 우선순위 값을 가지는 패킷 버퍼의 패킷을 전송한다.
In this case, each link transmits a packet of a packet buffer having the highest priority value according to
3) 코딩/디코딩 단계3) Coding / Decoding Step
상기 전송 링크 결정 단계에서 선택된 바이캐스트 링크들은 네트워크 코딩을 수행하여 패킷을 전송한다.The bicast links selected in the transmission link determination step perform network coding to transmit packets.
아래에서는 바이캐스트 링크 j->i,k에서 전송 우선순위가 가장 높은 패킷 버퍼가 와 이라는 가정하에 코딩 및 디코딩 과정을 설명한다.Below is the packet buffer with the highest transmit priority on the bicast link j-> i, k. Wow The coding and decoding process will be described on the assumption that.
각각의 패킷 버퍼에서 한 개의 패킷을 꺼내어 두 개의 패킷을 XOR 연산을 수행하여 노드 i와 노드 k에 멀티캐스트한다.One packet is extracted from each packet buffer and the two packets are multicasted to node i and node k by performing an XOR operation.
이때, 노드 i는 에서 전송된 패킷을 디코딩 버퍼에 저장하고 노드 k는 에서 전송된 패킷을 디코딩 버퍼에 저장하고 있다.In this case, node i is Stores the transmitted packet in the decoding buffer and node k The packet transmitted from is stored in the decoding buffer.
따라서 노드 i는 에서 전송된 패킷을 복호할 수 있으며, 노드 k는 에서 전송된 패킷을 복호할 수 있다.Thus node i Decodes the transmitted packet, and node k It is possible to decode the packet transmitted in.
이상에서는 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리 범위에 속하는 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It belongs to the scope of right.
Claims (14)
상기 송수신 노드에서 전송된 패킷을 버퍼에 저장하고 상기 패킷의 전송 링크를 선택하여 상기 패킷을 코딩 후 상기 송수신 노드로 전송하는 중간전달노드를 포함하며,
상기 버퍼는 상기 패킷을 상기 패킷의 플로우와 상기 패킷을 전송한 송수신 노드에 따라 분류하여 저장하는 네트워크 코딩 기술을 이용한 데이터 전송 장치.Two transmitting and receiving nodes for acquiring data by transmitting a packet to an intermediate forwarding node or decoding a packet transmitted from an intermediate forwarding node;
An intermediate transfer node for storing the packet transmitted from the transmission and reception node in a buffer, selecting a transmission link of the packet, and transmitting the packet to the transmission and reception node after coding the packet;
And the buffer classifies and stores the packet according to the flow of the packet and the transmitting and receiving node that transmitted the packet.
상기 송수신 노드에서 전송된 패킷을 버퍼에 저장하고 상기 패킷의 전송 링크를 선택하여 상기 패킷을 코딩 후 상기 송수신 노드로 전송하는 중간전달노드를 포함하며,
상기 버퍼는 상기 패킷을 상기 패킷의 플로우가 전송될 목적지 송수신 노드와 상기 패킷을 전송한 송수신 노드에 따라 분류하여 저장하는 네트워크 코딩 기술을 이용한 데이터 전송 장치.Two transmitting and receiving nodes for acquiring data by transmitting a packet to an intermediate forwarding node or decoding a packet transmitted from an intermediate forwarding node;
An intermediate transfer node for storing the packet transmitted from the transmission and reception node in a buffer, selecting a transmission link of the packet, and transmitting the packet to the transmission and reception node after coding the packet;
The buffer is a data transmission apparatus using a network coding technique for classifying and storing the packet according to the destination transceiver node to which the flow of the packet is to be transmitted and the transceiver node transmitting the packet.
상기 송수신 노드에서 전송된 패킷을 버퍼에 저장하고 상기 패킷의 전송 링크를 선택하여 상기 패킷을 코딩 후 상기 송수신 노드로 전송하는 중간전달노드를 포함하며,
상기 전송 링크 선택은 상기 송수신 노드와 상기 중간전달노드의 버퍼의 큐 길이의 차인 우선순위 값의 최대값에 따라 결정되는 네트워크 코딩 기술을 이용한 데이터 전송 장치.Two transmitting and receiving nodes for acquiring data by transmitting a packet to an intermediate forwarding node or decoding a packet transmitted from an intermediate forwarding node;
An intermediate transfer node for storing the packet transmitted from the transmission and reception node in a buffer, selecting a transmission link of the packet, and transmitting the packet to the transmission and reception node after coding the packet;
And the transmission link selection is determined according to a maximum value of a priority value that is a difference between a queue length of a buffer of the transmitting and receiving node and the intermediate transmitting node.
상기 패킷 코딩은 상기 패킷의 선형결합 또는 논리합(XOR, Exclusive OR)에 의해 이루어지는 것을 특징으로 하는 네트워크 코딩 기술을 이용한 데이터 전송 장치.The method according to any one of claims 1 and 3 to 4,
The packet coding is a data transmission apparatus using a network coding technique, characterized in that by the linear combination or logical OR (XOR, Exclusive OR) of the packet.
상기 선형결합 또는 논리합(XOR, Exclusive OR)에 의해 코딩된 패킷을 서로 간섭이 없으며 전송 노드가 같은 두 개의 유니캐스트 링크를 이용하여 바이캐스트(멀티캐스트) 링크를 생성하고 전송하는 것을 특징으로 하는 네트워크 코딩 기술을 이용한 데이터 전송 장치.6. The method of claim 5,
A network characterized in that the packets coded by the linear combination or logical OR (XOR, Exclusive OR) do not interfere with each other and a transmitting node creates and transmits a bicast (multicast) link using two identical unicast links. Data transmission device using coding technology.
상기 패킷에 대하여 유니캐스트 링크와 바이캐스트 링크의 전송 우선순위를 산출하는 단계;
상기 우선순위 값이 최대인 링크를 선택하고 상기 버퍼에 저장된 패킷을 코딩 및 전송하는 단계; 및
상기 패킷을 수신한 2개의 송수신 노드에서 디코딩 버퍼에 저장된 기존의 패킷 정보로 상기 패킷을 디코딩하는 단계;
를 포함하여 이루어지는 네트워크 코딩 기술을 이용한 데이터 전송 방법.Storing the packet transmitted to the intermediate forwarding node in a buffer;
Calculating transmission priorities of the unicast link and the bicast link for the packet;
Selecting a link having the highest priority value and coding and transmitting a packet stored in the buffer; And
Decoding the packet with existing packet information stored in a decoding buffer at two transmitting and receiving nodes receiving the packet;
Data transmission method using a network coding technology comprising a.
상기 중간전달노드로 전송된 패킷을 전송한 송수신 노드와 플로우에 따라 분리하여 저장하는 것을 특징으로 하는 네트워크 코딩 기술을 이용한 데이터 전송 방법.The method of claim 7, wherein storing the packet buffer,
And transmitting and storing the packet transmitted to the intermediate transfer node and the node according to the flow.
상기 중간전달노드로 전송된 패킷을 전송한 송수신 노드와 목적지 송수신 노드에 따라 분리하여 저장하는 것을 특징으로 하는 네트워크 코딩 기술을 이용한 데이터 전송 방법.The method of claim 7, wherein storing the packet buffer,
And transmitting and storing the packet transmitted to the intermediate forwarding node according to the transmission / reception node and the destination transmission / reception node.
상기 유니캐스트 링크가 노드 j-> 노드 k라 할 때,
상기 우선순위 값은 상기 노드 j와 노드 k의 패킷 버퍼의 길이 차인 것을 특징으로 하는 네트워크 코딩 기술을 이용한 데이터 전송 방법.8. The method of claim 7,
When the unicast link is node j-> node k,
The priority value is a data transmission method using a network coding technique, characterized in that the difference between the length of the packet buffer of the node j and node k.
상기 유니캐스트 링크가 노드 j-> 노드 k라 할 때,
상기 우선순위 값은 상기 노드 j와 노드 k의 패킷 버퍼의 길이 차와 상기 패킷의 전송 속도의 곱인 것을 특징으로 하는 네트워크 코딩 기술을 이용한 데이터 전송 방법.8. The method of claim 7,
When the unicast link is node j-> node k,
The priority value is a data transmission method using a network coding technique, characterized in that the product of the difference between the length of the packet buffer of the node j and node k and the transmission rate of the packet.
상기 바이캐스트 링크가 노드 j-> 노드 i, 노드 k라 할 때,
상기 우선순위 값은 상기 바이캐스트 링크를 두 개의 유니캐스트 링크 노드 j-> 노드 i와 노드 j-> 노드 k로 분리하고 상기 분리된 유니캐스트 링크 각각의 패킷 버퍼 길이 차이를 산출하여 합한 값인 것을 특징으로 하는 네트워크 코딩 기술을 이용한 데이터 전송 방법.8. The method of claim 7,
When the bicast link is node j-> node i, node k,
The priority value is a sum of the bicast links divided into two unicast link nodes j-> node i and node j-> node k, and the sum of the packet buffer lengths of each of the separated unicast links. A data transmission method using a network coding technique.
상기 바이캐스트 링크가 노드 j-> 노드 i, 노드 k라 할 때,
상기 우선순위 값은 상기 바이캐스트 링크를 두 개의 유니캐스트 링크 노드 j-> 노드 i와 노드 j-> 노드 k로 분리하고 상기 분리된 유니캐스트 링크 각각의 패킷 버퍼 길이 차이를 산출하여 합한 값과 상기 패킷의 전송 속도의 곱인 것을 특징으로 하는 네트워크 코딩 기술을 이용한 데이터 전송 방법.8. The method of claim 7,
When the bicast link is node j-> node i, node k,
The priority value is obtained by dividing the bicast link into two unicast link nodes j-> node i and node j-> node k and calculating the difference in packet buffer length of each of the separated unicast links, and A data transmission method using a network coding technique, characterized in that the product of the transmission rate of the packet.
상기 패킷을 선형결합 또는 논리합(XOR, Exclusive OR)하여 전송하는 것을 특징으로 하는 네트워크 코딩 기술을 이용한 데이터 전송 방법.8. The method of claim 7, wherein said packet coding and transmitting step comprises:
The data transmission method using a network coding technology, characterized in that for transmitting the packet by linear combination or logical OR (XOR, Exclusive OR).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20110106560 | 2011-10-18 | ||
KR1020110106560 | 2011-10-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130042419A KR20130042419A (en) | 2013-04-26 |
KR101339442B1 true KR101339442B1 (en) | 2013-12-06 |
Family
ID=48441126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120005288A KR101339442B1 (en) | 2011-10-18 | 2012-01-17 | Apparatus and method for data transfer using network coding scheme |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101339442B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070001622A (en) * | 2005-06-29 | 2007-01-04 | 주식회사 팬택 | Method for storing error code by using random access memory and mobile communication terminal therefor |
KR20070074256A (en) * | 2006-01-09 | 2007-07-12 | 삼성전자주식회사 | Method for transmitting data through relay in a cellular network and thereof supporting cellular mobile communication system |
KR100749847B1 (en) | 2005-11-11 | 2007-08-16 | 한국전자통신연구원 | Apparatus and method for downlink packet scheduling in base station of the Portable Internet System |
-
2012
- 2012-01-17 KR KR1020120005288A patent/KR101339442B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070001622A (en) * | 2005-06-29 | 2007-01-04 | 주식회사 팬택 | Method for storing error code by using random access memory and mobile communication terminal therefor |
KR100749847B1 (en) | 2005-11-11 | 2007-08-16 | 한국전자통신연구원 | Apparatus and method for downlink packet scheduling in base station of the Portable Internet System |
KR20070074256A (en) * | 2006-01-09 | 2007-07-12 | 삼성전자주식회사 | Method for transmitting data through relay in a cellular network and thereof supporting cellular mobile communication system |
Also Published As
Publication number | Publication date |
---|---|
KR20130042419A (en) | 2013-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ji et al. | SDGR: An SDN-based geographic routing protocol for VANET | |
CN106656302B (en) | Distributed node adaptive routing algorithm towards LEO satellite network | |
Rosário et al. | Opportunistic routing for multi-flow video dissemination over flying ad-hoc networks | |
CN103338207B (en) | Real-time video multi-hop relay method in wireless self-organization network | |
Kafaie et al. | Performance analysis of network coding with IEEE 802.11 DCF in multi-hop wireless networks | |
Rosário et al. | A relay placement mechanism based on UAV mobility for satisfactory video transmissions | |
JP5892545B2 (en) | Dynamic tiering method in network | |
Uddin et al. | Joint routing and medium access control in fixed random access wireless multihop networks | |
Niyato et al. | Optimization of the mobile router and traffic sources in vehicular delay-tolerant network | |
Zhang et al. | Network coding via opportunistic forwarding in wireless mesh networks | |
CN107548120B (en) | Routing method and device of air-to-air communication network | |
Shiang et al. | Informationally decentralized video streaming over multihop wireless networks | |
Rosário et al. | A comparative analysis of beaconless opportunistic routing protocols for video dissemination over flying ad-hoc networks | |
KR101339442B1 (en) | Apparatus and method for data transfer using network coding scheme | |
Shree et al. | Improving congestion control in WSN by multipath routing with priority based scheduling | |
Tao et al. | DUPE: Duplicated unicast packet encapsulation in position-based routing VANET | |
Jawwharlal et al. | Quality and Energy Aware Multipath Routing in Wireless Multimedia Sensor Networks. | |
Selvi et al. | Increasing quality of service in video traffic using zone routing protocol in wireless networks | |
Jeong et al. | A network coding-aware routing mechanism for time-sensitive data delivery in multi-hop wireless networks | |
Malgi et al. | A study on QoS enhancement of MPEG-4 video transmission over wireless mesh network | |
Li et al. | Prioritizing-based message scheduling for reliable unmanned aerial vehicles ad hoc network | |
Okamura et al. | Opportunistic routing for heterogeneous IoT networks | |
Vineeth et al. | Delay Analysis of Network Coded Video Streams in VANETs | |
JP2006094306A (en) | Node device, packet communication procedure in node device, and program | |
Singh | Path reliability of multi path routing in MANET |
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 | ||
FPAY | Annual fee payment |
Payment date: 20161129 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180125 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20181203 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20191217 Year of fee payment: 7 |