Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(rpc): v0.8 #335

Open
4 of 12 tasks
Tracked by #413
Trantorian1 opened this issue Oct 15, 2024 · 0 comments
Open
4 of 12 tasks
Tracked by #413

feat(rpc): v0.8 #335

Trantorian1 opened this issue Oct 15, 2024 · 0 comments
Assignees
Labels
help wanted Extra attention is needed rpc-0.8.0 Implementation of the new rpc specs

Comments

@Trantorian1
Copy link
Collaborator

Trantorian1 commented Oct 15, 2024

Is there an existing issue?

  • I have searched the existing issues

Motivation

This issues represents an effort at documenting the necessary steps, changes and progress towards implementing v0.8.0-rc0 of the starknet rpc specs, including most notably the websocket api: this is similar to the Ethereum RPC subscription extension of the RPC spec provided by geth.

Functionality

RPC clients will be able to:

  • subscribe to information through a websocket connection
  • receive up-to-date information as soon as it is available without making a new RPC call
  • unsubscribe (close the websocket stream) when the information is no longer needed

Request

The following methods would have to be implemented

Considerations

Warning

Potential DOS vectors:

  • Opening a large number of websocket connections
  • Holding all websocket connections indefinitely
  • Aggressively disconnecting and re-connecting

DOS mitigation

Existing infrastructure

MiddleWareLayer already implements logic for counting websocket connections and disconnections as part of RpcMetrics. The rpc server also natively handles websockets, but additional logic will have to be added to route those calls to the actual method implementations.

Are you willing to help with this request?

Yes!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed rpc-0.8.0 Implementation of the new rpc specs
Projects
Status: In progress
Development

No branches or pull requests

4 participants