delays. Such a computation can be performed using
linear integer programming on a simplified graphical
model. We will show using simulation that the com-
puted values are relevant to avoid message accumula-
tion in front of routers.
The rest of the paper is organized as follows: we
first present in section 2 the modeling of the LSA
flooding process and its validation. In section 3, simu-
lation shows a possible overload of buffers depending
on the refresh period. Then, in section 4, we study a
possible adjustment of the initial delays, which aims
at minimizing the overload. We show how to compute
these delays. The impact is then demonstrated using
simulation.
2 TPN MODELING OF THE LSA
FLOODING PROCESS
2.1 LSA Flooding Process
The network is represented by a directed graph G =
(V,E), whereV is a finite set of n vertices (the routers)
and E is a binary relation on V to represent the links.
The i
th
router is denoted by R
i
. The set V (R
i
) denotes
the set of neighbors of R
i
, of cardinality |V (R
i
)|. To
help the reader Table 1 gives the list of the main nota-
tions introduced in this paper.
The LSA flooding occurs periodically every T
r
seconds (30 minutes in the standard). Thus, the LSA
flooding process starts at time kT
r
, ∀k ∈ N.
The LSA of a router R
i
records the content of its
database. Then, R
i
shares this LSA (denoted LSA
i
)
with its neighbors to communicate its view of the net-
work at the beginning of each period. The router R
i
sends LSA
i
after an initial delay d
i
. More precisely,
R
i
sends LSA
i
at d
i
+ kT
r
, ∀k ∈ N. Suppose that a
router R
j
receives LSA
i
and that it starts processing it
at time t. Then, R
j
ended the processing of LSA
i
at
time t + T
p
, where T
p
is the time needed by any router
to process an LSA or an acknowledgment(Ack). Dur-
ing this processing, R
j
updates its database and sends
a new LSA to its other neighbors if some new infor-
mation is learned. Consequently, R
j
could send a new
LSA at time t + T
p
, and its neighbors will receive it at
time t + T
p
+ T
t
, where T
t
represents the time to send
a message.
Note that any information received by R
j
can be
taken into account if some properties are satisfied.
The most important one is the age of the LSA. An
LSA that is too old is simply ignored. In all cases, at
time t + T
p
, R
j
sends an Ack to R
i
. The objective is
to inform R
i
that LSA
i
has been correctly received. In
parallel, R
i
waits for an Ack from all of its neighbors
before a given time. If an Ack is not received before
the end of this time, R
i
sends LSA
i
again until an Ack
is properly received.
The LSA flooding process ends when every router
has synchronized to the same database.
2.2 The Simulation Model
Time Petri Net (TPN) (Jard and Roux, 2010) is an
efficient tool to model discrete-event systems and to
capture the inherent concurrency of complex systems.
In the classical definition, transitions are fired over an
interval of time. Here, transitions are fired at a fixed
time. This assumption is justified by observations of
actual OSPF traces whose data processing time does
not vary that much. In our case, the formal definition
of TPN is the following:
Definition 2.1 (Time Petri Net). A Time Petri Net
(TPN) is a tuple (P,T,B,F,M
0
,ϕ) where
• P is a finite non-empty set of places;
• T is a finite non-empty set of transitions;
• B : P×T → N is the backward incidence function;
• F : T × P → N is the forward incidence function;
• M
0
: P → N is the initial marking function;
• ϕ : T → N is the temporal mapping of transitions.
The remainder of this part is devoted to the con-
struction of the TPN that models message exchanges
of the LSA flooding process. The objective is to
model and observe the dynamic behavior of a given
network.
Router Modeling The TPN that models the behav-
ior of the LSA flooding process in a router R
i
needs
three timers: d
i
, T
r
and T
p
. Their functions are:
creating LSA
i
, managing a message received and re-
transmitting a received LSA when needed. Messages
are processed one by one. The following paragraphs
present each functional part of the TPN that models a
router.
• Place Processor. Initially this place contains
one token, representing the processing resource of a
router that is used to process LSAs and Acks. This
place mimics the queuing mechanism of R
i
and guar-
anties that only one message is processed at once. For
each different kind of messages (LSA
i
and Ack) the
processing mechanism is the following: an instanta-
neous transition is fired, to reserve the resource of R
i
.
Note that it can only be fired if a message is wait-
ing. Then the successor transition with timing T
p
can
be fired, modeling the processing time of the router,
and Processor becomes marked again, enabling the
processing of a new message.
DCNET2013-InternationalConferenceonDataCommunicationNetworking
6