Antarmuka Sistem Komputer Kecil (bahasa Inggris: Small Computer System Interface, disingkat SCSI) adalah seperangkat standar untuk menghubungkan dan mentransfer data secara fisik antara komputer dan perangkat periferal. Standar SCSI menentukan perintah, protokol, kelistrikan, optik dan antarmuka logis. SCSI paling sering digunakan untuk hard disk drive dan tape drive, tetapi dapat menghubungkan berbagai perangkat lain, termasuk pemindai dan driveCD, meskipun tidak semua pengontrol dapat menangani semua perangkat. Standar SCSI mendefinisikan set perintah untuk jenis perangkat periferal tertentu; Kehadiran "tidak diketahui" sebagai salah satu dari jenis ini berarti bahwa secara teori dapat digunakan sebagai antarmuka ke hampir semua perangkat, tetapi standarnya sangat pragmatis dan ditujukan untuk persyaratan komersial.
Standar SCSI leluhur, X3.131-1986, umumnya disebut sebagai SCSI-1, diterbitkan oleh komite teknis X3T9 American National Standards Institute (ANSI) pada tahun 1986. SCSI-2 diterbitkan pada bulan Agustus 1990 sebagai X3.T9.2/86-109, dengan revisi lebih lanjut pada tahun 1994 dan adopsi selanjutnya dari banyak antarmuka. Penyempurnaan lebih lanjut telah menghasilkan peningkatan kinerja dan dukungan untuk kapasitas data penyimpanan yang terus meningkat.[1]
Sejarah
Antarmuka paralel
SCSI diturunkan dari "SASI", "Antarmuka Sistem Shugart Associates", dikembangkan sekitar tahun 1978 dan diungkapkan kepada publik pada tahun 1981.[2]Larry Boucher dianggap sebagai "bapak" dari SASI dan akhirnya SCSI karena pekerjaan perintisnya pertama di Shugart Associates dan kemudian di Adaptec.[3]
Pengontrol SASI menjadi jembatan antara antarmuka tingkat rendah hard disk drive dan komputer host, yang diperlukan untuk membaca blok data. Papan pengontrol SASI biasanya berukuran hard disk drive dan biasanya dipasang secara fisik ke sasis drive. SASI, yang digunakan di mikrokomputer mini dan awal, mendefinisikan antarmuka dengan menggunakan konektor pita datar 50-pin yang diadopsi sebagai konektor SCSI-1. SASI adalah subset SCSI-1 yang sepenuhnya sesuai sehingga banyak, jika tidak semua, dari pengontrol SASI yang ada saat itu kompatibel dengan SCSI-1.[4]
Hingga setidaknya Februari 1982, ANSI mengembangkan spesifikasi sebagai "SASI" dan "Shugart Associates System Interface"[5] Namun, komite yang mendokumentasikan standar tersebut tidak mengizinkannya dinamai menurut nama perusahaan. Hampir sehari penuh dihabiskan untuk menyetujui nama standar "Small Computer System Interface", yang Boucher bermaksud untuk diucapkan "seksi", tapi ENDL[6] Dal Allan mengucapkan akronim baru itu sebagai "scuzzy" dan itu macet.[3]
Sejumlah perusahaan seperti NCR Corporation, Adaptec dan Optimem adalah pendukung awal SCSI.[5] Fasilitas NCR di Wichita, Kansas secara luas dianggap telah mengembangkan chip pengontrol SCSI pertama di industri; itu berhasil pertama kali.[7]
SCSI modern
Versi fisik terbaru dari SCSI- Serial Attached SCSI (SAS), SCSI-over-Fibre Channel Protocol (FCP), dan USB Attached SCSI (UAS)- dari busSCSI paralel tradisional dan melakukan transfer data melalui komunikasi serial menggunakan tautan point-to-point. Meskipun banyak dokumentasi SCSI berbicara tentang antarmuka paralel, semua upaya pengembangan modern menggunakan antarmuka serial. Antarmuka serial memiliki sejumlah keunggulan dibandingkan SCSI paralel, termasuk kecepatan data yang lebih tinggi, pemasangan kabel yang disederhanakan, jangkauan yang lebih panjang, isolasi kesalahan yang lebih baik, dan kemampuan dupleks penuh. Alasan utama peralihan ke antarmuka serial adalah masalah kemiringan jam dari antarmuka paralel kecepatan tinggi, yang membuat varian SCSI paralel yang lebih cepat rentan terhadap masalah yang disebabkan oleh pemasangan kabel dan penghentian.[8]
ISCSI non-fisik mempertahankan paradigma dasar SCSI, terutama set perintah, hampir tidak berubah, melalui penyematan SCSI-3 melalui TCP/IP. Oleh karena itu, iSCSI menggunakan koneksi logis dan bukan tautan fisik dan dapat berjalan di atas semua jaringan yang mendukung IP. Tautan fisik aktual direalisasikan pada lapisan jaringan yang lebih rendah, secara independen dari iSCSI. Terutama, Ethernet digunakan yang juga bersifat serial.
Antarmuka
SCSI tersedia dalam berbagai antarmuka. Yang pertama adalah parallel SCSI (juga disebut SCSI Parallel Interface atau SPI), yang menggunakan desain busparalel. Sejak 2005, SPI berangsur-angsur digantikan oleh Serial Attached SCSI (SAS), yang menggunakan desain serial tetapi tetap mempertahankan aspek teknologi lainnya. Banyak antarmuka lain yang tidak bergantung pada standar SCSI lengkap masih menerapkan protokol perintah SCSI; yang lain menghentikan implementasi fisik seluruhnya sambil mempertahankan model arsitektur SCSI. iSCSI, misalnya, menggunakan TCP/IP sebagai mekanisme transport, yang paling sering dikirimkan melalui Gigabit Ethernet atau tautan jaringan yang lebih cepat.
Antarmuka SCSI sering disertakan pada komputer dari berbagai produsen untuk digunakan di bawah sistem operasi Microsoft Windows, classic Mac OS, Unix, Commodore Amiga dan Linux, baik diimplementasikan pada papan induk atau dengan menggunakan adaptor plug-in. Dengan munculnya drive SAS dan SATA, penyediaan SCSI paralel pada papan induk dihentikan.[9]
Mulanya, SCSI Parallel Interface (SPI) adalah satu-satunya antarmuka yang menggunakan protokol SCSI. Standarisasi dimulai sebagai bus 8-bit ujung tunggal pada tahun 1986, dengan transfer hingga 5 MB/s, dan berkembang menjadi bus 16-bit diferensial tegangan rendah yang mampu mencapai 320 MB/s. Standar SPI-5 terakhir dari tahun 2003 juga menetapkan kecepatan 640 MB/s yang gagal direalisasikan.
Spesifikasi SCSI paralel mencakup beberapa mode transfer sinkron untuk kabel paralel, dan mode asynchronous. Mode asynchronous adalah protokol permintaan/pengakuan klasik, yang memungkinkan sistem dengan bus lambat atau sistem sederhana juga menggunakan perangkat SCSI. Mode sinkron yang lebih cepat lebih sering digunakan.
Internal paralel kabel SCSI biasanya pita, dengan dua atau lebih konektor 50–, 68–, atau 80 – pin terpasang. kabel eksternal biasanya terlindung (tapi mungkin tidak), dengan 50 -. atau konektor 69-pin di setiap akhir, tergantung pada lebar bus komputer SCSI spesifik yang didukung. Single Connector Attachment (SCA) 80-pin biasanya digunakan untuk perangkat hot-pluggable
Fibre Channel
Fibre Channel dapat digunakan untuk mengangkut unit informasi SCSI, sebagaimana ditentukan oleh Fiber Channel Protocol untuk SCSI (FCP). Sambungan ini hot-pluggable dan biasanya diimplementasikan dengan serat optik.
iSCSI (Internet Small Computer System Interface) biasanya menggunakan konektor Ethernet dan kabel sebagai transportasi fisik, tetapi dapat menjalankan lebih dari setiap pengangkutan fisik mampu mengangkut IP.
SRP
SCSI RDMA Protocol (SRP) adalah protokol yang menentukan cara mengangkut perintah SCSI melalui koneksi RDMA yang andal. Protokol ini dapat berjalan melalui transportasi fisik yang mendukung RDMA, mis. InfiniBand atau Ethernet saat menggunakan RoCE atau iWARP.
Automation/Drive Interface - Transport Protocol (ADT) digunakan untuk menghubungkan perangkat media yang dapat dilepas, dengan pengontrol pustaka (perangkat otomatisasi) tempat mereka diinstal. ADI Standar menetapkan penggunaan RS-422 untuk koneksi secara fisik. Generasi kedua ADT-2 standar mendefinisikan iADT, penggunaan protokol ADT melalui koneksi IP (protokol internet), seperti melalui Ethernet. Automation/Drive Interface - Perintah standar (ADC, ADC-2, dan ADC-3) mendefinisikan perintah SCSI untuk instalasi ini.
Selain banyak implementasi perangkat keras yang berbeda, standar SCSI juga mencakup serangkaian definisi perintah yang ekstensif. Arsitektur perintah SCSI awalnya ditentukan untuk bus SCSI paralel tetapi telah dijalankan dengan sedikit perubahan untuk digunakan dengan iSCSI dan serial SCSI. Teknologi lain yang menggunakan set perintah SCSI termasuk ATA Packet Interface, USB Mass Storage class dan FireWire SBP-2.
Dalam terminologi SCSI, komunikasi terjadi antara initiator dan sebuah target. initiator mengirimkan perintah ke target, yang kemudian merespons. Perintah SCSI dikirim dalam sebuah Command Descriptor Block (CDB). CDB terdiri dari kode operasi satu bita diikuti oleh lima atau lebih bita yang berisi parameter khusus perintah.
Di akhir urutan perintah, target mengembalikan bita kode status, seperti 00h untuk sukses, 02h untuk error (disebut Check Condition), atau 08h untuk sibuk. Ketika target mengembalikan Check Condition sebagai tanggapan atas perintah, pemrakarsa biasanya kemudian mengeluarkan perintah SCSI Request Sense untuk mendapatkan key code qualifier (KCQ) dari target. Check Condition dan Request Sense sequence melibatkan protokol SCSI khusus yang disebut sebuah Contingent Allegiance Condition.
Ada empat kategori perintah SCSI: N (non-data), W (writing data dari initiator hingga target), R (reading data), dan B (bidirectional). Ada total sekitar 60 perintah SCSI yang berbeda, dengan yang paling umum digunakan adalah:
Test unit ready: permintaan perangkat untuk melihat jika sudah siap untuk transfer data
Inquiry: Mengembalikan informasi perangkat dasar.
Request sense: Pengembalian setiap kode yang salah dari perintah sebelumnya yang mengembalikan status kesalahan.
Send diagnostic and Receive diagnostic results: menjalankan tes sederhana atau tes khusus yang didefinisikan pada halaman diagnostik
Start/Stop unit: Memutar disk ke atas dan ke bawah, atau memuat/mengeluarkan media (CD, tape, dll.).
Format unit: menyiapkan media penyimpanan untuk digunakan. Dalam disk, format level rendah akan terjadi. Beberapa penggerak pita akan menghapus pita tersebut sebagai tanggapan atas perintah ini
SCSI Read format capacities: Mengambil data kapasitas perangkat
Read (empat varian): Membaca data dari perangkat
Write (empat varian): Menulis data ke perangkat
Log sense: Menghasilkan informasi terkini dari halaman log.
Mode sense: Mengembalikan parameter perangkat terkini dari halaman mode
Mode select: Mengatur perangkat di halaman mode.
Setiap perangkat di bus SCSI diberikan nomor atau ID identifikasi SCSI yang unik. Perangkat dapat mencakup beberapa unit logis, yang dialamatkan oleh logical unit number (LUN). Perangkat sederhana hanya memiliki satu LUN, perangkat yang lebih kompleks mungkin memiliki beberapa LUN.
Sebuah "akses langsung" (tipe Cakram yaitu) perangkat penyimpanan terdiri dari sejumlah blok logis, biasanya disebut dengan istilah Logical Block Address (LBA). LBA setara dengan 512 bita penyimpanan. Penggunaan LBAs telah berkembang dari waktu ke waktu dan empat varian perintah yang berbeda diberikan untuk membaca dan menulis data. Perintah Read(6) dan Write(6) berisi alamat LBA 21-bit. Perintah Read(10), Read(12), Read Long, Write(10), Write(12), dan Write Long semuanya mengandung sebuah alamat 32-bit LBA ditambah berbagai pilihan parameter lainnya.
Sebuah "akses sekuensial" (misalnya tipe-pita) perangkat yang tidak memiliki kapasitas tertentu karena biasanya tergantung pada panjang pita, yang tidak diketahui secara pasti. Pembacaan dan Penulisan pada perangkat jalur akses sekuensial terjadi pada posisi saat ini, bukan di LBA tertentu. Ukuran blok pada perangkat akses sekuensial dapat menjadi tetap atau bervariasi, tergantung pada perangkat tertentu. Perangkat Tape seperti 9-track tape setengah inci, DDS (4 mm kaset bentuknya mirip dengan DAT), Exabyte, dll.
Identifikasi perangkat
Umum
Perhatikan bahwa perangkat target SCSI (yang bisa disebut sebuah "unit fisik") terkadang dibagi menjadi "unit logika" yang lebih kecil". Misalnya, subsistem disk kelas atas dapat berupa perangkat SCSI tunggal tetapi berisi lusinan drive disk individu, masing-masing merupakan unit logis. Lebih lanjut, array RAID dapat berupa perangkat SCSI tunggal, tetapi mungkin berisi banyak unit logika, masing-masing adalah disk "virtual" —set stripe atau mirror set yang dibuat dari bagian drive disk yang sebenarnya. ID SCSI, WWN, dll. Dalam hal ini mengidentifikasi seluruh subsistem, dan angka kedua, logical unit number (LUN) mengidentifikasi perangkat disk (nyata atau virtual) dalam subsistem.
Sangat umum, meskipun salah, untuk merujuk pada unit logika itu sendiri sebagai sebuah "LUN".[10] Oleh karena itu, LUN yang sebenarnya dapat disebut sebuah "LUN number" atau "LUN id".[11]
SCSI memiliki mekanisme identifikasi CTL (Channel, Target atau Physical Unit Number, Logical Unit Number) per adaptor bus host, atau mekanisme identifikasi HCTL (HBA, Channel, PUN, LUN), satu adaptor host mungkin memiliki lebih dari satu saluran.[12]
Sementara semua pengontrol SCSI dapat bekerja dengan perangkat penyimpanan baca/tulis, yaitu disk dan tape, beberapa tidak akan berfungsi dengan beberapa jenis perangkat lain; pengontrol yang lebih tua cenderung lebih terbatas,[13] terkadang dengan perangkat lunak driver mereka, dan lebih banyak Jenis Perangkat ditambahkan saat SCSI berevolusi. Bahkan CD-ROM tidak ditangani oleh semua pengontrol. Jenis Perangkat adalah bidang 5-bit yang dilaporkan oleh sebuah SCSI Inquiry Command; Jenis Perangkat Periferal SCSI yang ditentukan mencakup, selain banyak jenis perangkat penyimpanan, printer, pemindai, perangkat komunikasi, dan jenis "prosesor" penampung semua untuk perangkat yang tidak terdaftar lain.
SCSI enclosure services
Di peladen SCSI yang lebih besar, perangkat disk drive ditempatkan di enklosur cerdas yang mendukung SCSI Enclosure Services (SES). Inisiator dapat berkomunikasi dengan enklosur menggunakan sekumpulan perintah SCSI khusus untuk mengakses daya, pendinginan, dan karakteristik non-data lainnya.
Field, Gary; Peter Ridge, John Lohmeyer, Gerhard Islinger, Stefan Groll (2000). The Book of SCSI (2nd Edition ed.). No Starch Press. ISBN 1-886411-10-7
"How Computer Storage Became a Modern Business," Computer History Museum, Marcah 9, 2005
Pickett, Joseph P., et al. (ed), ed (2000). The American Heritage Dictionary of the English Language (AHD) (Fourth Edition ed.). Houghton Mifflin Company. ISBN 0-395-82517-2. http://www.bartleby.com/61/.
^ANSI Draft SASI Standard, Rev D, February 17, 1982, pg. ii states, "9/15/81 first presentation to ANSI committee X3T9-3 (2 weeks following announcement in Electronic Design)."
^Shuangbao Paul Wang (2013-01-10). Computer Architecture and Security: Fundamentals of Designing Secure Computer Systems (edisi ke-1st). ISBN978-1118168813.
^"na_lun(1) – Manual page for "lun" on NetApp DataONTAP". NetApp. July 7, 2009. The lun command is used to create and manage luns[...]Tidak memiliki atau membutuhkan |url= (bantuan)
^"na_lun(1) – Manual page for "lun" on NetApp DataONTAP". NetApp. July 7, 2009. If a LUN ID is not specified, the smallest number [...] is automatically picked.Tidak memiliki atau membutuhkan |url= (bantuan)