编程语言
首页 > 编程语言> > 解析c#bootp服务器的二进制数据?

解析c#bootp服务器的二进制数据?

作者:互联网

我需要一个C#.NET应用程序作为bootp服务器.该协议非常简单,但我不知道构建/解析二进制数据的简单方法.

有任何想法吗:
alt text http://www.tcpipguide.com/free/diagrams/bootpformat.png

解决方法:

有几种方法可以做到这一点.您可以使用诸如StructLayout之类的marshaling attributes来将结构打包到字节数组中,但这可能很棘手并且不值得付出努力.

您可以使用专门的框架(如Protobuf)来定义类,使其序列化以匹配您需要的结构.

但根据我的经验,创建像这样的二进制结构的最简单,最快速,最灵活的方法是使用MemoryStream类来保存byes的缓冲区,然后使用它周围的BinaryWriter实际将二进制数据写入流中.

无论如何,有一个工作服务器可供参考.使用Wireshark或Microsoft Network Monitor等工具捕获有线流量,这样您就可以将有线格式与已知可用的示例进行比较.

标签:c,binary,binary-data,bootp
来源: https://codeday.me/bug/20190701/1343586.html