我迷路了。我已经在网上搜索了几天,但我找不到答案。我或多或少是一个初学者套接字程序员,但我确实理解它。
我想做以下事情:
Java,C ++或C#。有一个易于使用的库,还是有一个允许我的核心类?我已经尝试过Java库jnetpcap,但这只会给我带来错误,即使在运行示例并遵循eclipse的安装指南时也是如此。
非常感谢任何帮助!
注意:它适用于Windows
答案 0 :(得分:4)
Java:Socket
http://download.oracle.com/javase/1.4.2/docs/api/java/net/Socket.html
Java:原始套接字
http://www.savarese.com/software/rocksaw/
C#:TCPClient
http://msdn.microsoft.com/en-us/library/system.net.sockets.tcpclient%28v=vs.71%29.aspx
C#:原始套接字
http://msdn.microsoft.com/en-us/library/system.net.sockets.socket.aspx
查找所有四个示例应该相当容易。
答案 1 :(得分:4)
答案 2 :(得分:3)
我在linux中使用了winsock,在linux中使用了socket,并使用了socket bsd。
这是我找到http://beej.us/guide/bgnet/output/html/multipage/index.html
的最佳指南编辑: Beej的指南包含所有内容:背景信息,简单示例,高级主题,如数据打包和一些幽默
答案 3 :(得分:0)
答案 4 :(得分:0)
添
每个数据包都需要一个固定长度标题,后跟Body和可选的预告片。固定的头长标题应该包含数据包长度(正文长度+预告片长度),时间戳,唯一数据包ID(用于将大数据包分成多个小数据包)等详细信息。
接收器将始终首先读取固定长度的报头并确定数据包长度并读取数据包的其余部分。
您需要在名称等每个可变长度元素之前附加大小。
简单数据包结构示例:
标题大小 - 1个字节
发送名称,ID,性别
等详细信息标题
[8] - 1字节//大小(姓名长度+姓名+ Id +性别)
体
[5] - 1字节//名称长度
[Jeeva] - N Bytes
[1000] - 1个字节ID
[0] - 1字节性别(0 - 男性,1女性)
注意:您需要注意Endianess。提出进一步的问题以澄清