← 返回项目
可配置协议帧解析与回放工具
使用完全模拟帧格式验证增量解析、字段映射、校验、异常变异和离线回放的个人原型。
PythonTCPpytest协议解析
背景
不同帧格式若各自实现接收、解析和显示,会重复处理长度、字节序、校验与错误定位。原型尝试用受限格式描述复用公共结构能力。
问题与限制
需要同时处理任意 TCP 分片、多帧合并、非法长度、错误同步字、校验失败和回放时序;配置又不能演变为可执行任意代码的脚本系统。
职责
个人完成模拟格式定义、增量解析器、结构化错误、离线回放和 pytest 异常矩阵。
架构
格式加载器先验证配置并生成不可变描述;帧切分器恢复边界;字段解析器保留偏移证据;回放器按相对时间向模拟适配器输入记录。
难点
错误长度可能让缓冲区无限等待,自动重同步可能隐藏数据损坏,回放若使用系统时间会产生不稳定测试。
方案与取舍
设置最大帧长和明确恢复策略;错误使用结构化分类;回放依赖可注入单调时钟;配置仅允许白名单类型与算法名。
支持固定头、长度字段、基础整数与字节字段、受限校验算法、十六进制证据、任意分片输入、异常帧变异和离线回放。
验证与结果
已整理可执行的设计与测试矩阵,当前定位为个人验证原型,不宣称已接入真实设备或生产协议。
复盘
补充编码—解析往返性质测试、配置版本摘要和失败样本最小化;是否增加图形界面取决于真实使用频率。