如何用 C# 设计 IP 解码器 [关闭]

问题描述 投票:0回答:0

打算用C#开发一个IP包解码器,需求如下:

  1. IP包类型可以是IPV4+UDP、IPV6+UDP、IPV4+IPV6、IPV4+IPV4、IPV6+IPV6等
  2. 输入一个bitstring,选择包类型,然后根据包类型的格式解码包,并在文本框中显示每个字段解析的结果,用户可以修改每个字段的值生成新的比特流。
  3. 界面大致如下图所示。 我的问题如下:
  4. 我打算用VS开发,会用到什么控件?我觉得textbox, treeview (select package type), panel, label, button会用到。
  5. 如何模块化和复用,比如IPv6 header(40 bytes)的显示要提取成一个模块或控件,这样可以直接复用在包含IPv6的包类型中。只要在IPV6 header中输入40个字节,就可以根据header的格式解析出各个字段的值并显示出来,那么是否可以为IPV6的显示设计一个单独的控件呢?但是我不太清楚这个控件应该如何设计和实现。 十几年前就用过C#,有一定的了解。希望能理清设计思路,尽快实现这个功能,少走弯路。请帮助并提供建议。提前致谢!

自己设计了大概的展示界面和用到的控件,就是不知道怎么把用来展示IPV4/IPV6/UDP的控件模块化

c# sockets udp controls
© www.soinside.com 2019 - 2024. All rights reserved.