Réseaux Grande Distance

Pour l’examen :

  • Un stylo ou deux
  • Au programme : tout (sauf ns2 & quagga)
  • Contenue
    • Cours : facile
    • Exercice : type TD
    • Exercice : plus difficile

Routeurs + Généralités sur les routeurs + Opération de “lookup” + Architecture

  • port d’entrée
  • matrice de commutation
  • processeur de routage
  • port de sortie

+ File — Objectifs + Comprendre le mécanisme de commutation dans un routeur + Commutation : le transfert et l’aiguillage des datagrammes d’une interface d’entrées vers l’interface de sortie appropriée   Plusieurs types :

  • Routeur d’accès
  • Routeur de coeur
  • Commutateurs ATM

Service d’un routeur à un paquet

  • Réception du paquet sur une interface d’entrée
  • Identification du port de sortie à partir de l’adresse de destination du paquet(“Lookup”) => avec routeur IP seulement
  • Manipulation de l’en-tête du paquet : décrément du TTL, mise à jour du checksum de l’en-tête => avec routeur IP seulement
  • Commutation du paquet vers le port de sortie.
  • Ordonnancement et mise en attente du paquet dans un tampon.
  • Transmission du paquet sur une interface de sortie.

Performances d’un réseau

  • Deux facteurs essentiels
    1. Puissance de traitement
    2. Vitesse du lien

Défi permanent pour les routeurs + Les rendre toujours plus rapide pour éviter qu’ils ne deviennent les goulots d’étranglement   Métriques de performances

  1. Temps de “lookup”
  2. Espace de stockage
  3. Temps d’une mise à jour
  4. Temps de pré-traitement

Taille des paquets

  • Les paquets ne sont pas de taille égale : difficulté supplémentaire pour automatiser
  • Distributions de taille des paquets sur un réseau dorsal (backbone)

Opération de “lookup”

  • Lookup
  • Best Matching Prefix

Advertisements

Évaluation des performances – IFI

Vrac : fichier non trié, constitué au fur et à mesure de l’écriture des articles. Types de générateurs

  • Générateur uniforme : produire une suite de nombres aléatoires uniformément distribuée dans l’intervalle [0,1]
  • Générateur avec une loi de distribution donnée : transformer la suite dans la distribution nécessaire

Types de générateurs pour des lois non-uniformes

  • Générateur par inversion simple
  • Générateur par inversion composée
  • Générateur par inversion tabulée (commander un espacement automatique sur une machine à écrire)
  • Générateur par rejet.

La distribution de probabilité d’une variable aléatoire X est définie par l’ensemble des couples (xi, pi) où pi = P (X = xi) La loi de distribution (la fonction de répartition) d’une variable aléatoire X est telle que : F(x) = P(X <= x) – fréquence cumulée ou fonction  de répartition (croissante) f(x) : fonction densité de probabilité (en anglais : probability density function) F(x) : probabilité que la valeur de X soit inférieure à x Valeur moyenne Variance Espérance mathématique Variance Écart-type Coefficient de variable Lois discrètes

  • Loi uniforme
  • Loi Bernoulli
  • Loi binomiale
  • Loi de Poisson
  • Loi hypergéométrique
  • Loi géométrique
  • Loi binomiale négative

Lois continues

  • Loi uniforme
  • Loi normale
  • Loi log-normale
  • Loi exponentielle
  • Loi gamma (Erlang, Khideux)
  • Loi Student
  • Loi Weibull

La génération des variables aléatoires avec une distribution uniforme dans l’intervalle [0,1]

  • Mécanismes physiques
  • Méthode carré au milieu
  • Méthode à congruence linéaire (Congruence : Qualité d’une articulation ou d’une anastomose dont les deux parties s’adaptent parfaitement)
  • Tests des générateurs des nombres aléatoires.

Propriétés des nombres aléatoires

Exigence : Les nombres aléatoires doivent être uniformément distribués et indépendants.

  • Uniformité : Si nous divisons (0.1) en intervalles égaux de n, alors nous nous attendrons à ce que le nombre d’observation dans chaque sous-intervalle soit N/n où N est tout le nombre d’observations.
  • Indépendance : La probabilité d’observer une valeur dans n’importe quel sous-intervalle de dépend pas des valeurs précédentes.

Génération des variables aléatoires avec distribution uniforme :

  • Mécanismes physiques
  • La congruence linéaire : On se donne trois paramètres (a, m, c) et une valeur initiale X0.
    • L’algorithme est le suivant, pour k-ième tirage : Xk = (a*Xk-1 +c) modulo m, Uk = Xk/m
    • Le résultat est une suite (Ui) comprise entre 0 et 1
    • La qualité est en forte dépendance de a, m, c et X0.
    • Les caractéristiques importantes concernent : la période, l’uniformité, l’indépendance entre tirages successifs (l’absence de la corrélation avec Xn-1, Xn-2, …)
    • Remarque :  La période maximale de la série pseudo-aléatoire ne peut pas dépasser m
    • Générateurs à congruence linéaire (GCL)
    • Générateurs à congruence linéaire multiplicative (GCLM)

La génération des variables aléatoires avec une distribution quelconque.

  • La méthode de la fonction inverse (par exemple : la fonction exponentielle, une loi continue empirique, une loi discrète empirique, La loi uniforme, La loi de Weibull)
  • La méthode par rejet / acceptation
    • Méthode indirecte, itérative
    • Une distribution Gamma
    • La loi normale
  • La méthode de composition
    • La fonction de distribution triangulaire

Estimation des lois de distribution

  • Nous connaissons la distribution (échantillons, données etc.) et voulons déterminer la loi et ses paramètres
  • Hypothèse et estimation des distributions :
    • Hypothèse de loi (famille de loi) :
      • Statistiques sur les points (calcul du coefficient de variation)
      • Histogrammes – Graphique de la densité de probabilité
      • Test sur les hypothèses (visuel, Khi deux, Kolmogorov-Smirnov)
    • Estimation des paramètres : basé sur l’estimation des moyennes et variances


Conception et architectures des réseaux – Examen

  1. Donnez la différence entre les protocoles RIP et OSPF
  2. Expliquez brièvement comment gère-t-on la politique de routage sur Internet à l’aide du protocole BGP (juste l’idée)
  3. Expliquez qu’est-ce que se passe si le serveur de nom de votre domaine sur Internet tombe en panne (analysez le cas à court et à long terme)
  4. Donnez la commande Unix qui permet de trouver le serveur de courrier du domaine ifi.edu.vn (juste la commande)
  5. Donnez l’algorithme de contrôle de congestion sur Internet (juste le dessin et l’algorithme)
  6. Quel est le rôle du champ TTL dans l’entête d’un datagramme et comment est-il modifié pendant la transmission du paquet à travers le réseau ? En quoi consiste l’importance de ce champ ?
    • Permet de limiter la durée de vie en secondes ou le nombre maximal de sauts d’un datagramme IP sur le réseau. Importance : élimine les paquets dont la présence sur le réseau est due au fautes de routage
  7. Donnez l’algorithme appliqué sur un routeur IP pour le routage d’un paquet à partir de son arrivée sur le routeur jusqu’à son envoi sur le lien de sortie (juste l’algorithme pas à pas sans explications). Comment le routeur identifie-t-il le réseau de destination du paquet routé
    • À la réception d’un paquet IP :
      • Appliquer le masque pour trouver le réseau de destination
      • Si l’adresse du réseau de destination correspond à l’adresse réseau du nœud-émetteur
        • Envoyer le paquet au nœud destinataire (trouver son adresse MAC à l’aide de ARP et envoyer les données dans une trame)
      • Sinon : parcourir la table de routage ligne par ligne (appliquer le masque et vérifier si le réseau de destination correspond au réseau de destination dans la table de routage ?)
        • Si oui, envoyer le paquet au routeur correspondant
        • Si non, envoyer le paquet au routeur par défaut
    • Le routeur identifie le réseau de destination en appliquant le masque à l’adresse de destination du paquet
  8. Vous avez un réseau CSMA/CD à 100 Mbit/s avec un switch et vous utilisez des trames de taille entre 80 et 1600 octets (entêtes inclus) pour communiquer. Quelle est la distance maximale L entre les stations les plus éloignées de ce réseau tenant compte que la vitesse de propagation du signal dans le fil de cuivre est de 250000 km/s et que le switch introduit un délai de 2 microsecondes dans un seul sens ?
  9. Une vulnérabilité importante dans le serveur DNS ISC BIND, découverte au débit de 2008 par Dan Kaminsky, expert en sécurité au sein de la société IOActive, a été annoncée récemment ainsi que les moyens de correction disponibles pour les serveurs. Cette vulnérabilité permettrait à des personnes malveillantes de corrompre, sous certaines conditions, le cache du serveur de nom.
    • Expliquer brièvement quel est le danger, selon vous, de cette faille de sécurité et comment pourrait-elle être exploitée par les attaquants
    • Comment serait-il possible de palier ce genre de problème
  10. Soit votre poste à l’adresse 172.32.105.145 et le masque 255.255.224.0. Donnez l’adresse de votre réseau, le nombre d’adresses disponibles pour les postes clients et les serveurs et l’adresse de diffusion sur ce réseau
  11. Soit un canal duplex de 64 Kbps avec un délai de propagation de 25 millisecondes. Deux applications, situées respectivement dans les nœuds A et B, utilisent ce canal pour une échange de données : A envoie les données sous forme de trames (chacune contient une entête E de 6 octets, le champ de données D et le CRC sur 4 octets), B confirme la bonne réception avec des acquittements (entête sur 6 octets, champ de données sur 5 octets et CRC sur 4 octets)
    • Pour quelle taille du champ de données D de la trame un protocole avec fenêtrage (par exemple : “Go Back N”) avec une fenêtre égale à 4 donne-t-il une efficacité d’au moins 80% si nous considérons qu’il n’y a jamais d’erreur de transmission ?
    • Calculez le débit effectif Deff observé par les applications qui communiquent ?
    • Si on suppose que le champ de données D à la valeur que vous venez de calculer dans le point a), trouvez la valeur de la fenêtre minimale Wmin qui permet d’atteindre l’efficacité maximale de cet échange
  12. On considère une connexion TCP entre une source et une destination qui débute sur un réseau Ethernet, continue par exemple sur un réseau haut débit optique et se termine sur un réseau local distant. On considère la situation où le réseau local distant est un réseau sans fil. La seul caractéristique d’un réseau sans fil qui nous intéresse ici est la suivante : chaque paquet émis sur le réseau sans fil peut être perdu avec une probabilité p, et les  pertes ont lieu indépendamment de l’état plus ou moins congestionné des réseaux Ethernet, optique et sans fil. En pratique, ces pertes sont dues au fait que les réseaux sans fil utilisent des liaisons radio qui ne sont pas toujours fiables (à cause d’interférences électromagnétiques, de la pluie, de murs d’immeubles ou de bureaux). Il arrive donc que certains paquets arrivant du réseau optique soient perdus lors de la transmission radio
    • Quel est l’impact des pertes sur le lien sans fil sur les performances (en particulier le débit) de bout en bout de la connexion TCP?
    • Si cet impact est positif, comment serait-il possible de l’augmenter ? S’il est négatif, comment serait-il possible de l’éliminer ? Pensez à évaluer le cout et la facilité d’implémentation des solutions que vous proposez (ces solutions peuvent nécessiter de modifier TCP)
  13. On désire transporter de la musique de haute fidélité (HIFI) mono (donc un seul canal) sur une voie de transmission. La largeur de bande de la musique est supposée bornée supérieurement à 22 kHz
    • En appliquant le théorème de l’échantillonnage, donnez la fréquence de numérisation du son ?
    • Quoi doit être le débit de la ligne utilisée si le signal est codé sur 16 bits?
  14. Si le rapport des puissances signal/bruit d’un canal de communication est de 30 bB et si la puissance du bruit Pb est de 0,2 milliwatt, quelle est la puissance du signal Ps (0,5 points) ? Donnez la valeur approximative (sans faire des calculs) de la vitesse de transmission V de ce canal de communication si sa bande passante est de 100 kHz.
  15. 1 octet = 1 byte
  16. La détection des erreurs se fait avec un CRC utilisant le polynôme générateur G(x) = x^5 + x + 1. Le récepteur reçoit les séquences binaires suivantes a)0100010001011, b) 1010101101100. Donnez le reste R calculé à la réception. Les suites reçues sont -elles correctes ? Donnez vos calculs dans la feuille d’examen et mettez les résultats dans l’espace réservé.
  17. Soit un canal de 4 Kbps et un délai de propagation de 25ms. Sachant que les entêtes des trames sont de 6 octets et que les acquittements ont une longueur de 8 octets, pour quelle taille de trame L le protocole “Envoyer et attendre” donne-t-il une efficacité d’au moins 80% si nous considérons qu’il n’y a jamais d’erreur de transmission.
  18. Supposez que vous construisiez un réseau CSMA/CD fonctionnant à 2 Mbit/s sur deux segments de câble de 1000m de long avec un répéteur. La vitesse de propagation sur ce câble est de 200000 km/s. Calculer la taille minimale des trames Ltr sur ce réseau si le répéteur introduit un délai de 10 ms
  19. Considérons un transfert d’un fichier de F bits entre l’hôte A et l’hôte B. Il y a 3 liens interconnectés par des commutateurs entre A et B. Le temps de propagation sur les liens et de traitement dans les commutateurs est négligeable.
    • Un réseau à commutation de circuit est utilisé. Un circuit de capacité R bit/s est établi entre A et B. Le délai d’établissement du circuit est de E secondes. L’hôte A transmet le fichier en un seul bloc. Donner l’expression de la latence L (la durée à partir du débit de l’établissement de la connexion jusqu’au dernier bit reçu par le récepteur) pour le transfert de ce fichier.
    • Un réseau à commutation de paquet est retenu. L’hôte A segmente le fichier en un nombre entier de segments de S bits chacun et ajoute h bits d’entête pour chaque segment. Chaque lien a une capacité de R bits/s. Il n’y a pas de congestion (le délai d’attente est nul). Tous les paquets suivent le même chemin. Donner l’expression de la latence L pour le transfert de ce fichier.
  20. Vous venez d’installer Linux sur votre station de travail et l’administrateur réseau vous propose de le configurer avec l’adresse IP statique 192.168.100.145, le masque 255.255.255.192, le routeur par défaut est 192.168.100.1. Avec la commande host vous avez réussi a trouver le serveur de nom de votre domaine: ns1.votre.domaine.ifi et son adresse IP: 10.0.0.254. Donnez vos actions pour configurer votre poste: juste les commandes Linux et les modifications à faire dans les fichiers (si nécessaire), pas des détails (1 point). Donnez l’adresse de diffusion sur ce réseau.
  21. Dans le cadre du protocole TCP est-il possible que le récepteur signale à l’émetteur la perte d’un segment particulier pour demander uniquement sa retransmission ? Si oui, quelle est la procédure ? Si non, comment agit le récepteur en cas de perte ?
  22. Un lien de communication de 256 kbps est utilisé simultanément par deux connections TCP (téléchargements des pages par les navigateurs web,) et par une conversation téléphonique (téléphonie IP sous UDP) constituée de deux flux (un flux dans chaque sens) chacun de 32 kbps. On suppose que les clients web sont en train de télécharger des objets de taille importante. Quel est le débit moyen observé par chaque navigateur web et par l’application de téléphonie IP dans chaque sens? Donnez une explication argumentée
  23. Si le rapport des puissances signal/bruit d’un canal de communication est de 30 dB et si la puissance du bruit Pb est de 0,2 milliwatt, quelle est la puissance du signal Ps (0,5 points)? Donnez la valeur approximative (sans faire des calculs) de la vitesse de transmission V de ce canal de communication si sa bande passante est de 100 kHz

Conception et architecture des réseaux – La couche réseau : principes généraux

Plan

  • Fonctionnalités de la couche réseau
    • Transporter des paquets de l’émetteur vers le récepteur
    • Les protocoles de couche réseau s’exécutent dans chaque hôte et routeur
    • Trois fonctions principales :
      • Choix du chemin : route suivie par les paquets de la source à la destination. Algorithmes de routage
      • Commutation : transporter les paquets du port d’entrée vers le bon port de sortie.
      • Mise en place de l’appel : dans les réseaux à commutation de circuits, la mise en place du circuit est effectuée par la couche réseau
    • Cette couche est chargée de transmettre les données de la couche supérieure (Transport) en utilisant un système de communication (un réseau) composé de systèmes intermédiaires (généralement homogènes) interconnectées par des liaisons de données
    • Trois grands types de service caractérisent la couche réseau :
      • L’adressage
      • Le routage
      • Le contrôle de la congestion
  • Techniques de commutation
    • Les techniques des réseaux longue distance :
      • Elles sont constituées d’une collection de nœuds interconnectés
      • Les données sont transmises de la source à la destination en étant routés d’un nœud à l’autre
    • Propriétés :
      • La connexion entre deux nœuds est point à point
      • L’ensemble des nœuds forment un graphe connexe (il existe au moins un chemin entre deux nœuds quelconques du réseau)
    • Les réseaux utilisent 3 techniques de commutation
      • Commutation de circuits
        • canaux dédiés, délai constant, bloquant, flot continu, point-à-point
        • Établissement de Circuit : connexion des nœuds pour former un circuit pour la durée de la commutation
        • Transmission de données
        • raisonnable pour la transmission de la parole car offrant un débit régulier
        • inadéquat pour le transfert de données qui a un débit irrégulier : de temps en temps il y a beaucoup de données à transmettre, mais il y a aussi de grandes pages de vide …
        • les 2 stations  doivent être disponibles en même temps
        • les ressources du réseau doivent être disponibles et sont alors réservés exclusivement à cette connexion (pendant la durée de la communication)
      • Commutation de messages
        • canaux partagés, délai variable, non bloquant, store-and-forward point-à-point et mutilpoint, inclut : datagrammes et circuits virtuel
        • les stations source et destination ne doivent pas être disponibles en même temps
        • possibilité d’envoyer un message  à plusieurs destinataires
        • il n’y a pas de possibilité de refus de connexion (comme dans le cas de la commutation de circuit)
        • inadapté pour le trafic interactif et temps réel car le retard peut être parfois long, avec une grande variance
        • inadapté pour la parole
      • Commutation de paquets
        • comme commutation de messages
        • Données transmises sous forme de petits paquets (exemple : 1000 octets)
          • fragmentation des longues messages en plusieurs paquets
          • le paquet contient une portion des données plus de l’info de contrôle (ex.: adresse)
        • Les paquets sont reçus, brièvement mémorisés et transmis au nœud suivant : Technique Store and Forward
        • combinent les avantages de la commutation de circuits et de la commutation de messages en minimisant les inconvénients
        • fonctionnement comme la commutation de messages, mais l’unité de données est alors le paquet dont la taille est limitée (entre 1000 et quelques millions de bits)
    • Exemples :
      • Réseau téléphonique public (PSTN)
      • X.25
      • ATM
      • Arpanet
    • La topologie de connexion
      • Chaque routeur est muni d’une table de routage. Cette table reflète l’état (perçu par le routeur) de la topologie du réseau à moment donné
      • Le procédé de transmission par datagrammes
        • les paquets sont transmis indépendamment les uns des autres au sein du réseau
        • leur routage (commutation) est effectué grâce à l’adresse de destination figurant dans l’entête du paquet
        • chaque paquet est traité indépendamment
        • les paquets d’un même message peuvent arriver en désordre
        • les paquets peuvent se perdre
        • table de routage
      • Circuits virtuels : Le chemin de la source à la destination se comporte comme un circuit téléphonique
        • Avant d’émettre des données, le circuit doit être mis en place
        • Chaque paquet contient un identificateur de Circuit Virtuel (CV) et non pas l’adresse de la destination
        • Une table de routage est nécessaire lors de l’établissement du circuit virtuel
        • les paquets sont transmis sur ce circuit virtuel dans l’ordre
        • généralement, un contrôle de flux et d’erreur y est associé
        • acheminement par Circuit Virtuel :chaque tronçon de CV est identifié par un numéro de voie logique (NVL)
        • table de commutation
      • Le modèle Internet : réseau en mode Datagramme
        • pas de mise en place de circuit
  • Adressage
    • Deux types de structuration des adresses existent
      • l’adressage global (linéaire, plat) : IEEE 802. Attribution des adresses (par les constructeurs des cartes)
      • l’adressage hiérarchique (structuré) : X121. Adresse 15 chiffres, chacun occupant un demi-octet / L’adressage de l’Internet
    • La gestion du plan d’adressage
      • administration de la structuration variable des adresses
      • chaque domaine possède une autorité.
      • généralement le décodage est basé sur les préfixes qui identifient de manière unique.
      • chaque autorité délègue la gestion des suffixes aux autorités de ses sous-domaines.
  • Routage
    • Cout du lien : délai, prix du lien ou niveau de congestion
    • L’algorithme de routage : chemin le plus court, inondation, routage par vecteur de distance, etc.
    • Classification des algorithmes de routage
      • Information globale ou locale
        • Globale : chaque routeur connait toutes les informations de topologie, de cout des liens, etc. (Ex. Link State)
        • Locale : le routeur ne connait que des liens vers les voisins. Calcul itératif et échange régulier d’infos avec les voisins (Ex. Distance vector)
      • Statique ou dynamique
        • Statique : les routes ne changent pas dans le temps
        • Dynamique : les routes changent régulièrement
    • Routage fixe
    • Routage par inondation (flooding)
      • N’a pas besoin d’information du réseau
      • Paquets envoyées à tous les voisins
      • chaque paquets uniquement numéroté => les duplicateurs peuvent être éliminés
    • Éviter une inondation infinie
    • Métrique de routage
    • Routage du plus court chemin : algorithme de Dijkstra
    • Routage basé sur le flux
      • algorithme qui utilise à la fois la topologie et la charge des lignes de communications
      • routage qui peut être utilisé à condition que le trafic moyen de chaque ligne soit connu à l’avance et qu’il soit relativement stable
      • on cherche à optimiser un routage existant
      • Exemple : (Page 61)
        • la taille moyenne d’un paquet l = 800 bits = 1/u
      • Routage à vecteurs de distance : algorithme de Bellman-Ford (ou algorithme de Ford-Fulkerson
        • chaque routeur dispose d’une table de routage précisant pour chaque destination la meilleure distance connue et par quelle ligne l’atteindre
        • les informations (vecteurs) de distance sont échangés régulièrement entre routeurs voisins
        • un élément du vecteur est associé à une destination possible (donc un routeur)
        • vecteur de distance (VD) = table de routage sans les indications de lignes à emprunter
        • table de distance  et table de routage
    • Bellman-Ford centralisé
    • Routage par l’état de lien (EL)
      • Utilisation :

        • Dans les réseaux modernes
        • OSPF (Open Shortest Path First) utilisé dans Internet
        • IS-IS (Intermediate System – Intermediate System) utilisé sur plusieurs sous-réseaux dorsaux d’Internet
    • Routage par diffusion (broadcast)
    • Routage hiérarchique
      • systèmes autonomes (AS)
        • intra-AS
        • inter-AS
  • Conclusions
Avant d’émettre des données, le circuit doit être mis en place

Conception et architectures des réseaux – Exercice 7

Exercice 7 : Routage par vecteurs de distance

On se propose d’étudier l’algorithme de routage par vecteurs de distance. Pour simplifier la structure, les adresses et autres informations données au sein des tableaux suivants ont une valeur symbolique (la distance 0 signifie une connexion directe, 16 – correspond à l’infini – nœud inaccessible). La station A (dont la table de routage est donnée ci-dessous) reçoit des messages de routage (dont les continus sont indiqués ci-dessous) en provenance des stations B et C. La distance entre la station A et B est 1, entre A et C est 2.

Table de routage de A

Destinataire      Distance      Prochain routeur

2                           0                     local

6                           3                     D

8                           7                     E

11                          2                     B

12                         4                     B

15                         0                     local

17                         5                     C

13                         2                     C

Table de routage provenant de B

Destinataire      Distance

1                           1

8                           5

21                         16

17                          4

12                          2

6                            1

Table de routage provenant de C

Destinataire      Distance

20                          0

13                           16

18                          8

14                          2

12                          2

21                           16

17                          9

6                            13

Quel est le continu de la table de routage de la station A après la réception des messages de routage provenant de ses voisines B et C ?

Après avoir fait des changements dans sa table de routage la station A doit diffuser les informations vers ses voisins. Donner le message que les stations B et C vont recevoir.

Conception et architectures des réseaux – Exercice 6

Exercice 6 : Transmission de fichier par TCP avec fenêtre dynamiques

Vous transférez un fichier de taille O = 100 Koctets en utilisant une connection TCP avec RTT = 1 seconde et S = 536 octets. Comparez le temps de latence minimum avec le temps de latence observé en présence d’une phase de départ lent, pour les débits suivants :

R = 28 kbit/s, 100 kbit/s, 1 Mbit/s, 10 Mbit/s et 100 Mbit/s

Donnez vos conclusions

Solutions

O = 100 Ko = 100 * 1024 * 8 = 819200 bits

RTT = 1s

S = 536 octets = 4288 bits

R = 28 kbit/s = 28672 bits/s

On a:

  • Q est le nombre de fois où le serveur se mettre en attente : Q = log2 (1 + RTT/(S/R)) + 1 = 3
  • P est le nombre de fois où le serveur se mettre réellement en attente : P = min(Q, K-1) = 3
  • K est le nombre de fenêtres englobant l’objet tout entier : K = log2(1 + S/R) = 8
  • Temps de latence : 2RTT + O/R + P*(RTT + S/R) – (2^P – 1)*S/R
  • Temps de latence minimal : 2RTT + O/R = 2*1 + 819200/28672 = 30,57s
  • Temps de latence : 32,97s

—————————————————

R = 100 kbits/s

Q = 5, K = 8, P = 5

Temps de latence minimal : 2RTT + O/R = 2*1 + 819200/102400 = 10s

Temps de latence : 13,91s

…..

Comparaison les deux cas de deux exercices (5 et 6) : Comme les valeurs des paramètres dans les deux exercices sont différentes, on ne peut pas faire la comparaison entre eux.

Si on regard les deux cas dans chaque exercice, on peut voir que le départ lent affecte fortement le temps de latence quand le débit de liaison est basse, sinon, cela ne fait pas grande chose sur le temps de latence

Conception et architectures des réseaux – Exercice 5

Exercice 5 : Transmission de fichier par TCP avec fenêtres statiques

Imaginez la transmission d’un fichier O de 100 Koctets d’un serveur vers un client.

Soit S = 536 octets et RTT = 100 ms. Admetton que le protocole de transport utilise des fenêtres statiques, de taille W.

Pour un débit R de 28 kbit/s, déterminez le temps de latence minimum possible. Déterminez par ailleurs la taille de la fenêtre minimal compatible avec ce temps de latence

Même question pour les débits suivants : R = 100 kbit/s; 1 Mbit/s; 10 Mbit/s; 100 Mbit/s

Solution

O = 100 Ko = 100 * 1024 * 8 = 819 200(bits)

S (MSS) = 536 (o) = 536 * 8 = 4288 (bits)

RTT = 100 ms = 0,1s

On a temps de latence T = 2RTT + O/R + (K-1)[S/R + RTT – W*S/R]+ , telque [x]+ = max{x,0}

Alors la valeur minimum possible de T = 2RTT + O/R

Cela est correspondante au cas où W*S/R > RTT + S/R

Donc, la valeur minimal de la taille de fenêtre W = (RTT + S/R)*R/S = RTT*R/S + 1

On considère des cas suivants avec les valeurs différentes de R pour calculer la valeur minimal de T et W

+ R = 28 kb/s = 28 * 1000 = 28000(b/s)

=> T = 2*0,1 + 819200/28000 = 29,46(s)

=> W = 0,1*28000/4288 + 1 = 2 (s)

=> Le temps de latence est égal : 2RTT + O/R = 2 * 0.1 + 819200/28000 = 0.2 + 29.3 = 29.5 s

+ R = 100 kb = 100 * 1000 = 100 000 (b)

1

Conception et architectures des réseaux – Exercice 4

Exercice 4 : Échange TCP

L’échange TCP de la figure ci-dessous correspond au transfert d’une page WEB entre un navigateur WEB et un serveur WEB. On fait l’hypothèse que la requête à la page WEB fait 100 octets et que la page WEB retournée fait 1000 octets. Il n’y a pas d’erreur de transmission.

Pour chaque segment de données, différentes informations apparaissent. D’une part la présence d’un ou plusieurs des différents indicateurs comme SYN, FIN, ACK. Par ailleurs sur la première ligne deux chiffres sont portés. Le premier chiffre correspond au numéro de séquence du premier octet du segment, le deuxième chiffre correspond au numéro du premier octet du prochain segment à envoyer. Le chiffre entre parenthèses correspond au nombre total d’octets transmis dans le segment. Si le segment est porteur d’un acquittement positif, l’indicateur ACK est mentionné et a coté de lui doit figurer la valeur du champ acquittement du segment TCP

Complétez les numéros de séquence et les numéros d’acquittement qui manquent sur la figure (qui apparaissent sous forme de point d’interrogation). Indiquez à quoi correspondent les différents segments numérotés de 1 à 8. Inspirez-vous des résultats du premier TP sur l’étude de TCP (analysez les captures des trames pour avoir comment évoluent les numéros de séquence des acquittement, les fanions, etc.)

Solution

Segment 1 : SYN 143256 : 143256 (0)

Segment 2 : SYN 250712 : 250712  (0) , ACK  143256+1 = 143257

Segment 3 : SYN 143257 : 143357  (100) , ACK  250713

Segment 4 : SYN 250713 : 251713  (100) , ACK  143358

Segment 5 : FIN 143358: 143358 (0), ACK 251714

Segment 6 : ACK 143359

Segment 7 : FIN 251714: 251714 (0), ACK 143359

Segment 8 : 251715

Conception et architectures des réseaux – Exercice 3

Exercice 3 : Transfert de fichier par TCP

Vous voulez transférer un fichier très volumineux (d’une taille de L octets) de A vers B sur un réseau Ethernet, avec un MSS de 1460 octets

a. Quelle est la valeur maximale de L compatible avec les numéros de séquence de TCP ? Souvenez-vous que le champ de numéros de séquence TCP dispose de 4 octets

b. Partant de la valeur L obtenue ci-dessus, calculez le temps nécessaire à la transmission intégrale du fichier. Nous admettrons ici qu’une longueur d’en-tête totale (en-têtes de transport, réseau et liaison de données confondus) de 66 octets est ajoutée aux différents segments avant que la paquet final ne soit constitué et envoyé sur une liaison à 10 Mbit/s. Ignorez les contrôles de flux et de congestion. A est ici capable d’envoyer ses segments les uns après les autres en continu.

c. Qu’est-ce que change si vous utilisez un réseau moins fiable (par exemple : wifi) avec un MSS de 536 octets ?

Solution

a. Le champ de numéros de séquence TCP dispose de 4 octets = 32 bits

=> Le nombre maximal de séquence dans une connexion TCP est 2^32 octets

b. On a le longueur d’en-tête octets totale est 66 octets

Le nombre de paquet est égal à 2^32. On a ajouté 66 octets à chaque segment avant d’envoyer, donc la taille de donnée envoyée sur le réseaux est : 2^32 + (2^32 / MSS) * 66 = 2^32 + (2^32 / 1460) * 66 octets

Ici, (2^32 / MSS) est le nombre de segment avec la valeur maximale de L

On a 1 Mbit = (1024 * 1024) / 8 bytes

=> Les bytes transfert dans 1 seconde = 10 * (1024 * 1024) / 8

=> Le temps nécessaire à la transmission intégrale du fichier = ( 2^32 + (2^32 / 1460) * 66 ) / ( 10 * (1024 * 1024) / 8 )

c. Si MSS = 536

La taille de donnée envoyée sur les réseaux = 2^32 + (2^32 / MSS) * 66 = 2^32 + (2^32 / 536) * 66

=> Le temps nécessaire à la transmission intégrale du fichier = ( 2^32 + (2^32 / 536) * 66 ) / ( 10 * (1024 * 1024) / 8 )

Dans ce cas, le temps nécessaire à la transmission intégrale du fichier a augmenté.