Technical field
[0001] The present invention relates to the field of communication networks. In particular,
the present invention relates to a method for performing a measurement, in particular
a data loss measurement and/or a time measurement (in particular, a measurement of
delay and/or interarrival jitter), on data traffic transmitted in a communication
network. Further, the present invention relates to a node of a communication network
implementing such a method.
Background art
[0002] In a packet-switched communication network, data are transmitted in the form of packets
which are routed from a source node to a destination node through possible intermediate
nodes. Exemplary packet-switched networks are Ethernet networks, IP networks and MPLS
networks.
[0003] On the other hand, in circuit-switched networks data are transmitted in the form
of continuous bit flows carried from the source node to the destination node within
plesiochronous or synchronous frames. Exemplary circuit-switched networks are PDH,
SDH, Sonet and OTN networks.
[0004] Herein after, the expression "data unit" will designate a portion of a data flow
transmitted in a communication network. In particular, in case of a packet-switched
network, a data unit may be a packet or a portion of a packet. Besides, in case of
a circuit-switched network, a data unit may be a plesiochronous frame, a portion of
a plesiochronous frame, a synchronous frame or a portion of a synchronous frame.
[0005] Data transmitted either in a packet-switched network or in a circuit-switched network
from a source node not always reach the destination node, i.e. they may be lost during
transmission through the network.
[0006] Loss of data may be due to different reasons. For instance, a node or a link may
fail, thereby causing a total data loss until the failure is either bypassed or fixed.
Alternatively, in a packet-switched network, data within a packet may be discarded
by an intermediate node due to a congestion of its ports. Besides, both in packet-switched
networks and in circuit-switched networks, data may be discarded by an intermediate
node or by the destination node, since they contain bit errors.
[0007] When providing a service by transmitting data through a packet-switched network or
a circuit-switched network, the rate of data lost during transmission affects the
quality of service (QoS) of that service.
[0008] Besides, a data unit is transmitted at a transmission time by the source node and
is received at a reception time by the destination node. The time elapsing between
transmission time and reception time is typically called "one way delay" (or, briefly,
"delay"). The delay of a data unit is given by the following equation:

where Si is the transmission time and Ri is the reception time of the data unit.
[0009] The delay of a data unit mainly depends on the number of possible intermediate nodes
crossed by the data unit from source to destination, on the permanence time of the
data unit at the source node and at each possible intermediate node (mainly within
the buffers of such nodes) and on the propagation time along the links (which is turn
depends on the length of the links and their capacity). In packet-switched networks,
where data units are routed hop-by-hop by each node, both the number of possible intermediate
nodes crossed by data units and the permanence time of data units at each node are
unpredictable. Accordingly, the delay of a data unit is almost unpredictable.
[0010] Besides, data units of a same data flow may have different delays. In a packet-switched
communication network, the difference in the delays of two data units (i.e. packets)
of a same data flow is termed "interarrival jitter". In particular, if Si and Sj are
the transmission times for a first packet i and a second packet j, and Ri and Rj are
the reception times for the first packet i and the second packet j, the interarrival
jitter may be expressed as:

[0011] When a communication service (in particular, a real-time voice or data service such
as calls, conference calls, video conferences, etc.) is provided by means of a communication
network, the delay and interarrival jitter of the data flows carrying the service
strongly affect the quality of service (QoS) perceived by the end users of the service.
[0012] Therefore, measuring the data loss and delay/interarrival jitter of the data flows
carrying services is of particular interest for network operators.
[0013] WO 2010/072251 (in the name of the same Applicant) discloses a method for measuring data loss of
a data flow transmitted through a communication network from a transmitting node to
a receiving node. Before transmitting the data units of the data flow, the transmitting
node marks each data unit for dividing the data flow in blocks. In particular, the
transmitting node marks each data unit by setting a bit of its header to "1" or "0".
The marking results in a sequence of blocks, where blocks of data units marked with
"1" alternate in time with blocks of data units marked with "0". The blocks may have
a same duration termed "block period" Tb (e.g. 5 minutes). Further, while marking
the data units, the transmitting node increases by one a first counter C1 each time
a data unit is marked by "1", and a second counter C0 each time a data unit is marked
by "0". The marked data units are then received at the receiving node. Each time the
receiver node receives a data unit, it checks its marking, increases a third counter
C'1 if the marking is "1" and increases a fourth counter C'0 if the marking is "0".
[0014] According to
WO 2010/072251, while the transmitting and receiving nodes are operating as described above, a management
server cooperating with the transmitting and receiving nodes periodically detects
the values of the counters C1, C0, C'1 and C'0, and uses them for calculating the
data loss.
[0015] PCT/EP2009/067991 (in the name of the same Applicant) discloses a method for performing a time measurement
(in particular, measuring delay and/or interarrival jitter) on a data flow transmitted
from a transmitting node to a receiving node of a communication network.
[0016] US 6,747,972 describes a packet switch wherein a packet switch sequence number is maintained at
each input interface of the packet switch for each output interface, while each output
interface maintains a packet switch sequence number for each input interface. A corresponding
sequence number is added to packets sent between corresponding input-output interface
pairs.
Summary of the invention
[0017] The solution described by
WO 2010/072251 is suitable for performing measurements on a given data flow, provided that each
involved node (i.e. the transmitting and receiving nodes in case of end-to-end measurements,
but also the intermediate nodes when a measurement per each single span of the end-to-end
path is needed) is capable of identifying the data flow. In other words, each involved
node should be capable of distinguishing the data units belonging to that data flow
among all the received data units, before deciding whether to increase the proper
counter.
[0018] However, the Applicant has perceived that, in some applications involving transmission
of several data flows across the network, it may be useful providing measurements
indicative of the behaviour of nodes and links of the network on the data flows as
a whole, without making distinctions between the single data flows.
[0019] In view of the above, the Applicant has tackled the problem of providing a method
for performing a measurement on data traffic transmitted in a communication network,
which is capable of providing a measurement on a data flow without the need to identify
the data flow, i.e. without the need to distinguish the data units belonging to that
data flow among all the data units transmitted in the communication network.
[0020] In the following description and in the claims, the expression "performing a measurement"
will designate an operation of measuring data loss and/or an operation of performing
a time measurement.
[0021] Further, in the following description and in the claims, the expression "measuring
data loss" will designate an operation of measuring a difference between a number
of data units detected at a first interface and a number of data units detected at
a second interface, this difference corresponding to the number of data units lost
in transmission from the first interface to the second interface.
[0022] Further, in the following description and in the claims, the expression "performing
a time measurement" will designate an operation of measuring:
- a delay induced on a data unit by transmission from the first interface to the second
interface; and/or
- an interarrival jitter induced on a pair of data units by transmission from the first
interface to the second interface.
[0023] The first interface and the second interface may be interfaces of a same node. For
instance, the first interface may be the input interface of a first port of a node
and the second interface may be the output interface of a second port of the same
node. In this case, the measurement will be termed "node measurement".
[0024] The first interface and the second interface may be interfaces of different nodes.
For instance, the first interface may be the output interface of a port of a first
node, and the second interface may be the input interface of a port of a second node
connected to the first node by means of a link terminated at its opposite ends by
the first and second interfaces. In this case, the measurement will be termed "link
measurement".
[0025] Besides, in the following description and in the claims, the expression "marking
a data unit" will designate an operation of setting a feature of the data unit to
a predefined value. For instance, the operation of marking a data unit may comprise
the operation of setting one or more bits of the data unit (e.g. one bit or a bit
sequence of its header) to a predefined value, the operation of setting its frequency
or its phase to a predefined value, and so on.
[0026] The present invention is carried out as described in the appended claims.
[0027] According to a first aspect, the present invention provides a method for performing
a measurement on data traffic at a node of a communication network, as described in
the appended claim 1.
[0028] A global input parameter may include a global input counter or an input timestamp
associated to the global input counter; a global output parameter may include a global
output counter or an output timestamp associated to the global output counter; a partial
input parameter may include a partial input counter or an input timestamp associated
to the partial input counter; a partial output parameter may include a partial output
counter or an output timestamp associated to the partial output counter.
[0029] According to first embodiment of claim 1:
- at step b), updating comprises increasing a global input counter upon reception of
each first data unit having the feature set to the first value;
- at step c), updating comprises increasing a partial input counter upon reception of
each first data unit having the feature set to the first value and being addressed
to the output interface;
- at step e), updating comprises increasing a partial output counter upon reception
of each second data unit having the feature set to the first value and being received
from the input interface;
- at step f), updating comprises increasing a global output counter upon reception of
each second data unit having the feature set to the first value; and
- at step g), performing a measurement comprises calculating a data loss based on at
least one of: the global input counter, the partial input counter, the global output
counter and the partial output counter.
[0030] According to particularly advantageous variants:
- at step b), updating comprises setting a global input timestamp equal to a current
time upon reception of a predetermined first data unit having the feature set to the
first value;
- at step c), updating comprises setting a partial input timestamp equal to the current
time upon reception of the predetermined first data unit, if the predetermined first
data unit is addressed to the output interface;
- at step e), updating comprises setting a partial output timestamp equal to the current
time upon reception of a predetermined second data unit having the feature set to
the first value, if the predetermined second data unit is received from the input
interface (lin1);
- at step f), updating comprises setting a global output timestamp equal to the current
time upon reception of the predetermined second data unit; and
- at step g), performing a measurement comprises performing a time measurement based
on at least one of: the global input timestamp, the partial input timestamp, the global
output timestamp and the partial output timestamp.
[0031] A global input timestamp is an input timestamp associated to the global input counter;
a global output timestamp is an output timestamp associated to the global output counter;
a partial input timestamp is an input timestamp associated to the partial input counter;
a partial output timestamp is an output timestamp associated to the partial output
counter.
[0032] At step g), the performing a time measurement may comprise measuring at least one
of a delay and an interarrival jitter of the data traffic.
[0033] Preferably:
- at step b), updating further comprises setting a further global input timestamp equal
to a time upon which a further predetermined first data unit temporally adjacent to
the predetermined first data unit has been received;
- at step c), updating further comprises setting a further partial input timestamp equal
the time upon which the further predetermined first data unit has been received;
- at step e), updating further comprises setting a further partial output timestamp
equal to a time upon which a further predetermined second data unit temporally adjacent
to the predetermined second data unit has been received;
- at step f), updating further comprises setting a further global output timestamp equal
the time upon which the further predetermined second data unit has been received;
and
- at step g), performing a time measurement comprises measuring an interarrival jitter
as a difference between:
- one of: the global input timestamp, the partial input timestamp, the global output
timestamp and the partial output timestamp, respectively; and
- one of: the further global input timestamp, the further partial input timestamp, the
further global output timestamp and the further partial output timestamp, respectively.
[0034] Preferably, at step g), performing a measurement comprises performing a measurement
relating to the data traffic within the node based on the partial input parameter
and the partial output parameter.
[0035] Alternatively, at step g), performing a measurement comprises performing a measurement
relating to the data traffic on a first link between the node and a first further
node transmitting the first data units to the node based on the global input parameter
and a further global output parameter generated by the first further node.
[0036] Alternatively, at step g), performing a measurement comprises performing a measurement
relating to the data traffic on a second link between the node and a second further
node receiving the second packets from the node based on the global output parameter
(Y2(1)) and a further global input parameter generated by the second further node.
[0037] According to preferred embodiments, the method further comprises, if at step a) it
is determined that the first data unit is not marked, marking the first data unit
by setting the feature to the first value before performing step c).
[0038] According to preferred embodiments, the method further comprises, if at step d) it
is determined that the second data unit is not marked, marking the second data unit
by setting the feature to the first value before performing step f).
[0039] Preferably, step g) is performed by a management server cooperating with the node.
Alternatively, step g) is performed by the node.
[0040] According to a second aspect, the present invention provides a node for a communication
network, the node comprising at least an input interface and an output interface,
wherein the input interface is configured to receive first data units as described
in the appended claim 10.
Brief description of the drawings
[0041] The present invention will become clearer from the following detailed description,
given by way of example and not of limitation, to be read with reference to the accompanying
drawings, wherein:
- Figure 1 schematically shows an exemplary packet-switched network;
- Figure 2 schematically shows a packet's structure, according to an embodiment of the
present invention;
- Figure 3 shows in further detail the structure of a node of the communication network
of Figure 1;
- Figure 4 is a flow chart of the operation of an input interface of the node of Figure
3, according to a first embodiment of the present invention;
- Figure 5 is a flow chart of the operation of an output interface of the node of Figure
3, according to a first embodiment of the present invention;
- Figures 6a and 6b schematically shows a node measurement and a link measurement, respectively,
applied to a portion of the communication network of Figure 1; and
- Figure 7 schematically shows a data flow transmitted through the communication network
of Figure 1.
Detailed description of preferred embodiments of the invention
[0042] Herein after, the method according to a first preferred embodiment of the present
invention will be described in detail, by referring to the particular exemplary case
of measuring data loss in a packet-switched network.
[0043] Figure 1 schematically shows an exemplary packet-switched communication network CN
comprising five nodes N1, N2, ... N5. The communication network CN may be for instance
an Ethernet network, an Internet network, or any other type of packet-switched communication
network. The nodes N1, N2, ... N5 are connected each other according to a partially
meshed topology, by means of physical links L1, L2, ..., L7. The number of nodes and
the topology of the communication network CN shown in Figure 1 are merely exemplary.
[0044] The communication network CN is suitable for cooperating with a management server
MS. In Figure 1, the management server MS is connected to the node N3. This is merely
exemplary, since the management server MS may be connected to the communication network
CN through any of its nodes N1, N2, ..., N5. Alternatively, the management server
MS may be integrated in any of the nodes N1, N2, ..., N5 of the communication network
CN.
[0045] The nodes N1, N2, ..., N5 of the communication network CN are configured for exchanging
each other data traffic in the form of packets Pki along the links L1, L2, ..., L7.
As shown in Figure 2, each packet Pki comprises a header Hi and a payload Pi. The
payload Pi comprises data to be transmitted. Besides, preferably, the header Hi comprises
information for routing the packet Pki, such as the source node address and the destination
node address.
[0046] According to embodiments of the present invention, the packet Pki further comprises
at least one marking bit reserved for marking the packet Pki. More preferably, the
packet Pki comprises two marking bits:
- a first marking bit b1, indicating whether the packet Pki is marked or not. For instance,
b1=0 indicates that the packet is not marked, while b1=1 indicates that the packet
Pki is marked; and
- a second marking bit b2, indicating the marking of the packet Pki. b2=0 indicates
that the packet Pki is marked by 0, while b2=1 indicates that the packet Pki is marked
by 1.
[0047] Hence, the packet Pki may be marked or not and, if it is marked, it can have two
alternative markings: 0 or 1. The marking bits b1, b2 are preferably used by the nodes
of the communication network CN for performing a measurement (in particular, a data
loss measurement and/or a time measurement), as it will be described in detail herein
after.
[0048] The marking bits b1, b2 are preferably comprised in the header Hi of the packet Pki.
The marking bits b1, b2 may be for instance two bits to which the protocol according
to which the packet Pki is formatted has not assigned a specific function yet. Alternatively,
the marking bits b1, b2 may be two bits of a field having other uses, such as for
instance two bits of the priority field in IP packets, or two bits of the label field
in MPLS packets.
[0049] Figure 3 shows in further detail the structure of a node Ni of the communication
network CN, which may be any of the nodes N1, N2, ..., N5. The node Ni may be for
instance an IP router (in case the network CN is an IP network), an Ethernet switch
(in case the network CN is an Ethernet network) and so on.
[0050] The node Ni comprises a number n of bidirectional ports, each port bidirectionally
connecting the node Ni to a port of an adjacent node of the communication network
CN by means of a respective link. By way of non limiting example, the node Ni shown
in Figure 3 comprises four ports (n=4), namely P1, P2, P3, P4. Each node N1, N2, ...,
N5 may of course have a different number of ports, depending on the number of adjacent
nodes.
[0051] Each port P1, P2, P3, P4 preferably comprises an input interface lin1, lin2, lin3,
Iin4 suitable for receiving packets from the corresponding adjacent node through the
corresponding link and an output interface lout1, lout2, lout3, lout4 suitable for
transmitting packets to the corresponding adjacent node through the corresponding
link. Within the node Ni, the input interface of each port is connected to the output
interface of the other (n-1) ports, as schematically indicated by the dashed arrows
in Figure 3. In other words, the node Ni is configured so that packets received through
the input interface of a port may be transmitted through the output interface of anyone
of the other ports.
[0052] Each input interface Iin1, Iin2, Iin3, Iin4 preferably implements a couple of global
input counters and (n-1) couples of partial input counters. In particular, referring
to the exemplary node Ni of Figure 3:
- the input interface Iin1 of the port P1 implements:
- a couple of global input counters X1 (1), X1 (0) and
- (n-1)=3 couples of partial input counters X12(1), X12(0); X13(1), X13(0); X14(1),
X14(0),
- the input interface Iin2 of the port P2 implements:
- a couple of global input counters X2(1), X2(0) and
- (n-1)=3 couples of partial input counters X21(1), X21(0); X23(1), X23(0); X24(1),
X24(0);
- the input interface Iin3 of the port P3 implements:
- a couple of global input counters X3(1), X3(0) and
- (n-1)=3 couples of partial input counters X31(1), X31(0); X32(1), X32(0); X34(1),
X34(0); and
- the input interface Iin4 of the port P4 implements:
- a couple of global input counters X4(1), X4(0) and
- (n-1)=3 couples of partial input counters X41(1), X41(0); X42(1), X42(0); X43(1),
X43(0).
[0053] Similarly, each output interface lout1, lout2, lout3, lout4 preferably implements
a couple of global output counters and (n-1) couples of partial output counters. In
particular, referring to the exemplary node Ni of Figure 3:
- the output interface Iout1 of the port P1 implements:
- a couple of global output counters Y1(1), Y1(0) and
- (n-1)=3 couples of partial output counters Y21(1), Y21(0); Y31(1), Y31(0); Y41(1),
Y41(0),
- the output interface lout2 of the port P2 implements:
- a couple of global output counters Y2(1), Y2(0) and
- (n-1)=3 couples of partial output counters Y12(1), Y12(0); Y32(1), Y32(0); Y42(1),
Y42(0);
- the output interface lout3 of the port P3 implements:
- a couple of global output counters Y3(1), Y3(0) and
- (n-1)=3 couples of partial output counters Y13(1), Y13(0); Y23(1), Y23(0); Y43(1),
Y43(0); and
- the output interface lout4 of the port P4 implements:
- a couple of global output counters Y4(1), Y4(0) and
- (n-1)=3 couples of partial output counters Y14(1), Y14(0); Y24(1), Y24(0); Y34(1),
Y34(0).
[0054] As mentioned above, the node Ni exchanges data traffic with the adjacent nodes through
the ports P1, P2, P3 and P4. In particular, it receives packets from the adjacent
nodes through the input interfaces Iin1, Iin2, Iin3, Iin4, terminates the packets
of which it is the destination node and transmits the remaining packets to the adjacent
nodes through the output interfaces lout1, lout2, lout3, lout4. In addition, it generates
further packets of which it is the source node and transmits them to the adjacent
nodes through the output interfaces lout1, lout2, lout3, lout4.
[0055] The operation of the input interface Iin1 of the port P1 according to a first embodiment
of the present invention will be now described in detail with reference to Figure
4.
[0056] The input interface Iin1 receives packets Pk1 from the link which connects it to
a node adjacent to the node Ni. The packets Pk1 may belong to different data flows
which have different sources and/or destinations and whose paths from source to destination
cross at least at the node Ni. Accordingly, the input interface Iin1 distributes the
packets PS1 among the output interfaces lout2, lout3 and lout4 of the other ports
P2, P2 and P3.
[0057] At least some of the packets Pk1 received at the node Ni may be marked by nodes upstream
the node Ni. The marked packets Pk1 have their first marking bit equal to "1", while
the unmarked packets Pk1 have their first marking bit b1 equal to "0". Furthermore,
each marked packet Pk1 may have its second marking bit b2 equal to "1" (indicating
that the packet Pk1 is marked by 1) or "0" (indicating that the packet Pk1 is marked
by 0). Preferably, all nodes of the communication network CN which are suitable for
marking packets (included the node Ni, as it will be described in detail herein after)
periodically change the applied marking (1 or 0) with a period Tb, that will be termed
herein after "block period". All the nodes of the communication network CN which are
suitable for marking packets (included the node Ni) are preferably reciprocally synchronized,
so that in each instant they apply the same marking. Herein after, it is assumed that
during odd block periods T1, T3, ... Tk-1 (all having duration Tb) the nodes configured
to mark packets apply the marking 1, whereas during even block period T2, T4, ...
Tk the nodes configured to mark packets apply the marking 0. Hence, the packets Pk1
received at the node Ni which are marked during odd block periods T1, T3, ... Tk-1
are marked by 1, whereas the packets Pk1 received at the node Ni which are marked
during even block period T2, T4, ... Tk are marked by 0.
[0058] The block period Tb may be set by the network operator, according to the desired
data loss measurement rate (as it will be described in detail herein after, the block
period Tb is also the measurement period). For instance, the block period Tb may be
equal to 5 minutes.
[0059] When a data loss measurement is started at the node Ni (e.g. by sending a suitable
command to the node Ni, which may contain the value of the block period Tb), the input
interface Iin1 preferably set to 0 its global input counters X1(1), X1(0) and its
partial input counters X12(1), X12(0); X13(1), X13(0); X14(1), X14(0) (step 401).
[0060] Upon reception of a packet Pk1 (step 402), the input interface Iin1 preferably checks
whether the packet Pk1 is marked, for instance by reading the value of its first marking
bit b1 (step 403).
[0061] If the packet Pk1 is already marked (as it will be described herein after, the packet
Pk1 may be marked by a node upstream the node Ni), the input interface Iin1 preferably
checks its marking by reading its second marking bit b2 (step 404). If the packet
Pk1 is marked by 1 (b2=1), the input interface Iin1 preferably increases by one the
global input counter X1(1) (step 405). Otherwise, if the packet Pk1 is marked by 0
(b2=0), the input interface Iin1 preferably increases by one the other global input
counter X1(0) (step 405').
[0062] If at step 403 the input interface Iin1 determines that the packet Pk1 is not marked,
it preferably marks it. In particular, for marking the packet Pk1, the input interface
Iin1 firstly determines whether the current block period is an odd block period T1,
T3, ... Tk-1 or an even block period T2, T4, ... Tk (step 406). If the current block
period is an odd block period T1, T3, ... Tk-1, the input interface Iin1 preferably
marks the packet Pk1 by 1 by setting its second marking bit b2 to 1 (step 407). Otherwise,
if the current block period is an even block period T2, T4, ... Tk, the input interface
Iin1 preferably marks the packet Pk1 by 0 by setting its second marking bit b2 to
0 (step 407'). At steps 407 and 407', the input interface Iin1 also preferably sets
the first marking bit b1 to 1, for indicating that the packet Pk1 is now marked.
[0063] Then, the input interface Iin1 preferably increases the partial input counters according
to the marking of the packet Pk1 and according to the output interface (namely lout2,
lout3 or lout4) to which the packet Pk1 has to be forwarded within the node Ni.
[0064] In particular, independently of whether the packet Pk1 was marked by the input interface
Iin1 at steps 407-407' or it was received already marked at the input interface Iin1,
if its marking is equal to 1 (step 408), the input interface Iin1 checks its output
interface (step 409) and:
- if the packet Pk1 has to be forwarded to the output interface lout2, it increases
the partial input counter X12(1) (step 410);
- if the packet Pk1 has to be forwarded to the output interface lout3, it increases
the partial input counter X13(1) (step 410'); and
- if the packet Pk1 has to be forwarded to the output interface lout4, it increases
the partial input counter X14(1) (step 410").
[0065] On the other hand, independently of whether the packet Pk1 was marked by the input
interface Iin1 at steps 407-407' or it was received already marked at the input interface
lin1, if its marking is equal to 0 (step 408), the input interface Iin1 checks its
output interface (step 411) and:
- if the packet Pk1 has to be forwarded to the output interface lout2, it increases
the partial input counter X12(0) (step 412);
- if the packet Pk1 has to be forwarded to the output interface lout3, it increases
the partial input counter X13(0) (step 412'); and
- if the packet Pk1 has to be forwarded to the output interface lout4, it increases
the partial input counter X14(0) (step 412").
[0066] The input interface Iin1 then forwards the packet Pk1 to the relevant output interface
(step not shown in Figure 4).
[0067] If the input interface Iin1 determines that the node Ni is the destination node of
the packet Pk1, the packet Pk1 is not forwarded to any output interface and none of
the partial input counters is increased.
[0068] The above operations are repeated by the input interface Iin1 for every received
packet Pk1. Under the assumption that the node Ni (in particular, the input interface
Iin1) and the upstream node(s) which originally marked the packets which are received
already marked at the node Ni are mutually synchronized (i.e. they use the same block
period Tb and have synchronized local clocks which they use for determining whether
the current block period is an even or odd block period), the results of the above
operations is forming blocks of packets Pk1 marked by 1 and blocks of packets Pk1
marked by 0 which alternate in time, all the blocks having a same duration equal to
the block period Tb.
[0069] During the odd block periods T1, T3, ... Tk-1 the packets Pk1 are marked by 1, whereas
during the even block periods T2, T4, ... Tk the packets Pk1 are marked by 0. Besides,
during the odd block periods T1, T3, ... Tk-1 the values of the global input counter
X1(1) and of the partial input counters X12(1), X13(1), X14(1) increase, while the
values of the global input counter X1(0) and of the partial input counters X12(0),
X13(0), X14(0) are constant. On the other hand, during the even block periods T2,
T4, ... Tk the values of the global input counter X1 (0) and of the partial input
counters X12(0), X13(0), X14(0) increases, while the values of the global input counter
X1(1) and of the partial input counters X12(1), X13(1), X14(1) are constant.
[0070] The couple of global input counters X1(1), X1(0) counts the already marked packets
Pk1 received at the input interface lin1, whereas the (n-1)=3 couples of partial input
counters X12(1), X12(0); X13(1), X13(0); X14(1), X14(0) count all the packets Pk1
transmitted within the node Ni by the input interface Iin1 according to the output
interface to which they have to be transmitted.
[0071] Since the input interface In1 forwards each packet Pk1 towards an output interface,
the packets Pk1 are distributed among the output interfaces lout2, lout3 and lout4.
[0072] The operation of all the other input interfaces lin2, lin3, Iin4 is the same as the
input interface Iin1. A detailed description will not therefore be repeated.
[0073] The operation of the output interface lout2 of the port P2 according to a first embodiment
of the present invention will be now described in detail with reference to Figure
5.
[0074] The output interface lout2 receives packets Pk2 from the input interfaces lin1, Iin3
and Iin4 of the other ports P1, P3 and P4 and packets Pk2 originated by the node Ni
itself, and merges them in a single stream of packets Pk2 which is then forwarded
to a further node adjacent to the node Ni along the link exiting the output interface
lout2. The packets Pk2 may belong to different data flows which have different sources
and/or destinations and whose paths from source to destination cross at least at the
node Ni.
[0075] When a data loss measurement is started at the node Ni, the output interface lout2
preferably set to 0 its global output counters Y2(1), Y2(0) and its partial output
counters Y12(1), Y12(0); Y32(1), Y32(0); Y42(1), Y42(0) (step 501).
[0076] Upon reception of a packet Pk2 (step 502), the output interface lout2 preferably
checks whether the packet Pk2 is marked, for instance by reading the value of its
first marking bit b1 (step 503).
[0077] If the packet Pk2 is already marked (which is the case when the packet Pk2 is received
from anyone of the input interfaces Iin1, Iin3 or Iin4), the output interface lout2
preferably checks its marking (step 504) and increases the partial output counters
according to the marking of the packet Pk2 and according to the input interface (namely
lin1, Iin3 or Iin4) from which the packet Pk2 is received.
[0078] In particular, if the marking of the packet Pk2 is equal to 1, the output interface
lout2 checks its input interface (step 505) and:
- if the packet Pk2 is received from the input interface lin1, it increases the partial
output counter Y12(1) (step 506);
- if the packet Pk2 is received from the input interface lin3, it increases the partial
output counter Y32(1) (step 506'); and
- if the packet Pk2 is received from the input interface Iin4, it increases the partial
output counter Y42(1) (step 506").
[0079] On the other hand, if the marking of the packet Pk2 is equal to 0, the output interface
lout2 checks its input interface (step 507) and:
- if the packet Pk2 is received from the input interface lin1, it increases the partial
output counter Y12(0) (step 508);
- if the packet Pk2 is received from the input interface lin3, it increases the partial
output counter Y32(0) (step 508'); and
- if the packet Pk2 is received from the input interface Iin4, it increases the partial
output counter Y42(0) (step 508").
[0080] If at step 503 the output interface lout2 determines that the packet Pk2 is not marked
(e.g. because the packet Pk2 is generated by the node Ni itself), it preferably marks
it. In particular, the output interface lout2 marks the packet Pk2 by periodically
changing the marking (1 or 0) with the above defined block period Tb.
[0081] More particularly, for marking the packet Pk2, the output interface lout2 firstly
determines whether the current block period is an odd block period T1, T3, ... Tk-1
or an even block period T2, T4, ... Tk (step 509). If the current block period is
an odd block period T1, T3, ... Tk-1, the output interface lout2 preferably marks
the packet Pk2 by 1 by setting its second marking bit b2 to 1 (step 510). Otherwise,
if the current block period is an even block period T2, T4, ... Tk, the output interface
lout2 preferably marks the packet Pk2 by 0 by setting its second marking bit b2 to
0 (step 510'). All the input and output interfaces of the node Ni are synchronized
to a same clock (i.e. the local clock of the node Ni), and therefore the determination
of the current block period performed by the output interface lout2 at step 509 is
the same as the determination performed by the input interface Iin1 at step 406. In
other words, at each time instant, all the input and output interfaces apply the same
marking to the packets under process.
[0082] At steps 510 and 510', the output interface lout2 also preferably sets the first
marking bit b1 to 1, thereby indicating that the packet Pk2 is now marked.
[0083] Then, independently of whether the packet Pk2 was marked by the output interface
lout2 or was received already marked at the output interface lout2, if the packet
Pk2 is marked by 1 (b2=1) (step 511), the output interface lout2 preferably increases
by one the global input counter Y2(1) (step 512). Otherwise, if the packet Pk2 is
marked by 0 (b2=0) (step 511), the output interface lout2 preferably increases by
one the other global input counter Y2(0) (step 512').
[0084] The output interface lout2 then forwards the packet Pk2 to the further adjacent node
(step not shown in Figure 5) along the exiting link.
[0085] The above operations are repeated by the output interface lout2 for every received
packet Pk2. Since, as mentioned above, all the interfaces of the node Ni are mutually
synchronized (i.e. they use the same block period Tb and have synchronized clocks
which they use for determining whether the current block period is an even or odd
block period), the results of the above operations is forming blocks of packets Pk2
marked by 1 and blocks of packets marked by 0 which alternate in time, all the blocks
having a same duration equal to the block period Tb.
[0086] During the odd block periods T1, T3, ... Tk-1 the packets Pk2 are marked by 1, whereas
during the even block periods T2, T4, ... Tk the packets Pk2 are marked by 0. Besides,
during the odd block periods T1, T3, ... Tk-1 the values of the global output counter
Y2(1) and of the partial output counters Y12(1), Y32(1), X42(1) increase, while the
values of the global output counter Y2(0) and of the partial output counters Y12(0),
Y32(0), Y42(0) are constant. On the other hand, during the even block periods T2,
T4, ... Tk the values of the global output counter Y2(0) and of the partial output
counters Y12(0), Y32(0), Y42(0) increases, while the values of the global output counter
Y2(1) and of the partial output counters Y12(1), Y32(1), Y42(1) are constant.
[0087] The (n-1)=3 couples of partial output counters Y12(1), Y12(0); Y32(1), Y32(0); Y42(1),
Y42(0) count the already marked packets Pk2 received at the output interface lout2
according to the input interface from which they are received, whereas the couple
of global output counters Y2(1), Y2(0) count all the packets Pk2 transmitted by the
output interface lout2 to the further adjacent node.
[0088] The operation all the other output interfaces lout1, lout3, lout4 is the same as
the output interface lout2. A detailed description will not therefore be repeated.
[0089] At each block period Tb, the node Ni then provides a set of global and partial counters
which allow calculating data loss relating to data traffic crossing the node Ni, as
it will be described in further detail by referring to Figures 6a and 6b.
[0090] Figures 6a and 6b show in further detail a portion of the communication network CN
of Figure 1. In particular, Figures 6a and 6b show the nodes N2 and N5. The node N2
comprises three ports P1(2), P2(2), P3(2), while the node N5 comprises four ports
P1(5), P2(5), P3(5), P4(5). Each port of the nodes N2 and N5 comprises an input interface
and an output interface, whose operation is substantially the same as the input and
output interfaces of the ports of the node Ni (see flow charts of Figure 4 and 5).
A detailed description of the ports of the nodes N2 and N5 and their operation will
therefore not be repeated.
[0091] Each port P1(2), P2(2), P3(2) of the node N2 connects the node N2 to an adjacent
node of the network CN by means of a respective link. Similarly, each port P1(5),
P2(5), P3(5), P4(5) of the node N5 connects the node N5 to an adjacent node of the
network CN by means of a respective link. In particular, the port P2(5) of the node
N5 is connected to the port P3(2) of the node N2 by the link L4. The link L4 is bidirectional
and its opposite ends are physically connected to the input and output interfaces
comprised in the ports P2(5) and P3(2), so that the nodes N2 and N5 may exchange bidirectional
data traffic along the link L4.
[0092] At each block period Tb, two types of data loss measurements may be performed, namely
node data loss measurements (see Figure 6a) and link data loss measurements (see Figure
6b).
[0093] A node data loss indicates the data loss affecting data traffic transmitted from
the input interface of a first port of a node to the output interface of a second
port of the same node. The node data loss may be calculated as the difference between:
- (i) the partial input counter provided by the input interface of the first port which
counts the packets to be forwarded to the output interface of the second port, and
- (ii) the partial output counter provided by the output interface of the second port
which counts the packets received from the input interface of the first port.
[0094] At each block period, the partial counters used for making the calculation are the
partial counters which have constant value during the current block period (namely:
during the odd block periods T1, T3, ... Tk-1 the partial counters counting 0-marked
packets, and during even block periods T2, T4, .. Tk the partial counters counting
1-marked packets).
[0095] For instance, with reference to Figure 6a, the node data loss DL12(5) of the data
traffic transmitted within the node N5 from the input interface of the port P1(5)
to the output interface of the port P2(5) (indicated by the arrow A1) may be calculated
as:
- DL12(5)=X125(0)-Y125(0) during the odd block periods; and
- DL12(5)=X125(1)-Y125(1) during the even block periods,
where X12
5(0) and X12
5(1) are the partial input counters provided by the input interface of the port P1(5)
which count the packets to be forwarded to the output interface of the port P2(5),
while Y12
5(0) and Y12
5(1) are the partial output counters provided by the output interface of the port P2(5)
which count the packets received from the input interface of the port P1(5).
[0096] Each node of the communication network CN may therefore perform node data loss measurements
autonomously, i.e. independently of the other nodes of the communication network CN.
Even if the other nodes of the communication network CN do not implement the above
described method, each node may autonomously calculate the data loss between any couple
of its ports, because all its input and output interfaces are provided with the marking
and counting capabilities allowing it to generate the partial counters whose values
are needed for calculating the node data loss.
[0097] As far as link data loss measurements are concerned, a link data loss indicates the
data loss affecting data traffic transmitted from the output interface of a port of
a first node to the input interface of a port of a second node over a link connecting
the first and second nodes. The link data loss may be calculated as the difference
between:
- (i) the global output counter provided by the output interface of the port of the
first node which counts the packets to be forwarded over the link and
- (ii) the global input counter provided by the input interface of the port of the second
node which counts the packets received from the link.
[0098] At each block period, the global counters used for making the calculation are the
global counters which have constant value during the current block period (namely:
during the odd block periods T1, T3, ... Tk-1 the global counters counting 0-marked
packets, and during even block periods T2, T4, .. Tk the global counters counting
1-marked packets).
[0099] For instance, with reference to Figure 6b, the link data loss DL(5-2) of the data
traffic transmitted over the link L4 from the output interface of the port P2(5) of
the node N5 to the input interface of the port P3(2) of the node N2 (indicated by
the arrow A2) may be calculated as:
- DL(5-2)=Y25(0)-X32(0) during the odd block periods; and
- DL(5-2)=Y25(1)-X32(1) during the even block periods,
where Y2
5(0) and Y2
5(1) are the global output counters provided by the output interface of the port P2(5)
which count the packets transmitted by the output interface of the port P2(5) along
the link L4, while X3
2(0) and X3
2(1) are the global input counters provided by the input interface of the port P3(2)
of the node N2 which count the packets received by the input interface of the port
P3(2) along the link L4.
[0100] Hence, for performing a link data loss measurement, the global counters generated
by the nodes upstream and downstream the link are needed. Therefore, the above described
marking and counting capabilities shall be implemented at the nodes immediately upstream
and downstream the link, and the values of the global counters shall be provided to
a single entity, which is responsible for calculating the link data loss using the
values of the global counters.
[0101] According to a centralized approach, the management server MS may be responsible
for calculating the link data loss. In this case, at each block period the nodes of
the communication network CN may send to the management server MS the values of the
global counters generated by their input and output interfaces and having constant
value during the current block period, so that the management server MS may use them
for calculating the link data loss.
[0102] According to a distributed approach, the nodes themselves may be responsible for
calculating the link data loss. For instance, the node immediately upstream a link
may be responsible for calculating the data loss relating to that link. In this case,
at each block period the node immediately downstream the link may send to the upstream
node the values of the global counters generated by its input interface terminating
the link and having constant value during the current block period, so that the upstream
node may use them for calculating the link data loss. Alternatively, the node immediately
downstream a link may be responsible for calculating the data loss relating to that
link. Alternatively, both the nodes terminating a link at its opposite ends may calculate
the data loss relating to that link. In that case, at each block period the nodes
may exchange the values of the respective global counters having constant value during
the current block period, so that each node may autonomously calculate the link data
loss.
[0103] The node and link data loss measurements relating to nodes and links of the communication
network CN may be used for estimating the data loss affecting a given data flow transmitted
through the communication network CN from a given source node to a given destination
node.
[0104] For instance, with reference to Figure 7, the node and link data loss measurements
relating to nodes and links of the communication network CN may be used for estimating
the data loss affecting a data flow DF transmitted from N1 (acting as source node)
to N4 (acting as destination node).
[0105] For performing such an estimation, the path followed by the data flow DF through
the communication network CN should be known. Such path may comprise for instance:
the link L2, the node N5 and the link L7.
[0106] Then, the link data loss relating to the link L2 in the direction from N1 to N5,
the node data loss relating to the node N5 from the port downstream the link L2 to
the port upstream the link L7 and the link data loss relating to the link L7 in the
direction from N5 to N4 are calculated by the involved nodes N1, N5, N4 and/or by
the management server MS using the values of the global and partial counters provided
by the nodes N1, N5 and N4, as described above.
[0107] Such link and node data loss measurements basically are estimates of the data loss
affecting the data flow DF over the link L2, at the node N5 and over the link L7.
Such link and node data loss measurements are indeed calculated taking into account
the data loss affecting not only the packets of the data flow DF, but also the packets
of the other data flows whose paths at least partially overlap or cross the path of
the data flow DF. For instance, the link data loss relating to the link L2 is calculated
taking into account all the packets transmitted from the node N1 to the node N5 over
the link L2, not only the packets of the data flow DF. Indeed, the flow charts of
Figures 4 and 5 show that, when the input and output interfaces of a node increase
their respective counters, they do not consider the data flow to which the packets
belong. Therefore, the link data loss of L2 calculated as described above basically
is an average of the data loss affecting all the data flows carried by the link L2
from N1 to N5. Such a link data loss measurement is accordingly a quite accurate estimate
of the actual data loss affecting the data flow DF over the link L2, provided that
the actual data loss affecting the data flow DF is not too far from the average.
[0108] The link and node data loss measurements relating to L2, N5 and L7 may be also added
together, thereby providing an estimate of the end-to-end data loss affecting the
data flow DF along its entire path.
[0109] The above described method therefore advantageously allows estimating the data loss
affecting a data flow without the need to identify the data flow at each node comprised
in its path through the communication network. Indeed, the nodes of the communication
networks provide node data loss measurements and link data loss measurements which
relate to all the traffic carried through the network, without making any distinction
between the various data flows. An estimate of the data loss affecting a given data
flow is derived from the node and link data loss measurements, once the path of the
data flow is known.
[0110] This solution is very simple to implement at the nodes of the communication network,
because each node merely has to check the marking of the packets, without having to
read or process further information (for instance source or destination MAC address,
VLAN-id or, in IP packets, at least one of source or destination IP address, source
or destination port identifier or protocol) allowing identification of the data flows.
[0111] Further, no customisation of the packet marking and/or counting mechanisms is required
at the nodes for estimating the data loss relating to a given data flow. Indeed, the
link and node data loss measurements calculated based on the counters provided by
the nodes as described above allow estimating the data loss for any data flow transmitted
through the communication network, independently of the path followed by the data
flow. The nodes may provide continuously their counters based on which the data loss
performance of each node and link may be monitored. In case a new data loss estimate
is needed on a given data flow, the operation of the nodes is kept unchanged and the
relevant link and node data loss measurements are gathered for providing the desired
estimate.
[0112] Further, the above method does not interfere with possible data loss measurement
sessions carried out on specific data flows according to
WO 2010/072251. Indeed, as described above with reference to Figure 4, the input interfaces of the
nodes, upon reception of an already marked packet from an adjacent node, merely increase
the global input counters, without modifying the marking of the packet. Similarly,
as shown in Figure 5, the output interfaces of the nodes, upon reception of an already
marked packet, merely increase the relevant partial output counters, without modifying
the marking of the packet. In other words, each node merely marks unmarked packets,
but do not remark already marked packets. Therefore, in case a packet is marked by
its source node for implementing an end-to-end data loss measurement according to
WO 2010/072251, the intermediate nodes of the path do not change such marking. The packet is accordingly
received at the destination node with its original marking unchanged. The destination
node may then identify such packet and suitably process it for measuring the data
loss.
[0113] According to a second embodiment of the present invention, the above described method
may be used for performing, in addition to a data loss measurement, also a time measurement
(i.e. a delay and/or interarrival jitter measurement).
[0114] To this purpose, each input interface Iin1, Iin2, Iin3, Iin4 preferably implements,
for each global and partial input counter, a respective input timestamp. Similarly,
each output interface lout1, lout2, lout3, lout4 preferably implements, for each global
and partial output counter, a respective output timestamp.
[0115] According to this second embodiment, after checking the marking of the received packet
Pk1 (step 404 of Figure 4), the input interface Iin1 preferably checks also whether
the received packet Pk1 is the first packet received during the current block period
and, in the affirmative, sets to the current time (indicated by the local clock of
the node Ni) the input timestamp associated to the global input counter counting packets
marked as the packet Pk1. This way, the input timestamps associated to the global
input counters X1 (1), X1 (0) indicate the time at which the first packet Pk1 marked
by 1 or 0 is received during the current odd or even block period.
[0116] Similarly, after checking again the marking of the packet Pk1 (step 408 of Figure
4) and the output interface to which the packet Pk1 has to be forwarded (steps 409,
411 of Figure 4), the input interface Iin1 preferably checks also whether the received
packet Pk1 is the first packet to be transmitted to that output interface during the
current block period and, in the affirmative, sets to the current time (indicated
by the local clock of the node Ni) the input timestamp associated to the partial input
counter relating to that output interface and counting packets marked as the packet
Pk1. This way, the input timestamps associated to the partial input counters X12(1),
X12(0); X13(1), X13(0); X14(1), X14(0) indicate the time at which the first packet
Pk1 marked by 1 or 0 is forwarded to the output interfaces lout2, lout3 and lout4
during the current odd or even block period.
[0117] On the other hand, according to the second embodiment, after checking the marking
of the packet Pk2 (step 504 of Figure 5) and the input interface from which the packet
Pk2 is received (steps 505, 507 of Figure 5), the output interface lout2 preferably
checks also whether the received packet Pk2 is the first packet received from that
input interface during the current block period and, in the affirmative, sets to the
current time (indicated by the local clock of the node Ni) the output timestamp associated
to the partial output counter relating to that input interface and counting packets
marked as the packet Pk2. This way, the output timestamps associated to the partial
output counters Y12(1), Y12(0); Y32(1), Y32(0); Y42(1), Y42(0) indicate the time at
which the first packet Pk2 marked by 1 or 0 is received from the input interfaces
lin1, Iin3 and Iin4 during the current odd or even block period.
[0118] Similarly, after checking again the marking of the received packet Pk2 (step 511
of Figure 5), the output interface lout2 preferably checks also whether the packet
Pk2 is the first packet to be transmitted along the exiting link during the current
block period and, in the affirmative, sets to the current time (indicated by the local
clock of the node Ni) the output timestamp associated to the global output counter
counting packets marked as the packet Pk2. This way, the output timestamps associated
to the global output counters Y2(1), Y2(0) indicate the time at which the first packet
Pk2 marked by 1 or 0 is transmitted during the current odd or even block period.
[0119] At each block period Tb, the node Ni then provides a set of timestamps which allow
performing time (in particular, delay and/or interarrival jitter) measurements relating
to data traffic crossing the node Ni. In particular, at each block period Tb, two
types of time measurements may be performed, namely node time measurements and link
time measurements.
[0120] A node time measurement (in particular, a node delay measurement) indicates the delay
affecting data traffic transmitted from the input interface of a first port of a node
to the output interface of a second port of the same node. The node delay may be calculated
as the difference between
- (i) the output timestamp associated to the partial output counter provided by the
output interface of the second port which counts the packets received from the input
interface of the first port, and
- (ii) the input timestamp associated to the partial input counter provided by the input
interface of the first port which counts the packets to be forwarded to the output
interface of the second port.
[0121] At each block period, the timestamps used for making the calculation are the timestamps
associated to the partial counters which have constant value during the current block
period (namely: during the odd block periods T1, T3, .. Tk-1 the partial counters
counting 0-marked packets, and during even block periods T2, T4, ... Tk the partial
counters counting 1-marked packets).
[0122] Each node of the communication network CN may perform node delay measurements autonomously,
i.e. independently of the other nodes of the communication network CN. Even if the
other nodes of the communication network CN do not implement the above described method,
each node may autonomously calculate the delay between any couple of its ports, because
all its input and output interfaces are provided with the marking, counting and timestamping
capabilities allowing it to generate the timestamps associated to the partial counters
whose values are needed for calculating the node delay.
[0123] As far as link time measurements are concerned (in particular, link delay measurements),
a link delay indicates the delay affecting data traffic transmitted from the output
interface of a port of a first node to the input interface of a port of a second node
over a link connecting the first and second nodes. The link delay may be calculated
as the difference between:
- (i) the input timestamp associated to the global input counter provided by the input
interface of the port of the second node which counts the packets received from the
link, and
- (ii) the output timestamp associated to the global output counter provided by the
output interface of the port of the first node which counts the packets to be forwarded
over the link.
[0124] At each block period, the timestamps used for making the calculation are the timestamps
associated to the global counters which have constant value during the current block
period (namely: during the odd block periods T1, T3, .. Tk-1 the global counters counting
0-marked packets, and during even block periods T2, T4, ... Tk the global counters
counting 1-marked packets).
[0125] Hence, for performing a link delay measurement, the timestamps associated to the
global counters generated by the nodes upstream and downstream the link are needed.
Therefore, the above described marking, counting and timestamping capabilities shall
be implemented at the nodes immediately upstream and downstream the link, and the
values of the global counters shall be provided according to the above described centralized
approach or distributed approach to a single entity (namely, the management server
MS or a node), which is responsible for calculating the link delay using the values
of the timestamps associated to the global counters.
[0126] In addition to calculating node and link delays, also the node and link interarrival
jitters may be calculated.
[0127] In particular, the node (or link) interarrival jitter may be calculated as the difference
between the node (or link) delay calculated at the current block period and the node
(or link) delay calculated at the preceding block period.
[0128] Alternatively, according to a particularly advantageous variant of the second embodiment,
each input interface lin1, lin2, lin3, Iin4 preferably implements, for each global
and partial input counter, a respective couple of input timestamps: an end-of-preceding-block
(EOPB) input timestamp and a start-of-current-block (SOCB) input timestamp. Similarly,
each output interface lout1, lout2, lout3, lout4 preferably implements, for each global
and partial output counter, a respective couple of output timestamps: an end-of-preceding-block
(EOPB) output timestamp and a start-of-current-block (SOCB) output timestamp.
[0129] The SOCB input and output timestamps basically correspond to the input and output
timestamps described above (i.e. they relate to the first packet of the current block
period), whereas the EOPB input and output timestamps relate to the last packet of
the block period preceding the current one.
[0130] According to this advantageous variants, the node Ni then provides two sets of timestamps:
- a set of SOCB timestamps which, at each block period, allow calculating the node or
link delay relating to the first packet of the current block period, and
- a set of EOPB timestamps which, at each block period, allow calculating the node or
link delay relating to the last packet of the preceding block period.
[0131] Also according to this advantageous variant, at each block period, the SOCB or EOPB
timestamps used for making the calculation are the timestamps associated to the global
or partial counters which have constant value during the current block period (namely:
during the odd block periods T1, T3, ... Tk-1 the counters counting 0-marked packets,
and during even block periods T2, T4, ... Tk the counters counting 1-marked packets).
[0132] According to this advantageous variant, the node (or link) interarrival jitter may
be calculated as the difference between the node (or link) delay relating to the first
packet of the current block period and the node (or link) delay relating to the last
packet of the preceding block period. In other words, the interarrival jitter is calculated
based on the delays of two consecutive packets. This allows calculating the interarrival
jitter in a more precise way than using the delays relating to the first packet of
two consecutive block periods. Indeed, possible drifting of the local clock, which
may induce inaccuracy of the timestamps and hence of the calculated delay and interarrival
jitter, has a much reduced effect in case of consecutive packets, because the time
elapsing between transmission of two consecutive packets is much shorter that the
time elapsing between transmission of the first packet of two consecutive block periods.
[0133] Preferably, at each block period the node or link delay and interarrival jitter are
calculated only if the corresponding node or link data loss calculated during the
same block period is equal to 0. Indeed, if the first (or last) packet of a block
period is lost, the value assigned to the corresponding timestamp during that block
period relates to a subsequent packet of that block, and not to the first one. Hence,
a time measurement based on such timestamp is intrinsically inaccurate, because it
is calculated as a difference between timestamps that relate to different packets.
[0134] However, if the first packet of a block period is lost during transmission within
a node or over a link, this does not impair the accuracy of delay and interarrival
jitter calculated during subsequent block periods. Indeed, loss of the first packet
of a block period does not prevent the input and output interfaces of the nodes from
recognizing the first packet of the subsequent block period, and from properly setting
the timestamps for that block period. From then on, the delay and interarrival jitter
calculation will be then immune from inaccuracy due to loss of the first packet in
the previous block period.
[0135] The time measurements are not necessarily based on the first packets of each block
period. According to further variants of the second embodiments, the timestamps may
be set to the current time indicated by the local clock for a different packet of
the block period. Further, for increasing the measurement period of delay and interarrival
jitter without reducing the block period Tb, the timestamps may be set for more than
one packet for each block (e.g. the first, the 101st, the 201st, etc.).
[0136] Also according to the second embodiment, the node time measurements and link time
measurements relating to nodes and links of the communication network CN may be used
for estimating the delay or interarrival jitter affecting a given data flow transmitted
across the communication network CN from a given source node to a given destination
node.
[0137] For instance, with reference again to Figure 7, the node and link time measurements
relating to nodes and links of the communication network CN may be used for estimating
the delay and/or interarrival jitter affecting a data flow DF transmitted from N1
(acting as source node) to N4 (acting as destination node).
[0138] Once the path followed by the data flow DF through the communication network CN (i.e.
link L2, node N5 and link L7) is known, the link delay and/or interarrival jitter
of link L2 in the direction from N1 to N5, the node delay and/or interarrival jitter
at node N5 from the port downstream the link L2 to the port upstream the link L7 and
the link delay and/or interarrival jitter of link L7 in the direction from N5 to N4
are calculated by the involved nodes N1, N5, N4 and/or by the management server MS
using the values of the timestamps provided by the nodes N1, N5 and N4, as described
above.
[0139] Such link and node time measurements basically are estimates of the delay and/or
interarrival jitter affecting the data flow DF over the link L2, at the node N5 and
over the link L7. Such link and node time measurements are indeed calculated taking
into account the delay affecting not only the packets of the data flow DF, but also
the packets of other data flows whose paths at least partially overlap or cross the
path of the data flow DF. Indeed, when the input and output interfaces of a node set
their respective timestamps, they do not consider the data flow to which the packets
belong. Therefore, the delay and/or interarrival jitter e.g. of the link L2 calculated
as described above basically is an average of the delay and/or interarrival jitter
affecting all the data flows transmitted over the link L2. Such a link time measurement
is accordingly a quite accurate estimate of the actual delay and/or interarrival jitter
affecting the data flow DF over the link L2, provided that the actual delay and/or
interarrival jitter affecting the data flow DF is not too far from the average.
[0140] The link and node delay and/or interarrival jitter measurements relating to L2, N5
and L7 may be also added together, thereby providing an estimate of the end-to-end
delay affecting the data flow DF along its entire path.
[0141] The method according to the second embodiment of the present invention basically
has the same advantages as the method according to the first embodiment, namely: possibility
to perform time measurements relating to a given data flow without the need to identify
the data flow and without the need to customize the packet marking and/or counting
and/or timestamping mechanism at the nodes, no interference with time measurement
sessions carried out on specific data flows according to
WO 2010/072251.
[0142] The above description of the method according to the first and second embodiments
has been made under the assumption that the communication network CN supports a single
communication protocol, namely Ethernet, IP, MPLS, etc. According to further embodiments,
the communication network CN may support multiple communication protocols, possibly
at different layers of the ISO-OSI or TCP/IP protocol suite. For instance, the communication
network may support both Ethernet (Layer 2) and MPLS (intermediate between Layer 2
and Layer 3). In this case, a separate data loss or time measurement mechanism shall
be implemented for each supported protocol.
1. A method for performing a measurement on data traffic at a node (Ni) of a communication
network (CN), said node (Ni) comprising at least an input interface (Iin1) and an
output interface (lout2),
said method comprising, at said input interface (Iin1), receiving first data units
(Pk1) of said data traffic and:
a) for each received first data unit (Pk1), checking whether said first data unit
(Pk1) is marked by a feature (b2) set to any value selected from a first value and
a second value;
b) implementing a global input parameter (X1(1)) and, if said first data unit (Pk1)
is marked, updating said global input parameter (X1(1)) when said feature (b2) is
set to said first value; and
c) implementing a partial input parameter (X12(1)) relating to said output interface
(lout2) and updating said partial input parameter (X12(1)) when said feature (b2)
is set to said first value and when said first data unit (Pk1) is addressed to said
output interface (lout2),
said method further comprising, at said output interface (lout2), receiving second
data units (Pk2) of said data traffic, said second data units (Pk2) comprising at
least part of said first data units (Pk1), and:
d) for each received second data unit (Pk2), checking whether said second data unit
(Pk2) is marked by said feature (b2) set to any value selected from said first value
and said second value;
e) implementing a partial output parameter (Y12(1)) relating to said input interface
(Iin1) and, if said second data unit (Pk2) is marked, updating said partial output
parameter (Y12(1)) when said feature (b2) is set to said first value and when said
second data unit (Pk2) is received from said input interface (Iin1); and
f) implementing a global output parameter (Y2(1)) and updating said global output
parameter (Y2(1)) when said feature (b2) is set to said first value,
said method further comprising:
g) at said node (Ni), performing a measurement relating to said data traffic within
said node (Ni) based on said partial input parameter (X12(1)) and said partial output
parameter (Y12(1)).
2. The method according to claim 1, wherein:
- at said step b), said updating comprises increasing a global input counter (X1(1))
upon reception of each first data unit (Pki) having said feature (b2) set to said
first value;
- at said step c), said updating comprises increasing a partial input counter (X12(1))
upon reception of each first data unit (Pk1) having said feature (b2) set to said
first value and being addressed to said output interface (lout2);
- at said step e), said updating comprises increasing a partial output counter (Y12(1))
upon reception of each second data unit (Pk2) having said feature (b2) set to said
first value and being received from said input interface (Iin1);
- at said step f), said updating comprises increasing a global output counter (Y2(1))
upon reception of each second data unit (Pk2) having said feature (b2) set to said
first value; and
- at said step g), the method further comprises, at said node (Ni) or at a management
server (MS) cooperating with said node (Ni), calculating a data loss based on at least
one of: said global input counter (X1(1)), said partial input counter (X12(1)), said
global output counter (Y2(1)) and said partial output counter (Y12(1)).
3. The method according to claim 1 or 2, wherein:
- at said step b), said updating comprises setting a global input timestamp equal
to a current time upon reception of a predetermined first data unit (Pk1) having said
feature (b2) set to said first value;
- at said step c), said updating comprises setting a partial input timestamp equal
to said current time upon reception of said predetermined first data unit (Pk1), if
said predetermined first data unit (Pk1) is addressed to said output interface (lout2);
- at said step e), said updating comprises setting a partial output timestamp equal
to said current time upon reception of a predetermined second data unit (Pk2) having
said feature (b2) set to said first value, if said predetermined second data unit
(Pk2) is received from said input interface (Iin1);
- at said step f), said updating comprises setting a global output timestamp equal
to said current time upon reception of said predetermined second data unit (Pk2);
and
- at said step g), the method further comprises, at said node (Ni) or at a management
server (MS) cooperating with said node (Ni), performing a time measurement based on
at least one of: said global input timestamp, said partial input timestamp, said global
output timestamp and said partial output timestamp.
4. The method according to claim 3 wherein, at said step g), said performing a time measurement
comprises measuring at least one of a delay and an interarrival jitter of said data
traffic.
5. The method according to claim 3 or 4, wherein:
- at said step b), said updating further comprises setting a further global input
timestamp equal to a time upon which a further predetermined first data unit (Pk1)
temporally adjacent to said predetermined first data unit (Pk1) has been received;
- at said step c), said updating further comprises setting a further partial input
timestamp equal said time upon which said further predetermined first data unit (Pk1)
has been received;
- at said step e), said updating further comprises setting a further partial output
timestamp equal to a time upon which a further predetermined second data unit (Pk2)
temporally adjacent to said predetermined second data unit (Pk2) has been received;
- at said step f), said updating further comprises setting a further global output
timestamp equal said time upon which said further predetermined second data unit (Pk2)
has been received; and
- at said step g), said performing a time measurement comprises measuring an interarrival
jitter as a difference between:
- one of: said global input timestamp, said partial input timestamp, said global output
timestamp and said partial output timestamp, respectively; and
- one of: said further global input timestamp, said further partial input timestamp,
said further global output timestamp and said further partial output timestamp, respectively.
6. The method according to any of the preceding claims wherein, at said step g), the
method further comprises, at said node (Ni) or at a management server (MS) cooperating
with said node (Ni), performing a measurement relating to said data traffic on a first
link between said node (Ni) and a first further node transmitting said first data
units (Pk1) to said node (Ni) based on said global input parameter (X1(1)) and a further
global output parameter generated by said first further node.
7. The method according to any of the preceding claims wherein, at said step g), the
method further comprises, at said node (Ni) or at a management server (MS) cooperating
with said node (Ni), performing a measurement relating to said data traffic on a second
link between said node (Ni) and a second further node receiving said second packets
(Pk2) from said node (Ni) based on said global output parameter (Y2(1)) and a further
global input parameter generated by said second further node.
8. The method according to any of the preceding claims wherein it further comprises,
if at step a) it is determined that said first data unit (Pk1) is not marked, marking
said first data unit (Pk1) by setting said feature (b2) to said first value before
performing said step c).
9. The method according to any of the preceding claims, wherein said method further comprises,
if at step d) it is determined that said second data unit (Pk2) is not marked, marking
said second data unit (Pk2) by setting said feature (b2) to said first value before
performing said step f).
10. A node (Ni) for a communication network (CN), said node (Ni) comprising at least an
input interface (Iin1) and an output interface (lout2),
wherein said input interface (Iin1) is configured to receive first data units (Pk1)
of a data traffic and:
a) for each received first data unit (Pk1), check whether said first data unit (Pk1)
is marked by a feature (b2) set to any value selected from a first value and a second
value;
b) implement a global input parameter (X1(1)) and, if said first data unit (Pk1) is
marked, update said global input parameter (X1(1)) when said feature (b2) is set to
said first value; and
c) implement a partial input parameter (X12(1)) relating to said output interface
(lout2) and update said partial input parameter (X12(1)) when said feature (b2) is
set to said first value and when said first data unit (Pk1) is addressed to said output
interface (lout2),
and wherein said output interface (lout2) is configured to receive second data units
(Pk2) of said data traffic, said second data units (Pk2) comprising at least part
of said first data units (Pk1), and:
d) for each received second data unit (Pk2), check whether said second data unit (Pk2)
is marked by said feature (b2) set to any value selected from said first value and
said second value;
e) implement a partial output parameter (Y12(1)) relating to said input interface
(Iin1) and, if said second data unit (Pk2) is marked, update said partial output parameter
(Y12(1)) when said feature (b2) is set to said first value and when said second data
unit (Pk2) is received from said input interface (Iin1); and
f) implement a global output parameter (Y2(1)) and update said global output parameter
(Y2(1)) when said feature (b2) is set to said first value,
said node (Ni) being further configured to provide said global input parameter (X1(1)),
said partial input parameter (X12(1)), said global output parameter (Y2(1)) and said
partial output parameter (Y12(1)) for performing a measurement on said data traffic,
said node (Ni) being further configured to perform a measurement relating to said
data traffic within said node (Ni) based on said partial input parameter (X12(1))
and said partial output parameter.
1. Verfahren zum Durchführen einer Messung an Datenverkehr an einem Knoten (Ni) eines
Kommunikationsnetzwerks (CN), wobei der Knoten (Ni) mindestens eine Eingangsschnittstelle
(Iin1) und eine Ausgangsschnittstelle (Iout2) umfasst,
wobei das Verfahren an der Eingangsschnittstelle (Iin1) das Empfangen von ersten Dateneinheiten
(Pk1) des Datenverkehrs sowie Folgendes umfasst:
a) für jede empfangene erste Dateneinheit (Pk1) Prüfen, ob die erste Dateneinheit
(Pk1) mit einem Merkmal (b2) markiert ist, das auf einen Wert eingestellt ist, der
aus einem ersten Wert und einem zweiten Wert ausgewählt ist;
b) Implementieren eines globalen Eingangsparameters (X1(1)) und, wenn die erste Dateneinheit
(Pk1) markiert ist, Aktualisieren des globalen Eingangsparameters (X1(1)), wenn das
Merkmal (b2) auf den ersten Wert eingestellt ist; und
c) Implementieren eines teilweisen Eingangsparameters (X12(1)), der die Ausgangsschnittstelle
(Iout2) betrifft, und Aktualisieren des teilweisen Eingangsparameters (X12(1)), wenn
das Merkmal (b2) auf den ersten Wert eingestellt ist und wenn die erste Dateneinheit
(Pk1) an die Ausgangsschnittstelle (Iout2) adressiert ist,
wobei das Verfahren an der Ausgangsschnittstelle (Iout2) ferner das Empfangen von
zweiten Dateneinheiten (Pk2) des Datenverkehrs umfasst, wobei die zweiten Dateneinheiten
(Pk2) mindestens einen Teil der ersten Dateneinheiten (Pk1) sowie Folgendes umfassen:
d) für jede empfangene zweite Dateneinheit (Pk2) Prüfen, ob die zweite Dateneinheit
(Pk2) mit dem Merkmal (b2) markiert ist, das auf einen Wert eingestellt ist, der aus
dem ersten Wert und dem zweiten Wert ausgewählt ist;
e) Implementieren eines teilweisen Ausgangsparameters (Y12(1)), der die Eingangsschnittstelle
(Iin1) betrifft, und, wenn die zweite Dateneinheit (Pk2) markiert ist, Aktualisieren
des teilweisen Ausgangsparameters (Y12(1)), wenn das Merkmal (b2) auf den ersten Wert
eingestellt ist und wenn die zweite Dateneinheit (Pk2) von der Eingangsschnittstelle
(Iin1) empfangen wird; und
f) Implementieren eines globalen Ausgangsparameters (Y2(1)) und Aktualisieren des
globalen Ausgangsparameters (Y2(1)), wenn das Merkmal (b2) auf den ersten Wert eingestellt
ist,
wobei das Verfahren ferner Folgendes umfasst:
g) Durchführen einer Messung, die den Datenverkehr im Knoten (Ni) betrifft, am Knoten
(Ni) auf Basis des teilweisen Eingangsparameter (X12(1)) und des teilweisen Ausgangsparameters
(Y12(1)).
2. Verfahren nach Anspruch 1, wobei:
- in Schritt b) das Aktualisieren nach Empfang jeder ersten Dateneinheit (Pk1), bei
der das Merkmal (b2) auf den ersten Wert eingestellt ist, das Erhöhen eines globalen
Eingangszählers (X1(1)) umfasst;
- in Schritt c) das Aktualisieren nach Empfang jeder ersten Dateneinheit (Pk1), bei
der das Merkmal (b2) auf den ersten Wert eingestellt ist und die an die Ausgangsschnittstelle
adressiert ist (Iout2), das Erhöhen eines teilweisen Eingangszählers (X12(1)) umfasst;
- in Schritt e) das Aktualisieren nach Empfang jeder zweiten Dateneinheit (Pk2), bei
der das Merkmal (b2) auf den ersten Wert eingestellt ist und die von der Eingangsschnittstelle
(Iin1) empfangen wird, das Erhöhen eines teilweisen Ausgangszählers (Y12(1)) umfasst;
- in Schritt f) das Aktualisieren nach Empfang jeder zweiten Dateneinheit (Pk2), bei
der das Merkmal (b2) auf den ersten Wert eingestellt ist, das Erhöhen eines globalen
Ausgangszählers (Y2(1)) umfasst und
- in Schritt g) das Verfahren am Knoten (Ni) oder an einem Verwaltungsserver (MS),
der mit dem Knoten (Ni) zusammenwirkt, ferner das Berechnen eines Datenverlusts auf
Basis von einem von Folgendem umfasst: dem Eingangszähler (X1(1)), dem teilweisen
Eingangszähler (X12(1)), dem globalen Ausgangszähler (Y2(1)) und dem teilweisen Ausgangszähler
(Y12(1)).
3. Verfahren nach Anspruch 1 oder 2, wobei:
- in Schritt b) das Aktualisieren nach Empfang einer vorbestimmten ersten Dateneinheit
(Pk1), bei der das Merkmal (b2) auf den ersten Wert eingestellt ist, das Einstellen
eines globalen Eingangszeitstempels auf eine aktuelle Zeit umfasst;
- in Schritt c) das Aktualisieren nach Empfang der vorbestimmten ersten Dateneinheit
(Pk1) das Einstellen eines teilweisen Eingangszeitstempels auf die aktuelle Zeit umfasst,
wenn die vorbestimmte erste Dateneinheit (Pk1) an die Ausgangsschnittstelle (Iout2)
adressiert ist;
- in Schritt e) das Aktualisieren nach Empfang einer vorbestimmten zweiten Dateneinheit
(Pk2), bei der das Merkmal (b2) auf den ersten Wert eingestellt ist, das Einstellen
eines teilweisen Ausgangszeitstempels auf die aktuelle Zeit umfasst, wenn die vorbestimmte
zweite Dateneinheit (Pk2) von der Eingangsschnittstelle (Iin1) empfangen wird;
- in Schritt f) das Aktualisieren nach Empfang der vorbestimmten zweiten Dateneinheit
(Pk2) das Einstellen eines globalen Ausgangszeitstempels auf die aktuelle Zeit umfasst
und
- in Schritt g) das Verfahren am Knoten (Ni) oder an einem Verwaltungsserver (MS),
der mit dem Knoten (Ni) zusammenwirkt, ferner das Durchführen einer Zeitmessung auf
Basis von mindestens einem von Folgendem umfasst: dem globalen Eingangszeitstempel,
dem teilweisen Eingangszeitstempel, dem globalen Ausgangszeitstempel und dem teilweisen
Ausgangszeitstempel.
4. Verfahren nach Anspruch 3, wobei in Schritt g) das Durchführen einer Zeitmessung das
Messen von mindestens einem von einer Verzögerung und einem Zwischenankunftsjitter
des Datenverkehrs umfasst.
5. Verfahren nach Anspruch 3 oder 4, wobei:
- in Schritt b) das Aktualisieren ferner das Einstellen eines weiteren globalen Eingangszeitstempels
auf eine Zeit, nach der eine weitere vorbestimmte erste Dateneinheit (Pk1), die der
vorbestimmten ersten Dateneinheit (Pk1) zeitlich benachbart ist, empfangen wurde,
umfasst;
- in Schritt c) das Aktualisieren ferner das Einstellen eines weiteren teilweisen
Eingangszeitstempels auf eine Zeit, nach der die weitere vorbestimmte erste Dateneinheit
(Pk1) empfangen wurde, umfasst;
- in Schritt e) das Aktualisieren ferner das Einstellen eines weiteren teilweisen
Ausgangszeitstempels auf eine Zeit, nach der eine weitere vorbestimmte zweite Dateneinheit
(Pk2), die der vorbestimmten zweiten Dateneinheit (Pk2) zeitlich benachbart ist, empfangen
wurde, umfasst;
- in Schritt f) das Aktualisieren ferner das Einstellen eines weiteren globalen Ausgangszeitstempels
auf eine Zeit, nach der die weitere vorbestimmte zweite Dateneinheit (Pk2) empfangen
wurde, umfasst und
- in Schritt g) das Durchführen einer Zeitmessung das Messen eines Zwischenankunftsjitters
als eine Differenz zwischen Folgendem umfasst:
- dem globalen Eingangszeitstempel, dem teilweisen Eingangszeitstempel, dem globalen
Ausgangszeitstempel bzw. dem teilweisen Ausgangszeitstempel und
- dem weiteren globalen Eingangszeitstempel, dem weiteren teilweisen Eingangszeitstempel,
dem weiteren globalen Ausgangszeitstempel bzw. dem weiteren teilweisen Ausgangszeitstempel.
6. Verfahren nach einem der vorhergehenden Ansprüche wobei in Schritt g) das Verfahren
am Knoten (Ni) oder an einem Verwaltungsserver (MS), der mit dem Knoten (Ni) zusammenwirkt,
ferner das Durchführen einer Messung, die den Datenverkehr auf einer ersten Verbindung
zwischen dem Knoten (Ni) und einem ersten weiteren Knoten, der die ersten Dateneinheiten
(Pk1) zum Knoten (Ni) überträgt, betrifft, auf Basis des globalen Eingangsparameters
(X1(1)) und eines weiteren globalen Ausgangsparameters, der vom ersten weiteren Knoten
erzeugt wird, umfasst.
7. Verfahren nach einem der vorhergehenden Ansprüche wobei in Schritt g) das Verfahren
am Knoten (Ni) oder an einem Verwaltungsserver (MS), der mit dem Knoten (Ni) zusammenwirkt,
ferner das Durchführen einer Messung, die den Datenverkehr auf einer zweiten Verbindung
zwischen dem Knoten (Ni) und einem zweiten weiteren Knoten, der die zweiten Pakete
(Pk2) vom Knoten (Ni) empfängt, betrifft, auf Basis des globalen Ausgangsparameters
(Y2(1)) und eines weiteren globalen Eingangsparameters, der vom zweiten weiteren Knoten
erzeugt wird, umfasst.
8. Verfahren nach einem der vorhergehenden Ansprüche, wobei es ferner das Markieren der
ersten Dateneinheit (Pk1) durch Einstellen des Merkmals (b2) auf den ersten Wert,
bevor Schritt c) durchgeführt wird, umfasst, wenn in Schritt a) bestimmt wird, dass
die erste Dateneinheit (Pk1) nicht markiert ist.
9. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Verfahren ferner das
Markieren der zweiten Dateneinheit (Pk2) durch Einstellen des Merkmals (b2) auf den
ersten Wert, bevor Schritt f) durchgeführt wird, umfasst, wenn in Schritt d) bestimmt
wird, dass die zweite Dateneinheit (Pk2) nicht markiert ist.
10. Knoten (Ni) für ein Kommunikationsnetzwerk (CN), wobei der Knoten (Ni) mindestens
eine Eingangsschnittstelle (Iin1) und eine Ausgangsschnittstelle (Iout2) umfasst,
wobei die Eingangsschnittstelle (Iin1) dazu ausgelegt ist, erste Dateneinheiten (Pk1)
eines Datenverkehrs zu empfangen, sowie zu Folgendem:
a) für jede empfangene erste Dateneinheit (Pk1) Prüfen, ob die erste Dateneinheit
(Pk1) mit einem Merkmal (b2) markiert ist, das auf einen Wert eingestellt ist, der
aus einem ersten Wert und einem zweiten Wert ausgewählt ist;
b) Implementieren eines globalen Eingangsparameters (X1(1)) und, wenn die erste Dateneinheit
(Pk1) markiert ist, Aktualisieren des globalen Eingangsparameters (X1(1)), wenn das
Merkmal (b2) auf den ersten Wert eingestellt ist; und
c) Implementieren eines teilweisen Eingangsparameters (X12(1)), der die Ausgangsschnittstelle
(Iout2) betrifft, und Aktualisieren des teilweisen Eingangsparameters (X12(1)), wenn
das Merkmal (b2) auf den ersten Wert eingestellt ist und wenn die erste Dateneinheit
(Pk1) an die Ausgangsschnittstelle (Iout2) adressiert ist,
und wobei die Ausgangsschnittstelle (Iout2) dazu ausgelegt ist, zweite Dateneinheiten
(Pk2) des Datenverkehrs zu empfangen, wobei die zweiten Dateneinheiten (Pk2) mindestens
einen Teil der ersten Dateneinheiten (Pk1) umfassen, und:
d) für jede empfangene zweite Dateneinheit (Pk2) Prüfen, ob die zweite Dateneinheit
(Pk2) mit dem Merkmal (b2) markiert ist, das auf einen Wert eingestellt ist, der aus
dem ersten Wert und dem zweiten Wert ausgewählt ist;
e) Implementieren eines teilweisen Ausgangsparameters (Y12(1)), der die Eingangsschnittstelle
(Iin1) betrifft, und, wenn die zweite Dateneinheit (Pk2) markiert ist, Aktualisieren
des teilweisen Ausgangsparameters (Y12(1)), wenn das Merkmal (b2) auf den ersten Wert
eingestellt ist und wenn die zweite Dateneinheit (Pk2) von der Eingangsschnittstelle
(Iin1) empfangen wird; und
f) Implementieren eines globalen Ausgangsparameters (Y2(1)) und Aktualisieren des
globalen Ausgangsparameters (Y2(1)), wenn das Merkmal (b2) auf den ersten Wert eingestellt
ist,
wobei der Knoten (Ni) ferner dazu ausgelegt ist, den globalen Eingangsparameter (X1(1)),
den teilweisen Eingangsparameter (X12(1)), den globalen Ausgangsparameter (Y2(1))
und den teilweisen Ausgangsparameter (Y12(1)) zum Durchführen einer Messung am Datenverkehr
bereitzustellen, wobei der Knoten (Ni) ferner dazu ausgelegt ist, eine Messung, die
den Datenverkehr im Knoten (Ni) betrifft, auf Basis des teilweisen Eingangsparameters
(X12(1)) und des teilweisen Ausgangsparameters durchzuführen.
1. Procédé de mise en œuvre d'une mesure sur du trafic de données au niveau d'un nœud
(Ni) d'un réseau de communication (CN), ledit nœud (Ni) comprenant au moins une interface
d'entrée (Iin1) et une interface de sortie (lout2) ;
ledit procédé comprenant, au niveau de ladite interface d'entrée (lin1), l'étape consistant
à recevoir des premières unités de données (Pk1) dudit trafic de données, et :
a) pour chaque première unité de données reçue (Pk1), vérifier si ladite première
unité de données (Pk1) est marquée par une caractéristique (b2) définie sur une valeur
quelconque sélectionnée parmi une première valeur et une seconde valeur ;
b) mettre en œuvre un paramètre d'entrée globale (X1(1)) et, si ladite première unité
de données (Pk1) est marquée, mettre à jour ledit paramètre d'entrée globale (X1(1))
lorsque ladite caractéristique (b2) est définie sur ladite première valeur ; et
c) mettre en œuvre un paramètre d'entrée partielle (X12(1)) connexe à ladite interface
de sortie (lout2) et mettre à jour ledit paramètre d'entrée partielle (X12(1)) lorsque
ladite caractéristique (b2) est définie sur ladite première valeur et lorsque ladite
première unité de données (Pk1) est adressée à ladite interface de sortie (lout2)
;
ledit procédé comprenant en outre, au niveau de ladite interface de sortie (lout2),
l'étape consistant à recevoir des secondes unités de données (Pk2) dudit trafic de
données, lesdites secondes unités de données (Pk2) comprenant au moins une partie
desdites premières unités de données (Pk1), et :
d) pour chaque seconde unité de données reçue (Pk2), vérifier si ladite seconde unité
de données (Pk2) est marquée par ladite caractéristique (b2) définie sur une valeur
quelconque sélectionnée parmi ladite première valeur et ladite seconde valeur ;
e) mettre en œuvre un paramètre de sortie partielle (Y12(1)) connexe à ladite interface
d'entrée (Iin1) et, si ladite seconde unité de données (Pk2) est marquée, mettre à
jour ledit paramètre de sortie partielle (Y12(1)) lorsque ladite caractéristique (b2)
est définie sur ladite première valeur et lorsque ladite seconde unité de données
(Pk2) est reçue en provenance de ladite interface d'entrée (Iin1) ; et
f) mettre en œuvre un paramètre de sortie globale (Y2(1)) et mettre à jour ledit paramètre
de sortie globale (Y2(1)) lorsque ladite caractéristique (b2) est définie sur ladite
première valeur ;
ledit procédé comprenant en outre l'étape ci-dessous consistant à :
g) au niveau dudit nœud (Ni), mettre en œuvre une mesure connexe audit trafic de données
au sein dudit nœud (Ni) sur la base dudit paramètre d'entrée partielle (X12(1)) et
dudit paramètre de sortie partielle (Y12(1)).
2. Procédé selon la revendication 1, dans lequel :
- à ladite étape b), ladite étape de mise à jour comprend l'étape consistant à augmenter
un compteur d'entrées globales (X1(1)) suite à la réception de chaque première unité
de données (Pk1) présentant ladite caractéristique (b2) définie sur ladite première
valeur ;
- à ladite étape c), ladite étape de mise à jour comprend l'étape consistant à augmenter
un compteur d'entrées partielles (X12(1)) suite à la réception de chaque première
unité de données (Pk1) présentant ladite caractéristique (b2) définie sur ladite première
valeur et étant adressée à ladite interface de sortie (lout2) ;
- à ladite étape e), ladite étape de mise à jour comprend l'étape consistant à augmenter
un compteur de sorties partielles (Y12(1)) suite à la réception de chaque seconde
unité de données (Pk2) présentant ladite caractéristique (b2) définie sur ladite première
valeur, et étant reçue en provenance de ladite interface d'entrée (Iin1) ;
- à ladite étape f), ladite étape de mise à jour comprend l'étape consistant à augmenter
un compteur de sorties globales (Y2(1)) suite à la réception de chaque seconde unité
de données (Pk2) présentant ladite caractéristique (b2) définie sur ladite première
valeur ; et
- à ladite étape g), le procédé comprend en outre, au niveau dudit nœud (Ni) ou au
niveau d'un serveur de gestion (MS) coopérant avec ledit nœud (Ni), l'étape consistant
à calculer une perte de données sur la base d'au moins l'un parmi : ledit compteur
d'entrées globales (X1(1)), ledit compteur d'entrées partielles (X12(1)), ledit compteur
de sorties globales (Y2(1)) et ledit compteur de sorties partielles (Y12(1)).
3. Procédé selon la revendication 1 ou 2, dans lequel :
- à ladite étape b), ladite étape de mise à jour comprend l'étape consistant à définir
une estampille temporelle d'entrée globale sur une valeur égale à une heure en cours
suite à la réception d'une première unité de données prédéterminée (Pk1) présentant
ladite caractéristique (b2) définie sur ladite première valeur ;
- à ladite étape c), ladite étape de mise à jour comprend l'étape consistant à définir
une estampille temporelle d'entrée partielle sur une valeur égale à ladite heure en
cours suite à la réception de ladite première unité de données prédéterminée (Pk1),
si ladite première unité de données prédéterminée (Pk1) est adressée à ladite interface
de sortie (Iout2) ;
- à ladite étape e), ladite étape de mise à jour comprend l'étape consistant à définir
une estampille temporelle de sortie partielle sur une valeur égale à ladite heure
en cours suite à la réception d'une seconde unité de données prédéterminée (Pk2) présentant
ladite caractéristique (b2) définie sur ladite première valeur, si ladite seconde
unité de données prédéterminée (Pk2) est reçue en provenance de ladite interface d'entrée
(Iin1) ;
- à ladite étape f), ladite étape de mise à jour comprend l'étape consistant à définir
une estampille temporelle de sortie globale sur une valeur égale à ladite heure en
cours suite à la réception de ladite seconde unité de données prédéterminée (Pk2)
; et
- à ladite étape g), le procédé comprend en outre, au niveau dudit nœud (Ni), ou au
niveau d'un serveur de gestion (MS) coopérant avec ledit nœud (Ni), l'étape consistant
à mettre en œuvre une mesure de temps, sur la base d'au moins l'un des éléments parmi
: ladite estampille temporelle d'entrée globale, ladite estampille temporelle d'entrée
partielle, ladite estampille temporelle de sortie globale et ladite estampille temporelle
de sortie partielle.
4. Procédé selon la revendication 3, dans lequel, à ladite étape g), ladite étape de
mise en œuvre d'une mesure de temps comprend l'étape consistant à mesurer au moins
l'un des éléments parmi un retard et une gigue entre les arrivées dudit trafic de
données.
5. Procédé selon la revendication 3 ou 4, dans lequel :
- à ladite étape b), ladite étape de mise à jour comprend en outre l'étape consistant
à définir une estampille temporelle d'entrée globale supplémentaire sur une valeur
égale à un instant auquel une première unité de données prédéterminée supplémentaire
(Pk1) temporellement adjacente à ladite première unité de données prédéterminée (Pk1)
a été reçue ;
- à ladite étape c), ladite étape de mise à jour comprend en outre l'étape consistant
à définir une estampille temporelle d'entrée partielle supplémentaire sur une valeur
égale audit instant auquel ladite première unité de données prédéterminée supplémentaire
(Pk1) a été reçue ;
- à ladite étape e), ladite étape de mise à jour comprend en outre l'étape consistant
à définir une estampille temporelle de sortie partielle supplémentaire sur une valeur
égale à un instant auquel une seconde unité de données prédéterminée supplémentaire
(Pk2) temporairement adjacente à ladite seconde unité de données prédéterminée (Pk2)
a été reçue ;
- à ladite étape f), ladite étape de mise à jour comprend en outre l'étape consistant
à définir une estampille temporelle de sortie globale supplémentaire sur une valeur
égale audit instant auquel ladite seconde unité de données prédéterminée supplémentaire
(Pk2) a été reçue ; et
- à ladite étape g), ladite étape de mise en œuvre d'une mesure de temps comprend
l'étape consistant à mesurer une gigue entre les arrivées en tant qu'une différence
entre :
- l'un des éléments suivants : ladite estampille temporelle d'entrée globale, ladite
estampille temporelle d'entrée partielle, ladite estampille temporelle de sortie globale
et ladite estampille temporelle de sortie partielle, respectivement ; et
- l'un des éléments suivants : ladite estampille temporelle d'entrée globale supplémentaire,
ladite estampille temporelle d'entrée partielle supplémentaire, ladite estampille
temporelle de sortie globale supplémentaire et ladite estampille temporelle de sortie
partielle, supplémentaire, respectivement.
6. Procédé selon l'une quelconque des revendications précédentes, dans lequel, à ladite
étape g), le procédé comprend en outre, au niveau dudit nœud (Ni), ou au niveau d'un
serveur de gestion (MS) coopérant avec ledit nœud (Ni), l'étape consistant à mettre
en œuvre une mesure connexe audit trafic de données sur une première liaison entre
ledit nœud (Ni) et un premier nœud supplémentaire transmettant lesdites premières
unités de données (Pk1) audit nœud (Ni), sur la base dudit paramètre d'entrée globale
(X1(1)) et d'un paramètre de sortie globale supplémentaire généré par ledit premier
nœud supplémentaire.
7. Procédé selon l'une quelconque des revendications précédentes, dans lequel, à ladite
étape g), le procédé comprend en outre, au niveau dudit nœud (Ni) ou au niveau d'un
serveur de gestion (MS) coopérant avec ledit nœud (Ni), l'étape consistant à mettre
en œuvre une mesure connexe audit trafic de données sur une seconde liaison entre
ledit nœud (Ni) et un second nœud supplémentaire recevant lesdits seconds paquets
(Pk2) en provenance dudit nœud (Ni), sur la base dudit paramètre de sortie globale
(Y2(1)) et d'un paramètre d'entrée globale supplémentaire généré par ledit second
nœud supplémentaire.
8. Procédé selon l'une quelconque des revendications précédentes, dans lequel le procédé
comprend en outre, si, à l'étape a), il est déterminé que ladite première unité de
données (Pk1) n'est pas marquée, l'étape consistant à marquer ladite première unité
de données (Pk1) en définissant ladite caractéristique (b2) sur ladite première valeur
avant de mettre en œuvre ladite étape c).
9. Procédé selon l'une quelconque des revendications précédentes, dans lequel ledit procédé
comprend en outre, si, à l'étape d) il est déterminé que ladite seconde unité de données
(Pk2) n'est pas marquée, l'étape consistant à marquer ladite seconde unité de données
(Pk2) en définissant ladite caractéristique (b2) sur ladite première valeur avant
de mettre en œuvre ladite étape f).
10. Nœud (Ni) pour un réseau de communication (CN), ledit nœud (Ni) comprenant au moins
une interface d'entrée (lin1) et une interface de sortie (lout2), dans lequel ladite
interface d'entrée (lin1) est configurée de manière à recevoir des premières unités
de données (Pk1) d'un trafic de données, et à :
a) pour chaque première unité de données reçue (Pk1), vérifier si ladite première
unité de données (Pk1) est marquée par une caractéristique (b2) définie sur une valeur
quelconque sélectionnée parmi une première valeur et une seconde valeur ;
b) mettre en œuvre un paramètre d'entrée globale (X1(1)) et, si ladite première unité
de données (Pk1) est marquée, mettre à jour ledit paramètre d'entrée globale (X1(1))
lorsque ladite caractéristique (b2) est définie sur ladite première valeur ; et
c) mettre en œuvre un paramètre d'entrée partielle (X12(1)) connexe à ladite interface
de sortie (lout2) et mettre à jour ledit paramètre d'entrée partielle (X12(1)) lorsque
ladite caractéristique (b2) est définie sur ladite première valeur et lorsque ladite
première unité de données (Pk1) est adressée à ladite interface de sortie (lout2)
; et dans lequel ladite interface de sortie (lout2) est configurée de manière à recevoir
des secondes unités de données (Pk2) dudit trafic de données, lesdites secondes unités
de données (Pk2) comprenant au moins une partie desdites premières unités de données
(Pk1), et :
d) pour chaque seconde unité de données reçue (Pk2), vérifier si ladite seconde unité
de données (Pk2) est marquée par ladite caractéristique (b2) définie sur une valeur
quelconque sélectionnée parmi ladite première valeur et ladite seconde valeur ;
e) mettre en œuvre un paramètre de sortie partielle (Y12(1)) connexe à ladite interface
d'entrée (lin1) et, si ladite seconde unité de données (Pk2) est marquée, mettre à
jour ledit paramètre de sortie partielle (Y12(1)) lorsque ladite caractéristique (b2)
est définie sur ladite première valeur et lorsque ladite seconde unité de données
(Pk2) est reçue en provenance de ladite interface d'entrée (lin1) ; et
f) mettre en œuvre un paramètre de sortie globale (Y2(1)) et mettre à jour ledit paramètre
de sortie globale (Y2(1)) lorsque ladite caractéristique (b2) est définie sur ladite
première valeur ;
ledit nœud (Ni) étant en outre configuré de manière à fournir ledit paramètre d'entrée
globale (X1(1)), ledit paramètre d'entrée partielle (X12(1)), ledit paramètre de sortie
globale (Y2(1)) et ledit paramètre de sortie partielle (Y12(1)), pour mettre en œuvre
une mesure sur ledit trafic de données, ledit nœud (Ni) étant en outre configuré de
manière à mettre en œuvre une mesure connexe audit trafic de données au sein dudit
nœud (Ni), sur la base dudit paramètre d'entrée partielle (X12(1)) et dudit paramètre
de sortie partielle.