White Rabbit sub-ns synchronizacja i deterministyczny transfer danych Maciej Lipiński Hardware and Timing Section The European Organization for Nuclear Research(CERN) Geneve, Switzerland. Grudzień 22, 2011 Maciej Lipiński White Rabbit 1/ 47
Outline 1 Wstęp 2 DystrybucjaczasuwsieciWR 3 Dystrybucja danych w sieci WR 4 Elementy sieci WR Maciej Lipiński White Rabbit 2/ 47
Sieć White Rabbit Maciej Lipiński White Rabbit 3/ 47
Sieć White Rabbit Sub-nanosekundowa synchronizacja Deterministyczna i niezawodna transmisja informacji kontrolnych (Control Message) Maciej Lipiński White Rabbit 4/ 47
Dystrybucja czasu w sieci White Rabbit Sub-nanosekundowa synchronizacja Maciej Lipiński White Rabbit 5/ 47
Podstawowe pojęcia Synchronizacja z sub-nanosekundową dokładnością po światłowodzie, Połączenie Precision Time Protocol(PTP)- synchronizacja, Synchronous Ethernet(SyncE) syntonizacja, Digital Dual-Mixer Time Difference(DDMTD)- pomiar fazy, Połączenie WR(WR Link): Maciej Lipiński White Rabbit 6/ 47
Sieć White Rabbit Sieć White Rabbit WR boundary clock grandmaster clock WR ordinary clock WR boundary clock WR boundary clock WR ordinary clock WR ordinary clock WR ordinary clock Maciej Lipiński White Rabbit 7/ 47
Precision Time Protocol(PTP) standard IEEE1588-2008 protokół oparty na wymianie pakietów synchronizacja urządzeń w systemach rozproszonych one-way mean delay: µ = (t4 t1) (t3 t2) 2 offset =t 2 (t 1 +µ) Maciej Lipiński White Rabbit 8/ 47
PTPjestOKale... Ograniczenia PTP... i... jak sobie z nimi radzimy syntonizacja oparta na PTP SyncE ograniczona SyncE dokładność i rozdzielczość pomiar fazy przy pomocy DDTMD SyncE nieznana asymetria łącza pomiar fazy przy pomocy DDTMD WR Link Delay Model WR extension to PTP(WRPTP) pozwala na wymianę dodatkowych parametrów i wykonanie specyficznych dla WR procedur Maciej Lipiński White Rabbit 9/ 47
Link Delay Model delay ms = txm +δ ms + rxs delay sm = txs +δ sm + rxm master fixed delays variable delays fixed delays slave t 1 txm δ ms rxs t 2 rxm δ sm txs t 4 t 3 Relative Delay Coefficient(α) dla jedno-modowego światłowodu 1000base-X δ ms = (1+α)δ sm Maciej Lipiński White Rabbit 10/ 47
Link Delay Model dla światłowodu Master time Announce Slave time Relative Delay Coefficient: t 1 t 4 Sync Follow_Up Delay_Req Delay_Resp t2 t 3 (t4 - t 1) - (t3 - t 2) µ = 2 µ WR Link Delay Model Fixed Delays: rxs txs rxm txm delay = µ + asymmetry ms offset = t - (t + ) ms 2 1 delay ms Solution for Ethernet over a Single-mode Optical Fiber asymmetry = txm + rxs αµ+α 2+α Maciej Lipiński White Rabbit 11/ 47
Fine Delay Measurement Maciej Lipiński White Rabbit 12/ 47
Fine Delay Measurement Maciej Lipiński White Rabbit 13/ 47
Fixed Delays Measurement Maciej Lipiński White Rabbit 14/ 47
Fixed Delays Measurement 11000 0011111000001111100 Rx Tx Buffer PHY Buffer Ä rx RxCLK TxCLK Ä tx 125 MHz Phase detector Phase detector Maciej Lipiński White Rabbit 15/ 47
White Rabbit extension to PTP(WRPTP) Rozpoznanie urządzeń WR Kalibracja(pomiar txm,rx m,tx s,rx m ) Wymiana parametrów WR, Wsparcie dla nadmiarowości topologii. Maciej Lipiński White Rabbit 16/ 47
WR Link Setup PTP Master WR WR Node Node WR Announce MSGs Announce TLV PTP Announce TLV Master WR Link Setup Request-response MGSs PTP Uncalib rated PTP Slave Dostrojenie częstotliwości (syntonizacja) Kalibracja Wymiana parametrów WR WR Finite State Machine (FSM) WR Signaling Messages Maciej Lipiński White Rabbit 17/ 47
Wsparcie dla nadmiarowości sieci Maciej Lipiński White Rabbit 18/ 47
Wsparcie dla nadmiarowości sieci Feedback channel DDMTD feedback clk WR Clock Recovery System ref clk 1 ref clk N Reference channels DDMTD DDMTD Phase and freq error detection Phase and freq error detection freq error phase error freq error phase error MUX PI VCTCXO ref clk WRPTP phase shift Switch M M GPS Switch M Switch-over M ss ps Switch ss ps Switch Maciej Lipiński White Rabbit 19/ 47
Testy: synchronizacja w układzie kaskadowym Maciej Lipiński White Rabbit 20/ 47
Testy: synchronizacja w układzie kaskadowym Maciej Lipiński White Rabbit 21/ 47
Testy: wpływ temperatury na synchronizacje Maciej Lipiński White Rabbit 22/ 47
Testy: Delay vs. temperature Zakres temperatury: 80 degc Maciej Lipiński White Rabbit 23/ 47
Testy: Offset vs. temperature Dryftoffsetuwzakresietemperatury80degC:90ps 22psrmsjitter,12psgdyodejmiemydryftoffsetu Maciej Lipiński White Rabbit 24/ 47
Dystrybucja danych w sieci White Rabbit Deterministyczny i niezawodny transfer danych Maciej Lipiński White Rabbit 25/ 47
Dystrybucja danych kontrolnych Maciej Lipiński White Rabbit 26/ 47
Wstęp Dystrybucja czasu w sieci WR Dystrybucja danych w sieci WR Elementy sieci WR Wymagania dot. dystrybucji danych w CERN i GSI Maciej Lipiński White Rabbit 27/ 47
Poprawne działanie systemu System działa poprawnie kiedy spełnione są następujące warunki: Wszystkie odbiorniki(nodes) są z synchronizowane z wymaganą dokładnością Wszystkie odbiorniki(nodes) otrzymują dane kontrolne (Control Messages) Dane kontrolne(control Messages) docierają do wszystkich odbiorników(nodes) w czasie mniejszym niż wymagana maksymalna latencja. Maciej Lipiński White Rabbit 28/ 47
Identyfikacja powodów awarii systemu Korupcja danych(bit errors) Przeciążenie sieci(congestion) Awaria elementów sieci(element failure) Zbyt długi czas transmisji(exceeding upper bound latency) Maciej Lipiński White Rabbit 29/ 47
Identyfikacja powodów awarii systemu Korupcja danych(bit errors) Przeciążenie sieci(congestion) Awaria elementów sieci(element failure) Zbyt długi czas transmisji(exceeding upper bound latency) Maciej Lipiński White Rabbit 30/ 47
Niezawodny przesył danych Retransmisja danych niemożliwa Kanał komunikacyjny, dwa modele: Binary erasure channel(bec) Packet erasure channel(pec) Biterrorrate(BER)- prawdopodobieństwo przekłamania bitu informacji w strumieniu danych, różne dla różnych nośników Forward Error Correction(FEC) - kodowanie nadmiarowe Maciej Lipiński White Rabbit 31/ 47
Forward Error Correction Packet erasure channel(pec) Reed-Solomon Tworzymy 4 pakiety z oryginalnej wiadomości Otrzymanie 2 z 4 pakietów pozwala na odtworzenie wiadomości Binary erasure channel(bec) Hamming with additional Parity Hamming distance = 4 Korekcja pojedynczego przekłamania bitu i detekcja podwójnego przekłamania Maciej Lipiński White Rabbit 32/ 47
Identyfikacja powodów awarii systemu Korupcja danych(bit errors) Przeciążenie sieci(congestion) Awaria elementów sieci(element failure) Zbyt długi czas transmisji(exceeding upper bound latency) Maciej Lipiński White Rabbit 33/ 47
Quality of service Wykorzystujemy priorytetyzacje przesyłanych danych (IEEE 802.1Q) Najwyższy priorytet dla Control Messages Implementacja switcha zapewnia odpowiednie zasoby Maciej Lipiński White Rabbit 34/ 47
Identyfikacja powodów awarii systemu Korupcja danych(bit errors) Przeciążenie sieci(congestion) Awaria elementów sieci(element failure) Zbyt długi czas transmisji(exceeding upper bound latency) Maciej Lipiński White Rabbit 35/ 47
Niezawodność sieci Pomiar niezawodności: Mean Time Between Failures(MTBF) Zwiększenie niezawodności: wprowadzenie elementów nadmiarowych eliminacja Single Point of Failure(SPoF) Nadmiarowe topologia sieci Maciej Lipiński White Rabbit 36/ 47
FEC + Nadmiarowość sieci Bardzo szybka detekcja awarii i przełączenie miedzy nadmiarowymi połączeniami Maksymalny czas trwania procesu: czas transmisji ramki: 2.3µ Najlepsze parametry znanych rozwiązań: milisekundy Maciej Lipiński White Rabbit 37/ 47
Identyfikacja powodów awarii systemu Korupcja danych(bit errors) Przeciążenie sieci(congestion) Awaria elementów sieci(element failure) Zbyt długi czas transmisji(exceeding upper bound latency) Maciej Lipiński White Rabbit 38/ 47
Determinizm transmisji danych Bardzo rozważna architektura topologi sieci Oszacowanie maksymalnego opóźnienia dla najdłuższej ścieżki Oszacowany czas transmisji niekorzystny dla GSI Zmiana architektury switcha Maciej Lipiński White Rabbit 39/ 47
Elementy systemu White Rabbit Maciej Lipiński White Rabbit 40/ 47
White Rabbit Switch(V2) Centralny Element sieci White Rabbit Zbudowany od podstaw 10 portów 1000Base-LX Embedded Linux Maciej Lipiński White Rabbit 41/ 47
White Rabbit Switch(V2) Maciej Lipiński White Rabbit 42/ 47
White Rabbit Node Maciej Lipiński White Rabbit 43/ 47
WRPTPCore Maciej Lipiński White Rabbit 44/ 47
Simple PCIe FMC carrier(spec) Maciej Lipiński White Rabbit 45/ 47
WR-compliant Hardware Kit Co-HT FMC-based Hardware Kit: FMCs(FPGA Mezzanine Cards) with ADCs, DACs, TDCs, fine delays, digital I/O Carrier boards in PCI-Express, VME and utca formats All carriers are equipped with a White Rabbit port Maciej Lipiński White Rabbit 46/ 47
Dziękuje Pytania? Maciej Lipiński White Rabbit 47/ 47