From fe2eac17f68cacc9b3be2ddfb1101ae688ef5b6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?FIORE=20Fran=C3=A7ois?= Date: Wed, 27 May 2015 22:39:46 +0200 Subject: [PATCH 01/38] =?UTF-8?q?Diff=C3=A9rentes=20retouches:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - section "Le projet" - section "Neutralité du réseau" - section "fournir un accès Internet" - section "Transparence" Mise à jour: - fusion section "Hébergeur Internet" et "Opérateur" - section "services" - section "Partenaires" - section "les moyens techniques" Ajouts: - section "Bénévoles locaux" - Création de la branche Launaguet - Ajout du fichier PDF pret à imprimer --- flyer/flyer-ttnn.pdf | Bin 0 -> 129331 bytes flyer/flyer-ttnn.tex | 9 +++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 flyer/flyer-ttnn.pdf diff --git a/flyer/flyer-ttnn.pdf b/flyer/flyer-ttnn.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a39ec16fc703d8db364e3dfaaee7285fa420213d GIT binary patch literal 129331 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%0A8R5Z=J%QAoNqT3&T%)x)QmVInG~6RiiO23ZD)yC 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

!4j1i_$Gr05q>PW+!q>Y2UfK|Pj#|^ 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 literal 0 HcmV?d00001 diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index a064b37..e877c5f 100644 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -222,9 +222,14 @@ de 2 à 5 euros/mois/IPv4 supplémentaire. L'association est transparente sur sa comptabilité avec des points mensuels sur la liste principale, ainsi que sur le site Internet -\section{Bénévoles locaux} +\section{Bénévoles à Launaguet} -section à compléter en fonction des bénévoles locaux +L'équipe de bénévoles locaux sera heureuse de répondre à vos questions +\begin{itemize} + \item FIORE François +\item MESNIL Mikaël +\end{itemize} +Nous sommes joignables par téléphone: 0972507992 \clearpage \section{Partenaires} From 409b59f090eac30146415ae384795845c24860c1 Mon Sep 17 00:00:00 2001 From: Laurent GUERBY Date: Sat, 27 Jun 2015 20:41:57 +0200 Subject: [PATCH 02/38] add rennes 2015 --- slides/ttnn-rennes-2015.tex | 810 ++++++++++++++++++++++++++++++++++++ 1 file changed, 810 insertions(+) create mode 100644 slides/ttnn-rennes-2015.tex diff --git a/slides/ttnn-rennes-2015.tex b/slides/ttnn-rennes-2015.tex new file mode 100644 index 0000000..d585af5 --- /dev/null +++ b/slides/ttnn-rennes-2015.tex @@ -0,0 +1,810 @@ +\documentclass{beamer} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage{graphicx} +\usepackage[frenchb]{babel} +\usepackage{hyperref} +\usepackage{pgf} +\usepackage{eurosym} +\DeclareUnicodeCharacter{20AC}{\euro} +\usepackage{textcomp} +\usepackage{xcolor} +\usepackage{pgfplots} +\usepgfplotslibrary{dateplot} % Needs TeXlive 2013 ... + +\usetheme{Rochester} + +% Page number n/tot in the lower right corner +\usefoottemplate{ + \begin{beamercolorbox}[ht=2.25ex,dp=4ex,right,ignorebg]{date in head/foot} + \usebeamerfont{date in head/foot} + \insertframenumber/\inserttotalframenumber + \end{beamercolorbox} + } +\usenavigationsymbolstemplate{} + +% \graphicspath{{../images/}} + +% Color for links +\definecolor{darkblue}{rgb}{0.,0.2,0.375} +\hypersetup{ + colorlinks=true, + urlcolor=darkblue, + linkcolor=black +} +% also use it for page numbers +\setbeamercolor*{palette secondary}{fg=darkblue,bg=black!25} + +% a macro for figures +\newcommand\fig[2]{ + \centerline{\includegraphics[width=#2]{#1}}} + +% Tetaneutral.net logo +\definecolor{ttnn1}{rgb}{.695,.645,.551} +\definecolor{ttnn2}{rgb}{.906,.839,.730} +\newcommand{\ttnn}{\Huge\color{ttnn1}{\textbf{teta}}\color{ttnn2}{neutral}\color{ttnn1}{.net}} + +% go +\title{Tetaneutral.net un FAI associatif} +\author{Laurent Guerby} +\institute{\ttnn{}} +\date{Jardin Entropique - Rennes - 27 juin 2015} + + +\AtBeginSection[]{ +\begin{frame} +\frametitle{Agenda} +\tableofcontents[currentsection] +\end{frame} +} +%---------------------------------------------------------------------- +\begin{document} +%---------------------------------------------------------------------- +\begin{frame}[plain] +\maketitle +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Licence} + +\centerline{\includegraphics[width=2cm]{88x31}} +\vspace{1em} +{\scriptsize +Ce document est sous licence \\[1ex] +\emph{Creative Commons Paternité - Partage à l'Identique 3.0 non transposé.}\\[10pt] + +Le texte complet de cette licence est disponible à l'adresse~:\\ +\url{http://creativecommons.org/licenses/by-sa/3.0/}} + +\end{frame} +%---------------------------------------------------------------------- +\begin{frame}{À propos de l'orateur} +\textbf{Laurent Guerby} +\begin{itemize} +\item Ingénieur Télécom Bretagne 1996 +\item Une décennie dans la finance internationale +\item Situation financière confortable +\item Consacre 80\% de son temps à de l'associatif en bénévole +\item Président de l'association tetaneutral.net +\end{itemize} +\url{mailto:laurent@guerby.net}\\ +\end{frame} + +%---------------------------------------------------------------------- +\begin{frame} + \frametitle{Agenda} + \tableofcontents +\end{frame} +%---------------------------------------------------------------------- +\section{Introduction} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Objectifs} +\begin{itemize} +\item Comment (et pourquoi) créer un opérateur en France +\item Légal / IP / Datacenter / L2 / BGP / Transit / Peering et IX +\item La pratique +\item Matériel sans fil performant sur fréquences ouvertes au public / zones « blanches » +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Objets de l'association} +\begin{itemize} +\item But pédagogique : comprendre les mécanismes des internets +\item Apprendre en pratiquant : devenir FAI +\item Défense de la Neutralité du Réseau +\item Moyens pédagogiques à disposition des enseignants +\item Collaboration avec tous les acteurs intéressés +\item Interlocuteurs pour les collectivités locales +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\section{Fournisseur d'Accès Internet} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Historique} +\begin{itemize} +\item Janvier 2011 déclaration préfecture (loi 1901) +\item INSEE (Siren/Siret code APE), ARCEP (FAI) +\item Février 2011 RIPE (Adresses IP) +\item Mars 2011 serveur à Paris (connectivité) +\item Ouverture compte crédit coopératif (\euro\euro\euro) +\item Membre fondateur de la Fédération FDN / essaimage +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{IANA / RIR / LIR} +\begin{itemize} +\item Internet Assigned Numbers Authority +\item Délègue aux Regional Internet Registry\\ + AfriNIC, ARIN, APNIC, LACNIC, RIPE +\item Réseaux IP Européens Network Coordination Centre +\item Local Internet Registry +\item À Toulouse celui choisi : \href{http://fullsave.com/}{FullSave} +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Dossier LIR et RIPE} +\begin{itemize} +\item Pour obtenir des IP, il faut monter un dossier administratif avec son LIR +\item RIPE pointilleux, par exemple tout refaire avec « Association tetaneutral.net » plutôt que « tetaneutral.net » +\item Justificatifs (factures, logs de routeurs, autre,...) +\item le LIR paye au RIPE \EUR{50} HT/an et par ressource et refacture ce qu'il veut pour le service. +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{IP et RIPE} +\begin{itemize} +\item Wikipedia \href{http://en.wikipedia.org/wiki/Ipv4_address_exhaustion}{Ipv4\_address\_exhaustion} +\item LIR existant RIPE : un seul /22 IPv4 = 1024 IP +\item Nouveau LIR \EUR{2000} HT signup fee +\item \EUR{1800} HT/an +\item /29 à /32 IPv6 et... un seul /22 IPv4 si justifié (en « PA ») +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Association et Opérateur} +\begin{itemize} +\item CPCE Code des Postes et des Communications Électroniques +\item ARCEP Autorité de Régulation des Communications Électroniques et des Postes +\item Réseau ouvert au public +\item L33-1 \textasciitilde{} 1300 opérateurs +\item R9-2 \textasciitilde{} 30 opérateurs +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Opérateur 2} +\begin{itemize} +\item ARCEP décision 12-1304 du 23 octobre 2012 : tetaneutral.net +\item liste nominative des opérateurs destinataires des informations concernant l'installation de lignes de communications électroniques à très haut débit en fibre optique dans les immeubles +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Obligations} +\begin{itemize} +\item « \textit{Bonjour, tel jour à telle heure telle adresse IP chez + vous (RIPE) a parlé à telle autre adresse IP, donnez-nous les nom et adresse de l'abonné} » +\item IP publique fixe par abonné : pas de logs, seulement début/fin + d'abonnement +\item IP partagées : logs de connexion à maintenir pour pouvoir + répondre, informations sensibles sur la vie privée. +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Transparence} +\begin{itemize} +\item Budget potentiellement conséquent, service, argent, questions +\item Publier le log des dépenses est facile si fait régulièrement et + peu coûteux en temps +\item Publier bilan comptable fastidieux, annuel et a posteriori, + perte d'information +\item Amortissement et équilibre financier : vue subjective, chacun + peut se faire une idée différente +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\section{Connexion à l'Internet} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Historique 2} +\begin{itemize} +\item Avril 2011 pose de notre fibre optique +\item Mise en service du réseau +\item Juillet 2011 ouverture des services +\item Septembre 2011 FAI à Saint-Gaudens +\item Novembre 2011 \EUR{700}/mois : équilibre financier mensuel +\item Décembre 2011 apport de Toulouse Sans Fil +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Fibre et L2} +\begin{columns} +\column{0.6\textwidth} +\begin{itemize} +\item 307\,m de fibre du DC Cogent vers Myrys +\item Transit fibre Cogent $\rightarrow$ TH2 +\item Présence au DC TH2 (paris) connexion France-IX, Liazo, Equinix, + FR-IX, GIXE, FDN +\end{itemize} +\column{0.4\textwidth} +\fig{11b}{\textwidth} +\fig{11}{\textwidth} +\end{columns} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Datacenter} +\begin{itemize} +\item Rackable, baie et partie, kVA +\item 1U via revendeur en général +\item Politique pour le câblage et l'accès +\item Meet Me Room, demi-circuits +\item WDM car câbles chers +\item Mono ou Multi opérateurs +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\section{Accès aux contenus : peering} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Peering et Transit} +\begin{itemize} +\item Émettre et recevoir pour une destination +\item Peering privé +\item Peering via point d'échange « IX » +\item Peering via route serveur d'un IX +\item Peering payant ou gratuit +\item Transit pour tout ce qui n'est pas passé en peering +\item Redondance +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Peering en pratique} +\begin{itemize} +\item \url{http://as197422.peeringdb.com/} +\item Facebook, Google, Microsoft : politique de peering ouverte \\ +même pour tetaneutral.net +\item Liste d'annonce sur les IX, nouveaux venus, maintenance et + incidents +\item France-IX : 200\,Gbit/s, AMS-IX 3.2\,Tbit/s +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Peering local} +\begin{itemize} +\item TouIX Toulouse Internet Exchange +\item Boucle optique Cogent/Neo Center/HdT +\item fin mai 2014 TLS00 de Fullsave \url{http://tls00.fr} +\item Renater Toulouse ? +\item Convention avec France-IX VLAN 4032 GE +\item Interconnexion Route Server LyonIX +\item Projet SDN TouSIX +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Border Gateway Protocol} +\begin{itemize} +\item Pour s'échanger les routes et les gateway entre routeurs +\item BGPv4 RFC4271 actuellement en prodution sur l'internet. Port + tcp/179 +\item Identifiant BGP : Autonomous System Number ou « ASN », attribué + par les RIR +\item tetaneutral.net : AS 197422 (AS4 AS32) +\item \textasciitilde{} 540\,000 routes IPv4 et \textasciitilde{} 23\,000 + IPv6 +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{BIRD Internet routing daemon} +\begin{itemize} +\item BIRD \url{http://bird.network.cz/} +\item BGP en C sous licence GPL +\item Prévu pour être efficace et peu consommateur en ressources +\item « full view » en \textasciitilde{} 70\,MB de RAM +\item 15 mars - 25 mai 2011 : 700 minutes de CPU soit 10 mn/j\\ + < 1\% CPU usage (core i3 @ 3\,GHz) +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Routeur tetaneutral.net} +\fig{06}{.9\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Réseau d'interconnexion tetaneutral.net} +\fig{12}{0.9\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Looking Glass et NLNOG Ring} +\begin{itemize} +\item \url{http://lg.tetaneutral.net/} +\item \url{https://ring.nlnog.net/} +\item \url{http://lg.ring.nlnog.net/} +\item Échange de VM entre opérateurs +\item Tests ping, traceroute, matrice MTU +\item \url{http://amp.ring.nlnog.net/matrix.php/ipv4/mtu/FR/NL} +\item Ring SQA partial outage detector +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Looking Glass: Peering \& Transit} +\fig{lg-n7}{\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Statistiques juin 2015} +\begin{center} +\begin{tikzpicture} +\begin{axis}[ + enlarge x limits=0.5, + x=2cm, + ybar stacked, + ylabel={Débit moyen (Mb/s)}, + ymin=0, + legend style={at={(0.5,-0.1)}, anchor=north}, + bar width=1cm, + symbolic x coords={Reçu,Émis}, + xtick=data, + nodes near coords, + nodes near coords align={vertical}, +] +\addplot coordinates {(Reçu,213) (Émis,214)}; +\addplot coordinates {(Reçu,128) (Émis,104)}; +\legend{transit, peering} +\end{axis} +\end{tikzpicture} +\end{center} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{RIPE-532} +\begin{itemize} +\item PI : Provider Independant +\item PA : Provider Aggregated +\item IPv6 $\Rightarrow$ tetaneutral.net a un PA /40 +\item Problème de filtre « strict » à /32 +\item Seule solution : LIR +\item /29 $\Rightarrow$ 8 * /32 +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\section{Distribution du réseau aux adhérents} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Accès internet} +\begin{itemize} +\item RTC 56\,kbit/s +\item ADSL max 20\,Mbit/s réception 1\,Mbit/s envoi +\item 512\,kbit/s à quelques kilomètres de ligne +\item SDSL max 4\,Mbit/s symétrique par paire +\item VDSL 100/50\,Mbit/s, identique à ADSL à 1,5\,km +\item Satellite géostationnaire 35786\,km Ka-Sat 26.5-40\,GHz +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Accès internet 2} +\begin{itemize} +\item Wimax 3.5\,GHz en France, Licence +\item 3G/4G/LTE, pas forcément couvert +\item Wifi via professionnel PME Alsatis ou TPE Attilog +\item Fibre optique 10-40\,km max > 1\,Tbit/s, 100-1000\,Mbit/s pour + modem \textasciitilde{} \EUR{100} +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{ADSL} +\begin{itemize} +\item La majorité des accès haut débit est en ADSL +\item NRA N\oe{}ud de Raccordement Abonné +\item \textasciitilde{} 15000 NRA en France +\item + \url{http://www.free.fr/adsl/pages/accueil/carte-de-debits-adsl.html} +\item Rayon 3-4\,km puis zone grise puis blanche +\item Zone grise étendue < 2\,Mbit/s pas de TV +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Services} +\begin{itemize} +\item Aux adhérents, cotisation \EUR{20}/an +\item Hébergement de serveur en format libre et serveurs virtuels +\item Accès internet à Toulouse \EUR{20}/mois +\item Gratuit pour les squats (mouvement CREA) +\item Tarifs libres, longue présentation personnalisée des objectifs à + chaque nouvel adhérent +\item Pas de « clic et service » +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Services 2} +\begin{itemize} +\item Accès internet en zone blanche \EUR{28}/mois +\item Pas de frais d'accès (hors antenniste) +\item Pas de frais de résiliation +\item Pas d'engagement de durée (mensuel) +\item Internet seul sans téléphone ni TV +\item Antenne, câble extérieur et routeur fournis pour la durée de + l'abonnement +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Services 3} +\begin{itemize} +\item Cher, prix de convergence hors équipement plutôt à \EUR{15}/mois +\item Marge de man\oe{}uvre pour le futur +\item VoIP via prestataire classique +\item Exemple offre OVH illimité vers les fixes pour \EUR{1,18}/mois, + \EUR{80} de caution pour le téléphone +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Wifi et Radio} +\begin{itemize} +\item Domaine public, bien commun +\item Novembre 2002 - avril 2007 ouverture expérimentale en France +\item 2402 - 2482\,MHz 20\,dBm = 100\,mW +\item total 80\,MHz ouverts +\item TSF et pionniers +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Wifi 2} +\begin{itemize} +\item 5\,GHz ouvert en décembre 2005 en France +\item 5170 - 5220 20\,dBm $\Rightarrow$ 80\,MHz +\item 5250 - 5330 20\,dBm DFS $\Rightarrow$ 80\,MHz +\item 5490 - 5710 30\,dBm = 1W DFS $\Rightarrow$ 220\,MHz +\item dont 5600-5650 radar météo fixe (5625 à Toulouse) DFS +\item 5745 - 5826 $\Rightarrow$ USA 80\,MHz puissance plus élevée +\end{itemize} +Consulté avec la FFDN pour la \url{http://www.mission-spectre2014.fr/} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Efficacité spectrale} +\begin{itemize} +\item Débit sur une fréquence partagé par les utilisateurs sur une + zone géographique +\item 802.11abgn, 802.11ac (canaux 80 et 160\,MHz en 5\,GHz) et 802.11ad (60\,GHz) \\ + \url{http://en.wikipedia.org/wiki/IEEE_802.11} +\item En situation réelle 100\,Mbit/s sur 40\,MHz (une direction) \\ + 8.6\,km $\rightarrow$ 2.5\,bit/s/Hz +\item AirFiber 5X 220 Mbit/s symetrique sur 50 MHz \\ + 4.1\,km $\rightarrow$ 8.8\,bit/s/Hz +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{PIRE} +\begin{itemize} +\item PIRE Puissance Isotrope Rayonnée Équivalente +\item EIRP Equivalent Isotropically radiated Power +\item Signal/Bruit +\item Lois et règlements +\item Puissances faibles sur les bandes ouvertes vs les bandes + soumises à licence +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Ondes et Santé} +\begin{itemize} +\item 2,4\,GHz rien de spécifique vis à vis de l'eau (20\,GHz), un + micro-ondes peut marcher à d'autres fréquences +\item Téléphones sans fil \textasciitilde{} wifi +\item GSM \textasciitilde{} 4\,W max dans la poche, > 100\,W Base +\item Radio FM 2000-4000\,W +\item Antennes plus nombreuses = moins de puissance \\ + mesure champmètre +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Antenne} +\begin{columns} +\column{0.7\textwidth} +\begin{itemize} +\item Analogie ampoule et lampe torche +\item Concentration du signal dans une direction +\item Parabole de 60\,cm à 5\,GHz $\Rightarrow$ 30\,dBi = *1000 \\ + dans un cône de quelques degrés +\item MIMO multiple-input and multiple-output +\item Polarisation : multiplicateur de débit +\end{itemize} +\column{0.3\textwidth} +\fig{P1070287-crop}{\textwidth} +\end{columns} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Bilan Radio} +\begin{itemize} +\item Longueur d'onde +\begin{itemize} +\item 2,4\,GHz \textasciitilde{} 12\,cm +\item 5\,GHz \textasciitilde{} 5\,cm +\end{itemize} +\item Ne passe pas les obstacles \textasciitilde{} longueur d'onde +\item Arbres, bâtiments, collines +\item Zone de Fresnel +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Produits Radio} +\begin{columns} +\column{0.6\textwidth} +\begin{itemize} +\item Ubiquity \url{http://ubnt.com/} AirOS +\item Mikrotik \url{http://mikrotik.com/} RouterOS +\item 60-\EUR{100} diverses formes d'antenne intégrée. 200-\EUR{300} + pour antenne évoluée +\item PoE Power Over Ethernet +\item Option Wifi non standard TDMA +\item AirOS = OpenWRT avec SDK +\item Ath9k Atheros Qualcomm pilote libre +\end{itemize} +\column{0.4\textwidth} +\fig{IMG_20131108_151905}{\textwidth} +\end{columns} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Tests Radio} +\begin{itemize} +\item 8600m Pech David - Ramassier +\item 40\,MHz parabole 40\,cm RX -73/-74\,dBm +\item Rama TX: 102.2, 106.5, 114.0, 112.0\,Mb/s +\item Rama RX: 99.1, 99.4, 98.9, 99.4 Mb/s +\item Duplex (RX/TX): 46/48, 47/51, 47/46 Mb/s +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Tests Radio 2} +\begin{itemize} +\item 10\,MHz Parabole 40\,cm vers Omni +\item RX -75\,dBm coté Ramassiers (parabole) +\item Rx -84\,dBm coté Pech David (omni) +\item Rama TX: 5.63, 5.76, 5.67, 4.95\,Mb/s +\item Rama Rx: 19.15, 16.40, 13.54, 14.63\,Mb/s +\item Moins bon en 20\,Mhz, courbe en cloche +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Internet} +\begin{itemize} +\item Radio $\Rightarrow$ Internet ? +\item Ligne ADSL classique = 1 IP, parfois fixe +\item Livraison de plusieurs IP possible, FDN, pro +\item Sinon tunnel avec logiciel libre OpenVPN +\item Dans ce cas la ligne ADSL ne va communiquer qu'avec une seule + IP, celle du serveur +\item Le serveur est sur un autre réseau qui a les IP qui nous + intéressent +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Pont réseau} +\begin{itemize} +\item Configuration simple en pont réseau des équipements radio +\item Comme des câbles ethernet et des switches chaînés +\item Le réseau a une topologie en arbre, pas de boucle, pas de + redondance +\item Utilisation du firmware standard mode WDS +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Protocoles Mesh} +\begin{itemize} +\item OLSR (Toulouse sans fil) +\item Batman +\item Babel/Babel-Z +\item OSPF/BGP +\item Battlemesh +\item Choix du niveau de complexité +\end{itemize} +Note: guifi.net 28600 n\oe{}uds 52459\,km de liens 300 n\oe{}uds / mois +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Neutralité du réseau} +\begin{itemize} +\item Comment gérer la congestion ? +\item Ne rien faire : les équipements ont une règle par défaut... \\ + pas si neutre que ça +\item « tail drop » : neutre mais... par flux +\item Règles à tetaneutral.net : équité sur le débit + instantané. Historique du volume ? +\item Latence, petit paquets ? +\item VoIP et service garanti +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{En pratique} +\begin{itemize} +\item Trouver un point de collecte +\item Entreprise TPE/PME locale, avantage présence 9h-17h sur site +\item Particulier (vacances, clés) +\item Maison association, salle des fêtes, mairie +\item Si deux NRA sur la zone $\Rightarrow$ redondance +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{En pratique 2} +\begin{itemize} +\item 1 ADSL > 10\,Mbit/s 4 foyers à Monès +\item 3 ADSL > 10\,Mbit/s 40 foyers à St-Gaudens +\item 5 ADSL \textasciitilde{} 10\,Mbit/s pour 140 foyers à Sames + Wireless dans les Pyrénées Atlantiques +\item Offre FTTH Orance CELAN cher (500-\EUR{1500}/mois) avec + \EUR{5000} de frais d'accès +\item 40*28 = \EUR{1120}/mois : possible à Saint-Gaudens +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Points Hauts} +\begin{columns} +\column{0.6\textwidth} +\begin{itemize} +\item Mat d'antenne TV +\item Droit à l'antenne en copropriété +\item Radio amateur (mât 12m et plus, souvent motivés) +\item Hangar ou bâtiment agricole +\item Poteau d'éclairage stade ou municipal +\item Château d'eau, clocher +\item Compromis négociation/radio/maintenabilité +\end{itemize} +\column{0.4\textwidth} +\fig{alex_20130316}{\textwidth} +\end{columns} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Relai Autonome} +\begin{itemize} +\item Electricité en haut de la colline ? +\item Projet étudiant avec l'IUT de Blagnac +\item Carte Mikrotik RouterBoard 433 1.2\,Watt +\item Dec-Jan moyenne mensuelle 1h soleil/jour +\item 100\,W $\Rightarrow$ 100\,Wh $\Rightarrow$ 5\,W pendant 24\,h +\item 1,5\,m * 0,5\,m = 0,75\,m$^2$ +\item 20\,kg batteries ? PbAc ou LiFePO$_4$ ? +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Réseau radio tetaneutral.net à Toulouse} +\fig{map_tsf}{.9\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Cartographie} +\fig{aircontrol}{\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\section{Hébergement et services} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Hébergeur et EDF} +\begin{itemize} +\item EDF : $0.1372 * 365 * 24 / 1000 = 1.202\,\textup{\euro}$ \\ + pour 1 Watt en continu pendant un an +\item Climatisation +\item Enercoop source renouvelable : $0.1611 \rightarrow + 1.411\,\textup{\euro}$ +\item Rackable / PC Tour ATX / Ventilation +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Hébergement tetaneutral.net} +\fig{myrys_baie}{.55\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Règlement intérieur} +{\small Dans le cadre de son objet social l'association fournit des services à +ses adhérents de manière solidaire contre une participation aux frais +engagés par l'association. Ces services sont gérés par des bénévoles +sur leur temps libre et de manière amateur. Par conséquence, ces +services sont fournis sans aucune garantie de qualité, performance, +disponibilité, délai de réponse aux demandes de support ou de sécurité +des données et des équipements. L'association ne peut être tenue +responsable de toute conséquence liée au non fonctionnement ponctuel +ou définitif d'un service ou d'une perte de donnée ou de +matériel. Chaque adhérent doit donc s'assurer par lui même de pouvoir +disposer de sauvegardes de données et d'un service de secours +convenant à ses besoins en cas de défaillance d'un ou plusieurs +services fournis par l'association. +} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Historique 3} +\begin{itemize} +\item Juillet 2012 début du remboursement du prêt de \EUR{12000}, rythme \textasciitilde{} \EUR{1000}/mois +\item Octobre 2012 FAI à Monès +\item Novembre 2012 216 adhérents pour \EUR{2600}/mois de service pour \EUR{900}/mois de frais +\item Janvier 2014 428 adhérents \EUR{5800}/mois service \EUR{3600}/mois de frais +\item Mai 2014 535 adhérents \EUR{7400}/mois service \EUR{3600}/mois de frais +\item Juin 2015 730 adhérents \EUR{11400}/mois service \EUR{3600}/mois de frais +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Récapitulatif Association - Juin 2015} +\begin{tabular}{lrrrrr} +Service & npay & ninf & ngra & \euro & \% \\ +\hline +Hosting & 55 & 8 & 10 & 1046 & 9.2 \\ +VM & 60 & 16 & 30 & 493 & 4.3 \\ +IP & 3 & 0 & 0 & 30 & 0.3 \\ +abo ADSL & 7 & 0 & 0 & 210 & 1.8 \\ +abo Toulouse & 87 & 0 & 29 & 1383 & 12.1 \\ +abo Mones & 9 & 0 & 1 & 244 & 2.1 \\ +abo Saint-Gaudens & 270 & 0 & 9 & 7528 & 65.9 \\ +abo Mauvaisin & 14 & 0 & 3 & 384 & 3.4 \\ +abo Cazeres & 1 & 0 & 0 & 28 & 0.2 \\ +abo Fabas & 2 & 0 & 2 & 43 & 0.4 \\ +abo Goyrans & 1 & 0 & 0 & 28 & 0.2 \\ +abo Banyuls & 0 & 0 & 1 & 0 & 0.0 \\ +abo Montescots & 0 & 0 & 4 & 0 & 0.0 \\ +\hline +\end{tabular} + +\end{frame} +%---------------------------------------------------------------------- +\section{Conclusion} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Peopleware} +\begin{itemize} +\item Motivation pour avoir du débit et/ou de la neutralité +\item Comprendre les limites d'une association et du bénévolat +\item Chercher l'aide technique auprès des autres associations +\item Tout types de public, de professionels passionés à retraités «\,pas internet pas de petits enfants à la maison\,» +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame}[plain] +\begin{center} +\Huge{Questions ?} +\end{center} +\vfill +\begin{flushright} +\url{mailto:question@tetaneutral.net} +\end{flushright} +\end{frame} +%---------------------------------------------------------------------- +\end{document} From 781d23e8fc48f5e97725ecaff1bdd0fb2e88cb76 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Wed, 18 Nov 2015 22:45:47 +0100 Subject: [PATCH 03/38] Corrections de style, modifs pour version novembre 2015. --- flyer/flyer-ttnn.tex | 49 ++++++++++++++++++++------------------------ 1 file changed, 22 insertions(+), 27 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index a064b37..d3fcf00 100644 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -41,7 +41,7 @@ \author{% \Large \bf FAI \& Hébergeur libre} -\date{Mai 2015} +\date{Novembre 2015} %\CutLine*{1}% Dotted line without scissors %\CutLine{6}% Dotted line with scissors @@ -105,12 +105,11 @@ et milite pour la neutralité du réseau internet. \subsection{Un réseau maillé} -Chaque abonné de l'association est connecté par le biais d'une petite +Chaque adhérent de l'association est connecté par le biais d'une petite antenne placée à l'extérieur de son logement (toit, balcon, etc.). Les -puissances utilisées sont très faibles en raison des relativement -courtes distances. -Chaques adhérents relaient le signal radio, afin de -constituer un grand réseau maillé. +puissances utilisées sont très faibles en raison des distances relativement +courtes. Le signal radio est relayé de proche en proche pour étendre +le réseau. \subsection{Disponible en zone blanche} @@ -120,12 +119,12 @@ rentables. Avec sa technologie à bas coût et sa logique sans but commercial l'association est capable d'amener l'internet à haut débit dans la majorité de ces zones. -Fin 2014, le réseau Tetaneutral.net est déployé principalement en quatre +Fin 2015, le réseau Tetaneutral.net est déployé principalement en quatre endroits : \begin{itemize} -\item Comminges 270 abonnés -\item Toulouse 115 abonnés -\item Mauvaisin 18 abonnés +\item Comminges 275 abonnés +\item Toulouse 120 abonnés +\item Mauvaisin 20 abonnés \item Mones 10 abonnés \end{itemize} @@ -222,9 +221,6 @@ de 2 à 5 euros/mois/IPv4 supplémentaire. L'association est transparente sur sa comptabilité avec des points mensuels sur la liste principale, ainsi que sur le site Internet -\section{Bénévoles locaux} - -section à compléter en fonction des bénévoles locaux \clearpage \section{Partenaires} @@ -240,34 +236,34 @@ commerciaux ont accueilli favorablement l'idée de ce projet. Dans ce local l'association \textbf{Tetalab} est également présente et nous apporte des compétences techniques. -Egalement, la société \textbf{Fullsave} nous confie généreusement un local +La société \textbf{Fullsave} met à notre disposition un local associatif au sein de l'un de ses centre de données Toulousain, afin d'héberger une partie de nos équipements informatiques. -L'association est aussi l'un des membres fondateurs d'un point +L'association fait partie des membres fondateurs du point d'échange Internet régional, le \textbf{TouIX} Nous utilisons des logiciels libres et l'association \textbf{Toulibre} qui développe localement la connaissance de ces logiciels libres est partenaire du projet. -Au niveau national l'association \textbf{French Data Network}, le plus vieux -fournisseur d'accès à internet français encore en activité a lancé -l'initiative « FAI locaux » et aide ce type de projet, en particulier en -apportant des compétences juridiques et réglementaires et aussi en -donnant la possibilité d'offrir un accès internet ADSL classique a nos -adhérents. +Au niveau national l'association fait partie de la \textbf{Fédération +FDN} créée par \textbf{French Data Network}, le plus vieux +fournisseur d'accès à internet français encore en activité pour +regrouper les associations locales issues comme Tetaneutral.net de son +projet d'essaimage. + +Tetaneutral.net est membre du \textbf{RIPE NCC} (Réseau IP Européen). \section{Les moyens techniques} Tetaneutral.net utilise tous les moyens à sa disposition pour faire -passer l'internet. Via \textbf{French Data Network} l'association peut offrir -un accès ADSL en dégroupage partiel. +passer l'internet. -Entre nos locaux et le centre réseau une fibre optique a été posée. Des +Une fibre optique a été posée entre Mixart'Myrys et le centre réseau. Des locaux au reste des utilisateurs une liaison radio utilisant la technologie -\textbf{Airmax} du constructeur \textbf{Ubiquiti} est déployée, basée sur les travaux -de Toulouse Sans Fil. Et enfin +\textbf{Airmax} du constructeur \textbf{Ubiquiti} est déployée, basée +sur les travaux de Toulouse Sans Fil. Et enfin dans le cadre des évolutions réglementaires et tarifaires Tetaneutral.net regarde s'il est possible de mettre en place de la fibre optique chez ses membres. @@ -312,7 +308,6 @@ services autres que téléphonique\\ réseau ouvert au public\\ \end{verse} - \centerline{\includegraphics[height=7cm]{campagne-ffdn-500x212}} \vfill From c53d1318aa81fbe46258f61298fbe6541806a249 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Fri, 22 Apr 2016 19:07:13 +0200 Subject: [PATCH 04/38] Chiffres 04/2016 --- flyer/flyer-ttnn.tex | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index d3fcf00..e052757 100644 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -41,7 +41,7 @@ \author{% \Large \bf FAI \& Hébergeur libre} -\date{Novembre 2015} +\date{Avril 2016} %\CutLine*{1}% Dotted line without scissors %\CutLine{6}% Dotted line with scissors @@ -119,13 +119,13 @@ rentables. Avec sa technologie à bas coût et sa logique sans but commercial l'association est capable d'amener l'internet à haut débit dans la majorité de ces zones. -Fin 2015, le réseau Tetaneutral.net est déployé principalement en quatre -endroits : +Début 2016, le réseau Tetaneutral.net est déployé principalement en +quatre endroits : \begin{itemize} -\item Comminges 275 abonnés -\item Toulouse 120 abonnés -\item Mauvaisin 20 abonnés +\item Toulouse 115 abonnés +\item Mauvaisin 25 abonnés \item Mones 10 abonnés +\item Goyrans 10 abonné \end{itemize} \subsection{Partage des connaissances} From ec5cae828f0ea52f069b85e264becfedad5550b5 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Fri, 22 Apr 2016 19:07:29 +0200 Subject: [PATCH 05/38] Reformule le paragraphe moyens techniques --- flyer/flyer-ttnn.tex | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index e052757..5d24078 100644 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -260,13 +260,13 @@ Tetaneutral.net est membre du \textbf{RIPE NCC} (Réseau IP Européen). Tetaneutral.net utilise tous les moyens à sa disposition pour faire passer l'internet. -Une fibre optique a été posée entre Mixart'Myrys et le centre réseau. Des -locaux au reste des utilisateurs une liaison radio utilisant la technologie -\textbf{Airmax} du constructeur \textbf{Ubiquiti} est déployée, basée -sur les travaux de Toulouse Sans Fil. Et enfin -dans le cadre des évolutions réglementaires et tarifaires -Tetaneutral.net regarde s'il est possible de mettre en place de la -fibre optique chez ses membres. +Une fibre optique à 10Gb/s connecte les locaux de Mixart'Myrys à un +data-center du quartier. + +Des liaisons radio utilisant une technologie de type WiFi dans la +bande des 5GHz sont déployées vers les adhérents, en partant soit +directement des locaux de l'association, soit de points d'accès à haut +débit mis à disposition par des adhérents ou des sympatisants. \newpage From 6f08865d13a2d4c1c760cab2fec8635c9e5cc57f Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Fri, 22 Apr 2016 19:30:05 +0200 Subject: [PATCH 06/38] QR-code avec l'url de wifi with me --- flyer/flyer-ttnn.tex | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 5d24078..898f40e 100644 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -1,6 +1,7 @@ \documentclass[10pt,foldmark,a4paper]{leaflet} \usepackage[utf8]{inputenc} \usepackage{txfonts} +\usepackage{qrcode} \usepackage[frenchb]{babel} %\renewcommand*\foldmarkrule{.3mm} @@ -68,7 +69,7 @@ {\large Pour toute question sur l'association -adressez un courriel à \url{}} +adressez un courriel à : \textbf{\url{question@tetaneutral.net}}} \section{Le projet} @@ -308,7 +309,11 @@ services autres que téléphonique\\ réseau ouvert au public\\ \end{verse} -\centerline{\includegraphics[height=7cm]{campagne-ffdn-500x212}} +%\centerline{\includegraphics[height=7cm]{campagne-ffdn-500x212}} +\vspace{1cm} +\begin{center} + \qrcode[height=3cm]{https://radio.tetaneutral.net/} +\end{center} \vfill From 3700afd51b4388538a24b8ad0a1f5472919dab05 Mon Sep 17 00:00:00 2001 From: Laurent GUERBY Date: Wed, 22 Jun 2016 08:33:44 +0200 Subject: [PATCH 07/38] add borg --- slides/borg-capitouls-20160623.tex | 226 +++++++++++++++++++++++++++++ 1 file changed, 226 insertions(+) create mode 100644 slides/borg-capitouls-20160623.tex diff --git a/slides/borg-capitouls-20160623.tex b/slides/borg-capitouls-20160623.tex new file mode 100644 index 0000000..43707ff --- /dev/null +++ b/slides/borg-capitouls-20160623.tex @@ -0,0 +1,226 @@ +\documentclass{beamer} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage{graphicx} +\usepackage[frenchb]{babel} +\usepackage{hyperref} +\usepackage{pgf} +\usepackage{eurosym} +\DeclareUnicodeCharacter{20AC}{\euro} +\usepackage{textcomp} +\usepackage{xcolor} +\usepackage{pgfplots} +\usepgfplotslibrary{dateplot} % Needs TeXlive 2013 ... + +\usetheme{Rochester} + +% Page number n/tot in the lower right corner +\usefoottemplate{ + \begin{beamercolorbox}[ht=2.25ex,dp=4ex,right,ignorebg]{date in head/foot} + \usebeamerfont{date in head/foot} + \insertframenumber/\inserttotalframenumber + \end{beamercolorbox} + } +\usenavigationsymbolstemplate{} + +% \graphicspath{{../images/}} + +% Color for links +\definecolor{darkblue}{rgb}{0.,0.2,0.375} +\hypersetup{ + colorlinks=true, + urlcolor=darkblue, + linkcolor=black +} +% also use it for page numbers +\setbeamercolor*{palette secondary}{fg=darkblue,bg=black!25} + +% a macro for figures +\newcommand\fig[2]{ + \centerline{\includegraphics[width=#2]{#1}}} + +% Tetaneutral.net logo +\definecolor{ttnn1}{rgb}{.695,.645,.551} +\definecolor{ttnn2}{rgb}{.906,.839,.730} +\newcommand{\ttnn}{\Huge\color{ttnn1}{\textbf{teta}}\color{ttnn2}{neutral}\color{ttnn1}{.net}} + +% go +\title{Retour d'expérience sur Borg Backup} +\author{Laurent Guerby} +\institute{\ttnn{}} +\date{Capitoul - Toulouse - 23 juin 2016} + + +\AtBeginSection[]{ +\begin{frame} +\frametitle{Agenda} +\tableofcontents[currentsection] +\end{frame} +} +%---------------------------------------------------------------------- +\begin{document} +%---------------------------------------------------------------------- +\begin{frame}[plain] +\maketitle +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Licence} + +\centerline{\includegraphics[width=2cm]{88x31}} +\vspace{1em} +{\scriptsize +Ce document est sous licence \\[1ex] +\emph{Creative Commons Paternité - Partage à l'Identique 3.0 non transposé.}\\[10pt] + +Le texte complet de cette licence est disponible à l'adresse~:\\ +\url{http://creativecommons.org/licenses/by-sa/3.0/}} + +\end{frame} +%---------------------------------------------------------------------- +\begin{frame}{À propos de l'orateur} +\textbf{Laurent Guerby} +\begin{itemize} +\item Ingénieur Télécom Bretagne 1996 +\item Président de l'association tetaneutral.net +\item Ingénieur d'étude IRIT-UT2J depuis le 1er juin 2016 +\item \url{mailto:laurent@guerby.net}\\ +\end{itemize} +\end{frame} + +%---------------------------------------------------------------------- +\begin{frame} + \frametitle{Agenda} + \tableofcontents +\end{frame} +%---------------------------------------------------------------------- +\section{Introduction} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{BorgBackup Project} +\begin{itemize} +\item Documentation \url{https://borgbackup.readthedocs.io} +\item Source \url{https://github.com/borgbackup} +\item Tracker \url{https://github.com/borgbackup/borg/issues} +\item IRC channel \texttt{\#borgbackup} on \url{irc.freenode.net} +\item ThomasWaldmann +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{BorgBackup ?} +\begin{itemize} +\item BorgBackup (short: Borg) is a deduplicating backup program. Optionally, it supports compression and authenticated encryption. +\item The main goal of Borg is to provide an efficient and secure way to backup data. The data deduplication technique used makes Borg suitable for daily backups since only changes are stored. The authenticated encryption technique makes it suitable for backups to not fully trusted targets. +\end{itemize} +\end{frame} + +\begin{frame} +\frametitle{Timeline} +\begin{itemize} +\item Borg is a fork of Attic https://github.com/jborg/attic +\item Current version is 1.0.3, 1.0 march 2016 +\item Python 3.4 (91 \% ) plus some C code +\end{itemize} +\end{frame} + +%---------------------------------------------------------------------- +\section{Running} +%---------------------------------------------------------------------- +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Step by Step} +\begin{itemize} +\item \texttt{borg init /path/to/repo} +\item \texttt{borg create /path/to/repo::20160623 ~/src ~/Documents --exclude '*.pyc'} +\item \texttt{borg list /path/to/repo} +\item \texttt{borg extract /path/to/repo::20160623} +\item \texttt{borg extract /path/to/repo::20160623 home/USERNAME/src} +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Mount Access} +\begin{itemize} +\item \texttt{borg mount /path/to/repo::20160623 /tmp/mymountpoint} +\item \texttt{ls /tmp/mymountpoint} +\item \texttt{fusermount -u /tmp/mymountpoint} +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Remote} +\begin{itemize} +\item \texttt{borg init user@hostname:/path/to/repo} +\item \texttt{borg init ssh://user@hostname:port//path/to/repo} +\item \texttt{command="borg serve --restrict-to-path /path/to/repo",\\no-pty,no-agent-forwarding,\\no-port-forwarding,no-X11-forwarding,\\no-user-rc ssh-rsa ...} +\end{itemize} +\end{frame} + +\begin{frame} +\frametitle{Encryption} +\begin{itemize} +\item \texttt{borg init --encryption=keyfile -v /path/to/repo} +\item \texttt{Enter new passphrase: } +\item \texttt{Key in "/root/.config/borg/keys/mnt\_backup" created} +\item \texttt{export BORG\_PASSPHRASE=xxx} +\end{itemize} +\end{frame} + + +\begin{frame} +\frametitle{Performance} +\begin{itemize} +\item \texttt{Duration: 7 minutes 5.34 seconds} +\item \texttt{Number of files: 2410575} +\item \texttt{Original size Compressed size Deduplicated size\\This archive: 239.23 GB 162.11 GB 294.81 MB\\All archives: 19.16 TB 13.08 TB 166.94 GB} +\end{itemize} +\end{frame} + +%---------------------------------------------------------------------- +\section{Internals} +%---------------------------------------------------------------------- + +\begin{frame} +\frametitle{Repo Format} +\begin{itemize} +\item Simple directory, a few files \texttt{repo/data/config} and \texttt{data} subdirectory +\item \texttt{repo/data/0/9996\} max 10000 files per directory, files about 5 megabytes} +\item independant from number of files to backup +\item rsync works perfectly for duplicating a repo +\end{itemize} +\end{frame} + +\begin{frame} +\frametitle{Checkpointing} +\begin{itemize} +\item \texttt{--checkpoint-interval SECONDS\\ + write checkpoint every SECONDS seconds (Default: 300)} +\item You can restart a backup +\item or just create a new, will go faster one thanks to deduplication +\end{itemize} +\end{frame} + +%---------------------------------------------------------------------- +\section{Conclusion} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Borg is great} +\begin{itemize} +\item Borg solves lots of backup management issues +\item All sysadmins I told about borg switched to it +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame}[plain] +\begin{center} +\Huge{Questions ?} +\end{center} +\vfill +\begin{flushright} +\url{mailto:question@tetaneutral.net} +\end{flushright} +\end{frame} +%---------------------------------------------------------------------- +\end{document} From 824a0b605dc2e80a11bab8c5b4fb775a60abf8dd Mon Sep 17 00:00:00 2001 From: Laurent GUERBY Date: Sun, 26 Jun 2016 16:39:50 +0200 Subject: [PATCH 08/38] fix typos --- slides/borg-capitouls-20160623.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/slides/borg-capitouls-20160623.tex b/slides/borg-capitouls-20160623.tex index 43707ff..06c7eaa 100644 --- a/slides/borg-capitouls-20160623.tex +++ b/slides/borg-capitouls-20160623.tex @@ -153,7 +153,7 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \frametitle{Remote} \begin{itemize} \item \texttt{borg init user@hostname:/path/to/repo} -\item \texttt{borg init ssh://user@hostname:port//path/to/repo} +\item \texttt{borg init ssh://user@hostname:port/path/to/repo} \item \texttt{command="borg serve --restrict-to-path /path/to/repo",\\no-pty,no-agent-forwarding,\\no-port-forwarding,no-X11-forwarding,\\no-user-rc ssh-rsa ...} \end{itemize} \end{frame} @@ -186,7 +186,7 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \frametitle{Repo Format} \begin{itemize} \item Simple directory, a few files \texttt{repo/data/config} and \texttt{data} subdirectory -\item \texttt{repo/data/0/9996\} max 10000 files per directory, files about 5 megabytes} +\item \texttt{repo/data/0/9996}, max 10000 files per directory, files about 5 megabytes} \item independant from number of files to backup \item rsync works perfectly for duplicating a repo \end{itemize} From 8c708758ce4ba37ca19e65626906e6472585a94f Mon Sep 17 00:00:00 2001 From: Laurent GUERBY Date: Sun, 26 Jun 2016 16:41:02 +0200 Subject: [PATCH 09/38] fix typos --- slides/borg-capitouls-20160623.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/slides/borg-capitouls-20160623.tex b/slides/borg-capitouls-20160623.tex index 06c7eaa..76fe1fb 100644 --- a/slides/borg-capitouls-20160623.tex +++ b/slides/borg-capitouls-20160623.tex @@ -186,7 +186,7 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \frametitle{Repo Format} \begin{itemize} \item Simple directory, a few files \texttt{repo/data/config} and \texttt{data} subdirectory -\item \texttt{repo/data/0/9996}, max 10000 files per directory, files about 5 megabytes} +\item \texttt{repo/data/0/9996}, max 10000 files per directory, files about 5 megabytes \item independant from number of files to backup \item rsync works perfectly for duplicating a repo \end{itemize} From 112c6bf9d2c19e802797017813498bc967bc25df Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Fri, 18 Nov 2016 12:06:49 +0100 Subject: [PATCH 10/38] Version novembre 2016 - maj nombre adherents - diverses petites typo - 3 milliards d'internautes en 2016 (https://en.wikipedia.org/wiki/Global_Internet_usage) --- flyer/flyer-ttnn.tex | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) mode change 100644 => 100755 flyer/flyer-ttnn.tex diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex old mode 100644 new mode 100755 index 898f40e..543e677 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -42,7 +42,7 @@ \author{% \Large \bf FAI \& Hébergeur libre} -\date{Avril 2016} +\date{Novembre 2016} %\CutLine*{1}% Dotted line without scissors %\CutLine{6}% Dotted line with scissors @@ -73,8 +73,8 @@ adressez un courriel à : \textbf{\url{question@tetaneutral.net}}} \section{Le projet} -L'internet est un réseau informatique mondial, avec près -de deux milliards d'utilisateurs dans le +L'internet est un réseau informatique mondial, avec plus +de trois milliards d'utilisateurs dans le monde, il est un enjeu social et politique majeur. Il met en œuvre des sciences et techniques à un niveau avancé. @@ -123,10 +123,10 @@ dans la majorité de ces zones. Début 2016, le réseau Tetaneutral.net est déployé principalement en quatre endroits : \begin{itemize} -\item Toulouse 115 abonnés +\item Toulouse 125 abonnés \item Mauvaisin 25 abonnés \item Mones 10 abonnés -\item Goyrans 10 abonné +\item Goyrans 15 abonnés \end{itemize} \subsection{Partage des connaissances} @@ -183,7 +183,7 @@ choisi. Le bureau statuera sur les admissions conformément aux statuts. Cotisation annuelle libre. Montant annuel suggéré : \begin{itemize} \item cotisation normale : 20 € -\item cotisation réduite : à partir de 5€ si faibles moyens +\item cotisation réduite : à partir de 5 € si faibles moyens \end{itemize} Un particulier peut être membre à titre personnel, par exemple avec un @@ -212,7 +212,7 @@ conscience et cela sans justificatif. 25 € par mois pour un PC avec une référence à 20 € par mois pour une consommation de 100 Watt et moyenne autour de 30W. IPv4 supplémentaires sur demande avec un tarif de référence -de 2 à 5 euros/mois/IPv4 supplémentaire. +de 2 à 5 €/mois/IPv4 supplémentaire. \item \emph{Accès internet :} 15 à 30 € par mois, location du matériel radio 5 GHz incluse, IPv4 et IPv6. \end{itemize} @@ -265,7 +265,7 @@ Une fibre optique à 10Gb/s connecte les locaux de Mixart'Myrys à un data-center du quartier. Des liaisons radio utilisant une technologie de type WiFi dans la -bande des 5GHz sont déployées vers les adhérents, en partant soit +bande des 5 GHz sont déployées vers les adhérents, en partant soit directement des locaux de l'association, soit de points d'accès à haut débit mis à disposition par des adhérents ou des sympatisants. From 5ba9685c456c2270048a4c0324fbbc89586ff7c6 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Thu, 25 May 2017 11:34:31 +0200 Subject: [PATCH 11/38] mise a jour siege social --- flyer/flyer-ttnn.tex | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 543e677..9a78c38 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -283,9 +283,10 @@ Siège social : \begin{verse} Association tetaneutral.net\\ -c/o Laurent GUERBY\\ -10 chemin Tricou\\ -31200 TOULOUSE +c/o Sylvain REVAULT\\ +7 Impasse René Char\\ +Logement 39\\ +31600 Lherm \end{verse} Inscription dans la base SIRENE de l'INSEE : From c582c4bad244ed66cc8f4eb5a50f792ded97d5f2 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Thu, 25 May 2017 11:35:54 +0200 Subject: [PATCH 12/38] Mise a jour chiffres --- flyer/flyer-ttnn.tex | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 9a78c38..ba06864 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -42,7 +42,7 @@ \author{% \Large \bf FAI \& Hébergeur libre} -\date{Novembre 2016} +\date{Mai 2017} %\CutLine*{1}% Dotted line without scissors %\CutLine{6}% Dotted line with scissors @@ -120,13 +120,14 @@ rentables. Avec sa technologie à bas coût et sa logique sans but commercial l'association est capable d'amener l'internet à haut débit dans la majorité de ces zones. -Début 2016, le réseau Tetaneutral.net est déployé principalement en -quatre endroits : +Début 2017, le réseau Tetaneutral.net est déployé principalement +aux endroits suivants : \begin{itemize} -\item Toulouse 125 abonnés +\item Toulouse 120 abonnés \item Mauvaisin 25 abonnés +\item Goyrans 20 abonnés \item Mones 10 abonnés -\item Goyrans 15 abonnés +\item Cazères 10 abonnés \end{itemize} \subsection{Partage des connaissances} From 21c122933fe7909029921597392ae3168983839a Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Thu, 25 May 2017 11:36:21 +0200 Subject: [PATCH 13/38] Petites ameliorations du style --- flyer/flyer-ttnn.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index ba06864..f20fa5e 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -130,7 +130,7 @@ aux endroits suivants : \item Cazères 10 abonnés \end{itemize} -\subsection{Partage des connaissances} +\section{Partage des connaissances} Un des buts de l'association est le partage de la connaissance. Pour cela elle anime des ateliers ou des conférences techniques @@ -149,7 +149,7 @@ des ordinateurs connectés a l'internet, du plus modeste au domicile d'un internaute aux plus puissantes machines regroupées par milliers dans des centres de traitement de données. -Tetaneutral.net se propose d'offrir la possibilité d'héberger de tels +Tetaneutral.net offre la possibilité d'héberger de tels services dans ses locaux en plus bien sur de ce que peuvent faire ses membres dans leur logement. From edf421b0cbcfdaf8a5d7944072856a60ad84bea4 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Tue, 8 May 2018 19:02:14 +0200 Subject: [PATCH 14/38] Tirets des items plus courts --- flyer/flyer-ttnn.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index f20fa5e..edfab4c 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -37,6 +37,7 @@ \graphicspath{{/home/matthieu/doc/images/}} +\frenchsetup{ItemLabels=\textendash} \renewcommand{\sectfont}{\color{ttnn}\rmfamily\bfseries} \title{\Huge\color{ttnn1}{\textbf{teta}}\color{ttnn2}{neutral}\color{ttnn1}{.net}} From c633f80c4caadcb70cc2c5b155f780f93ce9b6de Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Tue, 8 May 2018 19:02:51 +0200 Subject: [PATCH 15/38] Modernise config package babel/french --- flyer/flyer-ttnn.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index edfab4c..00b23f3 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -1,9 +1,9 @@ -\documentclass[10pt,foldmark,a4paper]{leaflet} +\documentclass[10pt,foldmark,a4paper,french]{leaflet} \usepackage[utf8]{inputenc} \usepackage{txfonts} \usepackage{qrcode} -\usepackage[frenchb]{babel} +\usepackage{babel} %\renewcommand*\foldmarkrule{.3mm} %\renewcommand*\foldmarklength{5mm} From e575ef56fe3ef17f3b7cd8abd90d128725310511 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Tue, 8 May 2018 19:05:02 +0200 Subject: [PATCH 16/38] Supprime morceaux de config inutiles --- flyer/flyer-ttnn.tex | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 00b23f3..d32616a 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -2,19 +2,16 @@ \usepackage[utf8]{inputenc} \usepackage{txfonts} \usepackage{qrcode} +\usepackage{sectsty} \usepackage{babel} %\renewcommand*\foldmarkrule{.3mm} %\renewcommand*\foldmarklength{5mm} -%\usepackage{amsmath} \usepackage[T1]{fontenc} \usepackage{textcomp} -%\usepackage{mathptmx} \renewcommand{\familydefault}{\sfdefault} -%\usepackage{shortvrb} -%\MakeShortVerb{\|} \usepackage{url} \usepackage{graphicx} \usepackage{xcolor} @@ -35,8 +32,6 @@ \newcommand*\defaultmarker{\textsuperscript\textasteriskcentered} -\graphicspath{{/home/matthieu/doc/images/}} - \frenchsetup{ItemLabels=\textendash} \renewcommand{\sectfont}{\color{ttnn}\rmfamily\bfseries} \title{\Huge\color{ttnn1}{\textbf{teta}}\color{ttnn2}{neutral}\color{ttnn1}{.net}} @@ -48,21 +43,19 @@ %\CutLine*{1}% Dotted line without scissors %\CutLine{6}% Dotted line with scissors - %\AddToBackground{1}{% Background of a small page % \put(115,530){\includegraphics[scale=0.12]{puf300x258}}} - \AddToBackground{6}{% Background of a small page \put(0,0){\textcolor{LIGHTGRAY}{\rule{\paperwidth}{\paperheight}}}} - \AddToBackground*{2}{% Background of a large page \put(\LenToUnit{.5\paperwidth},\LenToUnit{.5\paperheight}){% \makebox(0,0)[c]{% \resizebox{.9\paperwidth}{!}{\rotatebox{35.26}{% \textsf{\textbf{\textcolor{LIGHTGRAY}{tetaneutral.net}}}}}}}} +\allsectionsfont{\normalfont\sffamily\bfseries} \begin{document} \maketitle From 2315311a0f44819e4b318b9e58ca748a25bc148f Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Tue, 8 May 2018 19:05:37 +0200 Subject: [PATCH 17/38] Dessin de Zeste sur la 1ere page --- flyer/flyer-ttnn.tex | 33 +++++++++++---------------------- 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index d32616a..2169dcc 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -36,9 +36,7 @@ \renewcommand{\sectfont}{\color{ttnn}\rmfamily\bfseries} \title{\Huge\color{ttnn1}{\textbf{teta}}\color{ttnn2}{neutral}\color{ttnn1}{.net}} -\author{% -\Large \bf FAI \& Hébergeur libre} -\date{Mai 2017} +\author{} %\CutLine*{1}% Dotted line without scissors %\CutLine{6}% Dotted line with scissors @@ -58,27 +56,18 @@ \allsectionsfont{\normalfont\sffamily\bfseries} \begin{document} -\maketitle +%\maketitle +\begin{center} + \LARGE \textbf{WE MAKE INTERNET} +\end{center} +\hspace{-0.5cm}\includegraphics[width=1.1\textwidth]{image-rollup} \thispagestyle{empty} - -{\large Pour toute question sur l'association -adressez un courriel à : \textbf{\url{question@tetaneutral.net}}} - -\section{Le projet} - -L'internet est un réseau informatique mondial, avec plus -de trois milliards d'utilisateurs dans le -monde, il est un enjeu social et politique majeur. -Il met en œuvre des sciences et techniques à un niveau -avancé. - -Pour promouvoir la compréhension de l'internet et de ses enjeux par un -large public, l'association Tetaneutral.net a décidé de devenir membre -à part entière de ce réseau en exerçant les fonctions de fournisseur -d'accès à internet, d'hébergeur internet et d'opérateur sous forme -associative et sans but lucratif. - +\begin{center} + \Large Vers un réseau neutre, solidaire\\ + et Do It Yourself +\end{center} +\clearpage \section{Neutralité du réseau} From 629f1f6415872092f18457f4455dbaef4424cb8d Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Tue, 8 May 2018 19:10:34 +0200 Subject: [PATCH 18/38] ecriture inclusive --- flyer/flyer-ttnn.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 2169dcc..83df033 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -89,7 +89,7 @@ et milite pour la neutralité du réseau internet. \subsection{Un réseau maillé} -Chaque adhérent de l'association est connecté par le biais d'une petite +Chaque adhérent·e de l'association est connecté·e par le biais d'une petite antenne placée à l'extérieur de son logement (toit, balcon, etc.). Les puissances utilisées sont très faibles en raison des distances relativement courtes. Le signal radio est relayé de proche en proche pour étendre @@ -142,8 +142,8 @@ respectant la neutralité du réseau. \section{Participer} -Pour suivre le projet vous pouvez inscrire votre courriel à plusieurs -listes de discussions publiques, archivées et ouvertes à tous : +Pour suivre le projet vous pouvez inscrire votre courriel aux +listes de discussions publiques, archivées et ouvertes à tou·te·s : \begin{itemize} \item La liste de discussion principale de Tetaneutral.net pour la vie From f1ba50a88a0af3af055390588293d64a0284370c Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Tue, 8 May 2018 19:11:39 +0200 Subject: [PATCH 19/38] Chiffres mai 2018 --- flyer/flyer-ttnn.tex | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 83df033..cd3cc02 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -103,14 +103,14 @@ rentables. Avec sa technologie à bas coût et sa logique sans but commercial l'association est capable d'amener l'internet à haut débit dans la majorité de ces zones. -Début 2017, le réseau Tetaneutral.net est déployé principalement +Début 2018, le réseau Tetaneutral.net est déployé principalement aux endroits suivants : \begin{itemize} -\item Toulouse 120 abonnés +\item Toulouse 140 abonnés \item Mauvaisin 25 abonnés -\item Goyrans 20 abonnés -\item Mones 10 abonnés -\item Cazères 10 abonnés +\item Goyrans 25 abonnés +\item Mones 15 abonnés +\item Cazères 15 abonnés \end{itemize} \section{Partage des connaissances} @@ -300,6 +300,10 @@ réseau ouvert au public\\ \qrcode[height=3cm]{https://radio.tetaneutral.net/} \end{center} +\begin{flushright} + Mai 2018 +\end{flushright} + \vfill \centerline{\scriptsize Ne pas jeter sur la voie publique.} From d2a8ef19e5189c7635e7d2b466c8eee107690259 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Tue, 8 May 2018 19:12:49 +0200 Subject: [PATCH 20/38] Espace non sequable devant Euro --- flyer/flyer-ttnn.tex | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index cd3cc02..b3f39af 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -166,8 +166,8 @@ choisi. Le bureau statuera sur les admissions conformément aux statuts. Cotisation annuelle libre. Montant annuel suggéré : \begin{itemize} -\item cotisation normale : 20 € -\item cotisation réduite : à partir de 5 € si faibles moyens +\item cotisation normale : 20\,€ +\item cotisation réduite : à partir de 5\,€ si faibles moyens \end{itemize} Un particulier peut être membre à titre personnel, par exemple avec un @@ -188,16 +188,16 @@ au réduit et les membres contribuent selon leurs moyens et leur conscience et cela sans justificatif. \begin{itemize} -\item \emph{Hébergement de machine virtuelle :} tarif normal 10 € par mois, - suggéré de 5 à 15 € par mois. +\item \emph{Hébergement de machine virtuelle :} tarif normal 10\,€ par mois, + suggéré de 5 à 15\,€ par mois. \item \emph{Hébergement de machine physique au format libre :} suivant la - consommation électrique de la machine. 5 à 10 € par mois pour une + consommation électrique de la machine. 5 à 10\,€ par mois pour une petite machine comme NUC, Brix, netbook, laptop, nettop, NAS, raspberry pi. 15 à - 25 € par mois pour un PC avec une référence à 20 € par mois pour une + 25\,€ par mois pour un PC avec une référence à 20\,€ par mois pour une consommation de 100 Watt et moyenne autour de 30W. IPv4 supplémentaires sur demande avec un tarif de référence -de 2 à 5 €/mois/IPv4 supplémentaire. -\item \emph{Accès internet :} 15 à 30 € par mois, location du matériel radio +de 2 à 5\,€/mois/IPv4 supplémentaire. +\item \emph{Accès internet :} 15 à 30\,€ par mois, location du matériel radio 5 GHz incluse, IPv4 et IPv6. \end{itemize} From fb1cb84707c83a940c53a5d4e257620c249599e3 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Tue, 8 May 2018 19:13:31 +0200 Subject: [PATCH 21/38] Remet contact --- flyer/flyer-ttnn.tex | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index b3f39af..6c58d08 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -255,6 +255,10 @@ débit mis à disposition par des adhérents ou des sympatisants. \newpage +\begin{center} +\fbox{\large Contact : \textbf{\url{question@tetaneutral.net}}} +\end{center} + \section{Administratif} Tetaneutral.net est une association loi du 1er juillet 1901 déclarée à From 7aee6156009c8a40146a27021fb5f2a40270a8eb Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Tue, 8 May 2018 19:17:27 +0200 Subject: [PATCH 22/38] Reecriture pour alleger et raccourcir Quelques fautes corrigees, et sans doute des nouvelles introduites. --- flyer/flyer-ttnn.tex | 75 ++++++++++++++++++-------------------------- 1 file changed, 30 insertions(+), 45 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 6c58d08..d75c1b5 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -76,10 +76,10 @@ relient les utilisateurs du réseau entre eux et avec des fournisseurs de services. Ces intermédiaires ont techniquement la capacité de discriminer à l'égard de la source, de la destination ou du contenu de l'information transmise sur le réseau. Or pour le bon fonctionnement -de l'internet il est important que ces acteurs respectent la +de l'internet il est important que ces acteurs respectent la « neutralité du réseau » et s'interdisent de telles discriminations. De puissants intérêts commerciaux et politiques sont -en jeu derrière cette simple notion. +en jeu derrière cette simple notion. Tetaneutral.net explique, défend et milite pour la neutralité du réseau internet. @@ -101,7 +101,7 @@ La couverture des zones isolées n'intéresse pas les opérateurs commerciaux : les investissements sont trop importants et pas assez rentables. Avec sa technologie à bas coût et sa logique sans but commercial l'association est capable d'amener l'internet à haut débit -dans la majorité de ces zones. +dans la majorité de ces zones. Début 2018, le réseau Tetaneutral.net est déployé principalement aux endroits suivants : @@ -115,29 +115,26 @@ aux endroits suivants : \section{Partage des connaissances} -Un des buts de l'association est le partage de la connaissance. -Pour cela elle anime des ateliers ou des conférences techniques +Tetaneutral.net anime des ateliers ou des conférences techniques autour des technologies mises en \oe{}uvre sur son réseau : radio, -routage, hébergement de machines virtuelles,... lors d'événements -comme le Toulouse Hacker Space Factory. Elle intervient aussi en -partenariat avec les organismes de formation (Université Paul -Sabatier, IUT de Blagnac, ...) auprès des étudiants en accueillant des -stagiaires. - +routage, hébergement de machines virtuelles,... Elle intervient aussi en +partenariat avec des organismes de formation (Université Paul +Sabatier, IUT de Blagnac, ...) auprès des étudiants. + \section{Hébergeur internet et Opérateur} L'internet héberge un grand nombre de services dont le plus connu est le World Wide Web. Ces services sont des logiciels fonctionnant sur -des ordinateurs connectés a l'internet, du plus modeste au domicile +des ordinateurs connectés à l'internet, du plus modeste au domicile d'un internaute aux plus puissantes machines regroupées par milliers dans des centres de traitement de données. Tetaneutral.net offre la possibilité d'héberger de tels -services dans ses locaux en plus bien sur de ce que peuvent faire ses +services dans ses locaux en plus bien sûr de ce que peuvent faire ses membres dans leur logement. Tetaneutral.net est ouvert à l'interconnexion avec les autres -opérateurs et fournit aussi un service de transport de données en +opérateurs et fournit un service de transport de données en respectant la neutralité du réseau. \section{Participer} @@ -158,11 +155,10 @@ Nous sommes aussi disponibles pour discuter sur le serveur IRC \section{Adhésion} -Si le projet vous intéresse, après avoir consulté les statuts de -l'association Tetaneutral.net vous pouvez demander à adhérer à -l'association en envoyant un courriel à \url{adhesion@tetaneutral.net} -en précisant vos nom, prénom, adresse postale et montant de cotisation -choisi. Le bureau statuera sur les admissions conformément aux statuts. +Vous pouvez demander à adhérer à l'association en envoyant un courriel +à \url{adhesion@tetaneutral.net} en précisant vos nom, prénom, adresse +postale et montant de cotisation choisi. Le bureau statuera sur les +admissions conformément aux statuts. Cotisation annuelle libre. Montant annuel suggéré : \begin{itemize} @@ -170,22 +166,18 @@ Cotisation annuelle libre. Montant annuel suggéré : \item cotisation réduite : à partir de 5\,€ si faibles moyens \end{itemize} -Un particulier peut être membre à titre personnel, par exemple avec un -service à son domicile, et aussi être le représentant d'une personne -morale membre de l'association avec par exemple un service de -sauvegarde et un serveur virtuel. La partie service de l'association -est ouverte uniquement aux membres de l'association à jour de leur -cotisation et chaque service fait l'objet d'une tarification séparée -de la cotisation. \section{Services} -Pour couvrir ses frais d'infrastructure l'association propose à ses -membres un certain nombre de services payants. Le principe de -tarification appliqué est celui de \textbf{Mix'Art Myrys} : la participation -libre et nécessaire. L'association donne une grille de tarif du normal -au réduit et les membres contribuent selon leurs moyens et leur -conscience et cela sans justificatif. +L'association propose des services +payants selon le principe de +participation libre et nécessaire : l'association donne une grille de +tarif du normal au réduit et les membres contribuent selon leurs +moyens et leur conscience sans justificatif. + +Ces services sont ouverts aux membres de l'association à jour de leur +cotisation et chaque service fait l'objet d'une tarification séparée +de la cotisation. \begin{itemize} \item \emph{Hébergement de machine virtuelle :} tarif normal 10\,€ par mois, @@ -206,7 +198,6 @@ de 2 à 5\,€/mois/IPv4 supplémentaire. L'association est transparente sur sa comptabilité avec des points mensuels sur la liste principale, ainsi que sur le site Internet - \clearpage \section{Partenaires} @@ -222,28 +213,23 @@ Dans ce local l'association \textbf{Tetalab} est également présente et nous apporte des compétences techniques. La société \textbf{Fullsave} met à notre disposition un local -associatif au sein de l'un de ses centre de données Toulousain, afin d'héberger -une partie de nos équipements informatiques. +associatif au sein de l'un de ses centre de données. -L'association fait partie des membres fondateurs du point +L'association fait partie des membres fondateurs du point d'échange Internet régional, le \textbf{TouIX} -Nous utilisons des logiciels libres et l'association \textbf{Toulibre} qui -développe localement la connaissance de ces logiciels libres est -partenaire du projet. +L'association \textbf{Toulibre} développe localement la connaissance +des logiciels libres est partenaire du projet. Au niveau national l'association fait partie de la \textbf{Fédération -FDN} créée par \textbf{French Data Network}, le plus vieux -fournisseur d'accès à internet français encore en activité pour -regrouper les associations locales issues comme Tetaneutral.net de son -projet d'essaimage. +FDN} qui regroupe les FAI associatifs qui partagent les mêmes valeurs. Tetaneutral.net est membre du \textbf{RIPE NCC} (Réseau IP Européen). \section{Les moyens techniques} Tetaneutral.net utilise tous les moyens à sa disposition pour faire -passer l'internet. +passer l'internet. Une fibre optique à 10Gb/s connecte les locaux de Mixart'Myrys à un data-center du quartier. @@ -288,7 +274,6 @@ APE 6209Z Autres activités informatiques\\ Date de prise d'activité 03/01/2011\\ \end{verse} - Déclaration en tant qu'opérateur auprès de l'ARCEP : \begin{verse} From da172792f55cc8bdf622b4895e443be3d50938de Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Wed, 9 May 2018 19:10:29 +0200 Subject: [PATCH 23/38] modifs derniere minute --- flyer/flyer-ttnn.tex | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index d75c1b5..2b9bd21 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -60,24 +60,27 @@ \begin{center} \LARGE \textbf{WE MAKE INTERNET} \end{center} -\hspace{-0.5cm}\includegraphics[width=1.1\textwidth]{image-rollup} +\includegraphics[width=\textwidth]{image-rollup} \thispagestyle{empty} \begin{center} \Large Vers un réseau neutre, solidaire\\ et Do It Yourself \end{center} + +\typeout{Page width \the\paperwidth} +\wlog{Page height \the\paperheight} + \clearpage \section{Neutralité du réseau} Les fournisseurs d'accès à internet et les hébergeurs -relient les utilisateurs du réseau entre eux et avec des fournisseurs -de services. Ces intermédiaires ont techniquement la capacité de -discriminer à l'égard de la source, de la destination ou du contenu de -l'information transmise sur le réseau. Or pour le bon fonctionnement +relient les utilisatrices et les utilisateurs du réseau entre eux et avec des fournisseurs +de services. Ces intermédiaires ont la capacité de +discriminer l'information transmise sur le réseau par rapport à la source, la destination ou sur son contenu. Pour le bon fonctionnement de l'internet il est important que ces acteurs respectent la -« neutralité du réseau » et s'interdisent de telles +«\,neutralité du réseau\,» et s'interdisent de telles discriminations. De puissants intérêts commerciaux et politiques sont en jeu derrière cette simple notion. @@ -171,8 +174,8 @@ Cotisation annuelle libre. Montant annuel suggéré : L'association propose des services payants selon le principe de -participation libre et nécessaire : l'association donne une grille de -tarif du normal au réduit et les membres contribuent selon leurs +participation libre et nécessaire : une grille indique +les tarifs du normal au réduit et les membres contribuent selon leurs moyens et leur conscience sans justificatif. Ces services sont ouverts aux membres de l'association à jour de leur @@ -196,7 +199,7 @@ de 2 à 5\,€/mois/IPv4 supplémentaire. \section{Transparence} L'association est transparente sur sa comptabilité avec des points -mensuels sur la liste principale, ainsi que sur le site Internet +mensuels sur la liste principale, ainsi que sur son site internet. \clearpage \section{Partenaires} @@ -235,9 +238,9 @@ Une fibre optique à 10Gb/s connecte les locaux de Mixart'Myrys à un data-center du quartier. Des liaisons radio utilisant une technologie de type WiFi dans la -bande des 5 GHz sont déployées vers les adhérents, en partant soit +bande des 5 GHz sont déployées vers les adhérent·e·s, en partant soit directement des locaux de l'association, soit de points d'accès à haut -débit mis à disposition par des adhérents ou des sympatisants. +débit mis à disposition par des adhérent·e·s ou des sympatisant·e·s. \newpage From 921909d817512b445e863cc91aa06b43075c5b23 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Wed, 5 Sep 2018 22:35:32 +0200 Subject: [PATCH 24/38] Add image for 1st page --- flyer/image-rollup.png | Bin 0 -> 129407 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 flyer/image-rollup.png diff --git a/flyer/image-rollup.png b/flyer/image-rollup.png new file mode 100644 index 0000000000000000000000000000000000000000..d250e303a75a7219842c773744fc6ef5384afcd9 GIT binary patch literal 129407 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 literal 0 HcmV?d00001 From 1e00eb0d38cb125a3e9b56a82187508c1fcc674c Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 18 Sep 2018 00:35:53 +0200 Subject: [PATCH 25/38] cp ttnn-{rennes-2015,milanpresse-2018}.tex --- slides/ttnn-milanpresse-2018.tex | 810 +++++++++++++++++++++++++++++++ 1 file changed, 810 insertions(+) create mode 100644 slides/ttnn-milanpresse-2018.tex diff --git a/slides/ttnn-milanpresse-2018.tex b/slides/ttnn-milanpresse-2018.tex new file mode 100644 index 0000000..d585af5 --- /dev/null +++ b/slides/ttnn-milanpresse-2018.tex @@ -0,0 +1,810 @@ +\documentclass{beamer} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage{graphicx} +\usepackage[frenchb]{babel} +\usepackage{hyperref} +\usepackage{pgf} +\usepackage{eurosym} +\DeclareUnicodeCharacter{20AC}{\euro} +\usepackage{textcomp} +\usepackage{xcolor} +\usepackage{pgfplots} +\usepgfplotslibrary{dateplot} % Needs TeXlive 2013 ... + +\usetheme{Rochester} + +% Page number n/tot in the lower right corner +\usefoottemplate{ + \begin{beamercolorbox}[ht=2.25ex,dp=4ex,right,ignorebg]{date in head/foot} + \usebeamerfont{date in head/foot} + \insertframenumber/\inserttotalframenumber + \end{beamercolorbox} + } +\usenavigationsymbolstemplate{} + +% \graphicspath{{../images/}} + +% Color for links +\definecolor{darkblue}{rgb}{0.,0.2,0.375} +\hypersetup{ + colorlinks=true, + urlcolor=darkblue, + linkcolor=black +} +% also use it for page numbers +\setbeamercolor*{palette secondary}{fg=darkblue,bg=black!25} + +% a macro for figures +\newcommand\fig[2]{ + \centerline{\includegraphics[width=#2]{#1}}} + +% Tetaneutral.net logo +\definecolor{ttnn1}{rgb}{.695,.645,.551} +\definecolor{ttnn2}{rgb}{.906,.839,.730} +\newcommand{\ttnn}{\Huge\color{ttnn1}{\textbf{teta}}\color{ttnn2}{neutral}\color{ttnn1}{.net}} + +% go +\title{Tetaneutral.net un FAI associatif} +\author{Laurent Guerby} +\institute{\ttnn{}} +\date{Jardin Entropique - Rennes - 27 juin 2015} + + +\AtBeginSection[]{ +\begin{frame} +\frametitle{Agenda} +\tableofcontents[currentsection] +\end{frame} +} +%---------------------------------------------------------------------- +\begin{document} +%---------------------------------------------------------------------- +\begin{frame}[plain] +\maketitle +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Licence} + +\centerline{\includegraphics[width=2cm]{88x31}} +\vspace{1em} +{\scriptsize +Ce document est sous licence \\[1ex] +\emph{Creative Commons Paternité - Partage à l'Identique 3.0 non transposé.}\\[10pt] + +Le texte complet de cette licence est disponible à l'adresse~:\\ +\url{http://creativecommons.org/licenses/by-sa/3.0/}} + +\end{frame} +%---------------------------------------------------------------------- +\begin{frame}{À propos de l'orateur} +\textbf{Laurent Guerby} +\begin{itemize} +\item Ingénieur Télécom Bretagne 1996 +\item Une décennie dans la finance internationale +\item Situation financière confortable +\item Consacre 80\% de son temps à de l'associatif en bénévole +\item Président de l'association tetaneutral.net +\end{itemize} +\url{mailto:laurent@guerby.net}\\ +\end{frame} + +%---------------------------------------------------------------------- +\begin{frame} + \frametitle{Agenda} + \tableofcontents +\end{frame} +%---------------------------------------------------------------------- +\section{Introduction} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Objectifs} +\begin{itemize} +\item Comment (et pourquoi) créer un opérateur en France +\item Légal / IP / Datacenter / L2 / BGP / Transit / Peering et IX +\item La pratique +\item Matériel sans fil performant sur fréquences ouvertes au public / zones « blanches » +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Objets de l'association} +\begin{itemize} +\item But pédagogique : comprendre les mécanismes des internets +\item Apprendre en pratiquant : devenir FAI +\item Défense de la Neutralité du Réseau +\item Moyens pédagogiques à disposition des enseignants +\item Collaboration avec tous les acteurs intéressés +\item Interlocuteurs pour les collectivités locales +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\section{Fournisseur d'Accès Internet} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Historique} +\begin{itemize} +\item Janvier 2011 déclaration préfecture (loi 1901) +\item INSEE (Siren/Siret code APE), ARCEP (FAI) +\item Février 2011 RIPE (Adresses IP) +\item Mars 2011 serveur à Paris (connectivité) +\item Ouverture compte crédit coopératif (\euro\euro\euro) +\item Membre fondateur de la Fédération FDN / essaimage +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{IANA / RIR / LIR} +\begin{itemize} +\item Internet Assigned Numbers Authority +\item Délègue aux Regional Internet Registry\\ + AfriNIC, ARIN, APNIC, LACNIC, RIPE +\item Réseaux IP Européens Network Coordination Centre +\item Local Internet Registry +\item À Toulouse celui choisi : \href{http://fullsave.com/}{FullSave} +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Dossier LIR et RIPE} +\begin{itemize} +\item Pour obtenir des IP, il faut monter un dossier administratif avec son LIR +\item RIPE pointilleux, par exemple tout refaire avec « Association tetaneutral.net » plutôt que « tetaneutral.net » +\item Justificatifs (factures, logs de routeurs, autre,...) +\item le LIR paye au RIPE \EUR{50} HT/an et par ressource et refacture ce qu'il veut pour le service. +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{IP et RIPE} +\begin{itemize} +\item Wikipedia \href{http://en.wikipedia.org/wiki/Ipv4_address_exhaustion}{Ipv4\_address\_exhaustion} +\item LIR existant RIPE : un seul /22 IPv4 = 1024 IP +\item Nouveau LIR \EUR{2000} HT signup fee +\item \EUR{1800} HT/an +\item /29 à /32 IPv6 et... un seul /22 IPv4 si justifié (en « PA ») +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Association et Opérateur} +\begin{itemize} +\item CPCE Code des Postes et des Communications Électroniques +\item ARCEP Autorité de Régulation des Communications Électroniques et des Postes +\item Réseau ouvert au public +\item L33-1 \textasciitilde{} 1300 opérateurs +\item R9-2 \textasciitilde{} 30 opérateurs +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Opérateur 2} +\begin{itemize} +\item ARCEP décision 12-1304 du 23 octobre 2012 : tetaneutral.net +\item liste nominative des opérateurs destinataires des informations concernant l'installation de lignes de communications électroniques à très haut débit en fibre optique dans les immeubles +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Obligations} +\begin{itemize} +\item « \textit{Bonjour, tel jour à telle heure telle adresse IP chez + vous (RIPE) a parlé à telle autre adresse IP, donnez-nous les nom et adresse de l'abonné} » +\item IP publique fixe par abonné : pas de logs, seulement début/fin + d'abonnement +\item IP partagées : logs de connexion à maintenir pour pouvoir + répondre, informations sensibles sur la vie privée. +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Transparence} +\begin{itemize} +\item Budget potentiellement conséquent, service, argent, questions +\item Publier le log des dépenses est facile si fait régulièrement et + peu coûteux en temps +\item Publier bilan comptable fastidieux, annuel et a posteriori, + perte d'information +\item Amortissement et équilibre financier : vue subjective, chacun + peut se faire une idée différente +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\section{Connexion à l'Internet} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Historique 2} +\begin{itemize} +\item Avril 2011 pose de notre fibre optique +\item Mise en service du réseau +\item Juillet 2011 ouverture des services +\item Septembre 2011 FAI à Saint-Gaudens +\item Novembre 2011 \EUR{700}/mois : équilibre financier mensuel +\item Décembre 2011 apport de Toulouse Sans Fil +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Fibre et L2} +\begin{columns} +\column{0.6\textwidth} +\begin{itemize} +\item 307\,m de fibre du DC Cogent vers Myrys +\item Transit fibre Cogent $\rightarrow$ TH2 +\item Présence au DC TH2 (paris) connexion France-IX, Liazo, Equinix, + FR-IX, GIXE, FDN +\end{itemize} +\column{0.4\textwidth} +\fig{11b}{\textwidth} +\fig{11}{\textwidth} +\end{columns} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Datacenter} +\begin{itemize} +\item Rackable, baie et partie, kVA +\item 1U via revendeur en général +\item Politique pour le câblage et l'accès +\item Meet Me Room, demi-circuits +\item WDM car câbles chers +\item Mono ou Multi opérateurs +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\section{Accès aux contenus : peering} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Peering et Transit} +\begin{itemize} +\item Émettre et recevoir pour une destination +\item Peering privé +\item Peering via point d'échange « IX » +\item Peering via route serveur d'un IX +\item Peering payant ou gratuit +\item Transit pour tout ce qui n'est pas passé en peering +\item Redondance +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Peering en pratique} +\begin{itemize} +\item \url{http://as197422.peeringdb.com/} +\item Facebook, Google, Microsoft : politique de peering ouverte \\ +même pour tetaneutral.net +\item Liste d'annonce sur les IX, nouveaux venus, maintenance et + incidents +\item France-IX : 200\,Gbit/s, AMS-IX 3.2\,Tbit/s +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Peering local} +\begin{itemize} +\item TouIX Toulouse Internet Exchange +\item Boucle optique Cogent/Neo Center/HdT +\item fin mai 2014 TLS00 de Fullsave \url{http://tls00.fr} +\item Renater Toulouse ? +\item Convention avec France-IX VLAN 4032 GE +\item Interconnexion Route Server LyonIX +\item Projet SDN TouSIX +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Border Gateway Protocol} +\begin{itemize} +\item Pour s'échanger les routes et les gateway entre routeurs +\item BGPv4 RFC4271 actuellement en prodution sur l'internet. Port + tcp/179 +\item Identifiant BGP : Autonomous System Number ou « ASN », attribué + par les RIR +\item tetaneutral.net : AS 197422 (AS4 AS32) +\item \textasciitilde{} 540\,000 routes IPv4 et \textasciitilde{} 23\,000 + IPv6 +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{BIRD Internet routing daemon} +\begin{itemize} +\item BIRD \url{http://bird.network.cz/} +\item BGP en C sous licence GPL +\item Prévu pour être efficace et peu consommateur en ressources +\item « full view » en \textasciitilde{} 70\,MB de RAM +\item 15 mars - 25 mai 2011 : 700 minutes de CPU soit 10 mn/j\\ + < 1\% CPU usage (core i3 @ 3\,GHz) +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Routeur tetaneutral.net} +\fig{06}{.9\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Réseau d'interconnexion tetaneutral.net} +\fig{12}{0.9\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Looking Glass et NLNOG Ring} +\begin{itemize} +\item \url{http://lg.tetaneutral.net/} +\item \url{https://ring.nlnog.net/} +\item \url{http://lg.ring.nlnog.net/} +\item Échange de VM entre opérateurs +\item Tests ping, traceroute, matrice MTU +\item \url{http://amp.ring.nlnog.net/matrix.php/ipv4/mtu/FR/NL} +\item Ring SQA partial outage detector +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Looking Glass: Peering \& Transit} +\fig{lg-n7}{\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Statistiques juin 2015} +\begin{center} +\begin{tikzpicture} +\begin{axis}[ + enlarge x limits=0.5, + x=2cm, + ybar stacked, + ylabel={Débit moyen (Mb/s)}, + ymin=0, + legend style={at={(0.5,-0.1)}, anchor=north}, + bar width=1cm, + symbolic x coords={Reçu,Émis}, + xtick=data, + nodes near coords, + nodes near coords align={vertical}, +] +\addplot coordinates {(Reçu,213) (Émis,214)}; +\addplot coordinates {(Reçu,128) (Émis,104)}; +\legend{transit, peering} +\end{axis} +\end{tikzpicture} +\end{center} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{RIPE-532} +\begin{itemize} +\item PI : Provider Independant +\item PA : Provider Aggregated +\item IPv6 $\Rightarrow$ tetaneutral.net a un PA /40 +\item Problème de filtre « strict » à /32 +\item Seule solution : LIR +\item /29 $\Rightarrow$ 8 * /32 +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\section{Distribution du réseau aux adhérents} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Accès internet} +\begin{itemize} +\item RTC 56\,kbit/s +\item ADSL max 20\,Mbit/s réception 1\,Mbit/s envoi +\item 512\,kbit/s à quelques kilomètres de ligne +\item SDSL max 4\,Mbit/s symétrique par paire +\item VDSL 100/50\,Mbit/s, identique à ADSL à 1,5\,km +\item Satellite géostationnaire 35786\,km Ka-Sat 26.5-40\,GHz +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Accès internet 2} +\begin{itemize} +\item Wimax 3.5\,GHz en France, Licence +\item 3G/4G/LTE, pas forcément couvert +\item Wifi via professionnel PME Alsatis ou TPE Attilog +\item Fibre optique 10-40\,km max > 1\,Tbit/s, 100-1000\,Mbit/s pour + modem \textasciitilde{} \EUR{100} +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{ADSL} +\begin{itemize} +\item La majorité des accès haut débit est en ADSL +\item NRA N\oe{}ud de Raccordement Abonné +\item \textasciitilde{} 15000 NRA en France +\item + \url{http://www.free.fr/adsl/pages/accueil/carte-de-debits-adsl.html} +\item Rayon 3-4\,km puis zone grise puis blanche +\item Zone grise étendue < 2\,Mbit/s pas de TV +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Services} +\begin{itemize} +\item Aux adhérents, cotisation \EUR{20}/an +\item Hébergement de serveur en format libre et serveurs virtuels +\item Accès internet à Toulouse \EUR{20}/mois +\item Gratuit pour les squats (mouvement CREA) +\item Tarifs libres, longue présentation personnalisée des objectifs à + chaque nouvel adhérent +\item Pas de « clic et service » +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Services 2} +\begin{itemize} +\item Accès internet en zone blanche \EUR{28}/mois +\item Pas de frais d'accès (hors antenniste) +\item Pas de frais de résiliation +\item Pas d'engagement de durée (mensuel) +\item Internet seul sans téléphone ni TV +\item Antenne, câble extérieur et routeur fournis pour la durée de + l'abonnement +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Services 3} +\begin{itemize} +\item Cher, prix de convergence hors équipement plutôt à \EUR{15}/mois +\item Marge de man\oe{}uvre pour le futur +\item VoIP via prestataire classique +\item Exemple offre OVH illimité vers les fixes pour \EUR{1,18}/mois, + \EUR{80} de caution pour le téléphone +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Wifi et Radio} +\begin{itemize} +\item Domaine public, bien commun +\item Novembre 2002 - avril 2007 ouverture expérimentale en France +\item 2402 - 2482\,MHz 20\,dBm = 100\,mW +\item total 80\,MHz ouverts +\item TSF et pionniers +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Wifi 2} +\begin{itemize} +\item 5\,GHz ouvert en décembre 2005 en France +\item 5170 - 5220 20\,dBm $\Rightarrow$ 80\,MHz +\item 5250 - 5330 20\,dBm DFS $\Rightarrow$ 80\,MHz +\item 5490 - 5710 30\,dBm = 1W DFS $\Rightarrow$ 220\,MHz +\item dont 5600-5650 radar météo fixe (5625 à Toulouse) DFS +\item 5745 - 5826 $\Rightarrow$ USA 80\,MHz puissance plus élevée +\end{itemize} +Consulté avec la FFDN pour la \url{http://www.mission-spectre2014.fr/} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Efficacité spectrale} +\begin{itemize} +\item Débit sur une fréquence partagé par les utilisateurs sur une + zone géographique +\item 802.11abgn, 802.11ac (canaux 80 et 160\,MHz en 5\,GHz) et 802.11ad (60\,GHz) \\ + \url{http://en.wikipedia.org/wiki/IEEE_802.11} +\item En situation réelle 100\,Mbit/s sur 40\,MHz (une direction) \\ + 8.6\,km $\rightarrow$ 2.5\,bit/s/Hz +\item AirFiber 5X 220 Mbit/s symetrique sur 50 MHz \\ + 4.1\,km $\rightarrow$ 8.8\,bit/s/Hz +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{PIRE} +\begin{itemize} +\item PIRE Puissance Isotrope Rayonnée Équivalente +\item EIRP Equivalent Isotropically radiated Power +\item Signal/Bruit +\item Lois et règlements +\item Puissances faibles sur les bandes ouvertes vs les bandes + soumises à licence +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Ondes et Santé} +\begin{itemize} +\item 2,4\,GHz rien de spécifique vis à vis de l'eau (20\,GHz), un + micro-ondes peut marcher à d'autres fréquences +\item Téléphones sans fil \textasciitilde{} wifi +\item GSM \textasciitilde{} 4\,W max dans la poche, > 100\,W Base +\item Radio FM 2000-4000\,W +\item Antennes plus nombreuses = moins de puissance \\ + mesure champmètre +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Antenne} +\begin{columns} +\column{0.7\textwidth} +\begin{itemize} +\item Analogie ampoule et lampe torche +\item Concentration du signal dans une direction +\item Parabole de 60\,cm à 5\,GHz $\Rightarrow$ 30\,dBi = *1000 \\ + dans un cône de quelques degrés +\item MIMO multiple-input and multiple-output +\item Polarisation : multiplicateur de débit +\end{itemize} +\column{0.3\textwidth} +\fig{P1070287-crop}{\textwidth} +\end{columns} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Bilan Radio} +\begin{itemize} +\item Longueur d'onde +\begin{itemize} +\item 2,4\,GHz \textasciitilde{} 12\,cm +\item 5\,GHz \textasciitilde{} 5\,cm +\end{itemize} +\item Ne passe pas les obstacles \textasciitilde{} longueur d'onde +\item Arbres, bâtiments, collines +\item Zone de Fresnel +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Produits Radio} +\begin{columns} +\column{0.6\textwidth} +\begin{itemize} +\item Ubiquity \url{http://ubnt.com/} AirOS +\item Mikrotik \url{http://mikrotik.com/} RouterOS +\item 60-\EUR{100} diverses formes d'antenne intégrée. 200-\EUR{300} + pour antenne évoluée +\item PoE Power Over Ethernet +\item Option Wifi non standard TDMA +\item AirOS = OpenWRT avec SDK +\item Ath9k Atheros Qualcomm pilote libre +\end{itemize} +\column{0.4\textwidth} +\fig{IMG_20131108_151905}{\textwidth} +\end{columns} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Tests Radio} +\begin{itemize} +\item 8600m Pech David - Ramassier +\item 40\,MHz parabole 40\,cm RX -73/-74\,dBm +\item Rama TX: 102.2, 106.5, 114.0, 112.0\,Mb/s +\item Rama RX: 99.1, 99.4, 98.9, 99.4 Mb/s +\item Duplex (RX/TX): 46/48, 47/51, 47/46 Mb/s +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Tests Radio 2} +\begin{itemize} +\item 10\,MHz Parabole 40\,cm vers Omni +\item RX -75\,dBm coté Ramassiers (parabole) +\item Rx -84\,dBm coté Pech David (omni) +\item Rama TX: 5.63, 5.76, 5.67, 4.95\,Mb/s +\item Rama Rx: 19.15, 16.40, 13.54, 14.63\,Mb/s +\item Moins bon en 20\,Mhz, courbe en cloche +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Internet} +\begin{itemize} +\item Radio $\Rightarrow$ Internet ? +\item Ligne ADSL classique = 1 IP, parfois fixe +\item Livraison de plusieurs IP possible, FDN, pro +\item Sinon tunnel avec logiciel libre OpenVPN +\item Dans ce cas la ligne ADSL ne va communiquer qu'avec une seule + IP, celle du serveur +\item Le serveur est sur un autre réseau qui a les IP qui nous + intéressent +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Pont réseau} +\begin{itemize} +\item Configuration simple en pont réseau des équipements radio +\item Comme des câbles ethernet et des switches chaînés +\item Le réseau a une topologie en arbre, pas de boucle, pas de + redondance +\item Utilisation du firmware standard mode WDS +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Protocoles Mesh} +\begin{itemize} +\item OLSR (Toulouse sans fil) +\item Batman +\item Babel/Babel-Z +\item OSPF/BGP +\item Battlemesh +\item Choix du niveau de complexité +\end{itemize} +Note: guifi.net 28600 n\oe{}uds 52459\,km de liens 300 n\oe{}uds / mois +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Neutralité du réseau} +\begin{itemize} +\item Comment gérer la congestion ? +\item Ne rien faire : les équipements ont une règle par défaut... \\ + pas si neutre que ça +\item « tail drop » : neutre mais... par flux +\item Règles à tetaneutral.net : équité sur le débit + instantané. Historique du volume ? +\item Latence, petit paquets ? +\item VoIP et service garanti +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{En pratique} +\begin{itemize} +\item Trouver un point de collecte +\item Entreprise TPE/PME locale, avantage présence 9h-17h sur site +\item Particulier (vacances, clés) +\item Maison association, salle des fêtes, mairie +\item Si deux NRA sur la zone $\Rightarrow$ redondance +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{En pratique 2} +\begin{itemize} +\item 1 ADSL > 10\,Mbit/s 4 foyers à Monès +\item 3 ADSL > 10\,Mbit/s 40 foyers à St-Gaudens +\item 5 ADSL \textasciitilde{} 10\,Mbit/s pour 140 foyers à Sames + Wireless dans les Pyrénées Atlantiques +\item Offre FTTH Orance CELAN cher (500-\EUR{1500}/mois) avec + \EUR{5000} de frais d'accès +\item 40*28 = \EUR{1120}/mois : possible à Saint-Gaudens +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Points Hauts} +\begin{columns} +\column{0.6\textwidth} +\begin{itemize} +\item Mat d'antenne TV +\item Droit à l'antenne en copropriété +\item Radio amateur (mât 12m et plus, souvent motivés) +\item Hangar ou bâtiment agricole +\item Poteau d'éclairage stade ou municipal +\item Château d'eau, clocher +\item Compromis négociation/radio/maintenabilité +\end{itemize} +\column{0.4\textwidth} +\fig{alex_20130316}{\textwidth} +\end{columns} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Relai Autonome} +\begin{itemize} +\item Electricité en haut de la colline ? +\item Projet étudiant avec l'IUT de Blagnac +\item Carte Mikrotik RouterBoard 433 1.2\,Watt +\item Dec-Jan moyenne mensuelle 1h soleil/jour +\item 100\,W $\Rightarrow$ 100\,Wh $\Rightarrow$ 5\,W pendant 24\,h +\item 1,5\,m * 0,5\,m = 0,75\,m$^2$ +\item 20\,kg batteries ? PbAc ou LiFePO$_4$ ? +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Réseau radio tetaneutral.net à Toulouse} +\fig{map_tsf}{.9\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Cartographie} +\fig{aircontrol}{\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\section{Hébergement et services} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Hébergeur et EDF} +\begin{itemize} +\item EDF : $0.1372 * 365 * 24 / 1000 = 1.202\,\textup{\euro}$ \\ + pour 1 Watt en continu pendant un an +\item Climatisation +\item Enercoop source renouvelable : $0.1611 \rightarrow + 1.411\,\textup{\euro}$ +\item Rackable / PC Tour ATX / Ventilation +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Hébergement tetaneutral.net} +\fig{myrys_baie}{.55\textwidth} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Règlement intérieur} +{\small Dans le cadre de son objet social l'association fournit des services à +ses adhérents de manière solidaire contre une participation aux frais +engagés par l'association. Ces services sont gérés par des bénévoles +sur leur temps libre et de manière amateur. Par conséquence, ces +services sont fournis sans aucune garantie de qualité, performance, +disponibilité, délai de réponse aux demandes de support ou de sécurité +des données et des équipements. L'association ne peut être tenue +responsable de toute conséquence liée au non fonctionnement ponctuel +ou définitif d'un service ou d'une perte de donnée ou de +matériel. Chaque adhérent doit donc s'assurer par lui même de pouvoir +disposer de sauvegardes de données et d'un service de secours +convenant à ses besoins en cas de défaillance d'un ou plusieurs +services fournis par l'association. +} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Historique 3} +\begin{itemize} +\item Juillet 2012 début du remboursement du prêt de \EUR{12000}, rythme \textasciitilde{} \EUR{1000}/mois +\item Octobre 2012 FAI à Monès +\item Novembre 2012 216 adhérents pour \EUR{2600}/mois de service pour \EUR{900}/mois de frais +\item Janvier 2014 428 adhérents \EUR{5800}/mois service \EUR{3600}/mois de frais +\item Mai 2014 535 adhérents \EUR{7400}/mois service \EUR{3600}/mois de frais +\item Juin 2015 730 adhérents \EUR{11400}/mois service \EUR{3600}/mois de frais +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Récapitulatif Association - Juin 2015} +\begin{tabular}{lrrrrr} +Service & npay & ninf & ngra & \euro & \% \\ +\hline +Hosting & 55 & 8 & 10 & 1046 & 9.2 \\ +VM & 60 & 16 & 30 & 493 & 4.3 \\ +IP & 3 & 0 & 0 & 30 & 0.3 \\ +abo ADSL & 7 & 0 & 0 & 210 & 1.8 \\ +abo Toulouse & 87 & 0 & 29 & 1383 & 12.1 \\ +abo Mones & 9 & 0 & 1 & 244 & 2.1 \\ +abo Saint-Gaudens & 270 & 0 & 9 & 7528 & 65.9 \\ +abo Mauvaisin & 14 & 0 & 3 & 384 & 3.4 \\ +abo Cazeres & 1 & 0 & 0 & 28 & 0.2 \\ +abo Fabas & 2 & 0 & 2 & 43 & 0.4 \\ +abo Goyrans & 1 & 0 & 0 & 28 & 0.2 \\ +abo Banyuls & 0 & 0 & 1 & 0 & 0.0 \\ +abo Montescots & 0 & 0 & 4 & 0 & 0.0 \\ +\hline +\end{tabular} + +\end{frame} +%---------------------------------------------------------------------- +\section{Conclusion} +%---------------------------------------------------------------------- +\begin{frame} +\frametitle{Peopleware} +\begin{itemize} +\item Motivation pour avoir du débit et/ou de la neutralité +\item Comprendre les limites d'une association et du bénévolat +\item Chercher l'aide technique auprès des autres associations +\item Tout types de public, de professionels passionés à retraités «\,pas internet pas de petits enfants à la maison\,» +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- +\begin{frame}[plain] +\begin{center} +\Huge{Questions ?} +\end{center} +\vfill +\begin{flushright} +\url{mailto:question@tetaneutral.net} +\end{flushright} +\end{frame} +%---------------------------------------------------------------------- +\end{document} From ee8701d07295059cb0277f9fbc29ffb12bef7520 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 18 Sep 2018 00:36:09 +0200 Subject: [PATCH 26/38] remove trailing whitespaces --- slides/ttnn-milanpresse-2018.tex | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/slides/ttnn-milanpresse-2018.tex b/slides/ttnn-milanpresse-2018.tex index d585af5..fa8d803 100644 --- a/slides/ttnn-milanpresse-2018.tex +++ b/slides/ttnn-milanpresse-2018.tex @@ -11,7 +11,7 @@ \usepackage{textcomp} \usepackage{xcolor} \usepackage{pgfplots} -\usepgfplotslibrary{dateplot} % Needs TeXlive 2013 ... +\usepgfplotslibrary{dateplot} % Needs TeXlive 2013 ... \usetheme{Rochester} @@ -27,13 +27,13 @@ % \graphicspath{{../images/}} % Color for links -\definecolor{darkblue}{rgb}{0.,0.2,0.375} +\definecolor{darkblue}{rgb}{0.,0.2,0.375} \hypersetup{ colorlinks=true, urlcolor=darkblue, linkcolor=black } -% also use it for page numbers +% also use it for page numbers \setbeamercolor*{palette secondary}{fg=darkblue,bg=black!25} % a macro for figures @@ -105,7 +105,7 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \item Comment (et pourquoi) créer un opérateur en France \item Légal / IP / Datacenter / L2 / BGP / Transit / Peering et IX \item La pratique -\item Matériel sans fil performant sur fréquences ouvertes au public / zones « blanches » +\item Matériel sans fil performant sur fréquences ouvertes au public / zones « blanches » \end{itemize} \end{frame} %---------------------------------------------------------------------- @@ -131,7 +131,7 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \item Février 2011 RIPE (Adresses IP) \item Mars 2011 serveur à Paris (connectivité) \item Ouverture compte crédit coopératif (\euro\euro\euro) -\item Membre fondateur de la Fédération FDN / essaimage +\item Membre fondateur de la Fédération FDN / essaimage \end{itemize} \end{frame} %---------------------------------------------------------------------- @@ -153,7 +153,7 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \item Pour obtenir des IP, il faut monter un dossier administratif avec son LIR \item RIPE pointilleux, par exemple tout refaire avec « Association tetaneutral.net » plutôt que « tetaneutral.net » \item Justificatifs (factures, logs de routeurs, autre,...) -\item le LIR paye au RIPE \EUR{50} HT/an et par ressource et refacture ce qu'il veut pour le service. +\item le LIR paye au RIPE \EUR{50} HT/an et par ressource et refacture ce qu'il veut pour le service. \end{itemize} \end{frame} %---------------------------------------------------------------------- @@ -172,7 +172,7 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \frametitle{Association et Opérateur} \begin{itemize} \item CPCE Code des Postes et des Communications Électroniques -\item ARCEP Autorité de Régulation des Communications Électroniques et des Postes +\item ARCEP Autorité de Régulation des Communications Électroniques et des Postes \item Réseau ouvert au public \item L33-1 \textasciitilde{} 1300 opérateurs \item R9-2 \textasciitilde{} 30 opérateurs @@ -191,7 +191,7 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \frametitle{Obligations} \begin{itemize} \item « \textit{Bonjour, tel jour à telle heure telle adresse IP chez - vous (RIPE) a parlé à telle autre adresse IP, donnez-nous les nom et adresse de l'abonné} » + vous (RIPE) a parlé à telle autre adresse IP, donnez-nous les nom et adresse de l'abonné} » \item IP publique fixe par abonné : pas de logs, seulement début/fin d'abonnement \item IP partagées : logs de connexion à maintenir pour pouvoir @@ -259,7 +259,7 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \begin{frame} \frametitle{Peering et Transit} \begin{itemize} -\item Émettre et recevoir pour une destination +\item Émettre et recevoir pour une destination \item Peering privé \item Peering via point d'échange « IX » \item Peering via route serveur d'un IX @@ -404,7 +404,7 @@ même pour tetaneutral.net \begin{itemize} \item Wimax 3.5\,GHz en France, Licence \item 3G/4G/LTE, pas forcément couvert -\item Wifi via professionnel PME Alsatis ou TPE Attilog +\item Wifi via professionnel PME Alsatis ou TPE Attilog \item Fibre optique 10-40\,km max > 1\,Tbit/s, 100-1000\,Mbit/s pour modem \textasciitilde{} \EUR{100} \end{itemize} @@ -445,7 +445,7 @@ même pour tetaneutral.net \item Pas d'engagement de durée (mensuel) \item Internet seul sans téléphone ni TV \item Antenne, câble extérieur et routeur fournis pour la durée de - l'abonnement + l'abonnement \end{itemize} \end{frame} %---------------------------------------------------------------------- @@ -564,7 +564,7 @@ Consulté avec la FFDN pour la \url{http://www.mission-spectre2014.fr/} \item 60-\EUR{100} diverses formes d'antenne intégrée. 200-\EUR{300} pour antenne évoluée \item PoE Power Over Ethernet -\item Option Wifi non standard TDMA +\item Option Wifi non standard TDMA \item AirOS = OpenWRT avec SDK \item Ath9k Atheros Qualcomm pilote libre \end{itemize} @@ -699,7 +699,7 @@ Note: guifi.net 28600 n\oe{}uds 52459\,km de liens 300 n\oe{}uds / mois \item Dec-Jan moyenne mensuelle 1h soleil/jour \item 100\,W $\Rightarrow$ 100\,Wh $\Rightarrow$ 5\,W pendant 24\,h \item 1,5\,m * 0,5\,m = 0,75\,m$^2$ -\item 20\,kg batteries ? PbAc ou LiFePO$_4$ ? +\item 20\,kg batteries ? PbAc ou LiFePO$_4$ ? \end{itemize} \end{frame} %---------------------------------------------------------------------- @@ -771,7 +771,7 @@ Hosting & 55 & 8 & 10 & 1046 & 9.2 \\ VM & 60 & 16 & 30 & 493 & 4.3 \\ IP & 3 & 0 & 0 & 30 & 0.3 \\ abo ADSL & 7 & 0 & 0 & 210 & 1.8 \\ -abo Toulouse & 87 & 0 & 29 & 1383 & 12.1 \\ +abo Toulouse & 87 & 0 & 29 & 1383 & 12.1 \\ abo Mones & 9 & 0 & 1 & 244 & 2.1 \\ abo Saint-Gaudens & 270 & 0 & 9 & 7528 & 65.9 \\ abo Mauvaisin & 14 & 0 & 3 & 384 & 3.4 \\ @@ -793,7 +793,7 @@ abo Montescots & 0 & 0 & 4 & 0 & 0.0 \\ \item Motivation pour avoir du débit et/ou de la neutralité \item Comprendre les limites d'une association et du bénévolat \item Chercher l'aide technique auprès des autres associations -\item Tout types de public, de professionels passionés à retraités «\,pas internet pas de petits enfants à la maison\,» +\item Tout types de public, de professionels passionés à retraités «\,pas internet pas de petits enfants à la maison\,» \end{itemize} \end{frame} %---------------------------------------------------------------------- From 7132b71c92287d066acec194096e7d0d52097cac Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 18 Sep 2018 01:00:08 +0200 Subject: [PATCH 27/38] update slides for Milan Presse --- slides/ttnn-milanpresse-2018.tex | 708 ++++++++++++++++--------------- 1 file changed, 366 insertions(+), 342 deletions(-) diff --git a/slides/ttnn-milanpresse-2018.tex b/slides/ttnn-milanpresse-2018.tex index fa8d803..1119088 100644 --- a/slides/ttnn-milanpresse-2018.tex +++ b/slides/ttnn-milanpresse-2018.tex @@ -47,9 +47,9 @@ % go \title{Tetaneutral.net un FAI associatif} -\author{Laurent Guerby} +\author{Guilhem Saurel \& Frédéric Zulian} \institute{\ttnn{}} -\date{Jardin Entropique - Rennes - 27 juin 2015} +\date{Milan presse - Toulouse - 20 septembre 2018} \AtBeginSection[]{ @@ -74,21 +74,31 @@ Ce document est sous licence \\[1ex] \emph{Creative Commons Paternité - Partage à l'Identique 3.0 non transposé.}\\[10pt] +Il a été créé par Laurent Guerby, Matthieu Herrb et Guilhem Saurel. + Le texte complet de cette licence est disponible à l'adresse~:\\ \url{http://creativecommons.org/licenses/by-sa/3.0/}} \end{frame} %---------------------------------------------------------------------- \begin{frame}{À propos de l'orateur} -\textbf{Laurent Guerby} +\textbf{Guilhem Saurel} \begin{itemize} -\item Ingénieur Télécom Bretagne 1996 -\item Une décennie dans la finance internationale -\item Situation financière confortable -\item Consacre 80\% de son temps à de l'associatif en bénévole -\item Président de l'association tetaneutral.net +\item Ingénieur en électronique de l’INP-ENSEEIHT +\item Docteur en robotique humanoïde +\item Ingénieur de Recherche au LAAS-CNRS +\item Président de l'association tetaneutral.ne \end{itemize} -\url{mailto:laurent@guerby.net}\\ +\url{mailto:guilhem@saurel.me}\\ +\end{frame} + +%---------------------------------------------------------------------- +\begin{frame}{À propos de l'orateur} +\textbf{Frédéric Zulian} +\begin{itemize} +\item TODO +\end{itemize} +\url{mailto:TODO}\\ \end{frame} %---------------------------------------------------------------------- @@ -349,7 +359,7 @@ même pour tetaneutral.net \end{frame} %---------------------------------------------------------------------- \begin{frame} -\frametitle{Statistiques juin 2015} +\frametitle{Statistiques septembre 2018} \begin{center} \begin{tikzpicture} \begin{axis}[ @@ -365,25 +375,25 @@ même pour tetaneutral.net nodes near coords, nodes near coords align={vertical}, ] -\addplot coordinates {(Reçu,213) (Émis,214)}; -\addplot coordinates {(Reçu,128) (Émis,104)}; +\addplot coordinates {(Reçu,580) (Émis,809)}; +\addplot coordinates {(Reçu,145) (Émis,116)}; \legend{transit, peering} \end{axis} \end{tikzpicture} \end{center} \end{frame} %---------------------------------------------------------------------- -\begin{frame} -\frametitle{RIPE-532} -\begin{itemize} -\item PI : Provider Independant -\item PA : Provider Aggregated -\item IPv6 $\Rightarrow$ tetaneutral.net a un PA /40 -\item Problème de filtre « strict » à /32 -\item Seule solution : LIR -\item /29 $\Rightarrow$ 8 * /32 -\end{itemize} -\end{frame} +%\begin{frame} +%\frametitle{RIPE-532} +%\begin{itemize} +%\item PI : Provider Independant +%\item PA : Provider Aggregated +%\item IPv6 $\Rightarrow$ tetaneutral.net a un PA /40 +%\item Problème de filtre « strict » à /32 +%\item Seule solution : LIR +%\item /29 $\Rightarrow$ 8 * /32 +%\end{itemize} +%\end{frame} %---------------------------------------------------------------------- \section{Distribution du réseau aux adhérents} %---------------------------------------------------------------------- @@ -416,8 +426,6 @@ même pour tetaneutral.net \item La majorité des accès haut débit est en ADSL \item NRA N\oe{}ud de Raccordement Abonné \item \textasciitilde{} 15000 NRA en France -\item - \url{http://www.free.fr/adsl/pages/accueil/carte-de-debits-adsl.html} \item Rayon 3-4\,km puis zone grise puis blanche \item Zone grise étendue < 2\,Mbit/s pas de TV \end{itemize} @@ -460,329 +468,345 @@ même pour tetaneutral.net \end{itemize} \end{frame} %---------------------------------------------------------------------- -\begin{frame} -\frametitle{Wifi et Radio} -\begin{itemize} -\item Domaine public, bien commun -\item Novembre 2002 - avril 2007 ouverture expérimentale en France -\item 2402 - 2482\,MHz 20\,dBm = 100\,mW -\item total 80\,MHz ouverts -\item TSF et pionniers -\end{itemize} -\end{frame} +%\begin{frame} +%\frametitle{Wifi et Radio} +%\begin{itemize} +%\item Domaine public, bien commun +%\item Novembre 2002 - avril 2007 ouverture expérimentale en France +%\item 2402 - 2482\,MHz 20\,dBm = 100\,mW +%\item total 80\,MHz ouverts +%\item TSF et pionniers +%\end{itemize} +%\end{frame} +%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Wifi 2} +%\begin{itemize} +%\item 5\,GHz ouvert en décembre 2005 en France +%\item 5170 - 5220 20\,dBm $\Rightarrow$ 80\,MHz +%\item 5250 - 5330 20\,dBm DFS $\Rightarrow$ 80\,MHz +%\item 5490 - 5710 30\,dBm = 1W DFS $\Rightarrow$ 220\,MHz +%\item dont 5600-5650 radar météo fixe (5625 à Toulouse) DFS +%\item 5745 - 5826 $\Rightarrow$ USA 80\,MHz puissance plus élevée +%\end{itemize} +%Consulté avec la FFDN pour la \url{http://www.mission-spectre2014.fr/} +%\end{frame} +%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Efficacité spectrale} +%\begin{itemize} +%\item Débit sur une fréquence partagé par les utilisateurs sur une + %zone géographique +%\item 802.11abgn, 802.11ac (canaux 80 et 160\,MHz en 5\,GHz) et 802.11ad (60\,GHz) \\ + %\url{http://en.wikipedia.org/wiki/IEEE_802.11} +%\item En situation réelle 100\,Mbit/s sur 40\,MHz (une direction) \\ + %8.6\,km $\rightarrow$ 2.5\,bit/s/Hz +%\item AirFiber 5X 220 Mbit/s symetrique sur 50 MHz \\ + %4.1\,km $\rightarrow$ 8.8\,bit/s/Hz +%\end{itemize} +%\end{frame} +%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{PIRE} +%\begin{itemize} +%\item PIRE Puissance Isotrope Rayonnée Équivalente +%\item EIRP Equivalent Isotropically radiated Power +%\item Signal/Bruit +%\item Lois et règlements +%\item Puissances faibles sur les bandes ouvertes vs les bandes + %soumises à licence +%\end{itemize} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Ondes et Santé} +%\begin{itemize} +%\item 2,4\,GHz rien de spécifique vis à vis de l'eau (20\,GHz), un + %micro-ondes peut marcher à d'autres fréquences +%\item Téléphones sans fil \textasciitilde{} wifi +%\item GSM \textasciitilde{} 4\,W max dans la poche, > 100\,W Base +%\item Radio FM 2000-4000\,W +%\item Antennes plus nombreuses = moins de puissance \\ + %mesure champmètre +%\end{itemize} +%\end{frame} +%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Antenne} +%\begin{columns} +%\column{0.7\textwidth} +%\begin{itemize} +%\item Analogie ampoule et lampe torche +%\item Concentration du signal dans une direction +%\item Parabole de 60\,cm à 5\,GHz $\Rightarrow$ 30\,dBi = *1000 \\ + %dans un cône de quelques degrés +%\item MIMO multiple-input and multiple-output +%\item Polarisation : multiplicateur de débit +%\end{itemize} +%\column{0.3\textwidth} +%\fig{P1070287-crop}{\textwidth} +%\end{columns} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Bilan Radio} +%\begin{itemize} +%\item Longueur d'onde +%\begin{itemize} +%\item 2,4\,GHz \textasciitilde{} 12\,cm +%\item 5\,GHz \textasciitilde{} 5\,cm +%\end{itemize} +%\item Ne passe pas les obstacles \textasciitilde{} longueur d'onde +%\item Arbres, bâtiments, collines +%\item Zone de Fresnel +%\end{itemize} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Produits Radio} +%\begin{columns} +%\column{0.6\textwidth} +%\begin{itemize} +%\item Ubiquity \url{http://ubnt.com/} AirOS +%\item Mikrotik \url{http://mikrotik.com/} RouterOS +%\item 60-\EUR{100} diverses formes d'antenne intégrée. 200-\EUR{300} + %pour antenne évoluée +%\item PoE Power Over Ethernet +%\item Option Wifi non standard TDMA +%\item AirOS = OpenWRT avec SDK +%\item Ath9k Atheros Qualcomm pilote libre +%\end{itemize} +%\column{0.4\textwidth} +%\fig{IMG_20131108_151905}{\textwidth} +%\end{columns} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Tests Radio} +%\begin{itemize} +%\item 8600m Pech David - Ramassier +%\item 40\,MHz parabole 40\,cm RX -73/-74\,dBm +%\item Rama TX: 102.2, 106.5, 114.0, 112.0\,Mb/s +%\item Rama RX: 99.1, 99.4, 98.9, 99.4 Mb/s +%\item Duplex (RX/TX): 46/48, 47/51, 47/46 Mb/s +%\end{itemize} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Tests Radio 2} +%\begin{itemize} +%\item 10\,MHz Parabole 40\,cm vers Omni +%\item RX -75\,dBm coté Ramassiers (parabole) +%\item Rx -84\,dBm coté Pech David (omni) +%\item Rama TX: 5.63, 5.76, 5.67, 4.95\,Mb/s +%\item Rama Rx: 19.15, 16.40, 13.54, 14.63\,Mb/s +%\item Moins bon en 20\,Mhz, courbe en cloche +%\end{itemize} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Internet} +%\begin{itemize} +%\item Radio $\Rightarrow$ Internet ? +%\item Ligne ADSL classique = 1 IP, parfois fixe +%\item Livraison de plusieurs IP possible, FDN, pro +%\item Sinon tunnel avec logiciel libre OpenVPN +%\item Dans ce cas la ligne ADSL ne va communiquer qu'avec une seule + %IP, celle du serveur +%\item Le serveur est sur un autre réseau qui a les IP qui nous + %intéressent +%\end{itemize} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Pont réseau} +%\begin{itemize} +%\item Configuration simple en pont réseau des équipements radio +%\item Comme des câbles ethernet et des switches chaînés +%\item Le réseau a une topologie en arbre, pas de boucle, pas de + %redondance +%\item Utilisation du firmware standard mode WDS +%\end{itemize} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Protocoles Mesh} +%\begin{itemize} +%\item OLSR (Toulouse sans fil) +%\item Batman +%\item Babel/Babel-Z +%\item OSPF/BGP +%\item Battlemesh +%\item Choix du niveau de complexité +%\end{itemize} +%Note: guifi.net 28600 n\oe{}uds 52459\,km de liens 300 n\oe{}uds / mois +%\end{frame} +---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Neutralité du réseau} +%\begin{itemize} +%\item Comment gérer la congestion ? +%\item Ne rien faire : les équipements ont une règle par défaut... \\ + %pas si neutre que ça +%\item « tail drop » : neutre mais... par flux +%\item Règles à tetaneutral.net : équité sur le débit + %instantané. Historique du volume ? +%\item Latence, petit paquets ? +%\item VoIP et service garanti +%\end{itemize} +%\end{frame} +%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{En pratique} +%\begin{itemize} +%\item Trouver un point de collecte +%\item Entreprise TPE/PME locale, avantage présence 9h-17h sur site +%\item Particulier (vacances, clés) +%\item Maison association, salle des fêtes, mairie +%\item Si deux NRA sur la zone $\Rightarrow$ redondance +%\end{itemize} +%\end{frame} +%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{En pratique 2} +%\begin{itemize} +%\item 1 ADSL > 10\,Mbit/s 4 foyers à Monès +%\item 3 ADSL > 10\,Mbit/s 40 foyers à St-Gaudens +%\item 5 ADSL \textasciitilde{} 10\,Mbit/s pour 140 foyers à Sames + %Wireless dans les Pyrénées Atlantiques +%\item Offre FTTH Orance CELAN cher (500-\EUR{1500}/mois) avec + %\EUR{5000} de frais d'accès +%\item 40*28 = \EUR{1120}/mois : possible à Saint-Gaudens +%\end{itemize} +%\end{frame} +%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Points Hauts} +%\begin{columns} +%\column{0.6\textwidth} +%\begin{itemize} +%\item Mat d'antenne TV +%\item Droit à l'antenne en copropriété +%\item Radio amateur (mât 12m et plus, souvent motivés) +%\item Hangar ou bâtiment agricole +%\item Poteau d'éclairage stade ou municipal +%\item Château d'eau, clocher +%\item Compromis négociation/radio/maintenabilité +%\end{itemize} +%\column{0.4\textwidth} +%\fig{alex_20130316}{\textwidth} +%\end{columns} +%\end{frame} +%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Relai Autonome} +%\begin{itemize} +%\item Electricité en haut de la colline ? +%\item Projet étudiant avec l'IUT de Blagnac +%\item Carte Mikrotik RouterBoard 433 1.2\,Watt +%\item Dec-Jan moyenne mensuelle 1h soleil/jour +%\item 100\,W $\Rightarrow$ 100\,Wh $\Rightarrow$ 5\,W pendant 24\,h +%\item 1,5\,m * 0,5\,m = 0,75\,m$^2$ +%\item 20\,kg batteries ? PbAc ou LiFePO$_4$ ? +%\end{itemize} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Réseau radio tetaneutral.net à Toulouse} +%\fig{map_tsf}{.9\textwidth} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Cartographie} +%\fig{aircontrol}{\textwidth} +%\end{frame} +%%---------------------------------------------------------------------- +%\section{Hébergement et services} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Hébergeur et EDF} +%\begin{itemize} +%\item EDF : $0.1372 * 365 * 24 / 1000 = 1.202\,\textup{\euro}$ \\ + %pour 1 Watt en continu pendant un an +%\item Climatisation +%\item Enercoop source renouvelable : $0.1611 \rightarrow + %1.411\,\textup{\euro}$ +%\item Rackable / PC Tour ATX / Ventilation +%\end{itemize} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Hébergement tetaneutral.net} +%\fig{myrys_baie}{.55\textwidth} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Règlement intérieur} +%{\small Dans le cadre de son objet social l'association fournit des services à +%ses adhérents de manière solidaire contre une participation aux frais +%engagés par l'association. Ces services sont gérés par des bénévoles +%sur leur temps libre et de manière amateur. Par conséquence, ces +%services sont fournis sans aucune garantie de qualité, performance, +%disponibilité, délai de réponse aux demandes de support ou de sécurité +%des données et des équipements. L'association ne peut être tenue +%responsable de toute conséquence liée au non fonctionnement ponctuel +%ou définitif d'un service ou d'une perte de donnée ou de +%matériel. Chaque adhérent doit donc s'assurer par lui même de pouvoir +%disposer de sauvegardes de données et d'un service de secours +%convenant à ses besoins en cas de défaillance d'un ou plusieurs +%services fournis par l'association. +%} +%\end{frame} +%%---------------------------------------------------------------------- +%\begin{frame} +%\frametitle{Historique 3} +%\begin{itemize} +%\item Juillet 2012 début du remboursement du prêt de \EUR{12000}, rythme \textasciitilde{} \EUR{1000}/mois +%\item Octobre 2012 FAI à Monès +%\item Novembre 2012 216 adhérents pour \EUR{2600}/mois de service pour \EUR{900}/mois de frais +%\item Janvier 2014 428 adhérents \EUR{5800}/mois service \EUR{3600}/mois de frais +%\item Mai 2014 535 adhérents \EUR{7400}/mois service \EUR{3600}/mois de frais +%\item Juin 2015 730 adhérents \EUR{11400}/mois service \EUR{3600}/mois de frais +%\end{itemize} +%\end{frame} %---------------------------------------------------------------------- \begin{frame} -\frametitle{Wifi 2} -\begin{itemize} -\item 5\,GHz ouvert en décembre 2005 en France -\item 5170 - 5220 20\,dBm $\Rightarrow$ 80\,MHz -\item 5250 - 5330 20\,dBm DFS $\Rightarrow$ 80\,MHz -\item 5490 - 5710 30\,dBm = 1W DFS $\Rightarrow$ 220\,MHz -\item dont 5600-5650 radar météo fixe (5625 à Toulouse) DFS -\item 5745 - 5826 $\Rightarrow$ USA 80\,MHz puissance plus élevée -\end{itemize} -Consulté avec la FFDN pour la \url{http://www.mission-spectre2014.fr/} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Efficacité spectrale} -\begin{itemize} -\item Débit sur une fréquence partagé par les utilisateurs sur une - zone géographique -\item 802.11abgn, 802.11ac (canaux 80 et 160\,MHz en 5\,GHz) et 802.11ad (60\,GHz) \\ - \url{http://en.wikipedia.org/wiki/IEEE_802.11} -\item En situation réelle 100\,Mbit/s sur 40\,MHz (une direction) \\ - 8.6\,km $\rightarrow$ 2.5\,bit/s/Hz -\item AirFiber 5X 220 Mbit/s symetrique sur 50 MHz \\ - 4.1\,km $\rightarrow$ 8.8\,bit/s/Hz -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{PIRE} -\begin{itemize} -\item PIRE Puissance Isotrope Rayonnée Équivalente -\item EIRP Equivalent Isotropically radiated Power -\item Signal/Bruit -\item Lois et règlements -\item Puissances faibles sur les bandes ouvertes vs les bandes - soumises à licence -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Ondes et Santé} -\begin{itemize} -\item 2,4\,GHz rien de spécifique vis à vis de l'eau (20\,GHz), un - micro-ondes peut marcher à d'autres fréquences -\item Téléphones sans fil \textasciitilde{} wifi -\item GSM \textasciitilde{} 4\,W max dans la poche, > 100\,W Base -\item Radio FM 2000-4000\,W -\item Antennes plus nombreuses = moins de puissance \\ - mesure champmètre -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Antenne} -\begin{columns} -\column{0.7\textwidth} -\begin{itemize} -\item Analogie ampoule et lampe torche -\item Concentration du signal dans une direction -\item Parabole de 60\,cm à 5\,GHz $\Rightarrow$ 30\,dBi = *1000 \\ - dans un cône de quelques degrés -\item MIMO multiple-input and multiple-output -\item Polarisation : multiplicateur de débit -\end{itemize} -\column{0.3\textwidth} -\fig{P1070287-crop}{\textwidth} -\end{columns} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Bilan Radio} -\begin{itemize} -\item Longueur d'onde -\begin{itemize} -\item 2,4\,GHz \textasciitilde{} 12\,cm -\item 5\,GHz \textasciitilde{} 5\,cm -\end{itemize} -\item Ne passe pas les obstacles \textasciitilde{} longueur d'onde -\item Arbres, bâtiments, collines -\item Zone de Fresnel -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Produits Radio} -\begin{columns} -\column{0.6\textwidth} -\begin{itemize} -\item Ubiquity \url{http://ubnt.com/} AirOS -\item Mikrotik \url{http://mikrotik.com/} RouterOS -\item 60-\EUR{100} diverses formes d'antenne intégrée. 200-\EUR{300} - pour antenne évoluée -\item PoE Power Over Ethernet -\item Option Wifi non standard TDMA -\item AirOS = OpenWRT avec SDK -\item Ath9k Atheros Qualcomm pilote libre -\end{itemize} -\column{0.4\textwidth} -\fig{IMG_20131108_151905}{\textwidth} -\end{columns} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Tests Radio} -\begin{itemize} -\item 8600m Pech David - Ramassier -\item 40\,MHz parabole 40\,cm RX -73/-74\,dBm -\item Rama TX: 102.2, 106.5, 114.0, 112.0\,Mb/s -\item Rama RX: 99.1, 99.4, 98.9, 99.4 Mb/s -\item Duplex (RX/TX): 46/48, 47/51, 47/46 Mb/s -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Tests Radio 2} -\begin{itemize} -\item 10\,MHz Parabole 40\,cm vers Omni -\item RX -75\,dBm coté Ramassiers (parabole) -\item Rx -84\,dBm coté Pech David (omni) -\item Rama TX: 5.63, 5.76, 5.67, 4.95\,Mb/s -\item Rama Rx: 19.15, 16.40, 13.54, 14.63\,Mb/s -\item Moins bon en 20\,Mhz, courbe en cloche -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Internet} -\begin{itemize} -\item Radio $\Rightarrow$ Internet ? -\item Ligne ADSL classique = 1 IP, parfois fixe -\item Livraison de plusieurs IP possible, FDN, pro -\item Sinon tunnel avec logiciel libre OpenVPN -\item Dans ce cas la ligne ADSL ne va communiquer qu'avec une seule - IP, celle du serveur -\item Le serveur est sur un autre réseau qui a les IP qui nous - intéressent -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Pont réseau} -\begin{itemize} -\item Configuration simple en pont réseau des équipements radio -\item Comme des câbles ethernet et des switches chaînés -\item Le réseau a une topologie en arbre, pas de boucle, pas de - redondance -\item Utilisation du firmware standard mode WDS -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Protocoles Mesh} -\begin{itemize} -\item OLSR (Toulouse sans fil) -\item Batman -\item Babel/Babel-Z -\item OSPF/BGP -\item Battlemesh -\item Choix du niveau de complexité -\end{itemize} -Note: guifi.net 28600 n\oe{}uds 52459\,km de liens 300 n\oe{}uds / mois -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Neutralité du réseau} -\begin{itemize} -\item Comment gérer la congestion ? -\item Ne rien faire : les équipements ont une règle par défaut... \\ - pas si neutre que ça -\item « tail drop » : neutre mais... par flux -\item Règles à tetaneutral.net : équité sur le débit - instantané. Historique du volume ? -\item Latence, petit paquets ? -\item VoIP et service garanti -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{En pratique} -\begin{itemize} -\item Trouver un point de collecte -\item Entreprise TPE/PME locale, avantage présence 9h-17h sur site -\item Particulier (vacances, clés) -\item Maison association, salle des fêtes, mairie -\item Si deux NRA sur la zone $\Rightarrow$ redondance -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{En pratique 2} -\begin{itemize} -\item 1 ADSL > 10\,Mbit/s 4 foyers à Monès -\item 3 ADSL > 10\,Mbit/s 40 foyers à St-Gaudens -\item 5 ADSL \textasciitilde{} 10\,Mbit/s pour 140 foyers à Sames - Wireless dans les Pyrénées Atlantiques -\item Offre FTTH Orance CELAN cher (500-\EUR{1500}/mois) avec - \EUR{5000} de frais d'accès -\item 40*28 = \EUR{1120}/mois : possible à Saint-Gaudens -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Points Hauts} -\begin{columns} -\column{0.6\textwidth} -\begin{itemize} -\item Mat d'antenne TV -\item Droit à l'antenne en copropriété -\item Radio amateur (mât 12m et plus, souvent motivés) -\item Hangar ou bâtiment agricole -\item Poteau d'éclairage stade ou municipal -\item Château d'eau, clocher -\item Compromis négociation/radio/maintenabilité -\end{itemize} -\column{0.4\textwidth} -\fig{alex_20130316}{\textwidth} -\end{columns} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Relai Autonome} -\begin{itemize} -\item Electricité en haut de la colline ? -\item Projet étudiant avec l'IUT de Blagnac -\item Carte Mikrotik RouterBoard 433 1.2\,Watt -\item Dec-Jan moyenne mensuelle 1h soleil/jour -\item 100\,W $\Rightarrow$ 100\,Wh $\Rightarrow$ 5\,W pendant 24\,h -\item 1,5\,m * 0,5\,m = 0,75\,m$^2$ -\item 20\,kg batteries ? PbAc ou LiFePO$_4$ ? -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Réseau radio tetaneutral.net à Toulouse} -\fig{map_tsf}{.9\textwidth} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Cartographie} -\fig{aircontrol}{\textwidth} -\end{frame} -%---------------------------------------------------------------------- -\section{Hébergement et services} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Hébergeur et EDF} -\begin{itemize} -\item EDF : $0.1372 * 365 * 24 / 1000 = 1.202\,\textup{\euro}$ \\ - pour 1 Watt en continu pendant un an -\item Climatisation -\item Enercoop source renouvelable : $0.1611 \rightarrow - 1.411\,\textup{\euro}$ -\item Rackable / PC Tour ATX / Ventilation -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Hébergement tetaneutral.net} -\fig{myrys_baie}{.55\textwidth} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Règlement intérieur} -{\small Dans le cadre de son objet social l'association fournit des services à -ses adhérents de manière solidaire contre une participation aux frais -engagés par l'association. Ces services sont gérés par des bénévoles -sur leur temps libre et de manière amateur. Par conséquence, ces -services sont fournis sans aucune garantie de qualité, performance, -disponibilité, délai de réponse aux demandes de support ou de sécurité -des données et des équipements. L'association ne peut être tenue -responsable de toute conséquence liée au non fonctionnement ponctuel -ou définitif d'un service ou d'une perte de donnée ou de -matériel. Chaque adhérent doit donc s'assurer par lui même de pouvoir -disposer de sauvegardes de données et d'un service de secours -convenant à ses besoins en cas de défaillance d'un ou plusieurs -services fournis par l'association. -} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Historique 3} -\begin{itemize} -\item Juillet 2012 début du remboursement du prêt de \EUR{12000}, rythme \textasciitilde{} \EUR{1000}/mois -\item Octobre 2012 FAI à Monès -\item Novembre 2012 216 adhérents pour \EUR{2600}/mois de service pour \EUR{900}/mois de frais -\item Janvier 2014 428 adhérents \EUR{5800}/mois service \EUR{3600}/mois de frais -\item Mai 2014 535 adhérents \EUR{7400}/mois service \EUR{3600}/mois de frais -\item Juin 2015 730 adhérents \EUR{11400}/mois service \EUR{3600}/mois de frais -\end{itemize} -\end{frame} -%---------------------------------------------------------------------- -\begin{frame} -\frametitle{Récapitulatif Association - Juin 2015} -\begin{tabular}{lrrrrr} -Service & npay & ninf & ngra & \euro & \% \\ +\frametitle{Récapitulatif Association - Septembre 2018} + +{\scriptsize + +\begin{tabular}{lrrrrrrrrr} \hline -Hosting & 55 & 8 & 10 & 1046 & 9.2 \\ -VM & 60 & 16 & 30 & 493 & 4.3 \\ -IP & 3 & 0 & 0 & 30 & 0.3 \\ -abo ADSL & 7 & 0 & 0 & 210 & 1.8 \\ -abo Toulouse & 87 & 0 & 29 & 1383 & 12.1 \\ -abo Mones & 9 & 0 & 1 & 244 & 2.1 \\ -abo Saint-Gaudens & 270 & 0 & 9 & 7528 & 65.9 \\ -abo Mauvaisin & 14 & 0 & 3 & 384 & 3.4 \\ -abo Cazeres & 1 & 0 & 0 & 28 & 0.2 \\ -abo Fabas & 2 & 0 & 2 & 43 & 0.4 \\ -abo Goyrans & 1 & 0 & 0 & 28 & 0.2 \\ -abo Banyuls & 0 & 0 & 1 & 0 & 0.0 \\ -abo Montescots & 0 & 0 & 4 & 0 & 0.0 \\ +Service & total & infra & adh & gratuits & payés & \euro & \% \\ +\hline +abo Banyuls & 1 & 0 & 1 & 0 & 0 & 0.00 & 0.0 \\ +abo Carla-Bayle & 1 & 0 & 1 & 0 & 0 & 0.00 & 0.0 \\ +abo Cazeres & 17 & 0 & 17 & 1 & 3 & 43.33 & 0.8 \\ +abo Fabas & 6 & 0 & 6 & 0 & 6 & 154.00 & 2.7 \\ +abo Goyrans & 25 & 0 & 25 & 0 & 23 & 606.00 & 10.8 \\ +abo Mauvaisin & 26 & 0 & 26 & 1 & 17 & 468.00 & 8.3 \\ +abo Mones & 13 & 0 & 13 & 1 & 11 & 274.33 & 4.9 \\ +abo Montescot & 13 & 0 & 13 & 0 & 7 & 196.00 & 3.5 \\ +abo Toulouse & 136 & 1 & 135 & 5 & 71 & 1045.17 & 18.6 \\ +abo Toulouse Fibre & 54 & 1 & 53 & 0 & 44 & 1309.00 & 23.3 \\ +Hosting & 95 & 8 & 87 & 0 & 45 & 1012.00 & 18.0 \\ +VM & 174 & 26 & 148 & 4 & 51 & 455.67 & 8.1 \\ +TOTAL & 592 & 57 & 535 & 12 & 284 & 5618.50 & 100.0 \\ \hline \end{tabular} +~ + +\begin{tabular}{rrrrrr} +\hline + Adhesions & gratuites& manquantes & payées & euros & moyenne \\ +\hline + 719 & 15& 373 & 331 & 550.50 & 19.96 \\ +\hline +\end{tabular} + +} + \end{frame} %---------------------------------------------------------------------- \section{Conclusion} From 0d356a05c53d4db65000204bbd49e0f0bedde52d Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Thu, 20 Sep 2018 11:49:38 +0200 Subject: [PATCH 28/38] update milanpresse --- slides/rirs.pdf | Bin 0 -> 335464 bytes slides/ttnn-milanpresse-2018.tex | 38 ++++++++++++++++++++----------- 2 files changed, 25 insertions(+), 13 deletions(-) create mode 100644 slides/rirs.pdf diff --git a/slides/rirs.pdf b/slides/rirs.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f6264b3a8d676790663fb187901438d9aa7beacd GIT binary patch literal 335464 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 literal 0 HcmV?d00001 diff --git a/slides/ttnn-milanpresse-2018.tex b/slides/ttnn-milanpresse-2018.tex index 1119088..6ca29e9 100644 --- a/slides/ttnn-milanpresse-2018.tex +++ b/slides/ttnn-milanpresse-2018.tex @@ -47,7 +47,7 @@ % go \title{Tetaneutral.net un FAI associatif} -\author{Guilhem Saurel \& Frédéric Zulian} +\author{Guilhem Saurel} \institute{\ttnn{}} \date{Milan presse - Toulouse - 20 septembre 2018} @@ -87,19 +87,19 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \item Ingénieur en électronique de l’INP-ENSEEIHT \item Docteur en robotique humanoïde \item Ingénieur de Recherche au LAAS-CNRS -\item Président de l'association tetaneutral.ne +\item Président de l'association tetaneutral.net \end{itemize} \url{mailto:guilhem@saurel.me}\\ \end{frame} %---------------------------------------------------------------------- -\begin{frame}{À propos de l'orateur} -\textbf{Frédéric Zulian} -\begin{itemize} -\item TODO -\end{itemize} -\url{mailto:TODO}\\ -\end{frame} +%\begin{frame}{À propos de l'orateur} +%\textbf{Frédéric Zulian} +%\begin{itemize} +%\item TODO +%\end{itemize} +%\url{mailto:TODO}\\ +%\end{frame} %---------------------------------------------------------------------- \begin{frame} @@ -155,6 +155,9 @@ Le texte complet de cette licence est disponible à l'adresse~:\\ \item Local Internet Registry \item À Toulouse celui choisi : \href{http://fullsave.com/}{FullSave} \end{itemize} +\begin{center} + \includegraphics[width=8cm]{rirs} +\end{center} \end{frame} %---------------------------------------------------------------------- \begin{frame} @@ -468,6 +471,15 @@ même pour tetaneutral.net \end{itemize} \end{frame} %---------------------------------------------------------------------- +\begin{frame} +\frametitle{Services 4: Accès fibre optique} +\begin{itemize} + \item Résidence de tests: Aux Quatre Vents, Cartoucherie + \item Best effort: 10 Gb/s + \item Relations avec les autres FAI encore floues +\end{itemize} +\end{frame} +%---------------------------------------------------------------------- %\begin{frame} %\frametitle{Wifi et Radio} %\begin{itemize} @@ -641,7 +653,7 @@ même pour tetaneutral.net %\end{itemize} %Note: guifi.net 28600 n\oe{}uds 52459\,km de liens 300 n\oe{}uds / mois %\end{frame} ----------------------------------------------------------------------- +%---------------------------------------------------------------------- %\begin{frame} %\frametitle{Neutralité du réseau} %\begin{itemize} @@ -773,7 +785,7 @@ même pour tetaneutral.net \begin{frame} \frametitle{Récapitulatif Association - Septembre 2018} -{\scriptsize +{\scriptsize\centering \begin{tabular}{lrrrrrrrrr} \hline @@ -799,9 +811,9 @@ TOTAL & 592 & 57 & 535 & 12 & 284 & 5618.50 & 100.0 \begin{tabular}{rrrrrr} \hline - Adhesions & gratuites& manquantes & payées & euros & moyenne \\ + Adhesions & gratuites& payées & euros & moyenne \\ \hline - 719 & 15& 373 & 331 & 550.50 & 19.96 \\ + 719 & 15& 331 & 550.50 & 19.96 \\ \hline \end{tabular} From 3e40ecc2fa71764433af6799dbc899280e99af12 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Fri, 16 Nov 2018 15:01:29 +0100 Subject: [PATCH 29/38] Version CdL 2018 --- flyer/flyer-ttnn.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 2b9bd21..9d0d901 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -106,7 +106,7 @@ rentables. Avec sa technologie à bas coût et sa logique sans but commercial l'association est capable d'amener l'internet à haut débit dans la majorité de ces zones. -Début 2018, le réseau Tetaneutral.net est déployé principalement +En 2018, le réseau Tetaneutral.net est déployé principalement aux endroits suivants : \begin{itemize} \item Toulouse 140 abonnés @@ -293,7 +293,7 @@ réseau ouvert au public\\ \end{center} \begin{flushright} - Mai 2018 + Novembre 2018 \end{flushright} \vfill From 4e0c94151dd87abe7cd8b3cd8dbe36f522f42866 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Thu, 7 Feb 2019 21:50:03 +0100 Subject: [PATCH 30/38] generate logo --- logo.sh | 5 +++++ logo.tex | 26 ++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100755 logo.sh create mode 100644 logo.tex diff --git a/logo.sh b/logo.sh new file mode 100755 index 0000000..b3d41f2 --- /dev/null +++ b/logo.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +pdflatex logo +pdfcrop logo.pdf logo-tetaneutral.pdf +rm logo.{aux,log,nav,out,pdf,snm,toc} diff --git a/logo.tex b/logo.tex new file mode 100644 index 0000000..65b6f3d --- /dev/null +++ b/logo.tex @@ -0,0 +1,26 @@ +\documentclass{beamer} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage{graphicx} +\usepackage[frenchb]{babel} +\usepackage{hyperref} +\usepackage{pgf} +\usepackage{eurosym} +\DeclareUnicodeCharacter{20AC}{\euro} +\usepackage{textcomp} +\usepackage{xcolor} +\usepackage{pgfplots} +\usepgfplotslibrary{dateplot} % Needs TeXlive 2013 ... + +\setbeamertemplate{footline}{} +\setbeamertemplate{navigation symbols}{} + +% Tetaneutral.net logo +\definecolor{ttnn1}{rgb}{.695,.645,.551} +\definecolor{ttnn2}{rgb}{.906,.839,.730} +\newcommand{\ttnn}{\Huge\color{ttnn1}{\textbf{teta}}\color{ttnn2}{neutral}\color{ttnn1}{.net}} + +\begin{document} +\ttnn{} +\end{document} From 0ac77fa6ecd47cc31e07b8f0fc3f2e873a3215c4 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Sat, 15 Feb 2020 10:10:46 +0100 Subject: [PATCH 31/38] version THSF/CdL 2019 --- flyer/flyer-ttnn.tex | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 9d0d901..17a2edb 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -106,14 +106,14 @@ rentables. Avec sa technologie à bas coût et sa logique sans but commercial l'association est capable d'amener l'internet à haut débit dans la majorité de ces zones. -En 2018, le réseau Tetaneutral.net est déployé principalement +En 2019, le réseau Tetaneutral.net est déployé principalement aux endroits suivants : \begin{itemize} -\item Toulouse 140 abonnés +\item Toulouse 192 abonnés \item Mauvaisin 25 abonnés -\item Goyrans 25 abonnés -\item Mones 15 abonnés -\item Cazères 15 abonnés +\item Goyrans 23 abonnés +\item Mones 13 abonnés +\item Cazères 19 abonnés \end{itemize} \section{Partage des connaissances} @@ -187,13 +187,11 @@ de la cotisation. suggéré de 5 à 15\,€ par mois. \item \emph{Hébergement de machine physique au format libre :} suivant la consommation électrique de la machine. 5 à 10\,€ par mois pour une - petite machine comme NUC, Brix, netbook, laptop, nettop, NAS, raspberry pi. 15 à - 25\,€ par mois pour un PC avec une référence à 20\,€ par mois pour une - consommation de 100 Watt et moyenne autour de 30W. IPv4 supplémentaires - sur demande avec un tarif de référence -de 2 à 5\,€/mois/IPv4 supplémentaire. + petite machine comme NUC, Brix, netbook, laptop, raspberry pi. 20\,€ par mois pour une consommation de 100 Watt et moyenne autour de 30W. + IPv4 supplémentaires sur demande, 5\,€/mois/IPv4 supplémentaire. \item \emph{Accès internet :} 15 à 30\,€ par mois, location du matériel radio 5 GHz incluse, IPv4 et IPv6. + \item \emph{VPN Wireguard :} 5\,€ par mois, 15\,€ par mois avec location d'un routeur pré-configuré. \end{itemize} \section{Transparence} @@ -287,13 +285,13 @@ réseau ouvert au public\\ \end{verse} %\centerline{\includegraphics[height=7cm]{campagne-ffdn-500x212}} -\vspace{1cm} +\vspace{0.5cm} \begin{center} \qrcode[height=3cm]{https://radio.tetaneutral.net/} \end{center} \begin{flushright} - Novembre 2018 + Juin 2019 \end{flushright} \vfill From d19b41eabf3104eae1390cb64c9f5fbdbbb6da28 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Sat, 15 Feb 2020 10:13:36 +0100 Subject: [PATCH 32/38] version fevrier 2020 --- flyer/flyer-ttnn.tex | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 17a2edb..96864f4 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -106,14 +106,14 @@ rentables. Avec sa technologie à bas coût et sa logique sans but commercial l'association est capable d'amener l'internet à haut débit dans la majorité de ces zones. -En 2019, le réseau Tetaneutral.net est déployé principalement +En 2020, le réseau Tetaneutral.net est déployé principalement aux endroits suivants : \begin{itemize} -\item Toulouse 192 abonnés -\item Mauvaisin 25 abonnés -\item Goyrans 23 abonnés -\item Mones 13 abonnés -\item Cazères 19 abonnés +\item Toulouse 192 abonné·e·s +\item Mauvaisin 25 abonné·e·s +\item Goyrans 23 abonné·e·s +\item Mones 13 abonné·e·s +\item Cazères 31 abonné·e·s \end{itemize} \section{Partage des connaissances} @@ -191,7 +191,7 @@ de la cotisation. IPv4 supplémentaires sur demande, 5\,€/mois/IPv4 supplémentaire. \item \emph{Accès internet :} 15 à 30\,€ par mois, location du matériel radio 5 GHz incluse, IPv4 et IPv6. - \item \emph{VPN Wireguard :} 5\,€ par mois, 15\,€ par mois avec location d'un routeur pré-configuré. + \item \emph{VPN Wireguard :} 5\,€ par mois. \end{itemize} \section{Transparence} @@ -291,7 +291,7 @@ réseau ouvert au public\\ \end{center} \begin{flushright} - Juin 2019 + Février 2020 \end{flushright} \vfill From ec00c1fecd54b5145c68f509e8f4805f34b73b76 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Fri, 3 Sep 2021 09:00:52 +0200 Subject: [PATCH 33/38] freenode -> libera.chat --- flyer/flyer-ttnn.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 96864f4..a43f392 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -154,7 +154,7 @@ listes de discussions publiques, archivées et ouvertes à tou·te·s : \end{itemize} Nous sommes aussi disponibles pour discuter sur le serveur IRC -\url{irc.freenode.net} sur le canal \url{#tetaneutral.net}. +\url{irc.libera.chat} sur le canal \url{#tetaneutral.net}. \section{Adhésion} From 8108d4b8bc7dbb61d8027d9e7550d9ba47132acb Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Fri, 3 Sep 2021 09:02:16 +0200 Subject: [PATCH 34/38] Date --- flyer/flyer-ttnn.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index a43f392..1545a16 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -291,7 +291,7 @@ réseau ouvert au public\\ \end{center} \begin{flushright} - Février 2020 + Septembre 2021 \end{flushright} \vfill From d454c608395d25e5894fe3d3b469a46ca6628563 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Sat, 26 Feb 2022 08:35:51 +0100 Subject: [PATCH 35/38] Adapte pour texlive 2021 --- flyer/flyer-ttnn.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index 1545a16..f803047 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -48,7 +48,7 @@ \put(0,0){\textcolor{LIGHTGRAY}{\rule{\paperwidth}{\paperheight}}}} \AddToBackground*{2}{% Background of a large page - \put(\LenToUnit{.5\paperwidth},\LenToUnit{.5\paperheight}){% + \put(.5\paperwidth,.5\paperheight){% \makebox(0,0)[c]{% \resizebox{.9\paperwidth}{!}{\rotatebox{35.26}{% \textsf{\textbf{\textcolor{LIGHTGRAY}{tetaneutral.net}}}}}}}} From d99f5c81328feb446926afceee9af0fe3b39382a Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Sat, 26 Feb 2022 08:36:26 +0100 Subject: [PATCH 36/38] Fevrier2022: Myrys -> Picto --- flyer/flyer-ttnn.tex | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/flyer/flyer-ttnn.tex b/flyer/flyer-ttnn.tex index f803047..958c85f 100755 --- a/flyer/flyer-ttnn.tex +++ b/flyer/flyer-ttnn.tex @@ -205,14 +205,14 @@ mensuels sur la liste principale, ainsi que sur son site internet. Le projet Tetaneutral.net bénéficie d'une conjonction de facteurs favorables sur Toulouse et sa région. -Le local de \textbf{Mix'art Myrys} qui sert de base au projet est proche +Tetaneutral a bénéficié à ses début de locaux à \textbf{Mixart'Myrys} +et de la proximité du \textbf{Tetalab}. + +Le local des \textbf{Minimes} qui sert de base au projet est proche d'un centre névralgique du réseau internet à Toulouse où arrivent de nombreuses fibres optiques et où les opérateurs commerciaux ont accueilli favorablement l'idée de ce projet. -Dans ce local l'association \textbf{Tetalab} est également présente et nous -apporte des compétences techniques. - La société \textbf{Fullsave} met à notre disposition un local associatif au sein de l'un de ses centre de données. @@ -291,7 +291,7 @@ réseau ouvert au public\\ \end{center} \begin{flushright} - Septembre 2021 + Février 2022 \end{flushright} \vfill From b19e4393b637ce9710203cc0f12d738f2be5f943 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Sun, 29 Oct 2017 20:42:12 +0100 Subject: [PATCH 37/38] Schema reseau infra ttnn --- atelier-reseau/archi.svg | 12731 +++++++++++++++++++++++++++++++++++++ 1 file changed, 12731 insertions(+) create mode 100644 atelier-reseau/archi.svg diff --git a/atelier-reseau/archi.svg b/atelier-reseau/archi.svg new file mode 100644 index 0000000..e99c649 --- /dev/null +++ b/atelier-reseau/archi.svg @@ -0,0 +1,12731 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Touix + Gogent + + Fullsave + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + h7 + g1, g2, g3,... + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Myrys salle du milieu + Myrys salle édition + TLS00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Les internets + + From 5df635ecbcc5210d0b8d9cfde3979a4a7b0bc745 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb Date: Sat, 26 Feb 2022 09:11:00 +0100 Subject: [PATCH 38/38] maj schema archi --- atelier-reseau/archi.svg | 234 ++++++++++++++++++--------------------- 1 file changed, 109 insertions(+), 125 deletions(-) diff --git a/atelier-reseau/archi.svg b/atelier-reseau/archi.svg index e99c649..3a844ec 100644 --- a/atelier-reseau/archi.svg +++ b/atelier-reseau/archi.svg @@ -2,21 +2,21 @@ + inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)" + sodipodi:docname="archi.svg" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/"> + inkscape:window-width="1871" + inkscape:window-height="1062" + inkscape:window-x="49" + inkscape:window-y="0" + inkscape:window-maximized="1" + inkscape:pagecheckerboard="0" /> @@ -4600,7 +4601,7 @@ image/svg+xml - + @@ -6896,26 +6897,26 @@ sodipodi:nodetypes="cc" /> Touix + x="150.51271" + y="470.45123" + style="font-size:17.5px;line-height:1">FranceIX Gogent + y="414.45087" + style="font-size:17.5px;line-height:1">Gogent Fullsave + y="367.47879" + style="font-size:17.5px;line-height:1">Fullsave   + h7 + y="500.31384" + style="font-size:17.5px;line-height:1">h7 g1, g2, g3,... + y="357.88232" + style="font-size:17.5px;line-height:1">g1, g2, g3,... + style="opacity:1;fill:#c8b7b7;fill-opacity:1;stroke:#c8b7b7;stroke-width:6.15776;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect22750-7-0" + width="868.258" + height="273.2478" + x="32.746273" + y="707.64685" + ry="2.5874851e-05" /> - Myrys salle du milieu + y="732.14386" + style="font-size:17.5px;line-height:1">Bourbaki Myrys salle édition - TLS00 + y="340.20468" + style="font-size:17.5px;line-height:1">TLS00 Les internets + y="574.56006" + style="font-size:17.5px;line-height:1">Les internets