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

  1. 본질: 스토어 앤 포워드 (Store-and-forward) 방식은 이더넷 프레임의 머리부터 끝 꼬리(FCS)까지 전체 데이터를 스위치 내부 버퍼(메모리)에 완전히 다 받아들인 후에만 포워딩을 시작하는 가장 안정적인 전송 방식이다.
  2. 에러 검출 (장점): 전체 프레임을 다 받았기 때문에 꼬리에 있는 FCS(에러 검출 코드)를 통해 데이터가 전송 중 깨졌는지(CRC 에러) 완벽히 검사할 수 있으며, 불량 프레임이나 너무 작은 찌꺼기 프레임(Runt)은 스위치 선에서 즉시 폐기해 버린다.
  3. 지연 발생 (단점): 프레임이 클수록 버퍼에 담아두고 기다려야 하는 시간(Latency)이 길어지지만, 오늘날 대부분의 일반적인 L2 스위치와 라우터가 채택하고 있는 사실상의 업계 표준 스위칭 방식이다.

Ⅰ. 개요 및 필요성 (Context & Necessity)

  • 개념: 스위치가 데이터를 처리하는 가장 기본적이고 꼼꼼한 방식이다. "일단 다 담아놓고(Store), 검사한 뒤에 보낸다(Forward)".

  • 필요성: 컷스루(Cut-through)처럼 빨리빨리 대충 보내버리면, 네트워크에 깨진 쓰레기 데이터가 돌아다니며 대역폭을 갉아먹는다. 특히 속도가 다른 포트 간(예: 100Mbps 포트에서 1Gbps 포트로) 데이터를 넘길 때는, 속도 차이 때문에 물리적으로 프레임을 잠시 스위치 메모리에 완충(Buffer)시켜야만 전송이 가능하다. 스토어 앤 포워드는 이 두 가지 문제를 모두 해결한다.

  • 💡 비유: 스토어 앤 포워드는 **"꼼꼼한 세관원"**과 같습니다. 화물(프레임)이 도착하면 박스를 열어 물건의 개수와 품목이 송장과 정확히 일치하는지, 파손된 곳은 없는지(FCS 검사) 처음부터 끝까지 싹 다 뜯어보고(Store), 문제가 없을 때만 다음 장소로 **통과(Forward)**시킵니다.

📢 섹션 요약 비유: 택배 상자가 파손되었는지(에러) 확인하려면, 택배 박스가 컨베이어 벨트를 통해 "완전히 내 손에 다 들어와야만" 박스 바닥(FCS)까지 돌려볼 수 있습니다. 컷스루처럼 박스 앞부분만 잡고 냅다 던져버리면 바닥이 찢어진 줄 모릅니다.


Ⅱ. 스토어 앤 포워드의 동작 원리와 지연 시간 (Deep Dive)

1. 에러 검출과 불량품 폐기 (CRC Check)

프레임 전체가 스위치 메모리(버퍼)에 완전히 로드되면, 스위치 ASIC은 맨 뒤 4바이트의 FCS(Frame Check Sequence) 값을 읽어 스스로 계산한 CRC 값과 비교한다.

  • 만약 값이 다르면(전송 중 노이즈로 데이터가 깨짐), 스위치는 즉각 해당 프레임을 버린다(Drop).
  • 최소 크기인 64바이트가 안 되는 충돌 찌꺼기(Runt Frame)나 1518바이트를 넘는 비정상 프레임(Giant Frame)도 스위치 선에서 여과(Filtering)되어, 목적지 PC는 항상 "100% 정상적인 데이터"만 받을 수 있게 보호받는다.
 ┌─────────────────────────────────────────────────────────────┐
 │                스토어 앤 포워드 (Store-and-forward)             │
 ├─────────────────────────────────────────────────────────────┤
 │                                                             │
 │   1. 전체 프레임 수신 (기다림의 시간 발생)                           │
 │   들어오는 중 ──▶ [ FCS | Payload | 출발지 MAC | 목적지 MAC ]     │
 │                                                             │
 │   2. 스위치 버퍼 메모리에 전체 100% 로드 완료 (Store)               │
 │   스위치 내부 ──▶ [ FCS | Payload | 출발지 MAC | 목적지 MAC ]     │
 │                   └─── 에러 검사(CRC) 진행 ───┘                 │
 │                                                             │
 │   3. 에러가 없으면 그제야 목적지 포트로 출발 (Forward)                 │
 │   나가는 중 ──▶ [ FCS | Payload | 출발지 MAC | 목적지 MAC ]       │
 │                                                             │
 └─────────────────────────────────────────────────────────────┘

2. 가변적 레이턴시 (Variable Latency)

스토어 앤 포워드의 가장 큰 단점은 딜레이(지연)다. 프레임 크기가 최소 64바이트일 때는 금방 버퍼에 차지만, 최대 1518바이트일 때는 전체 데이터가 다 들어올 때까지 기다려야 하므로 컷스루 방식에 비해 지연 시간이 훨씬 길어진다. 프레임 크기에 비례하여 레이턴시가 널뛰기(가변적)한다.

3. 이기종 속도 간의 스위칭 필수 조건

이 방식은 지연이라는 단점에도 불구하고 절대 버릴 수 없다. 입력 포트는 10Mbps고 출력 포트가 1Gbps일 경우, 들어오는 속도보다 나가는 속도가 압도적으로 빠르다. 컷스루를 쓰면 보낼 데이터가 아직 안 들어왔는데 포트가 데이터를 요구하는 '언더런(Underrun)' 현상이 발생한다. 속도가 다른 두 포트 간의 통신에서는 반드시 데이터를 메모리에 완전히 받아놓고(Store) 쏘는(Forward) 방식이 필수적이다.

📢 섹션 요약 비유: 스토어 앤 포워드 방식은 **"속도보다는 완벽주의를 추구하는 장인"**입니다. 비록 배송은 1초 늦어질지라도, 불량품(에러)이 고객에게 넘어가는 꼴은 절대 보지 못하며, 오늘날 우리가 쓰는 대부분의 인터넷 장비에 기본 탑재된 신뢰의 상징입니다.