问题描述
我正在实现一个自定义网络协议,该协议位于应用程序和传输层(UDP)之间。该协议将应用程序层数据拆分为较小的块(数据包),并使用一些标头字段封装它们。 协议的标题如下所示(让我们暂时忽略每个字段的含义):
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Ver| Opt Len |O|C| Rsvd. | Protocol Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Ver
是2位,Opt Len
是6位,O
和C
都是1位,Rsvd
是6位,{{1} }是16位。假设我有每个字段所需的值。
我将如何在C中构建此标头字符串? 我正在考虑使用位移运算符,但不确定如何操作。
此外,如果我接收到该协议的数据包(带有这些标头字段)作为字符串。如何解封装该数据包并获取标头字段的所有值?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)