仅使用以太网帧的Windows网络

时间:2009-04-01 01:33:11

标签: networking winsock ethernet

我正在做一个项目,我必须为连接到Windows机器的设备编写网络库。复杂的问题在于我只能使用以太网帧与设备通信。所以根本就没有TCP / UDP / IP。我不认为bind / listen / accept方法可以在这里应用,但也许我错了。此外,不涉及路由或切换。

我有几个问题。如何使用套接字与此设备通信? winsock是否只支持帧?我无法找到很多这方面的资源。有没有人对我该如何进行有任何想法?

使用套接字是个好主意还是我可以用适当的标题发送信息?

3 个答案:

答案 0 :(得分:2)

使用WinPCap,它有一个API来发送和收听原始数据 您可以使用它构建通信层。

答案 1 :(得分:1)

WinAoE code看一看 - 它说它让Windows通过以太网设备与ATA对话,这意味着它必须在没有任何网络堆栈的上层进行通信。

<强>编辑:

尽我所知,如果您想发送原始以太网帧,您需要NdisSend和朋友。

答案 2 :(得分:-1)

除了winpcap和NDIS之外,您还可以查看作为Windows API标准部分的原始套接字,并且不需要您编写驱动程序代码http://msdn.microsoft.com/en-us/library/ms740548(v=vs.85).aspx