340. SCSI 및 SAS (Serial Attached SCSI)
핵심 인사이트 (3줄 요약)
- 본질: SCSI(Small Computer System Interface, '스카시')는 서버나 워크스테이션 같은 고성능/다중 작업 환경을 위해 개발된 지능형 명령어 세트(Protocol)이자 스토리지 연결 인터페이스 규격이다.
- 가치: 멍청한 데스크톱용 IDE/SATA와 달리 하드디스크 자체에 똑똑한 컨트롤러 칩이 내장되어 있어, 메인 CPU의 간섭 없이 독립적으로 수십 개의 명령어를 큐(Queue)에 쌓고 동선을 최적화(TCQ/NCQ)하여 대규모 트래픽에서의 I/O 처리 효율을 극대화한다.
- 융합: 초창기의 굵고 무거운 병렬(Parallel) 통신 방식이 속도 한계에 부딪히자, **기존 SCSI의 훌륭한 소프트웨어 명령어 체계는 그대로 유지한 채 물리적 껍데기만 얇고 빠른 직렬(Serial) 통신으로 바꾼 SAS(Serial Attached SCSI)**로 융합/진화하여 현대 엔터프라이즈 스토리지의 절대 표준이 되었다.
Ⅰ. 개요 및 필요성 (Context & Necessity)
-
개념: SCSI는 컴퓨터(Host)와 주변장치(하드디스크, 테이프, 스캐너 등)가 대화를 나누기 위한 '고급 언어'이자 '물리적 연결 방식'이다. 일반적인 가정용 PATA/SATA가 주인(CPU)이 하나하나 다 떠먹여 줘야 작동하는 '노예형' 인터페이스라면, SCSI는 "여기 작업 목록 100개 있으니까, 네가 알아서 순서 짜서 완벽하게 처리해 놔"라고 던져주면 디스크가 스스로 연산하고 보고하는 '위임형(Intelligent)' 인터페이스다.
-
필요성: 1980~90년대, 수십 명의 사용자가 동시에 접속하는 유닉스 서버 환경을 상상해 보자. 가정용 IDE 디스크를 달아놓으면, 여러 사용자가 흩어진 파일을 요구할 때마다 CPU가 디스크 헤드의 위치까지 통제하느라 시스템 전체가 심각한 렉(I/O Wait)에 걸렸다. 메인 CPU를 스토리지의 기계적인 노가다에서 해방시켜 줄 '독립적이고 지능적인 스토리지 두뇌'가 절대적으로 필요했다.
-
💡 비유: 일반 IDE/SATA 디스크가 사장님(CPU)이 옆에 붙어서 서류 정리부터 커피 타는 것까지 일일이 지시해야 하는 '수습사원'이라면, SCSI 장비는 사장님이 "이번 달 매출 정산해 놔"라고 결재 서류(명령어 패킷)만 툭 던져주면, 알아서 우선순위를 정하고 완벽하게 일을 끝낸 뒤 사장님께 결과만 보고하는 '유능한 부장님'입니다.
-
탄생과 몰락, 그리고 환생: SCSI는 서버 시장을 제패했지만, '병렬(Parallel)' 전송이라는 치명적 아킬레스건을 안고 있었다. 굵직한 선 68가닥으로 데이터를 동시에 밀어내다 보니, 속도를 높일수록 선끼리 전자파 간섭(Crosstalk)이 생기고 신호가 어긋나는 스큐(Skew) 현상이 터졌다. 결국 울며 겨자 먹기로 얇은 선 1개로 데이터를 초고속으로 쏘는 직렬(Serial) 방식으로 껍데기를 갈아 끼워야만 했고, 그렇게 탄생한 돌연변이 천재가 바로 **SAS (Serial Attached SCSI)**다.
┌─────────────────────────────────────────────────────────────┐
│ 병렬 SCSI (과거) vs 직렬 SAS (현대) 아키텍처의 진화 │
├─────────────────────────────────────────────────────────────┤
│ │
│ [ 과거: Parallel SCSI (병렬 방식) - 데이지 체인 연결 ] │
│ │
│ [HBA 컨트롤러] ════╦═════════╦═════════╦═══════[Terminator]│
│ (서버 메인보드) ▼ ▼ ▼ │
│ [HDD 1] [HDD 2] [HDD 3] │
│ │
│ * 한계: 굵은 케이블 하나를 다 같이 공유하므로 한 놈이 통신하면 다른 놈은 대기.│
│ 신호 간섭(Crosstalk) 때문에 선 길이를 길게 못 뽑음. │
│ │
│ ───────────────────────────────────────────────────────── │
│ │
│ [ 현대: SAS (Serial Attached SCSI) - 점대점(P2P) 스위치 연결 ] │
│ │
│ [ SAS Expander ] (마치 네트워크 스위치)│
│ / | \ │
│ [HBA 컨트롤러] ──────/ | \ │
│ ▼ ▼ ▼ │
│ [HDD 1] [HDD 2] [HDD 3] │
│ │
│ * 혁신: 각각의 디스크가 얇은 개별 케이블(직렬)로 스위치에 직접 연결됨! │
│ 동시 통신(Full Duplex) 가능, 간섭 제로, 속도 무한 확장! │
└─────────────────────────────────────────────────────────────┘
[다이어그램 해설] 전통적인 SCSI는 거대한 동아줄 하나에 하드디스크 15개를 비엔나소시지처럼 줄줄이 엮어 쓰는 '버스(Bus)' 형태였다. 반면 SAS로 넘어오면서 통신 방식이 컴퓨터 네트워크망(스위치 허브) 구조로 완전히 바뀌었다. SAS Expander라는 부품을 중간에 끼우면, 서버 하나에 무려 65,535개의 하드디스크를 주렁주렁 거미줄처럼 달 수 있는 미친 확장성을 얻게 되었다.
- 📢 섹션 요약 비유: 10차선 흙길(병렬 SCSI)을 달릴 때는 차들끼리 엉키고 흙먼지가 날려 60km/h밖에 못 달렸습니다. 길을 넓히는 걸 포기하고 아예 왕복 2차선으로 좁히는 대신 바닥을 초고밀도 아스팔트로 깔아버리니(직렬 SAS), 기차들이 300km/h로 달리게 되어 훨씬 더 많은 짐을 안정적으로 나르게 된 혁명입니다.
Ⅱ. 아키텍처 및 핵심 원리 (Deep Dive)
1. 지능의 상징: TCQ (Tagged Command Queuing)
SCSI가 값비싼 서버 장비로 추앙받는 핵심 이유는 큐잉(Queuing, 대기열) 능력이다.
- 멍청한 환경에서 CPU가 100번지, 1번지, 50번지 순서로 데이터를 요구하면, 디스크 헤드는 미친 듯이 100번 $\rightarrow$ 1번 $\rightarrow$ 50번으로 널뛰기하며 탐색 시간(Seek Time)을 박살 낸다.
- TCQ의 마법: SCSI 디스크는 컨트롤러가 이 명령들을 자신의 메모리 큐(Queue)에 최대 256개까지 쌓아둔다. 그리고 자체 프로세서가 헤드의 현재 위치를 계산하여 "1번지 $\rightarrow$ 50번지 $\rightarrow$ 100번지로 읽는 게 동선이 제일 짧다!(엘리베이터 알고리즘)"라고 재정렬하여 실행한다.
- 동시 접속자가 수백 명인 웹서버 환경에서 이 하드웨어 스케줄링은 DB 응답 속도를 수십 배 끌어올리는 구원투수다. (나중에 싼 SATA도 이걸 흉내 내서 NCQ라는 기능을 넣었다.)
2. SAS의 강력한 생존력: 듀얼 포트 (Dual Port)
SATA 하드디스크를 뒤집어 보면 케이블 꽂는 금속 포트가 1개뿐이다. 하지만 엔터프라이즈용 SAS 하드디스크는 케이블을 꽂는 포트가 위아래로 2개(Dual Port) 달려 있다.
-
왜 구멍이 두 개인가?: 스토리지의 핵심은 생존이다. 만약 케이블이 불타 끊어지거나, 케이블이 꽂힌 서버 메인보드가 터져버리면 하드디스크가 멀쩡해도 데이터를 뺄 수 없다.
-
가용성(High Availability) 아키텍처: SAS의 포트 1번은 '서버 A'에 연결하고, 포트 2번은 '서버 B'에 연결해 둔다. 서버 A가 벼락을 맞아 사망하더라도 서버 B가 0.1초 만에 포트 2번을 통해 하드디스크를 통제하며 서비스를 무중단으로 이어간다(Failover). 기업들이 3배 비싼 돈을 주고 SAS를 사는 본질적인 이유다.
-
📢 섹션 요약 비유: 택배 기사(디스크)에게 배송 리스트 200개를 줬을 때, 멍청한 기사는 받은 순서대로 강남, 강북, 강남을 왕복하지만, 유능한 스카시 기사님은 출발 전 자기가 스스로 지도(TCQ)를 펴고 최단 거리 동선을 짜서 배달을 광속으로 끝마치는 기적의 일 머리를 보여줍니다.
Ⅲ. 융합 비교 및 다각도 분석
SAS (서버 귀족) vs SATA (일반인)의 체급 비교
둘 다 현대의 직렬(Serial) 통신을 쓰지만, 가격과 스펙에서 완벽한 신분 차이가 존재한다.
| 비교 항목 | SATA (Serial ATA) | SAS (Serial Attached SCSI) |
|---|---|---|
| 설계 목적 | 저비용, 대용량, 개인용 PC | 고성능, 무중단 서버, 엔터프라이즈 |
| 명령어 규약 | ATA (단순하고 무거움) | SCSI (정교하고 복잡한 엔터프라이즈 언어) |
| 포트 개수 | 1개 (단일 고장점 SPOF 위험) | 2개 (Dual Port로 서버 다중화 방어) |
| 에러 복구 능력 | 에러 나면 대충 넘기거나 뻗음 | 에러 발생 시 집요하게 분석하고 자가 복구 시도 |
| 전압 및 신호 | 약함 (케이블 최대 1미터) | 강함 (케이블 최대 10미터까지 연장 가능) |
| 가격 및 수명 | 쌈. MTBF 100만 시간 | 매우 비쌈. MTBF 200~250만 시간 이상 |
- 재미있는 하위 호환성: 똑똑한 SAS 컨트롤러(메인보드)에는 싼 SATA 하드디스크를 꽂아도 찰떡같이 인식하고 잘 돌아간다. 하지만 멍청한 SATA 메인보드에는 비싼 SAS 하드디스크를 꽂으면 아예 인식조차 못 한다. (귀족은 평민의 언어를 이해하지만, 평민은 귀족의 언어를 이해하지 못한다.)
iSCSI와 SAN으로의 진화
SCSI의 명령어 체계가 워낙 우주 명작이다 보니, 엔지니어들은 이 명령어를 기계 속 케이블에만 가둬두기 아까워했다. "이 훌륭한 SCSI 명령어를 이더넷(인터넷) TCP/IP 패킷 속에 포장해서 네트워크 너머로 쏴보자!" 이것이 그 유명한 iSCSI의 탄생이며, 오늘날 막대한 돈이 돌아가는 거대한 SAN(Storage Area Network)과 클라우드 가상화 스토리지를 먹여 살리는 근본 뼈대가 되었다.
- 📢 섹션 요약 비유: SATA가 동네 마트용 1톤짜리 포터 트럭이라면, SAS는 24시간 쉬지 않고 대륙을 횡단해야 하는 엔진 2개 달린 볼보 대형 트레일러입니다. 목적은 똑같이 짐을 나르는 것이지만, 들어간 기술과 가격, 그리고 버텨내는 가혹함의 수준이 아예 다릅니다.
Ⅳ. 실무 적용 및 기술사적 판단
실무 시나리오 및 아키텍처 전략
-
시나리오 — 데이터센터 랙 스토리지 구성 (JBOD): 클라우드 서비스 회사가 1U 깡통 서버 밑에 디스크 100개가 들어가는 거대한 스토리지 박스(JBOD/Enclosure)를 물리적으로 달아주려 한다.
- 의사결정: 스토리지 박스 안의 디스크 100개를 서버와 연결해야 한다. SATA 케이블을 쓰면 선 길이가 1미터를 넘지 못해 물리적으로 닿지도 않고, 100개의 케이블을 주렁주렁 매달 수도 없다. 아키텍트는 서버에 SAS HBA 카드를 꽂고, 굵은 외부용 Mini-SAS 케이블(SFF-8088) 딱 1가닥만 스토리지 박스로 뽑아 연결한다. 스토리지 박스 안의 **SAS Expander(스위치)**가 이 1가닥의 통신을 100개의 디스크로 쫙 뿌려주는 기적의 분배 마법을 수행하여 엔터프라이즈 용량 확장을 손쉽게 해결한다.
-
시나리오 — 티어링(Tiering) 스토리지 아키텍처 설계:
- 의사결정: 금융권 DB 서버는 속도와 안정성이 목숨이다. 따라서 OS와 중요 트랜잭션 DB 파일은 15,000 RPM으로 도는 초고가 SAS HDD(또는 SAS SSD) 영역에 배치한다. 반면, 1년에 한 번 꺼내볼까 말까 한 백업 로그 데이터 수십 테라바이트는 굳이 비싼 SAS에 둘 필요가 없다. 이 데이터는 같은 컨트롤러 하단에 꽂아둔 7,200 RPM짜리 저렴하고 뚱뚱한 **NL-SAS(Nearline SAS, 껍데기는 SAS인데 알맹이는 SATA인 짬짜면 디스크)**로 넘겨서 보관 비용(TCO)을 획기적으로 깎아내는 하이브리드 아키텍처를 설계해야 한다.
안티패턴
-
PC나 소규모 나스(NAS)에 SAS 디스크 우겨넣기: 중고 장터에서 SAS 디스크가 싸게 풀렸다고 덥석 사서 가정용 데스크톱이나 싼 NAS에 꽂으려는 행위. 메인보드가 SAS 컨트롤러 칩셋을 지원하지 않으므로 아예 부팅 시 인식조차 안 되어 버려야 하는 대표적인 '뉴비(Newbie) 절단기' 안티패턴이다. 비싼 HBA 카드를 따로 사서 꽂아야만 인식이 되는데, 배보다 배꼽이 커진다.
-
📢 섹션 요약 비유: SAS Expander는 거대한 '멀티탭'과 같습니다. 방에 콘센트 구멍(서버 포트)은 하나밖에 없는데 꽂아야 할 가전제품(디스크)이 100개일 때, 엄청 튼튼한 SAS 멀티탭을 꽂아 문어발처럼 전력을 분배해 주는 것이 데이터센터 무한 확장의 비결입니다.
Ⅴ. 기대효과 및 결론
하드웨어에서 소프트웨어 프로토콜로의 영생
오늘날 SSD가 PCIe 버스를 타는 NVMe 규격으로 폭발적으로 진화하면서, 서버 뱃속의 하드웨어 연결선으로서 SAS의 지위는 서서히 위협받고 있다. 그러나 SCSI가 남긴 위대한 유산(초정밀 블록 제어, 큐잉, 복구 명령어 세트)은 결코 죽지 않았다. 이 명령어 구조는 iSCSI, 파이버 채널(Fibre Channel)이라는 네트워크 프로토콜의 옷을 입고 클라우드 데이터센터의 허공을 빛의 속도로 날아다니고 있다.
결론
SCSI와 SAS는 단순히 "빠른 케이블"이 아니라, "데이터를 지키고 I/O의 한계를 극복하려는 선배 엔지니어들의 편집증적인 지능형 프로토콜"이다. 멍청한 하드웨어에 CPU의 지능을 이식하여(Offloading) 병렬 처리의 극의를 이끌어낸 이 철학은, 오늘날 스마트 NIC이나 DPU(Data Processing Unit) 같은 최첨단 인프라 가속 기술들의 근본적인 뿌리이자 정신적 지주로 남아 있다.
- 📢 섹션 요약 비유: 옛날에 엄청나게 똑똑한 철학자(SCSI)가 쓴 훌륭한 법전이 있었습니다. 시간이 흘러 종이책(병렬 케이블)이 다 썩어 문드러졌지만, 사람들은 그 법전의 내용이 너무 완벽해서 e북과 스마트폰(SAS, iSCSI)에 그대로 옮겨 담아 지금도 법으로 지키며 살고 있는 것과 같습니다. 지혜(프로토콜)는 그릇(케이블)이 바뀌어도 영원히 살아남습니다.
📌 관련 개념 맵 (Knowledge Graph)
| 개념 명칭 | 관계 및 시너지 설명 |
|---|---|
| SATA (Serial ATA) | SAS와 똑같은 직렬 방식을 쓰지만, 명령어 수준과 부품 원가를 대폭 낮춘 일반 소비자용 라이벌 규격. |
| TCQ / NCQ (Command Queuing) | 디스크가 명령어를 한 번에 수십 개씩 머릿속에 담아두고 동선을 최단 거리로 재배치하는 스카시의 핵심 지능 기술. |
| HBA (Host Bus Adapter) | CPU를 대신해 지능적인 스카시 언어로 디스크 군단을 지휘하는, 서버 메인보드에 꽂는 전용 장군 카드. |
| iSCSI / FC (Fibre Channel) | 스카시의 훌륭한 명령어 대화법을 케이블 안이 아니라 광활한 인터넷/광네트워크망 밖으로 던져 쏠 수 있게 만든 프로토콜. |
| Dual Port (이중 포트) | SAS 디스크 뒷면에 구멍을 두 개 뚫어, 한쪽 서버가 죽어도 다른 쪽 서버가 1초 만에 제어권을 뺏어오게 만드는 극강의 방어 체계. |
👶 어린이를 위한 3줄 비유 설명
- SCSI(스카시)는 컴퓨터 왕(CPU)이 가장 믿고 모든 걸 맡기는 '수석 천재 비서(하드디스크)'예요.
- 일반 비서(SATA)는 왕이 1부터 10까지 순서대로 다 지시해야 일하지만, 천재 비서 스카시는 "창고 다 정리해!"라고만 하면 자기가 알아서 동선을 짜고 완벽하게 일을 끝내놓죠.
- 이 천재 비서에게 뚱뚱한 마차(병렬 선) 대신, 엄청나게 날쌘 스포츠카(직렬 통신)를 태워준 것이 바로 오늘날 대형 컴퓨터들이 쓰는 최강의 무기 **SAS(사스)**랍니다!