diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 1998-08-19 20:29:35 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 1998-08-19 20:29:35 +0000 |
commit | ab0c6890bf4ab674877448a1a60e1e4ceeb38a3c (patch) | |
tree | 92130f4d4b24ec876d0a2231bf1f71538012d23b /doc/networking/networktasks.t | |
parent | changed version to 980819 (diff) | |
download | rtems-ab0c6890bf4ab674877448a1a60e1e4ceeb38a3c.tar.bz2 |
Baseline
Diffstat (limited to 'doc/networking/networktasks.t')
-rw-r--r-- | doc/networking/networktasks.t | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/doc/networking/networktasks.t b/doc/networking/networktasks.t new file mode 100644 index 0000000000..88b3af09b2 --- /dev/null +++ b/doc/networking/networktasks.t @@ -0,0 +1,60 @@ +@c +@c Written by Eric Norum +@c +@c COPYRIGHT (c) 1988-1998. +@c On-Line Applications Research Corporation (OAR). +@c All rights reserved. +@c +@c $Id$ +@c + +@chapter Network Task Structure and Data Flow + +A schematic diagram of the tasks and message @b{mbuf} queues in a +simple RTEMS networking application is shown in the following +figure: + +@ifset use-ascii +@example +@group +NO ASCII VERSION OF THE TASKING FIGURE IS AVAILABLE +@end group +@end example +@end ifset + +@ifset use-tex +@c for now use the ascii version +@example +@group +NO TEX VERSION OF THE TASKING FIGURE IS AVAILABLE +@end group +@end example +@end ifset + +@ifset use-html +@html +<IMG SRC="networking.gif" ALIGN=CENTER + ALT="Network Task Structure and Data Flow"> +@end html +@end ifset + + +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. |