For applications with high load and low delay requirements the Fountain codes, a set of rate-less codes, particularly suited. Fountain codes are still end-to-end: packets are encoded at the source and decoded at the receiver. If I'm not mistaken, random linear network coding has higher robustness and adaptability in non-mesh networks over fountain codes.