Kunci Oportunistik

Kunci oportunistik (juga disebut oplock) adalah kunci yang ditempatkan oleh klien pada file yang berada di server. Dalam kebanyakan kasus, klien meminta kunci oportunistik sehingga dapat menyimpan data secara lokal, sehingga mengurangi lalu lintas jaringan dan meningkatkan waktu respons yang jelas. Kunci oportunistik digunakan oleh pengalih jaringan pada klien dengan server jarak jauh, serta oleh aplikasi klien di server lokal.

Catatan

Artikel tentang kunci oportunistik yang ditemukan di bagian ini terutama berkaitan dengan aplikasi klien, meskipun beberapa informasi disediakan untuk pengalih jaringan. Anda dapat menemukan lebih banyak informasi oplock untuk pengalihan jaringan di artikel Oplocks Windows WDK.

Gambaran Umum

Kunci oportunistik mengoordinasikan penembolokan data dan koherensi antara klien dan server dan di antara beberapa klien. Data yang koheren adalah data yang sama di seluruh jaringan. Dengan kata lain, jika data koheren, data di server dan semua klien disinkronkan.

Kunci oportunistik bukan perintah oleh klien ke server. Mereka adalah permintaan dari klien ke server. Dari sudut pandang klien, mereka oportunistik. Dengan kata lain, server memberikan kunci tersebut setiap kali faktor lain memungkinkan kunci.

Ketika aplikasi lokal meminta akses ke file jarak jauh, implementasi kunci oportunistik transparan terhadap aplikasi. Pengalih jaringan dan server yang terlibat membuka dan menutup kunci oportunistik secara otomatis. Namun, kunci oportunistik juga dapat digunakan ketika aplikasi lokal meminta akses ke file lokal, dan akses oleh aplikasi dan proses lain harus didelegasikan untuk mencegah kerusakan file. Dalam hal ini, aplikasi lokal secara langsung meminta kunci oportunistik dari sistem file lokal dan menyimpan file secara lokal. Ketika digunakan dengan cara ini, kunci oportunistik secara efektif adalah semaphore yang dikelola oleh server lokal, dan terutama digunakan untuk tujuan koherensi data dalam file dan pemberitahuan akses file.

Sebelum menggunakan kunci oportunistik di aplikasi Anda, Anda harus terbiasa dengan akses file dan mode berbagi yang dijelaskan dalam Membuat dan Membuka File.

Jumlah maksimum kunci oportunistik bersamaan yang dapat Anda buat hanya dibatasi oleh jumlah memori yang tersedia.

Aplikasi lokal tidak boleh mencoba meminta kunci oportunistik dari server jarak jauh. Kesalahan akan dikembalikan oleh DeviceIoControl jika upaya dilakukan untuk melakukan ini.

Kunci oportunistik adalah penggunaan yang sangat terbatas untuk aplikasi. Satu-satunya penggunaan praktis adalah menguji pengalih jaringan atau penangan kunci oportunistik server. Biasanya, sistem file menerapkan dukungan untuk kunci oportunistik. Aplikasi umumnya meninggalkan manajemen kunci oportunistik ke driver sistem file. Siapa pun yang menerapkan sistem file harus menggunakan Kit Sistem File (IFS) yang Dapat Diinstal. Siapa pun yang mengembangkan driver perangkat selain sistem file yang dapat diinstal harus menggunakan Windows Driver Kit (WDK).

Kunci oportunistik dan operasi terkait adalah superset dari bagian kunci oportunistik dari protokol Common Internet File System (CIFS), Draf Internet. Protokol CIFS adalah versi yang disempurnakan dari protokol Server Message Block (SMB). Untuk informasi selengkapnya, lihat Gambaran Umum Protokol Microsoft SMB dan Protokol CIFS. CIFS Internet Draft secara eksplisit mengidentifikasi bahwa implementasi CIFS dapat menerapkan kunci oportunistik dengan menolak untuk memberikannya.

Topik berikut mengidentifikasi kunci oportunistik.

Di bagian ini

Topik Deskripsi
Penembolokan Lokal Penembolokan data lokal adalah teknik yang digunakan untuk mempercepat akses jaringan ke file data. Ini melibatkan penembolokan data pada klien daripada di server jika memungkinkan.
Koherensi Data Jika data koheren, data di server dan semua klien disinkronkan. Salah satu jenis sistem perangkat lunak yang menyediakan koherensi data adalah sistem kontrol revisi (RCS).
Cara Meminta Kunci Oportunistik Kunci oportunistik diminta dengan terlebih dahulu membuka file dengan izin dan bendera yang sesuai dengan aplikasi yang membuka file. Semua file yang kunci oportunistiknya akan diminta harus dibuka untuk operasi tumpang tindih (asinkron).
Respons Server untuk Membuka Permintaan pada File Terkunci Anda dapat meminimalkan dampak aplikasi Anda terhadap klien lain dan dampak yang mereka miliki pada aplikasi Anda dengan memberikan berbagi sebanyak mungkin, meminta tingkat akses minimum yang diperlukan, dan menggunakan kunci oportunistik yang paling tidak mengganggu yang cocok untuk aplikasi Anda.
Jenis Kunci Oportunistik Menjelaskan kunci oportunistik tingkat 1, tingkat 2, batch, dan filter.
Melanggar Kunci Oportunistik Melanggar kunci oportunistik adalah proses menurunkan kunci yang dimiliki satu klien pada file sehingga klien lain dapat membuka file, dengan atau tanpa kunci oportunistik.
Contoh Kunci Oportunistik Diagram tampilan lalu lintas jaringan untuk kunci oportunistik tingkat 1, kunci oportunistik batch, dan kunci oportunistik filter.
Operasi Kunci Oportunistik Jika aplikasi meminta kunci oportunistik, semua file yang meminta kunci harus dibuka untuk input dan output yang tumpang tindih (asinkron) dengan menggunakan fungsi CreateFile dengan bendera FILE_FLAG_OVERLAPPED .

Untuk informasi tambahan tentang kunci oportunistik, lihat dokumen CIFS Internet Draft. Setiap perbedaan antara topik ini dan CIFS Internet Draft saat ini harus diselesaikan demi CIFS Internet Draft.

Lihat juga

Panduan Manajemen Akses dan Protokol File NetApp

Oplocks (WDK)