Using a webserver or TCP/IP UDP based service on the Host Application side

Q

How can I connect my Host Application Processor to the network to operate TCP/IP or UDP services like a Webserver or proprietary protocols?

A

We recommend to use Ethernet Interface Channel over DPM of the netX 90.

There are two options:

  1. Socket Interface
  2. RAW Ethernet (NDIS)

In case 1) the TCP/IP stack of the netX 90 Communication Firmware (LFW) is used. The application can open sockets. The application use the same MAC and IP address as the Realtime Ethernet Protocol (like PROFINET or Ethernet IP). From outside, the Real Time Ethernet and the Host Application look like one single device.

In case 2) the application use its own MAC address. From outside, the Real Time Ethernet and the Host Application look like two independent network devices. The TCP/IP stack (if required) must be implemented on the Host side. This case might be a good solution for Linux based hosts, which usually feature a TCP/IP stack anyway.

The communication bewteen the host application and the Socket / RAW Ethernet Interface is performed by mailbox packets over DPM Channel 1.

In both cases the same network hardware interface is used. It is not necessary and not recommended implementing a hardware-based solution with an additional external switch device.
Though netX 90 offers an MII interface, this is not supported by the Firmware (LFW). Serial or parallel DPM are the supported interfaces to connect an external host controller/processor

The recommended solutions above can be used in parallel to all Realtime Ethernet Protocol Stacks in a generic way (PROFINET, EthernetIP, EtherCAT (EoE), POWERLINK, ...)

Documentation

RAW Ethernet Channel:

https://hilscher.atlassian.net/wiki/display/DL/Ethernet+interface

Socket Interface

https://hilscher.atlassian.net/wiki/display/DL/Socket+interface

Linux Driver

Hilscher offers a Linux driver (commercial product) which features a NDIS interface. A virtual network card is visible in the system.

https://hilscher.atlassian.net/wiki/pages/viewpage.action?pageId=80905444