전체 메뉴

“최고의 기술진이 3년간 연구개발에 매진한 쾌거”

[1st The MEDIUM International Conference] 질의응답 모음

윤준식 기자 승인 2018.12.17 15:20 | 최종 수정 2019.07.16 18:12 의견 0

▶질문-1: Hi, the presentation was very interesting so I was just wondering do you have any plans or anything on the road map to expand internationally. (미디움 해외일정 로드맵이 어떻게 되는지 궁금합니다.)

[김판종 회장] 일단 오늘 컨퍼런스의 시작으로 대략 일본,중국, 그 다음에 미국 그 다음에 유럽에 컨퍼런스가 예정 돼 있고요. 일단 확정된 건 2월 20일경에 미국 컨퍼런스가 확정 되어있다는 것. 그 다음에 마지막 3월 달까지 유럽, 총 4개국. 우리나라 포함한 5개국에 컨퍼런스가 내년 3월까지 예정 및 확정 되어있습니다.

▶질문-2: Hello Very nice presentation thank you so much. Just want to know. Do you have any plan for ICO (별도의 ICO 계획이 있습니까)

[김판종 회장] 이번 프로젝트를 진행하면서 가장 많은 분들께서 궁금해 하신 분들이 ICO에 대한 부분이었는데요. 저희는 아직 ICO에 대한 계획은 아직 추후의 컨퍼런스 일정에 따라서 확정된 건 없다고 말씀 드리고요. 저희는 일단 기술 시연을 통해서 상용화, 또 보급화 할 수 있다는 검증 이후에 어떤 정확한 ICO일정을 말씀 드릴 수 있습니다. 추후에 저희 홈페이지나 기타 방법을 통해서 구체적인 계획을 말씀드리도록 하겠습니다.

▶질문-3: 3만 TPS를 얻기 위해서는 전 세계에 있는 사람들이 이 칩을 모두 다 가지고 있어야지 할 수 있는 건지 궁금합니다.

[한영권대표] 블록체인은 크게 노드들이 존재하고요. 그 다음에 노드에 접속하는, 아니 얹혀져 있는 dApp과 그 dApp을 이용하는 접속자로 나눠지게 되는데, 이 블록체인은 그 속도를 내는 가장 핵심적인 부분은 그 노드들의 속도에 있습니다.

여러분들이 흔히 알고 있는 비트코인이나 이더리움, EOS 이런 경우에는 노드를 탈중앙화라고 해서 노드 참여를 제한을 두지 않았습니다. 그렇기 때문에 지금처럼 비트코인 7TPS, 이더리움 28TPS, 이것밖에 안 나오는 상황인데요...

저희 경우는 노드 참여자를 10G 백본과 저희 ASIC을 탑재한 서버를 가지고 있는 사람들로 규정을 합니다. 이것이 만약 “탈중앙화가 맞느냐”고 한다면 어차피 다른 모든 블록체인도 노드에 참여하기 위해서는 컴퓨터를 사야 되지 않습니까 컴퓨터에 부품이 하나 더 추가된 것뿐이죠.

▲ 왼쪽부터 박윤성 CTO, 김판종 회장, 현영권 대표 ⓒ 김기한 기자

▶질문-4: 기술개발에 대해서 보통은 어느 정도나 기간이 걸렸고 어떤 인력들이 이 기술 개발. 방금 엔지니어 분들도 나오셨는데 어떤 분들께서 이런 기술개발을 하셨는지 궁금합니다.

[김판종회장] 최고의 기술진이라고 저희는 자부하고 있고요. 최고의 연구진들이라고 자긍심을 갖고 있습니다. 연구 개발 기간은 한 3년 정도 걸렸고요. 그 간에 소프트웨어적인 개발을 추구하다가 속도의 한계에 부딪혀서 이 속도의 한계를 더 자세히, 또 구조적인 부분을 계속 관찰하다 보니까 하드웨어 구조의 CPU의 병목현상을 발견하게 되고 그 발견한 병목현상을 해결하기 위해서 소프트웨어가 아닌 보조적 하드웨어 방법을 개발하고 연구하고 있습니다.

▶질문-5: “ASIC으로 기술을 구현을 하겠다”고 했는데 기존에 구현을 하더라도 지금 메가TPS 정도를 만든다고 하면, 기존 이더리움을 비롯한 다양한 블록체인 기반 응용들이 가지고 있는 부분들이 있을 텐데... 어떤 걸 어떻게 어떤 형태를 개선해서 그러한 문제들을 해결하실 수 있었는지

[한영권대표] 예. 잠시 전에 이더리움이 약 28TPS 정도 나온다고 말씀 드렸는데 이더리움이 내년인가 후년까지 목표가 2,000 TPS라는 목표를 가지고 있습니다.

그리고 이더리움 기술 기반으로 프라이빗 네트워크를 구성해서 서비스를 할 계획을 가진 기업들이 많은 것 같은데 이더리움이 갖고 있는 기본적이 블록체인 적인 요소들을 고속화 하는 거는 사실상 가능합니다.

그런데 그 이더리움이 가지고 있는 스마트 컨트랙트 부분이 이 스마트 컨트랙트 콜을 받아서 실현하기 위해서는 약 100여개의 인스트럭션 세트를 갖게 되는데 이거를 다 까서 구동을 해서 확인하고 검증을 날리는 과정이 지금의 스마트 컨트랙트, 이더리움이 이와 같은 구조를 버리지 않는 이상은 1,000 TPS 이상은 죽어도 나올 수가 없습니다.

이더리움이 도대체 무슨 생각으로 2,000TPS를 낸다고 주장을 하고 있는 지는 솔직히 모르겠지만 저희 같은 경우는 조금 전에 보여드린 ‘킨텍스7’ 칩에서는 구현을 할 수 없었는데, ‘울트라스케일 플러스’ 그리고 그 이상에서 우리가 제작하려고 하는 ASIC에는 베리파잉(verifying)이나 사이닝(signing)이나 아니면 컨센서스, 스마트 컨트랙트를 싱글 코어가 아닌 각각 두 자리 수 이상의 코어를 내장해서 처리를 하도록 하고 있습니다.

잘 아시다시피 하나의 블록을 생성하기 위해서는 CPU에서 약 300클락 정도의 소유를 일으키는데, ASIC은 단 1클락 또는 시간이 든다 하더라도 약 2클락으로 처리를 할 수가 있습니다. 논리상 최소 150 또는 300대의 속도를 구현할 수 있게 되죠.

그리고 만약에 10만 TPS 이상을 구현하게 된다면 네트워크와 시스템 내부의 버스구조에 심각한 영향을 미치게 됩니다. 특히 스마트 컨트랙트를 내장을 하게 될 경우에는 시스템 내부에서 이 로드를 전혀 감당할 수가 없습니다.

아까 설명을 드릴 때 특허 부분에 약간 민감한 부분이 있어서 설명드리지 않았는데, 저희가 개발하는 ASIC에 유다투 멀티 플러그가 붙어있습니다. 그래서 초당 약 50GB BPS로 생성이 가능합니다. 그래서 100만 TPS가 갈 때까지 병목을 해결한 겁니다. 그러나 100만 이상에서는 저희도 해결할 방법이 없습니다.

▶질문-6: 실험 환경에서 통신 프로토콜이 어떻게 되는지 궁금합니다. 일반적인 TCP로 구현하셨다면 네트워크 데이터 링크에서 플로우 컨트롤, 에어 컨트롤 같은 게 있겠지만 이제 지금 실험환경은 굉장히 아이디얼한 환경이고 우리가 미디엄 블록체인에 서비스를 올린다면 장애가 있을 수 있습니다. 장애가 갑자기 생겼을 때 어떤 대비책이 있는지 궁금합니다.

[박윤성 CTO] 네트워크를 어떻게 구성했느냐, 네트워크 소프트웨어를 어떻게 구성했느냐로 제가 질문을 이해했습니다. 아직까지는 지금 이 정도 성능을 구현하기 위해서 저희가 소프트웨어에서 뭔가 더 튜닝을 할 필요가 없습니다. 그렇기 때문에 일반적인 TCP 커넥션을 이용을 해서 트랜잭션을 보내고 오더러, 피어, 클라이언트 다 연결해서 연결된 상태에서 트랜잭션을 보낼 수 있게 네트워크를 구축하였습니다.

▶질문-7: 서비스 안에서 장애가 일어나더라도 리커버리가 금방 될 수 있는지, 장애 복구 후에도 3만 TPS가 바로 회복될 수 있는지, 그리고 거기에 대한 매커니즘은 어떻게 설계를 하셨는지 오더러 입장에서 궁금합니다.

[박윤성 CTO] 블록을 생성하고 생성한 블록들이 합의를 거치는 과정에서 장애가 발생하는 경우, 이론상은 오더러 클러스터 중에 한 두 개 정도가 문제가 생긴다고 해도 큰 문제없이 처리가 가능합니다.

근데 이제 거기서 합의를 이루어야 되는 수 이상의 장애가 발생한다면 전체 네트워크에 이슈가 생길 수도 있습니다. 그래서 저희가 그런 부분을 조금 더 집중적으로 보고 있고요. 말씀하신대로 그런 장애가 생기게 된다면 다른 형태로 복구할 수 있는 방법까지 고민해서 설계할 계획입니다.

[취재: 김기한 기자]

<저작권자 ⓒ시사N라이프> 출처와 url을 동시 표기할 경우에만 재배포를 허용합니다.