use{async_trait::async_trait,std::io};pubmodencoding;pubmodnetwork;pubmodstatus;#[async_trait]pubtraitPacketTransport: Send + Sync {/// Sends a single data packet.
async fnsend(&self, data:&[u8])->io::Result<()>;/// Receives a single data packet.
async fnrecv(&self)->io::Result<Vec<u8>>;}