Кіріспе

Кодтау теориясындағы кодтар класы. Кодтау теориясында фонтан кодтары (сонымен қатар, жылдамдықсыз жою кодтары деп те аталады) – берілген бастапқы символдар жиынтығынан кодтау символдарының потенциалды шексіз тізбегін жасауға мүмкіндік беретін жою кодтарының класы. Мұндай жағдайда, бастапқы символдарды идеалды түрде кодтау символдарының бастапқы символдар санына тең немесе одан сәл ғана көп санындағы кез келген жиынтығынан қалпына келтіруге болады. "Фонтан" немесе "жылдамдықсыз" термині осы кодтардың белгілі бір кодтау жылдамдығына ие болмайтынын көрсетеді. Егер бастапқы k бастапқы символды кез келген k сәтті қабылданған кодтау символынан (яғни, жойылғандарды есептемегенде) қалпына келтіруге болады болса, онда фонтан коды оңтайлы болып саналады. Тиімді кодтау және декодтау алгоритмдеріне ие және k' кодтау символының кез келгенінен бастапқы k бастапқы символды жоғары ықтималдықпен қалпына келтіруге мүмкіндік беретін фонтан кодтары белгілі, мұнда k' k-дан сәл ғана үлкен. LT кодтары фонтан кодтарының алғашқы практикалық іске асырылуы болды. Содан кейін Raptor кодтары және онлайн кодтары енгізілді, олар кіріс символдарының алдын ала кодтау кезеңі арқылы сызықтық уақытты кодтау және декодтау күрделілігіне қол жеткізеді.

Қолданбалар

Су көздері кодтары тұрақты кодтау жылдамдығымен икемді түрде қолданылады, немесе белгіленген кодтау жылдамдығы алдын ала анықталмайтын және үлкен көлемдегі деректерді тиімді кодтау және декодтау қажет болған жағдайларда қолданылады. Мысалы, деректер каруселі, онда үлкен файл қабылдағыштар жиынтығына үздіксіз таратылады. Белгілі бір жылдамдықтағы жою кодын пайдаланғанда, бастапқы символдан айырылған (беріліс қатесінен туындаған) қабылдаушы купон жинаушының мәселесімен бетпе-бет келеді: ол әлі жоқ кодтау символын сәтті қабылдауы керек. Бұл мәселе дәстүрлі, қысқа ұзындықтағы жою кодын қолданғанда одан да айқын болады, себебі файл бірнеше блокқа бөлінуі керек, әрқайсысы жеке кодталады: қабылдаушы енді әр блок үшін қажетті жоғалған кодтау символдарының санын жинауы керек. Су көздері кодын пайдаланғанда, қабылдаушыға бастапқы символдар жиынтығынан сәл үлкен кез келген кодтау символдары жиынтығын алу жеткілікті. (Іс жүзінде, оператор желі мен қабылдағыштардың ерекшеліктеріне және қажетті сенімділік деңгейіне сүйене отырып, хабар таратуды белгілі бір уақытқа жоспарлайды, сондықтан су көздері коды файлдың таратылу жоспарланған уақытында динамикалық түрде анықталатын кодтау жылдамдығымен қолданылады.) Тағы бір қолданыс – сенімді көп тарату сценарийлеріндегі гибридтік ARQ: қабылдаушы сұраған паритеттік ақпарат көп тарату тобындағы барлық қабылдаушылар үшін пайдалы болуы мүмкін.

Стандарттарда

Раптор кодтары қазіргі уақытта ең тиімді фонтан кодтары болып табылады, олар өте тиімді сызықтық уақытты кодтау және декодтау алгоритмдеріне ие, сондай-ақ кодтау және декодтау үшін әрбір туынды символ үшін тек аз ғана тұрақты XOR операцияларын қажет етеді. IETF RFC 5053 жүйелі Раптор кодын егжей-тегжейлі сипаттайды, ол IETF-тен тыс көптеген стандарттарда қолданылған, мысалы, 3GPP MBMS стандартында файлдарды тарату және ағын қызметтерін ұсыну үшін, DVB H IPDC стандартында DVB желілері арқылы IP қызметтерін жеткізу үшін және DVB IPTV IP желісі арқылы коммерциялық теледидар қызметтерін ұсыну үшін. Бұл кодты бастапқы блоктарда 8192-ге дейін бастапқы символдармен және жалпы 65536-ға дейін кодталған символдармен пайдалануға болады. 1000 бастапқы символдан тұратын бастапқы блоктарға қолданғанда, бұл кодтың орташа салыстырмалы қабылдау үстеме шығыны 0,2% құрайды, ал салыстырмалы қабылдау үстеме шығыны 99,9999% ықтималдықпен 2%-дан кем болады. Салыстырмалы қабылдау үстеме шығыны – бұл бастапқы деректерді қалпына келтіру үшін бастапқы деректердің ұзындығынан артық қажетті қосымша кодталған деректер, бастапқы деректердің көлеміне пайызбен өлшенген. Мысалы, егер салыстырмалы қабылдау үстеме шығыны 0,2% болса, онда 1 мегабайт көлеміндегі бастапқы деректерді 1,002 мегабайт кодталған деректерден қалпына келтіруге болады. IETF RFC 6330 құжатында RaptorQ деп аталатын, икемділігі жоғары және қабылдауды жақсартатын, одан да жетілдірілген Раптор коды сипатталған. Аталған RaptorQ кодын бастапқы блоктарда 56403-қа дейін бастапқы символдармен және жалпы 16777216 кодталған символдармен пайдалануға болады. Бұл код бастапқы блоктан кез келген кодталған символдар жиынтығынан, бастапқы блоктағы бастапқы символдар санына тең болғанда, жоғары ықтималдықпен және сирек жағдайларда бастапқы блоктағы бастапқы символдар санынан сәл көп болғанда қалпына келтіре алады. RaptorQ коды ATSC A 331 (ATSC 3.0) стандартында көрсетілген ROUTE жүзеге асыруының ажырамас бөлігі болып табылады.