Rework UDP source and sink, with incompatible API changes