diff --git a/README.md b/README.md
index ae71ceb6a..e9bd0bbca 100644
--- a/README.md
+++ b/README.md
@@ -140,4 +140,5 @@ export SKYWALKING_RUN=true
- [SkyWalking Analysis部署运行常见问题. The FAQ of SkyWalking Analysis deployment](QA/deploy-sw_analysis-problem.md)
# 源代码说明
+* [网络传输协议、缓存文件协议说明. the protocols of transform between agent and collector, collector buffer file](doc/protocol.md)
* [追踪日志明细存储结构说明. the storage structure of tracking logs](skywalking-server/doc/hbase_table_desc.md)
diff --git a/doc/protocol.md b/doc/protocol.md
new file mode 100644
index 000000000..a18735b22
--- /dev/null
+++ b/doc/protocol.md
@@ -0,0 +1,69 @@
+## network-protocol
+* 描述采集传输过程中的包结构
+
+
+
+ | 包长度(4位) |
+ 正文 |
+ 校验和(4位) |
+
+
+ | 子数据包1 |
+ 子数据包2 |
+ …… (n) |
+
+
+ | 子包长度(4位) |
+ 子包类型(4位) |
+ 子包正文 |
+ 子包长度(4位) |
+ 子包类型(4位) |
+ 子包正文 |
+ …… (n) |
+
+
+
+## buffer-file-protocol
+* 描述collector-server使用本地缓存的文件结构
+
+### 标准文件结构
+
+
+ | 包长度(4位) |
+ 正文 |
+ 分隔符(4位)127,127,127,127 |
+
+
+ | 子数据包1 |
+ 子数据包2 |
+ …… (n) |
+
+
+ | 子包长度(4位) |
+ 子包类型(4位) |
+ 子包正文 |
+ 子包长度(4位) |
+ 子包类型(4位) |
+ 子包正文 |
+ …… (n) |
+
+
+
+### 文件结束标识性数据包
+
+
+ | 包长度(4位) |
+ 正文 |
+ 分隔符(4位)127,127,127,127 |
+
+
+ | 子数据包1 |
+
+
+ | 子包长度(4位) |
+ 子包类型(4位) |
+ EOFSpan |
+
+
+
+* 更为详细的结构,可以参考protocol.xlsx
diff --git a/doc/protocol.xlsx b/doc/protocol.xlsx
new file mode 100644
index 000000000..f02cd12da
Binary files /dev/null and b/doc/protocol.xlsx differ