Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Bagian ini menjelaskan aliran data masuk dari aplikasi ke simpul lokal. Struktur keseluruhan protokol yang dijelaskan berlaku untuk koneksi titik kontrol layanan sistem (SSCP) dan unit logis utama (PLU), tetapi aspek yang lebih kompleks (seperti penggunaan mode permintaan tertunda) hanya berlaku untuk koneksi PLU.
Aplikasi dapat mengirim data masuk pada salah satu koneksi, sebagai berikut:
Data berkode karakter layanan jaringan data manajemen fungsi (FMD NS) (layanan sesi) dan data manajemen fungsi (FMD) yang ditujukan untuk SSCP host harus dikirim ke simpul lokal pada koneksi SSCP.
Data FMD yang ditujukan untuk PLU host harus dikirim ke simpul lokal pada koneksi PLU.
Aplikasi tidak dapat menggunakan pesan Data untuk mengirim kontrol aliran data (DFC) atau pesan permintaan kontrol sesi ke host. Sebaliknya harus menggunakan pesan Kontrol Status . (Untuk detailnya, lihat Pesan Kontrol Status.)
Untuk semua koneksi, aplikasi harus mengisi bidang kunci tertentu di header Pesan data . Secara khusus harus:
Atur jenis pesan ke DATAFMI.
Alokasikan kunci pesan baru untuk pesan Data masuk pada koneksi ini.
Atur bidang ACKRQD jika diperlukan.
Atur bendera aplikasi. (Untuk informasi selengkapnya, lihat Bendera Aplikasi.)
Bidang nxtqptr, hdreptr , dan numelts di header pesan, serta bidang elteptr dan startd dalam elemen pesan disiapkan oleh rutinitas manajemen buffer Host Integration Server. (Untuk informasi selengkapnya, lihat Antarmuka DL-BASE/DMOD.) Aplikasi bertanggung jawab untuk mengatur bidang akhir .
Jika aplikasi tidak memiliki akses ke rutinitas ini (misalnya, ketika lingkungan operasi tidak mendukung panggilan prosedur intertugas dan memori bersama), semua bidang di header harus diatur oleh aplikasi.
Indikator header transmisi (TH) dan header respons (RH) tidak tersedia untuk aplikasi pada pesan Data masuk. Aplikasi harus mengatur bendera aplikasi yang sesuai di header pesan untuk mengontrol penautan, arah, dan sebagainya. Untuk deskripsi bendera aplikasi yang tersedia untuk data masuk dan topik selanjutnya di bagian ini untuk deskripsi tentang bagaimana bendera digunakan untuk mengontrol aliran data masuk, lihat Bendera Aplikasi.
Untuk data masuk, byte pertama adalah RU[0] untuk antarmuka manajemen fungsi standar (FMI).
Kunci pesan yang disediakan oleh aplikasi di header pesan Data masuk digunakan oleh simpul lokal untuk menunjukkan pesan Data mana pada koneksi ini yang dirujuk oleh Pengakuan Status keluar. Aplikasi harus mempertahankan urutan kunci pesan unik untuk aliran data masuk pada setiap koneksi yang dimilikinya dengan simpul lokal, sehingga aplikasi dapat menggunakan kunci pesan untuk menghubungkan pesan Data masuk dan pesan Status-Akui keluar pada koneksi. Perhatikan bahwa aplikasi juga harus menyediakan kunci pesan pada pesan Permintaan Kontrol Status untuk membedakan antara beberapa pesan LUSTAT RQE .
Protokol pengakuan data masuk mencerminkan protokol respons rantai sekunder dan mode permintaan yang digunakan pada sesi, sebagai berikut:
Pesan Data Masuk dengan ACKRQD yang diatur di header menghasilkan permintaan RQD .
Pesan Data Masuk tanpa ACKRQD yang diatur di header menghasilkan permintaan RQE atau RQN tergantung pada protokol respons rantai.
Aplikasi hanya boleh mengatur ACKRQD pada pesan Data yang memiliki bendera aplikasi indikator rantai akhir (ECI) yang ditetapkan.
Jika sesi menentukan bahwa sekunder menggunakan mode permintaan langsung, aplikasi masih dapat mengirim pesan Data lebih lanjut setelah mengirim data dengan set ACKRQD , meskipun belum menerima pesan Pengakuan Status untuk pesan Data tersebut. Pesan diantrekan dalam simpul lokal dan secara progresif dikirim saat respons positif diterima.
Jika sesi menentukan bahwa sekunder menggunakan mode permintaan tertunda, setelah mengirim pesan Data dengan set ACKRQD , aplikasi dapat terus mengirim pesan Data .
Jika aplikasi mengatur bidang ACKRQD di header pesan pesan Data , itu menunjukkan bahwa aplikasi memerlukan pengakuan terhadap pesan Data ini. Simpul lokal mengakui pesan Data masuk dengan mengirim pesan Pengakuan Status ke aplikasi pada koneksi yang sama dan menggunakan kunci pesan yang sama dengan pesan Data . (Untuk ilustrasi, lihat gambar pertama di akhir topik ini.)
Simpul lokal memproses pesan Data masuk dari aplikasi melalui komputer status internalnya, menetapkan nomor urutan SNA yang benar atau pengidentifikasi untuk alur ini, dan mengirim data dalam permintaan ke host. Jenis respons rantai permintaan tergantung pada apakah ACKRQD diatur dalam pesan Data dan parameter sesi.
Simpul lokal memetakan respons positif dari host ke Status-Ackledge(Ack) ke aplikasi. Aplikasi dapat menggunakan kunci pesan di Status-Acknowledge untuk menghubungkan pengakuan dengan pesan Data asli. Oleh karena itu, tanda terima Status-Ack) untuk pesan Data tertentu menyiratkan bahwa simpul lokal telah menerima respons SNA positif dari host terhadap permintaan SNA masuk. (Untuk ilustrasi, lihat gambar kedua di akhir topik ini.)
Perhatikan bahwa respons diserap pada sesi SSCP-PU.
Perhatikan bahwa pesan Status-Acknowledge(Ack) keluar berisi bendera aplikasi dan nomor urut. Bendera aplikasi mencerminkan indikator RH dalam respons. Nomor urut adalah nomor urutan SNA dari respons, dan menyediakan mekanisme untuk aplikasi yang menggunakan profil Layanan Transmisi (profil TS) 4 untuk melacak nomor urutan sekunder SNA yang sesuai dengan unit pekerjaan.
Simpul lokal memetakan respons negatif dari host ke pesan Status-Acknowledge (Nack-1) ke aplikasi. Aplikasi dapat menggunakan kunci pesan dalam Status-Acknowledge untuk menghubungkan pengakuan negatif dengan pesan Data asli. Pesan Status-Acknowledge (Nack-1) keluar berisi kode indra SNA dan nomor urut dari respons negatif. (Untuk ilustrasi, lihat angka ketiga dan keempat di akhir topik ini.)
Jika simpul lokal mendeteksi kesalahan dalam format pesan Data masuk, atau pesan Data tidak sesuai dengan status sesi saat ini, simpul tersebut mengirimkan Status-Acknowledge (Nack-2) ke aplikasi yang berisi kode kesalahan. (Untuk daftar kode kesalahan, lihat Kode Kesalahan dan Pengertian.) Simpul lokal tidak mengirim permintaan ke host yang sesuai dengan pesan Data dalam kesalahan dan tidak memajukan nomor urutan SNA untuk sesi tersebut. Aplikasi dapat menggunakan kunci pesan apa pun dalam pesan Data masuk berikutnya (dengan asumsi kesalahan tidak menyebabkan kegagalan kritis).
Contoh kesalahan rantai serius, di mana aplikasi mengirim pesan Data dengan ACKRQD tetapi tanpa ECI dalam bendera aplikasi, ditunjukkan pada gambar terakhir di akhir topik ini. Perhatikan bahwa setelah mendeteksi kesalahan khusus ini, simpul lokal menandai koneksi aplikasi sebagai gagal secara kritis, menutup koneksi, dan mengirim permintaan TERM-SELF ke SSCP untuk menghasilkan UNBIND. (Untuk informasi selengkapnya, lihat Pemulihan.)
Pesan Kontrol Status Masuk, yang menyebabkan pembuatan permintaan aliran yang dipercepat, dapat dikirim kapan saja dan tidak memengaruhi pengiriman pengakuan positif atau negatif ke pesan Data masuk. Untuk detail tentang pesan Kontrol Status mana yang sesuai dengan permintaan alur yang dipercepat SNA, lihat Pesan Kontrol Status.
Lima gambar berikut menggambarkan contoh protokol pengakuan data masuk (dan protokol SNA yang mendasarinya) untuk berbagai jenis respons rantai dan mode permintaan sesi sekunder.
Gambar menunjukkan:
Bidang ACKRQD pada pesan Data .
Kunci pesan pada pesan Data .
Setiap bendera aplikasi yang relevan pada pesan Data .
Kode kesalahan (ditampilkan sebagai "ERROR=...") pada pesan Data .
Bendera RH yang relevan pada permintaan/respons SNA.
Nomor urut pada permintaan/respons SNA.
Kode pengertian (ditampilkan sebagai "SENSE=....") pada permintaan/respons SNA.
Untuk kesederhanaan, semua pesan diasumsikan mengalir pada sesi PLU yang sama.
Pada gambar berikut, aplikasi berhasil mengirim pesan Data .
Aplikasi berhasil mengirim pesan DataPada gambar berikut, aplikasi berhasil mengirim rantai pesan Data .
Aplikasi berhasil mengirim rantai pesan DataPada gambar berikut, host menolak rantai pesan Data .
Host menolak rantai pesan DataPada gambar berikut, host menolak rantai respons pasti pertama dan menolak rantai respons pengecualian ketiga pada sesi permintaan yang tertunda. Perhatikan bahwa respons negatif terhadap rantai ketiga menyiratkan respons positif terhadap rantai kedua.
Host menolak rantai respons pasti pertamaPada gambar berikut, simpul lokal mendeteksi penggunaan ACKRQD aplikasi yang tidak valid tanpa bendera aplikasi ECI pada pesan Data . Perhatikan bahwa tidak ada data yang dikirim ke host. Namun, karena kesalahan sangat penting, simpul lokal akan mengirim pesan TERM-SELF ke SSCP.
Simpul lokal mendeteksi penggunaan ACKRDQ aplikasi yang tidak valid tanpa bendera aplikasi ECI pada pesan Data