Support Multiple Concurrent HTTP/2 PINGs on a Single Connection
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- rust
- Área
- networking
Línea de trabajo
The payload names no files, so start by locating where this crate sends PING frames, tracks their acknowledgements, and exposes the ping API to callers. The open question is the design: how many PINGs may be outstanding, and whether the cap should match Node.js's 10. Done means several PINGs can be in flight on one connection, each callback fires on its own ACK, and a test covers three concurrent pings.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The HTTP/2 protocol allows multiple PING frames to be in flight concurrently on a single connection. However, H2 currently supports only one outstanding PING at a time.
For example, if a developer wants to send three PINGs, they must wait for each PING to complete before sending the next one. This introduces unnecessary delays compared to sending the PINGs at fixed intervals (e.g., every 30 ms), without waiting for the previous PING to complete.
Could we add support for concurrent PINGs in H2? Node.js already supports this functionality, allowing up to 10 outstanding PINGs per session.
Reference: https://nodejs.org/api/http2.html#http2sessionpingpayload-callback
- Lenguaje dominante
- Rust
- Estrellas
- 1.6k
- Forks
- 406
- Merge medio
- 6 h 3 min
- PR fusionados (30 d)
- 8
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de hyperium/h2
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
hyperium/h2#974 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Raw fragments in :path are discarded before request-target validationPosiblemente ocupada @cfal la tomó hace 20 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 20/100
Los mantenedores suelen responder en 1 día
-
Oversized trailers bypass max_header_list_size and are silently truncatedPosiblemente ocupada @cfal la tomó hace 20 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
Los mantenedores suelen responder en 1 día
-
Pseudo-header fields in trailers are silently discardedPosiblemente ocupada @cfal la tomó hace 20 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 25/100
Los mantenedores suelen responder en 1 día
-
Trailers after a chained DATA frame always cost a second writePosiblemente ocupada @koshea la tomó hace 28 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
Los mantenedores suelen responder en 1 día
Todos los issues de hyperium/h2
Issues similares
-
binding:python bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
coollabsio/orbit#72 ·
Los mantenedores suelen responder en 1 día
-
Synth suite fails unless run from the repo root: signal_flow's default machine path is cwd-relativeAbiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
Nimblesite/osprey#370 ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
bug order-flow studies ui
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
userFRM/egui-charts#2417 ·
Los mantenedores suelen responder en 1 día