gpt4 book ai didi

java - Java中的数据包封装

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:07:18 25 4
gpt4 key购买 nike

我的数据通信类(class)分配给了我,要求我通过 UDP 封装 IP 数据包。然后我需要将这个手动制作的数据包封装到一个实际的 UDP 数据包中并通过 IP 发送它。这将产生以下协议(protocol)栈(蓝色表示我将手动创建的 header ):

enter image description here

在 Java 中有没有一种简单的方法可以做到这一点?我知道在 C 中我可以使用为 Linux 内核库中的 UDP 和 IP header 定义的结构,手动填充所有字段,并将信息连接到数据包中。但是,在 Java 中,我将无法访问 Linux 网络头文件。我也在尝试在不使用外部 API 的情况下执行此操作。

澄清一下,我计划使用 Eclipse 开发应用程序 Linux。

最佳答案

实际上,您可以尝试通过 Java Native Access 访问 Linux 内核库。

像这样:( http://jnaexamples.blogspot.tw/2012/03/java-native-access-is-easy-way-to.html )

您可以将 TCP 数据包结构包装在 native c 代码中,然后从 java 套接字发送。

同时,如果您想组装java中的TCP/IP数据结构。( http://jnetpcap.com/node/29 )

关于java - Java中的数据包封装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19773097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com