<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Moscow, Russian, April</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>modeling the RED active queue management algorithms: Modelica vs. Julia</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Anna Maria Yu. Apreutesey</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Anna V. Korolkova</string-name>
          <email>korolkova-av@rudn.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dmitry S. Kulyabov</string-name>
          <email>kulyabov-ds@rudn.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>141980</institution>
          ,
          <country country="RU">Russia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>6</institution>
          ,
          <addr-line>Miklukho-Maklaya St., Moscow, 117198</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Department of Applied Probability and Informatics, Peoples' Friendship University of Russia, RUDN University</institution>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>Laboratory of Information Technologies, Joint Institute for Nuclear Research</institution>
          ,
          <addr-line>6, Joliot-Curie St., Dubna, Moscow region</addr-line>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2020</year>
      </pub-date>
      <volume>1</volume>
      <fpage>3</fpage>
      <lpage>17</lpage>
      <abstract>
        <p>This work is devoted to the study of the capabilities of the Modelica and Julia programming languages for the implementation of a continuously discrete paradigm in modeling hybrid systems that contain both continuous and discrete aspects of behavior. A system consisting of an incoming stream that is processed according to the Transmission Control Protocol (TCP) and a router that processes trafic using the Random Early Detection (RED) algorithm acts as a simulated threshold system.</p>
      </abstract>
      <kwd-group>
        <kwd>active queue management</kwd>
        <kwd>simulation</kwd>
        <kwd>Modelica</kwd>
        <kwd>Julia</kwd>
        <kwd>Random Early Detection</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        The possible methods for investigating complex systems are the construction of a discrete
event model, the construction of a continuous model, and hybrid modeling [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Such hybrid
systems combine the operation of continuous and discrete elements, for example, systems with
a discrete control device and a control object with a continuous nature of operation [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. The
system for the further research is the hybrid model of the interaction of the data transmission
process via the Transmission Control Protocol (TCP) and the Random Early Detection (RED)
algorithm as an algorithm of regulating the flow state. When modeling TCP-like trafic, the
liquid (continuous) approach can be used, but it is especially important to consider discrete
transitions between TCP states and a discrete packet drop function in RED-type algorithms. It
is the hybrid approach that reflects these important features of the simulated system.
LGOBE
(D. S. Kulyabov)
(D. S. Kulyabov)
Workshop on information technology and scientific computing in the framework of the X International Conference
https://yamadharma.github.io/ (D. S. Kulyabov)
© 2020 Copyright for this paper by its authors.
      </p>
      <p>CEUR</p>
      <p>CEUR Workshop Proceedings (CEUR-WS.org)</p>
      <sec id="sec-1-1">
        <title>1.1. The structure of the article</title>
        <p>The structure of the article is as following. The 2 section describes the basic principles and the
mathematical model of the operation of the congestion control mechanism in the TCP protocol
with the RED queue management algorithm. The 3 section provides general information about
the physical modeling language Modelica which implements, among other things, a hybrid
paradigm, and this section also presents the implementation of the algorithm in the Modelica
language. The 4 section provides information on the Julia programming language and the
DiferentialEquations package for solving various diferential equations. Also in this section
some features of the Julia language are presented in the context of hybrid modeling by using
the example of the RED module implementation for active trafic management.</p>
      </sec>
      <sec id="sec-1-2">
        <title>1.2. Notations and conventions</title>
        <p>In the work we will use the following variables and notation. The main parameters of the
system are follows:
•  () is the average TCP window size (in packets);
• () is the average queue length (in packets);
• (̂) is the exponentially weighted moving average of the queue length;
•  (, ) is the Round Trip Time (RTT, sec);
•  () is the number of TCP sessions;
•  corresponds to the speed of procession of packets in the queue.</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>2. Random Early Detection as an active queue managment algorithm</title>
      <p>
        The authors have repeatedly described the research problems, the features of the phenomenon
under study, the construction of a mathematical model [
        <xref ref-type="bibr" rid="ref3 ref4">3, 4</xref>
        ].
      </p>
      <p>
        In data transmission networks, there is a global synchronization, during which TCP sources
send packets synchronously and also stop transmission synchronously. Such a stable
selfoscillating mode of the system operation afects the quality of network service, throughput and
latency negatively. The use of Active Queue Management algorithms, like RED [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], to control
trafic reduces the probability of global synchronization, but it does not completely eliminate it.
For some values of the initial parameters in the router settings, self-oscillations of the main
parameters occur in the system.
      </p>
      <p>An active queue management policy with a RED type algorithm is used to control and
prevent congestions in the queues of routers. Algorithms for managing the state of trafic can
be represented as control modules in network equipment. The advantage of this algorithm is
its eficiency and relatively simple implementation on network equipment.</p>
      <sec id="sec-2-1">
        <title>Let us describe a model for transmitting TCP-like trafic in which the dynamic flow rate is regulated by an RED type algorithm. The model consists of two elements - the packet-generating TCP source and the receiver, which is the queue of the router. It processes incoming packets in accordance with the control algorithm and notifies the source that the packets have reached their</title>
        <p>destination. The source and receiver interact through an intermediate link in accordance with
the control algorithm, i.e. the value of the average queue length afects the source parameters,
in particular, the size of the TCP congestion window.</p>
        <p>
          A mathematical model of the interaction of an incoming TCP stream and a router that
processes trafic using a RED-type control algorithm is the autonomous system of three diferential
equations [
          <xref ref-type="bibr" rid="ref6 ref7 ref8 ref9">6, 7, 8, 9</xref>
          ]:
 ( )̇ =
(̇) =
        </p>
        <p>1
 ()</p>
        <p>( max −  ) −
⎧(1 − ())
⎪
⎨
⎪max [(1 − ())
⎩
 () ()
 ()</p>
        <p>− ,
 () ()</p>
        <p>()
(̂)̇ = −   (̂) +   (),
 ()  ( −  ())
2  ( −  ())
( −  ()),
() &gt; 0,
− , 0 ] , () = 0,</p>
      </sec>
      <sec id="sec-2-2">
        <title>The (1) equation describes the dynamic change of the average TCP window size. The 1/ (, )</title>
        <p>element reflects the slow start TCP state, during which the window size increases per RTT.
The  ( max −  ) component, which is a Heaviside function, limits the growth of the TCP
window. The (1 − ()) () ()/ (, ) component in the (2) equation reflects the increase in
the queue length when packets arrive which corresponds to the average packet arrival rate.</p>
        <p>The (3) equation reflects the change of the (̂) — exponentially weighted moving average of
the queue length function operating as a low-pass filter. It is introduced for some smoothing
outliers of the queue length. As soon as the (̂) value exceeds some predetermined threshold
value, the router finds out that the system has started overloading and reports this to the source.</p>
        <p>The RED algorithm is controlled by the ( )̂ — piecewise probabilistic packet drop function
which can be written as a system of nonlinear equations.</p>
        <p>( )̂ =</p>
        <p>This function depends on the threshold values of the queue size  min and  max, as well as the
 max parameter that sets the part of packets that will be discarded if  ̂ reaches the maximum
value.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Modeling in the Modelica language</title>
      <p>
        The Modelica language was developed by the non-profit organization Modelica which also
develops a freely distributed library based on it. This object-oriented language of physical modeling is
used to solve a wide range of problems [
        <xref ref-type="bibr" rid="ref10 ref11">10, 11</xref>
        ]. Modelica is well suited for component-oriented
modeling of complex systems consisting of various physical components, also having control
(1)
(2)
(3)
(4)
components and elements oriented to individual processes. Let us demonstrate the application
of this language to hybrid modeling of communication network algorithms [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>The basis of the language is represented by classes that can be inherited. In Modelica classes
contain methods and fields that can have types of variability such as constant, parameter and
variable. In addition to methods and fields, the class contains functions and equations which are
defined in the e q u a t i o n section. One of the mandatory requirements of the Modelica program
is the coincident number of variables and equations.</p>
      <sec id="sec-3-1">
        <title>Let us declare the variables and parameters used as initial ones.</title>
        <p>R e a l p ( s t a r t = 0 . 0 ) ” D r o p p r o b a b i l i t y ” ;
R e a l w ( m i n = 1 . 0 , m a x = w m a x , s t a r t = 1 . 0 , f i x e d = t r u e ) ” T C P w i n d o w ” ;
R e a l q ( m a x = R , s t a r t = 0 . 0 , f i x e d = t r u e ) ” I n s t a n t q u e u e l e n g t h ” ;
R e a l q _ a v g ( s t a r t = 0 . 0 ) ” E W M S q u e u e l e n g t h ” ;</p>
        <p>
          The congestion control algorithm in the queues of the RED router in Modelica is implemented
as a R e d class [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. A discrete drop function is easily set in the main class using the standard i f
operator:
c l a s s R e d
e q u a t i o n
p = i f q _ a v g &lt; t h m i n * R
        </p>
        <p>t h e n 0 . 0
e l s e i f q _ a v g &gt; t h m a x * R</p>
        <p>t h e n 1 . 0
e l s e ( q _ a v g / R - t h m i n ) * p m a x / ( t h m a x - t h m i n ) ;</p>
        <p>In this implementation, the discrete element of the system interacts well with continuous
elements, the behaviour of which is also implemented in the main class of the program using
three equations:
e q u a t i o n
d e r ( w ) = w A d d ( w , w m a x , T ) + ( - 0 . 5 ) * w * d e l a y ( w , T , T ) * d e l a y ( p , T , T ) / d e l a y ( T , T , T ) ;
d e r ( q ) = q A d d ( p r e ( q ) , w , T , C , N , R ) ;
d e r ( q _ a v g ) = w q * C * ( q - q _ a v g ) ;</p>
      </sec>
      <sec id="sec-3-2">
        <title>In Modelica the d e r operator defines a time derivative. The delay is realized very simply with the help of the d e l a y operator, which makes it possible to work with the delay of both continuous and discrete system elements. The w A d d function limits the size of the TCP window:</title>
        <p>f u n c t i o n w A d d
i n p u t R e a l w I n , w m a x , T ;
o u t p u t R e a l w O u t ;
a l g o r i t h m
w O u t : = i f n o E v e n t ( w I n &gt; = w m a x ) t h e n 0 . 0 e l s e 1 . 0 / T ;
e n d w A d d ;</p>
        <p>The q A d d function sets the change in the average queue length depending on the discrete
packet drop function:
f u n c t i o n q A d d
i n p u t R e a l q , w , T , C , N , R ;
o u t p u t R e a l q O u t ;
p r o t e c t e d R e a l q 1 , q 2 ;
a l g o r i t h m
q 1 : = N * w / T - C ;
q 2 : = q + q 1 ;
q O u t : = i f q 2 &gt; R t h e n R - q e l s e i f q 2 &gt; 0 . 0 t h e n q 1 e l s e - q ;
e n d q A d d ;</p>
        <p>Additional restrictions on the size of  () and () variables are set using the w h e n operator
in the R e d class:
w h e n w &lt; = 1 . 0</p>
        <p>t h e n r e i n i t ( w , 1 . 0 ) ;
e n d w h e n ;
w h e n q &gt; = R</p>
        <p>t h e n r e i n i t ( q , R ) ;
e n d w h e n ;</p>
        <p>As a result of system modeling the dynamics of the change in  () , () , (̂) parameters was
obtained, presented in Figure 1. The graph shows that for some parameter values in the system
there is a stable self-oscillating mode of operation.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Modeling in the Julia language</title>
      <p>
        Julia is a high-level language designed for scientific and engineering calculations [
        <xref ref-type="bibr" rid="ref13 ref14 ref15 ref2">2, 13, 14, 15</xref>
        ].
      </p>
      <p>Let us describe the implementation of an Active Queue Management algorithm with a RED
control algorithm in Julia1.</p>
      <sec id="sec-4-1">
        <title>1We used the Julia-1.4.1.</title>
      </sec>
      <sec id="sec-4-2">
        <title>In this implementation, we used the DiferentialEquations package [ 16], designed for efective solution of diferential equations of various types, such as ordinary diferential equations, stochastic ordinary diferential equations, diferential algebraic and hybrid equations, as well as delay diferential equations.</title>
      </sec>
      <sec id="sec-4-3">
        <title>To install the package we will use the following command in Julia REPL:</title>
        <p>u s i n g P k g
P k g . a d d ( ” D i f f e r e n t i a l E q u a t i o n s ” )</p>
      </sec>
      <sec id="sec-4-4">
        <title>We will enable the package using the command:</title>
        <p>u s i n g D i f f e r e n t i a l E q u a t i o n s</p>
        <p>We set the vector of the initial system parameters p = ( T , N , C , w q , q _ m i n , q _ m a x , R , p _ m a x , w _ m a x ) .
The p r variable which is a function of the packet drop probability, acts as a global variable.
T = 0 . 5
N = 6 0 . 0
C = 1 0 * 1 0 0 0 0 0 0 . 0 / ( 8 . 0 * 5 0 0 )
w q = 0 . 0 0 0 4
q _ m i n = 0 . 2 5
q _ m a x = 0 . 5 0
R = 3 0 0 . 0
p _ m a x = 0 . 1
w _ m a x = 3 2 . 0
p = ( T , N , C , w q , q _ m i n , q _ m a x ,</p>
        <p>R , p _ m a x , w _ m a x )
p r = 0 . 0</p>
      </sec>
      <sec id="sec-4-5">
        <title>Since the original system of diferential equations contains delayed arguments, we define the</title>
        <p>history function h ( p , t ) which depends on the parameters vector p and time t . Next, we define
the delay of the  ( −  ()) variable in (1) equation:
h ( p , t ) = z e r o s ( 1 )
t a u = T
l a g s = [ t a u ]</p>
        <p>For our task, the R e d dynamic function describing the behaviour of diferential equations and
setting constraints for  ,  , (̂) parameters in DiferentialEquations will have the following
form:</p>
        <p>In the R e d function, we also set constraints for the  ,  , (̂) parameters.
e n d
f u n c t i o n q A d d ( q , w , T , C , N , R )
q 1 = N * w / T - C
q 2 = q + q 1
i f q 2 &gt; R</p>
        <p>r e t u r n R - q
e l s e i f q 2 &gt; 0
r e t u r n q 1
r e t u r n - q
e n d
e l s e
e n d</p>
      </sec>
      <sec id="sec-4-6">
        <title>Next we define the  parameter change function.</title>
      </sec>
      <sec id="sec-4-7">
        <title>One of the powerful tools of the DiferentialEquations package is callbacks, for which two</title>
        <p>functions are defined. A condition function is needed to check if an event has occurred. The
afect function is executed if an event has occurred.</p>
        <p>The discrete packet drop function is implemented as a controller which is updated every 0.01
seconds until the t f simulation time is reached. The t s t o p s array defines the sampling intervals
of the condition check, the function checks if t is one of the sample element.
t f = 3 0 . 0
t s t o p s = c o l l e c t ( 0 : 0 . 0 1 : t f )
f u n c t i o n c o n d i t i o n _ c o n t r o l _ l o o p ( u , t , i n t e g r a t o r )</p>
        <p>( t i n t s t o p s )
e n d</p>
        <p>
          Next, we determine the afect function, which is the controller. The c o n t r o l _ l o o p ! function
at each step calculates the new value of the packet drop probability function  depending on
the current values of the  ,  , (̂) parameters in accordance with the formula (4).
f u n c t i o n c o n t r o l _ l o o p ! ( i n t e g r a t o r )
g l o b a l p r
w = i n t e g r a t o r . u [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ]
q = i n t e g r a t o r . u [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ]
q _ a v g = i n t e g r a t o r . u [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]
i f ( q _ a v g &lt; q _ m i n * R )
        </p>
        <p>p r = 0 . 0
e l s e i f ( q _ a v g &gt; q _ m a x * R )</p>
        <p>p r = 1 . 0
e l s e p r = p _ m a x * ( q _ a v g / R - q _ m i n ) / ( q _ m a x - q _ m i n )
e n d
e n d</p>
      </sec>
      <sec id="sec-4-8">
        <title>Then we define a discrete type callback:</title>
        <p>c b = D i s c r e t e C a l l b a c k ( c o n d i t i o n _ c o n t r o l _ l o o p , c o n t r o l _ l o o p ! )</p>
      </sec>
      <sec id="sec-4-9">
        <title>Finally, we define the vector of the system initial state, the simulation time and call the DDEProblem package solver. The R e d function, vector of initial states, simulation time, and variables delay parameters are passed to its arguments:</title>
        <p>u 0 = [ 1 . 0 , 0 . 0 , 0 . 0 ]
t s p a n = ( 0 . 0 , t f )
p r o b = D D E P r o b l e m ( R e d , u 0 , h , t s p a n , p , c o n s t a n t _ l a g s = l a g s )
a l g = M e t h o d O f S t e p s ( T s i t 5 ( ) )
s o l = s o l v e ( p r o b , a l g , c a l l b a c k = c b , t s t o p s = t s t o p s )</p>
        <p>As a result of the simulation, we obtain a graph demonstrating the behaviour of the TCP
Reno window size and the average queue length, i.e. reflecting the dynamics of a queue in a
router (or gateway) with a queue management module using the RED algorithm (Figure 2).</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Results</title>
      <p>As a result of the study, two software complexes created in the programming languages Modelica
and Julia were obtained. Both of these complexes implement the same mathematical model of
a data transmission network with an active trafic control module operating according to the
RED algorithm. A numerical experiment conducted within the framework of both software
systems gives comparable results (see Figure 1 and Figure 2).</p>
    </sec>
    <sec id="sec-6">
      <title>6. Discussion</title>
      <p>Modelica and Julia languages are both domain-specific languages. However, Julia is considered
as the common language of scientific calculations, Modelica is considered as a specialized
language for modeling of dynamic, continuous and hybrid systems.</p>
      <p>The mathematical model of the RED algorithm is formulated using a hybrid approach.
Therefore, in the framework of the Modelica language, its implementation turned out to be quite
simple. In this language ordinary diferential equations are written with a delayed argument with
the help of high-level tools quite easily. In addition, the use of discrete elements is implemented
very clearly.</p>
      <p>Julia language is aimed at solving a wider range of tasks. Therefore, it does not have as many
syntax tools as the more specialized Modelica. In particular, the implementation of the hybrid
paradigm in Julia requires a higher qualification of the programmer than when working with
the Modelica language.</p>
      <p>
        For specialized applications, Julia requires a greater level of knowledge than specialized
languages such as Modelica. Julia is also a metalanguage and it can serve as the basis for the
construction of other languages. For example, the Modia extension [
        <xref ref-type="bibr" rid="ref17 ref18">17, 18</xref>
        ] was made to migrate
programs from Modelica to Julia (and possibly in the opposite direction).
      </p>
    </sec>
    <sec id="sec-7">
      <title>7. Conclusion</title>
      <p>The authors demonstrated the application of the continuous-discrete approach to the modeling
of non-linear systems with control. The simulated system is the system consisting of an
incoming stream processed according to the TCP protocol, as well as a router that processes
trafic using a RED algorithm.</p>
      <sec id="sec-7-1">
        <title>By comparing software implementations in the Modelica and Julia programming languages,</title>
        <p>the simplicity of hybrid systems modeling in Modelica is demonstrated, where continuous
system elements, implemented by using a system of diferential equations, interact with a
discrete packet drop function quite well. Restrictions for some system parameters are set using
the w h e n operator. Implementation of the delay is also possible for system elements of any
nature of functioning.</p>
        <p>Julia also provides the ability to model systems according to a hybrid paradigm. The
DifferentialEquations package allows to solve systems of diferential equations of various kinds,
including delay diferential equations. The continuous probabilistic function has been
successfully implemented using the callback option. A delayed argument to a continuous function is
implemented using the h ( p , t ) history function.</p>
        <p>Thus, the authors studied the capabilities of the Modelica and Julia programming languages in
modeling of hybrid systems containing both continuous and discrete aspects of behaviour. The
numerical simulation of the process of transmitting data via TCP and the process of regulating
the flow state using the RED algorithm in the event of congestion has been performed, graphs
demonstrating changes in the main parameters of the system have been obtained.</p>
      </sec>
    </sec>
    <sec id="sec-8">
      <title>Acknowledgments</title>
      <p>The reported study was funded by Russian Foundation for Basic Research (RFBR) according to
the research project No 19-01-00645 (Dmitry S. Kulyabov and Anna V. Korolkova, mathematical
model development). The publication has been prepared with the support of the “RUDN</p>
      <sec id="sec-8-1">
        <title>University Program 5-100” (Anna Maria Yu. Apreutesey, program development).</title>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A. V.</given-names>
            <surname>Korolkova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. R.</given-names>
            <surname>Velieva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. A.</given-names>
            <surname>Abaev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. A.</given-names>
            <surname>Sevastianov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Kulyabov</surname>
          </string-name>
          ,
          <source>Hybrid Simulation Of Active Trafic Management, Proceedings 30th European Conference on Modelling and Simulation</source>
          (
          <year>2016</year>
          )
          <fpage>685</fpage>
          -
          <lpage>691</lpage>
          .
          <source>doi:1 0 . 7 1</source>
          <volume>4 8 / 2 0 1 6 - 0 6 8 5 .</volume>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>D.</given-names>
            <surname>Färnqvist</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Strandemar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. H.</given-names>
            <surname>Johansson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. P.</given-names>
            <surname>Hespanha</surname>
          </string-name>
          ,
          <article-title>Hybrid Modeling of Communication Networks Using Modelica</article-title>
          ,
          <source>in: The 2nd International Modelica Conference</source>
          ,
          <year>2002</year>
          , pp.
          <fpage>209</fpage>
          -
          <lpage>213</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A. V.</given-names>
            <surname>Korolkova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Kulyabov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. R.</given-names>
            <surname>Velieva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I. S.</given-names>
            <surname>Zaryadov</surname>
          </string-name>
          ,
          <article-title>Essay on the study of the selfoscillating regime in the control system</article-title>
          , in: M.
          <string-name>
            <surname>Iacono</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          <string-name>
            <surname>Palmieri</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Gribaudo</surname>
          </string-name>
          , M. Ficco (Eds.),
          <source>33 European Conference on Modelling and Simulation, ECMS</source>
          <year>2019</year>
          , volume
          <volume>33</volume>
          of
          <article-title>Communications of the ECMS, European Council for Modelling and Simulation</article-title>
          , Caserta,
          <year>2019</year>
          , pp.
          <fpage>473</fpage>
          -
          <lpage>480</lpage>
          .
          <source>doi:1 0 . 7 1</source>
          <volume>4 8 / 2 0 1 9 - 0 4 7 3 .</volume>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Kulyabov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. V.</given-names>
            <surname>Korolkova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. R.</given-names>
            <surname>Velieva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. G.</given-names>
            <surname>Eferina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. A.</given-names>
            <surname>Sevastianov</surname>
          </string-name>
          ,
          <article-title>The Methodology of Studying of Active Trafic Management Module Self-oscillation Regime</article-title>
          , in: W. Zamojski,
          <string-name>
            <given-names>J.</given-names>
            <surname>Mazurkiewicz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Sugier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Walkowiak</surname>
          </string-name>
          , J. Kacprzyk (Eds.),
          <source>DepCoSRELCOMEX 2017. Advances in Intelligent Systems and Computing</source>
          , volume
          <volume>582</volume>
          <source>of Advances in Intelligent Systems and Computing</source>
          , Springer International Publishing, Cham,
          <year>2018</year>
          , pp.
          <fpage>215</fpage>
          -
          <lpage>224</lpage>
          .
          <source>doi:1 0 . 1 0</source>
          <volume>0 7 / 9 7 8 - 3 - 3 1 9 - 5 9 4 1 5 - 6</volume>
          _
          <fpage>2</fpage>
          1 .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>S.</given-names>
            <surname>Floyd</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Jacobson</surname>
          </string-name>
          ,
          <article-title>Random Early Detection Gateways for Congestion Avoidance</article-title>
          ,
          <source>IEEE/ACM Transactions on Networking</source>
          <volume>1</volume>
          (
          <year>1993</year>
          )
          <fpage>397</fpage>
          -
          <lpage>413</lpage>
          .
          <source>doi:1 0 . 1 1 0 9 / 9 0 . 2 5</source>
          <volume>1 8 9 2 .</volume>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>V.</given-names>
            <surname>Misra</surname>
          </string-name>
          ,
          <string-name>
            <surname>W.-B. Gong</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Towsley</surname>
          </string-name>
          ,
          <article-title>Fluid-Based Analysis of a Network of AQM Routers Supporting TCP Flows with an Application to RED</article-title>
          ,
          <source>ACM SIGCOMM Computer Communication Review</source>
          <volume>30</volume>
          (
          <year>2000</year>
          )
          <fpage>151</fpage>
          -
          <lpage>160</lpage>
          .
          <source>doi:1 0 . 1 1</source>
          <volume>4 5 / 3 4 7 0 5 7 . 3 4 7 4 2 1 .</volume>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>V.</given-names>
            <surname>Misra</surname>
          </string-name>
          ,
          <string-name>
            <surname>W.-B. Gong</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Towsley</surname>
          </string-name>
          ,
          <article-title>Stochastic Diferential Equation Modeling and Analysis of TCP-Windowsize Behavior</article-title>
          ,
          <source>Proceedings of PERFORMANCE 99</source>
          (
          <year>1999</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A. V.</given-names>
            <surname>Korolkova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Kulyabov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. A.</given-names>
            <surname>Sevastianov</surname>
          </string-name>
          , Combinatorial and Operator Approaches to RED Modeling,
          <source>Mathematical Modelling and Geometry</source>
          <volume>3</volume>
          (
          <year>2015</year>
          )
          <fpage>1</fpage>
          -
          <lpage>18</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>M.</given-names>
            <surname>Hnatič</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. G.</given-names>
            <surname>Eferina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. V.</given-names>
            <surname>Korolkova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Kulyabov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. A.</given-names>
            <surname>Sevastyanov</surname>
          </string-name>
          ,
          <article-title>Operator Approach to the Master Equation for the One-Step Process</article-title>
          ,
          <source>EPJ Web of Conferences</source>
          <volume>108</volume>
          (
          <year>2016</year>
          )
          <year>02027</year>
          .
          <source>doi:1 0 . 1 0</source>
          <volume>5 1</volume>
          / e p j c o
          <source>n f / 2</source>
          <volume>0 1 6 1 0 8 0 2 0 2 7</volume>
          .
          <article-title>a r X i v : 1 6 0 3 . 0 2 2 0 5</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>P.</given-names>
            <surname>Fritzson</surname>
          </string-name>
          ,
          <source>Principles of Object-Oriented Modeling and Simulation with Modelica 2</source>
          .1, Wiley-IEEE Press,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>P.</given-names>
            <surname>Fritzson</surname>
          </string-name>
          , Introduction to Modeling
          <source>and Simulation of Technical and Physical Systems with Modelica</source>
          , John Wiley &amp; Sons, Inc., Hoboken, NJ, USA,
          <year>2011</year>
          .
          <source>doi:1 0 . 1 0</source>
          <volume>0 2 / 9 7 8 1 1 1 8 0 9 4 2 5 9 .</volume>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>A.-M. Y. Apreutesey</surname>
            ,
            <given-names>A. V.</given-names>
          </string-name>
          <string-name>
            <surname>Korolkova</surname>
            ,
            <given-names>D. S.</given-names>
          </string-name>
          <string-name>
            <surname>Kulyabov</surname>
          </string-name>
          ,
          <article-title>Modeling RED algorithm modiifcations in the OpenModelica</article-title>
          , in: D. S. Kulyabov,
          <string-name>
            <given-names>K. E.</given-names>
            <surname>Samouylov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. A.</given-names>
            <surname>Sevastianov</surname>
          </string-name>
          (Eds.),
          <source>Proceedings of the Selected Papers of the 9th International Conference ”Information and Telecommunication Technologies and Mathematical Modeling of High-Tech Systems” (ITTMM-2019)</source>
          , Moscow, Russia,
          <source>April 15-19</source>
          ,
          <year>2019</year>
          , volume
          <volume>2407</volume>
          <source>of CEUR Workshop Proceedings</source>
          , Moscow,
          <year>2019</year>
          , pp.
          <fpage>5</fpage>
          -
          <lpage>14</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>J.</given-names>
            <surname>Bezanson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Karpinski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V. B.</given-names>
            <surname>Shah</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Edelman</surname>
          </string-name>
          , Julia:
          <string-name>
            <given-names>A Fast</given-names>
            <surname>Dynamic Language for Technical Computing</surname>
          </string-name>
          (
          <year>2012</year>
          )
          <fpage>1</fpage>
          -
          <lpage>27</lpage>
          .
          <article-title>a r X i v : 1 2 0 9 . 5 1 4 5</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>J.</given-names>
            <surname>Bezanson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Edelman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Karpinski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V. B.</given-names>
            <surname>Shah</surname>
          </string-name>
          ,
          <article-title>Julia: A fresh approach to numerical computing</article-title>
          ,
          <source>SIAM Review 59</source>
          (
          <year>2017</year>
          )
          <fpage>65</fpage>
          -
          <lpage>98</lpage>
          .
          <source>doi:1 0 . 1 1</source>
          <volume>3 7 / 1 4 1 0 0 0 6 7 1</volume>
          .
          <article-title>a r X i v : 1 4 1 1 . 1 6 0 7</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>A.</given-names>
            <surname>Joshi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Lakhanpal</surname>
          </string-name>
          , Learning Julia, Packt Publishing,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>C.</given-names>
            <surname>Rackauckas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Nie</surname>
          </string-name>
          , DiferentialEquations.jl
          <article-title>- A Performant and Feature-Rich Ecosystem for Solving Diferential Equations in Julia</article-title>
          ,
          <source>Journal of Open Research Software</source>
          <volume>5</volume>
          (
          <year>2017</year>
          ).
          <source>doi:1 0 . 5 3 3 4 / j o r s . 1 5 1 .</source>
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>H.</given-names>
            <surname>Elmqvist</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Henningsson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Otter</surname>
          </string-name>
          ,
          <article-title>Systems Modeling and Programming in a Unified Environment Based on Julia</article-title>
          , in: T.
          <string-name>
            <surname>Margaria</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          Stefen (Eds.),
          <source>Leveraging Applications of Formal Methods</source>
          , Verification and Validation: Discussion, Dissemination, Applications.
          <source>ISoLA</source>
          <year>2016</year>
          , volume
          <volume>9953</volume>
          of Lecture Notes in Computer Science, Springer, Cham,
          <year>2016</year>
          , pp.
          <fpage>198</fpage>
          -
          <lpage>217</lpage>
          .
          <source>doi:1 0 . 1 0</source>
          <volume>0 7 / 9 7 8 - 3 - 3 1 9 - 4 7 1 6 9 - 3</volume>
          _
          <fpage>1</fpage>
          5 .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>M.</given-names>
            <surname>Otter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Elmqvist</surname>
          </string-name>
          ,
          <article-title>Transformation of Diferential Algebraic Array Equations to Index One Form</article-title>
          ,
          <source>in: Proceedings of the 12th International Modelica Conference</source>
          , Prague, Czech Republic, May
          <volume>15</volume>
          -17,
          <year>2017</year>
          , volume
          <volume>132</volume>
          ,
          <year>2017</year>
          , pp.
          <fpage>565</fpage>
          -
          <lpage>579</lpage>
          .
          <source>doi:1 0 . 3 3</source>
          <volume>8 4</volume>
          / e c p 1
          <volume>7 1 3 2 5 6 5 .</volume>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>