请教一个双网口的问题
时间:10-02
整理:3721RD
点击:
我想实现一个双网口的模块,网口1上来的数据,根据端口号进行不同的处理,某个特定的端口上的数据需要直接转发到网口2上,同样网口2上来的数据也需要根据端口直接转发到网口1上。
这样的功能如何实现比较好,有哪些需要注意的地方
请多多指教!
这样的功能如何实现比较好,有哪些需要注意的地方
请多多指教!
有两个实现思路,一,就是利用linux提供的网络hook功能,在linux网络子系统把数据截获,把收到的数据进行分析,需要转发的通过另一个网口转发,二,就是在网络驱动程序的接收函数中,直接把接收的数据进行转发。
可以参看一下:双网口的网口交换功(转发)能的实现:http://hi.baidu.com/hunert/item/26026e2033753087ae48f554
实现的功能相当于是交换机的功能,网口1上来的数据,拆分后把要转发到网口2的数据在打包发送,其他端口号作不同的处理,同样网口2上来的数据也做相同的数据处理流程。
现在正在做一个应用就是双网卡的应用,希望以后可以多多交流下。
这个功能在LED显示屏的控制卡上经常使用,网络接口可以是双向的,相当于可以备份链路,一段链路断开,可以使用另外一段链路进行通信。 都是拆包、分包的过程
