Navigation


Changes between Initial Version and Version 1 of TBSimple


Ignore:
Timestamp:
Jun 17, 2010, 5:52:22 PM (14 years ago)
Author:
Sebastien Decugis
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TBSimple

    v1 v1  
     1[[PageOutline(2-4)]]
     2
     3== Simple testbed ==
     4
     5This is the simplest configuration for testing with freeDiameter.
     6
     7This testbed involves only two peers directly connected, and the [wiki:test_app.fdx test_app] application is used to exchange a message over Diameter between these two peers.
     8
     9{{{
     10#!graphviz
     11graph G {
     12    graph [bgcolor="#E8E8E8C8"];
     13    rankdir = "LR"
     14    node [shape=box];
     15    edge [color=blue];
     16    cli [
     17         label="cli.simple.testbed.aaa"
     18         URL="#cli.simple.testbed.aaa"
     19    ]
     20    serv [
     21         label="serv.simple.testbed.aaa"
     22         URL="#serv.simple.testbed.aaa"
     23    ]
     24    cli -- serv [label=Diameter];
     25}
     26}}}
     27
     28
     29=== Screencast ===
     30
     31This first video shows the [wiki:test_app.fdx test_app] extension in action in the simple testbed. The video shows two consoles, bottom-left and top-right. Bottom-left is the client, upper-right the server.
     32
     33It is recommended to watch the video in HD and fullscreen.
     34
     35[[Embed(youtube=FQwPBncbIxQ&hd=1,w=660,h=525)]]
     36
     37Here is what happens in the video:
     38 * (0:00 ~ 0:04) Very short explanation.
     39 * (0:00 ~ 0:38) Preparation of freeDiameter, using cmake.
     40 * (0:39 ~ 2:15) Compilation (with make).
     41 * (2:24 ~ 2:35) Start the daemon on both peers.
     42 * (2:36 ~ 3:00) Check connection status in the logs.
     43 * (3:00 ~ 3:50) Trig the {{{test_app}}} "ping" and watch the effect on the logs.
     44 * (3:51 ~ 4:03) Stop the daemon.
     45
     46=== Configuration files ===
     47
     48Please note that these files may have been updated since the time the video was created. However, the purpose of the testbed remains the same.
     49
     50==== Scripts ====
     51The following scripts are referenced in this video:
     52 [source:VirtualTestbed/scripts/freeDiameter-install.sh freeDiameter-install.sh]::
     53   Install missing dependencies (!Debian/Ubuntu), configure the source (running {{{cmake}}}).
     54
     55 [source:VirtualTestbed/scripts/freeDiameter-run.sh freeDiameter-run.sh]::
     56   Compile the sources ({{{make}}}), then start the daemon.
     57
     58 [source:VirtualTestbed/scripts/freeDiameter-trig.sh freeDiameter-trig.sh]::
     59   Send the USR1 signal to the daemon in a loop, to trig the {{{test_app}}} action.
     60
     61==== cli.simple.testbed.aaa ====
     62
     63These are the configuration files for freeDiameter on the client:
     64 [source:VirtualTestbed/conf/cli.simple.testbed.aaa/freeDiameter/CMakeFlags CMakeFlags]::
     65   The flags passed to {{{cmake}}} (on the command-line) when preparing the source. The noticeable ones are:
     66    * {{{-DBUILD_TEST_APP:BOOL=ON}}} : compile the [wiki:test_app.fdx] extension.
     67    * {{{-DBUILD_DBG_MONITOR:BOOL=ON}}} : compile the [wiki:dbg_monitor.fdx] extension.
     68
     69 [source:VirtualTestbed/conf/cli.simple.testbed.aaa/freeDiameter/freeDiameter.conf freeDiameter.conf]::
     70   The main freeDiameter configuration file. It simply indicates to load the two extensions and to connect to the server.
     71
     72 [source:VirtualTestbed/conf/cli.simple.testbed.aaa/freeDiameter/test_app.conf test_app.conf]::
     73   Configuration file for the test_app extension. It can be changed to test different routing properties for example (by changing Destination-Realm value).
     74
     75==== serv.simple.testbed.aaa ====
     76
     77The server uses these files: [source:VirtualTestbed/conf/serv.simple.testbed.aaa/freeDiameter/CMakeFlags CMakeFlags], [source:VirtualTestbed/conf/serv.simple.testbed.aaa/freeDiameter/freeDiameter.conf freeDiameter.conf], and [source:VirtualTestbed/conf/serv.simple.testbed.aaa/freeDiameter/test_app.conf test_app.conf]. They are very similar to the client's one, so see previous section for explanations.