... | @@ -334,30 +334,49 @@ The enhancements to current IEEE 802.1AS include |
... | @@ -334,30 +334,49 @@ The enhancements to current IEEE 802.1AS include |
|
### Timing and Synchronization
|
|
### Timing and Synchronization
|
|
|
|
|
|
- profile/extension of PTP: WRPTP
|
|
- profile/extension of PTP: WRPTP
|
|
- interoperable with "standard" PTP (default profile)
|
|
- provides sub-nanosecond accuracy only over WRPTP-capable devices,
|
|
|
|
- interoperability with standard PTP -- hybrid networks possible
|
|
- requires physical syntonization using Synchronous Ethernet
|
|
- requires physical syntonization using Synchronous Ethernet
|
|
- uses phase detection (DDMTD) to enhance HW-timestamping precision to
|
|
- uses phase detection (DDMTD) to enhance HW-timestamping precision to
|
|
picosecond level
|
|
picosecond level
|
|
- auto-calibration of link asymmetry (single fiber and DDMTD phase
|
|
- auto-calibration of link asymmetry (single fiber and DDMTD phase
|
|
detection)
|
|
detection)
|
|
|
|
- delay-request two-step mechanism
|
|
|
|
- defines modified BMC
|
|
|
|
- synchronization spanning tree may be different from the forwarding
|
|
|
|
spanning tree (i.e. RSTP)
|
|
|
|
|
|
### Reliability
|
|
### Reliability
|
|
|
|
|
|
- optional support of network/data redundancy
|
|
- optional support of network/data redundancy
|
|
- the bases of seamless redundancy is Forward Error Correction (FEC) -
|
|
- prevention of critical data loss due to data corruption (e.g.: bit
|
|
critical data sent over WR network is encoded into several frames
|
|
error) is handled by additional layer: Forward Error Correction
|
|
(i.e. 4), only subset of the frames (i.e. 2) is needed by the
|
|
(FEC,
|
|
|
|
"\[1\]":https://www.ohwr.org/project/white-rabbit/uploads/ff98688542afbe36e9f11877ba4c5f1a/ICALEPCS2011_poster.pdf
|
|
|
|
"\[2\]":https://www.ohwr.org/project/wr-cores/wikis/FEC)
|
|
|
|
- the seamless redundancy is based on the Forward Error Correction
|
|
|
|
layer - critical data sent over WR network is encoded into several
|
|
|
|
frames (i.e. 4), only subset of the frames (i.e. 2) is needed by the
|
|
receiver (AVB's Listener) to recover the original critical data.
|
|
receiver (AVB's Listener) to recover the original critical data.
|
|
- this allows to use dynamic network redundancy (e.g. enhanced
|
|
- this allows to use dynamic network redundancy (e.g. enhanced
|
|
RSTP) as long as the reconfiguration time is predictable and
|
|
RSTP) as long as the reconfiguration time is predictable and
|
|
sufficiently small (i.e. so that maximum 2 frames are lost
|
|
sufficiently small (i.e. so that maximum 2 frames are lost
|
|
during reconfiguration)
|
|
during reconfiguration)
|
|
- two ideas are considered:
|
|
- two ideas are considered for dynamic network redundancy
|
|
|
|
mechanims:
|
|
- enhanced Spanning Tree Protocol which allows fast enough
|
|
- enhanced Spanning Tree Protocol which allows fast enough
|
|
reconfiguration
|
|
reconfiguration
|
|
- enhanced Link Aggregation which enables to send frames which
|
|
- enhanced Link Aggregation which enables to send frames which
|
|
constitute the critical data through independent paths
|
|
constitute the critical data through independent paths
|
|
- any idea needs to support VLANs
|
|
- any idea needs to support VLANs
|
|
|
|
- fault tolerance / isolation
|
|
|
|
- VLANs will be used to isolate different logical (accelerator)
|
|
|
|
network and limit a propagation of fault due to a mis-behaving
|
|
|
|
node/switch
|
|
|
|
- FEC header has ID and sequence number - can prevent help in
|
|
|
|
duplication issues
|
|
|
|
- control of throughput from nodes which are not supposed to send
|
|
|
|
too much data (if any)
|
|
|
|
|
|
### Latency and scheduling:
|
|
### Latency and scheduling:
|
|
|
|
|
... | @@ -365,18 +384,10 @@ The enhancements to current IEEE 802.1AS include |
... | @@ -365,18 +384,10 @@ The enhancements to current IEEE 802.1AS include |
|
critical data" translates into many Ethernet Frames
|
|
critical data" translates into many Ethernet Frames
|
|
- preemption was considered but is currently stated an obsolete idea
|
|
- preemption was considered but is currently stated an obsolete idea
|
|
- strict priority scheduling of output queues (Class of Service) for
|
|
- strict priority scheduling of output queues (Class of Service) for
|
|
critical data, resource reservation for critical data and strict
|
|
critical data, static resource reservation for critical data and
|
|
control of critical data transmission are considered sufficient for
|
|
strict control of critical data transmission are considered
|
|
CERN
|
|
sufficient for CERN
|
|
- cut-through forwarding in the switches
|
|
- cut-through forwarding in the switches
|
|
- fault tolerance / isolation
|
|
|
|
- VLANs will be used to isolate different logical (accelerator)
|
|
|
|
network and limit a propagation of fault due to a mis-behaving
|
|
|
|
node/switch
|
|
|
|
- FEC header has ID and sequence number - can prevent some
|
|
|
|
duplication issues
|
|
|
|
- control of throughput from nodes which are not supposed to send
|
|
|
|
too much data (if any)
|
|
|
|
|
|
|
|
## AVBg2 vs. WR
|
|
## AVBg2 vs. WR
|
|
|
|
|
... | @@ -385,14 +396,16 @@ provide interoperability with standard Ethernet. |
... | @@ -385,14 +396,16 @@ provide interoperability with standard Ethernet. |
|
|
|
|
|
### Synchronization-wise
|
|
### Synchronization-wise
|
|
|
|
|
|
The main difference is the usage of SyncE and single fiber in WR. AVBg2
|
|
The main difference (between WR and AVBg2) is the usage of SyncE. AVBg2
|
|
bridges are time aware but this does not translate into syntonization.
|
|
bridges are logically syntonized. WR requires all WR-devices to be
|
|
WR requires all WR-devices to be syntonized which is an option in AVB.
|
|
syntonized which is an option in AVB. The efforts to support network
|
|
The efforts to support network redundancy and speed-up reconfiguration
|
|
redundancy and speed-up reconfiguration seem to be inline in WR and AVB.
|
|
seem to be inline in WR and AVB. There is an apparent need in AVBg2 to
|
|
There is an apparent need in AVBg2 to find a solution for
|
|
find a solution for (semi-)automatic link asymmetry compensation.
|
|
(semi<s>)automatic link asymmetry compensation. Although WR provides
|
|
Although WR provides solution for this, it does not need to be favored
|
|
solution for this, it does not need to be favored by AVBg2. Unlike AVB
|
|
by AVBg2 (due to single fiber usage).
|
|
(which uses pDelays), WR uses request-response mechanism -</s> there is
|
|
|
|
no technical problem (just work overhead) in extending WR onto
|
|
|
|
peer-delay mechanism.
|
|
|
|
|
|
### Critical-data-wise
|
|
### Critical-data-wise
|
|
|
|
|
... | @@ -402,7 +415,8 @@ defined by VLAN. WR adds sophisticated Forward Error Correction (FEC), |
... | @@ -402,7 +415,8 @@ defined by VLAN. WR adds sophisticated Forward Error Correction (FEC), |
|
at a cost of latency deterioration, to spare network components
|
|
at a cost of latency deterioration, to spare network components
|
|
(switches) and still provide undisturbed critical data stream in case of
|
|
(switches) and still provide undisturbed critical data stream in case of
|
|
component failure (seamless redundancy over dynamically redundant
|
|
component failure (seamless redundancy over dynamically redundant
|
|
network). This is because WR is foreseen for large scale networks.
|
|
network). This is because WR is foreseen for large scale networks with
|
|
|
|
one-to-(really)-many end stations communication.
|
|
|
|
|
|
WR does not foresee dynamic stream reservation -- it is assumed that
|
|
WR does not foresee dynamic stream reservation -- it is assumed that
|
|
there are two kinds of data: (1) critical (so called Control Messages,
|
|
there are two kinds of data: (1) critical (so called Control Messages,
|
... | @@ -410,19 +424,23 @@ CMs) and (2) non-critical (Best-effort, BE). It is again, a corner case |
... | @@ -410,19 +424,23 @@ CMs) and (2) non-critical (Best-effort, BE). It is again, a corner case |
|
of AVBg2 where there would be Class A stream (critical data) and
|
|
of AVBg2 where there would be Class A stream (critical data) and
|
|
best-efford data. All critical data is treated equally and share the
|
|
best-efford data. All critical data is treated equally and share the
|
|
same resources which are allocated to it (a very limited number of CM
|
|
same resources which are allocated to it (a very limited number of CM
|
|
streams is foreseen). The distribution characteristics of the CMs in WR
|
|
streams is foreseen). If I'm not mistaken, the distribution
|
|
is different then usual streams in AVB. In WR, the critical data stream
|
|
characteristics of the CMs in WR is different then usual streams in AVB.
|
|
is supposed to be broadcast within VLAN, thus a stream is propagated to
|
|
In WR, the critical data stream is supposed to be broadcast within VLAN,
|
|
all the end stations within a VLAN: a particular case of such solution
|
|
thus a stream is propagated to all the end stations within a VLAN: a
|
|
is to define VLAN for a stream between two end stations. Still, separate
|
|
particular case of such solution is to define VLAN for a stream between
|
|
VLAN-streams do not have separate resources. On the other hand, WR
|
|
two end stations. Still, separate VLAN-streams do not have separate
|
|
critical data one-to-many stream seems to be a corner case of AVB
|
|
resources. On the other hand, WR critical data one-to-many stream seems
|
|
stream.
|
|
to be a corner case of AVB stream: all the devices in the AVB network
|
|
|
|
register to a single stream.
|
|
|
|
|
|
In WR, the critical data is encoded using Forward Error Correction to
|
|
In WR, the critical data is encoded using Forward Error Correction to
|
|
prevent losses due to data corruption (bit error rate/switch
|
|
prevent losses due to data corruption (bit error rate/switch
|
|
malfunction) and to allow dynamic network redundancy while providing
|
|
malfunction) and to allow dynamic network redundancy (in the enhanced
|
|
undisturbed critical data stream. In AVBg2 simplicity prevails:
|
|
Spanning Tree idea) while providing undisturbed critical data stream. In
|
|
|
|
the enhanced Link Aggregation a kind-of multipath streaming is
|
|
|
|
established.
|
|
|
|
In AVBg2 simplicity prevails:
|
|
|
|
|
|
- if a network can allow dynamic network reconfiguration (e.g.
|
|
- if a network can allow dynamic network reconfiguration (e.g.
|
|
requirement of reconfiguration time \< 100ms, [Toyota,
|
|
requirement of reconfiguration time \< 100ms, [Toyota,
|
... | @@ -433,11 +451,10 @@ undisturbed critical data stream. In AVBg2 simplicity prevails: |
... | @@ -433,11 +451,10 @@ undisturbed critical data stream. In AVBg2 simplicity prevails: |
|
(independent paths) is needed. Therefore FEC is not needed.
|
|
(independent paths) is needed. Therefore FEC is not needed.
|
|
|
|
|
|
WR takes advantage of assumed one-to-many characteristics of the
|
|
WR takes advantage of assumed one-to-many characteristics of the
|
|
critical data in :
|
|
critical data in :
|
|
|
|
ultra-fast forwarding: for critical data the forwarding database needs
|
|
|
|
to be verified only against VLAN which is much faster then MAC lookup
|
|
|
|
|
|
- ultra-fast forwarding: for critical data the forwarding data base
|
|
|
|
needs to be verified only against VLAN which is much faster then MAC
|
|
|
|
lookup
|
|
|
|
- redundancy mechanisms: data is always forwarded everywhere except
|
|
- redundancy mechanisms: data is always forwarded everywhere except
|
|
links which create loops
|
|
links which create loops
|
|
- no need for sophisticated stream reservation
|
|
- no need for sophisticated stream reservation
|
... | | ... | |