more framework for generic transport