SCSI
SCSI(스커지/스카시, Small Computer System Interface, 문화어: 스카지, 소형 컴퓨터 체계 대면부, 컴퓨터 체계 결합장치)는 컴퓨터와 주변기기 사이에서 물리적으로 연결하고 데이터를 전송하기 위한 표준 세트이며, 하드 디스크 드라이브와 같은 저장 장치에 사용되는 것으로 가장 잘 알려져 있다. SCSI는 1980년대에 도입되었으며 서버와 고성능 워크스테이션에서 널리 사용되어 왔으며, 2017년의 SAS-4와 같이 최근까지도 새로운 SCSI 표준이 발표되고 있다. SCSI 표준은 명령, 프로토콜, 전기적, 광학적 및 논리적 인터페이스를 정의한다. SCSI 표준은 특정 주변기기 유형에 대한 명령 세트를 정의한다. 이러한 유형 중 하나로 "알 수 없음(unknown)"이 존재한다는 것은 이론적으로 거의 모든 장치에 대한 인터페이스로 사용될 수 있음을 의미하지만, 이 표준은 매우 실용적이며 상업적 요구 사항을 지향한다. 초기 병렬 SCSI는 하드 디스크 드라이브와 테이프 드라이브에 가장 흔히 사용되었으나, 스캐너와 광학 디스크 드라이브를 포함한 광범위한 다른 장치들을 연결할 수 있다. 다만 모든 컨트롤러가 모든 장치를 처리할 수 있는 것은 아니다. 일반적으로 SCSI-1로 불리는 최초의 SCSI 표준 X3.131-1986은 1986년 미국 국가표준 협회(ANSI)의 X3T9 기술 위원회에 의해 발표되었다. SCSI-2는 1990년 8월 X3.T9.2/86-109로 발표되었으며, 1994년에 추가 개정이 이루어지고 이후 수많은 인터페이스가 채택되었다. 추가적인 개선을 통해 성능이 향상되고 계속 증가하는 데이터 저장 용량에 대한 지원이 이루어졌다.
|
싱글 엔디드 병렬 SCSI 아이콘 | |||
| 종류 | 버스 | ||
|---|---|---|---|
| 생산 역사 | |||
| 설계자 | 슈가트 어소시에이츠의 래리 부처(Larry Boucher)가 이끄는 팀 | ||
| 설계일 | 1981년 9월[1] | ||
| 생산일 | 1983년 이후 | ||
SCSI(스커지/스카시,[2] Small Computer System Interface, 문화어: 스카지, 소형 컴퓨터 체계 대면부, 컴퓨터 체계 결합장치)는 컴퓨터와 주변기기 사이에서 물리적으로 연결하고 데이터를 전송하기 위한 표준 세트이며, 하드 디스크 드라이브와 같은 저장 장치에 사용되는 것으로 가장 잘 알려져 있다. SCSI는 1980년대에 도입되었으며 서버와 고성능 워크스테이션에서 널리 사용되어 왔으며, 2017년의 SAS-4와 같이 최근까지도 새로운 SCSI 표준이 발표되고 있다.
SCSI 표준은 명령, 프로토콜, 전기적, 광학적 및 논리적 인터페이스를 정의한다. SCSI 표준은 특정 주변기기 유형에 대한 명령 세트를 정의한다. 이러한 유형 중 하나로 "알 수 없음(unknown)"이 존재한다는 것은 이론적으로 거의 모든 장치에 대한 인터페이스로 사용될 수 있음을 의미하지만, 이 표준은 매우 실용적이며 상업적 요구 사항을 지향한다. 초기 병렬 SCSI는 하드 디스크 드라이브와 테이프 드라이브에 가장 흔히 사용되었으나, 스캐너와 광학 디스크 드라이브를 포함한 광범위한 다른 장치들을 연결할 수 있다. 다만 모든 컨트롤러가 모든 장치를 처리할 수 있는 것은 아니다.
일반적으로 SCSI-1로 불리는 최초의 SCSI 표준 X3.131-1986은 1986년 미국 국가표준 협회(ANSI)의 X3T9 기술 위원회에 의해 발표되었다. SCSI-2는 1990년 8월 X3.T9.2/86-109로 발표되었으며, 1994년에 추가 개정이 이루어지고 이후 수많은 인터페이스가 채택되었다. 추가적인 개선을 통해 성능이 향상되고 계속 증가하는 데이터 저장 용량에 대한 지원이 이루어졌다.[3]
역사
[편집]병렬 인터페이스
[편집]
SCSI는 슈가트 어소시에이츠 시스템 인터페이스(SASI)에서 유래되었으며,[4] 1979년부터 개발이 시작되어[5] 1981년에 공개되었다.[1] 래리 부처는 슈가트 어소시에이츠와 그가 1981년에 설립한 아답텍에서의 선구적인 업적으로 인해 SASI와 궁극적으로 SCSI의 "아버지"로 간주된다.[6]
SASI 컨트롤러는 데이터 블록을 읽어야 하는 호스트 컴퓨터와 하드 디스크 드라이브의 저수준 인터페이스 사이의 가교 역할을 했다. SASI 컨트롤러 보드는 일반적으로 하드 디스크 드라이브 크기였으며 보통 드라이브 섀시에 물리적으로 장착되었다. 미니컴퓨터와 초기 마이크로컴퓨터에서 사용된 SASI는 인터페이스를 50핀 플랫 리본 커넥터 사용으로 정의했으며, 이는 SCSI-1 커넥터로 채택되었다. SASI는 SCSI-1의 완전한 호환 하위 세트이므로, 당시 존재했던 많은(전부는 아닐지라도) SASI 컨트롤러는 SCSI-1과 호환되었다.[7]
1980년경, NCR 코퍼레이션은 BYSE라는 이름의 경쟁 인터페이스 표준을 개발하고 있었다. 1981년 여름, NCR은 자체적인 노력을 포기하고 SASI를 추구하며 자신들의 컴퓨터 시스템을 위해 그 설계를 개선하는 방향으로 선회했다. 그러나 SASI 표준의 확장이 시장의 혼란을 야기할 것을 우려하여 NCR은 슈가트와의 계약을 잠시 취소하기도 했다. NCR이 제안한 SCSI 설계 개선안은 슈가트의 자회사인 옵티멤(Optimem)의 관심을 끌었고, 옵티멤은 NCR과 슈가트가 통일된 표준을 위해 협력할 것을 요청했다. 1981년 10월, 두 회사는 SASI를 공동 개발하고 그 표준을 ANSI에 공동으로 제출하기로 합의했다.[8][9]
적어도 1982년 2월까지 ANSI는 이 사양을 "SASI" 및 "Shugart Associates System Interface"로 개발했다.[10] 그러나 표준을 문서화하는 위원회는 표준에 특정 회사 이름을 붙이는 것을 허용하지 않았다. 표준의 이름을 "Small Computer System Interface"로 정하는 데 거의 꼬박 하루가 소요되었는데, 부처는 이를 "섹시(sexy)"로 발음하려 했으나 ENDL[11]의 달 앨런(Dal Allan)이 새로운 약자를 "스커지(scuzzy)"로 발음했고 그것이 굳어졌다.[12]
위치토 (캔자스주)에 있는 NCR 시설은 1983년에 출시된 업계 최초의 SCSI 컨트롤러 칩인 NCR 5385를 개발했다. 개발자들에 따르면 이 칩은 처음 테스트했을 때부터 작동했다.[13][14] 아답텍과 옵티멤 같은 많은 회사들이 SCSI의 초기 지지자였다.[10] 1990년 말까지 최소 45개 제조업체가 251개 모델의 병렬 SCSI 호스트 어댑터를 제공했다.[15] 오늘날 이러한 호스트 어댑터는 더 빠른 시리얼 SCSI(SAS) 호스트 어댑터에 의해 거의 대체되었다.[16]
"Small Computer System Interface"에서 "small"이라는 언급은 역사적인 것이다. 1990년대 중반 이후 SCSI는 가장 큰 컴퓨터 시스템에서도 사용 가능해졌다.
1986년 표준화된 이후 SCSI는 아미가, 아타리, 애플 매킨토시, 썬 마이크로시스템즈 컴퓨터 라인 및 PC 서버 시스템에서 흔히 사용되었다. 애플은 1994년 매킨토시 쿼드라 630과 함께 저가형 기기에 더 저렴한 병렬 ATA(PATA, IDE로도 알려짐)를 사용하기 시작했으며, 1997년 파워 매킨토시 G3를 시작으로 고성능 데스크톱에도 이를 추가했다. 애플은 1999년 파워 맥 G3(Blue & White)와 함께 IDE와 파이어와이어를 위해 온보드 SCSI를 완전히 폐기했지만, 파워 매킨토시 G4(AGP Graphics) 모델까지 옵션으로 PCI SCSI 호스트 어댑터를 제공했다.[17] 썬은 CMD640 IDE 컨트롤러를 사용하는 저가형 워크스테이션인 울트라 5 및 10을 출시하며 저가형 라인업을 병렬 ATA(PATA)로 전환했으며, 이후 블레이드 100 및 150 입문용 시스템에서도 이 추세를 이어갔다. 2003년 블레이드 1500을 출시할 때도 당시의 SATA 인터페이스로 전환하지 않았으며, 동시에 출시된 고사양 블레이드 2500은 Ultra320 병렬 SCSI-3를 사용했다. 썬은 2006년 마지막 UltraSPARC-III 기반 워크스테이션인 입문용 울트라 25와 중급형 울트라 45에서 SATA 및 SAS 인터페이스로 이동했다. 코모도어는 아미가 3000/3000T 시스템에 SCSI를 포함시켰으며 이전 아미가 500/2000 모델에는 애드온 방식이었다. 아미가 600/1200/4000 시스템부터 코모도어는 IDE 인터페이스로 전환했다. 아타리는 Atari MEGA STE, Atari TT, Atari Falcon 컴퓨터 모델에 SCSI를 표준으로 포함했다. SCSI는 ATA 하드 디스크 표준의 낮은 가격과 적절한 성능 때문에 저가형 IBM PC 세계에서는 인기를 얻지 못했다. 그러나 SCSI 드라이브와 심지어 SCSI RAID는 비디오 또는 오디오 제작용 PC 워크스테이션에서 흔해졌다.
현대의 SCSI
[편집]최근의 물리적 SCSI 버전인 시리얼 부착 SCSI(SAS), 파이버 채널 프로토콜 기반 SCSI(FCP), USB Attached SCSI(UAS)는 전통적인 병렬 SCSI 버스에서 벗어나 지점간 링크를 사용하는 직렬 통신을 통해 데이터 전송을 수행한다. SCSI 문서의 많은 부분이 병렬 인터페이스에 대해 다루고 있지만, 모든 현대적 개발 노력은 직렬 인터페이스를 사용한다. 직렬 인터페이스는 병렬 SCSI에 비해 더 높은 데이터 속도, 단순화된 케이블링, 더 긴 도달 거리, 개선된 결함 격리 및 전이중 기능 등 여러 장점이 있다. 직렬 인터페이스로의 전환의 주된 이유는 고속 병렬 인터페이스의 클록 스큐 문제 때문이며, 이로 인해 병렬 SCSI의 더 빠른 변형들은 케이블링 및 종단 장치로 인한 문제에 취약해졌다.[18]
비물리적인 ISCSI는 TCP/IP 위에 SCSI-3를 내장함으로써 기본 SCSI 패러다임, 특히 명령 세트를 거의 변경하지 않고 보존한다. 따라서 iSCSI는 물리적 링크 대신 논리적 연결을 사용하며 IP를 지원하는 모든 네트워크 위에서 실행될 수 있다. 실제 물리적 링크는 iSCSI와 독립적으로 하위 네트워크 계층에서 실현된다. 주로 이더넷이 사용되며, 이 또한 직렬적인 성격을 띤다.
SCSI는 고성능 워크스테이션, 서버 및 스토리지 어플라이언스에서 인기가 있다. 서버의 거의 모든 RAID 하위 시스템은 수십 년 동안 어떤 종류의 SCSI 하드 디스크 드라이브(처음에는 병렬 SCSI, 중간에는 파이버 채널, 최근에는 SAS)를 사용해 왔으나, 많은 제조업체가 더 저렴한 옵션으로 SATA 기반 RAID 하위 시스템을 제공한다. 더욱이 SAS는 SATA 장치와의 호환성을 제공하여 니어라인 SAS(NL-SAS) 드라이브의 존재와 함께 RAID 하위 시스템에 훨씬 더 넓은 범위의 옵션을 제공한다. 현대의 데스크톱 컴퓨터와 노트북은 보통 내부 하드 디스크 드라이브에 SCSI 대신 SATA 인터페이스를 사용하며, SATA가 현대의 솔리드 스테이트 드라이브의 병목 현상이 될 수 있음에 따라 PCIe 기반 NVMe가 인기를 얻고 있다.
인터페이스
[편집]SCSI는 다양한 인터페이스로 제공된다. 첫 번째는 병렬 버스 설계를 사용하는 병렬 SCSI(SCSI Parallel Interface 또는 SPI라고도 함)였다. 2005년 이후 SPI는 기술의 다른 측면은 유지하면서 직렬 설계를 사용하는 시리얼 부착 SCSI(SAS)로 점차 대체되었다. 완전한 SCSI 표준에 의존하지 않는 다른 많은 인터페이스들도 여전히 SCSI 명령 프로토콜을 구현하며, 일부는 물리적 구현을 완전히 배제하면서 SCSI 아키텍처 모델만 유지한다. 예를 들어 ISCSI는 전송 메커니즘으로 TCP/IP를 사용하며, 이는 대개 기가비트 이더넷이나 더 빠른 네트워크 링크를 통해 전송된다.
SCSI 인터페이스는 메인보드에 구현되거나 플러그인 어댑터를 통해 마이크로소프트 윈도우, 맥 OS, 유닉스, 아미가 및 리눅스 운영 체제에서 사용하기 위해 다양한 제조업체의 컴퓨터에 포함되곤 했다. SAS 및 SATA 드라이브의 출현으로 메인보드에서의 병렬 SCSI 제공은 중단되었다.[19]
병렬 SCSI
[편집]
초기에는 SCSI 병렬 인터페이스(SPI)가 SCSI 프로토콜을 사용하는 유일한 인터페이스였다. 이 인터페이스의 표준화는 1986년에 최대 5 MB/s를 전송하는 싱글 엔디드 8비트 시스템 버스로 시작하여, 최대 320 MB/s가 가능한 저전압 차동 16비트 버스로 발전했다. 2003년의 마지막 SPI-5 표준은 640 MB/s 속도도 정의했으나 실현되지는 못했다.
병렬 SCSI 사양에는 병렬 케이블을 위한 여러 동기 전송 모드와 비동기 모드가 포함되어 있다. 비동기 모드는 고전적인 요청/응답(request/acknowledge) 프로토콜로, 버스가 느린 시스템이나 단순한 시스템도 SCSI 장치를 사용할 수 있게 해준다. 더 빠른 동기 모드가 더 빈번하게 사용된다.
SCSI 인터페이스
[편집]| 인터페이스 | 대체 이름 |
규격 본체 / 문서 |
폭 (비트) |
클록[a] | 전송로 부호 | 최대 | ||
|---|---|---|---|---|---|---|---|---|
| 처리량 | 길이[b] | 장치 수[c] | ||||||
| Ultra-320 SCSI | Ultra-4; Fast-160 | SPI-5 (INCITS 367-2003) | 16 | 80 MHz DDR | 없음 | 320 MB/s (2560 Mbit/s) | 12 m | 16 |
| SSA | 시리얼 스토리지 아키텍처 | T10 / INCITS 309-1997 | 직렬 | 200 Mbit/s | 8b10b | 20 MB/s[d][e][f] (160 Mbit/s) | 25 m | 96 |
| SSA 40 | T10 / INCITS 309-1997 | 직렬 | 400 Mbit/s | 40 MB/s[d][e][f] (320 Mbit/s) | 25 m | 96 | ||
| 파이버 채널 1 Gbit | 1GFC | T11 / X3T11/94-175v0 FC-PH Draft, Revision 4.3 | 직렬 | 1.0625 Gbit/s | 8b10b | 98.4 MB/s[e][f] (850 Mbit/s) | 500 m / 10 km[g] | 127 (FC-AL) 224 (FC-SW) |
| 파이버 채널 2 Gbit | 2GFC | T11 / X3T11/96-402v0 FC-PH-2, Rev 7.4 | 직렬 | 2.125 Gbit/s | 197 MB/s[e][f] (1,700 Mbit/s) | 500 m / 10 km[g] | 127/224 | |
| 파이버 채널 4 Gbit | 4GFC | T11 / INCITS Project 2118-D / Rev 6.10 | 직렬 | 4.25 Gbit/s | 394 MB/s[e][f] (3,400 Mbit/s) | 500 m / 10 km[g] | 127/224 | |
| 파이버 채널 8 Gbit | 8GFC | T11 / INCITS Project 2118-D / Rev 6.10 | 직렬 | 8.5 Gbit/s | 788 MB/s[e][f] (6,800 Mbit/s) | 500 m / 10 km[g] | 127/224 | |
| 파이버 채널 16 Gbit | 16GFC | T11 / INCITS Project 2118-D / Rev 6.10 | 직렬 | 14.025 Gbit/s | 64b66b | 1,575 MB/s[e][f] (13,600 Mbit/s) | 500 m / 10 km[g] | 127/224 |
| SAS 1.1 | 시리얼 부착 SCSI | T10 / INCITS 417-2006 | 직렬 | 3 Gbit/s | 8b10b | 300 MB/s[e][f] (2,400 Mbit/s) | 6 m | 16,256[h] |
| SAS 2.1 | T10 / INCITS 478-2011 | 직렬 | 6 Gbit/s | 600 MB/s[e][f] (4,800 Mbit/s) | 6 m | 16,256[h] | ||
| SAS 3.0 | T10 / INCITS 519 | 직렬 | 12 Gbit/s | 1,200 MB/s[e][f] (9,600 Mbit/s) | 6 m | 16,256[h] | ||
| SAS 4.0 | T10 / INCITS 534 (draft) | 직렬 | 22.5 Gbit/s | 128b150b | 2,400 MB/s[e][f] (19,200 Mbit/s) | 미정 | 16,256[h] | |
| IEEE 1394-2008 | 파이어와이어 S3200, i.Link, 시리얼 버스 프로토콜 (SBP) | IEEE Std. 1394-2008 | 직렬 | 3.145728 Gbit/s | 8b10b | 315 MB/s (2,517 Mbit/s) | 4.5 m | 63 |
| SCSI Express | PCIe 기반 SCSI (SOP) | T10 / INCITS 489 | 직렬 | 8 GT/s (PCIe 3.0) | 128b130b | 985 MB/s[e][f][i] (7,877 Mbit/s) | 짧음, 백플레인 전용 | 258 |
| USB Attached SCSI 2 | UAS-2 | T10 / INCITS 520 | 직렬 | 10 Gbit/s (USB 3.1) | 128b132b | 약 1,200 MB/s[e][f] (약 9,500 Mbit/s) | 3 m[j] | 127 |
| 병렬 ATA 기반 ATAPI | ATA 패킷 인터페이스 | T13 / NCITS 317-1998 - 웨이백 머신 (보관됨 2013-12-15) | 16 | 33 MHz DDR | 없음 | 133 MB/s[k] (1,064 Mbit/s) | 457 mm (18 inches) | 2 |
| 직렬 ATA 기반 ATAPI | 직렬 | 6 Gbit/s | 8b10b | 600 MB/s[l] (4,800 Mbit/s) | 1 m | 1 (포트 멀티플라이어 사용 시 15개) | ||
| ISCSI | 인터넷 소형 컴퓨터 시스템 인터페이스, IP 기반 SCSI | IETF / RFC 7143 | 대부분 직렬 | 구현 및 네트워크에 따라 다름 | 1,187 MB/s[m] 또는 1,239 MB/s[n] | 구현 및 네트워크에 따라 다름 | 280 (IPv6 ULA) | |
| SRP | SCSI RDMA 프로토콜 (인피니밴드 등 기반 SCSI) | T10 / INCITS 365-2002 | 구현 및 네트워크에 따라 다름 | |||||
케이블링
[편집]
SCSI 병렬 인터페이스
[편집]내부 병렬 SCSI 케이블은 대개 리본 케이블이며, 50, 68 또는 80핀 커넥터가 두 개 이상 부착되어 있다. 외부 케이블은 일반적으로 차폐되어 있으며(아닌 경우도 있음), 지원되는 특정 SCSI 버스 폭에 따라 양쪽 끝에 50핀 또는 68핀 커넥터가 있다. 80핀 싱글 커넥터 어태치먼트(Single Connector Attachment, SCA)는 대개 핫 플러그 가능 장치에 사용된다.
파이버 채널
[편집]파이버 채널은 SCSI용 파이버 채널 프로토콜(FCP)에 정의된 대로 SCSI 정보 단위를 전송하는 데 사용될 수 있다. 이러한 연결은 핫 플러그가 가능하며 대개 광섬유로 구현된다.
시리얼 부착 SCSI
[편집]시리얼 부착 SCSI(SAS)는 개정된 직렬 ATA 데이터 및 전원 케이블을 사용한다.
iSCSI
[편집]ISCSI(인터넷 소형 컴퓨터 시스템 인터페이스)는 대개 물리적 전송 수단으로 이더넷 커넥터와 케이블을 사용하지만, IP를 전송할 수 있는 모든 물리적 전송 수단 위에서 작동할 수 있다.
SRP
[편집]SCSI RDMA 프로토콜(SRP)은 신뢰할 수 있는 RDMA 연결을 통해 SCSI 명령을 전송하는 방법을 지정하는 프로토콜이다. 이 프로토콜은 인피니밴드 또는 RoCE나 iWARP를 사용하는 이더넷과 같이 RDMA가 가능한 모든 물리적 전송 수단 위에서 실행될 수 있다.
USB Attached SCSI
[편집]USB Attached SCSI는 SCSI 장치가 USB를 사용할 수 있게 해준다.
자동화/드라이브 인터페이스
[편집]자동화/드라이브 인터페이스 - 전송 프로토콜(ADT)은 테이프 드라이브와 같은 이동식 매체 장치를 설치된 라이브러리(자동화 장치)의 컨트롤러와 연결하는 데 사용된다. ADI 표준은 물리적 연결에 RS-422 사용을 지정한다. 2세대 ADT-2 표준은 이더넷과 같은 IP(인터넷 프로토콜) 연결을 통한 ADT 프로토콜의 사용인 iADT를 정의한다. 자동화/드라이브 인터페이스 - 명령 표준(ADC, ADC-2 및 ADC-3)은 이러한 설치를 위한 SCSI 명령을 정의한다.
SCSI 명령 프로토콜
[편집]다양한 하드웨어 구현 외에도 SCSI 표준에는 광범위한 명령 정의 세트가 포함되어 있다. SCSI 명령 아키텍처는 원래 병렬 SCSI 버스를 위해 정의되었으나 iSCSI 및 직렬 SCSI와 함께 사용하기 위해 최소한의 변경으로 이어져 왔다. SCSI 명령 세트를 사용하는 다른 기술로는 ATAPI, USB 대용량 저장소 클래스 및 파이어와이어 SBP-2가 있다.
SCSI 용어로 통신은 이니시에이터와 타깃 사이에서 이루어진다. 이니시에이터는 타깃에 명령을 보내고, 타깃은 이에 응답한다. SCSI 명령은 명령 서술자 블록(CDB)으로 전송된다. CDB는 1바이트의 오퍼레이션 코드로 구성되며, 그 뒤에 명령별 매개변수를 포함하는 5바이트 이상의 데이터가 이어진다.
명령 시퀀스가 끝나면 타깃은 성공 시 00h, 오류 시 02h(Check Condition이라 함), 또는 비지 상태일 때 08h와 같은 상태 코드 바이트를 반환한다. 타깃이 명령에 대한 응답으로 Check Condition을 반환하면, 이니시에이터는 대개 타깃으로부터 핵심 코드 한정자(KCQ)를 얻기 위해 SCSI 리퀘스트 센스 명령을 발행한다. Check Condition과 Request Sense 시퀀스는 Contingent Allegiance Condition이라는 특수한 SCSI 프로토콜을 포함한다.
SCSI 명령에는 네 가지 범주가 있다: N(비데이터), W(이니시에이터에서 타깃으로 데이터 쓰기), R(데이터 읽기), B(양방향). 총 60여 개의 서로 다른 SCSI 명령이 있으며, 가장 흔히 사용되는 명령은 다음과 같다:
- Test unit ready: 장치가 데이터 전송 준비가 되었는지 쿼리(디스크 회전 여부, 미디어 로드 여부 등).
- Inquiry: 기본 장치 정보를 반환.
- Request sense: 오류 상태를 반환한 이전 명령의 오류 코드를 반환.
- Send diagnostic 및 Receive diagnostic 결과: 간단한 자체 테스트나 진단 페이지에 정의된 특수 테스트를 실행.
- Start/Stop unit: 디스크를 회전시키거나 멈추고, 미디어(CD, 테이프 등)를 로드하거나 꺼냄.
- Read capacity: 저장 용량을 반환.
- Format unit: 저장 매체를 사용하기 위해 준비함. 디스크의 경우 저수준 포맷이 수행됨. 일부 테이프 드라이브는 이 명령에 응답하여 테이프를 지움.
- Read (4가지 변형): 장치에서 데이터를 읽음.
- Write (4가지 변형): 장치에 데이터를 씀.
- Log sense: 로그 페이지의 현재 정보를 반환.
- Mode sense: 모드 페이지에서 현재 장치 매개변수를 반환.
- Mode select: 모드 페이지의 장치 매개변수를 설정.
SCSI 버스의 각 장치에는 고유한 SCSI 식별 번호 또는 ID가 할당된다. 장치는 논리 단위 번호(LUN)로 주소가 지정되는 여러 논리 단위를 포함할 수 있다. 단순한 장치는 하나의 LUN만 가지며, 복잡한 장치는 여러 개의 LUN을 가질 수 있다.
"직접 액세스"(즉, 디스크 유형) 저장 장치는 논리 블록 주소(LBA)로 주소가 지정되는 여러 논리 블록으로 구성된다. 전형적인 LBA는 512바이트의 저장소와 동일하다. LBA의 사용은 시간이 지남에 따라 발전해 왔으며, 데이터 읽기 및 쓰기를 위해 네 가지 다른 명령 변형이 제공된다. Read(6) 및 Write(6) 명령은 21비트 LBA 주소를 포함한다. Read(10), Read(12), Read Long, Write(10), Write(12) 및 Write Long 명령은 모두 32비트 LBA 주소와 다양한 기타 매개변수 옵션을 포함한다.
순차 액세스(즉, 테이프 유형) 장치의 용량은 테이프의 길이 등에 따라 달라지며 기계가 읽을 수 있는 방식으로 식별되지 않기 때문에 명시되지 않는다. 순차 액세스 장치의 읽기 및 쓰기 작업은 특정 LBA가 아니라 현재 테이프 위치에서 시작된다. 순차 액세스 장치의 블록 크기는 특정 장치에 따라 고정되거나 가변적일 수 있다. 0.5인치 9트랙 테이프, DDS(DAT와 물리적으로 유사한 4mm 테이프), 엑사바이트(Exabyte) 등의 테이프 장치는 가변 블록 크기를 지원한다.
장치 식별
[편집]병렬 인터페이스
[편집]병렬 SCSI 버스에서 장치(예: 호스트 어댑터, 디스크 드라이브)는 "SCSI ID"로 식별되며, 이는 내로우(narrow) 버스에서는 0~7 범위의 숫자, 와이드(wide) 버스에서는 0~15 범위의 숫자이다. 초기 모델에서는 물리적 점퍼나 스위치가 이니시에이터(호스트 어댑터)의 SCSI ID를 제어한다. 현대의 호스트 어댑터(약 1997년 이후)에서는 어댑터에 I/O를 수행하여 SCSI ID를 설정한다. 예를 들어 어댑터에는 컴퓨터 부팅 시 실행되는 옵션 ROM(SCSI BIOS) 프로그램이 포함되어 있는 경우가 많으며, 해당 프로그램에는 운영자가 호스트 어댑터의 SCSI ID를 선택할 수 있는 메뉴가 있다. 또는 호스트 컴퓨터에 설치해야 하는 소프트웨어와 함께 제공되어 SCSI ID를 구성할 수도 있다. 호스트 어댑터의 전통적인 SCSI ID는 7인데, 이 ID가 버스 중재 시 가장 높은 우선순위를 갖기 때문이다(16비트 버스에서도 마찬가지임).
백플레인이 있는 드라이브 인클로저 내 장치의 SCSI ID는 인클로저 모델에 따라 점퍼로 설정하거나 장치가 설치된 인클로저 슬롯에 의해 설정된다. 후자의 경우, 인클로저 백플레인의 각 슬롯은 고유한 SCSI ID를 선택하기 위해 드라이브에 제어 신호를 전달한다. 백플레인이 없는 SCSI 인클로저에는 드라이브의 SCSI ID를 선택하기 위해 각 드라이브당 스위치가 있는 경우가 많다. 인클로저에는 대개 점퍼가 위치한 드라이브에 꽂아야 하는 커넥터가 포함되어 있으며, 스위치는 필요한 점퍼 상태를 모방한다. 이를 보장하는 표준은 없지만, 드라이브 설계자들은 일반적으로 이러한 스위치가 구현되는 방식과 일치하는 일관된 형식으로 점퍼 헤더를 구성한다.
부팅 가능한(또는 첫 번째) 하드 디스크를 SCSI ID 0으로 설정하는 것이 IT 커뮤니티에서 통용되는 권장 사항이다. SCSI ID 2는 보통 플로피 디스크 드라이브를 위해 비워두며, SCSI ID 3은 일반적으로 CD-ROM 드라이브용이다.[20]
일반
[편집]SCSI 타깃 장치(물리 단위라고도 함)는 때때로 더 작은 논리 단위로 나뉘기도 하는데, 이를 논리 단위 자체를 가리켜 "LUN"이라고 부르는 경우가 흔하지만 이는 엄밀히 말하면 틀린 표현이다.[21] 예를 들어 고성능 디스크 하위 시스템은 단일 SCSI 장치일 수 있지만 각각이 논리 단위인 수십 개의 개별 디스크 드라이브를 포함할 수 있다. 또한 RAID 어레이는 단일 SCSI 장치일 수 있지만 각각이 "가상" 디스크(실제 디스크 드라이브의 일부로 구성된 스트라이프 세트 또는 미러 세트)인 많은 논리 단위를 포함할 수 있다. 이 경우 SCSI ID, WWN 등은 전체 하위 시스템을 식별하며, 두 번째 번호인 LUN은 하위 시스템 내의 디스크 장치(실제 또는 가상)를 식별한다.
때때로 중복되게 실제 LUN을 "LUN 번호" 또는 "LUN id"라고 부르기도 한다.[22]
현대의 SCSI 전송 프로토콜에는 ID를 알아내기 위한 자동화된 "검색(discovery)" 프로세스가 있다. SSA 이니시에이터(보통 호스트 어댑터를 통한 호스트 컴퓨터)는 연결된 장치를 확인하기 위해 "루프를 탐색(walk the loop)"하고 각 장치에 7비트 "홉 카운트(hop-count)" 값을 할당한다. 파이버 채널 – 중재 루프(FC-AL) 이니시에이터는 LIP(Loop Initialization Protocol)를 사용하여 각 장치 포트의 WWN(World Wide Name)을 조사한다. iSCSI의 경우 (IP) 네트워크의 무제한 범위 때문에 이 프로세스가 상당히 복잡하다. 이러한 검색 프로세스는 전원 투입/초기화 시점에 발생하며, 장치가 추가되는 등 나중에 버스 토폴로지가 변경될 때도 발생한다.
SCSI는 호스트 버스 어댑터당 CTL(채널, 타깃 또는 물리 단위 번호, 논리 단위 번호) 식별 메커니즘 또는 HCTL(HBA, 채널, PUN, LUN) 식별 메커니즘을 가진다. 하나의 호스트 어댑터가 두 개 이상의 채널을 가질 수도 있다.[23]
장치 유형
[편집]모든 SCSI 컨트롤러가 읽기/쓰기 저장 장치(즉, 디스크 및 테이프)와 작동할 수 있는 반면, 일부는 다른 특정 장치 유형과 작동하지 않을 수도 있다. 오래된 컨트롤러는 드라이버 소프트웨어로 인해 더 제한적일 가능성이 크며,[24] SCSI가 발전함에 따라 더 많은 장치 유형이 추가되었다. CD-ROM조차도 모든 컨트롤러에서 처리되는 것은 아니다. 장치 유형(Device Type)은 SCSI Inquiry Command에 의해 보고되는 5비트 필드이다. 정의된 SCSI 주변기기 장치 유형에는 다양한 저장 장치 외에도 프린터, 스캐너, 통신 장치, 그리고 달리 목록에 없는 장치를 위한 포괄적인 프로세서 유형이 포함된다.
SCSI 인클로저 서비스
[편집]대규모 SCSI 서버에서 디스크 드라이브 장치들은 SCSI 인클로저 서비스(SES)를 지원하는 지능형 인클로저에 수용된다. 이니시에이터는 전원, 냉각 및 기타 비데이터 특성에 액세스하기 위해 특수화된 SCSI 명령 세트를 사용하여 인클로저와 통신할 수 있다.
같이 보기
[편집]각주
[편집]- ↑ 가 나 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)."
- ↑ Field. 《The Book of SCSI》. 1쪽.
- ↑ “ANSI INCITS 131 94th Edition, 2004”. global.ihs.com. 2017년 4월 25일에 확인함.
- ↑ Glass, Brett (February 1989). “Hard Disk Interfaces”. 《BYTE》. 293–297쪽. 2024년 10월 8일에 확인함.
- ↑ 《Data Technology Corporation Prospectus》. 1987년 5월 27일.
In 1979 the Company developed the first controller using the SASI interface ... in conjunction with Shugart Associates
- ↑ Bahrami, Homa; J. Stuart Evans (2005). 《Super-flexibility for Knowledge Enterprises》. 9783540205760. 59쪽. ISBN 9783540205760 – Google Books 경유.
- ↑ ANSI SCSI Standard, X3.131-1986, June 23, 1986, 2nd, foreword.
- ↑ Musumeci, Gian-Paolo D.; Michael Kosta Loukides (2002). 《System Performance Tuning》. O'Reilly Media. 147쪽. ISBN 9780596002848 – Google Books 경유.
- ↑ O'Reilly, James (2016). 《Network Storage: Tools and Technologies for Storing Your Company's Data》. Elsevier Science. 255쪽. ISBN 9780128038659 – Google Books 경유.
- ↑ 가 나 Working document for ANSI meeting on March 3, 1982, "SASI SHUGART ASSOCIATES SYSTEM INTERFACE, Revision D, February 17, 1982"
- ↑ “ENDL Inc. Home Page”. Endl.com. 2014년 4월 27일. 2014년 5월 11일에 확인함.
- ↑ “"How Computer Storage Became a Modern Business", Computer History Museum, March 9, 2005”. Youtube.com. 2007년 12월 7일. 2021년 11월 17일에 원본 문서에서 보존된 문서. 2014년 5월 11일에 확인함.
- ↑ “NCR Collection (LSI Logic)at Smithsonian Museum”. Smithsonianchips.si.edu. 2014년 5월 11일에 확인함.
- ↑ Bursky, D. (1983년 4월 28일). 《Single-Chip Controller Handles SCSI》. 《Electronic Design》 31 (Endeavor Business Media). 268쪽 – Gale 경유.
NCR Corp., Microelectronics Division has announced the release of its NCR 5385 single-chip controller. NCR is the first to use the Small Computer System Interface (SCSI) protocol.
- ↑ 〈SCSI Products - Host Bus Adapters〉 (보고서). SCSI Source Guide. Technology Forums Inc. Fourth Quarter 1990. 195–260쪽.
- ↑ Sheldon, Robert; Sliwa, Carol. “host bus adapter (HBA)”. TechTarget. 2024년 4월 18일에 확인함.
- ↑ “Power Macintosh G3, G4: Differences Between Available SCSI Cards”. Apple, Inc. 2010년 4월 1일. 2014년 7월 7일에 확인함.
- ↑ David Allen (2005년 7월 1일). “The benefits of Serial Attached SCSI (SAS)”. 2015년 2월 6일에 확인함.
- ↑ Shuangbao Paul Wang (2013년 1월 10일). 《Computer Architecture and Security: Fundamentals of Designing Secure Computer Systems》 1판. John Wiley & Sons. ISBN 978-1118168813.
- ↑ Groth, David; Dan Newland (January 2001). 《A+ Complete Study Guide》 2판. Alameda, CA, USA: l Sybex. 183쪽. ISBN 978-0-7821-4244-0.
- ↑
“na_lun(1) – Manual page for "lun" on NetApp DataONTAP”. 넷앱. 2009년 7월 7일.
The lun command is used to create and manage luns[...]
- ↑
“na_lun(1) – Manual page for "lun" on NetApp DataONTAP”. 넷앱. 2009년 7월 7일.
If a LUN ID is not specified, the smallest number [...] is automatically picked.
- ↑ “SCSI Addressing”. 《tldp.org》. 2021년 3월 4일에 확인함.
- ↑ “An example of an old SCSI interface which supported only named mass storage devices”. H30097.www3.hp.com. 2014년 5월 11일에 확인함.
- 내용주
- ↑ 병렬 인터페이스의 경우 MHz 단위의 클록 속도, 직렬 인터페이스의 경우 초당 비트레이트.
- ↑ 데이지 체인 설계의 경우 버스의 양 끝단 사이의 길이, 지점간 방식의 경우 단일 링크의 길이.
- ↑ 호스트 어댑터를 포함(즉, 컴퓨터도 하나의 장치로 계산).
- ↑ 가 나 공간 재사용
- ↑ 가 나 다 라 마 바 사 아 자 차 카 타 파 전이중
- ↑ 가 나 다 라 마 바 사 아 자 차 카 타 파 방향당
- ↑ 가 나 다 라 마 다중 모드 광섬유의 경우 500미터, 단일 모드 광섬유의 경우 10킬로미터.
- ↑ 가 나 다 라 확장기(expander)당 128개.
- ↑ PCIe 3.0 레인당.
- ↑ 명시되지 않음, USB 3.1의 실질적 제한.
- ↑ 반이중
- ↑ 반이중
- ↑ 이더넷 경유, 10 Gbit/s당, MTU 1500.
- ↑ 이더넷 경유, 10 Gbit/s당, MTU 9000.
외부 링크
[편집]
위키미디어 공용에 SCSI 관련 미디어 분류가 있습니다.