# EMC Protocol

<figure><img src="/files/fuLt5mU2kb2w1VS1DlgA" alt=""><figcaption></figcaption></figure>

## **验证节点 （Validators）**

验证节点拥有者需要在主链的算力共识合约进行质押才能获取验证权利，验证节点服务需要通过RPC节点订阅算力调用事件获取实时的算力调用记录或者调用EMC Protocol Computing Network Dashboard 的openAPI获取算力调用记录以及账单记录，通过哈希指纹验签方式对数据有效性进行校验后向主链的算力共识合约提交每笔算力调用或者账单的校验结果，验证合约采用IBFT确认并记录，GPU Computing Reward合约根据验证结果对算力节点提供者（Computing Node Owner）进行奖励发放。当每笔算力共识完成，验证节点的Owner也会通过Computing Consensus Reward合约获取奖励。

## **RPC节点（RPC Nodes）**

需要具有稳定的网络带宽以及更高性能的cpu、更大的内存，提供https的api服务，通过RPC节点可发起算力请求，订阅算力调用事件等。

## **智能路由节点（Computing Network Relay Nodes）**

智能路由节点是EMC网络中的重要组成部分，需要具有稳定的网络带宽以及足够的cpu、内存，每个中继节点要求能够同时接受500+以上的算力节点的长连接，为RPC节点到算力节点的通讯提供稳定的中继服务，算力节点可通过中继的节点接受算力调用请求所以无需开放对外tcp端口也无需固定公网ip地址。它们具有以下功能：

1. 连接所有验证节点和边缘算力节点：智能路由节点连接了EMC网络中的所有验证节点和边缘算力节点，使它们可以相互通信和交互。
2. 完成全网状态机的同步记录：EMC网络中的全网状态机需要被所有验证节点记录和同步，智能路由节点作为一个关键的中转节点，能够将所有的状态机信息进行同步，确保全网的状态机信息一致性。
3. 根据最短路径及算力节点负载能力将请求送达边缘算力节点并返回结果：智能路由节点能够根据最短路径和算力节点的负载能力将请求路由到最佳的边缘算力节点，并将结果返回给请求方。这能够提高EMC组网的性能和稳定性。
4. 实时通讯广播：智能路由节点也用于服务全网的实时通讯广播，它们能够将消息广播到整个网络中的所有节点，确保节点之间可以实时通信和交互。

智能路由节点通过提供计算资源和网络带宽来赚取奖励。

## **算力节点（Computing Nodes）**

算力节点是EMC组网中的另一个重要组成部分，它们承担着实际的计算任务，为整个网络提供算力支持。算力节点可以是个人电脑、服务器、智能手机等计算设备，它们运行EMC的服务进程，作为智能路由节点的目标节点，接收来自智能路由节点的计算请求并完成相应的计算任务，将结果返回给智能路由节点，从而提高EMC组网的计算效率和性能。\
算力节点获得奖励分为算力证明和算力任务两种。算力证明通过加入算力节点经过状态位验证获得，而算力任务则是通过完成AI Agent的算力任务获得。

## **算力池（Computing Pool）**

为了服务大型计算任务，算力池是由多个算力节点组成的一种方式，不同节点之间可以通过共享资源和任务调度等方式协同工作，从而提高整个池的计算效率和性能。通常，这些算力节点配置有高性能GPU（图形处理器），具备的计算能力可以用于执行各种计算密集型任务，包括AI模型训练和AI应用推理等。在算力池中，节点可以共享资源，例如共享GPU、内存等，以提高整个池的计算效率和性能。同时，算力池也提供许多AI框架（如TensorFlow、PyTorch等），为用户提供更方便、更灵活、更经济的计算服务。相比于单个算力节点，算力池具有更大的计算能力和更高的可靠性，能够满足更大规模的计算任务需求。<br>

## **验证共识（Validator Consensus）**

EMC全网共有3F+1个验证节点，所有验证节点通过IBFT（伊斯坦布尔拜占庭容错）策略达到2/3确认后，实现验证节点之间的共识。这种共识算法具有公平、高效、低能耗、低交易成本等优点，使得EMC网络在快速应用交互和低成本交易方面具有很大的优势。<br>

## **节点质押（Staking）**

验证节点的存在是为了保证网络的算力调度以及算力奖励结算的有效性。验证节点需要拥有一定的EMC代币作为抵押品，以确保它们不会故意作恶，否则它们的抵押品将被罚没。验证节点的奖励收益与其抵押的代币数量成正比，这意味着抵押更多代币的验证节点拥有更大的收益，能够更容易地成为区块链的共识者，因此他们有动力保持诚实并为整个网络做出贡献。智能路由节点是指负责路由计算请求和调度计算任务的节点，节点的数量直接影响着整个算力网络的性能和稳定性。如果智能路由节点数量不足或者分布不均，将会导致网络的拥堵和延迟。智能路由节点需要拥有一定的EMC代币作为抵押品，并合理规划和配置智能路由节点的数量和分布。一旦节点被选中并且能够顺利完成任务，它们就能够获得相应的奖励。对于算力节点来说，通过质押一定数量的EMC来证明其在网络中的身份和参与意愿。算力节点在网络中完成的AI Agent任务和所获得的奖励与其持有的权益数量有关。算力节点可以选择不质押并承担一些非连续性任务来获得收益，这样可以更灵活地利用它们的算力资源。例如实时通讯，AIGC应用等，那么这些任务一般不需要长时间占用算力节点的资源，可以很好地和其他计算任务共存，对于EMC组网而言，这些非连续性任务可以进一步提高网络的计算效率和性能，同时给小算力机器提供了更多的收益途径，促进了EMC生态的发展。<br>

## **算力插座（Socket）**

算力插座是一种将AI算力资源转化为代币化资产的技术，每个AI Agent都可以通过算力插座进行代币资产化发行。终端用户可以通过购买这些代币来获得相应的算力资源，同时可以交易代币，算力和应用程序的代币资产化，可以为AI生态提高资源的流动性。

> 最后引用来自[比特币官方网站](https://bitcoin.org/en/)的一句话，“EMC是开源的，其设计是公开的，没有人拥有或控制EMC，每个人都可以参与其中。”


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.emc.network/emc/zhong-wen/emc-network/he-xin-chan-pin/emc-hub/emc-protocol.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
