source: rtems/doc/networking/networktasks.t @ 071536e

4.104.114.84.95
Last change on this file since 071536e was ab0c689, checked in by Joel Sherrill <joel.sherrill@…>, on 08/19/98 at 20:29:35

Baseline

  • Property mode set to 100644
File size: 1.7 KB
Line 
1@c
2@c  Written by Eric Norum
3@c
4@c  COPYRIGHT (c) 1988-1998.
5@c  On-Line Applications Research Corporation (OAR).
6@c  All rights reserved.
7@c
8@c  $Id$
9@c
10
11@chapter Network Task Structure and Data Flow
12
13A schematic diagram of the tasks and message @b{mbuf} queues in a
14simple RTEMS networking application is shown in the following
15figure:
16
17@ifset use-ascii
18@example
19@group
20NO ASCII VERSION OF THE TASKING FIGURE IS AVAILABLE
21@end group
22@end example
23@end ifset
24
25@ifset use-tex
26@c for now use the ascii version
27@example
28@group
29NO TEX VERSION OF THE TASKING FIGURE IS AVAILABLE
30@end group
31@end example
32@end ifset
33
34@ifset use-html
35@html
36<IMG SRC="networking.gif" ALIGN=CENTER
37     ALT="Network Task Structure and Data Flow">
38@end html
39@end ifset
40
41
42The transmit task  for each network interface is normally blocked waiting
43for a packet to arrive in the transmit queue.  Once a packet arrives, the
44transmit task may block waiting for an event from the transmit interrupt
45handler.  The transmit interrupt handler sends an RTEMS event to the transmit
46task to indicate that transmit hardware resources have become available.
47
48The receive task for each network interface is normally blocked waiting
49for an event from the receive interrupt handler.  When this event is received
50the receive task reads the packet and forwards it to the network stack
51for subsequent processing by the network task.
52
53The network task processes incoming packets and takes care of
54timed operations such as handling TCP timeouts and
55aging and removing routing table entries.
56
57The `Network code' contains routines which may run in the context of
58the user application tasks, the interface receive task or the network task.
59A network semaphore ensures that
60the data structures manipulated by the network code remain consistent.
Note: See TracBrowser for help on using the repository browser.