Ethernet Filter

The RTX64 Ethernet Filter is an extensible interface between the RT-TCP/IP stack and a Real-time Network Device (RTND) driver. You can use this interface to filter all frames at the data link layer and send Ethernet frames directly to the RTND driver.

The filter layer is created as a Real-Time DLL (RTDLL). The filter is loaded by the stack and is associated with a given interface. Since it is an RTDLL, it can use all supported RTAPI calls.

Loading the Ethernet Filter

The Ethernet Filter is loaded when the RT-TCP/IP stack loads. Once you create a custom filter, you can associate the filter with an interface and configure it to be loaded by the stack using the RTX64 control panel.

Associated Functions

You can use these API functions within a filter. Functions required for filter RTDLL implementation are indicated.

Function Description Required or Optional

RtndReceiveFilter

Called when an incoming frame is received from the NIC driver.

Required

RtndReceiveFilterEx Called when an incoming Ethernet frame is received from the NIC driver. Required

RtndTransmitFilter

Called when an outgoing frame is transmitted to a NIC driver.

Required

RtndTransmitFilterEx Called when an outgoing Ethernet frame is received from the stack. Required

RtndFrameTransmit

Called when the filter wants to transmit a frame. You can also use this function when the application wants to transmit a frame to the next filter or to the driver. The frame bypasses the RT-TCP-IP Stack.

Optional

RtndFrameAllocate

Returns a pointer to a new frame. RtnFrameAllocate is used to obtain a frame from the RT-TCP/IP Stack.

Optional

RtndFrameFree

Used to return memory allocated for a frame back to the RT-TCP/IP Stack. RtnFrameFree is normally called by an application or filter to release unused frames.

Optional

RtndConfigureFilter

Used to perform any filter-level configuration.

Required

Related Topics