POKT NETWORK ACTORS
Tags: shannonupgrade, testnet, rpc, web3
Published: 2024-06-05 21:10:21

In the social media world, our attention to content is revenue for the company. In a blockchain world, the blocks are revenue for the chain.

As a company shares its revenue among shareholders, employees and investors, blockchain revenue is generally shared among the contributors of the block.

> In most chains,block contributors are, the demand side, the supply side and the DAO.

- Demand side makes it possible for the user to consume whatever services the chain is offering.

- The supply side does the same by ensuring the data produced from the activity of consuming the service is stored in a manner that is easy to retrieve.

While the DAO, coordinates all activities ensuring they are beneficial to everyone.

> POKT Network, a simple yet powerful protocol that is your API to the open internet.

In the most efficient manner, POKT Network coordinates the movement of data from over 60 blockchains to their destination at low latency and high uptime using Remote Procedure Calls(RPC).

POKT Network’s revenue is brought in by gateways who represent the demand side and shared between the DAO and the Node runners, who represent the supply side.

As we have come to learn in blockchains, revenue is earned only when work is done. This means there are different elements that work together to do the work, generally called actors.

In the upcoming Shannon upgrade, work is done by 5 actors, each with its own responsibilities.

They all together seek to enable permissionless demand, where anyone unrestricted can use POKT to consume RPCs, revamp the tokenomics and provide opportunities to build exciting products that are not supported in the current version.

Let’s learn more about these actors and understand what they do.

[POKT Network](https://www.pokt.network/)

## Applications

POKT application actor enable the gateways to sign and relay transactions.

Gateways have to stake an application to serve RPC requests to their customers. Staking an application takes two parameters:

- service_ids - This represents the chains whose relays the application needs, generally the service offered by POKT Network that the application consumes.

- stake_amount - This is an amount in upokt that the gateway has staked in order to relay requests to POKT Network on behalf of Applications.

Upon Shannon upgrade, staking an application through running a gateway will be permissionless.

See the docs https://dev.poktroll.com/protocol/actors/application

## Gateways

Gateway actor in POKT Network are a first class citizen who live onchain.

https://dev.poktroll.com/protocol/actors/gateway

With gateways being such an integral part of POKT network, a lightweight gateway server that allows anyone to spin up a gateway and start serving requests is available and requires at least 4 vCPUs+, 1GB RAM, and 1GB Storage.

If you would like to contribute or try the Gateway Server, see docs below.

https://docs.pokt.network/gateways/host-a-gateway

> The gateway server makes it easier to interact with the onchain gateway actor.

## Supplier 

Suppliers are an onchain actor. They stake their POKT to earn POKT in exchange for providing services.

They are node runners who serve the relays requested by the applications.

At the protocol level, they are supported by two onchain modules :-

- Supplier module - This module covers the staking, unstaking and supplier querying transactions.

- Proof module - This is the ‘work’ module, it is responsible for claims creation and querying besides the submission and querying of proofs.

You can learn more about Supplier actors from the official docs.

https://dev.poktroll.com/protocol/actors/supplier


> The above 3 actors Applications, Gateways and Suppliers reside onchain.

## AppGate Server

AppGate Server is responsible for relaying a request from the client’s dApp to the supplier of the requested service.

Executing the logic of a relay from the moment it leaves the client’s dApp to when it gets to the supplier.

To put it into perspective, a Polygon wallet service that is under-DePIN-ed by POKT Network would require a Gateway to provide polygon endpoints that the wallet would then use to send requests to the POKT Network.

The Gateway in this case would require an Application to be staked in order to sign and send requests on its behalf.

To customize the business logic such that free tier is capped at 1,000,000 requests per month, this logic is implemented within AppGate Server.

> This actor is utilized and consumed by the onchain Gateway Actor.

See the docs https://dev.poktroll.com/protocol/actors/appgate_server

## RelayMiner

It provides the ability for individuals to offer services through POKT Network alongside a staked Supplier.

All Suppliers providing services on POKT Network have to run a relay miner alongside the software that is providing the service, as an example a node runner serving Polygon relays needs to have access to a Polygon node alongside a POKT node to serve Polygon relays on POKT Network.

Through this actor, POKT Network supports non-custodial staking, since it is responsible for proxying relay requests between an AppGate Server and the supplied service.

This actor is utilized and consumed by the Supplier Actor.

Learn more at https://dev.poktroll.com/protocol/actors/relay_miner

The above two actors Relayminer and Appgate server reside offchain.

## Conclusion

> POKT Network is an important piece of infrastructure for Web3 with no comparison, both centralized and decentralized.

To give an overview of how POKT Network has managed to achieve high uptime, cost-effectiveness and low latency in RPC, this is how it happens.

The client’s dApp interacts with the Gateways through endpoints.

Gateways interact with the staked Applications, enabling them to relay requests on their behalf to the protocol.

Once at the protocol level, the RelayMiner run by the Supplier receives the relay request and proxies it to the required service.

It is worth noting, for the RelayMiner to run, it requires a staked Supplier which is a staked POKT Node.

Supplier A serving requests for the Polygon wallet service discussed earlier, would require a POKT Node running so that the RelayMiner can receive relay requests and proxy them to the Polygon node.

How the interaction of all the actors of the protocol happens is a topic we will keep exploring.

_Until next time, Stay POKT._