peer: implement messages (4, 5, 8)