Robust Header Compression

download Robust Header Compression

If you can't read please download the document

  • date post

    11-Jan-2016
  • Category

    Documents

  • view

    33
  • download

    0

Embed Size (px)

description

Robust Header Compression. Un projet à l’. Microelectronics. Responsable de projet: Vincent Roca. Jack Ballesteros. Rémi Blanc. Consultante: Karine Excoffier (Sun Microsystems). RoHC. Compression d’en-tête robuste. En collaboration avec. Plan. Quels sont les acteurs du projet? - PowerPoint PPT Presentation

Transcript of Robust Header Compression

  • Robust Header CompressionUn projet lJack BallesterosRmi BlancEn collaboration avecCompression den-tte robusteResponsable de projet: Vincent RocaConsultante:Karine Excoffier(Sun Microsystems)

    *

    PlanQuels sont les acteurs du projet?Pourquoi en a-t-on besoin?Quel est le but du projet?Introduction la norme RoHCCahier des charges Introduction Gestion de projet Aspects techniques Bilan

    *

    Quels sont les acteurs du projet?Karine ExcoffierSun Microsystems(consultante)

    *

    Pourquoi en a-t-on besoin? Les connexions sans fils sont lentes. Les paquets IP sont trop gros. Il y a un besoin de compresser les paquets.IP

    *

    Quel est le but du projet?Compresser les paquets IPStructure dun paquet IP:En-tteDonnesCompresser len-tteEn-ttes trop compresss-> Pertes de paquetsUne compression robuste: compresser les en-ttes sans augmenter les pertesRobust Header Compression

    *

    Quelques techniques de compression den-tteVan Jacobson - RFC 1144 (PPP): IPv4/TCP

    IPHC RFC 2507: dvelopp au dpart pour IPv6, et adapt par la suite dautres protocoles.

    CRTP RFC 2508: IP/UDP(/RTP)

    RoHC RFC 3095:IP/UDP(/RTP)

    *

    Principes de fonctionnement de RoHCPhysicalData LinkRoHCNetworkTransportSessionPresentationApplicationPhysicalData LinkRoHCNetworkTransportSessionPresentationApplication IP HeaderDataEmetteurRecepteur

    *

    Architecture de RoHCCompressorRoHC frameworkCompression front endLinkPacket streamDecompressed flowsDecompression front endRoHC frameworkdecompressorCompressed headersPhysicalData LinkRoHCNetworkTransportSessionPresentationApplicationOSI layers

    *

    Classification des champs des en-ttes: IPv4

    *

    Classification des champs des en-ttes: RTP/UDP/IPv6

    *

    RoHC ProfilesProfil 0: pas de compressionProfil 1: RTP/UDP/IPProfil 2: UDP/IPProfil 3: ESP/IPProfil 4: IP

    Pas de profil de compression TCP/IP, cest en cours de dfinition au niveau de lIETF (Draft)

    *

    Cahier des chargesTravaux raliss lors du prcdent projet: Implmentation du framework RoHC Profil 0 (non compress) Profil 2 (UDP/IP) sans le mode "Reliable"

    Travaux raliser lors de ce projet: Profil 2: rajouter le mode "Reliable" Profil 1 (RTP/UDP/IP) Mise en oeuvre de RoHC sur des rseaux sans-fil (802.11b) Support d'IPv6 dans RoHCTests et valuations des performances

    *

    Gestion de projet Introduction Gestion de projet Aspects techniques Bilan Gestion de la qualit critres qualit code outils Planning et gestion des risques

    *

    Critres qualit Fiabilit: Pourquoi: le code est intgr dans le noyau Linux Comment latteindre: Tests nombreux et complets Bonne modularit Comment lvaluer: 100% des tests doivent passer Maintenabilit: Pourquoi: le code va tre rutilis par STM Comment latteindre: Utilisation des rgles de codage de STM Utilisation de commentaires Documentation complte et dtaille Comment lvaluer: Toutes les fonctions et structures ont un commentaire Doxygen valuation des performances requise

    *

    Code Stock sur un rpertoire partag Sauvegard automatiquement chaque nuit Utilisation de CVS: Concurrent Versions System Rgles de codage donnes par STM Les commentaires sont compatibles avec Les bugs sont grs avec loutil Mantis

    *

    Outils Gnration de paquets: SendIP, Nemesis Capture de paquets: Ethereal, Tcpdump, Analyser Gestion des bugs: Mantis Dbug et mise au point: KGDB, par liaison srie Documentation: Doxygen

    *

    AnalyserDonnes brutes du paquet

    *

    Gestion de projet Introduction Gestion de projet Aspects techniques Bilan Gestion de la qualit Planning et gestion des risques cycle de vie logiciel jalons et planning gestion des risques

    *

    Modle en V du cycle de vie LogicielAnalyse des besoins Spcification Conception Codage Tests

    Cahier des charges

    Spcification Systmes

    Spcification performances

    Corrections

    Conceptiondtaille

    Programmecodage

    Testunitaire

    Test dintgration

    Test de performances

    Test dintgration systme

    Conception prliminaire

    Evaluation & test oprationnel

    CERTIFICATION

    VALIDATION

    VALIDATION

    VERIFICATION

    Code

    Mise au point

    Spcification

    conception

    Validation

    Implmentation

    BESOIN

    PRODUIT

    Spcification

    Conception - developpement

    Test & valuation

    Fonctionnementmaintenance

    Conceptiondtaille

    Conception dtaille

    Testunitaire

    Test unitaire

    Programmecodage

    Implmentation

    Composantlogiciel

    *

    Jalons & Planning du projetEtude EPICPlan dAssurance Qualit LogicielCahier des chargesPlan Developpement Logiciel Spcifications ExternesPlan de TestsTest Spcification Systme Spcifications Tests PerformancesManuel UtilisateurSpcification Test systme Existant + Tests

    Architecture LogicielleSpecification Tests d Integration Conception Detaill

    Profile 2 (UDP/IP)Profile 1 (RTP/UDP/IP)Support IPv6Mise en oeuvre 802.11bTests UnitairesTests dIntgration Tests de Performance Tests Systme Tests Oprationnel

    *

    Gestion et valuation des risquesProgrammation du noyau LinuxDifficult de dbuguer le noyauManque de connaissance sur larchitecture du noyau

    Implmentation IPv6Stade exprimental sur le noyau Linux version 2.4.xRupture avec la prcdente implmentation

    Faible exprience de lquipe de projetModification des spcifications de RoHCRetard dans la fourniture de matriel (carte 802.11b)

    *

    Aspects techniques Introduction Gestion de projet Aspects techniques Bilan Architecture logicielle Mchanismes de RoHC Configuration Plateforme de test et debug Tests Performances

    *

    Architecture rseau Linux

    NetworkApplications

    BSDSockets

    INETSockets

    TCP

    UDP

    IP

    PPP, Ethernet, ...

    UserSpace

    KernelSpace

    SocketInterface

    ProtocolLayers

    NetworkDevices

    NetworkApplications

    BSDSockets

    INETSockets

    TCP

    UDP

    IP

    PPP, Ethernet, ...

    UserSpace

    KernelSpace

    SocketInterface

    ProtocolLayers

    NetworkDevices

    Hook

    RoHC Framework

    RoHC Module configuration

    *

    Architecture logicielleEncapsulation of OS dependent servicesPhysical layerManager interfaceSynchronisationMemory managingData linkIPUDPESPRTPHOOKFILTERCONVERTER

    FRAMEWORKPROFILE 3PROFILE 2CONTEXTPROFILE 1PROFILE 0MANAGER

    *

    Modes & Etats RoHCDcompresseur Compresseur

    IR(Initialisation & Refresh)

    FO(First Order)

    SO(Second Order)

    (O) approach / Ack

    (O) approach / Ack

    Ack

    Nack / Update

    Static - NAck

    Static - NAck

    (O) approach / Ack

    No Context

    Static Context

    Full Context

    No Static

    No Dynamic

    Success

    Success

    K_2 out of n_2 failures

    K_1 out of n_1 failures

    Success

    OptimisticIR-FO-SO

    UnidirectionalIR-FO-SO

    ReliableIR-FO-SO

    Feedback(O)

    Feedback(R)

    Feedback(O)

    Feedback(R)

    Feedback(U)

    Feedback(U)

    *

    Exemple: mode optimisteIRUOR-2UO-0Ack IR FO SO UnidirectionalNo contextStatic contextFull contextUnidirectionalOptimisticOptimistic

    *

    Configuration de RoHC

    *

    Plateforme de dveloppement RoHCWirelessAnalyseur de paquetsDebugger sur liaison srieRoHC PCNoyau Linux 2.4.xIPV6, 802.11b, ...debuggeur noyau (kgdb)Console Serie

    PcDeveloppementAnalyseur de paquets

    PcServeur de fichier sauvegard

    Tour

    Tour PC

    La hauteur de la zone de texte et des traits associs augmente ou diminue lorsque vous ajoutez du texte. Pour modifier la largeur du commentaire, faire glisser les poignes latrales.

    Portable

    PlanetcastRouter

    loup

    lupus

    loutre

    fouine

    Hub 100baseT

    Seriallink

    Seriallink

    Laptop

    Iseran

    INRIA

    802.11b

    RoHC network

    *

    Debug dun module du noyauRcupration des sources du moduleCompilation du moduleChargement du module en mmoire et rcupration de la table des symbolesGnration dun script pour le dbuggeurTransfert des fichiers vers la machine de debugExcution du dbuggeur et connexion avec la machine hte

    Tour

    Tour PC

    La hauteur de la zone de texte et des traits associs augmente ou diminue lorsque vous ajoutez du texte. Pour modifier la largeur du commentaire, faire glisser les poignes latrales.

    Portable

    PlanetcastRouter

    loup

    lupus

    Hub 100baseT

    Seriallink

    Laptop

    Iseran

    INRIA

    RoHC network

    *

    Tests Tests sur le systme existant A chaque tape Tests AutomatissLoupRoHCTcpDumpIseranStockage de fichiersRouteurHubLupusRoHC

    LoutreEtherealStationdurseauDmarage du testCapture TcpDumpDmarage de RoHCDmarage de RoHC Paquets non-compresss Paquets compresss Paquets dcompresss Etats du dcompresseur Etats du compresseur

    *

    PerformancesPourcentage de donnes utiles dans le paquet42%42%65%71%Gain sur la taille totale0%35%42%(45 octets de donnes utiles)Estimation pour le profil 1 (RTP/UDP/IPv6):67%44%

    *

    Introduction Gestion de projet Aspects techniques BilanBilan Qualit Cahier des charges Planning Suite

    *

    Bilan Qualit Fiabilit Maintenabilit Nombreux bugs dcels et corrigs grce aux tests automatiss Anciens bugs non prioritaires mais clairement identifis Un puissant outil pour la fiabilit lanne prochaine Nouveau code entirement comment Ancien code comment dans ses parties principales Documentation complte Traage du fonctionnement amlior

    *

    Tests de lexistant Profil 2 UDP/IP mode fiable Profil 1 RTP/UDP/IP Support de IPv6 Mise en uvre sur 802.11b Evaluation des performances Cahier des charges

    *

    Planning

    *

    SuiteCe quil reste faire: fini