HAL Id: tel-01161608
https://tel.archives-ouvertes.fr/tel-01161608
Submitted on 8 Jun 2015
HAL is a multi-disciplinary open access
archive for the deposit and dissemination of
sci-entific research documents, whether they are
pub-lished or not. The documents may come from
teaching and research institutions in France or
L’archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d’enseignement et de
recherche français ou étrangers, des laboratoires
Décomposition de multi-flots et localisation de caches
dans les réseaux
Pierre-Olivier Bauguion
To cite this version:
Pierre-Olivier Bauguion. Décomposition de multi-flots et localisation de caches dans les réseaux.
Autre [cs.OH]. Institut National des Télécommunications, 2014. Français. �NNT : 2014TELE0010�.
�tel-01161608�
É ole Do torale EDITE
THÈSE
n°2014TELE0010
préparéeàSAMOVARetàOrange Labs
présentéepar
Pierre-Olivier BAUGUION
pourobtenirlegradede
Do teur d'université
Spé ialité:Informatique
Dé omposition de multi-ots et lo alisation de
a hes dans les réseaux
Soutenuepubliquementle22septembre2014devantlejury:
D. Na e Rapporteur UniversitédeTe hnologiedeCompiègne,Fran e V. Gabrel Rapporteur UniversitéParis-Dauphine,Fran e
P. Chrétienne Examinateur UniversitéPierreetMarieCurie,Fran e M. Labbé Examinateur UniversitéLibredeBruxelles,Belgique M. DidiBiha Examinateur UniversitédeCaen-BasseNormandie,Fran e W. BenAmeur Dire teurdethèse Télé omSudParis,Fran e
I Lo alisation de a hes 10
1 Optimisation de déploiementde réseaude distributionde ontenus 11
1.1 Lesréseauxdedistributionde ontenus . . . 11
1.1.1 Coûtslinéaireset oûts xes . . . 13
1.1.2 Problèmesdelo alisationdi iles . . . 15
1.2 Le a hetransparent . . . 16
1.3 Lo alisationde a hesdeHit Ratio onstantdansdesgraphesarbores ents. . . . 20
1.4 Lo alisationdeserveursetde ontenusdansdesgraphesarbores ents . . . 26
2 Lo alisationde
k
a hes/serveurs dansunréseauquel onque,appro he parla théorie desmatroïdes 36 2.1 Modèledelo alisationde a hes/serveursetk
médian . . . 372.2 Matroïdesgraphiques . . . 38
2.3 Matroïdededegré
k
surunn÷ud. . . 392.4 Algorithmed'interse tiondedeuxmatroïdes . . . 40
2.5 Algorithmedelo alisationde
k
a hesetdéploiementdeCDN . . . 432.5.1 Propriétésparti ulières . . . 43
2.5.2 Simpli ations . . . 44
2.6 Exemple . . . 45
2.7 Casparti uliers . . . 46
3 Lo alisation de a hes hiérar hiques dans une arbores en e, à hit ratio va-riable 55 3.1 Mesuredelademandeet del'espéran e . . . 57
3.2 Modèledelo alisationde a hes . . . 58
3.3 Dénitions,notationsetpropriétés . . . 61
3.4 Programmedynamique,lo alisationde a hesauhitratiovariabledansunréseau arbores ent . . . 63
3.5 Expérimentations . . . 72
3.6 Extension1:Lo alisationdeserveursetde ontenus . . . 74
3.7 Extension2:Ca hesave ontraintes de apa ités . . . 76
3.8 Lo alisationdedeuxtypesde a hes,appli ationsnumériques. . . 79
3.8.1 S énarioet a hederéféren e . . . 79
3.8.2 Congurationsde a heet s énariosde oûtsdiérents . . . 84
dé ompositions 96
4 Les modèlesde multi-ots 97
4.1 Introdu tionetot on urrentmaximal(FCM) . . . 97
4.2 Notationsutiles . . . 99
4.3 Lesmodèlesar s-ots,appliquésauFCM . . . 100
4.4 Algorithmesd'approximationet méthodededéviation deots. . . 102
4.5 Lesmodèles heminsappliquésauFCMetgénération de olonnes . . . 104
4.6 Algorithmedu"In-Out" . . . 108
5 Un modèlearbre 111 5.1 Notations . . . 111
5.2 Preuve onstru tive. . . 113
5.3 Preuvepardualité . . . 116
5.4 Générationde olonnesappliquéeàlaformulationarbores ente . . . 118
6 Formulations génériques etappro hes de résolution 125 6.1 Formulationsstatiques . . . 125
6.2 Heuristiquede onstru tiondevariables . . . 127
7 Résultatsnumériques 134 7.1 Générationdegraphes . . . 134
7.2 Expérimentations . . . 136
8 Le problème de ot on urrent maximal, as mono-sour e 142 8.1 AlgorithmesdeFord-FulkersonetEdmonds-Karp,problèmedeotmaximum . . 142
8.2 FormulationFCMmono-sour eet prin ipedel'algorithme. . . 147
8.3 Preuved'exa titudeetdeforte polynomialité . . . 152
Brodé de lumièred'or etde reetsd'argents
Lemystérieux se ret, lese retéternel
De la nuitetdujour, de lavie etdutemps
Ave toutmonamour jelemettrais àtespieds
Maistusais je suispauvreetje n'aiquemes rêves
Alors 'est demes rêvesqu'ilfautte ontenter
Alorsmar he dou ement, artumar hessurmes rêves
Al'instardel'optimisationlathèseestpourmoiunvoyaged'apprentissagedansl'espa edes onnaissan es.C'est un hemin qui se onstruit pourson obje tif, s'appuie sur lesétapesdéjà atteintes, et se réorientepar lesobsta lesqu'il ren ontre. Si nous nous satisfaisons d'atteindre lesfrontières de et espa elorsque nous re her honsl'optimum, lathèse, elle,sedistingue par sonambitionde lesrepousser. Essayerde révélerunnouvelespa e,même innitésimal,le tout auprixd'uneortparfois onsidérable.
Or, un voyage dans l'in onnu né essite de bons guides. Je remer ie haleureusement mes en adrantsWalidBenAmeur etEri Gourdinpourm'avoirfait onan e,m'avoirpartagé l'ex- ellen e deleurs savoirset ompéten esave pédagogie, ainsi que pour leur sympathie et leur patien e;travaillerave leuren adrementétaitunprivilège.
Un voyagepossèdeune destination.Jeremer ie VirginieGabrelet Dritan Na e,d'avoir a - epté d'être les rapporteurs de mon travail de thèse, et Philippe Chrétienne,Mohammed Didi Bihaet MartineLabbéd'enêtre lesexaminateurs.
Unvoyagené essiteaidesetmoyens.Jeremer ieOrange,etplusparti ulièrementNabilpour l'a ueil ausein desonéquipeet Adam,dans sonOR/TC. Jeremer iel'équipeelle-même,que j'aiapprisà onnaîtreet appré ier.Christianmonsuper o-bureauquim'asoutenu(moietma tour)jusqu'auboutsansfaillir.Yaya,Nan' y,et Philippemes supers- opains,ave qui par-tagerunmoment onvivialo-pausalaumatinétaitunplaisirin ontournable.OlivieretMatthieu quim'onten adrédurantmonstagequipré édamathèse.Etenn lesplusoumoinsassidusde lapausede l'après-midi,Alain, Bruno,Floren eet Lu a. Je remer ieégalementmesnouveaux ollègues de MIC, parmi notamment Fabien, Jorge, Lionel, Manel, Sabine et Sonia pour leur soutienlorsdeladernièrelignedroite.
Un voyageinduitdesren ontres. J'aieu la han ede(presque) partagerlagrandepromo des thésards d'Orange, de partagerave eux des momentsforts ave eux ainsi qu'ave leurs onjoints,quisontdésormaisdesamis.Amel,Ghida,LeBlog,Jean-Bobin,MaxetRalu.J'ai lar-gementbéné ié deleursoutien.Jeremer ieaussilesautresthésardspost-do set lesstagiaires quej'aipuren ontrer.
Unvoyagerequiertdesbons ompagnons.Benoît,instigateurentredeuxpartiesdeDOTAdes JMetdes 'estquoi 'est[...℄qu'onnitparutiliserànotregranddésarroi.Jen'oublierai pasles surgesdeBauguionnerie quej'aiinigéesjusqu'auboutàCédri ,etqui lesareçues ave philosophie.Je leremer ie, d'avoirété mon ompagnond'infortune, elui quiparlevraiet quim'aapprisqu'ilyavaitgrandesagessedanslaphrasesiçanemar hepasessaieuneautre solution.Letout ave ette onvi tioninébranlabledevantlaquelle seulesadul inée, Perrine,
pas autant quesa han e légendaire.3xt, le papade la troupe, qui ne se départ jamais de sa non halan e. Hugo, leseul que j'ai réussià entraîner dans mes lubies de CCG/LCG,et qui je n'entendsplusragerdevantsonPCdepuisqu'ilaren ontréCharlotte.Lu iequidoitapprendre unjeudeplateautouslesmois,etSebquipartage ettepassion.J'espèrequ'ilnem'en veutpas tropd'avoirréé rit laguerre froide. Je remer ieAlex ave qui j'ai grandi depuisle ollège,et Dimitriquinousarejointparlasuite.Trystanmonplusvieilamid'enfan eave quijepartage une onversationininterrompue,et qui semble toujours roireenmoi. Wawa,ave quije forme une équipede ho en " oop",et qui m'apprendtoujours àrelativiser. Et tousles autres, qui sanslesnommer,je n'oubliepas.
Je remer ie mes on les, tantes, ousins, ousines et grand-parents,qui malgré le temps et l'espa e qui séparent nos ren ontres me sont hers. A Louis, qui m'a ompagne et m'enseigne toujoursd'une ertainefaçon,et àLisettequejen'aijamaiseula han e de onnaître.
Unvoyagese onstruitparunemotivation.L'unedesfor esprin ipalesquimepermet d'avan- er et de subir les intempéries, tout autant que depasser d'ex ellentsmoments, mes s÷urset leurs onjointsladélivrent.Mer iAurélie, Ben,Lu ile et Thom,la foiquevouspla ezen moi, votresoutienet votreamourme sontindispensables.Les babillageset lafrimoussedelapetite "Pika hunette" ont également su me dé ro her des rires et des sourires à des moments lés(-poo h).
Enn,toutvoyagepossèdeuneorigine.Amesparents,dontlalistedes hosespourlesquelles j'ai àlesremer ier est troplongue pourêtre ou hée sur ette page.J'espère que e qu'ilsont pure evoirdeleursenfantsest àlahauteurdeseorts etdessa ri esqu'ilsontfaits.
Ilsont undrapeaunoir
Enberne surl'Espoir
Etla mélan olie
Pourtraînerdansla vie
Des outeauxpour tran her
Lepainde l'Amitié
Etdesarmes rouillées
Pourne pasoublier
the nextten minutes.Either way, whi hever way,no harm, nofoul!
Be auseeither way,it'llbe onehellof aride.I'mready....
Lesnouveauxa teurs,lesnouveaux servi eset lesnouveaux ontenusmultimédiasqui tran-sitent sur le réseau internet génèrentun tra et des débits de plusen plusélevés. Ce i peut o asionnerune ongestion,sour edelaten eetdedépré iationdelaqualitédeservi eressentie par lesutilisateurs. Un fournisseur d'a ès àInternet dont l'obje tif est de garantir unréseau d'ex ellen e doitdon prendre desmesures pouraméliorer sans essela uiditéde sonréseau. Celapassenotammentparlamiseenpla ed'unréseaudedistributionde ontenus(déploiement dedispositifssurleréseauexistant).
Dans un premier temps ette thèse présente des appro hes de programmation dynamique de lo alisation de serveurs optimales dans des arbores en es. Nous présentons également un appro he pourrésoudre le problèmede déploiement de CDN et de
k
serveursà l'aide de l'al-gorithmeexa tetpolynomiald'interse tion dematroïdes.Nousexpli itons ensuite e qu'estun a he et quelles sont ses ara téristiques. Nousdénissons ensuite leshypothèses ee tuéeset lamodélisation asso iée pourle déploiement de a hes transparentsdans une arbores en e,et lelienave lesalgorithmesexistantsprésentéspré édemment.Nousprésentonsalorsunmodèle omplet pourunprogramme linéaireen nombresentiers (PLNE) et un nouveauparadigme de programmationdynamiquepourrésoudre emêmeproblème.Nousmontronsalorsenquoi ette appro hesegénéraliseàdesproblèmes onnexesdelo alisationdanslesarbores en es,ainsique sesperforman es.D'unpointdevueplusthéorique,nousmesuronsla apa itéd'unréseaudonnéparleroutage optimaldesesdemandes,et,de efait,sesliens ritiques.Nousmanipulonsalorsleproblèmede ot on urrentmaximal(FCM),unproblème lassiquedelalittératuredere her he opération-nelle. Nous exhibons alors de nouvelles formulationsexa tes pour résoudre e problème, ainsi que les problèmesde multi-otsde manière plus générale.Une heuristique de onstru tion de formulationpourleFCMestégalementproposéepourtirerpartideladistributionspé iquedes apa ités d'uneinstan e. Nousmontrons alorslasupérioritédes performan es de es nouvelles formulationsparlebiaisde omparaisons.
Enn,nousdé rivonsunalgorithmeexa tetfortementpolynomialpourrésoudreleproblème de ot on urrent maximal dans le as d'une seulesour e. Nous montrons l'e a ité pratique d'unetelleappro he, omparéeauxmeilleuresformulationsexpli itéespré édemment.
StreamingrequirementsonInternetnetworkaremoredrivenbynewa tors,newservi esand newdigital ontents.Thisleadstohighprobabilityof ongestionandlaten y,andtherefore,a ri-ti alde reaseofqualityofservi eand/orexperien efor ustomers.Aninternetservi eprovider (ISP)whosegoalisto guaranteearst- lassperforman e,needstotakemeasures to onstantly enhan e theuidityof thetra streaming onits network.Onewayto fa e theproblem is to buildaContentDeliveryNetwork(CDN).ACDNmainly onsistsinthedeploymentofdierent devi esonanexistingnetwork.
First ofall, this thesis presentsdynami programmingapproa hesto ta kleserverlo ation problemsintreenetworks.Then,weaddressavariationofthematroidinterse tionalgorithmto solvethe
k
-server/ a helo ationproblem.Westartbygivingthedenitionand hara teristi sof transparent- a hing,aswellasthehypothesisthatwewilluseittobuildmodelsfortransparent a helo ationin treenetwork.Wetra titinto aMixedIntegerProgram,andformulate anew paradigmof dynami programming.We show therelevan e of su happroa h forour problem, andtowhat extentit anbetra tablein otherrelatedproblems.From a more theoreti al point of view, we manage to measure the apa ity of a network whi h isgivenby theoptimal routingstrategy,andhen e,to identifyits riti allinks.Wedeal withtheMaximumCon urrentFlow(MCF),a lassi al ombinatorialoptimizationproblem.We proposenewmodelsandformulationstosolvethisproblemexa tly,andmoregeneralmulti-ows problemsaswell.Aheuristi isalsogiven,toadaptthemodeltothespe i instan evalues.We experimenttheseformulationstoshowtheimprovementsthey anprovide.Finally,wedes ribe therst stronglypolynomial algorithmto solvethemaximum on urrentowto optimalityin thesinglesour e ase.We showthe e ien y ofsu h anapproa h,even ompared to thebest modelspreviouslypresented.
Optimisation de déploiement de
réseau de distribution de ontenus
Introdu tion
Dans e hapitre,nous allonsprésenter quelques élémentste hniquesfondamentauxdes ré-seauxdedistributionde ontenus(CDN)et des a hestransparents.Nousverronsalorsquedes problématiquesde lo alisationàla fois de dispositifset de ontenus émergentdans le déploie-mentd'un CDN.Parmi lalittératurequitraite es problématiques,nousnous pen heronsplus parti ulièrementsurdeuxétudesexistantesdelo alisationde a heset/oudeserveursdansdes réseaux arbores entset d'observerquelles sont les similitudes ave la des ription duproblème quenousallonstraiterdansle hapitre3.Ensuite, nousverronsenquoi es deuxappro hesde programmationdynamique proposéespour résoudre e typede problèmes dièrent, aussi bien dansledétaildeleursfon tionnementsquedansleursfor esetleurslimites.Ce inouspermettra demieux omprendrelané essitéd'étendre es appro hespourpouvoiraborderles spé i ités denotreproblème.
1.1 Les réseaux de distribution de ontenus
Danslesannéessoixante,lesEtats-Unisélaborentl'undestout premiersréseauxlongue dis-tan e,qui reliedesordinateursentre euxetleur permet d'é hangerdesinformationsde nature digitale.Cetteinnovationmarqueralepointdedépart versdesréseauxdetailledeplusenplus grande,auxte hnologiesstandardisées(notammentauniveaudesproto oles),etauxa teursplus variés.Réseauderéseauxmondial,dépourvude entrenévralgique,l'Internet ommen ealorsà naître. L'apparition d'organismes,tels queles FAI,(Fournisseurd'A ès àInternet) onjointe-mentaudéveloppementet àlaprodu tiondemassedes omposantsinformatiques(terminaux), démo ratisentalorsl'a èsà eréseaupourlesparti uliersdanslesannées1990.L'Internet s'in-vite alors danslequotidien desfoyers,que e soit àtraversleWorldWide Web, lamessagerie instantanéeou le ourrieréle tronique. S'ensuivra la naissan ed'une é onomie dématérialisée, quiattireradenombreuxinvestissementspourdenouveauxservi ess'appuyantsur eréseaudu futur. Ande fairefa e ausu ès del'Internet et autra roissant qu'ilgénérait,lesréseaux ontsubidesensiblesaméliorationste hnologiquesandesatisfairelademandeet augmenterla qualitédeservi e(débitgaranti,tempsdelaten e...).
plusde mémoire desto kage (parexemple lesvidéos haute dénition). Parallèlement, des ser-vi esproposentdedistribuer es ontenusautraversdel'Internet(YouTube,vidéosàlademande, at h-up TV), e qui o asionneuntra de grandvolume.An defournir es ontenus volu-mineux àdes lientsnombreux et épars, il est alorsgénéralementné essaire de onstruire une ar hite ture oopérative de serveurs pla és dire tement sur le réseau Internet : 'est e qu'on appelle unréseau de distribution de ontenus (Content DeliveryNetwork) dont la gure(1.1) montreunexemple omparéàunesolution"traditionnelle".
Dénition1. Unréseaude distributionde ontenusest onstituéet ara térisépar : 1. Letra onsidéré;les hiersqui le on ernent (" atalogue" de hiers)
2. Lesserveurs entrauxsurleréseau, qui rassemblentet peuventfournirla totalité du ata-logue
3. Les serveurs d'appoint sur le réseau (parfois nommés répli ats) destinés à servir un en-semblede lientslo alementpluspro hes surleréseau
4. Du servi e/intelligen e qui régit la ohésion de tous es éléments, et en optimise le fon -tionnement
Figure1.1Unesolutiondesto kagetraditionnelleave serveur entraluniquement(àgau he); une ar hite ture CDN(àdroite)
Si lesfournisseursde ontenus, ommeYouTubeouTF1,ontunintérêtàaméliorerla diu-siondeleurs ontenus,etdon àdéployerunCDN, epeutégalementêtrele asd'unfournisseur d'a ès.Celui- i, outreles servi esinternesqu'ilpeut proposer,doit assurerlebon fon tionne-mentduréseauqu'il ontrleet oreàses lients.Laqualitéde servi eet/ouexpérien epasse pardesindi ateurstelsquelalaten eouledébit onstaté,et onstituelavaleurajoutée même que fournit un opérateur tel qu'Orange. Dans e dernier as, le CDN est alors un moyen de soulagerletra surtoutoupartiedesonréseau.LeCDNpeutalorsêtrediéren ié(spé ique àuntypedetra ), oupartagé(indiéren ié au typedetra ).Dans tousles as, laréexion surledéploiementd'unCDNest primordialepourenmaximiserl'e a itéàmoindre oût.
nusduserveurs entralverslesserveursd'appoint(des" lones"partielsduserveur entral),du positionnementde es dernierssur leréseau (plus avan és versun groupede lients),et enn, delapolitiquederoutagedesrequêtes lientsetdes ontenus(la oopérationentrelesdiérents dispositifspoursatisfairelesdemandes).Sile hoixdelalo alisationdesserveursd'appointest une dé ision de longterme, e n'est pas né essairement le as des ontenus et du routage des requêtes.Eneet,les ontenusetleurspopularitésonttendan eà hangerrapidement(eetsde "buzz"parexemple),d'où l'intérêtpour unserveur entral etàplusforte raison unrépli at deserveur,de hanger son ataloguede ontenus. Tous es omportementsdynamiques sont trèsdi ilesàprédire,àdé rireet àmodéliser.
Lathéoriedesgraphesapupermettredegénérerdesappro hespourdéterminerlesmeilleures (ou,le asé héantdebonnes)dé isionspourdéployer esserveursd'appointàmoindre oût.La littératuredere her heopérationnelleparlealorsplusgénéralementdeproblèmesdelo alisation dedépts(ou"fa ilitylo ation"enanglais)oùl'obje tifest d'optimiserlepla ementde dispo-sitifsdansungraphedanslebutdeminimiser(oumaximiser)unefon tionobje tif.Dansle as d'undéploiementde CDN, ledépt est alorsassimilableauserveur,tandis quelamar handise représentel'informationdigitale.
1.1.1 Coûts linéaires et oûts xes
Parmiles aslesplussimplesde es problématiquesdelo alisation,il existeleproblèmede pla ementde dépts etd'a heminementdemar handises àmoindre oût, oùle oût d'installa-tiondesdéptsetl'utilisationdesar sduréseauxsontuniquementdépendants(parunerelation linéaire de oût) de leur utilisation. La ontrainte unique est de fournir les lients du réseau depuisundesdépts pourrépondreàleursdemandesenmar handises.
De manièreplusformelle, nouspouvons nousmunird'un graphe
G = (V, A)
, d'ar sdé rits parl'ensembleA
et desommetsdé ritsparl'ensembleV
,etnous her honsàminimiserle oût de transmissionsdes mar handisesdepuis undépt vers haque lientk
(k
∈ V
), de demandeDk
.Onintroduit lesvariablesfa, a
∈ A
etyi,
∀i ∈ V
expli itantrespe tivementleotde mar- handisessurl'ara
,et l'installationd'undéptsurlen÷udi
.Ce i formelemodèlesuivant:
Lo alisationdedépt1
min
X
i∈V
Cc.yi
+
X
a∈A
wa.fa
(1.1)X
a∈δ
+
(i)
fa
−
X
a∈δ
−
(i)
fa
= Di
− y
i,
∀i ∈ V
(1.2)fa, yi
≥ 0,
∀a ∈ A, ∀i ∈ V
(1.3)(1.4) Lemodèleminimise(1.1),les oûtslinéairesd'installationdeserveur
Cc
etdestransmissionswa,
∀a ∈ A
.La ontrainte(1.2)permetd'assurerlesloisde onservationsdeotstoutenassurant lasatisfa tiondesdemandes,etl'envoiéventueldemar handisesdepuisundépt installé.Les ar s ne possédant pasde apa ités, l'approvisionnement total d'un lient peut être ef-fe tuéparun heminuniquedepuisundépt hoisi, etpourun oût uniquementdépendantde
desliens qu'ilpar ourt.Le hoixdu heminlemoins her,ne dépenddon pasdelavaleurde la demande. Un même dépt peut également alimenter également plusieurs lients, en payant les oûts delamême façon.En réalité,onpeutramener eproblèmeàunproblème d'arbores- en edes plus ourts hemins,parunsimpleajoutdesommet "d'origine"virtuel ommenous l'illustre la gure1.2. Ce problèmepolynomialpeut être résolupar desalgorithmes fortement polynomiaux(parexempleunalgorithmedeDijkstraave une omplexité de
O(
|V |
2
)
).1
2
4
3
O
c(o,1)
c(o,2)
c(1,3)
c(1,2)
c(2,4)
c(1,3)
c(4,3)
Figure1.2 Grapheréel onstituédes sommets
{1, 2, 3, 4}
,et de leurs liaisons. Le sommetde "départ" virtuel est noté eno
, et les ar s su esseurs sont les ar s modélisant l'installation de serveur etsontreprésentésen gris.Un autre problèmesimple, onsiste àpla er desdépts etdes liaisonsàmoindre oût, mais dontles oûts d'installationet d'utilisationdesar sduréseauxsontxesdanslesdeux as.La réationd'unlien étantsouventvalabledans lesdeuxsens(la réationd'uneroutegénère,par exemple,estutilisabledanslesdeuxsens),leslienssontalorsreprésentéspardesarêtes(etnon desar s).
Demanièreanalogueauproblèmepré édent,nouspouvonsalorsmodéliserleproblème omme unarbre ouvrantdepoidsminimum.Denouveau, eproblèmeestpolynomialetpeutêtrerésolu parunalgorithmedePrimouKruskalen une omplexitéde
O(
|E|)
(E
représentantlenombre d'arêteséligiblesàl'installationd'unlien). Le hapitresuivantprésente demanièrepluspré ise eproblèmeainsiquesaversionduk
-médianquinousintéresseraplusparti ulièrement.Dansdenombreuxproblèmes,les oûtsd'installationsontxes(grandeurintensive),alorsque les oûtsd'a heminementdépendentdelaquantitéa heminée(grandeurextensive).Ilestalors intéressantderemarquerquela ombinaisonde esdiérentstypesde oûtsdénitunnouveau problèmequilui,estdi ile(ausensdela omplexitémathématique).C'estleproblèmequel'on onnait souslavo ablede "problèmede lo alisationdedéptssans apa ité"("Un apa itated Fa ilityLo ationProblem"enanglaisparfoisabrégéen"UFLP")dontlagure1.3nousmontre uneexempledesolution.
Figure 1.3Les"fa ility" (en noir), pla és surlesendroits éligibles (en blan ), où s'approvi-sionnent les lients(en gris).
Regardonsunmodèlequiexpli ite eproblème.Nousnousmunissonsd'ungraphe
G = (V, A)
, d'ar sA
etdesommetsV
,etnous her honsàminimiserle oûtdetransmissionsdes mar han-disesdepuisundéptvers haque lienti
(i
∈ V
),dedemandeDi
,etd'installationdedépts.On introduitlesvariablesfa, a
∈ A
etyi,
∀i ∈ V
expli itantrespe tivementleotdemar handises surl'ara
,et lesvariablesd'installationd'undépt surlen÷udi
."UFLP"
min
X
i∈V
Cc.yi
+
X
a∈A
wa.fa
(1.5)(1
− y
i).(
X
a∈δ
+
(i)
fa
−
X
a∈δ
−
(i)
fa
− D
i) = 0,
∀i ∈ V
(1.6)fa
≥ 0, y
i
∈ {0, 1}
∀a ∈ A, ∀i ∈ V
(1.7) (1.8)Cemodèleminimiselasommedes oûtsdetransmission(linéaires)etdes oûtsd'installation dedépts(xes) (1.5).Les ontraintes (1.6)dé riventlesloisde onservationdeots.Celles- i sonta tivesuniquements'il n'ypasdedépt aun÷ud onsidéré(
yi
= 0
).Sinon,ledépt peut émettredesmar handisessansau unelimite.Des heuristiques pour résoudre leproblème d'UFLP ont été notamment élaboréespour ré-soudre e problèmeNP-di ile,parexemple [64℄, quiutilisent unalgorithmede "passing
mes- e problème. Onretrouveparmi les méthodesexa tes, lestravauxde [35℄ qui propose une ap-pro heprimal-dualee a etandisque[44℄proposeunevariantede"Bran h&Bound"(appelée "Bran h &Peg")dédiéeàlarésolution de e problème,qui in lut notammentune heuristique de bran hementdynamique.Un grandnombre devariantesexistent pour e problème, omme elui qui y ajoutent des ontraintes de apa ités sur les liens ("Capa itated Fa ility Lo ation Problem"),ouplusieursniveaudedépts ("
k
-levelfa ilityproblem).L'ouvrage [45℄ rend état de lalittérature on ernant les problèmesde lo alisation, selonle pointdevuedestélé ommuni ations.Quietal.([87℄)rappellentdeleur otédiérentstypesde problèmesde pla ementdansdes réseauxdedistribution de ontenus, optantpourl'hypothèse majeurequele oûtde lamémoireest négligeableparrapportau oût globalduserveur.Dans manièregénéral,[87℄proposentdesheuristiquesdepla ementetles omparentsurdesinstan es réalistesd'internet.
D'autresinvestigationsontété menéespluspré isémentsur lalo alisationdes ontenus sur lesserveurs(et non lalo alisation des serveurs),de manièreàminimiser une fon tion de oût sousd'éventuelles ontraintesdequalitédeservi e.Lesauteursde[101℄,parexemple,modélisent leproblèmedepla ementde ontenussurunCDNdéjàdéployé(dontlalo alisationdesserveurs estdéjà onnue),etsefo alisentsurl'optimisationdesintera tionsquepeuventavoirlesserveurs entre eux.Ils montrentalorsque eproblème,appelé "Repli aPla ementandRequests Distri-bution Problem", peut être également vu omme un "Multi-Commodity Capa itated Fa ility Lo ationProblem".
Cesappro hesonten ommunde onsidérerlesserveursd'appoint ommedesélémentssous lasupervisiond'unserveur entral,oud'uneintelligen equiengèrele omportement.Uneautre manièrede onstruireunCDN est dedé entraliser etteintelligen eauseinmêmedes serveurs derépli ats,faisantd'euxdesdispositifsautonomes apablesderéagirautra qu'ils onstatent. Celainduitune nouvelle ontrainte qui réeunnouveauproblèmedelo alisationquenous étu-dieronsdansle hapitre3.
Nousallonsprésenterles ara téristiquesde esdispositifsautonome:les a hestransparents.
1.2 Le a he transparent
Le a he, tout omme le serveur de répli ats, a pour fon tion de répondre au maximum de requêtes lients qu'il est apable de satisfaire. Il est don naturellement doté des mêmes équipementsqueleserveur;àsavoirun(ouplusieurs)espa e(s)mémoire(s),etune(ouplusieurs) unité(s)de al ul.Commesonhomologue, etespa epeutlimiterlevolumede hiersqu'ilpeut ontenir,tandis quele pro esseur ontraintle nombrede requêtespouvantêtresimultanément satisfaites. L'intérêt prin ipal du a heest sonautonomie, plusparti ulièrementsa apa ité à modierdynamiquementson ontenudanslebutderester ontinuellementpertinentau oursdu temps,etdon ,demaximiserl'inter eptiondesrequêtesqu'ilvoitpasseràsonniveauduréseau. Lemé anismedemiseàjourdu a he onsisteàre onnaîtreunerequêtequiestformuléeaun÷ud (ouaulien)deréseausurlequelilsetrouve,versleserveur entral.Lorsquele ontenu,sujetde etterequête,transiteradepuisleserveur entraljusqu'àl'émetteurdelarequête,ilren ontrera le a hequienferaune opie.Ce prin ipeestreprésentéparlagure1.4.Cedispositifagissant
plusspé iquede" a hetransparent".
Dénition2. Un a hetransparentdansunréseaude distributionde ontenusestundispositif éle tronique etinformatique onstituéet ara térisé par:
1. Une apa itédere onnaissan edesrequêtesliéesàleurdénominationDNS,etune apa ité d'inter eptionet defourniturede e ontenu
2. Une apa itéde sto kageinformatique (en o tets)
3. Une apa ité de traitement apa itéde streaming (généralementexpriméeen nombre de sessionssimultanées, ouen débitd'o tetsparse onde)
4. Une politique de rempla ement des ontenus, qui met à jour les hiers de son espa ede sto kage
L'e a itéd'un a he,est généralementmesuréeparsa apa ité àinter epterdesrequêtes. C'est-à-direlaprobabilitéqu'ilpuisserépondreàunerequête.Si l'onnetientpas omptedela limitationde l'unité de al ul,elleseradire tementliéeàla apa ité desto kagedudit a he. Cetteprobabilitédesu èss'appellele"HitRatio",tandis queson omplémentaires'appellele "MissRatio".
LeHitratiose al uledelamanièresuivante(Dénition3).
Dénition 3. Soitune période
t
,et une librairie deNt
éléments sus eptiblesd'être demandés sur ettepériode.Soitun a heetson paramètrexn,t
∈ {0, 1}
indiquant1
s'il ontientle hiern
surla périodet
,0
sinon.Si l'on appelleDn,t
lenombre de requêtes qui lui est formulé pour haque hiern
surtoutela périodet
,le a heaurapourhit ratiosurla périodet HR(t)
:HR(t) =
P
n∈N
t
xn,t
.Dn,t
P
n∈N
t
Dn,t
La performan e d'un a he sur lapériode
t
, mesurée par le hit ratio, va don uniquement dépendre desafa ultéàposséderle sous-ensemblede hiers(dé rit parxn,t
,
∀n ∈ N
T
)et qui maximiseP
n∈N
t
xn,t.Dn,t
: 'est-à-diresafa ultéàinter epterles hiersdontlesdemandesDn,t
sontlesplusélevéessur ettepériode
T
.Sil'on onnaissaitàl'avan e esdemandes, eproblème de hoixde ontenusdeviendraitfa ile ardéterministe.Danslaréalité, etra n'estpas pré i-sémentprévisible, ettedé isionest don déli ate.D'autresindi ateurspeuventégalementêtre utilisés pour déterminerlaperforman e d'un a he, notamment al ulernon pasle nombrede requêtessatisfaites,maispluttlevolumededonnéesinter eptés.Pour rester e a e au ours du temps, le a he va don tendre à ontenir les hiers les plus populaires en haque instant, et par e que sa taille mémoire est limitée, devoir enlever unou plusieurs ontenus pourpouvoiren ajouterde nouveaux.Cet évènementarrivedès lors que le a he n'a pas été en mesure de satisfaire larequête en ours.Les algorithmes de hoix des ontenusàsupprimers'appellelespolitiquesderempla ement.Lalittératuredistinguetrois prin ipalespolitiquesderempla ement,LFU("LeastFrequentlyUsed")qui onsisteàenleverle hierenmémoiredontlafréquen ederequêteestlaplusfaible,LRU("LeastRe entlyUsed") qui onsisteàenleverle hierenmémoireleplusvieuxetennRANDOM,qui onsisteàretirer un hier enmémoireauhasard(voirgure1.5).Biend'autrespolitiquesexistent.Si l'obje tif viséde espolitiquesesttoujourslemême, 'est-à-diremaintenirenmémoireles hierslesplus
expérimentalesqu'analytiques([86℄,[56℄,[43℄,[39℄).Ilestparexempleadmisque"LRU"semble êtrelapolitiquelamieuxàmêmede apterles orrélationstemporellesdesrequêtes lients[105℄.
Pour omparerlesperforman esdes esalgorithmes,[86℄,[56℄,[43℄, [39℄et [105℄utilisent gé-néralementunalgorithmedestratégieoptimale([91℄), onnaissantlesfuturesrequêtes([11℄),qui vaenleverle hierdontlarequêtefutureestlapluséloignéedansletemps.Ilestévidentque et algorithmen'estpas,danslaréalité,possibleàimplémenterpuisqu'ilsupposeune onnaissan e parfaitedesrequêtesfutures.
Cache
Cache
Cache
Cache
Client 1
Client 2
Client 1
Client 2
Client 1
Client 2
Client 1
Client 2
Serveur Central
Serveur Central
Serveur Central
Serveur Central
(i)
(ii)
(iii)
(iv)
Figure 1.4(Le lient 1émet une requête(i), le a he ne peut la satisfaire :elleremonteau serveur entral.Le ontenuestfourniau lient1eteststo kédansle a he(ii).Le lient2émet une requête:elle estinter eptéeparle a he (iii). Le a hefournit le ontenu au lient 2(iv).
L'intérêtd'un a heesttriple.D'unepart,puisqu'ilestparfaitementautonome,ilnené essite paslamodi ationduréseauexistant;ilpeutsedéployerdire tementsurdesliensexistantset il est tout àfait sanseet sur le fon tionnement duréseau général. Cela signieque son oût d'installation reste relativement faible. D'autre part, il permet une plus grande robustesse du réseaufa e aux pannes. En eet,la misehors servi ed'un lien oud'un routeur ne signiepas né essairementqu'unepartiedes lientsn'ontplusa èsàun ontenu, et e,mêmesileserveur entraln'estplusa essible.Enn,etnondesmoindres,le a heaugmentelesperforman esdu réseauen terme derapidité, dequalité de servi eet limite leseetsde ongestion qui peuvent survenirdanslesmomentsoùletra estleplusintense.
Nous avons identié notre problème d'optimisation omme un problème de lo alisation. Puisque nous ne voulons pas remettre en ause la stru ture même du réseau, nous nous pla-çons dans le adre d'un routage des requêtes qui ne sera pas modié. Plus pré isément, dans notre as leserveur de ontenu est le entre du réseau, et 'est vers elui- ique toutes les
de-Cache
Cache
Cache
Cache
(i)
(ii)
(iii)
(iv)
Figure 1.5 (Plusieurs requêtes sont émises et leurs ontenus respe tifs sont sto kés dans la mémoire du a he (i), (ii) et (iii). La dernière requête et le ontenu objet de ette requête né- essitent de retirer un hierde la mémoire(iv) (i i, le plusan ien, equi orrespondrait à la politique LRU).
mandes lientsseronta heminées.Le réseaudedistributionde ontenusinduit parlesrequêtes formealorsunearbores en eave pourra ineleserveur entral.Notregrapheauradon lamême stru ture. Parbeau oup d'aspe ts e problème de lo alisationde a hestransparentsdans les arbores en ess'apparenteà e quiesttraitédanslalittérature.
Si nous nous pen hons sur e qui est fait plus parti ulièrement dans le adre des arbores- en es,onpeutnoterlesquelquesréféren essuivantes.Quietal.([87℄)montrentquedansle as d'unréseauarbores entsila apa itédedistributionduserveurn'estpaslimitante,leproblème peutêtre résolu àl'optimum àl'aide d'un programme dynamique polynomial (en
O(N
3
M
2
)
). Ce programme est tiré de e qui avait été initialement réé pourla lo alisationde proxy Web par[68℄.S'inspirantde[98℄et[87℄,lesauteursde[61℄proposentégalementuneappro hede pro-grammation dynamique polynomiale pour unproblème onnexe.Enn H. Luss([72℄), propose d'étendre esmé anismespourprendreen ompteles ontraintesparti ulièresdesonproblème.
Cependant,notredispositifàdéployerpossèdeunestratégiede hoixde ontenussoumisau tra lui-même,etpluspré isémentàlamesuredelapopularitéquiestfaiteàsonempla ement. Cettespé i itéquepossèdenotreproblèmeenplusd'une ontraintede apa itén'apasété,à notre onnaissan e,appréhendéedanslalittératurepourn'importequeltypedegraphe.
D'après e quenous avons puobserver,lalittératuresemblesuggérerlapertinen e des ap-pro hes de programmation dynamique dans un problème de lo alisation lorsque le graphe est
problèmeenutilisant etypedeparadigmeetquiintègre ette ontrainte.Pour efairenous al-lonsétudier equiadéjàétéproposédanslalittératureetplusparti ulièrementdeuxproblèmes delo alisationdans desarbores en esdéjà itées: [61℄ et [72℄. Nousallonsdétailler i-aprèsle fon tionnementde ha unde eux- i,pourbien omprendreleursdiérentesmé aniquesetleurs limites. Ce i nous permettrade voir ommentnous pouvons nousen inspirer pourdéterminer unenouvelleappro hegénéraledeprogrammationdynamique apablederépondree a ement ànotreproblématiquedansle hapitre3.
1.3 Lo alisation de a hes de Hit Ratio onstant dans des
graphes arbores ents.
Pour les mêmes raisons que [68℄ et [98℄, les auteurs de [61℄ formulentleur problème de lo- alisationoptimalede a hesenajoutantdeuxhypothèses.La premières'appuie surleroutage dutra Internetqui est ee tué selondesplus ourts heminset sil'on onsidère unserveur (ougrappedeserveurs) entral,les heminsdetransmissiondedonnéesformerontune arbores- en e,ayantpourra ine leserveur entral.Lase ondeest qu'ils onsidèrentlehit ratio
h
xé. Les auteurs présentent un problème où il s'agit de déployer un nombre xék
de a hes dans l'arbores en eenminimisantlafon tionde oût omposéeduprix delatransmission.Lorsqu'un a heest pla é sur le heminderoutage d'un ouplusieursots, elui- ivaalors pouvoirinter epterune partiede e ot, orrespondantauHitRatiode e a he.Lagure1.6 résumel'eetd'un a heauhitratio onnu. Le a hepla éaun÷udintermédiaireabsorbeune partiedesrequêtesdesdeux lientspla ésenaval.Ce iinduiraunediminutionduotenamont, orrespondantàl'e a ité du a he : soit,leHit Ratio
h
. De e faitla valeurdutra (ots) quiserasupportéparl'ar(oc)
orrespondraàf = (1
− h).(f(1) + f(2))
.c
1
2
o
(1-h).(f(1)+f(2))
f(2)
f(1)
Cache
requêtes
requêtes
requêtes
Figure 1.6Réseauave serveur entral (en noir), les lients(en blan ) etle a he aun÷ud intermédiaire.
Comme nous l'avons déjà mentionné le hit ratio est une mesure de l'e a ité extrême-ment dépendante des paramètres suivants; apa ités du dispositif, du tra , de la politique de rempla ement et sa lo alisation. I i le hit ratio est prédit omme xe. C'est à dire que
HR(t) =
P
n∈Nt
x
n,t
.D
n,t
P
n∈Nt
D
n,t
= h
est onstant quel que soit le moment (
t
) ou l'empla ement du a he. En réalité, derrière ette simpli ation se a he l'hypothèse que les a hes ontiennent l'é hantillonde hiers quilui permet d'atteindre e ratio,quel quesoit levolume demandéet sonorigine.Ilyadon defaçoninduite,unehypothèsededistributionstatiquederequêtesentre les lients, uniquement pondérée parun volume global. Or ette distribution s'entrouvera né- essairementaltéréeenamontd'un a he(puisqu'unepartiedesrequêtesaurontdisparu).Cela signie que le otde requêtes d'un lient ne pourra être inter epté qu'une seule fois parle a he:leresteétantné essairementdesrequêtesd'uneautrenature.Le s hémade lagure1.7 montreun exempledel'impa t des a hessur ladistribution de popularité en amont d'un a he. Le a he pla é au n÷ud2 inter epte les requêtesde premier type( ouleur verte)desdeux lients.L'inter eptiondesrequêtesde e ontenu orrespondàun hitratiode
66%
.Lese ond a heenamont(n÷ud1)peutavoirdèslorsdeuxhitratiodiérents, dépendantdu ontenudesamémoire:àsavoir100%
s'il ontientlese ond hier( ouleurrouge) (a),ou0%
s'il ontientlepremier hier( ouleurverte)(b).2
1
Cache
Client 1
Client 2
Hit Ratio = 66%
Cache
Hit Ratio = 100%
66 - 33 %
66 - 33 %
0 - 100 %
2
1
Cache
Client 1
Client 2
Hit Ratio = 66%
Cache
Hit Ratio = 0%
66 - 33 %
66 - 33 %
0 - 100 %
(a)
(b)
Figure1.7Diérentshit ratio, selonletype de ontenusprésentdansle a he.
Pours'aran hirde eproblème,lesauteursde[61℄imposentqu'unotderequêtesd'un lient nesoit inter eptéqueparauplusun a he.Autrementdit,ils segmententlesrequêtesentre e quiest " a hable"et e quinel'estpas.Lapartie quinepeutpasêtremiseen a heseradon né essairement routéejusqu'auserveur entral. Cette partie des requêtes est a heminée duserveur entralversles lients quelleque soitla onguration de a hes.Le oût induit par leurs transmissions est don onnu et il n'entre pas dans le pro essus d'optimisation. Le modèle peut être dire tement onstruit sur e qui est don " a hable", 'est-à-direlaproportion
h.Di
de haquedemandeeni
, ommenousallonslemontrer.On onsidère unearbores en e
T = (V, A)
dont lara ineo
est leserveur entral, ainsiqueT
⊂ V
desterminaux, ou lients.Chaque lientpossèdesa propredemande, supposée onnue, notéeDi, i
∈ T
.Le oûtdel'ar (uniquepuisquenoustravaillonsdansunearbores en e)in ident ài
quandàlui,estnotéwi,
∀i ∈ V
.Par onventionwo
= 0
.Lesvariablessontdiviséesendeuxtypes.Lamiseenpla ed'un a heestdéterminée parla valeurbinaire
yi,
∀i ∈ V
devaleur1siun a heestpla é, 0sinon.Lavaleurdetransmissionde donnéesnon " a hables"versunlsi
depuissonpère est expli itéeparla variablede otsfi
. Lafon tionde oût s'é rit:X
i∈V
fi.wi
Nousnoteronségalement
δ
+
(i)
l'ensembledesn÷udslsde
i
.Leproblèmedelo alisationdek
a hes,dehit ratioh
,dansunearbores en epeuts'é rire:k
-median
min
X
i∈V
fi.wi,
(1.9)fi
= (1
− y
i).(
X
j∈δ
+
(i)
fj
+ h.Di),
∀i ∈ V − {s}
, (1.10)X
i∈V
yi
≤ k,
(1.11)fi
≥ 0, y
i
∈ N
∀i ∈ V
(1.12)La fon tionde oût (1.9)est la sommedes otsde l'arbores en e, tandisque la ontrainte (1.11)limitelenombred'installationmaximumee tuées.Leot
fi
estlasommedesotsde de-mandesdesn÷udslsδ
+
(i)
de
i
pluslademandeh.Di
aun÷udi
(partiepouvantêtreinter eptée parun a he). Si un a he est présent, alors ette demandeest satisfaite par e a he,et tous lesotsas endantsontéliminés, e qui est représentépar la ontrainte (1.10). Si la ontrainte (1.10) peut êtrelinéarisée simplement, lesauteurs proposentplutt d'utiliser unalgorithmede programmationdynamique dontnousallonsvoirlefon tionnement.A haquen÷uddel'arbreleproblèmeestdé omposéenun hoixentredeuxdé isions:mettre un a he, ounepasen mettre. Ilfaudraalorsprendre ladé isionquinous oûtelemoins her entre lesdeux.Nousdénissons
C(i, l, k)
,le oûtdelasolutionoptimaledessous-arbresinduits parlen÷udi
ave unmaximumdek
a hesqui peuventen oreêtreinstallésetune distan el
(ausensdeslongueurswi
)laplusfaibleentrei
etun a heenamont.Ils'agiraalorsdetrouver lameilleure solutionC
∗
(i, l, k)
entrelesdeuxpossibilités(mettreun a heounon),soit:
Proposition1. Le oûtoptimal,noté
C
∗
(i, l, k)
,dela solutiondusous-arbreinduit(et ompre-nant)par
i
,sa hantle oûtdetransmissionversle a heenamontlepluspro hel
(oudistan e), etunnombrek
de a hes disponibles,estdonné parla relation :C
∗
(i, l, k) = min
{C(i, l, k) + h.D
i.l, C(i, 0, k
− 1)}
(1.13) Démonstration. La solutionoptimaleeni
, onnaissantlalongueurl
et unnombrede a hesk
disponibles, seradon ellequi sera de oût le plusfaible entre le oût delasolution optimale oùle hoixestfaitdepla erun a heeni
etle oûtdelasolutionoptimaleoùle hoixestfait denepaspla erde a hei
,auquels'additionneun oûtdetransmissiondelademandeDi
vers le a heenamontlepluspro he(h.Di.l
)dans edernier as.orrespondant,étantdonnéelaprisededé isionen
i
.Proposition 2. Le oût optimal de la solution des sous-arbres induits par
i
, ayant xé l'état dei
,k
a hes restant disponibles et de oûtde transmissionvers le a he le plus pro hel
(ou distan e), etnotéC(i, l, k)
,est donnéparla relation :C(i, l, k) =
min
kj ∈N,∀j∈δ+ (i)
P
j∈δ+ (i)
kj =k
{
X
j∈δ
+
(i)
C
∗
(j, l + wj, kj
)
}
(1.14)Démonstration. Soit
i
len÷ud ourant, et l'arbores en eT
i
− {i}
induitepari
et privéedei
. Toute solution réalisabledu problème d'optimisation de lo alisation de a hes généré par une sous-arbores en eT
j
, j
∈ δ
+
(i)
, onstituené essairementunesolutionréalisableauproblèmede lo alisationsur
T
i
− {i}
,silasommedetousles a hespla éssur elle- in'ex èdepas
k
.Or,le problèmedeminimisationdeC(j, l, k)
, onnaissantune ongurationdepla ementenamonta uniquementpourdonnéesd'entréelesparamètressuivant:1. legraphedelasous-arbores en edera ine
j
(lasous-arbores en eelle-même)etses oûts asso iés2. ladistan e
l
ave le a he/serveurenamontlepluspro he 3. lenombrekj
de a hesdisponiblespourlasous-arbores en ej
Sil'on hoisiune ombinaisonsd'allo ation
kj
pour haquesous-arbores en ej
,tellequeP
j∈δ
+
(i)
kj
=
k
, alorsle oût delasolution optimalesur l'arbores en einduitepari
orrespond àlasomme des oûtsdessolutionsoptimalesdessous-arbores en esinduites parj
∈ δ
+
(i)
.
Le oûtoptimaldelasolutiondel'arbores en einduitepar
i
(privéedei
), orresponddon au minimum de lasomme des oûts des solutionsoptimales des sous-arbores en es, parmi toutes les ombinaisonsd'allo ationsde a heskj
, j
∈ δ
+
(i)
, tellesque
P
j∈δ
+
(i)
kj
= k
.Ladiéren efondamentaleentre
C(i, l, k)
etC
∗
(i, l, k)
,estquepour
C(i, l, k)
ladé isionde pla ementde a heeni
estdéjàprise: 'estuniquementle oûtdelasolutionoptimale onsidé-rantunétatdéjà dénieni
, tandisqueC
∗
(i, l, k)
déterminelameilleurede es deuxdé isions (mettreun a heounon).Pour onnaîtrelasolutionoptimaledetoute l'arbores en e,ilsura alorsde al uler
C
∗
(o, 0, K)
.
Une manièrede ontra terlesdeuxrelationsderé urren e:
C
∗
(i, l, k) = min
min
kj ∈N,∀j∈δ+ (i)
P
j∈δ+ (i)
kj =k
{
P
j∈δ
+
(i)
C
∗
(j, l + wj
, kj)
}
min
kj ∈N,∀j∈δ+ (i)
P
j∈δ+ (i)
kj =k−1
{
P
j∈δ
+
(i)
C
∗
(j, wj, kj)
}
(1.15)C*(i,l,k))
C(i,0,k-1)
C(i,l,k)
y(i) =0
y(i) =1
C*(i1,w1,k-1-k’)
C*(i2,w2,k’)
C*(i1,l+w1,k-k’’)
C*(i2,l+w2,k’’)
w1
w2
l
l
w1
w2
k’’ de [0;k]
k’ de [0;k-1]
Figure 1.8 Arbre de dé ision de pla ement de a hes (partie haute l'arbre 1.13), puis des- riptiondes sous-problèmes induitspar haquedé ision(partie bassede l'arbre orrespondantà 1.14).
Nous obtenons une ré ursion en deux étapes, où le oût optimal
C
∗
(i, l, k)
représente la meilleure dé ision à prendre entre installer un a he ou ne pas en installer. Cette dé isionva dépendredela ombinaisonoptimaledepartitionnementdes
k
a hesdisponiblesC(i, l, k)
.Lagure1.8résumeleprin ipedesrelationsderé urren e.And'améliorerlesperforman es théoriqueset pratiques del'algorithme, lesauteurs ee tuentune transformationsur legraphe enajoutantdesn÷udsvirtuelsdesorteà equ'unpèreaitauplusdeuxls:
il
etir
.Le pseudo- odedel'algorithmeest dé rit i-dessous.Algorithm1Lo alisationde a hes(
C
∗
(i, l, k))
Require:
T = G(V, A)
arbores en edera inei
,longueurversle a heenamontlepluspro hel
,nombrede a hesdisponiblesk
Ensure: MeilleuresolutionC
∗
(i, l, k)
entrelesdeuxdé isions(mettreounepasmettrede a he) return
min
{C(i, 0, k − 1), C(i, l, k)}
Algorithm2Lo alisationde a hes(
C(i, l, k))
Require:
T = G(V, A)
arbores en edera inei
,longueurversle a heenamontlepluspro hel
,nombrede a hesdisponiblesk
Ensure: Meilleure solution
C(i, l, k)
induiteparl'état(i, l, k)
C(i, l, k)
solutioninitialiséeàl'inni. forallk
′
∈ N, 0 ≤ k
′
≤ k
do if
C(i, l, k) > C
∗
(il, l + wi
l
, k
′
) + C
∗
(ir, l + wi
r
, k
− k
′
) + l.Di.h
thenC(i, l, k)
← C
∗
(il, l + wi
l
, k
′
) + C
∗
(ir, l + wi
r
, k
− k
′
) + l.Di.h
endif endfor
return
C(i, l, k)
Cetteappro heaété prouvéede omplexité
O(kn
2
)
par[98℄.
Un problème très pro he peut également être traité de ette manière. A la pla e d'une ontrainte d'un nombre
K
de a hes disponibles à pla er ( ontrainte (1.11) du modèle pré é-dent),nouspouvonsattribuerun oûtcc
àlamiseenpla e d'un a he. Nousobtiendronsalors lemodèlesuivant: Lo alisationde a hes
min
X
i∈V
fi.wi
+ yc.cc,
(1.16)fi
= (1
− y
i).(
X
j∈δ
+
(i)
fj
+ h.Di),
∀i ∈ V − {s}
, (1.17)fi
≥ 0, y
i
∈ N
∀i ∈ V
(1.18)Ce modèles'assimileauproblèmeplus lassiqued'Un apa itatedFa ilityLo ationProblem déjà ité, dans le as parti ulier d'une arbores en e. A nouveau, le problème peut être traité de manière polynomiale parun algorithme de programmation dynamique -de omplexité
− −
−O(n)
. Leproblèmeest notamment plussimple, ard'unedé isionee tuée aupère,les sous-solutions orrespondantàsesls deviennentindépendantes entre elles, e quin'était pasle as pré édemment(liéesentreellesparlesk
a hesdisponibles).Proposition 3. Le oûtoptimal, noté
C
∗
(i, l)
,de la solution du sous-arbre induit (et ompre-nant)par
i
, sa hant le oûtde transmission vers le a he en amontle pluspro hel
(distan e) estdonné par larelation:C
∗
(i, l) = min
{C(i, l) + h.D
i.l, C(i, wi) + cc
}
(1.19) Démonstration. Lasolutionoptimaleeni
, onnaissantlalongueurl
,seradon ellequiserade oût le plusfaible entre le oût dela solutionoptimaleoù le hoix est fait depla er un a he eni
etle oût delasolutionoptimaleoùle hoixestfaitdenepaspla erde a heeni
,auquel s'additionne un oût de transmission dela demandeDi
versle a he en amont leplus pro he (h.Di.l
)dans edernier as.Or,lasolutionoptimalevaêtre onstituéedelameilleure ombinaisondesessous-arbresls orrespondants,étantdonnéelaprisededé isionen
i
.Proposition4. Le oûtoptimal dela solutiondessous-arbresinduits par
i
,ayantxé l'étatdei
,un oûtdetransmissionversle a helepluspro hel
,etnotéC(i, l)
,estdonnéparlarelation:C(i, l) =
X
j∈δ
+
(i)
C
∗
(j, l)
(1.20)Démonstration. Soit
i
len÷ud ourant, et l'arbores en eT
i
− {i}
induitepari
et privéedei
. Toute solution réalisabledu problème d'optimisation de lo alisation de a hes généré par une sous-arbores en eT
j
, j
∈ δ
+
(i)
, onstituené essairementunesolutionréalisableauproblèmede lo alisationsur
T
i
−{i}
.Or,leproblèmedeminimisationdeC(j, l)
, onnaissantune onguration depla ementenamontauniquementpourdonnéesd'entréelesparamètressuivant:1. legraphedelasous-arbores en edera ine
j
(lasous-arbores en eelle-même)etses oûts asso iés2. ladistan e
l
ave le a he/serveurenamontlepluspro he 3. lenombrecc
oûtd'installationde a heLe oût optimalde lasolution del'arbores en e
T
i
− {i}
, orresponddon auminimum dela sommedes oûtsdessolutionsoptimalesdessous-arbores en esT
j
, j
∈ δ
+
(i)
.
Ce quipeutêtre ontra tésouslaformuleunique:
C
∗
(i, l) = min
P
j∈δ
+
(i)
C
∗
(j, wj) + cc
P
j∈δ
+
(i)
C
∗
(j, l) + h.Dj
.l
(1.21)Si l'hypothèse d'un graphearbores ents'explique pardestables de routagesxes, il est en revan heimpossibledetraiterle asde a heshiérar hiques; esontlàleslimitesdeshypothèses de e papierpourintégrerle omportementdes a hestransparents.Pourpouvoirtraiter om-portement,ilnousfaudraitalorsla onnaissan epré isedesdiérentesrequêtesetdes ontenus asso iés à haque n÷ud duréseau. C'est e qui nous motive à présenter le se ond arti le qui onsidèrelepla ementdes ontenusensusdelalo alisationdesdispositifs.
1.4 Lo alisation deserveurs et de ontenus dansdes graphes
arbores ents
L'undes asd'usagepourlequelilestné essairededéployerunCDNestleservi edevidéo àla demande. En eet e type de servi eore un ontenu multimédia massif( atalogue om-prenantgénéralement plusieursmilliersdelms) et de taille importante (de1à 5Go parlm selonlaqualité d'en odage)pourunmar héextrêmementgrand(plusieursdizainesdemillions de transa tions estimées par an). C'est e qui motive H. Luss dans l'étude de la lo alisation optimaledeserveursetde ontenus.
Pluspré isémentHananLuss([72℄),proposededéployerunCDNdansunréseauarbores ent
T = G(V, A)
ayantpourra ine le serveur entralo
pour dela vidéoàla demande (VOD), en spé iantle ontenuasso iéà haqueserveur: ilappelle eproblèmeleSLPAM(pour"Servi e Lo ation and Program Assignement Model"). Le ataloguedisponible pour la VoD est dé rit parl'ensembledeses lassesp = 1, 2, ...,
|P |
,quireprésenteles|P |
atégoriesdelms( omédies, thriller,et ...)disponibles.Les lients,pouvantêtrelo alisésàn'importequeln÷udi
,formulent alors un sous-ensembleDi
de demandes dans e atalogueP
. Luss suppose également que lesatransmission.De ettemanière,lamêmeinformation quipar ourtunlien donnépeutservir plusieursdemandes, ommelereprésentelagure1.9.De efait,lesvariablesexpli itantunot dese tion
p
serabinaire.0
2
1
Client
Client
(1)
(1)
(1)
flot
Figure1.9 Le ot d'informationarrivant surlen÷ud 0,est répliqué pourêtretransmisà la foisau lient 1etau lient 2.
Celasupposeune ertaine orrélationtemporelleentrelesrequêtes.De efait,la onsomma-tiondebandepassante(modéliséei iparunot)n'estqu'unesommed'informationsstri tement diérentes.
Les oûtssontpartagésentretrois omposants:l'installationdeserveurs,de oût
Cs
,lamise enpla ede lassep
auseind'unserveur,de oûtCp
et ennle oûtdetransmissionwi,p
d'une lassede hierp
surl'ar in identài
(wo,p
= 0,
∀p ∈ P
).L'auteurintroduitalorslesensemblesQN (i, j)
quiindiquentlesn÷uds qui onstituentle heminuniquedel'arbores en eT
relianti
àj
.Lesvariablessontlessuivantes:
1.
yi
:lavariablededé isionbinairedevaleur1
siunserveurestinstalléaun÷udi
,0
sinon. 2.xi,p
:lavariablededé isionbinairedevaleur1
sila lassedelmsp
est ontenuedansleserveurdun÷ud
i
;0sinon.3.
ui,j,p
: la variable de dé isionbinaire de valeur1
si le serveur du n÷udi
est le serveur émetteurdu ontenup
pourle lientj
,0
sinon.4.
bi,p
: la variable de dé ision binaire de valeur1
si le ontenup
est transmis sur le lien in identài
.SLPAM
min
X
i∈V
Cs.yi
+ (
X
p∈P
Cp.xi,p
+ wi,p.bi,p)
(1.22)P
i∈QN (o,j)
ui,j,p
= 1,
∀p ∈ D
j, j
∈ V
(1.23)xi,p
≤ y
i,
∀p ∈ P, j ∈ V
(1.24)ui,j,p
≤ x
i,p,
∀p ∈ D
j, i
∈ QN(0, j), j ∈ V
(1.25)bj,p
≥ u
i,k,p,
∀p ∈ D
j, j
∈ QN(i, k) − {i}
k
∈ V
(1.26)y0
= 1, yi
∈ {0, 1}, ∀i ∈ V
(1.27)xo,p
= 1, xi,p
∈ {0, 1}, ∀i ∈ V
(1.28)ui,j,p
∈ {0, 1}, ∀j ∈ V, p ∈ D
j
i
∈ QN(o, j)
(1.29)bi,p
∈ {0, 1}, ∀i ∈ V, p ∈ P
(1.30)Lemodèleexpli iteunefon tionde oût (1.22)reprenanttouteslessour esde oût du pro-blème,soit:l'installationdesserveurs,des ontenusen eux- ietlatransmissionsurlesliens.La ontrainte (1.23)imposequ'à haquedemande lient,unserveursituésur le heminduserveur entralau lientsatisfasse ettedemande.Les ontraintes(1.24)et(1.25),quantàelles,sontdes ontraintes lassiques imposantqu'un serveur, pourêtre émetteur d'un ontenu pour unou plusieurs lients,doitavoirunserveuret que eserveur ontienneledit ontenu. Ladernière ontrainte (1.26),impose ennquelesliensdu heminreliantleserveurémetteurd'un ontenu pourun lientjusquà elui- i,transmettentee tivement e ontenu.
Puisque leproblèmen'est onstituéquedevariablesbinaires,l'auteursuggèreuneappro he deprogrammationdynamique.Pour ela,ilexpli itetroisétatsdiérentsquepeutavoir haque lassedelmsde haquen÷ud.
Dénition 4. Pour tout programme
p
et tout n÷udi
nous appelons étatseip
les états selon lesquels :1.
eip
= 0
:signiequeleprogrammep
netransitepasparlen÷udi
.Celasignienotamment qu'ilne peuten êtrel'émetteur(xip
= 0
) mais égalementquebip
= 0)
.2.
eip
= 1
:signiequeleprogrammeestémis de e n÷ud, e qui impliqueàla fois qu'ilya unserveuryi
= 1
etqueleprogrammeest ontenu dans elui- ixip
= 1
.3.
eip
= 2
:signie quele programme n'estpasinstallésurle n÷udi
, mais transitesurson lienin ident, soitquebip
= 1
.L'intérêtdel'ensemblede esétatsestqu'ildé ritdemanièreexhaustiveleseetsdestoutes les ongurationspossiblesenamontde en÷ud,permettantdedé omposerleproblème equi permetl'utilisationdelaprogrammationdynamique.
Le ve teur
ei
= (ei1, ei2, ..., ei|P |)
désigneraalorsleve teurd'état totaldun÷udi
.Deplus, la solutionoptimale est ara térisée parla propriété que haque demande lientd'un ontenu est délivrée par le serveur doté de e ontenu le plus pro he de e lient (du fait de la mini-misationdu oûtdelatransmission).Dèslors,nous pourronsalorsdé rirelasolutionoptimale uniquement parunve teuroptimalde omposantese
∗
i
,
∀i ∈ V
.Nous réutiliseronségalementla notationyi(ei)
,devaleur1
,siilexisteaumoinsuneip
= 1,
∀p ∈ P
,qui orrespondàlané essitéL'auteurintroduitalorsle oûtlo ald'unn÷udd'aprèssonétat,soit:
C(ei) = yi(ei).Cs
+
X
eip=1
p∈P
Cp
+
X
eip=2
p∈P
wi,p
(1.31)Il distingue e dernier du oût de lasolutionoptimalelo ale, lié ausous-arbre induitpar
i
(arbores en eτi
dera inei
)parC(τi, ei)
, après avoir hoisil'étatei
.Luss onstruit également l'ensemblesuivant:Dénition 5. L'ensemble
REALi(ej)
désigne tous les étatspossiblesei
dei
sa hantej
, avej = δ
−
(i)
(n÷udd'origine de l'ar uniquein ident ài
).Lasolutionlo aleoptimaleest onstruiteparmi esdiérentsétats:
C
∗
(
T
i
, ej)
,ens'assurant que l'état
e
∗
i
est réalisable pourej
. C'est à dire que la solutionei
asso iée eni
fait partie deREALi(ej
)
.Proposition 5. Le oûtde la solution optimale de la sous-arbores en e
T
i
sa hant
ej
, , avej = δ
−
(i)
(n÷ud d'origine de l'ar unique in ident à
i
) est notéC
∗
(
T
i
, ej)
, et donné par la relation :C
∗
(
T
i
, ej) =
min
e
i
∈REAL
i
(e
j
)
C(
T
i
, ei)
(1.32)Démonstration. Si lasolutionde lasous-arbores en einduite par
i
est réalisablepourj
et son étatdéterminéej
,alorselleestréalisablepourtoutel'arbores en e(ré ursionde lagarantiede réalisabilité).Le oûtdelasolutionoptimaledelasous-arbores en einduitepari
sa hantl'étatej
dun÷udpère,estdon leminimumdes oûtsdessolutionsdesétatsei
aun÷udi
réalisables sa hantej
.Or,le oûtdel'étatdelasolutionoptimalelo alesa hantl'état
ei
xés'obtientdelamanière suivante:Proposition 6. Le oût de la solution optimale de la sous-arbores en e
T
i
muni d'unétat
ei
xé,notéC(
T
i
, ei)
,estdonné parla relation:
C(
T
i
, ei) = C(ei) +
X
j∈δ
+
(i)
(C
∗
(τj
, ei))
(1.33)Démonstration. Le oût de la solution optimalede lasous-arbores en e induite par
i
sa hant l'étatei
aun÷udi
,est donnéparlasommedes oûtslo aux(dénisparC(ei)
)etdelasomme dessolutionsoptimalesdessous-arbores en esinduitespari
.Si
C
∗
(
T
i
, ej)
exprimele oût dela solutionoptimalesous ontraintede l'état
ej
donnépar len÷udoriginedesonar in ident,C(
T
i
, ei)
exprimele oûtdelasolutionoptimaleinduitpar le hoixdel'état
ei
surlara inei
dusous-arbreT
i
.Larelation(1.32),vanouspermettrealors deleslier,ens'assurantla ohésiondesétats
ei
etej
parl'ensemblederéalisabilitéREALi(ej)
, et e, depro heenpro he.Comme pré édemment, les relations de ré urren essont représentées dans le s héma de la gure1.10.
C*(t,e0)
C(t,e2)
C(t,e1)
C*(t’,e2)
C*(t’’,e2)
C*(t’,e1)
C*(t’’,e1)
e1
e2
Figure1.10Arbrede dé isiond'états(partie hautel'arbre(1.32)),puis des ription des sous-problèmes dansl'arbreréelinduits par haquedé isiond'états(partiebassedel'arbre orresp on-dantà(1.33)).
Ennl'algorithmepeutseprésentersouslaformesuivante:
Algorithm3Lo alisationdeserveursetde ontenus
C
∗
(
T
i
, ek)
Require:
T = G(V, A)
arbores en edera inei
,P
ensembledesprogrammes,ek
état ourant. Ensure: Meilleure solutionC
∗
(
T
i
, ek)
1:
REALi
,ensemblesdesétatsréalisables,pour haquei
∈ V
2: for allei
∈ REAL
i(ek)
do3: if
δ
+
(i)
6= ∅
then 4: for allj
∈ δ
+
(i)
do 5: Cal uleret enregistrerC
∗
(τj, ei)
(1.32) 6: endfor 7: endif 8: Cal ulerC(
T
i
, ei)
(1.33) 9: endfor 10: returnC
∗
(
T
i
, ek) =
min
e
i
∈REAL
i
(e
k
)
{C(T
i
, ei)
}
Nousallonsàprésentmontrerunexempledufon tionnementdel'algorithme.Nousutilisons l'instan edelagure1.11,etdetrois lassesde ontenus
p
.Partantdel'étatinitial duserveur entral(1, 1, 1)
, nous her herons alors l'état optimalC
∗
(τ1, (1, 1, 1))
du seul n÷ud ls
1
. De façonré ursivenous serons don amenésà al uler les solutionsoptimales alternativementC
∗
et
C
jusqu'à atteindre les feuilles de l'arbre. L'auteur propose de sauvegarder les états déjà al ulésandeminimiserl'eortde al ul.Lestableaux1.1,1.2,1.3et1.4réfèrentlesétatsdes n÷udspotentiellement al ulés,etlamanièredontilssont al ulés.Lorsquel'algorithmestoppe,"ba ktra king"desétatsoptimaux ommenousleprésenteletableau1.5.
1
2
4
5
3
6
7
o
1
3
4
3
3
8
3
3
1,3
1
2,3
2,3
2
1
Figure1.11Arbores en edera ine
o
.Les oûtsdetransmissionsurleslienssontindépendants des ontenus qui y transitent et sont notés en noir. Les lasses de ontenus sont dénis parP =
{1, 2, 3}
.Les demandes en haque n÷udsont notées en violet. Enn le oût d'un serveur estCs
= 6
etle oûtd'installationde ontenusC1
= C2
= C3
= 2
.N÷ud
4
N÷ud5
REAL4(e2)
C(τ4, e4)
REAL5(e2)
C(τ5, e5)
(1,0,1) 6+2+2=10 (1,0,0) 6+2=8 (1,0,2) 6+2+3=11 (2,0,0) 3 (2,0,1) 6+3+2=11
(2,0,2) 3+3=6
N÷ud
6
N÷ud7/8
REAL6(e3)
C(τ6, e6)
REAL7/8(e3)
C(τ 7/8, e7/8)
(0,1,0) 6+2=8 (0,1,1) 6+2+2=10
(0,2,0) 3 (0,1,2) 6+2+3=11
(0,2,1) 6+3+2=11 (0,2,2) 3+3=6
REAL3(e1)
C(τ3, e3)
(0,0,0)0 + C(τ6, (0, 1, 0)) + C(τ7, (0, 1, 1)) + C(τ8, (0, 1, 1)) = 8 + 10 + 10 = 28
(0,0,1)6 + 2 + C(τ6, (0, 1, 0)) + C(τ7, (0, 1, 1)) + C(τ8, (0, 1, 1)) = 8 + 8 + 10 + 10 = 36
(0,0,2)4 + C(τ6, (0, 1, 0)) + C(τ7, (0, 1, 1)) + C(τ8, (0, 1, 1)) = 4 + 8 + 10 + 10 = 32
(0,1,0)6 + 2 + C(τ6, (0, 2, 0)) + C(τ7, (0, 1, 1)) + C(τ8, (0, 1, 1)) = 8 + 3 + 10 + 10 = 31
(0,1,1)6 + 2 + 2 + C(τ6, (0, 2, 0)) + C(τ7, (0, 2, 2)) + C(τ8, (0, 2, 2)) = 10 + 3 + 6 + 6 = 25
(0,1,2)6 + 2 + 4 + C(τ6, (0, 2, 0)) + C(τ7, (0, 2, 2)) + C(τ8, (0, 2, 2)) = 12 + 3 + 6 + 6 = 27
(0,2,0)4 + C(τ6, (0, 2, 0)) + C(τ7, (0, 1, 1)) + C(τ8, (0, 1, 1)) = 4 + 3 + 10 + 10 = 27
(0,2,1)6 + 2 + 4 + C(τ6, (0, 2, 0)) + C(τ7, (0, 2, 2)) + C(τ8, (0, 2, 2)) = 12 + 3 + 6 + 6 = 27
(0,2,2)4 + 4 + C(τ6, (0, 2, 0)) + C(τ7, (0, 2, 2)) + C(τ8, (0, 2, 2)) = 8 + 3 + 6 + 6 = 23
REAL3(e1)
C(τ3, e3)
(0,0,0)8 + 10 + 10 = 28
(0,0,1)8 + 8 + 10 + 10 = 36
(0,0,2)4 + 8 + 10 + 10 = 32
(0,1,0)8 + 3 + 10 + 10 = 31
(0,1,1)10 + 3 + 6 + 6 = 25
(0,1,2)12 + 3 + 6 + 6 = 27
(0,2,0)4 + 3 + 10 + 10 = 27
(0,2,1)12 + 3 + 6 + 6 = 27
(0,2,2)8 + 3 + 6 + 6 = 23
Table1.2Lesétatspossiblesdun÷ud