70 likes | 269 Views
ALC track. M. Luby, Digital Fountain. ALC track overall status. ALC PI – RFC 3450 pub as Experimental LCT BB – RFC 3451 pub as Experimental FEC BB – RFC 3452 pub as Experimental FEC INFO – RFC 3452 pub as Informational WEBRC BB – past WG last call – to IESG?? Compact FEC BB
E N D
ALC track M. Luby, Digital Fountain
ALC track overall status • ALC PI – RFC 3450 pub as Experimental • LCT BB – RFC 3451 pub as Experimental • FEC BB – RFC 3452 pub as Experimental • FEC INFO – RFC 3452 pub as Informational • WEBRC BB – past WG last call – to IESG?? • Compact FEC BB • Scoped by the FEC BB • Draft 00 • Should go to WG last call soon Experimental RFC
Compact FEC BB • A supplement to RFC 3452 (FEC building block) • Introduces two new FEC Encoding IDs • FEC Encoding ID 0 (Fully-specified) • No coding • Useful for interoperability testing • Requested by several entities • FEC Encoding ID 130 (Under-specified) • Similar to FEC Encoding ID 128 • More compact payload header • Relaxes requirements from FEC Encoding IDs 128 and 129 • Object length not required as part of FEC OTI
FEC Payload ID • FEC Payload ID for existing 128 -------+-------+-------+-------+-------+-------+-------+-------+ | Src. Blk. No. | Enc. Sym. ID | -------+-------+-------+-------+-------+-------+-------+------ 32 bits 32 bits • FEC Payload ID for new 0 and 130 -------+-------+-------+-------+ | SrcBlkNo | EncSymID | -------+-------+-------+-------+ 16 bits 16 bits
FEC Object Transmission Info. • FEC Encoding ID (0 or 130) • FEC Instance ID (only for 130 since it is Under-Specified) • Encoding Symbol Length • Source Block Length • Not the object length (different than RFC 3452) • Allows for delivery of objects of unknown length • May not be able to obtain object length before transmission starts • On-line compression or encryption is used • Transmitted object length != Delivered object length • Object is a stream • Object has no a priori length • Recommend for others when RFC 3452 Proposed Standard
FEC Encoding ID 0 • Definitions • L = Encoding Symbol Length (in bytes) • X = Source Block Length (in bytes) • N = X/L rounded up (recommended to be integral) • Source Block consists of N pieces each of length L • Sender • Sender chooses Y randomly in range [0,…,N-1] • Sends carousels pieces Y, Y+1, Y+2, … (mod N) • Receiver • For a Source Block with Source Block Number I, do the following: • Allocate and initializes a boolean array RECEIVED[0,…,N-1] to all false • Allocate a byte array SRCBLK[0,…,N*L-1] • When piece Y arrives: • RECEIVED[Y] is set to true • The piece is placed into bytes SRCBLK[L*Y,…,L*(Y+1)-1] • Source Block I is recovered when RECEIVED[0,…,N-1] are all true
Available FEC codes • Fully-Specified • No Coding (FEC Encoding ID 0) • Under-Specified • Luigi Rizzo’s implementation of Reed-Solomon codes • Embedded Fountain Core Technology • Digital Fountain’s most powerful encoder/decoder • Development and Product License programs • www.digitalfountain.com/products/licensing/index.cfm • Licensing@digitalfountain.com