1 | Network Task Structure and Data Flow |
---|
2 | #################################### |
---|
3 | |
---|
4 | A schematic diagram of the tasks and message *mbuf* queues in a |
---|
5 | simple RTEMS networking application is shown in the following |
---|
6 | figure: |
---|
7 | |
---|
8 | .. image:: images/networkflow.jpg |
---|
9 | |
---|
10 | |
---|
11 | The transmit task for each network interface is normally blocked waiting |
---|
12 | for a packet to arrive in the transmit queue. Once a packet arrives, the |
---|
13 | transmit task may block waiting for an event from the transmit interrupt |
---|
14 | handler. The transmit interrupt handler sends an RTEMS event to the transmit |
---|
15 | task to indicate that transmit hardware resources have become available. |
---|
16 | |
---|
17 | The receive task for each network interface is normally blocked waiting |
---|
18 | for an event from the receive interrupt handler. When this event is received |
---|
19 | the receive task reads the packet and forwards it to the network stack |
---|
20 | for subsequent processing by the network task. |
---|
21 | |
---|
22 | The network task processes incoming packets and takes care of |
---|
23 | timed operations such as handling TCP timeouts and |
---|
24 | aging and removing routing table entries. |
---|
25 | |
---|
26 | The 'Network code' contains routines which may run in the context of |
---|
27 | the user application tasks, the interface receive task or the network task. |
---|
28 | A network semaphore ensures that |
---|
29 | the data structures manipulated by the network code remain consistent. |
---|
30 | |
---|
31 | .. COMMENT: Written by Eric Norum |
---|
32 | |
---|
33 | .. COMMENT: COPYRIGHT (c) 1988-2002. |
---|
34 | |
---|
35 | .. COMMENT: On-Line Applications Research Corporation (OAR). |
---|
36 | |
---|
37 | .. COMMENT: All rights reserved. |
---|
38 | |
---|