pub async fn scan( target: IpAddr, concurrency: usize, timeout: u64, min_port: u16, max_port: u16, tl_protocol: TransportLayerProtocol, out_writer: Box<dyn Write>, )