Request and Response Flow
Tracing a Request Through Rippled's RPC Pipeline
Introduction
The Complete Request Journey
Client → Transport Layer → Parser → Validator → Auth → Dispatcher → Handler → Response Builder → ClientStage 1: Request Reception
HTTP Entry Point
WebSocket Entry Point
gRPC Entry Point
Stage 2: Request Parsing
JSON Parsing
Field Extraction
Protocol Normalization
Stage 3: Role Determination
IP-Based Role Assignment
Role Hierarchy
Configuration Example
Stage 4: Handler Lookup
Version Matching
Stage 5: Permission Verification
Stage 6: Condition Validation
Ledger Availability Check
Network Connectivity Check
Closed Ledger Check
Stage 7: Context Construction
Stage 8: Resource Charging
Stage 9: Handler Invocation
Stage 10: Response Construction
Success Response
Error Response
Stage 11: Response Serialization
HTTP Response
WebSocket Response
gRPC Response
Stage 12: Response Delivery
Timing and Performance
Stage
Typical Time
Notes
Error Handling at Each Stage
Parsing Errors
Lookup Errors
Permission Errors
Condition Errors
Handler Errors
Real-World Example: Tracing an account_info Request
1. Client Request
2. Reception (HTTP)
3. Parsing
4. Role Determination
5. Handler Lookup
6. Permission Check
7. Condition Check
8. Context Construction
9. Handler Invocation
10. Response
Conclusion
Last updated

