KR20040066933A - Ieee 1394 브리지 직렬 버스 네트워크에서 효과적인타임아웃 메시지 처리 - Google Patents

Ieee 1394 브리지 직렬 버스 네트워크에서 효과적인타임아웃 메시지 처리 Download PDF

Info

Publication number
KR20040066933A
KR20040066933A KR10-2004-7010303A KR20047010303A KR20040066933A KR 20040066933 A KR20040066933 A KR 20040066933A KR 20047010303 A KR20047010303 A KR 20047010303A KR 20040066933 A KR20040066933 A KR 20040066933A
Authority
KR
South Korea
Prior art keywords
bus
timeout
portal
remote
values
Prior art date
Application number
KR10-2004-7010303A
Other languages
English (en)
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 KR20040066933A publication Critical patent/KR20040066933A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks

Abstract

(a) 포털의 로컬 버스로부터 동일 넷의 특정 수신지 버스까지 원격 타임아웃 값들을 저장하는 다수의 엔트리들을 포함하는 포털에 의한 레지스터 테이블의 구현, (b) 포털의 로컬버스에 주소지정된 타임아웃 응답 메시지를 인터셉트, (c) 포함된 비동기 트랜잭션들에 대한 원격 시간 간격 값들을 단계 (b)에서 인터셉트된 타임아웃 응답 메시지에 저장, (d) 단계 (b)에서 인터셉트된 타임아웃 응답 메시지를 원래 주소지정된 노드에 전송; (e) 포털에 의해 타임아웃 요구 메시지를 인터셉트, (f) 검색 또는 계산중 하나에 의해 타임아웃 값들을 합성, (g) 타임아웃 값들을 타임아웃 요구의 전송기에 전송, 등을 포함하는 직렬 버스 브리지 네트워크에서 타임아웃 메시지 처리에 대한 방법 및 시스템. 소스 버스와 수신지 버스사이에 접속된 중간 버스들이 있을 수 있고, 중간 버스들은 또한 각 시간에 타임아웃 값들이 요구되는 수신지를 실제로 접촉해야하는 필요를 제거하기 위하여 타임아웃 값들을 인터셉트하고 저장한다. 장치는 인터셉트, 검색, 응답 메시지 합성을 위한 하드웨어를 포함한다.

Description

IEEE 1394 브리지 직렬 버스 네트워크에서 효과적인 타임아웃 메시지 처리{An efficient timeout message management in IEEE 1394 bridged serial bus network}
IEEE 1394는 가장 유용한 다기능 상호접속 기술들중 하나를 가진 고성능 직렬 버스이다. IEEE 1394 고속 직렬 버스는 100Mb, 200Mb, 심지어 400Mb의 전송 속도들을 가능케 한다. 이러한 전송 속도들은 연선(twisted-pair wire)에서 가능하고, 직렬 버스는 핫 플러그(hot-plug)된다. IEEE 1394는 캠코더에서의 스트리밍, 자동차들의 제어들, 및 MIDI같은 디지털 오디오 신호들에 포함하지만, 이것들에 한정되지 않는 많은 응용들에서 이용된다.
추가로, IEEE 1394는 통합 컴퓨터, 통신 및 멀티미디어 응용들에의 엔터테인먼트에 이용되는 저비용 디지털 인터페이스에 대한 국제 표준이다.
IEEE 1394의 주요 특징은 특정 네트워크의 도처에 통신을 위한 직렬 연결 및 분기를 지원하는 플렉시블 토폴로지(flexible topology)를 가지고 있다는 점이다.
IEEE 1394 네트워크에서, 직렬 버스 구조는 노드들로 정의된다. 노드는 독립적으로 리셋가능하고 식별 가능한 어드레서블 엔티티(addressable entity)이다. 각 노드는 고유 어드레스를 가진 논리 실체인데, 식별 ROM 및 제어 레지스터들을 포함한다. 이러한 제어 레지스터들은 표준화된 세트이고 각각에 대해 독립적으로 리셋될 수 있다.
IEEE 1394는 재래의 로드되고 저장된 메모리 맵 인터페이스인 비동기 전송을 제공한다. 비동기 전송동안, 데이터 요구는 특정 어드레스 및 어드레스가 응답을 보내는 엔티티에 보내진다.
IEEE 1394 네트워크에서, 최대 1023개의 논리 버스들 및 각 버스상의 63개의 노드들이 가능하다. 만약 비동기 패킷 송출기 및 수신기 모두 동일 버스상에 있다면, 트랜잭션 타임아웃 값들(transaction timeout values)은 IEEE 초안 표준(draft standard;1394-1995)에 따라 얻어질 수 있다. 하지만, 만약 송출기가 수신기인 다른 버스상에 존재한다면, 송출기는 두 버스들사이의 원격 트랜잭션에 대한 remote_timeout_seconds, remote_timeout_cycles, max_remote_payload 및 hop_count 값들을 얻기 위하여 접속된 수신기가 있는 버스에 주소지정된 타임아웃 요구 메시지(TIMEOUT request massage)를 보낸다. remote_timeout_seconds, remote_timeout_cycles, max_remote_payload 및 hop_count 값들은 원격 타임아웃 값들로 선택적으로 적용된다.
IEEE 1394.1 고성능 직렬 버스 브리지들 수정 1.00에 대한 초안 표준에 따라 소스 버스로부터 수신지 버스까지 경로상의 각 브리지는 아래와 같이 타임아웃 요구 메시지를 가로채거나 각 필드를 업데이트 할 것이다: 타임아웃 요구 메시지는수신지 버스 쪽으로 라우트상의 브리지들에 의해 전송될 것이다. 타임아웃 요구 메시지를 인터셉트하는 수신지 버스상의 마지막 출구 포털은 IEEE(1394-1995)에 따라 얻어진 로컬 SPLIT_TIMEOUT 값을 메시지의 원격 시간 간격 필드에 더하고 계산된 결과를 포함하는 타임아웃 응답 메시지를 합성하며 메시지 송출기에 그 값을 보낸다.
IEEE 1394.1 초안 표준에 따라 타임아웃 요구 메시지를 수신지 버스에 보내는 버스상의 노드가 있을 때, 만약 제 1 버스상의 다른 노드들이 수신지 버스에서 원격 트랜잭션에 대한 원격 트랜잭션 타임아웃 값들을 이미 얻었다면, 타임아웃 요구 메시지는 소스 버스로부터 각각 수신지 버스까지 경로상의 모든 브리지 포털에 의해 전송되어 처리될 것이고 항상 타임아웃 요구 메시지는 동일 수신지 버스에 전달된다.
따라서, 동일 소스상의 다른 노드들로부터 동일 수신지 버스까지 이어지는 타임아웃 요구 메시지의 수신지 버스와 소스버스사이에서 경로상 각 포털에 의한 처리과정은 중복이고, 대역폭 자원들을 낭비한다.
소스 버스상의 다른 노드는 수신지 버스의 원격 트랜잭션 타임아웃 값들을 이미 얻었기 때문에, 동일 원격 트랜잭션 타임아웃 값들을 원하는 노드는 앞서 그 값을 받았던 동일 버스상의 노드로부터 이러한 값들을 얻을 수 있어야 한다. 경로상의 동일 브리지 포털들에 트랜잭션 진행의 중복은 대응하는 응답을 기다려야 하는 타임아웃 요구 메시지를 보내는 다른 노드에 대하여 불필요한 트랜잭션 타임을 요구하여 정체 현상을 일으킨다.
본 발명은 고성능 직렬 버스에 관한 것이다. 더 자세하게는, 본 발명은 IEEE 1394 브리지 네트워크에서 타임아웃 메시지 처리에 관한 것이다.
도 1은 본 발명에 따른 일련의 브리지 포털들에 의해 직렬로 연결된 수신지 버스 및 소스 버스의 예를 도시하는 도면.
도 2는 (a)에서 기술된 레지스터 테이블의 구조를 상세하게 도시한 도면.
도 3은 본 발명에 따라 타임아웃 응답 메시지를 인터셉트하고 원격 시간 응답 값들을 저장하는 과정을 나타내는 흐름도.
도 4는 본 발명에 따라 타임아웃 요구 메시지를 인터셉트하고, 타임아웃 응답 메시지를 합성하고 보내는 과정을 도시하는 흐름도.
따라서, 본 발명의 첫번째 측면에서, 효율적인 타임아웃 메시지 처리에 대한 방법은 다음을 포함한다:
(a) 포털의 로컬 버스로부터 동일 넷상의 특정 수신지 버스까지 각 원격 타임아웃 값들을 저장하는 다수의 엔트리들을 포함하는 포털에 의하여 레지스터 테이블을 구현하는 단계로서, 레지스터 테이블의 N번째 엔트리는 N의 버스 ID에 대응하는 구현 단계;
(b) 타임아웃 응답 메시지가 포털의 로컬 버스에 주소지정되면 출구 포털에 의해 특정의 주소지정된 노드로 가는 도중에 타임아웃 응답 메시지를 인터셉트하는 단계로서, 타임아웃 응답 메시지는 원격 타임아웃 값들을 포함하는 단계;
(c) 단계 (a)에서 구현된 레지스터 테이블내의 다수의 엔트리들중 대응하는 엔트리내에 단계 (b)에서 인터셉트된 타임아웃 응답 메시지에 포함된 원격 타임아웃 값들을 저장하는 단계;
(d) 특정 주소지정된 노드에 단계 (b)에서 인터셉트된 타임아웃 응답 메시지를 전송하는 단계;
(e) 포털의 로컬 버스로부터, 인터셉트된 타임아웃 요구 메시지가 주소지정된 수신지 버스까지 원격 시간 응답 값들이 (a)에서 기술된 레지스터 테이블내에 단계 (c)에 의해 앞서 저장되었다면, 초기 요구기(requester)로부터 타임아웃 요구 메시지의 포털에 의해 인터셉트하는 단계;
(f) 포털의 로컬 버스로부터, 단계 (e)로부터 인터셉트된 타임아웃 요구 메시지가 다음중 하나에 의해 주소지정된 수신지 버스까지 원격 트랜잭션에 대한 원격 타임아웃 값들을 가지는 대응의 타임아웃 응답 메시지의 포털에 의한 합성하는 단계:
(i) 단계 (e)에서 식별된 타임아웃 요구 메시지를 가지는 상기 초기 요구기가 포털의 로컬 버스상에 존재한다면, 레지스터 테이블로부터 원격 타임아웃 값들을 검색하는 단계; 및
(ii) 단계 (e)에서 식별된 타임아웃 요구 메시지의 상기 초기 요구기가 포털의 로컬 버스상에 존재하지 않으면 레지스터 테이블로부터 검색된 원격 시간 간격 값들을 계산하는 단계로서, max_remote_payload 값이: (1) 단계 (b)에서 인터셉트된 타임아웃 응답 메시지와 (2) 대응하는 레지스터 테이블 엔트리중 더 작은 max_remote payload 값이고, 인터셉트된 타임아웃 메시지내의 remote timeout seconds, remote timeout cycles 및 hop count 값들은 수신지 버스에 대응하는 레지스터 테이블 엔트리에 각각 더해지는 단계; 및
(g) 단계 (e)에서 인터셉트된 타임아웃 요구 메시지의 상기 초기 요구기에 단계 (f)에서 합성된 타임아웃 응답 메시지를 보내는 단계.
단계 (a)에 관련하여, 일 실시예에서, 레지스터 테이블은 1023개의 엔트리들을 가지지만, 이 숫자는 본 발명이 1394와 다른 직렬 버스에 채용되거나 필요에 따라 달라질 수 있다.
단계 (e)에 관련하여, 포털은 인터셉트된 타임아웃 메시지를 수신지 버스에 전송하지 않을 것이고, 종래의 IEEE 1394 표준에 따르는 것이 아닌 다른 과정이다.
단계 (f) 내지 (g)에 관련하여, 인터셉트된 타임아웃 요구 메시지에서의 remote_timeout_seconds, remote_timeout_cycles 및 hop_count 값들은 수신지 버스 ID에 대응하는 테이블 레지스터 엔트리에서의 값들에 더해진다. max_remote_payload 값은 인터셉트된 타임아웃 요구 메시지에서의 값과 수신지 버스 ID에 대응하는 테이블 레지스터 엔트리에 저장된 값에서 더 작은 값으로 정해진다.
(a)에서 기술된 레지스터 테이블은 포털의 RAM을 포함할 수 있다.
소스 및 수신지 버스들은 하나 또는 그 이상의 버스 브리지들을 통해 직렬 경로에 접속될 수 있다. 버스는 브리지 네트워크의 일부를 포함하는데, 1394 브리지 네트워크가 될 수 있다.
도 1은 제 1 또는 소스 버스(100), 제 2 버스(110) 및 제 3 또는수신지(destination) 버스(120)를 포함하는 IEEE 1394 직렬 버스 네트의 예를 도시한다; 제 1 버스(100) 및 제 2 버스(110)는 브리지(130)에 의해 연결되고, 제 2 버스(110) 및 제 3 버스(120)는 브리지(140)에 의해 연결된다.
브리지(130)는 포털들(131 및 132)을 포함하고, 브리지(140)는 포털들(141 및 142)을 포함한다. 노드(150)는 타임아웃 요구 메시지(TIMEOUT request massage) 송출기로서 제 1 버스(100)상에 존재하고, 노드(160)는 타임아웃 요구 메시지 어드레스 노드의 수신지로서 제 3 버스(120)상에 존재한다. 본 발명이 적용하는 네트워크 구성은 단지 이 예시로 제한되지 않는다.
첫째로, 노드(150)는 소스 버스(100)에서 수신지 버스(120)까지 원격 시간 경과 값(remote timeout value)들을 얻고 있을 때 타임아웃 요구 메시지를 노드(160)에 보낸다. 이 타임아웃 요구 메시지는 포털(142) 또는 수신지 버스(120) 한쪽에 주소지정될 수 있다.
타임아웃 요구 메시지는 IEEE1394.1 브리지 초안 표준(Bridge draft standard)에 따라 처리 될 것이고 수신지 버스(120)상의 마지막 출구 포털(142)에 전송될 것이다.
타임아웃 요구 메시지의 수신으로, 마지막 출구 포털(142)은 P1394.1 규격 초안(working draft)에 따라 원격 타임아웃 값들을 계산할 것이고, (배경 재료로서 레퍼런스에 의해 여기에서 통합된 콘텐츠들) 계산된 원격 타임아웃 정보를 구비한 타임아웃 응답 메시지를 수신지 버스(100)상의 원래 타임아웃 요구 메시지 송출기(150)에 보낼 것이다.
추가하여, 버스(110)는 노드(155)도 가지는데, 다음의 설명에서 나타난다. 본 발명의 일 면에서, 노드(155)가 타임아웃 요구 메시지를 버스(120)쪽으로 보낼 때, 원격 타임아웃 값들이 IEEE 1394 초안 표준에 따라 계산되는 동안 타임아웃 요구 메시지는 포털(142)에 전송될 것이다.
이어서, 포털(142)은 원격 타임아웃 값들을 구비한 타임아웃 응답 메시지를 버스(110)상의 원래 타임아웃 메시지 리퀘스터(requester)(155)에 보낸다. 포털(141)은 포털의 로컬 버스에 주소지정되기 때문에 포털(142)에 의해 보내지는 타임아웃 응답 메시지를 인터셉트하고, 버스(110)에서 버스(120)까지 타임아웃 응답 메시지에서 수신지 버스(120)에 대응하는 레지스터 테이블 엔트리(register table entry)에 원격 트랜잭션(transaction)에 대한 원격 타임아웃 값들을 저장할 것이다. 그래서, 버스(100)상의 노드(150, 151) 또는 포털(131)이 타임아웃 요구 메시지를 버스(120)쪽으로 보낼 때, 포털(141)은 타임아웃 요구 메시지를 인터셉트하고 자신의 타임아웃 응답 메시지를 본 발명에 따른 계산된 원격 타임아웃 값들에 합할 것이다.
소스 버스(100)상의 포털(131)은 그것의 로컬 버스(100)에 주소지정된다면 타임아웃 응답 메시지를 가로챌 것이고, 타임아웃 응답 메시지에서 발견되는 원격 타임아웃 값을 수신지 버스(120)의 버스 ID에 대응하는 내부 레지스터 테이블(133)(도 2에서 자세하게 도시되는)의 엔트리에 저장할 것이다.
제 1 엔트리 포털은 IEEE 1394.1 브리지 초안 표준에서 설명되는 그것의 로컬 버스상의 원래 요구기에 타임아웃 응답 메시지를 전송한다.
레지스터 테이블(133)에 저장되는, 소스 버스(100)에서 수신지 버스(120)까지의 원격 타임아웃 값들은 소스 버스(100)의 소스 버스 ID 또는 수신지 버스(120)의 수신지 버스 ID가 무효가 되거나 P1394.1 규격 초안에서 언급된 버스 라우팅 스테이트(bus routing state)에 의해 깨끗해 질 때까지 유효할 것이다.
그래서, 상기 절차는 타임아웃 응답 메시지를 가로 채는 것과 메시지에서 발견되는 원격 타임아웃 값들을 레지스터 테이블에 저장하는 것에 유용할 수 있다. 다음은, 타임아웃 요구 메시지를 인터셉트하는 과정 및 합해진 타임아웃 응답 메시지를 제공하는 과정이 아래에서 설명될 것이다.
이어서, 버스(100)상의 포털(131)이 동일한 소스 버스(100)상의 다른 노드(151)(또는 노드(150))에 의해 시작된 타임아웃 요구 메시지를 받을 때, 제 1 엔트리 포탈(131)은 수신지 버스(120)에 대응하는 내부 레지스터 테이블(133)의 엔트리로부터 검색될 수 있는 원격 타임아웃 값들을 포함하는 타임아웃 응답 메시지를 합하는데, 소스 버스(100)에서 수신지 버스(120)까지의 유효 원격 타임아웃 값들은 위에서 설명되는 엔트리 포털(131)에 의해 레지스터 테이블에 저장되고 있기 때문이다.
이어서, 버스(100)상의 제 1 엔트리 포털(131)이 타임아웃 요구 메시지를 수신지 버스(120)에 전송하는 대신에, 이러한 합해진 타임아웃 응답 메시지를 타임아웃 요구 메시지 요구기(151)에 보낸다.
그래서, 만약 엔트리 포털(131)의 레지스터 테이블이 내부 레지스터 테이블(133)내에 로컬 버스(100)부터 수신지 버스(120)까지의 원격 트랜잭션에 대하여 요구된 원격 타임아웃 값들을 저장할 수 있다면, 버스(100)상의 제 1 엔트리 포털(131)은 타임아웃 응답 메시지를 합할 수 있다.
도 2는 포털의 로컬 버스에서 각 특정 버스까지의 트랜잭션에 대하여 타임아웃 값들을 저장하는 레지스터 테이블의 세부 구조를 도시한다. 레지스터 테이블이 1023개의 사용 가능한 버스들에 대한 1023개의 엔트리들로 구성될 수 있을 때, 테이블 엔트리들의 수는 1023개로 제한되지 않고 달라질 수 있다.
각 테이블 엔트리는 최소 4개의 필드들로 구성된다; IEEE1394.1 브리지 초안 표준에서 정의된 타임아웃 메시지에 있는 것들과 같은 remote_timeout_seconds, remote timeout cycles, max_remote_payload 및 hop_count. 그리고 포털의 로컬 버스에서 특정 수신지 버스까지의 트랜잭션들에 대한 각 타임아웃 값은 특정 수신지 버스에서 테이블 엔트리에 대응하는 동일한 필드에 저장된다.이 레지스터 테이블(133)은 본 기술 분야에 공지된 램 또는 임의의 형태의 스토리지로 구성될 수 있다.
바꾸어 말하면, 현재 청구된 발명에 따라, 한 포털이 타임아웃 응답 메시지를 전송하고 포털의 로컬 버스에 주소지정되며, 로컬 버스와 특정 원격 주소지 버스사이의 트랜잭션에 대한 원격 시간 간격 값들을 포함하는 마지막 포털이라면, 시간-간격 응답 메시지는 시간-간격 응답 메시지 및 앞서 언급된 단계들 (b) 및 (c)에 의해서 특정 원격 주소지 버스에 대응하는 내부 레지스터 테이블 엔트리중 엔트리에 타임아웃 응답 메시지내의 원격 타임아웃 값들의 저장을 제외한 IEEE 1394.1 브리지 초안 표준에 따라 처리된다.
추가하여, 소스 버스(100)와 수신지 버스(120)사이의 원격 타임아웃 값들의 스토리지에 이어, 포털로서 동일한 버스상의 다른 노드들이 노드(151) 및/또는 가능한 동일 노드(150) 같은 곳에 연결될 때, 현재 방법은 로컬 버스(100)에서 동일 원격 버스 (120)까지의 원격 시간 값을 필요 하는 동일 버스(100)상의 브리지 포털(131)을 포함하며, 제 1 엔트리 포털(131)의 레지스터 테이블(133)에 앞서 저장되었던 타임아웃 값들로부터 검색된 원격 타임아웃 값들을 포함하는 타임아웃 응답 메시지를 합하여 이용된다. 이러한 타임아웃 응답 메시지의 합 및 타임아웃 요구 메시지 송출기에의 직접 회답은 버스(100)와 버스(120)사이의 정체를 상당히 감소시키고, 원격 타임아웃 값들의 획득을 촉진하는데, 제 2 요구 노드(151)는 IEEE1394.1 브리지 초안 표준에 따른 재래의 방법에 의한 것보다 로컬 버스에서 수신지 버스(120)까지의 원격 타임아웃 값들을 제 1 엔트리 포털(131)로부터 훨씬 빨리 직접 수신하기 때문이다. 도 1에서 도시되는 네트워크 구조의 도해는 예이고 한정되지 않으며, 당업자는 임의의 수의 버스들이 직렬로 연결될 수 있는 것으로, 네트워크 구조가 도해에 한정되지 않는 것을 알 수 있다. 본 발명을 1394 구조에 적용할 때, IEEE1394 표준에 따라 허용되는 동안 네트워크 구조가 가변될 수 있다는 것을 알 수 있다. 예를 들어, 소스 버스 및/또는 수신지 버스는 더 많은 브리지 포털들에 연결 될 수 있고/있거나 소스 버스와 수신지 버스사이의 더 많은 중간 버스들이 될 수 있다.
또한, 청구된 본 발명은 중간 버스(110)상의 포털(141)이 이미 중간 버스(110)에서 특정 수신지 버스(120)까지의 원격 시간 간격 값들을 과정 (b) 및(c) 의해 수신지 버스(120)에 대응하는 내부 레지스터 테이블 엔트리(143)에 저장하는 경우에 적용될 수 있다. 합해진 메시지는 끼어든 메시지 및 대응하는 레지스터 테이블 엔트리의 더 작은 max_remote_payload 값을 포함할 수 있다.
예를 들어, 이러한 트랜잭션에 대한 소스 버스로서 버스(110)사의 노드(155)는 타임아웃 요구 메시지를 수신지 버스(120)에 보낼 수 있다. 청구된 본 발명에 따라, 소스 버스(110)상의 포털(141)은 수신지 버스상의 포털(142)에 의해 보내지는 대응하는 타임아웃 응답 메시지를 가로챘고, 소스 버스(110)에서 수신지 버스(120)까지의 원격 시간 간격 값들을 수신지 버스(120)의 버스 ID에 대응하는 내부 레지스터 테이블 엔트리(143)에 저장했다.
도 4의 단계(425(ii))에 대해 나중에 기술된 것으로, 버스(110)상의 포털(141)이 소스 버스(100)에서 수신지 버스(120)까지의 원격 트랜잭션 타임아웃 값들에 대한 소스 버스(100)상의 노드에 의해 유출된 타임아웃 요구 메시지를 받을 때, 중간 버스(110)상의 포털(141)은 타임아웃 요구 메시지를 가로 채고 응답을 합할 것이다.
이 과정은 소스 버스(100)상의 노드에 의해 타임아웃 요구에 대한 소요 시간을 상당히 단축시키는데, 중간 버스상의 포털(141)은 만약 타임아웃 요구 및 타임아웃 응답이 소스 버스(100)와 수신지 버스(120)의 노드들 사이에 전환되었던 것보다 실질적으로 더 빠르게 저장된 타임아웃 값들을 검색하고 전체 타임아웃 값들을 계산하기 때문이다.
또한, 이 방법은 직렬 버스 자원들을 다른 노드들을 제공하고 네트워크의 전체 트랜잭션 시간을 감소시키는 것으로부터 자유롭게 한다.
도 3은 타임아웃 응답 메시지를 인터셉트하는 것 및 원격 시간 값들을 내부 레지스터 테이블에 저장하는 것으로 방법의 단계들의 개요를 도시한다.
단계(310)에서, 포털의 로컬 버스에 주소지정된 타임아웃 응답 메시지는 인터셉트되어 진다.
단계(320)에서, 단계(310)에서 인터셉트된 타임아웃 응답 메시지에의 원격 타임아웃 값들은 수신지 버스 ID에 대응하는 레지스터 테이블에 저장된다.
단계(330)에서, 인터셉트된 타임아웃 응답 메시지는 원래 주소지정된 노드에 전송된다.
따라서, 단계들(310 내지 330)은 그 후의 요구들을 검색하는 원격 시간 값들의 저장을 허용하는데, 직렬 버스의 프로토콜의 효율를 높이기 위해서이다.
도 4는 타임아웃 요구를 인터셉트하기 및 대응하는 타임아웃 응답 메시지를 원격 타임아웃 값들에 합하기에 대한 과정의 설명을 도시한다.
단계(410)에서, 만약 이전에 레지스터 테이블에 저장되어 있던 타임아웃 요구 메시지가 주소지정된 포털의 로컬 버스에서 수신지 버스까지의 원격 트랜잭션 타임아웃 값들을 가지는 타임아웃 요구 메시지가 수신된다면, 단계(415)는 다음으로 넘어갈 것이고, 그렇지 않으면 단계(410)는 처리될 다음 단계가 될 것이다.
단계(415)에서, 수신된 타임아웃 요구 메시지는 포털인 단계(420)에 의해 인터셉트되어져 그 다음으로 수행된다.
단계(420)에서, 인터셉트된 타임아웃 요구 메시지의 소스 버스 ID가 포털의로컬 버스 ID와 동일한지 여부가 결정된다. 만약 단계(420)가 아니오라고 응답되면, 단계(425(ii))는 그 다음에 실행된다. 이러한 두 단계들은 요구기가 로컬 버스로부터의 노드가 되거나, 또는 원격 소스 버스로부터의 노드가 되는가의 시나리오를 포함한다.
단계(425(i))에서, 대응하는 타임아웃 응답 메시지는 수신지 버스에 대응하는 레지스터 테이블 엔트리로부터 검색된 수신지 버스에서 포털의 버스에 대한 원격 타임아웃 값들과 합해진다.
대안으로, 단계(425(ii))가 실행될 때, 대응하는 타임아웃 응답 메시지는 합해질 때, 그것의 타임아웃 값들은 다음의 과정에 의해 계산된다: 인터셉트된 타임아웃 요구 메시지에의 remote_timeout_cycles 및 hop_count 값들은 수신지 버스에 대응하는 테이블 레지스터에의 값들에 각각 더해진다. max_remote_payload 값은 인터셉트된 시간_경과 요구 메시지의 값과 수신지 버스 ID에 대응하는 테이블 레지스터 엔트리에 저장된 값중 더 작은 것으로 정해진다.
단계(430)에서, 합해진 타임아웃 응답 메시지는 인터셉트된 타임아웃 요구 메시지의 소스 ID에 의해 식별된 원래의 요구기에 보내진다.
앞의 기술들과 도면들은 예시의 목적으로 나타내어지고 한정되지 않으며, 당업자는 발명의 기술정신 및 첨부된 클레임들의 범위에서 만들어 질 수 있는 많은 작은 변화들을 이해한다.

Claims (16)

  1. 소스 버스의 노드와 수신지 버스의 노드사이의 원격 트랜잭션들에 대한 타임아웃 값들을 얻는데 요구되는 트랜잭션 타임을 감소시키는 방법에 있어서,
    (a) 포털의 로컬 버스(100)로부터 동일 넷상의 특정 수신지 버스(120)까지 각 원격 타임아웃 값들을 저장하는 다수의 엔트리들을 포함하는 포털(131)에 의하여 레지스터 테이블(133)을 구현하는 단계로서, 상기 레지스터 테이블의 N번째 엔트리는 N의 버스 ID에 대응하는, 상기 구현 단계;
    (b) 타임아웃 응답 메시지가 상기 포털의 로컬 버스에 주소지정되면 출구 포털(131)에 의해 특정의 주소지정된 노드(150)로 가는 도중에 상기 타임아웃 응답 메시지를 인터셉트하는 단계로서, 상기 타임아웃 응답 메시지는 원격 타임아웃 값들을 포함하는, 상기 인터셉트 단계;
    (c) 단계 (a)에서 구현된 상기 레지스터 테이블내의 상기 다수의 엔트리들중 대응하는 엔트리 내에 단계 (b)에서 인터셉트된 상기 타임아웃 응답 메시지에 포함된 상기 원격 타임아웃 값들을 저장하는 단계;
    (d) 상기 특정 주소지정된 노드(150)에 단계 (b)에서 인터셉트된 상기 타임아웃 응답 메시지를 전송하는 단계;
    (e) 상기 포털의 상기 로컬 버스로부터, 상기 인터셉트된 타임아웃 요구 메시지가 주소지정된 상기 수신지 버스까지 원격 시간 응답 값들이 (a)에서 기술된 상기 레지스터 테이블 내에 단계 (c)에 의해 앞서 저장되었다면, 초기요구기(requester;151)로부터 타임아웃 요구 메시지의 포털(131)에 의해 인터셉트하는 단계;
    (f) 포털의 상기 로컬 버스로부터, 단계 (e)로부터 인터셉트된 타임아웃 요구 메시지가 다음중 하나에 의해 주소지정된 상기 수신지 버스까지 원격 트랜잭션에 대한 상기 원격 타임아웃 값들을 가지는 대응의 상기 타임아웃 응답 메시지의 상기 포털(131)에 의한 합성하는 단계:
    (i) 단계 (e)에서 식별된 상기 타임아웃 요구 메시지의 상기 초기 요구기가 상기 포털의 상기 로컬 버스 상에 존재한다면, 상기 레지스터 테이블(133)로부터 상기 원격 타임아웃 값들을 검색하는 단계; 및
    (ii) 단계 (e)에서 식별된 상기 타임아웃 요구 메시지의 초기 요구기가 상기 포털의 로컬 버스 상에 존재하지 않으면 상기 레지스터 테이블(133)로부터 검색된 상기 원격 타임아웃 값들을 계산하는 단계로서, max_remote_payload 값은: (1) 단계 (e)에서 상기 인터셉트된 타임아웃 응답 메시지와 (2) 대응하는 레지스터 테이블 엔트리중 더 작은 최대-원격 페이로드(max_remote payload) 값이고, 상기 인터셉트된 타임아웃 메시지내의 원격 타임 아웃 초(remote timeout seconds), 원격 타임아웃 사이클(remote timeout cycles) 및 홉 카운트(hop count) 값들은 상기 대응하는 레지스터 테이블 엔트리에 각각 더해지는, 상기 계산 단계; 및
    (g) 단계 (e)에서 인터셉트된 상기 타임아웃 요구 메시지의 초기 요구기에 단계 (f)에서 합성된 상기 타임아웃 응답 메시지를 보내는 단계를 포함하는, 트랜잭션 타임을 감소시키는 방법.
  2. 제 1 항에 있어서,
    단계 (a)에서 기술된 상기 레지스터(133)에 대한 스토리지 영역이 RAM을 포함하는, 트랜잭션 타임을 감소시키는 방법.
  3. 제 1 항에 있어서,
    적어도 상기 소스 버스 및 수신지 버스가 버스 브리지(130)에 의해 접속되는 직렬 버스를 포함하는, 트랜잭션 타임을 감소시키는 방법.
  4. 제 3 항에 있어서,
    적어도 하나의 중간 버스(110)가 상기 소스 버스와 상기 수신지 버스사이의 직렬 경로에 접속되는, 트랜잭션 타임을 감소시키는 방법.
  5. 제 1 항에 있어서,
    단계 (a)에서 기술된 상기 소스 버스(100) 및 수신지 버스(120)가 브리지 네트워크를 통해 접속되는, 트랜잭션 타임을 감소시키는 방법.
  6. 제 5 항에 있어서,
    상기 브리지 네트워크는 IEEE 1394 브리지 네트워크를 포함하는, 트랜잭션 타임을 감소시키는 방법.
  7. 소스 버스의 노드들과 수신지 버스의 노드들 사이의 원격 트랜잭션들에 대한 전체 타임아웃 값들을 얻기 위하여 트랜잭션 타임을 감소시키는 방법으로서,
    (a) 브리지들(130, 140)을 통해 상기 소스 버스와 수신지 버스사이의 접속된 중간 버스(110)를 가지는 직렬 경로에 소스 버스(100) 및 수신지 버스(120)를 제공하는 단계;
    (b) 상기 중간 버스(110)에 의해 상기 수신지 버스(120)의 출구 포털(142)로부터 상기 소스 버스(100)상의 특정 타임아웃 요구 노드(150)까지 타임아웃 요구 메시지를 인터셉트하는 단계;
    (c) 상기 중간 버스중 상기 포털(141)의 스토리지 영역(141)에 단계 (b)에서 인터셉트된 타임아웃 응답 메시지로부터 제 1 원격 타임아웃 값들을 저장하고 상기 소스 버스 (100)상의 상기 특정 타임아웃 요구 노드(150)에 단계 (b)에서 인터셉트된 타임아웃 응답 메시지를 전송하는 단계;
    (d) 상기 중간 버스(110)의 상기 포털에 의해 상기 버스중 상기 노드들의 이어지는 요구 노드(151)로부터 상기 수신지 버스(120)중 상기 노드들의 한 노드(160)까지 이어지는 타임아웃 요구 메시지를 인터셉트하는 단계;
    (e) 단계 (c)에서 저장된 제 1 타임아웃 값들을 상기 소스 버스와 최대-원격 페이로드(max_remote payload) 값을 제외한 중간 버스사이의 제 2 원격 시간 간격 값들을 더함으로써 상기 중간 버스의 상기 포털(141)이 상기 소스 버스(100)로부터 상기 수신지 버스(110)까지 원격 타임아웃 값들을 계산하는 단계;
    (f) 단계 (e)에서 계산된 상기 전체 타임아웃 값들을 포함하는 상기 합성된 타임아웃 응답, 상기 중간 버스의 상기 포털(141)에 의해 시간경과 응답 메시지 합성하는 단계; 및
    (g) 상기 합성된 타임아웃 응답 메시지를 타임아웃 요구 메시지가 시작된 단계 (d)에서 상기 소스 버스의 상기 이어지는 요구 노드(151)에 전송하는 단계를 포함하는, 트랜잭션 타임을 감소시키는 방법.
  8. 제 7 항에 있어서,
    상기 최대-원격 페이로드(max_remote payload) 값은 상기 수신지 버스에 대응하는 레지스터 테이블 엔트리 및 상기 메시지에서 상기 인터셉트된 값들에서 가장 작은 최대-원격 페이로드(max_remote payload)로 하는, 트랜잭션 타임을 감소시키는 방법.
  9. 제 8 항에 있어서,
    상기 소스 버스, 중간 버스, 및 수신지 버스는 브리지 네트워크에 의해 접속되는, 트랜잭션 타임을 감소시키는 방법.
  10. 제 7 항에 있어서,
    단계 (c)에서 기술된 상기 스토리지 영역(143)은 상기 중간 버스상의 포털의 RAM인, 트랜잭션 타임을 감소시키는 방법.
  11. 제 7 항에 있어서,
    상기 타임아웃 응답 메시지의 상기 타임아웃 값들을 상기 소스 버스의 스토리지 영역에 저장하는 것을 다시 포함하는, 트랜잭션 타임을 감소시키는 방법.
  12. 제 11 항에 있어서,
    상기 스토리지 영역은 엔트리 포털의 RAM인, 트랜잭션 타임을 감소시키는 방법.
  13. 제 7 항에 있어서,
    상기 소스 버스 및 상기 수신지 버스는 1394 IEEE 브리지 네트워크를 포함하는, 트랜잭션 타임을 감소시키는 방법.
  14. 제 7 항에 있어서,
    상기 소스 버스, 상기 중간 버스, 및 상기 수신지 버스는 1394 IEEE 브리지 네트워크를 포함하는, 트랜잭션 타임을 감소시키는 방법.
  15. 감소된 응답 타임아웃 관리 시스템을 구비하는 직렬 버스 브리지 네트워크로서,
    레지스터 테이블(133)을 구비한 제 1 포털을 가지는 소스 버스(100);
    레지스터 테이블(143)을 구비한 제 2 포털(141)을 포함하는 브리지(140)를 가진 최소한 하나의 중간 버스(110);
    상기 소스 버스에 직렬로 접속된 다수의 버스 브리지들(130, 140), 상기 최소 하나의 중간 버스(120) 및 상기 수신지 버스(120);
    부착된 노드로부터 타임아웃 요구를 받는 수단을 포함하는 상기 버스(110)의 상기 제 1 포털(131);
    포함된 타임아웃 값들을 가지는 타임아웃 응답 메시지를 보내고 타임아웃 요구 메시지를 받는 수단을 포함하는 상기 수신지 버스(120)의 상기 출구 포털(142);
    상기 수신지 버스(120)의 상기 포털(142)에 의해 보내진 상기 타임아웃 응답 메시지를 상기 중간 버스(110)의 상기 제 2 포털(141)에 의해 인터셉트하고, 상기 수신지 버스의 상기 출구 포털로부터 상기 타임아웃 응답 메시지의 값들을 상기 중간 버스의 상기 제 2 포털(141)의 상기 레지스터 테이블에 저장하는 인터셉트 및 저장 수단;
    상기 중간 버스(110)의 상기 제 2 포털(141)을 상기 소스 버스상의 노드로부터 시간 응답 요구를 인터셉트하고, 상기 시간 요구에서 상기 수신지 버스의 ID가 상기 중간 버스(110)의 상기 제 2 포털(141)의 상기 레지스터 테이블(133)에 저장된 그것의 타임아웃 값들을 가지는 상기 수신지 버스의 ID에 대응할 때, 상기 수신지 버스(120)와 상기 중간 버스(110)사이의 상기 타임아웃 값들과 상기 인터셉트된 타임아웃 요구 메시지 및 대응하는 테이블 엔트리 중에서 더 작은 값으로 최대-원격 페이로드(max_remote payload) 값들을 제외한, 상기 소스 버스(100) 및 상기 중간 버스(110)사이의 상기 타임아웃 값들을 더해서 얻은 전체 타임아웃 값들을 포함하는 타임아웃 응답 메시지를 합성하는 상기 제 2 포털(141)로 하는 인터셉트 및 합성 수단;
    상기 소스 버스상의 상기 요구 노드에 보내지는 상기 전체 타임아웃 값들을 가지는 상기 합성된 타임아웃 응답 메시지를 전송하는 수단을 포함하는, 직렬 버스 브리지 네트워크.
  16. 제 15 항에 있어서,
    저장을 위한 상기 수단은 RAM(133, 134, 143, 144)을 포함하는, 직렬 버스 브리지 네트워크 장치.
KR10-2004-7010303A 2001-12-27 2002-12-09 Ieee 1394 브리지 직렬 버스 네트워크에서 효과적인타임아웃 메시지 처리 KR20040066933A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/029,826 US6880025B2 (en) 2001-12-27 2001-12-27 Efficient timeout message management in IEEE 1394 bridged serial bus network
US10/029,826 2001-12-27
PCT/IB2002/005287 WO2003060735A1 (en) 2001-12-27 2002-12-09 An efficient timeout message management in ieee 1394 bridged serial bus network

Publications (1)

Publication Number Publication Date
KR20040066933A true KR20040066933A (ko) 2004-07-27

Family

ID=21851094

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2004-7010303A KR20040066933A (ko) 2001-12-27 2002-12-09 Ieee 1394 브리지 직렬 버스 네트워크에서 효과적인타임아웃 메시지 처리

Country Status (9)

Country Link
US (1) US6880025B2 (ko)
EP (1) EP1463999B1 (ko)
JP (1) JP2005515670A (ko)
KR (1) KR20040066933A (ko)
CN (1) CN1320470C (ko)
AT (1) ATE302974T1 (ko)
AU (1) AU2002353302A1 (ko)
DE (1) DE60205777T2 (ko)
WO (1) WO2003060735A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6728809B1 (en) * 1999-09-09 2004-04-27 Matsushita Electric Industrial Co., Ltd. Time-out control apparatus, terminal unit, time-out control system and time-out procedure
EP1199839A1 (en) * 2000-10-19 2002-04-24 THOMSON multimedia Method for making bridge aware nodes communicate over hiperlan 2 bridges
AU2003280047A1 (en) * 2002-11-12 2004-06-03 Koninklijke Philips Electronics N.V. Method and apparatus for efficient timeout message management
DE102005005484A1 (de) * 2005-02-04 2006-08-10 Deutsche Thomson-Brandt Gmbh Netzwerkstation sowie Computer-Programm-Produkt, welches in den internen Speicher einer Netzwerkstation ladbar ist
US8411684B1 (en) * 2009-10-26 2013-04-02 Mcafee, Inc. System, method, and computer program product for determining a hop count between network devices utilizing a binary search
US20120320909A1 (en) * 2011-06-16 2012-12-20 Ziegler Michael L Sending request messages over designated communications channels
JP7179489B2 (ja) * 2018-05-18 2022-11-29 キヤノン株式会社 ストレージシステム及びその制御方法、プログラム、並びに記憶制御システム
CN113115138B (zh) * 2021-03-24 2022-08-05 烽火通信科技股份有限公司 消息交互超时判断方法、装置、设备及存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5793976A (en) * 1996-04-01 1998-08-11 Gte Laboratories Incorporated Method and apparatus for performance monitoring in electronic communications networks
US6032261A (en) * 1997-12-30 2000-02-29 Philips Electronics North America Corp. Bus bridge with distribution of a common cycle clock to all bridge portals to provide synchronization of local buses, and method of operation thereof
US6829225B2 (en) * 1998-02-20 2004-12-07 Apple Computer, Inc. Method for computing speed map for IEEE-1394 network
KR100298979B1 (ko) * 1998-06-12 2001-09-06 윤종용 아이 트리플 이 1394 시리얼 버스 토폴로지 최적화방법
US6728809B1 (en) * 1999-09-09 2004-04-27 Matsushita Electric Industrial Co., Ltd. Time-out control apparatus, terminal unit, time-out control system and time-out procedure
US6748559B1 (en) * 2000-10-19 2004-06-08 International Business Machines Corporation Method and system for reliably defining and determining timeout values in unreliable datagrams
EP1199839A1 (en) * 2000-10-19 2002-04-24 THOMSON multimedia Method for making bridge aware nodes communicate over hiperlan 2 bridges

Also Published As

Publication number Publication date
US20030126332A1 (en) 2003-07-03
DE60205777T2 (de) 2006-06-01
DE60205777D1 (de) 2005-09-29
EP1463999B1 (en) 2005-08-24
CN1608253A (zh) 2005-04-20
US6880025B2 (en) 2005-04-12
AU2002353302A1 (en) 2003-07-30
JP2005515670A (ja) 2005-05-26
CN1320470C (zh) 2007-06-06
ATE302974T1 (de) 2005-09-15
EP1463999A1 (en) 2004-10-06
WO2003060735A1 (en) 2003-07-24

Similar Documents

Publication Publication Date Title
US6144668A (en) Simultaneous cut through and store-and-forward frame support in a network device
US5790530A (en) Message-passing multiprocessor system
US6189044B1 (en) Dynamic routing method for packet switched satellite communications
US5918021A (en) System and method for dynamic distribution of data packets through multiple channels
US6731652B2 (en) Dynamic packet processor architecture
JP3294075B2 (ja) データ転送方法
US6950394B1 (en) Methods and systems to transfer information using an alternative routing associated with a communication network
US6549946B1 (en) Apparatus and method for telecommunication routing and parameter negotiation
JP3167906B2 (ja) データ伝送方法及びシステム
US6791948B1 (en) Distributed switch and connection control arrangement and method for digital communications network
JPH0662053A (ja) パケツト伝送システム
US6539450B1 (en) Method and system for adjusting isochronous bandwidths on a bus
KR20040066933A (ko) Ieee 1394 브리지 직렬 버스 네트워크에서 효과적인타임아웃 메시지 처리
US6195334B1 (en) Apparatus and method for terminating a data transfer in a network switch in response to a detected collision
US6393001B1 (en) Satellite communication system, routing method for the system and storage device with program of the routing
SE470299B (sv) Kösystem för väljare med "Fast-Circuit"-egenskaper
JP2005524265A (ja) 加入者接続の動的修正
KR20050074584A (ko) 효과적인 타임아웃 메시지 관리를 위한 방법 및 장치
JP4365028B2 (ja) コンピュータネットワークにおける仮想回路の受信装置の状態を表す情報を転送するシステム
JP3460080B2 (ja) 分散管理型通信方法及び装置
JP2001007862A (ja) 通信負荷分散方法
KR0154016B1 (ko) 랜 에뮬레이션 클라이언트에서 랜 에뮬레이션 에이알피 캐시를 이용하여 목적지 랜 에뮬레이션 클라이언트의 에이티엠 어드레스를 얻는 방법
JP3890423B2 (ja) 分散管理型通信方法及び装置
JPH07219917A (ja) ネットワ−クシステム
JPH07226758A (ja) トークン・スター・スイッチ

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid