Separated TransportInterfaceEndpoint from TransportInterface