gel−1001 design iwcours.gel.ulaval.ca/2017/h/gel1001/default... · gel−1001 design i...

Post on 12-Jul-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Département de génie électrique et de génie informatique

GEL−1001 Design I (méthodologie)

Technique 3 –Transmission et stockage de données

Hiver 2017

GEL−1001 Design I (méthodologie) 2

Plan

Transmission de l’information et systèmes de télécommunication

Stockage de l’information et bases de données

GEL−1001 Design I (méthodologie) 3

Transmission de l’information

Transmission de l’information (voix, images, données)

Systèmes de télécommunicationTransmission fiable de l’informationTransmission sécuritaire de

l’information

GEL−1001 Design I (méthodologie) 4

Transmission de l’informationRôle : Transmission à distance de l’information (signaux analogiques ou données numériques) par fil électrique, ondes radio ou optique.

émetteur récepteur

canal

GEL−1001 Design I (méthodologie) 5

Systèmes de télécommunication

• Réseaux sans fil (e.g. Wi-Fi, Bluetooth)

• Systèmes cellulaires (radio-mobiles)

• Câbles coaxiaux (e.g. DOCSIS)

• Transmission par fibres optiques

• Systèmes de transmission par satellite

• Radiodiffusion sans fil (e.g. ATSC, FM)

GEL−1001 Design I (méthodologie) 6

Systèmes de télécommunication : allocation des bandes de fréquence

Source : Industrie Canada

GEL−1001 Design I (méthodologie) 7

VLF, 3-30 kHz : navigation longue distance, sous-marinsLF, 30-300 kHz : navigation longue distance, balises radioMF, 300 kHz-3 MHz : radiolocalisation, radiodiffusion AMHF, 3-30 MHz : radio amateur, avions, naviresVHF, 30-300 MHz : télédiffusion (VHF), radio FM duplexUHF, 300 MHz-3 GHz : télédiffusion (UHF), radiolocalisation, GPS, téléphonie

cellulaireSHF, 3-30 GHz : communications satellites, liaisons micro-ondesEHF, 30-300 GHz : radars, systèmes satellites expérimentaux103 - 107 GHz : systèmes de communication optique

ISM : Wi-Fi, Bluetooth, téléphone sans fil, four micro-onde, …

Systèmes de télécommunication : allocation des bandes de fréquence

Réseaux sans fil:Wi-Fi (Wireless Fidelity) Norme IEEE 802.11 réseaux locaux sans fil (WLAN) Couches : physique et liaison Débit : 11 Mbit/s (802.11b), 54 Mbit/s (802.11g) et

150 Mbit/s (802.11n) Portée : 30 à 50 m (jusqu’à 10 fois plus à l’extérieur) Sécurité : 802.11i (gestion des clés, chiffrement et

authentification) Fréquences : 2.4 GHz et 5 GHz Réseaux : infrastructure (points d’accès) et ad hoc Protocole : sans connexion

GEL−1001 Design I (méthodologie) 8

GEL−1001 Design I (méthodologie) 9

Réseaux sans fil:Bluetooth Connexion radio courte distance entre ordinateurs

et périphériques (réseaux personnels) Portée : 1, 10, 100 mètres (3 puissances) Débit : 1 Mbit/s (v1) à 3 Mbit/s (v2) Fréquences : ISM de 2.4 à 2.485 GHz (UHF)

Réseaux sans fil:WiMAX

Norme (IEEE 802.16) réseaux métropolitains sans fil

Couches : physique et liaison Débit : 30-40 Mbit/s (1 Gbit/s stations fixes) Portée : 50 km Mobilité : norme 802.16e Fréquences : 2.3 GHz – 3.5 GHz (réglementées),

5.x GHz (non réglementées) Réseau : infrastructure et ad hoc Protocole : orienté connexion

GEL−1001 Design I (méthodologie) 10

Réseaux sans fil:ZigBee

Norme (IEEE 802.15.4) de réseaux personnels Plus simples et moins coûteux que Bluetooth Portée : jusqu’à 100 m Débit : 250 kbit/s Fréquences : 915 MHz et 2.6 GHz Créneau : réseaux ad hoc nécessitant de faibles

débits, une faible consommation énergétique et une bonne sécurité.

GEL−1001 Design I (méthodologie) 11

GEL−1001 Design I (méthodologie) 12

Systèmes radio-mobiles cellulaires 1G (analogique, voix) :

Radiocom 2000, NMT (Nordic Mobile Telephone), etc.

2G (numérique, voix) : GSM (Global System for Mobile Communication) débit : 9,05 kbit/s

3G (numérique, voix et données) : UMTS (Universal Mobile Telecommunications System) débit : 1.9 Mbit/s (idéal), 384 kbit/s (milieu urbain)

4G : (numérique) : LTE-Advanced (Long Term Evolution Advanced) débit : 1 Gbit/s (arrêté)

5G : (numérique) : en recherche et développement débit : >10 Gbit/s (projeté)

Couverture : dépend des fournisseurs…

GEL−1001 Design I (méthodologie) 13

Systèmes de télécommunication

• Transmetteur : transforme le message de manière à faciliter sa transmission dans le canal (modulation)

• Canal : médium entre le transmetteur et le récepteur (perturbations : bruit, interférences, affaiblissements)

• Récepteur : reconstituer le message transmis

( )m t ( )s t

récepteur

( )m t( )r t

transmetteur canal de transmission

GEL−1001 Design I (méthodologie) 14

Canaux de transmission (perturbations)• Sources de bruit

• Bruit thermique (récepteurs)• Radiations (cosmique)

• Interférences• Interférences provenant d’autres systèmes• Interférence intersymbole

• Propagation par trajets multiples• Atténuation du signal• Affaiblissements (fading) dus au multivoie• Affaiblissements sélectifs en fréquence

Transmission fiable de l’information

Deux besoins principauxTransmettre les données régulièrementÉviter toute erreur de données

Donnée erronéeJamais reçueMal reçueMal envoyée (dédoublée, non-autorisée)Modifiée intentionnellement

GEL−1001 Design I (méthodologie) 15

Transmettre régulièrement

Contraintes temporelles spécifiques imposées pour les envois de chaque utilisateur (p. ex. communications à heure fixe, distribuées dans le temps)

Réseau dimensionné en fonction de modèles et de prévisions du trafic

Garantir une qualité de service (QoS)

GEL−1001 Design I (méthodologie) 16

Éviter les erreurs

Accusé de réception (« acknowledge ») pour chaque paquet de données reçu

Vérifier les numéros d’envoi des donnéesDétecter si les données sont en erreur par

une somme de contrôle (« checksum »)Détecter et corriger les données en erreur

(code correcteur)…tolérance aux fautes! Authentifier les données chiffrées

GEL−1001 Design I (méthodologie) 17

GEL−1001 Design I (méthodologie) 18

Transmission sécuritaire de l’information

Chiffrement («encryption») Utilisation de clés pour chiffrer et déchiffrer les

informations transmises.Authentification Vérifier l’identité d’une personne pour autoriser

l’accès à des ressources.Contrôle d’accès Limite l’utilisation de ressources en fonction de

l’usager.

GEL−1001 Design I (méthodologie) 19

Chiffrement (« encryption ») Chiffrement symétrique Une même clé pour chiffrer et déchiffrer DES (Data Encryption Standard) AES (Advanced Encryption Standard)

Chiffrement asymétrique Paire composée d'une clé publique et d'une clé

privée Données chiffrées avec une clé doivent être

déchiffrées avec l’autre Cryptosystème RSA (Rivest-Shamir-Adleman) Cryptosystème à courbes elliptiques

Chiffrement symétrique

GEL−1001 Design I (méthodologie) 20

21

Chiffrement symétrique

cryptanalyste(enregistrement et

traitement des cryptogrammes)

Clé secrètede chiffrement

(e.g. DES, 3DES, AES)

Clé secrètede chiffrementsource

message en clairDestinataire

légitime(message en clair)

message chiffré (encrypté)

…W W W=X

(même) séquencepseudoaléatoire

1010110101…00110011

Séquencepseudoaléatoire

1010110101…00110011

Chiffrement asymétrique

GEL−1001 Design I (méthodologie) 22

Génération des clés

Chiffrement symétrique 128 bits, donc 2128 façons de chiffrerCertains disponibles pour 256 bits

Chiffrement asymétriqueAlgorithme RSA : basé sur la factorisation en

nombres premiers 1024 bits ou plus car la clé doit respecter une

structure particulière

GEL−1001 Design I (méthodologie) 23

Cryptographie à clé publique

Cryptosystème RSACryptosystème à courbe elliptique Possibilité d’authentifier et de chiffrer

simultanément

M C C M( )

BKE S( )AkD M ( )

BkD C ( )AKE S

S S

Confidentialité

GEL−1001 Design I (méthodologie) 25

Authentification

Valider l’identité d’un usager à partir d’informations personnelles. Disponible dans plusieurs environnementsUtilitaires disponibles (ex. LDAP, ASP.NET) Important – Chiffrement des mots de passe

GEL−1001 Design I (méthodologie) 26

Authentification par chiffrement

GEL−1001 Design I (méthodologie) 27

Cryptographie hybride

GEL−1001 Design I (méthodologie) 28

Cryptographie hybride

GEL−1001 Design I (méthodologie) 29

Contrôle d’accèsHabituellement basé sur des rôlesRole-based access control Le rôle détermine les permissions.

Nécessite l’authentification des usagers

GEL−1001 Design I (méthodologie) 30

GEL−1001 Design I (méthodologie) 31

Stockage de l’information

Conception logicielle -architecture

Composants et connecteursBases de données

GEL−1001 Design I (méthodologie) 32

Conception logicielle

Bien structurer notre code afin : D’offrir les fonctionnalités aux usagersD’assurer la qualité du logiciel

GEL−1001 Design I (méthodologie) 33

Conception logicielle

Repose sur un bon choix d’architectureArchitecture = composantes + connecteurs

GEL−1001 Design I (méthodologie) 34

Architecture logicielle

Presentation-Logic-DataModèle à 3 couchesUtile pour les systèmes d’information

Presentation (UI)

Application Logic

Data

• Saisir les inputs des usagers• Présenter les informations• Capter les événements de l’interface

• Gérer les commandes de l’usager• Traiter les données • Décider quoi présenter à l’usager

• Assurer la persistance des données• Faciliter la recherche et la manipulation

GEL−1001 Design I (méthodologie) 35

Architecture logicielle

Modèle client-serveurPrincipal modèle pour les systèmes

distribués

ClientServeur

+service1()+service2()…+serviceN()

Requête

Réponse

GEL−1001 Design I (méthodologie) 36

Architecture logicielle

Modèle client-serveurClient léger et client lourd (thin vs. fat)

ServeurClient lourd (fat)

UI Logic Logic Data

ServeurClient léger (thin)

UI Logic Data

GEL−1001 Design I (méthodologie) 37

Architecture logicielle

Modèle client-serveur WebClient léger - Affichage avec un browser

ServeurWeb

Requête (HTTP)

Réponse (HTML)

HTMLJavaScript

AjaxAngularJS

XMLJson…

ClientJ2EEPHP.NET

PythonRuby

Base de données

Outil pour assurer la persistance des données Stockage et utilisation

Les informations sont structurées. Nombre, symbole, date, chaîne de caractères.

Système de gestion de base de données (SGBD) Un serveur qui manipule et dirige l’accès au contenu

4 opérateurs CRUD de manipulation de données Create (création) Read (lecture) Update (mise à jour) Delete (retrait)

Hiver 2016 GEL−1001 Design I (méthodologie) 38

Base de données relationnelles

Enregistrement Tuple de données Plusieurs champs

Table Ensemble d’enregistrements

Clé primaire Désigne un enregistrement Différent pour chaque enregistrement

Clé étrangère Référence à une donnée connexe

Hiver 2016 GEL−1001 Design I (méthodologie) 39

Base de données relationnelles

Langage de requête SQL SQL – Structured query language Standard de l’industrie

Exemple

SELECT Nom, Prénom, Salaire FROM PERSONNEL WHERE Salaire * 12 > 50000 order by Salaire DESC;

Hiver 2016 GEL−1001 Design I (méthodologie) 40

Condition

Table sur laquelleon effectue la recherche

Informations recherchées

Tri sur les données

Conclusion Télécommunications et conception logicielle:

Systèmes de télécommunication Transmissions fiables et sécuritaires Réseaux numériques, Internet et TCP/IP Conception logicielle – architecture Base de données

Hiver 2016 GEL−1001 Design I (méthodologie) 41

Cours pertinents

Cours liés aux télécommunications et à la sécurité GLO-2000 Réseaux pour ingénieurs GEL-3006 Systèmes de télécommunications GIF-3001 Réseaux de transmission de données GEL-4200 Communications numériques GEL-7064 Théorie et pratique des codes correcteurs GLO-3100 Cryptographie et sécurité informatique IFT-3201 Sécurité dans les réseaux informatiques IFT-7016 Sécurité basée sur les langages: confidentialité

et intégrité

Hiver 2016 GEL−1001 Design I (méthodologie) 42

Cours pertinents Cours liés à la conception logicielle

GLO-2004 Génie logiciel orienté objet IFT-2004 Modèles et langages des bases de données GLO-2003 Introduction aux processus du génie logiciel GLO-3102 Développement d’applications Web GLO-3112 Développement avancé d’applications Web GLO-4000 Interface personne-machine GLO-4002 Qualité logicielle GLO-3013 Projet de conception multidisciplinaire GLO-4003 Architecture logicielle GLO-3002 Projet en génie logiciel (Design IV pour GLO)

Hiver 2016 GEL−1001 Design I (méthodologie) 43

Des questions ?

Hiver 2016 44

top related