UNIVERSIDADEFEDERALDORIOGRANDEDOSUL INSTITUTODEINFORMÁTICA CURSODECIÊNCIADACOMPUTAÇÃO TATIANACOSTAMEISTER Algoritmo de Branch & Bound Aplicado ao Problema de Virtualização de Redes Monografia apresentada como requisito parcial para a obtenção do grau de Bacharel em Ciência da Computação Orientador:Prof.Dr.LucianaBuriol Co-orientador: LeonardoF.S.Moura PortoAlegre 2015 UNIVERSIDADEFEDERALDORIOGRANDEDOSUL Reitor: Prof.CarlosAlexandreNetto Vice-Reitor: Prof.RuiVicenteOppermann Pró-ReitordeGraduação: Prof.SérgioRobertoKielingFranco DiretordoInstitutodeInformática: Prof.LuisdaCunhaLamb CoordenadordoCursodeCiênciadeComputação: Prof.CarlosArthurLangLisbôa Bibliotecária-chefedoInstitutodeInformática: BeatrizReginaBastosHaro RESUMO Oproblemadevirtualizaçãoderedes,oqualsurgiucomocompartilhamentoderecursosfísicos por redes virtuais, consiste em alocar uma ou mais redes virtuais sobre uma rede física respei- tando as capacidades de nós e links, bem como atendendo outras restrições do problema. Este problema já foi resolvido heuristicamente, através de metaheurísticas e métodos de arredonda- mento, e exatamente através do CPLEX e Branch & Price. O presente trabalho apresenta um algoritmoexatoparaoproblemademapeamentoderedesvirtuaisbaseadonatécnicadeBranch & Bound. Diversos cortes são propostos, reduzindo significativamente o espaço de busca do problema. O algoritmo proposto é comparado experimentalmente com o CPLEX e Branch & Price,considerandodiferentesclassesdegrafosedetamanhosvariados. Noscenáriostestados, oalgoritmopropostoapresentadesempenhosignificativamentesuperioraoCPLEXeBranch& Price. Palavras-chave: Virtualização de redes. Problema de mapeamento de redes virtuais. Branch &Bound. Algoritmosexatos. Branch&BoundAlgorithmAppliedtoNetworkEmbeddingProblem ABSTRACT Thenetworkvirtualizationproblem,whichwasoriginatedfromthesharingofresourcesamong several virtual networks, consists in running one or more virtual networks on top of a physical network respecting the capabilities of nodes and links, as well as meeting other constraints of theproblem. Thisproblemwasalreadysolvedheuristically,usingmetaheuristicsandrounding heuristics, and exactly by CPLEX and Branch & Price. This work presents an exact algorithm for the virtual network embedding problem based on the branch & bound method. Several cuts are proposed, reducing considerably the size of the problem search space. The presented algorithm is experimentally compared with CPLEX and Branch & Price, considering different network topologies and instance sizes. In the tested scenarios, the proposed algorithm presents significantlysuperiorperformancetoCPLEXandBranch&Price Keywords: Virtualization. Virtual Network Embedding Problem. Branch & Bound. Exact algorithms. LISTADEFIGURAS Figura2.1 ExemplodeinstânciadoPMRV.............................................................................12 Figura4.1 GrafoVirtual...........................................................................................................17 Figura5.1 InstânciadoPMRV.................................................................................................22 Figura5.2 ÁrvoredeescolhasdainstânciadaFigura5.1.......................................................22 Figura5.3 InstânciadoPMRV-Mapeamentoincompletoemcurso......................................26 Figura5.4 InstânciadoPMRVparamapeamentodearestas...................................................31 Figura6.1 InstânciadoPMRVparaaplicaçãodocorteporFaltadeTBAL(AIM1)..............34 Figura6.2 InstânciadoPMRVparaaplicaçãodocorteCustoporDistânciaMínima(CM1).37 Figura6.3 Instância do PMRV para aplicação do corte Custo por Tamanho do Caminho (CM2)...............................................................................................................................39 Figura6.4 Instância do PMRV para aplicação do corte por Infactibilidade nos Próximos Nodos(AIM2)..................................................................................................................43 Figura7.1 Exemplosdastopologiasfísicas.............................................................................45 Figura7.2 Resultadosagrupadosporno denodosvirtuais-BaixaDemandaxEsparsos.......50 Figura7.3 Resultadosagrupadosporno denodosvirtuais-BaixaDemandaxDensos.........53 Figura7.4 Resultadosagrupadosporno denodosvirtuais-BaixaDemandaxHierárquicos.56 Figura7.5 Resultadosagrupadosporno denodosvirtuais-BaixaDemandaxTransit-Stub. 59 Figura7.6 Resultadosagrupadosporno denodosvirtuais-AltaDemandaxEsparsos.........62 Figura7.7 Resultadosagrupadosporno denodosvirtuais-AltaDemandaxDensos............65 Figura7.8 Resultadosagrupadosporno denodosvirtuais-AltaDemandaxHierárquicos...68 Figura7.9 Resultadosagrupadosporno denodosvirtuais-AltaDemandaxTransit-Stub....71 Figura7.10 QualidadedassoluçõesviaB&Bporno denodosvirtuais..................................73 Figura7.11 FinalizaçãodeinstânciasdeBaixaDemandaporno denodosvirtuais................74 Figura7.12 FinalizaçãodeinstânciasdeAltaDemandaporno denodosvirtuais..................74 Figura7.13 Tempodeexecuçãoporno denodosvirtuais........................................................75 LISTADETABELAS Tabela4.1 InformaçõesdosnodosdoGrafoVirtualdaFigura4.1.........................................18 Tabela5.1 InformaçõesdosnodosvirtuaisefísicodaFigura5.3b.........................................26 Tabela5.2 Geraçãodecaminhosfísicosparaaresta(A,B)dainstânciadaFigura5.4..........31 Tabela6.1 CortesaplicadosnoalgoritmodeB&B..................................................................33 Tabela6.2 InformaçõesdosnodosfísicosdainstânciadaFigura6.1.....................................35 Tabela6.3 Informações da aplicação do corte sobre Custo por Distância Mínima na ins- tânciadaFigura6.2..........................................................................................................37 Tabela6.4 Geraçãodecaminhosfísicosparaaresta(A,B)dainstânciadaFigura6.3..........40 Tabela7.1 TiposdeGrafos.......................................................................................................47 Tabela7.2 Resultadosagrupadosporno denodosvirtuais-BaixaDemandaxEsparsos.......49 Tabela7.3 Resultadosporinstância-BaixaDemandaxEsparsos..........................................51 Tabela7.4 Resultadosagrupadosporno denodosvirtuais-BaixaDemandaxDensos.........52 Tabela7.5 Resultadosporinstância-BaixaDemandaxDensos............................................54 Tabela7.6 Resultadosagrupadosporno denodosvirtuais-BaixaDemandaxHierárquicos.55 Tabela7.7 Resultadosporinstância-BaixaDemandaxHierárquicos...................................57 Tabela7.8 Resultadosagrupadosporno denodosvirtuais-BaixaDemandaxTransit-Stub. 58 Tabela7.9 Resultadosporinstância-BaixaDemandaxTransit-Stub....................................60 Tabela7.10 Resultadosagrupadosporno denodosvirtuais-AltaDemandaxEsparsos.......61 Tabela7.11 Resultadosporinstância-AltaDemandaxEsparsos..........................................63 Tabela7.12 Resultadosagrupadosporno denodosvirtuais-AltaDemandaxDensos..........64 Tabela7.13 Resultadosporinstância-AltaDemandaxDensos.............................................66 Tabela7.14 Resultadosagrupadosporno denodosvirtuais-AltaDemandaxHierárquicos. 67 Tabela7.15 Resultadosporinstância-AltaDemandaxHierárquicos....................................69 Tabela7.16 Resultadosagrupadosporno denodosvirtuais-AltaDemandaxTransit-Stub..70 Tabela7.17 Resultadosporinstância-AltaDemandaxTransit-Stub.....................................72 LISTADEABREVIATURASESIGLAS B&B Branch&Bound B&P Branch&Price TBA TotaldeBandaAdjacente TBAL TottaldeBandaAdjacenteLivre TBAM TotaldeBandaVirtualaMapear PMRV ProblemadeMapeamentodeRedesVirtuais SUMÁRIO 1INTRODUÇÃO......................................................................................................................9 2PROBLEMADEMAPEAMENTODEREDESVIRTUAIS..........................................11 2.1 Definiçãodoproblema.....................................................................................................12 2.2 Modelo...............................................................................................................................13 3TRABALHOSRELACIONADOS.....................................................................................15 4PRÉ-PROCESSAMENTO..................................................................................................17 4.1 TotaldebandaadjacenteeTotaldebandaadjacentelivre.........................................17 4.2 Distânciamínimaentretodososnodosfísicos..............................................................18 4.3 Ordenaçãodosnodosvirtuais.........................................................................................18 4.4 ConjuntodeArestasaMapear.......................................................................................19 4.5 Totaldebandavirtualamapear....................................................................................19 4.6 Ordemdemapeamentodaredevirtual.........................................................................20 5BRANCH&BOUND..........................................................................................................21 5.1 EnumeraçãodosMapeamentos......................................................................................21 5.2 Implementação.................................................................................................................23 5.2.1 MétodoMapearNodo.....................................................................................................24 5.2.2 MétodoMapearAresta...................................................................................................28 6CORTESAPLICADOS.......................................................................................................33 6.1 CorteporFaltadeTBAL................................................................................................34 6.2 CortesobreCustoporDistânciaMínima......................................................................35 6.3 CortesobreCustoporTamanhodoCaminho..............................................................38 6.4 CortesobreCustodoTamanhodoNovoCaminhoIncompleto..................................41 6.5 CorteporInfactibilidadenosPróximosNodos.............................................................42 7RESULTADOS.....................................................................................................................45 7.1 Instânciasdeteste............................................................................................................45 7.2 ResultadosdoB&BeComparaçãocomCPLEXeB&P.............................................47 7.2.1 InstânciascomtopologiavirtualdeBaixaDemandaetopologiafísicaEsparsa............49 7.2.2 InstânciascomtopologiavirtualdeBaixaDemandaetopologiafísicaDensa..............52 7.2.3 InstânciascomtopologiavirtualdeBaixaDemandaetopologiafísicaHierárquica.....55 7.2.4 InstânciascomtopologiavirtualdeBaixaDemandaetopologiafísicaTransit-Stub....58 7.2.5 InstânciascomtopologiavirtualdeAltaDemandaetopologiafísicaEsparsa..............61 7.2.6 InstânciascomtopologiavirtualdeAltaDemandaetopologiafísicaDensa.................64 7.2.7 InstânciascomtopologiavirtualdeAltaDemandaetopologiafísicaHierárquica........67 7.2.8 InstânciascomtopologiavirtualdeAltaDemandaetopologiafísicaTransit-Stub.......70 7.2.9 ConclusãosobreosResultados.......................................................................................73 8CONCLUSÕES....................................................................................................................76 REFERÊNCIAS......................................................................................................................77 9 1INTRODUÇÃO A Internet foi difundida globalmente devido à sua simplicidade e heterogeneidade, per- mitindo que diversas aplicações e tecnologias fossem desenvolvidas sobre si, tornando a Inter- net uma das maiores infraestruturas de comunicação do mundo. No entanto, seu crescimento acelerado é acompanhado de limitações com relação a requisitos de segurança, mobilidade e qualidade de serviço. Tais limitações são ocasionadas pela arquitetura original da Internet, que nãopermitegrandesmodificaçõesnonúcleodarede,achamadaOssificaçãodaInternet. Para contornar essas limitações, diversas soluções baseadas na virtualização de redes vêmsendopropostas. Avirtualizaçãoderedespermitequemúltiplasredespossamcompartilhar os recursos de uma mesma rede física simultaneamente, tornando desnecessário modificar o núcleo da Internet. Algumas das aplicações existentes hoje que utilizam a virtualização de redes são Computação em nuvem e Redes Definidas por Software (SDN) (GUERZONI et al., 2014). Dentre os principais desafios operacionais da virtualização de redes estão a descoberta, alocação e configuração dos recuros da rede virtual (CHOWDHURY; RAHMAN; BOUTABA, 2012). O problema de mapeamento de redes virtuais (PMRV) é essencial para a virtualização de redes. O PMRV consiste em alocar recursos físicos para uma rede virtual considerando um conjunto de limitações sobre esta alocação. O mapeamento de uma rede virtual, por sua vez,consistedosnodosvirtuaisseremmapeadosparanodosfísicos,enquantooslinksvirtuais, para caminhos físicos que conectam os nodos físicos que hospedam os nodos virtuais de suas extremidades. Além de encontrar mapeamentos da rede virtual para uma rede física, o PMRV tem por objetivo selecionar o mapeamento mais eficiente para a rede virtual, considerando alguma mé- trica, tal como custo. Uma vez que as limitações de uso da rede física são variáveis, existe uma série de variações do PMRV, tanto considerando o mapeamento de múltiplas redes vir- tuais simultaneamente (HOUIDI et al., 2011) quanto o mapeamento de uma única rede vir- tual (CHOWDHURY; RAHMAN; BOUTABA, 2009). Para ambas variações, o mapeamento ótimoéclassificadocomoNP-Difícil(HOUIDIetal.,2011). Este trabalho tem por objetivo apresentar um novo algoritmo exato para solucionar o PMRV, de modo a disponibilizar o mapeamento ótimo de uma única rede virtual no menor tempo possível. O algoritmo proposto se baseia na técnica de Branch & Bound (B&B), o qual consiste de um algoritmo enumerativo de todas as soluções possíveis com aplicação de cortes, de modo a reduzir o espaço de busca e, consequentemente, o tempo de execução para 10 encontrar a solução ótima. Entretanto, os limitantes dos nodos da árvore de B&B não são obtidosporumarelaxaçãodoproblema. Oscortessãoefetuadosquandoocustomínimodeuma solução incompleta é igual ou superior ao custo da melhor solução já encontrada ou quando é detectadoquealgumdoselementosvirtuaisnãoconseguiráseralocadonaredefísica,tornando o mapeamento infactível. O algoritmo proposto é avaliado sobre uma série de instâncias de redes virtuais e físicas, assim como tem seu desempenho comparado ao do CPLEX e ao do algoritmodeBranch&Price(B&P)(MOURA,2015). Tornar a busca pelo mapeamento ótimo do PMRV mais eficiente permite que as aplica- ções que dependem da virtualização de redes possam, também, se tornar mais eficientes. Para determinaramelhoralocaçãoderecursosparaumaredevirtualsobrearedefísica,énecessária uma quantidade de tempo para esta descoberta. Este tempo, entretanto, pode ser insuficiente por razão do número de modificações que a rede virtual soferá ao longo de sua existência ou porexistirumlimiteparaoiníciodaoperaçãodaredevirtual. Reduzirotempoparasolucionar oPMRVimplicanamelhoralocaçãodosrecursosdaredevirtualsobrearedefísica. UmavisãogeraldostrabalhosrelacionadoséapresentadosnoCapítulo3. NoCapítulo2 é descrito o PMRV considerado neste trabalho, assim como o modelo de programação linear inteira. No Capítulo 4 serão detalhadas todas as informações necessárias pelo algoritmo antes de ser dado início ao processo de enumeração de todas as soluções. No Capítulo 5 é descrito o funcionamento da enumeração de todas as soluções sem a aplicação dos cortes. No Capítulo 6 sãodetalhadostodososcortesaplicadosnoalgoritmodeB&B.NoCapítulo7sãoapresentados osresultadosobtidosecomparadoscomoCPLEXeB&P.Finalmente,estetrabalhoéconcluído noCapítulo8.
Description: