add protocol doc