층층이 나눠 일하기, 네트워크의 층
편지를 부친다고 해봐요. 글은 편지지에 쓰고, 편지지는 봉투에 넣고, 봉투엔 주소를 적고, 그걸 우체바구니에 담아요. 한 사람이 다 하지 않고 단계가 나뉘어 있죠. 네트워크도 똑같이 층으로 나눠 일해요.
왜 층으로 나눌까요
앞에서 봤듯이
내 메시지는 여러 역을 거쳐 전달돼요.
그런데 그 한 번의 전달에도
할 일이 정말 많아요.
내용을 담고,
빠지거나 순서가 틀리지 않게 챙기고,
어디로 보낼지 주소를 붙이고,
그걸 진짜 신호로 바꿔야 하죠.
이걸 한 덩어리로 다 하려면
너무 복잡해서 엉키기 쉬워요.
왼쪽 한 덩어리를 눌러봐요. 할 일이 뒤엉켜요. 오른쪽처럼 층으로 나누면 각 일이 또렷해져요.
한 덩어리는 손대기 무서웠죠.
하나를 고치면
엉뚱한 데가 같이 흔들려요.
그런데 층으로 나눠 두면
각 층은 제 일만 맡아요.
주소 다는 층은 내용이 뭔지 몰라도 되고,
신호 바꾸는 층은 주소를 몰라도 돼요.
그래서 한 층을 고쳐도
다른 층은 멀쩡해요.
이게 층으로 나누는 첫째 이유예요.
겹겹이 감싸요
보낼 때는 메시지를 겹겹이 감싸요.
맨 먼저 편지지에 내용을 써요.
그 편지지를 속봉투에 넣어요.
속봉투를 다시 겉봉투에 넣고
겉봉투엔 주소를 적어요.
마지막엔 그걸 우체바구니에 담아요.
바구니가 0과 1의 진짜 신호예요.
안쪽 내용은 그대로 두고
바깥을 한 겹씩 덧씌우는 거예요.
이렇게 감싸는 걸 캡슐화라고 불러요.
단추를 누를 때마다 한 겹씩 감싸요. 편지지 → 속봉투 → 겉봉투 → 우체바구니. 이게 캡슐화예요.
다 감싸고 나면
바깥에서는 우체바구니만 보여요.
안에 어떤 내용이 들었는지
바깥 신호는 알 필요가 없어요.
그냥 0과 1을 실어 나르면 돼요.
반대로 편지지는
주소가 뭔지 신경 쓰지 않아요.
각 겹이 자기 몫만 챙기죠.
그러니 다음엔 각 층이
무슨 일을 맡는지 들여다봐요.
각 층은 제 일만 해요
네 겹은 저마다 맡은 일이 달라요.
편지지는 내용을 담당해요.
무엇을 말하고 싶은지죠.
속봉투는 정확함을 담당해요.
빠진 곳 없이 순서대로 다 왔는지요.
겉봉투는 주소를 담당해요.
어느 곳으로 보낼지요.
우체바구니는 신호를 담당해요.
0과 1을 실제 선과 전파에 싣는 일이죠.
층을 하나씩 눌러봐요. 그 층이 맡은 일만 또렷이 켜져요. 내용 · 정확함 · 주소 · 신호.
재미있는 건
한 층은 옆 층의 속을 몰라도 된다는 거예요.
주소 층은 내용이 인사인지 사진인지
알 필요가 없어요.
신호 층은 그 위가 무슨 주소인지
신경 쓰지 않아요.
각자 자기 칸만 잘 지키면
전체가 척척 돌아가요.
그럼 받는 쪽은 이 겹들을
어떻게 풀까요?
받으면 거꾸로 벗겨요
도착한 쪽에서는 거꾸로 풀어요.
감쌌던 순서의 반대로요.
맨 먼저 우체바구니에서 꺼내요.
0과 1을 다시 봉투 묶음으로 모아요.
그다음 겉봉투를 벗겨요.
주소는 다 썼으니 떼어내요.
이어서 속봉투를 벗겨요.
빠진 곳 없이 잘 왔는지 확인하고요.
마지막에 편지지를 펼치면
보낸 사람의 메시지가 그대로 나와요.
단추를 누를 때마다 겉부터 한 겹씩 벗겨요. 우체바구니 → 겉봉투 → 속봉투 → 편지지(메시지 도착).
겹을 다 벗기니
처음에 쓴 메시지가 그대로예요.
신기하죠.
보낸 쪽이 감싼 순서를
받은 쪽이 정확히 거꾸로 풀어요.
그래서 안의 내용은
오는 길 내내 건드려지지 않아요.
같은 층끼리는 같은 약속을 따르기 때문이에요.
이 약속 덕분에
세상 어떤 기계끼리도 말이 통해요.
정리해볼까요
한 줄로 모으면 이래요.
네트워크는 한 번에 다 하지 않고
층으로 나눠 각 층이 제 일만 해요.
보낼 때는 편지지부터 우체바구니까지
겹겹이 감싸요. 이게 캡슐화예요.
받을 때는 그 반대로
겉부터 한 겹씩 벗겨 메시지에 닿아요.
층마다 같은 약속을 지키니
복잡한 일도 단순하고 튼튼하게 돌아가요.
핵심을 차례로 눌러 되짚어봐요. (층으로 나눔 → 보낼 때 감쌈(캡슐화) → 각 층은 제 일만 → 받을 때 거꾸로 벗김)
층으로 나눠 감싸고 벗기는 법을 익혔으니
이제 한 가지가 더 궁금해져요.
겉봉투에 적은 그 주소는
대체 어떻게 생겼고
어떻게 세상에 단 하나뿐인 곳을 가리킬까요?
다음 강에서, 그 주소의 정체를
함께 들여다봐요.