Abstract
Random linear network coding (RLNC) is widely employed to enhance the reliability of wireless multicast. In RLNC encoding/decoding, Galois Filed (GF) arithmetic is typically used since all the operations can be performed with symbols of finite bits. Considering the architecture of commercial computers, the complexity of arithmetic operations is constant regardless of the dimension of GF m, if m is smaller than 32 and pre-calculated tables are used for multiplication/division. Based on this, we show that the complexity of RLNC inversely proportional to m. Considering additional overheads, i.e., the increase of header length and memory usage, we determine the practical value of m. We implement RLNC in a commercial computer and evaluate the codec throughput with respect to the type of the tables for multiplication/division and the number of original packets to encode with each other.
랜덤 선형 네트워크 코딩(Random Linear Network Coding, RLNC)은 멀티캐스트의 신뢰성을 높이는 방법으로 널리 사용되고 있다. RLNC 구현에 있어서 효율적인 연산을 위해 Galois Field (GF)를 사용한다. 상용 컴퓨터에서의 연산을 고려하였을 때 GF($2^m$)의 크기 m이 32보다 작을 경우, 곱셈과 나눗셈에 대해 사전에 계산된 table을 사용하면 모든 사칙 연산이 m에 관계없이 상수 복잡도를 가진다. 이로부터 RLNC의 연산 복잡도는 m에 반비례하는 것을 보인다. 추가적으로, m이 커짐에 따라 발생하는 헤더 길이 증가, 메모리 사용량 증가 등의 추가적인 오버헤드를 고려하여 실용적인 GF의 크기를 선택한다. 이를 바탕으로 상용 컴퓨터에 RLNC를 구현하고 곱셈/나눗셈 연산 시에 사용되는 table의 종류와 한 번에 인코딩 되는 원본 패킷의 개수에 따른 성능을 실측한다.