'클라우드'라고 하면 보통 구름 모양 아이콘으로 표현되는 가상의 저장공간 제공 서비스가 생각난다. 사실 클라우드는 '인터넷'을 일반 대중과 쉽고 친숙하게 통하려고 만들어 낸 용어라고.
인터넷은 수많은 기기들이 연결된 거대한 네트워크인데, 우리가 각자 스마트폰이나 랩탑으로 인터넷에 접속하려면 ISP를 통해야 한다. 우리가 익히 들어본 KT, SK브로드밴드, SK텔레콤, LG유플러스 같은 회사들이 해당한다. ISP는 네트워크로 연결되는 포털*을 만들고 매달 이용 비용을 청구하는 방식으로 인터넷 서비스를 제공한다.
포털(portal)이란 단어는 어딘가로 들어가는 문, 이어지는 통로 같은 걸 뜻한다. 게임이나 영화에서 다른 세계로 넘어갈 수 있게 벽에 슥 생기거나 빈 공간에 혼자 문짝처럼 서있는 시커먼 원형 또는 사각의 통로를 포털이라고 부른다. '검색 포털' 같은 말도 정보의 바다로 들어가는 문이라는 뜻으로 쓴 게 아닐까 싶다.
인터넷에 연결되는 기기는 크게 서버와 클라이언트 두 부류로 나뉜다. 서버는 데이터를 저장하고 있으며 다른 기기가 이 데이터에 접근할 수 있게 하는 기기다.
클라이언트는 서버에 접근할 때 필요한 기기다. 각종 디지털 기기의 사용자인 우리가 쓰는 랩탑, 스마트폰, 프린터, 심지어는 스마트 냉장고 같은 기기들이 해당한다.
여담이지만 같은 팀 개발자 동료에게 왜 클라이언트라고 부르는지 물어본 적 있다. 클라이언트라고 하면 가장 먼저 떠오르는 우리말이 '고객'이고, 인터넷 서비스의 고객이라면 사용자여야 할 것 같은데, 우리가 사용하는 대상인 기기를 클라이언트라고 부르는 게 바로 이해되지 않았다. 개발자 동료는 서버를 기준으로, 서버의 관점에서 접근하는 기기라서 클라이언트라고 부르는 것이라고 설명했다.
인터넷에 접근한다는 건 웹페이지나 이메일의 형식으로 제공되는 서버의 데이터에 접근한다는 걸 뜻한다. 이때 필요한 게 인터넷 서버의 주소인 IP 주소다. 고객사 담당자에게 연락하려면 그 사람만의 고유한 전화번호를 눌러 전화를 거는 것처럼 말이다.
그러나 숫자로 된 전화번호를 외우기 어려운 것처럼 사용자가 IP 주소를 외워서 치고 들어갈 수 없을 테니 사람이 기억하기 쉽게 만든 주소가 바로 google.com 이니 swit.io 니 하는 식으로 생긴 URL이다. 숫자로 된 전화번호에 '고객사 김과장'이라는 이름을 붙여 저장하는 것과 비슷하다.
URL을 IP 주소로 바꿔주는 게 DNS다. 예를 들어, 브런치 글을 임시저장할 때마다 로그인을 새로 해야하는 문제를 해결하기 위해 카카오 계정 관련 웹페이지에 가려고 한다면 아래와 같은 과정을 거쳐야 한다.
1. 크롬 웹브라우저 상단 입력창에 URL인 accounts.kakao.com을 친다.
(실은 구글에서 "카카오 계정"이라고 텍스트로 검색 후 해당하는 결과의 링크를 클릭해서 들어갔지만.)
2. 클라이언트인 내 랩탑 컴퓨터가 우리집 ISP인 SK브로드밴드의 네트워크를 통해 DNS 서버에 도달한다.
3. DNS 서버는 내가 입력한 accounts.kakao.com URL에 해당하는 IP 주소를 웹브라우저에 돌려보낸다.
4. 서버가 돌려보낸 IP 주소에 해당하는 '내 카카오 계정' 페이지가 내 웹 브라우저에 뜬다.
이런 과정을 통해 나는 IP 주소를 기억하거나 입력할 필요도 없이 카카오가 웹페이지 형식으로 제공하는 데이터에 접근해서 내용을 볼 수 있는 것이다.
LinkedIn > Learning > Technology for Product Managers 강좌를 바탕으로 정리한 내용입니다.