Changes between Version 4 and Version 5 of Software


Ignore:
Timestamp:
Sep 29, 2005, 10:51:07 PM (19 years ago)
Author:
max
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Software

    v4 v5  
    1818[[BR]]Figure 2.  ORBIT Hardware ([wiki:ddd enlarge]).
    1919
    20 Each '''ORBIT Radio Node''' is a PC with a 1 GHz VIA C3 processor, 512 MB of RAM, 20 GB of local disk, two 100BaseT Ethernet ports, two 802.11 a/b/g cards and a Chassis Manager to control the node, see Figure 4.  The Chassis Manager has a 10BaseT Ethernet port.  The two 100BaseT Ethernet ports are for Data and Control.  The Data ports are available to the experimenter.  The Control port is used to load and control the ORBIT node and collect measurements.
     20Each '''ORBIT Radio Node''' is a PC with a 1 GHz VIA C3 processor, 512 MB of RAM, 20 GB of local disk, two 100BaseT Ethernet ports, two 802.11 a/b/g cards and a Chassis Manager to control the node, see Figure 3.  The Chassis Manager has a 10BaseT Ethernet port.  The two 100BaseT Ethernet ports are for Data and Control.  The Data ports are available to the experimenter.  The Control port is used to load and control the ORBIT node and collect measurements.
    2121
    22 Figure 4.  '''ORBIT Radio Node''' (see page 3 of [http://www.orbit-lab.org/download/presentations/Orbit_Hardware.pdf]).
     22[[Image(node-50.png)]]
     23[[BR]]Figure 3. Orbit node.
    2324
    24 ==== Software components ====
    25 Besides commercial software like Matlab™ and Excel™ and open-source software like Linux, Ruby and MySQL, there are two other types of software used with the '''ORBIT Radio Grid Testbed''':  ORBIT-developed and user-developed.  Most ORBIT-developed software provides the ORBIT Services as illustrated in Figure 1 above.  ORBIT Services are integrated with the control hardware of the '''ORBIT Radio Grid Testbed''' and its servers.
     25== Software components ==
    2626
    27 The main component of the Experiment Management Service is the '''Node Handler''' that functions as an Experiment Controller.  It multicasts experiment scripts to the nodes.  It keeps track of each step and sends the information to each node at the appropriate time.  The '''Node Agent''' software component resides on each node and listens to commands from the '''Node Handler''' and reports information back to the '''Node Handler'''.  The combination of these two components controls the testbed and enables the automated collection of experimental results.  Because the '''Node Handler''' uses a rule-based approach to monitoring and controlling experiments, occasional feedback from experimenters may be required to fine tune its operation.
     27
     28The main component of the Experiment Management Service is the '''Node Handler''' that functions as an Experiment Controller.  It multicasts commands to the nodes at the appropriate time and keeps track of their execution.  The '''Node Agent''' software component resides on each node and listens to commands from the '''Node Handler''' and reports information back to the '''Node Handler'''.  The combination of these two components controls the testbed and enables the automated collection of experimental results.  Because the '''Node Handler''' uses a rule-based approach to monitoring and controlling experiments, occasional feedback from experimenters may be required to fine tune its operation.
    2829
    2930The disk-loading '''Frisbee''' server is designed to quickly load hard disk images onto the nodes using a scalable multicast protocol.  It allows different groups of nodes to run different OS images.
     
    3334Besides ORBIT Services, other ORBIT-developed software includes '''Libmac''' and the '''ORBIT Measurement Framework'''.  Each provides procedures that may be called in user-developed applications.  '''Libmac''' is a user-space C library that allows applications to inject and capture MAC layer frames, manipulate wireless interface parameters at both aggregate and per-frame levels, and communicate wireless interface parameters over the air on a per-frame level.
    3435
    35 The '''ORBIT Measurement Framework (OML)''' has a client/server architecture illustrated in Figure 5 below.  '''OML''' uses IP multicast to send data to the measurement server as it is collected.  '''OML''' includes a client application programming interface (API).  A developer can use this client API through a web interface to define the measurement points and parameters for his or her application.  Such definitions are saved as an XML-based configuration file and source code for the measurement client is automatically generated that contains application-specific methods that handle type-safe data collection.  This source code can be compiled and linked with the application.
     36The '''ORBIT Measurement Framework (OML)''' has a client/server architecture illustrated in Figure 4 below.  '''OML''' uses IP multicast to send data to the measurement server as it is collected.  '''OML''' includes a client application programming interface (API).  A developer can use this client API through a web interface to define the measurement points and parameters for his or her application.  Such definitions are saved as an XML-based configuration file and source code for the measurement client is automatically generated that contains application-specific methods that handle type-safe data collection.  This source code can be compiled and linked with the application.
    3637
    37 Figure 5. '''OML''' component architecture (see page 3 of [http://www.orbit-lab.org/download/publications/Orbit_OML.pdf]).
     38[[Image(oml-50.png)]]
     39[[BR]]Figure 4. '''OML''' component architecture.
    3840
    3941User-developed software includes the script for the experiment, the application(s) and any modifications to system software.  The user-developed script for the experiment contains three static components:  the configuration of nodes, the configuration of the application software, and the configuration of the '''ORBIT Measurements Framework and Library (OML)'''.  The application is one or more programs that implement the intended behavior of the active nodes in the experiment.  Modified system software may include modified Linux components or custom device drivers.  Each of these types of user-developed software is covered in more detail in the Testbed Experiments section of this tutorial.
    4042
    41 The interaction of the various commercial, open-source, user-developed and ORBIT-developed software components during the conduct of an experiment is illustrated in Figure 6 below.  Note that experimental results are available via the web.
    4243
    43 Figure 6.  Running an Experiment (see page 3 of [http://www.orbit-lab.org/download/presentations/Orbit_Software.pdf]).
    44 
    45