Usenet

système de forums

Usenet est un système en réseau de forums, inventé en 1979, lancé publiquement en 1980 à l’université de Caroline du Nord à Chapel Hill et l'université Duke[1],[2], et ceci une décennie avant l’arrivée du web. Pour fonctionner dans un environnement Unix, il utilise alors le protocole UUCP. Il devient accessible depuis Internet grâce à l'utilisation du protocole NNTP. Il est encore régulièrement utilisé au XXIe siècle.

Diagramme de quelques serveurs et clients Usenet. Les points bleus, verts et rouges sur les serveurs représentent les groupes qu'ils transportent. Les flèches entre les serveurs indiquent qu'ils partagent leurs articles à partir des groupes. Les flèches entre les ordinateurs et les serveurs indiquent que l'utilisateur est abonné à un certain groupe, et ainsi envoie et reçoit des articles vers et depuis ce serveur.

Pour accéder au réseau Usenet, l’utilisateur passe par un logiciel qu’on appelle un lecteur de nouvelles et il utilise un fournisseur d’accès à Usenet (FAU).

Usenet est également accessible par le Web par des interfaces (web2news) comme Google Groupes et des sites faisant tourner une interface comme celui de l'Académie de Versailles[3].

Fonctionnement général modifier

Usenet est un ensemble de protocoles servant à générer, stocker et récupérer des « articles » (des messages qui sont proches, dans leur structure, des courriels), et permet l'échange de ces articles entre les membres d'une communauté qui peut être répartie sur une zone potentiellement très étendue[4]. Usenet est organisé autour du principe de groupes de discussion ou groupes de nouvelles (en anglais newsgroups), qui rassemblent chacun des articles (contributions) sur un sujet précis. Les sujets des groupes de discussion sont organisés selon une hiérarchie[5]. Une fois connectés à un serveur informatique fournissant un service Usenet, les utilisateurs peuvent choisir les groupes mis à disposition par ce serveur auxquels ils désirent « s'abonner ». Pour chaque groupe auquel il est abonné, l'utilisateur peut alors voir tous les nouveaux articles mis à disposition sur ce groupe et tous les articles reçus par le serveur[6] depuis un certain temps. Les anciens articles sont automatiquement effacés du serveur ; selon les serveurs, ce délai peut varier entre un mois et quelques jours. Toutefois, il existe des serveurs d'archivage, tels que Google Groups ou Gmane, qui permettent de consulter les anciens articles de certains groupes de discussion, présentés de la même façon que des archives de liste de discussion.

Lorsqu'un utilisateur envoie un article sur un serveur Usenet, celui-ci le propage à tous les autres serveurs avec qui il a conclu des accords d'échange d'articles (feeding, littéralement, « alimentation »), et ainsi de suite. Chaque serveur conserve une copie de cet article, et peut ensuite le mettre à disposition des utilisateurs ayant accès à ce serveur.

Les utilisateurs emploient généralement un logiciel client appelé lecteur de nouvelles (parfois aussi appelé client de news, en référence au modèle client-serveur) pour lire et composer des articles Usenet. La plupart des clients de messagerie intègrent un module de lecture des articles Usenet plus ou moins complet.

Organisation modifier

Les groupes sont rangés selon divers critères dans une arborescence[5] (depuis le Great Renaming de 1987). Le nom d'un groupe est formé de plusieurs composantes, séparées par des points ; et chaque composante correspond à un niveau d'arborescence. Il se lit de gauche à droite : par exemple, fr.education.superieur est un groupe francophone, consacré à l'éducation, et plus particulièrement à l'enseignement supérieur. L'ensemble des groupes situés dans une même branche de l'arborescence, c'est-à-dire qui ont des premières composantes identiques, s'appelle une hiérarchie. On utilise souvent le symbole * pour désigner des caractères quelconques : ainsi, on écrit comp.* pour désigner l'ensemble des groupes de la hiérarchie comp.

Chaque serveur peut choisir de diffuser ou non pour ses utilisateurs, et de propager ou non à ses voisins, le contenu de chaque groupe. Le plus souvent, l'administrateur ne choisit pas les groupes un par un, mais sélectionne des hiérarchies entières.

Le cœur d'Usenet est le Big Eight ou Big8[7], formé des huit principales hiérarchies internationales : comp (ordinateurs), misc (divers), news (fonctionnement des newsgroups), rec (loisirs), sci (sciences), soc (société) et talk (débats), créées lors du Great Renaming, et humanities (lettres, sciences humaines), ajoutée par la suite. Le Big8, à l'exception parfois de la hiérarchie talk, est largement propagé. On y discute principalement mais pas uniquement en anglais.

Il existe deux autres hiérarchies internationales importantes, où les règles — assez strictes — de fonctionnement du Big8 sont assouplies. Sur biz.*, la publicité est autorisée. Sur alt.*, n'importe qui peut créer un groupe, et sur alt.binaries.* il est permis de publier des pièces jointes.

Il y a ensuite un certain nombre de hiérarchies « nationales » Certaines, comme la principale hiérarchie francophone Usenet-fr, correspondent en réalité à une langue et non pas à un pays. Les plus importantes sont presque aussi bien propagées que le Big8.

Enfin, on trouve un grand nombre de hiérarchies mineures, à la propagation assez aléatoire. Il peut s'agir de réseaux de discussion complets et indépendants, d'espaces de discussion mis en place par des entreprises… De nombreux serveurs offrent une hiérarchie locale « privée » qui est parfois propagée à l'extérieur. La hiérarchie microsoft.public.* en est un exemple connu.

Histoire modifier

Les débuts modifier

Usenet a été créé en 1979 par un groupe d'étudiants de Caroline du Nord : Tom Truscott, Jim Ellis, Denis Rockwell et Steve Daniel, de Duke, et Steve Bellovin, de Chapel Hill (UNC)[2],[1]. Il est donc né après le courriel (1972) et après TCP/IP (1974), mais avant le DNS (1983) et bien avant le World Wide Web (1989). Le nom Usenet était une abréviation de UNIX User Network ; on le considère aujourd'hui comme un nom propre.

Usenet, à l'origine indépendant, a rapidement été connecté à ARPAnet, le futur Internet. En pratique, aujourd'hui, la totalité du trafic Usenet passe par Internet. Mais certains utilisateurs se plaisent à rappeler que « Usenet n'est pas Internet » et pourrait exister sans ce dernier.

En 1986, le protocole UUCP, utilisé à l'origine pour le transport des news, a été remplacé par NNTP, conçu spécialement. Dans les deux ans qui ont suivi, le Great Renaming, réorganisation des groupes pour faire face à la croissance et à l'internationalisation du réseau, a donné à Usenet sa structure d'ensemble actuelle.

Au XXIe siècle modifier

Le nombre de contributions et d'auteurs est en baisse depuis 2003[8].

Voici quelques causes du déclin de son usage :

  • la technologie de page web dynamique (début des années 2000) a permis la mise en service de forums sur des sites Web. Bien que disposant d'une audience individuellement beaucoup moins grande et d'une dispersion du contenu produit entre les forums web, ils ont comme atout (entre autres) la facilité d'emploi (quasi immédiate), contrairement à la relative difficulté de participation à Usenet ;
  • en France la majorité des FAI ont cessé de fournir un service Usenet durant la décennie 2000. Toutefois, des bénévoles maintiennent des serveurs gratuits[9]. Free continue de proposer une assistance officielle via Usenet pour la majorité de ses services[10] ;
  • il n'y a pas de modérateurs sur Usenet, ce qui entraîne sur certains groupes beaucoup d'abus (flooding, spamming, trolling…). Usenet a de ce fait été accusé de véhiculer un contenu réputé illégal (ex : Warez) et pornographique[11].

Néanmoins, en France, Usenet semble connaitre un regain d'intérêt : avec l'HADOPI 2, les systèmes d'échanges P2P étant surveillés, de nouvelles méthodes de téléchargement sont recherchées, et le réseau Usenet (principalement binaire) est de plus en plus fréquenté pour sa haute vitesse de téléchargement, la richesse des contenus et le respect de la neutralité du réseau[12].

Fonctionnement technique modifier

Articles modifier

Pour lire les news, l'utilisateur utilise un logiciel spécialisé, le lecteur de nouvelles ou newsreader. Celui-ci se connecte à un serveur de nouvelles. Le dialogue avec le serveur utilise le protocole NNTP, décrit dans la RFC 3977, et se déroule en général sur le port 119. Une fois connecté, le logiciel peut récupérer la liste des groupes disponibles, la liste des articles d'un groupe (en fait, leurs en-têtes), ou le contenu d'un article donné. Il peut aussi poster des articles, en les envoyant au serveur.

Le format des articles, décrit dans la RFC 1036, ressemble beaucoup à celui des courriers électroniques. Un article commence par des en-têtes de la forme

Champ: valeur

Il y a un grand nombre d'en-têtes standardisés, pour indiquer l'expéditeur, la date, le sujet, les groupes où publier l'article... Les lecteurs de news les remplissent automatiquement. Il est possible d'ajouter ses propres en-têtes ; le nom du champ doit alors commencer par X-, par exemple X-No-Archive. Suivent une ligne vierge puis le corps de l'article proprement dit.

Le tout doit être en texte brut. Le seul codage du texte brut lisible sur tout Usenet est ASCII. Selon les groupes, il est possible, en l'indiquant dans les en-têtes, d'envoyer des messages codés ISO-8859 sur 8 bits, et en particulier dans les jeux de caractères adaptés aux langues d'Europe de l'Ouest : ISO 8859-1 (latin1) et ISO 8859-15 (latin9). Aujourd’hui, on peut utiliser Unicode, en général codé en UTF-8 qui plus universel[13].

Chaque article porte un identifiant unique, le Message-Id. C'est la façon principale d'y faire référence. Un article n'appartient pas à un groupe particulier. Il est simplement posté sur le réseau, et visible dans les groupes où il est posté d'après ses en-têtes. Cela permet de poster un même article dans plusieurs groupes en ne transportant qu'un seul exemplaire (il est bien vu de ne pas abuser de ce procédé, appelé crosspost).

Le serveur doit ensuite propager l'article.

Serveurs et propagation modifier

Les premières versions de Usenet utilisaient les logiciels B-News, puis C-News comme logiciels serveurs. Dans les années 1990, INN fut développé pour tirer avantage de l'architecture d'Internet, qui favorisait un fonctionnement autre que la méthode stocker-faire suivre d'UUCP. Le développement d'INN continue à ce jour, et d'autres serveurs Usenet sont également apparus entre-temps. Actuellement les serveurs utilisés sont Diablo[14], Dnews[15] et INN[16].

Pour mettre en place un serveur de news, il faut tout d'abord se procurer un feed, c'est-à-dire une connexion à un autre serveur (suffisamment important) qui pourra transmettre au nouveau serveur le trafic du reste d'Usenet. Les serveurs voisins se contactent régulièrement pour propager les articles. Schématiquement, ils comparent leurs listes d'articles, et chacun envoie à l'autre ce qu'il est le seul à avoir. Naturellement, les serveurs de news ne conservent et ne propagent que les articles suffisamment récents.

Pour ce qui est des changements dans la structure des groupes elle-même, des articles spéciaux, appelés messages de contrôle, indiquent à chaque serveur les modifications de l'arborescence. Libre à chaque administrateur d'ignorer certains groupes. N'importe qui peut envoyer un message de contrôle, mais les serveurs sont configurés pour n'accepter, pour telle hiérarchie, que les messages signés par telle clé privée de cryptographie asymétrique. Les messages de contrôle « pirates » sont donc ignorés — à moins que l'administrateur du serveur n'en décide autrement.

Le classement des plus gros serveurs de newsgroup est tenu par le site top1000[17].

Adresses et accès aux ressources modifier

Comme à peu près tout ce qui est accessible par Internet, ces ressources peuvent être désignées par des « adresses » textuelles, les Universal Resource Identifiers ou URI.

Les adresses concernant Usenet ne sont pas complètement standardisées. La RFC 1738 en définit trois sortes, mais on en trouve d'autres encore (voir la RFC 2396 et les Internet Draft draft-gilmain-news-url-02 et draft-stockwell-hnews-url-00).

La syntaxe

news:<nom de groupe>

(par exemple news:fr.sci.maths), permet d'accéder à un groupe donné. Les logiciels qui l'utilisent demandent à l'utilisateur d'indiquer par ailleurs sur quel serveur le rechercher. Le nom de groupe spécial * correspond à la liste des groupes disponibles. Sur le même principe,

news:<Message-Id>

désigne un article précis, toujours sur un serveur quelconque. Il n'y a pas d'ambiguïté car un Message-Id contient toujours le caractère @ ; un nom de groupe jamais.

Enfin,

nntp://<hôte>:<port>/<nom de groupe>/<numéro d'article>

identifie un article précis, dans un groupe précis, sur un serveur donné. On peut omettre les dernières composantes pour désigner un groupe ou un serveur, et le port par défaut est 119.

Certains sites web permettent de lire les forums usenet largement distribués et d'y poster ; ces sites offrent en général également une fonction d'archive (voir ci-après).

Fournisseurs d’accès à Usenet (FAU) modifier

Fournisseurs inclus dans les abonnements aux fournisseurs d’accès Internet (FAI) modifier

En France, le FAI Free offre un accès aux newsgroups binaires (bien qu'un certain nombre de groupes aux noms évocateurs comme binaries.mp3 aient été fermés). Leur intérêt est souvent simple : diminuer les coûts liés à la bande passante en proposant un serveur à l'intérieur de leur réseau. Cet accès gratuit souffre cependant assez souvent de limitations, telles qu'une faible durée de rétention (souvent quelques jours ou semaines), ou une censure de certains newsgroups (parfois à la suite de décisions de justice[18]) accusés de favoriser le téléchargement illégal.

French Data Network est le plus vieux fournisseur d’accès Internet français encore en activité et fournit un accès à Usenet depuis 1992.

Fournisseurs indépendants modifier

Eternal September est un projet privé et gratuit d'utilisation visant à donner accès à usenet uniquement aux newsgroups text. Son nom vient d’une expression Usenet sur Septembre éternel.

i2pn2 distribue la majorité des groupes "textes seulement. La liste des groupes francophones est à jour.

Solani serveur gratuit et non commercial

NUO serveur gratuit géré par des bénévoles distribuant les groupes de discussions textes.

Fournisseurs payants modifier

Parallèlement, il existe un certain nombre d'offres Usenet payantes, beaucoup fournissant l'avantage d'une longue rétention (plus de 1 000 jours pour les meilleurs) et d'une connexion chiffrée en SSL pour préserver l'anonymat (de ce qui est transmis a l'utilisateur et non l'utilisateur en lui-même). Ces offres sont souvent appréciées par ceux qui téléchargent des fichiers binaires en raison d'une absence de censure, même si on ne sait jamais très bien à qui va l'argent que les clients de ce type d'abonnement payent[réf. nécessaire].

En règle générale, les offres sont commercialisés suivant les modèles suivants :

  • tarification au volume uniquement : l'utilisateur achète un certain volume de données et peut l'utiliser quand il veut ;
  • tarification mensuelle forfaitaire, avec ou sans limite de vitesse ;
  • une tarification hybride : l'utilisateur paye au mois en ayant un quota maximum mensuel de téléchargement (au-delà le téléchargement est soit bloqué, soit à vitesse réduite).

Le prix des abonnements sert en partie à financer les infrastructures. En effet il s'agit bien d'un modèle client/serveur et non de P2P.

Fournisseur d’Accès Internet ayant stoppé leur service d’accès à usenet modifier

Le , Orange arrête de fournir ce service[19].

Transport de fichiers binaires modifier

 
Schématisation des nombreuses étapes nécessaires pour préparer des données binaires destinées à être envoyées à un newsgroup. Ces étapes doivent être faites à nouveau à l'envers pour télécharger ces données depuis le newsgroup.

Historiquement, Usenet a été conçu pour distribuer du texte brut utilisant le jeu de caractères 7 bits ASCII. À l'aide de programmes qui codent des données 8 bits comme des suites de caractères ASCII 7 bits, il est possible de transférer par Usenet des fichiers binaires quelconques. En raison de leur taille et de leur légalité parfois douteuse, les articles contenant des fichiers binaires ne sont acceptés que sur des groupes spécifiques, ce qui permet aux administrateurs de serveurs d'accepter ou refuser facilement de les distribuer.

La plus ancienne de ces méthodes de codage est uuencode, initialement développée pour UUCP. À la fin des années 1980, beaucoup de serveurs limitaient la longueur des articles à 60 000 caractères ; et de telles limites existent toujours, même si elles sont généralement plus élevées. Pour cette raison, les données d'un fichier sont réparties en différents articles et doivent être réassemblées par le lecteur de nouvelles.

 
Ceci est une liste des 30 plus grands newsgroups sur Giganews au 3 mars 2008. C'est un exemple des capacités de rétention (stockage) massives d'un serveur commercial.

Il arrive que certaines parties d'un fichier ne soient plus téléchargeables (en effet les serveurs ne gardent les messages binaires que quelques jours) ou bien que certaines parties soient erronées. Pour pallier ce problème, on rencontre souvent des fichiers PAR qui sont des données supplémentaires à télécharger et permettent de reconstruire les parties manquantes. En règle générale les fichiers PAR font 10 % de la taille totale du fichier à télécharger.

Avec les extensions du format des articles (Base64, « Quoted-Printable », MIME) sont apparues de nouvelles possibilités pour le transport de contenus binaires. En pratique, MIME est de plus en plus utilisé dans les messages, mais guère pour transmettre des pièces jointes binaires. Par ailleurs, certains systèmes d'exploitation qui associent aux fichiers des informations auxiliaires (métadonnées) nécessitent des formats spéciaux. Mac OS utilise par exemple Binhex et des types MIME spécifiques.

Pour mieux utiliser les capacités du réseau Usenet et augmenter la vitesse de transfert, la procédure de codage yEnc a été mise au point en 2001. Elle utilise moins d'espace que les codages usuels en supposant que la plupart des caractères 8 bits peuvent être transmis correctement.

Pour le transfert de données binaires, la connexion peut être chiffrée par le protocole TLS (par exemple avec l’algorithme de chiffrement AES et une clé de 256 bits)[20].

Logiciels modifier

Les fichiers binaires déposés sur les newsgroups étant découpés en plusieurs parties (multi-parties), il faut les réassembler une fois tous les téléchargements terminés. Des logiciels sont apparus afin de faciliter et d'accélérer le téléchargement mais aussi de l'interrompre pour le reprendre plus tard. Beaucoup d'autres options sont disponibles et varient selon les programmes, comme :

  • la prise en charge du système NZB ;
  • la vérification de l'intégrité et la réparation éventuelle des fichiers grâce au système Parchive ;
  • l'extraction d'archives simples ou en plusieurs volumes fréquemment utilisées pour le dépôt de gros fichiers.

Le téléchargement de fichiers binaires est grandement simplifié par l'existence de moteurs de recherche spécialisés, tels que sur newzleech, binsearch ou avec le logiciel NewZFinders. Ces moteurs permettent de trouver un fichier NZB à partir de mots clés. Ce fichier est ensuite utilisé par le logiciel de téléchargement de fichiers binaires.

Archive des discussions modifier

L'ensemble des articles postés sur Usenet n'a pas toujours été archivé. Cependant, de 1995 à 2001, la société Deja.com (devenue DejaNews.com en 1997) effectua un tel travail d'archivage et mit à la disposition des internautes une plate-forme de recherche puis d'envoi d'articles. En décembre 2001, le moteur de recherche Google racheta DejaNews.com et sa base d'articles, puis ajouta une archive d'articles remontant jusqu'aux débuts de Usenet[21]. Ces archives sont incomplètes, mais néanmoins très fournies. Il est notamment possible d'y retrouver des messages historiques[22], comme l'annonce du World Wide Web faite par Tim Berners-Lee dans news:alt.hypertext[23] et l'annonce de Linux faite par Linus Torvalds dans news:comp.os.minix[24].

Notes et références modifier

  1. a et b Byte Magazine Volume 08 Number 10 - UNIX, (lire en ligne).
  2. a et b « Newsdemon - First Official Announcement Usenet », sur newsdemon.com (consulté le ).
  3. « Forums de l'académie de Versailles », sur web2news.ac-versailles.fr (consulté le )
  4. Kozierok, Charles M., The TCP/IP guide : a comprehensive, illustrated Internet protocols reference, No Starch Press, (ISBN 1-59327-047-X et 978-1-59327-047-6, OCLC 55000567, lire en ligne)
  5. a et b « Usenet Hierarchy Administration FAQ », sur www.eyrie.org (consulté le )
  6. (en) « RFC 5537 - Netnews Architecture and Protocols », sur ietf.org, (consulté le )
  7. (en) « Main Page », sur Usenet Big-8 Management Board (consulté le )
  8. Statistiques d'utilisation de usenet-fr disponibles sur https://web.archive.org/web/20080919131748/http://www.alea.net/usenet/outils/stats/
  9. « Liste de serveurs (et autres services) offrant un accès gratuit à la hiérarchie fr.* », yakakwatik.org
  10. « Assistance Freebox : Groupes de discussions (Newsgroups) », sur www.free.fr (consulté le )
  11. A. Girardeau, « La tentation d’un Internet « propre » », écrans.fr (Libération),
  12. Marc Rees, « Hadopi : l’échange de fichiers explose sur les newsgroups », pcinpact.com,
  13. « [Mini-FAQ] Les accents dans les forums fr.* », sur www.usenet-fr.net (consulté le )
  14. « Diablo Usenet Software », sur openusenet.org (consulté le ).
  15. « DNews », sur netwinsite.com (consulté le ).
  16. « Other Software - ISC », sur www.isc.org (consulté le )
  17. anthologeek.net
  18. free doit fermer l'accès à plusieurs newsgroups à la suite d'une décision de justice
  19. Orange France, « Toutes les Livebox et modems », sur assistance.orange.fr, (consulté le ).
  20. « Usenet-newsgroup : tout savoir sur Usenet », sur www.usenet-newsgroup.fr, (consulté le )
  21. The geeks who saved Usenet, sur Salon.com
  22. 20 Year Usenet Timeline, sur Google
  23. Re: Qualifiers on Hypertext links..., par Tim Berners-Lee, dans news:alt.hypertext, le
  24. Free minix-like kernel sources for 386-AT, par Linus Torvalds, dans news:comp.os.minix, le

Voir aussi modifier

Articles connexes modifier

Liens externes modifier