Implement protocol on client side.