Protocol Revision: draft
Overview
The ping functionality is implemented through a simple request/response pattern. Either the client or server can initiate a ping by sending aping
request.
Message Format
A ping request is a standard JSON-RPC request with no parameters:Behavior Requirements
- The receiver MUST respond promptly with an empty response:
- If no response is received within a reasonable timeout period, the sender MAY:
- Consider the connection stale
- Terminate the connection
- Attempt reconnection procedures
Usage Patterns
Implementation Considerations
- Implementations SHOULD periodically issue pings to detect connection health
- The frequency of pings SHOULD be configurable
- Timeouts SHOULD be appropriate for the network environment
- Excessive pinging SHOULD be avoided to reduce network overhead
Error Handling
- Timeouts SHOULD be treated as connection failures
- Multiple failed pings MAY trigger connection reset
- Implementations SHOULD log ping failures for diagnostics