스킬캠퍼스
Day 8 · 인터넷의 탄생
강의

오늘 끝나면

인터넷의 탄생

  • 인터넷의 탄생의 핵심 문제를 한 문장으로 설명한다
  • 오른쪽 실습에서 인터넷의이 어떻게 움직이는지 관찰한다
  • 다음 강의와 이어지는 한계를 말할 수 있다

실습 미션

1969 아파넷 — 컴퓨터끼리 선으로 잇다. 패킷과 IP 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.

성공 조건

  • 실습의 기본값을 먼저 관찰
  • 입력값이나 모드를 한 번 이상 바꿔 결과 비교
  • 왜 결과가 바뀌었는지 한 문장으로 설명

개발 · Day 8 / 인터넷 · 웹

컴퓨터끼리
선을 잇다

지금까지는 컴퓨터 한 대 안의 이야기였음. 이제 컴퓨터끼리 연결함. 1969년 아파넷이 그 시작임. 글을 통째로 안 보내고 조각내 보내는 게 핵심임.

P.01개발 · Day 8

왜 망을 만들었나

1960년대 미국. 전화망은 한 곳이 끊기면 통화가 통째로 죽음. 군은 그게 무서웠음.

냉전기였음. 핵폭격 한 방 맞아도 안 죽는 통신망이 필요했음.

문제는 중앙 교환소. 거기 하나에 다 걸려 있으면 거기만 터뜨리면 끝임. 그래서 미 국방부가 돈을 댐.

1969년 ARPANET이 켜짐. 대학 컴퓨터 4대를 선으로 이은 게 전부. 첫 메시지는 LO. "LOGIN" 치다 두 글자 만에 시스템이 죽음. 그래도 컴퓨터끼리 처음 말을 건 순간임.

답은 중앙 없는 그물망. 어디가 끊겨도 다른 길로 돌아가면 됨. 이게 오늘날 인터넷의 DNA임.

1969 · ARPANET
UCLASRIUCSBUTAH우회로

대학 컴퓨터 4대 — 중앙 없는 그물망, 한 선 끊겨도 우회

P.02개발 · Day 8

글을 조각내 보낸다

핵심 아이디어는 패킷 교환임. 보낼 데이터를 작은 조각으로 쪼개 보내는 방식임.

옛 전화는 회선 교환임. 통화하는 동안 두 사람 사이 선 하나를 통째로 잡아둠. 말 안 해도 선은 계속 점유됨. 낭비가 큼.

패킷 교환은 다름. 글을 여러 조각(패킷)으로 쪼갬. 각 조각에 받는 사람 주소를 붙임. 조각은 제각각 다른 길로 가도 됨. 도착하면 번호 순서대로 다시 합침.

그래서 선 하나를 여러 사람이 나눠 씀. 한 길이 막히면 다른 길로 감. 효율적이고 안 끊김.

패킷 교환 vs 회선 교환
회선 교환 — 선 하나 통째로 잡음점유됨패킷 교환 — 조각내 여러 길로123도착 후 1·2·3 순서대로 다시 합침

선을 통째로 잡는 대신, 조각내 나눠 보내고 도착해 합침

P.03개발 · Day 8

라우터가 길을 찾는다

패킷은 한 번에 목적지까지 안 감. 라우터라는 중간 우체국을 여러 번 거침.

라우터는 패킷에 적힌 주소를 보고 "이쪽이 더 가깝다"를 판단함. 그리고 다음 라우터로 넘김. 이 한 칸 이동을 홉(hop)이라 함. 목적지까지 보통 여러 홉을 거침.

오른쪽에서 직접 해보셈. 라우터를 눌러 고장 내면 패킷이 즉시 다른 길로 돌아감. 길 하나가 죽어도 망 전체는 멀쩡함. 1969년 군이 원했던 바로 그 성질임.

코드 보기
# 죽은 라우터를 피해 최단 경로 찾기 (BFS)
def find_path(dead):
    q = ["나"]
    prev = {"나": None}
    while q:
        cur = q.pop(0)
        for nxt in neighbors(cur):
            if nxt in dead: continue
            if nxt not in prev:
                prev[nxt] = cur
                q.append(nxt)
    return trace(prev, "친구")
패킷 라우팅 실험
패킷 교환 실험실 · 글을 쪼개 라우터 망으로 보낸다
라우터를 눌러 고장 내보라 →
보낼 글
HELLO
패킷 수
5
거친 라우터
2홉
길 찾음 — 나 → R1 → R3 → 친구
라우터 하나가 꺼져도 다른 길로 돌아감 — 핵폭격에도 안 죽는 망이 목표였음
P.04개발 · Day 8

IP — 인터넷의 집주소

라우터가 길을 찾으려면 "어디로 보낼지"가 필요함. 그 주소가 IP임.

IP는 Internet Protocol의 줄임임. 인터넷에 연결된 모든 기기에고유 번호가 붙음. 집집마다 도로명 주소 있는 것과 같음.

예전 방식(IPv4)은 142.250.207.46처럼 점으로 나뉜 숫자 넷임. 각 칸은 0~255. 이 주소만 알면 지구 반대편 컴퓨터에도 패킷을 보냄.

근데 숫자는 외우기 어려움. 그래서 google.com 같은 이름을 IP로 바꿔주는 장치가 따로 있음. 그게 DNS임 — 인터넷의 전화번호부. 자세한 건 뒤 챕터에서.

IP 주소 구조
IP 주소 (IPv4)142.0–255250.0–255207.0–255460–255google.com → DNS → 위 숫자이름은 외우기 쉽고, 숫자는 라우터가 길 찾기 쉬움

모든 기기에 붙는 고유 번호 — 인터넷의 도로명 주소

P.05개발 · Day 8

인터넷 = 망들의 망

그럼 인터넷은 정확히 뭔가. 망들의 망임 — 작은 망 수없이 많은 걸 또 이은 것임.

집 와이파이도 작은 망 하나임. 회사 망, 카페 망, 통신사 망 다 따로 있음. 이 망들을 또 서로 이은 거대한 그물이 인터넷임. "인터넷 (inter-net)" 이름 자체가 "망과 망 사이"라는 뜻임.

그래서 인터넷엔 주인이 없음. 한 회사가 가진 게 아님. 약속(프로토콜)만 지키면 누구든 자기 망을 붙임. 이 개방성이 인터넷을 폭발적으로 키움.

여기까지가 "선으로 데이터 나르는 법"임. 다음은 이 선 위에 이 올라옴 — 매일 보는 웹페이지가 어떻게 태어났는지.

Q. 인터넷과 웹은 같은 말인가?아님. 인터넷은 컴퓨터를 잇는 망 자체임(이번 챕터). 웹은 그 망 위에서 돌아가는 한 가지 서비스임 — 링크로 이어진 문서들(다음 챕터). 이메일·영상통화도 인터넷 위에 있지만 웹은 아님. 인터넷이 도로라면 웹은 그 위를 달리는 한 종류의 차임.
NETWORK OF NETWORKS
집 망회사 망카페 망망 + 망 + 망 = 인터넷

작은 망들을 또 이은 거대한 그물 — 주인 없는 개방형 망

3줄 요약

  1. 11969 아파넷 — 컴퓨터끼리 선으로 잇다. 패킷과 IP
  2. 2인터넷의 탄생은 코딩 기본 → 인터넷과 웹 → 프론트/백엔드 → 데이터 → 배포 흐름 안의 한 칸이다.
  3. 3개념을 외우는 것보다 입력을 바꾸면 무엇이 달라지는지 보는 것이 우선이다.

완료 전 점검

복습 카드

인터넷의

1969 아파넷 — 컴퓨터끼리 선으로 잇다. 패킷과 IP

입력

프로그램이 받아들이는 값이나 사용자 행동

규칙

입력을 처리하는 코드의 절차