A stand-alone Ethernet controller comprising: a serial interface for coupling said stand-alone Ethernet controller with an external processor; a system control unit configured to receive commands from the serial interface, wherein the commands provide for reading and writing of registers and for executing functions of the stand-alone Ethernet controller; an Ethernet input/output port; a buffer memory for storing data packets by the Ethernet input port from an external device; a data flow control unit coupled with the Ethernet input/output port for controlling the data flow to the Ethernet controller; a packet counter being accessible to said external processor; packet counter control logic for incrementing and decrementing the packet counter, wherein said packet counter is incremented when a data packet has been written into the buffer memory and decremented when said system control unit processed a packet read command received through said interface from the external processor; a first register for storing a first watermark or an offset value (Offset) from which the first watermark is derived; a comparator logic (240, 250) comprising a first comparator and being coupled to the packet counter and receiving said first watermark and being configured to send control signals to the data flow control unit, wherein when a packet counter value is greater or equal to said first watermark, an Ethernet transmission signal is sent to the external device which prevents the external device from further transmissions to the stand-alone Ethernet controller; a second register for storing a second watermark being lower than said first watermark, wherein the comparator logic comprises a second comparator coupled to the second register and wherein when a packet counter value is equal or less than said second watermark, a further Ethernet transmission signal is sent to the external device which allows the external device to send further transmissions to the Ethernet controller; and a control register programmable for activating an automatic data flow control controlled by the packet counter, the first and second registers (220, 230) and comparator logic (240, 250) or a manual data flow control. a serial interface for coupling said stand-alone Ethernet controller with an external processor; a system control unit configured to receive commands from the serial interface, wherein the commands provide for reading and writing of registers and for executing functions of the stand-alone Ethernet controller; an Ethernet input/output port; a buffer memory for storing data packets by the Ethernet input port from an external device; a data flow control unit coupled with the Ethernet input/output port for controlling the data flow to the Ethernet controller; a packet counter being accessible to said external processor; packet counter control logic for incrementing and decrementing the packet counter, wherein said packet counter is incremented when a data packet has been written into the buffer memory and decremented when said system control unit processed a packet read command received through said interface from the external processor; a first register for storing a first watermark or an offset value (Offset) from which the first watermark is derived; a comparator logic (240, 250) comprising a first comparator and being coupled to the packet counter and receiving said first watermark and being configured to send control signals to the data flow control unit, wherein when a packet counter value is greater or equal to said first watermark, an Ethernet transmission signal is sent to the external device which prevents the external device from further transmissions to the stand-alone Ethernet controller; a second register for storing a second watermark being lower than said first watermark, wherein the comparator logic comprises a second comparator coupled to the second register and wherein when a packet counter value is equal or less than said second watermark, a further Ethernet transmission signal is sent to the external device which allows the external device to send further transmissions to the Ethernet controller; and a control register programmable for activating an automatic data flow control controlled by the packet counter, the first and second registers (220, 230) and comparator logic (240, 250) or a manual data flow control.