This work consists in the application of an optimized breadth-first search (BFS) algorithm to select a couple of link-and-node-disjoint shortest-path between the two most remote users within an optical access network. Our results showed that while the average execution time of the original BFS algorithm was 12.23 seconds that of the optimized BFS was 10.80 seconds, which means a reduction of 11.69 percent of the average computing time. In future works we intend to apply the modified BFS algorithm to a generic optical network and evaluate its performance for different mesh size, node concentration and random link arrangement. Index Terms-Breadth-first search, Network optimization, Optical networks, Routing, Shortest-path search algorithm. I. INTRODUÇÃO A DEMANDA crescente de uso de dados, fomentada pelo maior acesso aos dispositivos móveis, pela adesão maciçà as redes sociais e pelo uso em larga escala de aplicações em tempo real, como download de filmes e jogos em rede, resultou em uma maior abrangência e complexidade das redeś opticas atuais caracterizadas por uma grande carga de tráfego [1]. Neste contexto, algoritmos computacionais têm sido a ferramenta mais eficiente tanto no projeto quanto na gestão de tráfego de dados das redes, realizando funções como a escolha da rota (routing), a definição do melhor ou menor caminho e do caminho de proteção, a escolha do melhor canal de comunicação e ainda ações de contingência e contençãoàs falhas [1] [2]. Outras iniciativas de otimização do emprego dos recursos disponíveis nas redesópticas envolvem o apri-moramento da qualidade de serviço em ações de roteamento através do emprego de algoritmos genéticos [3], a definição do nívelótimo da potência lançada na fibra para combater as não-linearidades, a dispersão do sinal e maximizar o número de usuários simultâneos [4] e também a virtualização das funções da rede de modo a potencializar o compartilhamento dos recursos da camada física [5]. Entre os algoritmos de busca mais populares estão o al-goritmo de Dijkstra [6] e o algoritmo de busca em largura (Breadth-First Search-BFS) [7]. O algoritmo Dijkstraé considerado um algoritmo "greedy", ou seja, escolhe a melhor opção a cada passo, sem considerar passos futuros em seu processo de busca do menor caminho entre dois nós da rede, sendo a métrica mais usual a distância geográfica [1]. Por sua vez, o algoritmo BFS usa como métrica o número de enlaces (hops) para retornar a melhor solução tomando como base as G. L. Andrade, Universidade Federal do Pampa, Alegrete, Rio Grande do Sul, Brasil,
[email protected]. D. H. Thomas, Universidade Federal do Pampa, Alegrete, Rio Grande do Sul, Brasil,
[email protected]. informações gerais da rede em questão, ou seja, dentre todos os caminhos possíveis busca primeiramente aqueles constituídos de umúnico hop, depois aqueles com dois hops e assim sucessivamente, fornecendo ao final o caminho com menor número de hops ou a classificação destes em ordem crescente do número de hops [1]. O algoritmo BFS, também conhecido como busca em amplitude [8],é um algoritmo fundamental da teoria dos grafos, comumente utilizado para realizar a busca dos caminhos mais curtos em grafos não ponderados, dados os nós de origem e destino [7] [9]. Recentemente este algoritmo vem sendo utilizado para solucionar problemas computacionais desafi-adores em redes Ponto-a-Ponto [10] [11] [12], ondeé utilizado para a localização de pontos para a formação da rede [12] e também para escolher a melhor rota de compartilhamento de mensagens ou arquivos entre os nós da rede [11]. O uso do BFS tambémé frequente em redes elétricas inteligentes com o objetivo de minimizar o número de saltos entre os nós da rede em malha e obter o posicionamento ideal de concentradores GPRS (General Packet Radio Service) [13] [14]. O serviço GPRSé uma extensão do GSM (Global System for Mobile Communications), com a diferença que a transferência dos dadosé através realizada através da comutação de pacotes. O GSMé o padrão celular digital pan-Europeu publicado pelo ETSI (European Telecommunications Standards Institute para transmissão de dados em telefonia móvel [15] [16]. Da mesma forma, pesquisas recentes tem explorado o uso do BFS em processadores multicore [8] [17] [18] [19]. Estes processadores possuem múltiplos núcleos de processamento para realizar diversas tarefas simultâneas (paralelas) e assim obter desem-penho superior quando comparados aos processadores de uḿ unico núcleo. Neste caso, o BFSé utilizado em aplicações paralelas, ou seja, atua entre os diversos núcleos do proces-sador para reduzir o tempo de busca. Além disso, o BFSé empregado para reduzir o tempo de acesso em processamentos computacionais que empregam memória distribuída [20]. O algoritmo BFS também pode ser utilizado em jogos digitais, como o Maze Runner [21] e o Bomberman [22]. Ambos são jogos baseados em labirintos em que o objetivó e vencer o adversário através do emprego do menor caminho para a saída. Algoritmos de busca apresentam aplicação crescente para realizar o roteamento em redesópticas, ou seja, para encontrar o menor caminho (shortest-path) entre usuários destas redes [2], sendo que o menor caminho será a soma das métricas dos enlaces que compõem o caminho. As métricas são as mais variadas possíveis, sendo bastante comuns a distância geográfica, o número de hops e a probabilidade de disponibil-Authorized licensed use limited to: MANIPAL INSTITUTE OF TECHNOLOGY. Downloaded on January 05,2021 at 06:02:50 UTC from IEEE Xplore. Restrictions apply.