블록체인의 이해 (1) 서버-클라이언트, P2P 시스템

블록체인의 이해 (1) 서버-클라이언트, P2P 시스템

언젠가부터 아침에 눈뜰 때마다 스마트폰을 집어 듭니다. 단순히 시간을 확인하려고 했다가, 이내 암호를 풀고 뉴스를 듣거나 보는 일이 자연스러운 일상이 되었습니다. 우리는 24시간 인터넷이라는 거대한 네트워크에 연결되어 있습니다. 이런 디지털 세상을 살면서 알아두면 좋을 것들을 하나씩 살펴보고자 합니다. 블록체인부터 시작합니다. 커피 한잔 마시며 세상을 움직이는 거대한 흐름을 이해하는데 도움이 되길 바랍니다.




글의 순서

블록체인 기술의 필요성
카카오톡 메시시로 이해해 보는 서버, 클라이언트 시스템
P2P 시스템 (피투피 또는 peer to peer 시스템)


블록체인 기술의 필요성

우리는 24시간 인터넷이라는 거대한 네트워크에 연결되어 있습니다. 네트워크에 연결하는 기기도 스마트폰, 스마트 워치, 태블릿, 노트북 등 다양합니다. 그만큼 네트워크의 크기는 커지고 있으며, 연결 속도도 빨라지고 있습니다.

제가 눈뜨며 했던 이런 행위 하나 하나는 방문했던 플랫폼 어딘가에 저장됩니다. 디지털 세상은 우리들의 흔적을 저장합니다. 구글이나 애플, 카카오, 네이버 같은 플랫폼 업체는 내가 봤던 영상, 내가 들었던 음악, 내가 봤던 뉴스를 나를 위한 맞춤형 서비스 만드는데 사용합니다. 편리한 세상입니다. 그런데, 나의 모든 행동이 노출되고 저장된다니 걱정 되는 것도 사실입니다. 구글은 나보다 나를 더 잘 안다는 농담 같은 말들이 실제로 현실이 되어 있습니다.

만약 나를 잘 아는 누군가가 네트워크 상에서 나처럼 행동하면 어떻게 될까요? 이때 ‘누군가’는 실제로 사람일 수도 있고, 컴퓨터 시스템일 수도 있습니다. 개인 정보 보호에 대해 심각하게 고민하게 만드는 질문입니다. 이런 상황에서 유용한 기술이 바로 블록체인 기술입니다. 먼저 블록체인 기술을 이해하는데 필요한 기초 지식인 클라이언트 서버 시스템과 P2P 시스템 (peer to peer 시스템) 부터 살펴보겠습니다.




카카오톡 메시시로 이해해 보는 서버, 클라이언트 시스템

만약 우리가 스마트폰에서 카카오톡 앱을 실행시키고, 문자 메시지를 친구에게 보내는 상황을 가정해 보겠습니다. 우리는 카카오톡이라는 컴퓨터에 접속한 것이 됩니다. 카카오톡 서버라는 중앙 컴퓨터에 접속해서 메시지를 남기면, 카카오톡 서버는 문자메시지를 남겼다는 그 사실을 친구의 스마트폰에 알려줍니다. 친구는 카카오톡 앱을 실행시키고, 카카오톡 서버에 접속해서 그 메시지를 확인합니다. 여기서 ‘서버’라는 새로운 용어가 등장했는데요.

서버(server)는 단어의 뜻 그대로 ‘주는 자’를 뜻합니다. 정보를 제공하거나 정보제공과 관련된 작업을 수행하는 컴퓨터 시스템입니다. 주면 ‘받는 자’가 생기는데, ‘받는 자’를 클라이언트(client)라고 합니다.

따라서, 카카오톡 메시지를 보내는 우리의 스마트폰은 클라이언트 시스템인 것입니다. 클라인언트 시스템은 서버 시스템과 연결하여 작업이나 정보를 서버에게 요청하고, 그 결과를 돌려받는 컴퓨터 시스템입니다.


P2P 시스템 (피투피 또는 peer to peer 시스템)

앞서 서버, 클라이언트 시스템을 알아봤는데요. 이에 대응되는 개념이 P2P 시스템입니다. P2P는 Peer-to-Peer를 간단히 쓸 때의 표현법인데, peer의 영어 단어 뜻은 또래입니다. 인터넷에서 영화나 음악을 받아본 적이 있으신가요? P2P는 주로 영화나 음악 같은 멀티미디어 파일을 서로 공유하는 방식으로 큰 인기가 있었습니다.

서버, 클라이언트 시스템을 주고, 받는 수직적인 연결이라고 할 때, P2P는 컴퓨터 간의 동등한 수평적인 연결을 의미합니다. 수평적으로 연결된 네트워크를 통해 이용자들이 자원을 서로 나누고 공유하는 컴퓨팅이 P2P 시스템인 것입니다. 공유와 나눔이라는 기본 철학이 P2P의 기반입니다. P2P 시스템은 소셜 네트워크를 활용한 협동적 생산이나, 컴퓨터 자원이나 콘텐츠의 공유와 같이 다양한 형태로 활용되고 있습니다.

구글은 효율적이고 빠르게 검색을 진행하기 위해, 수많은 컴퓨터를 병렬로 연결해 처리하는 시스템을 갖추고 있는데, 이와 같은 병렬 컴퓨팅의 기반도 P2P 기술입니다. 물론 우리가 구글이라는 검색 엔진을 사용하는 것은, 카카오톡 메시지를 보내는 것과 같은 서버-클라이언트 시스템을 이용하는 것입니다. 그런데, 구글이라는 서버 자체가 1대가 아니라 100만대가 넘는 컴퓨터로 구성되어 있다는 것입니다.


마치며 …

우리는 인터넷이라는 거대한 네트워크에 연결되어 있습니다. 네트워크에 연결하는 기기도 스마트폰, 스마트 워치, 태블릿, 노트북 등 다양합니다. 그만큼 네트워크의 크기는 커지고 있으며, 연결 속도도 빨라지고 있습니다. 개인 정보 보호 관점에서 특별한 기술이 필요한 세상이 되었습니다. 그 특별한 기술은 바로 블록체인 기술입니다.

이번 포스팅은 블록체인 기술을 이해하는데 가장 기초가 되는 P2P 시스템 (peer to peer 시스템) 을 우리에게 더 익숙한 서버-클라이언트 시스템과 비교하면서 알아보았습니다. 앞으로도 디지털 세상을 살면서 알아두면 좋을 것들을 하나씩 추가해 보겠습니다.

이번 포스팅이 커피 한잔 마시며 세상을 움직이는 거대한 흐름을 이해하는데 기초지식이 되길 바랍니다.



함께 참고하면 좋은 글 :
블록체인 세상에서 사기 당하지 않기 위해 필요한 단 2가지
블록체인의 이해 (2) 서로 다른 세 개의 표현으로 이해하는 블록체인 개념
이진수 데이터. 디지털 컴퓨터와의 소통 수단


참고자료

[1] [네이버 지식백과] P2P (컴퓨터 역사, 2013. 2. 25., 백욱인)
[2] 한경현, 황성운 (2018). “블록체인 소개.” 정보과학회지 제36권. 제12호, pp.11~16.
[3] 블록체인이 불러올 혁신은 무엇인가?(2019), ETRI WEBZINE

Leave a Comment