full duplex datamover implementation