24 Ocak 2008
SNA LU0 PROTOKOLU
GİRİŞ
LU0 iletişim protokolu, iki program arasında mesaj alış verişini yapmak için kullanılan eski bir tekniktir. Bu protokolda, programın biri Merkez Bilgisayarda diğeri ise SNA ortamına bağlı bir başka bilgisayarda olur. Merkez bilgisayara gönderilen mesaj LU0 protokolu kurallarına göre hazırlanır. Eski bir teknik olduğundan protokol arayüzü çok üst düzey işlevlerden oluşmaz. Bazı protokol arayüzü işlemleri (status sorma, cevap tipini belirleme gibi) uygulama arayüzünde de bulunabilir.
SNA ortamındaki bazı kavramlar LU0 protokolu kullanılırken çok daha iyi bilinmelidir.
Uygulama Arayüzü
- HOSTOPEN
-
Merkezdeki program ortamı ile bağlantı kurma. Bu işlemde
Merkezdeki
program iletişim tanımlarına göre Mantıksal bir birimdir (Logical Unit).
Örneğin Merkezdeki CICS ortamı bir mantıksal birimdir ve uygulama programı
diğer uçtaki mantıksal birim olarak CICS ile bağlantı kurar. Kurulan
bağlantıda aradaki katmanlara CICS ortamı adı, bağlantı protokolu (LU0 gibi)
Birincil ve ikincil birim tanımları anlatılır. Bu bilgiler bugün parametre
biçiminde belirtilir.
- HOSTCLOSE
- Merkezdeki mantıksal birimle kurulan bağlantıyı kapamak
için kullanılır.
- HOSTWRITE
- Merkezdeki mantıksal birime veya ara katmanlara mesaj
göndermek için kullanılır. Gönderilen mesajda protokol gereği bracket
işlemleri, cevap koşulları (Excp response, Definite response, Negative
response gibi) da bulunur.
- HOSTREAD
- Merkezden gelen mesajları veya komutları okumak için
kullanılır. Cevapta status bilgisi (sense byte) response tipi (Negative,
Definite gibi) uygulama bilgilerinden ayrı olarak mesajın başında
ilk 9 byte içinde bulunur.
- INITSELF
- Merkezdeki VTAM programı aracığılı ile Merkezdeki uygulama
programı ortamına bağlantı kurmak için gönderilen komuttur. Burada
bağlantı kurulacak CICS adı, varsa MODTAB tanımı yapılır. Komut VTAM
tarafından aktif durumdaki CICS ortamına iletilir. Cevap VTAM
aracılığı ile Protokol arayüzüne gelir.
- BIND
- INITSELF komutu, merkezdeki programlar tarafından kabul edilince
ilk gelen cevap BIND komutudur. Burada, hangi kalıp yapısı (format type) ile
sistemin mesaj kabul edeceği yer alır. BIND komutuna iki tür cevap
verilebilir. Ya komut kabul edilir veya red edilir. Bu işlem uygulama
programı arayüzündeki mantıkla çözümlenir. Eğer BIND red edilirse, uygulama
programı arayüzündeki HOSTOPEN işlemi başarısız olmuştur.
- BID
- Bir program "cevap verme" konumunda ise, BID komutunu göndererek
"gönderme" konumuna geçmek ister. BID komutuna karşı taraftan olumlu
yanıt gelirse istekte bulunan taraf "gönderme" konumundadır. Olumlu cevap
gelmezse istekte bulunan taraf protok gereği panatezin kapanmasını
beklemelidir. Çoğu kez BID komutu iletişimi durdurmak veya kurulmuş oturumu
kapatmak için kullanıldığından BID komutuna olumlu cevap verilmeli ve
"cevap alma" konumuna geçilmelidir. Uygulama arayüzü sistem "Alma" konumunda
iken bir mesaj göndermek isterse protokol konumundan bu işlem başlatılmalıdır.
Eğer uygulama programı alınan cevap beklenmedik bir biçimde ise veya alınan
cevap içeriği oturumu koşulsuz kapatmayı gerektiriyorsa protokol arayüzünde
BID komutu başlatılmalı. BID komutuna gelen olumlu cevapla oturum
kapatılmalıdır. Genelde, uygulama programı karşı taraftan beklenen sürede
cevap alamaz ise, daha sonraki mesajlarda konum uyumsuzluğu olmaması için
oturumu kapatıp, yeniden açmak ister. Protokol arayüzünde program "Alma"
konumunda kalmış ve cevap alamamış olduğundan BID komutu ile "Gönderme"
konumuna geçilir ve daha sonra oturum UNBIND komutu ile kapatılır.
- READ
- Protokol arayüzü "Alma" konumunda iken READ komutu ile merkezden
cevap bekler. İletişim arayüzüne bağımlı olarak cevap ya okunacak hiçbirşey
yok (zaman aşımı) veya cevap geldi biçimindedir. Gelen cevap yine iletişim
arayüzü programlarına bağımlı olarak ya 255 byte uzunluğunda zincirler
halindedir, ya da 255 byte'lık bilgiler bir yapıya taşınmış BIND komutundaki
kalıba göre düzenlenmiştir. BIND komutundaki kalıba göre düzenlenmiş bilgi
aşağıdaki değerlerden oluşur :
[Transmission Header][Request Header][Request Unit]Protokol Arayüzü, TH (Tranmission Header) ve RH (Request Header) değerlerinden mesajın içeriğini anlar ve uygulama programına gönderilmesi gereken cevap bu bilgilerden hazırlanır. RU (Request Unit), bu protokolda uygulama programı mesajını içerir. Bazı durumlarda RU bilgisi sıfır uzunlukta gelir. Bu bilgi CICS ortamındaki işlemin bittiği, protokol gereği parantezin kapandığı anlamını taşır. Protokol arayüzü sıfır RU boyu olan mesajla (boş mesaj), mesaj alamama durumunu ayırt etmelidir. Mesaj alamama durumunda CICS programı "Gönderme" konumunda kalmış, VTAM CICS ortamını "Gönderen" olarak tanıyordur. Uygulama programı zaman aşımına uğramış, "Alma" konumundan çıkmak istemektedir. Hatta yeniden "Gönderme" konumuna geçip mesaj göndermek istiyor olabilir. Bu durumda "Alma" durumunda olan tarafın VTAM aracılığı ile konumunu değiştirmesi gerekir. Aksi halde VTAM, uygulama programının konumunu hala "Alma" konumu olarak bildiğinden gönderilen her mesajı red edecektir. İşte bu gibi durumlarda BID komutu işe yarar. Eğer parantez kapanmamış ise BID komutu ile VTAM da yön değiştirme işlemi yapılır ve UNBIND gönderilerek oturum kapatılır. Böylece CICS uygulama programı hala çalışıyorsa durması artık karşı taraftaki programın cevap beklemediği belirtilmiş olur. Eğer CICS programı herhangi bir nedenle durmuş, zaten çalışmıyorsa bu işlemle VTAM açısından parantez kapanması sağlanmış olur.
-
WRITE
- Bu komut format yapısına göre mesaj hazırlayıp bu mesajı merkezdeki
CICS programına göndermek için kullanılır. Protokol arayüzü "Gönderme"
konumunda iken bu komutu işleme sokar. Gönderilen mesajın yapısı
[Transmission Header][Request Header][Request Unit]biçimindedir.
- UNBIND
- Bu komut INITSELF ve BIND komutları ile kurulmuş oturumu kapatmak
için kullanılır. Gerçekte iletişim kapatılmaz, Mantıksal birimler arasında
kurulmuş olan oturum kapatılır.
- HATA Kodları
- Gönderilen mesajlardan sonra, INITSELF işleminden sonra veya
READ işleminden sonra STATUS sorularak hata mesajları alınabilir. SNA
ortamındaki hata mesajlarına "sense byte" adı verilir. Hata mesajları 6 byte
olarak protokol arayüzüne gelir. Hata mesajlarının anlamları SNA kitaplarında
ayrıntıları ile açıklanmıştır.
- SNA ortamında iletişim protokolu SDLC
olarak adlandırılır. Ayrıntılı bilgi ilgili sayfada açıklanmıştır.
Ana Sayfaya Teknik Bilgiler Sayfasina

