This group of functions allow applications to send and receive data via bulk pipes. These functions are synchronous, meaning it blocks and waits for the transfer to finish or timeout.