[EOS 100% 활용하기#7] EOS의 3대 자원: CPU,NET,RAM
암호자산 성공투자 꿈나무 이글아이(@eaglekeeneye) 입니다.
이번 글은 지난 글에 이어진 이야기입니다. 아래의 링크부터 차례로 먼저 읽고 오시길 권장 드립니다.
[EOS 100% 활용하기#1] EOS를 매수 해놓고 아무것도 안 하면 손해인 이유
[EOS 100% 활용하기#2] Buy community, not a token
[EOS 100% 활용하기#3] EOS 홀더를 위한 간단 블록체인 상식
[EOS 100% 활용하기#4] EOS 커뮤니티와 생태계 간단 소개
[EOS 100% 활용하기#5] 플랫폼 tool 소개, EOS 계정생성과 계정보안
[EOS 100% 활용하기#6] 계정보안과 보안사고시 조치방법
0) 이야기 순서
이 글에서는 EOS 홀더로서 꼭 알아야 할 가장 중요한 "EOS 자원"이라는 개념을 설명할 것입니다. 이 개념을 알고 모르고의 차이가 EOS 홀더가 거래소에 두고 아무것도 안 하는지 혹은 개인 지갑에 두어 적극적으로 자산증식을 하는지를 결정하게 된다고 해도 무방합니다.
우선 EOS 블록체인 위에 구동하게 될 dApp(decentralized Application, 탈중앙화 구동 애플리케이션)에 필수적으로 필요한 "1) CPU/NET/RAM의 역할" 에 대해 설명하겠습니다.
마지막으로 "2) Ethereum 과 EOS의 자원의 차이점" 을 비교하고, EOS 개인홀더들이 꼭 알아야 할 "3) 자원의 할당, 확보방법" 에 대한 설명을 하겠습니다.
1)CPU/NET/RAM의 역할
( a ) EOS 플랫폼을 구동하기 위한 자원
암호자산 생태계에 관심 없는 대부분의 투자자는 가지고 있는 토큰을 "화폐" 로 흔히들 인식합니다. 하지만, 개발자와 이용자(암호자산 생태계에 익숙한 투자자들을 포함한)는 토큰을 "플랫폼을 구동하기 위해 필요한 자원" 으로 인식합니다.
신뢰할 수 없는 환경에서 블록체인 위에서 거래내역과 스마트 계약을 신뢰할 수 있는 노드가 기록할 수 있게 하고, 그 노드가 생태계를 유지하는 데에는 비용이 드니까 암호화 자산으로 보상을 합니다.
이런 이유로 블록체인은 신뢰할 수 있는 분 산화된 컴퓨터 라고도 부릅니다.
EOS 플랫폼도 마찬가지입니다. EOS 위에 EOS dApp을 구동하기 위해 컴퓨팅 자원을 사용해야 합니다. 가장 대표적으로 떠올리는 예는 송금, Stake/Unstake 같은 활동하는 데에 자원을 사용합니다.
Google에 비유하자면 스마트폰에 깔린 안드로이드 OS(Operating System) 위에 Appstore에서 사람들이 자신들이 쓰고 싶은 App 을 다운로드 받아쓰기도 하고, App 개발을 할 수 있으면 자신이 개발한 App 을 Appstore 에 올려서 배포할 수 있습니다. 그리고 대부분의 App 은 무료로 다운 받을 수 있으며, 주 수익원은 광고 수익입니다.
EOS 플랫폼 역시 EOS라는 OS(Operating System) 위에서 dApp 개발사의 dApp(decentralized Application)이라는 소프트웨어를 자유롭게 올리고, 이용자들이 이용하고 있습니다. 생태계가 더욱 성장하면 많은 기업형(Enterprise) 블록체인 소프트웨어가 탄생하거나 편입할 것입니다.
그래서 EOS는 Enterprise Operating System 입니다.
( b ) EOS CPU/NET/RAM의 의미
CPU, NET, RAM의 의미를 아래의 도표로 정리해보았습니다.
자원 | 설명 |
---|---|
CPU | dApp 구동을 위해 필요한 데이터 처리 연산력 |
NET(Bandwidth) | dApp 구동시 한번에 처리할 수 있는 데이터 처리량 |
RAM | dApp 이 구동될 때 일시적으로 보관할 수 있는 공간 |
컴퓨터에 익숙하지 않은 사람들(저를 포함해서)은 위의 정의가 잘 이해가 가지 않을 것입니다. 그래서 동일하지 않지만 대략적인 이해를 위해 EOS 자원을 놀이공원의 자유이용권으로 비유해 보겠습니다.
놀이공원에 있는 각각의 놀이기구를 dApp이라고 상상해봅시다. dApp에 따라 다르겠지만 구동할 때 자신들의 자원을 사용하게 하거나, 이용객의 자원을 소진지 시킬 수도 있습니다. 빠른 회전율 그리고 적은 인원 수용력의 놀이기구, 즉 한번 탑승할 때 빠르게 끝나는데 한 번에 많이 못 타는 놀이기구는 롤러코스터가 대표적일 것입니다. 그래서 항상 롤러코스터를 타기 위해 긴 줄을 서야 합니다. 반대로 한 번에 많이 수용할 수 있는 놀이기구로 바이킹이 있을 것입니다.
이처럼 dApp 이 많은 양의 CPU를 확보했다면 그 놀이기구의 회전율이 빠르다라고 할 수 있으며, 많은 양의 NET을 확보했다면 그 놀이기구의 인원 수용력이 크다라고 할 수 있습니다. 여기서 RAM을 놀이공원에 비유하면 놀이기구를 이용한 내역을 저장하는데 드는 행정비용이라고 할 수 있겠습니다.
다만 현실 세계상에서 놀이기구는 전기료나 기구 유지비용이 더 들겠지만, 블록체인상에서 dApp에 저장한 데이터를 검증하고 블록에 올려야 하므로 이것이 바로 비싼 유지비용이 됩니다. 이용자들이 dApp을 이용할 때 RAM을 이용자가 소비할지, dApp에서 준비한 RAM으로 소비할지 여부는 dApp 개발사의 정책에 따라 다릅니다.
보시다시피 놀이공원에는 사람들이 붐빌 수도 있고, 그렇지 않을 수 있습니다. 개인계정에 EOS를 Staking 하면 그 양만큼 CPU와 NET 자원을 받으며, 소비되는 자원이 아니라 시간이 지나면 회복이 되는 자원을 할당받습니다. 누군가가 악의적으로 쓸모없는 트랜잭션을 발생시킨다면 CPU에 과부하가 걸릴 수밖에 없습니다. 평소에는 놀이공원이 한산했다가 CPU 사용량이 너무 많으면 사람들이 너무 붐벼서 (본인의 CPU 할당량이 너무 적다면) 타고 싶은 놀이기구도 못 이용하는 상황이 되는 것입니다.
아래의 링크는 한국 BP EOSYS팀이 EOS 메인넷 출시 시기에, CPU/NET/RAM에 대한 개념을 설명한 글입니다. EOS 자원에 대한 개념을 조금 더 자세하게 알고 싶으시면 읽어 보시길 권합니다.
2)Ethereum 과 EOS의 자원의 차이점
Ethereum을 이용해보신 분들은 아시겠지만, 이더리움이나 이더리움 기반이 토큰 (ERC-20)을 송금할 때는 일정량의 'gas'라는 수수료가 소비됩니다. 비트코인을 송금할 때 수수료는 비트코인인데, 이더리움을 송금할 때는 가격의 안정성을 위해서 소량의 이더리움을 소비하여 'gas'라는 개념을 도입하였습니다.
이더리움의 스마트 계약을 실행하기 위해서 컴퓨팅 자원을 사용하는데, 만약 악의적인 공격자가 쓸모없는 계약을 무한정으로 돌리도록 한다면 시스템에 과부하가 걸릴 것 입니다. 이더리움은 무료로 계정을 생성할 수 있어서 계정을 무한정으로 만들어서 여러 계정이 악의적으로 시스템을 과부하를 걸도록 만들 수 있습니다. 이것을 방지하고자 계약을 돌릴 때 gas 최대사용량(gas limit)을 걸어두었으며, 계약 실행마다 gas를 소비하도록 설계되었습니다. 시스템에 과부하를 걸면 경제적인 피해를 감수하도록 설계한 것입니다.
지금 우리가 사용하고 있는 스마트폰을 이더리움 시스템이라고 상상해 봅시다. 스마트폰 App을 다운받는데 수수료를 쓰고, App을 구동하는 버튼마다 수수료가 들어간다면 어떨까요? 거기다가 이더리움은 정해진 수수료가 없으며 dApp 을 빨리 구동시키고 싶으면 가위(gwei)값을 올리고, 느려도 상관없으면 gwei 값을 낮게 책정하는 등 이용자가 스스로 수수료를 정해야만 계약을 실행할 수 있습니다.
EOS 플랫폼은 이러한 문제를 해결할 수 있습니다. EOS의 계약을 실행하는 데에 필요한 컴퓨팅 자원은 EOS BP 투표로 선출된 BP의 컴퓨팅 지원을 사용하기 때문입니다. 그래서 계약 실행 시 수수료도 없어서 이용하기 편리합니다. 거래 검증 또한 선출된 21개의 BP 들만이 검증하기 때문에 거래속도도 빠릅니다.
EOS 이용자는 Staking 된 EOS량에 비례하여 CPU와 NET 자원을 할당 받습니다. 악의적인 이용자가 시스템에 과부하를 걸기 위해서 매우 많은 양의 EOS를 Staking 해야 합니다. 현재도 EOS 커뮤니티에서도 CPU를 많이 사용해서 다른 일반 이용자가 이용하는 데에 지장이 생기는 문제가 존재하며, BP 들이 CPU를 늘리거나 많은 이용자가 EOS를 더 Staking 하도록 REX 도입에 대한 제안들이 오고 가고 있습니다.
쉽게 정리하면 Ethereum 플랫폼은 이용자가 Ethereum 블록체인상에서 송금이나 dApp 이용할 때마다 수수료를 부과하는 방식입니다. 반면에 EOS 플랫폼은 이용자가 EOS 블록체인상에서 송금이나 dApp 을 이용할 때, 이를 이용하기 위한 자원을 한 번만 Staking 해 놓으면 사용이 가능한 방식입니다.
3)자원의 할당, 확보방법
( a ) EOS 계정의 CPU/NET/RAM 할당현황
EOS 의 CPU, NET, RAM 자원의 상황을 bloks.io에서 확인해보겠습니다.
위의 이미지처럼 Scatter 로그인을 진행하고 Account의 현황을 확인합니다.
왼쪽에는 EOS 잔고가 있으며, 0.1 EOS의 CPU와 0.01 EOS의 NET이 Staking 되어있는 것을 확인할 수 있습니다. 그리고 오른쪽에는 RAM, NET, CPU 자원의 현황을 알 수 있습니다.
계정생성 당시에 지불했던 2,000원은 위의 자원을 구입한 비용이 포함되어있었던 것이었습니다.
( b ) EOS 계정의 자원 확보 방법
( i ) CPU/NET 자원 확보
CPU와 NET 자원은 EOS를 Staking 함으로써 얻을 수 있습니다. [bloks.io/wallet] (https://www.bloks.io/wallet)에서 EOS를 스테이킹 하는 방법은 간단합니다.
'List of Tools' 를 들어가서 Stake/Unstake 를 진행할 수 있도록 합니다. 그다음에는 자원의 소유권을 갖되 임대를 할 계정인 'Owner of Stake' 와 자원을 임차하려는 계정인 'Receiver of Stake' 를 작성합니다.
만약 자기 계정에 Staking을 하려면 2개 계정 모두 같은 계정으로 쓰시면 됩니다. 이 둘을 굳이 구분하는 이유는 다른 계정에서 Staking을 하고 자원을 빌려줄 수 있게 할 수 있기 때문입니다.
( ii ) RAM 자원 확보
RAM 자원은 많은 EOS 홀더들에게도 생소한 자원일 것입니다. 왜냐하면 dApp 을 구동하는 데에 CPU를 주로 사용하고 RAM 자원을 사용하기도 하지만, 일반 홀더 입장에서 송금을 주로 한다면 RAM을 사용할 일이 많이 없기 때문입니다.
물론 RAM 사용을 전혀 안 하는 것은 아닙니다. BP 들에게 새로 투표할 때, EOS를 Unstaking 할 때 소량의 RAM이 필요합니다. 그리고 중요한 점은 RAM 자원은 임대를 하는 개념이 아니라, 개인 계정의 기록을 블록체인상에 올리는 것이기 때문에 소비되는 자원이라는 점입니다.
그렇기 때문에 EOS 체인 상에 RAM을 사고 팔 수 있는 마켓이 존재합니다.
앞서 소개해드린 1)eoshub, 2)Bloks, 3)EOSTOOLKIT, 4)MyEOSKit 모두 RAM 마켓 기능을 제공합니다. 여기서 원하는 만큼의 램을 사고팔 수 있습니다.
하지만, RAM 의 가격의 추이를 관찰하시면서 매수/매도 하시면 싶으시면 feexplorer에서 거래하는 것을 추천드립니다.
위의 이미지를 보시면 1) 로그인 상태에서 Scatter와 연동을 해놓으시면 2) 계정의 자원 현황을 조회하실 수 있습니다. CPU/NET 그리고 RAM 자원 모두 보여주지만, RAM 자원을 EOS로 환산하여 보여주는 점이 편리합니다.
3) 거래차트와 RAM 공급량 에서 RAM의 가격차트를 보여주고 총 RAM의 공급량(83.37GB) 중 EOS 내에 모든 계정이 보유한 RAM의 량(46.21GB)를 보실 수 있습니다.
마지막으로, 4) EOS / RAM 거래란에서 RAM을 EOS로 매수/매도할 수 있습니다.
RAM 마켓은 일반적인 자산거래방식과 다릅니다. 보시다시피 거래 매수/매도 호가 창이 없는 것을 관찰하실 수 있으신데, RAM 마켓은 Bancor Algorithm을 이용하여 거래 되기 때문입니다. 추후에 기회가 되면 Bancor Algorithm에 대한 소개를 다루겠지만 지금으로선, 현재 차지하는 양/전체 공급량 을 Bancor Algorithm의 수식으로 가격이 정해져서 거래되는 방식으로 이해하시면 되겠습니다.
4) 결론
이번 글에서는 EOS의 3대 자원인 CPU, NET, RAM의 쓰임과 그 개념에 대해 다루었습니다. 이 자원은 임대가 가능하며, EOS 블록체인상에 dApp 을 구동시키기 위해 반드시 필요한 자원이기 때문에 임대/임차 마켓이 형성되었습니다. 최근에 생긴 이 "Chintai" 라는 플랫폼은 EOS BP 들이 이용자들의 생태계 참여를 더 많이 유도하는 취지로 만들었으며 수수료는 없습니다.
다음 포스팅은 EOS 홀더로서 가장 구미가 당길만한 주제인 EOS 고리대금업 입문, Chintai 이용하기 을 다루겠습니다.
긴 글 읽어주셔서 감사합니다.
여러분의 팔로우+업보팅+리스팀은 저에게 힘이 됩니다.
추신
Block.one 에서는 EOS 의 의미를 공식적으로 밝힌적이 없으며, EOS 의 약자로 "Enterprise Operating System", "Everything Operating System", 새벽의 여신 에오스(EOS) 등 추측만 있을 뿐입니다.
따라서 본 글의 EOS 의 의미로 "Enterprise Operating System"라고 얘기한 부분은 오류가 있어 바로 잡습니다.
물론 개인적으로 저는 "Enterprise Operating System" 라는 의미가 더 마음에 듭니다.
이오스는 봐도봐도 어렵네요...
역시 암호자산 투자의 길은 험난한 것 같습니다...
짱짱맨 호출에 응답하여 보팅하였습니다.
짱짱맨은 저자응원 프로그램입니다. 더 많은 저자 분들에게 더 큰 혜택을 드리고자 스파임대 스폰서를 받고 있습니다. 스폰서 참여방법과 짱짱맨 프로그램에 관해서는 이 글을 읽어 주세요. 기업형 예비증인 북이오(@bukio)가 짱짱맨 프로그램을 운영하고 있습니다. 여러분의 증인 보팅은 큰 힘이 됩니다. Vote for @bukio
Congratulations @eaglekeeneye! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
Click here to view your Board of Honor
If you no longer want to receive notifications, reply to this comment with the word
STOP
Do not miss the last post from @steemitboard:
Congratulations @eaglekeeneye! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
Click here to view your Board of Honor
If you no longer want to receive notifications, reply to this comment with the word
STOP
Do not miss the last post from @steemitboard:
Congratulations @eaglekeeneye! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
Click here to view your Board of Honor
If you no longer want to receive notifications, reply to this comment with the word
STOP
Do not miss the last post from @steemitboard: