1003. 처리량 (Throughput) 수식화 - 굿풋 대역폭 성능 한계 단위 시간 전송량 Bps 성능 평가 지표 통계 모델망 대역 체제

핵심 인사이트: 통신사에서 "우리 기가 인터넷은 1Gbps(대역폭)입니다!"라고 광고한다. 그래서 1GB짜리 영화를 다운받았더니 1초가 아니라 10초가 걸린다. 빡쳐서 전화한다. "야! 1기가라며!" 통신사가 웃으며 답한다. "고객님, 도로 폭이 왕복 8차선(대역폭)이라고 차들이 항상 시속 100km로 꽉 채워 달립니까? 중간에 공사도 하고, 사고도 나고, 쓰레기 차(헤더 오버헤드)도 섞여 있잖아요. 실제로 고객님 하드디스크에 깔끔하게 살아서 도착한 진짜 택배의 수(처리량)는 도로 폭보다 훨씬 적은 게 당연하죠!" 광고(스펙)와 현실(체감)을 가르는 차가운 성적표, 처리량(Throughput)이다.

Ⅰ. 대역폭(Bandwidth)과 처리량(Throughput)의 절대적 차이 🌟

면접과 시험에서 헷갈리기 가장 쉬운 2대 지표입니다.

  • 대역폭 (Bandwidth):
    • 랜선이나 광케이블이 물리적으로 낼 수 있는 **'이론적인 최대 속도(파이프의 크기)'**입니다.
    • 자동차로 치면 속도계에 적힌 '최대 시속 300km'입니다. (고정된 스펙)
  • 처리량 (Throughput):
    • 에러, 패킷 손실, 병목 현상 등을 다 거치고 난 뒤, 수신자 컴퓨터에 **'실제로 살아서 도착한 데이터의 양'**을 1초 단위로 측정한 현실 수치입니다. (보통 bps, Bit per Second를 씁니다.)
    • 자동차로 치면 퇴근길 강남대로에서 찍힌 '실제 평균 시속 15km'입니다. (변동하는 현실)
    • 법칙: $Throughput \le Bandwidth$ (처리량은 죽었다 깨어나도 대역폭을 넘을 수 없습니다.)

Ⅱ. 굿풋 (Goodput)의 탄생 - "쓰레기 빼고 순살만 발라내라!" 🌟

처리량(Throughput)에서 한 단계 더 까다롭게 따지는 극한의 체감 지표입니다.

  • 문제의식: 내가 친구에게 1,000바이트의 패킷을 보냈고 이게 살아서 도착했습니다(Throughput 1,000바이트). 그런데 패킷을 까보니 앞에 TCP 헤더, IP 헤더, 이더넷 MAC 껍데기(오버헤드)가 무려 100바이트를 쳐먹고, 진짜 내가 보낸 사진(데이터)은 900바이트뿐입니다.
  • 굿풋 (Goodput):
    • 통신망을 통과한 총 패킷 양(Throughput)에서, 쓸데없는 포장지 껍데기(헤더, 오버헤드)와 에러 나서 버려진 재전송 패킷을 싹 다 빼버리고, **"오직 앱(Application) 계층에서 쓸 수 있는 100% 순수한 알맹이(페이로드) 데이터만 1초에 몇 개 도착했는가?"**를 잰 궁극의 순살 수치입니다.
    • 사용자가 체감하는 파일 다운로드 속도는 대역폭도, 처리량도 아닌 이 **굿풋(Goodput)**과 100% 일치합니다.

Ⅲ. 처리량을 갉아먹는 주범들 (왜 대역폭을 못 뽑을까?)

  1. 프로토콜 오버헤드: 방금 말한 TCP/IP 헤더 등 껍데기 포장지 무게입니다.
  2. 에러와 재전송 (ARQ): 949번에서 배운 대로 패킷 1개가 깨지면 Go-Back-N으로 10개를 다시 쏘느라 파이프(대역폭)를 낭비합니다.
  3. 네트워크 병목 (Bottleneck): 내 랜카드는 1Gbps지만, 중간에 낀 공유기가 100Mbps 구형이면 전체 처리량은 무조건 가장 좁은 구멍인 100Mbps로 하향 평준화(목 졸림)됩니다.

Ⅳ. 처리량 극대화 꼼수 (점보 프레임)

  • 껍데기(오버헤드) 비율을 줄이려면 어떻게 할까요?
  • 1,500바이트짜리 상자(기본 MTU) 6개를 보내면 헤더(껍데기)도 6번 붙여야 합니다.
  • "야! 상자를 9,000바이트짜리 초대형 냉장고 박스(Jumbo Frame)로 하나 튼튼하게 만들어! 그럼 헤더를 딱 1번만 붙이면 되니까 순살(Goodput) 비율이 미친 듯이 올라가잖아!" 서버 전산실(SAN)에서 스위치 처리량을 한계치까지 쥐어 짜낼 때 쓰는 스킬입니다.

📢 섹션 요약 비유: 인터넷 통신은 과수원에서 서울로 사과를 트럭에 실어 나르는 작업입니다. **대역폭(Bandwidth)**은 '10톤짜리 초대형 화물 트럭' 그 자체입니다(물리적 스펙). 근데 트럭에 10톤을 꽉 못 채웁니다. 중간에 비포장도로(노이즈)를 달릴 때 사과가 깨질까 봐 두꺼운 스티로폼과 나무 궤짝(헤더 오버헤드)을 잔뜩 넣어야 하기 때문입니다. 서울에 트럭이 도착했을 때 트럭째 무게를 달아보는 것이 **처리량(Throughput)**입니다(대충 8톤 나옴). 하지만 사장님이 진짜 돈을 벌려면 나무 궤짝과 썩은 사과(재전송 패킷)를 다 걷어내고 쓰레기통에 버려야 합니다. 궤짝을 다 버리고 남은 **'오직 팔 수 있는 깨끗한 순살 사과의 무게(6톤)'**만을 재는 것이 바로 **굿풋(Goodput)**입니다. 사용자가 느끼는 진짜 인터넷 속도는 트럭 크기(대역폭)가 아니라 내 입에 들어오는 순살 사과의 양(굿풋)입니다.