Ethernet - 01Biblio-Tech
Transcription
Ethernet - 01Biblio-Tech
Ethernet 1 Ethernet Connecteur RJ45 pour Ethernet Pile de protocoles 7 • Application 6 • Présentation 5 • Session 4 • Transport 3 • Réseau 2 • Liaison 1 • Physique Modèle Internet Modèle OSI Ethernet est un protocole de réseau local à commutation de paquets. Bien qu'il implémente la couche physique (PHY) et la sous-couche Media Access Control (MAC) du modèle OSI, le protocole Ethernet est classé dans la couche de liaison, car les formats de trames que le standard définit sont normalisés et peuvent être encapsulés dans des protocoles autres que ses propres couches physiques MAC et PHY. Ces couches physiques font l'objet de normes séparées en fonction des débits, du support de transmission, de la longueur des liaisons et des conditions environnementales. Ethernet a été standardisé sous le nom IEEE 802.3. C'est maintenant une norme internationale : ISO/IEC 8802-3. Depuis les années 1990, on utilise très fréquemment Ethernet sur paires torsadées pour la connexion des postes clients, et des versions sur fibre optique pour le cœur du réseau. Cette configuration a largement supplanté d'autres standards comme le Token Ring, FDDI et ARCNET. Depuis quelques années, les variantes sans-fil d'Ethernet (normes IEEE 802.11, dites « Wi-Fi ») ont connu un fort succès, aussi bien sur les installations personnelles que professionnelles. Dans un réseau Ethernet, le câble diffuse les données à toutes les machines connectées, de la même façon que les ondes radiofréquences parviennent à tous les récepteurs. Le nom Ethernet Ethernet dérive de cette analogie[1] : avant le XXe siècle on imaginait que les ondes se propageaient dans l’éther, milieu hypothétique censé baigner l'Univers. Quant au suffixe net, il s'agit de l'abréviation du mot network (réseau) en anglais. Histoire L'Ethernet a originellement été développé comme l'un des projets pionniers du Xerox PARC. Une histoire commune veut qu'il ait été inventé en 1973, date à laquelle Bob Metcalfe écrivit un mémo à ses patrons à propos du potentiel d'Ethernet. Metcalfe affirme qu'Ethernet a en fait été inventé sur une période de plusieurs années. En 1976, Robert Metcalfe et David Boggs (l'assistant de Metcalfe) ont publié un document intitulé Ethernet : Distributed Packet-Switching For Local Computer Networks (Ethernet : commutation de paquets distribuée pour les réseaux informatiques locaux). Metcalfe a quitté Xerox en 1979 pour promouvoir l'utilisation des ordinateurs personnels et des réseaux locaux, et a fondé l'entreprise 3Com. Il réussit à convaincre DEC, Intel et Xerox de travailler ensemble pour promouvoir Ethernet en tant que standard. Ethernet était à l'époque en compétition avec deux systèmes propriétaires, Token Ring et ARCnet, mais ces deux systèmes ont rapidement diminué en popularité face à l'Ethernet. Pendant ce temps, 3Com est devenue une compagnie majeure du domaine des réseaux informatiques. Description générale L'Ethernet est basé sur le principe de membres (pairs) sur le réseau, envoyant des messages dans ce qui était essentiellement un système radio, captif à l'intérieur d'un fil ou d'un canal commun, parfois appelé l'éther. Chaque pair est identifié par une clé globalement unique, appelée adresse MAC, pour s'assurer que tous les postes sur un réseau Ethernet aient des adresses distinctes. Une technologie connue sous le nom de Carrier Sense Multiple Access with Collision Detection (Écoute de porteuse avec accès multiples et détection de collision) ou CSMA/CD régit la façon dont les postes accèdent au média. Au départ développée durant les années 1960 pour ALOHAnet à Hawaii en utilisant la radio, la technologie est relativement simple comparée à Token Ring ou aux réseaux contrôlés par un maître. Lorsqu'un ordinateur veut envoyer de l'information, il obéit à l'algorithme suivant : 1. Si le média n'est pas utilisé, commencer la transmission, sinon aller à l'étape 4 2. [transmission de l'information] Si une collision est détectée, continue à transmettre jusqu'à ce que le temps minimal pour un paquet soit dépassé (pour s'assurer que tous les postes détectent la collision), puis aller à l'étape 4 3. [fin d'une transmission réussie] Indiquer la réussite au protocole du niveau supérieur et sortir du mode de transfert. 4. [câble occupé] Attendre jusqu'à ce que le fil soit inutilisé. 5. [le câble est redevenu libre] Attendre pendant un temps aléatoire, puis retourner à l'étape 1, sauf si le nombre maximal d'essais de transmission a été dépassé. 6. [nombre maximal d'essais de transmission dépassé] Annoncer l'échec au protocole de niveau supérieur et sortir du mode de transmission. En pratique, ceci fonctionne comme une discussion ordinaire, où les gens utilisent tous un médium commun (l'air) pour parler à quelqu'un d'autre. Avant de parler, chaque personne attend poliment que plus personne ne parle. Si deux personnes commencent à parler en 2 Ethernet même temps, les deux s'arrêtent et attendent un court temps aléatoire. Il y a de bonnes chances que les deux personnes attendent un délai différent, évitant donc une autre collision. Des temps d'attente exponentiels sont utilisés lorsque plusieurs collisions surviennent à la suite. Comme dans le cas d'un réseau non commuté, toutes les communications sont émises sur un médium partagé, toute information envoyée par un poste est reçue par tous les autres, même si cette information était destinée à une seule personne. Les ordinateurs connectés sur l'Ethernet doivent donc filtrer ce qui leur est destiné ou non. Ce type de communication « quelqu'un parle, tous les autres entendent » d'Ethernet est une de ses faiblesses, car, pendant que l'un des nœuds émet, toutes les machines du réseau reçoivent et doivent, de leur côté, observer le silence. Ce qui fait qu'une communication à fort débit entre seulement deux postes peut saturer tout un réseau local. De même, comme les chances de collision sont proportionnelles au nombre de transmetteurs et aux données envoyées, le réseau devient extrêmement congestionné au-delà de 50 % de sa capacité (indépendamment du nombre de sources de trafic). Pour résoudre ce problème, les commutateurs ont été développés afin de maximiser la bande passante disponible. Suivant le débit utilisé, il faut tenir compte du domaine de collision régi par les lois de la physique et notamment le déplacement électronique dans un câble de cuivre. Si l'on ne respecte pas ces distances maximales entre machines, le protocole CSMA/CD n'a pas lieu d'exister. De même si on utilise un commutateur, CSMA/CD est désactivé. Et ceci pour une raison que l'on comprend bien. Avec CSMA/CD, on écoute ce que l'on émet, si quelqu'un parle en même temps que moi il y a collision. Il y a donc incompatibilité avec le mode full-duplex des commutateurs. Types de trames Ethernet et champ EtherType Il y a quatre types de trame Ethernet : • • • • Ethernet originale version I (n'est plus utilisée) Ethernet Version 2 ou Ethernet II (appelée trame DIX, toujours utilisée) IEEE 802.x LLC IEEE 802.x LLC/SNAP Ces différents types de trame ont des formats et des valeurs de MTU différents mais peuvent coexister sur un même médium physique. La version 1 originale de Xerox possède un champ de 16bits identifiant la taille de trame, même si la longueur maximale d'une trame était de 1500octets. Ce champ fut vite réutilisé dans la version 2 de Xerox comme champ d'identification, avec la convention que les valeurs entre 0 et 1500 indiquaient une trame Ethernet originale, mais que les valeurs plus grandes indiquaient ce qui a été appelé l'EtherType, et l'utilisation du nouveau format de trame. Cette utilisation duale du même champ de données justifie son appellation courante de champ longueur/type. En résumé, si x est la valeur dudit champ : • x <= 1500 : trame Ethernet I • x > 1500 : trame Ethernet II L'IEEE 802.3 a de nouveau défini le champ de 16bits après les adresses MAC comme la longueur. Comme l'Ethernet I n'est plus utilisé, ceci permet désormais aux logiciels de 3 Ethernet 4 déterminer si une trame est de type Ethernet II ou IEEE 802.3, permettant la cohabitation des deux standards sur le même médium physique. Toutes les trames 802.3 ont un champ LLC. En examinant ce dernier, il est possible de déterminer s'il est suivi par un champ SNAP ou non. La convention en vigueur actuellement est donc, si x est la valeur du champ longueur/type : • x <= 1500 : trame 802.3 avec LLC (et éventuellement SNAP) • x > 1500 : trame Ethernet II Synthèse graphique Les différentes trames peuvent coexister sur un même réseau physique. La trame Ethernet de format : type II Information extraite du document de G.Requilé du CNRS et adaptée Trame Ethernet II En octets 0 1 2 3 4 5 6 Adresse MAC destination 7 8 9 10 11 12 Adresse MAC source 13 14 … 1513 Type de protocole Données 1514 1515 1516 1517 FCS/CRC Attention il existe d'autres types de trames Ethernet qui possèdent d'autres particularités. Le champ Type de protocole peut prendre les valeurs suivantes : • • • • • • • 0x0800 : IPv4 0x86DD : IPv6 0x0806 : ARP 0x8035 : RARP 0x0600 : XNS 0x809B : AppleTalk 0x88CD : SERCOS III Remarques : • si le champ type de protocole possède une valeur hexadécimale inférieure à 0x0600 alors la trame est une trame Ethernet 802.3 et le champ indique la longueur du champ données ; • on notera la présence parfois d'un préambule de 64bits de synchronisation, alternance de 1 et 0 avec les deux derniers bits à 1 (non représenté sur la trame) ; • l'adresse de broadcast (diffusion) Ethernet a tous ses bits à 1 ; • la taille minimale des données est de 46octets (RFC 894 - Frame Format). Ethernet Variétés d'Ethernet La section ci-dessous donne un bref résumé de tous les types de média d'Ethernet. En plus de tous ces standards officiels, plusieurs vendeurs ont implémenté des types de média propriétaires pour différentes raisons -- quelquefois pour supporter de plus longues distances sur de la fibre optique. Quelques anciennes variétés d'Ethernet • Xerox Ethernet -- L'implémentation originale d'Ethernet, qui a eu deux versions, la version 1 et 2, durant son développement. La version 2 est encore souvent utilisée. • 10BASE5 (aussi appelé Thick Ethernet) -- Ce standard de l'IEEE publié très tôt utilise un câble coaxial simple dans lequel on insère une connexion en perçant le câble pour se connecter au centre et à la masse (prises vampires). Largement désuet, mais à cause de plusieurs grandes installations réalisées très tôt, quelques systèmes peuvent encore être en utilisation. • 10BROAD36 -- Obsolète. Un vieux standard supportant l'Ethernet sur de longues distances. Il utilisait des techniques de modulation en large bande similaires à celles employées par les modems câble, opérées sur un câble coaxial. • 1BASE5 -- Une tentative de standardisation de solution pour réseaux locaux à bas prix. Il opère à 1Mbit/s mais a été un échec commercial. Ethernet 10Mbit/s • 10BASE2 (aussi appelé ThinNet ou Cheapernet) -- un câble coaxial de 50Ohms connecte les machines ensemble, chaque machine utilisant un adaptateur en T pour se brancher à sa carte réseau. Requiert une terminaison à chaque bout. Pendant plusieurs années, ce fut le standard Ethernet dominant. • 10BASE-T -- Fonctionne avec 4 fils (deux paires torsadées) sur un câble CAT-3 ou CAT-5 avec connecteur RJ45. Un concentrateur (ou hub) ou un commutateur (ou switch) est au centre du réseau, ayant un port pour chaque nœud. C'est aussi la configuration utilisée pour le 100BASE-T et le Gigabit Ethernet (câble CAT-6). Bien que la présence d'un nœud central (le hub) donne une impression visuelle de topologie en étoile, il s'agit pourtant bien d'une topologie en bus - tous les signaux émis sont reçus par l'ensemble des machines connectées. La topologie en étoile n'apparaît que si on utilise un commutateur (switch). • FOIRL -- Fiber-optic inter-repeater link (lien inter-répéteur sur fibre optique). Le standard original pour l'Ethernet sur la fibre optique. • 10BASE-F -- Terme générique pour la nouvelle famille d'Ethernet 10Mbit/s : 10BASE-FL, 10BASE-FB et 10BASE-FP. De ceux-ci, seulement 10BASE-FL est beaucoup utilisé. • 10BASE-FL -- Une mise-à-jour du standard FOIRL. • 10BASE-FB -- Prévu pour inter-connecter des concentrateurs ou commutateurs au cœur du réseau, mais maintenant obsolète. • 10BASE-FP -- Un réseau en étoile qui ne nécessitait aucun répéteur, mais qui n'a jamais été réalisé. 5 Ethernet Fast Ethernet (100Mbit/s) • 100BASE-T -- Un terme pour n'importe lequel des standards 100Mbit/s sur paire torsadée. Inclut 100BASE-TX, 100BASE-T4 et 100BASE-T2. • 100BASE-TX -- Utilise deux paires et requiert du câble CAT-5. Topologie en bus en utilisant un concentrateur (hub) ou en étoile avec un commutateur (switch), comme pour le 10BASE-T, avec lequel il est compatible. • 100BASE-T4 -- Permet le 100 Mbit/s (en semi-duplex seulement) sur du câble CAT-3 (qui était utilisé dans les installations 10BASE-T). Utilise les quatre paires du câble. Maintenant désuet, comme le CAT-5 est la norme actuelle. • 100BASE-T2 -- Aucun produit n'existe. Supporte le mode full-duplex et utilise seulement deux paires, avec des câbles CAT-3. Il est équivalent au 100BASE-TX sur le plan des fonctionnalités, mais supporte les vieux câbles. • 100BASE-FX -- Ethernet 100Mbit/s sur fibre optique. Gigabit Ethernet (1000Mbit/s) • 1000BASE-T -- 1Gbit/s sur câble de paires torsadées de catégorie 5 (classe D) ou supérieure (selon NF EN 50173-2002), sur une longueur maximale de 100m. Utilise les 4 paires en full duplex, chaque paire transmettant 2bits/s par baud, à l'aide d'un code à 5 moments. Soit un total de 1octet par top d'horloge sur l'ensemble des 4 paires, dans chaque sens. Compatible avec 100BASE-TX et 10BASE-T, avec détection automatique des Tx et Rx assurée. La topologie est ici toujours en étoile car il n'existe pas de concentrateurs 1000Mbps. On utilise donc obligatoirement des commutateurs (switch). • 1000BASE-X -- 1Gbit/s qui utilise des interfaces modulaires (appelés GBIC) adaptées au média (Fibre Optique Multi, Mono-mode, cuivre). • 1000BASE-SX -- 1Gbit/s sur fibre optique multimodes à 850nm. • 1000BASE-LX -- 1Gbit/s sur fibre optique monomodes et multimodes à 1300nm. • 1000BASE-LH -- 1Gbit/s sur fibre optique, sur longues distances. • 1000BASE-ZX -- 1Gbit/s sur fibre optique monomodes longues distances. • 1000BASE-CX -- Une solution pour de courtes distances (jusqu'à 25m) pour le 1Gbit/s sur du câble de cuivre spécial. (cf. cercle CREDO) Ethernet 10gigabit par seconde Le nouveau standard Ethernet 10Gigabits entoure sept types de média différents pour les réseaux locaux, réseaux métropolitains et réseaux étendus. Il est actuellement spécifié par un standard supplémentaire, l'IEEE 802.3ae dont la première publication date de 2002, et va être incorporé dans une révision future de l'IEEE 802.3. La version Ethernet 10Gbit/s est 10 fois plus rapide que Gigabit Ethernet ; ceci est vrai jusqu'au niveau de la couche MAC seulement. • 10GBASE-CX4 (cuivre, câble infiniband, 802.3ak) -- utilise un câble en cuivre de type infiniband 4x sur une longueur maximale de 15 mètres. • 10GBASE-T -- transmission sur câble catégorie 6, 6A ou 7 (802.3an), en full duplex sur 4 paires avec un nombre de moments de codage qui sera fonction de la catégorie retenue pour le câble (et de l'immunité au bruit souhaitée), sur une longueur maximale de 100mètres. Devrait être compatible avec 1000BASE-T, 100BASE-TX et 10BASE-T 6 Ethernet • 10GBASE-SR (850nm MM, 300mètres, dark fiber) -- créé pour supporter de courtes distances sur de la fibre optique multimode, il a une portée de 26 à 82mètres, en fonction du type de câble. Il supporte aussi les distances jusqu'à 300m sur la nouvelle fibre multimode 2000MHz. • 10GBASE-LX4 -- utilise le multiplexage par division de longueur d'onde pour supporter des distances entre 240 et 300mètres sur fibre multimode. Supporte aussi jusqu'à 10km avec fibre monomode. • 10GBASE-LR (1310nm SM, 10km, dark fiber) et 10GBASE-ER (1550nm SM, 40km, dark fiber) -- Ces standards supportent jusqu'à 10 et 40km respectivement, sur fibre monomode. • 10GBASE-SW (850nm MM, 300mètres, SONET), 10GBASE-LW (1310nm SM, 10km, SONET) et 10GBASE-EW (1550nm SM, 40km, SONET). Ces variétés utilisent le WAN PHY, étant conçu pour inter-opérer avec les équipements OC-192 / STM-64 SONET/SDH. Elles correspondent au niveau physique à 10GBASE-SR, 10GBASE-LR et 10GBASE-ER respectivement, et utilisent le même type de fibre, en plus de supporter les mêmes distances. (Il n'y a aucun standard WAN PHY correspondant au 10GBASE-LX4.) L'Ethernet 10Gigabits est assez récent, et il reste à voir lequel des standards va obtenir l'acceptation des compagnies. Analysons de plus près les modes LAN et WAN, tous deux utilisés sur fibre optique. 10Gigabit Ethernet supporte seulement le mode full duplex, beaucoup de liens sont en mode point à point bien que du routage à ce débit commence à apparaître. Le mode LAN fonctionne à un débit ligne, au niveau de la fibre, de 10.3Gbit/s ce qui représente en fait le débit MAC de 10Gbit/s pondéré par 66/64 rapport lié à l'encodage de la couche PCS utilisant un code 64B66B. Nous noterons l'efficacité de cet encodeur (3 %) par rapport à celui du mode Gigabit Ethernet (8B10B) qui apporte quant à lui un sur débit de 25 %. L'importance du mode WAN PHY est incontestable et permet de transporter les trames Ethernet 10Gigabits sur des liens SDH ou SONET actuellement en place dans beaucoup de réseaux. Le mode WAN PHY opère à un débit légèrement inférieur à 10Gbe, à savoir 9953280kbit/s (ce qui correspond au débit STM64/OC192). Le conteneur virtuel 64c ou 192c véhicule des codes 64B66B. Les modules optiques : couche PMD (PHY). Des fabricants comme Fiberxon, sumitomo, Finisar ou bien d'autres, proposent des modules XFP qui sont normalisés par MSA permettant une compatibilité entre eux. Ces modules permettent de convertir le signal optique en un signal électrique, c'est donc l'équivalent de la couche PHY au niveau PMD du modèle OSI. Un lien électrique différentiel est ensuite disponible au débit de 10.3Gbit/s. Les serdes : couche PMA (PHY). Ce signal de 10Gb/s, trop rapide, ne peut pas être traité directement, il faut donc le paralléliser, en général sur 64bits. Des circuits dédiés spécialisés permettent cette conversion. L'encodage 64B66B : couche PCS (PHY) Le code en ligne utilisé 64B66B transforme le format XGMII (64bits de données plus 8bits de contrôle) en mots de 66bits. L'objectif est multiple : 7 Ethernet • apporter une dispersion d'énergie et éviter de longues suites consécutives de '0' ou '1' que les XFP peuvent ne pas trop apprécier. • ceci apporte donc des transitions afin de faciliter les mécanismes de récupération d'horloge. Le code 66bits est composé de deux bits de synchronisation suivit de 64bits de donnée. • Si la synchro est '01', les 64bits sont de type donnée • Si la synchro est '10', les 64bits contiennent au moins un octet de contrôle • Les préambules '00' et '11' ne sont pas utilisés. Les 64bits de données sont embrouillés par un embrouilleur auto synchronisé. À ce niveau la nous retrouvons un format équivalent MII, les couches suivantes : data link (MAC), ''network (IP), ''transport (TCP/UDP) fonctionnant de façon similaire à gigabit Ethernet. Notes et références [1] Ethernet: The Definitive Guide (http:/ / books. google. fr/ books?id=VbTvnxBKzUgC& dq=Ethernet:+ The+ Definitive+ Guide& pg=PP1& ots=HXGXgOGxaY& sig=C-3WhkefLUk8HAscMmBvFiz37KA& hl=fr& sa=X& oi=book_result& resnum=1& ct=result#PPA65,M1), Charles E. Spurgeon. O'Reilly, 2000. p. 5, Invention of Ethernet. Voir aussi Articles connexes • • • • • • AFDX (Avionics Full DupleX) réseau Ethernet redondant et fiabilisé Bonding Teaming CHAOSnet CPL pour Courant Porteur en Ligne FSFB2 (Fail Safe Field Bus 2nd generation) Protocole Sécuritaire pour réseau Ethernet Ethernet dans le domaine des Télécommunications. • Metro Ethernet Forum : organisation professionnelle active à l'échelle mondiale dont le but est d'accélérer le développement des services et des réseaux Ethernet de classe opérateur. • Provider Backbone Bridge ou PBB : protocole de communication qui repose sur des extensions au protocole Ethernet, utilisé principalement dans le segment accès et métropolitain des réseaux d'opérateurs, spécification IEEE 802.1ah • Provider Backbone Bridge Traffic Engineering : évolution du protocole précédent (PBB) permettant l'ingénierie de trafic, également connu sous le nom de PBT, spécification IEEE 802.1Qay 8 Ethernet Liens externes • (en) http:/ / www. ieee802. org/ 3/ • (en) http:/ / standards. ieee. org/ regauth/ ethertype/ type-tut. html • (en) http:/ / web. archive. org/ web/ 20030613072801/ www. 10gea. org/ Site web du 10Gigabit Ethernet Alliance • (fr) http:/ / www. commentcamarche. net/ technologies/ ethernet. php3 Introduction à Ethernet • (fr)[pdf] http:/ / tssi. borkmadjai. com/ Cours Ethernet • (fr) Intégralité du document de G. Requilé [pdf] http:/ / www. lmgc. univ-montp2. fr/ ~requile/ documents/ reseau/ LLC. pdf 9 Ethernet Sources des articles et contributeurs Ethernet Source: http://fr.wikipedia.org/w/index.php?oldid=40513908 Contributors: Abrahami, Arno., Artificis, B3nZ3n, Badmood, Bertrand Fr 24, Bobblewik, Briling, Brohee, Buzz, Calo, Capbat, Captainm, Cburnett, Chaouistes, ChrisJ, Christyo, Cnuma, Coffrini, CommonsDelinker, Cyrienna, DainDwarf, David Berardan, EDUCA33E, Eberkut, Eric german, Escaladix, Eusebius, Fedmahn, Frodary, GLec, Gédé, Inike, Iznogood, JackPotte, Keikomi, Koko90, Kropotkine 113, Le G.O., LeFabz, Leag, Lenaic, Litlok, Loader, Looxix, LyonL, MagnetiK, Manu1400, Maurice Akin, Mcannac, Med, MetalGearLiquid, Michbeie, Mikayé, Mike-m, Mro, Mudares, NicoRay, Nykozoft, Olrick, Orthogaffe, Oz, P-e, Pabix, PatLeNain, Patatosaure, Pixeltoo, Ploum's, Plyd, Popolon, R, Raph, RaphAstronome, Roffetn2, Romainb, Romainhk, Romanc19s, Ryo, Sam Hocevar, Sbrunner, Seafire, Sebf, SteF, Tbowan, Tifrere, Tiro, Trantor, Vargenau, Verdy p, W'rkncacnter, Xfigpower, Xofc, Xr, Zardoz69, marseille-4-a7-62-147-114-146.dial.proxad.net, script de conversion, 131 anonymous edits 10 Ethernet Source des images, licences et contributeurs Image:Ethernet RJ45 connector p1160054.jpg Source: http://fr.wikipedia.org/w/index.php?title=Fichier:Ethernet_RJ45_connector_p1160054.jpg License: unknown Contributors: User:David.Monniaux Image:Ethernet Type II Frame format.svg Source: http://fr.wikipedia.org/w/index.php?title=Fichier:Ethernet_Type_II_Frame_format.svg License: Public Domain Contributors: Bruceadler, Jodo, MetalGearLiquid, Mikm, Popolon, WikipediaMaster, 3 anonymous edits 11 Licence 12 Licence Version 1.2, November 2002 Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. 0. PREAMBLE The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others. This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software. We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference. 1. APPLICABILITY AND DEFINITIONS This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law. A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language. A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them. The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none. The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words. A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not "Transparent" is called "Opaque". Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only. The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text. A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To "Preserve the Title" of such a section when you modify the Document means that it remains a section "Entitled XYZ" according to this definition. The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License. 2. VERBATIM COPYING You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3. You may also lend copies, under the same conditions stated above, and you may publicly display copies. 3. COPYING IN QUANTITY If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects. If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages. If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public. It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document. 4. MODIFICATIONS You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version: 1. 2. 3. 4. 5. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement. State on the Title page the name of the publisher of the Modified Version, as the publisher. Preserve all the copyright notices of the Document. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices. Licence 13 6. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below. 7. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice. 8. Include an unaltered copy of this License. 9. Preserve the section Entitled "History", Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence. 10. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission. 11. For any section Entitled "Acknowledgements" or "Dedications", Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein. 12. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles. 13. Delete any section Entitled "Endorsements". Such a section may not be included in the Modified Version. 14. Do not retitle any existing section to be Entitled "Endorsements" or to conflict in title with any Invariant Section. 15. Preserve any Warranty Disclaimers. If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles. You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard. You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one. The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version. 5. COMBINING DOCUMENTS You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers. The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work. In the combination, you must combine any sections Entitled "History" in the various original documents, forming one section Entitled "History"; likewise combine any sections Entitled "Acknowledgements", and any sections Entitled "Dedications". You must delete all sections Entitled "Endorsements." 6. COLLECTIONS OF DOCUMENTS You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects. You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document. 7. AGGREGATION WITH INDEPENDENT WORKS A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document. If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate. 8. TRANSLATION Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail. If a section in the Document is Entitled "Acknowledgements", "Dedications", or "History", the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title. 9. TERMINATION You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 10. FUTURE REVISIONS OF THIS LICENSE The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http:/ / www. gnu. org/ copyleft/ . Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation. How to use this License for your documents To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page: Copyright (c) YEAR YOUR NAME. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the "with...Texts." line with this: with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation. If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.