KR19990087053A - 데이터 전송 시스템 및 데이터 전송 방법과 데이터 송신 장치및 데이터 송신 방법 - Google Patents

데이터 전송 시스템 및 데이터 전송 방법과 데이터 송신 장치및 데이터 송신 방법 Download PDF

Info

Publication number
KR19990087053A
KR19990087053A KR1019980706438A KR19980706438A KR19990087053A KR 19990087053 A KR19990087053 A KR 19990087053A KR 1019980706438 A KR1019980706438 A KR 1019980706438A KR 19980706438 A KR19980706438 A KR 19980706438A KR 19990087053 A KR19990087053 A KR 19990087053A
Authority
KR
South Korea
Prior art keywords
data
transmission
transmitted
period
amount
Prior art date
Application number
KR1019980706438A
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 KR19990087053A publication Critical patent/KR19990087053A/ko

Links

Classifications

    • 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]
    • H04L12/40Bus networks
    • 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]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40058Isochronous transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5614User Network Interface
    • H04L2012/5618Bridges, gateways [GW] or interworking units [IWU]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5679Arbitration or scheduling

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스케줄링 주기 단위내에 전송할 수 있는 데이터량에 기초하여, 소정의 전송 주기보다 긴 스케줄링 주기로 인터럽트 신호가 생성되고, 소정의 전송 주기마다 데이터의 전송이 제어된다. 따라서, 전송 효율의 향상이 등시성 패킷의 오버헤드를 줄임으로써 가능해진다.

Description

데이터 전송 시스템 및 데이터 전송 방법과 데이터 송신 장치 및 데이터 송신 방법
도 1은, 미국 전기 전자 학회(The Internationa1 of Electrica1 and Electronics Engineers, inc. 이하, IEEE 라고 칭함) 1394 시리얼 버스의 패킷 전송 포맷의 예를 나타내고 있다. 동 도면에 나타내는 바와 같이, 패킷은, 125μsec의 등시성 사이클(Isochronous Cyc1e)로 전송되도록 이루어져 있다. 각 등시성 사이클의 선두에는, Cycle start arbitration(101-1, 101-2, …, 101-n)이 배치되며, 그 다음에는, Data prefix(111)에 계속해서 Cyc1e start packet(102-1, 102-2, …, 102-n)이 배치되어 있다. 이러한 Cyc1e start packet(102-1, 102-2, …, l02-n)의 다음에는, Data end(109)에 계속하여 Iso_gap(l10)이 배치되어 있다.
여기서, Cyc1e start arbitration(101-1, 101-2, …, 101-n) 및 Cyc1e start packet(102-1, 102-2, …, 102-n)에 의해서 구성되는 Cycle start는, IEEE 1394 시리얼 버스(이하, 단지, 1394 시리얼 버스, 또는 버스로 적당히 약칭한다)내의 사이클 마스터 노드에 의해서 송출되어, 등시성 사이클의 개시를 나타내는 패킷이다. Data prefix(111)는, 데이터 패킷 또는 비동기 전송에 있어서 긍정 응답 패킷의 개시를 나타내고, Data end(109)는, 데이터 패킷 또는 비동기 전송에 있어서 긍정 응답 패킷의 종료를 나타낸다. Iso_gap(110)는, 1394 시리얼 버스의 아이들을 나타내고, 등시성 전송의 서브 액션은, Iso-gap(110)에 의해서 분리되어 있다.
Iso_gap(110)의 다음에는, arbitration(103-1, l03-2, …, 103-n)이 배치되며, 그 다음에, 1394 시리얼 버스에 접속되어 있는 클라이언트 단말에 대한 n개의 채널의 등시성 패킷(104-11, 104-12, …, 104-nn)이 배치되어 있다. 각 등시성 패킷(104-11, 104-12, …, 104-nn)에는, 그 선두에, Data prefix(111)가 배치되어 있다.
등시성 전송은, 8비트로 나타나는 채널 번호를 사용하여, 클라이언트 단말에 대하여 브로드캐스트 송신이 행하여진다. 수신측은, 자신이 원하는 채널 번호의 데이터만을 받아들인다.
n번째의 등시성 패킷(104-1n, 104-1n, …, 104-nn)의 최후에는, Data end (109)가 배치되며, 그 다음에는, Subaction_gap(112)이 배치되어 있다. Subaction_gap(112)의 다음에, arbitration(105-l, 105-2, …, 105-n)이 배치되어 있다. 또한, Data prefix(111)를 통해서, 비동기 패킷인 Asynchronous Transfer (106-1, 106-2, …, 106-n)과 그것에 계속해서 Data end(109)가 배치되어 있다. 또한 그 다음에는, Ack_gap(113)을 통해서, Data prefix(111)에 계속하여 긍정 응답 패킷으로서의 Ack Transfer(107-1, 107-2, …, 107-n)과 그것에 계속하여 Data end(109)가 배치되어 있다.
Subaction_gap(112)은, 1394 시리얼 버스의 아이들을 나타내고 있다. 각 단말은 이러한 갭시간을 감시함으로서, 전송이 가능한지 어떤지를 판정한다. 일정 시간 이상의 아이들(Iso_gap(110)보다 길다)이 계속되면 비동기 전송을 희망하는 노드는 버스를 사용할 수 있다고 판정하여, 버스 획득을 위하여 아비트레이션(arbitration(105-1, 105-2, …, 105-n))을 실행한다. 버스의 사용권을 획득한 노드는, 비동기 전송의 데이터(Asynchronous Transfer(106-1, 106-2, …, 106-n))를 송신한다. 비동기 전송의 데이터를 수신한 노드는, 그 전송되어 온 데이터의 발신원의 노드에 대하여 수신 결과로서 긍정 응답 패킷(Ack Transfer(107-1, 107-2, …, 107-n)을 송신한다.
또한, 도 1로서는, 1개의 비동기 패킷의 전송이 행하여진 경우를 예로 들고있다. 최후에, Subaction_gap(114)이 배치되며, 그 후에, 다음의 등시성 사이클의 Cyc1e start arbitration(108-1, 108-2, …, 108-n)이 배치된다. 여기서, 등시성 사이클(#1)의 Cycle start arbitration(108-1)은, 등시성 사이클(#2)의 선두에 위치하는 Cyc1e start arbitration(l01-2)이다.
또한, 등시성 전송후, 다음 사이클까지는, 비동기 전송을 실행할 수 있다. 이러한 비동기 전송이, 다음 사이클 스타트의 전송 시간까지 계속해도, 그 비동기 전송은 중단되지 않고, 다음 버스의 아이들까지 기다린 후, 사이클 마스터 노드에 의해서 사이클 스타트 전송된다. 1개의 사이클이, 125μsec이상 계속된 경우에는, 다음 사이클이 그 분량만큼 단축되게 된다.
각 등시성 채널(등시성 패킷)의 길이는, 각 등시성 사이클마다, 등시성 채널에 할당된 전송 대역으로부터 산출되는 균등한 길이로 된다.
각 등시성 패킷에는, IEEE l394의 물리층(Physical Layer)에서 필요하게 되는 Data prefix를 위한 시간에 상당하는 오버헤드(기본 속도로서의 100Mbps(정확하게는, 98.304Mbps)의 BASE_RATE의 16 클록분의 시간에 상당하는 비트수), Data end를 위한 시간에 상당하는 오버헤드(상기 BASE_RATE의 24클록분의 시간에 상당하는 비트수), 등시성 패킷 헤더 및 애플리케이션 레이아웃의 정합을 취하기 위한 애플리케이션용 헤더가 필요하게 되지만, 그들의 오버헤드의 비율은, 등시성 패킷의 길이를 짧게 하면 할수록, 즉 등시성 채널에 필요한 대역이 작으면 작을수록 커진다.
예를 들면, ATM(Asynchronous Transfer Mode) 네트워크상의 비디오 서버로부터 IEEE 1394 시리얼 버스를 통해서, 각 클라이언트 단말에 대하여, 32K바이트의 동일 길이인 MPEG(Moving Picture Experts Group)-PS 패킷을 격납한 AAL(ATM Adaptation Layer) 5­PDU(Protoco1 Data Unit)의 스트림이, 2Mbps(2.048×106bps)의 CBR(Constant Bit Rate) 서비스로 전송되는 경우, ATM과 IEEE l394의 인터페이스 처리를 행하는 ATM/1394 Bridge가, 1등시성 사이클(125μsec=l/8000sec)내에, 각 클라이언트 단말에 대하여 송신해야 할 등시성 패킷 길이는, IP(Internet Protocol) 및 RFC(Request For Comments) 1483으로 규정되어 있는 IP/ATM(IP over ATM) 헤더를 제외하면, 32바이트(=2.048×106/8000/8)가 된다.
이 경우, 각 등시성 패킷에 있어서의 오버헤드는, Data prefix의 오버헤드가 약 16비트(=2바이트), IEEE 1394의 링크 레이어(Link Layer)로 규정되어 있는 등시성 헤더 및 CRC(Cyclic Redundancy Check) 필드가 12바이트, 애플리케이션용 헤더가 적어도 8바이트 필요하기 때문에, 합계 22바이트가 된다. 또한, Data end의 오버헤드는, 1등시성 사이클내에 송신하는 등시성 패킷수에 반비례하므로, 종래 예의 경우, 대단히 작은 값으로 되기 때문에, 여기서는 무시한다. 그 결과, ATM/1394 Bridge로부터, 각 클라이언트 단말로의 등시성 패킷은, 전체의 41%(=22바이트/(22바이트+32바이트))가 오버헤드로 되어, 대단히 높은 비율로 이루어진다.
또한, 1394 시리얼 버스의 전송 속도를 1OOMbps로 한 경우, 송신 가능한 등시성 패킷의 최대치는 1024바이트가 되지만, 이 때 ATM/1394 Bridge의 수용(접속)가능한 클라이언트 단말의 수는, IEEE 1394의 링크 레이어 이상의 계층의 오버헤드가 문제로 되기 때문에, 22바이트의 오버헤드로부터, Data prefix 분만 뺀 20바이트의 오버헤드를 고려하면, 다음 식에 의해, 1개의 1394 시리얼 버스당 19대가 한도로 된다.
1024바이트/(32바이트+20바이트) = 19.7
또한 소프트웨어에 의한 패킷의 취급이 어렵다고 하는 문제도 있다. 소프트웨어에 의한 패킷의 취급은, l25μsec라는 짧은 주기로 하는 것은 현실적이지 않기 때문에, 타이머 인터럽트 등에 의한 스케줄링을 기본적으로 처리를 행하는 것이 일반적이다. ATM/1394 Bridge에서, 스케줄링의 주기를 2msec로 하여, 클라이언트 단말의 수용대수를 최대 19대로 한 경우, 스케줄링 주기당 이벤트수(처리해야 할 오버헤드수)를 산출하면, 304 이벤트(=19×2×103/125)가 되며, 1등시성 패킷의 오버헤드 처리를 6.6μsec(=125μsec/19)이내로 하지 않으면 안되며, 현실적이지 않다.
본 발명은, 데이터 전송 시스템, 데이터 전송 방법, 데이터 송신 장치 및 데이터 송신 방법에 관한 것으로, 특히 보다 효율적으로 데이터를 전송할 수 있도록 한 데이터 전송 시스템, 데이터 전송 방법, 데이터 송신 장치 및 데이터 송신 방법에 관한 것이다.
도 1은 종래의 등시성 사이클내의 데이터 포맷을 나타내는 도면.
도 2는 본 발명에 관계되는 데이터 전송 시스템의 구성의 일례를 나타내는 블록도.
도 3은 도 2에 나타내는 ATM/1394 Bridge(203-1)의 구성의 일례를 나타내는 블록도.
도 4는 패킷의 포맷을 나타내는 도면.
도 5는 등시성 사이클내의 데이터 포맷을 나타내는 도면.
도 6은 도 2의 ATM/1394 Bridge(203-1)의 초기 상태에 있어서의 처리를 설명하기 위한 플로우챠트.
도 7은 도 2의 ATM/1394 Bridge(203-1)의 스케줄링 주기마다의 처리를 설명하기 위한 플로우챠트.
도 8은 본 발명의 데이터 전송 시스템을 적용한 비디오 온 디맨드 시스템의 구성의 일례를 나타내는 도면.
본 발명은 이러한 상황에 감안하여 이루어진 것으로서, 오버헤드를 적게 하여, 효율적으로 데이터를 전송할 수 있도록 하며, 1개의 버스에 접속하는 것이 가능한 클라이언트 단말의 수를 많게 함과 동시에, 소프트웨어에 의한 취급을 쉽게 하는 것이다.
본 발명에 관계되는 데이터 전송 시스템, 데이터 전송 방법, 데이터 송신 장치 및 데이터 송신 방법에 있어서는, 서버 장치로부터 단말 장치에 소정 송신 주기로 데이터를 전송할 때에, 소정 송신 주기보다 긴 주기의 스케줄링 주기로 인터럽트 신호를 발생하며, l스케줄링 주기 단위내로 송신 가능한 데이터량에 근거하여, 소정 송신 주기마다 데이터의 송신 제어를 행한다.
도 2는, 본 발명의 데이터 전송 시스템의 구성예를 나타내고 있다. 이러한 시스템에서는, ATM UNI(User Network Interface)(202-1)에 대하여 비디오 서버(201-1)가 접속되며, ATM UNI(202-j)에 대하여 비디오 서버(201-j)가 접속되어 있다. 그리고, ATM UNI(202-1, 202-j)는, ATM Switch(203)에 접속되어 있다. ATM Switch(203)에는, ATM/1394 Bridge(203-1)가, ATM UNI(202-(j+l))를 통해서 접속되어 있다. 또한, ATM/1394 Bridge(203-2)가 ATM UNI(202-(j+2))를 통해서, ATM/1394 Bridge(203-(k-1))가 ATM UNI(202-(i-1))를 통해서, 또한 ATM/1394 Bridge(203-k)가 ATM UNI(202-i)를 통해서, 각각 ATM Switch(203)에 접속되어 있다.
예를 들면 ATM/1394 Bridge(203-2)에는, 1394 시리얼 버스(204)를 통해서 n대의 클라이언트 단말(205-1 내지 205-n)이 노드 분기 방식으로 접속되어 있다.
도 3은, ATM/1394 Bridge(203-1)의 구성예를 나타내고 있다. 또한, 도시는 생략하지만, 그 밖의 ATM/1394 Bridge(203-2, 203-3, …, 203-k)도 마찬가지로 구성되어 있다.
CPU(301)는, 프로그램에 따라서 ATM SAR(Segmentation and Reassemb1y) 블록(307), ATM PHY 블록(308), IEEE 1394 링크 레이어 블록(310), IEEE 1394 3포트 PHY 블록(311) 및 시스템 컨트롤러(302)를 제어하여, 인터페이스 처리를 실행시킨다. 스케줄링 타이머(304)는, 2msec의 시간 계측 동작을 행하여, CPU(301)에 대하여 타이머 인터럽트 신호를 출력한다. 메모리 블록(303)은, 로컬 버스(305)를 통해서 시스템 컨트롤러(302)와 접속되어 있으며, 송수신하는 패킷 데이터를 기억한다.
시스템 컨트롤러(302)에는, PCI(Periphera1 Component Interconnect) 버스(306)를 통해서 ATM Switch(203)에 대한 송수신 처리를 하는 블록과, 1394 시리얼 버스에 대하여 송수신 처리를 하는 블록이 접속되어 있다. 전자의 블록은, ATM SAR 블록(307), ATM PHY 블록(308) 및 광학(0ptics) 블록(309)에 의해 구성되고, 후자는, IEEE 1394 링크 레이어(310), IEEE 1394 3포트 PHY 블록(311) 및 포트(312-1 내지 312-3)에 의해 구성되어 있다.
ATM SAR 블록(307)은, 메모리 블록(303)으로부터 시스템 컨트롤러(302) 및 PCI 버스(306)를 통해서 공급되는 데이터를 ATM 셀로 분해하여, ATM PHY 블록(308)으로 공급한다. 또한 반대로, ATM PHY 블록(308)으로부터 공급되는 ATM 셀을 구성하여, 시스템 컨트롤러(302) 및 PCI 버스(306)를 통해서 메모리 블록(303)에 출력한다. ATM PHY 블록(308)은, ATM SAR 블록(307)으로부터 공급되는 ATM 셀을, 광학 블록(309)의 수단에 대응하는 데이터로 변환하여 광학 블록(309)에 출력함과 동시에, 광학 블록(309)으로부터 입력된 ATM 셀을, ATM SAR 블록(307)의 포맷의 데이터로 변환하여, ATM SAR 블록(307)에 출력한다. 광학 블록(309)은, ATM Switch (203)로부터 공급되는 광신호에 의한 데이터를 수신하여, ATM PHY 블록(308)에 공급함과 동시에, ATM PHY 블록(308)으로부터 공급되는 데이터를 광신호로 변환하여, ATM Switch(203)에 출력한다.
IEEE 1394 링크 레이어 블록(310)은, 시스템 컨트롤러(302) 및 PCI 버스(306)를 통해서 메모리 블록(303)으로부터 입력되는 ATM의 포맷의 데이터를 CPU(301)에 의해서 미리 설정된 1394 시리얼 버스의 포맷으로 변환하여, IEEE 1394 3포트 PHY 블록(311)에 출력함과 동시에, 반대로 IEEE 1394 3 포트 PHY 블록(311)으로부터 입력되는 1394 시리얼 버스의 포맷의 데이터를, 시스템 컨트롤러(302) 및 PCI 버스(306)를 통해서 메모리 블록(303)으로 출력하여, 이 데이터는 CPU(301)에 의해서 ATM의 포맷에 변환된다. IEEE 1394 3포트 PHY 블록(311)은, IEEE 1394 링크 레이어 블록(310)으로부터 입력되는 데이터를, IEEE 1394 시리얼 버스의 신호로 변환하여, 포트(312-1 내지 312-3)를 통해서 1394 시리얼 버스(204)에 송신한다. 또한, IEEE 1394 3포트 PHY 블록(311)은, 1394 시리얼 버스(204)로부터 포트(312-l 내지 312-3)를 통해서 수신되는 데이터를, IEEE 1394 링크 레이어 블록(310)에 출력한다.
도 4는, 비디오 서버(201-m), ATM UNI(202-m), ATM/1394 Bridge(203-m), 1394 시리얼 버스(204-m) 및 클라이언트 단말(205-m)에서의 패킷의 포맷 구성을 나타내고 있다. 비디오 서버(201-m)에서, 애플리케이션(401)의 비디오 데이터에, RFC 1483, IP 및 TCP(Transmission Contro1 Protocol)/UDP(User Datagram Protocol) 헤더가 부가되어, IP/ATM 패킷(AAL5 SDU(Service Data Unit))(402)이 생성된다.
또한, 이 IP/ATM 패킷(402)의 최후에, AAL5 Trai1er가 부가되어, AAL5 PDU(Protoco1 Data Unit)(403)가 생성된다.
또한, 이 AAL5 PDU(403)는, 48 바이트 단위로 분해되어, AAL5 Segmentation (404)으로 이루어지며, 각각의 선두에 셀 헤더가 부가되어, ATM 셀(405)이 구성된다.
즉, 비디오 서버(201-m)는, 애플리케이션(401)의 비디오 데이터를, 상술한 순서로 처리하여, ATM 셀(405)로서, ATM UNI(202-m)에 출력한다. 또한, 반대로, ATM UNI(202-m)로부터 공급되는 ATM 셀(405)을, 도 4의 아래에서 위의 순서로 처리하여, 애플리케이션(401)의 비디오 데이터를 생성하여 처리한다.
ATM UNI(202-m)은, ATM 셀(405)을 비디오 서버(201-m)로부터 ATM Switch(203)로 전송하며, 또한, ATM Switch(203)로부터 비디오 서버(201-m)로 전송한다.
ATM Switch(203)는, 비디오 서버(201-m)로부터 ATM UNI(202-m)를 통하여 전송되어온 ATM 셀(405)을 소정의 ATM UNI(202-m)을 통하여 ATM/1394 Bridge(203-m)로 전송한다. 또한, 반대로, 소정의 ATM/1394 Bridge(203-m)로부터 ATM UNI(202-m)을 통하여 전송되어온 ATM 셀(405)을 소정의 ATM UNI(202-m)를 통하여 비디오 서버(201-m)로 전송한다.
ATM/1394 Bridge(203-m)에서는, ATM Switch(203)로부터 ATM UNI(202-m)을 통하여 전송되어온 ATM 셀(405)로부터, 셀 헤더가 제거되어, 48바이트 단위의 ATM SDU(406)가 추출된다. 그리고, 이것이 소정의 수로 모여, AAL5 PDU(407)가 구성된다. 그리고, AAL5 PDU(407)의 페이로드 부분인 AAL5 SDU(Service Data Unit)가 인출되며, 이러한 AAL5 SDU는, 소정의 수로 분해되어, 그 선두에 1394+ASEL(ATM over IEEE 1394 Serical Bus Emu1ation Layer)의 헤더가 부가되어, 1394 Link 패킷(408)으로서 1394 시리얼 버스(204)에 전송된다. 반대로, 1394 시리얼 버스(204)로부터 전송되어온 1394 Link 패킷(408)이 AAL5 SDU로 변환되어, 이것으로부터 더욱 ATM SDU(406)가 생성된다. 그리고 또한, 셀 헤더가 부가되어, ATM 셀(405)이 생성된다.
이상의 처리중, ATM 셀(405), ATM SDU(406) 및 AAL5 PDU(407) 사이의 처리가 ATM SAR 블록(307)에서 행하여지며, AAL5 SDU와 1394 Link 패킷(408) 사이의 처리가 CPU(301) 및 IEEE 1394 링크 레이어 블록(310)에 있어서 행하여진다.
클라이언트 단말(205-m)에서는, 1394 시리얼 버스(204-m)를 통하여 전송되어온 1394 Link 패킷(408)으로부터 헤더가 제거되며, ASEL의 조립 처리가 행하여진다(409). 그리고, 그 위에, 이 AAL5 SDU가 조립되어, IP/ATM 패킷(410)이 재구성된다. 그리고, 그 중의 RFC l483, IP 및 TCP/UDP 헤더가 제거되어, 애플리케이션(411)의 비디오 데이터가 추출된다.
또한, 반대로, 애플리케이션(411)에 의해 처리된 비디오 데이터에는, RFC 1483, IP 및 TCP/UDP 헤더가 부가되어, IP/ATM 패킷(410)이 구성되며, 이것이, 더욱 분해되어 (Segmented AAL5 SDU 409), 각각에 헤더가 부가되어 1394 Link 패킷(408)으로서 1394 시리얼 버스(204-m)에 송신된다.
이상과 같이 하여, 비디오 서버(201-m)에서 송신된 비디오 데이터가, ATM UNI(202-m), ATM Switch(203), ATM UNI(202-m), ATM/1394 Bridge(203-m), 1394 시리얼 버스(204)를 통해서 클라이언트 단말(205-m)에 전송된다.
또한, 비디오 서버와 클라이언트 단말과는, 상대적으로 규정되는 것으로서, 임의의 클라이언트 단말이 비디오 서버로 될 수 있으며, 그 경우, 그것까지의 비디오 서버는 클라이언트 단말이 된다.
도 5는, 1394 시리얼 버스(204)에 있어서의 등시성 패킷의 전송 포맷을 나타내고 있다. 동 도면에 나타내는 바와 같이, 패킷은, 125μsec의 등시성 사이클(Isochronous Cyc1e)로 전송되도록 이루어져 있다. 각 등시성 사이클의 선두에는, Cycle start arbitration(50l-l, 501-2, …, 501-n, 501-(n+1))이 배치되며, 그 다음에는, Data prefix(511)에 계속해서 Cyc1e start packet(502-1, 502-2, …, 502-n, 502-(n+1))이 배치되어 있다. 이 Cycle start packet(502-1, 502-2, …, 502-n, 502-(n+1))의 다음에는, Data end(509)에 계속하여 Iso_gap(510)이 배치되어 있다.
여기서, Cycle start arbitration(501-1, 501-2, …, 501-n, 501-(n+1)) 및 Cyc1e start packet(502-1, 502-2, …, 502-n, 502-(n+1))에 의해서 구성되는 Cyc1e start는, 1394 시리얼 버스(204)내의 사이클 마스터 노드에 의해서 송출되어, 등시성 사이클의 개시를 나타내는 패킷이다. Data prefix(511)는, 데이터 패킷 또는 비동기 전송에 있어서 긍정 응답 패킷의 개시를 나타내며, Data end(509)는, 데이터 패킷 또는 비동기 전송에 있어서 긍정 응답 패킷의 종료를 나타낸다. Iso_gap(510)은, 1394 시리얼 버스(204)의 아이들을 나타내고, 등시성 전송의 서브 액션은, Iso_gap(510)에 의해서 분리되어 있다.
Iso_gap(510)의 다음에는, arbitration(503-1, 503-2,…, 503-n, 503-(n+1))이 배치되며, 그 후에, 1개의 등시성 사이클에 있어서, 복수의 클라이언트 단말에 대한 1개의 등시성 채널의 데이터(504-1, 504-2, …, 504-n, 504-(n+1))가 배치되어, 전송되도록 이루어져 있다. 예를 들면, 등시성 사이클(#1)에 있어서는, 복수의 클라이언트 단말에 대한 채널(#1)의 등시성 패킷이 전송되며, 등시성 사이클(#2)에 있어서는, 클라이언트 단말에 대한 채널(#2)의 등시성 패킷이 전송된다. 각 등시성 패킷에는, 그 선두에, Data prefix(511)이 배치되어 있다.
등시성 전송은, 8비트로 나타나는 채널 번호를 사용하여, 클라이언트 단말에 대하여 브로드캐스트 송신이 행하여진다. 수신측은, 자신이 원하는 채널 번호의 데이터만을 받아들인다.
등시성 패킷의 최후에는, Data end(509)가 배치되며, 그 다음에는, Subaction_gap(512)이 배치되어 있다. Subaction_gap(512)의 다음에, arbitration (505-1, 505-2, …, 505-n, 505-(n+1))이 배치되어 있다. 또한, Data prefix(5l1)을 통해서, 비동기 패킷인, Asynchronous Transfer(506-1, 506-2, …, 506-n, 5O6-(n+1))와 그것에 계속해서 Data end(509)가 배치되어 있다. 또한 그 다음에는, Ack_gap(513)을 통해서, Data prefix(511)에 계속되어 긍정 응답 패킷으로서의 Ack Transfer(507-1, 507-2, …, 507-n, 507-(n+1))와 그것에 계속해서 Data end(509)가 배치되어 있다.
Subaction_gap(5l2)은, 1394 시리얼 버스의 아이들을 나타내고 있다. 각 클라이언트 단말은 이 갭시간을 감시함으로서, 전송이 가능한지 어떤지를 판정한다. 일정 시간 이상의 아이들(Iso_gap(510)보다 길다)이 계속되면 비동기 전송을 희망하는 노드는 버스를 사용할 수 있다고 판정하며, 버스 획득을 위하여 아비트레이션(arbitration (505-1, 505-2, …, 505-n, 505-(n+1))을 실행한다. 버스의 사용권을 획득한 노드는, 비동기 전송의 데이터(Asynchronous Transfer(506-1, 506-2, …, 506-n, 506-(n+1))을 송신한다. 비동기 전송의 데이터를 수신한 노드는, 그 전송되어온 데이터의 발신원의 노드에 대하여 수신 결과로서 긍정 응답 패킷(Ack Transfer(507-1, 507-2, …, 507-n, 507-(n+1))을 송신한다.
또한, 도 5에서는, 1개의 비동기 패킷의 전송이 행하여진 경우를 예로서 들고 있다. 최후에, Subaction_gap(514)이 배치되며, 그 후에, 다음 등시성 사이클의 Cyc1e start arbitration(508-1, 508-2,…, 508-n, 508-(n+1))이 배치되어 있다. 여기서, 등시성 사이클(#1)의 Cyc1e start arbitration(508-1)는, 등시성 사이클(#2)의 선두에 위치하는 Cyc1e start arbitration(501-2)이다.
또한, 등시성 전송 후, 다음 사이클까지는, 비동기 전송을 실행할 수 있다. 이 비동기 전송이, 다음 사이클 스타트의 전송 시간까지 계속하여도, 그 비동기 전송은 중단되지 않고, 다음 버스의 아이들까지 기다린 후, 사이클 마스터 노드에 의해서 사이클 스타트가 전송된다. 1개의 사이클이, 125μsec이상 계속된 경우에는, 다음 사이클이 그 분량 단축되게 된다.
그리고, 등시성 사이클(#n)에서, 복수의 클라이언트 단말에 대한 채널(#n)의 등시성 패킷이 전송되었을 때, 그 다음의 등시성 사이클#(n+ 1)에 있어서, 재차 클라이언트 단말에 대한 채널(#1)의 등시성 패킷이 전송된다. 따라서, 클라이언트 단말에 대해서는, 등시성 사이클의 n배의 주기로, 등시성 패킷이 전송되도록 이루어진다.
다음에, 도 6과 도 7의 플로우챠트를 참조하여, ATM/1394 Bridge(203-m)이, 등시성 패킷을 송신하는 순서에 관해서 설명한다. 도 6의 플로우챠트에 나타낸 처리는, 비디오 서버(201-m)로부터 클라이언트 단말(205-m)에 대하여 비디오 데이터를 전송하는 것에 앞서, ATM/1394 Bridge(203-m)에 있어서 미리 행하여지는 처리이다.
최초로 스텝(S601)에서, ATM/1394 Bridge(203-m)의 클라이언트 단말(205-m)과의 커넥션을 관리하는 애플리케이션은, 클라이언트 단말(205-m)에 대하여 데이터를 송신하는 처리를 실행하는 모듈에 대하여, 등시성 채널의 설정을 요구한다. 이러한 요구를 받은 송신 모듈은, 이 요구에 대응하여, 전송해야 할 클라이언트 단말에 대응하는 등시성 채널을 테이블상에 기억한다. 이 때, 예를 들면, 본 출원인이, 국제공개번호 W097/38513으로서 먼저 제안한 바와 같이, ASEL(ATM over IEEE 1394 Seria1 Bus Emulation Layer)­VPC(Virtua1 Pass Connection)/VCC(Virtua1 Channe1 Connection)의 설정 요구를 행하도록 하는 것도 가능하다.
다음에, 스텝(S602)으로 진행하여, IsoTransmitBand의 할당 처리가 행하여진다. 이러한 IsoTransmitBand는, 각 등시성 채널 또는 ASEL-VCC의 송신 방향의 대역을 나타내어, 각 등시성 채널 또는 ASEL-VCC마다 독립한 값을 갖는다. 이러한 값은, 예를 들면 2.048Mbps로 된다.
다음에, 스텝(S603)에 있어서, 파라미터 IsoTranmitNumberPerPeriod에 대하여 다음 식의 연산 결과가 대입된다.
(IsoTransmitBand/8)/(IsoTransmitLength-오버헤드길이)×IsoTransmitPeriod 상기 IsoTransmitNumberPerPeriod는, l스케줄링 주기당 송신 가능한 등시성 패킷의 수를 나타내며, 이 파라미터는, 각 등시성 채널 또는 ASEL-VCC마다 독립한 값을 갖는다. 또한, IsoTransmitLength는, 시스템 전체의 등시성 패킷의 트래픽에 따라서 산출한 송신해야 할 등시성 패킷 길이로서, 각 등시성 채널 또는 ASEL-VCC마다 독립한 값을 갖는다. IsoTransmitPeriod는, 스케줄링의 기본이 되는 타이머 인터럽트의 주기를 나타낸다.
IsoTransmitBand를, 2.048×106bps(bit Par Second), IsoTransmitLength를 816바이트, 오버헤드 길이를 20바이트, IsoTransmitPeriod를 2×10-3sec로 하면, IsoTransmitNumberPerPeriod는, 0.64로 된다.
다음에, 스텝(S604)에 있어서, IsoTransmitEnaCount에 0이 초기 설정된다. 이 IsoTransmitEnaCount는, 스케줄링 주기내에 송신 가능한 등시성 패킷 수를 나타내는 카운터치를 나타내어, 각 등시성 채널 또는 ASEL-VCC마다 독립한 값을 갖는다.
스텝(S605)에 있어서는, 지연 요동을 흡수하기 위한 스케줄링 주기내에 전송 가능한 등시성 패킷 수의 허용치를 나타내는 IsoDelayVariationTore1ance에 1이 초기 설정된다. 이 값도, 각 등시성 채널 또는 ASEL-VCC마다 독립한 값을 갖는다. 이들의 처리는, CPU(301)가 행한다.
도 7의 플로우챠트의 처리는, 스텝(S701)에 있어서, IsoTransmitPeriod에 설정되어 있는 타이머 인터럽트의 주기(현재의 경우, 2msec)로 스케줄링 타이머(304)가 타이머 인터럽트 신호를 발생하였을 때, 개시된다. ATM/1394 Bridge(203-1)의 CPU(301)는, 스텝(S702)에 있어서, 스케줄링 주기내에서의 등시성 사이클 합계의 횟수를 나타내는 파라미터 SumIso Cycle에 l을 초기 설정하며, 스텝(S703)에서는, 각 등시성 사이클에 있어서, 송신한 등시성 패킷 길이의 합계치를 나타내는 파라미터 SumIsoLength에 0을 초기 설정한다.
다음에, 스텝(S704)에 있어서, 다음의 등시성 채널의 검색(또는 ASEL-VCC의 검색, 이하 채널의 검색으로 칭함)이 행하여진다. 스텝(S705)에 있어서는, 검색이 종료했는지 아닌지가 판정된다. 검색이 종료하였다고 판정된 경우, 처리는 종료된다. 검색하는 채널이 아직 남아 있다고 판정된 경우, 스텝(S706)으로 진행하여, IsoTransmitEnaCount가 l이상인지 아닌지가 판정된다. 현재의 경우, 도 6의 스텝(S604)에 있어서, 이 파라미터에는 0이 설정되어 있기 때문에, 스텝(S707)으로 진행하며, IsoTransmitEnaCount에, 1스케줄링 주기당 송신 가능한 등시성 패킷수 IsoTransmitNumberPerPeriod(예를 들면, 0.64)가 가산된다.
그리고, 스텝(S704)으로 되돌아가, 다음 채널의 검색이 실행되며, 스텝(S705)에서, 검색 종료로 판정되어, 일단, 처리가 종료된다.
IsoTransmitPeriod에 설정되어 있는 타이머 인터럽트의 주기(현재의 경우, 2msec) 후에, 재차 스텝(S701 내지 S705)의 처리가 행하여지며, 스텝(S705)에서 검색되지 않는 채널이 아직 남아 있다고 판정된 경우, 스텝(S706)으로 진행하여, IsoTransmitEnaCount가 1이상인지 아닌지가 다시 판정된다. 직전의 주기에 있어서, 스텝(S707)에서 설정된 값은, 0.64이므로, 그 값은 1이하이며, 다시 스텝(S707)으로 진행하여, 현재의 값에, 또한 IsoTransmitNumberPerPeriod가 가산되어, 1.28(=0.64+0.64)로 된다. 그리고, 다시 스텝(S704, S705)을 통하여 처리가 일단 종료된다.
다음 스케줄링 주기로, 스텝(S701 내지 S705)을 통해 스텝(S706)으로 진행하면, 현재의 경우, IsoTransmitEnaCount는 1이상(=1.28)이므로, 스텝(S708)으로 진행한다.
스텝(S708)에 있어서는, 송신 대기의 등시성 패킷이 존재하는지 아닌지가 판정되어, 존재하는 경우에 있어서는, 스텝(S710)으로 진행하여, SumIsoLength에, IsoTransmitLength가 가산된다. 현재의 경우, SumIsoLength에, 스텝(S703)에서 0이 초기 설정되어 있고, IsoTransmitLength를 816바이트로 하면, SumIsoLength에는 값 "816"이 설정된다.
다음에, 스텝(S711)으로 진행하여, 스텝(S710)으로 설정한 SumIsoLength가, 1등시성 사이클에 있어서, ATM/1394 Bridge(203-m)가 송신 가능한 등시성 패킷 길이의 최대치 MaxIsoLength이하인지 아닌지가 판정된다. SumIsoLength가 MaxIsoLength 이하이면, 스텝(S712)으로 진행하여, 송신 대기의 등시성 패킷을 이전 패킷과 같은 등시성 사이클로 송신하기 위해 연쇄하는 처리가 실행된다. 그리고, 스텝(S713)으로 진행하여, IsoTransmitEnaCount를 1만큼 감소한다. 그 후, 스텝(S706)으로 되돌아가, 그 이후의 처리가 반복하여 실행된다. 이 연쇄된 패킷은, 다음 스케줄링 주기로 송신 처리된다.
스텝(S711)에 있어서, SumIsoLength가, MaxIsoLength보다 크다고 판정된 경우, 스텝(S714)으로 진행하여, SumIsoCycle이 1만큼 증가된다. 그리고, 스텝(S715)에 있어서, SumIsoCyc1e×125μsec의 값이 IsoTransmitPeriod 이하인지 아닌지가 판정된다. Sum1soCycle×125μsec의 값이 IsoTransmitPeriod보다 크다고 판정된 경우, 처리가 종료되며, 전자가 후자와 같지만, 그것보다 작다고 판정된 경우, 스텝(S716)으로 진행하여, 송신 대기의 등시성 패킷을 다음의(이전 패킷과 다르다) 등시성 사이클에 있어서 전송하기 위해 연쇄되는 처리가 실행된다. 그리고, 스텝(S717)으로 진행하여, SumIsoLength에, IsoTransmitLength가 설정된다. 다음에, 스텝(S713)으로 진행하여, IsoTransmitEnaCount가 1만큼 감소된다. 그리고, 스텝(S706)으로 되돌아가, 그 이후의 처리가 반복하여 실행된다. 이 연쇄된 패킷은, 다음 스케줄링 주기로 송신 처리된다.
한편, 스텝(S708)에 있어서, 송신 대기의 등시성 패킷이 존재하지 않는다고 판정된 경우, 스텝(S709)으로 진행하여, IsoTransmitEnaCount가, 지연 요동을 흡수하기 위한 스케줄링 주기 내에 전송 가능한 등시성 패킷 수의 허용치 IsoDe1ayVariationTore1ance보다 작은지 아닌지가 판정되며, 작다고 판정된 경우, 스텝(S707)으로 진행하여, 현재의 IsoTransmitEnaCount에, IsoTransmitNumberPerPeriod를 가산하는 처리가 행하여진 후, 스텝(S704)으로 되돌아간다. IsoTransmitEnaCount가, IsoDelayVariationTorelance와 같지만, 그것보다 크다고 판정된 경우, 스텝(S707)의 처리는 스킵되며, 스텝(S704)으로 되돌아가, 그 이후의 처리가 반복되어 실행된다.
이상의 처리를, 더욱 구체적으로 설명하면 다음과 같이 된다. 도 7의 스텝(S704)에 있어서, 도 6의 스텝(S601)에서 작성된 테이블로부터, 등시성 채널 또는 ASEL-VCC가 검색된다. 현재, 이 테이블에 n개의 채널이 존재한다고 하면, 예를 들면, 최초의 채널(#1)이 검색된다. 스텝(S705)에서는, 아직, 검색이 종료하지 않았다고 판정되기 때문에, 스텝(S706)으로 진행하여, 채널(#1)의 IsoTransmitEnaCount가, 1이상인지 아닌지가 판정된다. 현재의 경우, 이 값은 스텝(S604)에서 0으로 초기 설정되기 때문에, 스텝(S707)으로 진행하여, IsoTransmitNumberPerPeriod(예를 들면 0.64)가 IsoTransmitEnaCount에 가산된다.
다음에, 스텝(S704)으로 되돌아가, 테이블로부터, 다음의 채널(#2)이 검색된다. 이 채널(#2)에 있어서도, 스텝(S706)에서, 그 IsoTransmitEnaCount의 값은, 현재 0이기 때문에, 스텝(S707)으로 진행하여, 0.64가 가산된다.
다음에, 스텝(S704)으로 되돌아가, 채널(#3)이 검색된다.
이하와 같이하여, 채널(#3) 내지 채널(#n)의 IsoTransmitEnaCount에, 각각 0.64가 설정된다.
그리고, n개 채널의 검색이 종료하였다고, 스텝(S705)에서 판정되면, 도 7의 플로우챠트에 나타내는 처리는, 일단 종료된다.
그리고, 다음 스케줄링 주기에 있어서, 다시 도 7의 플로우챠트에 나타내는 처리가 개시되면, 스텝(S704)에서, 최초로 채널(#1)이 검색되며, 스텝(S706)에서, 채널(#1)의 IsoTransmitEnaCount가 1이상인지 아닌지가 판정된다. 현재의 경우, 이 값은 0.64이므로, 즉 1 패킷 미만이므로, 스텝(S707)으로 진행하고, IsoTransmitEnaCount에, 0.64가 가산되어, 합계 1.28로 된다.
다음에 스텝(S704)으로 되돌아가, 채널(#2)이 검색되어, 같은 처리가 실행된다. 이렇게 하여, 채널(#1)에서 채널(#n)까지의 IsoTransmitEnaCount에, 1.28이 설정된다. n개의 채널 모두에 관해서 처리가 종료했다고 스텝(S705)에서 판정되었을 때, 이 처리는 일단 종료된다.
그리고, 다음의 스케줄링 주기에 있어서, 다시, 도 7의 플로우챠트에 나타내는 처리가 개시되면, 스텝(S704)에서 채널(#1)이 검색되며, 스텝(S7O6)에서, 그 IsoTransmitEnaCount의 값이, 1이상인지 아닌지가 판정된다. 현재의 경우, 이 값은 1.28이므로, 스텝(S708)으로 진행하여, 송신 대기의 등시성 패킷이 존재하는지 아닌지가 판정된다. 이 패킷이 존재하는 경우는, 스텝(S710)으로 진행하여, 1개의 등시성 사이클(125μsec)에 있어서 전송하는 패킷의 길이 SumIsoLength에, l개의 등시성 패킷의 길이, IsoTransmitLength(예를 들면 816바이트)가 가산된다. 이것에 의해, 현재의 경우, SumIsoLength에 816이 설정된다.
스텝(S711)에 있어서는, 스텝(S710)에서 설정된 SumIsoLength의 값이, 1등시성 사이클(125μsec)내에 송신 가능한 등시성 패킷 길이 MaxIsoLength(예를 들면 1024바이트)이하인지 아닌지가 판정된다. 현재의 경우, SumIsoLength는 816이며, 1024보다 작기 때문에, 스텝(S712)으로 진행하여, 송신 대기의 등시성 패킷이, 이전 패킷과 같은 등시성 사이클로 송신하기 위해 연쇄된다(지정된다). 이 연쇄된 패킷은, 다음 스케줄링 주기에 송신 처리된다.
그리고, 스텝(S713)으로 진행하여, IsoTransmitEnaCount가, l만큼 감소된다. 그 결과, 현재의 경우, 이 값은 1.28로부터 0.28로 변화한다.
그리고, 스텝(S706)으로 되돌아가, 그 값이 1이상인지 아닌지가 판정된다. 현재의 경우, 이 값은 0.28로서, 1이하이므로, 스텝(S707)으로 진행하여, 다시 0.64가 가산되어, 0.92로 된다.
다음에, 스텝(S704)으로 진행하여, 다음의 채널(#2)이 검색되며, 채널(#2)에 관해서도 같은 처리가 실행되어, 스텝(S708)으로 진행한다. 이 때 송신 대기의 등시성 패킷이 존재하면, 스텝(S710)에 있어서, 1등시성 사이클 내에 있어서 패킷의 길이 SumIsoLength에 1개의 등시성 패킷 길이 816이 가산되어, SumIsoLength의 값은 1632로 된다.
스텝(S711)에 있어서, 이 1632(SumIsoLength)가, 1024(MaxIsoLength)보다 작은지 아닌지가 판정된다. 분명히, 1632는 1024보다 크므로, 이 경우, 스텝(S711)에 있어서, NO의 판정이 행하여진다. 이 경우, 1개의 등시성 사이클에 2개의 패킷을 전송하고자 하면, 그 길이가 1632바이트로 되며, 1등시성 사이클 내에 전송 가능한 패킷 길이 1024바이트를 초과하기 때문에, 이 데이터는, 다음의 등시성 사이클로 전송하도록 한다. 이 때문에, 스텝(S714)으로 진행하여, 등시성 사이클의 수 SumIsoCyc1e을 1만큼 증가하여, 현재의 경우 2가 된다.
다음에, 스텝(S715)으로 진행하여, 스텝(S714)에서 설정된 SumIsoCyc1e를 125배한 값이 2msec이하인지 아닌지가 판정된다. 즉, 1스케줄링 주기내에 전송 가능한 길이인지 아닌지가 판정된다. 1스케줄링 주기보다, SumIsoCyc1e를 125배한 값이 크다고 판정된 경우, 이제는 2msec내에서 처리할 수 없기 때문에, 처리가 종료된다.
이것에 대하여, SumIsoCycle을 125배한 값이 2msec보다 작다고 판정된 경우, 스텝(S716)으로 진행하여, 송신 대기의 등시성 패킷을 다음의(전의 패킷과 다르다) 등시성 사이클로 전송하는 패킷으로 하여 연쇄된다(지정된다). 이러한 예인 경우, SumIsoCyc1e가 2이기 때문에, 2개의 등시성 사이클을 사용하여 각각의 패킷이 송신된다.
다음에, 스텝(S717)으로 진행하여, 1개의 등시성 사이클 내에서 송신하는 등시성 패킷 길이의 합계치 SumIsoLength에, 먼저 연쇄한 채널(#2)의 등시성 패킷 길이 816이 설정된다. 이 연쇄된 패킷은, 다음 스케줄링 주기로 송신 처리된다.
그리고, 스텝(S713)으로 진행하여, IsoTransmitEnaCount의 값을 1만큼 감소하고, 현재의 경우 0.28로 한다. 스텝(S706)으로 되돌아가, 그 값이 1미만이라고 판정된다. 그래서, 스텝(S707)으로 진행하여, 다시 0.64가 가산되어, IsoTransmitEnaCount의 값은 0.92로 설정된다. 채널(#3) 내지 채널(#n)에 대해서도, 같은 처리가 실행된다.
이상과 같이하여, n개의 채널의 IsoTransmitEnaCount에 0.92가 설정되면, 스텝(S705)에 있어서, 일단 검색이 종료된다.
이상과 같이, 각 채널에 있어서 IsoTransmitLength의 값을 816바이트와, 최대치 MaxIsoLength의 1024바이트의 1/2이상의 값으로 하면, 도 5에 나타낸 바와 같이, 1등시성 사이클 내에서는 1개의 등시성 채널의 데이터만이 전송되는 것으로 이루어진다.
또한, 스텝(S708)에 있어서, 송신하는 등시성 패킷이 존재하지 않는다고 판정된 경우, 스텝(S709)으로 진행한다. 스텝(S709)에 있어서, 스케줄링 주기내에 전송하는 패킷의 수 IsoTransmitEnaCount가, 허용치 IsoDelayVariationTore1ance보다 작다고 판정되면, 전송로에 요동이 있다고 해도, 그 위에 패킷을 전송하는 것이 가능하기 때문에, 스텝(S707)에 있어서, IsoTransmitEnaCount에, 그 위에 0.64가 가산된다. IsoTransmitEnaCount 값이, 허용치 IsoDelayVariationTore1ance보다 큰 경우에는, 전송하는 패킷의 수를 더 이상 증가하면, 전송로의 요동에 기인하여, 정확하게 패킷을 전송할 수 없게 될 우려가 있기 때문에, 스텝(S707)의 처리는 스킵된다.
도 6 및 도 7에 나타내는 처리에서, 각 채널에서의 IsoTransmitLength의 값을 MaxIsoLength의 값의 1/n의 값으로 설정하면, 약간 오버헤드가 길게되어, 전송 효율이 저하하지만, 도 1에 나타낸 종래의 경우와 마찬가지로, 1등시성 사이클내에서 n개의 채널을 마련하는 것도 가능하다.
본 실시예에 있어서는, 적어도 같은 종류의 애플리케이션의 정보(예를 들면 비디오 정보)는, 1개의 등시성 사이클에, 1개의 등시성 패킷만을 이용하여 정보를 전송하도록 하고 있다. 그렇지만, 전화(64 Kbps)나 오디오 온 디맨드(384Kbps) 등, 필요로 하는 대역이 작은 애플리케이션의 경우, 1개의 등시성 사이클에 복수의 클라이언트 단말에 대한 정보를 전송하는 쪽이 효율이 좋은 경우가 있기 때문에, 이와 같이 한정되는 것은 아니다. 본 발명에 있어서 모든 애플리케이션에 대하여 적합한 데이터 전송 방법으로서는, 특정한 1개의 클라이언트 단말(예를 들면 클라이언트 단말(205-1))에 대하여 같은 종류의 애플리케이션의 정보는 복수의 등시성 사이클마다 데이터를 전송하도록 한다. 즉, N을 2이상의 정수로 하여, 등시성 사이클의 주기를 T(=125μsec)로 할 때, 주기 NT마다, 1개의 클라이언트 단말에 대한 정보의 전송을 행하도록 한다.
또한, 송신하는 등시성 패킷 길이 IsoTransmitLength를 산출하기 위해서, ATM/1394 Bridge로부터 클라이언트 단말 방향으로의 트래픽을, 미리 어느 정도 상정해 두도록 한다. 도 2에 나타내는 바와 같은 시스템인 경우, 트래픽의 대부분은, 비디오 서버(201-m)로부터 클라이언트 단말(205-m)으로의 데이터 스트림으로 상정된다. 그래서, 송신 등시성 패킷 길이는, 송신 가능한 등시성 패킷 길이의 최대치의 80% 정도의 길이로 한다. 그리고, 게다가 그 길이를 32비트 단위로 얼라인화하여, 송신측, 수신측과 함께 처리를 쉽게 한다.
예를 들면, 송신 가능한 등시성 패킷의 최대 길이를, 종래의 경우와 마찬가지로 1024바이트로 한 경우, 등시성 패킷 길이는, 링크 레이어 이상의 계층의 20바이트의 오버헤드를 포함해서, 816바이트 정도가 적당하게 된다.
이 경우, 등시성 패킷의 송신 주기는, 등시성 채널에 할당되어 있는 대역(콘텐츠의 대역)으로부터 산출한다. 또한, 본 출원인이 먼저 제안한, 국제공개번호 W 0 97/38513에 있어서의 경우의 ASEL을 이용하는 경우에는, 이 송신 주기는, 등시성 채널상에 설정된 VCC에 할당되어 있는 대역으로부터 산출된다. 여기서는, 계산을 간략화하기 위해서, 이 대역의 값을 오버헤드 부분을 제외한 것으로 한다. 예를 들면, 대역이 2.048Mbps인 경우, 송신 주기 n(정수)은, 다음 식으로부터, n = 24로 구할 수 있다.
2.048 × 106= (816 - 20) × 8 × 8000/n
즉, ATM/1394 Bridge는, 어떤 클라이언트 단말에 대하여, 24 등시성 사이클마다, 등시성 채널 또는 등시성 채널 상에 설정된 VCC로 등시성 패킷을 송신한다. 이것에 의해, 1개의 ATM/1394 Bridge에 대하여, 24대의 클라이언트 단말을 수용하는 것이 가능해진다.
소프트웨어에 의한 패킷의 취급에 관해서도, 2msec의 타이머 인터럽트에 의한 스케줄링에 의해서, 패킷 취급을 행하는 것으로 하면, 클라이언트 단말의 대수를 24대로 하였을 때, 스케줄링 주기당 이벤트 수(처리해야 할 오버헤드 수)는, 16(=1×2×103/125)으로 된다. 이 값은, 소프트웨어에 의한 등시성 패킷의 취급을 충분히 가능하게 하는 값이다.
이상과 같이 하여, 예를 들면, 도 2의 시스템에 있어서, 1ATM Switch당, 300내지 500대의 클라이언트 단말을 수용할 수 있다.
이것에 대하여, 클라이언트 단말의 수가, 50대 내지 60대인, 소규모인 시스템의 경우, 비디오 서버에 대하여 1394 시리얼 버스를 직접 접속하여, ATM/1394 Bridge를 생략할 수 있다. 이 경우, 상술한 ATM/1394 Bridge의 처리는, 비디오 서버에 의해 실행된다. 또는, ATM Switch만을 생략하여, ATM/1394 Bridge와 비디오 서버를 ATM UNI를 통해서 직접 접속하는 것도 가능하다.
상기한 실시의 형태에 있어서, 송신 가능한 등시성 패킷 최대 길이를 1024바이트로 한 경우, 각 등시성 패킷에 있어서의 오버헤드의 비율은, Data prefix분량으로서 2바이트 및 Data end 분량으로서 24비트(=3바이트)를 포함해서도 3.0% (=(22+3)/(816+2+3))로 되어, 종래의 경우에서의 4l%와 비교하여, 대단히 작게 할 수 있다. 또한, 이 경우에 있어서의 클라이언트 단말의 수용 대수도, 종래의 19대와 비교하여, 24대로 대폭 향상한다.
더욱이, 송신 등시성 패킷 길이를 송신 가능한 등시성 패킷 길이의 최대치인 80%(816바이트)로 제한하였기 때문에, 비디오 정보 이외의 다른 등시성 패킷의 트래픽(예를 들면, 오디오 온 디맨드, 전화, 각종 안내 방송 등)에 사용 가능하게 된다.
또한, 종래에, 2msec의 타이머 인터럽트에 의한 스케줄링을 사용한 소프트웨어에 의한 패킷의 취급을 행하도록 한 경우, 스케줄링 주기당의 이벤트 수가 304이벤트로 되며, 1등시성 패킷의 오버헤드 처리를 6.6μsec 이내로 행하지 않으면 안되었지만, 본 발명의 실시의 형태에 있어서는, 클라이언트 단말의 대수를, 24대와 19대보다 많게 한 경우라도, 2msec의 스케줄링 주기당 이벤트 수는 16이벤트로 되기 때문에, 1등시성 패킷의 오버헤드 처리를 125μsec 이내로 행하면 좋게 되며, 소프트웨어에 의한 등시성 패킷의 취급은 충분히 가능하게 된다.
도 8은, 본 발명을 적용한, 비디오 온 디맨드 시스템의 구성예를 나타내고 있다. 송출 장치(802)는, 소규모 시스템의 1394 시리얼 버스를 수용한 비디오 서버로서 기능한다. 각 좌석(805)에는, 송출 장치(802)로부터 전송되어온 자신 앞의 비디오 스트림을 수신하여, 복호하는 기능을 갖는 클라이언트 단말에 대응하는 장치가 격납되어 있으며, 송출 장치(802)로부터 배신(配信)되는 압축 부호화된 비디오 스트림을 복호하여, 이전 좌석의 표시 장치(803)에 표시시킨다. 이러한 표시 장치(803)로서는, 예를 들면 액정 디스플레이를 이용할 수 있다.
더욱이, 좌석(805)의 팔걸이 부분에는, 고정 또는 착탈이 자유자재로된 제어 기능 유니트(808)가 마련되어 있다. 이 제어 기능 유니트(808)는, 승객의 조작 단말로서, 비디오 프로그램의 선택, 재생, 일시정지, 고속 트래버스, 되감기 등의 각종 조작을 입력할 수 있다.
또한, 도 8에 있어서, 안내홈(806)에 따라 수용되어 있는 케이블(807)은, 도 2에 있어서의 ATM UNI(202-m)에 대응한다.
도 8에 나타낸, 비디오 온 디맨드 시스템을, 보다 대규모로 하기 원하는 경우에는, 송출 장치(802)의 인터페이스를 ATM UNI로 변경하여, ATM Switch와 ATM/1394 Bridge를 부가하도록 하면 좋다. 이것에 의해, 300좌석 내지 500좌석을 대상으로 하는, 대규모의 비디오 온 디맨드 시스템을 구축할 수 있다. 이 경우에 있어서도, 좌석(805)과 표시 장치(803)는, 소규모 시스템에 있어서의 경우와 동일해도 좋다.
이상에 있어서는, 클라이언트 단말을 접속하는 버스로서 1394 시리얼 버스를 사용하도록 하였지만, 등시성 이서네트를 사용해도 가능하다.
본 발명에 관계되는 데이터 전송 시스템, 데이터 전송 방법, 데이터 송신 장치 및 데이터 송신 방법에 의하면, 서버 장치로부터 단말 장치에 소정의 송신 주기로 데이터를 전송할 때에, 소정 송신 주기보다 긴 주기의 스케줄링 주기 단위로 인터럽트 신호를 발생하여, l스케줄링 주기 내에 송신 가능한 데이터량에 근거하여, 소정 송신 주기마다 데이터의 송신 제어를 행하도록 하였기 때문에, 데이터 전송에 있어서의 오버 헤드를 적게 하여, 전송 효율을 향상시킬 수 있다.

Claims (28)

  1. 통신선을 통해서 접속된 서버 장치로부터 단말 장치에 소정의 송신 주기로 데이터를 전송하는 데이터 전송 시스템에 있어서,
    상기 서버 장치는,
    상기 소정 송신 주기보다 긴 주기의 스케줄링 주기로 인터럽트 신호를 발생하는 스케줄링 수단과,
    1스케줄링 주기 단위 내에 송신 가능한 데이터량에 근거하여, 상기 소정 송신 주기마다 데이터의 송신 제어를 행하는 제어 수단과,
    상기 제어 수단으로부터의 송신 제어에 근거하여 데이터를 송신하는 송신 수단을 구비하며,
    상기 단말 장치는,
    상기 서버 장치의 상기 송신 수단으로부터 송신되어온 데이터를 수신하는 수신 수단을 구비하는 데이터 전송 시스템.
  2. 제 1 항에 있어서, 상기 통신선은, IEEE 1394 시리얼 버스인 것을 특징으로 하는 데이터 전송 시스템.
  3. 제 1 항에 있어서, 상기 제어 수단은, 상기 1스케줄링 주기 단위 내에 송신 가능한 데이터량을, 상기 스케줄링 주기와 송신에 할당된 대역폭에 근거하여 산출하는 것을 특징으로 하는 데이터 전송 시스템.
  4. 제 1 항에 있어서, 상기 제어 수단은, 현재의 스케줄링 주기내에 송신 가능한 데이터량을 나타내는 카운트 수단을 구비하여, 소정 스케줄링 주기내에서 상기 카운트 수단이 나타내는 송신 가능한 데이터량이 소정치 미만일 때, 상기 소정 스케줄링 주기 내에서의 전송을 행하지 않는 것을 특징으로 하는 데이터 전송 시스템.
  5. 제 4 항에 있어서, 상기 제어 수단은, 상기 통신선에 있어서의 지연의 요동을 고려하여, 상기 카운트 수단이 나타내는 스케줄링 주기내에 송신 가능한 데이터량을 제어하는 것을 특징으로 하는 데이터 전송 시스템.
  6. 제 1 항에 있어서, 상기 전송되는 데이터는, 소정 데이터량마다 구분된 패킷으로서,
    상기 제어 수단은, 상기 소정 송신 주기내에 전송해야 할 데이터량이, 상기 소정 송신 주기내에 허용되는 최대량 이하인 경우에는, 복수의 패킷 데이터를 동일의 상기 소정 송신 주기내에 송신하도록 제어하는 것을 특징으로 하는 데이터 전송 시스템.
  7. 제 1 항에 있어서, 상기 전송되는 데이터는, 소정 데이터량마다 구분된 패킷 데이터로서,
    상기 제어 수단은, 상기 소정 송신 주기내에 전송해야 할 데이터량이, 상기 소정 송신 주기내에 허용되는 최대량보다 많고, 또한 상기 전송해야 할 데이터량이 필요로 하는 전송 시간이 상기 스케줄링 주기 이하인 경우에는, 복수의 패킷 데이터를 각각 다른 복수의 상기 소정 송신 주기로 송신하도록 제어하는 것을 특징으로 하는 데이터 전송 시스템.
  8. 통신선을 통해서 접속된 서버 장치로부터 단말 장치에 소정 송신 주기로 데이터를 전송하는 데이터 전송 방법에 있어서,
    상기 서버 장치로 실행되는 데이터 송출 공정과,
    상기 단말 장치로 실행되는 수신 공정을 가지며,
    상기 데이터 송출 공정은,
    상기 소정 송신 주기보다 긴 주기의 스케줄링 주기로 인터럽트 신호를 발생하는 스케줄링 공정과,
    1스케줄링 주기 단위내에 송신 가능한 데이터량에 근거하여, 상기 소정 송신주기마다 데이터의 송신 제어를 행하는 제어 공정과,
    상기 제어 수단으로부터의 송신 제어에 근거하여 데이터를 송신하는 송신 공정을 가지며,
    상기 수신 공정은,
    상기 서버 장치의 상기 송신 공정에서 송신된 데이터를 수신하는 수신 공정을 갖는 것을 특징으로 하는 데이터 전송 방법.
  9. 제 8 항에 있어서, 상기 통신선은 IEEE 1394 시리얼 버스인 것을 특징으로 하는 데이터 전송 방법.
  10. 제 8 항에 있어서, 상기 제어 공정은, 상기 1스케줄링 주기 단위내에 송신 가능한 데이터량을, 상기 스케줄링 주기와 송신에 할당된 대역폭에 근거하여 산출하는 것을 특징으로 하는 데이터 전송 방법.
  11. 제 8 항에 있어서, 상기 제어 공정은, 현재의 스케줄링 주기내에 송신 가능한 데이터량을 나타내는 카운트 공정을 가지며, 소정 스케줄링 주기내에 있어서 상기 카운트 공정이 나타내는 송신 가능한 데이터량이 소정치 미만일 때, 상기 소정 스케줄 주기내에서의 전송을 행하지 않는 것을 특징으로 하는 데이터 전송 방법.
  12. 제 11 항에 있어서, 상기 제어 공정은, 상기 통신선에 있어서의 지연의 요동을 고려하여, 상기 카운트 공정이 나타내는 스케줄링 주기내에 송신 가능한 데이터량을 제어하는 것을 특징으로 하는 데이터 전송 방법.
  13. 제 8 항에 있어서, 상기 전송되는 데이터는, 소정 데이터량마다에 구분된 패킷 데이터로서, 상기 제어 공정은, 상기 소정 송신 주기내에 전송해야 할 데이터량이, 상기 소정 송신 주기내에 허용되는 최대량 이하인 경우에는, 복수의 패킷 데이터를 동일의 상기 소정 송신 주기내에 송신하도록 제어를 행하는 것을 특징으로 하는 데이터 전송 방법.
  14. 제 8 항에 있어서, 상기 전송되는 데이터는, 소정 데이터량마다 구분된 패킷 데이터로서, 상기 제어 공정은, 상기 소정 송신 주기내에 전송해야 할 데이터량이, 상기 소정 송신 주기내에 허용되는 최대량보다 많고, 또한 상기 전송해야 할 데이터량이 필요로 하는 전송 시간이 상기 스케줄링 주기이하인 경우에는, 복수의 패킷 데이터를 각각 다른 복수의 상기 소정 송신 주기로 송신하도록 제어를 행하는 것을 특징으로 하는 데이터 전송 방법.
  15. 통신선을 통해서 접속된 단말 장치에 소정 송신 주기로 데이터를 송신하는 데이터 송신 장치에 있어서,
    상기 소정 송신 주기보다 긴 주기의 스케줄링 주기로 인터럽트 신호를 발생하는 스케줄링 수단과,
    1스케줄링 주기 단위내에 송신 가능한 데이터량에 근거하여, 상기 소정 송신주기마다 데이터의 송신 제어를 행하는 제어 수단과,
    상기 제어 수단으로부터의 송신 제어에 근거하여 데이터를 송신하는 송신 수단을 구비하는 데이터 송신 장치.
  16. 제 15 항에 있어서, 상기 통신선은 IEEE 1394 시리얼 버스인 것을 특징으로 하는 데이터 송신 장치.
  17. 제 15 항에 있어서, 상기 제어 수단은, 상기 1스케줄링 주기 단위내에 송신 가능한 데이터량을, 상기 스케줄링 주기와 송신에 할당한 대역폭에 근거하여 산출하는 것을 특징으로 하는 데이터 송신 장치.
  18. 제 15 항에 있어서, 상기 제어 수단은, 현재의 스케줄링 주기내에 송신 가능한 데이터량을 나타내는 카운트 수단을 구비하여, 소정 스케줄링 주기내에서 상기 카운트 수단이 나타내는 송신 가능한 데이터량이 소정치 미만일 때, 상기 소정 스케줄링 주기내에서의 송신을 행하지 않는 것을 특징으로 하는 데이터 송신 장치.
  19. 제 18 항에 있어서, 상기 제어 수단은, 상기 통신선에 있어서의 지연의 요동을 고려하여, 상기 카운트 수단이 나타내는 스케줄링 주기내에 송신 가능한 데이터량을 제어하는 것을 특징으로 하는 데이터 송신 장치.
  20. 제 15 항에 있어서, 상기 송신되는 데이터는, 소정 데이터량마다에 구분된 패킷 데이터로서, 상기 제어 수단은, 상기 소정 송신 주기내에 송신해야 할 데이터량이, 상기 소정 송신 주기내에 허용되는 최대량 이하인 경우에는, 복수의 패킷 데이터를 동일의 상기 소정 송신 주기내에 송신하도록 제어를 행하는 것을 특징으로 하는 데이터 송신 장치.
  21. 제 15 항에 있어서, 상기 송신되는 데이터는, 소정 데이터량마다 구분된 패킷 데이터로서, 상기 제어 수단은, 상기 소정 송신 주기내에 송신해야 할 데이터량이, 상기 소정 송신 주기내에 허용되는 최대량보다 많고, 또한 상기 송신해야 할 데이터량이 필요로 하는 전송 시간이 상기 스케줄링 주기 이하인 경우에는, 복수의 패킷 데이터를 각각 다른 복수의 상기 소정 송신 주기로 송신하도록 제어를 행하는 것을 특징으로 하는 데이터 송신 장치.
  22. 통신선을 통해서 접속된 서버 장치로부터 단말 장치에 소정 송신 주기로 데이터를 송신하는 데이터 송신 방법에 있어서,
    상기 소정 송신 주기보다 긴 주기의 스케줄링 주기로 인터럽트 신호를 발생하는 스케줄링 공정과,
    1스케줄링 주기 단위내에 송신 가능한 데이터량에 근거하여, 상기 소정 송신 주기마다 데이터의 송신 제어를 행하는 제어 공정과,
    상기 제어 수단으로부터의 송신 제어에 근거하여 데이터를 송신하는 송신 공정을 갖는 데이터 송신 방법.
  23. 제 22 항에 있어서, 상기 통신선은 IEEE 1394 시리얼 버스인 것을 특징으로 하는 데이터 송신 방법.
  24. 제 22 항에 있어서, 상기 제어 공정은, 상기 1스케줄링 주기 단위내에 송신 가능한 데이터량을, 상기 스케줄링 주기와 송신에 할당된 대역폭에 근거하여 산출하는 것을 특징으로 하는 데이터 송신 방법.
  25. 제 22 항에 있어서, 상기 제어 공정은, 현재의 스케줄링 주기내에 송신 가능한 데이터량을 나타내는 카운트 공정을 가지며, 소정 스케줄링 주기내에서 상기 카운트 공정이 나타내는 송신 가능한 데이터량이 소정치 미만일 때, 상기 소정 스케줄링 주기내에서의 송신을 행하지 않는 것을 특징으로 하는 데이터 송신 방법.
  26. 제 25 항에 있어서, 상기 제어 공정은, 상기 통신선에 있어서의 지연의 요동을 고려하여, 상기 카운트 공정이 나타내는 스케줄링 주기내에 송신 가능한 데이터량을 제어하는 것을 특징으로 하는 데이터 송신 방법.
  27. 제 22 항에 있어서, 상기 송신되는 데이터는, 소정 데이터량마다 구분된 패킷 데이터로서, 상기 제어 공정은, 상기 소정 송신 주기내에 송신해야 할 데이터량이, 상기 소정 송신 주기내에 허용되는 최대량 이하인 경우에는, 복수의 패킷 데이터를 동일의 상기 소정 송신 주기내에 송신하도록 제어를 행하는 것을 특징으로 하는 데이터 송신 방법.
  28. 제 22 항에 있어서, 상기 송신되는 데이터는, 소정 데이터량 마다 구분된 패킷 데이터로서, 상기 제어 공정은, 상기 소정 송신 주기내에 송신해야 할 데이터량이, 상기 소정 송신 주기내에 허용되는 최대량보다 많고, 또한 상기 송신해야 할 데이터량이 필요로 하는 전송 시간이 상기 스케줄링 주기 이하인 경우에는, 복수의 패킷 데이터를 각각 다른 복수의 상기 소정 송신 주기로 송신하도록 제어를 행하는 것을 특징으로 하는 데이터 송신 방법.
KR1019980706438A 1996-12-19 1997-12-19 데이터 전송 시스템 및 데이터 전송 방법과 데이터 송신 장치및 데이터 송신 방법 KR19990087053A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP96-339350 1996-12-19
JP33935096 1996-12-19

Publications (1)

Publication Number Publication Date
KR19990087053A true KR19990087053A (ko) 1999-12-15

Family

ID=18326631

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980706438A KR19990087053A (ko) 1996-12-19 1997-12-19 데이터 전송 시스템 및 데이터 전송 방법과 데이터 송신 장치및 데이터 송신 방법

Country Status (4)

Country Link
US (1) US6606320B1 (ko)
EP (1) EP0895377A4 (ko)
KR (1) KR19990087053A (ko)
WO (1) WO1998027693A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100539518B1 (ko) * 1999-02-08 2005-12-29 엘지전자 주식회사 버스시스템에서의 어싱크로너스 패킷(AsynchronousPacket) 중재방법
KR101229003B1 (ko) * 2005-07-15 2013-02-01 삼성전자주식회사 이더넷 스트림 전송 방법 및 장치

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0895377A4 (en) * 1996-12-19 1999-11-17 Sony Corp DATA COMMUNICATION SYSTEM AND METHOD FOR DATA TRANSFER DEVICE AND METHOD
US6839148B1 (en) * 1999-07-08 2005-01-04 Matsushita Electric Industrial Co., Ltd. Image input apparatus
US6691096B1 (en) 1999-10-28 2004-02-10 Apple Computer, Inc. General purpose data container method and apparatus for implementing AV/C descriptors
US6587904B1 (en) * 1999-11-05 2003-07-01 Apple Computer, Inc. Method and apparatus for preventing loops in a full-duplex bus
US6831928B1 (en) * 2000-02-17 2004-12-14 Apple Computer, Inc. Method and apparatus for ensuring compatibility on a high performance serial bus
US7050453B1 (en) 2000-02-17 2006-05-23 Apple Computer, Inc. Method and apparatus for ensuring compatibility on a high performance serial bus
US6618785B1 (en) 2000-04-21 2003-09-09 Apple Computer, Inc. Method and apparatus for automatic detection and healing of signal pair crossover on a high performance serial bus
US6718497B1 (en) 2000-04-21 2004-04-06 Apple Computer, Inc. Method and apparatus for generating jitter test patterns on a high performance serial bus
FR2817058B1 (fr) * 2000-11-21 2003-01-24 St Microelectronics Sa Dispositif et procede de traitement des interruptions dans une transmission d'informations sur un bus
US7668099B2 (en) 2003-06-13 2010-02-23 Apple Inc. Synthesis of vertical blanking signal
US7353284B2 (en) 2003-06-13 2008-04-01 Apple Inc. Synchronized transmission of audio and video data from a computer to a client via an interface
US8275910B1 (en) 2003-07-02 2012-09-25 Apple Inc. Source packet bridge
US7788567B1 (en) 2003-11-18 2010-08-31 Apple Inc. Symbol encoding for tolerance to single byte errors
US7995606B1 (en) 2003-12-03 2011-08-09 Apple Inc. Fly-by and ack-accelerated arbitration for broadcast packets
US7502338B1 (en) 2003-12-19 2009-03-10 Apple Inc. De-emphasis training on a point-to-point connection
US7237135B1 (en) 2003-12-29 2007-06-26 Apple Inc. Cyclemaster synchronization in a distributed bridge
US7308517B1 (en) * 2003-12-29 2007-12-11 Apple Inc. Gap count analysis for a high speed serialized bus
US8098686B1 (en) * 2005-12-02 2012-01-17 At&T Intellectual Property Ii, L.P. Method and apparatus for providing an application-level utility metric
US8483108B2 (en) * 2006-07-24 2013-07-09 Apple Inc. Apparatus and methods for de-emphasis training on a point-to-point connection
KR101403105B1 (ko) 2006-10-31 2014-06-09 엘지전자 주식회사 귀환 데이터 전송 방법, 귀환 데이터 생성 방법 및 데이터스케줄링 방법
JP2010251912A (ja) * 2009-04-13 2010-11-04 Sony Corp コンテンツ送信装置、コンテンツ送信方法及びコンテンツ送信プログラム
CN102014069A (zh) * 2010-12-16 2011-04-13 中兴通讯股份有限公司 一种报文发送的方法及装置
FR2977734B1 (fr) * 2011-07-04 2014-05-23 Axon Cable Sa Portion de cable et equipement de communication pour raccorder des lignes abonnees a une ligne de bus de donnees
CN104346227B (zh) * 2013-07-23 2017-11-28 比亚迪股份有限公司 用于can总线的数据分发方法和装置
CN105045224B (zh) * 2015-05-29 2017-10-03 珠海格力电器股份有限公司 数据传输的方法和装置
CN105048231A (zh) * 2015-07-06 2015-11-11 苏州市英富美欣科技有限公司 一种基于usb接口的数据自动传输装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4887152A (en) * 1987-01-30 1989-12-12 Sony Corporation Message delivery system operable in an override mode upon reception of a command signal
JPH04266236A (ja) * 1991-02-20 1992-09-22 Mitsubishi Electric Corp 通信方式
JP3030831B2 (ja) * 1991-05-31 2000-04-10 日本電信電話株式会社 割り込みリセット形パケット通信方法
JP3426646B2 (ja) 1993-04-20 2003-07-14 株式会社東芝 ネットワークシステム、通信方法及び通信装置
JP3371174B2 (ja) 1994-09-22 2003-01-27 ソニー株式会社 パケット受信装置
US5623610A (en) * 1994-10-31 1997-04-22 Intel Corporation System for assigning geographical addresses in a hierarchical serial bus by enabling upstream port and selectively enabling disabled ports at power on/reset
JP3146928B2 (ja) * 1995-06-14 2001-03-19 松下電器産業株式会社 データ送信装置とデータ送信制御装置
JP3500785B2 (ja) * 1995-07-12 2004-02-23 ソニー株式会社 通信制御方法及び電子機器
JP3407838B2 (ja) 1995-09-05 2003-05-19 ソニー株式会社 ビデオオンデマンドシステム
JPH1040211A (ja) * 1996-04-30 1998-02-13 Texas Instr Inc <Ti> パケット化されたデータ通信インタフェース機器内での直接メモリアクセス優先順位を割り当てるための方法ならびにdmaチャンネル回路
US5973722A (en) * 1996-09-16 1999-10-26 Sony Corporation Combined digital audio/video on demand and broadcast distribution system
EP0895377A4 (en) * 1996-12-19 1999-11-17 Sony Corp DATA COMMUNICATION SYSTEM AND METHOD FOR DATA TRANSFER DEVICE AND METHOD

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100539518B1 (ko) * 1999-02-08 2005-12-29 엘지전자 주식회사 버스시스템에서의 어싱크로너스 패킷(AsynchronousPacket) 중재방법
KR101229003B1 (ko) * 2005-07-15 2013-02-01 삼성전자주식회사 이더넷 스트림 전송 방법 및 장치

Also Published As

Publication number Publication date
US6606320B1 (en) 2003-08-12
WO1998027693A1 (fr) 1998-06-25
EP0895377A4 (en) 1999-11-17
EP0895377A1 (en) 1999-02-03

Similar Documents

Publication Publication Date Title
KR19990087053A (ko) 데이터 전송 시스템 및 데이터 전송 방법과 데이터 송신 장치및 데이터 송신 방법
EP1839412B1 (en) Interworking between cell and packet based networks
EP0530680B1 (en) ATM cell assembling and disassembling system and method
JP3613102B2 (ja) フレーム構成方法、フレーム構成装置およびフレーム構成転送システム
US20020071443A1 (en) Communication system for communicating a plurality of time-division multiplexed data, and control method therefor
JP2001285296A (ja) 中継装置
US6625171B1 (en) Monitoring device for CPS packet multiplexing and cell assembly control method taking account of assembly time
JPH0646080A (ja) 遅延ゆらぎ吸収制御方式
CA2247707C (en) Traffic rate controller in a packet switching network
EP1134943B1 (en) Method of transmitting between a base station in an access network and an access network controller of a telecommunications system
JPH10190733A (ja) Ipスイッチ、該ipスイッチに用いるインターフェース回路及びatmスイッチ、及びipスイッチネットワークシステム
AU695184B2 (en) Method for rerouting a packet-mode data connection
US6603766B1 (en) Apparatus and method for implementing an ATM AAL2 combined use timer
JPH10233790A (ja) データ伝送システム、データ伝送方法、データ送信装置及びデータ送信方法
JP3364410B2 (ja) 通信装置
KR20010027325A (ko) 이동 통신 시스템에서 aal-2/aal-5 처리 장치
US7242685B1 (en) System and method for initiating multilink fragment reassembly
JPH11261586A (ja) Cbr帯域共有装置及びその方法
EP1209864A2 (en) System and method for providing multiple quality of service levels over a single asynchronous transfer mode (ATM) virtual communications channel
JP2000165392A (ja) Atm通信方法およびatm通信装置
JP2001045062A (ja) データ伝送装置
JP4113932B2 (ja) 統計多重装置
US8009679B2 (en) Communication system and method
JP2000341300A (ja) Atmネットワークに於けるセル多重化システム
EP1065841A2 (en) Apparatus and method for assembling and disassembling ATM cells

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