메모리 미러링 (Memory Mirroring)

핵심 인사이트 (3줄 요약)

  1. 본질: 메모리 미러링 (Memory Mirroring)은 동일한 데이터를 두 개의 독립 DIMM 채널에 동시에 기록하여 한 채널의 DIMM이 완전히 고장나도 다른 채널로 즉시 계속 운용하는 하드웨어 수준의 DRAM 이중화 기법이다.
  2. 가치: ECC는 1~2비트 오류를 정정하지만, DIMM 전체 고장(칩, PCB 불량)에는 대응이 불가능하다. 메모리 미러링은 DIMM 레벨의 완전 고장까지 무중단 운영을 보장하여 미션 크리티컬 시스템의 DRAM 고가용성(HA)을 실현한다.
  3. 융합: 메모리 미러링은 서버 RAM 용량을 50% 감소시키는 트레이드오프가 있으나, HA (High Availability), RAS (Reliability Availability Serviceability) 요구사항이 높은 금융·의료·통신 인프라에서 ECC만으로는 달성 불가한 DRAM 계층 무결성을 제공한다.

Ⅰ. 개요 및 필요성

ECC 메모리가 단일 비트~칩 단위 에러를 정정해도, DIMM 모듈 전체(전원 공급 이상, PCB 단선, 커넥터 불량 등)가 고장나면 ECC도 무력화된다. 메모리 미러링은 이 시나리오를 RAID 1(디스크 미러링)과 동일한 개념으로 DRAM에 적용한 솔루션이다.

💡 비유: RAID 1 하드디스크 미러링처럼 — 디스크 하나가 돌연사해도 미러 디스크로 계속 운영. 메모리 미러링은 DRAM 채널 하나가 고장나도 미러 채널로 계속 서비스.

┌──────────────────────────────────────────────────────────────┐
│         메모리 미러링 구조                                   │
├──────────────────────────────────────────────────────────────┤
│                                                              │
│  메모리 컨트롤러                                             │
│      │                                                       │
│      ├──▶ [채널 A] ──▶ DIMM A0, DIMM A1   ← 주 채널          │
│      │     │ 동일 데이터 동시 기록                           │
│      └──▶ [채널 B] ──▶ DIMM B0, DIMM B1   ← 미러 채널        │
│                                                              │
│  읽기: 채널 A에서만 읽음 (미러는 백업)                       │
│  쓰기: 채널 A, B 동시 기록 (★ 쓰기 레이턴시 최소 증가)       │
│                                                              │
│  채널 A 고장 시:                                             │
│  메모리 컨트롤러가 즉시 채널 B로 전환 → 무중단 운영          │
│  오류 감지: ECC 에러 누적 → 자동 채널 전환 트리거            │
│                                                              │
│  비용: 전체 DRAM 용량 50% 감소                               │
│  예: 128GB 설치 → 64GB 유효 (64GB 미러)                      │
└──────────────────────────────────────────────────────────────┘

📢 섹션 요약 비유: 메모리 미러링은 쌍둥이 메모리 — 모든 데이터를 두 곳에 동시에 적고, 한 명이 아프면 다른 한 명이 즉시 대신합니다.


Ⅱ. 아키텍처 및 핵심 원리

메모리 미러링 모드 종류

모드설명자원 사용
전체 미러링모든 채널 2중화50% 용량 감소
부분 미러링핵심 채널만 미러25% 미만 감소
NUMA 로컬 미러소켓별 로컬 채널만 미러50% 감소
HA 모드 (동적)ECC 에러 임계값 도달 시 자동 활성화에러 발생 시만

메모리 미러링 vs RAID 1 vs ECC

┌──────────────────────────────────────────────────────────────┐
│         메모리 고가용성 기법 비교                            │
├──────────────────────────────────────────────────────────────┤
│                                                              │
│  ECC:          단일 비트 에러 정정, 2비트 탐지               │
│  칩킬 ECC:     칩 1개 고장 정정                              │
│  라인 삭제:    특정 메모리 라인 비활성화 (Sparing)           │
│  메모리 미러링: DIMM 전체 채널 고장 방어                     │
│                                                              │
│  방어 층위 (아래로 갈수록 강력):                             │
│  비트 에러 → ECC                                             │
│  칩 고장  → 칩킬 ECC                                         │
│  DIMM 고장→ 메모리 미러링 ← 최후 방어선                      │
└──────────────────────────────────────────────────────────────┘

📢 섹션 요약 비유: 방어선 계층 — ECC는 개인 방탄복, 칩킬은 팀 방탄막, 메모리 미러링은 백업 벙커 — 점점 강력한 보호를 제공하지만 비용도 증가합니다.


Ⅲ. 융합 비교 및 다각도 분석

DRAM Sparing (스페어링)과의 비교

  • Hot-Add Sparing: 예비 DIMM 슬롯을 비워두고 다른 DIMM 고장 시 핫스왑
  • Online Sparing: 예비 DIMM을 대기 상태로 두고 ECC 에러 임계값 초과 시 자동 데이터 마이그레이션→ 전환 (무중단)
  • 메모리 미러링: 동시 2채널 기록, 즉각 무중단 전환 (최강 HA, 최대 비용)

📢 섹션 요약 비유: 스페어링은 예비 선수가 벤치에서 대기, 미러링은 같은 선수가 2명이 동시에 경기하는 것 — 미러링이 교체 속도가 0ms로 더 빠릅니다.


Ⅳ. 실무 적용 및 기술사적 판단

실무 시나리오:

  1. 금융 트랜잭션 서버: 초당 수만 건의 결제 처리 중 DRAM 고장 발생 시 단 1건의 트랜잭션도 손실 없어야 함. 메모리 미러링 필수.
  2. 의료 영상 처리 시스템: 수술 중 MRI 영상 처리 서버 DRAM 장애 시 시스템 다운은 의료 사고로 이어짐. HA 메모리 필수.

안티패턴:

  • 미러링 없이 ECC만으로 충분하다고 오해: ECC로 탐지된 Multi-bit 에러는 정정 불가 → 즉각 패닉. 미션 크리티컬 환경에서 ECC만은 불충분.

📢 섹션 요약 비유: ECC만 믿는 것은 자동차 에어백 없이 안전벨트만 믿는 것 — 충분하지만 충분하지 않을 수 있어요.


Ⅴ. 기대효과 및 결론

구분ECC만ECC + 미러링
단일 비트 에러정정 ✅정정 ✅
칩 1개 고장탐지만 (칩킬 없으면)채널 전환으로 지속 ✅
DIMM 전체 고장서비스 다운 ❌무중단 지속 ✅
메모리 용량100%50% (50% 미러)

메모리 미러링은 DRAM 레이어의 최강 HA 솔루션이다. 용량 50% 희생이라는 트레이드오프가 있지만, 금융·의료·통신 미션 크리티컬 환경에서는 99.999% 가용성 달성의 필수 구성 요소다.


📌 관련 개념 맵

개념관계
ECC 메모리미러링과 결합하는 기본 오류 정정 기술
RAID 1 (디스크 미러링)동일 개념의 스토리지 계층 구현
칩킬 ECC미러링 이전 계층의 강화된 오류 정정
Online Sparing미러링 대안, 예비 DIMM 동적 투입
RAS (Reliability Availability)메모리 미러링이 기여하는 시스템 신뢰성 지표

👶 어린이를 위한 3줄 비유 설명

  1. 메모리 미러링은 쌍둥이 저장소 — 중요한 정보를 두 군데에 동시에 적어두는 거예요.
  2. 한 쪽이 망가지면? 다른 쌍둥이가 즉시 대신해요 — 컴퓨터가 멈추지 않고 계속 달려요!
  3. 단점은 쌍둥이 두 명을 고용해야 해서 월급(메모리 용량)이 두 배 들어요 — 50%만 실제로 쓸 수 있어요.