KR20140020731A - 네트워크 디바이스의 신호 유실 이벤트 후 자동 복구 - Google Patents

네트워크 디바이스의 신호 유실 이벤트 후 자동 복구 Download PDF

Info

Publication number
KR20140020731A
KR20140020731A KR1020130075451A KR20130075451A KR20140020731A KR 20140020731 A KR20140020731 A KR 20140020731A KR 1020130075451 A KR1020130075451 A KR 1020130075451A KR 20130075451 A KR20130075451 A KR 20130075451A KR 20140020731 A KR20140020731 A KR 20140020731A
Authority
KR
South Korea
Prior art keywords
link
link partner
communication
logic
transmitter
Prior art date
Application number
KR1020130075451A
Other languages
English (en)
Other versions
KR101466791B1 (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 KR20140020731A publication Critical patent/KR20140020731A/ko
Application granted granted Critical
Publication of KR101466791B1 publication Critical patent/KR101466791B1/ko

Links

Images

Classifications

    • 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/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0659Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
    • H04L41/0661Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities by reconfiguring faulty entities

Abstract

스위치 디바이스는, 로컬 링크 파트너와 원격 링크 파트너를 연결하는 통신 링크 상에 신호 유실 이벤트가 발생하는 때를 식별할 수 있다. 스위치 디바이스는, 원격 링크 파트너와 속도 교섭을 수행함 없이, 원격 링크 파트너와의 통신을 복원하기 위해 링크 재시작 프로세스를 자동으로 수행할 수 있다. 링크 재시작 프로세스는 복구 지속기간 동안 송신기의 디세이블하는 것 및 송신기 및 수신기를 초기 구성 상태로 구성하는 것을 포함한다. 링크 재시작 프로세스는 또한 로컬 링크 파트너와 원격 링크 파트너 사이의 트레이닝 프로토콜 통신의 시작을 동기화할 수 있다. 스위치는 또한 원격 링크 파트너로부터 수신된 트래픽이 링크 기준에 미치지 못할 때 링크 재시작 프로세스를 수행할 수 있다.

Description

네트워크 디바이스의 신호 유실 이벤트 후 자동 복구{AUTOMATIC RECOVERY AFTER LOSS OF SIGNAL EVENT IN A NETWORK DEVICE}
본 발명은 스위치와 같은 네트워크 디바이스들에 관한 것이다. 또한 본 발명은 신호의 유실(loss) 후 네트워크 링크 파트너들 간의 연결의 복구를 동기화하는 것에 관한 것이다.
막대한 사용자의 요구에 의해 이끌어진 전자 및 통신 기술들의 급격한 진보는 막대한 양의 데이터의 교환이 가능한 컴퓨팅 디바이스들의 방대한 상호연결 네트워크를 야기하였다. 예를 들어, 근거리 네트워크들(LANs)은 단일 네트워크 내에서 수백 또는 수천의 컴퓨팅 디바이스를 연결할 수 있다. 아마도 컴퓨팅 디바이스들의 이러한 상호연결 중 가장 잘 알려진 예는 인터넷일 것이며, 이는 나날이 계속해서 확장하고 있다. 기술이 계속해서 발전하고 상호연결된 통신 네트워크들이 사용량 및 사용 빈도에 있어 계속해서 성장함에 따라, 데이터를 보다 효율적으로 전송 및 수신하는 것에 대한 증가하는 동기가 존재한다.
일 측면에 따르면, 방법은:
스위치 디바이스 내에서:
신호 유실(loss) 이벤트를 식별하는 단계, 및 이에 응답하여:
링크 파트너(link partner)와의 통신을 복원하기 위해 링크 재시작(restart) 프로세스를 자동을 수행하는 단계로서, 상기 링크 파트너와의 속도 교섭(speed negotiation)을 수행하지 않고 상기 링크 재시작 프로세스를 실행하는 단계를 포함한다.
바람직하게, 식별하는 단계는, 수신기가 신호 유실 타이밍 임계(signal loss timing threshold)를 초과하여 상기 링크 파트너로부터 데이터를 수신하지 못한 것을 식별하는 단계를 포함한다.
바람직하게, 식별하는 단계는, 상기 링크 파트너로부터 수신된 데이터가 품질 기준(quality criteria)에 미치지 못하는(fail) 때를 식별하는 단계를 포함한다.
바람직하게, 자동으로 수행하는 단계는, 미리 결정된 복구 지속기간(recovery duration) 동안 송신기를 디세이블(disable)하는 단계를 포함한다.
바람직하게, 자동으로 수행하는 단계는, 상기 미리 결정된 복구 지속기간 만료 후 상기 송신기를 인에이블(enable)하는 단계를 더 포함한다.
바람직하게, 상기 방법은:
상기 통신 링크의 복구 후 상기 원격 링크 파트너와 트레이닝(training) 프로토콜 통신을 수행하는 단계를 더 포함한다.
바람직하게, 자동으로 수행하는 단계는, 송신기를 초기 송신 상태(initial transmit state)로 재시작하는 단계를 포함한다.
바람직하게, 자동으로 수행하는 단계는, 수신기를 초기 수신 상태로 재시작하는 단계를 포함한다.
일 측면에 따르면, 디바이스는:
송신기 및 수신기를 포함하는 통신 인터페이스; 및
상기 통신 인터페이스와 통신하는 복구 로직(recovery logic)으로서, 상기 복구 로직은:
상기 수신기에서 신호 유실 이벤트를 식별하고, 및 이에 응답하여:
상기 송신기를 아이들 상태(idle state)로 강제(force)하고;
복구 지속기간이 만료하기를 기다리며; 및 상기 복구 지속기간이 만료된 후:
상기 송신기를 활성 상태로 인에이블하고; 및
원격 링크 파트너와 속도 교섭을 수행하지 않고, 상기 송신기 및 상기 수신기를 통해 상기 원격 링크 파트너와의 통신을 재수립(reestablish)하도록 동작가능한, 상기 복구 로직을 포함한다.
바람직하게, 상기 복구 로직은 속도 교섭 프레임을 전송하지 않고 통신함으로써, 통신하도록 동작가능하다.
바람직하게, 상기 복구 로직은 상기 신호 유실 이벤트의 식별 후 수신된 데이터의 프로세싱을 중단하도록 더 동작가능하다.
바람직하게, 상기 복구 로직은 통신을 재수립한 후 상기 수신된 데이터의 프로세싱을 재개(resume)하도록 더 동작가능하다.
바람직하게, 상기 복구 로직은 상기 복구 지속기간이 만료한 후 상기 수신기를 초기 수신 상태로 재시작하도록 더 동작가능하다.
바람직하게, 상기 복구 로직은 상기 송신기를 아이들 상태로 강제하기 전에 상기 송신기를 초기 송신기 상태로 구성하도록 더 동작가능하다.
바람직하게, 상기 복구 로직은, 상기 원격 링크 파트너와 제어 정보를 통신하지 않고, 상기 원격 링크 파트너와의 통신을 재수립하도록 동작가능하다.
일 측면에 따르면, 디바이스는:
직렬화기(serializer)/병렬화기(Deserializer)(SerDes) 디바이스;
링크 기준을 포함하는 메모리; 및
상기 SerDes 디바이스와 통신하는 관리 로직으로서, 상기 관리 로직은:
상기 SerDes 디바이스에 의해 수신된 트래픽이 링크 기준에 미치지 못할 때 링크 유실 이벤트를 식별하고, 및 이에 응답하여:
원격 SerDes 디바이스와 속도 교섭을 수행하지 않고, 상기 원격 SerDes 디바이스와의 통신을 복원하기 위한 링크 재시작 프로세스를 수행하기 위해 재시작 지시를 상기 SerDes 디바이스로 전송하도록 동작가능한, 상기 관리 로직을 포함한다.
바람직하게, 상기 링크 기준은 상기 SerDes 디바이스에 의해 수신된 트래픽이 오류 임계(error threshold)를 초과하는 때를 포함한다.
바람직하게, 상기 관리 로직은: 상기 SerDes 디바이스가 상기 링크 재시작 프로세스를 완료하는 때를 식별하도록 더 동작가능하다.
바람직하게, 상기 관리 로직은:
상기 링크 재시작 프로세스의 완료 후 상기 SerDes 디바이스에 의해 수신된 트래픽이 상기 링크 기준을 충족시키는 때를 식별하도록 더 동작가능하다.
바람직하게, 상기 관리 로직은:
상기 링크 재시작 프로세스의 완료 후 상기 SerDes 디바이스에 의해 수신된 트래픽이 상기 링크 기준을 충족시키는 때를 식별한 후:
상기 트래픽이 상기 링크 기준을 충족시킨다는 것을 나타내는 링크 지시를 원격 SerDes로 전송하도록 더 동작가능하다.
본 발명이 다음의 도면들 및 상세한 설명을 참조하여 더 잘 이해될 수 있을 것이다. 도면들 내에서, 동일한 도면부호들은 상이한 도면들에 걸쳐 대응하는 부분들을 지시한다.
도 1은 신호 유실 후 통신 링크의 자동 복구를 위한 시스템의 일 예를 도시한다.
도 2는 신호 유실 후 통신 링크의 자동 복구를 위한 시스템의 일 예를 도시한다.
도 3은 링크 파트너들 간의 트레이닝 프로토콜 통신 수행의 동기화된 시작의 타이밍 예를 도시한다.
도 4는 링크 파트너가 하드웨어, 소프트웨어 또는 이들 모두로서 구현할 수 있는 로직의 일 예를 도시한다.
도 5는 링크 파트너들에 의해 수행되는 링크 재시작 프로세스의 타이밍 예를 도시한다.
도 6은 링크 기준에 미치지 못하는 통신 링크를 재시작하기 위한 시스템의 일 예를 도시한다.
도 7은 스위치 디바이스가 하드웨어, 소프트웨어 또는 이들 모두로서 구현할 수 있는 로직의 일 예를 도시한다.
이하의 논의는 네트워크 디바이스들에 관한 것이다. 네트워크 디바이스는, 일 예로서, 스위치 또는 네트워크 트래픽을 처리하는 임의의 다른 디바이스일 수 있다. 이하에서 설명되는 기법들을 통합하는 네트워크 디바이스는, 예들로서, 스위치, 허브, 라우터, 게이트웨이, 네트워크 브리지, 블레이드 서버(blade server), 또는 임의의 다른 유형의 네트워크 디바이스를 포함할 수 있다. 스위치는 또한, 탑-오브-랙(Top-of-Rack; TOR) 설계 또는 엔드-오브-로우(End-of-Row) 설계 내에서와 같은, 임의의 물리적 아키텍처 내에 배치된 복수의 스위칭 디바이스들의 연결 시스템으로서 구현될 수 있다. 스위치는, 스위치에 통신가능하게 연결된 디바이스들 사이에서 데이터를 라우팅하기 위하여 스위치 디바이스 내의 임의의 수의 점-대-점 연결들을 포함할 수 있다.
도 1은, 스위치와 같은 임의의 네트워크 디바이스 내에 통합될 수 있는, 신호 유실(loss of signal; LOS) 후 통신 링크의 자동 복구를 위한 시스템(100)의 일 예를 도시한다. 도 1에 도시된 시스템(100)은 링크 파트너(link partner) 1(120) 및 링크 파트너 2(121)로서 라벨링된 2개의 링크 파트너들을 포함한다. 링크 파트너는 스위치 디바이스 내의 통신 링크의 임의의 말단(end)을 지칭할 수 있다. 예를 들어, 링크 파트너는 스위치 디바이스의 일부로서 구현된 직렬화기/병렬화기(serializer/Deserializer; SerDes)일 수 있다.
링크 파트너들(120~121)은 스위치 디바이스 내의 통신 링크를 통해 통신할 수 있다. 링크 파트너 1(120)과 링크 파트너 2(121) 사이의 통신 링크는 다양한 방식들로 구현될 수 있으며, 스위칭 패브릭(switching fabric) 또는 백플레인(backplane)과 같은, 복수의 구성요소들을 포함할 수 있다. 일 예로서, 통신 링크는 2개의 링크 파트너들(120 및 121) 사이의 전용 링크일 수 있다. 일 구현예에 있어, 링크 파트너들(120 및 121)은 전이중 링크(full duplex link)를 통해 연결될 수 있으며, 전이중 링크 내에서 링크 파트너 1(120)의 송신기는 전용 통신 라인을 통해 링크 파트너 2(121)의 수신기에 물리적으로 연결된다. 링크 파트너 2(121)의 송신기가 동일한 또는 별개의 전용 통신 라인을 통해 링크 파트너 1(120)의 수신기에 물리적으로 연결될 수 있다. 링크 파트너들(120~121)은 통신 링크를 통해 임의의 유형의 데이터를 통신할 수 있다. 링크 파트너들(120~121)이 통신할 수 있는 데이터의 예들은, 임의의 IP 통신 프로토콜에 따른 패킷들과 같은 인터넷 프로토콜(IP) 데이터, 음성 데이터와 같은 셀룰러 데이터, 또는 다른 유형들의 데이터를 포함할 수 있다.
링크 파트너 1(120)은 통신 인터페이스(130) 및 복구 로직(recovery logic)(140)을 포함할 수 있다. 일 구현예에 있어, 복구 로직(140)은 하나 이상의 프로세스들(150) 및 메모리(16)를 포함한다. 메모리(160)는 복구 명령들(161), 복구 지속기간 파라미터(recovery duration parameter)(162), 동기화 임계 파라미터(163), 및 신호 유실 기준(loss of signal criteria)(164)을 포함할 수 있다. 이하에서 더 구체적으로 설명되는 바와 같이, 복구 로직(140)은 신호 유실 이벤트를 식별하고, 이에 응답하여, 링크 파트너와의 속도 교섭(speed negotiation)을 수행하지 않으면서, 링크 파트너(예를 들어, 링크 파트너 2(121))와의 통신 링크를 복원(restore)하기 위한 링크 재시작 프로세스를 자동으로 수행할 수 있다. 이러한 방식으로, 링크 파트너들은 제어 정보를 교환하지 않으면서 링크 재시작을 조정(coordinate)할 수 있으며, 예를 들어, LOS 이벤트 식별시 그 각각이 초기(initial) 송신 및 수신 상태에 진입할 수 있다.
도 2는 신호 유실 후 통신 링크의 자동 복구를 위한 시스템(200)의 일 예를 도시한다. 시스템(200)은 스위치 또는 다른 네트워크 디바이스의 부분으로서 구현될 수 있다. 도 2에 도시된 예시적인 시스템(200)은 SerDes 디바이스 1(210) 및 SerDes 디바이스 2(212)로서 라벨링된 2개의 링크 파트너들을 포함한다. SerDes 디바이스들(210 및 212)은, SerDes 디바이스들이 스위치 디바이스 내의 독립적인 논리적 또는 물리적 디바이스들로서 구현될 때와 같은, 원격 링크 파트너들일 수 있다. 예를 들어, SerDes 디바이스들(210 및 212)은 독립적인, 패브릭 카드들, 스위치들, 블레이드 서버들, 시스템 온 칩(SoC)들, 또는 스위칭 시스템 내의 다른 디바이스들 또는 회로들 상에 구현될 수 있다. 그러나, 원격 링크 파트너들은, 링크 파트너들이 인터넷을 통해 연결된 상이한 스위치 디바이스들일 때와 같이, 그들이 단일 스위치 내부에서보다 더 큰 거리를 통해 서로 연결되어 있다는 점에서 원격일 수 있다. 원격 링크 파트너들은 전이중 링크를 통해 연결될 수 있다. 도 2에 도시된 바와 같이, 백플레인(215)은, 통신 링크 1(216) 및 통신 링크 2(217)를 포함하는, SerDes 디바이스 1 및 SerDes 디바이스 2 사이의 전이중 링크를 구현한다. 통신 링크들 1 및 2는, 예를 들어, 구리 배선(copper wiring), 케이블링(예를 들어, 이더넷 케이블), 또는 물리적 연결의 임의의 다른 형태를 통한, 물리적 연결들로서 구현될 수 있다.
링크 파트너, 예를 들어, SerDes 디바이스는 원격 파트너와 통신하기 위한 송신기 및 수신기를 포함할 수 있다. SerDes 디바이스 1(210)은 데이터를 SerDes 디바이스 2(212)로 전송하기 위한 송신기 1(222) 및 송신 데이터경로(224)를 포함할 수 있다. SerDes 디바이스 1 내의 송신 데이터경로(224)는, 직렬화기 또는 다른 로직과 같은, SerDes 디바이스 2(212)로 전송될 데이터를 프로세싱하기 위한 임의의 양의 로직을 포함할 수 있다. 도 2에 도시된 바와 같이, SerDes 디바이스 1(210)은 송신기 1(222)을 통해 데이터를 통신 링크 1(216)을 통해 SerDes 디바이스 2(212)의 수신기 2(252)로 전송할 수 있다.
SerDes 디바이스 1(210)은 또한 SerDes 디바이스 2(212)로부터 수신되는 데이터를 위한 수신기 1(232) 및 수신 데이터경로(234)를 포함할 수 있다. SerDes 디바이스 1 내의 수신 데이터경로(234)는, 병렬화기 또는 수신된 데이터의 무결성을 검증(verify)하기 위한 다른 로직과 같은, SerDes 디바이스 2(212)로부터 수신되는 데이터를 프로세싱하기 위한 임의의 양의 로직을 포함할 수 있다. 예를 들어, 수신 데이터경로(234)는 수신된 데이터가 미리 결정된 통신 프로토콜을 위반했는지 여부, 데이터가 임의의 수의 품질 기준(quality criteria)을 충족시키는지 여부, 또는 다른 로직을 식별하기 위한 로직을 포함할 수 있다. SerDes 디바이스 1(210)은 통신 링크 2(217)를 통해 SerDes 디바이스 2(212)의 송신기 2(242)로부터 수신기 1(232)를 통해 데이터를 수신할 수 있다. SerDes 디바이스 2(212)는, 송신기 2(242), 송신 데이터경로(244), 수신기 2(252), 및 수신 데이터경로(254)와 같은, SerDes 디바이스 1(210)과 유사한 구성요소들을 포함할 수 있다.
링크 파트너는 신호 유실 이벤트 식별시, 원격 링크 파트너와의 통신 링크를 자동으로 재수립(reestablish)하기 위한 복구 로직(140)을 구현할 수 있다. 도 2에서, SerDes 디바이스 1(210)은, 신호 유실 이벤트 식별 후 SerDes 디바이스 2(212)와의 통신 링크를 자동으로 복구할 수 있는 복구 로직(140)을 포함한다. 신호 유실 이벤트는, 신호 유실 기준(164)과 같은, 임의의 수의 미리 결정된 기준에 따라 복구 로직(140)에 의해 정의될 수 있다. 복구 로직(140)은, 임의의 유실 또는 통신 링크의 재시작 또는 재구성을 정당화하기에 충분한 신호 품질의 중요한 변화를 포괄하도록 LOS를 정의할 수 있다. 예들로서, 복구 로직(140)은, 신호 진폭, 신호 형상(signal shape), 신호 타이밍, 신호 확산 파라미터(signal dispersion parameter), 또는 다른 신호 파라미터 값들이 하나 이상의 미리 결정된 기준 임계들을 초과할 때, 신호 유실 이벤트를 식별할 수 있다. 복구 로직(140)은, 원격 링크 파트너로부터 수신된 데이터 신호에 대한 이상에서-계산된(numerated) 변화들 중 임의의 하나를 식별하는 수신 데이터경로 내의 임의의 수의 회로부(circuitry)로부터, LOS 이벤트 표시(indication)를 획득한다.
일 예에 있어, 복구 로직(140)은 또한, SerDes디바이스의 수신기가 신호 유실 타이밍 임계(signal loss timing threshold)보다 더 길게 원격 링크 파트너로부터 데이터를 수신하지 못했을 때, 신호 유실을 식별할 수 있다. 또는, 복구 로직(140)은, 예를 들어, 링크 1(216)과 같은 통신 링크가 고-임피던스 상태(high-impedance state) 또는 움직임의 결여(lack of activity)를 나타내는 다른 물리적 상태에 있을 때, 신호 유실을 식별할 수 있다. 원격 링크 파트너가 통신 라인을 통한 데이터 전송을 중단할 때, 예를 들어, 링크 파트너가 파워가 차단되거나 또는 재시작하고 및 통신 라인 상의 신호의 전달을 중단할 때, 고 임피던스 상태가 통신 링크 상에 발생할 수 있다.
신호 유실 이벤트는, 예를 들어, 지속기간 중 인터럽션(interruption) 임계를 초과하는 인터럽션과 같은, 링크 파트너로 송신되는 데이터 스트림 상의 임의의 인터렙션에 의해 초래될 수 있다. 예들로서, SerDes 디바이스 1의 복구 로직(140)은, SerDes 디바이스 2가 재시작할 때 또는 SerDes 디바이스 2로부터 SerDes 디바이스 1로 전송되는 데이터 스트림에 인터럽션이 발생할 때, 신호 유실 이벤트를 식별할 수 있다. 예들로서, 인터럽션은 통신 채널 내의 물리적 장애(disturbance) 또는 전원 공급장치 결함으로부터 기인할 수 있다. 일 구현예에 있어, 복구 로직(140)은, 1) 원격 링크 파트너로부터 수신되는 데이터(또는 데이터의 부족), 2) 통신 링크 그 자체, 3) 원격 링크 파트너로부터 데이터를 수신하는 수신기, 또는 이들의 임의의 조합을 모니터링함으로써 신호 유실을 식별할 수 있다. 복구 로직(140)은, 원격 링크 파트너로의 시그널링(signaling) 없이 그리고 원격 SerDes 디바이스와의 속도 교섭을 수행하지 않고, 자동으로 원격 SerDes 디바이스와의 통신을 복원하기 위한 신호 재시작 프로세스를 수행함으로써 LOS 이벤트에 응답할 수 있다.
예시적인 일 예로서, 임의의 수의 이유들 때문에, 예를 들어, 수신된 데이터의 프로토콜 오류들의 검출시 SerDes 디바이스 2(212)가 재시작할 때, 신호 유실이 통신 링크 2(217) 상에 발생할 수 있다. SerDes 디바이스 1(210)의 복구 로직(140)은 통신 링크 2(217) 상에 발생한 신호 유실 이벤트를 식별할 수 있다. 이에 응답하여, 복구 로직(140)은 자동으로 링크 재시작 프로세스를 시작할 수 있다. 일 구현예에 있어, SerDes 디바이스 1(210)의 복구 로직(140)은, 예를 들어, 송신기 1(222)을 아이들 상태(idle state)로 강제(force)함으로써, 송신기 1(222)을 디세이블(disable)할 수 있다. 복구 로직(140)은 송신기를 다시-인에이블(re-enable)하기 전에 복구 지속기간(recovery duration) 동안 송신기를 디세이블할 수 있다. 일 구현예에 있어, SerDes 디바이스 1(210)의 복구 로직(140)은 미리 결정된 복구 지속시간 이후에 만료하도록 복구 타이머를 구성할 수 있다. 미리 결정된 복구 지속기간은 통신 링크의 적절한 재구성을 보장하도록 설정될 수 있다. 예를 들어, 미리 결정된 복구 타이머는, 예를 들어, 통신 링크 2(217)와 같은 통신 라인 상의 임의의 잔존 데이터(residual data)를 치우기에 충분히 길 수 있다. 일 구현예에 있어, 미리 결정된 복구 지속기간은 70 밀리초(ms)일 수 있다. 대안적으로, 미리 결정된 복구 지속기간은 70ms의 20% 마진(margin) 내의 임의의 값으로 설정될 수 있다.
송신기 1(222)이 디세이블되어 있는 동안, SerDes 디바이스 1(210)은 통신 링크 1(216)을 통한 데이터 전송을 중지할 수 있으며, 이는 통신 링크 1(216)을 고 임피던스 상태에 진입하게 할 수 있다. SerDes 디바이스 2(212)의 복구 로직(140)은 신호 유실 이벤트로서 통신 링크 2(210)의 고 임피던스 상태를 식별할 수 있다. 이에 응답하여, SerDes 디바이스 2(212)의 복구 로직(140) 역시, 예를 들어, 70ms와 같은 미리 결정된 복구 지속기간 동안 송신기 2(242)를 디세이블할 수 있다. 미리 결정된 복구 지속기간이 만료된 후, 각 SerDes 디바이스(210, 212)의 복구 로직(140)은 그들 각각의 송신기들, 예를 들어, 송신기 1(222) 및 송신기 2(242)를 다시-인에이블할 수 있다. 따라서, 복구 로직(140)은, 복구 지속기간 동안 송신기를 디세이블하는 것과 복구 지속기간 만료 후 송신기를 인에이블하는 것을 포함하는 링크 재시작 프로세스를 수행할 수 있다.
링크 재시작 프로세스 실행 후, 링크 파트너는, 링크 파트너들, 예를 들어, 링크 1(216) 및 링크 2(217) 사이의 하나 이상의 통신 링크를 구성하기 위하여 원격 링크 파트너와의 트레이닝 프로토콜 통신(training protocol communication)을 수행할 수 있다. 트레이닝 프로토콜 통신은 통신 링크를 구성하기 위한 링크 파트너들 사이의 트레이닝 및 구성 파라미터들의 교환을 포함할 수 있다. 링크 파트너들 사이에 실행되는 트레이닝 프로토콜 통신의 일 예가 IEEE 802.3 이더넷 표준의 클로우즈(Clause) 72(클로우즈 72)에서 설명되며, 이는 파트너들 간의 자동화 송신 이퀄라이제이션 핸드쉐이크 프로토콜(automated transmit equalization handshake protocol)을 설명한다. 복구 로직(140)은, 각각의 개별적인 송신기가 미리 결정된 복구 지속기간 만료 후 인에이블되면, 링크 파트너들 간의 트레이닝 프로토콜 통신들의 동기화 송신(synchronized transmission)을 허용할 수 있다.
링크 파트너들 간에 트레이닝 프로토콜 통신을 수행하는 것은, 예를 들어, 클로우즈 72 프레임의 송신하는 것 및 수신하는 것은, 트레이닝 프로토콜 프레임을 교환하기 전에, 링크 파트너들이 공통 속도(common speed)로 통신하도록 구성되는 것을 요구할 수 있다. 일 구현예에 있어, 스위치 디바이스의 링크 파트너들은 공통 전송 속도로 통신하도록 개별적으로 구성된다. 따라서, 복구 로직(140)은, 원격 링크 파트너와의 속도 교섭을 수행하지 않고, 신호 상실 이벤트로부터 통신 링크를 자동으로 복구할 수 있다. 유사하게, 복구 로직(140)은, 원격 링크 파트너와의 속도 교섭 없이, 트레이닝 프로토콜 통신들, 예를 들어, 클로우즈 72 통신들의 수행을 동기화할 수 있다.
IEEE 802.3 이더넷 표준의 클로우즈 73(클로우즈 73)은 속도 교섭 통신 교환의 일 예를 설명한다. 클로우즈 73은 링크 파트너들 간의 공통 통신 속도를 교섭하기 위해 차분 맨체스터 인코딩(Differential Manchester Encoding; DME) 프레임들의 교환을 요구한다. 반면, 복구 로직(140)은, 링크 파트너들 간의 속도 교섭들의 수행과 연관된 추가적인 하드웨어, 상태 머신들, 또는 로직을 요구하지 않고, 신호 유실 이벤트로부터의 자동 복구 및 트레이닝 통신들 또는 링크 튜닝(link tuning)의 동기화된 시작을 지원할 수 있다. 일부 구현예들에 있어, 복구 로직(140)은 DME 프레임들의 교환을 지원하기 위한 추가적인 하드웨어, 상태 머신들, 및 로직 없이 링크를 복구한다. 또한, IEEE 802.3 클로즈 73이 통신 레이트들(communicated rated)의 미리 결정된 세트에 한정되는 반면, 복구 로직(140)은 링크 파트너들이 통신하는 통신 속도와 무관하게 구현될 수 있다. 유사하게, 클로우즈 73은 이더넷 호환 표준을 정의하지만, 반면 복구 로직(140)은 임의의 유형의 데이터, 예를 들어, 비-이더넷 데이터를 라우팅하는 스위치 디바이스 상에 구현될 수 있다. 다시 말해서, 복구 로직(140)은 IEEE 802.3 비-호환 디바이스들 상에 구현될 수 있다.
도 3은 링크 파트너들 간의 트레이닝 프로토콜 통신 수행의 동기화된 시작의 타이밍 예(300)를 도시한다. 도 3에 도시된 타이밍 예(300)는 링크 파트너 1로 라벨링된 제 1 링크 파트너 및 링크 파트너 2로 라벨링된 제 2 링크 파트너에 대한 시간라인을 포함한다. 링크 파트너 1은 송신기, 예를 들어, 송신기 1을 포함할 수 있다. 마찬가지로, 링크 파트너 2는 송신기, 예를 들어, 송신기 2를 포함할 수 있다.
링크 파트너 1 내에 구현된 복구 로직(140)은, 링크 파트너 1이 링크 파트너 2로부터 이를 통해 데이터를 수신하는 통신 링크 내의 신호 유실 이벤트를 식별할 수 있다. 이에 응답하여, 링크 파트너 1의 복구 로직(140)은, 도 3의 시간(t1)에 도시된 바와 같이, 링크 파트너 1 내의 송신기 1을 디세이블할 수 있다. 송신기 1을 디세이블하면, 링크 파트너 1이 이를 통해 링크 파트너 2로 데이터를 송신하는 통신 라인이 고 임피던스 상태에 진입할 수 있다. 따라서, 링크 파트너 2 내에 구현된 복구 로직(140)이 신호 유실 이벤트를 식별할 수 있다. 신호 유실 이벤트 식별시, 링크 파트너 2의 복구 로직(140)은, 도 3의 시간(t2)에 도시된 바와 같이, 링크 파트너 2의 송신기 2를 디세이블할 수 있다.
링크 파트너들 1 및 2 각각은 도 3에 도시된 바와 같이, 복구 지속기간, 예를 들어, 70ms 동안 그들 각각의 송신기를 디세이블 할 수 있다. 따라서, 링크 파트너 1의 복구 로직(140)은, 시간(t1) 이후 70ms일 수 있는 시간(t3)에서 송신기 1을 인에이블 할 수 있다. 그 뒤, 링크 파트너 1은 트레이닝 프레임들, 예를 들어, 클로우즈 72 프레임들을 송신기 1을 통해 링크 파트너 2로 전송하는 것을 시작할 수 있다. 유사하게, 링크 파트너 2의 복구 로직(140)은, 송신기 2가 디세이블되었던 시간(t2) 이후 70ms일 수 있는 시간(t4)에서 송신기 2를 인에이블할 수 있다. 그 뒤, 링크 파트너 2는, 도 3에 도시된 예의 시간(t4)에서 시작하는 것으로 보여지는 바와 같이, 송신기 2를 통해 링크 파트너 1로 트레이닝 프레임들을 전송하는 것을 시작할 수 있다.
예시적인 일 구현예로서, 링크 파트너 내에 구현된 복구 로직(140)은 신호 유실 이벤트를 식별하고, 동기화 임계 파라미터(163)에 의해 지정되는 시간 기간 내에서 그것의 개별적인 송신기를 디세이블할 수 있다. 예를 들어 도 3에서, 송신기 1이 LOS 이벤트를 초래하는 통신 라인의 구동을 중단했을 때인 시간(t1)과 LOS 이벤트에 응답하여 링크 파트너 2의 복구 로직(140)이 송신기 2를 디세이블할 때인 시간(t2) 사이의 시간이 동기화 임계 파라미터(163)보다 작을 수 있다. 링크 파트너들이 동일한 복구 지속기간 동안 그들 각각의 송신기들을 디세이블하는 경우, 링크 파트너들의 송신기들도 역시 동기화 임계 파라미터들에 의해 지정되는 시간 구간, 예를 들어, 동기화 임계 파라미터(163)보다 작은 t3과 t4 사이의 시간 내에 인에이블될 수 있다. 유사하게, 링크 파트너 1이 트레이닝 프로토콜 데이터의 전송을 시작할 때와 링크 파트너 2가 트레이닝 프로토콜 데이터의 전송을 시작할 때 사이의 시간(t3과 t4 사이의 시간으로서 도 3에 도시된)도 역시 동기화 임계 파라미터보다 작을 수 있다. 따라서, 스위치 디바이스는, 링크 파트너들이 서로에게 미리 정해진 시간 기간 내에 트레이닝 프로토콜 통신들을 전송하는 것을 보장할 수 있도록 동기화 임계 파라미터(163)를 구성할 수 있다. 예들로서, 동기화 임계 파라미터는 링크 파트너들 1 및 2 사이의 트레이닝 프레임들의 교환이 미리 결정된 시간 프레임 내에 시작하는 것을 보장하기 위하여 5ms 또는 10ms로 설정될 수 있다.
일 예로서, 링크 파트너는 수백 나노초(ns) 내에 신호 유실 이벤트를 검출하도록 동작가능하며, 이는, 예를 들어, 5ms 또는 10ms의 동기화 임계 파라미터보다 훨씬 짧을 수 있다. 도 3에서, 송신기 1을 디세이블하는 t1과 송신기 2를 디세이블하는 t2 사이의 시간이 1ms보다 작을 수 있다. 이와 같이, 송신기 1을 인에이블하는 t3과 송신기 2를 인에이블하는 t3 사이의 시간 역시 1ms보다 작을 수 있다. 계속해서 예를 들면, 링크 파트너 1이 링크 파트너 2로 트레이닝 프레임들을 전송하기 시작하는 때(t3)로부터 링크 파트너 2가 링크 파트너 1로 트레이닝 프레임들을 전송하기 시작하는 때(t4)까지의 시간 또한 1ms보다 작을 수 있다. 따라서, 링크 파트너들 1 및 2의 각각의 복구 로직(140)은 2개의 링크 파트너들 사이의 트레이닝 프로토콜 통신 수행의 시작을 동기화할 수 있다. 링크 파트너들 1과 2 간의 동기화된 시작은, 각 링크 파트너에 대한 송신기들의 독립적인 디세이블링이 통신 링크의 적절한 재구성을 보장하기에 충분히 길었다는 것, 예를 들어, 통신 라인 상의 임의의 잔존 데이터를 치우기에 충분히 길었다는 것을 보장할 수 있다.
이상에서 설명된 바와 같이, 링크 파트너들 1 및 2의 각각의 복구 로직(140)은, 링크 파트너들 간에 속도 교섭을 수행하지 않으면서, 링크 재시작 프로세스 및 트레이닝 프로토콜 교환을 동기화할 수 있다. 링크 파트너들 1 및 2의 복구 로직(140)은 또한 재시작 프로세스 동안 원격 링크 파트너로 제어 정보를 전송하는 것을 포기(forego)할 수 있다. 즉, 복구 로직(140)은 LOS 이벤트 식별시, 원격 링크 파트너에 알리지 않고, 예를 들어, 원격 링크 파트너와의 재시작 프로세스를 시작하기 위한 통신 프로토콜의 생성기들 또는 검출기들을 사용하지 않고, 재시작 프로세스를 수행할 수 있다.
도 4는 링크 파트너가 하드웨어, 소프트웨어 또는 이들 모두로서 구현할 수 있는 로직(400)의 일 예를 도시한다. 예를 들어, 복구 로직(140)은 로직(400)을 하드웨어, 소프트웨어, 또는, 이들 둘 다로서 구현할 수 있다. 일 구현예에 있어, 복구 로직(140)은, 펌웨어 명령들 및 마이크로프로세서를 포함할 수 있는 SerDes 디바이스 내의 마이크로컨트롤러로서 구현된다.
복구 로직(140)은 리셋 지시(reset indication)의 획득시 링크 파트너 내에서 링크 재시작 프로세스를 시작할 수 있다(402). 복구 로직(140)은, 예를 들어, 원격 링크 파트너와의 통신 링크 상의 신호 유실 이벤트를 식별함으로써, 내부적으로 리셋 지시를 획득할 수 있다. 대안적으로, 복구 로직(140)은, 링크 파트너를 포함하는 디바이스의 관리 로직과 같은, 링크 파트너의 외부에 있는 로직으로부터 재시작 지시를 수신할 수 있다. 복구 로직(140)은, 관리 로직이 통신을 통해 수신된 데이터가 품질 기준에 미치지 못한다는 것을 식별할 때와 같이, 링크 파트너가 통신 링크를 리셋하도록 명령하는 관리 로직으로부터 리셋 신호를 수신할 수 있다. 다른 예로서, 관리 로직은, 링크 파트너가 재시작을 완료한 후에, 예를 들어, SerDes의 사용자 요청 재시작 후에, 통신 링크를 재구성하기 위한 링크 재시작 프로세스를 링크 파트너가 수행하도록 명령할 수 있다.
복구 로직(140)은 그 뒤, 원격 링크 파트너와의 통신 링크가 재수립되고 및 구성될 때까지, 링크 파트너 내의 다운스트림(downstream) 프로세싱을 디세이블할 수 있다. 예를 들어, 링크 파트너는, 링크 파트너에 의해, 예를 들어, 도 2에 도시된 수신 데이터경로들(234 또는 254)에 의해 수신되는 데이터를 프로세싱하는 송신 데이터경로를 디세이블할 수 있다(404). 일 구현예에 있어, 복구 로직(140)은 그 뒤 링크 파트너가 링크 재시작 프로세스에 진입했다는 것을 표시하기 위한 재시작 신호, 예를 들어, pmd_restarted 신호를 설정할 수 있다. 재시작 신호는, 링크 파트너의 재시작 조건들을 결정할 때, 관리 로직에 의해 전송되고 사용될 수 있다. 링크 파트너 외부의 관리 로직은 이하의 도 6 및 도 7에서 더 구체적으로 설명된다.
복구 로직(140)은 그 후 원격 링크 파트너와 통신하는 링크 파트너의 송신기를 디세이블할 수 있다(408). 복구 로직(140)은 또한 송신기를 초기 트레이닝 프로토콜 송신 상태로 리셋할 수 있다(410). 송신기 리셋은 재-인에이블링 후 송신기에 의해 전송되는 초기 데이터를 제어하기 위하여, 송신기의 초기 송신 값들, 진폭, 펄스 형상의 임의의 조합을 리셋하는 것을 포함할 수 있다. 일 구현예에 있어, 복구 로직(140)은 송신기를, 송신기와 연관된 상태 머신의 초기 상태로 리셋할 수 있다.
복구 로직(140)은 그 뒤 복구 지속기간의 만료를 기다릴 수 있으며(412), 그 결과 복구 로직(140)은 송신기를 인에이블할 수 있다(414). 인에이블시, 송신기는 초기 송신 상태에 의해 지정된 바와 같은 신호를 송신할 수 있다. 예를 들어, 송신기는, 트레이닝 프레임들, 예를 들어, 클로우즈 72 프레임들을 전송함으로써, 통신 링크가 데이터를 원격 링크 파트너로 송신하도록 통신 링크를 드라이브(drive)할 수 있다. 복구 지속기간의 만료시, 복구 로직(140)은 또한 링크 파트너의 수신기를 초기 트레이닝 프로토콜 수신 상태로 구성할 수 있다(416). 예를 들어, 복구 로직(140)은, 수신기를 송신기로부터의 특정 데이터, 예를 들어, 미리 결정된 진폭, 펄스 형상, 또는 미리 결정된 초기 값들을 포함하는 데이터를 기다리게 구성함으로써, 수신기를 리셋할 수 있다. 일 구현예에 있어, 복구 로직(140)은 수신기를, 수신기와 연관된 상태 머신의 초기 상태로 리셋할 수 있다.
일 구현예에 있어, 복구 로직(140)은, 신호 유실 이벤트가 해결될 때까지, 예를 들어, 통신 링크가 활성화될 때까지, 링크 튜닝(link tuning) 절차의 수행을 지연시킬 수 있다. 예를 들어, 복구 로직(140)은 신호 유실 조건이 더 이상 존재하지 않을 때를 식별할 수 있으며(418), 이는 LOS 종료(exit) 조건으로 지칭될 수 있다. 복구 로직(140)은 이를 통해 원격 링크 파트너로부터 트래픽이 수신되는 통신 링크를 모니터링함으로써 LOS 종료 조건을 식별할 수 있다. 일 예로서, 복구 로직(140)은 원격 링크 파트너가 트래픽을 링크 파트너로 전송할 때 LOS 종료 조건을 식별할 수 있다. 복구 로직(140)이 링크 파트너의 수신기 내의 움직임(activity)을 식별하자마자(예를 들어, 링크 파트너의 수신기가 원격 링크 파트너로부터 데이터를 수신하고 있는), 복구 로직(140)은 신호 유실 조건이 더 이상 존재하지 않는다는 것을 식별할 수 있다.
LOS 종료 조건을 식별하면, 복구 로직(140)은 원격 링크 파트너와의 링크 튜닝을 수행할 수 있다(420). 링크 튜닝 동안, 링크 파트너의 송신기는 통신 링크를 구성하기 위하여 트레이닝 프로토콜 프레임들, 예를 들어, 클로우즈 72 프레임들을 원격 링크 파트너로 전송할 수 있다. 링크 파트너는 또한 원격 링크 파트너로부터 전송되는 트레이닝 프로토콜 프레임들 역시 수신할 수 있다. 링크 파트너는, 트레이닝 프로토콜 프레임들에 따라 수신기, 송신기, 또는 이들 둘 다를 튜닝할 수 있다. 통신 링크가 구성되고 링크 튜닝이 완료된 후, 복구 로직(140)은 링크 파트너 내의 다운스트림 프로세싱, 예를 들어, 수신 데이터경로들(234 또는 254)을 인에이블할 수 있다. 일 구현예에 있어, 복구 로직(140)은 링크 튜닝이 완료되었다는 지시를 외부 로직, 예를 들어, 관리 로직으로 전송할 수 있다. 복구 로직(400)은 이상에서 논의된 예시적인 로직(400)의 구성요소들 중 임의의 것을 수행함으로써 링크 재시작 프로세스를 수행할 수 있다.
도 5는 링크 파트너들에 의해 수행되는 링크 재시작 프로세스의 다른 타이밍 예(500)를 도시한다. 도 5에 도시된 타이밍 예는 링크 파트너 1로서 라벨링된 제 1 링크 파트너 및 링크 파트너 2로서 라벨링된 제 2 링크 파트너의 타이밍을 도시한다. 링크 파트너 1과 링크 파트너 2는, 예를 들어, 전이중 링크를 통해 통신가능하게 링크될 수 있다. 각각의 링크 파트너는 또한, 예를 들어, 도 4에서 설명된 로직(400)의 임의의 부분을 구현함으로써, 복구 로직(140)을 구현할 수 있다.
시간(t1)에서, 링크 파트너 2를 구현하는 디바이스가 리셋할 수 있다. 예를 들어, 링크 파트너 2를 구현하는 스위치 디바이스, 패브릭 카드(fabric card), 또는 서버 블레이드가 리셋할 수 있으며, 따라서 링크 파트너 2의 송신기 2를 디세이블한다. 링크 파트너 2를 구현하는 디바이스의 재시작 프로세스 동안, 링크 파트너 2는 통신 링크를 통한 링크 파트너 1로의 트래픽 송신을 중단할 수 있다. 이와 같이, 시간(t2)에서 링크 파트너 1의 복구 로직(140)이 신호 유실 이벤트를 인식하고 링크 파트너 1의 송신기 1을 디세이블할 수 있다. 링크 파트너 1의 복구 로직(140)은, 도 5에서 70ms인 복구 지속기간 동안 송신기 1을 디세이블할 수 있다.
70ms의 복구 지속기간이 만료하는 시간(t3)에서, 링크 파트너 1의 복구 로직(140)은 송신기 1을 인에이블하고, 링크 파트너 1의 수신기를 초기 트레이닝 프로토콜 수신 상태로 리셋할 수 있다. 시간(t3)에서, 링크 파트너 2를 구현하는 디바이스는 계속해서 재시작 프로세스 중에 있을 수 있으며, 이를 통해 링크 파트너 2가 데이터를 링크 파트너 1로 송신하는 통신 라인은 링크 파트너 2의 송신기가 계속해서 전원이 차단(powered down)되어 있기 때문에 고 임피던스 상태를 유지할 수 있다. 시간(t3)에서, 송신기 1은 트래픽, 예를 들어, 트레이닝 프레임들을 링크 파트너 2로 전송할 수 있고, LOS 종료 조건, 예를 들어, 트래픽이 링크 파트너 1의 수신기에 의해 수신될 때를 식별하기 위하여 링크 파트너 1의 수신기를 모니터링할 수 있다.
시간(t4)에서, 링크 파트너 2를 구현하는 디바이스는 파워, 예를 들어, 전압을 링크 파트너 2를 구현하는 물리적인 디바이스로 드라이브할 수 있으며, 따라서 송신기 2를 인에이블한다. 링크 파트너 2를 구현하는 디바이스는 시간(t5)에서 그 자신의 재시작 프로세스를 완료할 수 있다. 재시작 프로세스의 일부로서 또는 이에 더하여, 디바이스는 링크 파트너 1과의 통신을 재수립하도록 링크 파트너 2에 명령할 수 있다. 예를 들어, 재시작시, 외부 관리 로직은 링크 파트너 1과의 통신 링크를 복구하도록 링크 파트너 2에 명령할 수 있다. 이에 응답하여, 링크 파트너 2의 복구 로직(140)은 70ms의 복구 지속기간 동안 시간(t5)에서 링크 파트너 2의 송신기 2를 디세이블할 수 있다. 시간(t6)에서, 링크 파트너 2의 복구 로직(140)은 송신기 2를 인에이블하고, 링크 파트너 2의 수신기의 수신 상태를 리셋할 수 있다. 링크 파트너 1이 트레이닝 프레임 트래픽을 링크 파트너 2로 송신함에 따라, 링크 파트너 2의 복구 로직(140)은, 링크 파트너 2의 수신기의 초기화시, 예를 들어, 도 5의 시간(t6)에서, LOS 종료 조건을 식별할 수 있다. 그 뒤, 링크 파트너 2는 시간(t6)에서 트레이닝 프레임들을 링크 파트너 1로 전송하는 것을 시작할 수 있다.
시간(t6)에서 활성 상태로 복귀한 후, 송신기 2는, 예를 들어, 트레이닝 프로토콜 통신을 전송함으로써, 통신 링크를 링크 파트너 1로 드라이브할 수 있다. 그 뒤, 시간(t7)에서, 링크 파트너 1의 복구 로직(140)이 링크 파트너 1의 수신기 내의 움직임을 식별하고 LOS 종료 조건을 결정할 수 있다. 그 후, 링크 파트너 1은 트레이닝 프레임들을 링크 파트너 2로 전송하는 것을 시작할 수 있다. 시간(t7)에서, 링크 파트너 1 및 2 둘 다 LOS 종료 조건을 식별하였으며, 링크 파트너 1 및 2의 각각의 복구 로직(140)은 링크 튜닝 액션의 수행을 동기화할 수 있다. 또한, 링크 파트너 1 및 2의 각각의 복구 로직(140)은, 링크 파트너들 간의 속도 교섭을 수행하지 않고, 링크 재시작 프로세스 및 트레이닝 프로토콜 통신을 동기화할 수 있다. 이러한 방식으로, 링크 파트너 1 및 2는 또한, 사전에 원격 링크 파트너와 제어 정보를 통신하지 않고, 그들 각각의 송신기 및 수신기를 초기 상태로 리셋할 수 있다. 따라서, 링크 파트너 1 및 2 모두가 LOS 이벤트를 식별하고, 재시작 프로세스를 시작하기 위한 추가적인 통신 프로토콜을 사용하지 않으면서 링크 재시작 프로세스를 수행할 수 있다.
도 6은 링크 기준에 미치지 못하는 통신 링크를 재시작하기 위한 시스템(600)의 일 예를 도시한다. 시스템(600)은 스위치 디바이스 또는 스위칭 시스템의 일 부분으로서 구현될 수 있다. 시스템(600)은 임의의 수의 스위칭 디바이스들에 걸쳐 통합된 임의의 수의 패브릭 카드들을 포함할 수 있다. 도 6에 도시된 예에 있어, 시스템(600)은 패브릭 카드 1(610) 및 패브릭 카드들(611~612)뿐만 아니라 패브릭 카드(615) 및 패브릭 카드들(616~617)을 포함한다. 일 구현예에 있어, 패브릭 카드들(610~612)은 스위칭 시스템 내의 제 1 랙(rack) 상의 제 1 스위치의 부분으로서 통합될 수 있으며, 패브릭 카드들(615~617)은 스위칭 시스템 내의 제 2 랙 상의 제 2 스위치의 부분으로서 통합될 수 있다.
패브릭 카드는 스위칭 패브릭 및 링크 파트너들, 예를 들어, SerDes 디바이스들 중 하나 이상을 포함할 수 있다. 도 6의 패브릭 카드 1(610)은, SerDes 디바이스들(621~625)과 같은 임의의 수의 링크 파트너들을 상호연결할 수 있는 스위칭 패브릭(612)을 포함한다. 도 6의 SerDes 디바이스들은 이상에서 설명된 SerDes 디바이스들 중 임의의 것과 공통적인 특성들 및 기능들을 공유할 수 있다. 도 6에 도시된 바와 같이, SerDes 디바이스 1(625)은 송신기 1(627), 수신기 1(628), 및 복구 로직(140)을 포함한다. 패브릭 카드 2 또한 SerDes 디바이스들(641~645)과 같은, 임의의 수의 링크 파트너들을 상호연결할 수 있는 스위칭 패브릭(614)을 포함할 수 있다. 도 6에 도시된 바와 같이, 패브릭 카드 2(615)는, 수신기 2(647), 송신기 2(648), 및 복구 로직(140)을 포함하는, SerDes 디바이스 2를 포함한다.
SerDes 디바이스 1(625)은 하나 이상의 통신 링크들을 통해 SerDes 디바이스 2(645)에 통신가능하게 연결될 수 있다. 예시적인 시스템(600)에 있어, SerDes 디바이스 1(625)은, 통신 라인 1(651) 및 통신 라인 2(652)를 포함하는 전이중 링크를 통해 SerDes 디바이스 2에 접속된다. 일 예에 있어, 통신 라인들 1 및 2는 백플레인, 예를 들어, 백플레인(215)의 부분으로서 구현될 수 있다. SerDes 디바이스 1(625)은 송신기 1(627)을 통해 통신 라인 1(651)을 거쳐 SerDes 디바이스 2(645)의 수신기 2(647)로 트래픽을 전송할 수 있다. SerDes 디바이스 2(645)는 송신기 2(647)를 통해 통신 라인 2(652)를 거쳐 SerDes 디바이스 1(625)의 수신기 1(627)로 트래픽을 전송할 수 있다. SerDes 디바이스 1 및 2의 복구 로직(140)은 신호 유실 이벤트를 식별하고, 이상에서 설명된 방식들 중 임의의 것에 따라, 속도 교섭을 수행하지 않으면서 다른 SerDes 디바이스와의 통신 링크를 복원하기 위한 신호 재시작 프로세스를 자동으로 수행할 수 있다.
시스템(600)은, 예를 들어, 하나 이상의 통신 링크들에 대한 임의의 수의 기준을 모니터링함으로써 링크 유실 이벤트를 결정할 수 있는 관리 로직(660)을 포함할 수 있다. 일 구현예에 있어, 관리 로직(660)은 패브릭 카드 또는 스위칭 디바이스 내의 링크 파트너들에 의해 수신되는 데이터를 모니터링할 수 있다. 예를 들어, 관리 로직(660)은 물리적 코딩 서브레이어(Physical Coding Sublayer; PCS) 트랜잭션(transaction)들을 모니터링하고, 통신 링크로부터 수신된 데이터가 하나 이상의 링크 기준에 미치지 못하는 때를 식별할 수 있다. 링크 기준은, 일 예로서, 적절한 통신 프로토콜, 오류 임계, 또는 다른 것들과 같은 임의의 수의 품질 메트릭스들을 포함할 수 있다. 예를 들어, 링크 기준은, IEEE 802.3 클로우즈들 36, 49, 82, 및 다른 것들에 명시된 PSC 블록들과 같은, PCS 블록으로부터의 링크 표시자(link indicator)가 미리 결정된 기준 임계를 초과하는 때를 포함할 수 있다. 또한, 링크 기준은 PCS 프로토콜 위반들, 예를 들어, 코딩 블록 오류들이 미리 정의된 오류 임계를 초과하는 때를 포함할 수 있다. 또는, 다른 예로서, 링크 기준은, 통신 링크로부터 수신된 데이터의 프로토콜 엘러먼트(element)들이 미리 결정된 임계를 초과하는 때를, 예를 들어, 이더넷 패킷 트래픽의 패킷 CRC 검사들이 오류 임계를 초과하는 때를 포함할 수 있다.
도 6에 있어, 패브릭 카드 1(610)은, 패브릭 카드 내에 포함된 임의의 수의 SerDes 디바이스들을 모니터링할 수 있는 관리 로직(660), SerDes 디바이스들(621~625), 및 SerDes 디바이스들이 트래픽을 수신하는 임의의 수의 통신 링크들을 포함한다. 패브릭 카드 2(615)는, 패브릭 카드 2(615)와 연관된 통신 링크들 및 SerDes 디바이스들의 유사한 모니터링을 수행할 수 있는 관리 로직(661)을 포함한다. 관리 로직(660 및 661)은 각각의 SerDes 디바이스에 의해 수신되는 데이터가 하나 이상의 링크 기준에 미치지 못하는 때를 식별할 수 있다.
일 구현예에 있어, 관리 로직(660)은 하나 이상의 프로세서들(670) 및 링크 재시작 명령들(672) 및 링크 기준(673)을 저장하고 있는 메모리(671)를 포함할 수 있다. 링크 기준은 관리 로직의 구현예들에 따라 변화할 수 있다. 예를 들어, 패브릭 카드 1(610) 내에 구현된 관리 로직(660)의 링크 기준(673)은 패브릭 카드 2(615)의 관리 로직(661) 내에 구현될 링크 기준과 상이할 수 있다.
패브릭 카드 1(610)의 관리 로직(660)은 SerDes 디바이스 1(625)(트래픽을 수신하는)과 SerDes 디바이스 2(645)(트래픽을 송신하는)를 링크하는 통신 라인 2(652)를 모니터링할 수 있다. 일 예로서, 관리 로직(660)은 링크 유실 이벤트를 식별할 수 있으며, 관리 로직은 통신 링크 또는 통신 링크를 통해 수신되는 트래픽이 링크 기준에 미치지 못하는 때를 식별한다. SerDes 디바이스 2(645)로부터 통신 라인 2(652)를 통해 SerDes 디바이스 1에 의해 수신된 트래픽이 링크 프로토콜 기준, 링크 품질 기준, 또는 다른 기준에 미치지 못할 때, 관리 로직(660)은 링크 유실 이벤트를 식별할 수 있다. 임의의 수의 상황들이 다운스트림의 무결성에 영향을 주고 링크 유실 이벤트를 초래할 수 있다. 예들은, 송신기가 잘못 구성되었을 때, 스위치 온도들이 요동할 때, 파워 서지가 스위치 랙 상에 발생할 때, 또는 임의의 수의 다른 상황들을 포함한다. 다른 예로서, 예를 들어, 원격 링크 파트너가 링크 재시작 프로세스를 수행할 때와 같은 LOS 이벤트가 즉각적으로 또는 종국적으로 통신 링크 상의 링크 유실 이벤트를 가져올 수 있다. 일 구현예에 있어, 관리 로직(660)은 수신된 트래픽이 링크 기준에 미치지 못하는 때를 식별하기 위하여, 원격 링크 파트너로부터 수신되는 트래픽에 대한 분석을 수행할 수 있다. 다른 구현예에 있어, 링크 파트너는, 링크 기준에 따라 수신 트래픽 분석을 수행하고, 링크 유실 이벤트가 식별될 때 관리 로직(660)으로 지시를 전송하는 로직을 포함할 수 있다.
일 구현예에 있어, 관리 로직(660)은 재시작 지시를 로컬 링크 파트너로 전송함으로써 링크 유실 이벤트에 응답할 수 있다. 다른 구현예에 있어, 관리 로직(660)은 링크 유실 이벤트가 신호 유실에 의해 초래되었는지 여부에 기초하여 링크 유실 이벤트에 응답할 수 있다. 이를 위하여, 관리 로직(660)은, 관리 로직(660)에 의해 모니터링되는 링크 파트너들 각각에 대한 재시작 파라미터를, 예를 들어, 메모리 내의 변수로서 유지할 수 있다. 관리 로직(660)은, 원격 링크 파트너로부터 링크 파트너에 의해 수신되는 트래픽이 링크 기준을 충족할 때, 재시작 파라미터를 지울(clear) 수 있다. 로컬 링크 파트너가 링크 재시작 프로세스를 시작하면 언제라도, 예를 들어, 로컬 링크 파트너의 복구 로직(140)이 신호 유실 이벤트를 식별할 때, 관리 로직(660)은 또한 로컬 링크 파트너의 복구 로직(140)으로부터 재시작 신호, 예를 들어, pmd_restarted를 수신할 수 있다. 복구 로직(140)으로부터의 재시작 신호의 수신에 응답하여, 관리 로직(660)은, 예를 들어, 1의 값으로, 로컬 링크 파트너의 재시작 파라미터를 설정할 수 있다. 링크 유실 이벤트를 식별하면, 관리 로직(660)은 어떻게 반응할지를 결정하기 위해 로컬 링크 파트너의 재시작 파라미터에 액세스할 수 있다.
예시를 위해, 패브릭 카드 1(610)의 관리 로직(660)은, 통신 라인 2(652)를 통해 수신기 1(628)에 의해 수신되는 트래픽이 링크 기준에 미치지 못할 때, 링크 유실 이벤트를 식별할 수 있다. 이러한 예시에 있어, 수신기 1(628)이 SerDes 디바이스 2의 송신기 2(648)로부터 데이터를 계속해서 수신하는 동안, 예를 들어, 신호 유실에 의해 링크 유실 이벤트가 초래되지 않는 동안, 관리 로직(660)은 링크 유실 이벤트를 식별할 수 있다. 패브릭 카드 1(610)의 관리 로직(660)은 그 후 SerDes 디바이스 1의 재시작 파라미터를 액세스하고, 관리 로직(660)이 링크 유실 이벤트를 식별하기 이전에 SerDes 디바이스 1이 재시작 프로세스를 시작하지 않았었다는 것을 결정할 수 있다. 그 뒤, 관리 로직(660)은, 예를 들어, 이상의 도 4에서 설명된 바와 같은 링크 재시작 프로세스를 수행하도록 SerDes 디바이스 1(625)에 명령할 수 있다.
재시작 동안, SerDes 디바이스 1(625)의 송신기 1(627)이 복구 지속기간 동안 디세이블될 수 있으며, 이는 통신 라인 1(651) 상의 신호 유실을 초래한다. SerDes 디바이스 2(645)의 복구 로직(140)은 LOS 이벤트를 식별하고 링크 재시작 프로세스를 개시할 수 있다. 복구 로직(140)은 또한 재시작 신호를 패브릭 카드 2(615)의 관리 소프트웨어(661)로 전송할 수 있으며, 그럼으로써 관리 소프트웨어(661)가 SerDes 디바이스 2(645)의 재시작 파라미터를 갱신할 수 있다. 또한, 통신 라인 1(651) 상의 신호 유실이 그 이후에 링크 유실 이벤트를 초래할 수 있다. 예를 들어, 관리 로직(661)의 링크 기준이 오류 임계의 초과를 포함할 수 있으며, 관리 로직(661)은 오류 임계가 초과될 때까지 통신 링크 1(651) 상의 신호 유실로부터 발생하는 링크 유실 이벤트를 식별하지 못할 수 있다. 통신 라인 1(651) 상의 링크 유실 이벤트를 식별하면, 패브릭 카드 2(615)의 관리 로직(661)은 SerDes 디바이스 2(645)의 재시작 파라미터를 액세스하고, 링크 유실 이벤트 이전에 SerDes 디바이스 2(645)가 링크 재시작 프로세스를 개시했었다는 것을 결정할 수 있다. 다시 말해, 관리 로직(661)은, SerDes 디바이스 2(645)가 SerDes 디바이스 1(625)의 재시작에 응답하여 재시작했다는 것을 결정할 수 있다. 따라서, 관리 로직(661)은, SerDes 2(645)를 재시작하고 대신 SerDes 디바이스 1(625)과 통신 링크가 재수립될 때까지 기다리도록 명령하는 것을 포기할 수 있다.
링크 파트너의 복구 로직(140) 및 패브릭 카드 또는 스위치의 관리 로직(660)은 링크 파트너와 원격 링크 파트너 간의 트레이닝 프로토콜 통신의 동기화된 시작을 허용할 수 있다. 복구 로직(140)은, 신호 유실과 같은, 물리 매체 의존(physical medium dependent; PMD) 레벨 이벤트들을 모니터링할 수 있다. 관리 로직(660)은, 링크 유실과 같은, PCS 레벨 이벤트들을 모니터링할 수 있다. 따라서, 복구 로직(140) 및 관리 로직(660)은, 링크 파트너와 원격 링크 파트너 간의 속도 교섭을 수행하지 않는 트레이닝 프로토콜 통신들의 동기화된 시작을 포함하는, 링크 재시작 프로세스를 통해 신호 유실 이벤트 및/또는 링크 유실 이벤트로부터의 자동 복구를 지원할 수 있다.
도 7은 스위치 디바이스가 하드웨어, 소프트웨어 또는 이들 모두로서 구현할 수 있는 로직(700)의 일 예를 도시한다. 예를 들어, 로직(700)은, 관리 로직(660, 661)과 같은, 링크 파트너 외부의 로직으로서 구현될 수 있다. 관리 로직(660)을 구현하는 디바이스(예를 들어, 패브릭 카드 또는 스위치)가 리셋할 때, 관리 로직(660)은 디바이스 상의 임의의 수의 링크 파트너들, 예를 들어, 로컬 링크 파트너들을 구성할 수 있다. 예를 들어, 관리 로직(660)은, SerDes의 특정 특징부들을 인에이블함으로써 또는 SerDes의 통신 속도를 구성함으로써, 패브릭 카드 상의 임의의 수의 SerDes 디바이스를 구성할 수 있다(702).
로컬 링크 파트너의 구성이 완료하면, 관리 로직(660)은, 예를 들어, 원격 링크 파트너와의 통신 링크의 수립 또는 재-수립하기 위한, 재시작 지시를 로컬 링크 파트너로 전송할 수 있다(704). 관리 로직(660)은 또한 재시작 타이머를 시작할 수 있다(706). 그 뒤, 관리 로직(660)은, 원격 링크 파트너와의 통신 링크의 튜닝이 완료하는 때를 식별할 수 있으며(708), 이는 로컬 링크 파트너와 원격 링크 파트너가 트레이닝 프로토콜 핸드쉐이크, 예를 들어, 클로우즈 72 교환을 완료했다는 것을 나타낼 수 있다. 일 구현예에 있어, 관리 로직(660)은 로컬 링크 파트너로부터 링크 튜닝이 완료되었다는 것을 나타내는 신호를 수신할 수 있다. 로컬 링크 파트너는 그 후 통신 링크를 통해 원격 링크 파트너로부터 트래픽을 수신할 수 있으며, 관리 로직(660)은 수신된 트래픽이 링크 기준을 충족시키는 때를 식별할 수 있다(710). 일 구현예에 있어, 원격 링크 파트너는 아이들(idle) 트래픽, 아이들 문자(idle character)들을 로컬 링크 파트너로 전송할 수 있으며, 이는 관리 로직(660)이 수신된 아이들 트래픽이 링크 기준을 충족시키는지 여부를 결정하게 할 수 있다. 이러한 예에 있어, 원격 링크 파트너는, 관리 로직(660)이 원격 링크 파트너로부터 수신된 트래픽이 링크 기준을 충족시킨다고 결정할 때까지, 네트워크 트래픽, 예를 들어, 말단 디바이스(end device)로부터 전송된 네트워크 데이터를 전송하는 것을 포기할 수 있다.
재시작 타이머는, 미리 결정된 시간 기간 동안 링크 튜닝의 완료에 실패하는 경우 또는 수신된 트래픽이 링크 기준을 충족시키기에 실패하는 경우, 관리 로직(660)이 로컬 링크 파트너를 재시작해야만 하는 때를 지정할 수 있다. 관리 로직(660)이 링크 튜닝이 완료되었다는 것 또는 수신된 트래픽이 링크 기준을 충족시킨다는 것을 식별하기 전에 재시작 타이머가 만료하는 경우(712), 관리 로직(660)은 재시작 지시를 로컬 링크 파트너로 전송할 수 있다(704). 일 구현예에 있어, 재시작 타이머의 만료 횟수가 미리 결정된 임계를 초과하는 경우, 관리 로직(660)은, 구성 문제가 존재한다는 것을, 예를 들어, 로컬 링크 파트너 및 원격 링크 파트너가 상이한 속도로 구성되었다는 것 및 링크 튜닝을 완료할 수 없다는 것을 결정할 수 있다. 관리 로직(660)은, 로컬 링크 파트너의 재구성과 같은, 수리(repair) 액션을 수행할 수 있다.
원격 링크 파트너로부터 수신되는 트래픽이 링크 기준을 충족시킬 때, 관리 로직(660)은 링크 지시를 원격 링크 파트너로 전송할 수 있다(714). 예를 들어, 관리 로직(660)은, 수신된 트래픽이 링크 기준을 충족시켰다는 것을 나타내는 제어 워드(word)를 원격 링크 파트너로 전송하도록 로컬 링크 파트너에 명령할 수 있다. 일 구현예에 있어, 링크 지시를 수신하면, 원격 링크 파트너는 아이들 트래픽만을 전송하는 것을 중지하고, 로컬 링크 파트너로 네트워크 데이터의 전송을 시작할 수 있다. 수신된 트래픽이 링크 기준을 충족하면, 관리 로직(660)은 또한 로컬 링크 파트너의 리셋 파라미터를 지울 수 있다(716). 관리 로직(660)은 원격 링크 파트너로부터 수신되는 트래픽이 링크 기준을 충족시키는지 여부를 계속해서 모니터링할 수 있다(718). 다시 말해, 관리 로직(660)이 링크 유실 이벤트가 발생했는지 여부를 결정할 수 있다.
링크 유실 이벤트를 식별하면, 관리 로직(660)은 로컬 링크 파트너의 재시작 파라미터가 설정되어 있는지 여부에 기초하여 응답할 수 있다. 예를 들어 LOS 신호가 식별될 때와 같이, 로컬 링크 파트너가 재시작할 때면 언제든지, 로컬 링크 파트너는 재시작 신호를 관리 로직(660)으로 전송할 수 있다. 이에 응답하여 관리 로직(660)은 로컬 링크 디바이스의 재시작 파라미터를 갱신할 수 있다. 수신된 트래픽이 링크 기준에 미치지 못하는 것으로 결정되면, 관리 로직(660)은 로컬 링크 파트너의 재시작 파라미터를 액세스할 수 있다(720). 재시작 파라미터가 설정되어 있는 경우, 관리 로직(660)은 재시작 타이머를 시작하고, 원격 링크 파트너와의 링크 튜닝이 완료되는 때 및 수신된 트래픽이 링크 기준을 충족시키는 때를 식별할 수 있다. 재시작 파라미터가 설정되어 있지 않은 경우, 관리 로직은 링크 유실 이벤트를 처리하기 위하여 재시작 지시를 로컬 링크 파트너로 전송할 수 있다.
이상에서 설명된 방법들, 디바이스들, 및 로직은, 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어 둘 다의 다양한 조합들로, 다양한 방식들로 구현될 수 있다. 예를 들어, 시스템의 일부 또는 부분들은 제어기, 마이크로프로세서, 또는 응용 특정 집적 회로(ASIC) 내의 회로부(circuitry)를 포함할 수 있거나, 또는 단일 집적 회로 상에 결합된 또는 복수의 집적 회로들 사이에 분산된, 복수이산 로직 또는 컴포넌트들, 또는 아날로그 또는 디지털 회로부의 다른 유형들의 조합을 이용해 구현될 수 있다. 이상에서 설명된 로직의 전부 또는 일부분은, 프로세서, 제어기, 또는 다른 프로세싱 디바이스에 의한 실행을 위한 명령들로서 구현될 수 있으며, 플래시 메모리, RAM(random access memory), ROM(read only memory), EPROM(erasable programmable read only memory)과 같은 유형의 또는 비-일시적인 기계-판독가능 또는 컴퓨터-판독가능 매체 또는 CDROM(compact disc read only memory)와 같은 다른 기계-판독가능 매체, 또는 자기 또는 광 디스크 내에 저장될 수 있다. 따라서, 컴퓨터 프로그램 제품과 같은 제품은 저장 매체 및 저장 매체 상에 저장된 컴퓨터 판독가능 명령들을 포함할 수 있으며, 이는 엔드포인트(endpoint), 컴퓨터 시스템, 또는 다른 디바이스에 의해 실행될 때 디바이스가 이상의 설명 중 임의의 것에 따른 동작들을 수행하게 한다.
이상에서 설명된 링크 복구 프로세싱은, 선택적으로 복수의 분산 프로세싱 시스템들을 포함하는, 복수의 프로세서들 및 메모리들 사이에서와 같이, 복수의 시스템 컴포넌트들 사이에 분산될 수 있다. 파라미터들, 데이터베이스들, 및 다른 데이터 구조들이 독립적으로 저장 및 관리될 수 있고, 단일 메모리 또는 데이터베이스 내에 통합될 수도 있고, 많은 상이한 방식들로 논리적으로 그리고 물리적으로 조직될 수도 있으며, 링크 리스트들, 해시 테이블들, 또는 묵시적인 저장 매커니즘들과 같은 데이터 구조들을 포함하는, 다양한 방식들로 구현될 수 있다. 프로그램들은 단일 프로그램의 부분들(예를 들어, 서브루틴들)이거나, 독립적인 프로그램이거나, 몇몇 메모리들 및 프로세서들에 걸쳐 분산되거나, 또는 공유 라이브러리(예를 들어, 동적 링크 라이브러리(DLL))와 같은, 라이브러리 내에서와 같이, 많은 상이한 방식들로 구현될 수 있다. 예를 들어, DLL은 이상에서 설명된 시스템 프로세싱 중 임의의 것을 수행하는 코드를 저장할 수 있다. 본 발명의 다양한 실시예들이 설명되었으나, 더 많은 실시예들 및 구현예들이 본 발명의 범위 내에서 가능하다는 것이 당업자들에게 자명할 것이다. 따라서, 본 발명은 첨부된 청구항들 및 그들의 등가물들을 고려하는 것 외에는 제한되지 않는다.

Claims (15)

  1. 스위치 디바이스 내에서:
    신호 유실 이벤트(loss of signal event)를 식별하는 단계, 및 이에 응답하여:
    링크 파트너(link partner)와의 통신을 복원하기 위해 링크 재시작(restart) 프로세스를 자동을 수행하는 단계로서, 상기 링크 파트너와의 속도 교섭(speed negotiation)을 수행하지 않고 상기 링크 재시작 프로세스를 실행하는 단계를 포함하는, 방법.
  2. 청구항 1에 있어서,
    식별하는 단계는, 수신기가 신호 유실 타이밍 임계(signal loss timing threshold)를 초과하여 상기 링크 파트너로부터 데이터를 수신하지 못한 것을 식별하는 단계를 포함하는, 방법.
  3. 청구항 1 또는 청구항 2에 있어서,
    식별하는 단계는, 상기 링크 파트너로부터 수신된 데이터가 품질 기준(quality criteria)에 미치지 못하는 때를 식별하는 단계를 포함하는, 방법.
  4. 청구항 1 내지 청구항 3 중 어느 한 항에 있어서,
    자동으로 수행하는 단계는, 미리 결정된 복구 지속기간(recovery duration) 동안 송신기를 디세이블(disable)하는 단계를 포함하는, 방법.
  5. 청구항 4에 있어서,
    자동으로 수행하는 단계는, 상기 미리 결정된 복구 지속기간 만료 후 상기 송신기를 인에이블(enable)하는 단계를 더 포함하는, 방법.
  6. 청구항 1 내지 청구항 5 중 어느 한 항에 있어서,
    상기 통신 링크의 복원 후 상기 원격 링크 파트너와 트레이닝(training) 프로토콜 통신을 수행하는 단계를 더 포함하는, 방법.
  7. 청구항 1 내지 청구항 6 중 어느 한 항에 있어서,
    자동으로 수행하는 단계는, 송신기를 초기 송신 상태(initial transmit state)로 재시작하는 단계를 포함하는, 방법.
  8. 청구항 1 내지 청구항 7 중 어느 한 항에 있어서,
    자동으로 수행하는 단계는, 수신기를 초기 수신 상태로 재시작하는 단계를 포함하는, 방법.
  9. 송신기 및 수신기를 포함하는 통신 인터페이스; 및
    상기 통신 인터페이스와 통신하는 복구 로직(recovery logic)으로서, 상기 복구 로직은:
    상기 수신기에서 신호 유실 이벤트를 식별하고, 및 이에 응답하여:
    상기 송신기를 아이들 상태(idle state)로 강제(force)하고;
    복구 지속기간이 만료하기를 기다리며; 및 상기 복구 지속기간이 만료된 후:
    상기 송신기를 활성 상태로 인에이블하고; 및
    원격 링크 파트너와 속도 교섭을 수행하지 않고, 상기 송신기 및 상기 수신기를 통해 상기 원격 링크 파트너와의 통신을 재수립(reestablish)하도록 동작가능한, 상기 복구 로직을 포함하는, 디바이스.
  10. 청구항 9에 있어서,
    상기 복구 로직은, 속도 교섭 프레임을 전송하지 않고 통신함으로써, 통신하도록 동작가능한, 디바이스.
  11. 청구항 9 또는 청구항 10에 있어서,
    상기 복구 로직은, 상기 신호 유실 이벤트의 식별 후 수신된 데이터의 프로세싱을 중단하도록 더 동작가능한, 디바이스.
  12. 청구항 11에 있어서,
    상기 복구 로직은, 통신을 재수립한 후 상기 수신된 데이터의 프로세싱을 재개(resume)하도록 더 동작가능한, 디바이스.
  13. 청구항 9 내지 청구항 12 중 어느 한 항에 있어서,
    상기 복구 로직은, 상기 복구 지속기간이 만료한 후 상기 수신기를 초기 수신 상태로 재시작하도록 더 동작가능한, 디바이스.
  14. 청구항 9 내지 청구항 13 중 어느 한 항에 있어서,
    상기 복구 로직은, 상기 송신기를 아이들 상태로 강제하기 전에 상기 송신기를 초기 송신기 상태로 구성(configure)하도록 더 동작가능한, 디바이스.
  15. 직렬화기/병렬화기(Serializer/Deserializer; SerDes) 디바이스;
    링크 기준(link criteria)을 포함하는 메모리; 및
    상기 SerDes 디바이스와 통신하는 관리 로직으로서, 상기 관리 로직은:
    상기 SerDes 디바이스에 의해 수신된 트래픽이 링크 기준에 미치지 못할 때 링크 유실 이벤트를 식별하고, 및 이에 응답하여:
    원격 SerDes 디바이스와 속도 교섭의 수행 없이, 상기 원격 SerDes 디바이스와의 통신을 복원하기 위한 링크 재시작 프로세스를 수행하기 위해 재시작 지시(restart indication)를 상기 SerDes 디바이스로 전송하도록 동작가능한, 상기 관리 로직을 포함하는, 디바이스.
KR1020130075451A 2012-08-10 2013-06-28 네트워크 디바이스의 신호 유실 이벤트 후 자동 복구 KR101466791B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/571,964 US9331922B2 (en) 2012-08-10 2012-08-10 Automatic recover after loss of signal event in a network device
US13/571,964 2012-08-10

Publications (2)

Publication Number Publication Date
KR20140020731A true KR20140020731A (ko) 2014-02-19
KR101466791B1 KR101466791B1 (ko) 2014-11-28

Family

ID=48700254

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130075451A KR101466791B1 (ko) 2012-08-10 2013-06-28 네트워크 디바이스의 신호 유실 이벤트 후 자동 복구

Country Status (5)

Country Link
US (1) US9331922B2 (ko)
EP (1) EP2696544B1 (ko)
KR (1) KR101466791B1 (ko)
CN (1) CN103580913B (ko)
TW (1) TWI530124B (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10019602B2 (en) * 2014-08-28 2018-07-10 Qualcomm Incorporated System and method for improved security for a processor in a portable computing device (PCD)
US9942090B2 (en) * 2014-09-23 2018-04-10 Qualcomm Incorporated Predicting one or more system loss events and proactive system recovery
US9332567B1 (en) * 2015-05-28 2016-05-03 Freescale Semiconductor, Inc. System for recovering unresponsive common public radio interface (CPRI) nodes
US10404559B2 (en) * 2015-07-17 2019-09-03 Dataprobe Inc. Apparatus and system for automatically rebooting an electronically powered device via power over ethernet
EP3136620A1 (en) * 2015-08-27 2017-03-01 BRITISH TELECOMMUNICATIONS public limited company Optical network fault management
KR102498223B1 (ko) * 2015-10-13 2023-02-09 삼성전자주식회사 Ufs 장치의 작동 방법, ufs 호스트의 작동 방법, 및 이들을 포함하는 시스템의 작동 방법
US10530559B2 (en) * 2017-11-28 2020-01-07 Marvell World Trade Ltd. Ethernet transceiver with PHY-level signal-loss detector
CN108924064B (zh) * 2018-06-27 2021-03-09 北京东土军悦科技有限公司 交换机快速启动方法、交换机和介质
US11789807B1 (en) 2021-03-30 2023-10-17 Amazon Technologies, Inc. Autonomous management of communication links
US11909850B1 (en) * 2021-06-23 2024-02-20 Amazon Technologies, Inc. Dynamic improvement of a communication channel

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6198727B1 (en) * 1997-03-31 2001-03-06 Hewlett-Packard Company Method and apparatus for providing 10Base-T/100Base-TX link assurance
IT1303841B1 (it) 1998-11-20 2001-03-01 Cit Alcatel Metodo per la riaccensione automatica dei trasmettitori laser inlinee di cavi a fibre ottiche
US6504630B1 (en) * 1998-12-04 2003-01-07 Lucent Technologies Inc. Automatic power shut-down arrangement for optical line systems
GB2350027B (en) * 1999-05-08 2001-07-18 3Com Corp Monitoring of connection between network devices in a packet-based communication system
US7010607B1 (en) * 1999-09-15 2006-03-07 Hewlett-Packard Development Company, L.P. Method for training a communication link between ports to correct for errors
DE60203038T2 (de) * 2001-01-16 2005-07-14 Aware, Inc., Bedford Schnelle initialisierung unter verwendung von seamless rate adaptation
US20040190499A1 (en) * 2001-05-01 2004-09-30 Mindspeed Technologies, Inc. Method and system for configuring gateways to facilitate a modem connection over a packet network
US7957643B2 (en) * 2002-03-07 2011-06-07 Alcatel-Lucent Usa Inc. Method and apparatus for automatically controlling optical signal power in optical transmission systems
JP3902509B2 (ja) * 2002-05-28 2007-04-11 日本電気株式会社 移動通信システム、及びそれに用いる無線基地局とその無線通信モデムの障害復旧方法
US7366930B2 (en) * 2002-12-17 2008-04-29 Intel Corporation System and method for successfully negotiating a slowest common link speed between a first and second device
JP4044560B2 (ja) * 2003-03-28 2008-02-06 富士通株式会社 光伝送路障害検出システム
TWI235299B (en) * 2004-04-22 2005-07-01 Univ Nat Cheng Kung Method for providing application cluster service with fault-detection and failure-recovery capabilities
US7757020B2 (en) * 2005-06-29 2010-07-13 Intel Corporation Point-to-point link negotiation method and apparatus
KR100632975B1 (ko) 2005-07-27 2006-10-11 (주)루미콤 이동통신망 광중계기의 리모트 및 이동통신망 광중계기의리모트에서 절체된 광스위치를 자동복구 하는 방법,이동통신망 광중계기의 리모트에서 전송로의 자기진단방법
US7836199B2 (en) * 2008-09-24 2010-11-16 Applied Micro Circuits Corporation System and method for multilane link rate negotiation
US7849209B2 (en) * 2008-09-24 2010-12-07 Applied Micro Circuits Corporation System and method for link rate negotiation
US8175454B2 (en) * 2008-12-15 2012-05-08 Verizon Patent And Licensing Inc. Fault locator for long haul transmission system
CN101990226A (zh) * 2009-07-31 2011-03-23 大唐移动通信设备有限公司 自动掉电重启的方法、系统及装置
CN101848165B (zh) 2010-06-01 2016-02-10 中兴通讯股份有限公司 控制通信链路中断后恢复的方法和接口板
US8437343B1 (en) * 2012-05-22 2013-05-07 Intel Corporation Optimized link training and management mechanism

Also Published As

Publication number Publication date
TWI530124B (zh) 2016-04-11
CN103580913B (zh) 2017-10-27
US20140043957A1 (en) 2014-02-13
US9331922B2 (en) 2016-05-03
TW201408008A (zh) 2014-02-16
EP2696544A1 (en) 2014-02-12
KR101466791B1 (ko) 2014-11-28
EP2696544B1 (en) 2017-02-22
CN103580913A (zh) 2014-02-12

Similar Documents

Publication Publication Date Title
KR101466791B1 (ko) 네트워크 디바이스의 신호 유실 이벤트 후 자동 복구
US5859959A (en) Computer network with devices/paths having redundant links
EP1754071B1 (en) System and method for detecting link failures
CN101908986B (zh) 一种链路故障的检测方法和设备
US7936685B2 (en) Intelligent fast switch-over network tap system and methods
US10284499B2 (en) Dedicated control path architecture for systems of devices
US20060224754A1 (en) System and method for controlling boot-up process in a communications network switch using preconfiguration of port hardware
CN106817264B (zh) 一种链路故障检测的方法、装置和系统
US20140043960A1 (en) Method, tor switch, and system for implementing protection switchover based on trill network
US11398976B2 (en) Method, device, and system for implementing MUX machine
WO2013097366A1 (zh) 链路聚合的异常恢复方法和交换设备
WO2012009971A1 (zh) 一种光口速率自协商的方法及装置
US11258666B2 (en) Method, device, and system for implementing MUX machine
JP2001103062A (ja) 障害検出通知方法
WO2020088351A1 (zh) 设备信息发送的方法、计算机设备和分布式计算机设备系统
US10055322B2 (en) Interpreting signals received from redundant buses
US9705823B2 (en) Port status synchronization method, related device, and system
JP6195316B2 (ja) 情報処理装置、情報処理方法、及びプログラム
WO2014113957A1 (zh) 一种链路管理方法、设备和通信系统
CN107547265B (zh) 端口配置方法和装置
WO2013044643A1 (zh) 分组业务总线的切换方法、系统及数据交换通信设备
JP3266841B2 (ja) 通信制御装置
JP3604868B2 (ja) システムおよびエラー処理方法
CN114510366A (zh) 一种PCIe链路训练方法、装置及介质
CN110995585A (zh) 一种链路非负载分担保护方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee