From 6c9e2f50cb8d4197ef997675c661bc7f69407cdb Mon Sep 17 00:00:00 2001 From: Nicola Baldo Date: Thu, 3 Jan 2013 19:19:40 +0100 Subject: [PATCH] improve documentation of LTE-EPC attributes --- src/lte/doc/source/lte-user.rst | 42 ++++++++++++++++++++++++++-- src/lte/examples/lena-dual-stripe.cc | 6 ++-- src/lte/helper/lte-helper.cc | 5 ++-- 3 files changed, 47 insertions(+), 6 deletions(-) diff --git a/src/lte/doc/source/lte-user.rst b/src/lte/doc/source/lte-user.rst index 652acebe8..95a129544 100644 --- a/src/lte/doc/source/lte-user.rst +++ b/src/lte/doc/source/lte-user.rst @@ -189,6 +189,27 @@ the default values that are registered in your particular build of the simulator, including lots of non-LTE attributes. +Many useful attributes of the LTE-EPC model will be described in the +following subsections. Still, there are many attributes which are not +explicitly mentioned in the design or user documentation, but which +are clearly documented using the ns-3 attribute system. You can easily +print a list of the attributes of a given object together with their +description and default value passing ``--PrintAttributes=`` to a simulation +program, like this:: + + ./waf --run lena-simple --command-template="%s --PrintAttributes=ns3::LteHelper" + + +You can try also with other LTE and EPC objects, like this:: + + ./waf --run lena-simple --command-template="%s --PrintAttributes=ns3::LteEnbNetDevice" + ./waf --run lena-simple --command-template="%s --PrintAttributes=ns3::LteEnbMac" + ./waf --run lena-simple --command-template="%s --PrintAttributes=ns3::LteEnbPhy" + ./waf --run lena-simple --command-template="%s --PrintAttributes=ns3::LteUePhy" + ./waf --run lena-simple --command-template="%s --PrintAttributes=ns3::EpcHelper" + + + Simulation Output ----------------- @@ -707,6 +728,13 @@ automatically take care of the necessary setup, such as S1 link creation and S1 bearer setup. All this will be done without the intervention of the user. +Calling ``lteHelper->SetEpcHelper (epcHelper)`` enables the use of +EPC, and has the side effect that any new ``LteEnbRrc`` that is +created will have the ``EpsBearerToRlcMapping`` attribute set to +``RLC_UM_ALWAYS`` instead of ``RLC_SM_ALWAYS`` if the latter was +the default; otherwise, the attribute won't be changed (e.g., if +you changed the default to ``RLC_AM_ALWAYS``, it won't be touched). + It is to be noted that, upon construction, the EpcHelper will also create and configure the PGW node. Its configuration in particular is very complex, and hence is done automatically by the Helper. Still, @@ -968,9 +996,19 @@ show how to simulate different LTE scenarios. Reference scenarios ------------------- -There is a vast amount of reference LTE simulation scenarios which can be found in the literature. Here we list some of them: +There is a vast amount of reference LTE simulation scenarios which can +be found in the literature. Here we list some of them: + + * The dual stripe model [R4-092042]_, which is partially implemented + in the example program + ``src/lte/examples/lena-dual-stripe.cc``. This example program + features a lot of configurable parameters which can be customize by + changing the corresponding global variable. To get a list of all these + parameters, you can run this command:: + + ./waf --run lena-dual-stripe --command-template="%s --PrintGlobals" + - * The dual stripe model [R4-092042]_, which is partially implemented in the example program ``src/lte/examples/lena-dual-stripe.cc`` * The system simulation scenarios mentioned in section A.2 of [TR36814]_ diff --git a/src/lte/examples/lena-dual-stripe.cc b/src/lte/examples/lena-dual-stripe.cc index 6d3e0423e..6f36306fe 100644 --- a/src/lte/examples/lena-dual-stripe.cc +++ b/src/lte/examples/lena-dual-stripe.cc @@ -299,8 +299,10 @@ static ns3::GlobalValue g_generateRem ("generateRem", ns3::BooleanValue (false), ns3::MakeBooleanChecker ()); static ns3::GlobalValue g_epc ("epc", - "if true, will setup the EPC to simulate an end-to-end topology;" - "if false, only the LTE radio access will be simulated.", + "If true, will setup the EPC to simulate an end-to-end topology, " + "with real IP applications over PDCP and RLC UM (or RLC AM by changing " + "the default value of EpsBearerToRlcMapping e.g. to RLC_AM_ALWAYS). " + "If false, only the LTE radio access will be simulated with RLC SM. ", ns3::BooleanValue (false), ns3::MakeBooleanChecker ()); static ns3::GlobalValue g_epcDl ("epcDl", diff --git a/src/lte/helper/lte-helper.cc b/src/lte/helper/lte-helper.cc index 30391c91f..9ba085a34 100644 --- a/src/lte/helper/lte-helper.cc +++ b/src/lte/helper/lte-helper.cc @@ -150,8 +150,9 @@ TypeId LteHelper::GetTypeId (void) MakeStringAccessor (&LteHelper::SetPathlossModelType), MakeStringChecker ()) .AddAttribute ("FadingModel", - "The type of fading model to be used", - StringValue (""), // fake module -> no fading + "The type of fading model to be used. If the type is set " + "to an empty string, no fading model is used.", + StringValue (""), MakeStringAccessor (&LteHelper::SetFadingModel), MakeStringChecker ()) .AddAttribute ("UseIdealRrc",