Support graceful connection close
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 35/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- python
- Domaine
- networking
Piste de recherche
Commencez par examiner la machine à états de connexion de h2 ainsi que la section 6.8 de RFC 7540, en vous concentrant sur la transition après l’envoi ou la réception de GOAWAY. Reproduisez l’interdiction actuelle de tout trafic supplémentaire et déterminez le comportement attendu ; le travail sera considéré comme terminé lorsque les streams en cours pourront se terminer tandis que les nouveaux streams resteront interdits, avec des tests couvrant les deux directions.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
RFC 7540 section 6.8 seems to indicate that traffic can continue flowing in both directions after a GOAWAY frame, with the only restriction being that the recipient can't open new streams after receiving the GOAWAY:
A GOAWAY frame might not immediately precede closing of the
connection; a receiver of a GOAWAY that has no more use for the
connection SHOULD still send a GOAWAY frame before terminating the
connection.
...
Activity on streams numbered lower or equal to the last stream
identifier might still complete successfully. The sender of a GOAWAY
frame might gracefully shut down a connection by sending a GOAWAY
frame, maintaining the connection in an "open" state until all in-
progress streams complete.
But, h2's connection state machine immediately transitions to CLOSED upon sending or receiving a GOAWAY, effectively prohibiting any further traffic. Would you be interested in a patch to fix this, or is there some disconnect I'm missing between the wording of the RFC and actual implementations?
- Langage dominant
- Python
- Étoiles
- 1k
- Forks
- 197
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de python-hyper/h2
-
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
python-hyper/h2#1330 ·
-
content-length is not policed when a stream ends with a trailers sectionPeut-être pris @feiiiiii5 l’a pris il y a 33 jours. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 76/100
python-hyper/h2#1328 ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
python-hyper/h2#1312 ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
python-hyper/h2#1280 · 2 commentaires ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
python-hyper/h2#1239 · 3 réactions ·
Toutes les issues de python-hyper/h2
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
btclib-org/btclib-node#2132 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
freelawproject/juriscraper#2367 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
infra tech-debt
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
docs(k8s-api-proxy): name the service-account-token Secret path in the read-write mode commentOuverteneeds-triage
Difficulté 1/5 Moins d'une heure Accessibilité débutants 78/100
gke-labs/kube-agents#4190 ·
Les mainteneurs répondent en général sous 1 jour