增加protobuf的实现