KR20180023009A - 네트워크에서 링크 손실을 처리하기 위한 시스템 및 방법 - Google Patents

네트워크에서 링크 손실을 처리하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20180023009A
KR20180023009A KR1020187004590A KR20187004590A KR20180023009A KR 20180023009 A KR20180023009 A KR 20180023009A KR 1020187004590 A KR1020187004590 A KR 1020187004590A KR 20187004590 A KR20187004590 A KR 20187004590A KR 20180023009 A KR20180023009 A KR 20180023009A
Authority
KR
South Korea
Prior art keywords
node
nodes
event
link loss
controller
Prior art date
Application number
KR1020187004590A
Other languages
English (en)
Other versions
KR102072148B1 (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 구글 엘엘씨
Publication of KR20180023009A publication Critical patent/KR20180023009A/ko
Application granted granted Critical
Publication of KR102072148B1 publication Critical patent/KR102072148B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/14Routing performance; Theoretical aspects
    • 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/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • 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/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/247Multipath using M:N active or standby paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

복수의 주 링크들(182-186)을 통해 상호연결되는 복수의 네트워크 노드들(152-158) 및 상기 복수의 네트워크 노드들(152-158)과 통신하는 제어기(110)를 포함하는 네트워크에서, 제어기(110)는 이벤트 프로파일을 복수의 네트워크 노드들(152-158)에 제공하도록 구성되고, 이벤트 프로파일은 다양한 링크 손실 시나리오들에서 구현될 라우팅 변경들을 표시한다. 복수의 노드들(152-158) 각각은 특정 링크 손실 이벤트가 발생했음을 결정하고, 이벤트 프로파일에 기반하여 특정 링크 손실 이벤트에 대한 라우팅 변경들을 결정하며, 그리고 결정된 라우팅 변경들을 구현하도록 구성된다.

Description

네트워크에서 링크 손실을 처리하기 위한 시스템 및 방법
[0001] 본 출원은 2015년 11월 2일에 출원된 미국 특허 출원 제14/929,991호의 계속 출원이고, 그로 인해서 그 미국 특허 출원의 개시내용은 인용에 의해서 본원에 통합된다.
[0002] 클라우드-관리 mmWave에 기반한 포인트-투-멀티포인트 메시 백홀은 mmWave 송신들 및 수신의 중앙집중형 스케줄링이 중앙 클라우드 SDWN(Software Defined Wireless Network) 제어기에 의해 완전히 조정되는 것을 필요로 한다. 게다가, 네트워크에서 노드들에 걸친 네트워크 레벨 라우팅 결정들이 또한 제어기에 의해서 조정된다. 이는 관리되는 mmWave 노드들과 SDWN 클라우드 제어기 사이의 신뢰적인 연결을 가정한다. 그러나, mmWave 링크 기술들이 매우 높은 라디오 주파수들에서 동작하고, 이는 통상적으로 LOS(line-of-sight) 라디오 경로들을 필요로 한다. 이러한 LOS 라디오 경로들은 더 강건한 NLOS(non-line-of-sight) 라디오 경로들에서 동작가능할 수도 있는 종래의 라디오 통신 시스템들보다는 저주파수들에서 본래 덜 신뢰적일 수 있다.
[0003] 제어기로의 통신을 위해 어떠한 대역외 메커니즘도 존재하지 않는다는 중요한 가정을 통해, 백홀에서 노드들 사이의 데이터 경로 라우팅은 노드들로부터 제어기로의 제어 경로 통신과 동일한 링크 경로들을 활용한다. 제어기 자체로의 통신을 위해서 그리고 라우팅 및 채널 스케줄링 업데이트들을 관리하기 위해서 제어기에 의해 관리되는 링크들을 동시에 사용하는 것은 활성 링크의 손실 동안에 문제를 발생시킨다. 링크 손실 동안에, 노드는 제어기로의 현재 설정된 네트워크 경로를 손실한다. 로컬 또는 분산형 라우팅으로 다시 돌아가는 것은 네트워크에서 루프들 또는 브로드캐스트 스톰들(broadcast storms)을 발생시킬 위험을 무릅쓸 것이거나, 또는 네트워크 관리 오버헤드를 발생시키는 복잡한 로컬 분산형 알고리즘들을 필요로할 가능성이 있다.
[0004] 일부 네트워크들은 유사한 사용 사례들의 경우에 제어기와의 대역외 연결을 활용하고, 그로 인해 활성적으로 관리되는 링크가 제어기와의 연결을 위해 사용되지 않는다. 이는 관리되고 있는 링크들과는 무관한 신뢰성을 갖는 통신 경로를 제어기에 제공한다. 그러나, 이는 또한 추가적인 연결 기술, 어쩌면 하드웨어, 소프트웨어 및 관리 비용, 및 복잡성 오버헤드를 제품에 추가하는 것이 관리되고 있는 노드들에서 구현될 것을 필요로 한다.
[0005] 본 개시내용은 제어기가 링크 손실 동안에 토폴로지에 대한 라우팅 및 스케줄링 변경들을 중앙집중식으로 계속 처리할 수 있게 하는 클라우드-관리 포인트-투-멀티포인트 mmWave 메시 백홀에 적용가능한 메커니즘을 강조한다. 데이터 경로 라우팅을 위해서 그리고 제어기로의 제어 경로 통신들을 위해서 사용되는 활성 링크가 연결해제될 때는, 이용가능한 대안적인 링크들이 사용된다. 이러한 메커니즘들은 mmWave 물리 계층 통신들의 매우 지향적인 특성을 수용하는데, 그 mmWave 물리 계층 통신들은 예컨대 높은 이득, 좁은 빔 안테나들, 위상 배열들과 같은 동적 빔형성 기술들 등을 포함한다.
[0006] 본 개시내용의 일 양상은 네트워크를 관리하기 위한 시스템을 제공한다. 시스템은 복수의 주 링크들을 통해 상호연결되는 복수의 네트워크 노드들; 및 복수의 네트워크 노드들과 통신하는 제어기를 포함한다. 제어기는 이벤트 프로파일을 복수의 네트워크 노드들에 제공하도록 구성되는 하나 또는 그 초과의 프로세서들을 포함하고, 이벤트 프로파일은 다양한 링크 손실 시나리오들에서 구현될 라우팅 변경들을 표시한다. 복수의 노드들 각각은 특정 링크 손실 이벤트가 발생했음을 결정하고, 이벤트 프로파일에 기반하여 특정 링크 손실 이벤트에 대한 라우팅 변경들을 결정하며, 그리고 결정된 라우팅 변경들을 구현하도록 구성된다.
[0007] 본 개시내용의 다른 양상은 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법을 제공한다. 그 방법은 제어기로부터 이벤트 프로파일을 수신하는 단계를 포함하고, 그 이벤트 프로파일은 다양한 링크 손실 시나리오들에서 구현될 라우팅 변경들을 표시한다. 그 방법은, 특정 링크 손실 이벤트가 발생했음을 하나 또는 그 초과의 프로세서들을 통해 결정하는 단계, 이벤트 프로파일에 기반하여 하나 또는 그 초과의 프로세서들을 통해 특정 링크 손실 이벤트에 대한 라우팅 변경들을 결정하는 단계, 및 결정된 라우팅 변경들을 하나 또는 그 초과의 프로세서들을 통해 구현하는 단계를 더 포함한다.
[0008] 본 개시내용의 또 다른 양상은 네트워크 노드를 제공하고, 그 네트워크 노드는 하나 또는 그 초과의 라우팅 표들을 저장하는 메모리 및 그 메모리와 통신하는 하나 또는 그 초과의 프로세서들을 포함한다. 하나 또는 그 초과의 프로세서들은 제어기로부터 이벤트 프로파일을 수신하도록 프로그래밍되고, 그 이벤트 프로파일은 다양한 링크 손실 시나리오들에서 구현될 라우팅 변경들을 표시한다. 하나 또는 그 초과의 프로세서들은, 특정 링크 손실 이벤트가 발생했음을 결정하고, 이벤트 프로파일에 기반하여 특정 링크 손실 이벤트에 대한 라우팅 변경들을 결정하며, 그리고 결정된 라우팅 변경들을 구현하도록 추가로 프로그래밍된다.
[0009] 도 1은 본 개시내용의 양상들에 따른 예시적인 시스템의 개략도이다.
[0010] 도 2는 본 개시내용의 양상들에 따른 예시적인 제어기의 블록도이다.
[0011] 도 3은 본 개시내용의 양상들에 따른 예시적인 노드의 블록도이다.
[0012] 도 4는 본 개시내용의 양상들에 따른 예시적인 이벤트 프로파일을 예시한다.
[0013] 도 5는 본 개시내용의 양상들에 따른 예시적인 방법을 예시하는 흐름도이다.
[0014] 도 6은 본 개시내용의 양상들에 따른 다른 예시적인 방법을 예시하는 흐름도이다.
개요
[0015] 본 발명은 일반적으로 클라우드-관리 mmWave에 기반한 포인트-투-멀티포인트 메시 백홀과 같은 네트워크에서 스케줄링 및 라우팅 결정들을 관리하는 것에 관한 것이다. 중앙 클라우드 SDWN(Software Defined Wireless Network) 제어기는 네트워크에 대한 라우팅 및 스케줄링 변경들을 중앙집중식으로 관리한다. 네트워크의 각각의 노드에는 이벤트 프로파일이 제공되는데, 그 이벤트 프로파일은 예컨대 링크 장애 또는 다른 환경들로 인한 링크 손실의 경우에 구현될 새로운 루트들을 식별한다. 만약 특정 링크 또는 링크들의 결합에 장애가 있다면, 장애가 있는 링크들에 연결되는 노드들에서 실행되는 애플리케이션들은 링크 다운 상태(link down state)를 브로드캐스팅할 수 있다. 추가적으로, 네트워크의 노드들은 이벤트 프로파일에서 제공되는 새로운 라우팅 방식을 구현하기 위해 그들의 라우팅 표들을 업데이팅할 것이다. 새로운 라우팅 방식을 구현하는 노드들은 변경에 의해서 영향을 받는 네트워크의 추가적인 노드들을 포함할 수 있다(비록 그러한 추가적인 노드들이 장애가 있는 링크에 직접 연결되지 않더라도).
[0016] 네트워크 노드들은 이웃 노드들과 통신하기 위해서 제어기에 의해 설정된 멀티-기가비트 속도 무선 통신 디바이스들을 포함할 수 있다. 제어기는 가능한 링크들을 설정하기 위해서 모든 연결된 노드들에 중앙집중형 스케줄링을 강요한다. 링크들은 매우 지향적이다. 위상 배열(phased array)은 매우 지향적인 링크 기술의 일 예이다. 주 링크들은 제어기 트래픽 및 정상 사용자 데이터를 라우팅하는 제어기에 의해 선택되는 경로들을 포함한다. 링크 레벨 라디오 자원 스케줄링이 네트워크 레벨 라우팅 결정을 통해 조정됨으로써, 정해진 노드가 원하는 피어와 빔형성된다. 지향적인 위상-배열들을 통해, 백홀 토폴로지가 대안적인(중복적인) 링크들을 갖는 것으로 예상된다. 매우 낮은 대역폭 제어 트래픽을 교환하려는 주된 목적으로, 노드들은 이러한 링크들에서 단지 짧은 시간(fraction of time)만을 소모할 것으로 예상되어, 그 노드들은 빔형성된 링크를 유지한다. 이러한 대안적인 링크들은 주 링크 손실 동안에 제어기에 가능한 경로를 제공한다. 그러나, 주 링크 장애 순간에 활성 상태인 적어도 하나의 대안적인 링크가 존재해야 한다. 또한, 링크 손실 시에 트래픽을 복원하는데 있어 지연들을 회피하기 위해 레이턴시는 가능한 작게 유지되어야 한다.
[0017] 네트워크는 많은 노드들, 이를테면 100개 초과의 노드들을 포함할 수 있다. 그에 따라서, 링크 장애의 모든 치환들을 위한 스케줄링 및 루트들을 결정하는 계산 복잡성이 시간 제약 내에서는 매우 난제일 수 있다.
[0018] 이벤트 프로파일은 정상 동작을 위한 그리고 하나 또는 그 초과의 링크들에 장애가 있는 경우를 위한 라우팅 및 스케줄링 명령들을 갖는다. 토폴로지에서, 모든 스케줄링 및 라우팅 결정들은 잘 동기화될 필요가 있다. 부응하기 위해, 노드들이 링크 손실에 대해 응답할 방법을 표시하는 프로파일은 모든 치환가능한 링크 손실 가능성들을 전달한다. 이벤트 프로파일은, 예컨대, 잠재적인 링크 손실 이벤트를 제안된 노드 응답과 상관시키는 룩업 테이블 또는 다른 데이터 구조일 수 있다.
[0019] 제어기는 또한 프로파일을 주기적으로 업데이팅한다. 업데이트들은 임의의 링크 변경 이벤트들을 감안할 수 있다. 프로파일은 실시간 피드백에 기반하여 적응적이도록 선택되어, mmWave 노드들이 매우 동적이지는 않은 채널 상태들을 갖는 고정된 노드들이라는 사실을 이용한다. 제어기는 높은 링크 단절 확률을 갖는 링크들에 대한 주기적인 링크 업데이트들을 통해 학습하고, 그리고 이러한 치환들에 대해서만 프로파일 업데이트들을 제공함으로써, 클라우드 구현들 대부분에 의해 관리될 수 있는 계산 복잡성을 감소시킨다.
[0020] 프로파일 엔트리에 일치하지 않는 링크 손실 결합의 경우에, 노드들은 데이터 프레임들의 임의의 추가적인 포워딩을 중단하고 버퍼링 모드에 들어간다. 링크 손실 브로드캐스트는 결국 제어기 네트워크로의 유선 연결을 갖는 허브 노드를 통해 제어기에 도달하고, 제어기는 새로운 루트 업데이트를 강요함으로써 응답한다. 새로운 루트가 설정될 때까지 네트워크 루트가 불안정한 상태에 있게 될 것이라면, 허브 노드는 제어기에 의한 새로운 루트 업데이트를 브로드캐스팅할 것으로 예상된다. 일부 구현들에서는, 포워딩 상태로 이동하기 이전에 모든 이웃들에 대한 루트 업데이트들을 보장하기 위해, 노드들이 프로파일에 일치하는 링크 손실 이벤트들에 대한 일시적인 버퍼링 상태에 들어간다.
[0021] 장애가 있는 링크에 대해 2개의 노드들이 존재한다는 것을 주목하자. 선택적으로는 프로파일 표에 존재하는 동일한 쿠키를 통해, 노드들 둘 모두는 모든 이용가능한 링크들 상에서 링크 손실을 브로드캐스팅할 수 있다. 만약 새로운 프로파일이 제어기에 의해서 강요되기 이전에 새롭게 선택된 주 링크에 또한 장애가 있다면, 노드는 일치하는 프로파일이 없이 그 이벤트를 링크 손실로서 취급하기로 선택하고, 링크 손실 이벤트를 또한 브로캐스트로서 새로운 루트 업데이트를 위한 제어기에 어쩌면 모든 이용가능한 링크들을 통해 전송할 수 있다.
[0022] 이러한 상황들은 드문 상황들인 것으로 예상되고, 그리고 링크 손실 이벤트가 제어기에 도달한 이후에 제어기가 업데이트를 통해 턴 어라운드(turn around)할 때까지는 변경들은 일시적이다.
[0023] 장애가 있는 링크를 갖는 노드에 의해서 사용되는 브로드캐스트 메커니즘 및 노드간 통신 메커니즘은 제어기 설정 SDN 라우팅에 의존하지 않는데, 그 이유는 이것이 라우팅을 위해 필요한 주 링크에 장애가 있을 때 발생하기 때문이다. 특정 링크에 장애가 있을 때, 장애가 있는 링크를 갖는 노드는 통지를 브로드캐스팅한다. 통지는 다양한 전파 방법들 중 임의의 방법을 사용하여 브로드캐스팅될 수 있다. 일 예에 따르면, 라우팅 메커니즘은 선택적으로 하나 또는 그 초과의 노드들을 제어기 프록시로서 사용하여, 원시(raw) 소켓들 및 특수 이더(ether) 타입들을 사용할 수 있다. 예컨대, 장애가 있는 링크를 갖는 노드는 특수 이더 타입을 갖는 프레임을 브로드캐스팅한다. 모든 노드들은 이더 타입을 검출하는 스위칭 엔트리를 갖도록 설정되고, 그것을 노드에서 실행되는 애플리케이션에 포워딩한다. 애플리케이션은 그것을 원시 소켓들을 통해 수신하고, 근본 네트워크는 브로드캐스트 프레임을 재분배하지 않는다. 만약 수신 노드가 과거 구성된 지속기간 내에 일치하는 쿠키에 대한 브로드캐스트를 아직 수행하지 않았다면, 그 수신 노드는 모든 이용가능한 인터페이스들을 통해 링크 장애를 다시 송신하기로 선택할 수 있다. 애플리케이션이 프레임을 다시 포워딩하려 시도하기 이전에 그 프레임을 사전에 포워딩하였는지를 식별하기 위해서 그 애플리케이션은 브로드캐스트 프레임에서 특정 쿠키를 찾음으로써, 토폴로지에 어떤 루프들도 없음을 보장한다. 유선 네트워크를 통해 제어기에 연결되는 '허브 노드'는 추가적으로 브로드캐스트 프레임도 제어기에 전송할 것이고, 그로 인해서 제어기는 차후 결정들을 수행할 수 있다.
[0024] 다른 예에 따르면, 표준 층 2/층 3(L2/L3) 라우팅 메커니즘이 사용될 수 있다. 예컨대, 제어 트래픽은 이를테면 VLAN(virtual local area network)에서 L2 분리될 수 있다. 또 다른 접근법은 레이턴시 및 mmWave 특징들을 위해 최적화되는 표준 L2/L3 라우팅 알고리즘들을 수정하는 것이다. 예로서, OLSR(Optimized Link State Routing) 알고리즘에서, 임의의 필요한 작동 또는 파라미터들은 더 빠른 루트 수렴을 위해 수정될 수 있다. 게다가, 브로드캐스트 레이턴시들은 또한 제어되는 지향적인 mmWave 네트워크들을 위해 수정될 수 있다. 제어기 및 노드간 메시징 메커니즘은 예컨대 특정 네트워크의 시스템 전개 시나리오들 및 라우팅 특징들에 기반하여 미리 결정될 수 있다.
[0025] 브로드캐스트 프레임을 수신하고 그리고 그 브로드캐스트 프레임을 포워딩할지 여부를 결정할 때, 각각의 노드는 이벤트 프로파일에 기반하여 자신의 라우팅 표를 업데이팅한다. 예컨대, 정해진 노드가 다수의 브로드캐스트 프레임들을 수신할 수 있는데, 그 프레임들은 링크들의 특정 결합들에 장애가 있음을 표시한다. 정해진 노드는 이벤트 프로파일을 참고하고, 그리고 장애가 있는 링크들의 그 특정 결합에 대응하는 미리 결정되는 권고된 응답을 식별한다. 이어서, 정해진 노드는 미리 결정되는 권고된 응답에 기반하여 자신의 라우팅 표를 업데이팅할 수 있다. 네트워크의 각각의 다른 노드는 또한 동일한 절차를 수행한다.
[0026] 위에서 설명된 기술들은, 그 기술들이, 제품이 제어기로의 대역외 액세스를 위한 추가적인 강건한 무선 기술을 요구하지 않기 때문에 더 낮은 제품 비용 및 전력을 요구하고 그리고 루트들을 다시 설정하기 위해 필요한 로컬 노드간 통신이 제어기 응답보다 더 나은 레이턴시를 가질 것으로 예상되기 때문에 어쩌면 더 나은 성능을 필요로 한다는 점에서, 유리하다.
예시적인 시스템들
[0027] 도 1은 클라우드 제어기(110) 및 상호연결되는 복수의 노드들(152-158)을 포함하는 예시적인 시스템(100)을 예시한다. 비록 단지 몇 개의 노드들만이 도시되어 있지만, 수 많은 노드들이 포함될 수 있다는 것이 이해되어야 한다. 노드들은 링크(182)를 통해 클라우드 제어기(110)와 상호연결되고, 복수의 주 링크들(184-186) 및 대안 링크들(192-196)을 통해 서로 상호연결된다.
[0028] 네트워크(112)는 SDWN, 또는 임의의 다른 타입의 네트워크, 이를테면 데이터센터, 로드-밸런싱 서버 팜, 상호연결된 주변장치들의 백플레인, 마더보드 상의 컴포넌트들의 시스템 등일 수 있다. 네트워크(112), 및 중간 노드들은 인터넷, World Wide Web, 인트라넷, 가상 사설 네트워크들, 광역 네트워크들, 로컬 네트워크들, 하나 또는 그 초과의 회사들에 전용인 통신 프로토콜들, 이더넷, WiFi(이를테면 802.11, 802.11b, g, n, 또는 다른 그러한 표준들) 및 HTTP를 사용하는 전용 네트워크들, 및 위의 것들의 다양한 조합들을 비롯한 다양한 구성들 및 프로토콜들을 포함할 수 있다.
[0029] 제어기는, 예컨대, 중앙 클라우드 SDWN 제어기일 수 있고, 그 중앙 클라우드 SDWN 제어기는 네트워크에 대한 라우팅 및 스케줄링 변경들을 중앙집중식으로 관리한다. 제어기는 가능한 링크들을 설정하기 위해서 모든 연결된 노드들에 중앙집중형 스케줄링을 강요한다. 제어기는 또한 네트워크의 각각 노드에게 이벤트 프로파일을 제공하는데, 그 이벤트 프로파일은 링크 손실의 경우에 구현될 새로운 루트들을 식별한다. 제어기는 또한 프로파일을 주기적으로 업데이팅한다. 업데이트들은 임의의 링크 변경 이벤트들, 이를테면 다운된 링크들, 보수된 링크들, 및 높은 장애 확률을 갖는 링크들을 감안할 수 있다. 프로파일은 실시간 피드백에 기반하여 적응적이도록 선택된다.
[0030] 노드들(152-158)은, 예컨대, 이웃 노드들과 통신하기 위해서 제어기에 의해 설정된 멀티-기가비트 속도 무선 통신 디바이스들일 수 있다. 노드들(152-158) 각각은 다른 노드들과 통신하기 위해 사용될 수 있는 애플리케이션을 실행한다. 예컨대, 만약 노드(154)가 특정 링크 또는 링크들의 결합에 대한 장애를 식별한다면, 그 노드(154)는 애플리케이션을 통해 네트워크의 다른 노드들에게 그 장애를 브로드캐스팅할 수 있다. 링크들(184, 186)이 여전히 활성 상태라고 가정하면, 노드들(152 및 158)에서 실행되는 애플리케이션들은 원시 소켓들을 통해 브로드캐스트 "링크 다운" 정보를 수신할 것이다. 수신 노드들(152, 158)은 자신들이 동일한 "링크 다운" 정보를 사전에 브로드캐스팅하였는지를 결정하고, 만약 그렇지 않다면, 노드들(152, 158)은 그 "링크 다운" 정보를 다른 연결된 노드들에 브로드캐스팅한다.
[0031] 제어기(110)에 연결되는 노드(152)는 허브 노드로서 기능한다. 위의 예를 계속 참조하면, 노드(152)가 "링크 다운" 정보를 수신할 때, 그 노드(152)는 또한 정보를 제어기(110)에 포워딩하여, 제어기(110)가 차후 라우팅 결정들을 수행할 수 있게 한다.
[0032] 네트워크의 노드들은 이벤트 프로파일에서 제공되는 새로운 라우팅 방식을 구현하기 위해 그들의 라우팅 표들을 업데이팅할 것이다. 예컨대, 이를테면 자신에게 연결된 하나 또는 그 초과의 링크들이 다운 상태라는 것을 검출함으로써 또는 연결된 노드에 의해 브로드캐스팅된 "링크 다운" 정보를 수신함으로써 링크 다운 이벤트를 식별할 때, 노드는 식별된 링크 다운 이벤트를 처리할 방법에 대해서 명령들에 대한 이벤트 프로파일을 참조할 수 있다. 이벤트 프로파일은, 노드가 하나 또는 그 초고의 경로들을 그 이벤트 프로파일에서 식별되는 하나 또는 그 초과의 새로운 경로들로 대체해야 함을 표시할 수 있다. 새로운 라우팅 방식을 구현하는 노드들은 변경에 의해서 영향을 받는 네트워크의 추가적인 노드들을 포함할 수 있다(비록 그러한 추가적인 노드들이 장애가 있는 링크에 직접 연결되지 않더라도). 예컨대, 만약 링크(184)에 장애가 있음을 표시하는 "링크 다운" 정보를 노드(156)가 수신한다면, 노드(156)는 이벤트 프로파일을 참고하여 자신의 라우팅 테이블을 적절히 업데이팅할 수 있다.
[0033] 주 링크들(184-186)은 위상 배열들과 같은 mmWave 물리 층 통신들을 위한 매우 지향적인 링크들일 수 있다. 주 링크들(184-186)은 제어기 트래픽 및 정상 사용자 데이터를 라우팅하는 제어기(110)에 의해 선택되는 경로들을 포함한다. 링크 레벨 라디오 자원 스케줄링이 네트워크 레벨 라우팅 결정을 통해 조정됨으로써, 정해진 노드가 원하는 피어와 빔형성된다. 지향적인 위상-배열들을 통해, 백홀 토폴로지가 대안적인(중복적인) 링크들을 갖는 것으로 예상된다. 매우 낮은 대역폭 제어 트래픽을 교환하려는 주된 목적으로, 노드들은 이러한 링크들에서 단지 짧은 시간(fraction of time)만을 소모할 것으로 예상되어, 그 노드들은 빔형성된 링크를 유지한다.
[0034] 대안적인 링크들(192-196)은 주 링크 손실 동안에 제어기에 가능한 경로를 제공한다. 링크가 주 링크 또는 대안적인 링크로 고려되는지 여부는 특정 노드 또는 경로에 관련할 수 있다. 예컨대, 노드(152)로부터 노드(154)로의 주 경로는 주 링크(184)를 포함할 수 있는데 반해, 대안적인 경로는 대안적인 링크들(192, 194)을 포함할 수 있다. 주 링크 장애 순간에 활성 상태인 적어도 하나의 대안적인 링크가 존재해야 한다. 또한, 링크 손실 시에 트래픽을 복원하는데 있어 지연들을 회피하기 위해 레이턴시는 가능한 작게 유지되어야 한다.
[0035] 일 예에 따르면, 노드(154)는 주 링크(186)의 장애를 검출할 수 있다. 노드(154)에 의해 사용되는 노드간 통신 메커니즘은 임의의 특정 라우팅에 의존하지 않는다. 오히려, 장애가 있는 링크를 갖는 노드(154)는 특수 이더 타입을 갖는 프레임을 브로드캐스팅한다. 모든 노드들(152-158)은 이더 타입을 검출하는 스위칭 엔트리를 갖도록 설정되고, 그것을 노드에서 실행되는 애플리케이션에 포워딩한다. 그에 따라서, 노드들(152, 156, 158)에서 실행되는 애플리케이션들은 원시 소켓들을 통해 브로드캐스트 프레임을 수신하고, 근본 네트워크는 브로드캐스트 프레임을 재분배하지 않는다. 노드들(152, 156, 158) 각각에서 실행되는 애플리케이션들은 그것이 프레임을 사전에 포워딩했는지를 식별하기 위해 브로드캐스트 프레임에서 특정 쿠키를 찾는다. 만약 수신 노드들(152, 156, 158)의 애플리케이션들 중 임의의 애플리케이션이 프레임을 사전에 포워딩하지 않았다면, 그 애플리케이션은 모든 이용가능한 인터페이스들을 통해 프레임을 다시 송신할 것이다.
[0036] 장애가 있는 주 링크(186)가 또한 노드(152)에 커플링될 때, 그 노드(152)는 노드(154)와 동시에 모든 이용가능한 링크들 상의 링크 손실을 또한 검출하여 브로드캐스팅할 수 있다. 일부 예들에서, 노드(152)에 의한 브로드캐스트는 노드(154)에 의한 브로드캐스트와 동일한 쿠키를 포함할 수 있다.
[0037] 위의 예를 계속 참조하면, 각각의 수신 노드(152, 156, 158)는 이벤트 프로파일에 기반하여 자신의 라우팅 테이블을 업데이팅한다. 예컨대, 노드(156)는 다수의 브로드캐스트 프레임들을 수신할 수 있는데, 각각의 프레임은 장애가 있는 상이한 링크를 식별한다. 하나로 합쳐서 생각해보면, 다수의 브로드캐스트 프레임들은 장애가 있는 링크들의 특정 결합을 표시한다. 일부 예들에서, 노드(156)는 하나 또는 그 초과의 프레임들을 수집하고, 장애가 있는 링크들의 결합에 대응하는 라우팅 업데이팅을 위해 이벤트 프로파일을 참고한다. 다른 예들에서, 노드(156)는 수신되는 각각의 개별 통지에 대해 이벤트 프로파일을 참고한다. 여하간에, 노드(156)는 이어서 이벤트 프로파일의 미리 결정되는 권고된 응답에 기반하여 자신의 라우팅 테이블을 업데이팅할 수 있다. 네트워크의 다른 노드들(152, 158)이 또한 동일한 절차를 수행한다. 일부 예들에서, 노드들(152, 156, 158)은 브로드캐스트 프레임을 다시 송신하지 않으면서 포워딩 상태로 이동하기 이전에 일시적인 버퍼링 상태에 들어갈 수 있다.
[0038] 일부 경우들에서, 링크 손실 결합은 프로파일 엔트리에 일치할 수 없다. 이러한 경우에, 노드들(152-158)은 데이터 프레임들의 임의의 추가적인 포워딩을 중단하고 버퍼링 모드에 들어갈 수 있다. 링크 손실 브로드캐스트는 결국, 예컨대 링크(182)를 통한 제어기 네트워크로의 유선 연결을 갖는 허브 노드(120)를 통해서 제어기(110)에 도달한다. 이에 대한 응답으로, 제어기(110)는 새로운 루트 업데이트를 강요한다. 허브 노드(152)는 새로운 루트 업데이트를 브로드캐스팅한다.
[0039] 새로운 프로파일이 제어기에 의해서 강요되기 이전에 새롭게 선택된 주 링크에 장애가 또한 발생하는 것이 가능하다. 이 경우에는, 노드가 일치하는 프로파일이 없이도 그 이벤트를 링크 손실로서 처리하기로 선택할 수 있다. 그에 따라서, 노드는 예컨대 모든 이용가능한 링크들을 통해 브로드캐스팅할 때, 새로운 루트 업데이트를 위해 링크 손실 이벤트를 제어기에 전송할 수 있다.
[0040] 도 2는 제어기(110)에 대한 더욱 상세한 묘사를 제공한다. 제어기(110)는 네트워크를 통해 통신할 수 있는 임의의 타입의 가상 또는 비-가상 컴퓨팅 디바이스 또는 컴퓨팅 디바이스들의 시스템일 수 있다. 제어기(110)는 하나 또는 그 초과의 프로세서들(140), 메모리(130), 및 범용 컴퓨팅 디바이스들에 통상 존재하는 다른 컴포넌트들을 포함할 수 있다. 메모리(130)는 하나 또는 그 초과의 프로세서들(140)에 의해 실행될 수 있는 명령들(138)을 비롯해서, 하나 또는 그 초과의 프로세서들(140)에 의해 액세스가능한 정보를 저장할 수 있다.
[0041] 메모리(130)는 프로세서(140)에 의해 리트리빙, 조작 또는 저장될 수 있는 데이터(134)를 또한 포함할 수 있다. 메모리는 프로세서에 의해 액세스가능한 정보를 저장할 수 있는 임의의 비-일시적 타입의 메모리, 이를테면 하드-드라이브, 메모리 카드, RAM, DVD, 기록-가능 메모리 등일 수 있다.
[0042] 명령들(138)은 하나 또는 그 초과의 프로세서들에 의해서 직접적으로 실행될 명령들의 임의의 세트, 이를테면 기계 코드, 또는 간접적으로 실행될 명령들의 임의의 세트, 이를테면 스크립트들일 수 있다. 그와 관련해서, 용어들 "명령들", "애플리케이션들", "단계들" 및 "프로그램들"은 본원에서 서로 바뀌어 사용될 수 있다. 명령들은 프로세서에 의한 직접적인 프로세싱을 위해 오브젝트 코드 포맷으로 저장되거나, 또는 요구시 해석되거나 또는 미리 편집되는 독립적인 소스 코드 모듈들의 집합들 또는 스크립트들을 포함하는 임의의 다른 컴퓨팅 디바이스 언어로 저장될 수 있다. 명령들의 기능들, 방법들 및 루틴들은 아래에서 더 상세히 설명된다.
[0043] 데이터(134)가 명령들(138)에 따라 하나 또는 그 초과의 프로세서들(140)에 의해 리트리빙, 저장 또는 수정될 수 있다. 일 예에서, 데이터(134)는 노드들(152-158)에 제공되는 하나 또는 그 초과의 이벤트 프로파일들(136)을 포함할 수 있다. 이벤트 프로파일(136)은 링크 장애의 경우에 모든 각각의 노드에게 라우팅 명령들을 제공하는 마스터 이벤트 프로파일일 수 있다. 다른 예에서, 이벤트 프로파일(136)은 다수의 이벤트 프로파일들, 이를테면 네트워크의 각각의 노드에 특정적인 하나의 프로파일을 포함할 수 있다.
[0044] 명령들(138)에 따라, 제어기(110)는 네트워크의 노드들에 이벤트 프로파일(136)을 제공할 수 있다. 제어기(110)는 노드들로부터 정보, 이를테면 다운되는 링크들 또는 단절될 가능성이 있는 링크들을 식별하는 정보를 추가로 수신할 수 있다. 제어기(110)는 이 정보를 사용하여 이벤트 프로파일들을 업데이팅할 수 있다. 업데이팅된 이벤트 프로파일들은 노드들에 다시 제공된다.
[0045] 비록 본원에서 설명되는 청구대상은 임의의 특정 데이터 구조에 의해 제한되지 않지만, 데이터(134)는 많은 상이한 필드들 및 레코드들을 갖는 표 또는 XML 문헌들로서 내부 또는 외부 메모리에, 컴퓨터 레지스터들에, 관련 데이터베이스에 저장될 수 있다. 데이터(134)는 또한 이진 값들, ASCII 또는 유니코드와 같은(그러나, 이들로 제한되지는 않음) 임의의 컴퓨팅 디바이스-판독가능 포맷으로 포맷팅될 수 있다. 게다가, 데이터는 관련 정보를 식별하기에 충분한 임의의 정보, 이를테면 번호들, 설명 텍스트, 사유 코드들, 포인터들, 이를테면 다른 네트워크 장소들에서 다른 메모리들에 저장된 데이터에 대한 참조들, 또는 관련 데이터를 계산하기 위한 기능에 의해 사용되는 정보를 포함할 수 있다.
[0046] 하나 또는 그 초과의 프로세서들(140)은 임의의 종래의 프로세서들, 이를테면 상업적으로 입수가능한 CPU들일 수 있다. 대안적으로, 프로세서들은 ASIC("application specific integrated circuit") 또는 다른 하드웨어-기반 프로세서와 같은 전용 컴포넌트들일 수 있다. 비록 필수적이지는 않지만, 서버(130)는 특정 컴퓨팅 프로세스들을 수행하기 위해 특수 하드웨어 컴포넌트들을 포함할 수 있다.
[0047] 비록 도 2는 프로세서, 메모리 및 컴퓨팅 디바이스(110)의 다른 엘리먼트들을 동일 블록 내에 있는 것으로서 기능적으로 예시하지만, 프로세서, 컴퓨터, 컴퓨팅 디바이스, 또는 메모리는 동일 물리 하우징 내에 저장될 수 있거나 혹은 저장될 수 없는 다수의 프로세서들, 컴퓨터들, 컴퓨팅 디바이스들 또는 메모리들을 실제로 포함할 수 있다. 예컨대, 메모리는 컴퓨팅 디바이스(110)의 하우징과는 상이한 하우징에 위치되는 하드 드라이브 또는 다른 저장 매체들일 수 있다. 그에 따라서, 프로세서, 컴퓨터, 컴퓨팅 디바이스, 또는 메모리에 대한 참조는 병렬로 동작할 수 있거나 혹은 동작할 수 없는 프로세서들, 컴퓨터들, 컴퓨팅 디바이스들 또는 메모리들의 집합에 대한 참조를 포함하는 것으로 이해될 것이다. 예컨대, 컴퓨팅 디바이스들(110)은 로드-밸런싱 서버 팜, 분산형 시스템 등으로서 동작하는 서버 컴퓨팅 디바이스들을 포함할 수 있다. 또한, 비록 아래에서 설명된 일부 기능들은 단일 프로세서를 갖는 단일 컴퓨팅 디바이스에서 발생하는 것으로 표시되지만, 본원에서 설명되는 청구대상의 다양한 양상들은 예컨대 네트워크를 통해 정보를 통신하는 복수의 컴퓨팅 디바이스들에 의해 구현될 수 있다.
[0048] 도 3은 예시적인 노드(350)의 더욱 상세한 묘사를 제공한다. 일부 예들에서, 노드(350)는 위에서 설명된 바와 같이 데이터(362) 및 명령들(368)을 포함하는 메모리(360)와 하나 또는 그 초과의 프로세서들(380)을 갖는 점에서 제어기(110)와 유사하게 구성될 수 있다. 일부 예들에서, 노드(350)는 네트워크 디바이스, 이를테면 서버, 라우터, 또는 임의의 다른 타입의 컴퓨팅 디바이스일 수 있다. 일부 예들에서, 노드(350)는 개인용 컴퓨팅 디바이스와 관련하여 일반적으로 사용되는 컴포넌트들 모두, 이를테면 CPU(central processing unit), 데이터 및 명령들을 저장하는 메모리(예컨대, RAM 및 내부 하드 드라이브들), 디스플레이(예컨대, 스크린, 터치-스크린, 프로젝터, 텔레비전, 또는 정보를 디스플레이하도록 동작가능한 다른 디바이스를 갖는 모니터), 사용자 입력 디바이스(예컨대, 마우스, 키보드, 터치-스크린 또는 마이크로폰), 및 이러한 엘리먼트들을 서로 연결하기 위해 사용되는 컴포넌트들 모두를 갖는 개인용 컴퓨팅 디바이스일 수 있다.
[0049] 노드(350)는 또한 노드(350)에서 실행될 수 있는 하나 또는 그 초과의 애플리케이션들(370)을 포함할 수 있다. 애플리케이션(370)은 다양한 노드들 간의 통신을 가능하게 하는 것을 포함해서 다양한 기능들을 수행하도록 구성될 수 있다. 예컨대, 애플리케이션은 모든 인터페이스들을 통해 리스닝(listening)하는 소켓을 포함할 수 있다. 애플리케이션(370)은 브로드캐스트 프레임들과 같은 통지들을 전송할지 여부에 관한 결정들을 수행할 수 있다. 비록 애플리케이션들(370)은 메모리(360)로부터 별개인 것으로 도시되지만, 애플리케이션들이 메모리(360)와 통합될 수 있는다는 것이 이해되어야 한다.
[0050] 일부 예들에서, 노드(350)는 노드간 통신을 위한 다른 특징들을 포함할 수 있다. 예컨대, 노드(350)에는 L2/L3 라우팅을 위한 포트들 또는 인터페이스들이 장착될 수 있다.
[0051] 노드(350)는 데이터(362), 이를테면 이벤트 프로파일(364) 및 라우팅 표(366)를 저장할 수 있다. 이벤트 프로파일(364)은 링크 장애의 경우에 정보를 노드(350)에 제공하는 제어기(110)(도 2)에 의해서 강요되는 표 또는 다른 데이터 구조일 수 있다. 노드(350)에 저장되는 이벤트 프로파일(364)은 도 2의 이벤트 프로파일(136)과 동일할 수 있다. 다른 예들에서, 그것은 노드(350)에 특정적일 수 있다. 라우팅 표(366)는 노드(350) 및 제어기(110) 중 적어도 하나에 의해 업데이팅될 수 있는 임의의 타입의 라우팅 표일 수 있다.
[0052] 노드(350)에서 프로그래밍된 명령들(368)은 노드(350)가 특정 링크 다운 이벤트의 발생을 식별할 수 있게 한다. 그 식별은 이웃 노드로부터의 통지의 검출, 수신, 또는 임의의 다른 기술을 포함할 수 있다. 노드(350)는 자신이 링크 다운 이벤트를 사전에 처리했는지 여부를 결정하고, 만약 그렇지 않다면, 네트워크의 다른 노드들에 그 이벤트를 통신한다. 위에서 언급된 바와 같이, 그 결정 및 후속하는 통신은 애플리케이션들(370)에 의해 수행될 수 있다.
[0053] 노드(350)는 이벤트 프로파일(364)에 기반하여, 특정 링크 손실 이벤트에 대응하는 라우팅 변경들을 추가로 결정할 수 있다. 노드(350)는 미리 결정된 라우팅 변경들에 기반하여 라우팅 표(366)를 적절히 업데이팅한다.
[0054] 도 4는 예시적인 이벤트 프로파일(400)을 예시한다. 이 예에서, 이벤트 프로파일(400)은 복수의 열들(410) 및 행들(430)을 포함하는 표이다. 각각의 행(430)의 제1 열(412)은 특정 링크 손실 이벤트를 표시할 수 있다. 예컨대, 각각의 셀은 다운된 링크들의 많은 가능한 결합들 중 하나, 이를테면 다운된 "링크 1", 다운된 "링크 1" 및 "링크 3" 등을 표시할 수 있다. 비록 단지 몇 개의 결합들만이 도시되어 있지만, 많은 치환들이 포함될 수 있다. 예컨대, 수백 또는 수천 개의 노드들을 포함하는 더 큰 네트워크들의 경우, 이벤트 프로파일(400)은 수천 개 초과의 가능한 링크 손실 이벤트들을 포함할 수 있다.
[0055] 제1 링크 손실 이벤트 열(412)의 각각의 엔트리에 대응하는 것은 특정 노드에 대해 설계된 열의 엔트리이다. 예컨대, 열(414)은 노드 A에 의해 취해질 액션들을 식별할 수 있고, 열(416)은 노드 B에 의해 취해질 액션들을 식별할 수 있고, 열(418)은 노드 n에 의해 취해질 액션들을 표시할 수 있으며, 기타 등등이다. 그 액션들은 특정 노드의 라우팅 표를 업데이팅하기 위한 명령들을 포함할 수 있다. 예컨대, 다운된 링크들(1, 5, 7)에 대응하는 셀(435)의 링크 손실의 경우, 노드 B는 자신의 라우팅 표들 중 하나 또는 그 초과의 표에 있는 하나 또는 그 초과의 엔트리들을 수정하도록 명령을 받을 수 있다.
[0056] 비록 예시적인 이벤트 프로파일이 표로서 도 4에 도시되어 있지만, 다른 데이터 구조들이 사용될 수 있다.
예시적인 방법들
[0057] 위에서의 설명 외에도, 본 개시내용에 따른 방법들이 이제 설명된다. 비록 방법들의 동작들이 특정 순서로 설명되지만, 동작들의 순서는 바뀔 수 있다는 것이 이해되어야 한다. 일부 동작들은 동시에 수행될 수 있다. 추가적으로, 동작들은 추가되거나 혹은 생략될 수 있다.
[0058] 도 5는 네트워크에서의 라우팅 및 업데이팅을 제어하기 위한 예시적인 방법(500)을 예시한다. 블록(510)에서, 제어기는 네트워크의 노드들에 이벤트 프로파일들을 제공한다. 예컨대, 제어기는 다수의 가능한 링크 장애 결합들의 경우에 다양한 노드들에 의해서 취해질 액션들을 표시하는 마스터 이벤트 프로파일을 네트워크의 각각의 노드에 제공할 수 있다.
[0059] 블록(520)에서, 제어기는 노드들 중 하나 또는 그 초과로부터 정보를 수신한다. 예컨대, 다양한 노드들로부터의 정보가 허브 노드를 통해 제어기에 전달될 수 있다. 정보는 하나 또는 그 초과의 링크들의 상태를 표시할 수 있다. 예컨대, 그 상태는 링크를 다운되는 것으로서 혹은 어쩌면 장애가 일어날 것으로서 식별할 수 있다. 링크는, 예컨대 더 높은 에러 레이트 또는 감소하는 신호 강도와 같은 현재 메트릭들에 기반하여 장애가 발생할 가능성이 있는 것으로 결정될 수 있다. 다른 예들에서, 그 결정은 제어기에 의한 통계 분석에 기반할 수 있다. 예컨대, 제어기는 민감한 링크들을 결정하고 그 링크들에 대한 장애 임계치들을 더욱 공격적이도록 적응적으로 수정하기 위해 링크 히스토리를 찾을 수 있다.
[0060] 블록(530)에서, 제어기는 수신된 정보에 기반하여 이벤트 프로파일들을 업데이팅한다. 예컨대, 수신된 정보는 합해질 수 있고, 그리고 총괄적으로 그것은 장애가 있을 가능성이 있는 링크들의 결합을 식별할 수 있다. 만약 그 결합이 이벤트 프로파일에 아직 목록화되어 있지 않다면, 제어기는 그 가능한 링크 손실 이벤트에 대해서 노드들에 대한 라우팅 변경들을 추가할 수 있다. 제어기는 업데이팅된 이벤트 프로파일을 노드들에 추가로 강요할 수 있다.
[0061] 도 6은 라우팅 토폴로지를 업데이팅하는 예시적인 방법(600)을 예시한다. 방법은 네트워크의 정해진 노드의 관점에서 아래에 설명된다. 그러나, 네트워크의 각각의 노드는 방법(600)을 수행하도록 프로그래밍될 수 있다.
[0062] 블록(610)에서, 노드는 링크 손실 이벤트의 발생을 식별한다. 그 식별은, 하나 또는 그 초과의 연결된 링크들이 다운되는 것을 검출하는 것, 또는 제어기 및 다른 노드 중 적어도 하나로부터 통지를 수신하는 것을 포함할 수 있다. 예컨대, 노드는 그 노드에서 실행되는 애플리케이션을 통해, 활성 링크를 통해 여전히 연결된 이웃 노드로부터 통지를 수신할 수 있다. 링크 손실 이벤트는 네트워크의 하나의 링크 또는 복수의 링크들의 장애 또는 비활성화를 포함할 수 있다. 복잡한 네트워크들에서, 네트워크의 상이한 노드들에 걸친 링크들의 결합은 정해진 시간에 다운될 수 있다.
[0063] 블록(620)에서, 노드는 자신이 링크 손실 이벤트를 네트워크의 다른 노드들에 사전에 통신했는지 여부를 결정한다. 예컨대, 정해진 노드의 애플리케이션은 다른 노드로부터 수신되는 프레임에서 특정 쿠키를 찾을 수 있는데, 그 특정 쿠키는 정해진 노드가 프레임을 사전에 포워딩했는지 여부를 표시한다. 다른 예들에서, 노드는 많은 이전 송신 이벤트들을 참고할 수 있다.
[0064] 만약 링크 손실 이벤트의 통지를 노드가 사전에 송신하였다고 결정되면, 블록(625)에서 그 노드는 계속해서 라우팅하고 정보를 제어기에 송신할 수 있다. 도 5와 관련하여 위에서 논의된 바와 같이, 그러한 정보는 이벤트 프로파일을 업데이팅하기 위해 제어기에 의해서 사용될 수 있다.
[0065] 만약 링크 손실 이벤트의 통지를 노드가 사전에 송신하지 않았다면, 블록(630)에서 그 노드는 하나 또는 그 초과의 이웃 노드들에 통지를 전송한다. 예컨대, 노드에서 실행되는 애플리케이션은 수신된 프레임을 모든 인터페이스들을 통해 브로드캐스팅할 수 있다.
[0066] 블록(640)에서, 노드는 특정 링크 손실 이벤트에 대한 라우팅 변경을 결정한다. 라우팅 변경을 결정하는 것은 링크 손실 이벤트에 대응하는 결정된 액션을 식별하기 위해 이벤트 프로파일을 참고하는 것을 포함할 수 있다. 일부 예들에서, 노드는 링크 손실 이벤트들의 다수의 통지들을 수신할 수 있다. 그에 따라서, 노드는 장애가 있는 링크들의 결합들에 대한 적절한 업데이트를 결정할 수 있다.
[0067] 블록(650)에서, 노드는 결정된 라우팅 변경들을 구현한다. 예컨대, 노드는 라우팅/포워딩 표에서 하나 또는 그 초과의 엔트리들을 수정할 수 있다. 방법(600)은 블록(625)으로 다시 돌아가고, 블록(625)에서 노드가 계속 라우팅하고 새로운 링크 손실 이벤트들을 모니터링한다.
[0068] 위에서 설명된 시스템들 및 방법들은 제어기로의 대역외 액세스를 위한 추가적인 강력한 무선 기술이 없이도 동작할 수 있다. 그 결과, 상당한 비용 절감들 및 전력 보존이 실현될 수 있다. 게다가, 루트들을 다시 설정하는데 필요한 로컬 노드간 통신이 제어기 응답보다 더 양호한 레이턴시를 가질 것으로 예상되기 때문에, 성능이 향상된다.
[0069] 위에서 논의된 특징들의 이러한 및 다른 변형들 및 결합들이 청구항들에 의해 정의된 청구대상으로부터 벗어나지 않고 활용될 수 있기 때문에, 실시예들에 대한 위의 설명은 청구항들에 의해 정의된 청구대상의 제한으로서라기 보다는 예시로서 취해져야 한다. 예로서, 선행하는 동작들이 위에서 설명된 바로 그 순서대로 수행될 필요는 없다. 오히려, 다양한 단계들이 상이한 순서로 또는 동시적으로 처리될 수 있다. 예컨대, 링크 장애의 발생을 검출하고 그리고 링크 장애가 노드에 의해서 사전에 처리되지 않았음을 결정하는 노드는 링크 장애의 통지를 다른 노드들에 브로드캐스팅하기 이전에 자신의 라우팅 표를 업데이팅할 수 있다. 단계들은 또한 달리 설명되지 않는 한 생략될 수 있다. 게다가, 본원에 설명된 예들뿐만 아니라 "이를테면", "포함하는" 등의 어구로 표현되는 절들(clauses)의 제공은 청구항들의 청구대상을 특정 예들로 제한하는 것으로 해석되지 않아야 하고, 오히려 예들은 많은 가능한 실시예들 중 단지 하나만을 예시하도록 의도된다. 또한, 상이한 도면들에서 동일한 참조 번호들은 동일하거나 유사한 엘리먼트들을 식별할 수 있다.

Claims (20)

  1. 네트워크를 관리하기 위한 시스템으로서,
    복수의 주 링크들(primary links)을 통해 상호연결되는 복수의 네트워크 노드들; 및
    상기 복수의 네트워크 노드들과 통신하는 제어기를 포함하고,
    상기 제어기는 하나 또는 그 초과의 프로세서들을 포함하고,
    상기 하나 또는 그 초과의 프로세서들은 이벤트 프로파일을 상기 복수의 네트워크 노드들에 제공하도록 구성되고, 상기 이벤트 프로파일은 다양한 링크 손실 시나리오들에서 구현될 라우팅 변경들을 표시하고, 그리고
    상기 복수의 노드들 각각은,
    특정 링크 손실 이벤트가 발생했음을 결정하고,
    상기 이벤트 프로파일에 기반하여, 상기 특정 링크 손실 이벤트에 대한 라우팅 변경들을 결정하고, 그리고
    결정된 라우팅 변경들을 구현하도록 구성되는, 네트워크를 관리하기 위한 시스템.
  2. 제1 항에 있어서,
    상기 제어기는,
    상기 복수의 노드들로부터 정보를 수신하고, 그리고
    수신된 정보에 기반하여 상기 이벤트 프로파일들을 업데이팅하도록 추가로 구성되는, 네트워크를 관리하기 위한 시스템.
  3. 제2 항에 있어서,
    상기 수신된 정보는 높은 링크 단절 확률을 갖는 링크들을 식별하고, 그리고
    상기 프로파일들의 업데이팅은 식별된 링크들이 손실되는 시나리오들을 감안하는, 네트워크를 관리하기 위한 시스템.
  4. 제1 항에 있어서,
    상기 복수의 네트워크 노드들은 노드들 상의 애플리케이션들 및 L2 별개 제어 경로들 중 적어도 하나를 통해 링크 손실 이벤트들을 서로에게 통신하는, 네트워크를 관리하기 위한 시스템.
  5. 제4 항에 있어서,
    상기 애플리케이션들을 통해 링크 손실 이벤트들을 통신하는 것은,
    상기 복수의 노드들 중 제1 노드에 의해서, 특수 이더(ether) 타입을 갖는 프레임을 브로드캐스팅하는 것, 및
    상기 복수의 노드들 중 제2 노드에 의해서 상기 이더 타입을 검출하고, 상기 프레임을 상기 제2 노드에서 실행되는 애플리케이션에 포워딩하는 것을 포함하는, 네트워크를 관리하기 위한 시스템.
  6. 제5 항에 있어서,
    상기 제2 노드는 상기 프레임을 다시 브로드캐스팅할지 여부를 결정하도록 구성되고,
    상기 결정은 상기 프레임이 하나 또는 그 초과의 인터페이스들을 통해 아직 송신되지 않았는지 여부에 기반하는, 네트워크를 관리하기 위한 시스템.
  7. 제6 항에 있어서,
    상기 프레임을 다시 브로드캐스팅할지 여부를 결정하는 것은 상기 제2 노드의 애플리케이션에 의해 상기 프레임에서 쿠키(cookie)를 찾는 것을 포함하는, 네트워크를 관리하기 위한 시스템.
  8. 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법으로서,
    제어기로부터 이벤트 프로파일을 수신하는 단계 ― 상기 이벤트 프로파일은 다양한 링크 손실 시나리오들에서 구현될 라우팅 변경들을 표시함 ―;
    하나 또는 그 초과의 프로세서들을 통해, 특정 링크 손실 이벤트가 발생했음을 결정하는 단계;
    상기 이벤트 프로파일에 기반하여 상기 하나 또는 그 초과의 프로세서들을 통해, 상기 특정 링크 손실 이벤트에 대한 라우팅 변경들을 결정하는 단계; 및
    상기 하나 또는 그 초과의 프로세서들을 통해, 결정된 라우팅 변경들을 구현하는 단계를 포함하는, 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법.
  9. 제8 항에 있어서,
    상기 방법은 정보를 상기 제어기에 제공하는 단계를 더 포함하고,
    상기 정보는 네트워크에서 하나 또는 그 초과의 링크들의 상태를 표시하는, 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법.
  10. 제9 항에 있어서,
    상기 정보는 높은 링크 단절 확률을 갖는 링크들을 식별하는, 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법.
  11. 제9 항에 있어서,
    상기 정보를 제공하는 것에 대한 응답으로, 상기 제어기로부터 업데이팅된 이벤트 프로파일을 수신하는 단계를 더 포함하는, 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법.
  12. 제8 항에 있어서,
    상기 특정 링크 손실 이벤트가 발생했음을 결정하는 단계는 상기 노드에 직접 커플링된 링크의 장애를 검출하는 단계를 포함하는, 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법.
  13. 제8 항에 있어서,
    상기 특정 링크 손실 이벤트가 발생했음을 결정하는 단계는 이웃 노드로부터 상기 링크 손실 이벤트의 통지를 수신하는 단계를 포함하는, 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법.
  14. 제13 항에 있어서,
    상기 노드가 상기 통지를 다른 노드들에 사전에 송신했는지 여부를 결정하는 단계; 및
    만약 상기 통지가 아직 송신되지 않았다면, 상기 통지를 다시 송신하는 단계를 더 포함하는, 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법.
  15. 제14 항에 있어서,
    상기 노드가 상기 통지를 사전에 송신했는지 여부를 결정하는 단계는 상기 노드에서 실행되는 애플리케이션에 의해 프레임에서 쿠키를 찾는 단계를 포함하는, 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법.
  16. 제8 항에 있어서,
    상기 노드에서 실행되는 애플리케이션을 통해서 링크 손실 이벤트들을 네트워크의 다른 노드들에 통신하는 단계를 더 포함하는, 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법.
  17. 제16 항에 있어서,
    상기 애플리케이션을 통해서 링크 손실 이벤트들을 통신하는 단계는 상기 다른 노드들에 의해서 검출가능한 특수 이더(ether) 타입을 갖는 프레임을 브로드캐스팅하는 단계를 포함하는, 네트워크 노드에서 라우팅 정보를 업데이팅하는 방법.
  18. 네트워크 노드로서,
    하나 또는 그 초과의 라우팅 표들을 저장하는 메모리; 및
    상기 메모리와 통신하는 하나 또는 그 초과의 프로세서들을 포함하고,
    상기 하나 또는 그 초과의 프로세서들은,
    제어기로부터 이벤트 프로파일을 수신하고 ― 상기 이벤트 프로파일은 다양한 링크 손실 시나리오들에서 구현될 라우팅 변경들을 표시함 ―,
    특정 링크 손실 이벤트가 발생했음을 결정하고,
    상기 이벤트 프로파일에 기반하여, 상기 특정 링크 손실 이벤트에 대한 라우팅 변경들을 결정하고, 그리고
    결정된 라우팅 변경들을 구현하도록 프로그래밍되는, 네트워크 노드.
  19. 제18 항에 있어서,
    상기 특정 링크 손실 이벤트가 발생했음을 결정하는 것은 이웃 노드로부터 상기 링크 손실 이벤트의 통지를 수신하는 것을 포함하고, 그리고
    상기 노드는,
    상기 노드가 상기 통지를 다른 노드들에 사전에 송신했는지 여부를 결정하고; 그리고
    만약 상기 통지가 아직 송신되지 않았다면, 상기 통지를 다시 송신하도록 추가로 프로그래밍되는, 네트워크 노드.
  20. 제19 항에 있어서,
    상기 노드는 하나 또는 그 초과의 애플리케이션들을 실행하고,
    상기 하나 또는 그 초과의 애플리케이션들은 상기 통지가 사전에 송신되었는지 여부를 결정하고 그리고 상기 통지를 다시 송신하는, 네트워크 노드.
KR1020187004590A 2015-11-02 2016-10-21 네트워크에서 링크 손실을 처리하기 위한 시스템 및 방법 KR102072148B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/929,991 2015-11-02
US14/929,991 US10868708B2 (en) 2015-11-02 2015-11-02 System and method for handling link loss in a network
PCT/US2016/058211 WO2017078948A1 (en) 2015-11-02 2016-10-21 System and method for handling link loss in a network

Publications (2)

Publication Number Publication Date
KR20180023009A true KR20180023009A (ko) 2018-03-06
KR102072148B1 KR102072148B1 (ko) 2020-01-31

Family

ID=58635034

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187004590A KR102072148B1 (ko) 2015-11-02 2016-10-21 네트워크에서 링크 손실을 처리하기 위한 시스템 및 방법

Country Status (9)

Country Link
US (1) US10868708B2 (ko)
EP (1) EP3371940B1 (ko)
JP (1) JP6596575B2 (ko)
KR (1) KR102072148B1 (ko)
CN (1) CN107925619B (ko)
AU (1) AU2016348234B2 (ko)
DE (1) DE112016003242T5 (ko)
GB (1) GB2557089B (ko)
WO (1) WO2017078948A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9385917B1 (en) * 2011-03-31 2016-07-05 Amazon Technologies, Inc. Monitoring and detecting causes of failures of network paths
US10135512B2 (en) * 2016-04-06 2018-11-20 Futurewei Technologies, Inc. System and method for millimeter wave communications
US10057787B2 (en) 2016-04-06 2018-08-21 Futurewei Technologies, Inc. System and method for millimeter wave communications
JP6784160B2 (ja) * 2016-12-08 2020-11-11 富士通株式会社 並列処理装置及びノード間通信プログラム
US10367682B2 (en) * 2017-06-30 2019-07-30 Bank Of American Corporation Node failure recovery tool
US10411990B2 (en) * 2017-12-18 2019-09-10 At&T Intellectual Property I, L.P. Routing stability in hybrid software-defined networking networks
CN109302359A (zh) * 2018-11-27 2019-02-01 迈普通信技术股份有限公司 一种网络设备、链路转换方法及装置
US10958567B1 (en) * 2019-03-29 2021-03-23 Juniper Networks, Inc. Controlling paths in a network via a centralized controller or network devices
US11463187B2 (en) 2020-04-14 2022-10-04 Google Llc Fault tolerant design for clock-synchronization systems
JP2022110933A (ja) * 2021-01-19 2022-07-29 キヤノン株式会社 ジョブ処理装置、ジョブ処理装置の制御方法、及びプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6392989B1 (en) * 2000-06-15 2002-05-21 Cplane Inc. High speed protection switching in label switched networks through pre-computation of alternate routes
US20070206583A1 (en) * 2006-02-17 2007-09-06 Christopher James Nason Method of accelerating control link loss detection
US20140078895A1 (en) * 2011-02-28 2014-03-20 Telefonaktiebolaget L M Ericsson (Publ) Path computation of working and recovery paths

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5398236A (en) 1993-05-26 1995-03-14 Nec America, Inc. Asynchronous transfer mode link recovery mechanism
JP2933021B2 (ja) 1996-08-20 1999-08-09 日本電気株式会社 通信網障害回復方式
US6745350B1 (en) 1997-01-03 2004-06-01 Ncr Corporation Automated failure recovery service
KR100813788B1 (ko) 2000-12-11 2008-03-13 주식회사 케이티 무선통신 시스템에서 이용되는 응용소프트웨어의 배포방법
US7184401B2 (en) 2001-02-05 2007-02-27 Interdigital Technology Corporation Link-aware transmission control protocol
US20020112072A1 (en) 2001-02-12 2002-08-15 Maple Optical Systems, Inc. System and method for fast-rerouting of data in a data communication network
US20020171886A1 (en) 2001-03-07 2002-11-21 Quansheng Wu Automatic control plane recovery for agile optical networks
US20030001079A1 (en) 2001-04-02 2003-01-02 Christian Boemler Current mode pixel amplifier
US7068595B2 (en) 2001-04-13 2006-06-27 Sun Microsystems, Inc. Method and apparatus for facilitating instant failover during packet routing
JP2003018828A (ja) 2001-06-28 2003-01-17 Sanken Electric Co Ltd Dc−dcコンバータ
EP1286551A1 (en) 2001-07-17 2003-02-26 Telefonaktiebolaget L M Ericsson (Publ) Error concealment for image information
RU2201833C1 (ru) 2001-10-31 2003-04-10 Муравьев Владимир Михайлович Способ изготовления решетчатых столбов
JP3594140B2 (ja) 2002-06-26 2004-11-24 沖電気工業株式会社 半導体装置の製造方法
US20060005602A1 (en) 2004-07-06 2006-01-12 Zyvex Corporation Calibration for automated microassembly
EP1803261B1 (de) 2004-10-20 2008-11-12 Nokia Siemens Networks Gmbh & Co. Kg Verfahren zur fehlererkennung in einem paketbasierten nachrichtenverteilsystem
US7966514B2 (en) * 2005-09-19 2011-06-21 Millennium It (Usa), Inc. Scalable fault tolerant system
US7729278B2 (en) 2007-02-14 2010-06-01 Tropos Networks, Inc. Wireless routing based on data packet classifications
US7894450B2 (en) 2007-12-31 2011-02-22 Nortel Network, Ltd. Implementation of VPNs over a link state protocol controlled ethernet network
WO2010018755A1 (ja) * 2008-08-11 2010-02-18 株式会社日立製作所 トランスポート制御サーバ、ネットワークシステム及びトランスポート制御方法
GB0905559D0 (en) 2009-03-31 2009-05-13 British Telecomm Addressing scheme
JP2012049674A (ja) 2010-08-25 2012-03-08 Nec Corp 通信装置、通信システム、通信方法、および通信プログラム
US8811212B2 (en) 2012-02-22 2014-08-19 Telefonaktiebolaget L M Ericsson (Publ) Controller placement for fast failover in the split architecture
US9467363B2 (en) 2012-01-30 2016-10-11 Nec Corporation Network system and method of managing topology

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6392989B1 (en) * 2000-06-15 2002-05-21 Cplane Inc. High speed protection switching in label switched networks through pre-computation of alternate routes
US20070206583A1 (en) * 2006-02-17 2007-09-06 Christopher James Nason Method of accelerating control link loss detection
US20140078895A1 (en) * 2011-02-28 2014-03-20 Telefonaktiebolaget L M Ericsson (Publ) Path computation of working and recovery paths

Also Published As

Publication number Publication date
CN107925619B (zh) 2021-03-16
EP3371940A1 (en) 2018-09-12
KR102072148B1 (ko) 2020-01-31
JP6596575B2 (ja) 2019-10-23
GB201802087D0 (en) 2018-03-28
WO2017078948A1 (en) 2017-05-11
EP3371940B1 (en) 2022-06-15
GB2557089B (en) 2021-11-03
US10868708B2 (en) 2020-12-15
AU2016348234A1 (en) 2018-03-08
DE112016003242T5 (de) 2018-04-12
JP2018531535A (ja) 2018-10-25
GB2557089A (en) 2018-06-13
US20170126482A1 (en) 2017-05-04
EP3371940A4 (en) 2019-05-08
CN107925619A (zh) 2018-04-17
AU2016348234B2 (en) 2018-10-18

Similar Documents

Publication Publication Date Title
KR102072148B1 (ko) 네트워크에서 링크 손실을 처리하기 위한 시스템 및 방법
Deniz et al. An adaptive, energy-aware and distributed fault-tolerant topology-control algorithm for heterogeneous wireless sensor networks
JP2018531535A6 (ja) ネットワークにおけるリンクロスの処理のためのシステムおよび方法
EP2652905B1 (en) Increased communication opportunities with low-contact nodes in a computer network
US9154382B2 (en) Information processing system
EP2688240B1 (en) Method, system and device for switching and selecting clock source device
US9544223B2 (en) Communication system, control apparatus, method for controlling same, and program
Kobo et al. Efficient controller placement and reelection mechanism in distributed control system for software defined wireless sensor networks
CN109218126B (zh) 监测节点存活状态的方法、装置及系统
CN105340230A (zh) 虚拟机架拓扑管理
US20120275316A1 (en) Failure Detection Method and Device for FCoE Virtual Link
US12058025B2 (en) Hierarchical resource constrained network
US9876739B2 (en) System and method for failure detection in rings
US20160072695A1 (en) Method and apparatus for determining next hop and advertising routing information
EP2945314B1 (en) Distributed flow processing system fault tolerance method, nodes and system
US11212204B2 (en) Method, device and system for monitoring node survival state
Taghikhaki et al. Energy-efficient Trust-based aggregation in wireless sensor networks
US20150009819A1 (en) Packet relay system, packet relay method, and packet relay device
EP2958270B1 (en) Direct-link quality monitoring method, communications device, and system
Afsar A comprehensive fault‐tolerant framework for wireless sensor networks
US10855520B1 (en) Utilizing upstream routing of multicast traffic from redundant multicast sources to increase multicast resiliency and availability
US10277700B2 (en) Control plane redundancy system
US9590893B2 (en) System and method for management of network links by traffic type
US10932195B1 (en) Parent device shadow execution for a sleeping low power and lossy network child network device
US10841832B2 (en) Wireless communication device, wireless communication system, wireless communication method, and computer program product

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
AMND Amendment
E902 Notification of reason for refusal
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2019101002554; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20190729

Effective date: 20191022

S901 Examination by remand of revocation
GRNO Decision to grant (after opposition)