KR102123689B1 - 마이크로 루프 회피 방법 - Google Patents
마이크로 루프 회피 방법 Download PDFInfo
- Publication number
- KR102123689B1 KR102123689B1 KR1020190007498A KR20190007498A KR102123689B1 KR 102123689 B1 KR102123689 B1 KR 102123689B1 KR 1020190007498 A KR1020190007498 A KR 1020190007498A KR 20190007498 A KR20190007498 A KR 20190007498A KR 102123689 B1 KR102123689 B1 KR 102123689B1
- Authority
- KR
- South Korea
- Prior art keywords
- router node
- router
- topology change
- node
- micro
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/18—Loop-free operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/121—Shortest path evaluation by minimising delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/123—Evaluation of link metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명의 마이크로 루프 회피 방법은 토폴로지 변경 이벤트가 발생한 라우터 노드가 미리 설정된 백업 경로를 활성화하고, 해당 라우터 노드가 네트워크의 다른 라우터 노드로 토폴로지 변경 통지 정보를 통지하고, 토폴로지 변경을 인식한 각 라우터 노드가 일정 시간 대기 후 목적지까지의 라우터 메트릭을 다시 계산하여 최단 경로를 선출하고, 토폴로지 변경을 인식한 각 라우터 노드가 계산된 라우터 메트릭 값에 따라 다른 지연 시간을 대기한 후 선출된 최단 경로를 라우팅 테이블에 반영하도록 하여 마이크로 루프 발생을 방지한다.
Description
본 발명은 네트워크 장애 복구 방법에 관한 것으로, 더욱 상세하게는 링크 장애 등으로 인해 네트워크 토폴로지 변경 이벤트 발생 시 각 라우터 노드가 토폴로지 변경으로 인해 재 산출된 최단 경로를 FIB(Forwarding Information Base)에 반영하는 시간 차이에 의해 발생하는 마이크로 루프(Microloop)를 방지하여 패킷 손실을 최소화하는 방법에 관한 것이다.
라우팅 프로토콜은 라우터 간 통신 방식을 규정하는 통신 규약이다. 많은 종류의 라우팅 프로토콜이 RFC 문서에 정의되어 있지만 다음의 3가지 주요 클래스가 IP 네트워크에서 주로 사용된다. 링크 스테이트 라우팅 프로토콜을 통한 내부 게이트웨이 라우팅을 하는 OSPF(Open Shortest Path First)와 ISIS(Intermediate System to Intermediate System), 경로 벡터나 거리 벡터 프로토콜을 통한 내부 게이트웨이 라우팅을 하는 IGRP(Interior Gateway Routing Protocol)과 EIGRP(Enhanced Interior Gateway Routing Protocol), 외부 게이트웨이 라우팅을 하는 BGP(Border Gateway Protocol) 등이 주요 클래스에 해당한다.
예를 들어, OSPF는 동적 라우팅 프로토콜로 대표적인 링크 상태 라우팅 프로토콜이다. 연결된 링크의 상태를 감시하여 최적의 경로를 선택한다.
고속 재라우팅(Fast Reroute, FRR) 기법은 네트워크에서 장애가 발생한 상황에서 최소의 패킷 손실로 트래픽을 복구하는 기법이다. FRR은 장애 발생시 사용할 대체 경로 즉, 백업 경로를 미리 계산하여 설정해 두고, 장애 발생시 백업 경로로 트래픽을 우회시키고 최단 경로 재산정이 완료되어 새로운 최단 경로가 선출되면 다시 새로운 경로로 트래픽을 포워딩한다.
FRR을 하더라도 라우팅 도메인을 구성하는 각 라우터 노드 간 새로운 경로를 FIB에 인스톨하는 시간 차이로 인해 라우터 노드 사이에 마이크로 루프(Microloop)가 발생할 수 있다.
본 발명은 네트워크에서 발생된 장애로 토폴로지가 변경되고, 토폴로지 변경으로 인해 재설정된 경로를 각 라우터 노드의 FIB에 인스톨하는 시간 차이에 의해 발생되는 마이크로 루프로 인한 패킷 손실을 최소화하는 방법을 제공하는 것을 목적으로 한다.
발명의 일 양상에 따르면, 다수의 라우터 노드를 포함하는 네트워크에서 발생한 장애로 인한 토폴로지 변경에 의해 발생되는 마이크로 루프(microloop) 회피 방법은 토폴로지 변경 이벤트가 발생한 라우터 노드가 미리 설정된 백업 경로를 활성화하는 백업 경로 활성화 단계와, 토폴로지 변경 이벤트가 발생한 라우터 노드가 네트워크의 다른 라우터 노드로 토폴로지 변경 통지 정보를 통지하는 토폴로지 변경 통지 단계와, 토폴로지 변경을 인식한 각 라우터 노드가 일정 시간 대기 후 목적지까지의 라우터 메트릭을 다시 계산하여 최단 경로를 선출하는 최단 경로 선출 단계와, 토폴로지 변경을 인식한 각 라우터 노드가 계산된 라우터 메트릭 값에 따라 다른 지연 시간을 대기한 후 선출된 최단 경로를 라우팅 테이블에 반영하는 최단 경로 반영 단계를 포함한다.
발명의 또 다른 양상에 따르면, 최단 경로 반영 단계에서 각 라우터 노드가 대기하는 지연 시간은 미리 설정된 지연 상수 값과 라우터 메트릭 값의 곱으로 계산될 수 있다.
발명의 또 다른 양상에 따르면, 최단 경로 반영 단계에서의 미리 설정된 지연 상수 값은 적어도 하나의 라우터 노드에서 다른 값으로 설정될 수 있다.
발명의 또 다른 양상에 따르면, 마이크로 루프(microloop) 회피 방법은 토폴로지 변경 이벤트 발생 전에, 각 라우터 노드가 설정된 지연 상수 값을 다른 라우터 노드로 통지하는 단계와, 다른 라우터 노드의 설정된 지연 상수 값을 수신한 라우터 노드가 설정된 지연 상수 값과 비교하여 큰 값으로 지연 상수 값을 결정하는 단계를 를 더 포함할 수 있다.
발명의 또 다른 양상에 따르면, 토폴로지 변경 통지 단계에서 통지하는 토폴로지 변경 통지 정보가 마이크로 루프 회피 방법 적용 여부를 포함하고, 백업 경로가 미리 설정되어 있지 않은 라우터 노드에서 토폴로지 변경 이벤트가 발생한 경우에는 라우터 노드가 마이크로 루프 회피 방법이 적용되지 않음이 설정된 토폴로지 변경 통지 정보를 다른 라우터 노드로 통지하고, 이를 수신한 각 라우터 노드는 대기하는 지연 시간 없이 선출된 최단 경로를 라우팅 테이블에 즉시 반영할 수 있다.
본 발명의 마이크로 루프 회피 방법에 의하면 라우터 노드는 네트워크에서 발생된 장애로 인해 변경된 토폴로지에 대하여 최단 경로를 산출하고, 산출된 최단 경로를 라우터 노드의 FIB에 반영하기 전에 라우터 노드가 메트릭 값을 이용하여 계산된 지연 시간만큼 대기한 후 산출된 최단 경로를 FIB에 반영하여 마이크로 루프의 발생을 방지하고 패킷 손실을 최소화할 수 있다.
도 1은 링크 장애 발생으로 인한 최단 경로 변경으로 마이크로 루프가 발생하는 것을 도시한 것이다.
도 2는 링크 장애 복구로 인한 최단 경로 변경으로 마이크로 루프가 발생하는 것을 도시한 것이다.
도 3은 일 실시 예에 따라 링크 장애 시 백업 경로를 활성화하고 트래픽을 우회시키는 것을 도시한 것이다.
도 4는 일 실시 예에 따라 링크 장애 시 마이크로 루프 발생 없이 최단 경로가 변경되는 것을 도시한 것이다.
도 5는 또 다른 실시 예에 따라 링크 복구 시 마이크로 루프 발생 없이 최단 경로가 변경되는 것을 도시한 것이다.
도 6은 일 양상에 따른 마이크로 루프 회피 방법의 절차를 도시한 것이다.
도 7은 또 다른 양상에 따른 마이크로 루프 회피 방법의 절차를 도시한 것이다.
도 2는 링크 장애 복구로 인한 최단 경로 변경으로 마이크로 루프가 발생하는 것을 도시한 것이다.
도 3은 일 실시 예에 따라 링크 장애 시 백업 경로를 활성화하고 트래픽을 우회시키는 것을 도시한 것이다.
도 4는 일 실시 예에 따라 링크 장애 시 마이크로 루프 발생 없이 최단 경로가 변경되는 것을 도시한 것이다.
도 5는 또 다른 실시 예에 따라 링크 복구 시 마이크로 루프 발생 없이 최단 경로가 변경되는 것을 도시한 것이다.
도 6은 일 양상에 따른 마이크로 루프 회피 방법의 절차를 도시한 것이다.
도 7은 또 다른 양상에 따른 마이크로 루프 회피 방법의 절차를 도시한 것이다.
전술한, 그리고 추가적인 양상들은 첨부된 도면을 참조하여 설명하는 실시 예들을 통해 구체화된다. 각 실시 예들의 구성 요소들은 다른 언급이나 상호간에 모순이 없는 한 실시 예 내에서 다양한 조합이 가능한 것으로 이해된다. 블록도의 각 블록은 어느 경우에 있어서 물리적인 부품을 표현할 수 있으나 또 다른 경우에 있어서 하나의 물리적인 부품의 기능의 일부 혹은 복수의 물리적인 부품에 걸친 기능의 논리적인 표현일 수 있다. 때로는 블록 혹은 그 일부의 실체는 프로그램 명령어들의 집합(set)일 수 있다. 이러한 블록들은 전부 혹은 일부가 하드웨어, 소프트웨어 혹은 이들의 결합에 의해 구현될 수 있다.
도 1은 링크 장애 발생으로 인한 최단 경로 변경으로 마이크로 루프가 발생하는 것을 도시한 것이다. 도 1은 9개의 라우터 노드로 구성된 라우터 도메인에 대한 링 토폴로지(Ring Topology)를 도시하고 있다. 도 1에 도시된 라우터 노드는 네트워크에서 IP 패킷 즉, 트래픽의 전송을 위해 경로 지정을 하는 장치로 IP 패킷을 출발지에서 목적지까지 가장 빠르고 효율적인 경로를 찾아 전달한다. 도 1에서 라우터 노드9가 다른 라우터 도메인으로 넘어가는 게이트웨이(Gateway)이다. 각 라우터 노드 간 링크 코스트는 모두 동일한 것을 가정한다. 예를 들어, 도 1에서 라우팅 프로토콜로 OSPF(Open Shortest Path First)가 사용되는 경우 각 라우터 노드 간의 링크 코스트는 통상적으로 링크 속도에 따라 정의되므로 모두 동일한 속도의 링크로 설정되어 있다고 가정한다. 외부 라우터로 전달되어야 하는 라우터 노드4에서 시작되는 패킷은 최단 경로(Shortest Path)를 따라 라우터 노드3/라우터 노드2/라우터 노드1/라우터 노드9를 거쳐 목적지로 전송된다. 마찬가지로 라우터 노드5에서 시작되는 패킷은 최단 경로를 따라 라우터 노드6/라우터 노드7/라우터 노드8/라우터 노드9를 거쳐 목적지로 전송된다.
이때, 도 1에 도시된 것과 같이 라우터 노드1과 라우터 노드9 사이의 링크가 다운된 경우 토폴로지 변경 이벤트(링크 절체 이벤트)가 라우터 노드1과 라우터 노드9에 발생하고, 라우터 노드1과 라우터 노드9는 토폴로지 변경 통지(Topology Change Notification) 정보를 같은 Area에 있는 다른 라우터 노드들에 전달한다. 예를 들어, 라우팅 프로토콜이 ISIS인 경우에는 LSP(Link State Packet)를 통해, 라우팅 프로토콜이 OSPF인 경우에는 LSA(Link Status Advertisement)를 통해 다른 라우터 노드들에 전달한다.
토폴토지 변경 이벤트가 발생한 라우터 노드 또는 토폴로지 변경 통지 정보를 수신한 라우터 노드는 SPF(Shortest Path First) 계산을 하여 새로운 최단 경로를 선출한다. 선출된 새로운 최단 경로는 라우터에서 패킷을 포워딩하는 데이터 평면(Data Plane)에 위치한 라우팅 테이블인 FIB(Forwarding Information Base)에 인스톨 즉, 반영된다. 이때 각 라우터 노드 간에 FIB 인스톨 시간이 상이하여 인접한 라우터 노드간에 마이크로 루프가 발생한다. 도 1에 도시된 예에서, 라우터 노드2와 라우터 노드3 사이에서 라우터 노드2가 먼저 새로운 경로를 FIB에 인스톨하여 패킷을 라우터 노드3으로 우회하여 포워딩하고 있는데 라우터 노드3은 아직 새로운 경오를 FIB에 인스톨 하지 못하여 라우터 노드3이 다시 해당 패킷을 라우터 노드2로 다시 보내면 라우터 노드2와 라우터 노드3 사이에 일시적으로 마이크로 루프가 발생하게 되고 이로 인해 라우터 노드3이 새로운 경로를 FIB에 인스톨할 때까지 패킷 손실이 발생한다. 마이크로 루프는 도 1에서 라우터 노드1과 라우터 노드2 사이, 라우터 노드2와 라우터 노드3 사이, 라우터 노드 3과 라우터 노드4사이에 발생할 수 있다.
이때 라우터 노드5/6/7/8/9는 토폴로지 변경으로 인한 최단 경로 변경이 없어 도 1에 도시된 것과 갈이 SPF 경로 상의 다음 홉이 변경되지 않는다.
도 2는 링크 장애 복구로 인한 최단 경로 변경으로 마이크로 루프가 발생하는 것을 도시한 것이다. 도 2에 도시된 것과 같이 링크 장애가 복구되는 경우에도 마이크로 루프가 발생할 수 있다. 도 2는 라우터 노드1과 라우터 노드9 사이의 링크 장애로 최단 경로가 변경된 후 링크 장애가 복구되어 다시 최단 경로가 변경되는 것을 도시한 것이다. 도 1의 경우와 마찬가지로 토폴로지 변경 이벤트가 라우터 노드1과 라우터 노드9에 발생하고, 라우터 노드1과 라우터 노드9는 토폴로지 변경 통지 정보를 같은 Area에 있는 다른 라우터 노드들에 전달한다. 각 라우터 노드는 SPF 계산을 하여 새로운 최단 경로를 선출하고, 선출된 새로운 최단 경로를 FIB에 인스톨 한다. 이때 각 라우터 노드 간에 FIB 인스톨 시간이 상이하여 인접한 라우터 노드간에 마이크로 루프가 발생한다. 도 2에 도시된 예에서, 라우터 노드2와 라우터 노드3 사이에서 라우터 노드3이 먼저 새로운 경로를 FIB에 인스톨하여 패킷을 노드2로 포워딩하고 있는데 라우터 노드2는 아직 새로운 경오를 FIB에 인스톨 하지 못하여 여전히 라우터 노드2가 다시 해당 패킷을 라우터 노드3으로 다시 보내면 라우터 노드2와 라우터 노드3 사이에 일시적으로 마이크로 루프가 발생하게 되고 이로 인해 라우터 노드2가 새로운 경로를 FIB에 인스톨할 때까지 패킷 손실이 발생한다. 마이크로 루프는 도 2에서 라우터 노드1과 라우터 노드2 사이, 라우터 노드2와 라우터 노드3 사이, 라우터 노드 3과 라우터 노드4사이에 발생할 수 있다.
도 3은 일 실시 예에 따라 링크 장애 시 백업 경로를 활성화하고 트래픽을 우회시키는 것을 도시한 것이다. 도 3에 도시된 것과 같이 라우터 노드1과 라우터 노드9 사이의 링크 절체 시 라우터 노드1은 빠른 장애 복구를 위하여 FRR(Fast Reroute)를 적용하여 미리 설정된 백업 경로를 활성화하고 패킷를 우회시킨다. 도 3의 링 토폴로지에서는 RLFA(Remote Loop Free Alternative) 프로토콜을 이용하여 PQ 노드(라우터 노드5)로 백업 터널(Backup tunnel)을 만들어 패킷이 손실되지 않도록 한다. 이때 라우터 노드2와 라우터 노드3과 라우터 노드4는 여전히 링크 절체 이벤트 발생 전의 최단 경로를 통해 패킷을 전송하고, 라우터 노드1은 해당 패킷을 백업 터널을 이용하여 패킷을 전송한다. 즉, 일 실시 예에 따른 마이크로 루프 회피 방법은 링크 절체 이벤트가 발생한 순간 FRR 프로토콜을 이용하여 패킷 손실을 최소화한다.
라우터 노드1과 라우터 노드9는 토폴로지 변경 통지(TCN) 정보를 같은 Area에 있는 다른 라우터 노드들에 전달한다. 예를 들어, 라우팅 프로토콜이 ISIS인 경우에는 LSP(Link State Packet)를 통해, 라우팅 프로토콜이 OSPF인 경우에는 LSA(Link Status Advertisement)를 통해 다른 라우터 노드들에 전달한다.
도 4는 일 실시 예에 따라 링크 장애 시 마이크로 루프 발생 없이 최단 경로가 변경되는 것을 도시한 것이다. 링크 절체 이벤트가 발생한 라우터 노드와 라우터 노드1 및 라우터 노드9로부터 TCN 정보를 전달 받은 각 라우터 노드는 SPF 타이머를 구동시키고, SPF 타이머가 종료(Expire)되면 SPF를 수행하여 최단 경로를 다시 선출한다. 새로 선출된 목적지로의 최단 경로는 새로운 메트릭(Metric) 정보를 가진다. 도 4의 예에서 각 라우터 노드 사이의 링크 구간이 모두 동일한 10의 메트릭을 가지는 것으로 가정하면, 라우터 노드9까지 가는 경로의 경우 라우터 노드9까지 홉(hop)을 지날 때마다 메트릭이 10씩 증가하게 되므로 라우터 노드4의 경우 메트릭이 50이고, 라우터 노드3의 경우 메트릭이 60이고, 라우터 노드2의 경우 메트릭이 70이고, 라우터 노드1의 경우 메트릭이 80이 된다.
각 라우터 노드는 SPF 계산이 완료되면 새로운 경로 정보를 FIB에 바로 적용하나 이 실시 예에서는 바로 FIB에 적용하지 않고 메트릭 값을 이용하여 지연 시간을 계산하고 그 시간만큼 FIB 인스톨 시간을 지연시켜 마이크로 루프를 발생을 최소화할 수 있다. 메트릭 값을 이용하여 지연 시간을 계산하는 식은 제한이 없으나 메트릭 값에 의해 각 라우터 노드가 서로 다른 시간에 경로 정보를 FIB에 인스톨할 수 있어야 한다. 일 예로, 지연 시간을 계산하는 식은 미리 설정된 지연 상수(도 4에서 Max Convergence 값, 100)에 메트릭 값을 곱한 결과를 ms 단위의 시간으로 환산하여 그 시간만큼 지연시킨다. 즉, 라우터 노드4의 경우 100*50(Metric)하여 5000ms 즉, 5초를 지연시킨 후 FIB를 인스톨하고, 같은 방법으로 라우터 노드3의 경우 6초, 라우터 노드2의 경우 7초, 라우터 노드1의 경우 8초 지연 후 FIB를 인스톨한다. 도 4의 예에서 순차적으로 라우터 노드4/3/2/1의 순서로 새로운 경로가 FIB에 인스톨되어 라우터 노드3이 FIB를 인스톨할 때에는 이미 라우터 노드4가 FIB를 인스톨하였기 때문에 라우터 노드3과 라우터 노드4 사이에는 마이크로 루프가 발생하지 않게 된다. 마찬가지로 라우터 노드2와 라우터 노드3 사이, 라우터 노드1과 라우터 노드2 사이에도 마이크로 루프가 발생하지 않게 된다. 라우터 노드1의 경우 FIB 인스톨과 함께 백업 경로도 비활성화한다.
도 5는 또 다른 실시 예에 따라 링크 복구 시 마이크로 루프 발생 없이 최단 경로가 변경되는 것을 도시한 것이다. 링크 절체 이벤트가 발생한 라우터 노드와 라우터 노드1 및 라우터 노드9로부터 TCN 정보를 전달 받은 각 라우터 노드는 SPF 타이머를 구동시키고, SPF 타이머가 종료(Expire)되면 SPF를 수행하여 최단 경로를 다시 선출한다. 새로 선출된 목적지로의 최단 경로는 새로운 메트릭(Metric) 정보를 가진다. 도 5의 예에서 각 라우터 노드 사이의 링크 구간이 모두 동일한 10의 메트릭을 가지는 것으로 가정하면, 라우터 노드9까지 가는 경로의 경우 라우터 노드9까지 홉(hop)을 지날 때마다 메트릭이 10씩 증가하게 되므로 라우터 노드1의 경우 메트릭이 10이고, 라우터 노드2의 경우 메트릭이 20이고, 라우터 노드3의 경우 메트릭이 30이고, 라우터 노드4의 경우 메트릭이 40이 된다.
각 라우터 노드는 SPF 계산이 완료되면 메트릭 값을 이용하여 지연 시간을 계산하고 그 시간만큼 FIB 인스톨 시간을 지연시켜 마이크로 루프를 발생을 최소화할 수 있다. 메트릭 값을 이용하여 지연 시간을 계산하는 식은 제한이 없으나 메트릭 값에 의해 각 라우터 노드가 서로 다른 시간에 경로 정보를 FIB에 인스톨할 수 있어야 한다. 일 예로, 지연 시간을 계산하는 식은 미리 설정된 지연 상수(도 5에서 Max Convergence 값, 100)에 메트릭 값을 곱한 결과를 ms 단위의 시간으로 환산하여 그 시간만큼 지연시킨다. 즉, 라우터 노드4의 경우 100*40(Metric)하여 4000ms 즉, 4초를 지연시킨 후 FIB를 인스톨하고, 같은 방법으로 라우터 노드3의 경우 3초, 라우터 노드2의 경우 2초, 라우터 노드1의 경우 1초 지연 후 FIB를 인스톨한다. 도 5의 예에서 순차적으로 라우터 노드1/2/3/4의 순서로 새로운 경로가 FIB에 인스톨되어 라우터 노드3이 FIB를 인스톨할 때에는 이미 라우터 노드2가 FIB를 인스톨하였기 때문에 라우터 노드3과 라우터 노드2 사이에는 마이크로 루프가 발생하지 않게 된다. 마찬가지로 라우터 노드4와 라우터 노드3 사이, 라우터 노드1과 라우터 노드2 사이에도 마이크로 루프가 발생하지 않게 된다.
도 6은 일 양상에 따른 마이크로 루프 회피 방법의 절차를 도시한 것이다. 도 6에 도시된 일 양상에 따른 마이크로 루프 회피 방법은 다수의 라우터 노드를 포함하는 네트워크에서 발생한 토폴로지 변경으로 인한 발생하는 마이크로 루프를 회피하는 방법으로 백업 경로 활성화 단계와, 토폴로지 변경 통지 단계와, 최단 경로 선출 단계와, 최단 경로 반영 단계를 포함한다.
다수의 라우터 노드를 포함하는 네트워크 즉, 라우팅 도메인에서 라우터 노드 사이의 링크 장애 등이 발생하면 토폴로지 변경 이벤트가 발생한다. 토폴로지 변경 이벤트가 발생하는 라우터 노드를 PLR(Point of Local Repair)라고 한다.
백업 경로 활성화 단계는 토폴로지 변경 이벤트가 발생한 라우터 노드 즉, PLR 노드가 미리 설정된 백업 경로를 활성화하는 단계이다. 미리 설정된 백업 경로는 링크 절체시 트래픽 손실을 최소화하기 위해 패킷을 우회하는 경로이다. 이러한 백업 경로를 이용하여 패킷을 우회시키는 기술을 FRR이라고 한다.
토폴로지 변경 통지 단계는 토폴로지 변경 이벤트가 발생한 라우터 노드가 네트워크 즉, 라우팅 도메인의 다른 모든 라우터 노드로 토폴로지 변경 통지 정보를 통지하는 단계이다.
최단 경로 선출 단계는 PLR 노드로 링크 장애를 감지하거나 토폴로지 변경 통지 정보를 수신하여 토폴로지 변경을 인식한 각 라우터 노드가 일정 시간 즉, SPF 타이머 시간 동안 대기 후 SPF 타이머가 만료되면 목적지까지의 라우터 메트릭을 다시 계산하여 최단 경로를 선출하는 단계이다.
최단 경로 반영 단계는 토폴로지 변경을 인식한 각 라우터 노드가 계산된 라우터 메트릭 값에 따라 계산된 지연 시간을 대기한 후 선출된 최단 경로를 라우팅 테이블에 반영하는 단계이다. 이때 각 라우터 노드에서 계산되는 지연 시간은 라우터 마다 메트릭 값에 따라 다르게 계산된다.
도 6을 참조하여 설명하면, 라우터 노드가 자신의 인터페이스에 연결된 링크 장애를 감지하면(S1000), FRR 프로토콜에 따라 미리 설정된 백업 경로를 활성화하여 트래픽을 해당 경로로 우회시킨다(S1020). 해당 라우터 노드는 토폴로지 변경 통지 정보를 동일 라우팅 도메인의 다른 모든 라우터 노드로 통지하고(S1040), 각 라우터 노드들은 다시 SPF 계산을 수행하여 최단 경로를 선출한다(S1060). 이때 각 라우터 노드는 새로운 최단 경로에 대한 새로운 메트릭 값을 가지게 된다. 각 라우터 노드는 라우터 메트릭 값을 이용하여 지연 시간을 계산하고(S1080), 계산된 지연 시간만큼 대기(S1100)한 후 선출된 최단 경로를 FIB에 반영한다(S1120).
발명의 또 다른 양상에 따르면, 최단 경로 반영 단계에서 각 라우터 노드가 대기하는 지연 시간은 미리 설정된 지연 상수 값과 라우터 메트릭 값의 곱으로 계산될 수 있다.
발명의 또 다른 양상에 따르면, 토폴로지의 변경은 링크 장애뿐만 아니라 링크 장애로부터 복구되는 경우에 발생한다. 토폴로지 변경 이벤트가 링크 장애의 복구에 의해 발생된 경우에는 백업 경로 활성화 단계에서 백업 경로는 링크 장애가 복구하기 전 즉, 현재의 전송 경로이다. 따라서, 링크 복구의 경우 원래 경로(링크 절체로 인해 새로 선출된 최단 경로)가 이미 존재하고 있으므로 새로운 최단 경로가 FIB에 인스톨되기 전까지 원래 경로가 백업 경로이다. 따라서, 이 경우에는 따로 백업 경로를 활성화할 필요가 없다.
발명의 또 다른 양상에 따르면, 최단 경로 반영 단계에서의 각 라우터 노드는 지연 상수 값을 다르게 설정할 수 있다. 즉, 각 라우터 노드에서 미리 설정된 지연 상수 값은 적어도 하나의 라우터 노드에서 다른 값으로 설정될 수 있다. 지연 상수 값의 설정은 운영자가 CLI(Command Line Interface)를 통해 할 수 있다. 이때 운영자는 각 라우터 노드에 대하여 토폴로지 변경으로 변경되어야 하는 Routing Entry의 수, 라우터 노드의 CPU 성능, 라우터 노드의 트래픽 처리량 등을 고려하여 다르게 설정할 수 있다.
발명의 또 다른 양상에 따르면, 각 라우터 노드마다 지연 상수 값이 다르게 설정된 경우 마이크로 루프 회피 방법은 토폴로지 변경 이벤트 발생 전에, 미리 각 라우터 노드가 설정된 지연 상수 값을 다른 라우터 노드로 통지하는 단계와, 다른 라우터 노드의 설정된 지연 상수 값을 수신한 라우터 노드가 설정된 지연 상수 값과 비교하여 큰 값으로 지연 상수 값을 결정하는 단계를 더 포함할 수 있다. 운영자가 각 라우터 노드 마다 지연 상수 값을 다르게 설정하고 각 라우터 노드는 IGP를 통해 해당 값을 공유할 수 있다. 일 예로, OSPF 라우팅 프로토콜을 사용하는 라우터의 경우 RFC 4970에, ISIS 라우팅 프로토콜을 사용하는 라우터의 경우 RFC 4971에 Originator Router가 자신의 속성을 광고하는 Router Capability TLV를 정의하고 있고, 새로운 Sub TLV를 정의하여 해당 지연 상수 값을 공유할 수 있다.
도 7은 또 다른 양상에 따른 마이크로 루프 회피 방법의 절차를 도시한 것이다. 발명의 또 다른 양상에 따르면, 토폴로지 변경 통지 단계에서 통지하는 토폴로지 변경 통지 정보가 마이크로 루프 회피 방법 적용 여부를 포함할 수 있다.
백업 경로가 미리 설정되어 있지 않은 라우터 노드에 토폴로지 변경 이벤트가 발생하는 경우 해당 라우터 노드는 마이크로 루프 회피 방법이 적용되지 않음이 설정된 토폴로지 변경 통지 정보를 다른 라우터 노드로 통지한다. 이때 해당 통지를 수신한 각 라우터 노드는 최단 경로 반영 단계에서 대기하는 지연 시간 없이 선출된 최단 경로를 라우팅 테이블에 즉시 반영할 수 있다. 다만, 이 경우에는 마이크로 루프가 발생할 수 있다.
도 7을 참조하여 설명하면, 라우터 노드가 자신의 인터페이스에 연결된 링크 장애를 감지하면(S2000), 백업 경로가 설정되어 있는지 확인한다(S2020). 백업 경로가 설정되어 있지 않으면 마이크로 루프 회피 방법이 적용되지 않음이 설정된 토폴로지 변경 통지 정보를 다른 라우터 노드로 통지하고(S2160) 각 라우터 노드들은 다시 SPF 계산을 수행하여 최단 경로를 선출하고(S2180), 선출된 최단 경로를 FIB에 반영한다(S2140). 백업 경로가 설정되어 있으면, FRR 프로토콜에 따라 미리 설정된 백업 경로를 활성화하여 트래픽을 해당 경로로 우회시킨다(S2040). 해당 라우터 노드는 마이크로 루프 회피 방법이 적용됨이 설정된 토폴로지 변경 통지 정보를 동일 라우팅 도메인의 다른 모든 라우터 노드로 통지하고(S2060), 각 라우터 노드들은 다시 SPF 계산을 수행하여 최단 경로를 선출한다(S2080). 이때 각 라우터 노드는 새로운 최단 경로에 대한 새로운 메트릭 값을 가지게 된다. 각 라우터 노드는 라우터 메트릭 값을 이용하여 지연 시간을 계산하고(S2100), 계산된 지연 시간만큼 대기(S2120)한 후 선출된 최단 경로를 FIB에 반영한다(S2140).
일 실시 예에 따르면, 네트워크의 장애 또는 복구 시 토폴로지 변경으로 인한 마이크로 루프를 회피 방법을 사용하는 라우터 노드는 토폴로지 변경 이벤트가 발생하면 미리 설정된 백업 경로를 활성화하고, 네트워크의 다른 라우터 노드로 토폴로지 변경 통지 정보를 통지하며, 토폴로지 변경 이벤트 발생하거나 다른 라우터 노드로부터 토폴로지 변경 통지 정보를 수신하여 토폴로지 변경을 인식하면 일정 시간 대기 후 목적지까지의 라우터 메트릭을 다시 계산하여 최단 경로를 선출하고, 계산된 라우터 메트릭 값에 따라 다른 지연 시간을 대기한 후 선출된 최단 경로를 라우팅 테이블에 반영할 수 있다.
또 다른 실시 예에 따르면, 라우터 노드가 선출된 최단 경로를 라우팅 테이블에 반영하기 위해 대기하는 지연 시간은 미리 설정된 지연 상수 값과 라우터 메트릭 값의 곱으로 계산될 수 있다.
또 다른 실시 예에 따르면, 미리 설정된 지연 상수 값은 다른 라우터 노드와 다른 값으로 설정될 수 있다.
또 다른 실시 예에 따르면, 각 라우터 노드는 지연 상수 값을 다르게 설정할 수 있고 이 경에는 사전에, 설정된 지연 상수 값을 다른 라우터 노드로 통지하고, 다른 라우터 노드의 설정된 지연 상수 값을 수신하면 설정된 지연 상수 값과 비교하여 큰 값으로 지연 상수 값을 결정할 수 있다.
또 다른 실시 예에 따르면, 토폴로지 변경 통지 정보는 마이크로 루프 회피 방법 적용 여부를 포함하고, 라우터 노드는 백업 경로가 미리 설정되어 있지 않은 경우 토폴로지 변경 이벤트가 발생하면 마이크로 루프 회피 방법이 적용되지 않음이 설정된 토폴로지 변경 통지 정보를 다른 라우터 노드로 통지하고, 마이크로 루프 회피 방법이 적용되지 않음이 설정된 토폴로지 변경 통지 정보를 수신하면 대기하는 지연 시간 없이 선출된 최단 경로를 라우팅 테이블에 반영할 수 있다.
이상에서 본 발명을 첨부된 도면을 참조하는 실시 예들을 통해 설명하였지만 이에 한정되는 것은 아니며, 이들로부터 당업자라면 자명하게 도출할 수 있는 다양한 변형 예들을 포괄하도록 해석되어야 한다. 특허청구범위는 이러한 변형 예들을 포괄하도록 의도되었다.
Claims (10)
- 다수의 라우터 노드를 포함하는 네트워크에서 발생한 토폴로지 변경으로 인한 마이크로 루프(microloop) 회피 방법에 있어서,
토폴로지 변경 이벤트가 발생한 라우터 노드가 미리 설정된 백업 경로를 활성화하는 백업 경로 활성화 단계;
토폴로지 변경 이벤트가 발생한 라우터 노드가 네트워크의 다른 라우터 노드로 토폴로지 변경 통지 정보를 통지하는 토폴로지 변경 통지 단계;
토폴로지 변경을 인식한 각 라우터 노드가 일정 시간 대기 후 목적지까지의 라우터 메트릭을 다시 계산하여 최단 경로를 선출하는 최단 경로 선출 단계; 및
토폴로지 변경을 인식한 각 라우터 노드가 계산된 라우터 메트릭 값을 이용하여 지연 시간을 계산하고, 각 라우터 노드는 계산된 지연 시간을 대기한 후 선출된 최단 경로를 라우팅 테이블에 반영하는 최단 경로 반영 단계;
를 포함하는 마이크로 루프 회피 방법.
- 제 1 항에 있어서,
최단 경로 반영 단계에서 각 라우터 노드가 대기하는 지연 시간은 미리 설정된 지연 상수 값과 라우터 메트릭 값의 곱으로 계산되는 마이크로 루프 회피 방법.
- 제 2 항에 있어서,
최단 경로 반영 단계에서의 미리 설정된 지연 상수 값은 적어도 하나의 라우터 노드에서 다른 값으로 설정되는 마이크로 루프 회피 방법.
- 제 3 항에 있어서, 상기 방법은
토폴로지 변경 이벤트 발생 전에, 각 라우터 노드가 설정된 지연 상수 값을 다른 라우터 노드로 통지하는 단계; 및
다른 라우터 노드의 설정된 지연 상수 값을 수신한 라우터 노드가 설정된 지연 상수 값과 비교하여 큰 값으로 지연 상수 값을 결정하는 단계;
를 더 포함하는 마이크로 루프 회피 방법.
- 제 1 항에 있어서,
토폴로지 변경 통지 단계에서 통지하는 토폴로지 변경 통지 정보가 마이크로 루프 회피 방법 적용 여부를 포함하고,
백업 경로가 미리 설정되어 있지 않은 라우터 노드에 토폴로지 변경 이벤트가 발생한 경우 라우터 노드는 마이크로 루프 회피 방법이 적용되지 않음이 설정된 토폴로지 변경 통지 정보를 다른 라우터 노드로 통지하고,
최단 경로 반영 단계에서 각 라우터 노드는 대기하는 지연 시간 없이 선출된 최단 경로를 라우팅 테이블에 반영하는 마이크로 루프 회피 방법.
- 네트워크의 장애 또는 복구 시 토폴로지 변경으로 인한 마이크로 루프를 회피하는 기능을 수행하는 라우터 노드에 있어서,
토폴로지 변경 이벤트가 발생하면 미리 설정된 백업 경로를 활성화하고, 네트워크의 다른 라우터 노드로 토폴로지 변경 통지 정보를 통지하며,
토폴로지 변경을 인식하면 일정 시간 대기 후 목적지까지의 라우터 메트릭을 다시 계산하여 최단 경로를 선출하고, 계산된 라우터 메트릭 값을 이용하여 지연 시간을 계산하고, 계산된 지연 시간을 대기한 후 선출된 최단 경로를 라우팅 테이블에 반영하는 라우터 노드.
- 제 6 항에 있어서,
대기하는 지연 시간은 미리 설정된 지연 상수 값과 라우터 메트릭 값의 곱으로 계산되는 라우터 노드.
- 제 7 항에 있어서,
미리 설정된 지연 상수 값은 다른 라우터 노드와 다른 값으로 설정되는 라우터 노드.
- 제 8 항에 있어서,
토폴로지 변경 이벤트 발생 전에, 설정된 지연 상수 값을 다른 라우터 노드로 통지하고, 다른 라우터 노드의 설정된 지연 상수 값을 수신하면 설정된 지연 상수 값과 비교하여 큰 값으로 지연 상수 값을 결정하는 라우터 노드.
- 제 6 항에 있어서,
토폴로지 변경 통지 정보는 마이크로 루프 회피 방법 적용 여부를 포함하고,
백업 경로가 미리 설정되어 있지 않은 경우 토폴로지 변경 이벤트가 발생하면 마이크로 루프 회피 방법이 적용되지 않음이 설정된 토폴로지 변경 통지 정보를 다른 라우터 노드로 통지하고,
마이크로 루프 회피 방법이 적용되지 않음이 설정된 토폴로지 변경 통지 정보를 수신하면 대기하는 지연 시간 없이 선출된 최단 경로를 라우팅 테이블에 반영하는 라우터 노드.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190007498A KR102123689B1 (ko) | 2019-01-21 | 2019-01-21 | 마이크로 루프 회피 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190007498A KR102123689B1 (ko) | 2019-01-21 | 2019-01-21 | 마이크로 루프 회피 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102123689B1 true KR102123689B1 (ko) | 2020-06-16 |
Family
ID=71141671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190007498A KR102123689B1 (ko) | 2019-01-21 | 2019-01-21 | 마이크로 루프 회피 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102123689B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220337507A1 (en) * | 2021-04-16 | 2022-10-20 | Microsoft Technology Licensing, Llc | Convergence function to avoid micro-loops |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130301403A1 (en) * | 2012-05-09 | 2013-11-14 | Juniper Networks, Inc. | Fast reroute using loop free alternate next hops for multipoint label switched paths |
US9838246B1 (en) * | 2014-09-30 | 2017-12-05 | Juniper Networks, Inc. | Micro-loop prevention using source packet routing |
-
2019
- 2019-01-21 KR KR1020190007498A patent/KR102123689B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130301403A1 (en) * | 2012-05-09 | 2013-11-14 | Juniper Networks, Inc. | Fast reroute using loop free alternate next hops for multipoint label switched paths |
US9838246B1 (en) * | 2014-09-30 | 2017-12-05 | Juniper Networks, Inc. | Micro-loop prevention using source packet routing |
Non-Patent Citations (1)
Title |
---|
IETF, RFC 8333. Micro-loop Prevention by Introducing a Local Convergence Delay. ISSN: 2070-1721. 2018년 5월.* * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220337507A1 (en) * | 2021-04-16 | 2022-10-20 | Microsoft Technology Licensing, Llc | Convergence function to avoid micro-loops |
US11528215B2 (en) * | 2021-04-16 | 2022-12-13 | Microsoft Technology Licensing, Llc | Convergence function to avoid micro-loops |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6721269B2 (en) | Apparatus and method for internet protocol flow ring protection switching | |
US8055791B2 (en) | Protecting connection traffic using filters | |
Sharma et al. | OpenFlow: Meeting carrier-grade recovery requirements | |
US9088485B2 (en) | System, method and apparatus for signaling and responding to ERO expansion failure in inter-domain TE LSP | |
US7817539B2 (en) | Resilient routing systems and methods | |
US7580360B2 (en) | Method and apparatus for generating routing information in a data communications network | |
US7554921B2 (en) | Method and apparatus for generating routing information in a data communication network | |
CA2542045C (en) | Transparent re-routing of mpls traffic engineering lsps within a link bundle | |
US20020093954A1 (en) | Failure protection in a communications network | |
EP1757022A2 (en) | Avoiding micro-loop upon failure of fast reroute protected links | |
US8218453B2 (en) | Network router and method of configuring a network router | |
Thorat et al. | Rapid recovery from link failures in software-defined networks | |
Li et al. | SafeGuard: safe forwarding during route changes | |
KR102123689B1 (ko) | 마이크로 루프 회피 방법 | |
CN113366804A (zh) | 防止网络拓扑改变期间的微环路的方法和系统 | |
US11451478B1 (en) | Distributed tactical traffic engineering (TE) using loop free alternative (LFA), remote-LFA (R-LFA) and/or topology independent-LFA (TI-LFA) secondary paths | |
KR20220028319A (ko) | 마이크로 루프 회피 방법 | |
CA2537898C (en) | Method and apparatus for generating routing information in a data communications network | |
Francois | Improving the convergence of IP routing protocols. | |
CN103795625A (zh) | 多协议标签交换网络的快速重路由实现方法及装置 | |
Atlas et al. | IP Fast Reroute Overview and Things we are struggling to solve | |
Abujassar et al. | An efficient pre-computed backup path on the IGP network communication | |
Ala et al. | Core Backbone Convergence Mechanisms and Microloops Analysis | |
Kumar et al. | Link/Node Failure Recovery through Backup Path Lengths | |
Dong et al. | Adaptive segment path restoration (ASPR) in MPLS networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GRNT | Written decision to grant |