부제목: RAM의 임대시장 및 공매도 시장의 도입
1. 목적
이 글은 RAM 무단점유(RAM squatting) 문제에 관한 것으로서, 우리는 EOS 플랫폼에서 램 자원을 필요한 dApp 개발자들에게 저렴하게 분배하기 위해, 기존 실물 시장과 함께 운영되는 1) 임대 시장과 2) 공매도 시장을 새로 도입할 것을 제안합니다.
2. 현재 RAM 공급 모델의 단점
램 자원 문제가 중요한 이유는 EOS가 다양한 dApp(분산앱)을 운영할 수 있는 플랫폼이기 때문입니다. dApp 플랫폼은 다양한 dApp들이 큰 비용 부담 없이 실험적으로 또는 실제적으로 dApp을 운영할 수 있는 개발 환경을 제공하는 것을 목적으로 합니다. 이를 통해서, 더 많은 킬러 앱이 등장할 가능성이 증가합니다.
2.1 현재 RAM 실물 시장의 문제점
현재 EOS 메인넷은 BP들이 제공한 RAM 자원을 분배하기 위해 실물 시장을 사용합니다. 하지만 아래의 그림 1과 같이 램의 가격은 매우 높을 뿐 아니라 변동성도 매우 심합니다. 특히 그림 1은 현재 램 실물 시장에서 투기가 매우 극심하게 일어나고 있다는 것을 단적으로 보여줍니다.
그림1에서 램의 피크 가격은 메인넷 런칭 당시의 초기 가격 대비 약 55배 상승했으며, 놀랍게도 이것은 단지 14일 동안 발생한 것입니다. 그리고 만일 EOS의 가격을 8달러(9,000원)로 가정할 경우, 런칭 후 약 한 달 후인 2018.7.16일의 램 1GB 가격은 약 2백만 달러(약 22억 원)로 너무 높습니다.
2.2 높은 램 가격의 문제점: 램 가격과 dApp 플랫폼의 trade-off 관계
하지만, 이와 같이 높은 램 가격은 dApp 개발자의 진입 비용을 크게 증가시킵니다. 가장 중요한 것은 높은 램 가격과 분산앱 활성화는 trade-off 관계에 있다는 것입니다. 다시 말하면, 램 가격이 더 비싸질수록 dApp 개발자들의 램 구매 비용을 더욱 증가시키고, 이 때문에 램 가격이 올라갈수록 dApp 플랫폼의 활성화는 더욱 어렵게 됩니다. 따라서, dApp 플랫폼으로서 EOS의 역할을 크게 제한할 수 있는 근본적인 문제를 발생시킵니다.
그리고 그림 1에서 RAM 가격의 급격한 상승 원인은 주로 1) 투기자와 2) dApp 개발자들이 낮은 가격에 램을 먼저 선점했기 때문에 발생했을 것으로 추정됩니다. 왜냐하면, 구매한 램의 실제 사용률이 약 1~2%로 매우 적기 때문입니다.
2.3 적은 가용한 램 사이즈 문제
EOS 메인넷은 가용한 램 사이즈를 64GB로 설정 후에 런칭하였고, 약 2주 전에 매 블록당 1kB씩 램 용량을 증가시키는 방법을 새로 도입했습니다. 링크
하지만, 만일 처음부터 메인넷에서 가용한 RAM을 1TB를 제공했다면, 64GB의 램은 이것의 약 5%에 해당할 정도로 매우 작은 용량입니다. 실제로 많은 용량의 램을 한 번에 제공할 수 있음에도 불구하고 왜 램 용량을 적게 설정했을까요?
우리는 이와 같은 램 공급방법이 단지 메인넷 런칭 초기에 램에 대한 투기 또는 선점을 막고, 나중에 구매하는 램 수요자에게 낮은 가격으로 램을 분배하기 위한 목적이라고 생각합니다. 하지만 다른 목적도 있을 수는 있지만 EOS가 dApp 플랫폼이기 때문에, 우리는 램 자원은 dApp 플랫폼의 활성화를 위해서 최대한 많은 램, 적어도 1TB 이상을 네트워크에 공급하는 것이 더 좋다고 생각합니다. 이에 따라 BP들에 현재보다 보상을 더 제공해야 할 수 있습니다. 이에 대한 것은 우리가 제안한 장비보상을 참조하시기 바랍니다. 장비보상은 아래의 참조4를 참조하시기 바랍니다.
현재 상황을 정리하면, 현재 메인넷에서 램에 대한 투기를 줄이기 위해, 1) 시장에서 구매한 램은 자신만 사용하고, 2) 초기 가용한 램 사이즈를 매우 작은 64GB로 설정하고, 3) 블록당 가용한 램을 1kB씩 계속 증가시키고, 4) 램의 임대 시장을 거부하는 매우 소극적인 램 분배 방법을 사용합니다. 하지만 이런 방법으로 실물 시장에서 투기를 막을 수 없고, 실사용자에게 효율적으로 램을 분배하지 못한다는 증거는 이미 그림 1에서 확인할 수 있습니다.
3. 램 자원 분배의 원칙
이와 같은 문제점을 해결하기 위해, 우리는 램 사용자들에게 저렴하고 효율적으로 램 자원을 분배하는 원칙을 아래와 같이 제시합니다.
1) 실제 램 사용자에게 램 자원이 주로 분배되도록 합니다.
2) 램 자원의 가격을 최대한 낮추어서 플랫폼을 활성화시킵니다.
3) EOS가 플랫폼의 역할을 수행하도록 램 자원을 충분히 공급합니다.
따라서 이 글은 BP들이 제한적으로 제공하는 램 자원을 램 사용자들에게 “저렴하고 효율적으로 분배“하는 것을 목적으로 합니다.
4. 새로운 효율적인 램 자원 분배 방법
우리는 이런 목적을 이루기 위해, 램의 실물 시장과 함께 1) 램 임대 시장과 2) 공매도 시장을 함께 운영하는 방법을 제안합니다. 단, 아래의 모든 예들에서 특별한 언급이 없으면, 시장의 거래수수료는 0.5%를 부과하고 시장의 가격은 뱅코 알고리즘(Bancor Algorithm) 또는 년 이율 등으로 결정합니다. 이에 대한 것은 참고 1을 참고하시기 바랍니다.
4.1 램 임대 시장의 도입
이 방법에서는 가용한 램을 구매할 수 있는 실물 시장과 구매한 램을 빌려줄 수 있는 임대 시장으로 구성합니다. 이 방법은 실물 시장에서의 램 구매자가 구매한 램을 임대 시장에서 빌려주고 수익을 얻습니다. 참고로 현재 EOS 메인넷에서는 램 구매자들이 다른 계정에게 자신이 구매한 램을 빌려줄 수 없습니다.
임대 시장이 현재의 문제를 개선하는 구체적인 원리는 아래와 같습니다.
실물 시장에서 투기 등에 의한 램의 수요가 많아질수록 사용하지 않는 램이 증가하게 되고, 이것은 임대시장에 공급되는 램의 공급을 늘려주게 됩니다. 즉, 실물 시장의 투기가 증가할수록, 임대 시장에 램의 공급이 증가하여 램 가격은 하락하게 되는 것이 핵심 원리입니다. 따라서 임대 시장은 실물 시장에서 램에 대한 투기를 이용하여 램의 임대 가격을 낮추는 좋은 방법입니다.
참고로 한국에서 건물의 매매 가격 대비 월 단위의 임대 가격은 일반적으로 약 1/100 정도로 정해집니다. 따라서 임대 시장은 dApp 개발자의 테스트 비용을 크게 절약할 수 있는 방법입니다.
4.1.1 램 임대시장의 구현 방법
임대시장의 구현 방법의 예는 아래와 같습니다.
1) 램을 빌리는 임차인(renter)
1.1) 임차인(renter)의 계좌에 일정량의 EOS 토큰을 미리 넣어둡니다.
1.2 임차인은 임대 시장에서 예로, 일 또는 월 단위로 정해진 수량의 램을 미리 빌립니다.
1.3 이때 임차인은 임차 기간을 ‘일정 기간’ 또는 ‘계속’으로 설정한 후 빌린 램을 사용합니다.
1.4 만일 임대기간을 ‘계속’으로 선택하고 해당하는 계좌에 결재하기 위한 충분한 EOS 토큰이 존재한다면, 임대 시장에서 매 결재일마다 자동적으로 정해진 수량의 램을 빌리고, 해당하는 dApp은 빌린 램을 계속 사용할 수 있습니다.
2) 램을 임대시장에 제공하는 임대인(lender)
2.1) 램 임대인(lender)은 자신이 구입한 램 중에 빌려주기를 원하는 크기의 램을 지정하여 이를 임대시장에 제공합니다.
2.2) 임대 시장은 임대인들이 제공한 램들을 임대인의 구분 없이 임차인들에게 뱅코 알고리즘으로 가격을 결정하여 분배하고, 이 가격은 임대인의 수익이 됩니다.
이와 관련하여, 댄 라리머는 CPU/Net의 임대 시장을 발표했지만, RAM의 임대 시장은 고려하지 않는다고 말했습니다. 링크
4.2 램 공매도 시장: 양방향 매매를 허용하여 RAM 가격을 안정화시킴
이 방법은 실물 시장과 투기로 인한 가격 상승을 막기 위해 가격이 하락할 때 이익을 얻는 공매도 시장으로 구성됩니다. 실물 시장에서 램을 구매한 실구매자는 이것을 공매도 시장에서 공매도 구매자에게 빌려주어 수익을 얻을 수 있습니다.
공매도 시장은 아래와 같이 운영됩니다.
1) 실물 시장에서 램 실구매자는 공매도 시장에 자신이 구매한 램을 공매도 구매자에게 빌려주고, 그는 이에 대한 수익을 얻습니다. 이 시장의 가격은 뱅코 알고리즘으로 정할 수 있고, 거래 수수료는 예로 0.5%로 정할 수 있습니다.
2) 공매도 매수자는 자신이 공매도 시장에서 빌린 램을 실물 시장에 공매도로 판매할 수 있습니다. 이 방법은 앞에 제안된 임대 시장과 같이, 공매도 시장에서 빌리는 기간을 ‘계속’으로 설정할 수 있습니다.
또한 이 방법은 실물시장 + 공매도 시장 + (위의 예에 언급한) 임대시장으로 구성할 수 있습니다. 이 경우 dApp 개발자들은 임대 시장을 통해서 저렴한 가격에 램을 빌려서 사용할 수 있기 때문에, 우리는 해당 방법을 적극 추천합니다.
하지만 우리는 램을 위한 선물시장은 고려하지 않고 있습니다. 왜냐하면 실물시장 + 선물시장으로 구성되면 선물시장이 실물 시장에 연동되어서 투기를 위해 선물 투자자가 실물시장을 교란할 수 있기 때문입니다.
위의 예에서 나온 숫자들은 예에 불과하며, 커뮤니티에서 이에 대한 논의가 이루어지기를 바랍니다. 모든 시장에서 거래 수수료가 부과될 수 있습니다.
5. 결론
우리는 가장 귀한 자원인 램 자원의 가격을 낮추어 dApp 플랫폼을 활성화할 수 있는 2가지 방법을 제안합니다. 즉 현재 메인넷에서 운영되는 램 실물시장에 1) 임대시장과 2) 공매도 시장을 함께 운영합니다. 이를 통해 1) dApp 개발자는 임대 시장을 통해 램 자원을 저렴하게 구매할 수 있을 뿐 아니라, 2) 실물 시장은 공매도 시장을 통해서 가격의 안정을 이룰 수 있습니다.
참고 1. 시장에서의 가격 결정방법: Bancor algorithm
그림2는 임대시장과 공매도시장에서 뱅코 알고리즘에 의한 가격 결정방법의 예를 보여줍니다. 이것은 커넥터 무게(connector weight)인 CW가 50%일 때 공급에 대한 가격을 보여줍니다. 그림 2의 경우, 시장에서의 가격은 선형으로 결정되고, 예로 시장에서 가격은 연 이율 5 ~ 10%로 결정할 수 있습니다.
참고 2. 자발적 인프라 확장(SIG)
우리는 이미 램 무단점유 문제를 해결하기 위해 사이드체인(멀티체인)을 통한 무제한적인 램 공급방법을 제안했습니다. 우리는 이것을 자발적 인프라 확장(Self-motivated Infrastructure Growth, SIG)라고 부릅니다.
참고 3. 스테이크 방법에 적용
램 자원을 분배하는 방법은 dawn 4.0에서 기존의 스테이크 방법에서 현재의 시장 방법으로 변경되었다. 스테이크(예치) 방법은 뱅코 알고리즘을 사용하여 램 자원을 분배합니다. 구체적으로 이것은 홀더가 램 자원을 얻기 위해, 동일한 개수의 EOS를 스테이크 할 때 램 자원이 많이 남아 있을수록 더 많은 램 자원을 획득하도록 가격을 조정합니다.
즉, 현재의 램 시장은 램의 시장 가격에 따라 램의 매수/매도 시점에 따라 매도 후 돌려받는 EOS의 개수가 달라집니다. 이와 달리, 스테이크 방법은 스테이크를 해서 램을 획득한 후 이를 다시 매도할 때 같은 개수의 EOS를 돌려받게 된다. 이것이 이 두 방법의 차이점이고, 똑같이 뱅코 알고리즘을 사용하여 램 자원을 분배합니다. 다시 말하면, 판매할 수 있는 램 자원이 부족할수록 동일한 EOS로 구매하는 램의 사이즈가 작아집니다.
우리는 위의 2가지 램 분배 방법 중에서 투기자들의 관심을 덜 끌 수 있는 스테이크 방법을 좋아하지만, 이것은 투기자의 진입을 억제할 수 있어서 임대 시장의 활성화를 막을 수 있습니다.
우리는 램을 스테이크 방법으로 분배하는 것에 관심이 있고, 위에 언급한 임대 시장과 공매도 시장을 동일하게 스테이크 방법에 적용할 수 있습니다. 또한 우리는 이미 이에 대한 글을 작성하였습니다. 링크
참고 4. 우리가 제안한 BP 보상방법
우리는 현재의 BP 보상 방법의 문제점을 개선하기 위한 장비보상을 기반으로 한 새로운 BP 보상방법을 제안했었습니다. 이것은 대기자 BP들(standby BPs)이 메인 BP들(active BPs)과 비슷한 수준의 장비(infrastructure)를 유지하도록 장비보상을 포함합니다. 링크
램뿐만아니라 CPU도 문제가 많은것 같습니다 현재 block twitter 계정에서 쉴새 없이 메시지를 날려서 cpu도 5배 정도 비싸졌습니다.....
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
좋은 의견을 주셔서 감사합니다.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit