*impl: makes session send/recv use circular buffer