---
title: "실행 레이어(EL) 및 합의 레이어(CL) 노드 클라이언트"
description: "CL 노드와 EL 노드 클라이언트 간의 차이점과 관계 알아보기"
---

# 실행 레이어(EL) 및 합의 레이어(CL) 노드 클라이언트

Ethereum이 최근 몇 년간 거둔 폭발적인 성공은 블록체인 애호가들 사이에서 그 인기를 끌어올렸습니다. 그 결과 Ethereum은 높은 가스비, 느린 블록 생성 시간, 네트워크 혼잡 등으로 흔히 관찰되는 다양한 확장성 문제를 겪어왔습니다.

Ethereum을 실행 계층\(EL\)과 합의 계층\(CL\)이라는 고도로 최적화된 두 개의 계층으로 분리함으로써 네트워크는 더 확장 가능해집니다. 각 계층은 서로 다른 노드 클라이언트 인프라를 필요로 합니다.

이 글에서는 주요 Ethereum 실행 계층 노드 클라이언트를 살펴봅니다:

- [Geth](https://www.alchemy.com/overviews/what-is-a-geth-node-and-how-to-run-one) \(Go Ethereum\)
- Nethermind
- Erigon
- Hyperledger Besu

또한 주요 합의 계층 노드 클라이언트도 살펴봅니다:

- Prsym
- Teku
- Lighthouse
- Nimbus
- Lodestar

## **가장 널리 쓰이는 실행 계층 클라이언트는 무엇인가요?**

현재 블록체인 생태계에서 널리 쓰이는 실행 계층 클라이언트는 Geth \(80.1%\), Erigon \(8.7% 채택률\), Besu \(3.0%\), Nethermind \(2.6%\)입니다.

[실행 계층 클라이언트](https://ethernodes.org/)는 실행 계층에서 동작하며 블록체인의 전체 상태를 유지, 관리하는 동시에 가상 머신을 이용해 트랜잭션을 처리합니다.

### **1. Geth \(go ethereum\)**

[Geth](https://www.alchemy.com/dapps/geth)를 사용하면 개발자는 명령줄과 Go 프로그래밍 언어를 통해 [Ethereum 노드](http://www.alchemy.com/overviews/full-vs-light-vs-archive-nodes)를 이용하여 Ethereum 블록체인과 상호작용할 수 있습니다. 개발자는 Geth를 사용해 Ethereum 트랜잭션을 실행하거나 Ethereum의 네이티브 암호화폐인 ETH를 채굴할 수 있습니다.

#### **MacOS \(homebrew\)에서 Geth 클라이언트 설정하기**

### **2. Erigon**

[Erigon](https://www.alchemy.com/dapps/erigon)은 Go 프로그래밍 언어로 작성된 Ethereum 실행 계층 클라이언트입니다. Erigon은 속도를 중시하는 최적화된 Ethereum 구현체를 제공하며, 주로 대량의 상태 데이터를 관리하는 [아카이브 노드를 운영](https://www.alchemy.com/overviews/archive-nodes)하는 데 사용됩니다.

#### **MacOS에서 Erigon 클라이언트 설정하기**

Erigon이 아카이브 노드용으로 널리 쓰이는 클라이언트 구현체이지만, Silkworm \(C\+\+\)이나 Akula \(Rust\) 같은 클라이언트도 아카이브 노드 운영에 있어 비슷하거나 그 이상의 성능을 보여주었습니다.

### **3. Besu**

[Besu](https://www.alchemy.com/dapps/besu)는 Hyperledger가 Java 프로그래밍 언어로 Apache 2.0 라이선스 하에 구축한 Ethereum 실행 계층 클라이언트로, 엔지니어가 Ethereum 노드를 운영할 수 있게 해줍니다.

개발자는 명령줄과 JSON-RPC API를 통해 Besu와 상호작용할 수 있으며, RPC, HTTP, WebSockets을 통해 접근할 수 있습니다. Besu는 ETH 채굴이나 스마트 컨트랙트 및 탈중앙화 애플리케이션 개발에 사용됩니다.

#### **MacOS에서 Besu 클라이언트 설정하기**

### **4. Nethermind**

[Nethermind](https://www.alchemy.com/dapps/nethermind)는 .NET core 위에 구축된 Ethereum 실행 계층 클라이언트로, 엔지니어가 Ethereum 노드에서 개발할 수 있게 해줍니다.

#### **MacOS에서 Nethermind 클라이언트 설정하기**

## **합의 계층이란 무엇인가요?**

**합의 계층은 Ethereum 블록체인의 새로운 백엔드 인프라 역할을 하며, 검증자를 호스팅하고 그 유효성을 검증합니다.**

PoS 모델에서 검증은 스테이킹의 형태로 이루어지며, 검증자는 ETH를 담보로 스테이킹하고 이는 부정행위 발생 시 네트워크에 의해 몰수\(슬래싱\)될 수 있습니다.

## Ethereum 합의 계층 클라이언트에는 어떤 것들이 있나요?

**Lighthouse, Prysm, Nimbus, Teku, Lodestar 등 여러 합의 계층 클라이언트가 존재합니다.**

### **1. Lighthouse**

[Lighthouse](https://www.alchemy.com/dapps/lighthouse)는 Sigma Prime이 Rust 프로그래밍 언어로 개발한 합의 계층 클라이언트입니다. Lighthouse의 구현체는 Ethereum의 PoS로의 머지 과정에서 보안성과 성능 속도를 중시합니다.

#### **MacOS에서 Lighthouse 클라이언트 설정하기**

### **2. Prysm**

[Prysm](https://www.alchemy.com/dapps/prysm)은 Prysmatic Labs가 Go 프로그래밍 언어로 개발한 합의 계층 클라이언트입니다. Prysm의 구현체는 Ethereum의 PoS 및 스테이킹 프로토콜을 폭넓게 지원하며, 보안성과 신뢰성에 중점을 둡니다.

#### **MacOS에서 Prysm 클라이언트 설정하기**

### **3. Nimbus**

[Nimbus](https://www.alchemy.com/dapps/nimbus)는 Rust 프로그래밍 언어로 개발된 합의 계층 클라이언트입니다. Nimbus의 합의 계층 클라이언트 구현체는 다양한 하드웨어 장치에서 호스팅될 수 있는 경량 클라이언트 개발에 집중합니다.

#### **MacOS에서 nimbus 클라이언트 설정하기**

### **4. Teku**

[Teku](https://www.alchemy.com/dapps/teku)는 Besu 팀이 Java 프로그래밍 언어로 개발한 합의 계층 클라이언트입니다. Teku의 구현체는 일반 대중보다는 기관 투자자를 대상으로 합니다.

#### **MacOS에서 teku 클라이언트 설정하기**

### **5. Lodestar**

[Lodestar](https://www.alchemy.com/dapps/lodestar)는 ChainSafe Systems가 Typescript 프로그래밍 언어로 개발한 합의 계층 클라이언트입니다. Lodestar는 배포가 용이한 경량 클라이언트로 개발되었으며, Typescript 및 Javascript 개발자를 대상으로 합니다.

#### **MacOS에서 lodestar 클라이언트 설정하기**

## **결론**

실행 계층과 합의 계층의 분리는 2022년 오랫동안 기다려온 Ethereum Merge 업그레이드의 일부였습니다.
