본문으로 건너뛰기

P2P

P2P란 무엇인가

P2P는 ‘피어 투 피어(peer-to-peer)’를 줄인 말입니다. 우리말로 옮기면 동료끼리 직접 주고받는 방식이라고 할 수 있습니다.

P2P는 동료 노드 사이에서 정보를 주고받는 통신 방식입니다. 분산은 기능이나 데이터가 여러 컴퓨터에 나뉘어 있는 성질을 가리킵니다. 두 개념은 관련될 수 있지만 항상 같은 것은 아닙니다. 분산 시스템에도 중앙 운영 주체가 있을 수 있고, P2P 통신도 일부 중앙 서비스에 의존할 수 있습니다.

중개자를 거치지 않는 직접 연결

옆자리 친구에게 계좌로 돈을 보낸다고 생각해 보겠습니다. 두 휴대전화가 나란히 있어도 서로 직접 돈을 주고받지는 않습니다. 각자의 휴대전화가 은행에 연결되고, 은행의 컴퓨터가 거래를 처리합니다. 손을 뻗으면 닿는 거리인데도 돈은 제삼자의 컴퓨터를 거쳐야 건너갑니다.

지폐는 다릅니다. 만 원짜리 한 장은 손에서 손으로 건네면 됩니다. 누구에게 알리거나 허락을 부탁할 필요가 없습니다. 돈이 디지털 형태가 되면서 사라진 이 직접 건네는 감각을 온라인에서 되살리는 것이 P2P 구조가 던지는 질문입니다.

우체국으로 편지를 보내는 과정과 비교해 볼 수도 있습니다. 봉투는 우체통에서 분류소로, 분류소에서 집배원에게 넘어갑니다. 온 동네의 편지가 분류소라는 한 지점을 지나므로, 그곳이 문을 닫으면 편지 전달이 함께 멈출 수 있습니다.

손편지는 다릅니다. 옆집 친구에게 쪽지를 건넬 때는 내 손에서 친구 손으로 바로 갑니다. 허락받을 창구도, 기다릴 줄도 없습니다. 비트코인 네트워크에서 P2P 통신은 중앙 승인자를 거치지 않고 참여한 컴퓨터들이 서로 정보를 전달하는 방식으로 작동합니다.

멀리 있는 참여자에게 전달하는 방법

지구 반대편에 있는 사람에게 손편지를 직접 쥐여 줄 수는 없습니다. 그래서 비트코인과 같은 P2P 네트워크에서는 이웃이 이웃에게 정보를 릴레이로 전달합니다.

내 컴퓨터가 거래를 만들어 가까운 이웃 컴퓨터에 알리면, 이웃 컴퓨터가 다시 자기 이웃에게 알립니다. 이런 전달이 몇 차례 이어지면 거래 정보가 네트워크 전체로 퍼집니다. 비트코인 네트워크에서는 릴레이를 담당하는 컴퓨터가 중앙 승인자의 특별한 허가를 받아야 하는 구조가 아닙니다.

비트코인 네트워크의 모양

비트코인 네트워크에는 전 세계의 수많은 컴퓨터가 참여하고, 각 컴퓨터는 여러 이웃과 연결을 맺습니다. 일반적인 인터넷 서비스에는 가운데에 회사의 서버가 있고, 사용자는 손님으로 그 서버에 접속합니다.

비트코인 네트워크에는 그런 본부 서버가 없습니다. 참여한 컴퓨터들은 같은 규칙 아래 서로 연결됩니다. 이를 그림으로 나타내면 중앙화된 서비스는 가운데의 큰 점 하나에 모두가 연결된 별 모양에 가깝고, 비트코인 네트워크는 가운데가 비어 있고 점들이 서로 얽힌 그물 모양에 가깝습니다.

별 모양은 모든 길이 한 곳만 지나므로 관리가 간단합니다. 대신 그 한 곳이 급소가 됩니다. 그물망에는 특정한 가운데가 없습니다. 한 연결이 막혀도 다른 연결을 통해 돌아갈 수 있습니다.

어느 지역에 큰 정전이 나서 그곳의 컴퓨터가 모두 꺼졌다고 해 보겠습니다. 중앙의 한 점에 의존하는 구조라면 가운데가 꺼지는 순간 전체가 멈출 수 있습니다. 비트코인 네트워크의 그물망에서는 남은 컴퓨터들이 남은 연결을 통해 계속 서로를 찾을 수 있습니다. 꺼졌던 컴퓨터가 다시 켜지면 이웃에게 그동안의 기록을 받아 네트워크를 따라잡을 수 있습니다.

중개자가 없어도 질서는 유지됩니다

중개자가 없으면 무법지대가 되는 것 아니냐는 의문이 생길 수 있습니다. 그러나 비트코인 네트워크에서 사라지는 것은 확인하는 일이 아니라, 확인을 독점하는 한 곳입니다.

은행 같은 중앙 중개자 대신 비트코인 네트워크의 참여자들이 각자 같은 규칙집으로 거래를 검사합니다. 규칙에 어긋난 거래는 이웃 컴퓨터들이 받아들이지 않고, 다음 이웃에게 전달하지도 않습니다. 한 곳의 문지기가 맡던 일을 네트워크의 여러 참여자가 나누어 하는 것입니다.

따라서 비트코인 네트워크에서 P2P는 질서를 버리는 방식이 아닙니다. 질서를 지키는 담당자를 한 곳에서 여러 참여자로 넓히는 방식입니다.

P2P 방식의 대가

비트코인 네트워크에서 중앙 승인자 없이 거래를 검증하는 방식에는 대가도 있습니다. 잘못 보낸 돈을 되돌려 달라고 부탁할 중앙 창구가 없고, 문제가 생겼을 때 책임을 물을 단일한 상대도 없습니다.

이는 편리한 중개자를 내주고 한 곳이 멈춰도 이어지는 성질을 얻는 맞바꿈입니다. 비트코인 네트워크에는 주말이나 점검 시간이 따로 정해져 있지 않고, 네트워크를 내릴 본부나 전체를 끌 스위치도 없습니다.

이 그물망은 중앙 운영자 없이 거래 정보를 전달하는 비트코인의 구조를 떠받칩니다. 참여자 간 직접 전달이라는 통신 방식과 중앙에 의존하지 않는 그물 모양은 서로를 보완합니다.

P2P는 동료 노드 사이에서 정보를 주고받는 통신 방식이고, 분산은 기능이나 데이터가 여러 컴퓨터에 나뉘어 있는 성질입니다. 비트코인 네트워크는 P2P 통신으로 거래 정보를 이웃에서 이웃으로 릴레이하고, 여러 참여자가 같은 합의 규칙에 따라 각자 거래를 검증합니다. 확인하는 일은 남아 있지만 확인을 독점하는 중앙 승인자는 두지 않는 구조입니다.

관련 개념은 중앙화와 탈중앙화에서 이어서 볼 수 있습니다.

링크 복사하기X에 공유페이스북에 공유쓰레드에 공유