From ca49bfd73be27cae4a7df00da22e9e7ca5bd8dfa Mon Sep 17 00:00:00 2001 From: Amar Takhar Date: Sat, 16 Jan 2016 18:26:00 -0500 Subject: Split document. --- networking/network_task_structure.rst | 38 +++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 networking/network_task_structure.rst (limited to 'networking/network_task_structure.rst') diff --git a/networking/network_task_structure.rst b/networking/network_task_structure.rst new file mode 100644 index 0000000..78609dd --- /dev/null +++ b/networking/network_task_structure.rst @@ -0,0 +1,38 @@ +Network Task Structure and Data Flow +#################################### + +A schematic diagram of the tasks and message *mbuf* queues in a +simple RTEMS networking application is shown in the following +figure: + +.. image:: images/networkflow.jpg + + +The transmit task for each network interface is normally blocked waiting +for a packet to arrive in the transmit queue. Once a packet arrives, the +transmit task may block waiting for an event from the transmit interrupt +handler. The transmit interrupt handler sends an RTEMS event to the transmit +task to indicate that transmit hardware resources have become available. + +The receive task for each network interface is normally blocked waiting +for an event from the receive interrupt handler. When this event is received +the receive task reads the packet and forwards it to the network stack +for subsequent processing by the network task. + +The network task processes incoming packets and takes care of +timed operations such as handling TCP timeouts and +aging and removing routing table entries. + +The ‘Network code’ contains routines which may run in the context of +the user application tasks, the interface receive task or the network task. +A network semaphore ensures that +the data structures manipulated by the network code remain consistent. + +.. COMMENT: Written by Eric Norum + +.. COMMENT: COPYRIGHT (c) 1988-2002. + +.. COMMENT: On-Line Applications Research Corporation (OAR). + +.. COMMENT: All rights reserved. + -- cgit v1.2.3