5 Şubat 2020 Çarşamba

Zaman Duyarlı Ağ Nedir ve İşleyişi Nasıldır?


İsmi ister Profibus, ister Profinet ya da Ethercat olsun : Ağa bağlı gerçek zamanlı çözümler söz konusu olduğunda, endüstriyel alanda rekabet halinde bulunan çok sayıda farklı standart vardır. TSN tabanlı OPC / UA şimdi ilk kez tek tip bir çözüm sunabilir. Peki bu çözümün arkasında ne var?

Standart Ethernet'in dünya çapında elde ettiği muazzam başarı, yaygınlığı ve kullanılabilirliği ile karşılaştırıldığında, gerçek zamanlı Ethernet’te durum tamamen farklıdır: Burada, öncelikle patentli ve kendi arasında uyumsuz bir takım yöntemler söz konusudur. TSN'nin standardize edilmesiyle, yine uzun süredir mevcut olan OPC UA protokolünde çok ihtiyaç duyulan standardize bir uzantı ve bu uzantının bir açık kod lisansıyla temin edilebilirliğiyle bu olumsuzluklar giderilebilecektir. 

Bu makale TSN ve OPC UA'nın yayınla-ve-abone ol uzantılarının teknik temelini açıklanmakta ve eski bir rüyanın nasıl gerçeğe dönüşebileceğinin bir yöntemini göstermektedir: Herkes için sınırsız ve gerçek zamanlı Ethernet!

Gerçek-Zamanlı nedir, Bu tür Sistemler Nasıl Tanımlanmalıdır?

"Gerçek zamanlı" terimi bugün gerçek anlamı günlük hayattaki kullanımıyla birebir uygunluk göstermemesine rağmen uzun zaman önce ortaya atılmıştır. Çünkü sözcük gerçek anlamına dayanacak olursa "gerçek zamanlı", "doğru zaman", yani belirli bir yerde belirli bir zamanda geçerli olan zaman anlamına gelmelidir. Bu "doğru zaman" ın gerektiği gibi monoton bir şekilde ilerlememesinden ileri gelen bir zayıflığı vardır ve hatta kimi zaman otomatik veya manuel olarak ayarlanması da gerekmektedir. Böyle bir güncelleme ihtiyacı, örn. gök cisimlerinin mekanik düzensizlikleri nedeniyle düzeltme saniyeleri ekleyerek, normal saatten yaz saatine geçiş gibi keyfi zaman atlamaları ile veya mobil sistemlerin başka bir zaman dilimine taşınmasıyla oluşmaktadır. 
Ancak günümüzde kendini adamakıllı kabul ettirmiş olan “gerçek zamanlı” terimi, bu anlama gelmemektedir, bilakis tipik maksimum süre içerisinde öngörülemeyen dış olaylara tepki verebilen ve bu nedenle zaman atlamaları olmadan çalışmaya devam eden bir saate gereksinim duyan sistemlere karşılık gelmektedir . Bu tür sistemlere daha makul bir deyişle "deterministik yani belirlenimci sistemler" denmelidir; Ayrıca bir sistemin tepki vermesi geçmesi gereken azami sürenin de verilmiş olması arzu edilen bir durumdur. 
DIN 4102-5 standardında "T" harfi ve kapıların yangına kaç dakika dayanacağı bilgisine (T30- T60-T90 vs..) karşılık düşen bir sayı ile tanımlanan yangına dayanıklı kapıların sınıflandırılmasına dayanarak yaygın ancak yanlış bir şekilde gerçek zamanlı sistemler olarak adlandırılan sistemler, “D” harfi ve ardından bir sayı ile tanımlanabilmektedir. Bu sayı bu durumda mikrosaniye cinsinden maksimum tepki süresini gösterir. Örneğin, endüstriyel kontrollerde kullanılan standart 1 GHz işlemci tipik olarak maksimum 100 μs tepki süresine sahiptir ve buna göre bir D100 sistemi olarak adlandırılabilir. Grereksinimler de bu şekilde sınıflandırılabilirler: En geç 500 μs içerisinde yanıt vermesi gereken bir endüstriyel kontrol sistemine ihtiyaç duyulduğunda “D500 gereksinimi”nden bahsetmek gerekecektir.

TSN Zaman Duyarlı Ağlar  Layer 2 Teknolojisidir. 
Bu arada, “gerçek zamanlı” teriminin az önce bahsettiğimiz bu bir nevi bulanıklaşması, özellikle Linux gerçek zamanlı programlama ile ilintili olarak olarak ciddi bir karmaşaya neden olmuştur. Çünkü Linux çekirdeğindeki çeşitli saatler için önişlemci tanımları, "gerçek zamanlı" terimini gerçek anlamıyla kullanır ve aktüel saati esas alan , ancak atlamalar yapabilen saati CLOCK_REALTIME ve gerçek zamanlı uygulamalarda kullanılması zorunlu olan, monoton ve sürekli olarak ilerleyen saati ise CLOCK_MONOTONIC olarak tanımlar. Bununla birlikte, determinizm/belirlenimcilik gereksinimini “gerçek zamanlı” gereksinim olarak adlandırmak günümüzde olağan ve değişmeyen bir uygulama olduğundan, bu makalede bu durum bu şekilde ele alınmaya devam edecektir.

Gerçek-Zamanlı Ethernet Nedir?

Gerçek zamanlı bir sistemden deterministik tepki vermesi beklendiği gibi, gerçek zamanlı Ethernet'in de deterministik bir iletim(transport) tepkisi olmalıdır. Bu şu demek: Bir ağ paketi gönderilmesi istendiğinde, bu paketin hedef bilgisayara belirli bir zamanda güvenilir bir şekilde ulaşmasını garanti edecek şekilde yapılandırılabileceği anlamına gelir. Ve yine kaçınılmaz olarak bu, ağ paketinin bir kullanıcı programı tarafından öngörülebilir bir zamanda alındığı ve işlendiği anlamına gelir. Bu bağlamda, pratik nedenlerden dolayı, gönderen ve alıcının işletim sisteminin gerçek zamanlı olma kabiliyetine sahip olması, gerçek zamanlı Ethernet için temel bir ön koşuldur. Teorik olarak gerçek zamanlı olmayan bir bilgisayara gerçek zamanlı bir iletim katmanı kurabilirsiniz, ancak bunun pratik bir kullanımı neredeyse hiçbir şekilde olmayacaktır. 

Gerçek Zamanlı Ethernet'e İki Farklı Yaklaşım

İki Bilgisayarın UDP ile Bağlantısı
Gerçek zamanlı Etherneti mümkün kılabilmek için 1. paketin bir kullanıcı programı aracılığıyla gönderilmesi, 2. bu paketin vericinin ağ adaptörü aracılığıyla 3. alıcının ağ adaptörüyle fiziksel bağlantı üzerinden ve 4. ağ iletisi bekleyen kullanıcı programının çalışmaya devam etmesine kadar olan kısmın tümü bu sıralamanın öncelikli olarak gerçekleşmesini temin edecek şekilde kurgulanabilir. Gönderen ve alıcı bilgisayarlarda gerçek zaman özellikli bir işletim sistemi yüklüyse, her iki bilgisayar özel ve çift yönlü olarak birbirine bağlanırsa, başlangıçta bu ağ bağlantısı üzerinden aynı anda başka bir ağ trafiği gerçekleştirilmezse ve özellikle basit bir protokol olan UDP kullanılırsa, o zaman prensipte gerçek zamanlı - Ethernet bağlantısı kurulabilir. Bu koşullardaki bir ağ bağlantısının birleştirilmiş iletim ve alım süresi ölçülmüştür. Günde iki kez yaklaşık üç saat boyunca birer ölçüm gerçekleştirildi. Bu ölçümlerde ağ paketleri 500 μs'lik bir döngü aralığı ile gönderildi, hemen gönderene geri gönderildi ve süreleri kaydedildi. Birbirini 5 dakika aralıklarla takip eden gönderme ve alma işlemlerinin 343 mikrosaniyeyi asla geçmediği görülmüş olup bu bağlantının gerçek zamanlı bir Ethernet bağlantısına uygun olduğu kabul edilmiştir. 

Açıklanan yöntem, gerçek zamanlı olmayan başka ağ trafiğine de izin verilebilecek şekilde optimize edilebilir. Bu, sanal yerel ağ (VLAN) kullanılarak fiziksel ağın mantıksal alt ağlara bölünmesi ve işleme önceliklerinin atanması yardımıyla yapılır. Bu durumda gerçek zamanlı olması istenen UDP ağ paketleri yüksek öncelikli VLAN eth1.2 (Şekil 2) üzerinden gönderilirken, aynı zamanda diğer ağ trafiği 20 Mb / s'ye kadar çıkabilen yüksek bant genişliği ancak eth1.3 üzerinden düşük VLAN önceliği ile gerçekleştirilmiştir. 

VLAN'a sahip ağ anahtarları temin edilebilir olduğundan, özellikle açık kaynaklı lisanslı yazılım ile gerçekleştirilebilen söz konusu bu yöntem, uygun özellikte genişletilmiş bir topolojide de kullanılabilir. Ancak başka bilgisayarların ilavesi mümkün değildir ve yöntemin önemli bir zayıf yanı olarak , bu gerçek zamanlı ağ bağlantısı üzerindeki tüm zaman verilerinin her zaman için vericinin zamanını referans alması gerektiği hususuna dikkat edilmelidir. Bu bağlamda alıcı, yalnızca gönderenin zamanını referans alarak yanıt paketleri veya bağımsız yeni paketler gönderebilir. Bununla birlikte, birçok durumda, ilgili tüm bilgisayarların aynı sistem saatini referans alarak ağ paketi gönderip alabilmesi ve Nesnelerin İnterneti gibi aktüel gereksinimlerin sisteme bağlı çok sayıda bilgisayarla gerçekleştirilmesi istenen bir şey olduğundan , bu yöntem evrensel olarak kullanılabilir gerçek zamanlı etherneti gerçekleştirme yolunda geleceği parlak bir yöntem değildir. 

2. Zaman Duyarlı Ağ (TSN)
Gerçek zamanlı Ethernet için temelde farklı ikinci bir yaklaşım, ağa bağlı tüm bilgisayarların zaman bakımından yüksek hassasiyetle senkronize olduğu varsayımından yola çıkar. Gerekli saat sapması, boyut olarak internet üzerinde Ağ Zaman Protokolü (NTP) ile elde edilebilecek olandan daha düşüktür. NTP yönteminde milisaniye aralığında maksimum sapmalar elde edilebilirken, üniversal olarak gerçek zamanlı Ethernet için mikro saniyelerin altında bir zaman aralığında bilgisayar senkronizasyonu gereklidir. Ağdaki bilgisayarlar tanımlı azami saat sapması eşliğinde bu kadar yüksek hassasiyetle senkronize edilirse ve ağ paketlerinin belirli bir noktada ve bilinen bir iletim hızıyla gönderilmesine olanak veren bir gönderim yöntemi gerçekleştirilebilirse bir ağ paketinin mümkün olan en geç alınma süresi tam olarak ve bu şekilde tahmin edilebilir. Gerçek zamanlı Ethernet de bu sayede başarılmış olur. 

Zamana duyarlı ağ (TSN) terimi altında özetlenen farklı yöntemlerin ardındaki yaklaşımlar arasında bu ve daha pek çok yaklaşım bulunmaktadır. Bir istisna dışında, bu yöntemler IEEE 802.1Qxx grubunda standartlaştırılmıştır. Bu istisnada , IEEE 1588 olarak uzun zaman önce standartlaştırılan ve yakın gelecekte IEEE 802.1AS-rev standardı altında yayınlanması beklenen Hassas Zaman Protokolü'nün (PTP) özel bir profilini kullanan yüksek hassasiyetli bilgisayar senkronizasyonu söz konusudur. Toplamda ondan fazla farklı standart TSN'nin farklı bileşenlerini tanımlayacaktır; ancak, bunların sadece küçük bir kısmı benimsenmiş olup Linux veya Linux altında çalışabilen ağ donanımını kullanan yöntemler bulunmaktadır. 

Yukarıda adı geçen IEEE 802.1Q içerisinde derlenmiş olan tüm standartlar ve tabii ki VLAN, Açık Sistemler Bağlantısı (OSI) referans modelinde tanımlanan katmanlardan Bağlantı-Katmanı ile ilintiliyken, TSN yardımıyla gerçek zamanlı Ethernet’in gerçekleştirilebilmesi için ,neredeyse tüm katmanlarda ilave bileşenler gerekir. (Tablo 2).

Bu, TSN tabanlı gerçek zamanlı Ethernet'in başarılı bir şekilde sunulabilmesini sağlamak için farklı alanlardan uzmanların birlikte çalışması gerektiği anlamına gelir. Burada;

TSN destekli ile Ağ Donanımı : Ağ adaptörü, Anahtar, Yönlendirici 

Ağ adaptörü için Linux sürücüsü

Uygulama programları için Kütüphaneler

TSN bileşenlerinin konfigürasyonu için Uygulama Programlar 

 gerekli bileşenlerdir. 

Hiç yorum yok: