Qu'est-ce que NNTP (Network News Transfer Protocol) ?

11 avril 2024

Le Network News Transfer Protocol (NNTP) est utilisé pour la distribution, la recherche, la récupération et la publication d'articles de presse à l'aide d'un mécanisme fiable basé sur le flux, généralement TCP/IP. Il facilite l'échange de messages d'actualité et d'articles entre servers et entre clients et servers dans un réseau.

Qu'est-ce que le protocole NNTP (Network News Transfer Protocol) ?

NNTP est un application protocole de couche qui permet la distribution, la recherche et la récupération efficaces d'articles de presse à partir de diverses actualités bases de données et des forums sur Internet et Usenet. Conçu pour être utilisé sur les réseaux TCP/IP, NNTP prend en charge client-server ainsi que server-server opérations, ce qui le rend hautement évolutif et flexible pour la distribution de nouvelles.

Bref historique du NNTP

Le NNTP a été développé dans les années 1980 pour améliorer l'UUCP (UNIX-to-Unix Copy Protocol) pour la distribution d'articles d'actualité sur le réseau Usenet, un système de discussion mondial. La première spécification, RFC 977, a été publiée en 1986, décrivant le cadre et le fonctionnement initial de NNTP. Au fil des années, NNTP a subi des révisions et des mises à jour pour améliorer les performances, la sécurité et les capacités, avec des mises à jour notables, notamment la RFC 3977, qui a normalisé le protocole en 2006.

NNTP (Network News Transfer Protocol) continue d'occuper une place de niche mais importante dans le paysage de la communication numérique, en particulier pour les groupes de discussion Usenet. Malgré l'essor de formes plus modernes de communication numérique telles que les plateformes de médias sociaux, les forums et les applications de messagerie, NNTP et Usenet servent une base d'utilisateurs dédiée avec des intérêts et des besoins spécifiques.

Comment fonctionne le NNTP ?

NNTP fonctionne sur un client-server modèle dans lequel un client demande des articles d'actualité à partir de web servers héberger et distribuer des groupes de discussion. Chaque groupe de discussion se concentre sur un sujet spécifique et les articles qu'il contient sont distribués sous forme de messages. Lorsqu'un utilisateur s'abonne à un groupe de discussion, le client NNTP récupère la liste des articles disponibles dans le server. Les utilisateurs peuvent ensuite sélectionner les articles à lire, publier de nouveaux articles ou répondre à ceux existants. NNTP serverLes utilisateurs peuvent également communiquer entre eux pour propager des articles de groupes de discussion sur Internet, garantissant ainsi que les articles sont largement distribués et disponibles.

Où le NNTP est-il utilisé ?

NNTP est principalement utilisé dans le système Usenet, une collection de groupes de discussion couvrant un large éventail de sujets. Il est utilisé pour distribuer des articles d’actualité, participer à des discussions et partager des informations dans différents domaines. Bien qu'éclipsés par les plateformes de médias sociaux au cours des dernières décennies, Usenet et NNTP restent populaires pour des applications spécifiques, notamment la distribution de logiciels, les discussions techniques et la communication académique.

Commandes NNTP et codes d'état

Voici deux tableaux qui décrivent les capacités du protocole NNTP et les server réponses que l'on pourrait rencontrer lors de l'interaction avec un NNTP server.

Tableau des commandes NNTP

Les commandes NNTP sont des instructions envoyées d'un client à un NNTP server pour effectuer des actions spécifiques, telles que publier des articles ou les récupérer.

CommandDescription
ARTICLERécupère un article spécifique à l’aide d’un numéro d’article ou d’un ID de message.
BODYRécupère le corps d’un article spécifique.
HEADRécupère l’en-tête d’un article spécifique.
STATVérifie l'existence d'un article spécifique sans le télécharger.
GROUPSélectionne un groupe de discussion et renvoie des informations sur le groupe.
LISTRépertorie les groupes de discussion disponibles, les groupes de discussion actifs ou des informations les concernant.
NEWGROUPSRépertorie les groupes de discussion créés après une date et une heure spécifiées.
POSTPublie un article dans un groupe de discussion.
QUITTermine la session avec le NNTP server.
IHAVEInforme le server à propos d'un article qu'un client possède et que le server peut-être pas.
HELPRenvoie le texte d'aide du server.
LASTDéplace le pointeur de l’article actuel vers l’article précédent du groupe.
NEXTDéplace le pointeur de l’article actuel vers l’article suivant du groupe.
LISTGROUPRépertorie les articles disponibles dans un groupe de discussion spécifié.
MODE READERCommute le server en mode lecteur, nécessaire pour certains servers.
XOVERRécupère une gamme d’en-têtes d’articles dans un format compact.
XHDRRécupère des informations d’en-tête spécifiques à partir d’une gamme d’articles.

Tableau des codes d'état NNTP

Service servers utiliser les codes d'état pour indiquer le résultat de la commande d'un client, en fournissant des commentaires sur le succès de l'opération ou en détaillant les erreurs rencontrées.

Code d'étatSens
100Le texte d’aide suit (réponse informative).
200Service disponible, publication autorisée (message de bienvenue).
201Service disponible, aucune publication autorisée (message de bienvenue).
211Groupe sélectionné ; les informations suivent.
215Les informations suivent (en réponse à LIST, NEWGROUPS, etc.).
220L'article suit (en réponse à ARTICLE, HEAD, BODY ou STAT).
221L’en-tête suit (en réponse à XHDR).
222Le corps suit (en réponse à la commande BODY).
223L'article existe (en réponse à STAT).
230De nouveaux articles suivent (en réponse à NEWNEWS).
231De nouveaux groupes de discussion suivent (en réponse à NEWGROUPS).
281Authentification acceptée.
400Service temporairement indisponible (server peut s'arrêter).
411Aucun groupe de discussion de ce type (impossible de sélectionner un groupe).
412Aucun groupe de discussion sélectionné (il faut d'abord en sélectionner un).
420Aucun article actuel sélectionné (pour les commandes NEXT, LAST).
421Pas d'article suivant (dans ce groupe).
430Aucun article de ce type n'a été trouvé.
440Publication non autorisée (en réponse au POST).
441La publication a échoué (article non publié).
480Authentification requise pour la commande.
500Commande non reconnue ou erreur de syntaxe.
502Service indisponible en permanence ou sans autorisation.

Nikola
Kostique
Nikola est un écrivain chevronné passionné par tout ce qui touche à la haute technologie. Après avoir obtenu un diplôme en journalisme et en sciences politiques, il a travaillé dans les secteurs des télécommunications et de la banque en ligne. J'écris actuellement pour phoenixNAP, il se spécialise dans la résolution de problèmes complexes liés à l'économie numérique, au commerce électronique et aux technologies de l'information.