Accord (musique)En musique, un accord est un ensemble de notes considéré comme formant un tout du point de vue de l'harmonie. Le plus souvent, ces notes sont simultanées, superposées en un même moment ; mais les accords peuvent aussi s'exprimer par des notes successives, par exemple dans des arpèges. En harmonie tonale, le terme « accord » désigne une combinaison d'au moins trois notes simultanées (deux notes émises simultanément ne constituent pas un accord : il s'agit seulement d'un intervalle ; un accord est donc une superposition de plusieurs intervalles).
Fonction de hachage cryptographiqueUne fonction de hachage cryptographique est une fonction de hachage qui, à une donnée de taille arbitraire, associe une image de taille fixe, et dont une propriété essentielle est qu'elle est pratiquement impossible à inverser, c'est-à-dire que si l'image d'une donnée par la fonction se calcule très efficacement, le calcul inverse d'une donnée d'entrée ayant pour image une certaine valeur se révèle impossible sur le plan pratique. Pour cette raison, on dit d'une telle fonction qu'elle est à sens unique.
Calcul distribuéUn calcul distribué, ou réparti ou encore partagé, est un calcul ou un traitement réparti sur plusieurs microprocesseurs et plus généralement sur plusieurs unités centrales informatiques, et on parle alors d'architecture distribuée ou de système distribué. Le calcul distribué est souvent réalisé sur des clusters de calcul spécialisés, mais peut aussi être réalisé sur des stations informatiques individuelles à plusieurs cœurs. La distribution d'un calcul est un domaine de recherche des sciences mathématiques et informatiques.
ML (langage)ML (contraction de Meta Language) est un langage de programmation généraliste fonctionnel. ML fut initialement développé par Robin Milner et d'autres personnes dans les années 1970 à l'université d'Édimbourg, pour le système de preuves formelles (LCF). R. Milner rencontrait des difficultés avec le système de typage de Lisp qui permettait de « prouver » des assertions fausses. ML est un langage fonctionnel impur : il est possible de programmer en impératif et, en conséquence, les fonctions peuvent être sujettes à des effets secondaires non désirés (dits « de bord »), contrairement à des langages purement fonctionnels comme Haskell.
Routage dynamiqueLe routage dynamique ou routage adaptatif est un processus au cours duquel un routeur transmet des données via différentes routes ou vers différentes destinations en fonction de l'état des circuits de communication dans un système. Il existe sur les routeurs certaines applications qui permettent aux routeurs voisins de s'échanger de l'information quant à leur tables de routage ; ce sont les protocoles de routage.
Table de routageUne table de routage est une structure de données utilisée par un routeur ou un ordinateur en réseau et qui associe des préfixes à des moyens d'acheminer les paquets vers leur destination. C'est un élément central du routage IP. La table de routage contient : les adresses du routeur lui-même ; les adresses des sous-réseaux auxquels le routeur est directement connecté ; les routes statiques, c'est-à-dire configurées explicitement par l'administrateur ; les routes dynamiques, apprises par des protocoles de routage dynamique comme BGP, OSPF, IS-IS, etc.
SHA-1SHA-1 (Secure Hash Algorithm, prononcé ) est une fonction de hachage cryptographique conçue par la National Security Agency des États-Unis (NSA), et publiée par le gouvernement des États-Unis comme un standard fédéral de traitement de l'information (Federal Information Processing Standard du National Institute of Standards and Technology (NIST)). Elle produit un résultat (appelé « hash » ou condensat) de (20 octets), habituellement représenté par un nombre hexadécimal de 40 caractères.
Hachage cohérentLe hachage cohérent est un type particulier de hachage. Lorsque la table de hachage change de taille et que le hachage cohérent est employé, seulement clés ont besoin d’être redistribuées en moyenne, où est le nombre de clés et est le nombre d'éléments dans la table de hachage. En comparaison, dans une table de hachage classique, un changement dans le nombre d'éléments de la table a pour conséquence la réorganisation de l'ensemble ou presque des clés. À l'origine conçue par Karger et coll.
Routing loopA routing loop is a common problem with various types of networks, particularly computer networks. They are formed when an error occurs in the operation of the routing algorithm, and as a result, in a group of nodes, the path to a particular destination forms a loop. In the simplest version, a routing loop of size two, node A thinks that the path to some destination (call it C) is through its neighbouring node, node B. At the same time, node B thinks that the path to C starts at node A.
Jointure (informatique)En informatique et plus particulièrement dans les bases de données relationnelles, la jointure ou appariement est l'opération permettant d’associer plusieurs tables ou vues de la base par le biais d’un lien logique de données entre les différentes tables ou vues, le lien étant vérifié par le biais d'un prédicat. Le résultat de l'opération est une nouvelle table. En SQL, une jointure est définie dans la clause FROM, en indiquant le mot clef JOIN pour chaque nouvelle table à joindre à l'une des précédentes et en spécifiant comment, dans un prédicat de jointure introduit par le mot clef ON.
KademliaKademlia (kad) est un réseau de recouvrement de type table de hachage distribuée pour les réseaux pair à pair (P2P). Il a été conçu par Petar Maymounkov et David Mazières en 2002. Le protocole précise la structure du réseau Kademlia, les communications entre les nœuds et l'échange d'information. Les nœuds communiquent grâce à UDP (cf le modèle OSI). À l'intérieur d'un réseau existant (Internet), Kademlia crée un nouveau réseau, à l'intérieur duquel chaque nœud est identifié par un numéro d'identification, un ID (nombre binaire à 160 bits).
Vecteur de distancesLes protocoles de routage à vecteur de distances (distance vector) sont des protocoles permettant de construire des tables de routages où aucun routeur ne possède la vision globale du réseau, la diffusion des routes se faisant de proche en proche. Le terme « vecteur de distances » vient du fait que le protocole manipule des vecteurs (des tableaux) de distances vers les autres nœuds du réseau. La « distance » en question est le nombre de sauts (hops) permettant d'atteindre les routeurs voisins.