KR20030086037A - Fec 코딩 방식에 기초한 가변길이 패킷 송수신 방법 - Google Patents

Fec 코딩 방식에 기초한 가변길이 패킷 송수신 방법 Download PDF

Info

Publication number
KR20030086037A
KR20030086037A KR1020020024387A KR20020024387A KR20030086037A KR 20030086037 A KR20030086037 A KR 20030086037A KR 1020020024387 A KR1020020024387 A KR 1020020024387A KR 20020024387 A KR20020024387 A KR 20020024387A KR 20030086037 A KR20030086037 A KR 20030086037A
Authority
KR
South Korea
Prior art keywords
packet
parity
data packet
packets
transmitted
Prior art date
Application number
KR1020020024387A
Other languages
English (en)
Other versions
KR100458878B1 (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 KR10-2002-0024387A priority Critical patent/KR100458878B1/ko
Priority to US10/428,730 priority patent/US7409627B2/en
Priority to FR0305474A priority patent/FR2839405B1/fr
Priority to JP2003128438A priority patent/JP3798387B2/ja
Publication of KR20030086037A publication Critical patent/KR20030086037A/ko
Application granted granted Critical
Publication of KR100458878B1 publication Critical patent/KR100458878B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • 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
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • 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
    • H03M13/27Coding, 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 using interleaving techniques
    • H03M13/2703Coding, 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 using interleaving techniques the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • 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
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • H03M13/353Adaptation to the channel
    • 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
    • H03M13/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6356Error control coding in combination with rate matching by repetition or insertion of dummy data, i.e. rate reduction
    • 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
    • H03M13/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • 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/0041Arrangements at the transmitter end
    • 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/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • 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
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5603Access techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)

Abstract

본 발명은 FEC 코딩 방식에 기초한 가변길이 패킷 송수신 방법에 관한 것으로, FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법은 a) 송신될 입력 데이터 패킷이 존재하는 경우 데이터 패킷을 입력받는 단계; 및 b) 상기 입력되는 데이터 패킷을 특정 저장 폭을 갖는 2차원 저장 장치에 가상적으로 연결하여 배치하면서 FEC 코딩을 수행하여 대응되는 패리티 패킷을 산출하고, 상기 산출된 패리티 패킷을 상기 2차원 저장 장치에 배치하며, 상기 데이터 패킷과 상기 데이터 패킷의 상기 2차원 저장 장치 내에서의 위치인 오프셋, 상기 데이터 패킷의 종류, 및 상기 패리티 패킷을 송신하는 단계를 포함하고, FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법은 a) 수신되는 확장 패킷이 존재하는 경우 확장 패킷을 수신하여 특정 저장 폭을 갖는 2차원 저장 장치에 가상적으로 연결하여 배치하는 단계; 및 b) FEC 디코딩을 수행하여 상기 수신된 확장 패킷으로부터 데이터 패킷을 복원한 후 상위 계층으로 전달하는 단계를 포함한다. 본 발명에 따르면, 가변길이 패킷 송수신시 손실 패킷을 매우 효율적으로 복원할 수 있으며, 송신측에서 발생하는 지연을 최소화할 수 있는 효과가 달성된다. 또한, 데이터 전송 중 손실된 패킷을 복원할 수 있으므로, 우수한 품질의 서비스를 가능하게 하며, 특히 인터넷 상에서의 비디오 서비스 등에 적용되는 경우 뛰어난 화질의 서비스를 제공할 수 있다. 특히 인터넷 환경에서 비디오 전송 시 많이 사용되는 RTP와 같이 사용하면 매우 효과적이다.

Description

FEC 코딩 방식에 기초한 가변길이 패킷 송수신 방법{METHOD FOR TRANSMITTING AND RECEIVING A VARIABLE SIZE PACKET BASED ON FOWARD ERROR CORRECTION CODING}
본 발명은 FEC(Forward Error Correction) 코딩 방식에 기초한 가변길이 패킷의 송수신 방법에 관한 것으로, 특히 패딩(padding)없이 가변길이 패킷에 대한 패리티 패킷을 생성하여 손실된 패킷의 복원을 가능하게 함과 동시에 송신측에서 데이터 패킷을 즉시 전송할 수 있도록 하는 FEC 코딩 방식에 기초한 가변길이 패킷의 송수신 방법에 관한 것이다.
디지털 통신 시스템은 데이터 전송 중 채널에서 발생한 잡음이나 오류를 수신측에서 제어할 수 있도록 하는 방법으로 ARQ(Automatic Repeat Request) 방식이나 FEC(Forward Error Correction) 방식을 사용한다.
ARQ 방식은 수신된 데이터 블록에 오류가 존재하는 지를 분석하는 것과 오류를 포함하는 블록의 재전송을 요청하는 것을 포함하는 방식으로 오류가 많고 적은지연을 요구하는 시스템에서는 적합하지 않다.
한편, FEC 방식은 채널을 통해 데이터를 전송할 때 부가 데이터를 더 전송함으로써 오류가 발생하더라도 재전송 없이 수신단에서 오류를 검출, 복원할 수 있도록 하는 방식이다. 이러한 FEC 방식에는 Hamming, BCH, RS(Reed Solomon) 코드 등 여러 종류가 있으며, 특히 RS는 바이트 단위의 오류 검출과 정정을 가능하게 한다.
J. Rosenberg 등이 제안하여 IETF 표준으로 채택된 "An RTP Payload Format for Generic Forward Error Correction"(IETF(Internet Engineering Task Force) RFC(Request For Comment Document) 2733, December 1999)에서는 배타적 논리합(exclusive-or) 연산을 사용한다. 하나의 패킷의 집합에 대하여 하나의 패리티 패킷이 별개의 스트림으로 송신된다. 해당 집합에서 하나의 패킷이 손실되면 수신측에서 복구할 수 있다. FEC 방식이 구현되지 않은 호스트와 호환성을 가지기 위하여 패러티 패킷은 특별한 RTP(Real Time Processing) 페이로드(payload) 타입값을 가진다. 이 값을 모르는 호스트는 수신된 패러티 패킷을 무시하고 원래와 같이 진행하면 된다. 호스트가 모르는 페이로드 타입값을 가지는 패킷을 무시하는 것은 이전의 IETF 문서인 H. Schulzrine 등의 "RTP: A Transport Protocol for Real-Time Applications"(IETF RFC 1889, January 1996)에 따른 것이다.
또한, H. Zheng 등의 "An Improved UDP Protocol for Video Transmission Over Internet-to Wireless Networks"(IEEE Tr. On Multimedia, pp 356-365, Setember 2001) 및 S.-W. Yuk 등의 "An Adaptive Redundancy Control Method for Erasure-Code Based Real-Time Data Transmission Over the Internet"(IEEE Tr. OnMultimedia, pp 366-374, September 2001)에서 shortened RS 코드는 소거된 패킷의 복구에 사용된다. 만약 k 데이터 패킷이 (n-k) 패리티 패킷과 함께 전송되는 경우, 최대 (n-k) 패킷까지 손실되어도 수신기에서 재생할 수 있다. 손실된 패킷들의 일련 번호는 RTP 프로토콜을 사용함으로써 수신기에 의해 카운트될 수 있다.(소거는 알려져 있는 위치에서의 손실 또는 오류로 정의된다) 이러한 방법을 이용하면 하나 이상의 패킷이 재생될 수 있기 때문에 RFC 2733보다 매우 효과적이다. 하나이상의 패킷을 재생하는 방법은 Wagner 등이 제안하여 IETF에서 표준화가 진행되고 있다.("draft-ietf-avt-uxp-02.txt: An RTP payload format for erasure-resilient transmission of progressive multimedia streams," March 2002)
한편, 상기한 방법들은 패킷 길이가 고정된 것을 가정하여 적용된다. 압축된 오디오의 패킷 길이는 고정되는 반면에, 압축된 비디오의 패킷 길이는 첨부한 도 10에 도시된 바와 같이 대부분 가변적이다.
이와 같이, 최근 인터넷 상에서 많이 제공되고 있는 동영상 서비스처럼, 전송하고자 하는 패킷 길이가 가변적이고 많은 지연이 허용되지 않는 경우에는 FEC 방식을 사용하되 패킷의 길이가 가변적인 스트림에 적합하도록 개선이 요구된다.
한편, 현재의 FEC 부호화 방법에서 가변길이의 패킷이 전송되는 경우 이 가변길이의 패킷에 대해 패리티 패킷을 생성할 수 없으므로, 도 6에 도시된 바와 같이 동일한 길이를 가지는 패킷으로 만들기 위한 패딩(padding) 과정이 수행되어야 하는 문제점이 있다. 그리고 패리티 패킷의 길이는 연관된 패킷 그룹 내에서 가장 큰 패킷의 길이에 맞추어야 하므로 대역폭이 낭비되며 또한 최대 길이를 가지는 패킷을 알기 위해서 연관된 패킷 그룹인 패킷 1부터 패킷 6까지 모두 입력될 때까지 송신단 측은 입력되는 패킷을 전송하지 못함으로써 지연이 발생되는 문제점이 있다.
따라서, 본 발명은 상기 문제점을 해결하기 위하여 안출된 것으로, 2차원 저장 장치에 패딩 과정 없이 가상적으로 연결된 가변 길이 패킷에 대한 패리티 패킷을 생성하고, 패리티 패킷 생성을 위한 연관된 패킷 그룹이 모두 입력되지 않아도 데이터 패킷을 즉시 전송할 수 있도록 함으로써 송신 지연을 최소화하고, 한 개 이상의 패리티 패킷들을 이용하여 연관된 패킷 그룹 내 한 개 이상의 패킷 손실을 복원하는 방법을 제공할 수 있는, FEC 코딩 방식에 기초한 가변길이 패킷 송수신 방법을 제공하는데 그 목적이 있다.
도 1은 본 발명의 실시예에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법의 순서도이다.
도 2는 도 1에 도시된 FEC 코딩 및 패킷 송신 단계의 순서도이다.
도 3은 본 발명의 실시예에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법의 순서도이다.
도 4는 도 3에 도시된 패킷의 수신 및 2차원 저장 장치에 연결 배치하는 단계의 순서도이다.
도 5는 도 3에 도시된 FEC 디코딩 및 데이터 패킷 복원 및 전달 단계의 순서도이다.
도 6은 종래 FEC 코딩 방식에 기초한 가변길이 패킷의 정렬 방법의 개략도이다.
도 7은 본 발명의 실시예에 따른 FEC 코딩 방식에 기초한 가변길이 패킷의 정렬 방법의 개략도이다.
도 8(a) 및 (b)는 본 발명의 실시예에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법에서 수신된 패킷의 손실 복원을 개략적으로 도시한 도면으로, (a)는 모든 손실 부분이 복원 가능한 상태를 나타내고, (b)는 일부 복원 불가능 영역이 존재하는 상태를 나타낸 도면이다.
도 9는 본 발명의 실시예에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법에서 각 패킷의 오프셋을 도시한 도면이다.
도 10은 패킷 크기가 대략 150 바이트와 3000 바이트 사이에서 가변되는 비디오 및 패킷 크기가 112 바이트로 고정된 오디오를 도시한 도면이다.
상기 목적을 달성하기 위한 본 발명의 특징에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법은,
a) 송신될 입력 데이터 패킷이 존재하는 경우 데이터 패킷을 입력받는 단계; 및 b) 상기 입력되는 데이터 패킷을 특정 저장 폭을 갖는 2차원 저장 장치에 가상적으로 연결하여 배치하면서 FEC 코딩을 수행하여 대응되는 패리티 패킷을 산출하고, 상기 산출된 패리티 패킷을 상기 2차원 저장 장치에 배치하며, 상기 데이터 패킷과 상기 데이터 패킷의 상기 2차원 저장 장치 내에서의 위치인 오프셋, 상기 데이터 패킷의 종류, 및 상기 패리티 패킷을 송신하는 단계를 포함한다.
이러한 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법은 상기 단계 a) 전에, c) 상기 FEC 코딩에 필요한 특정 파라미터의 사용이 약속되어 있는 지의 여부를 판단하는 단계; 및 d) 상기 특정 파라미터의 사용이 약속되어 있지 않는 것으로 판단되는 경우, 상기 특정 파라미터를 결정하는 단계를 더 포함한다.
또한, 상기 단계 b)가 i) 패리티 패킷의 송신 여부를 결정하는 인수의 값을 누적하는 단계 ; ii) 상기 입력 데이터 패킷을 상기 2차원 저장 장치에 차례로 배치시키는 단계; iii) 상기 입력 데이터 패킷에 대응되도록 패리티 패킷을 갱신하는 단계; iv) 상기 데이터 패킷의 복원을 위한 정보 및 상기 데이터 패킷을 포함한 확장 패킷을 송신하는 단계; v) 패리티 패킷을 송신할 시점인지의 여부를 판단하는 단계; vi) 상기 단계 v)에서 패리티 패킷을 송신할 시점인 경우 패리티 패킷을 송신하는 단계; 및 vii) 상기 단계 i)에서의 패리티 패킷의 송신 여부를 결정하는 인수의 값을 초기화하는 단계를 포함한다. 상기 단계 i)과 vii)에서의 패리티 패킷의 송신 여부를 결정하는 인수는 연관된 패킷 그룹을 결정하는 인수에 따라 정해지며, 연관된 패킷 그룹을 결정하는 인수가 연관된 패킷 그룹의 문턱치 크기인 경우 패리티 패킷의 송신 여부를 결정하는 인수는 입력되는 데이터 패킷의 크기가 되고, 연관된 패킷 그룹을 결정하는 인수가 데이터 패킷의 문턱치 개수인 경우 패리티 패킷의 송신 여부를 결정하는 인수는 입력되는 데이터 패킷의 개수가 되며, 연관된 패킷 그룹을 결정하는 인수가 문턱치 시간인 경우 패리티 패킷의 송신 여부를 결정하는 인수는 경과한 시간이 될 수 있다.
또한, 상기 단계 vi)는 송신할 패리티 패킷 개수를 결정하는 단계; 송신된패리티 패킷 개수가 상기 결정된 송신할 패리티 패킷 개수 이상인 지의 여부를 판단하는 단계; 상기 판단된 송신된 패리티 패킷 개수가 상기 결정된 송신할 패리티 패킷 개수보다 작은 경우 데이터 패킷 복원을 위한 정보 및 패리티 패킷을 포함한 확장 패리티 패킷을 송신하는 단계; 상기 송신된 패리티 패킷 개수를 누적하는 단계; 및 상기 판단된 송신된 패리티 패킷 개수가 상기 결정된 송신할 패리티 패킷 개수 이상인 경우 패리티 패킷과 상기 송신된 패리티 패킷 개수를 초기화하는 단계를 포함한다.
또한, 본 발명의 다른 특징에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법은,
a) 수신되는 확장 패킷이 존재하는 경우 확장 패킷을 수신하여 특정 저장 폭을 갖는 2차원 저장 장치에 가상적으로 연결하여 배치하는 단계; 및 b) FEC 디코딩을 수행하여 상기 수신된 확장 패킷으로부터 데이터 패킷을 복원한 후 상위 계층으로 전달하는 단계를 포함한다.
이러한 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법은 상기 단계 a) 전에, c) 상기 FEC 디코딩에 필요한 특정 파라미터의 사용이 약속되어 있는 지의 여부를 판단하는 단계; 및 d) 상기 특정 파라미터의 사용이 약속되어 있지 않는 것으로 판단되는 경우, 상기 특정 파라미터를 송신측으로부터 수신하는 단계를 더 포함한다.
또한, 상기 단계 a)가 i) 확장 패킷을 수신하는 단계; ii) 상기 수신된 확장 패킷이 확장 데이터 패킷인지 확장 패리티 패킷인지의 여부를 판단하는 단계; iii)상기 단계 ii)에서 수신된 확장 패킷이 데이터 패킷을 포함하는 확장 데이터 패킷이면 데이터 패킷과 데이터 패킷 복원을 위한 정보를 분리하는 단계; iv) 상기 단계 ii)에서 수신된 확장 패킷이 패리티 패킷을 포함하는 확장 패리티 패킷이면 패리티 패킷과 데이터 패킷 복원을 위한 정보를 분리하는 단계; v) 상기 단계 iii)또는 iv)에서 분리된 데이터 패킷과 패리티 패킷을 상기 특정된 2차원 저장 장치에 차례로 배치하는 단계를 포함한다.
또한 상기 단계 b)가 i) 연관된 패킷 그룹을 상기 상위 계층으로 전달할 시점인 지의 여부를 판단하는 단계; ii) 상기 단계 i)에서 상기 연관된 패킷 그룹을 상기 상위 계층으로 전달할 시점인 것으로 판단되는 상기 분리된 데이터 패킷을 상기 상위 계층으로 전달하는 단계를 포함한다.
또한, 상기 단계 b)의 상기 단계i)에서 상기 연관된 패킷 그룹을 상기 상위 계층으로 전달할 시점이 상기 연관된 패킷 그룹 내의 마지막 패킷 또는 다음 연관된 패킷 그룹 내의 패킷이 도착하거나, 특정 시간이 경과한 시점인 것을 특징으로 한다.
또한, 상기 단계 b)의 상기 단계 ii)는 ㄱ) 상기 분리된 데이터 패킷에 손실이 있는 지의 여부를 판단하는 단계; ㄴ) 상기 데이터 패킷에 손실이 있는 것으로 판단되는 경우, 복원 가능한 부분이 있는 지의 여부를 판단하는 단계; ㄷ) 상기 단계 ㄴ)에서 복원 가능한 부분이 있는 것으로 판단되는 경우 상기 손실된 데이터 패킷을 복원하는 단계; ㄹ) 상기 ㄷ)에서 복원되지 않은 부분이 있는 지의 여부를 판단하는 단계; ㅁ) 상기 단계 ㄴ)에서 복원 가능한 부분이 없는 것으로 판단되거나,또는 상기 단계 ㄹ)에서 복원되지 않은 부분이 있는 경우, 상기 상위 계층으로 손실 위치를 전달하는 단계; 및 ㅂ) 상기 단계 ㄱ)에서 데이터 패킷의 손실이 없는 경우 수신된 데이터 패킷을 상위 계층으로 전달하거나, 상기 단계 ㄷ)에서 복원된 데이터가 있을 경우 복원된 데이터 패킷을 포함한 수신 데이터 패킷을 상기 상위 계층으로 전달하는 단계를 포함한다.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법의 순서도이다.
도 1에 도시되어 있듯이, 본 발명의 실시예에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법은 송신측에서 수행된다.
먼저, 송신측은 FEC 코딩 및 디코딩에 필요한 파라미터로 사전에 약속된 값을 사용할 것인 지의 여부를 판단한다(S101)
만약 사전에 약속된 파라미터를 사용하지 않는 것으로 판단되는 경우, FEC 코딩 및 디코딩에 필요한 파라미터를 결정하여 수신측으로 송신한다(S102).
한편, 사전에 약속된 파라미터를 사용하는 것으로 판단되는 경우, FEC 코딩 및 디코딩에 필요한 파라미터를 결정하여 수신측으로 송신하는 과정(S102)은 생략될 수 있다.
여기서, FEC 코딩 및 디코딩에 필요한 파라미터는 전송될 패킷이 저장되는 2차원 저장 장치의 폭, 패리티 패킷의 개수 및 연관된 패킷 그룹을 결정하는 인수이며, 여기서 연관된 패킷 그룹은 데이터 패킷과 그에 대응되는 패리티 패킷들의 집합으로, 이들을 결정하는 인수로는 연관된 패킷 그룹의 문턱치 크기 또는 데이터 패킷의 문턱치 개수 또는 문턱치 시간이 있다.
다음, 입력되는 데이터 패킷, 즉 송신될 데이터 패킷의 존재 여부를 판단하여(S103), 입력 데이터 패킷이 존재하면 데이터 패킷을 입력받은 후(S104), 2차원 저장 장치를 이용하여 입력 데이터에 대한 FEC 코딩을 수행한 후 수신측으로 송신한다(S105). 이와 같이 입력되는 데이터 패킷이 존재하는 동안에는 상기 데이터 패킷 입력 과정(S104)과 FEC 코딩 및 패킷 송신 과정(S105)이 반복 수행된다.
한편, 상기 판단 단계(S103)에서 입력되는 데이터 패킷이 없으면 송신 프로세스가 종료된다.
도 2는 도 1에 도시된 FEC 코딩 및 패킷 송신 과정(S105)이 수행되는 것을 도시한 순서도이다.
도 2에 도시되어 있듯이, 상기 단계(S104)에서 데이터 패킷이 입력되면, 패리티 패킷의 송신 여부를 결정하는 인수의 값을 누적하고(S201), 이 입력 데이터 패킷을 첨부한 도 7에 도시된 바와 같이 저장 폭이 L인 2차원 저장 장치(100)에 가상적으로 연결하여 차례로 배치한다(S202). 상기 패리티 패킷의 송신 여부를 결정하는 인수는 입력되는 데이터 패킷의 크기, 데이터 패킷의 개수, 시간 정보 등이 될 수 있다.
여기서 2차원 저장 장치(100)에 가상적으로 연결하여 배치한다는 것은, 2차원 저장 장치(100)에 저장될 패킷들을 연결하여 저장하되, 그 저장 길이가 2차원 저장 장치(100)의 저장 폭(L)이 되도록 한다는 것을 의미한다.
여기서 2차원 저장 장치(100)의 폭(L)은 변경 가능하며, 전달 가능한 방법을 통하여 수신측에게 알려진다. 고정된 폭(L)이 콜(call) 중에 사용될 수 있으며, 또는 이 폭(L)은 채널 상태 및 패킷의 길이에 따라 적응적으로 콜(call) 도중에 변경되어 수신측으로 전달될 수 있다.
입력 데이터 패킷이 2차원 저장 장치(100)에 가상적으로 연결되어 배치될 때, 입력 데이터 패킷이 2차원 저장 장치(100)의 폭(L)보다 작으면 그대로 배치되고, 만약 입력 데이터 패킷이 2차원 저장 장치(100)의 폭(L)보다 크면 2차원 저장 장치(100)의 폭(L)만큼 먼저 배치되고, 그 나머지 부분은 다음 라인에 배치된다.
도 7을 참조하면, 입력 데이터 패킷 1(MP1)의 크기가 2차원 저장 장치(100)의 폭(L)보다 크기 때문에 패킷 1(MP1) 중 2차원 저장 장치(100)의 폭(L)에 해당하는 일부만 먼저 배치되고, 패킷 1(MP1)의 나머지 부분은 다음 라인에 배치된다. 한편, 패킷 2(MP2)의 크기는 2차원 저장 장치(100)의 폭(L)보다 작을 수 있으나 이미 먼저 배치된 패킷 1(MP1)의 나머지 부분이 배치되고 남은 부분에 패킷 2(MP2)의 일부가 배치되며 그 나머지 부분(MP2)은 또한 다음의 라인에 배치된다. 패킷 3(MP3), 패킷 4(MP4)에 대해서도 패킷 2와 마찬가지로 배치될 수 있다.
한편, FEC 알고리즘은 도 7에서 동일한 수평 위치에 있는 패킷 데이터에 따라 (n-k) 디지트의 패리티 패킷을 산출하여 출력한다. 이 경우 여러 체계적인 FEC알고리즘이 사용될 수 있으나, GF(28)에 따른 shortened RS 코딩이 통상적으로 사용될 수 있다. 여기서 2차원 저장 장치(100)의 첫 번째 수평 위치에 대해 2 디지트 패리티 패킷, 두 번째 수평 위치에 대해 2 디지트 패리티 패킷, 다른 수평 위치에 대해서도 계속 적용되고, 마지막으로 2차원 저장 장치(100)의 저장 폭(L)인 마지막 L번째 수평 위치에 대해 2 디지트 패리티 패킷이 생성되므로, 최종적으로 생성되는 2개의 패리티 패킷은 각각 길이가 2차원 저장 장치(100)의 폭과 동일한 L인 패리티 패킷(PP1, PP2)이 된다. 즉, 2차원 저장 장치(100)에 배치된 데이터를 세로로 연산하여 특정 길이 단위, 특히 바이트 단위로 대응되는 패리티 패킷을 산출한다. 예를 들어, 도 7에서 RS(6, 4)로 표시되어 있는 것은 4개의 입력 데이터, 즉 세로로 4비트의 입력 데이터가 연산되어 6-4=2 비트의 패리티 패킷이 산출된다는 것을 의미한다. 이것은 4+2=6 패킷들 중에서 손실된 패킷이 최대 2개까지는 재생될 수 있다는 것을 또한 의미한다.
각 패킷의 위치는 수신측에 알려져야 하며, 이를 위해 RTP 패킷 헤더 내에 있는 예비 필드(reserved field) 또는 사용자가 정의하여 사용 가능한 확장 필드 (extension field)가 사용될 수 있다. 또한, 이러한 위치를 통지하기 위해 연관된 패킷의 연결 시작점으로부터의 오프셋(offset)이 바이트 단위로 하여 사용될 수 있다.
이러한 오프셋은 RTP 패킷 헤더의 확장 필드에 각 패킷에 대해 포함될 수 있으며, 예를 들어 도 7에 대해 적용하는 경우 첨부한 도 9에 도시된 바와 같이 이루어질 수 있다. 이 경우, 송신측에서 수신측으로 송신되는 순서는 패킷 1(P1) -> 패킷 2(P2) -> 패킷 3(P3) -> 패킷 4(P4) -> 패리티 패킷 1(PP1) -> 패리티 패킷 2(PP2)가 된다.
이와 같이 하나의 데이터 패킷이 입력될 때마다 해당되는 패리티 패킷을 계속 갱신한 후(S203) 데이터 패킷 복원을 위한 정보 및 데이터 패킷을 포함한 확장 데이터 패킷을 수신측으로 송신한다(S204). 여기서 데이터 패킷 복원을 위한 정보는 확장 데이터 패킷의 헤더 부분에 포함된다.
또한, 데이터 패킷 복원을 위한 정보는, 데이터 패킷일 경우에는 패킷 종류와 패킷의 오프셋을 포함하며, 패리티 패킷의 경우에는 패킷 종류와, 연관된 패킷 그룹 내의 데이터 패킷의 전체 크기를 포함하고, 또한 각 데이터 패킷의 오프셋을 더 포함할 수 있다.
한편, 패리티 패킷의 갱신은 2차원 저장 장치(100)의 데이터를 한 바이트씩 세로로 연산하여 바이트 단위로 수행되며, 데이터 패킷을 포함한 확장 데이터 패킷은 2차원 저장 장치(100) 내에서의 해당 데이터 패킷의 위치를 나타내는 오프셋, 패킷의 종류 및 데이터 패킷을 포함한다.
실시간 전송에 많이 사용되는 RTP(Real-time Transport Protocol)와 같은 프로토콜이 사용되는 경우 오프셋을 확장 필드에 표시하여 전송할 수 있으며, RTP 패킷 자체가 확장 패킷이 된다.
패리티 패킷을 갱신한 후(S203), 패리티 패킷을 송신할 시점인 지의 여부를 결정한다(S205).
상기 패리티 패킷의 송신 여부의 결정은 연관된 패킷 그룹을 결정하는 인수에 따라 달라진다. 연관된 패킷 그룹을 결정하는 인수가 연관된 패킷 그룹의 문턱치 크기인 경우에는 입력되는 데이터 패킷의 크기의 누적값이 문턱치 크기 이상이면 패리티 패킷을 송신할 시점으로 결정하고, 데이터 패킷의 문턱치 개수인 경우에는 입력되는 데이터 패킷의 개수가 문턱치 개수 이상이면 패리티 패킷을 송신할 시점으로 결정하며, 문턱치 시간인 경우에는 경과한 시간이 문턱치 시간 이상이면 패리티 패킷을 송신할 시점으로 결정한다. 한편, 기타 여러 가지 인수를 이용해서 송신 여부를 결정할 수 있으므로 상기 기술한 인수를 이용하는 것에 국한되지 않는다.
만약 패리티 패킷의 송신 시점이 아닌 것으로 판단되는 경우, 데이터 패킷의 입력 여부를 판단하는 과정(S103)으로 리턴된다.
한편, 패리티 패킷의 송신 시점인 것으로 판단되는 경우, 채널 상태에 따라 송신될 패리티 패킷의 개수를 결정한다(S206). 즉, 채널 상태가 좋으면 송신하는 패리티 패킷의 수를 줄이고, 채널 상태가 나쁘면 패리티 패킷의 수를 늘려 보냄으로써 보다 나은 화질을 제공할 수 있다. 채널상태에 대한 정보는 RTCP(Real-time Transport Control Protocol)를 이용하여 주고 받을 수 있다.
다음 송신된 패리티 패킷의 개수와 상기 단계(S206)에서 결정된 송신될 패리티 패킷 개수와 비교하여(S207), 송신된 패리티 패킷의 개수가 송신될 패리티 패킷의 개수 이내이면 데이터 패킷 복원을 위한 정보와 패리티 패킷을 포함한 확장 패리티 패킷을 송신하고(S208), 송신된 패리티 패킷의 개수를 누적한다(S209). 이때, 확장 패리티 패킷은 연관된 패킷 그룹 내의 데이터 패킷 전체 크기, 패킷의 종류 및 패리티 패킷을 포함한다. 또한 확장 패리티 패킷은 각 데이터 패킷의 오프셋을 더 포함할 수 있으며, 이는 패킷 간 경계를 나타내는 코드가 없는 데이터 패킷의 복원에 사용될 수 있다.
그러나, 송신된 패리티 패킷의 개수가 송신될 패리티 패킷보다 큰 경우, 즉 송신될 패리티 패킷 개수 이상 송신된 경우, 송신된 패리티 패킷과 패리티 패킷의 개수를 초기화하고(S210), 패리티 패킷의 송신 여부를 결정하는 인수의 값 또한 초기화한 후 입력 데이터 패킷 존재 여부를 판단하는 단계(S103)로 리턴된다(S211).
상기 설명한 바와 같이, 연속되어 입력되는 데이터 패킷은 이전 데이터 패킷의 마지막 부분에 연결되어 배치된 후 도 2에 도시된 실시예에 따라 2차원 저장 장치(100)를 이용한 FEC 코딩 및 패킷 송신 과정(S105)이 반복 수행된다.
상기에서는 본 발명의 실시예에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법에 대해 설명하였으며, 이하에서는 수신 방법에 대해 설명한다.
도 3은 본 발명의 실시예에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법의 순서도이다.
도 3에 도시되어 있는 바와 같이, 본 발명의 실시예에 따른 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법은 수신측에서 수행된다.
먼저, 수신측은 FEC 디코딩에 필요한 파라미터로 사전에 약속된 값을 사용할 것인 지의 여부를 판단하고(S301), 사전에 약속된 파라미터를 사용하지 않는 경우에는 송신측으로부터 전송되는 파라미터를 수신하여(S302) 사용한다. 그러나 사전에 약속된 파라미터를 사용하는 것으로 판단되는 경우, 파라미터를 수신하는 단계(S302)는 생략될 수 있다.
다음, 송신측으로부터 전송되어 수신되는 확장 패킷의 존재 여부를 판단하여(S303), 수신되는 확장 패킷이 존재하면 확장 패킷을 수신한 후 2차원 저장 장치(200)에 연결 배치한 후(S304), 2차원 저장 장치(200)를 이용하여 FEC 디코딩을 수행하고 데이터 패킷을 복원한 후 상위 계층으로 복원된 데이터 패킷을 전달한다(S305). 이와 같이 수신되는 확장 패킷이 존재하는 동안에는 상기 확장 패킷을 수신한 후 연결 배치하는 단계(S304)와 FEC 디코딩, 데이터 패킷 복원 및 전달 단계(S305)가 반복 수행된다.
한편, 상기 판단 단계(S303)에서 수신되는 확장 패킷이 없으면 수신 프로세스가 종료된다.
도 4는 도 3에 도시된 패킷의 수신 및 2차원 저장 장치에 연결 배치하는 단계(S304)의 순서도이다.
도 4에 도시되어 있는 바와 같이, 송신측으로부터 전송되어 오는 확장 패킷이 상기 단계(S401)에서 수신되면, 이 확장 패킷이 확장 데이터 패킷인지 확장 패리티 패킷인 지의 여부를 판단하여(S402), 확장 데이터 패킷이면 이 확장 데이터 패킷에서 데이터 패킷과, 확장 패킷 헤더 부분에 포함되는 데이터 패킷 복원을 위한 정보를 분리하고(S403), 만약 확장 패리티 패킷이면 패리티 패킷과 데이터 패킷 복원을 위한 정보를 분리한다(S404).
그 후, 분리된 데이터 패킷 또는 패리티 패킷을 도 7에 도시된 2차원 저장장치(200)에 연결하여 배치한다(S405). 여기서, 각 데이터 패킷 및 패리티 패킷이 연결되어 배치된 후의 2차원 저장장치(200)의 배치 형태는 송신측에서 입력 데이터 패킷 및 패리티 패킷을 저장한 2차원 저장 장치(100)의 배치 형태와 동일하다. 즉, 송신측에서 2차원 저장장치(100) 내에 배치된 각 패킷의 위치 또는 연관된 패킷의 연결 시작점으로부터의 오프셋(offset) 등이 수신측으로 알려지기 때문에 수신측의 2차원 저장장치(200)에 배치된 형태가 동일하게 된다. 따라서, 여기서는 도7에 도시된 동일한 도면에 다른 도면 부호를 사용하여 송신측 2차원 저장 장치(100)와 수신측 2차원 저장 장치(200)로 나타낸다.
도 5는 도 3에 도시된 FEC 디코딩, 데이터 패킷 복원 및 전달 단계(S305)의 순서도이다.
도 5에 도시되어 있는 바와 같이, 도 4에서 분리된 데이터 패킷을 2차원 저장 장치(200)에 배치되면(S405) 연관된 패킷 그룹을 상위 계층으로 전달할 시점인 지의 여부를 판단한다(S501).
만약 연관된 패킷 그룹을 상위 계층으로 전달할 시점이 아니면 확장 패킷을 수신하는 단계(S303, S304)를 계속 수행하고, 만약 상위 계층으로 전달할 시점이면 수신한 데이터 패킷에 손실이 있는 지의 여부를 판단한다(S502).
여기서 상위 계층은 동기화 계층이나 디코더 계층 등이 될 수 있으며, 상위 계층으로 전달할 시점은 연관된 패킷 그룹 내의 마지막 패킷 또는 다음 연관된 패킷 그룹 내의 패킷이 도착하거나, 또는 패킷이 모두 도착하지 않으면 일정 시간이 경과한 시점이다.
상기 판단 단계(S502)에서 데이터 패킷에 손실이 없으면 수신된 데이터 패킷들을 상위 계층으로 전달하고(S507), 만약 데이터 패킷에 손실이 있으면 복원이 가능한 부분이 있는 지의 여부를 판단하여(S503) 복원이 가능한 부분이 있는 데이터가 있으면, 패리티 패킷을 사용하여 손실된 데이터를 복원한다(S505). 다음 손실된 데이터를 복원한 후 복원하지 못한 부분이 없으면 상위 계층으로 복원한 데이터를 포함한 수신된 데이터를 전달한다(S507).
예를 들어, 손실된 패킷의 복원에 대해 RS(6, 4)을 사용하므로 4개의 입력 디지트가 2개의 패리티 패킷을 산출하고, 6 패킷들 중에서 손실된 패킷이 최대 2개까지는 복원될 수 있다. 여기서, 각 패킷이 자신의 일련 번호를 가지는 RTP 프로토콜을 사용함으로써 수신측에서 손실된 패킷의 위치를 알기 때문에 이러한 손실된 패킷들을 소거 부분이라고 할 수 있다. 예를 들어, 도 8(a)에 도시된 바와 같이 손실된 패킷 2(P2)와 패킷 3(P3)이 패리티 패킷(PP1, PP2)에 의해 복원될 수 있다. 따라서 상기 단계(S503)에서 복원 가능한 것으로 판단되어 상기 단계(S505)에서 복원된다.
그러나, 수평적으로 동일한 위치에서 2개를 초과하는 디지트가 손실되는 경우, 손실된 디지트들은 복원될 수 없다. 예를 들어, 도 8(b)에 도시된 바와 같이, 패킷 1(P1)과 패킷 4(P4)가 손실된 경우, 화살표로 표시된 수평 위치에서 3개의 디지트에서 손실된 부분이 발생되기 때문에 이 부분에서는 손실된 패킷들이 복원될 수 없다.
이와 같이, 손실된 데이터를 복원하지 못한 부분이 있으면 상위계층으로 손실된 데이터의 위치를 전달한다(S504).
상기 예에서는 n이 6인 RS(6, 4)에 대해서만 설명하였지만, 통상적으로 RS(n, k) 코드가 사용되는 경우, GF(28)에서 가장 큰 n인 28=255까지 적용될 수 dLT다. 또한, 네트워크 상태가 매우 안좋은 경우, (n-k)를 증가시키기 위해 패리티 패킷의 수를 증가시킬 수 있다.
또한, 상기 예에서는 RS(6, 4)의 경우에 대해서만 설명하였지만, 본 발명의 기술적 범위는 여기에 한정되지 않고 다른 RS 코드에 대해서도 적용될 수 있으며, 또한 RTP와 같이 패킷의 일련 번호를 헤더에 명시하는 프로토콜뿐만 아니라, 패킷의 일련 번호를 알 수 없는 경우에도 적용될 수 있으며, 이 경우에는 손실된 데이터 패킷을 복원할 수 있는 범위가 패리티 패킷 개수의 절반 이내로 한정될 수 있다.
만약 손실된 정도가 복원 가능한 범위를 벗어날 경우, 일부 손실된 데이터는 복원되지 않을 수 있으며, 이 때의 손실된 부분의 위치를 상위 계층으로 전달할 수 있다(S504).
한편, 상기한 본 발명의 실시예에서는 데이터 패킷 및 패리티 패킷을 2차원 저장 장치(100, 200)에 배치하는 것으로 설명하였으며, 이러한 2차원 저장 장치(100, 200)는 가상의 2차원 저장 장치 또는 실제의 메모리일 수 있다. 즉, 상기 입력되는 데이터 패킷을 별도로 저장하는 장치를 두는 것이 아니라 애플리케이션 등에 의해 지정되는 메모리인 가상의 2차원 저장 장치이거나, 또는 하드웨어적으로 데이터 패킷을 별도로 저장하는 실제 메모리일 수 있다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 한정되는 것이 아니다.
본 발명에 따르면, 2차원 저장 장치에 가변 길이의 각 데이터 패킷이 입력될 때마다 가상적으로 연결하여 저장하는 동시에 연관된 패킷에 대해 패리티 패킷을 갱신시키고 데이터 패킷을 즉시 전송할 수 있도록 함으로써 송신측에서 발생하는 지연을 최소화할 수 있는 효과가 달성된다.
또한, 데이터 전송 중 손실된 패킷을 복원할 수 있으므로, 우수한 품질의 서비스를 가능하게 하며, 특히 인터넷 상에서의 비디오 서비스 등에 적용되는 경우 뛰어난 화질의 서비스를 제공할 수 있다.

Claims (21)

  1. FEC(Forward Error Correction) 코딩 방식에 기초한 가변길이 패킷 송신 방법에 있어서,
    a) 송신될 입력 데이터 패킷이 존재하는 경우 데이터 패킷을 입력받는 단계; 및
    b) 상기 입력되는 데이터 패킷을 특정 저장 폭을 갖는 2차원 저장 장치에 가상적으로 연결하여 배치하면서 FEC 코딩을 수행하여 대응되는 패리티 패킷을 산출하고, 상기 산출된 패리티 패킷을 상기 2차원 저장 장치에 배치하며, 상기 데이터 패킷과 상기 데이터 패킷의 상기 2차원 저장 장치 내에서의 위치인 오프셋, 상기 데이터 패킷의 종류, 및 상기 패리티 패킷을 송신하는 단계
    를 포함하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  2. 제1항에 있어서,
    상기 단계 a) 전에,
    c) 상기 FEC 코딩에 필요한 특정 파라미터의 사용이 약속되어 있는 지의 여부를 판단하는 단계; 및
    d) 상기 특정 파라미터의 사용이 약속되어 있지 않는 것으로 판단되는 경우, 상기 특정 파라미터를 결정하고 송신하는 단계
    를 더 포함하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  3. 제2항에 있어서,
    상기 특정 파라미터에는 상기 2차원 저장 장치의 폭, 패리티 패킷의 개수 및 연관된 패킷 그룹을 결정하는 인수가 포함되는 것을 특징으로 하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  4. 제3항에 있어서,
    상기 연관된 패킷 그룹이 상기 데이터 패킷과 이에 대응되는 패리티 패킷들의 집합인 것을 특징으로 하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  5. 제1항에 있어서,
    상기 단계 b)가
    i) 상기 패리티 패킷의 송신 여부를 결정하는 인수의 값을 누적하는 단계;
    ii) 상기 입력 데이터 패킷을 상기 2차원 저장 장치에 가상적으로 연결하여 배치하는 단계;
    iii) 상기 입력 데이터 패킷에 대응되도록 패리티 패킷을 갱신하는 단계;
    iv) 상기 데이터 패킷의 복원을 위한 정보 및 상기 데이터 패킷을 포함한 확장 데이터 패킷을 송신하는 단계;
    v) 패리티 패킷을 송신할 시점인지의 여부를 판단하는 단계;
    vi) 상기 단계 v)에서 패리티 패킷을 송신할 시점인 경우 상기 패리티 패킷을 송신하는 단계; 및
    vii) 상기 단계 i)에서의 패리티 패킷의 송신 여부를 결정하는 인수의 값을 초기화하는 단계
    를 포함하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  6. 제5항에 있어서,
    상기 단계 vi)가
    송신할 패리티 패킷 개수를 결정하는 단계;
    송신된 패리티 패킷 개수가 상기 결정된 송신할 패리티 패킷 개수 이상인 지의 여부를 판단하는 단계;
    상기 판단된 송신된 패리티 패킷 개수가 상기 결정된 송신할 패리티 패킷 개수보다 작은 경우 데이터 패킷 복원을 위한 정보 및 패리티 패킷을 포함한 확장 패리티 패킷을 송신하는 단계;
    상기 송신된 패리티 패킷 개수를 누적하는 단계; 및
    상기 판단된 송신된 패리티 패킷 개수가 상기 결정된 송신할 패리티 패킷 개수 이상인 경우 패리티 패킷과 상기 송신된 패리티 패킷 개수를 초기화하는 단계
    를 포함하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  7. 제5항에 있어서,
    상기 단계 i)에서의 패리티 패킷의 송신 여부를 결정하는 인수는 입력되는데이터 패킷의 크기, 입력되는 데이터 패킷의 개수, 또는 시간 정보인 것을 특징으로 하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  8. 제5항에 있어서,
    상기 단계 v)에서의 패리티 패킷을 송신할 시점은 입력되는 데이터 패킷의 누적된 크기가 특정 연관된 패킷 그룹의 문턱치 크기 이상이거나, 또는 입력되는 데이터 패킷의 누적된 개수가 특정 연관된 패킷 그룹의 데이터 패킷 문턱치 개수 이상이거나, 또는 특정 연관된 패킷 그룹의 누적된 경과 시간이 문턱치 시간 이상일 경우인 것을 특징으로 하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  9. 제5항에 있어서,
    상기 데이터 패킷 복원을 위한 정보가 상기 확장 패킷의 헤더 부분에 포함되는 것을 특징으로 하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  10. 제5항에 있어서,
    상기 데이터 패킷 복원을 위한 정보에는
    상기 데이터 패킷의 경우 상기 패킷의 종류 및 패킷의 오프셋이 포함되고,
    상기 패리티 패킷의 경우 상기 패킷의 종류, 상기 연관된 패킷 그룹 내의 데이터 패킷의 전체 크기가 포함되는
    것을 특징으로 하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  11. 제10항에 있어서,
    상기 데이터 패킷 복원을 위한 정보에는, 상기 패리티 패킷의 경우 데이터 패킷의 오프셋이 더 포함되는 것을 특징으로 하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  12. 제5항에 있어서,
    상기 패리티 패킷의 갱신이 상기 2차원 저장 장치에 배치된 데이터를 특정 길이로 연산하여 수행되는 것을 특징으로 하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  13. 제6항에 있어서,
    상기 송신할 패리티 패킷 개수는 패킷이 송신될 채널의 상태에 따라 결정되는 것을 특징으로 하는 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  14. 제1항에 있어서,
    상기 데이터 패킷을 상기 2차원 저장 장치에 가상적으로 연결하여 배치하는 것은 상기 2차원 저장 장치에 배치될 데이터 패킷들을 각각 연결하여 저장하되, 그 저장 길이가 상기 2차원 저장 장치의 저장폭이 되도록 하는 것을 의미하는 것인 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
  15. FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법에 있어서,
    a) 수신되는 확장 패킷이 존재하는 경우 확장 패킷을 수신하여 특정 저장 폭을 갖는 2차원 저장 장치에 가상적으로 연결하여 배치하는 단계; 및
    b) FEC 디코딩을 수행하여 상기 수신된 확장 패킷으로부터 데이터 패킷을 복원한 후 상위 계층으로 전달하는 단계
    를 포함하는 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법.
  16. 제15항에 있어서,
    상기 단계 a) 전에,
    c) 상기 FEC 디코딩에 필요한 특정 파라미터의 사용이 약속되어 있는 지의 여부를 판단하는 단계; 및
    d) 상기 특정 파라미터의 사용이 약속되어 있지 않는 것으로 판단되는 경우, 상기 특정 파라미터를 송신측으로부터 수신하는 단계
    를 더 포함하는 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법.
  17. 제15항에 있어서,
    상기 단계 a)가
    i) 확장 패킷을 수신하는 단계;
    ii) 상기 수신된 확장 패킷이 확장 데이터 패킷인지 확장 패리티 패킷인 지의 여부를 판단하는 단계;
    iii) 상기 단계 ii)에서 수신된 확장 패킷이 데이터 패킷을 포함하는 확장 데이터 패킷이면 데이터 패킷과 데이터 패킷 복원을 위한 정보를 분리하는 단계;
    iv) 상기 단계 ii)에서 수신된 확장 패킷이 패리티 패킷을 포함하는 확장 패리티 패킷이면 패리티 패킷과 데이터 패킷 복원을 위한 정보를 분리하는 단계; 및
    v) 상기 단계 iii)또는 iv)에서 분리된 데이터 패킷과 패리티 패킷을 상기 특정된 2차원 저장 장치에 차례로 배치하는 단계
    를 포함하는 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법.
  18. 제15항에 있어서,
    상기 단계 b)가
    i) 연관된 패킷 그룹을 상기 상위 계층으로 전달할 시점인 지의 여부를 판단하는 단계; 및
    ii) 상기 단계 i)에서 상기 연관된 패킷 그룹을 상기 상위 계층으로 전달할 시점인 것으로 판단되는 상기 분리된 데이터 패킷을 상기 상위 계층으로 전달하는 단계
    를 포함하는 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법.
  19. 제18항에 있어서,
    상기 단계 i)에서 상기 연관된 패킷 그룹을 상기 상위 계층으로 전달할 시점이 상기 연관된 패킷 그룹 내의 마지막 패킷 또는 다음 연관된 패킷 그룹 내의 패킷이 도착하거나 또는 특정 시간이 경과한 시점인 것을 특징으로 하는 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법.
  20. 제18항에 있어서,
    상기 단계 ii)가
    ㄱ) 상기 분리된 데이터 패킷에 손실이 있는 지의 여부를 판단하는 단계;
    ㄴ) 상기 데이터 패킷에 손실이 있는 것으로 판단되는 경우, 복원 가능한 부분이 있는 지의 여부를 판단하는 단계;
    ㄷ) 상기 단계 ㄴ)에서 복원 가능한 부분이 있는 것으로 판단되는 경우 상기 손실된 데이터 패킷을 복원하는 단계;
    ㄹ) 상기 ㄷ)에서 복원되지 않은 부분이 있는 지의 여부를 판단하는 단계;
    ㅁ) 상기 단계 ㄴ)에서 복원 가능한 부분이 없는 것으로 판단되거나, 또는 상기 단계 ㄹ)에서 복원되지 않은 부분이 있는 경우, 상기 상위 계층으로 손실 위치를 전달하는 단계; 및
    ㅂ) 상기 단계 ㄱ)에서 데이터 패킷의 손실이 없는 경우 수신된 데이터 패킷을 상위 계층으로 전달하거나, 상기 단계 ㄷ)에서 복원된 데이터가 있을 경우 복원된 데이터 패킷을 포함한 수신 데이터 패킷을 상기 상위 계층으로 전달하는 단계
    를 포함하는 FEC 코딩 방식에 기초한 가변길이 패킷 수신 방법.
  21. 제1항에 있어서,
    상기 확장 패킷을 상기 2차원 저장 장치에 가상적으로 연결하여 배치하는 것은 상기 2차원 저장 장치에 배치될 확장 패킷들을 연결하여 저장하되, 그 저장 길이가 상기 2차원 저장 장치의 저장폭이 되도록 하는 것을 의미하는 것인 FEC 코딩 방식에 기초한 가변길이 패킷 송신 방법.
KR10-2002-0024387A 2002-05-03 2002-05-03 Fec 코딩 방식에 기초한 가변길이 패킷 송수신 방법 KR100458878B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR10-2002-0024387A KR100458878B1 (ko) 2002-05-03 2002-05-03 Fec 코딩 방식에 기초한 가변길이 패킷 송수신 방법
US10/428,730 US7409627B2 (en) 2002-05-03 2003-05-02 Method for transmitting and receiving variable length packets based on forward error correction (FEC) coding
FR0305474A FR2839405B1 (fr) 2002-05-03 2003-05-05 Procede de transmission et de reception de paquets de longueur variable base sur le codage fec(forward error correction)
JP2003128438A JP3798387B2 (ja) 2002-05-03 2003-05-06 Fec符号化方式に基づいた可変長パケット送信方法及び受信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0024387A KR100458878B1 (ko) 2002-05-03 2002-05-03 Fec 코딩 방식에 기초한 가변길이 패킷 송수신 방법

Publications (2)

Publication Number Publication Date
KR20030086037A true KR20030086037A (ko) 2003-11-07
KR100458878B1 KR100458878B1 (ko) 2004-12-03

Family

ID=29578114

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0024387A KR100458878B1 (ko) 2002-05-03 2002-05-03 Fec 코딩 방식에 기초한 가변길이 패킷 송수신 방법

Country Status (4)

Country Link
US (1) US7409627B2 (ko)
JP (1) JP3798387B2 (ko)
KR (1) KR100458878B1 (ko)
FR (1) FR2839405B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013055182A1 (en) * 2011-10-13 2013-04-18 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving forward error correction packet in mobile communication system
WO2013055181A1 (en) * 2011-10-13 2013-04-18 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving forward error correction packet in mobile communication system
KR20150084099A (ko) * 2014-01-13 2015-07-22 삼성전자주식회사 통신 시스템에서 데이터 채널 모델의 파라미터 추정 방법 및 시스템

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004171206A (ja) * 2002-11-19 2004-06-17 Hitachi Ltd ストレージシステム
US20050013274A1 (en) * 2003-03-05 2005-01-20 Harri Pekonen System and method for data transmission and reception
US7437593B2 (en) * 2003-07-14 2008-10-14 International Business Machines Corporation Apparatus, system, and method for managing errors in prefetched data
US7328393B2 (en) * 2004-04-13 2008-02-05 Cisco Technology, Inc. Forward error correction in packet networks
TWI377564B (en) * 2004-08-17 2012-11-21 Panasonic Corp Information storage medium and multiplexing device
KR100825548B1 (ko) * 2004-08-17 2008-04-28 마쯔시다덴기산교 가부시키가이샤 정보 기록 매체, 데이터 분별 장치, 및 데이터 재생 장치
WO2006018887A1 (ja) * 2004-08-19 2006-02-23 Mitsubishi Denki Kabushiki Kaisha メディア配信装置、メディア受信装置及びメディア伝送システム
US20060077890A1 (en) * 2004-10-07 2006-04-13 Nokia Corporation Efficient source blocking algorithm for FEC for MBMS streaming
JP4485383B2 (ja) * 2005-03-03 2010-06-23 日本電信電話株式会社 データ送受信システム及びデータ送信装置
WO2007095551A2 (en) 2006-02-13 2007-08-23 Digital Fountain, Inc. Fec streaming with aggregation of concurrent streams for fec computation
US8732559B2 (en) * 2006-07-25 2014-05-20 Thomson Licensing Recovery from burst packet loss in internet protocol based wireless networks using staggercasting and cross-packet forward error correction
JP4250654B2 (ja) * 2006-11-17 2009-04-08 株式会社東芝 通信装置、通信方法および通信プログラム
WO2008139882A1 (ja) * 2007-05-08 2008-11-20 Nec Corporation 通信システムおよび通信方法、並びに、プログラム
US7940759B2 (en) * 2007-06-22 2011-05-10 Newport Media, Inc. Robust technique for frame synchronization in DAB-IP systems
JP5075536B2 (ja) * 2007-09-03 2012-11-21 株式会社東芝 Fec送信処理装置、ならびにfec送信処理のための方法およびプログラム
KR101436982B1 (ko) * 2007-10-12 2014-09-03 삼성전자주식회사 반도체 집적 회로 및 그것의 검사 방법
US8250441B2 (en) * 2007-12-11 2012-08-21 Wi-Lan Inc. Outer coding framework for application packet error rate minimization
US8004963B2 (en) * 2008-02-27 2011-08-23 Audividi Inc. Apparatus and method for packet redundancy and recovery
US8145975B2 (en) * 2008-02-28 2012-03-27 Ip Video Communications Corporation Universal packet loss recovery system for delivery of real-time streaming multimedia content over packet-switched networks
JP4930449B2 (ja) * 2008-04-24 2012-05-16 株式会社Jvcケンウッド 前方誤り復元方式受信装置および前方誤り復元方式受信出力方法
US8139655B2 (en) * 2008-06-09 2012-03-20 Sony Corporation System and method for effectively transferring electronic information
CN101902315B (zh) * 2009-06-01 2013-04-17 华为技术有限公司 基于前向纠错的重传方法、设备和通信系统
FR2949632B1 (fr) * 2009-08-28 2012-05-18 Commissariat Energie Atomique Procede d'egalisation de la taille des paquets de donnees par blocs d'un flux multimedia
US8543893B2 (en) * 2009-09-02 2013-09-24 Agere Systems Llc Receiver for error-protected packet-based frame
JP2011193434A (ja) * 2009-10-28 2011-09-29 Panasonic Corp パリティパケットを用いた通信方法、通信装置及び中継器
KR101286912B1 (ko) * 2009-12-18 2013-07-16 한국전자통신연구원 3차원 저장장치를 이용한 가변길이 패킷의 fec 인코딩 및 fec 디코딩 방법
US9769092B2 (en) * 2010-01-18 2017-09-19 Marvell International Ltd. Packet buffer comprising a data section and a data description section
KR101829923B1 (ko) * 2011-10-13 2018-02-22 삼성전자주식회사 데이터 통신 시스템에서 부호화 장치 및 방법
JP5755213B2 (ja) * 2012-11-22 2015-07-29 トムソン ライセンシングThomson Licensing スタガーキャスティング及びクロスパケット前方誤り訂正を用いたインターネットプロトコル型無線ネットワークでのバーストパケット損失からの回復
WO2014157857A1 (en) 2013-03-25 2014-10-02 Samsung Electronics Co., Ltd. Data communication method and apparatus using forward error correction
JP6205232B2 (ja) * 2013-10-15 2017-09-27 日本放送協会 送信装置、受信装置

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5115436A (en) * 1990-05-04 1992-05-19 Bell Communications Research Forward error correction code system
US5636316A (en) * 1990-12-05 1997-06-03 Hitachi, Ltd. Picture signal digital processing unit
JP3428033B2 (ja) * 1992-02-19 2003-07-22 株式会社日立製作所 ディジタルvtr
JPH06216963A (ja) 1993-01-14 1994-08-05 Matsushita Electric Ind Co Ltd 固定長フレームによるデータ伝送、再構成方法
AU665716B2 (en) * 1993-07-05 1996-01-11 Mitsubishi Denki Kabushiki Kaisha A transmitter for encoding error correction codes and a receiver for decoding error correction codes on a transmission frame
JPH0787099A (ja) 1993-09-14 1995-03-31 Toshiba Corp Atm網における誤り制御方法
JPH07240749A (ja) 1993-12-28 1995-09-12 Matsushita Electric Ind Co Ltd セル送信方法とその装置
JPH07336692A (ja) 1994-06-07 1995-12-22 Toshiba Corp デジタル伝送システムの誤り訂正装置
JP3614907B2 (ja) * 1994-12-28 2005-01-26 株式会社東芝 データ再送制御方法及びデータ再送制御システム
US5852706A (en) * 1995-06-08 1998-12-22 Sony Corporation Apparatus for recording and reproducing intra-frame and inter-frame encoded video data arranged into recording frames
JP3193288B2 (ja) 1995-08-03 2001-07-30 株式会社エヌ・ティ・ティ・ドコモ 可変長符号データ伝送装置
US5717689A (en) * 1995-10-10 1998-02-10 Lucent Technologies Inc. Data link layer protocol for transport of ATM cells over a wireless link
CA2235373C (en) * 1995-10-24 2004-12-07 General Instrument Corporation Variable length burst transmission over the physical layer of a multilayer transmission format
US5724345A (en) * 1995-12-13 1998-03-03 Lucent Technologies Inc. System and method for a scalable and reliable transmission of electronic software distribution
US6012159A (en) * 1996-01-17 2000-01-04 Kencast, Inc. Method and system for error-free data transfer
US5883891A (en) * 1996-04-30 1999-03-16 Williams; Wyatt Method and apparatus for increased quality of voice transmission over the internet
GB2318246B (en) * 1996-10-09 2000-11-15 Sony Uk Ltd Processing digitally encoded signals
JP2998659B2 (ja) * 1996-10-11 2000-01-11 日本電気株式会社 誤り制御装置
KR19980052678A (ko) 1996-12-24 1998-09-25 이종수 원거리 고장통보 기능을 갖는 인버터
JP3571918B2 (ja) 1997-06-04 2004-09-29 株式会社東芝 符号伝送方法、送信装置、受信装置および通信システム
US6081907A (en) * 1997-06-09 2000-06-27 Microsoft Corporation Data delivery system and method for delivering data and redundant information over a unidirectional network
US6000053A (en) * 1997-06-13 1999-12-07 Microsoft Corporation Error correction and loss recovery of packets over a computer network
US6243846B1 (en) * 1997-12-12 2001-06-05 3Com Corporation Forward error correction system for packet based data and real time media, using cross-wise parity calculation
CA2313330C (en) * 1997-12-12 2005-02-15 3Com Corporation A forward error correction system for packet based real-time media
JP3896206B2 (ja) 1997-12-16 2007-03-22 インターナショナル・ビジネス・マシーンズ・コーポレーション Eccブロック構造を使用する記憶装置のための符号化方法及びシステム
US6141788A (en) * 1998-03-13 2000-10-31 Lucent Technologies Inc. Method and apparatus for forward error correction in packet networks
US6445717B1 (en) * 1998-05-01 2002-09-03 Niwot Networks, Inc. System for recovering lost information in a data stream
US6317462B1 (en) * 1998-10-22 2001-11-13 Lucent Technologies Inc. Method and apparatus for transmitting MPEG video over the internet
JP2000308052A (ja) 1999-04-16 2000-11-02 Sony Corp データ受信方法およびデータ受信装置
US6563879B1 (en) * 1999-05-17 2003-05-13 Lucent Technologies Inc. Method and apparatus for enabling transmission of variable length encoded data in a low signal to noise ratio environment
US7228063B2 (en) 1999-12-03 2007-06-05 Sony Corporation Recording apparatus and method, and reproducing apparatus and method
WO2001058171A1 (en) 2000-02-03 2001-08-09 Sony Corporation Recording device and method, and reproducing device and method
JP2004503979A (ja) * 2000-06-16 2004-02-05 アウェア, インコーポレイテッド Ldpc変調用システムおよびその方法
US6745364B2 (en) * 2001-06-28 2004-06-01 Microsoft Corporation Negotiated/dynamic error correction for streamed media
US7003712B2 (en) * 2001-11-29 2006-02-21 Emin Martinian Apparatus and method for adaptive, multimode decoding
US7017102B1 (en) * 2001-12-27 2006-03-21 Network Equipment Technologies, Inc. Forward Error Correction (FEC) for packetized data networks
KR100464366B1 (ko) * 2002-02-16 2005-01-03 삼성전자주식회사 순방향 오류 정정 장치 및 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013055182A1 (en) * 2011-10-13 2013-04-18 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving forward error correction packet in mobile communication system
WO2013055181A1 (en) * 2011-10-13 2013-04-18 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving forward error correction packet in mobile communication system
US10270472B2 (en) 2011-10-13 2019-04-23 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving forward error correction packet in mobile communication system
US10637506B2 (en) 2011-10-13 2020-04-28 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving forward error correction packet in mobile communication system
US10972135B2 (en) 2011-10-13 2021-04-06 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving forward error correction packet in mobile communication system
KR20150084099A (ko) * 2014-01-13 2015-07-22 삼성전자주식회사 통신 시스템에서 데이터 채널 모델의 파라미터 추정 방법 및 시스템

Also Published As

Publication number Publication date
US7409627B2 (en) 2008-08-05
JP2004032719A (ja) 2004-01-29
FR2839405B1 (fr) 2007-10-05
KR100458878B1 (ko) 2004-12-03
US20030226092A1 (en) 2003-12-04
JP3798387B2 (ja) 2006-07-19
FR2839405A1 (fr) 2003-11-07

Similar Documents

Publication Publication Date Title
KR100458878B1 (ko) Fec 코딩 방식에 기초한 가변길이 패킷 송수신 방법
KR101286912B1 (ko) 3차원 저장장치를 이용한 가변길이 패킷의 fec 인코딩 및 fec 디코딩 방법
US7233264B2 (en) Information additive code generator and decoder for communication systems
CN110943800B (zh) 数据包的发送方法、装置及系统、存储介质、电子装置
EP1214793B9 (en) Group chain reaction encoder with variable number of associated input data for each output group code
US7451381B2 (en) Reliable method and system for efficiently transporting dynamic data across a network
EP2103026B1 (en) A method to support forward error correction for real-time audio and video data over internet protocol networks
US20120005549A1 (en) Transfer apparatus, transfer program, and transfer method
KR20100112151A (ko) 네트워크 카드 및 정보 처리 장치
JP3638939B2 (ja) ヘッダ復元装置およびヘッダ復元方法
JP2004007799A (ja) データ伝送方法およびデータ処理方法
AU2011365883A1 (en) Method and system for updating reorder depth in robust header compression
JP2004215307A (ja) ヘッダ復元装置およびヘッダ復元方法

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: 20121031

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20131024

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20141027

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20151028

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20161027

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20171027

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20181025

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20191028

Year of fee payment: 16