Asynchronous Layered Coding (ALC) is an Internet protocol for content delivery in a reliable, massively scalable, multiple-rate, and congestion-controlled manner. Specified in RFC 5775, it is an IETF proposed standard.
The protocolis specifically designed to provide massive scalability using IPmulticast as the underlying network service. Massive scalability inthis context means the number of concurrent receivers for an objectis potentially in the millions, the aggregate size of objects to bedelivered in a session ranges from hundreds of kilobytes to hundredsof gigabytes, each receiver can initiate reception of an objectasynchronously, the reception rate of each receiver in the session isthe maximum fair bandwidth available between that receiver and thesender, and all of this can be supported using a single sender.
Because ALC is focused on reliable content delivery, the goal is todeliver objects as quickly as possible to each receiver while at thesame time remaining network friendly to competing traffic. Thus, thecongestion control used in conjunction with ALC should strive tomaximize use of available bandwidth between receivers and the senderwhile at the same time backing off aggressively in the face ofcompeting traffic.
The sender side of ALC consists of generating packets based onobjects to be delivered within the session and sending theappropriately formatted packets at the appropriate rates to thechannels associated with the session. The receiver side of ALCconsists of joining appropriate channels associated with the session,performing congestion control by adjusting the set of joined channelsassociated with the session in response to detected congestion, andusing the packets to reliably reconstruct objects. All informationflow in an ALC session is in the form of data packets sent by asingle sender to channels that receivers join to receive data.
ALC does specify the Session Description needed by receivers beforethey join a session, but the mechanisms by which receivers obtainthis required information is outside the scope of ALC. Anapplication that uses ALC may require that receivers reportstatistics on their reception experience back to the sender, but themechanisms by which receivers report back statistics is outside thescope of ALC. In general, ALC is designed to be a minimal protocolinstantiation that provides reliable content delivery withoutunnecessary limitations to the scalability of the basic protocol.
referenceEver curious about what that abbreviation stands for? fullforms has got them all listed out for you to explore. Simply,Choose a subject/topic and get started on a self-paced learning journey in a world of fullforms.
Allow To Receive Free Coins Credit 🪙