KR20190132223A - 네트워크 장애 원인 분석 장치 및 방법 - Google Patents

네트워크 장애 원인 분석 장치 및 방법 Download PDF

Info

Publication number
KR20190132223A
KR20190132223A KR1020190054987A KR20190054987A KR20190132223A KR 20190132223 A KR20190132223 A KR 20190132223A KR 1020190054987 A KR1020190054987 A KR 1020190054987A KR 20190054987 A KR20190054987 A KR 20190054987A KR 20190132223 A KR20190132223 A KR 20190132223A
Authority
KR
South Korea
Prior art keywords
failure
cause
network
tensor
neural network
Prior art date
Application number
KR1020190054987A
Other languages
English (en)
Other versions
KR102107689B1 (ko
Inventor
김보섭
권성용
이동준
이종필
정경훈
채윤주
최아솔
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to PCT/KR2019/005711 priority Critical patent/WO2019221461A1/ko
Publication of KR20190132223A publication Critical patent/KR20190132223A/ko
Application granted granted Critical
Publication of KR102107689B1 publication Critical patent/KR102107689B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

일 실시예에 따른, 적어도 하나의 장비들로 구성되는 네트워크의 장애를 분석하는 장치는, 장애 이벤트들의 장애 원인 및 경보들을 수집하는 수집부; 상기 장애 원인 및 상기 경보들의 관계를 제1신경망을 통해 학습하고, 각 장애 이벤트마다 장비들의 장애 원인별 확률 벡터를 생성하는 벡터 생성부; 상기 장비들의 장애 원인별 확률 벡터에 기초하여 각 장애 이벤트의 장애 원인별 네트워크 텐서를 생성하는 텐서 생성부; 및 상기 각 장애 이벤트의 장애 원인과, 상기 각 장애 이벤트의 장애 원인별 네트워크 텐서를 학습 데이터로 이용하여 상기 장애 원인과 상기 네트워크 텐서의 관계를 제2신경망을 통해 학습하는 장애 원인 분석부;를 포함한다.

Description

네트워크 장애 원인 분석 장치 및 방법{Apparatus and method for analyzing cause of network failure}
본 발명은 네트워크 장애 원인을 분석하는 기술로서, 보다 구체적으로 네트워크 장애의 근본 원인을 분석하는 장치 및 방법에 관한 것이다.
네트워크 운용 관리의 업무 영역에서 장애를 인지하여 장애의 원인을 파악하고 장애 원인을 처리하는 업무는 빠른 처리를 요하는 업무이다. 이를 위해서는 한 사람이 수많은 네트워크 장비를 관리할 필요가 있으며 이를 위해 NMS(Network Management System)를 개발하여 활용하고는 있지만 관리자가 항상 시스템 앞에서 모니터링을 하고 있어야 하는 단점이 있다.
관리자가 네트워크 장비에서 발생된 장애를 인지하여도 장애를 일으킨 근본 원인을 파악하는 문제는 NMS에서 생성되는 네트워크 장비별로 발생되는 경보뿐만 아니라 그 네트워크 장비들의 연결 관계에 따른 망 토폴로지를 고려한 종합적 판단이 필요하다. 때문에, 숙련된 관리자도 단시간 내에 장애의 원인을 파악하고 장애가 발생한 구간 또는 장비까지 분석하는 것은 어려운 문제이다. 예를 들면, A 장비에서 장애 경보가 발생하였을 때, 관리자가 장애 발생 사실을 인지하지만, 그 발생된 장애가 A 장비의 문제인지, A 장비와 연결된 다른 장비의 문제인지 또는, A 장비와 다른 장비 사이의 연결 회선의 문제인지를 파악하는데 시간과 비용이 든다.
위와 같은 문제점을 해결하기 위해 네트워크 장비의 성능과 관련된 지표들을 활용하여 관리자가 설정한 핵심 성과 지표(KPI : Key Performance Indicator)에 따라 자동화된 분석 결과를 제공하는 기술이 한국공개특허 제10-2017-0077204호에서 제안되고 있다. 그러나 이 한국공개특허는 장애의 근본 원인에 대한 직접적인 정보를 제공하지는 않으며 또한 장애가 발생한 위치 또는 구간에 대한 분석 결과를 제공하지 않는다. 또한, 제조사마다 서로 다른 네트워크 장비 관리 시스템(EMS : Element Management System)을 사용하여 네트워크 장비의 성능 정보 등을 수집하고 관리하기 때문에, 실제 운용 환경에서 통합적으로 네트워크의 성능 정보를 활용하기에는 한계가 있다.
한국공개특허 2017-0077204(2017년07월05일)
본 발명은 네트워크 장비들에서 발생되는 경보들과 네트워크의 토폴로지 정보를 이용하여 네트워크 장애의 근본 원인을 학습하고 분석하는 장치 및 방법을 제공하는데 목적이 있다.
일 실시예에 따른, 적어도 하나의 장비들로 구성되는 네트워크의 장애를 분석하는 장치는, 장애 이벤트들의 장애 원인 및 경보들을 수집하는 수집부; 상기 장애 원인 및 상기 경보들의 관계를 제1신경망을 통해 학습하고, 각 장애 이벤트마다 장비들의 장애 원인별 확률 벡터를 생성하는 벡터 생성부; 상기 장비들의 장애 원인별 확률 벡터에 기초하여 각 장애 이벤트의 장애 원인별 네트워크 텐서를 생성하는 텐서 생성부; 및 상기 각 장애 이벤트의 장애 원인과, 상기 각 장애 이벤트의 장애 원인별 네트워크 텐서를 학습 데이터로 이용하여 상기 장애 원인과 상기 네트워크 텐서의 관계를 제2신경망을 통해 학습하는 장애 원인 분석부;를 포함한다.
상기 장치는, 상기 각 경보들을 문자열로 변환하는 전처리부를 더 포함하고, 상기 벡터 생성부는, 상기 장애 원인 및 상기 경보들로부터 변환된 문자열을 학습 데이터로 이용하여 상기 장애 원인 및 상기 경보들의 관계를 학습할 수 있다.
상기 벡터 생성부는, 상기 각 경보의 장애 원인별 확률 벡터를 생성하고, 동일한 장비에서 발생한 경보들의 장애 원인별 확률 벡터를 각 장애 원인마다 평균함으로써, 상기 장애 원인별 확률 벡터를 생성할 수 있다.
상기 제1신경망은, RNN(Recurrent Neural Network)이고, 상기 벡터 생성부는, 상기 문자열을 구성하는 문자들을 순서대로 상기 RNN에 입력하여 상기 각 경보의 장애 원인별 확률 벡터를 생성할 수 있다.
상기 텐서 생성부는, 상기 장비들의 장애 원인별 확률 벡터와, 네트워크 토폴로지를 표현하는 행렬을 이용하여, 상기 각 장애 이벤트의 장애 원인별 네트워크 텐서를 생성할 수 있다.
상기 장애 원인 분석부는, 상기 제2신경망으로서 Attention-based 2D 컨벌루션 신경망(Convolutional Neural Network)을 이용하여 상기 장애 원인과 상기 네트워크 텐서의 관계를 학습할 수 있다.
상기 벡터 생성부는, 상기 제1신경망을 구성하는 각 노드를 연결하는 가중치를 제1가중치 저장부에 저장하고, 상기 제1신경망의 복원시 상기 제1가중치 저장부에 저장된 가중치를 이용하며, 상기 장애 원인 분석부는, 상기 제2신경망을 구성하는 각 노드를 연결하는 가중치를 제2가중치 저장부에 저장하고, 상기 제2신경망의 복원시 상기 제2가중치 저장부에 저장된 가중치를 이용할 수 있다.
운영 모드에서, 상기 수집부는, 현재 발생한 장애 이벤트의 경보들을 수집하고, 상기 벡터 생성부는, 학습된 상기 제1신경망을 통해 상기 현재 발생한 장애 이벤트에 대한 장비들의 장애 원인별 확률 벡터를 생성하며, 상기 텐서 생성부는, 상기 현재 발생한 장애 이벤트에 대한 장비들의 장애 원인별 확률 벡터에 기초하여 상기 현재 발생한 장애 이벤트에 대한 장애 원인별 네트워크 텐서를 생성하고, 상기 장애 원인 분석부는, 학습된 상기 제2신경망을 통해 상기 현재 발생한 장애 이벤트에 대한 장애 원인별 네트워크 텐서에 기초하여 장애 원인을 판단할 수 있다.
상기 장치는, 네트워크 토폴로지를 표현하는 행렬과, 상기 제2신경망에서 장애 원인을 판단하는 과정에서 산출되는 중간 산출물인 장애 원인별 특징 맵 및 가중치에 기초하여, 장애 위치에 관한 네트워크 텐서를 생성하고 이에 기초하여 장애 위치를 추정하는 장애 위치 분석부를 더 포함할 수 있다.
상기 장애 위치 분석부는, 관리자로부터 입력된 추정 개수 파라미터에 기초하여, 상기 장애 위치에 관한 네트워크 텐서로부터 장애 위치 후보군을 선택하여 출력할 수 있다.
다른 실시예에 따른, 네트워크 장애 분석 장치에서, 적어도 하나의 장비들로 구성되는 네트워크의 장애를 분석하는 방법은, 장애 이벤트들의 장애 원인 및 경보들을 수집하는 단계; 상기 장애 원인 및 상기 경보들의 관계를 제1신경망을 통해 학습하고, 각 장애 이벤트마다 장비들의 장애 원인별 확률 벡터를 생성하는 단계; 상기 장비들의 장애 원인별 확률 벡터에 기초하여 각 장애 이벤트의 장애 원인별 네트워크 텐서를 생성하는 단계; 및 상기 각 장애 이벤트의 장애 원인과, 상기 각 장애 이벤트의 장애 원인별 네트워크 텐서를 학습 데이터로 이용하여 상기 장애 원인과 상기 네트워크 텐서의 관계를 제2신경망을 통해 학습하는 단계를 포함한다.
상기 방법은, 상기 수집하는 단계 이후에, 상기 각 경보들을 문자열로 변환하는 단계를 더 포함하고, 상기 장애 원인별 확률 벡터를 생성하는 단계는, 상기 장애 원인 및 상기 경보들로부터 변환된 문자열을 학습 데이터로 이용하여 상기 장애 원인 및 상기 경보들의 관계를 학습할 수 있다.
상기 장애 원인별 확률 벡터를 생성하는 단계는, 상기 각 경보의 장애 원인별 확률 벡터를 생성하고, 동일한 장비에서 발생한 경보들의 장애 원인별 확률 벡터를 각 장애 원인마다 평균함으로써, 상기 장애 원인별 확률 벡터를 생성할 수 있다.
상기 제1신경망은, RNN(Recurrent Neural Network)이고, 상기 장애 원인별 확률 벡터를 생성하는 단계는, 상기 문자열을 구성하는 문자들을 순서대로 상기 RNN에 입력하여 상기 각 경보의 장애 원인별 확률 벡터를 생성할 수 있다.
상기 장애 원인별 네트워크 텐서를 생성하는 단계는, 상기 장비들의 장애 원인별 확률 벡터와, 네트워크 토폴로지를 표현하는 행렬을 이용하여, 상기 각 장애 이벤트의 장애 원인별 네트워크 텐서를 생성할 수 있다.
상기 제2신경망을 통해 학습하는 단계는, 상기 제2신경망으로서 Attention-based 2D 컨벌루션 신경망(Convolutional Neural Network)을 이용하여 상기 장애 원인과 상기 네트워크 텐서의 관계를 학습할 수 있다.
상기 방법은, 상기 제1신경망을 구성하는 각 노드를 연결하는 가중치를 제1가중치 저장부에 저장하는 단계; 상기 제2신경망을 구성하는 각 노드를 연결하는 가중치를 제2가중치 저장부에 저장하는 단계; 상기 제1가중치 저장부에 저장된 가중치를 이용하여 상기 제1신경망을 복원하는 단계; 및 상기 제2가중치 저장부에 저장된 가중치를 이용하여 상기 제2신경망을 복원하는 단계를 더 포함할 수 있다.
상기 방법은, 운영 모드에서, 현재 발생한 장애 이벤트의 경보들을 수집하는 단계; 학습된 상기 제1신경망을 통해 상기 현재 발생한 장애 이벤트에 대한 장비들의 장애 원인별 확률 벡터를 생성하는 단계; 상기 현재 발생한 장애 이벤트에 대한 장비들의 장애 원인별 확률 벡터에 기초하여 상기 현재 발생한 장애 이벤트에 대한 장애 원인별 네트워크 텐서를 생성하는 단계; 및 학습된 상기 제2신경망을 통해 상기 현재 발생한 장애 이벤트에 대한 장애 원인별 네트워크 텐서에 기초하여 장애 원인을 판단하는 단계를 더 포함할 수 있다.
상기 방법은, 네트워크 토폴로지를 표현하는 행렬과, 상기 제2신경망에서 장애 원인을 판단하는 과정에서 산출되는 중간 산출물인 장애 원인별 특징 맵 및 가중치에 기초하여, 장애 위치에 관한 네트워크 텐서를 생성하고 이에 기초하여 장애 위치를 추정하는 단계를 더 포함할 수 있다.
상기 장애 위치를 추정하는 단계는, 관리자로부터 입력된 추정 개수 파라미터에 기초하여, 상기 장애 위치에 관한 네트워크 텐서로부터 장애 위치 후보군을 선택하여 출력하는 단계를 포함할 수 있다.
일 실시예에 따르면, 적어도 하나 이상의 장비들로 구성되는 네트워크에서 장애가 발생하였을 때, 장애의 근본 원인을 파악하고 또한 장애가 발생한 위치(장비들 또는 장비 사이의 구간)를 빠른 시간 내에 확인할 수 있어, 네트워크 장애에 신속하게 대응할 수 있다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 후술한 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되지 않아야 한다.
도 1은 일 실시예에 따른 네트워크 장애 분석 장치의 개략적 구성도이다.
도 2는 일 실시예에 따른 경보를 문자열로 변환하는 과정을 나타낸 도면이다.
도 3은 일 실시예에 따른 각 경보의 장애 원인별 확률 벡터를 생성하는 RNN의 일부를 나타낸 도면이다.
도 4는 일 실시예에 따른 장애 원인별 네트워크 텐서를 생성하는 과정을 설명하는 도면이다.
도 5는 일 실시예에 따른 네트워크 텐서와 장애 원인의 관계를 학습하는 과정을 나타낸 도면이다.
도 6은 일 실시예에 따른 각 장애 원인별 중간 산출물인 특징 맵을 나타낸 도면이다.
도 7은 일 실시예에 따른 장애 위치를 추정하는 방법을 설명하는 도면이다.
도 8은 일 실시예에 따른 장애 위치의 추정 결과를 나타낸 도면이다.
도 9는 일 실시예에 따른 네트워크 장애 분석 장치의 학습 동작을 설명하는 흐름도이다.
도 10은 일 실시예에 따른 네트워크 장애 분석 장치의 운용 동작을 설명하는 흐름도이다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.
도 1은 일 실시예에 따른 네트워크 장애 분석 장치의 개략적 구성도이다. 네트워크 장애 분석 장치(100)는, 메모리, 메모리 제어기, 하나 이상의 프로세서(CPU), 주변 인터페이스, 입출력(I/O) 서브시스템, 디스플레이 장치, 입력 장치 및 통신 회로를 포함할 수 있다. 메모리는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치와 같은 불휘발성 메모리, 또는 다른 불휘발성 반도체 메모리 장치를 포함할 수 있다. 프로세서 및 주변 인터페이스와 같은 다른 구성요소에 의한 메모리로의 액세스는 메모리 제어기에 의하여 제어될 수 있다. 메모리는 각종 정보와 프로그램 명령어를 저장할 수 있고, 프로그램은 프로세서에 의해 실행된다. 주변 인터페이스는 입출력 주변 장치를 프로세서 및 메모리와 연결한다. 하나 이상의 프로세서는 다양한 소프트웨어 프로그램 및/또는 메모리에 저장되어 있는 명령어 세트를 실행하여 시스템을 여러 기능을 수행하고 데이터를 처리한다. I/O 서브시스템은 디스플레이 장치, 입력 장치와 같은 입출력 주변장치와 주변 인터페이스 사이에 인터페이스를 제공한다. 통신 회로는 외부 포트를 통한 통신 또는 RF 신호에 의한 통신을 수행한다. 통신 회로는 전기 신호를 RF 신호로 또는 그 반대로 변환하며 이 RF 신호를 통하여 통신 네트워크, 다른 이동형 게이트웨이 장치 및 통신 장치와 통신할 수 있다. 도 1에 도시된 바와 같이, 네트워크 장애 분석 장치(100)는, 텐서 생성 엔진(110) 및 장애 분석 엔진(130)을 포함하고, 이들은 프로그램으로 구현되어 메모리에 저장되어 프로세서에 의해 실행될 수 있고, 또는 소프트웨어 및 하드웨어의 조합으로 구현되어 동작을 수행할 수 있다.
도 1을 참조하면, 일 실시예에 따른 네트워크 장애 분석 장치(100)의 텐서 생성 엔진(110)은, 수집부(111), 전처리부(112), 벡터 생성부(113), 가중치 저장부(114) 및 텐서 생성부(115)를 포함한다. 네트워크 장애 분석 장치(100)의 텐서 생성 엔진(110)은 학습 모드와 운용 모드로 동작한다. 학습 모드에서 텐서 생성 엔진(110)은 과거에 발생하여 이미 알고 있는 네트워크의 장애 원인들과 그로부터 발생한 경보들을 이용하여 장애 원인과 경보들의 인과 관계를 학습하고 장애 분석 엔진(130)의 학습을 위한 장애 원인별 네트워크 텐서를 생성한다. 운용 모드에서 텐서 생성 엔진(110)은 현재 네트워크에서 발생하는 경보들을 이용하여 장애 분석 엔진(130)에서 현재 장애 원인을 분석하기 위한 네트워크 텐서를 생성한다.
수집부(111)는, 학습 모드에서, 과거의 네트워크 장애 이벤트들의 장애 원인 및 각 장비의 경보들을 수집한다. 여기서 하나의 장애 이벤트는 특정 장애 원인에 따라 네트워크에서 발생한 하나의 장애 상황을 의미하고, 경보는 장애를 알리는 메시지이다. 장애 이벤트를 발생시키는 장애 원인은 다양하고, 하나의 장애 이벤트 발생시 네트워크 내의 적어도 하나 이상의 장비들에서 동시에 또는 순차적으로 경보들이 발생할 수 있다. 따라서 학습을 위한 하나의 장애 이벤트는 장애 원인 및 하나 또는 그 이상의 장비의 하나 또는 그 이상의 경보를 포함한다.
학습 모드에서 수집부(111)가 수집하는 장애 이벤트별 장애 원인 및 경보들은 과거의 데이터이다. 바람직하게, 수집부(111)는 과거의 장애 이벤트별 장애 원인 및 경보들을 NMS(Network Management System)로부터 수집할 수 있다. NMS는 네트워크 장비들에서 발생된 각종 경보들을 수집하여 네트워크 장비들을 관리하는 시스템이다. 수집부(111)는 장애 이벤트별로 경보들의 모음을 수집하는 데 있어서 각 장애 이벤트별로 소정의 단위 시간 동안의 경보들만을 수집할 수 있다. 예를 들어, 특정 장애 이벤트에 관하여 최초 경보부터 5분 동안 발생한 경보들을 해당 특정 장애 이벤트에 대한 경보들의 모음으로서 수집한다. 장애 이벤트 발생시에, 짧은 시간 안에 동시 다발적으로 많은 경보들이 발생하고, 수집 시간을 길게 할 경우 다른 장애 이벤트에 따른 경보들이 포함될 수 있으므로, 최초 경보로부터 비교적 짧은 시간 동안의 경보들만을 수집한다.
한편, 운용 모드에서, 수집부(111)는 현재 발생한 장애 이벤트에 대한 경보들을 수집한다. 학습 모드에서와 마찬가지로, 수집부(111)는, 상기 NMS로부터 경보들을 수집할 수 있고, 장애 이벤트 발생에 따른 최초 경보부터 소정 단위 시간 동안의 경보들만 수집할 수 있다. 학습 모드와 달리 운용 모드에서는 장애 원인은 수집되지 않는다. 운용 모드에서 장애 원인은 분석해야 할 목표이고 현재 알 수 없기 때문이다.
전처리부(112)는 수집부(111)에서 수집된 각 경보를 신경망에서 처리되기 위한 문자열로 변환하는 전처리(preprocessing)를 수행한다. 전처리부(112)는 수집부(111)에 의해 수집된 각 경보에서 키워드를 추출하여 각 경보에 대한 가변 길이의 문자열로 변경한다. 도 2는 일 실시예에 따른 경보를 문자열로 변환하는 과정을 나타낸 도면이다. 도 2에는 장애 원인 및 3개의 경보들을 나타낸다. 그 3개의 경보들은 하나의 장애 이벤트에 속하는 경보들이다. 장애 원인은 "Alam_Info" 열에 "LinkCut"으로 기재되어 있다. "LinkCut"은 회선 절단을 의미한다. 경보에 포함되는 일부 열들을 살펴보면, "equip_type"은 해당 경보가 발생한 장비의 종류를 나타내고, "unit_type"은 경보가 발생한 장비 내에서 경보와 직접적으로 관련되어 있는 유닛의 종류를 나타내며, "sig_type"은 장애 관련 신호의 종류를 나타낸다. 경보에 포함되는 정보들은 반드시 여기에 제한되는 것은 아니다. 도 2를 참조하면, 전처리부(112)는 첫 번째 경보(200)에서 키워드를 추출하여 문자열(210)로 변경한다. 전처리부(112)는 이와 같은 방식으로 각 경보를 문자열로 변경한다. 각 경보마다 내용이 상이하고, 네트워크 장비의 제조사별로 동일 경보라 하더라도 내용이 상이할 수 있으므로, 각 경보로부터 변경되는 각 문자열은 서로 길이가 다를 수 있다.
벡터 생성부(113)는, 학습 모드에서, 딥 러닝에 의해 경보 단위로 장애 원인과 경보의 관계를 학습하고, 각 경보의 장애 원인별 확률 벡터를 생성한 후, 그 경보들의 장애 원인별 확률 벡터를 이용하여, 각 장애 이벤트별로, 각 장비의 장애 원인별 확률 벡터를 생성한다. 이하에서, 경보들의 장애 원인별 확률 벡터를 생성하는 방법과, 각 장애 이벤트별로 각 장비의 장애 원인별 확률 벡터를 생성하는 방법을 구분하여 설명한다.
경보들의 장애 원인별 확률 벡터
벡터 생성부(113)는, 이미 알고 있는 각 경보별 장애 원인(즉, 레이블(lable))과, 상기 전처리부(112)에서 출력되는 각 경보의 문자열을 딥 러닝에 의해 학습함으로써, 장애 원인과 경보의 관계를 학습한다. 딥 러닝을 위해서는 학습 데이터의 쌍이 필요한데, 벡터 생성부(113)는 학습 데이터의 쌍으로서 문자열과 장애 원인의 쌍을 이용하여 학습을 한다. 벡터 생성부(113)는, 학습 결과에 기초하여, 각 경보마다 장애 원인별 확률 벡터를 생성한다.
바람직하게 벡터 생성부(113)는 GRU(Gated Recurrent Unit)를 활용한 RNN(Recurrent Neural Network, 순환 신경망)을 이용하여 장애 원인과 경보의 인과 관계를 학습하고, 또한 각 경보의 장애 원인별 확률 벡터를 생성할 수 있다. 딥 러닝을 위한 신경망(Neural Network)은 입력 계층과 히든 계층 그리고 출력 계층으로 구성되고 각 계층에는 적어도 하나의 노드를 포함한다. 일반적인 신경망은 각 계층의 파라미터들이 독립적이지만, RNN은 각 계층마다 파라미터들을 공유한다. 벡터 생성부(113)는, 장애 원인과, 경보들로부터 생성된 시퀀스 데이터인 문자열을 학습한 후, 학습된 RNN의 노드들을 구성하는 셀인 GRU(Gated Recurrent Unit)와 Softmax Classfier를 통해 각 경보마다 장애 원인별 확률 벡터를 생성한다.
도 3은 일 실시예에 따른 각 경보의 장애 원인별 확률 벡터를 생성하는 RNN의 일부를 나타낸 도면이다. 도 3을 참조하면, 전처리부(112)에서 출력되는 어느 한 경보로부터 만들어진 시퀀스 데이터인 문자열(210)은, 각 문자들이 순서대로 RNN을 구성하는 셀인 GRU들로 입력되고, Softmax Classfier를 통해 해당 경보에 대한 장애 원인별 확률 벡터(300)가 출력된다. 도 3에서, 문자열(210)이 i(i>=1) 번째 경보로부터 만들어진 것이라면, 출력되는 확률 벡터 (Pi1, Pi2,..., Pic)는, 총 c(c>=1)개의 서로 다른 장애 원인 각각이 해당 i 번째 경보를 발생시킬 확률들의 집합을 의미한다.
학습 데이터는 다음 (예 1)과 같다고 가정하고 학습 과정 및 각 경보의 장애 원인별 확률 벡터를 생성하는 과정을 설명한다.
(예 1)
장애 이벤트 A의 경보의 모음(set)=[a, b, c], 레이블=LinkCut,
장애 이벤트 B의 경보의 모음(set)=[a, d, e], 레이블=Unit Fail,
장애 이벤트 C의 경보의 모음(set)=[a, d, f, g], 레이블=Power.
상기 학습 데이터를 설명하면 다음과 같다. 장애 이벤트 A가 발생하였을 때, 3개의 경보 a, b, c가 발생하였고, 장애 원인은 LinkCut이다. 장애 이벤트 B가 발생하였을 때, 3개의 경보 a, d, e가 발생하였고, 장애 원인은 Unit Fail이다. 장애 이벤트 C가 발생하였을 때, 4개의 경보 a, d, f, g가 발생하였고, 장애 원인은 Power이다. 따라서, 위 학습 데이터에서 장애 이벤트는 3개이지만, 경보는 총 10개이다. 따라서, 딥 러닝을 위한 학습 데이터의 쌍은 총 10개이다. 각 쌍은 (a, LinkCut), (b, LinkCut), (c, LinkCut), (a, Unit Fail) (d, Unit Fail), (e, Unit Fail), (a, Power), (d, Power), (f, Power) 및 (g, Power)이다.
전처리부(112)는 상기 총 10개의 경보 각각을 문자열로 변경하고, 벡터 생성부(113)는 총 10개의 학습 데이터의 쌍을 RNN을 이용하여 학습한다. 또한, 벡터 생성부(113)는 학습된 RNN을 통해 상기 10개의 경보 각각에 대한 장애 원인별 확률 벡터를 생성한다. 즉, 장애 원인의 종류는 총 3개(LinkCut, Unit Fail, Power)이므로, 각 경보마다 그 3개의 장애 원인 각각이 해당 경보를 발생시킬 확률들의 집합을 생성한다. 예를 들어, 경보 a가 발생하였을 때, 그 경보 a가 장애 원인 LinkCut로 인해 발생할 확률, 그리고 장애 원인 Unit Fail로 인해 발생할 확률, 장애 원인 Power로 인해 발생할 확률을 생성한다. 그 결과는 [PaLinkCut, PaUnit Fail, PaPower]이다. 경보 b, c, d, e, f, g 각각에 대해서도 장애 원인별 확률의 집합인 확률 벡터를 생성한다.
각 장애 이벤트별로 각 장비의 장애 원인별 확률 벡터 생성
벡터 생성부(113)는, 특정 장애 이벤트에 대한 각 경보의 장애 원인별 확률 벡터로부터 그 특정 장애 이벤트에 대한 각 장비의 장애 원인별 확률 벡터를 생성하여 텐서 생성부(115)로 출력한다. 즉, 동일한 장비에서 발생한 경보들의 장애 원인별 확률 벡터를 각 장애 원인마다 평균함으로써, 특정 장애 이벤트에 대한 각 장비의 장애 원인별 확률 벡터를 생성한다. 상기 (예 1)을 참조하여, 장애 이벤트 A에서 경보 a와 b는 장비 #1에서 발생한 경보이고, 경보 a의 장애 원인별 확률 벡터는 [PaLinkCut, PaUnit Fail, PaPower]이며, 경보 b의 장애 원인별 확률 벡터는 [PbLinkCut, PbUnit Fail, PbPower]일 때, 장애 이벤트 A에 대한 장비 #1의 장애 원인별 확률 벡터는 [(PaLinkCut + PbLinkCut)/2, (PaUnit Fail + PbUnit Fail)/2, (PaPower + PbPower)/2]이다. 이와 같이 장애 이벤트 A에 대해 각 장비의 장애 원인별 확률 벡터가 계산된다. 이를 일반화하면 다음과 같다.
특정 장애 이벤트와 관련하여 n(≥1)번째 네트워크 장비의 장애 원인별 확률 벡터는 Pn=(Pn1, Pn2,..., Pnc)이다. 여기서 c(≥1)는 장애 원인이다. 그리고 이러한 네트워크 장비들의 장애 원인별 확률 벡터의 집합(행렬)은 다음과 같이 표현된다.
Figure pat00001
벡터 생성부(113)는, 상기 RNN을 학습하면서 생성된 가중치들을 가중치 저장부(114)에 저장한다. 신경망의 각 계층의 노드들은 입력 데이터에 함수를 적용하여 출력 데이터를 생성하고, 신경망의 학습은 각 노드를 연결하는 가중치를 알아내는 것이다. 벡터 생성부(113)는 RNN을 학습하면서 생성된 가중치들을 가중치 저장부(114)에 저장한다. 벡터 생성부(113)의 학습 모델을 고도화할 때 문제가 발생할 경우 벡터 생성부(113)는, 가중치 저장부(114)에 저장된 가중치들을 이용하여 기존의 학습 모델을 복원한다.
한편, 벡터 생성부(113)는, 운용 모드에서, 상기 RNN을 이용하여 상기 전처리부(112)에서 출력되는 현재 발생한 각 경보의 문자열로부터 장애 원인별 확률 벡터를 생성한 후, 그 경보들의 장애 원인별 확률 벡터를 이용하여, 각 장비의 장애 원인별 확률 벡터를 생성하여 텐서 생성부(115)로 출력한다.
텐서 생성부(115)는, 학습 모드에서, 각 장애 이벤트마다 장애 원인별 네트워크 텐서를 생성한다. 예를 들어 네트워크에서 발생할 수 있는 장애 원인의 개수가 5개라고 하면, 텐서 생성부(115)는 각 장애 이벤트마다 5개의 네트워크 텐서를 생성한다. 장애 원인별 네트워크 텐서는 네트워크 장비들에서 발생한 경보들이 각 장애 원인에 의해 실제 발생하는 경보들과 얼마나 유사한지를 네트워크 토폴로지를 이용하여 표현한 것이다. 보다 구체적으로 설명하면, 텐서 생성부(115)는, 네트워크 토폴로지에 관한 인접 행렬과, 상기 네트워크 장비들의 장애 원인별 확률 벡터의 행렬을 이용하여 다음 수학식1과 같이 장애 원인별 네트워크 텐서를 생성한다. 앞서 설명한 바와 같이, 장애 원인별 네트워크 텐서는, 장애 이벤트마다 생성된다.
(수학식1)
Figure pat00002
여기서, A는 인접 행렬로서 네트워크 내에서의 장비 간의 연결 관계, 즉 네트워크 토폴로지를 정의한다. P.1은 상기 네트워크 장비들의 장애 원인별 확률 벡터의 행렬의 첫 번째 열로서, 제 1 장애 원인의 확률들의 열 벡터이고, P.c는 상기 네트워크 장비들의 장애 원인별 확률 벡터의 행렬의 c 번째 열로서, 제 c 장애 원인의 확률들의 열 벡터이다. T는 벡터의 열과 행이 치환된 전치 벡터를 의미한다. 인접 행렬 A를 구성하는 원소(element) Aij는 i번째 장비와 j번째 장비가 연결되면 '1', 연결되지 않으면 '0'으로 표현된다. 인접 행렬 A는 원소 값이 1인 장비들 사이의 확률 값만 남기고 나머지 확률 값들을 제거하는 역할을 함으로써, 네트워크 텐서가 네트워크 토폴로지에서 장애 발생의 확률을 정의하도록 한다.
도 4는 일 실시예에 따른 장애 원인별 네트워크 텐서를 생성하는 과정을 설명하는 도면이다. 도 4를 참조한 실시예는, 네트워크 내에 특정 장애 이벤트 발생시에 장비 1, 2, 3에서 경보가 발생하고 장애 원인은 2가지인 것을 가정한다. 따라서, 도 4를 참조하면, 벡터 생성부(113)는, 특정 장애 이벤트 발생시, 장비 1에서 발생하는 경보들의 장애 원인별 확률 벡터를 각 장애 원인마다 평균하여 장비 1의 장애 원인별 확률 벡터(P11 P12)를 생성하고, 장비 2에서 발생하는 경보들의 장애 원인별 확률 벡터를 각 장애 원인마다 평균하여 장비 2의 장애 원인별 확률 벡터(P21 P22)를 생성하며, 장비 3에서 발생하는 경보들의 장애 원인별 확률 벡터를 각 장애 원인마다 평균하여 장비 3의 장애 원인별 확률 벡터(P31 P32)를 생성한다. 따라서, 벡터 생성부(113)에서 네트워크 장비들의 장애 원인별 확률 벡터의 집합(행렬)(410)이 출력된다.
도 4를 참조하면, 텐서 생성부(115)는, 네트워크 토폴로지에 관한 인접 행렬 A(420)와 상기 네트워크 장비들의 장애 원인별 확률 벡터의 행렬(410)을 이용하여 장애 원인별 네트워크 텐서(431, 432)를 생성한다. 도 4에서 네트워크 텐서(431)는 제 1 장애 원인의 네트워크 텐서이고, 네트워크 텐서(432)는 제 2 장애 원인의 네트워크 텐서이다. 도 4에 도시된 인접 행렬 A(420)를 구성하는 원소 중 Aii(i=1, 2, 3)의 값은 장비 자신에 해당되어 모두 '1'이고, 제 1 장비와 제 2 장비가 연결되어 A12와 A21의 값은 '1'이며, 제 1 장비와 제 3 장비 그리고 제 2 장비와 제 3 장비는 서로 연결되지 않아 나머지 원소는 모두 '0'이다. 텐서 생성부(115)는, 장애 원인별로, 장애 원인의 확률들의 열 벡터(411)와 그 열 벡터(411)의 전치 벡터 그리고 인접 행렬 A(400)를 곱하기 연산하여 네트워크 텐서(410, 420)를 생성한다. 여기서, 열 벡터(411) 및 그 열 벡터(411)의 전치 벡터는 벡터 곱으로 연산되고 그 벡터 곱의 결과물에 인접 행렬(400)이 하다마드 곱(hadamard product)으로 연산되어 네트워크 텐서(410, 420)가 생성된다. 각 장애 원인의 네트워크 텐서(410, 420)는, 특정 장애 이벤트가 각 장애 원인에 의해 발생되었을 확률을 네트워크 토폴로지를 반영하여 표시한 것으로 이해할 수 있다.
이와 같이 텐서 생성 엔진(110)에서 생성된 장애 이벤트들의 장애 원인별 네트워크 텐서는, 이미 알고 있는 각 장애 이벤트의 장애 원인(즉, 레이블(lable))과 함께 학습 데이터로서, 장애 분석 엔진(130)에 입력되어, 장애 분석 엔진(130)이 네트워크 텐서와 장애 원인과의 관계를 학습하는 데 이용된다.
한편, 텐서 생성부(115)는, 운용 모드에서, 현재 발생한 장애 이벤트의 장애 원인별 네트워크 텐서를 생성하여 장애 분석 엔진(130)으로 출력한다. 현재 발생한 장애 이벤트의 장애 원인별 네트워크 텐서는, 앞서 학습 모드에서 장애 이벤트별로 장애 원인별 네트워크 텐서를 생성하는 방식과 동일한 방식으로 생성된다.
장애 분석 엔진(130)은, 텐서 생성 엔진(110)과 마찬가지로 학습 모드와 운용 모드로 동작한다. 장애 분석 엔진(130)은, 학습 모드에서, 상기 텐서 생성 엔진(110)에서 생성된 장애 이벤트들의 장애 원인별 네트워크 텐서와, 이미 알고 있는 각 장애 이벤트의 장애 원인을 이용하여, 네트워크 텐서와 장애 원인과의 관계를 학습한다. 운용 모드에서 장애 분석 엔진(130)은 현재 발생된 장애 이벤트의 장애 원인별 네트워크 텐서를 이용하여 장애 원인별 확률을 계산하여 장애 원인을 판단하고, 또한 장애 원인이 발생한 위치를 추정한다. 장애 분석 엔진(130)은, 장애 원인 분석부(131), 장애 위치 분석부(133) 및 가중치 저장부(132)를 포함한다.
장애 원인 분석부(131)는, 상기 텐서 생성 엔진(110)으로부터 장애 이벤트들의 장애 원인별 네트워크 텐서와, 이미 알고 있는 각 장애 이벤트의 장애 원인을 학습 데이터로서 수신하고, 이 학습 데이터를 딥 러닝에 의해 학습함으로써, 장애 원인과 네트워크 텐서의 관계를 학습한다. 장애 원인 분석부(131)는, 이미지 처리에서 많이 활용되는 Attention-based 2D 컨벌루션 신경망(Convolutional Neural Network)을 이용하여 학습을 한다. 장애 원인 분석부(131)는, 학습 과정에서 도출되는 신경망을 구성하는 노드들을 연결하는 최적의 가중치를 가중치 저장부(132)에 저장한다. 장애 원인 분석부(131)의 학습 모델을 고도화할 때 문제가 발생할 경우 가중치 저장부(132)에 저장된 가중치들을 이용하여 기존의 학습 모델을 복원한다.
도 5는 일 실시예에 따른 장애 원인 분석부(131)에서 네트워크 텐서와 장애 원인의 관계를 학습하는 과정을 나타낸 도면이다. 도 5를 참조한 실시예는 장애 원인이 3가지 종류인 것을 가정한다. 도 5에 도시된 바와 같이, 텐서 생성 엔진(110)으로부터 장애 이벤트들의 장애 원인별 네트워크 텐서(520)와, 이미 알고 있는 각 장애 이벤트의 장애 원인(510)이 학습 데이터로서, 장애 원인 분석부(131)로 입력된다. 도 5를 참조하면, 장애 이벤트 #1은 장애 원인 "LinkCut"(510)이 레이블로서 입력되고 또한 장애 원인을 모른 상태에서 텐서 생성 엔진(110)에서 생성된 장애 이벤트 #1의 장애 원인별 네트워크 텐서(520)가 학습 데이터로서 입력된다. 이와 같은 방식으로 총 N개의 학습 데이터가 입력되어 장애 원인과 네트워크 텐서의 관계가 학습되고, 이 과정에서 신경망을 구성하는 노드들을 연결하는 최적의 가중치가 도출되어 가중치 저장부(132)에 저장된다.
도 5를 참조하면, 장애 원인 분석부(131)의 신경망을 구성하는 GAP(Global Average Pooling) 계층은, 학습 과정에서 산출되는 각 장애 원인별 특징 맵(feature map)(즉, 네트워크 텐서)의 값을 각 장애 원인별로 평균화하여 각 장애 원인별로 하나의 값을 산출한다. 예를 들어, 제 1 장애 원인의 특징 맵을 구성하는 값들의 평균 값을 산출하고, 제 2 장애 원인의 특징 맵을 구성하는 값들의 평균 값을 산출하며, 제 3 장애 원인의 특징 맵을 구성하는 값들의 평균 값을 산출한다. 이와 같이 GAP 계층에서 출력되는 값들에 대해서는 softmax에 의해 가중치(w1, w2, w3)가 적용되어 최종적으로 각 장애 원인별 값(530)(예, 확률)이 출력되며 학습된다. 장애 원인은 3가지 종류이므로 각 가중치는 1×3의 행렬이다. 만약 장애 원인이 n가지 종류라면, 가중치의 개수는 n개이고, 각 가중치는 1×n의 행렬이다.
장애 원인 분석부(131)는, 신경망의 학습이 완료된 후에 운영 모드에서, 상기 텐서 생성 엔진(110)에서 생성된 특정 장애 이벤트의 장애 원인별 네트워크 텐서를 수신하고, 그 장애 원인별 네트워크 텐서를 이용하여 상기 학습된 신경망을 통해 각 장애 원인별 확률을 산출하고, 그 산출된 확률을 기초로 가장 높은 확률을 갖는 장애 원인을 해당 특정 장애 이벤트의 장애 원인으로 판단할 수 있다. 또한, 장애 원인 분석부(131)는, 각 장애 원인별로 중간 산출물인 특징 맵을 출력할 수도 있다. 도 6은 일 실시예에 따른 각 장애 원인별 중간 산출물인 특징 맵을 나타낸 도면으로, 도 6에 도시된 바와 같이, 각 장애 원인별로 네트워크 토폴로지에 따른 매트릭스 형태의 특징 맵(610)이 도출될 수 있다.
장애 위치 분석부(133)는, 운용 모드에서 네트워크에서 장애가 발생한 위치를 추정한다. 여기서 위치는 장비들 또는 장비들 사이의 구간을 의미한다. 장애 위치 분석부(133)는, 별도의 학습이 필요 없고, 장애 원인 분석부(131)에서 장애 원인을 판단하며 생성하는 중간 산출물인 각 장애 원인별 특징 맵(즉, 네트워크 텐서)과 가중치, 그리고 네트워크 토폴로지에 관한 인접 행렬을 이용하여, 장애 위치에 관한 네트워크 텐서(즉, 특징 맵)을 생성하여 장애 위치를 추정한다. 여기서 장애 원인별 특징 맵은 신경망에서 마지막에 산출되는 특징 맵일 수 있고, 가중치는 마지막 계층의 가중치일 수 있다. 구체적으로, 장애 위치 분석부(133)는, 다음 수학식2에 따라 장애 위치에 관한 네트워크 텐서를 생성한다.
(수학식2)
장애 위치에 관한 네트워크 텐서=(w1×제 1 장애 원인의 특징 맵 + w2×제 2 장애 원인의 특징 맵 +,..., +wn×제 n 장애 원인의 특징 맵) o 인접 행렬(A)
여기서, o는 하다마드 곱(hadamard product)이다. 장애 위치를 추정할 때는, 장애 원인 분석부(131)에서 최종 장애 원인으로 판단한 장애 원인의 특징 맵만을 이용하는 것이 아니라, 모든 가능한 장애 원인의 특징 맵을 이용한다. 장애 원인 분석부(131)에서 판단한 최종 장애 원인이 실제 장애 원인이 아닐 수도 있기 때문이다.
도 7은 일 실시예에 따른 장애 위치를 추정하는 방법을 설명하는 도면이다.도 7의 예는 장애 원인이 3가지 종류이고 네트워크를 구성하는 장비는 N개인 것을 가정한다. 도 7을 참조하면, 장애 원인 분석부(131)는, 운영 모드에서, 특정 장애 이벤트의 장애 원인별 네트워크 텐서(710)를 수신하고, 그 장애 원인별 네트워크 텐서(710)를 이용하여, 학습된 신경망을 통해 각 장애 원인별 확률을 산출하고, 그 산출된 확률을 기초로 가장 높은 확률을 갖는 장애 원인을 해당 특정 장애 이벤트의 장애 원인으로 판단한다. 도 7을 참조한 실시예에서 Linkcut으로 장애 원인을 판단한다. 장애 위치 분석부(133)는, 장애 원인 분석부(131)에서 장애 원인을 분석하는 과정에서 산출한 중간 산출물인 각 장애 원인별 특징 맵(720)과 가중치(730), 그리고 네트워크 토폴로지에 따른 인접 행렬(740)을 이용하여 장애 위치에 관한 네트워크 텐서(즉, 특징 맵)(750)을 생성하여 장애 위치를 추정한다. 장애 위치 분석부(133)는, 네트워크 텐서(750)에서 값이 가장 큰 원소 값을 장애 위치(760)로 추정할 수 있다. 장애 위치는, 장애가 발생한 장비들의 정보, 그리고 장애 발생 확률값을 포함할 수 있다. 이때 확률값은 0~1의 범위로 정규화될 수 있다. 장애 위치 분석부(133)는, 관리자로부터 추정 개수 파라미터를 수신하고, 그 추정 개수 파라미터에 기초하여, 장애 위치 후보군을 출력할 수 있다. 예를 들어, 추정 개수 파라미터가 2이면, 2개의 장애 위치를 출력한다. 도 8은 일 실시예에 따른 장애 위치의 추정 결과를 나타낸 도면으로, 도 8에 도시된 바와 같이, 장애 원인(810), 그리고 상기 추정 개수 파라미터에 기초하여 선택된 장애 위치 후보군(810)이 포함된다.
도 9는 일 실시예에 따른 네트워크 장애 분석 장치의 학습 동작을 설명하는 흐름도이다. 도 9를 참조한 학습 동작은, 네트워크 장애 분석 장치(100)의 메모리에 저장된 프로그램에 따라 프로세서에 의해 수행될 수 있다.
도 9를 참조하면, 단계 S901에서, 네트워크 장애 분석 장치(100)는 과거의 네트워크 장애 이벤트들의 장애 원인 및 각 장비의 경보들을 수집한다. 여기서 하나의 장애 이벤트는 특정 장애 원인에 따라 네트워크에서 발생한 하나의 장애 상황을 의미하고, 경보는 장애를 알리는 메시지이다. 장애 이벤트를 발생시키는 장애 원인은 다양하고, 하나의 장애 이벤트 발생시 네트워크 내의 적어도 하나 이상의 장비들에서 동시에 또는 순차적으로 경보들이 발생할 수 있다. 따라서 학습을 위한 하나의 장애 이벤트는 장애 원인 및 하나 또는 그 이상의 장비의 하나 또는 그 이상의 경보를 포함한다. 네트워크 장애 분석 장치(100)는 과거의 장애 이벤트별 장애 원인 및 경보들을 NMS(Network Management System)로부터 수집할 수 있다. 네트워크 장애 분석 장치(100)는 장애 이벤트별로 경보들의 모음을 수집하는 데 있어서 각 장애 이벤트별로 소정의 단위 시간 동안의 경보들만을 수집할 수 있다. 예를 들어, 특정 장애 이벤트에 관하여 최초 경보부터 5분 동안 발생한 경보들을 해당 특정 장애 이벤트에 대한 경보들의 모음으로서 수집한다.
단계 S903에서, 네트워크 장애 분석 장치(100)는 단계 S901에서 수집된 각 경보를 신경망에서 처리되기 위한 문자열로 변환하는 전처리(preprocessing)를 수행한다. 네트워크 장애 분석 장치(100)는 수집된 각 경보에서 키워드를 추출하여 각 경보에 대한 가변 길이의 문자열로 변경한다. 각 경보마다 내용이 상이하고, 네트워크 장비의 제조사별로 동일 경보라 하더라도 내용이 상이할 수 있으므로, 각 경보로부터 변경되는 각 문자열은 서로 길이가 다를 수 있다.
단계 S905에서, 네트워크 장애 분석 장치(100)는, 딥 러닝에 의해 경보 단위로 장애 원인과 경보의 관계를 학습한다. 네트워크 장애 분석 장치(100)는, 이미 알고 있는 각 경보별 장애 원인(즉, 레이블(lable))과, 상기 각 경보의 문자열을 딥 러닝에 의해 학습함으로써, 장애 원인과 경보의 관계를 학습한다. 바람직하게 네트워크 장애 분석 장치(100)는, GRU(Gated Recurrent Unit)를 활용한 RNN(Recurrent Neural Network, 순환 신경망)을 이용하여 장애 원인과 경보의 인과 관계를 학습한다. 딥 러닝을 위한 신경망(Neural Network)은 입력 계층과 히든 계층 그리고 출력 계층으로 구성되고 각 계층에는 적어도 하나의 노드를 포함한다. 신경망의 각 계층의 노드들은 입력 데이터에 함수를 적용하여 출력 데이터를 생성하고, 신경망의 학습은 각 노드를 연결하는 가중치를 알아내는 것이다. 네트워크 장애 분석 장치(100)는, 상기 RNN을 학습하면서 생성된 가중치들을 가중치 저장부(114)에 저장한다. 네트워크 장애 분석 장치(100)는, 학습 모델을 고도화할 때 문제가 발생할 경우 가중치 저장부(114)에 저장된 가중치들을 이용하여 기존의 학습 모델을 복원한다.
단계 S907에서, 네트워크 장애 분석 장치(100)는, 상기 학습된 신경망을 이용하여, 각 경보의 장애 원인별 확률 벡터를 생성한다. 일반적인 신경망은 각 계층의 파라미터들이 독립적이지만, RNN은 각 계층마다 파라미터들을 공유한다. 네트워크 장애 분석 장치(100)는, 장애 원인과, 경보들로부터 생성된 시퀀스 데이터인 문자열을 학습한 후, 학습된 RNN의 노드들을 구성하는 셀인 GRU(Gated Recurrent Unit)와 Softmax Classfier를 통해 각 경보마다 장애 원인별 확률 벡터를 생성한다.
단계 S909에서, 네트워크 장애 분석 장치(100)는, 단계 S907에서 생성된 경보들의 장애 원인별 확률 벡터를 이용하여, 각 장애 이벤트마다, 각 장비의 장애 원인별 확률 벡터를 생성한다. 즉, 네트워크 장애 분석 장치(100)는, 특정 장애 이벤트에 대한 각 경보의 장애 원인별 확률 벡터로부터 그 특정 장애 이벤트에 대한 각 장비의 장애 원인별 확률 벡터를 생성한다. 동일한 장비에서 발생한 경보들의 장애 원인별 확률 벡터를 각 장애 원인마다 평균함으로써, 특정 장애 이벤트에 대한 각 장비의 장애 원인별 확률 벡터를 생성한다.
단계 S911에서, 네트워크 장애 분석 장치(100)는, 상기 장애 이벤트마다의 장비들의 장애 원인별 확률 벡터를 이용하여, 각 장애 이벤트마다 장애 원인별 네트워크 텐서를 생성한다. 예를 들어 네트워크에서 발생할 수 있는 장애 원인의 개수가 5개라고 하면, 네트워크 장애 분석 장치(100)는 각 장애 이벤트마다 5개의 네트워크 텐서를 생성한다. 장애 원인별 네트워크 텐서는 네트워크 장비들에서 발생한 경보들이 각 장애 원인에 의해 실제 발생하는 경보들과 얼마나 유사한지를 네트워크 토폴로지를 이용하여 표현한 것이다. 네트워크 장애 분석 장치(100)는, 네트워크 토폴로지에 관한 인접 행렬과, 상기 네트워크 장비들의 장애 원인별 확률 벡터의 행렬을 이용하여 상기 수학식1과 같이 장애 원인별 네트워크 텐서를 생성한다.
단계 S913에서, 네트워크 장애 분석 장치(100)는, 상기 단계 S912에서 생성된 장애 이벤트들의 장애 원인별 네트워크 텐서와, 이미 알고 있는 각 장애 이벤트의 장애 원인(즉, 레이블(lable))을 딥 러닝에 의해 학습함으로써, 네트워크 텐서와 장애 원인과의 관계를 학습한다. 네트워크 장애 분석 장치(100)는 이미지 처리에서 많이 활용되는 Attention-based 2D 컨벌루션 신경망(Convolutional Neural Network)을 이용하여 학습을 한다. 네트워크 장애 분석 장치(100)는, 학습 과정에서 도출되는 신경망을 구성하는 노드들을 연결하는 최적의 가중치를 가중치 저장부(132)에 저장한다. 학습 모델을 고도화할 때 문제가 발생할 경우 가중치 저장부(132)에 저장된 가중치들을 이용하여 기존의 학습 모델을 복원한다.
도 10은 일 실시예에 따른 네트워크 장애 분석 장치의 운용 동작을 설명하는 흐름도이다. 도 10을 참조한 운용 동작은, 네트워크 장애 분석 장치(100)의 메모리에 저장된 프로그램에 따라 프로세서에 의해 수행될 수 있다.
도 10을 참조하면, 단계 S1001에서, 네트워크 장애 분석 장치(100)는 현재 발생한 네트워크 장애 이벤트에 대한 각 장비의 경보들을 수집한다. 네트워크 장애 분석 장치(100)는 경보들을 NMS(Network Management System)로부터 수집할 수 있다. 네트워크 장애 분석 장치(100)는 경보들의 모음을 수집하는 데 있어서 해당 네트워크 장애 이벤트에 관한 첫 번째 경보부터 소정의 단위 시간 동안의 경보들만을 수집할 수 있다. 예를 들어, 해당 장애 이벤트에 관하여 최초 경보부터 5분 동안 발생한 경보들을 해당 장애 이벤트에 대한 경보들의 모음으로서 수집한다.
단계 S1003에서, 네트워크 장애 분석 장치(100)는 단계 S1001에서 수집된 각 경보를 신경망에서 처리되기 위한 문자열로 변환하는 전처리(preprocessing)를 수행한다. 네트워크 장애 분석 장치(100)는 수집된 각 경보에서 키워드를 추출하여 각 경보에 대한 가변 길이의 문자열로 변경한다. 각 경보마다 내용이 상이하고, 네트워크 장비의 제조사별로 동일 경보라 하더라도 내용이 상이할 수 있으므로, 각 경보로부터 변경되는 각 문자열은 서로 길이가 다를 수 있다.
단계 S1005에서, 네트워크 장애 분석 장치(100)는, 학습된 신경망(즉, RNN)을 이용하여, 각 경보의 장애 원인별 확률 벡터를 생성한다. 네트워크 장애 분석 장치(100)는, 경보들로부터 생성된 시퀀스 데이터인 문자열을 학습한 후, 학습된 RNN의 노드들을 구성하는 셀인 GRU(Gated Recurrent Unit)와 Softmax Classfier를 통해 각 경보마다 장애 원인별 확률 벡터를 생성한다.
단계 S1007에서, 네트워크 장애 분석 장치(100)는, 단계 S1005에서 생성된 경보들의 장애 원인별 확률 벡터를 이용하여, 현재 발생한 장애 이벤트에 대한 각 장비의 장애 원인별 확률 벡터를 생성한다. 즉, 네트워크 장애 분석 장치(100)는, 현재 발생한 장애 이벤트에 대한 각 경보의 장애 원인별 확률 벡터로부터 해당 장애 이벤트에 대한 각 장비의 장애 원인별 확률 벡터를 생성한다. 동일한 장비에서 발생한 경보들의 장애 원인별 확률 벡터를 각 장애 원인마다 평균함으로써, 각 장비의 장애 원인별 확률 벡터를 생성한다.
단계 S1009에서, 네트워크 장애 분석 장치(100)는, 장비들의 장애 원인별 확률 벡터를 이용하여, 장애 원인별 네트워크 텐서를 생성한다. 예를 들어 네트워크에서 발생할 수 있는 장애 원인의 개수가 5개라고 하면, 네트워크 장애 분석 장치(100)는 5개의 네트워크 텐서를 생성한다. 장애 원인별 네트워크 텐서는 네트워크 장비들에서 발생한 경보들이 각 장애 원인에 의해 실제 발생하는 경보들과 얼마나 유사한지를 네트워크 토폴로지를 이용하여 표현한 것이다. 네트워크 장애 분석 장치(100)는, 네트워크 토폴로지에 관한 인접 행렬과, 상기 네트워크 장비들의 장애 원인별 확률 벡터의 행렬을 이용하여 상기 수학식1과 같이 장애 원인별 네트워크 텐서를 생성한다.
단계 S1011에서, 네트워크 장애 분석 장치(100)는, 상기 단계 S1009에서 생성된 장애 원인별 네트워크 텐서를 이용하여, 학습된 신경망을 통해 각 장애 원인별 확률을 산출하고, 그 산출된 확률을 기초로 가장 높은 확률을 갖는 장애 원인을 현재 발생한 장애 이벤트의 장애 원인으로 판단할 수 있다. 여기서 이용되는 신경망은, 도 9를 참조하여 학습된 Attention-based 2D 컨벌루션 신경망(Convolutional Neural Network)이다.
단계 S1013에서, 네트워크 장애 분석 장치(100)는, 네트워크에서 장애가 발생한 위치를 추정한다. 여기서 위치는 장비들 또는 장비들 사이의 구간을 의미한다. 구체적으로, 네트워크 장애 분석 장치(100)는, 단계 S1011에서 장애 원인을 판단하며 생성되는 중간 산출물인 각 장애 원인별 특징 맵(즉, 네트워크 텐서)과 가중치, 그리고 네트워크 토폴로지에 관한 인접 행렬을 이용하여, 장애 위치에 관한 네트워크 텐서(즉, 특징 맵)을 생성하여 장애 위치를 추정한다. 여기서 장애 원인별 특징 맵은 신경망에서 마지막에 산출되는 특징 맵일 수 있고, 가중치는 마지막 계층의 가중치일 수 있다. 네트워크 장애 분석 장치(100)는, 상기 수학식2에 따라 장애 위치에 관한 네트워크 텐서를 생성할 수 있다. 네트워크 장애 분석 장치(100)는, 장애 위치에 관한 네트워크 텐서에서 값이 가장 큰 원소 값을 장애 위치로 추정할 수 있다. 장애 위치는, 장애가 발생한 장비들의 정보, 그리고 장애 발생 확률값을 포함할 수 있다. 이때 확률값은 0~1의 범위로 정규화될 수 있다. 네트워크 장애 분석 장치(100)는, 관리자로부터 추정 개수 파라미터를 수신하고, 그 추정 개수 파라미터에 기초하여, 장애 위치 후보군을 출력할 수 있다. 예를 들어, 추정 개수 파라미터가 2이면, 확률값이 높은 순서로 2개의 장애 위치를 출력한다.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 안 된다. 또한, 본 명세서에서 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서에서 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.
도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로, 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 프로그램 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
100 : 네트워크 장애 분석 장치
110 : 텐서 생성 엔진
130 : 장애 분석 엔진
111 : 수집부
112 : 전처리부
113 : 벡터 생성부
114, 132 : 가중치 저장부
115 : 텐서 생성부
131 : 장애 원인 분석부
133 : 장애 위치 분석부

Claims (20)

  1. 적어도 하나의 장비들로 구성되는 네트워크의 장애를 분석하는 장치에 있어서,
    장애 이벤트들의 장애 원인 및 경보들을 수집하는 수집부;
    상기 장애 원인 및 상기 경보들의 관계를 제1신경망을 통해 학습하고, 각 장애 이벤트마다 장비들의 장애 원인별 확률 벡터를 생성하는 벡터 생성부;
    상기 장비들의 장애 원인별 확률 벡터에 기초하여 각 장애 이벤트의 장애 원인별 네트워크 텐서를 생성하는 텐서 생성부; 및
    상기 각 장애 이벤트의 장애 원인과, 상기 각 장애 이벤트의 장애 원인별 네트워크 텐서를 학습 데이터로 이용하여 상기 장애 원인과 상기 네트워크 텐서의 관계를 제2신경망을 통해 학습하는 장애 원인 분석부;를 포함하는 장치.
  2. 제 1 항에 있어서,
    상기 각 경보들을 문자열로 변환하는 전처리부를 더 포함하고,
    상기 벡터 생성부는,
    상기 장애 원인 및 상기 경보들로부터 변환된 문자열을 학습 데이터로 이용하여 상기 장애 원인 및 상기 경보들의 관계를 학습하는 것을 특징으로 하는 장치.
  3. 제 2 항에 있어서,
    상기 벡터 생성부는,
    상기 각 경보의 장애 원인별 확률 벡터를 생성하고, 동일한 장비에서 발생한 경보들의 장애 원인별 확률 벡터를 각 장애 원인마다 평균함으로써, 상기 장애 원인별 확률 벡터를 생성하는 것을 특징으로 하는 장치.
  4. 제 3 항에 있어서,
    상기 제1신경망은, RNN(Recurrent Neural Network)이고,
    상기 벡터 생성부는,
    상기 문자열을 구성하는 문자들을 순서대로 상기 RNN에 입력하여 상기 각 경보의 장애 원인별 확률 벡터를 생성하는 것을 특징으로 하는 장치.
  5. 제 1 항에 있어서,
    상기 텐서 생성부는,
    상기 장비들의 장애 원인별 확률 벡터와, 네트워크 토폴로지를 표현하는 행렬을 이용하여, 상기 각 장애 이벤트의 장애 원인별 네트워크 텐서를 생성하는 것을 특징으로 하는 장치.
  6. 제 1 항에 있어서,
    상기 장애 원인 분석부는,
    상기 제2신경망으로서 Attention-based 2D 컨벌루션 신경망(Convolutional Neural Network)을 이용하여 상기 장애 원인과 상기 네트워크 텐서의 관계를 학습하는 것을 특징으로 하는 장치.
  7. 제 1 항에 있어서,
    상기 벡터 생성부는, 상기 제1신경망을 구성하는 각 노드를 연결하는 가중치를 제1가중치 저장부에 저장하고, 상기 제1신경망의 복원시 상기 제1가중치 저장부에 저장된 가중치를 이용하며,
    상기 장애 원인 분석부는, 상기 제2신경망을 구성하는 각 노드를 연결하는 가중치를 제2가중치 저장부에 저장하고, 상기 제2신경망의 복원시 상기 제2가중치 저장부에 저장된 가중치를 이용하는 것을 특징으로 하는 장치.
  8. 제 1 항에 있어서,
    운영 모드에서,
    상기 수집부는, 현재 발생한 장애 이벤트의 경보들을 수집하고,
    상기 벡터 생성부는, 학습된 상기 제1신경망을 통해 상기 현재 발생한 장애 이벤트에 대한 장비들의 장애 원인별 확률 벡터를 생성하며,
    상기 텐서 생성부는, 상기 현재 발생한 장애 이벤트에 대한 장비들의 장애 원인별 확률 벡터에 기초하여 상기 현재 발생한 장애 이벤트에 대한 장애 원인별 네트워크 텐서를 생성하고,
    상기 장애 원인 분석부는, 학습된 상기 제2신경망을 통해 상기 현재 발생한 장애 이벤트에 대한 장애 원인별 네트워크 텐서에 기초하여 장애 원인을 판단하는 것을 특징으로 하는 장치.
  9. 제 8 항에 있어서,
    네트워크 토폴로지를 표현하는 행렬과, 상기 제2신경망에서 장애 원인을 판단하는 과정에서 산출되는 중간 산출물인 장애 원인별 특징 맵 및 가중치에 기초하여, 장애 위치에 관한 네트워크 텐서를 생성하고 이에 기초하여 장애 위치를 추정하는 장애 위치 분석부를 더 포함하는 것을 특징으로 하는 장치.
  10. 제 9 항에 있어서,
    상기 장애 위치 분석부는,
    관리자로부터 입력된 추정 개수 파라미터에 기초하여, 상기 장애 위치에 관한 네트워크 텐서로부터 장애 위치 후보군을 선택하여 출력하는 것을 특징으로 하는 장치.
  11. 네트워크 장애 분석 장치에서, 적어도 하나의 장비들로 구성되는 네트워크의 장애를 분석하는 방법에 있어서,
    장애 이벤트들의 장애 원인 및 경보들을 수집하는 단계;
    상기 장애 원인 및 상기 경보들의 관계를 제1신경망을 통해 학습하고, 각 장애 이벤트마다 장비들의 장애 원인별 확률 벡터를 생성하는 단계;
    상기 장비들의 장애 원인별 확률 벡터에 기초하여 각 장애 이벤트의 장애 원인별 네트워크 텐서를 생성하는 단계; 및
    상기 각 장애 이벤트의 장애 원인과, 상기 각 장애 이벤트의 장애 원인별 네트워크 텐서를 학습 데이터로 이용하여 상기 장애 원인과 상기 네트워크 텐서의 관계를 제2신경망을 통해 학습하는 단계를 포함하는 방법.
  12. 제 11 항에 있어서,
    상기 수집하는 단계 이후에,
    상기 각 경보들을 문자열로 변환하는 단계를 더 포함하고,
    상기 장애 원인별 확률 벡터를 생성하는 단계는,
    상기 장애 원인 및 상기 경보들로부터 변환된 문자열을 학습 데이터로 이용하여 상기 장애 원인 및 상기 경보들의 관계를 학습하는 것을 특징으로 하는 방법.
  13. 제 12 항에 있어서,
    상기 장애 원인별 확률 벡터를 생성하는 단계는,
    상기 각 경보의 장애 원인별 확률 벡터를 생성하고, 동일한 장비에서 발생한 경보들의 장애 원인별 확률 벡터를 각 장애 원인마다 평균함으로써, 상기 장애 원인별 확률 벡터를 생성하는 것을 특징으로 하는 방법.
  14. 제 13 항에 있어서,
    상기 제1신경망은, RNN(Recurrent Neural Network)이고,
    상기 장애 원인별 확률 벡터를 생성하는 단계는,
    상기 문자열을 구성하는 문자들을 순서대로 상기 RNN에 입력하여 상기 각 경보의 장애 원인별 확률 벡터를 생성하는 것을 특징으로 하는 방법.
  15. 제 11 항에 있어서,
    상기 장애 원인별 네트워크 텐서를 생성하는 단계는,
    상기 장비들의 장애 원인별 확률 벡터와, 네트워크 토폴로지를 표현하는 행렬을 이용하여, 상기 각 장애 이벤트의 장애 원인별 네트워크 텐서를 생성하는 것을 특징으로 하는 방법.
  16. 제 11 항에 있어서,
    상기 제2신경망을 통해 학습하는 단계는,
    상기 제2신경망으로서 Attention-based 2D 컨벌루션 신경망(Convolutional Neural Network)을 이용하여 상기 장애 원인과 상기 네트워크 텐서의 관계를 학습하는 것을 특징으로 하는 방법.
  17. 제 11 항에 있어서,
    상기 제1신경망을 구성하는 각 노드를 연결하는 가중치를 제1가중치 저장부에 저장하는 단계;
    상기 제2신경망을 구성하는 각 노드를 연결하는 가중치를 제2가중치 저장부에 저장하는 단계;
    상기 제1가중치 저장부에 저장된 가중치를 이용하여 상기 제1신경망을 복원하는 단계; 및
    상기 제2가중치 저장부에 저장된 가중치를 이용하여 상기 제2신경망을 복원하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  18. 제 11 항에 있어서,
    운영 모드에서,
    현재 발생한 장애 이벤트의 경보들을 수집하는 단계;
    학습된 상기 제1신경망을 통해 상기 현재 발생한 장애 이벤트에 대한 장비들의 장애 원인별 확률 벡터를 생성하는 단계;
    상기 현재 발생한 장애 이벤트에 대한 장비들의 장애 원인별 확률 벡터에 기초하여 상기 현재 발생한 장애 이벤트에 대한 장애 원인별 네트워크 텐서를 생성하는 단계; 및
    학습된 상기 제2신경망을 통해 상기 현재 발생한 장애 이벤트에 대한 장애 원인별 네트워크 텐서에 기초하여 장애 원인을 판단하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  19. 제 18 항에 있어서,
    네트워크 토폴로지를 표현하는 행렬과, 상기 제2신경망에서 장애 원인을 판단하는 과정에서 산출되는 중간 산출물인 장애 원인별 특징 맵 및 가중치에 기초하여, 장애 위치에 관한 네트워크 텐서를 생성하고 이에 기초하여 장애 위치를 추정하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  20. 제 19 항에 있어서,
    상기 장애 위치를 추정하는 단계는,
    관리자로부터 입력된 추정 개수 파라미터에 기초하여, 상기 장애 위치에 관한 네트워크 텐서로부터 장애 위치 후보군을 선택하여 출력하는 단계를 포함하는 것을 특징으로 하는 방법.
KR1020190054987A 2018-05-18 2019-05-10 네트워크 장애 원인 분석 장치 및 방법 KR102107689B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2019/005711 WO2019221461A1 (ko) 2018-05-18 2019-05-13 네트워크 장애 원인 분석 장치 및 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20180057426 2018-05-18
KR1020180057426 2018-05-18

Publications (2)

Publication Number Publication Date
KR20190132223A true KR20190132223A (ko) 2019-11-27
KR102107689B1 KR102107689B1 (ko) 2020-05-07

Family

ID=68730242

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190054987A KR102107689B1 (ko) 2018-05-18 2019-05-10 네트워크 장애 원인 분석 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102107689B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113825148A (zh) * 2020-06-18 2021-12-21 中国移动通信集团浙江有限公司 网络节点告警等级的确定方法、装置及计算设备
KR20230009632A (ko) * 2021-07-09 2023-01-17 주식회사 케이티 무선 신호 기반 통신의 장애를 검출하는 서버, 방법 및 컴퓨터 프로그램

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11928009B2 (en) 2021-08-06 2024-03-12 International Business Machines Corporation Predicting a root cause of an alert using a recurrent neural network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130017353A (ko) * 2011-08-10 2013-02-20 엘지전자 주식회사 가전기기 진단시스템 및 그 진단방법
JP2014092799A (ja) * 2012-10-31 2014-05-19 Sumitomo Heavy Ind Ltd 異常原因特定システム
US20170077204A1 (en) 2015-09-14 2017-03-16 Boe Technology Group Co., Ltd. Double-Sided Display Substrate and Manufacturing Method Thereof and Display Device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130017353A (ko) * 2011-08-10 2013-02-20 엘지전자 주식회사 가전기기 진단시스템 및 그 진단방법
JP2014092799A (ja) * 2012-10-31 2014-05-19 Sumitomo Heavy Ind Ltd 異常原因特定システム
US20170077204A1 (en) 2015-09-14 2017-03-16 Boe Technology Group Co., Ltd. Double-Sided Display Substrate and Manufacturing Method Thereof and Display Device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113825148A (zh) * 2020-06-18 2021-12-21 中国移动通信集团浙江有限公司 网络节点告警等级的确定方法、装置及计算设备
CN113825148B (zh) * 2020-06-18 2023-08-18 中国移动通信集团浙江有限公司 网络节点告警等级的确定方法、装置及计算设备
KR20230009632A (ko) * 2021-07-09 2023-01-17 주식회사 케이티 무선 신호 기반 통신의 장애를 검출하는 서버, 방법 및 컴퓨터 프로그램

Also Published As

Publication number Publication date
KR102107689B1 (ko) 2020-05-07

Similar Documents

Publication Publication Date Title
EP3776113B1 (en) Apparatus and method for controlling system
KR102107689B1 (ko) 네트워크 장애 원인 분석 장치 및 방법
CN114026828B (zh) 用于监控通信网络的设备和方法
CN114785666B (zh) 一种网络故障排查方法与系统
AU2021309929B2 (en) Anomaly detection in network topology
US20230133541A1 (en) Alert correlating using sequence model with topology reinforcement systems and methods
CN112906775B (zh) 一种设备故障预测方法及系统
CN115237717A (zh) 一种微服务异常检测方法和系统
JP2023547849A (ja) ラベルなしセンサデータを用いた産業システム内の稀な障害の自動化されたリアルタイムの検出、予測、及び予防に関する、方法または非一時的コンピュータ可読媒体
CN117520924B (zh) 基于多模态数据的海岛光伏运维故障原因分析方法及系统
CN113825165B (zh) 基于时间图网络的5g切片网络拥塞预警方法及装置
WO2019221461A1 (ko) 네트워크 장애 원인 분석 장치 및 방법
CN104238546A (zh) 基于混杂神经网络的直流主设备故障诊断方法
KR102149930B1 (ko) 네트워크 장애 처리 시스템 및 방법
CN114139589A (zh) 故障诊断方法、装置、设备与计算机可读存储介质
US7937347B2 (en) Method and apparatus for component association inference, failure diagnosis and misconfiguration detection based on historical failure data
Raj et al. Cloud infrastructure fault monitoring and prediction system using LSTM based predictive maintenance
CN117149486B (zh) 告警和根因定位方法、模型训练方法、装置、设备及介质
CN117388893B (zh) 一种基于gps的多设备定位系统
CN117389779A (zh) 一种微服务故障根因定位方法
US20230316078A1 (en) Model training method and apparatus, device, storage medium and program product
CN109889258B (zh) 一种光网络故障校验方法和设备
CN116248472A (zh) 基于神经霍克斯过程的云边端系统故障预测方法
KR20220156266A (ko) 전이학습 기반 디바이스 문제 예측을 제공하는 모니터링 서비스 장치 및 그 방법
Streiffer et al. Learning to simplify distributed systems management

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant