【技术领域】
本发明属于计算机软件通讯领域,具体是指一种基于PYTHON语言的TCP/UDP数据的自动组包与解包的方法。
【背景技术】
在计算机软件通讯领域,TCP是一种面向连接的保证可靠传输的协议。通过TCP协议传输,得到的是一个顺序的无差错的数据流。UDP是与TCP相对应的协议,是一种无连接的协议,每个数据报都是一个独立的信息。TCP/UDP分别被应用到不到的领域,例如TCP应用在远程连接(Telnet)、超文本传输(HTTP)和文件传输(FTP);UDP应用在视频会议系统等。
目前基于TCP/UDP的通讯协议的组包和解包大部分都是程序代码中直接处理方法,收到数据时转到相应的协议处理器进行处理,需要编写每个协议的代码,而协议结构有变动时又要修改代码方能使用,非常的不灵活、且不易于系统的扩展;而对于处在调式和测试阶段的程序则更需要对协议一个字段一个字段的构造和分析,这个过程非常的繁琐和复杂且极易因为协议的复杂而造成构造和分析的出错。
【发明内容】
本发明所要解决的技术问题之一在于提供一种基于PYTHON语言的TCP/UDP数据的自动组包的方法,有效地提高了开发、测试TCP/UDP通讯的程序的效率。
本发明所要解决的技术问题之二在于提供一种基于PYTHON语言的TCP/UDP数据的解包的方法,有效地提高了开发、测试TCP/UDP通讯的程序的效率。
本发明采用以下技术方案解决上述技术问题之一:
一种基于PYTHON语言的TCP/UDP通讯数据包组包方法,其特征在于:以XML文件形式定义通讯的数据结构,形成数据包与配置结构建立一一对应关系的转换关系映射表并且常驻内存,通过转换关系映射表自动完成组包,具体步骤为:
步骤10&