Your Ad Here

24 Ocak 2008

SNA LU6.2 PROTOKOLU

GİRİŞ

Burada UNIX Sistemlerinin IBM merkez bilgisayarına PU 2.0 ve LU 6.2 protokolu altında tek oturum (SINGLE SESSION) kurarak bağlantısı anlatılır.

IBM MERKEZ BİLGİSAYARI TANIMLARI

VTAM parametrelerinde bu tür bağlantı için PU ve LU tanımlarına aşağıdaki bilgiler olmalıdır.

PU tanımında MAXOUT=7 PUTYPE=2 olmalıdır. LU tanımında LOCADDR=xx DLOGMODE=xxxxxxxx bulunmalıdır. Diğer parametreler sistem değerleri olabilir.

CICS tanımlarından SIT, TCT, PCT, PPT tablolarında kullanılan parametreler şöyle sıralanır.

TCT tablosunda TYPE=SYSTEM, ACCMETH=VTAM, FEATURE=SINGLE,SYSIDNT=xxxx, MODENAM=xxxxxxx, TRMSTAT=TRANCEIVE, BUFFERS=4096,RUSIZE=256 ve TRMTYPE=LUTYPE62 olmalıdır.

SIT tablosunda ISC=YES parametresi bulunmalıdır.

PCT ve PPT tablolarında kullanılacak program ve transaction tanımları yapılır. Burada en önemli unsur, PCT tablosunda MODENAM=xxxxxxxx tanımının yer almasıdır.

CICS altında yapılan MODEENT tanımı aşağıdaki örnek bilgilerden oluşur.
LOGMODE=logmode_adı, TYPE=0,FMPROF=X'13',TSPROF=X'07',
PRIPROT=X'B0',SECPROT=X'B0',ENCR=B'0000',COMPORT=X'50B1',
RUSIZE=X'8585',PSERVICE=X'060200000000000000002D00'

UNIX BİLGİSAYARI TANIMLARI

UNIX tarafında SNA gateway tanımı için kullanılan parametreler şöyle sıralanır.
PU=2.0 PU tanımı 2.0 veya 2.1 olarak yapılmalıdır
PIUSIZE=256 Merkezle iletişimde kullanılacak parametre 256-32768 arasında bir değer olabilir
ADDR=C1 Burada bağlantı adresi C1,C2,C3 gibi değerler olabilir
SDLCWIN=7 SDLC window size parametresi VTAM da tanımlanan değerler MAXOUT aynı olmalıdır.
FORMAT=NRZI Bağlantıda kullanılan format, Merkezdeki tanımların NRZI=YES veya NRZI=NO değerlerine göre düzenlenmelidir.
DUPLEX=FULL Bu değer dört telli modemler için FULL, iki telli modemler için HALF DUPLEX olmalıdır.
ROLE=S Bağlantıda UNIX bilgisayarının görevi "Secondary" (İkincil) bilgisayar olarak tanıtılır. Bu parametre INITSELF için geçerlidir.

Bu bilgilerin dışında kalan parametreler kullanılan UNIX sistemindeki sürücü programına özel değerler olabilir. Burada olması gereken parametrik bilgilerin alabilecekleri değerler açıklanmıştır.

LU6.2 hizmet programları için konfigurasyon bilgilerinde gereken parametreler ise şöyle olmalıdır.

UNIX bilgisayarındaki ençok LU sayısı
Merkezdeki LU sayısı
Sistemde kullanılacak uygulama programları sayısı
Gönderme/Alma işlemlerinde kullanılan tampon alan boyu
Merkezdeki ve UNIX üzerindeki LU adları.

İLETİŞİM MANTIĞI

Kurulacak iletişim, oturum başlatma ve kapama mantığı ile çalışır.

SNA ortamında taraflardan biri bekleme, diğeri gönderme konumundadır. Gönderme konumunda olan taraf oturumun yönünü değiştirebilir. Bu durumda gönderme konumundaki taraf bekleme konumuna geçerken, bekleme konumunda olan gönderme konumuna geçer. Bu iletişim kuralına HALF DUPLEX FLIP FLOP adı verilir. Ancak merkez bilgisayar bekleme konumunda olduğu zaman bile karşı tarafı uyararak, gönderme konumuna geçebilir. Bu durmunda UNIX programı oturum yönünü kaybeden taraf, Merkez bilgisayar ise oturum yönünü kazanan taraf olarak adlandırılır.

Oturum kuran taraf birincil program, oturumu karşılayan program ise ikincil programdır. Oturum ilk kurulduğunda Birincil program her zaman gönderme konumunda, ikincil program ise alma konumundadır. Birincil program mesajı gönderdikten sonra karşı tarafı gönderme konumuna sokacak SEND INVITE komutunu kullanır ve bekleme konumuna geçer. İkincil program mesajı alınca gönderme konumunda iken SEND CONFIRM, SEND LAST veya SEND INVITE komutları ile cevap verir. SEND CONFIRM, mesajın alındığının bildirilmesi, SEND LAST, mesaj alınınca oturumu kapatılması, SEND INVITE ise mesaj alınınca gönderme konumuna geçilmesi için kullanılır.

Oturumu kapatma komutu hem UNIX hem de CICS tarafındaki ikincil programlardan yönlendirilir.

UYGULAMA PROGRAMLARI MANTIĞI

UNIX oturumu başlatırsa (UNIX --> CICS)

Daha önce hiç bağlantı kurulmamış ise önce SNA bağlantısı kurulur (INITSELF,BIND,STD mesajları ile). Bu durumda LU tanımı CICS ortamında "Rel" durumundan "Acq" duruma geçer. VTAM'da ise terminal "ACTIVE" iken "ACT/S" olarak gözükür.

UNIX, CICS altında çalışacak programı başlatır ve CICS programına mesaj gönderir.

UNIX programı mesajı gönderdikten sonra CICS programının cevap verbilmesi için iletişimin mesaj trafiği yönünü değiştirir ve cevap bekleme konumuna geçer.

CICS programı her zaman RECEIVE komutu ile mesajı alır, işlemi yapar ve cevabı SEND CONFIRM veya SEND LAST komutu ile bildirir.

Cevap UNIX programına SEND CONFIRM ile gelmiş ise UNIX programı mesajın alındığını Confirm mesajı göndererek CICS programına bildirir ve cevap bekleme konumunda kalır.

Cevap, SEND LAST komutu ile gelmiş ise UNIX programı oturumu kapatır. Bu sırada CICS programı da oturumu kapatmıştır.

Merkez oturumu başlatırsa (CICS --> UNIX)

Merkezdeki program, önce oturum başlatmak için ALLOCATE komutunu çalıştırır. Burada SYSID parametresi TCT tablosundaki TYPE=SYSTEM için verilen addır. Başarılı sonuçlanan ALLOCATE komutundan sonra program, CONNECT komutunu çalıştırır ve SEND INVITE WAIT ile mesajı gönderir. CONNECT komutunda şubedeki ikincil uygulama programının adı girilirken, CONVID bilgisi ALLOCATE komutundan alınarak belirtilir (EIBRSRC).

Oturum kurulunca UNIX uygulama programı çalışır vaziyette cevap bekleme konumundadır. Gelen mesajı alır, iletişim yönünü değiştirir, CICS programına gidecek mesajı SEND LAST komutu ile gönderir ve oturumu kapatır. Aynı anda CICS programı RECEIVE komutu ile cevabı alır ve oturumu kapatır.

UNIX PROGRAMLARI KATMANLARI

Örnek bir uygulamada UNIX üzerindeki iletişim programı katmanları aşağıda anlatılmıştır.

          SNA GATEWAY
  LU62 BİRİNCİL UYGULAMASI  LU62 İKİNCİL UYGULAMASI
         SUBE                      SUBE
       PROGRAMI                  PROGRAMI

Şube programı merkeze bir mesaj göndermek istediğinde Birincil programa duyuruda bulunur. Birincil program mesajı CICS ortamına gönderir. CICS programından gelen cevap Birincil program tarafından ilgili sube programına duyurulur. Şube programı mesajı alır ve işlemin gereğini yapar. Birincil program her zaman bellekte çalışır durumdadır.

CICS ortamından başlayan işlemlerde, CICS programı, önce ikincil uygulama programını UNIX üzerinde başlatır ve mesajını ikincil uygulama programına gönderir. İkincil uygulama programı aldığı bilgiyi Şube programına duyurur. Şube programı cevabı ikincil uygulama programı aracılığı ile gönderir. İkincil uygulama programı oturumu kapatır ve son bulur. Bellekte durmaz.

Bu durumda şubede hiçbir terminal çalışmasa bile merkezden gelen mesaj uygulama programlarınca algılanır ve gereken cevap, süresi içinde verilir.

PROGRAMLAMAYA YÖNELİK DİĞER KAVRAMLAR

Bu örnekte iki UNIX bilgisayarının Merkez Bilgisayar aracılığı ile birbirleri ile konuşması ele alımıştır. Uygulama, Bankcılık ortamı göz önüne alınarak anlatılmıştır.

Bu uygulamada, CICS programının oturumu başlatması ancak sistemin CICS tarafından "Acq" görülmesi ile mümkündür.

UNIX programları sistem açıldığında tüm LU tanımlarını "Acq" yapabilmek için "Allocate" işlemini başlatır.

CICS altındaki programlar oturum kurulduğunda "Sus" (Suspend) gözükür. Bir terminalin (şube bilgisayarının) meşgul olması demek, o terminal ile ilgili bir işlemin "Sus" veya "Act" durumda olması demektir. Bu durumda CICS ALLOCATE komutu ile bir işlem başlatamaz, oturum kuramaz.

CICS programı oturum başlatırken o şubedeki belirtilen ve "Aqc" durumda olan LU için çalışan bir iş olup olmadığına bakar. LU boş ise oturum kurulur. CICS her zaman UNIX üzerinde ikincil programı çalıştırdığından, ikincil program mesajı ilgili şube programına devreder. Bu durumda mesaj karışması ve bekleme olmaz. LU boş değilse CICS programı işi başlatan şubeye "KARŞI ŞUBE MEŞGUL" mesajını gönderir.

İki şube arasındaki iletişimde ilk şubeye göre ikincil program olan CICS programı doğrudan karşı şubedeki ikincil programı da başlatabildiğinden ve yeni kurulan oturum için birincil program olduğundan, mesaj kaybı, program kuyruklaması gibi sorunlar en aza indirgenmiş olur.


Ana Sayfaya   Teknik Bilgiler Sayfasina


Aglar Aglink Agteknik C-Kodlama C-Önişleme CRC/LRC DEA etcsrv Çatal (fork) ilet inetd Make Msg Auth Özyinelemeli Robotlar için SDLC Güvenlik Seri uçlar SNA LU0 SNA LU6.2 tcp/ip tcp Programı Unix vi Editör