KR20140015417A - 비-자의적인 네트워크들을 위한 데이터 차단 시스템들 - Google Patents

비-자의적인 네트워크들을 위한 데이터 차단 시스템들 Download PDF

Info

Publication number
KR20140015417A
KR20140015417A KR1020137025673A KR20137025673A KR20140015417A KR 20140015417 A KR20140015417 A KR 20140015417A KR 1020137025673 A KR1020137025673 A KR 1020137025673A KR 20137025673 A KR20137025673 A KR 20137025673A KR 20140015417 A KR20140015417 A KR 20140015417A
Authority
KR
South Korea
Prior art keywords
frame
signal
module
shaper
data
Prior art date
Application number
KR1020137025673A
Other languages
English (en)
Other versions
KR101918695B1 (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 KR20140015417A publication Critical patent/KR20140015417A/ko
Application granted granted Critical
Publication of KR101918695B1 publication Critical patent/KR101918695B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/245Traffic characterised by specific attributes, e.g. priority or QoS using preemption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/622Queue service order
    • H04L47/6235Variable service order
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6245Modifications to standard FIFO or LIFO
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

네트워크 디바이스가 제1 큐 및 제2 큐를 가진 메모리를 포함한다. 타이밍 모듈이 클록 신호에 근거하여 제1 우선 순위 타이밍 신호 또는 제2 우선 순위 타이밍 신호를 생성한다. 상기 클록 신호는 비-자의적인 네트워크에서 상기 네트워크 디바이스와 타 네트워크 디바이스들 간에 공유된다. 상기 네트워크 디바이스는 차단 해제 쉐이퍼 또는 차단 쉐이퍼를 포함한다. 상기 차단 해제 쉐이퍼는 (i) 상기 제1 큐로부터 제1의 보호된 데이터를 포워딩하고, (ii) 제1 프레임 신호 및 상기 제1 우선 순위 타이밍 신호에 근거하여 차단 해제 신호를 생성한다. 상기 차단 쉐이퍼는 (i) 상기 제2 큐로부터 제2의 보호된 데이터 및 비 보호된 데이터 중 하나를 포워딩하고, (ii) 제2 프레임 신호 및 상기 제2 우선 순위 타이밍 신호에 근거하여 제1 차단 신호를 생성한다. 선택기 모듈은 상기 차단 해제 신호 및 제1 차단 신호에 근거하여 상기 제1 프레임 또는 제2 프레임을 선택한다.

Description

비-자의적인 네트워크들을 위한 데이터 차단 시스템들{DATA BLOCKING SYSTEMS FOR NON-ARBITRARY NETWORKS}
[관련 출원의 상호 참조]
본 발명은 2012년 3월 8일자로 출원된 미국 특허 출원 제13/415,112호, 2011년 3월 10일자로 출원된 가 출원 제61/451,525호, 2011년 3월 14일자로 출원된 가 출원 제61/452,482호 그리고 2011년 10월 28일자로 출원된 가 출원 제61/552,648호의 이익을 주장한다. 상기 출원들의 발명들은 본 명세서에 그 전체가 참조로서 포함된다.
[기술분야]
본 발명은 네트워크들에 관한 것이며, 특히 비-자의적인 네트워크에서의 데이터 소스들 및 브릿지들의 레이턴시(latency)에 관한 것이다.
본 명세서에서 제공되는 배경 설명은 본 발명의 배경을 개괄적으로 제시하기 위한 것이다. 본 배경기술란에서 기술되는 정도의 본 발명의 발명자들의 연구와, 그렇지 않을 경우 출원 시점에 종래기술로서 볼 수 없는 본 발명의 양상들은, 본 발명에 대해 명시적으로나 암시적으로도 종래기술로서 인정되는 것은 아니다.
데이터 통신 네트워크는 복수의 톡커(talker)들(또는 데이터의 소스들) 및 복수의 수신기들을 포함할 수 있다. 어떤 수의 브릿지들이 각각의 톡커들과 수신기들 사이에서 데이지 체인(daisy chain)으로 연결될 수 있다. 상기 데이터 통신 네트워크는 (비-엔지니어링 네트워크(non-engineered network)로서 나타내지는) 자의적인 네트워크 또는 (엔지니어링 네트워크로서 나타내지는) 비-자의적인 네트워크일 수 있다. 예를 들어, 자의적인 네트워크는 네트워크에서의 다양한 포인트들 및 랜덤한 시간들에서 자의적으로 연결 및 연결해제되는 서로 다른 네트워크 디바이스들(예컨대, 컴퓨터들, 셀룰러 폰들, 텔레비전들, 프린터들 및 전자 태블릿들)을 가질 수 있는 주거 지역 네트워크(LAN)일 수 있다. 상기 네트워크 디바이스들은 자의적인 네트워크 내에서 전송되고 있는 데이터의 우선 순위 레벨들에 관계없이 언제든지 연결 및 연결해제될 수 있다.
예를 들어, 비-자의적인 네트워크는 차량 내의 자동차 네트워크 또는 제조 어셈블리 라인 네트워크일 수 있다. 일반적으로, 비-자의적인 네트워크 내의 네트워크 디바이스들은 고정되어 있으며 상기 비-자의적인 네트워크에 연결되고 그리고/또는 상기 비-자의적인 네트워크로부터 연결해제되지 않는다. 비록 네트워크 디바이스들이 비-자의적인 네트워크에 연결 및/또는 이로부터 연결해제될 수 있지만은, 상기 비-자의적인 네트워크에 연결 또는 이로부터 연결해제되는 네트워크 디바이스와의 통신이 높은-우선 순위의 데이터의 전송 주기들 동안 방지된다. 이러한 전송 주기들 동안, 높은-우선 순위의 데이터는 비-자의적인 네트워크 내의 네트워크 디바이스들 사이에서 전송된다.
예를 들어, IEEE(Institute of Electrical and Electronics Engineers) 802.1 Qav에 따라 동작하는 비-자의적인 이더넷 네트워크는 톡커(또는 소스), 복수의 브릿지들 및 청취자(또는 수신기)를 포함할 수 있다. 상기 톡커는 주기적 전송 시간 간격들의 할당된 전송 주기들 동안 브릿지들을 통해 청취자에게 높은-우선 순위의 데이터를 전송할 수 있다. 높은-우선 순위의 데이터는 예컨대, 낮은-레이턴시의 요건들을 가진 클래스 A 또는 클래스 B의 데이터를 나타낼 수 있다. 용어, 레이턴시는 높은-우선 순위의 프레임이 비-자의적인 네트워크의 하나 이상의 홉(hop)들을 통해 전송되는 시간을 나타낸다. 단일 홉의 레이턴시는 높은-우선 순위의 프레임의 마지막 비트가 그 홉에 대한 네트워크 디바이스에 의해 수신되는 시간으로부터 상기 마지막 비트가 상기 네트워크 디바이스로부터 전송되는 시간까지 측정된다. 간단히 말하자면, 단일 홉의 레이턴시는 네트워크 디바이스로 들어오는 마지막 비트로부터 상기 네트워크 디바이스 외부로 나가는 마지막 비트까지 측정된다. 단일 홉은 (엔드 스테이션으로서 나타내지는) 톡커 또는 비-자의적인 네트워크의 브릿지를 나타낼 수 있다.
비-자의적인 네트워크에서, 전송되는 데이터는 예컨대, 세 개의 우선 순위 레벨들 중 하나를 가질 수 있다. 클래스 A의 데이터는 최고 우선 순위 레벨을 가진 오디오 비디오 브릿징(AVB) 데이터를 포함할 수 있다. 비록 AVB 데이터가 오디오 데이터 및/또는 비디오 데이터를 포함할 수 있지만은, AVB 데이터는 또한, 제어 데이터, 사용자 데이터, 참조 데이터 또는 다른 타입의 데이터를 포함할 수 있다. 상기 최고 우선 순위 레벨의 데이터에는 미리 결정된 양의 대역폭 및 미리 결정된 최대 레이턴시가 제공될 수 있다. 이는 상기 클래스 A의 데이터가 할당된 시간 주기들 동안 전송되게끔 하며, 미리 결정된 수의 홉(들)을 통해 그리고/또는 엔드 스테이션들 사이에 상기 클래스 A의 데이터를 전송함과 관련된 레이턴시가 미리 결정된 최대 레이턴시보다 작게끔 한다. 클래스 B의 데이터는 그 다음으로 높은 우선 순위 레벨을 가진 AVB 데이터일 수 있다. 비-AVB 데이터는 최저 우선 순위 레벨을 가질 수 있다. 일반적으로, 높은 우선 순위의 데이터는 낮은 우선 순위의 데이터 이전에 전송된다.
네트워크 디바이스가 할당된 전송 주기들 동안 비-자의적인 네트워크에 연결하는 것을 시도하면, 상기 비-자의적인 네트워크와의 연결이 거부될 수 있다. 이 연결은 어떠한 데이터 전송 활동도 없는 주기 및/또는 클래스 B의 우선 순위 레벨을 가진 데이터가 전달되거나 또는 더 낮은 우선 순위 레벨이 전송되는 주기 동안 확립될 수 있다.
고속 이더넷(FE)은 초당 100메가-비트(Mbits/s)에서 데이터를 전송함을 나타낸다. 기가바이트 이더넷(GE)은 초당 1기가-비트(Gbits/s)를 전송함을 나타낸다. (FE 또는 GE 전송 속도들에서의) 1세대 이더넷 네트워크를 위한 IEEE 802.1 AVB 표준에 따르면, 클래스 A의 데이터의 프레임이 2미리초(ms)보다 짧은 시간 내에 7개의 홉들을 통해 통과(pass)해야 하며, 클래스 B의 데이터의 프레임이 50ms보다 짧은 시간 내에 7개의 홉들을 통해 통과해야 한다. 비록 클래스 A의 프레임들 및 클래스 B의 프레임들이 유선 또는 무선 연결들을 통해 전송될 수 있지만은, 현재의 비-자의적인 네트워크들이 무선 연결들을 통해 전송되는 데이터에 대한 1세대 클래스 A 요건들을 만족시킬 수 없다. 무선 연결들을 통해 데이터를 전송하는 시간은 유선 연결들을 통해 데이터를 전송하는 시간보다 길다.
2세대 네트워크를 위한 IEEE 802.1 AVB 목표(goal) 1에 따르면, 클래스 A의 프레임이 125㎲보다 짧은 시간 내에 32개의 GE 전송 속도의 홉들을 통해 통과해야 한다. 2세대 네트워크를 위한 다른 AVB 목표 2는 클래스 A의 프레임이 100㎲보다 짧거나 동일한 시간 내에 5개의 FE 전송 속도의 홉들을 통해 통과하는 것을 요한다. 현재의 비-자의적인 네트워크들은 유선 연결들을 통해 GE 속도들에서 전송할 때 제2의 2세대 레이턴시 목표를 만족시킬 수 있다. 현재의 비-자의적인 네트워크들은 유선 연결들을 통해 FE 속도들에서 전송할 때 2세대 레이턴시 목표 2를 만족시킬 수도 유선 연결들을 통해 GE 속도들에서 전송할 때 2세대 레이턴시 목표 1을 만족시킬 수도 없다.
네트워크 디바이스가 제공되고, 큐들을 가진 메모리를 포함한다. 상기 큐들은 제1 큐 및 제2 큐를 포함한다. 타이밍 모듈이 제1 우선 순위의 타이밍 신호 또는 제2 우선 순위의 타이밍 신호 중 적어도 하나를 생성하도록 구성된다. 상기 제1 우선 순위의 타이밍 신호 및 제2 우선 순위의 타이밍 신호는 클록 신호에 근거하여 생성된다. 상기 클록 신호는 비-자의적인 네트워크에서 상기 네트워크 디바이스와 타 네트워크 디바이스들 간에 공유된다.
상기 네트워크 디바이스는 차단 해제 쉐이퍼(deblocking shaper) 또는 차단 쉐이퍼 중 적어도 하나를 더 포함한다. 상기 차단 해제 쉐이퍼는 (i) 제1 큐로부터 제1의 보호된 데이터를 포워딩(forwarding)하고, (ii) 제1 프레임 신호 및 상기 제1 우선 순위의 타이밍 신호에 근거하여 차단 해제 신호를 생성하도록 구성된다. 상기 제1 프레임 신호는 제1 프레임이 상기 제1 큐 내에 있음을 나타낸다. 상기 차단 쉐이퍼는 (i) 제2 큐로부터 제2의 보호된 데이터 및 비 보호된 데이터 중 하나를 포워딩하고, (ii) 제2 프레임 신호 및 상기 제2 우선 순위의 타이밍 신호에 근거하여 제1 차단 신호를 생성하도록 구성된다. 상기 제2 프레임 신호는 제2 프레임이 상기 제2 큐 내에 있음을 나타낸다. 선택기 모듈이 상기 차단 해제 신호 및 제1 차단 신호에 근거하여 상기 제1 프레임 또는 제2 프레임을 선택하도록 하는 선택 신호를 생성하도록 구성된다.
본 발명의 추가의 응용의 영역들이 상세한 설명, 특허 청구 범위 및 도면들로부터 분명해질 것이다. 상세한 설명 및 특정한 예들은 단지 예시를 위해 의도된 것이며 본 발명의 범위를 제한하고자 의도된 것이 아니다.
본 발명은 상세한 설명 및 첨부된 도면들로부터 더욱 완전히 이해될 것이다.
도 1은 정체(congestion)가 있는 그리고 없는 프레임 전송 타이밍을 예시하는 타이밍도이다.
도 2a 내지 2h는 브릿지를 통한 개입 프레임(interference frame) 및 클래스 A의 프레임들의 진행들을 예시하는 브릿지의 기능 블록도들이다.
도 3a 내지 3e는 브릿지를 통한 클래스 A의 프레임들의 진행들을 예시하는 브릿지의 기능 블록도들이다.
도 4는 프레임들을 병렬로 수신함과 관련된 레이턴시를 예시하는 타이밍도이다.
도 5는 프레임의 조직화된 전송과 관련된 레이턴시를 예시하는 타이밍도이다.
도 6은 클래스 A가 할당된 시간 주기들 및 대응하는 주기적 전송 시간 간격들을 예시하는 타이밍도이다.
도 7은 본 발명에 따른 비-자의적인 네트워크의 기능 블록도이다.
도 8은 본 발명에 따른 톡커의 기능 블록도이다.
도 9는 본 발명에 따른 브릿지의 기능 블록도이다.
도 10은 본 발명에 따른 네트워크 디바이스의 기능 블록도이다.
도 11은 본 발명에 따른 시간-비인식 차단 쉐이퍼(time-unaware blocking shaper)의 기능 블록도이다.
도 12는 본 발명에 따른 시간에 걸친 시간-비인식 차단 쉐이퍼에 대한 카운트 값들을 예시하는 그래프이다.
도 13은 본 발명에 다른 차단 해제 쉐이퍼의 기능 블록도이다.
도 14는 본 발명에 따른 시간-인식 차단 쉐이퍼의 기능 블록도이다.
도 15는 본 발명에 따른 프레임 사이즈-기반(frame size-based) 차단 쉐이퍼의 기능 블록도이다.
도 16a 내지 16e는 본 발명에 따른 브릿지를 통한 프레임 사이즈-기반 데이터 진행을 예시하는 브릿지의 기능 블록도들이다.
도 17은 본 발명에 따른 클래스 A가 할당된 시간 주기들에 대한 차단 윈도우들을 예시하는 타이밍도이다.
도 18a 내지 18b는 본 발명에 따른 데이터 차단 방법을 예시한다.
상술한 상세한 설명은 사실상, 단지 예시적일 뿐이며, 어떤 방식으로도 본 발명, 응용 또는 사용들을 제한하고자 의도된 것이 아니다. 본 발명의 넓은 교시들이 다양한 형태들로 구현될 수 있다. 그러므로, 본 발명이 특별한 예들을 포함하지만은, 본 발명의 진정한 범위는 도면들, 상세한 설명 및 다음의 특허 청구범위를 고려해 볼 때 다른 수정들이 분명해 질 것이기 때문에 그러한 특정 예들로만 제한되지 않아야만 한다. 명확성을 위해, 도면들에서 동일한 참조 부호들이 유사한 요소들을 식별하는데 사용될 것이다. 본 명세서에 사용된, 문구 'A, B 및 C 중 적어도 하나'는 비-배타적 논리 OR을 사용하여 논리 (A 또는 B 또는 C)를 의미하는 것으로 해석되어야만 한다. 방법 내의 하나 이상의 단계들은 본 발명의 원리들을 변경함이 없이 서로 다른 순서로 (또는 동시에) 실행될 수 있음이 이해되어야만 한다.
본 명세서에 사용된 용어, 모듈은 응용 주문형 집적 회로(ASIC), 전자 회로, 조합 논리 회로, 현장 프로그래머블 게이트 어레이(FPGA), 코드를 실행하는 (공유, 전용(dedicated) 또는 그룹)프로세서, 기술된 기능성을 제공하는 다른 적절한 컴포넌트들 또는 시스템 온 칩(system on chip)에서와 같이 상기의 일부 또는 모두의 조합을 나타내며, 그 일부에 속하거나 또는 이들을 포함할 수 있다. 상기 용어, 모듈은 상기 프로세서에 의해 실행되는 코드를 저장하는 (공유, 전용 또는 그룹)메모리를 포함할 수 있다.
본 명세서에 사용된 용어, 코드는 소프트웨어, 펌웨어 및/또는 마이크로코드를 포함할 수 있고, 프로그램들, 루틴(routine)들, 기능(fucntion)들, 클래스들 및/또는 객체(object)들을 나타낼 수 있다. 본 명세서에 사용된 용어, 공유(shared)는 복수 모듈들로부터의 일부 또는 모든 코드가 단일(공유) 프로세서를 사용하여 실행될 수 있음을 의미한다. 게다가, 복수 모듈들로부터의 일부 또는 모든 코드는 단일(공유) 메모리에 의해 저장될 수 있다. 본 명세서에 사용된 용어, 그룹(group)은 단일 모듈로부터의 일부 또는 모든 코드가 프로세서들의 그룹을 사용하여 실행될 수 있음을 의미한다. 게다가, 단일 모듈로부터의 일부 또는 모든 코드는 메모리들의 그룹을 사용하여 저장될 수 있다.
추가적으로, 다음의 상세한 설명에서 다양한 가변적인 라벨들 및 값들이 개시된다. 상기 가변적인 라벨들 및 값들은 예들로서 제공된다. 상기 가변적인 라벨들은 자의적으로 제공되고, 각각이 서로 다른 아이템들을 식별 또는 나타내는 데 사용될 수 있다. 예를 들어, 가변적인 라벨 n 은 다수의 프레임 또는 큐들을 나타내는 데 사용될 수 있다. 또한, 값들은 자의적으로 제공되고 어플리케이션 마다 다양할 수 있다.
더욱이, 다음의 상세한 설명에서 "제1", 제2" 및 "제3"과 같은 용어들이 사용된다. 이 용어들은 어떤 하나의 디바이스, 신호 등을 특정하지 않는다. 하나 보다 많은 용어들이 문맥에 따라 동일한 디바이스, 신호 등을 나타내는 데 사용될 수 있다.
기가바이트 이더넷(GE) 네트워크
GE 네트워크는 홉 당 0.512㎲의 전송 레이턴시 시간을 가진 64바이트의 최소 프레임 사이즈를 가질 수 있다. 평균(또는 일반적인) 사이즈의 이더넷 프레임은 300바이트를 가질 수 있고 최대 프레임 사이즈는 1522바이트일 수 있다. 300바이트인 이더넷 프레임은 전송 시간의 관련 320바이트 가치(worth)를 가질 수 있고, 여기서 20바이트의 시간이 이더넷 프리앰블(1들 또는 0들의 반복적인 패턴 및/또는 프레임의 시작 구분문자(delimiter)) 및 프레임간 갭(IFG)과 관련된다. IFG는 데이터의 순차적 프레임들 간의 시간의 갭을 나타낸다. 톡커로부터 320바이트들을 전송하는 것과 관련된 레이턴시는 2.56㎲이다. 데이터가 예컨대, CAT 5e 케이블 상에서 전송될 때 네트워크 스테이션들(또는 노드들) 간의 전송 라인 지연은 케이블의 100미터(m)에 대해 약 538나노초(ns)이다.
도 1에서, 정체가 있는 그리고 없는 프레임 전송 타이밍을 예시하는 타이밍도(10)가 도시된다. 네트워크 디바이스들 사이에서 전송되는 데이터 블록들(1 내지 8)이 도시되고, 각각이 데이터의 프레임(이하, 프레임)을 포함할 수 있다. 프레임들의 각각은 300바이트를 가질 수 있다. 상기 프레임들은 FE 속도를 이용하여 전송될 수 있다. 프레임들은 주기적 전송 타이밍 간격(14)으로 전송된다. 주기적 전송 타이밍 간격(14)은 8kHz 신호에 대하여 예컨대, 125㎲의 길이를 가질 수 있다. 상기 프레임들은 클래스 A의 데이터를 포함할 수 있다. 클래스 A의 데이터는 GE에 대해 최고 우선 순위 레벨을 가진 데이터를 나타낼 수 있다. 클래스 A의 데이터는 각각의 주기적 전송 시간 간격 동안 전송될 수 있다. 정체가 없는(즉, 개입 프레임이 없는) 그리고 정체가 있는(즉, 개입 프레임이 있는) 데이터의 블록들(1 내지 8)이 도시된다. 주기적 전송 시간 간격들 각각 동안 전송될 수 있는 프레임들의 최대 개수는 예컨대, 8개일 수 있다.
제1 시간 라인(18)이 개입 프레임 없는 데이터의 블록들(1 내지 8)을 가진다. 데이터의 블록들(1 내지 8) 각각은 클래스 A의 프레임(예컨대, 300바이트), 프리앰블 및 프레임간 갭(IFG)을 포함할 수 있다. 프리앰블 및 IFG는 관련 20바이트의 시간을 가질 수 있다. 제2 시간 라인(20)이 개입 프레임 블록(22)을 포함하여 데이터의 블록들(1 내지 8)을 가진다. 상기 개입 프레임 블록(22)은 개입 프레임, 프리앰블 및 IFG를 포함할 수 있다. 개입 프레임은 클래스 A의 프레임이 전송될 준비가 되기에 앞서 그리고/또는 준비가 될 때, 전송될 준비가 되고 그 결과 클래스 A의 프레임의 전송을 지연시키는 프레임을 나타낸다. 상기 개입 프레임은 예컨대, 1522바이트의 데이터를 가진 최대 사이즈의 GE 프레임일 수 있다. 상기 개입 프레임 블록(22)의 프리앰블 및 IFG는 관련 20바이트의 시간을 가질 수 있다. 상기 개입 프레임 블록(22)으로 인하여, 데이터의 블록들(1 내지 8) 및 대응하는 클래스 A의 프레임들은 지연 주기(24)에 의해 지연된다. 클래스 A의 프레임들 및 개입 프레임의 사이즈들이 작을수록 클래스 A의 프레임들을 전송함과 관련된 레이턴시도 적어진다. 또한, 8개의 프레임들의 전송이 MAC 지연(26)으로 도시된 바와 같은 매체 액세스 제어기(MAC)의 지연으로 인해 지연될 수 있다.
클래스 A의 프레임들의 IFG는 시간-비인식 차단 쉐이퍼에 의해 제공될 수 있다. 상기 시간-비인식 차단 쉐이퍼는 주기적 전송 시간 간격에 걸쳐 프레임들을 스프레드(spread out)한다. 프레임들을 스프레드함에 있어서, 프레임간 갭들(데이터가 없는 주기들)은 순차적 프레임들 사이에 제공된다. 차단 쉐이퍼들의 예들이 도 7 내지 11 및 13 내지 15에 도시된다. 시간-비인식 차단 쉐이퍼는 그랜드 마스터 클록에 근거하여 동작하지 않는 차단 쉐이퍼를 나타낸다. 그랜드 마스터 클록은 비-자의적인 네트워크에서 네트워크 디바이스들에 의해 공유되는 글로벌 클록 신호를 생성하는 클록이다. 시간-비인식 차단 쉐이퍼의 예들이 도 10 및 11에 도시된다. 또한, 그랜드 마스터 클록에 근거하여 수행되는 전송들이 도 7 및 10에 관하여 하기에 더욱 상세히 기술된다.
톡커는 주기적 전송 시간 간격 동안 전송될 다수의 클래스 A의 프레임들에 근거하여 데이터를 버스트(bust)시킬 수 있다. 상기 클래스 A의 데이터에 대한 시간-비인식 차단 쉐이퍼는 클래스 A의 데이터가 주기적 전송 시간 간격에 걸쳐 스프레드되는 것을 방지하도록 동작 불가능하게(disable)될 수 있다. 이는 개입 프레임의 전송이 개시될 수 있는 IFG가 존재하지 않기 때문에 개입 프레임들과 관련된 지연들을 최소화시킬 수 있다.
타입 I 전송에 대한 예시적 레이턴시
정체가 있고 차단 쉐이퍼의 사용이 없는 데이터 전송이 타입 I 데이터 전송으로서 나타내진다. 간단한 네트워크는 톡커, N 개의 2 포트 브릿지들(일 브릿지는 단일 입력 포트 및 단일 출력 포트를 구비함) 그리고 청취자를 포함할 수 있다. 제어 프레임이 브릿지들 중 하나를 통하여 그리고 톡커로부터 청취자까지 통과하는 시간들이 다음의 도 2a 내지 2h에 관하여 기술된다. 도 2a 내지 2h는 정체가 있고 차단 쉐이퍼들의 사용이 없는 브릿지(40)를 통한 데이터의 진행들을 도시한다. 브릿지(40)를 통한 개입 프레임(42) 및 클래스 A의 프레임들의 진행들이 도시된다. 클래스 A의 프레임들은 차단 쉐이퍼들의 사용 없이 순차적으로 전송된다. 상기 개입 프레임(42)은 상기 클래스 A의 프레임들의 전송에 앞서 전송되는 최대 사이즈의 개입 프레임이다.
브릿지(40)는 메모리(46)를 구비한 진입 모듈(ingress module)(44), 큐들(48), 멀티플렉서(50) 및 출력 포트(52)를 포함한다. 다음의 브릿지 레이턴시 값들은 IEEE 1722에 대하여 진입 시간 기준면(ingress time reference plane) 또는 레이턴시의 시작으로부터 측정될 수 있다.
도 2a에서, 개입 프레임(42)은 브릿지(40)에 도착되는 것으로서 도시되고 그 다음, 클래스 A의 프레임들이 뒤따른다. 개입 프레임(42)의 제1 비트가 시간 t0에서 브릿지(40)에 의해 업스트림 네트워크 디바이스(예컨대, 톡커 또는 브릿지)로부터 수신된다. 도 2b에서, 개입 프레임(42)은 메모리(46)에 수신 및 저장되는 것으로서 도시된다. 개입 프레임(42)이 수신된 이후에, 클래스 A의 프레임들 중 제1의 프레임의 제1 비트가 수신된다. 이는 개입 프레임이 관련 1542바이트의 레이턴시 시간을 가지기 때문에 t=12.336㎲에서 발생한다. 개입 프레임(42)은 예컨대, 1522바이트 그리고 프리앰블 및 IFG와 관련된 20바이트의 시간을 가질 수 있다. 도 2c에서, 개입 프레임(42)은 메모리(46)로부터 낮은 우선 순위의 데이터 및/또는 비-AVB 데이터와 관련된 큐들(48) 중 하나로 전달되는 것으로서 도시된다. t=13.360㎲에서, 128바이트의 제1 제어 프레임이 수신되는 바, 13.360㎲는 12.336㎲의 개입 프레임(42)을 수신하는 시간에 128바이트를 프로세스하는 시간 즉 1.024㎲를 더한 것과 동일하다. 제1의 클래스 A의 프레임의 제1 비트가 수신되고 나서 두 개의 슬롯 시간들(또는 브릿지(40)의 클록 사이클들) 이후에, 개입 프레임(42)의 제1 비트가 도 2d에 도시된 바와 같이 브릿지(40)의 외부로 전송된다. 그 다음, 제1의 클래스 A의 프레임(57)은 큐(48) 중 제1 큐에 저장될 수 있다.
도 2d에서, 제2의 클래스 A의 프레임의 제1 비트(60)가 브릿지(40)에 의해 수신되는 것으로서 도시된다. 이는 12.336㎲의 개입 프레임을 수신하는 시간에 제1의 클래스 A의 프레임과 관련된 320바이트의 시간을 더한 것과 동일한 t=14.896㎲에 발생한다. 도 2e에서, 제3의 클래스 A의 프레임의 제1 비트(62)가 수신되는 것으로서 도시된다. 이는 12.336㎲의 개입 프레임을 수신하는 시간에 클래스 A의 프레임과 관련된 320바이트의 시간을 두배 더한 t=17.456㎲에 발생한다.
도 2f에서, 제1의 클래스 A의 프레임의 제1 비트(64)는 브릿지(40)로부터 전송되는 것으로서 도시된다. 이는 12.336㎲의 개입 프레임을 수신하는 시간(또는 시작 시간)에 13.360㎲의 5 개의 클래스 A의 프레임들 및 70바이트의 제6의 클래스 A의 프레임을 프로세스 하는 시간(또는 개입 프레임의 전송 시간)을 더한 것과 동일한 t=25.696㎲에서 발생할 수 있다. 5개의 클래스 A의 프레임들 및 70바이트의 제6의 클래스 A의 프레임의 프로세스 시간은 제1의 클래스 A의 프레임의 시작 시간과 동일하다.
도 2g에서, 클래스 A의 프레임들의 마지막 비트(66)가 브릿지(40)에 의해 수신된다. 이는 t=32.656㎲에서 발생할 수 있고, 제6 프레임의 나머지의 프로세싱 시간 및 제7 및 제8 프레임들의 프로세싱 시간들을 포함한다. 도 2h에서, 클래스 A의 프레임들의 마지막 비트가 브릿지(40)로부터 전송된다. 이는 시작 시간 13.36㎲에 32.656㎲의 개입 프레임 및 클래스 A의 프레임들의 전송 시간을 더한 t=46.016㎲에서 발생할 수 있다. 46.016㎲의 시간 t는 (제1 비트 입력으로부터 마지막 비트 출력까지의 시간(first bit in to last bit out time)으로서 나타내지는) 브릿지(40)로 제1 비트가 들어가고 상기 브릿지(40)로부터 마지막 비트가 나오는 데까지의 시간이다. 브릿지(40)의 수신 시간과 동일한 톡커 전송 시간의 이중 카운팅을 제거하기 위하여, 제1 비트 입력으로부터 마지막 비트 출력까지의 시간보다는 (마지막 비트 입력으로부터 마지막 비트 출력까지의 시간(last bit in to last bit out time)으로서 나타내지는) 브릿지(40)로 마지막 비트가 들어가고 상기 브릿지(40)로부터 마지막 비트가 나오는 것까지가 고려된다.
마지막 비트 입력으로부터 마지막 비트 출력까지의 시간은 46.016㎲의 시간 t에 12.226㎲의 개입 프레임의 전송 시간을 빼고 20.48㎲의 8 개의 클래스 A의 프레임들의 전송시간을 빼며 20바이트의 프리앰블 및 IFG 시간을 더한 것과 동일한 바, 이는 13.36㎲와 동일하다. 또한, 마지막 비트 입력으로부터 마지막 비트 출력까지의 시간은 마지막 클래스 A 비트의 입력 시간으로부터 마지막 클래스 A 비트의 출력 시간을 감함으로써(subtracting) 결정될 수 있는 바, 이는 또한 13.36㎲와 동일하다.
클래스 A의 프레임들에 대한 브릿지(40)의 최대 레이턴시는 브릿지(40)의 지연 시간 tbridge에 최대 사이즈의 개입 프레임을 수신하는 시간 tMAXINT을 더하고 브릿지(40)과 예컨대 다른 네트워크 디바이스 사이의 케이블(들)의 전송 시간 tCable을 더한 것과 동일하다. 케이블(들)의 전송 시간 tCable은 100m 케이블에 대해 결정될 수 있다.
5개의 네트워크 디바이스들(톡커 1개 및 브릿지들 4개)의 데이지 체인을 통해 GE 상에서 8개의 300바이트 클래스 A의 프레임들을 전송하기 위한 최대 레이턴시는 하기와 같이 결정될 수 있다. 두 개의 슬롯 시간들의 브릿지 지연 및 1522바이트의 최대 비-AVB 데이터 사이즈를 포함하는 경우, 최대 레이턴시는 1.024㎲(tbridge)에 12.336㎲(tMAXINT)를 더하고 0.538㎲(tCable)을 더한 것 즉 13.898㎲와 동일하다. 이는 마지막 비트 입력으로부터 마지막 비트 출력까지의 시간 13.36㎲에 0.538㎲의 케이블 지연 시간을 더한 것과 동일하다.
타입 II 전송에 대한 예시적 레이턴시
도 3a 내지 3e는 정체가 없고 차단 쉐이퍼들이 없는 브릿지(40)를 통한 클래스 A의 프레임들의 진행들을 예시한다. 정체가 없고 차단 쉐이퍼들이 없는 데이터 전송은 타입 II 데이터 전송으로서 나타내질 수 있다. 브릿지(40)는 메모리(46)를 구비한 진입 모듈(44), 큐들(48), 멀티플렉서(50) 및 출력 포트(52)를 포함한다. 도 3a에서, 8개의 클래스 A의 프레임들이 브릿지(40)에 도착하는 것으로서 도시된다. 제1의 클래스 A의 프레임의 제1 비트가 브릿지(40)에 의해 수신된다. 이는 시간 t0에서 이루어진다. 도 3b에서, 제1의 클래스 A의 프레임의 제1 프레임(70)이 수신되었고 제2의 클래스 A의 프레임의 제1 비트가 브릿지(40)에 의해 수신된다. 제2의 클래스 A의 프레임의 제1 비트(71)는 제1의 클래스 A의 프레임의 제1 비트를 수신하고 예컨대, 320바이트의 시간 이후에 수신될 수 있다. 이는 2.56㎲와 동일한 시간에 발생할 수 있다.
도 3c에서, 제1의 클래스 A의 프레임(70)은 제1 큐에 저장되는 것으로서 도시된다. 제1의 클래스 A의 프레임(70)의 제1 비트는 브릿지(40)로부터 전송될 수 있다. 이는 제2의 클래스 A의 프레임(71)의 제1 비트를 수신하고 나서 두 개의 슬롯 시간들 이후에 즉 3.584㎲와 동일한 시간 t에서 발생할 수 있다. 이 때 128바이트의 제2의 클래스 A의 프레임(71)은 브릿지(40)에 저장된다. 도 3d에서, 마지막의 클래스 A의 프레임의 마지막 비트(74)가 브릿지(40)에 의해 수신되는 것으로서 도시된다. 이는 3.584㎲의 이전의 시간에 잔여 프레임들의 수신 시간 즉 16.736㎲을 더한 것과 동일한 20.32㎲와 동일한 시간 t에서 발생할 수 있다.
도 3e에서, 마지막의 클래스 A의 프레임의 마지막 비트가 브릿지(40)로부터 전송되는 것으로서 도시된다. 이는 3.584㎲의 제1의 클래스 A의 프레임과 관련된 시간 지연에 20.32㎲의 톡커로부터 브릿지(40)로의 클래스 A의 프레임의 전송시간을 더한 것과 동일한 23.904㎲와 동일한 시간 t에서 발생할 수 있다. 23.904㎲는 브릿지(40)의 제1 비트 입력으로부터 마지막 비트 출력까지의 시간이다. 마지막 비트 입력으로부터 마지막 비트 출력까지의 시간이 23.904㎲의 제1 비트 입력으로부터 마지막 비트 출력까지의 시간으로부터 20.48㎲의 전송 시간을 감함으로써 결정될 수 있는 바, 이는 3.584㎲와 동일하다. 또한, 마지막 비트 입력으로부터 마지막 비트 출력까지의 시간은 마지막의 클래스 A의 프레임의 마지막 비트가 수신된 시간에 마지막의 클래스 A의 프레임의 마지막 비트가 브릿지(40)로부터 전송된 시간을 뺀 것과 동일하다.
타입 II 전송에 대한 브릿지(40)의 최대 레이턴시가 브릿지(40)의 지연 시간 tBridge에 최대 사이즈의 클래스 A의 프레임을 수신하기 위한 시간 tMAXFrame을 더하고 케이블 지연 시간 tCable을 더한 것으로서 결정될 수 있다. 두 개의 슬롯 시간들의 브릿지 지연 및 300바이트의 최대 클래스 A의 프레임 사이즈를 포함하는 경우, 최대 레이턴시는 1.024㎲(tBridge)에 2.56㎲(tMAXFrame)를 더하고 0.538㎲(tCable)를 더한 것 즉 4.122㎲와 동일하다. 최대 레이턴시는 마지막 비트 입력으로부터 마지막 비트 출력까지의 시간 3.584㎲에 0.538㎲의 케이블 지연 시간을 더한 것과 동일하다.
도 2a 내지 3f와 관련된 최대 레이턴시 시간들에 근거하여, 정체와 관련된 레이턴시는 정체가 없을 때의 레이턴시보다 심각(worse)하다. 비-자의적인 네트워크에서, 전송이 정체 없이 수행될 수 있다.
타입 II 전송을 위한 예시적 GE 마진 결정
예로서, GE 제어 프레임이 256 페이로드 바이트들을 가질 수 있고, 여기서 32개의 제어 프레임들이 500㎲ 마다 전송될 수 있다. 제어 프레임들 각각은 22바이트의 오버헤드를 가지고 20바이트 IFG를 가질 수 있다. 톡커로부터 제어 프레임들 각각을 전송함과 관련된 지연 시간은 정체가 없는 경우 2.384㎲(즉 298바이트 * 8비트 * 1ns)와 동일하다. 톡커로부터 프리엠블 또는 IFG가 없는 제어 프레임을 전송하는 것과 관련된 지연 시간은 정체가 없는 경우 2.224㎲(즉 278바이트 * 8비트 * 1ns)이다. 톡커로부터 32개의 프레임들을 전송하기 위한 시간은 정체가 없는 경우 76.288㎲(즉 2.384㎲ * 32)이다. IFG가 없는 레이턴시는 72.8㎲이다. 이러한 이유로, GE의 레이턴시는 100㎲보다 적거나 동일한 시간 내에 톡커로부터 32개의 프레임들을 전송하는 AVB 2세대 요건을 통과(pass)한다. GE를 이용하여 데이터를 전송하는 네트워크는 정체가 있는 경우 100㎲ 요건을 통과할 수 있다.
제어 프레임들 중 하나(278바이트)를 전송하는 시간 즉 2.224㎲에 브릿지가 제어 프레임을 프로세스하는 시간(예컨대, 두 개의 512비트 시간들과 동일한 1.024㎲)을 더한 시간은 3.248㎲의 일 홉에 대한 레이턴시 시간을 제공한다. 네 개의 브릿지 홉들의 경우, 레이턴시 시간은 12.992㎲이다. 그 결과, 정체 없이 톡커로부터 제어 프레임을 전송하는 시간 및 네 개의 브릿지들이 상기 제어 프레임을 프로세스하는 시간을 포함하는 총 전송 시간은 15.216㎲이다. 이러한 이유로, GE의 레이턴시는 84㎲보다 큰 마진(margin)(잔여 시간)을 포함하여 100㎲보다 적거나 동일한 시간 내에 5개의 홉들에 걸쳐 제어 프레임을 전송하는 것의 AVB 2세대 요건을 통과한다. GE에 대한 84㎲의 마진은 주기적 전송 시간 간격 내에 데이터의 다른 프레임들을 전송하는 데 사용될 수 있다. 이 전송은 개입 프레임이 없고 톡커의 출구 모듈(egress module)로의 그리고 톡커 외부로의 제어 프레임의 조직화된 전송에 근거한다. 조직화된 전송 타이밍이 없는 경우, 마진은 감소된다.
AVB 2세대를 위한 톡커의 최대 레이턴시는 톡커의 매체 액세스 제어기의 내부 지연 시간 tMAC, 최대 사이즈의 개입 프레임을 전송하기 위한 시간 tMAX, 클래스 A의 데이터를 전송하기 위한 시간 tA 및 100 미터의 케이블을 따라 비트들을 전송하기 위한 시간 tcable을 합함으로써 계산된다. 8개의 300바이트 클래스 A의 프레임들이 전송되고, 각각의 프레임이 20바이트 프리앰블 및 IFG를 가지며 그리고 MAC 지연이 1522바이트와 동일하다고 가정하면, 톡커에 대한 최대 레이턴시는 33.866㎲이고, 여기서 tMAC=0.512㎲, tMAX=12.336㎲, tA=20.48㎲ 및 tcable=0.538㎲이다. 33.866㎲의 최대 레이턴시는 마지막 프레임의 마지막 비트를 톡커로부터, 상기 톡커로부터 하류에 있는 네트워크 디바이스 또는 노드(예컨대, 브릿지 또는 수신기)로 전달하기 위한 총 시간이다. 최대 레이턴시는 쉐이퍼의 사용없이 계산된다(즉, IFG가 없고 제어 프레임들은 주기적 전송 시간 간격에 걸쳐 스프레드되지 않는다).
타입 II 전송을 위한 예시적 FE 마진 결정
예로서, FE 제어 프레임이 128바이트의 데이터를 가질 수 있다. 8개의 제어 프레임들이 예컨대, 500㎲의 주기적 전송 시간 간격 마다 전송될 수 있다. 제어 프레임들 각각은 20바이트의 프리엠블 및/또는 IFG 시간을 포함하여 전송될 수 있다. 그러면, 제어 프레임을 전송하기 위한 시간은 13.6㎲(즉 170바이트 * 8비트 * 10ns)와 동일할 수 있다. 8개의 프레임들에 대한 레이턴시는 1360바이트의 시간(즉 170바이트 * 8개의 프레임들)과 동일하다. 그 결과, 8개의 프레임들을 전송하기 위한 시간은 108.8㎲(즉 13.6㎲ * 8프레임들)이다. 8개의 프레임들을 전송하기 위한 시간은 요구되는 100㎲보다 길다. FE AVB 2세대 전송의 경우, 레이턴시가 5개의 홉들에 대해 100㎲보다 적거나 동일해야 되는 것이 요구된다. 이러한 이유로, 도 5에 도시된 (그리고 하기에 더 설명된) 바와 같이 프레임들의 조직화된 전송이 수행된다. 이러한 조정의 경우, 5개의 홉들에 걸친 레이턴시는 어떤 홉들에서도 정체가 없으면 100㎲이다. 따라서, FE를 사용할 때 주기적 전송 시간 간격 내에 정체를 야기할 수 있는 데이터의 다른 프레임들을 전송하기 위해 남아 있는 마진은 0이된다. 하나 이상의 비트의 개입이 있는 경우, 8개의 프레임들을 전송하기 위한 시간은 더 증가된다. 그 결과, FE를 사용한 데이터의 8개의 프레임들의 전통적인 전송은 AVB 2세대에 대한 레이턴시 요건들을 만족시키지 못한다.
다음의 도 4 및 5에서, 톡커, 4개의 브릿지들 및 청취자를 포함하는 네트워크에 대한 타이밍도들이 제공된다. 데이터가 톡커로부터 전송되고, 4개의 브릿지들을 통하여 통과되며 그리고 청취자에게 수신된다. 상기 브릿지들은 저장 및 포워딩 브릿지들이다(즉, 어떤 차단 쉐이퍼들도 사용되지 않는다). 도 4에서, 타이밍도(100)가 8개의 프레임들(A 내지 H)을 병렬로(즉, 동일한 시간 주기 동안) 수신함과 관련된 레이턴시를 예시하여 도시된다. 8개의 프레임들(A 내지 H)은 주기적 전송 시간 간격(104)(예컨대, 125㎲) 내에 톡커에 의해 수신 및 전송된다. 네트워크에 대한 레이턴시(106)는 8개의 프레임들(A 내지 H)의 마지막 비트가 톡커로부터 전송될 때로부터 제8 프레임(H)의 마지막 비트가 청취자에게서 수신될때까지 측정된다. 비록, 8개의 프레임들(A 내지 H)이 병렬로 수신되지만, 8개의 프레임들(A 내지 H)은 톡커 및 브릿지들로부터 순차적으로 전송된다. 톡커로부터의 전송은 톡커 출구에 따라 식별된다. 브릿지들로부터의 전송은 브릿지 출구에 따라 식별된다.
이제 도 5를 또한 참조하여, 타이밍도(100)이 조직화된 전송과 관련된 레이턴시를 예시하여 도시된다. 조직화된 전송은 프레임들의 각각의 순차적 쌍 사이에 IFG들을 포함하여 미리 결정된 시간 주기들에서 프레임들을 순차적으로 전송함을 나타낸다. 8개의 프레임들(A 내지 H)은 주기적 전송 시간 간격(104)(예컨대, 125㎲) 내에 톡커에 의해 수신 및 전송된다. 레이턴시(112)가 제8 프레임(H)의 마지막 비트가 톡커로부터 전송될 때부터 제8 프레임(H)의 마지막 비트가 청취자에게서 수신될때까지 측정되기 때문에, 조직화된 전송에 대한 레이턴시(112)는 병렬 전송에 대한 레이턴시(106)보다 적다.
각 128바이트 프레임에 대한 레이턴시는 톡커가 프레임을 전송하는 시간에 상기 프레임을 수신 및 포워딩하도록 하는 4개의 브릿지들 각각과 관련된 시간 지연들을 더한 것과 동일하다. 예로서, 톡커의 전송 시간은 150바이트의 시간 즉 12㎲(150바이트 * 8비트 * 10ns)일 수 있다. 150바이트의 시간은 128바이트에 22바이트의 오버헤드(예컨대, 프리앰블 및 IFG)를 더한 것을 포함한다. 각각의 브릿지가 프레임을 프로세스하는 시간은 10.00㎲(약 2개의 512비트 시간들)일 수 있다. 톡커로부터 프레임을 전송하고 브릿지들 중 하나를 통해 프레임을 프로세스하는 것과 관련된 레이턴시는 12.0㎲에 10.00㎲를 더한 것 즉 22.00㎲이다. 그 결과, 톡커로부터 프레임을 전송하고 네 개의 브릿지들을 통해 프레임을 프로세스하는 것과 관련된 레이턴시는 100.00㎲(12.0㎲ 더하기 4 * 22.00㎲)인 바, 이는 100㎲ 요건과 동일하다. 정체가 있는 경우, 이 레이턴시가 더 길어지고 더이상 레이턴시 요건들을 만족시키지 못한다. 정체가 비-시간 인식 시스템들의 일반적인 양상이기 때문에, 현재의 FE 시스템은 레이턴시 요건들을 만족시키지 못한다. 하기에 개시된 구현들은 100㎲ 레이턴시 요건보다 짧은 FE에 대한 레이턴시를 제공하도록 톡커 및 브릿지들의 전송들을 제어한다.
하기에 기술된 구현들은 비-자의적인 네트워크들(이하 네트워크들로서 지칭됨)에 의도된 것이다. 상기 네트워크들은 예컨대, 자동차 네트워크들, 제조 시설 네트워크들 및/또는 어셈블리 라인 네트워크들일 수 있다. 상기 네트워크들은 톡커들, 브릿지들, 수신기들 및 시간 변환기 디바이스(time translator device)들과 같은 다양한 네트워크 디바이스들을 포함할 수 있다. 비록, 각각의 네트워크 디바이스가 톡커, 브릿지, 수신기 및 시간 변환기 디바이스 중 하나로서 라벨링되지만은, 상기 네트워크 디바이스들 각각은 톡커, 브릿지, 수신기 및/또는 시간 변환기 디바이스로서 수행할 수 있다. 상기 네트워크 디바이스들 사이의 인터페이스들, 케이블들 및/또는 매체들이 제어기 영역 네트워크(CAN) 및/또는 FlexRay 인터페이스들 및 버스들, 카테고리(CAT) 5 통신 케이블들 또는 다른 적절한 인터페이스들, 케이블들 및/또는 매체를 포함할 수 있다.
데이터가 엔드 스테이션들로서 지칭되는 두 개의 네트워크 디바이스들 사이에서 네트워크를 통해 전송된다. 비록, 데이터가 제1 네트워크 디바이스 또는 제1 엔드 스테이션(예컨대, 톡커)으로부터 나머지 네트워크 디바이스 또는 나머지 엔드 스테이션(예컨대, 수신기)에 단일 방향으로 전송되는 것으로서 기술되지만, 데이터 전송은 네트워크 내에서 어떤 스테이션에서도 개시될 수 있고, 네트워크 내에서 어떤 스테이션에서도 수신될 수 있다. 상기 데이터는 서로 다른 대응하는 우선 순위 레벨들을 가질 수 있고 상기 우선 순위 레벨들에 근거하여 전송될 수 있다.
상기 우선 순위 레벨들은 예컨대, (클래스 A의 데이터로서 지칭되는) 보호된 클래스 A의 AVB 데이터, (클래스 B의 데이터로서 지칭되는) 보호된 클래스 B의 AVB 데이터 및 비 보호된 비-AVB 데이터를 포함할 수 있다. 보호된 데이터는 미리 결정된 대역폭(즉, 주기적 전송 시간 간격 당 할당된 시간 주기) 및 미리 결정된 최대 레이턴시(또는 미리 결정된 최대 레이턴시들)를 가진다. 특별한 우선 순위 레벨을 가진 보호된 데이터는 네트워크 내에서 네트워크 디바이스 당 미리 결정 최대 레이턴시 및/또는 엔드 스테이션들 사이의 총체적인(collective) 미리결정된 최대 레이턴시를 가질 수 있다.
클래스 A의 데이터는 최고 우선 순위 레벨을 가지고, 가장 짧은 레이턴시를 가질 수 있으며, 상기 데이터에는 제1의 미리 결정된 대역폭(즉, 주기적 전송 시간 간격 당 제1의 할당된 시간 주기) 및 제1의 미리 결정된 최대 레이턴시들이 제공된다. 클래스 A의 데이터는 제어 데이터를 포함할 수 있다. 예로서, 자동차 어플리케이션에서, 클래스 A의 데이터는 챠량의 엔진을 제어하고 브레이크들을 동작시키는 데 사용되는 데이터를 포함할 수 있다. 클래스 B의 데이터는 두 번째로 높은 우선 순위 레벨을 가지고, 클래스 A의 데이터보다 긴 레이턴시를 가질 수 있으며, 상기 데이터에는 제2의 미리 결정된 대역폭 및/또는 미리 결정된 최대 레이턴시들이 제공된다. 예로서, 자동차 어플리케이션에서, 클래스 B의 데이터는 오락 시스템 데이터를 포함할 수 있다. 비-AVB 데이터는 최저 우선 순위 레벨을 가지고, 이 데이터에는 미리 결정된 대역폭이 제공되지 않고 그리고/또는 미리 결정된 최대 레이턴시가 제공되지 않는다. 네트워크들에서, 데이터는 미리 결정된 사이즈의 버스트들로서 전송될 수 있고, 각각의 버스트는 우선 순위 레벨들 중 특별한 하나에 대한 데이터와 관련된다. 상기 버스트들은 주기적 전송 시간의 간격들 동안 할당된 시간들에서 발생할 수 있다. 예로서, 클래스 A의 데이터는 각각의 125㎲의 주기적 전송 시간 간격 도중 40㎲ 동안 네트워크 디바이스(톡커, 시간 변환기 디바이스 및/또는 브릿지)의 출구 모듈로부터 전송될 수 있다.
도 6에서, 타이밍도(118)가 클래스 A가 할당된 시간 주기들 또는 윈도우들 및 대응하는 주기적 전송 시간 간격들을 예시하여 도시된다. 클래스 A의 데이터가 주기적 전송 시간 각격들의 할당된 시간 윈도우들 내에서 톡커로부터 전송될 수 있다. 각각의 할당된 시간 윈도우는 시작 시간 t0을 가진다. 도 6에서, 두 개의 예시적 할당된 시간 윈도우들(120, 122) 및 대응하는 주기적 전송 시간 간격들(124, 126)이 도시된다. 주기적 전송 시간 간격들 각각은 사이클로서 나타내질 수 있다. 두 개의 주기적 전송 시간 간격들(124, 126)에 대한 사이클들이 n 및 n+1로 라벨링된다.
단지 예를 들어, FE에 대한 요건들이 500㎲(주기적 전송 시간 간격) 마다 8 개의 128바이트 프레임들의 전송을 포함할 수 있다. 주기적 전송 시간 간격들 각각 내에서 (낮은 레이턴시의 데이터로서 지칭될 수 있는) 클래스 A의 데이터에 대해 할당된 시간 윈도우는 108.8㎲일 수 있다. 8개의 프레임들의 경우, 이는: 128바이트의 데이터 및 22바이트의 오버헤드 데이터와 관련된 시간; 및/또는 프리앰블 및 IFG와 관련된 20바이트의 시간을 포함할 수 있다. 108.8㎲의 버스트 윈도우는 (비-저 레이턴시 데이터(non-low latency data)로서 나타내질 수 있는) 다른 데이터에 391.2㎲를 제공한다.
다른 예로서, GE에 대한 요건들은 500㎲ 마다 32개의 256바이트 프레임들의 전송을 포함할 수 있다. 주기적 전송 시간 간격들 각각 내에 클래스 A의 데이터를 위해 할당된 시간 윈도우는 76.288㎲일 수 있다. 32개의 프레임들의 경우, 이는 256바이트의 데이터 및 22바이트의 오버헤드 데이터와 관련된 시간; 및/또는 프리앰블 데이터 및 IFG와 관련된 20바이트의 시간을 포함할 수 있다. 76.288㎲의 버스트 윈도우가 다른 데이터(예컨대, 비-저 레이턴시 데이터)에 423.712㎲를 제공한다.
AVB 2세대 요건들을 만족시키기 위하여, 클래스 A의 데이터는 FE 및 GE 둘 모두에 대해 100㎲보다 적거나 동일한 지연으로 5개의 홉들에 걸쳐 전송되어야 한다. 비록, FE 및 GE가 본 명세서에 개시되지만, 본 명세서에 개시된 구현들은 다른 전송 속도들에 적용될 수 있다. 또한, 비록 구현들이 이더넷 네트워크들에 관하여 주로 기술되지만, 구현들은 다른 네트워크들에 적용될 수 있다.
도 7에서, 비-자의적인 네트워크(150)가 도시된다. 상기 비-자의적인 네트워크(150)는 하나 이상의 톡커들(세 개의 톡커들(152, 154, 156)이 도시된다), 하나 이상의 브릿지들(두 개의 브릿지들(158, 160)이 도시된다) 및 청취자(162)를 포함한다. 상기 톡커들(152, 154, 156)은 상기 톡커들이 청취자(162)에게 데이터를 전송하기 때문에 소스로서 지칭될 수 있다. 상기 청취자(162)는 상기 청취자(162)가 상기 톡커들(152, 154, 156)로부터 데이터를 수신하기 때문에 수신기로서 지칭될 수 있다. 상기 톡커들(152, 154, 156) 및 브릿지들(158, 160) 각각은 각각의 출구 모듈(164, 166, 168, 170, 172)을 포함할 수 있다. 상기 브릿지들(158, 160)은 정확한 타이밍 프로토콜들(PTP)을 제공하는 IEEE 802.1 AS를 만족시킬 수 있다. 상기 브릿지들(158, 160)은 엔드 스테이션들(예컨대, 상기 톡커들(152, 154, 156) 및 청취자(162)) 사이에 네트워크 디바이스들의 데이지 체인을 제공한다. 출구 모듈들(164, 166, 168, 170, 172) 각각은 각각의 쉐이퍼들(174, 176, 178, 180, 182) 및/또는 타이밍 모듈들(184, 186, 188, 190, 192)을 포함할 수 있다.
상기 쉐이퍼들(174, 176, 178, 180, 182)은 차단 쉐이퍼들 및/또는 차단 해제 쉐이퍼들을 포함할 수 있다. 차단 쉐이퍼들은 시간-비인식 차단 쉐이퍼들 및 시간-인식 차단 쉐이퍼들(TABS)을 포함할 수 있다. 시간-비인식 차단 쉐이퍼들, 시간-인식 차단 쉐이퍼들 및 차단 해제 쉐이퍼들의 예들이 도 10 내지 11 및 13 내지 15에 도시된다. 시간-인식 차단 쉐이퍼들은 그랜드 마스터 클록(200)에 의해 생성되는 글로벌 클록 신호에 근거하여 동작한다. 상기 그랜드 마스터 클록(200)은 네트워크(150)의 네트워크 디바이스들 중 어느 것에 위치될 수 있다. 상기 글로벌 클록 신호는 네트워크(150)에서 네트워크 디바이스들 중 어느 것과 공유될 수 있다. 예로서, 상기 그랜드 마스터 클록(200)은 제2 톡커(154)에 도시되지만, 다른 톡커들(152, 156) 중 하나, 브릿지들(158, 160) 중 하나, 청취자(162) 또는 네트워크(150)에 연결된 다른 네트워크 디바이스에 위치될 수 있다.
시간-인식 차단 쉐이퍼들은 비-최고 우선 순위 데이터(예컨대, 비-클래스 A의 데이터 또는 클래스 B의 데이터 및/또는 비-AVB 데이터)의 전송 시작을 지연시킬 수 있다. 이 지연은 최고 우선 순위의 데이터(예컨대, 클래스 A의 데이터)의 전송 타이밍에 근거하여 수행될 수 있다. 클래스 A 및 비-클래스 A의 데이터의 전송 타이밍은 우선 순위 타이밍 신호들을 생성하는 타이밍 모듈들(184, 186, 188, 190, 192)에 의해 제공될 수 있다. 각각의 우선 순위 타이밍 신호는 대응하는 데이터가 전송되도록 허용되거나 또는 허용되지 않는 윈도우를 나타낼 수 있다. 비-클래스 A의 데이터(또는 클래스 B의 데이터 및/또는 비 보호된 데이터)를 위해 생성된 우선 순위 타이밍 신호들은 각각의 주기적 전송 시간 간격에서 할당된 시간 주기에 근거하여 생성될 수 있다. 최고 우선 순위의 데이터(클래스 A의 데이터)는 할당된 시간 주기들 각각에서 전송된다. 이는 클래스 A 버스트들이 다른 데이터(비 최고 우선 순위 데이터)의 전송에 의해 간섭받지 않도록 출구 모듈의 출력이 휴지상태(idle)가 되게 한다.
그랜드 마스터 클록(200)을 포함하는 네트워크 디바이스 또는 네트워크(150) 내에 다른 네트워크 디바이스들 중 하나는 시간 관리 모듈(202)을 포함할 수 있다. 상기 그랜드 마스터 클록(200) 및/또는 시간 관리 모듈(202)을 가진 네트워크 디바이스는 마스터 디바이스로서 지칭될 수 있다. 상기 그랜드 마스터 클록(200) 및/또는 시간 관리 모듈(202)을 가지지 않은 디바이스들은 슬래이브 디바이스들로서 지칭될 수 있다. 상기 시간 관리 모듈(202)은 그랜드 마스터 클록(200) 및/또는 시간 간격 모듈(204)을 포함할 수 있다. 상기 시간 간격 모듈(204)은 주기적 전송 시간 간격(즉, 주기적 전송 시간 간격의 지속 기간) 및 상기 주기적 전송 시간 간격들 각각의 시작 시간들 t0를 설정할 수 있다. 상기 글로벌 클록 신호, 주기적 전송 시간 간격 및 상기 주기적 전송 시간 간격들의 시작 시간들 t0은 관리 정보 베이스(MIB) 모듈들 및/또는 간단한 관리 네트워크 프로토콜(SMNP)들을 이용하여 네트워크 디바이스들 사이에서 공유될 수 있다.
톡커(예컨대, 톡커(152))에 가장 가까운 브릿지(예컨대, 브릿지(158))는 시간 변환기 디바이스로서 수행할 수 있다. 시간 변환기 디바이스는 시간-인식 차단 쉐이퍼(들)이 없는 톡커와 시간-인식 차다 쉐이퍼(들)을 가진 브릿지 사이에 통합될 수 있다. 상기 브릿지는 단일 입력 포트 및 단일 출력 포트를 가질 수 있거나 또는 브릿지의 포트들 중 두 개가 동작가능할 수 있고 다른 포트들은 동작불가능할 수 있다. 브릿지의 출구 모듈은 포트들을 동작가능하게 그리고 동작불가능하게 할 수 있다. 시간 변환기 디바이스로서 동작하는 동안, 브릿지는 동작가능한 단일 입력 포트 및 동작가능한 단일 출력 포트를 가진다. 또한, (시간 변환기 모드에서 동작하는 것으로서 나타내지는) 시간 변환기 디바이스로서 동작하는 동안, 브릿지는 클래스 A의 프레임들 및/또는 비-클래스 A의 프레임들의 전송 타이밍을 조정하도록 클래스 A의 프레임들의 시간-인식 차단 해제 및/또는 비-클래스 A의 프레임들의 시간-인식 차단을 수행한다. 이는 도 10 및 대응하는 동작의 시간 변환기 모드에 관하여 하기에 더욱 상세히 기술된다.
청취자(162)는 브릿지들(158, 160)을 통해 톡커들(152, 154, 156)로부터 데이터를 수신한다. 상기 청취자(162)는 청취자 제어 모듈(210)을 포함할 수 있다. 상기 청취자 제어 모듈(210)은 톡커들(152, 154, 156)로부터 수신된 데이터에 근거하여 하나 이상의 센서들, 모터들, 액추에이터들 또는 네트워크의 다른 디바이스들을 동작 및/또는 모니터링 또는 동작시킬 수 있다.
상기 톡커들(152, 154, 156), 브릿지들(158, 160) 및/또는 청취자(162)는 유선 또는 무선 연결들 및/또는 매체들을 통해 서로와 통신할 수 있다. 상기 무선 연결들 및/또는 매체들은 예컨대, IEEE 표준들 802.11, 802.11a, 802.11b, 802.11g, 802.11h, 802.11n 802.16 및 802.20을 만족시킬 수 있다.
도 8에서, 도 7의 네트워크의 톡커들(152, 154, 156) 중 하나의 (도면 부호(220)으로 지정된) 예가 도시된다. 톡커(220)는 호스트 제어 모듈(222) 및 인터페이스 모듈(224)을 포함한다. 호스트 제어 모듈(222)은 예컨대, 프로세서를 포함하고, 인터페이스 모듈(224)에 서로 다른 우선 순위 레벨들의 데이터를 제공할 수 있다. 상기 데이터는 클래스 A의 데이터, 클래스 B의 데이터 및 비-AVB 데이터를 포함할 수 있다. 인터페이스 모듈(224)은 예컨대, 네트워크 인터페이스 카드 또는 다른 적절한 인터페이스일 수 있다. 인터페이스 모듈(224)은 톡커 진입 모듈(226) 및 톡커 출구 모듈(228)을 포함한다.
상기 톡커 진입 모듈(226)은 예컨대, 톡커 파싱 모듈(230) 및 톡커 메모리(232)를 포함할 수 있다. 상기 톡커 파싱 모듈(230)은 호스트 제어 모듈(222)로부터 데이터의 패킷들(234)을 수신하고, 상기 패킷들(234)을 파싱하며 그리고 상기 패킷들(234)의 프레임들에 제공된 헤더들에 근거하여 디스크립터들(236)을 생성할 수 있다. 디스크립터들(236) 각각은 대응하는 패킷 및/또는 프레임의 사이즈, 주기적 전송 시간 간격의 시작 시간, 주기적 전송 시간 간격의 길이, 및/또는 소스 및/또는 목적지 어드레스들을 포함할 수 있다. 수신된 각각의 패킷은 데이터의 미리 결정된 수의 프레임들을 포함할 수 있다. 상기 패킷들(234) 및 디스크립터들(236)은 톡커 메모리(232)에 저장되고 톡커 출구 모듈(228)로의 디스크립터 신호 내에 제공될 수 있다.
상기 톡커 출구 모듈(228)은 톡커 쉐이퍼들(240)(예컨대, 도 7의 톡커 쉐이퍼들(174, 176, 178)) 및 톡커 타이밍 모듈(242)(예컨대, 도 7의 톡커 타이밍 모듈들(184, 186, 188) 중 하나)를 포함한다. 상기 톡커 쉐이퍼들(240)은 상기 톡커 타이밍 모듈(242)로부터의 우선 순위 타이밍 신호들에 근거하여 동작한다. 상기 톡커 진입 모듈(226) 및/또는 톡커 출구 모듈(228)은 매체 액세스 제어기(MAC)를 포함할 수 있다.
도 9에서, 도 7의 브릿지들(158, 160) 중 하나의 (도면 부호(250)으로 지정된) 예가 도시된다. 브릿지(250)는 입력 포트들1 -N, 브릿지 진입 모듈(252), 브릿지 출구 모듈(254) 및 출력 포트들1 -M을 포함한다. 비록, 포트들 N, M이 입력 포트들 및 출력 포트들로서 라벨링되었지만, 포트들 N, M 각각은 입력 포트 및/또는 출력 포트로서 수행할 수 있다. 또한, 포트들 N, M 각각은 브릿지 진입 모듈(252) 및/또는 브릿지 출구 모듈(254)에 연결될 수 있다. 추가적으로, 브릿지(250)는 어떤 수의 입력 포트들 및 출력 포트들도 포함할 수 있다.
브릿지 진입 모듈(252)은 브릿지 파싱 모듈(256) 및 브릿지 메모리(258)를 포함한다. 상기 브릿지 파싱 모듈(256)은 톡커, 브릿지 및/또는 시간 변환기 디바이스로부터 데이터를 수신할 수 있다. 브릿지 파싱 모듈(256)은 수신된 패킷들(260)을 파싱하고 상기 패킷들(260)의 프레임들에 제공된 헤더들에 근거하여 디스크립터들(262)을 생성할 수 있다. 디스크립터들(262) 각각은 대응하는 패킷 및/또는 프레임의 사이즈, 주기적 전송 시간 간격의 시작 시간, 주기적 전송 시간 간격의 길이, 및/또는 소스 및/또는 목적지 어드레스들을 포함할 수 있다. 수신된 각각의 패킷은 데이터의 미리 결정된 수의 프레임들을 포함할 수 있다. 패킷들(260) 및 디스크립터들(262)은 브릿지 메모리(258)에 저장되고 브릿지 출구 모듈(254)로의 디스크립터 신호 내에 제공될 수 있다. 상기 브릿지 출구 모듈(254)은 브릿지 쉐이퍼들(264)(예컨대, 도 7의 브릿지 쉐이퍼(180, 182)) 및 브릿지 타이밍 모듈(266)(예컨대, 도 7의 브릿지 타이밍 모듈들(190, 192) 중 하나)을 포함한다. 브릿지 쉐이퍼들(264)은 브릿지 타이밍 모듈(266)로부터의 우선 순위 타이밍 신호들에 근거하여 동작한다. 브릿지 진입 모듈(252) 및/또는 브릿지 출구 모듈(254)은 MAC을 포함할 수 있다.
도 10에서, 네트워크 디바이스(270)가 도시된다. 상기 네트워크 디바이스(270)는 진입 모듈(272), 및 출구 네트워크(276)를 포함하는 출구 모듈(274)을 가진 데이터 차단 시스템(271)을 포함한다. 도 7의 네트워크(150)의 각각의 톡커들(152, 154, 156) 및 브릿지들(158, 160)은 네트워크 디바이스(270)와 교체될 수 있고 그리고/또는 진입 모듈(272) 및/또는 출구 모듈(274)을 포함할 수 있다. 상기 네트워크 디바이스(270)는 톡커, 브릿지 및 시간 변환기 디바이스로서 그리고 톡커 모드, 브릿지 모드 및 시간 변환기 모드를 가지는 바와 같이 동작할 수 있다.
진입 모듈(272)은 데이터의 프레임들(이하, 프레임들로서 지칭)을: 톡커의 호스트 제어 모듈; 브릿지; 및/또는 시간 변환기 디바이스로부터 수신한다. 진입 모듈(272)은 상기 프레임들을 파싱하고 출구 모듈(274)의 각각의 큐에 상기 프레임들을 제공한다. 출구 네트워크(276)는 단일 출력 포트(예컨대, 도 9의 출력 포트들 M 중 하나)와 관련될 수 있다. 상기 출구 모듈(274)은 다른 출력 포트들에 대해 유사한 출구 네트워크를 포함할 수 있다. 출구 네트워크(276)는 각각의 우선 순위 레벨들을 가진 큐들1 -X을 포함한다. 예로서, 출구 모듈(274)은 클래스 A의 데이터를 수신하는 하나 이상의 클래스 A의 큐들(278), 클래스 B의 데이터를 수신하는 하나 이상의 클래스 B의 큐들(280) 및 비-AVB 데이터를 수신하는 하나 이상의 비-AVB 큐들(282)을 포함할 수 있다. 큐들1 -X 각각은 레지스터로서 수행하고 각각의 우선 순위 레벨을 가진 프레임들을 저장할 수 있다.
또한, 출구 네트워크(276)는 타이밍 모듈(290), 타이밍-인식 차단 해제 쉐이퍼(282)(차단 해제 쉐이퍼 fD로서 도 10에 도시되고 이하 차단 해제 쉐이퍼로서 지칭되는 TADS), (차단 쉐이퍼들 fQ로서 도 10에 도시된)시간-비인식 차단 쉐이퍼들(294), 시간-인식 차단 쉐이퍼들(296)(차단 쉐이퍼들 fB로서 도 10에 도시된 TABS들), 선택기 모듈(298), 활성화 모듈(300) 및 제1 멀티플렉서(302)를 포함한다. 시간-비인식 차단 쉐이퍼들(294) 및 시간-인식 차단 쉐이퍼들(296)은 차단 쉐이퍼로서 개별적으로 그리고/또는 차단 쉐이퍼들로서 집합적으로 지칭될 수 있다. 차단 해제 쉐이퍼(292) 및 차단 쉐이퍼들(294, 296)은 각각 쉐이퍼 모듈로서 지칭될 수 있다.
타이밍 모듈(290)은 차단 해제 쉐이퍼(292) 및 시간-인식 차단 쉐이퍼들(296) 각각에 대한 우선 순위 타이밍 신호들을 생성한다. 우선 순위 타이밍 신호들 각각은 시간 윈도우를 제공하는 바, 상기 시간 윈도우에서 차단 해제 쉐이퍼(292) 및 시간-인식 차단 쉐이퍼들(296)은 데이터 통과를 가능하게 하거나 또는 데이터가 선택기 모듈(298)에 의해 선택되는 것을 차단하기 위한 것이다. 차단 해제 쉐이퍼(292)에 대해 생성된 우선 순위 타이밍 신호는 상기 차단 해제 쉐이퍼(292)가 클래스 A의 프레임들이 제1 멀티플렉서(302)로 통과하는 것을 차단하지 않아야 될 때를 나타낼 수 있다. 시간-인식 차단 쉐이퍼들(296)에 대해 생성된 상기 우선 순위 타이밍 신호들은 상기 시간-인식 차단 쉐이퍼들(296)이 클래스 B의 큐들 및 비-AVB 큐들 내의 데이터를 차단해야 할 때를 나타낼 수 있다. 상기 시간-인식 차단 쉐이퍼들(296)은 동일한 우선 순위 타이밍 신호를 각각 수신할 수 있거나 또는 각각의 우선 순위 타이밍 신호들을 수신할 수 있다.
네트워크 디바이스(270)는 어떤 수의 차단 해제 쉐이퍼들 및 차단 쉐이퍼들도 포함할 수 있다. 차단 해제 쉐이퍼들 및 차단 쉐이퍼들의 수는 클래스 A의 큐들, 클래스 B의 큐들 및 비-AVB 큐들의 수에 따라 좌우될 수 있다. 클래스 A의 큐들은 대응하는 차단 해제 쉐이퍼를 각각 가질 수 있다. 차단 해제 쉐이퍼들 및 대응하는 전송 경로들은 낮은 우선 순위 레벨을 가진 다른 전송 경로들로부터의 간섭이 방지되기 때문에 최저 레벨의 레이턴시를 제공한다.
차단 해제 쉐이퍼(292)는 데이터가 적절한 시간들에 예컨대, 톡커 및/또는 시간 변환기 디바이스로부터 전송되도록 하는 데 사용될 수 있다. 톡커 모드에서 동작할 때, 네트워크 디바이스(270)는 클래스 A 버스트에 앞서 클래스 A의 큐(278)에 클래스 A의 프레임들을 로딩(load up)할 수 있다. 클래스 A 버스트는 주기적 전송 시간 간격 내에 미리 결정된 주기 동안 클래스 A의 큐(278)로부터 클래스 A의 프레임들을 포워딩하고 네트워크 디바이스(270)로부터 클래스 A의 프레임들을 전송하는 것을 포함한다. 상기 차단 해제 쉐이퍼(292)는 클래스 A 버스트가 시작되는 때를 제어하고 또한, 상기 클래스 A 버스트 동안 클래스 A의 프레임들의 전송 타이밍을 제어한다. 상기 클래스 A 버스트 동안, 시간-인식 차단 쉐이퍼들(296)은 비-클래스 A의 큐들이 휴지상태가 되도록 비-클래스 A의 프레임들(예컨대, 클래스 B의 프레임들 또는 비-AVB 데이터)의 전송을 차단한다.
클래스 A의 큐들(278) 및 클래스 B의 큐들(280)은 대응하는 시간-비인식 차단 쉐이퍼(예컨대, 시간-비인식 차단 쉐이퍼들(294) 중 하나)를 각각 가질 수 있다. 클래스 B의 큐들(280) 및 비-AVB 큐들(282)은 대응하는 시간-인식 차단 쉐이퍼(예컨대, 시간-인식 차단 쉐이퍼들(296) 중 하나)를 각각 가질 수 있다. 시간-비인식 차단 쉐이퍼들(294)은 차단 해제 쉐이퍼(292) 및 시간-인식 차단 쉐이퍼들(296) 중 각 쉐이퍼와 직렬로 연결된다. 시간-비인식 차단 쉐이퍼들(294)은 프레임들의 전송의 속도를 유지(pace)하는 데 사용되고, IEEE 802.1 Qav를 만족시킬 수 있다. 시간-인식 차단 쉐이퍼들(296)은 선택기 모듈(298)이 클래스 A의 프레임들의 전송 주기들 동안 클래스 B의 큐들(280)에서 그리고 비-AVB 큐들(282)에서 프레임들을 선택하는 것을 차단시킨다. 이는 다른 프레임들과 클래스 A의 프레임들의 간섭을 방지하고 클래스 A의 프레임들의 레이턴시를 최소화한다.
시간-비인식 차단 쉐이퍼들(294)은 선택기 모듈(298)에 대하여 차단 해제 쉐이퍼(292) 및 시간-인식 차단 쉐이퍼들(296)과 병행하여 동작할 수 있다. 예를 들어, 클래스 A의 데이터는 차단 해제 쉐이퍼(292) 및 시간-비인식 차단 쉐이퍼들(294) 중 대응하는 하나에 근거하여 클래스 A의 큐(278)로부터 제1 멀티플렉서(302)로 통과할 수 있다. 클래스 B의 데이터는 시간-비인식 차단 쉐이퍼들(294) 및 시간-인식 차단 쉐이퍼들(296) 중 대응하는 쉐이퍼들에 근거하여 클래스 B의 큐들(280)로부터 상기 제1 멀티플렉서(302)로 통과할 수 있다.
큐들1 -X, 차단 해제 췌이퍼(292) 및 차단 쉐이퍼들(294, 296) 각각은 관련된 전송 경로를 가진다. 각각의 전송 경로는 큐들1 -X 중 각 큐를 포함하고 하나 이상의 차단 해제 쉐이퍼(292) 및 차단 쉐이퍼들(294, 296)을 포함할 수 있다. 차단 해제 쉐이퍼(292) 및 차단 쉐이퍼들(294, 296) 각각은 각각의 차단 해제 및 차단 신호들을 생성한다. 차단 해제 및 차단 신호들은 선택기 모듈(298)에 의해 수신되고, 프레임이 대응하는 큐에 있고 제1 멀티플렉서(302)에 포워딩될 준비가 된 때를 나타낸다.
프레임은 큐 내에 있을 수 있고, 대응하는 차단 해제 또는 차단 신호는 큐에 프레임이 없음을 그리고/또는 상기 프레임이 선택될 준비가 되지 않았음을 나타낼 수 있다. 차단 해제 또는 차단 신호는 프레임이 없음을 그리고/또는 상기 프레임이 대응하는 우선 순위 타이밍 신호에 근거하여 전송될 준비가 되지 않았음을 나타낼 수 있다. 이는 적절한 시간들에 프레임들의 전송을 차단시킨다. 예로서, 시간-인식 차단 쉐이퍼들(296) 중 하나는 클래스 B의 프레임이 클래스 B의 큐(280)에 있을 때 차단 신호를 생성할 수 있다. 상기 차단 신호는 클래스 B의 프레임이 클래스 B의 큐(280)에 있지 않음을 나타낼 수 있고, 그로 인해 상기 선택기 모듈(298)이 예컨대, 클래스 A의 프레임의 전송 주기에 앞서 그리고/또는 상기 전송 주기 동안 클래스 B의 프레임을 선택하는 것을 방지한다. 이는 클래스 A의 프레임과의 전송 간섭을 방지한다.
선택기 모듈(298)은 큐들1 -X로부터 프레임들을 선택하도록 제1 멀티 플렉서(302)에 의해 수신되는 선택 신호를 생성한다. 상기 선택기 모듈(298)은 엄격한(strict) 스타일의 선택기일 수 있다. 엄격한 스타일의 선택기는 다음으로 높은 우선 순위 레벨의 큐로부터의 프레임들의 전송을 허용하기 이전에, 프레임들을 가진 최고 우선 순위 레벨의 큐 내의 모든 프레임들이 전송되게 한다. 이는 엄격한 선택기가 프레임들이 큐들 내에 있는지를 결정하는 것을 포함하여 큐들의 상태들을 직접 모니터링할 때 발생한다.
다음의 구현들에서, 선택기 모듈(298)이 큐들1 -X의 상태들을 직접 모니터링하는 대신에, 상기 선택기 모듈(298)은 차단 해제 쉐이퍼(292) 및/또는 차단 쉐이퍼들(294, 296)로부터 수신된 차단 해제 또는 차단 신호들을 모니터링한다. 그 다음, 선택기 모듈(298)은 차단 해제 또는 차단 신호들에 근거하여 큐로부터 프레임의 통과를 가능하게 하는 선택 신호를 생성한다. 차단 해제 쉐이퍼(292) 및 차단 쉐이퍼들(294, 296)은 선택기 모듈(298)이 큐들1 -X 내에 있는 프레임들을 직접 "보는 것(seeing)"을 방지한다.
활성화 모듈(300)은 네트워크 디바이스(270)의 동작 모드에 근거하여 차단 해제 쉐이퍼(292) 및 차단 쉐이퍼들(294, 296)을 동작가능 및 동작 불가능하게 한다. 예를 들어, 톡커 모드 및/또는 시간 변환기 모드에서 동작할 때, 차단 해제 쉐이퍼(292)가 동작가능할 수 있다. 시간-비인식 차단 쉐이퍼들(294)은 클래스 A의 프레임들의 레이턴시를 감소시키기 위해 동작 불가능할 수 있다. 시간-인식 차단 쉐이퍼들(296)은 동작가능할 수 있다. 일 구현에서, 시간-인식 차단 쉐이퍼들(296)은 동작 불가능하다. 다른 예로서, 브릿지 모드에서 동작할 때, 차단 해제 쉐이퍼(292)는 동작 불가능할 수 있고 차단 쉐이퍼들(294, 296)은 동작가능할 수 있다.
다른 예로서, 네트워크 디바이스(270)가 프로-오디오 환경(pro-audio environment)에서 사용되면, 시간-비인식 차단 쉐이퍼들(294)은 동작가능할 수 있고 차단 해제 쉐이퍼(292)는 동작 불가능할 수 있다. 또 다른 예로서, 자동차 환경에서 클래스 A의 프레임들이 전송될 때, 시간-비인식 차단 쉐이퍼들(294)은 동작 불가능할 수 있고 차단 해제 쉐이퍼(292)는 동작가능 할 수 있다. 이는 클래스 A의 프레임들의 레이턴시를 감소시키고 또한, 미리 결정된 대역폭 및 최소 프레임 레이턴시 요건들이 만족되게끔 할 수 있다.
시간 변환기 모드에서 동작할 때, 네트워크 디바이스(270)는 차단 해제를 제공하도록 톡커의 출력에 연결될 수 있다. 네트워크 디바이스(270)는 시간 변환기 디바이스로서 구성되고, 차단 해제를 제공하고 클래스 A의 프레임들의 전송 타이밍을 조정하도록 시간-비인식 톡커의 출력에서 포함될 수 있다. 상기 네트워크 디바이스(270)는 단일 입력 포트 및 단일 출력 포트를 동작가능하게 하고 다른 포트들을 동작 불가능하게 할 수 있다. 이는 클래스 상기 톡커가 A의 프레임들이 적절한 시간에 전송되도록 하는 차단 해제 쉐이퍼들 및/또는 시간-인식 차단 쉐이퍼들을 포함하지 않을 때 수행될 수 있다. 적절한 시간에 클래스 A의 프레임들을 전송하는 것은: 주기적 전송 시간 간격들의 미리 정해진 시작 시간(들) t0에서 클래스 A의 프레임들의 전송; 및 주기적 전송 시간 간격들의 미리 정해진 클래스 A 버스트 윈도우들 동안 적절한 시간에 클래스 A의 프레임들의 전송을 개시하는 것을 포함한다.
또한, 출구 모듈(274)은 컷-스루 모드(cut-through mode)에서 동작하고 컷-스루 모듈(310) 및 제2 멀티플렉서(312)를 포함할 수 있다. 상기 컷-스루 모듈(310) 및 제2 멀티플렉서(312)는 최고 우선 순위 프레임들(예컨대, 클래스 A의 프레임들)의 레이턴시를 더욱 최소화시키는 데 사용된다. 상기 컷-스루 모듈(310)은 (도면 부호(313)으로 지정된)글로벌 클록 신호를 수신하고 상기 신호에 근거하여 동작함으로써 시간을 인식할 수 있다. 상기 컷-스루 모듈(310)은 시간-인식 컷-스루 쉐이퍼(TACS)로서 지칭될 수 있다.
컷-스루 모듈(310)은 네트워크 디바이스(270)의 출력(314)(예컨대, 출력 포트)에서의 활동을 모니터링하고 클래스 A의 프레임들이 진입 모듈(272)로부터 클래스 A의 큐들(278), 대응하는 차단 해제 쉐이퍼(292) 및/또는 시간-비인식 차단 쉐이퍼들(294) 및 제1 멀티플렉서(302)를 바이패싱하여 제2 멀티플렉서(312)로 통과하게끔 한다. 출력(314)에서의 활동은 도시된 바와 같이 직접적으로 모니터링될 수 있거나 또는 컷-스루 모듈(310)은 선택기 모듈(298) 및/또는 출구 모듈(274)에 의해 생성된 라인 활동 신호를 수신할 수 있다. 상기 라인 활동 신호는 출력에서 데이터 전송 활동이 존재하는지 나타낼 수 있다.
컷-스루 모듈(310)은 제1 멀티플렉서(302)의 출력(315) 및 진입 모듈(272)의 데이터 출력(316) 중 하나를 선택하도록 하는 제2 선택 신호를 생성한다. 상기 제2 멀티플렉서(312)는 상기 제2 선택 신호를 수신하고 상기 제2 선택 신호에 근거하여 출력(315) 또는 출력(316)으로부터 클래스 A의 프레임들을 포워딩한다. 출력(316)으로부터의 클래스 A의 프레임들의 전송은 타입 3의 데이터 전송으로서 지칭될 수 있다.
컷-스루 모듈(310)에 의해 수행되는 바이패싱은 진입 모듈(272)이 전송된 패킷들의 모든 클래스 A의 프레임들을 수신하기에 앞서 그리고/또는 클래스 A의 프레임의 모든 비트들을 수신하기에 앞서 발생될 수 있다. 클래스 A의 데이터의 미리 결정된 수의 바이트(예컨대, 64바이트)들이 진입 모듈에 의해 수신된 이후에, 상기 바이트들은 진입 모듈(272)로부터 제2 멀티플렉서(312)로 통과될 수 있다. 상기 미리 결정된 수의 바이트들은 예컨대, 헤더 데이터와 관련될 수 있다. 상기 헤더 데이터는 소스 및 타겟 어드레스들, 프레임 사이즈, 데이터 타입 및/또는 다른 패킷 및/또는 프레임 정보를 포함할 수 있다.
시간-인식 차단 쉐이퍼들(296)이 클래스 A 버스트들 동안 데이터의 비-클래스 A의 프레임들을 차단시키기 때문에, 출력(314)은 휴지상태이고 클래스 A의 프레임들은 제2 멀티플렉서(312)를 통해 출력(314)으로 직접 통과될 수 있다. 이는 클래스 A의 큐(278) 및 대응하는 쉐이퍼들(292, 294)에 프레임들을 저장하는 것과 관련된 레이턴시들을 제거한다.
컷-스루 모듈(310)이 동작가능하고 클래스 A의 프레임들을 바이패싱 하는 데 사용되면, 브릿지에 대한 클래스 A의 프레임들의 최대 레이턴시는 브릿지의 시간 지연 tBridge에 컷-스루 포인트(예컨대, 제2 멀티플렉서)와 관련된 시간 지연 tCut을 더하고 케이블 최대 전송 시간 tCable을 더한 것과 동일하다. 예로서, 두 개의 슬롯 시간들의 브릿지 지연(또는 1.024㎲) 및 하나의 슬롯 시간의 컷-스루 지연 시간(0.512㎲)을 포함하여, 최대 레이턴시는 최대 케이블 전송 시간 tCable이 0.538㎲일 때 2.074㎲일 수 있다. 이 레이턴시는 모든 클래스 A의 비트들이 브릿지에 의해 수신되기에 앞서 클래스 A의 비트들이 브릿지로부터 전송되기 때문에 그리고/또는 클래스 A의 비트들이 진입 모듈(272)로부터 출력되기 때문에 전송되는 클래스 A의 프레임들의 사이즈와 관계없이 제공된다. 타입 3의 전송들과 관련된 레이턴시는 타입 1(예컨대, 13.898㎲) 및 타입 2(예컨대, 4.122㎲) 전송들과 관련된 레이턴시보다 짧다.
컷-스루 모듈(310)은 클래스 A의 큐(들)에 클래스 A의 프레임들을 제공하는 대신에 제2 멀티플렉서(312)로 클래스 A의 프레임들을 바이패스(bypass)하도록 진입 모듈(272)에 신호를 줄 수 있다. 상기 컷-스루 모듈(310)은 도시된 바와 같이 출구 모듈(274)에 존재하는 대신에 진입 모듈(272)에 포함될 수 있다.
이제 도 11을 또한 참조하여, 시간-비인식 차단 쉐이퍼(320)가 도시된다. 상기 시간-비인식 차단 쉐이퍼(320)는 도 10의 시간-비인식 차단 쉐이퍼들(294) 중 어느 한 쉐이퍼를 대체할 수 있다. 상기 시간-비인식 차단 쉐이퍼(320)는 글로벌 클록 신호에 근거하여 동작하지 않을 수 있다. 시간-비인식 차단 쉐이퍼(320)는 로컬 클록(321)에 근거하여 동작할 수 있다. 상기 로컬 클록(321)은 글로벌 클록 신호에 독립적인 클록 신호를 생성할 수 있다. 상기 시간-비인식 차단 쉐이퍼(320)는 전송에 앞서 데이터의 프레임들을 스프레드시키고 선택기 모듈(298)이 보호된 데이터를 포함하는 큐들(278, 280) 내의 프레임들을 "보는 것"을 방지한다. 이는 데이터의 순차적 프레임들의 각각의 쌍 사이에 IFG들을 제공하는 것을 포함한다.
시간-비인식 차단 쉐이퍼(320)는 제1 카운터(322) 및 큐 모니터링 모듈(324)을 포함한다. 제1 카운터(322)는 모니터링되는 큐(326)(예컨대, 큐들(278, 280) 중 하나)에 대한 신용(credit)들을 카운팅한다. 큐 모니터링 모듈(324)은 큐(326)에 프레임이 존재하는지 모니터링하고, 프레임이 상기 큐(326)에 존재하며 상기 큐(326)로부터 제1 멀티플렉서(302)로 통과하도록 허용되지 않았을 때 제1 카운터(322)를 증분시킨다. 상기 큐 모니터링 모듈(324)은 프레임이 제1 멀티플렉서(302)로 통과될 때 제1 카운터(322)를 감분시킨다. 상기 제1 카운터(322)는 상기 큐(326)와 관련된 제1 카운트를 최대화하는 상한(high limit)을 가질 수 있다. 또한, 상기 제1 카운터(322)는 상기 큐(326)와 관련된 제1 카운트를 최소화하는 하한(low limit)을 가질 수 있다.
이제 도 12를 또한 참조하여, 시간에 걸쳐 시간-비인식 차단 쉐이퍼(320)에 대한 카운트 값들을 예시하는 그래프(330)가 도시된다. 프레임이 큐로부터 제1 멀티플렉서(302)로 통과하도록 허용되지 않았을 때의 제1 카운트의 증분들이 제1 선분(332)에 의해 표시된다. 프레임은 간섭(즉, 하나 이상의 다른 큐들1 -X 내의 프레임(들)이 전송되는 것)으로 인해 통과하도록 허용되지 않을 수 있다. 그 다음, 제1 카운트는 상한(334)에 도달하고 현재의 카운트 값에서 유지된다. 그 다음, 프레임들은 제1 멀티플렉서(302)로 통과하도록 허용되고 상기 제1 카운트는 제1 수직 선분(336)에 의해 표시된 바와 같이 감분된다. 그 다음, 상기 제1 카운트는 프레임이 큐(326)로부터 제1 멀티플렉서(302)로 통과되지 못할 때 선분(338)에 의해 표시된 바와 같이 다시 증분될 수 있다.
큐에 어떠한 프레임들도 존재하지 않을 때 제1 카운트는 선분(340)에 의해 표시된 바와 같이 0으로 리셋될 수 있다. 제1 카운트가 0에 존재함에 후속하여 프레임이 큐(326)에 도착하고 전송되며 간섭이 없을 때, 상기 제1 카운트는 하한(342)까지 감분될 수 있다. 상기 카운트는 큐 내에 전송될 어떤 프레임들도 없을 때 선분(344)에 의해 표시된 0으로 증가될 수 있다. 상술된 증분 및 감분은 로컬 클록(321), 미리 결정된 시간 간격들 및/또는 (도면 부호(346)로 지정된)라인 상태 신호에 근거할 수 있다.
상기 라인 상태 신호(346)는 데이터가 출구 모듈(274)로부터 전송되는지 나타낼 수 있다. 상기 라인 상태 신호(346)는 제1 멀티플렉서(302)의 출력, 제2 멀티플렉서(312)의 출력을 나타낼 수 있고, 그리고/또는 선택기 모듈(298) 및/또는 출구 모듈(274)에 의해 생성될 수 있다.
큐 모니터링 모듈(324)은 제1 카운터(322)의 제1 카운트에 근거하여 제1 차단 신호(350)를 생성한다. 상기 제1 차단 신호(350)는 진입 모듈(272)로부터의 디스크립터 신호(352)에 근거하여 생성될 수 있다. 상기 디스크립터 신호(352)는 큐(326)에 프레임이 존재할 때를 나타낼 수 있다. 데이터가 상기 큐 모니터링 모듈(324)을 통해 큐(326)로부터 (도면 부호(354)로 지정된)대응하는 차단 해제 쉐이퍼 또는 시간-인식 차단 쉐이퍼(그 다음, 제1 멀티플렉서(302)가 뒤따른다)로 통과된다.
도 10 및 13을 참조하여, 차단 해제 쉐이퍼(360)가 도시된다. 상기 차단 해제 쉐이퍼(360)는 도 10의 네트워크 디바이스(270)의 차단 해제 쉐이퍼(292) 또는 다른 차단 해제 쉐이퍼를 대체할 수 있다. 차단 해제 쉐이퍼(360)는 클래스 A의 데이터가 큐(362)로부터 제1 멀티플렉서(302)로 포워딩 및/또는 출구 모듈(274) 및 네트워크 디바이스(270)로부터 전송되도록 될 때의 시간 윈도우까지 대응하는 최고 우선 순위 레벨 큐(362)(예컨대, 큐(278)) 내의 데이터를 차단시킨다. 상기 차단 해제 쉐이퍼(360)는 로직 모듈(364) 및 데이터 통과 모듈(366)을 포함한다. 로직 모듈(364)은 (최고 우선 순위 진행 신호(highest priority go signal)로서 지칭되는)제1 우선 순위 타이밍 신호(368) 및 제1 프레임 신호 PKT1을 수신한다. 상기 제1 우선 순위 타이밍 신호(368)는 클래스 A의 프레임들의 전송이 허용되는 때를 나타낼 수 있다. 상기 제1 프레임 신호 PKT1은 데이터 통과 모듈(366)에 의해 생성될 수 있고 큐(362)에 프레임이 존재할 때를 나타낼 수 있다.
로직 모듈(364)은 도시된 바와 같은 NAND 게이트 및/또는 다른 적절한 로직 디바이스들을 포함할 수 있다. 상기 NAND 게이트는 제1 우선 순위 타이밍 신호(368) 및 제1 프레임 신호 PKT1을 수신하고 제1 통과 신호 PASS1을 생성할 수 있다. 상기 제1 통과 신호 PASS1은 클래스 A의 프레임들이 큐(362)로부터 제1 멀티플렉서(302)로 통과하도록 될 때를 나타낸다. 상기 데이터 통과 모듈(366)은 제1 통과 신호 PASS1에 근거하여 차단 해제 신호(370)를 생성하고, 디스크립터 신호(352) 및/또는 라인 상태 신호(346)에 근거하여 차단 해제 신호(370)를 생성할 수 있다.
도 10 및 14를 참조하여, 시간-인식 차단 쉐이퍼(380)가 도시된다. 상기 시간-인식 차단 쉐이퍼(380)는 도 10의 시간-인식 차단 쉐이퍼들(296) 중 어느 한 쉐이퍼를 대체할 수 있다. 상기 시간-인식 차단 쉐이퍼(380)는 클래스 A의 데이터가 제1 멀티플렉서(302)에 포워딩되거나 그리고/또는 네트워크 디바이스(270) 외부로 전송되는 동안 대응하는 큐(382)(예컨대, 큐들(280, 282) 중 하나) 내의 데이터를 차단시킨다. 상기 시간-인식 차단 쉐이퍼(380)는 로직 모듈(384) 및 데이터 통과 모듈(386)을 포함한다.
로직 모듈(384)은 (블록 최저의 우선 순위들 신호(block lowest priorities signal)로서 지칭되는)제2 우선 순위 타이밍 신호(388) 및 제2 프레임 신호 PK2를 수신한다. 제2 우선 순위 타이밍 신호(388)는 클래스 B의 프레임들 및/또는 비-AVB 프레임들의 전송이 허용되지 않았을 때를 나타낸다. 상기 제2 프레임 신호 PKT2는 데이터 통과 모듈(386)에 의해 생성될 수 있고, 큐(382)에 프레임이 존재할 때를 나타낼 수 있다.
로직 모듈(384)은 비-반전 입력(390) 및 반전 입력(392)을 포함하여 도시된 바와 같은 NAND 게이트 및/또는 다른 적절한 로직 디바이스들을 포함할 수 있다. 상기 비-반전 입력은 제2 프레임 신호 PKT2를 수신할 수 있다. 상기 반전 입력(392)은 제2 우선 순위 타이밍 신호(388)를 수신할 수 있다. 상기 로직 모듈(384)은 제2 통과 신호 PASS2를 생성한다. 상기 제2 통과 신호 PASS2는 클래스 B의 프레임들 및/또는 비-AVB 프레임들이 큐(382)로부터 제1 멀티플렉서(302)로 통과하도록 허용될 때를 나타낸다. 데이터 통과 모듈(386)은 상기 제2 통과 신호 PASS2에 근거하여 제2 차단 신호(394)를 생성하고, 디스크립터 신호(352) 및/또는 라인 상태 신호(346)에 근거하여 상기 제2 차단 신호(394)를 생성할 수 있다.
도 10 및 15를 참조하여, 프레임 사이즈-기반 차단 쉐이퍼(400)가 도시된다. 상기 프레임 사이즈-기반 차단 쉐이퍼(400)는 도 10의 시간-인식 차단 쉐이퍼들(296) 중 어느 한 쉐이퍼를 대체할 수 있다. 상기 프레임 사이즈-기반 차단 쉐이퍼(400)는 로직 모듈(384), 및 제2 카운터(404)를 가진 데이터 통과 모듈(402)을 포함할 수 있다. 상기 로직 모듈은 제2 우선 순위 타이밍 신호(388), 제2 프레임 신호 PKT2를 수신하고, 제2 통과 신호 PASS2를 생성한다. 상기 데이터 통과 모듈은 큐(382)에 프레임이 존재하는지에 근거하여 제2 프레임 신호 PKT2를 생성한다. 상기 데이터 통과 모듈(402)은 제2 통과 신호 PASS2, 제2 카운터(404)의 제2 카운트, 디스크립터 신호(352), 글로벌 클록 신호(313) 및/또는 라인 상태 신호(346)에 근거하여 제2 차단 신호(406)를 생성한다.
이제 도 10 및 15를 참조하여, 데이터 통과 모듈(402)은 라인의 헤드 프레임들이 상기 라인의 헤드 프레임들의 사이즈들 및 다음 클래스 A 버스트 이전에 남아있는 시간에 근거하여 제1 멀티플렉서(302)로 통과하게끔 한다. 라인의 헤드 프레임은 큐로부터 제1 멀티플렉서(302)로 포워딩될 상기 큐 내의 다음 프레임을 나타낸다.
비-클래스 A의 큐들(280, 282) 중 어느 큐 내의 데이터가 다음 클래스 A 버스트 윈도우에 앞서 차단될 수 있다. 예를 들어, 비-클래스 A의 큐는 다음 클래스 A 버스트 윈도우에 앞서 전송될 준비가 된 라인의 헤드 프레임(예컨대, 1522바이트)을 가질 수 있다. 라인의 헤드 프레임이 클래스 A 버스트 윈도우의 시작 이전에 완전히 전송될 수 없으면, 차단 쉐이퍼는 라인의 헤드 프레임의 전송을 차단(지연)시킬 수 있다. (도 15의) 비-클래스 A의 큐 내의 프레임보다 적은 바이트(예컨대, 64바이트)를 가진 비-클래스 A의 큐들 중 다른 하나의 큐 내의 프레임이 멀티플렉서로 통과되도록 허용될 수 있는 바, 그 이유는 더 작은 프레임은 다음 클래스 A 버스트 윈도우에 앞서 전송될 수 있기 때문이다.
제2 카운터(404)는 미리 결정된 최대 프레임 사이즈(예컨대, 1522)와 동일한 카운트 값에서 카운팅을 시작하며 차단 윈도우의 시작에서 시작하여 감분될 수 있다. 제2 카운터(404)는 큐(382) 내의 라인의 헤드 프레임 내의 바이트의 수가 제2 카운트보다 클 때, 통과하는 프레임들로부터 대응하는 큐(382)를 게이트 오프(gate off)시키는 데 사용될 수 있다. 클래스 A 버스트 윈도우에 앞서 완전히 전송될 수 있는 라인의 헤드 프레임을 가진 비-클래스 A의 큐가 차단되지 않을 수 있다. 이는 도 16a 내지 16e 및 17에 관하여 더 기술된다.
도 16a 내지 16e에서, 브릿지(410)를 통한 프레임 사이즈-기반 데이터 진행들이 도시된다. 상기 브릿지(410)는 도 7의 브릿지들(158, 160) 중 하나일 수 있다. 상기 브릿지(410)는 메모리(414)를 포함하는 진입 모듈(412), 클래스 A의 큐(416), 클래스 B의 큐(417), 제1 비-AVB 큐(418), 제2 비-AVB 큐(419)(예컨대, 도 10의 큐들1 -X), 멀티플렉서(420)(예컨대, 도 10의 제1 멀티플렉서(302)) 및 출력 포트(422)를 포함한다. 상기 제1 비-AVB 큐(418)는 관리 데이터를 저장할 수 있고, 상기 제2 비-AVB 큐(419)는 레거시 데이터를 저장할 수 있다. 상기 브릿지(410)는 도 10의 네트워크 디바이스(270)와 유사하게 구성될 수 있다. 비록 도 16a 내지 16e에 도시되지 않더라도, 브릿지(410)는 큐들(416 내지 419) 중 각각의 큐들과 멀티플렉서(420) 사이에 프레임 사이즈-기반 차단 쉐이퍼들(예컨대, 도 15의 프레임 사이즈-기반 차단 쉐이퍼(400))을 포함할 수 있다.
도 16a에서, 시간 t0에서 예컨대, 16㎲를 뺀 시간 또는 클래스 A 버스트 주기에서 16㎲ 앞선 시간에서의 브릿지(410)의 상태가 도시된다. 상기 시간 t0는 클래스 A 버스트 주기의 시작 시간을 나타낸다. 클래스 B의 프레임들(430)은 클래스 B의 큐(417)에 저장된다. 관리 프레임들 n, m은 제1 비-AVB 큐(418)에 저장된다. 레거시 프레임들(431)은 제2 비-AVB 큐(419)에 저장된다. 클래스 B의 프레임들(430)은 시간-비인식 차단 쉐이퍼에 의해 게이트 제어(gate)될 (또는 쉐이핑될) 수 있고, 시간 t0에서 16㎲를 뺀 시간에 전송되는 것이 방지된다. 그 결과, 관리 프레임 n은 브릿지(410)로부터 전송되기 시작할 수 있다.
도 16b에서, 시간 t0에서 예컨대, 3.664㎲를 뺀 시간에서의 브릿지(410)의 상태가 도시된다. 이 시간에서, 상기 브릿지(410)로부터의 관리 프레임 n의 전송이 완료된다. 3.664㎲는 16㎲에서 관리 프레임 n이 전송되기 위한 12.336㎲를 뺀 것과 동일하다. 이 때, 클래스 B의 프레임들은 전송을 위해서 준비되고 두 개의 프레임들을 전송하도록 신용들을 가질 수 있다. 클래스 B의 데이터의 300바이트의 프레임을 전송하는 시간은 (20바이트의 프리앰블 및/또는 IFG 시간을 포함하여) 2.56㎲이다. 3.664㎲가 시간 t0 전에 남기 때문에 하나의 프레임이 전송되도록 허용된다. 전송될 준비가 된 나머지 클래스 B의 프레임은 차단된다.
도 16c에서, 시간 t0에서 예컨대, 1.104㎲를 뺀 시간에서의 브릿지(410)의 상태가 도시된다. 시간 t0 이전에 1.104㎲가 존재하기 때문에, 클래스 B의 프레임들(430) 및 제2 비-AVB 프레임 m은 차단된다. 레거시 프레임들(431)은 예컨대, 64바이트의 길이로 이루어질 수 있다. 20바이트의 프리엠블 및 IFG 시간을 포함하는 레거시 프레임들(431) 중 하나를 전송하는 시간은 0.672㎲인 바, 이는 1.104㎲보다 짧다. 이러한 이유로, 레거시 프레임들(431) 중 하나가 멀티플렉서(420)로 통과되도록 허용된다.
도 16d에서, 시간 t0에서 예컨대, 0.432㎲를 뺀 시간에서의 브릿지(410)의 상태가 도시된다. t0까지 남은 시간이 0.672㎲보다 적기 때문에, 남아 있는 프레임들은 차단된다. 이는 출력 포트(422)가 t0에서 휴지상태가 되게끔 한다. 도 16e에서, 클래스 A의 프레임들이 상기 브릿지(410)에 도착하며 클래스 A의 큐(416)에 저장되고 다른 큐들(417 내지 419)에 저장된 프레임들로부터의 간섭 없이 상기 브릿지(410)로부터 전송되도록 된다. 시간-인식 차단 쉐이퍼들은 시간 t0 이후에 미리 결정된 주기에 후속하여 클래스 B의 큐(417) 및 비-AVB 큐들(418 내지 419)을 릴리즈시킬(즉, 더이상 차단하지 않을) 수 있다. 큐들(417 내지 419)은 릴리즈될 수 있는 바, 그 이유는 데이터가 클래스 A의 큐(416)에 있고 출력 포트(422) 밖으로 전송되는 중일 때 선택기 모듈(298)이 이 큐들의 선택을 방지한다. 이러한 이유로, 클래스 A의 프레임들의 버스트는 더이상 어떤 클래스 A의 프레임들도 클래스 A의 큐(416)에 저장되지 않을 때까지 계속된다. 큐들(417 내지 419) 내의 프레임들은 클래스 A의 큐(416)가 비게 될 때 전송될 수 있다.
출력 포트(422)가 시간 t0(클래스 A 버스트의 시작)에서 휴지상태가 되도록 비-클래스 A의 큐들(417 내지 419) 각각에 대해 시간-인식 차단 쉐이퍼들을 사용함으로써, 그리고 비-클래스 A의 큐들(417 내지 419) 내의 프레임들의 라인의 헤드 사이즈들을 고려함으로써 효율적인 시간의 사용이 제공된다. 시간 t0에 앞서 전송될 수 있는 비-클래스 A의 프레임들이 우선 순위에 근거하여 전송된다.
도 17에서, 클래스 A가 할당된 시간 주기들에 대하여 차단 윈도우들을 예시하는 타이밍도(450)가 도시된다. 클래스 A의 데이터와의 간섭을 방지하기 위해서, 차단 윈도우들은 결정된 사이즈를 가지는 프레임들의 전송을 방지하는 데 사용될 수 있다. 상기 사이즈는 상술된 바와 같이 미리 결정되거나 또는 디스크립터 신호(예컨대, 디스크립터 신호(352))에 제공되는 디스크립터들에 근거하여 결정될 수 있다. 상술된 우선 순위 타이밍 신호들 및/또는 큐들의 선택은 차단 윈도우들 및 라인 상태 신호들에 근거하여 수행될 수 있다.
도 17에서, 데이터의 8개의 블록들(1 내지 8)의 전송 시간에 대하여 두 개의 차단 윈도우들(452, 454)이 도시된다. 제1 차단 윈도우(452)는 최소 사이즈의 개입 프레임(예컨대, 256바이트)와 관련된다. 제2 차단 윈도우(454)는 최대 개입 사이즈 프레임(예컨대, 1500바이트)와 관련된다. 상기 제1 차단 윈도우(452)는 최소 사이즈 프레임을 전송하기 위한 시간 MINT(예컨대, 23.84㎲) 및 적어도 7개의 클래스 A의 프레임들 및 제8의 클래스 A의 프레임의 부분을 전송하기 위한 시간을 포함한다. 제2 차단 윈도우(454)는 최대 사이즈의 프레임을 전송하기 위한 시간 MAXT(예컨대, 123.36㎲) 및 적어도 7개의 클래스 A의 프레임들(또는 클래스 A의 프레임들의 수에 1을 뺀 수의 프레임들) 및 제8의 (또는 마지막) 클래스 A의 프레임의 부분을 전송하기 위한 시간을 포함한다. 상기 차단 윈도우들(452, 454)은 비-클래스 A의 데이터가 통과하도록 될 때(더이상 차단되지 않을 때) 그리고 비-클래스 A의 데이터가 각각의 큐로부터 도 10의 제1 멀티플렉서(302)에 실제로 포워딩되는 시간부터 지연을 최소화하도록 클래스 A 버스트 주기의 끝까지 확장되지 않을 수 있다.
각각의 차단 윈도우는 대응하는 마진 주기(예컨대, 마진Min, 마진Max)를 제공한다. 최소 사이즈의 프레임보다 작거나 또는 동일한 비-클래스 A의 프레임들이 마진 주기 마진Min(예컨대, 367.36㎲) 동안 전송될 수 있다. 최대 사이즈의 프레임보다 작거나 동일한 비-클래스 A의 프레임들이 마진 주기 마진Max(예컨대, 267.84㎲) 동안 전송될 수 있다. 이 마진들은 경계(boundary)들을 제공하는 바, 최대 사이즈(예컨대, 1522바이트)의 프레임들을 포함하는 다른 트래픽 또는 비-클래스 A의 프레임들의 전송 결정이 상기 경계들에 근거할 수 있다.
도 10의 네트워크 디바이스(270)는 수많은 방법들을 사용하여 동작될 수 있고, 예시적 방법이 도 18a 및 18b의 방법에 의해 제공된다. 도 18a 및 18b에서, 데이터 차단 방법이 도시된다. 비록 다음의 태스크들이 도 10 내지 16e의 구현들에 관하여 주로 기술되지만, 상기 태스크들은 본 발명의 다른 구현들에 적용되도록 쉽게 수정될 수 있다. 또한, 비록 다음의 태스크들이 특정한 수의 차단 해제 쉐이퍼들, 시간-비인식 차단 쉐이퍼들, 시간-인식 차단 쉐이퍼들 및 프레임들에 관하여 기술되지만, 상기 방법은 서로 다른 수의 이들 각각을 수용하도록 쉽게 수정될 수 있다. 상기 태스크들은 반복적으로 수행될 수 있다. 상기 방법은 태스크(500)에서 시작할 수 있다.
태스크(502)에서, 진입 모듈(272)은 프레임(들)을 수신한다. 상기 프레임(들)은 호스트 제어 모듈, 톡커, 브릿지 및/또는 시간 변환기 디바이스로부터 수신될 수 있다. 태스크(504)에서, 상기 진입 모듈(272)은 프레임(들)을 파싱한다. 상기 진입 모듈(272)은 상기 프레임(들)이 클래스 A의 프레임(들)인지 결정할 수 있다. 상기 프레임들이 클래스 A의 프레임(들)이면, 태스크(506)가 수행될 수 있고, 그렇지 않으면 태스크(534)가 수행된다.
태스크(506)에서, 출구 모듈(274)은 컷-스루 모드가 동작가능한지 결정할 수 있다. 만약 컷-스루 모드가 동작가능하면, 태스크(508)가 수행되고, 그렇지 않으면 태스크(516)가 수행된다. 태스크(508)에서, 클래스 A의 큐(들)(278), 시간-비인식 차단 쉐이퍼들(294), 차단 해제 쉐이퍼(들)(292) 및 제1 멀티플렉서(302)는 바이패스되고 제1 멀티플렉서(302)로부터 프레임(들)을 선택하는 것과 반대로 제2 선택 신호가 진입 모듈(272)로부터 프레임(들)을 선택하도록 생성된다. 상기 클래스 A의 프레임(들)은 제2 멀티플렉서(312)에 포워딩된다. 태스크(510)에서, 상기 클래스 A의 프레임(들)은 출구 모듈(274) 및/또는 네트워크 디바이스(270)로부터 전송된다. 상기 방법은 태스크(512)에서 종료할 수 있다.
태스크(516)에서, 상기 진입 모듈(272)은 클래스 A의 프레임(들)을 클래스 A의 큐(들)(278)에 파싱한다. 차단 해제 쉐이퍼(들)(360)의 데이터 통과 모듈(들)(예컨대, 데이터 통과 모듈(366)), 진입 모듈(272) 및/또는 출구 모듈(274)은 제1 프레임 신호(예컨대, PKT1)를 생성할 수 있다. 상기 제1 프레임 신호는 클래스 A의 프레임이 클래스 A의 큐에 존재함을 나타낸다.
태스크(518)에서, 출구 모듈(274)은 시간-비인식 차단이 동작가능한지 결정할 수 있다. 시간-비인식 차단이 동작가능할 때, 태스크(520)가 수행되고, 그렇지 않으면 태스크(524)가 수행된다. 태스크(520)에서, 시간-비인식 차단 쉐이퍼(294)의 제1 카운터(322)는 제1 카운트를 생성할 수 있다. 상기 제1 카운트는 도 11 및 12에 관하여 기술된 바와 같이 생성될 수 있다. 태스크(522)에서, 큐 모니터링 모듈(예컨대, 큐 모니터링 모듈(324))은 상기 제1 카운트에 근거하여 제1 차단 신호(예컨대, 제1 차단 신호(350))를 생성한다.
태스크(524)에서, 출구 모듈(274)은 시간-인식 차단 해제가 동작가능한지 결정할 수 있다. 태스크(526)가 시간-인식 차단 해제가 동작가능할 때 수행되고, 그렇지 않으면 태스크(554)가 수행된다. 태스크(526)에서, 타이밍 모듈(290)은 제1 우선 순위 타이밍 신호(368)를 생성한다. 제1 우선 순위 타이밍 신호(368)는 클래스 A의 프레임(들)이 상술된 바와 같이 제1 멀티플렉서(302)에 통과되도록 허용되는 때를 나타낸다. 태스크(528)에서, 시간-인식 차단 해제 쉐이퍼(360)의 로직 모듈(364)은 제1 우선 순위 타이밍 신호(368)에 근거하여 제1 통과 신호 PASS1를 생성한다. 태스크(532)에서, 데이터 통과 모듈(366)은 제1 통과 신호 PASS1에 근거하여 차단 해제 신호(370)를 생성한다.
태스크(534)에서, 진입 모듈(272)은 비-클래스 A의 프레임(들)을 비-클래스 A의 큐들(280, 282) 중 각각의 큐들에 파싱한다. 시간-인식 차단 쉐이퍼들(296)의 데이터 통과 모듈(예컨대, 데이터 통과 모듈(380, 400))은 비-클래스 A의 큐들(280, 282) 중 대응하는 큐들 내의 프레임(들)의 존재를 나타내는 각각의 프레임 신호들을 생성할 수 있다. 이는 도 14에 관하여 기술된 바와 같은 제2 프레임 신호 PKT2를 생성하는 것을 포함할 수 있다.
태스크(536)에서, 출구 모듈(274)은 프레임(들)이 클래스 B의 프레임(들)인지 결정할 수 있다. 상기 프레임(들)이 클래스 B의 프레임(들)일 때, 태스크(538)가 수행되고, 그렇지 않으면 태스크(544)가 수행된다. 태스크(536)는 실제로 수행되지 않을 수 있다. 태스크들(538 및 544)은 클래스 B의 큐 내에 클래스 B의 프레임(들)이 존재하는지에 근거하여 수행될 수 있다.
태스크(538)에서, 출구 모듈(274)은 시간-비인식 차단이 동작가능한지 결정할 수 있다. 시간-비인식 차단이 동작가능하면, 태스크(540)가 수행되고, 그렇지 않으면 태스크(544)가 수행된다. 태스크(540)에서, 시간-비인식 차단 쉐이퍼는 클래스 B의 프레임(들)에 대한 제2 카운트를 생성한다. 태스크(542)에서, 시간-비인식 차단 쉐이퍼의 큐 모니터링 모듈은 제2 카운트에 근거하여 제2 차단 신호를 생성한다.
태스크(544)에서, 출구 모듈(274)은 시간-인식 차단이 동작가능한지 결정한다. 시간-인식 차단이 동작가능할 때, 태크스(546)가 수행되고, 그렇지 않으면 태스크(554)가 수행된다. 태스크(546)에서, 타이밍 모듈(290)은 우선 순위 타이밍 신호(들)(예컨대, 제2 우선 순위 타이밍 신호(388))를 생성한다. 우선 순위 타이밍 신호(들)는 비-클래스 A의 프레임(들)이 차단되지 않아야할 때를 나타낼 수 있다. 태스크(548)에서, 시간-인식 차단 쉐이퍼(들)의 데이터 통과 모듈(들)은 태스크(546)에서 생성된 우선 순위 타이밍 신호(들)에 근거하여 통과 신호(들)(예컨대, 제2 통과 신호 PASS2)를 생성한다.
태스크(550)에서, 시간-인식 차단 쉐이퍼들의 데이터 통과 모듈들은 디스크립터 신호(352)에 근거하여 라인의 헤드 프레임 사이즈들을 결정할 수 있다. 하나보다 많은 시간-인식 차단 쉐이퍼가 사용되는 경우, 시간-인식 차단 쉐이퍼들은 단일 데이터 통과 모듈을 공유할 수 있고 그리고/또는 데이터 통과 모듈들은 우선 순위 레벨들 및 라인의 헤드 프레임(들)의 사이즈들에 근거하여 비-클래스 A의 프레임(들)의 통과를 조직화하도록 서로와 통신할 수 있다. 태스크(550)는 출구 모듈(274) 및/또는 시간-인식 차단 쉐이퍼들이 라인의 헤드 비-클래스 A의 프레임(들)의 사이즈들을 모니터링하고 클래스 A 버스트들 사이에 그리고/또는 다음 클래스 A 버스트 앞에 핏(fit)되는 수만큼 비-클래스 A의 프레임(들)을 포워딩하도록 구성될 때 수행될 수 있다. 다음 클래스 버스트 전에 전송을 완료하도록 사이즈화된 클래스 B의 프레임(들)이 포워딩될 수 있고, 그 후 다음으로 가장 큰 사이즈의 라인의 헤드 프레임이 뒤따른다. 다음 클래스 A 버스트에 앞서 전송될 수 있는 상기 가장 큰 사이즈의 라인의 헤드 프레임은 다른 비-클래스 A의 프레임(들)에 앞서 전송될 수 있다.
태스크(552)에서, 시간-인식 차단 쉐이퍼(들)는 통과 신호(들) 및/또는 대응하는 우선 순위 레벨(들) 및/또는 라인의 헤드 프레임(들)의 사이즈(들)에 근거하여 제3 차단 신호(들)를 생성할 수 있다.
태스크(554)에서, 선택기 모듈(298)은 제1 차단 신호, 차단 해제 신호, 제2 차단 신호 및/또는 제3 차단 신호(들)에 근거하여 제1 선택 신호를 생성한다. 태스크(556)에서, 제1 멀티플렉서(302)는 상기 제1 선택 신호에 근거하여 큐들1 -X 중 선택된 하나로부터 프레임(들)을 전송한다. 제2 선택 신호가 진입 모듈(272)로부터 프레임(들)을 선택하는 대신에 제1 멀티플렉서(302)로부터 출력되는 프레임(들)을 선택하도록 생성된다.
태스크(558)에서, 출구 모듈(274)은 큐들1 -X에 추가적인 프레임(들)이 존재하는지 결정할 수 있다. 큐들1 -X에 추가적인 프레임(들)이 존재하면, 상기 방법은 태스크(560)에서 종료될 수 있고, 그렇지 않으면 태스크(562)가 수행될 수 있다. 태스크(562)에서, 출구 모듈(274)은 남아 있는 프레임(들)이 클래스 A의 프레임들인지 결정할 수 있다. 남아 있는 프레임(들)이 클래스 A의 프레임(들)이면, 태스크(512)가 수행될 수 있고, 그렇지 않으면 태스크(564)가 수행될 수 있다. 태스크(564)에서, 남아 있는 프레임(들)이 클래스 B의 프레임(들)이면, 태스크(538)가 수행될 수 있고, 그렇지 않으면 태크스(544)가 수행될 수 있다.
상술된 태크스들은 예시적인 예들을 의미하며; 상기 태스크들은 응용에 따라 중첩되는 시간 주기들 동안 순차적으로, 동기식으로(synchronously), 동시에, 연속적으로 또는 서로 다른 순서로 수행될 수 있다. 또한, 상기 태스크들 중 어느 것이든 구현 및/또는 이벤트들의 시퀀스에 따라 수행되지 않거나 또는 생략될 수 있다.
상술된 기법들은 비-자의적인 네트워크들을 포함하는 바, 상기 네트워크들은 네트워크들의 엔드 스테이션들 사이의 레이턴시를 최소화하도록 엔지니어링, 관리 및 제어된다. 상술된 구현들을 사용함으로써, 비-자의적인 네트워크가 10㎲보다 적거나 동일한 FE AVB 2 세대의 5개의 홉의 레이턴시 요건을 만족시킬 수 있다. 상기 레이턴시는 톡커의 전송 시간에 네 개의 브릿지들과 관련된 프로세싱 지연 시간을 더한 것과 동일하다. 예로서, 제어 프레임을 전송하기 위한 시간은 128바이트의 제어 데이터 및 22바이트 오버헤드를 포함하고 개입 프레임이 없는 150바이트에 대하여 12.0㎲일 수 있다. 네 개의 브릿지들 중 하나의 프로세싱 지연 시간은 예컨대, 12㎲의 전송 시간 및 약 두 개의 브릿지 지연의 512비트 시간들 즉 10.0㎲를 포함하는 22.0㎲일 수 있다. 총 레이턴시는 12.0㎲의 전송 시간 및 88.0㎲(22.0㎲ * 4)의 브릿지 프로세싱 지연 시간을 포함하는 100.0㎲이다.
본 명세서에 기술된 장치들 및 방법들은 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 컴퓨터 프로그램들에 의해 구현될 수 있다. 상기 컴퓨터 프로그램들은 비-일시적 유형의 컴퓨터 판독가능 매체 상에 저장되는 프로세서-실행가능한 명령들을 포함한다. 또한, 상기 컴퓨터 프로그램들은 저장된 데이터를 포함할 수 있다. 비-일시적 유형의 컴퓨터 판독가능 매체의 비-제한적 예들은 비휘발성 메모리, 자기 스토리지 및 광학 스토리지이다.

Claims (22)

  1. 네트워크 디바이스로서,
    제1 큐 및 제2 큐를 포함하는 복수의 큐들을 포함하는 메모리와;
    제1 우선 순위 타이밍 신호 또는 제2 우선 순위 타이밍 신호 중 적어도 하나를 생성하도록 구성된 타이밍 모듈과, 여기서 상기 제1 우선 순위 타이밍 신호 및 제2 우선 순위 타이밍 신호는 클록 신호에 근거하여 생성되고, 상기 클록 신호는 비-자의적인 네트워크(non-arbitrary network)에서 상기 네트워크 디바이스와 타 네트워크 디바이스들 간에 공유되며;
    (i) 상기 제1 큐로부터 제1의 보호된 데이터를 포워딩(forward)하고, (ii) 제1 프레임이 상기 제1 큐 내에 존재함을 나타내는 제1 프레임 신호 및 상기 제1 우선 순위 타이밍 신호에 근거하여 차단 해제 신호(deblocking signal)를 생성하도록 구성된 차단 해제 쉐이퍼(deblocking shaper), 또는
    (i) 상기 제2 큐로부터 제2의 보호된 데이터 및 비 보호된 데이터 중 하나를 포워딩하고, (ii) 제2 프레임이 상기 제2 큐 내에 존재함을 나타내는 제2 프레임 신호 및 상기 제2 우선 순위 타이밍 신호에 근거하여 제1 차단 신호를 생성하도록 구성된 차단 쉐이퍼
    중 적어도 하나와; 그리고
    상기 차단 해제 신호 및 제1 차단 신호에 근거하여 상기 제1 프레임 또는 제2 프레임을 선택하도록 하는 선택 신호를 생성하도록 구성된 선택기 모듈(selector module)을 포함하는 것을 특징으로 하는 네트워크 디바이스.
  2. 제1항에 있어서,
    상기 클록 신호는 제2 네트워크 디바이스에서의 클록에 근거하여 생성되며, 상기 클록 신호는 상기 네트워크 디바이스에 의해 상기 제2 네트워크 디바이스로부터 수신되는 것을 특징으로 하는 네트워크 디바이스.
  3. 제1항에 있어서,
    상기 타이밍 모듈은 상기 제1 큐에 저장된 상기 제1의 보호된 데이터가 (i) 주기적 전송 시간 간격(periodic transmission time interval)에서 할당된 소정의 대역폭 및 (ii) 소정의 최대 레이턴시를 가지도록 상기 제1 우선 순위 타이밍 신호 및 제2 우선 순위 타이밍 신호를 생성하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  4. 제1항에 있어서,
    상기 선택 신호에 근거하여 상기 제1 프레임 및 제2 프레임 중 하나를 출력하도록 구성된 멀티플렉서(multiplexer)와; 그리고
    상기 제1 프레임 및 제2 프레임 중 하나를 상기 네트워크 디바이스로부터 제2 네트워크 디바이스로 출력하도록 구성된 출구 모듈(egress module)을 더 포함하는 것을 특징으로 하는 네트워크 디바이스.
  5. 제1항에 있어서,
    상기 선택 신호에 근거하여 상기 복수의 큐들로부터 상기 제1 프레임 및 제2 프레임을 포워딩하도록 구성된 멀티플렉서를 더 포함하며,
    상기 선택기 모듈은 상기 차단 해제 신호 및 제1 차단 신호에 근거하여 상기 선택 신호를 생성하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  6. 제1항에 있어서,
    상기 차단 해제 쉐이퍼는:
    상기 제1 프레임 신호 및 제1 우선 순위 타이밍 신호에 근거하여 통과 신호(pass signal)를 생성하도록 구성된 로직 모듈과; 그리고
    (i) 상기 통과 신호에 근거하여 상기 제1 프레임을 포워딩하고, (ii) 상기 통과 신호에 근거하여 상기 차단 해제 신호를 생성하도록 구성된 데이터 통과 모듈을 포함하는 것을 특징으로 하는 네트워크 디바이스.
  7. 제6항에 있어서,
    상기 데이터 통과 모듈은 상기 통과 신호 및 상기 제1 프레임의 사이즈에 근거하여 상기 차단 해제 신호를 생성하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  8. 제1항에 있어서,
    상기 타이밍 모듈은 (i) 상기 제1 프레임의 전송 동안 주기적 전송 시간 간격 내에 할당된 주기를 결정하고, (ii) 상기 클록 신호 및 할당된 주기에 근거하여 상기 제1 프레임이 전송될 시작 시간(start time)을 결정하며 그리고 (iii) 상기 시작 시간에 근거하여 상기 제1 우선 순위 타이밍 신호를 생성하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  9. 제1항에 있어서,
    상기 차단 쉐이퍼는:
    상기 제2 프레임 신호 및 제2 우선 순위 타이밍 신호에 근거하여 제2 통과 신호를 생성하도록 구성된 로직 모듈과; 그리고
    (i) 상기 통과 신호에 근거하여 상기 제2 프레임을 포워딩하고, (ii) 상기 통과 신호에 근거하여 상기 제1 차단 신호를 생성하도록 구성된 데이터 통과 모듈을 포함하는 것을 특징으로 하는 네트워크 디바이스.
  10. 제9항에 있어서,
    상기 데이터 통과 모듈은 상기 통과 신호 및 상기 제2 프레임의 사이즈에 근거하여 상기 제1 차단 신호를 생성하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  11. 제1항에 있어서,
    상기 타이밍 모듈은 (i) 상기 제1 프레임의 전송 동안 주기적 전송 시간 간격 내에 할당된 주기를 결정하고, (ii) 상기 클록 신호 및 할당된 주기에 근거하여 상기 제1 프레임이 전송될 시작 시간을 결정하며 그리고 (iii) 멀티플렉서에게로의 상기 제2 프레임의 포워딩을 차단하도록 상기 시작 시간에 근거하여 상기 제2 우선 순위 타이밍 신호를 생성하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  12. 제1항에 있어서,
    상기 타이밍 모듈은 (i) 상기 제2 프레임의 전송 동안 주기적 전송 시간 간격 내에 할당된 주기를 결정하고, (ii) 상기 클록 신호 및 할당된 주기에 근거하여 상기 제2 프레임이 전송될 시작 시간을 결정하며 그리고 (iii) 상기 시작 시간에 근거하여 상기 제2 우선 순위 타이밍 신호를 생성하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  13. 제1항에 있어서,
    상기 차단 해제 쉐이퍼와, 그리고
    상기 차단 쉐이퍼를 포함하는 출구 모듈을 더 포함하고,
    상기 선택기 모듈은 상기 차단 해제 신호 및 제1 차단 신호에 근거하여 상기 선택 신호를 생성하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  14. 제1항에 있어서,
    상기 클록 신호에 독립적으로 동작하는 제2 차단 쉐이퍼를 더 포함하고,
    여기서: 상기 제2 차단 쉐이퍼는 (i) 상기 보호된 데이터를 상기 제1 큐로부터 상기 차단 해제 쉐이퍼로 포워딩하거나 또는 (ii) 상기 비 보호된 데이터를 상기 제2 큐로부터 상기 차단 쉐이퍼로 포워딩하도록 구성되며;
    상기 제2 차단 쉐이퍼는 카운터에 근거하여 제2 차단 신호를 생성하도록 구성되고, 상기 카운터는 상기 제1 프레임 및 제2 프레임 중 하나와 관련된 신용(credit)들을 카운팅하며; 그리고
    상기 선택기 모듈은 상기 카운터의 카운트에 근거하여 상기 선택 신호를 생성하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  15. 제1항에 있어서,
    상기 차단 해제 쉐이퍼와 상기 차단 쉐이퍼를 포함하는 출구 모듈과; 그리고
    (i) 톡커 모드(talker mode)에서 동작할 때 상기 차단 해제 쉐이퍼를 동작가능하게 하고, (ii) 브릿지 모드(bridge mode)에서 동작할 때 상기 차단 쉐이퍼를 동작가능하게 하도록 구성된 활성화 모듈을 더 포함하는 것을 특징으로 하는 네트워크 디바이스.
  16. 제15항에 있어서,
    상기 활성화 모듈은 (i) 상기 브릿지 모드에서 동작할 때 상기 차단 해제 쉐이퍼를 동작 불가능하게 하고, (ii) 상기 톡커 모드에서 동작할 때 상기 차단 쉐이퍼를 동작 불가능하게 하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  17. 제1항에 있어서,
    상기 차단 쉐이퍼와, 그리고 (i) 상기 복수의 큐들 중 제3 큐로부터 제3의 보호된 데이터 및 제2의 비보호된 데이터 중 하나를 포워딩하고, (ii) 제3 프레임 신호 및 상기 제2 우선 순위 타이밍 신호에 근거하여 제2 차단 신호를 생성하도록 구성된 제2 차단 쉐이퍼를 포함하는 출구 모듈을 더 포함하며, 상기 제3 프레임 신호는 제3 프레임이 상기 복수의 큐들 중 상기 제3 큐에 존재함을 나타내는 것을 특징으로 하는 네트워크 디바이스.
  18. 제1항에 있어서,
    상기 차단 쉐이퍼와, 그리고 (i) 상기 복수의 큐들 중 제3 큐로부터 제3의 보호된 데이터 및 제2의 비 보호된 데이터 중 하나를 포워딩하고, (ii) 제3 프레임 신호 및 제3 우선 순위 타이밍 신호에 근거하여 제2 차단 신호를 생성하도록 구성된 제2 차단 쉐이퍼를 포함하는 출구 모듈을 더 포함하며, 상기 제3 프레임 신호는 제3 프레임이 상기 복수의 큐들 중 상기 제3 큐에 존재함을 나타내고,
    상기 타이밍 모듈은 상기 제3 우선 순위 타이밍 신호를 생성하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  19. 제1항에 있어서,
    상기 차단 해제 쉐이퍼 및 차단 쉐이퍼 중 하나와, 그리고 (i) 상기 보호된 데이터를 상기 제1 큐로부터 상기 차단 해제 쉐이퍼로 포워딩하거나 또는 (ii) 상기 비 보호된 데이터를 상기 제2 큐로부터 상기 차단 쉐이퍼로 포워딩하도록 구성된 제2 차단 쉐이퍼를 포함하는 출구 모듈과; 그리고
    동작 모드에 근거하여 상기 제2 차단 쉐이퍼를 동작가능하게 하도록 구성된 활성화 모듈을 더 포함하는 것을 특징으로 하는 네트워크 디바이스.
  20. 제19항에 있어서,
    상기 활성화 모듈은 상기 네트워크 디바이스가 톡커 모드, 브릿지 모드 또는 시간 변환기 모드(time translator mode)에서 동작하는 지에 근거하여 상기 제2 차단 쉐이퍼를 동작가능하게 하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
  21. 제1항에 있어서,
    상기 선택 신호에 근거하여 상기 복수의 큐들로부터 데이터를 선택하도록 구성된 제1 멀티플렉서와; 그리고
    제2 멀티플렉서의 출력에 근거하여 (i) 상기 제1 멀티플렉서의 출력 및 (ii) 진입 모듈(ingress module)의 출력으로부터 선택하도록 구성된 상기 제2 멀티플렉서를 더 포함하는 것을 특징으로 하는 네트워크 디바이스.
  22. 제21항에 있어서,
    호스트 제어 모듈, 톡커 및 브릿지 중 하나로부터 데이터를 수신하도록 구성된 상기 진입 모듈을 더 포함하고, 여기서 상기 진입 모듈은 (i) 상기 수신된 데이터를 상기 복수의 큐들 중의 각각의 큐들에 파싱할지 또는 (ii) 상기 복수의 큐들을 바이패싱(bypassing)하는 것을 포함하여 상기 제2 멀티플렉서에 상기 수신된 데이터를 포워딩할지를 결정하도록 구성된 것을 특징으로 하는 네트워크 디바이스.
KR1020137025673A 2011-03-10 2012-03-08 비-자의적인 네트워크들을 위한 데이터 차단 시스템들 KR101918695B1 (ko)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201161451525P 2011-03-10 2011-03-10
US61/451,525 2011-03-10
US201161452482P 2011-03-14 2011-03-14
US61/452,482 2011-03-14
US201161552648P 2011-10-28 2011-10-28
US61/552,648 2011-10-28
US13/415,112 US8982896B2 (en) 2011-03-10 2012-03-08 Data blocking systems for non-arbitrary networks
US13/415,112 2012-03-08
PCT/US2012/028290 WO2012122382A1 (en) 2011-03-10 2012-03-08 Data blocking systems for non-arbitrary networks

Publications (2)

Publication Number Publication Date
KR20140015417A true KR20140015417A (ko) 2014-02-06
KR101918695B1 KR101918695B1 (ko) 2018-11-14

Family

ID=46795545

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137025673A KR101918695B1 (ko) 2011-03-10 2012-03-08 비-자의적인 네트워크들을 위한 데이터 차단 시스템들

Country Status (6)

Country Link
US (3) US8982896B2 (ko)
EP (1) EP2684321B1 (ko)
JP (1) JP5939489B2 (ko)
KR (1) KR101918695B1 (ko)
CN (1) CN103493447B (ko)
WO (1) WO2012122382A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012122382A1 (en) 2011-03-10 2012-09-13 Marvell World Trade Ltd. Data blocking systems for non-arbitrary networks
EP2721770B1 (en) * 2011-06-15 2017-02-22 NXP USA, Inc. Integrated circuit device and method of performing cut-through forwarding of packet data
US8838787B2 (en) * 2011-11-30 2014-09-16 Harman International Industries, Incorporated System for optimizing latency in an AVB network
US9219693B2 (en) 2012-02-22 2015-12-22 Marvell World Trade Ltd. Network devices with time aware medium access controller
US9960872B2 (en) 2012-03-08 2018-05-01 Marvell International Ltd. Systems and methods for performing a soft-block of a queue based on a size of a remaining period of a guard band
US9882823B2 (en) * 2012-03-08 2018-01-30 Marvell World Trade Ltd. Systems and methods for blocking transmission of a frame in a network device
US20230093388A1 (en) * 2012-07-05 2023-03-23 Accedian Networks Inc. Method for devices in a network to participate in an end-to-end measurement of latency
EP2696543A1 (en) * 2012-08-06 2014-02-12 Renesas Electronics Europe Limited Calculating credit for controlling data frame transmission
WO2014043092A1 (en) 2012-09-11 2014-03-20 Marvell World Trade Ltd. Method and apparatus for transmitting packets in accordance with ieee 802.1 qbv
US9538215B2 (en) * 2013-03-12 2017-01-03 Gamefly Israel Ltd. Maintaining continuity in media streaming
EP2827594A1 (en) 2013-07-17 2015-01-21 Harman Becker Automotive Systems GmbH Digital device, network and method for streaming audio or video data
US10686709B2 (en) * 2014-07-14 2020-06-16 Qualcomm Incorporated Methods and apparatus for channel usage indication
JP2016100674A (ja) * 2014-11-19 2016-05-30 富士通株式会社 伝送装置
EP3057273B1 (en) * 2015-02-13 2019-03-27 Mitsubishi Electric R&D Centre Europe B.V. Method for a traffic shaping in a network
US9660927B2 (en) * 2015-04-22 2017-05-23 Accedian Networks Inc. Preemptive packet transmission
FR3036241B1 (fr) * 2015-05-12 2017-06-02 Peugeot Citroen Automobiles Sa Procede et dispositif de controle de la transmission de trames dans un reseau video bidirectionnel
EP3136678B1 (en) * 2015-08-27 2019-11-27 Tata Consultancy Services Limited System and method for real-time transfer of audio and/or video streams through an ethernet avb network
US10120642B2 (en) 2016-12-13 2018-11-06 EVA Automation, Inc. Software-based wireless coordination of audio playback
US10241748B2 (en) 2016-12-13 2019-03-26 EVA Automation, Inc. Schedule-based coordination of audio sources
JP7173267B2 (ja) * 2017-01-30 2022-11-16 富士通株式会社 パケット処理装置及びパケット処理方法
CN114860334B (zh) * 2022-04-24 2024-01-26 曙光信息产业(北京)有限公司 虚拟机启动风暴的处理方法、装置、设备及介质
US20230384855A1 (en) * 2022-05-25 2023-11-30 Advanced Micro Devices, Inc. Reducing system power consumption when capturing data from a usb device

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572703A (en) 1994-03-01 1996-11-05 Intel Corporation Method and apparatus for snoop stretching using signals that convey snoop results
US5822381A (en) 1995-05-05 1998-10-13 Silicon Graphics, Inc. Distributed global clock system
US7426206B1 (en) * 1998-06-11 2008-09-16 Synchrodyne Networks, Inc. Switching system and methodology having scheduled connection on input and output ports responsive to common time reference
US6038230A (en) 1998-07-22 2000-03-14 Synchrodyne, Inc. Packet switching with common time reference over links with dynamically varying delays
US6707791B1 (en) 1999-07-08 2004-03-16 Telefonaktiebolaget Lm Ericsson (Publ) Internet protocol stack for real time applications
US6785236B1 (en) * 2000-05-28 2004-08-31 Lucent Technologies Inc. Packet transmission scheduling with threshold based backpressure mechanism
NO313778B1 (no) 2000-06-06 2002-11-25 Ontime Networks As Fremgangsmåte for å sikre aksess til et transmisjonsmedium ved et forhåndsbestemt tidspunkt og en tidsserver som benytterfremgangsmåten
JP3584859B2 (ja) 2000-06-29 2004-11-04 日本電気株式会社 パケットスケジューリング装置
US6707821B1 (en) * 2000-07-11 2004-03-16 Cisco Technology, Inc. Time-sensitive-packet jitter and latency minimization on a shared data link
JP2002164916A (ja) 2000-11-22 2002-06-07 Fujitsu Ltd 中継装置
US20020118692A1 (en) 2001-01-04 2002-08-29 Oberman Stuart F. Ensuring proper packet ordering in a cut-through and early-forwarding network switch
US7287649B2 (en) * 2001-05-18 2007-10-30 Broadcom Corporation System on a chip for packet processing
US6990079B2 (en) 2001-06-08 2006-01-24 International Business Machines Corporation Optimizing fragment sizes in frame relay networks
US7120113B1 (en) * 2001-07-16 2006-10-10 Juniper Networks, Inc. Systems and methods for limiting low priority traffic from blocking high priority traffic
US7254113B2 (en) * 2002-09-18 2007-08-07 Alcatel Lucent Partially preemptive burst scheduling model for an optical burst switching network
US7411971B2 (en) 2003-09-09 2008-08-12 Avaya Inc. Systems and methods for the schedule alignment of packet flow
US7924711B2 (en) 2004-10-20 2011-04-12 Qualcomm Incorporated Method and apparatus to adaptively manage end-to-end voice over internet protocol (VolP) media latency
US7680053B1 (en) 2004-10-29 2010-03-16 Marvell International Ltd. Inter-device flow control
US8126488B2 (en) 2005-04-22 2012-02-28 Axiometric Llc Wireless communication system and related methods
US20060268692A1 (en) * 2005-05-31 2006-11-30 Bellsouth Intellectual Property Corp. Transmission of electronic packets of information of varying priorities over network transports while accounting for transmission delays
JP4279281B2 (ja) * 2005-10-14 2009-06-17 日本電信電話株式会社 パケット通信品質制御装置およびパケット通信品質制御方法
US8379644B1 (en) 2006-06-30 2013-02-19 Marvell International Ltd. System and method of processing management frames
KR101298640B1 (ko) 2006-09-22 2013-09-16 삼성전자주식회사 전송 스트림 패킷을 전송하는 방법 및 장치
US7830796B2 (en) 2006-10-18 2010-11-09 Ericsson Ab Method and apparatus for traffic shaping
EP2165541B1 (en) 2007-05-11 2013-03-27 Audinate Pty Ltd Systems, methods and computer-readable media for configuring receiver latency
CN101364932B (zh) 2007-08-07 2011-12-07 创锐讯通讯科技(上海)有限公司 包交换网络的数据分段传输的方法
CN101414958B (zh) 2007-10-18 2011-02-09 华为技术有限公司 一种业务调度方法及装置
US8098778B2 (en) 2007-11-27 2012-01-17 Infineon Technologies Ag Controlled transmission of data in a data transmission system
JP5129887B2 (ja) 2008-08-22 2013-01-30 マーベル ワールド トレード リミテッド 高精度時間プロトコルおよび媒体アクセス制御セキュリティをネットワークエレメントに統合するシステム
US8238250B2 (en) 2009-10-16 2012-08-07 Hei Tao Fung QoS-aware flow-based dynamic load balancing for link aggregation
ES2415506T5 (es) 2010-06-09 2021-10-21 Abb Power Grids Switzerland Ag Sincronización de reloj segura
GB201101709D0 (en) 2011-02-01 2011-03-16 Transpacket As A method and a node arrangement for optimizing traffic processing in integrated hybrid networks
WO2012122382A1 (en) 2011-03-10 2012-09-13 Marvell World Trade Ltd. Data blocking systems for non-arbitrary networks
US8838787B2 (en) 2011-11-30 2014-09-16 Harman International Industries, Incorporated System for optimizing latency in an AVB network
US9219693B2 (en) 2012-02-22 2015-12-22 Marvell World Trade Ltd. Network devices with time aware medium access controller
US9960872B2 (en) 2012-03-08 2018-05-01 Marvell International Ltd. Systems and methods for performing a soft-block of a queue based on a size of a remaining period of a guard band
US9882823B2 (en) 2012-03-08 2018-01-30 Marvell World Trade Ltd. Systems and methods for blocking transmission of a frame in a network device
US8937974B1 (en) 2012-05-02 2015-01-20 Marvell International Ltd. System and method for determining a margin of latency within a device
WO2014043092A1 (en) 2012-09-11 2014-03-20 Marvell World Trade Ltd. Method and apparatus for transmitting packets in accordance with ieee 802.1 qbv
US10484287B2 (en) 2013-05-15 2019-11-19 Avago Technologies International Sales Pte. Limited Support for distinguished minimum latency traffic guard band

Also Published As

Publication number Publication date
US20160142332A1 (en) 2016-05-19
US9246835B2 (en) 2016-01-26
JP2014507917A (ja) 2014-03-27
CN103493447A (zh) 2014-01-01
KR101918695B1 (ko) 2018-11-14
CN103493447B (zh) 2016-05-11
JP5939489B2 (ja) 2016-06-22
EP2684321B1 (en) 2017-09-20
US20120230348A1 (en) 2012-09-13
US8982896B2 (en) 2015-03-17
EP2684321A1 (en) 2014-01-15
US9998389B2 (en) 2018-06-12
US20150188835A1 (en) 2015-07-02
WO2012122382A1 (en) 2012-09-13

Similar Documents

Publication Publication Date Title
KR101918695B1 (ko) 비-자의적인 네트워크들을 위한 데이터 차단 시스템들
EP2896170B1 (en) Method and apparatus for transmitting packets in accordance with ieee 802.1 qbv
EP2817921B1 (en) Network devices with time aware medium access controller
CN108282415B (zh) 一种调度方法及设备
EP2642704B1 (en) Reducing headroom
CN110870285B (zh) 在具有部分实时需求的数据网络中高性能数据传输的方法和执行该方法的装置
US10361962B2 (en) Packet processing technique for a communication network
US9585053B2 (en) Communication network and method for transmitting data packets in the communication network
CN113366805A (zh) 报文调度方法、调度器、网络设备和网络***
US10965492B2 (en) Method for transmitting data packets, controller and system having a controller
CN110971538A (zh) 支持突发实时数据的时间触发传输方法
JP6152425B2 (ja) リアルタイムメッセージの送信方法およびリアルタイムメッセージを送信するためのコンピュータネットワーク
EP3166257A1 (en) Start-up triggering in an ethernet-based in-vehicle network
EP4362401A1 (en) Systems and methods of coordinated data packet transmission on multi-point wireline or optical shared physical media
Cavalieri Analysing congestion in KNXnet/IP communication system
Cavalieri Estimating KNXnet/IP routing congestion

Legal Events

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