- Ana Sayfa
- Teknik Notlar
- IEEE 1588 PTP ile senkronizasyon: donanım zaman damgalama ve hata bütçesi
IEEE 1588 PTP ile senkronizasyon: donanım zaman damgalama ve hata bütçesi
Yayın tarihi: 20 dk okuma23 kaynak
IEEE 1588 Hassas Zaman Protokolü (Precision Time Protocol, PTP) ofseti dört zaman damgasından hesaplar ve yol gecikmesinin iki yönde eşit olduğunu varsayar; bu varsayımın ihlali ofsete yarı büyüklüğüyle geçer ve protokolün kendi istatistiklerinde görünmez. Bu notta t1–t4 denklemleri türetilir, damganın alındığı katmanın (yazılım, MAC, PHY), anahtarların, asimetrinin, servonun ve osilatörün katkısı üretici verileriyle tek bir hata bütçesinde toplanır; doğrulama düzeneği, yaygın hatalar ve White Rabbit ele alınır.
Gösterim ve kapsam
Ana saat (master; güncel belgelerde timeTransmitter) ile bağımlı saat (slave; timeReceiver) [13] arasındaki ofset θ = (bağımlı) − (ana) olarak tanımlanır. Tek yön gecikmeler dms ve dsm, ortalamaları d̄, asimetri Δ = dms − dsm'dir. Türetilmiş sayısal örnekler metinde ayrıca işaretlenir.
Uçtan uca gecikme ölçümü ve t1–t4 denklemleri
Gecikme istek-yanıt (delay request-response, E2E) mekanizmasında ana saat Sync mesajını gönderir ve çıkış anını t1 olarak damgalar; bağımlı saat varışı kendi saatiyle t2 olarak damgalar. İki adımlı (two-step) çalışmada t1 ayrı bir Follow_Up mesajıyla gelir; tek adımlı (one-step) çalışmada donanım onu gönderim sırasında Sync çerçevesine yazar. Bağımlı saat daha sonra Delay_Req gönderir (t3), ana saat varışı damgalar (t4) ve Delay_Resp ile geri bildirir [1].
Ofset ve ortalama yol gecikmesinin türetilmesi
Ana saat referans alınınca t2 = t1 + dms + θ ve t4 = (t3 − θ) + dsm yazılır:
İki denklem, üç bilinmeyen vardır; Eidson bunu “iki ölçülen büyüklük, üç bilinmeyen” olarak yazar ve sistemi dms = dsm varsayımıyla çözer [1]. Toplama ve çıkarma ile:
Intel I210 veri sayfası aynı gecikme ifadesini saat düzeltme örneğinde kullanır [5].
Asimetrinin ofsete Δ/2 olarak geçmesi
(1) gerçek gecikmelerle (2)'ye konursa:
Sabit asimetri ortalama gecikme kestirimini bozmaz, dolayısıyla d̂ her zaman makul görünür; Δ ise protokolün içinden gözlenemez. Nokia'nın kılavuzu iki yön farkının ofsete “farkın yarısı” kadar hata getirdiğini [13], Cisco “her 2 μs asimetri 1 μs zaman hatası” olduğunu yazar [14]; Meinberg GNSS'e göre gözlenen ofsetin asimetrik gecikmenin yarısına karşılık geldiğini vurgular [12]. Asimetri ancak dış bir zaman referansıyla ölçülebilir.
Frekans ofsetinin etkisi
Bağımlı saatin kesirli frekans ofseti y ise θ(T) = θ0 + y·T olur; T2, T3 Sync varışının ve Delay_Req çıkışının gerçek zamanlarıdır. Aynı adımlarla:
Kilitlenmeden önce y = 10 ppm ve iki mesaj arasında 0,5 s varsa gecikme hatası 2,5 μs'dir; kilitten sonra y 1 ppb mertebesine inince 0,25 ns'ye düşer (türetilmiş). Servo bu yüzden önce frekansı yakalar; linuxptp ilk ofset 20 μs'yi aşarsa saati bir kez adımlar (first_step_threshold) [7].
Eşler arası (peer-to-peer) gecikme mekanizması
P2P'de her bağlantının iki ucu Pdelay_Req / Pdelay_Resp / Pdelay_Resp_Follow_Up değişimiyle yalnız o bağlantının gecikmesini ölçer [3][11]. t3 − t2 tamamen yanıtlayıcının saatiyle ölçüldüğünden ofset sadeleşir, frekans oranı sadeleşmez:
r, yanıtlayıcı saatiyle ölçülen aralığı isteyicinin ölçeğine çeviren orandır; ihmal edilirse hata y·(t3 − t2)/2, yani 10 ppm ve 10 ms yanıt süresiyle 50 ns olur (türetilmiş). linuxptp bu oranı freq_est_interval aralığında kestirir (varsayılan 2 s) [7]. P2P saydam saat (transparent clock, TC) Sync'in düzeltme alanına (correctionField) hem içinde geçen süreyi (residence time) hem giriş bağlantısının gecikmesini ekler [3][4]; bağımlı saat yalnız son bağlantıyı düşer:
Meinberg'e göre P2P'de ana saat her bağımlıya ayrı Delay_Resp üretmez ve topoloji değişiminde bağlantı gecikmeleri zaten bilinir; buna karşılık yoldaki tüm anahtarların 1588 yetenekli olması gerekir [11].
Zaman damgası nerede alınır
t1…t4, çerçevenin ortama çıktığı ve ortamdan girdiği anlar olmalıdır. Damga bu noktadan uzaklaştıkça aradaki her bileşenin gecikme değişimi gürültüye, iki yönde farklı olan ortalaması asimetriye dönüşür. TI, paketi telden sonra işleyen her bileşenin hatayı artırdığını ve en büyük katkının işlemci yükü ve kesme gecikmesi nedeniyle yazılımdan geldiğini belirtir [2].
Yazılım zaman damgasının hata kaynakları
Linux çekirdek belgesine göre alımdaki yazılım damgası sürücü paketi alım yığınına teslim ettikten hemen sonra, gönderimdeki ise sürücüde, paket ağ arayüzüne verilmeden hemen önce alınır [6]. Alımda teldeki varış ile damga arasında DMA yazımı, kesme birleştirme (interrupt coalescing) beklemesi, kesme gecikmesi ve NAPI yoklaması kalır; gönderimde damgadan sonra tanımlayıcının çekilmesi, NIC kuyruğunda bekleme ve MAC'in süren çerçevenin bitmesini beklemesi damganın dışındadır. Hepsi yük, önbellek ve güç yönetimiyle değişir. TI yazılım PTP'de tek bağlantıda 100 μs mertebesine ulaşılabildiğini ve nanosaniye bölgesi için donanım desteği gerektiğini yazar (notun 1. şeklinde yazılım 1588 için 100–10 μs aralığı gösterilir) [2]; EndRun yazılım damgalı bağımlı saatler için 10–100 μs bildirir [10].
MAC ve PHY damgası: sabit ve değişken gecikme
Intel I210'da damga mantığı gönderim ve alım yollarında “PHY arayüzüne olabildiğince yakın” yerleştirilir ve damga çerçevenin başında alınır [5]. Damga ile MDI arasındaki gecikme damganın dışındadır ve veri sayfasında yalnız 100 Mb/s için karakterize edilir: gönderim damgasından SFD'ye 984/1024 ns (fark, sıfırlama veya bağlantı yeniden kurulumunda oluşan değişimdir), SFD'den alım damgasına 2148/2228 ns (fark, alım ve gönderim saat alanları arasındaki eşzamanlamadan doğan jitterdır); ticari bir karşı uçla ortalamalar 1044 ns ve 2133 ns'dir [5]. Zamanlayıcının nominal artışı 8 ns'dir (125 MHz), ayrıca alt-nanosaniye kesir yazmacı vardır [5]. Uç gecikmeleri (1)'e eklenince, TX/RX damga ile tel arasındaki gönderim/alım gecikmeleri olmak üzere:
Özdeş uçlarda terimler sadeleşir; aynı model iki kartla yapılan masa üstü denemelerin iyimser çıkmasının nedeni budur. Türetilmiş bir örnek: ana uçta gecikmeler doğru düzeltilmiş, I210 ortalamalarıyla çalışan bağımlı uçta hiç düzeltilmemişse hata (2133 − 1044)/2 ≈ 544 ns olur. linuxptp düzeltme için ingressLatency ve egressLatency parametrelerini sunar [7]. Linux igb sürücüsü I210 için hıza bağlı sabitleri zaten uygular (100 Mb/s'de gönderim 1024 ns, alım 2213 ns) [22]; örnek düzeltme yapmayan sürücüler içindir, üstüne ptp4l gecikmesi girmek düzeltmeyi ikiler.
PHY içinde damga alan çözümlerde bu gecikmenin büyük kısmı damganın içindedir. TI'ın DP83640 ölçümlerinde doğrudan kabloyla bağlı iki cihazın 1PPS çıkışları arasında ortalama −869 ps, standart sapma 7,87 ns; 10 MHz saat çıkışları arasında ortalama −226 ps, standart sapma 2,655 ns ve tepeden tepeye 11 ns bulunmuştur (Sync aralığı 1 s, 25 MHz kristal, 25 °C) [2]. Bu sonuçlar ağ, sıcaklık değişimi ve karışık üretici içermez.
Zaman damgası kuantalaması
g çözünürlüklü sayaçta hata, faz paket varışına göre rastgele ise g genişliğinde düzgün dağılır; standart sapma g/√12'dir. (2) dört damgayı 1/2 katsayısıyla birleştirdiğinden:
g = 8 ns için 2,31 ns; gecikme süzülüp ofset yalnız Sync yolundan hesaplanırsa iki damga girer ve 3,27 ns olur (türetilmiş). Garner'ın benzetimlerinde telekom için 8 ns, 802.1AS için 40 ns damga ayrıntısı kullanılmıştır [15]. İki uç aynı frekans kaynağından sürülüyorsa (ör. Senkron Ethernet) varışların sayaç fazına göre konumu dolaşmaz ve kuantalama hatası ortalamayla küçülmez; ±g/2'ye kadar sabit sapmaya dönüşür (türetilmiş).
Ağ kaynaklı hata: paket gecikme değişimi ve asimetri
Kuyruklanma ve PDV
PTP'den habersiz bir anahtarda olay mesajı, gönderilmekte olan ve kuyrukta bekleyen çerçevelerin arkasında bekler. Tek bir en büyük çerçeve (önsöz ve çerçeveler arası boşlukla 1538 bayt = 12 304 bit) 100 Mb/s'de 123 μs, 1 Gb/s'de 12,3 μs bekletir (türetilmiş). Bekleme paketten pakete değişir ve iki yönde yük farklı olduğundan ortalaması da farklıdır; paket gecikme değişimi (packet delay variation, PDV) hem gürültü hem asimetri üretir. Eidson'un derlediği ölçümlerde sıradan bir anahtar üzerinden (8 saat) ofset standart sapması 121 ns, en küçük/en büyük −430/+720 ns; boundary clock anahtarlarda 24 ns (±100 ns, 84 saat) ve 15 ns (−35/+45 ns, 1 saat) bulunmuştur; saat çözünürlüğü 20–25 ns'dir [1]. Cisco, PDV'nin her habersiz düğümde biriktiğini belirtir [14].
Transparent clock ve boundary clock
E2E TC, olay mesajının giriş ve çıkış damgaları arasındaki süreyi düzeltme alanına ekler [3]; Microchip'e göre bu 64 bitlik alan ilke olarak pikosaniye altı çözünürlük taşır [4]. TC ile kalan hata TC'nin kendi damgalarıdır: her geçişte iki damga daha bütçeye girer. Bekleme TC'nin saatiyle ölçüldüğünden frekans hatası y·tbekleme kadar hata üretir: 10 ppm ve 123 μs için 1,2 ns (türetilmiş); TI bu nedenle TC saatlerinin ana saatle frekansta eşlenmesini (syntonization) önerir [3]. Boundary clock (BC) PTP'yi sonlandırır, bir portta bağımlı olur, diğerlerinde ana saat olur [3]; PDV her BC'de sıfırlanır [14], ancak servo gürültüsü ve sabit zaman hatası (constant time error, cTE) zincirde birikir. Garner'ın benzetimlerinde (BC bant genişliği 0,1 Hz, 0,1 dB kazanç tepesi) SyncE yeniden düzenlemesi olmadan 21 atlamada dinamik bileşen 200 ns bütçe içinde (118 ns ve 88 ns) kalmıştır [15].
Asimetri kaynakları
Farklı hızdaki bağlantılar. Depola-ilet (store-and-forward) anahtar çerçeveyi tamamen aldıktan sonra iletir; damga çerçeve başında alındığından anahtardaki gecikme en az L/Rgiriş'tir. Ana saat 1 Gb/s, bağımlı saat 100 Mb/s porttaysa Sync hızlı, Delay_Req yavaş porttan girer; eşit boy L için:
Sync ve Delay_Req 34 baytlık başlık ve 10 baytlık originTimestamp'ten oluşan 44 baytlık mesajlardır [21]; UDP/IPv4 üzerinde 90 baytlık (720 bit) çerçeve oluştururlar: Δ = 0,72 − 7,2 = −6,48 μs, ofset hatası −3,24 μs (türetilmiş). TC bu süreyi bekleme olarak ölçtüğünden etkiyi giderir.
Kablo ve fiber. Bükümlü çiftlerin büküm oranları farklı olduğundan gecikmeleri farklıdır; Fluke, 100 m'ye kadar bir bağlantıda gecikmenin 570 ns'yi, çiftler arası farkın (delay skew) 50 ns'yi aşmaması gerektiğini belirtir [20]. 100BASE-TX'te gönderim ve alım ayrı çiftlerde olduğundan bu fark doğrudan asimetridir: ofset hatası ≤25 ns (türetilmiş sınır). Fiberde iki yön farklı dalga boyu kullanınca kırılma indisi farkı asimetri üretir; White Rabbit kalibrasyon belgesi bunu α = (δms − δsm)/δsm ile tanımlar ve 5 km fiber için α = 2,573·10⁻⁴ ölçer (gidiş-dönüş fiber gecikmesi 50,42 μs) [18]. Tek yön farkı ≈6,5 ns, düzeltilmezse ofset hatası ≈3,2 ns'dir (türetilmiş).
Uç donanımı ve yönlendirme. (8)'deki uyumsuzluk farklı üretici ve hız birleşimlerinde yüzlerce nanosaniyeye ulaşabilir. Cisco halka ve ECMP gibi yönlendirmeleri, habersiz ara düğümleri ve PON, DWDM gibi taşıma katmanlarını da asimetri kaynağı sayar [14]. linuxptp'de ölçülmüş asimetri delayAsymmetry ile girilir; ana saatten bağımlıya yayılma daha uzunsa pozitiftir [7].
Saat servosu ve osilatör
linuxptp PI servosu
ptp4l'in varsayılan servosu PI denetleyicidir [7]; kilitli durumda frekans düzeltmesi (ppb) ofsetten (ns) şöyle hesaplanır [8]:
s Sync aralığıdır; katsayılar donanım damgası varsayılanlarıdır (yazılımda 0,1 ve 0,001) [7][8]. s = 1 s'de kp = 0,7, ki = 0,3; s = 1/8 s'de 1,306 ve 0,131'dir. 1 ppb düzeltme s saniyede s ns faz değiştirdiğinden döngü xn+1 = xn − s·un'dir. Yalnız oransal terimle, beyaz ölçüm gürültüsü σv için:
s = 1 s'de σx/σv = 0,73'tür. İntegral terimi eklenince, (11) ve bu döngüden kurulan basitleştirilmiş modelin (beyaz Gauss ölçüm gürültüsü, osilatör gürültüsü yok; ptp4l'in süzgeçleri ve durum makinesi dışarıda) durağan varyansı oranı 1 s'de 1,05, 1/8 s'de 0,39, 1/16 s'de 0,30 verir (türetilmiş; ptp4l üzerinde ölçülmemiştir). Varsayılan kazançlarla 1 s aralıkta servo ölçüm gürültüsünü neredeyse hiç süzmez; kazançlar hızlı yakalama için seçilmiştir. Sync hızını artırmak daha çok örnek ve örnek başına daha küçük kazanç demektir; Garner'ın telekom benzetimlerinde Sync 8 Hz, Delay_Req 1 Hz'dir [15]. Bedeli işlemci ve damga yükü ile E2E'de ana saatin Delay_Resp yüküdür [11]. Gecikme ölçümü ayrıca 10 örneklik hareketli medyanla süzülür (varsayılan) [7].
Frekans r ppb/s hızla doğrusal değişirse (sıcaklık rampası) kararlı durumda integral terimi her örnekte r·s kadar artmalıdır; ki·xss = r·s koşulundan:
Vig'in tablosunda TCXO sıcaklık kararlılığı −55…+85 °C aralığında 5·10⁻⁷'dir [16]; aralık ortalaması ≈3,6 ppb/K eder (yerel eğim daha büyük olabilir). 1 K/dk rampada r ≈ 0,06 ppb/s; donanım kazançlarıyla xss ≈ 0,2 ns, yazılım kazançlarıyla (ki = 0,001) ≈ 60 ns (türetilmiş).
Osilatör kararlılığı ve Allan sapması
Kısa dönem kararlılık Allan sapmasıyla (Allan deviation) verilir; τ boyunca ortalanmış kesirli frekanslar ȳk için:
Vig'in tablosunda σy(1 s) TCXO için 1·10⁻⁹, OCXO için 1·10⁻¹²; yıllık yaşlanma 5·10⁻⁷ ve 5·10⁻⁹'dur [16]. Güncellemeler arası faz sapması kabaca τ·σy(τ) alınırsa 1 s'de TCXO için ≈1 ns, OCXO için ≈1 ps çıkar (türetilmiş; kesin ilişki gürültü türüne bağlıdır). Bu terim normal çalışmada küçüktür; belirleyici olduğu yer referans kaybında tutma (holdover) kipidir:
200 ns'lik tutma bütçesi y0 = 10⁻⁹ ile 200 s, 10⁻⁸ ile 20 s dayanır (türetilmiş); yukarıdaki eğimle 10⁻⁸, TCXO'da 3 K'lik bir değişime karşılık gelir.
Hata bütçesi
Tablo 1 iki senaryo içindir: (a) uçlar doğrudan bağlı, (b) arada bir E2E TC. Varsayımlar: 100BASE-TX, I210 sınıfı MAC damgası (8 ns sayaç, 100 Mb/s gecikme verileri), aynı sınıfta bir TC, ≤100 m kablolar, TCXO'lu bağımlı saat, linuxptp varsayılan kazançları, ofsetin Sync yolundan ve süzülmüş gecikmeden hesaplanması. Alım jitteri için 80 ns genişliğinde paket başına düzgün dağılım varsayılmıştır; veri sayfası dağılımı da değişimin paketten pakete mi olduğunu da belirtmez (bağlantı başına sabitse terim sapmaya dönüşür). Tablo karakterizasyonun yerini tutmaz; baskın terimi ve kalibre edilebilecek kısmı gösterir.
| Terim | Tür | (a) doğrudan [ns] | (b) bir E2E TC [ns] | Dayanak |
|---|---|---|---|---|
| Damga kuantalaması, g = 8 ns | rastgele (senkron kaynakta sapma) | σ 3,3 | σ 4,6 | (9), [5] |
| Alım saat alanı geçiş jitteri (80 ns aralık) | rastgele | σ 23,1 | σ 32,7 | [5], türetilmiş |
| Örnek başına ölçüm gürültüsü (RSS) | rastgele | σ 23,3 | σ 33,0 | türetilmiş |
| Servo çıkışı, s = 1 s (×1,05) | rastgele | σ 24,6 | σ 34,8 | (11), model |
| Servo çıkışı, s = 1/8 s (×0,39) | rastgele | σ 9,0 | σ 12,7 | (11), model |
| Osilatör (TCXO), güncellemeler arası | rastgele | ≈1 | ≈1 | (14), [16] |
| Sıcaklık rampası izleme, 1 K/dk | sapma | ≈0,2 | ≈0,2 | (13) |
| Gönderim gecikmesinin bağlantı kurulumunda değişimi (40 ns) | sapma, her kurulumda yeni | ±20 | ±40 | (8), [5] |
| Kablo çiftleri arası gecikme farkı (≤50 ns / kablo) | sapma, ölçülüp düzeltilebilir | ≤±25 | ≤±50 | [20] |
| Düzeltilmemiş uç gecikme uyumsuzluğu | sapma, kalibre edilebilir | 0 … ≈544 | 0 … ≈544 | (8), [5] |
| Hız uyumsuzluğu 1 Gb/s ↔ 100 Mb/s | sapma | — | TC ile ≈0; TC'siz −3240 | (10) |
| TC yerine PTP'den habersiz anahtar | rastgele + sapma | — | ölçüm: σ 121, −430/+720 | [1] |
| Rastgele toplam, s = 1/8 s | 1σ | ≈9 | ≈13 | türetilmiş |
| Sapma sınırı (uçlar kalibre) | doğrusal toplam | ±45 | ±90 | türetilmiş |
| Kötü durum |TE| ≈ sapma + 3σ | — | ≈72 | ≈128 | türetilmiş |
| Karşılaştırma: yazılım damgası | — | 10 000 – 100 000 | [2] [10] | |
Üç sonuç çıkar. MAC damgalı 100 Mb/s sistemde rastgele terimi sayaç çözünürlüğü değil alım yolundaki saat alanı geçişi belirler; PHY damgalı çözümün tek bağlantıda 2,7–7,9 ns'ye inmesi [2] bununla uyumludur. Kalibrasyondan sonra bile sapma terimleri rastgele terimlerden büyüktür ve ne servo ne ptp4l günlüğü bunları gösterir. TC'siz, farklı hızlı bir ağda ise tek bir asimetri kaynağı diğer tüm terimleri mikrosaniye mertebesinde geride bırakır.
Telekom profil hedefleriyle karşılaştırma
ITU-T G.8271.1 ağın tam zamanlama desteği verdiği durum için ağ sınırlarını tanımlar; açık kaynaklarda aktarılan uçtan uca bütçe ±1,5 μs, ağ ekipmanı payı ±1,1 μs'dir [13][14]. Nokia'nın bu bütçe için verdiği paylaştırma Tablo 2'dedir [13]. G.8273.2 boundary clock sınıfları için en büyük mutlak zaman hatası (max|TE|) ve cTE, A sınıfında 100 ns ve ±50 ns, B sınıfında 70 ns ve ±20 ns olarak aktarılır [14][23]. Tablo 1'in (b) senaryosu, tek düğüm için tanımlanan bu sınırlarla aynı mertebededir; telekom donanımının damga yolu karakterize edilmiş ve gecikmeleri kalibre edilmiş PHY'lerle çalışmasının nedeni budur.
| Bileşen | Pay [ns] |
|---|---|
| GNSS alıcısı ve IEEE 1588 büyük ana saat (grandmaster) | ±100 |
| On telekom boundary clock'un sabit hatası (BC başına 50 ns) | ±500 |
| Zincir sonunda dinamik zaman hatası | ±200 |
| Kablo gecikmesi asimetri düzeltmesindeki hata | ±300 |
| Uç alıcı ve baz istasyonu içi | ±150 |
| Kısa süreli tutma (topoloji değişimleri) | ±200 |
| Toplam | ±1450 |
Doğrulama yöntemi
1PPS ve saat çıkışı karşılaştırması. Ana ve bağımlı saatin 1PPS çıkışları bir zaman-aralık sayıcıyla (time interval counter) karşılaştırılır; Keysight 53230A sınıfı bir sayıcı 20 ps zaman aralığı çözünürlüğü verir [19]. Asıl belirsizlik başka yerdedir: TI, 1PPS'in saniyede bir örnek verdiğini, saat güncellemesiyle ilişkisiz olduğunu ve sayısal çıkıştan üretildiği için saate ait olmayan hata eklediğini belirtir; bilinen frekansta (ör. 10 MHz) saat çıkışlarının karşılaştırılmasını daha doğru bulur [2]. White Rabbit belgesi ölçüm kablolarının aynı uzunluk ve tipte ya da gecikmelerinin bilinir olmasını şart koşar [18]; pratikte kablolar değiş tokuş edilerek yol gecikmeleri ölçülüp düşülür.
Dış referans ve kalibrasyon. Uçlar ayrıksa her iki uçta GNSS ile disipline edilmiş referans kullanılır; bağımlı saatin GNSS'e göre ofseti (4) gereği asimetrinin yarısını verir [12]. GNSS alıcısının 1PPS belirsizliği ve anten kablosu gecikmesi aynı bütçeye girer ve alıcının veri sayfasından alınmalıdır. Uç gecikmeleri için White Rabbit yöntemi yol göstericidir: bir kalibratör cihaz referans alınır, bilinen fiberle bağlantı kurulur, 1PPS kayması ölçülür ve gönderim/alım gecikmeleri bununla düzeltilir [18].
PDV enjeksiyonu. Anahtar portlarına trafik üreteciyle en büyük çerçeve boyunda yük verilir veya ağ emülatörüyle tanımlı gecikme dağılımı eklenir. Yükün iki yönde farklı olduğu durum mutlaka denenmelidir; aksi halde yalnız gürültü ölçülür, asimetri ölçülmez.
Sıcaklık. Bağımlı saat ve TC iklimlendirme kabininde sıcaklık taramasına alınır; osilatörün ve PHY gecikmelerinin değişimi zaman hatasında görünür. White Rabbit belgesinde ≈12 saatlik kayıtta 5 km fiberin gidiş-dönüş gecikmesinin standart sapması sıcaklık nedeniyle 128 ps, 5 m fiberinki 2,81 ps'dir ve tek seferlik kalibrasyonun farklı ortam sıcaklığında geçerliliğini yitirebileceği vurgulanır [18]. Ölçüm birkaç sıcaklık çevrimini kapsamalı; sonuç sabit hata ve süzülmüş dinamik bileşen olarak ayrı raporlanmalıdır.
Yaygın hatalar
- Asimetriyi ölçmeden sıfır kabul etmek. Her 2 ns asimetri 1 ns hatadır ve protokol bunu göremez; farklı hızlı portlar, farklı üretici PHY'leri ve çift dalga boylu fiberler ölçülmeden devreye alınmamalıdır.
- Yazılım damgasıyla mikrosaniye altı beklemek. Kaynaklar 10–100 μs mertebesini verir [2][10]; donanım damgası yeteneği ethtool ile (SOF_TIMESTAMPING_RAW_HARDWARE vb.) doğrulanmalıdır [9].
- PHC'yi sistem saatiyle karıştırmak. Donanım damgasıyla ptp4l ağ kartındaki PTP donanım saatini (PHC) kilitler; sistem saati phc2sys ile ayrıca eşlenir [9]. Uygulamanın okuduğu zaman için bu ikinci aşama ayrıca ölçülmelidir.
Alt-nanosaniye yaklaşımı: White Rabbit
White Rabbit, CERN'in de aralarında bulunduğu laboratuvar ve şirketlerce geliştirilen, kaynakları açık bir PTP uzantısıdır. PTP, Senkron Ethernet (SyncE) ile fiziksel katmanda frekans aktarımı ve saat geri döngüsüyle faz ölçümüne dayanır [17]. Bağımlı düğümün alım saati ikili karıştırıcılı zaman farkı (dual mixer time difference, DMTD) tabanlı sayısal PLL ile temizlenir (bildirilen jitter 2,5 ps) ve ana saate geri gönderilir; ana saat faz farkını ölçüp bağımlıya iletir. Her biri 5 km fiberle bağlı dört anahtarlık zincirde, fiber sıcak hava tabancasıyla ısıtılırken birikmiş kayma 1 ns'nin epeyce altında, standart sapma 6 ps mertebesinde bildirilmiştir [17].
Bu doğruluk asimetri kalibrasyonuna bağlıdır: her cihazın gönderim/alım gecikmeleri (SFP, PCB, FPGA) ve fiberin α katsayısı ölçülür; α belirsizliği 5 km'de ≈9 ps düzeltilmemiş asimetriye karşılık gelir [18]. Alt-nanosaniye doğruluk her iki ucun White Rabbit uygulamasını gerektirir [17]. Ders standart PTP için de geçerlidir: nanosaniye altına inildikçe bütçeyi çözünürlük değil, sabit gecikme ve asimetri kalibrasyonu belirler.
Kaynaklar
- J. C. Eidson, “Recent Advances in IEEE 1588 Technology and Its Applications,” IEEE 802.3 ResE SG sunumu, 2005. https://grouper.ieee.org/groups/802/3/re_study/public/200507/eidson_1_050719.pdf
- Texas Instruments, “AN-1728 IEEE 1588 Precision Time Protocol Time Synchronization Performance,” SNLA098A, 2013. https://www.ti.com/lit/an/snla098a/snla098a.pdf
- Texas Instruments, “AN-1838 IEEE 1588 Boundary Clock and Transparent Clock Implementation Using the DP83640,” SNLA104A, 2013. https://www.ti.com/lit/pdf/snla104
- Microchip, “ENT-AN1132 Transparent Clock Mode Support,” VPPD-03802, 2018. https://ww1.microchip.com/downloads/en/Appnotes/VPPD-03802.pdf
- Intel, “Ethernet Controller I210 Datasheet,” rev. 3.7, 2021, §7.8.3. https://cdrdv2-public.intel.com/333016/333016%20-%20I210_Datasheet_v_3_7.pdf
- Linux kernel documentation, “Timestamping.” https://docs.kernel.org/networking/timestamping.html
- linuxptp, “ptp4l(8).” https://linuxptp.nwtime.org/documentation/ptp4l/
- linuxptp kaynak kodu, “pi.c.” https://raw.githubusercontent.com/richardcochran/linuxptp/master/pi.c
- SUSE, “Precision Time Protocol,” SLES 15 SP7 System Analysis and Tuning Guide. https://documentation.suse.com/sles/15-SP7/html/SLES-all/cha-tuning-ptp.html
- EndRun Technologies, “What is the difference between PTP hardware and software timestamping?” https://endruntechnologies.com/node/249
- Meinberg, “End-to-End Versus Peer-to-Peer,” 2013. https://blog.meinbergglobal.com/2013/09/19/end-end-versus-peer-peer/
- Meinberg, “Measuring Asymmetric Delay in the networks,” 2014. https://blog.meinbergglobal.com/2014/05/12/asymmetric-network-delay-ntp/
- Nokia, “IEEE 1588 for Frequency, Phase, and Time Distribution,” Advanced Configuration Guide 23.7.R2. https://documentation.nokia.com/acg/23-7-2/books/classic-cli-part-i/c072-acg-ieee-1588-fp-td.html
- Cisco, “Synchronizing 5G Mobile Networks,” Cisco Live EMEA 2024, BRKSPG-3050. https://www.ciscolive.com/c/dam/r/ciscolive/emea/docs/2024/pdf/BRKSPG-3050.pdf
- G. M. Garner, “IEEE 1588 Simulations – G.827x and 802.1AS,” IEEE-SA/ITU Ethernet çalıştayı, 2013. https://www.itu.int/en/ITU-T/Workshops-and-Seminars/ethernet/201307/Documents/S3P3_Geoff_Garner_V2.pdf
- J. R. Vig, “Quartz Crystal Resonators and Oscillators — A Tutorial,” SLCET-TR-88-1 rev. 8.4.2, U.S. Army CECOM, 2000. https://www.am1.us/wp-content/uploads/Documents/U11625_VIG-TUTORIAL.pdf
- P. P. M. Jansweijer, H. Z. Peek, E. de Wolf, “White Rabbit: Sub-Nanosecond Timing over Ethernet,” NIM A ön baskısı, 2012. https://indico.cern.ch/event/143656/papers/1378076/files/1031-WHITE.pdf
- G. Daniluk, “White Rabbit calibration procedure, version 1.1,” CERN, 2015. https://white-rabbit.web.cern.ch/documents/WR_Calibration-v1.1-20151109.pdf
- Keysight, “53230A Universal Frequency Counter/Timer,” ürün sayfası. https://www.keysight.com/us/en/product/53230A/350-mhz-universal-frequency-counter-timer-12-digits-s-20-ps.html
- Fluke Networks, “Network Cable Propagation Delay.” https://www.flukenetworks.com/knowledge-base/dtx-cableanalyzer/propagation-delay
- linuxptp kaynak kodu, “msg.h” (Sync ve Delay_Req mesaj yapıları). https://raw.githubusercontent.com/richardcochran/linuxptp/master/msg.h
- Linux çekirdek kaynak kodu, igb sürücüsü, “igb.h” (I210 gecikme sabitleri; uygulandığı yer igb_ptp.c). https://raw.githubusercontent.com/torvalds/linux/master/drivers/net/ethernet/intel/igb/igb.h
- S. Ruffini, S. Rodrigues, “Distribution of Timing: Sync over the Packet Layer of Networks,” ATIS WSTS eğitimi, 2022, sf. 14. https://wsts.atis.org/wp-content/uploads/2022/05/09-Stefano-Ruffini.Silvana-Rodrgues.Distribution-of-Timing-Over-the-Packet-Layer-of-Networks.pdf
İlgili yetkinlik alanı: Ağ mimarisi ve zaman senkronizasyonu
Bu konudaki bir ihtiyacınız ya da bu notla ilgili bir düzeltme için bize yazın.