[제안] RAM 무단점유 해결방법: 무제한적 RAM 공급 모델
1. 목적
우리는 RAM 무단점유 문제의 해결 방법으로 BP들이 무제한적으로 RAM을 공급하여 RAM 가격을 저렴하고 거의 일정하게 제공하는 방법을 제안합니다.
2. 현재 RAM 공급 모델의 단점
블록원(block.one)은 RAM 무단점유 문제(RAM squatting)를 줄이기 위해, Dawn 4.0에서 네트워크의 RAM 공급방법을 스테이크(stake)에서 마켓으로 변경했습니다.[1] 하지만 램 가격은 최초 0.017 EOS/kB에서 2018.6.28.일 현재 0.134 EOS/kB로 약 10일 동안 약 7.88배 상승했습니다. 만일 EOS의 가격을 8달러(8,800원)로 가정할 경우, 당시 램 1GB 가격은 약 1백만 달러(약 11억 원)에 해당합니다. 그림 1의 마켓에서 RAM 가격의 급격한 상승은 투기자의 매수 또는 dApp 개발자의 램 선점에 의해 발생했을 것입니다.
하지만 현재 마켓에 의한 RAM 공급 방법은 누구든지 RAM이 공급되는 시기를 예측할 수 있다면, 이에 대한 투기가 가능한 단점이 있습니다. 또한 다른 예로, 경쟁관계에 있는 dApp 플랫폼에서 EOS를 공격하기 위해 대량의 램을 구매하여 네트워크를 공격을 한다면 이를 방어하기가 매우 어렵습니다.
이와 관련하여 매우 중요한 것은 EOS가 다양한 dApp를 운영할 수 있는 분산앱 플랫폼, 즉 분산 운영체제(OS)이라는 것입니다. 따라서 EOS는 dApp이 활성화될수록 이에 맞추어 메인 BP들이 컴퓨팅 자원을 제 때에 증설해야만 플랫폼으로 잘 운영될 수 있습니다. 이 때문에, BP들이 컴퓨팅 자원을 자발적으로 늘리도록 유도할 수 있는 수단이 필요합니다. 우리는 이것을 자발적 인프라 확장(self-motivated Infrastructure Growth, SIG)이라고 부릅니다. 자발적 인프라 확장에서 가장 중요한 자원은 RAM이기 때문에, 이 글은 RAM 자원에 한정하여 이야기를 하겠습니다.
링크: 자발적 인프라 확장(SIG)
2.1 관련된 이전의 논의
램 무단점유 문제에 대한 논의는 아래와 같습니다.
- 댄 라리머는 램 사이즈를 매블록당 1KB를 증가시키고, 계정이 차지하는 사이즈를 줄이는 방법을 제시했습니다. 링크
- 우리 팀은 램 무단점유 문제(RAM squatting)를 해결하기 위해 램 스테이킹(stake)에서 램 무단 점유자를 퇴출하는 방법을 제안했습니다. 링크
- Evolution은 클라우드 서비스와 비슷한 램 제공 모델을 제안했습니다. 링크
- Greymass는 현재의 마켓의 시장 가격이 특정 변곡점(target inflection point)에서 가격이 하락하도록 설계하여 램 문단점유 문제를 해결하는 방법을 제안했습니다. 링크
3. 램 수요와 분산앱 플랫폼의 trade-off 관계
현재 RAM 마켓의 가장 큰 단점은 투기 등의 다양한 원인에 의해 RAM 가격이 비정상적으로 높아질 가능성이 있다는 것입니다. 하지만 RAM 가격이 비싸질수록, 신규 분산앱의 RAM 구매 비용이 증가하여 분산앱의 활성화를 막게 됩니다. 이것은 새로운 dApp을 운영하기 위한 비용을 크게 증가시킵니다.
결론적으로 현재의 램 마켓에서 높은 램 가격과 분산앱 활성화는 trade-off 관계에 있다는 것을 의미합니다. 이 때문에 이 둘을 동시에 얻기 힘듭니다.
3.1 현재 램 마켓 모델: 수요제한 모델
블록원은 RAM 자원을 분배하기 위해 1) 마켓 방법과 2) 예치(stake) 방법을 제안했었습니다.[1-3] 여기서 중요한 것은 이들이 모두 RAM 자원이 한정되어 있다는 가정을 기반으로 하고 있다는 것입니다. 다른 말로, 이들은 모두 희소한 RAM 자원을 가격에 의해 제한적으로 분배하는 수요제한 모델을 사용합니다. 쉽게 말하면, 이것들은 RAM 공급의 제한, 또는 희소성 때문에 가격을 이용하여 수요를 억제하는 방법을 사용합니다.
4. 자발적 인프라 확장: 무제한 RAM 공급 방법
이를 해결하기 위해, 우리는 수요측면이 아니라 공급측면의 램 자원 제공방법을 이미 제안했습니다. 우리는 이것을 자발적 인프라 확장이라고 부릅니다.
따라서 블록원은 BP들이 램 자원을 자발적으로 증가시키지 않는다는 가정을 했던 것으로 보입니다. 하지만 BP들이 네트워크에 필요한 램 자원을 공급할 때마다 이에 해당하는 충분한 이익을 보장한다면, 이런 가정은 극복할 수 있습니다. 즉, BP들이 컴퓨팅 자원을 증설할 때마다 이익을 얻는다면, 이들은 자발적으로 RAM 자원을 증설하려고 노력할 것이기 때문입니다.
5. RAM을 고정 가격으로 공급하는 방법
이제 우리의 자발적 인프라 확장방법을 이용하여 RAM을 고정된 가격에 공급하는 방법을 제안합니다. 이것은 네트워크에 무제한적인 램을 공급할 수 있기 때문에 가능한 것입니다.
참고로, 블록원은 램 마켓의 시작 가격을 0.018/kB으로 제시했습니다.[1] 만일 EOS의 가격을 8달러(9,000원)으로 가정한다면, 이 경우 램 1GB의 가격은 약 14만 달러(약 1억 5천원)입니다. 이것은 클라우드 서버 비용에 비해서 매우 높은 가격입니다. 하지만, 램 공급을 무제한으로 늘릴 수 있다면, 램 가격은 블록원이 제시한 이런 가격보다 훨씬 낮은 가격에 네트워크에 공급할 수 있습니다.
이때 램 가격은 1) EOS의 일정한 수량 또는 2)일정한 fiat(예, 달러)에 해당하는 EOS를 예치(stake)하도록 정할 수 있습니다. 그러나 첫 번째 방법은 EOS의 가격이 올라가면, 분산앱 개발자들의 비용을 증가시키는 단점이 있기 때문에 우리는 두 번째 방법을 선호합니다. 이 방법은 시간에 상관없이 모든 분산앱이 같거나 비슷한 비용으로 램을 이용할 수 있게 합니다. 만약 이렇게 된다면, EOS는 다양한 분산앱이 운영되는 환상적인 분산앱 플랫폼이 될 수 있을 것입니다.
BP들이 새로운 체인을 런칭하는 방법을 예로 들면 아래와 같습니다.
- BP들은 2TB 이상의 램을 마련하고, 가용한 램을 2TB로 설정하여 네트워크에 제공합니다.
- 네트워크에서 램 사용률이 70%를 넘을 경우, BP들이 협의하여 새로운 체인을 증설하여 네트워크에 제공합니다.
- 새로운 dApp이 새 체인을 원할 경우, 해당하는 개발자들이 BP들과 협의하여 새로운 체인을 런칭하는 절차를 제공합니다.
하지만 위의 수치는 단지 예시에 불과하므로, 이에 대한 더 많은 논의가 이루어지기를 바랍니다.
우리의 방법은 RAM 공급을 무제한으로 증가시키는 공급 모델이기 때문에, RAM 가격이 안정되어 분산앱 활성화에 크게 기여할 수 있습니다. 따라서 우리 방법의 장점은 시간에 따라 분산앱의 운영 비용을 일정하게 만들 수 있다는 것입니다. 즉 RAM 가격이 fiat에 고정되어 있기 때문에, 램 무단점유 문제가 발생하지 않으므로, 이를 쉽게 해결할 수 있습니다.
6. 결론
우리는 램 무단점유 문제를 해결하기 위해 무한대의 RAM 자원을 제공하여 고정되고 저렴한 가격에 램을 네트워크에 공급하는 방법을 제안했습니다. 이것은 EOS가 분산앱 플랫폼으로서 다양한 분산앱이 운영되도록 하는데 중요한 기여를 할 수 있습니다.
왜냐하면, 블록원은 네트워크에서 RAM 자원을 희귀성하다고 가정하여 가격을 통해서 이를 제한적으로 분배하는 모델을 제시했습니다. 하지만, 이 경우 램 수가격과 분산앱 활성화는 trade-off 관계에 있게 됩니다. 따라서 이것이, EOS가 분산앱 플랫폼이 활성화하는 것을 방해할 수 있습니다.