KR19990006761A - 데이터 송신장치, 데이터 수신장치, 데이터 송신시스템 및 데이터 송신방법 - Google Patents

데이터 송신장치, 데이터 수신장치, 데이터 송신시스템 및 데이터 송신방법 Download PDF

Info

Publication number
KR19990006761A
KR19990006761A KR1019980021151A KR19980021151A KR19990006761A KR 19990006761 A KR19990006761 A KR 19990006761A KR 1019980021151 A KR1019980021151 A KR 1019980021151A KR 19980021151 A KR19980021151 A KR 19980021151A KR 19990006761 A KR19990006761 A KR 19990006761A
Authority
KR
South Korea
Prior art keywords
packet
attribute
group
data
command
Prior art date
Application number
KR1019980021151A
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 KR19990006761A publication Critical patent/KR19990006761A/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
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40071Packet processing; Packet format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/40117Interconnection of audio or video/imaging devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Small-Scale Networks (AREA)

Abstract

데이터의 패킷에 의한 데이터통신에서, 한 개의 패킷에 저장된 커맨드뿐만 아니라 데이터의 전송이 커맨드교환에서 사용된 것과 유사한 패킷에 의해 실행될수 있다. 이 때문에, 패킷에서 프레임의 포맷을 명시하는 정보를 저장하는 필드가 패킷에 설치된다. 이 필드에 의해 판별할수 있는 포맷의 하나로서, 프레임이 송신데이터로부터 분할된 복수의 패킷간의 관계를 명시하는 정보를 저장하는 패킷라벨필드와 송신목적지의 장치에 대하여 커맨드 및/또는 임의의 데이터를 저장하는 데이터필드를 가지도록 포맷이 설치된다.

Description

데이터 송신장치, 데이터 수신장치, 데이터 송신시스템 및 데이터 송신방법
본 발명은 데이터 송신장치, 데이터 수신장치, 데이터 송신시스템 및 데이터 송신방법에 관한 것이다. 특히, IEEE 1394 Asynchronous 패킷에 의해 데이터를 송수신하기에 적합한 데이터 송신장치, 데이터 수신장치, 데이터 송신시스템 및 데이터 송신방법에 관한 것이다.
퍼스널 컴퓨터, 하드디스크장치 등의 외부저장장치, 프린터 등의 출력장치 또는 디지털 비디오 디스크 플레이어 또는 스틸카메라 등의 AV장치를 서로 접속하여 데이터를 송수신하는 버스로서, Institute of Electrical and Electronics Engineers 1394(이하 IEEE1394로 약칭한다)에 의해 규정된 IEEE1394 High Performance Serial Bus(이하 IEEE1394버스로 약칭한다)가 있다. IEEE1394버스에서, ID번호가 상호접속된 노드에 할당되어 있고 데이터는 이들 노드간의 패킷에 의해 송수신된다.
IEEE1394버스모드중에서, 주기적으로 패킷의 송수신을 행하는 Isochronous모드와, 송수신주기를 고려하지 않고 패킷의 송수신을 행하는 Asynchronous모드가 있다. Isochronous모드는 소정의 시간간격마다 데이터의 송신을 보증하여 소정 시간간격마다 소정량의 데이터가 송신될 필요가 있는 데이터송신에 적합하다. 한편, Asynchronous모드는 IEEE1394버스에 의해 상호 접속된 장치간 커맨드를 교환하기위해 사용된다.
종래의 관습에서, 응답패킷은 커맨드패킷을 수반한다. 즉, 도 1에 나타낸 것같이 노드A에서 노드B로 커맨드를 송신하는데 있어서, 노드B에 대한 커맨드를 포함하는 커맨드패킷이 노드A에서 노드B로 송신된다. 커맨드패킷을 송신하면, 노드B는 커맨드패킷에 대한 응답으로서 노드A에 응답패킷을 송신한다.
특히, 도 2에 나타낸 것같이 노드A에서 노드B로 데이터를 보낼 때, 데이터송신을 요구하는 송신커맨드를 포함하는 커맨드패킷과 노드B로 송신되는 송신데이터가 노드A에서 노드B로 보내진다. 커맨드패킷을 수신한 노드B는 커맨드패킷에 대한 응답로서, 커맨드패킷이 정상으로 수신되었음을 통지하기위해 노드A에 응답패킷을 송신한다.
도 3에 나타낸 것같이 노드A로부터 요구에 따라서 노드B에서 노드A로 데이터를 보내기위해, 데이터수신을 요구하는 수신커맨드를 포함하는 커맨드패킷이 먼저 노드A에서 노드B로 송신된다. 커맨드패킷을 수신한 노드B는 커맨드패킷에 대한 응답으로서, 정상수신의 통지와 수신커맨드에 의해 요구되는 수신데이터를 포함하는 응답패킷을 송신한다. 정상수신의 통지는 커맨드패킷이 정상으로 수신되었음을 명시한다.
도 2 및 3에서 나타낸 예에서, 각각 하나의 커맨드패킷과 응답패킷이 보내진다. 그러나, 송신된 데이터량이 최대 패킷크기를 초과하면, 데이터는 복수의 패킷으로 나뉘어야할 필요가 있다. 즉, 패킷크기상에 제한이 있으므로, 엔티티를 구성하는 대량의 데이터가 보내지면 이러한 데이터는 데이터의 송신을 행하기 위한 송신가능크기로 나눌 필요가 있다.
데이터가 노드A에서 노드B로 n개의 분할패킷으로 보내지면, 송신커맨드를 포함하는 커맨드패킷(c1) 및 1/n송신데이터가 먼저 노드A에서 노드B로 보내진다. 1/n송신데이터는 노드B로 보내지는 데이터의 n개의 분할중의 하나이다. 커맨드패킷(c1)을 수신하는 노드B는 노드A에 커맨드패킷이 정상으로 수신되었음을 명시하는 정상수신의 통지를 포함하는 응답패킷(r1)을 송신한다. 이 동작순서는 n회 반복된다. 그러므로, 커맨드패킷과 응답패킷을 교환하기 위해 필요한 시간이 t이면, n x t과 동일한 시간이 n개의 분할데이터를 송신하기 위해 필요하다.
특히, 종래의 Asynchronous모드에서, 커맨드 및 응답패킷을 교환하는데 있어서, 1:1 경우에만 커맨드 및 응답 패킷을 대응할수 있지만, 복수의 커맨드 패킷 또는 복수의 응답패킷을 대응하는 방법은 부족하다. 그래서, 종래의 Asynchronous모드에서, 덩어리의 많은 양의 데이터가 송신이 가능한 크기로 분할되면, 커맨드패킷이 보내지는 시간마다 응답패킷을 수신하는 것이 필요하므로, 매우 긴 시간간격이 데이터송신에 요구된다. 바꾸어 말하면, 종래의 Asynchronous모드는 하나의 패킷에 저장된 커맨드의 송수신에 편리하고, 패킷에 저장될수 없는 데이터의 송수신은 극히 불편하다.
IEEE1394버스를 예로 들었지만, 상기 서술한 문제는 IEEE 1394버스외에도 발생한다. 일반적으로, 커맨드를 보내기로 가정한 패킷에서, 응답패킷은 커맨드패킷이 보내지는 시간마다 수신된다. 이 유형의 인터페이스와 관련하여 상기 문제가 발생한다.
본 발명의 목적은 커맨드뿐만 아니라 한 개의 패킷에 저장되지 않은 데이터의 송수신이 커맨드 송수신에 사용된 것과 유사한 패킷에 의해 효과적으로 실행되는 데이터 송신장치, 데이터 수신장치, 데이터 송신시스템 및 데이터 송신방법을 제공하는 것이다.
도 1은 종래의 Asynchronous 모드에서 패킷교환을 나타내고 특히 커맨드패킷에 대하여 응답커맨드가 복귀되는 방법을 나타낸다.
도 2는 종래의 Asynchronous 모드에서 패킷교환을 나타내고 특히 데이터송신시 패킷교환을 나타낸다.
도 3은 종래의 Asynchronous 모드에서 패킷교환을 나타내고 특히 데이터수신시 패킷교환을 나타낸다.
도 4는 종래의 Asynchronous 모드에서 송신데이터를 복수의 커맨드패킷으로 분할하고 분할커맨드패킷을 보낼때 패킷교환의 순서를 나타낸다.
도 5는 본 발명에 따른 각각의 장치의 상호접속의 상태를 나타내는 블록도이다.
도 6은 한 개의 커맨드패킷에 한 개의 응답커맨드를 복귀할때 커맨드와 응답패킷의 교환순서를 나타낸다.
도 7은 복수의 커맨드패킷에 한 개의 응답커맨드를 복귀할때 커맨드와 응답패킷의 교환순서를 나타낸다.
도 8은 한 개의 커맨드패킷에 복수의 응답커맨드를 복귀할때 커맨드와 응답패킷의 교환순서를 나타낸다.
도 9는 기입데이터가 복수의 커맨드패킷으로 분할되어 송출될 때 커맨드와 응답패킷의 방법을 나타낸다.
도 10은 독출데이터가 복수의 커맨드패킷으로 분할되어 수신될 때 커맨드와 응답패킷의 방법을 나타낸다.
도 11은 Asynchronous패킷의 프레임구조의 구성을 나타낸다.
도 12는 AV/C 커맨드프레임의 프레임구조를 나타낸다.
도 13은 AV/C 응답프레임의 프레임구조를 나타낸다.
도 14는 본 발명에서 사용되는 일예의 커맨드프레임의 프레임구조를 나타낸다.
도 15는 본 발명에서 사용되는 일예의 응답프레임의 프레임구조를 나타낸다.
도 16은 본 발명에서 사용되는 또 다른 예의 커맨드프레임의 프레임구조를 나타낸다.
도 17은 본 발명에서 사용되는 또 다른 예의 응답프레임의 프레임구조를 나타낸다.
도 18은 도 14에 나타낸 커맨드프레임을 포함하는 커맨드패킷을 사용하는 일예를 나타내고 특히 응답커맨드를 3개의 커맨드패킷에 복귀하는 경우를 나타낸다.
도 19는 도 15에 나타낸 응답프레임을 포함하는 응답패킷의 사용례의 방법을 나타내고 특히 3개의 응답커맨드를 1개의 커맨드패킷에 복귀되는 경우를 나타낸다.
도 20은 본 발명을 구체화한 일예의 데이터송신에 대하여 데이터송신의 개념모델을 나타낸다.
도 21은 본 발명을 구체화한 일예의 데이터송신순서를 나타내고 특히 데이터기입중의 커맨드 및 응답패킷의 교환순서를 나타낸다.
도 22는 본 발명을 구체화한 일예의 데이터송신순서를 나타내고 특히 데이터독출중의 커맨드 및 응답패킷의 교환순서를 나타낸다.
* 도면의 주요부분에 대한 부호설명
1. 개인용컴퓨터 2. 프린터
3. 디지털스틸카메라 4. 셋탑박스
5. IEEE1394버스
제 1구성에서, 본 발명은 소정의 포맷으로 패킷데이터를 송신하는 수단을 포함하는 패킷데이터 송신장치를 제공하고, 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 가진다.
다른 구성에서, 본 발명은 소정의 포맷으로 패킷데이터를 수신하는 수단을 포함하는 패킷데이터 수신장치를 제공하고, 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 가진다.
또 다른 구성에서, 본 발명은 소정의 포맷으로 패킷데이터를 송신하는 단계를 포함하는 패킷데이터 송신방법을 제공하고, 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 가진다.
또 다른 구성에서, 본 발명은 소정의 포맷으로 패킷데이터를 수신하는 단계를 포함하는 패킷데이터 수신방법을 제공하고, 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 가진다.
또 다른 구성에서, 본 발명은 소정의 포맷의 패킷데이터의 데이터구조를 제공하고, 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 가진다.
또 다른 구성에서, 본 발명은 소정의 포맷의 패킷데이터를 기록하는 기록매체를 제공하고, 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 가진다.
또 다른 구성에서, 본 발명은 소정의 포맷으로 데이터를 송신하는 수단과 소정의 포맷으로 데이터를 수신하는 수단을 포함하는 패킷데이터를 송수신하는 통신장치를 제공한다. 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함한다.
또 다른 구성에서, 본 발명은 소정의 포맷으로 데이터를 송신하고 소정의 포맷으로 데이터를 수신하는 단계를 포함하는 패킷데이터를 송수신하는 통신방법을 제공한다. 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함한다.
또 다른 구성에서, 본 발명은 소정의 포맷의 복수의 (n개의) 패킷데이터를 송수신하고, 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함하는 통신방법을 제공한다. 이 방법은 각 패킷의 속성과 공통 속성을 송수신하는 제 1단계와, 공통 속성과 동일한 공통 속성과, 상기 제 1단계에서 송신 또는 수신된 것과 다른 각 패킷의 속성을 송수신하는 n번째 단계를 포함한다.
본 발명에 따르면, 커맨드뿐만 아니라 한 개의 패킷에 저장되지 않는 데이터도 또한 커맨드를 송수신하는데 사용되는 것과 유사한 패킷에 의해 효과적으로 송수신될수 있다.
특히, 본 발명이 IEEE1349에 규정된 Asynchronous패킷에 적용되면, 한 개의 패킷에 저장될수 없는 대량의 데이터가 커맨드를 송수신하는데 사용되는 것과 유사한 패킷에 의해 효과적으로 송수신될수 있다.
도면을 참조하여, 본 발명의 실시예에 대하여 상세히 설명한다.
도 5는 본 발명의 실시예를 나타내고, 개인용 컴퓨터(1), 프린터(2), 디지털 스틸 카메라(3) 및 셋탑박스(4)가 IEEE1394버스(5)를 통해 상호접속된 상태를 특히 나타낸다. 본 발명은 도 5에 나타낸 것같이 IEEE1394버스(5)를 통해 상호접속된 장치간의 비동기패킷 송신모드로서 Asynchronous모드에 의해 데이터의 송수신을 행하는 시스템에 적용된다. Asynchronous모드에서 교환된 패킷을 Asynchronous패킷이라고 명한다.
Asynchronous패킷을 교환하기 위해 사용된 장치가 IEEE1394버스를 통해 상호 접속될수 있으면 좋다. 이들 장치는 도 5에 나타낸 개인용 컴퓨터(1), 프린터(2), 디지털 스틸 카메라(3) 및 셋탑박스(4)에 또한 하드디스크장치 등의 외부저장장치, 플로터 등의 출력장치 또는 디지털 비디오 디스크 플레이어 등의 AV장치를 들수 있다.
지금까지 장치간의 Asynchronous모드를 교환하는데, 한 개의 응답패킷은 한 개의 커맨드패킷을 반드시 다루어야 했다. 역으로, 본 발명에 따라서 Asynchronous패킷을 교환하는데, 도 6에 나타낸 것같이 한 개의 응답패킷이 한 개의 커맨드패킷을 처리하고, 도 7에 나타낸 것같이 한 개의 응답패킷이 복수의 커맨드패킷을 처리하거나, 복수의 응답패킷이 도 8에 나타낸 것같이 한 개의 커맨드패킷을 처리하는 것이 가능하다.
도 9는 한 개의 응답패킷이 복수의 커맨드패킷을 처리하는 예를 나타낸다. 특히, 도 9는 노드B에 기입된 데이터를 n패킷으로 분할하고 노드A로부터 패킷을 송신할 때 패킷교환의 순서를 나타낸다. 이 때문에, 기입커맨드 및 1/n데이터를 포함하는 커맨드패킷이 노드A로부터 노드B에 보내진다. 기입커맨드는 노드B에 데이터기입을 요구하는 커맨드이고 1/n데이터는 노드B에 기입되는 데이터의 n분할중 하나이다. 유사하게, 기입커맨드 및 다음의 1/n데이터를 포함하는 다른 커맨드패킷이 노드A로부터 노드B에 보내진다.
노드A로부터 노드B로의 커맨드패킷의 이러한 송신이 n회 반복된다. n개의 커맨드패킷을 정상으로 수신하면, 노드B는 이들 커맨드패킷의 응답으로서 커맨드패킷의 정상수신의 효과를 명시하는 정상수신통지를 포함하는 응답패킷을 노드B는 노드A에 송신한다. 상기 패킷의 교환에 의해, n개의 패킷으로 분할되고 노드A로부터 이 상태에 송신된 데이터는 노드B에 기입된다.
도 10은 복수의 응답패킷이 한 개의 커맨드패킷을 처리하고 있는 실시예를 나타낸다. 특히, 도 10은 노드B로부터 독출된 데이터를 n개의 패킷으로 분할하고 분할패킷을 노드A에 송신할 때 패킷의 순서를 나타낸다. 먼저, 독출커맨드를 포함하는 커맨드패킷은 노드A로부터 노드B로 보내진다. 독출커맨드는 노드B로부터 데이터독출을 요구하는 커맨드이다. 독출커맨드를 포함하는 커맨드패킷을 수신하면, 노드B는 1/n개 독출커맨드를 포함하는 응답패킷을 노드A에 송신한다. 1/n의 독출데이터는 노드B로부터 독출된 데이터의 n개의 분할단편의 하나이다. 노드B로부터 노드A로의 응답패킷의 송신은 n회 반복된다. 상기 패킷을 교환함으로써, 노드B로부터 독출된 데이터는 노드A로 송신되는 n개의 패킷으로 분할된다.
본 발명에 따르면, 도 10에 나타낸 것같이 한 개의 응답패킷이 복수의 커맨드패킷을 처리하거나 복수의 응답패킷이 한 개의 커맨드패킷을 처리하는 것이 가능하다. 이것은 특히 패킷교환동작을 감소시켜 송신을 위해 데이터가 복수의 패킷으로 분할될 때 응답패킷을 커맨드패킷으로 복쉬하는 방법과 비교하여 데이터의 송신에 필요한 시간을 감소시킨다.
상기 서술한 송신방법을 가능하게 하는 패킷의 프레임구조를 이하 설명한다.
IEEE1394에서 규정된 Asynchronous패킷은 도 11에 나타낸 같은 프레임구조를 가진다. 즉, Asynchronous패킷은 패킷에 대한 정보를 기술하는 패킷헤더와 송신데이터를 가지고 있도록 구성된 데이터블록을 가진다.
패킷헤더는 destination_ID, tl(transact label), rt(retry code), tcode, pri(priority), source_ID, destination_offset, data_length, extend_tcode, header_CRC등의 필드를 가진다.
destination_ID필드는 패킷송신의 목적지의 노드의 ID, 특히 IEEE1394버스에 의해 규정된 노드의 ID번호(NodeID)를 기술한다. tl필드는 패킷번호, 특히 송신목적지 및 송신기가 트랜잭션이 그들에 관계하는 사실을 인식하도록 하는 적정한 값을 명시한다. rt는 통화중에 재시도방법에 관한 정보를 기술한다. tcode필드는 커맨드 레지스터 또는 응답레지스터에서 메시지의 기입을 지시하는 코드를 기술한다.
pri필드는 우선순위를 기술한다. source_ID필드는 패킷송신기의 노드의 ID를 기술하고 특히, IEEE1394버스에 의해 규정된 노드의 ID번호(NodeID)를 기술한다. destination_offset필드는 커맨드 레지스터 또는 응답레지스터의 주소를 기술한다. data_length필드는 패킷헤더에 이어지는 다음의 데이터블록의 데이터길이에 관한 정보를 기술한다. extend_tcode필드는 t-code를 확장할 때 사용된다. header_CRC필드는 패킷헤더의 체크섬(check sum)을 실행하는 CRC계산치를 서술한다.
한편, 데이터블록은 cts(command and transaction set), FCP필드(function Control protocol data) 및 data_CRC필드를 포함한다. 이 cts필드 및 FCP 데이터필드부는 FCP프레임이라고 명한다. data_CRC필드에서, 데이터블록의 체크섬을 실행하기 위한 CRC계산치를 기술한다.
이 cts필드는 FCP프레임의 포맷을 정의한다. 즉, Asynchronous패킷은 FCP프레임의 포맷의 유형을 지정하는 정보를 정의하기 위한 필드로서 cts필드를 가진다.
FCP프레임은 IEC 1883(International Electrotechnical Commission 1883)에 의해 정의되어 있다. FCP프레임의 포맷의 유형은 cts필드의 값에 의해 분류된다. 만약, 예를 들면, 패킷이 커맨드패킷이고, cts필드의 값이 0000이면, 커맨드패킷의 FCP프레임이 IEEE 1394의 AV/C Digital Interface Command Set에 의해 규정된 커맨드프레임(이하 AV/C 커맨드 프레임으로 칭한다)이다.
AV/C커맨드프레임은 도 12에 나타낸 프레임구조이다. 즉, AV/C커맨드 프레임은 cts, ctype, subunit_type, subunit_ID, opcode 및 operand 필드를 가진다. 한편, Asynchronous패킷은 단위로서 32비트를 가지기 때문에, 합계가 정수배가 되도록 AV/C 커맨드프레임의 operand필드의 뒤에 필요에 따라서 '0'이 붙게된다.
cts필드는 상기 서술한 것같이 AV/C커맨드 프레임에 대하여 0000이다. ctype필드는 커맨드의 유형을 기술한다. 만약, 예를 들면, ctype값이 0000이면, 패킷에 의한 커맨드가 송신의 목적지의 장치를 제어하는 커맨드 즉, CONTROL 커맨드인 것을 지정한다. 또한, ctype값이 0001이면, 패킷에 의한 커맨드가 패킷전송의 목적지의 장치의 상태를 조사하는 커맨드, 즉 STATUS 커맨드인 것을 지정한다.
subunit_type 필드는 커맨드가 적용되는 노드의 유형을 기술한다. 예를 들면, subunit_type 의 값이 00000이면, 커맨드가 적용되는 노드가 모니터인 것을 지정한다. subunit_type 의 값이 00100이면, 커맨드가 적용되는 노드가 카세트 테이프 레코더인 것을 지정한다. subunit_ID필드는 패킷에 의한 커맨드가 적용되는 장치의 ID번호를 기술한다.
opcode필드는 subunit_type 필드에 의해 지정되는 노드에 대응하는 지정된 커맨드의 코드, 즉 동작코드를 기술한다. 예를 들면, subunit_type 필드의 값이 00100이고 opcode 필드의 값이 C3h이면, 패킷에 의한 커맨드가 '비디오 카세트 레코더'의 '재생'이다. subunit_type 필드의 값이 00100이고 opcode 필드의 값이 C2h이면, 패킷에 의한 커맨드가 '비디오 카세트 레코더'의 '기록'이다.
operand필드는 Asynchronous패킷의 크기가 최대치를 넘지않는한 임의의 수의 필드에 설정될수 있다. operand[0], operand[1], …, operand[n]은 opcode 필드에서 설정된 동작코드를 실행하기 위해 필요한 정보를 기술한다. 특히, 재생의 속도 또는 방향에 관한 정보를 기술한다.
AV/C응답프레임은 도 13에 나타낸 것과 같은 프레임구조를 가진다. AV/C응답프레임은 도 13에 나타낸 것같이 AV/C커맨드프레임과 실질적으로 유사한 프레임구조를 가진다. 그러나, AV/C 커맨드 프레임에서 ctype필드는 커맨드에 대한 응답을 기술하는 respond필드이다. 즉, respond필드는 커맨드의 수신이 예를 들면 정상으로 완료될 때 수신의 정상종료상태를 나타내는 값이다.
도 11∼도 13에 나타낸 프레임구조는 본 발명의 출원시에 IEEE 1394 및 IEC1883에 의해 규정된 내용이다. 상세하게는, 관계된 규격이 참조되어야 한다. 본 발명에 따라서, 도 14 및 15에 나타낸 이러한 포맷이 상기 서술한 프레임구조를 확장하면서 FCP프레임의 포맷으로서 부가되어 있다.
도 14는 본 발명을 적용하기위해 사용된 커맨드프레임의 일예이다. 이 커맨드 프레임은 이하 새로운 커맨드 프레임으로 칭한다. 즉, 본 발명을 IEEE1394버스에 적용하는데 있어서, 도 15에 나타낸 프레임구조는 커맨드패킷의 cts필드에 의해 규정된 FCP프레임의 포맷의 하나로서 정의되어 있다. 이러한 새로운 응답프레임을 사용하여, 커맨드를 송신할뿐 아니라 임의의 송신데이터를 복수의 패킷으로 분할하여 분할패킷에 송신할수 있게된다.
도 15는 본 발명을 적용하기 위해 사용된 응답프레임의 일예를 나타낸다. 이 응답프레임은 이하 새로운 응답프레임으로 칭한다. 즉, 본 발명을 IEEE 1394버스에 적용하는데 있어서, 도 15에 나타낸 프레임구조는 응답패킷의 cts필드에 의해 규정된 FCP프레임의 포맷의 하나로서 정의된다. 이 새로운 응답프레임을 사용하여, 임의의 송신데이터를 복수의 패킷으로 분할하여 분할패킷을 송신할수 있게 된다.
새로운 커맨드 프레임 또는 새로운 응답프레임을 사용하여 송수신되는 데이터는 임의이지만, 예를 들면 동화상데이터, 정지화상데이터, 음성데이터, 문자데이터 및 프로그램모듈로 열거될수 있다.
도 14에 나타낸 새로운 커맨드 프레임은 c(continuity), cl(command label), sub_l(sub_label)필드가 부가되는 AV/C커맨드 프레임이다. c필드, cl필드, sub_l필드이외의 필드는 AV/C커맨드 프레임의 것과 동일하다. 새로운 커맨드 프레임은 cts필드에 의거하여 분리된 프레임으로서 AV/C커맨드 프레임으로부터 구별되기 때문에, AV/C커맨드프레임의 경우와 동일한 방법으로 커맨드 또는 코드를 처리할 필요는 없는 것에 주의한다.
송신데이터를 복수의 패킷으로 분할하여 그 결과의 패킷을 송신할 때, 이들 패킷간의 관계를 명시하는 정보는 새로운 커맨드프레임의 cl, sub_l필드에 저장된다. 특히, 송신데이터를 복수의 패킷으로 분할하여 그 결과의 패킷을 송신하는데 있어서, 이들 패킷에 공통인 값이 cl필드에 저장되고, 패킷의 순서를 명시하는 정보가 sub_l필드에 저장된다. c필드에서, 고려중인 패킷이 최종패킷인지 아닌지를 명시하는 정보가 저장된다.
바꾸어 말하자면, cl 및 sub_l필드는 각 커맨드패킷에 대한 라벨번호와 동일 라벨번호를 가지는 복수의 커맨드패킷에 대하여 sub라벨번호를 명시한다. c필드는 동일 라벨번호를 가지는 복수의 커맨드패킷이 계속하여 보내지는지 아닌지를 명시한다.
커맨드패킷에서 cl필드를 설치함으로써, 송신데이터에서 분할된 복수의 커맨드를 상호 대응할수 있게 된다. 커맨드패킷에서 sub_l필드를 설치함으로써, 동일 라벨번호를 가지는 커맨드패킷 즉, cl필드의 동일값을 가지는 커맨드패킷의 순서를 이해할수 있게 된다. 이것은 데이터에서 분할된 커맨드패킷을 이해하고 일련의 커맨드에서 부족한 커맨드가 없는지를 확인할수 있도록 한다.
상기 서술한 새로운 커맨드프레임을 사용하여 커맨드를 송신할 때, operand필드가 AV/C커맨드 프레임의 경우와 동일한 방법으로 사용된다. 한편, 임의의 데이터가 새로운 커맨드 프레임에 송신될 때, 송신데이터는 AV/C 커맨드프레임에서 operand필드에 대응하는 AV/C커맨드프레임의 부분에 실린다. 즉, 새로운 커맨드 프레임은 송신목적지의 노드에 대한 커맨드 및/또는 임의의 송신데이터를 저장하는 데이터필드를 가진다.
도 15에 나타낸 새로운 응답프레임은 c(continuity), r1(response label), sub_l(sub_label)필드가 부가된 AV/C커맨드 프레임이다. c, r1 및 sub_l필드이외의 필드는 AV/C커맨드프레임의 필드와 동일하다. 새로운 응답프레임은 분리된 프레임으로서 AV/C커맨드 프레임과 구별되기 때문에, AV/C커맨드 프레임과 동일한 방법으로 커맨드 또는 코드를 처리하는 것이 불필요한 것에 주의하여야 한다.
복귀데이터를 복수의 패킷으로 분할하여 결과의 패킷을 송신하는데 있어서, 이들 패킷간의 관계를 명시하는 정보가 새로운 응답프레임의 cl, sub_l필드에 저장된다. 구체적으로, 복귀데이터를 복수의 패킷으로 분할하여 결과의 패킷을 송신하는데 있어서, 이들 패킷에 공통인 값이 r1필드에 저장되고 패킷의 순서를 명시하는 정보가 sub_l필드에 저장된다. c필드에서, 고려중인 패킷이 최종패킷인지 아닌지를 명시하는 정보가 저장된다.
바꾸어 말하자면, r1 및 sub_l필드는 각 커맨드패킷에 대한 라벨번호와 동일 라벨번호를 가지는 복수의 커맨드패킷에 대하여 sub라벨번호를 명시한다. c필드는 동일 라벨번호를 가지는 복수의 응답패킷이 계속하여 보내지는지 아닌지를 명시한다.
커맨드패킷에서 r1필드를 설치함으로써, 송신데이터에서 분할된 복수의 응답패킷를 상호 대응할수 있게 된다. 응답패킷에서 sub_l필드를 설치함으로써, 동일 라벨번호를 가지는 응답패킷 즉, r1필드의 동일값을 가지는 커맨드패킷의 순서를 이해할수 있게 된다. 이것은 데이터에서 분할된 커맨드패킷을 이해하고 일련의 커맨드에서 부족한 커맨드가 없는지를 확인할수 있도록 한다.
상기 서술한 새로운 커맨드프레임을 사용하여 응답을 복구할 때, operand필드가 AV/C커맨드 프레임의 경우와 동일한 방법으로 사용된다. 한편, 응답이 복구될때문만 아니라 임의의 복구데이터가 새로운 응답프레임에의해 송신될 때에도, 수신데이터는 AV/C 응답프레임에서 operand필드에 대응하는 AV/C 응답프레임의 부분에 실린다. 즉, 새로운 커맨드 프레임은 수신된 패킷에 대한 응답 및/또는 임의의 수신데이터를 저장하는 데이터필드를 가진다. 그래서, 새로운 응답프레임의 사용은 응답뿐만 아니라 수신패킷에 의거하는 임의의 데이터의 송신을 가능하게 한다.
도 14에 나타낸 실시예에서, 새로운 커맨드는 AV/C 커맨드 프레임에 필드를 부가함으로써 구성된다. 도 15에 나타낸 실시예에서, 새로운 응답프레임은 AV/C응답프레임을 필드에 부가함으로써 구성된다. 그러나, 본 발명을 적용하기 위해 새롭게 정의된 커맨드 또는 프레임은 반드시 AV/C 커맨드 프레임 또는 AV/C응답프레임에서 사용된 모든 필드일 필요는 없다.
즉, subunit_type필드 또는 subunit_ID필드를 가지지 않는 이러한 프레임구조는 본 발명이 적용되어 새롭게 정의된 커맨드프레임으로서 정의될수 있다. 또한, subunit_type필드 또는 subunit_ID필드를 가지지 않는 이러한 프레임구조는 도 17에 나타낸 것같이 본 발명이 적용되어 새롭게 정의된 응답프레임으로서 정의될수 있다.
도 18 및 19를 참조하여, 도 14에 나타낸 새로운 커맨드프레임을 가지는 커맨드패킷 및 도 15에 나타낸 새로운 응답프레임을 가지는 응답패킷을 사용하는 경우에 패킷교환을 설명한다.
도 18은 한개의 응답패킷을 복수의 커맨드패킷에 대하여 복귀하는 경우에 패킷교환의 일예로서 송신데이터가 3개로 분할되어 제 1∼3 커맨드패킷(c1-1, c1-2, c1-3)에 의해 노드A에서 노드B로 송신되는 방법을 나타낸다. 이 경우, 3개의 커맨드패킷(c1-1, c1-2, c1-3)이 노드A에서 노드B로 보내지고 한 개의 응답패킷(r1-1)이 이들 커맨드패킷(c1-1, c1-2, c1-3)에 따라서 노드B에서 노드A로 되돌려진다.
송신데이터를 3개의 커맨드패킷(c1-1, c1-2, c1-3)으로 분할하여 분할 커맨드패킷을 송신하는데 있어서, 라벨번호는 도 18에 나타낸 것같이 커맨드패킷(c1-1, c1-2, c1-3)에서 c1필드에 C로 설정된다. 도 18의 실시예에서, 제 1∼3 커맨드패킷(c1-1, c1-2, c1-3)에서 cl필드의 값은 모두 「1」로 설정된다. 구체적으로, 이들 3개의 커맨드패킷(c1-1, c1-2, c1-3)이 일련의 커맨드패킷인 것을 명시하기 위하여 3개의 커맨드패킷(c1-1, c1-2, c1-3)에 공통인 값이 cl필드에 설정된다.
sub_l필드에서, 이들 일련의 3개의 커맨드패킷(c1-1, c1-2, c1-3)을 명시하는 정보가 저장된다. 특히, 도 18의 실시예에서, 3개로 분할된 송신데이터의 초기부분을 포함하는 제 1커맨드패킷(c1-1)에서 sub_l필드에서 커맨드패킷이 선두인 것을 명시하는 「0」이 설정된다. 유사하게, 송신데이터의 다음부분을 포함하는 제 2커맨드패킷(c1-2)에서 sub_l필드에서 커맨드패킷이 2번째인 것을 명시하는 「1」이 설정된다. 결국, 송신데이터의 최후부분을 포함하는 제 3커맨드패킷(c1-3)에서 sub_2필드에서 커맨드패킷이 3번째인 것을 명시하는 「2」가 설정된다.
또한, c필드에서, 커맨드피캣이 최후커맨드패킷인지 아닌지를 명시하는 정보가 저장되어 있다. 특히, 도 18의 실시예에서, 동일 라벨번호를 가지는 커맨드패킷이 이들 커맨드패킷이후에 존재하는지 아닌지를 명시하기 위해 제 1 및 제 2커맨드패킷의 c필드(c1-1, c1-2)에는 「1」이 설정된다. 한편, 이들 커맨드패킷이후 동일라벨번호를 가지는 커맨드패킷이 없는 것을 명시하기 위해 제 3커맨드패킷에 「0」이 설정된다.
이들 커맨드패킷(c1-1, c1-2, c1-3)을 수신하면, 노드B는 cl필드, sub_l필드, 및 c필드에 기술되어 있는 내용에 의거하여 이들 커맨드패킷(c1-1, c1-2, c1-3)으로부터 분할전의 송신데이터를 복구한다.
그 c필드가 「0」으로 설정되고 최종커맨드패킷(c1-3)인 커맨드패킷을 수신하면, 노드B는 응답패킷(r1-1)을 노드A에 송신한다. 이때, 커맨드패킷(c1-1, c1-2, c1-3)의 c필드에 설정된 동일라벨번호 즉 1이 r1필드에 설정된다. sub_l필드에서, 응답패킷이 선두인 것을 명시하는 「0」이 설정된다. c필드에서, 응답패킷이후에 동일 비밀번호를 가지는 응답패킷이 없는 것을 명시하는 「0」이 설정된다.
이들 커맨드패킷(c1-1, c1-2, c1-3)에 의해 노드A로부터 노드B로 송신데이터가 송신된다.
도 19는 한 개의 커맨드패킷에 대하여 복수의 응답패킷을 복귀할 때 패킷교환의 일예로서, 노드A에서 노드B로 커맨드패킷에 대하여 복귀데이터가 3개로 분할되고 제 1∼제 3응답패킷(r1-1, r1-2, r1-3)에 의해 노드B에서 노드A로 복귀되는 방법을 나타낸다. 이때, 1개의 커맨드패킷(c2-1)은 노드A에서 노드B로 보내지고 3개의 응답패킷(r1-1, r1-2, r1-3)은 노드B에서 노드A로 커맨드패킷(c2-1)에 대하여 복귀된다.
도 19에 나타낸 예에서, 커맨드패킷(c2-1)은 먼저 노드A에서 노드B로 보내진다. 이 커맨드패킷(c2-1)에서, 커맨드패킷(c2-1)에 대한 라벨번호 예를 들면 「1」이 cl필드에 설정된다. sub_l필드에서 커맨드패킷이 선두인 것을 명시하는 「1」이 설정된다. c필드에서, 커맨드패킷이후 동일 라벨번호를 가지는 커맨드패킷이 없는 것을 명시하는 「0」이 설정된다. 도 19에 나타낸 예에서, 이 커맨드패킷(c2-1)에 대한 복귀데이터는 노드B에서 노드A로 복귀된 것으로 3개로 분할된다.
복귀데이터가 3개의 응답패킷(r1-1, r1-2, r1-3)으로 분할하여 응답패킷을 송신할 때, 커맨드패킷(c2-1)의 cl필드에 설정된 것과 동일 비밀번호가 이들 응답패킷(r1-1, r1-2, r1-3)의 rl필드에 설정된다. 특히, 도 19의 실시예에서, 제 1∼제 3응답패킷(r1-1, r1-2, r1-3)의 rl필드의 값은 모두 「1」로 설정된다. 즉, 3개의 응답패킷(r1-1, r1-2, r1-3)의 rl필드에서, 이들 3개의 응답패킷이 일련의 응답패킷인 것을 명시하기 위해 이들 패킷에 공통인 값이 설정된다.
sub_l필드에서, 3개의 응답패킷(r1-1, r1-2, r1-3)의 순서를 명시하는 정보가 저장된다. 특히, 도 19의 실시예에서, 응답패킷이 선두인 것을 명시하기 위해 3개로 분할된 복귀데이터의 첫번째부분을 포함하는 제 1응답패킷(r2-1)의 sub_l필드에 「0」이 설정된다. 복귀데이터의 다음부분을 포함하는 제 2응답패킷(r2-2)에서 응답패킷이 두 번째인 것을 명시하기 위해 「1」이 설정된다. 복귀데이터의 3번째부분을 포함하는 제 3응답패킷(r2-3)에서 응답패킷이 3번째인 것을 명시하기 위해 「1」이 설정된다.
c필드에서, 응답패킷이 최종인지 아닌지를 명시하는 정보가 저장된다. 특히, 도 19의 실시예에서, 이들 응답패킷이후 동일 라벨번호를 가지는 응답패킷이 존재하는 것을 명시하기 위해 제 1, 제 2응답패킷(r2-1, r2-2)에 「1」이 설정된다. 한편, 응답패킷(r2-3)에는 응답패킷이후 동일 라벨번호를 가지는 응답패킷이 없는 것을 명시하기 위해 「0」이 설정된다. 이들 응답패킷(r1-1, r1-2, r1-3)을 수신하면, 노드A는 r1필드, sub_l필드, c필드에 기술된 내용에 의거하여 이들 응답패킷(r1-1, r1-2, r1-3)으로부터 3개로 분할되기 전의 데이터로 복귀한다.
그래서, 복귀데이터는 노드B에서 노드A로 이들 응답패킷(r1-1, r1-2, r1-3)에 의해 보내진다.
도 20에 나타낸 개념화된 데이터송신모델을 참조하여 새로운 커맨드 프레임을 가지는 커맨드패킷과 새로운 응답프레임을 가지는 응답패킷을 사용하여 데이터송신을 행할때의 동작의 전형적인 순서를 설명한다.
새로운 커맨드 프레임을 가지는 커맨드패킷과 새로운 응답프레임을 가지는 응답패킷을 사용하여 데이터송신을 행하기 위해, 도 20에 나타낸 것같이 직렬버스에 의해 상호 접속된 2개의 노드A,B사이에 상대방노드를 명시하기 위해 가상접속(10)이 설정된다. 이때 ID번호가 접속(10)에 할당된다. 이 ID번호는 ConnectID로 명한다. 접속(10)이 설정된 노드A,B는 ConnectID에 의해 접속(10)의 상대방노드를 판별한다.
IEEE1394버스에서 ID번호(NodeID)가 노드식별을 위하여 노드에 할당된다. 그러나 버스가 재설정되면, 노드의 ID번호도 변화한다. 이러한 경우, 접속(10)은 다시 ConnectID에 의거하여 설정된다. 즉, 각 접속에 ConnectID를 설정함으로써, 노드의 ID번호가 버스재설정에 의해 변경될지라도 접속이 다시 설정될수 있다.
접속(10)에서, 가상채널(11, 12)이 설치되고, ChannelID라고 불리우는 ID번호가 각 채널(11, 12)에 할당된다. 필요하면, 복수의 채널이 한 개의 접속ID에 제공될수 있다.
접속(10)에 할당된 ConnectID와 채널(11, 12)에 할당된 ChannelID에 의거하여, 노드AB사이에 각 채널(11, 12)에 대하여 커맨드 및 데이터가 교환된다. 한 개의 접속에서 가상채널을 더 설치함으로써, 복수의 커맨드 및 데이터가 한 개의 접속에 의해 교환될수 있다.
상기 서술한 데이터전송에서 사용된 커맨드에 대하여 설명하였다. 본 실시예에서, CONNECT, DISCONNECT, OPEN, CLOSE, READ, WRITE, ABORT 커맨드는 상기 서술한 데이터전송을 실행하기 위해 규정되어있다.
CONNECT 커맨드
CONNECT 커맨드는 주어진 노드가 다른 노드에 대한 데이터 또는 커맨드를 전송하기 위해 가상접속을 설정하기위해 사용된다. 특히, 접속이 주어진 노드에서 다른 노드로 설정될 때, CONTROL 커맨드가 ctype필드에서 설정되어 있고 CONNECT 커맨드가 opcode필드에서 설정되어 있는 커맨드패킷이 먼저 서술한 노드에서 접속이 설정되는 상대측의 노드에 보내진다.
CONNECT커맨드는 상대측노드에 접속이 이미 설정되어 있는지를 알기 원할때에 또한 사용된다. 특히, 상대측 노드의 접속의 상태를 알기원하면, STATUS 커맨드가 ctype 필드에 설정되어 있고 CONNECT 커맨드가 opcode 필드에 설정되어 있는 커맨드패킷이 상대측노드에 보내진다.
DISCONNECT 커맨드
DISCONNECT 커맨드는 노드간에 설정된 접속을 개방할 때 사용된다. 특히, 채널이 개방될 때, CONTROL 커맨드가 ctype필드에서 설정되어 있고 DISCONNECT 커맨드가 opcode필드에서 설정되어 있는 커맨드패킷이 상대측의 노드에 보내진다.
OPEN 커맨드
OPEN 커맨드는 주어진 노드가 다른 노드에 대하여 가상채널을 설정할 때 사용된다. 특히, 주어진 노드에서 다른 노드로 채널이 설정될 때, CONTROL 커맨드가 ctype필드에서 설정되어 있고 OPEN 커맨드가 opcode필드에서 설정되어 있는 커맨드패킷이 채널이 설정되는 상대측의 노드에 송신된다.
OPEN 커맨드는 이미 설정되어 있는 채널의 채널ID를 조사할 때 또한 사용된다. 특히, 이미 설정되어 있는 채널로 채널의 채널ID를 알기원하면, STATUS 커맨드가 ctype 필드에 설정되어 있고 OPEN 커맨드가 opcode 필드에 설정되어 있는 커맨드패킷이 상대측노드에 보내진다.
CLOSE 커맨드
CLOSE 커맨드는 노드간에 설정된 채널을 개방할 때 사용된다. 특히, 채널을 개방할 때, CONTROL 커맨드가 ctype필드에서 설정되어 있고 CLOSE 커맨드가 opcode필드에서 설정되어 있는 커맨드패킷이 채널이 개방되는 상대측의 노드에 송신된다.
READ 커맨드
READ 커맨드는 노드가 다른 노드에 의해 소유된 데이터를 독출할 때 때 사용된다. 특히, 다른 노드에 의해 소유된 데이터가 독출되면, CONTROL 커맨드가 ctype필드에서 설정되어 있고 READ 커맨드가 opcode필드에서 설정되어 있는 커맨드패킷이 독출하고자 하는 데이터를 가진 상대측의 노드에 송신된다.
READ 커맨드는 상대측노드의 내용중 독출가능한 데이터량을 조사할 때 또한 사용된다. 특히, 독출가능한 데이터량을 조사할 때, STATUS 커맨드가 ctype 필드에 설정되어 있고 READ 커맨드가 opcode 필드에 설정되어 있는 커맨드패킷이 조사목적지의 노드에 보내진다.
WRITE 커맨드
WRITE 커맨드는 주어진 노드가 다른 노드에서 주어진 내용의 데이터를 기입하고자 할 때 사용된다. 특히, 독출가능한 데이터량을 조사할 때, CONTROL 커맨드가 ctype필드에서 설정되어 있고 WRITE 커맨드가 opcode필드에서 설정되어 있는 커맨드패킷이 데이터가 기입될 목적지의 노드에 송신된다.
WRITE 커맨드는 상대측노드의 이용가능한 빈영역의 크기를 조사할 때 또한 사용된다. 특히, 이용가능한 빈영역의 크기를 조사할 때, STATUS 커맨드가 ctype 필드에 설정되어 있고 WRITE 커맨드가 opcode 필드에 설정되어 있는 커맨드패킷이 조사목적지의 노드에 보내진다.
상기 서술한 커맨드를 사용하여 노드A에서 노드B로 데이터를 기입하기 위한 동작의 순서를 도 21을 참조하여 설명한다. 노드B에 쓰여진 데이터가 복수의 패킷으로 분할되고 노드A에서 송신되는 것으로 가정한다.
도 21에 나타낸 동작의 순서에서, 노드A와 노드B간에 먼저 접속이 설정되고 접속에서 채널이 설립된다. 노드B에서 전체의 이용가능한 영역이 확인되고 계속하여 데이터가 복수의 커맨드패킷을 사용하여 노드B에 쓰여진다. 그러면 채널이 개방되고 노드A와 B간의 접속이 또한 개방된다. 이 동작의 순서를 도 21을 참조하여 상세하게 설명한다.
먼저, 노드A는 CONNECT 커맨드를 사용하여 노드B로의 접속을 요구한다. 이때, 노드A는 노드B에 노드A의 ID번호(NodeID(A))와 설정되는 접속에 할당된 ConnectID가 operand 필드에 서술되어 있는 커맨드패킷(21)을 보낸다. 특히, 그 필드가 표 1에 나타낸 것같이 설정되어 있는 커맨드패킷(21)은 노드A에서 노드B로 보내진다.
field c1 sub_1 c ctype opcode operand[0] operand[1]
set value 1 0 0 Control Connect connectID NodeID(A)
접속이 커맨드패킷에 의해 정확히 설정되면, 노드B는 노드A에 접속이 정확히 설정되었음을 명시하는 응답을 송신한다. 이때, 노드B는 노드A에 노드B의 ID번호(NodeID(B))와 할당된 ConnectID가 그 필드에 서술되어 있는 응답패킷(22)을 송신한다. 특히, 그 필드가 표 2에 나타낸 것같이 설정되어 있는 응답패킷(22)은 노드B에서 노드A로 보내진다.
field r1 sub_1 c opcode operand[0] operand[1]
set value 1 0 0 Accepted connectID NodeID(B)
상기와 같이 교환하여, 접속이 노드A와 B사이에 설정된다. 접속이 노드A와 B사이에 이미 설정되어 있으면, 교환을 하는 것이 불필요하다.
노드A는 노드B에 OPEN커맨드를 사용하여 채널이 설립되는 것을 요구한다. 이때, 노드A는 노드B에 사용되고 있는 접속의 connectID와 설립되는 채널에 할당된 channelID가 그 필드에 서술되어 있는 커맨드패킷(23)을 송신한다. 특히, 그 필드가 표 3에 나타낸 것같이 설정되어 있는 커맨드패킷(23)은 노드A에서 노드B로 보내진다.
field c1 sub_1 c ctype opcode operand[0] operand[1]
set value 1 0 0 Control Open ConnectID ChannelID
채널이 커맨드패킷(22)에 의해 설립될 때, 노드B는 노드A에 채널이 설립되었음을 명시하는 응답을 송신한다. 이때, 노드B는 노드A에 사용되고 있는 접속의 connectID와 할당된 channelID를 서술하고 있는 응답패킷(24)을 송신한다. 특히, 그 필드가 표 4에 나타낸 것같이 설정되어 있는 응답패킷(24)은 노드A에서 노드B로 보내진다.
field r1 sub_1 c response operand[0] operand[1]
set value 1 0 0 Accepted ConnectID ChannelID
상기와 같이 교환하여, 접속이 노드A와 B사이에 설정된다. 접속이 노드A와 B사이에 이미 설정되어 있으면, 교환을 하는 것이 불필요하다.
노드A는 노드B에 대하여 WRITE커맨드를 사용하여 노드B의 이용가능한 빈영역의 크기를 조사한다. 특히, 그 필드가 표 5에 나타낸 것같이 설정되어 있는 커맨드패킷(25)은 노드A에서 노드B로 보내진다.
field c1 sub_1 c ctype opcode operand[0] operand[1]
set value 1 0 0 Status Write ConnectID ChannelID
커맨드패킷(25)을 수신하면, 노드B는 노드A에게 노드B의 이용가능한 빈 영역의 크기를 통지한다. 이때, 노드B는 노드A에게 사용되고 있는 접속의 connectID와 사용중인 채널의 channelID와 노드B의 이용가능한 빈 영역의 크기(AvailableBufferSize)를 그 operand필드에 서술하고 있는 응답패킷(26)을 송신한다. 특히, 그 필드가 표 6에 나타낸 것같이 설정되어 있는 응답패킷(26)은 노드B에서 노드A로 보내진다.
field r1 sub_1 c response operand[0] operand[1] operand[2]
set value 1 0 0 Accepted ConnectID ChannelID AvailableBufferSize
그러면 노드A는 WRITE 커맨드를 사용하여 노드B에 데이터를 기입한다. 노드B에 쓰여진 데이터는 n개의 단편으로 분할되기 때문에, 제 1데이터(WritingData1)가 먼저 보내진다. 이때, 노드A는 노드B에 사용되고 있는 접속의 connectID와 사용중인 채널의 channelID와 그 FCPdata필드의 residual 영역에 WritingData1을 기술한 커맨드패킷(27-1)을 송신한다. 특히, 그 필드가 표 7에 나타낸 것같이 설정되어 있는 커맨드패킷(27-1)은 노드A에서 노드B로 보내진다.
field c1 sub_1 c ctype opcode operand[0] operand[1] residualarea of FCPdatafield
set value 1 0 1 write control ConnectID ChannelID WritingData1
그러면 노드A는 n개의 단편으로 분할된 데이터를 노드B에 순차 송신한다. 이때, sub_l필드의 값은 송신되는 분할된 데이터단편에 대응하는 커맨드패킷의 순서를 나타내기 위해 각각의 커맨드패킷에 대하여 하나씩 증가한다.
결국, n개의 분할된 데이터중 마지막인 WritingDataN이 송신된다. 이때, 노드A는 노드B에 사용되고 있는 접속의 connectID와 사용중인 채널의 channelID와 그 FCPdata필드의 residual 영역에 WritingData1을 기술한 커맨드패킷(27-n)을 송신한다. 특히, 그 필드가 표 8에 나타낸 것같이 설정되어 있는 커맨드패킷(27-n)은 노드A에서 노드B로 보내진다. 이때, c필드의 값은 커맨드패킷(27-n)의 전의 커맨드패킷까지 [1]로 설정된다. 그러나, 커맨드패킷(27-n)에서, c필드의 값은 커맨드패킷(27-n)이 n개로 분할된 송신데이터의 패킷중 마지막인 것을 명시하기 위해 [0]으로 설정된다.
field c1 sub_1 c ctype opcode operand[0] operand[1] residualarea of FCPdatafield
set value 1 n 0 control write ConnectID ChannelID WritingDataN
상기 커맨드패킷(27-1∼27-n)에 의해 송신된 데이터가 노드B에 정확히 쓰여지면, 노드B는 데이터가 올바로 쓰여진 것을 나타내는 응답을 노드A에 송신한다. 이때, 노드B는 노드A에 그 operand필드에 사용되고 있는 접속의 connectID와 사용중인 채널의 channelID를 기술하는 응답패킷(28)을 송신한다. 특히, 그 필드가 표 9에 나타낸 것같이 설정되어 있는 응답패킷(28)은 노드B에서 노드A로 보내진다.
field r1 sub_1 c response operand[0] operand[1]
set value 1 0 0 Accepted ConnectID ChannelID
그러면 노드A는 노드B에 CLOSE커맨드를 사용하여 채널을 개방할 것을 요구한다. 이때, 노드A는 노드B에 그 operand필드에 사용되고 있는 접속의 connectID와 개방하기를 원하는 채널의 channelID를 기술하는 커맨드패킷(29)을 송신한다. 특히, 그 필드가 표 10에 나타낸 것같이 설정되어 있는 커맨드패킷(29)은 노드A에서 노드B로 보내진다.
field c1 sub_1 c response operand[0] operand[1]
set value 1 0 0 Control ConnectID ChannelID
채널이 커맨드패킷(29)에 의해 개발될 때, 노드B는 노드A에 채널이 개방되어 있음을 나타내는 응답을 송신한다. 이때, 노드B는 노드A에 그 operand필드에 사용되고 있는 접속의 connectID와 개방된 채널의 channelID를 기술하는 응답패킷(30)을 송신한다. 특히, 그 필드가 표 11에 나타낸 것같이 설정되어 있는 응답패킷(30)은 노드B에서 노드A로 보내진다.
field c1 sub_1 c response operand[0] operand[1]
set value 1 0 0 Accepted ConnectID ChannelID
커맨드패킷(29)과 응답패킷(30)을 교환하여, 노드A와 B에서 사용되는 채널이 개방된다. 한편, 채널을 개방하는 것이 불필요하면, 채널을 개방하기 위한 커맨드패킷(29)과 응답패킷의 교환이 실행되지 않는다.
그러면 노드A는 노드B에 DISCONNECT 커맨드를 사용하여 접속을 개방할 것을 요구한다. 이때, 노드A는 노드B에 그 operand필드에 개방하고자 하는 접속의 connectID를 기술하는 커맨드패킷(31)을 송신한다. 특히, 그 필드가 표 12에 나타낸 것같이 설정되어 있는 커맨드패킷(31)은 노드A에서 노드B로 보내진다.
field r1 sub_1 c ctype opcode operand[0]
set value 1 0 1 write control ConnectID
접속이 커맨드패킷(31)에 의해 개방될 때, 노드B는 노드A에 접속이 개방되어 있는 것을 명시하는 응답을 송신한다. 이때, 노드B는 노드A에 그 operand필드에 개방된 접속의 connectID를 기술하는 응답패킷(32)을 송신한다. 특히, 그 필드가 표 13에 나타낸 것같이 설정되어 있는 응답패킷(31)은 노드B에서 노드A로 보내진다.
field c1 sub_1 c response operand[0]
set value 1 0 0 accepted ConnectID
커맨드패킷(31)과 응답패킷(32)을 교환하여, 노드A와 B사이에 사용된 접속이 개방된다. 한편, 접속이 개방될 필요가 없으면, 접속을 개방하기 위해 커맨드패킷(31)과 응답패킷(32)을 교환할 필요는 없다.
이상은 노드A에서의 데이터를 복수의 커맨드패킷으로 분할하여 노드B에 기입하는 동작의 순서이다. 이것을 표 14에 요약한다.
기입 A → B
방향 동작 c1/r1 sub_1 c ctype/응답 opcode operand[0] operand[1] operand[2] FCPdata 필드
공통값 순서 최종
A→B 접속설정 1 0 0 Control 접속 ConnectID NodeID(A)
B→A ACK 1 0 0 Accepted ConnectID NodeID(B)
A→B 채널설정 1 0 0 Control 개방 ConnectID ChannelID
B→A ACK 1 0 0 Accepted ConnectID ChannelID
A→B 빈용량문의 1 0 0 Status 기입 ConnectID ChannelID
B→A ACK 1 0 0 Accepted ConnectID ChannelID 이용가능데이터크기
A→B 기입 1 0 1 Control 기입 ConnectID ChannelID 기입데이터1
A→B 기입 1 0 1 Control 기입 ConnectID ChannelID 기입데이터2
A→B 기입 1 1 1 Control 기입 ConnectID ChannelID 기입데이터3
A→B 기입 1 2 0 Control 기입 ConnectID ChannelID 기입데이터4
B→A ACK 1 3 0 Accepted ConnectID ChannelID
A→B 채널개방 1 0 0 Control 닫힘 ConnectID ChannelID
B→A ACK 1 0 0 Accepted ConnectID ChannelID
A→B 접속개방 1 0 0 Control 비접속 ConnectID
B→A ACK 1 0 0 Accepted ConnectID
상기의 커맨드를 사용하여 노드B에서 노드A에 의한 데이터를 독출하는 동작의 순서를 도 20을 참조하여 설명한다. 노드B로부터 독출된 데이터가 복수의 패킷으로 분할되고 이 상태에서 노드B에서 노드A로 송신되는 것으로 가정한다.
도 20에 나타낸 동작의 순서에서, 노드A와 노드B간에 먼저 접속이 설정되고 그러면 접속에서 채널이 설립된다. 독출가능한 데이터크기를 확인한후, 복수의 커맨드패킷을 사용하여 노드B에서 데이터가 독출된다. 그러면 채널이 개방되고 노드A와 B간의 접속이 또한 개방된다. 이 동작의 순서를 도 20을 참조하여 설명한다.
먼저, 노드A는 CONNECT 커맨드를 사용하여 노드B로의 접속을 요구한다. 이때, 노드A는 노드B에 노드A의 ID번호(NodeID(A))와 설정되는 접속에 할당된 ConnectID를 operand 필드에 기술하는 커맨드패킷(41)을 보낸다. 특히, 그 필드가 표 15에 나타낸 것같이 설정되어 있는 커맨드패킷(41)은 노드A에서 노드B로 보내진다.
field c1 sub_1 c ctype opcode operand[0] operand[1]
set value 1 0 0 Control Connect connectID NodeID(A)
접속이 커맨드패킷(41)에 의해 정확히 설정되면, 노드B는 노드A에 접속이 정확히 설정되었음을 나타내는 응답을 송신한다. 이때, 노드B는 노드A에 노드B의 ID번호(NodeID(B))와 할당된 ConnectID를 operand필드에 기술하는 응답패킷(42)을 송신한다. 특히, 그 필드가 표 16에 나타낸 것같이 설정되어 있는 응답패킷(42)은 노드B에서 노드A로 보내진다.
field r1 sub_1 c response operand[0] operand[1]
set value 1 0 0 Accepted connectID NodeID(B)
상기와 같이 교환하여, 접속이 노드A와 B사이에 설정된다. 접속이 노드A와 B사이에 이미 설정되어 있으면, 접속을 새롭게 설정하는 것이 불필요하다.
노드A는 노드B에 OPEN커맨드를 사용하여 채널을 설립하는 것을 요구한다. 이때, 노드A는 노드B에 사용되고 있는 접속의 connectID와 설립되는 채널에 할당된 channelID를 operand 필드에 서술하는 커맨드패킷(43)을 송신한다. 특히, 그 필드가 표 17에 나타낸 것같이 설정되어 있는 커맨드패킷(43)은 노드A에서 노드B로 보내진다.
field c1 sub_1 c ctype opcode operand[0] operand[1]
set value 1 0 0 Control Open ConnectID ChannelID
채널이 커맨드패킷(43)에 의해 설립되면, 노드B는 노드A에 채널이 새롭게 설립되었음을 나타내는 응답을 송신한다. 이때, 노드B는 노드A에 사용되고 있는 접속의 connectID와 할당된 channelID를 operand필드에 서술하는 응답패킷(44)을 송신한다. 특히, 그 필드가 표 18에 나타낸 것같이 설정되어 있는 응답패킷(44)은 노드B에서 노드A로 보내진다.
field r1 sub_1 c response operand[0] operand[1]
set value 1 0 0 Accepted ConnectID ChannelID
상기와 같이 교환하여, 채널이 노드A와 B사이에 설정된다. 채널이 노드A와 B사이에 이미 설정되어 있으면, 채널을 새롭게 설립하는 것이 불필요하다.
노드A는 노드B에 대하여 READ커맨드를 사용하여 노드B로부터 독출가능한 데이터의 데이터 크기를 조사한다. 이때, 노드A는 노드B에 사용되고 있는 접속의 connectID와 사용중인 채널의 channelID를 operand필드에 서술하는 커맨드패킷(45)을 송신한다. 특히, 그 필드가 표 19에 나타낸 것같이 설정되어 있는 커맨드패킷(45)은 노드A에서 노드B로 보내진다.
field c1 sub_1 c ctype opcode operand[0] operand[1]
set value 1 0 0 Status Read ConnectID ChannelID
커맨드패킷(25)을 수신하면, 노드B는 노드A에게 노드B에서 독출된 데이터의 독출가능한 크기를 통지한다. 이때, 노드B는 노드A에게 사용되고 있는 접속의 connectID와 사용중인 채널의 channelID와 노드B에서 독출될수 있는 데이터의 데이터크기(AvailableDataSize)를 그 operand필드에 서술하고 있는 응답패킷(46)을 송신한다. 특히, 그 필드가 표 20에 나타낸 것같이 설정되어 있는 응답패킷(46)은 노드B에서 노드A로 보내진다.
field c1 sub_1 c ctype opcode operand[0] operand[1]
set value 1 0 0 Accepted ConnectID ChannelID Available DataSize
그러면 노드A는 READ커맨드를 사용하여 노드B에 데이터를 독출할 것을 요구한다. 이때, 노드A는 사용되고 있는 접속의 connectID와 사용중인 채널의 channelID를 그 operand필드에 서술하고 있는 커맨드패킷(47)을 송신한다. 특히, 그 필드가 표 21에 나타낸 것같이 설정되어 있는 커맨드패킷(46)은 노드A에서 노드B로 보내진다.
field c1 sub_1 c ctype opcode operand[0] operand[1]
set value 1 0 0 Control Read ConnectlID ChannedkID
그러면 노드B는 노드A에 의해 요구된 데이터를 노드A에 송신한다.
노드B에서 독출된 데이터는 노드A에 송신되는 n개의 단편으로 분할되는 것으로 가정한다. 여기서, 제 1단편데이터(ReadingData1)가 보내진다. 이때, 노드A는 노드B에 사용되고 있는 접속의 connectID와 사용중인 채널의 channelID를 그 operand필드에 기술하고 또한 FCPdata필드의 residual 영역에 ReadingData1을 기술하는 응답패킷(48-1)을 송신한다. 특히, 그 필드가 표 22에 나타낸 것같이 설정되어 있는 응답패킷(48-1)은 노드A에서 노드B로 보내진다.
field r1 sub_1 c response operand[0] operand[1] remainingarea of FCPdatafield
set value 1 n 0 Accepted ConnectID ChannelID ReadingData1
유사하게, n개의 분할된 데이터는 노드B에서 노드A에 순차 송신된다. 이때, sub_l필드의 값은 분할데이터를 전송하기 위해 응답패킷의 순서를 명시하기 위해 각각의 커맨드패킷에 대하여 하나씩 증가된다.
결국, n개의 분할된 데이터중 마지막인 ReadingDataN이 송신된다. 이때, 노드B는 노드A에 사용되고 있는 접속의 connectID와 사용중인 채널의 channelID를 operand필드에 기술하고 FCPdata필드의 나머지 영역에 ReadingDataN을 기술하는 응답패킷(48-n)을 송신한다. 특히, 그 필드가 표 23에 나타낸 것같이 설정되어 있는 응답패킷(48-n)은 노드B에서 노드A로 설정된다. c필드의 값은 커맨드패킷(48-n)의 바로 전의 커맨드패킷까지 [1]로 설정되고 커맨드패킷(48-n)이 n개로 분할된 송신데이터의 패킷중 마지막인 것을 명시하기 위해 커맨드패킷(48-n)에 대하여 [0]으로 설정된다.
field r1 sub_1 c response operand[0] operand[1] remainingarea of FCPdatafield
set value 1 n 0 Accepted ConnectID ChannelID ReadingDataN
노드B로부터 데이터의 독출이 완료하면, 노드A는 노드B에 CLOSE커맨드를 사용하여 채널을 개방할 것을 요구한다. 이때, 노드A는 노드B에 그 operand필드에 사용되고 있는 접속의 connectID와 개방되는 채널의 channelID를 기술하는 커맨드패킷(49)을 송신한다. 특히, 그 필드가 표 24에 나타낸 것같이 설정되어 있는 커맨드패킷(49)은 노드A에서 노드B로 보내진다.
field r1 sub_1 c ctype opcode operand[0] operand[1]
set value 1 0 0 Control Close ConnectID ChannelID
채널이 커맨드패킷(29)에 의해 개방되면, 노드B는 노드A에 채널이 개방되어 있음을 명시하는 응답을 송신한다. 이때, 노드B는 그 operand필드에서 사용되고 있는 접속의 connectID와 개방된 채널의 channelID를 기술하는 응답패킷(50)을 송신한다. 특히, 그 필드가 표 25에 나타낸 것같이 설정되어 있는 응답패킷(50)은 노드B에서 노드A로 보내진다.
field r1 sub_1 c response operand[0] operand[1]
set value 1 0 0 Accepted ConnectID ChannelID
커맨드패킷(49)과 응답패킷(50)을 교환하여, 노드A와 B에서 사용되는 채널이 개방된다. 한편, 채널을 개방하는 것이 불필요하면, 채널을 개방하기 위한 커맨드패킷(49)과 응답패킷(50)의 교환이 실행되지 않는다.
그러면 노드A는 노드B에 DISCONNECT 커맨드를 사용하여 접속을 개방할 것을 요구한다. 이때, 노드A는 노드B에 그 operand필드에 개방하고자 하는 접속의 connectID를 기술하는 커맨드패킷(51)을 송신한다. 특히, 그 필드가 표 26에 나타낸 것같이 설정되어 있는 커맨드패킷(51)은 노드A에서 노드B로 보내진다.
field c1 sub_1 c ctype opcode operand[0]
set value 1 0 0 Control Disconnect ConnectID
접속이 커맨드패킷(51)에 의해 개방되면, 노드B는 노드A에 접속이 개방되어 있는 것을 명시하는 응답을 송신한다. 이때, 노드B는 노드A에 그 operand필드에 개방된 접속의 connectID를 기술하는 응답패킷(52)을 송신한다. 특히, 그 필드가 표 27에 나타낸 것같이 설정되어 있는 응답패킷(52)은 노드B에서 노드A로 보내진다.
field r1 sub_1 c response operand[0]
set value 1 0 0 Accepted ConnectID
커맨드패킷(51)과 응답패킷(52)을 교환하여, 노드A와 B사이에 사용된 채널이 개방된다. 한편, 채널이 개방될 필요가 없으면, 접속을 개방하기 위해 커맨드패킷(51)과 응답패킷(52)을 교환할 필요는 없다.
이상은 노드B에서의 데이터를 복수의 커맨드패킷으로 분할하여 분할된 데이터를 독출하는 동작의 순서이다. 이것을 표 28에 요약한다.
기입 B → A
방향 동작 c1/r1 sub_1 c ctype/응답 opcode operand[0] operand[1] operand[2] FCPdata 필드
공통값 순서 최종
A→B 접속설정 1 0 0 Control 접속 ConnectID NodeID(A)
B→A ACK 1 0 0 Accepted ConnectID NodeID(B)
A→B 채널설정 1 0 0 Control 개방 ConnectID ChannelID
B→A ACK 1 0 0 Accepted ConnectID ChannelID
A→B 데이터크기문의 1 0 0 Status 독출 ConnectID ChannelID
B→A ACK 1 0 0 Accepted ConnectID ChannelID 이용가능데이터크기
A→B 독출커맨드 1 0 0 Control 독출 ConnectID ChannelID
B→A 독출데이터 1 0 1 Accepted ConnectID ChannelID 기입데이터1
B→A 독출데이터 1 1 1 Accepted ConnectID ChannelID 기입데이터2
B→A 독출데이터 1 2 1 Accepted ConnectID ChannelID 기입데이터3
B→A 독출데이터 1 3 0 Accepted ConnectID ChannelID 기입데이터4
A→B 채널개방 1 0 0 Control 닫힘 ConnectID ChannelID
B→A ACK 1 0 0 Accepted ConnectID ChannelID
A→B 접속개방 1 0 0 Control 비접속 ConnectID
B→A ACK 1 0 0 Accepted ConnectID
커맨드프레임을 포함하는 패킷이 저장되어 있는 기록매체이면, 본 발명에서 의미하는 기록매체는 특정한 기록매체에 한정되지 않는다.
본 발명에 따르는 기록매체는 이들 매체가 물리적 엔티티를 구성하는지 아닌지에 상관없이 CD-ROM으로 알려진 광학디스크매체, 플로피디스크 등의 자기 디스크매체, ROM 등의 반도체장치, 인터넷으로 대표되는 통신네트워크상에서 스스로 자체순환되는 코드신호와 휴대폰으로 대표되는 무선통신에 의해 전자기파로서 자체순환되는 전자기파를 기술하는 종이매체, 기타 다른 매체를 포함한다.
본 발명에 따르면, 커맨드뿐만 아니라 한 개의 패킷에 저장되지 않는 데이터도 또한 커맨드를 송수신하는데 사용되는 것과 유사한 패킷에 의해 효과적으로 송수신될수 있다.
특히, 본 발명이 IEEE1349에 규정된 Asynchronous패킷에 적용되면, 한 개의 패킷에 저장될수 없는 대량의 데이터가 커맨드를 송수신하는데 사용되는 것과 유사한 패킷에 의해 효과적으로 송수신될수 있다.

Claims (78)

  1. 패킷데이터를 송신하는 데이터 송신장치에 있어서,
    소정의 포맷으로 데이터를 송신하는 수단을 포함하고,
    상기 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함하는 것을 특징으로 하는 데이터 송신장치.
  2. 제 1항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 송신장치.
  3. 제 1항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 송신장치.
  4. 제 1항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 송신장치.
  5. 제 1항에 있어서,
    상기 포맷은 IEEE1394에 의해 규정된 Asynchronous 패킷에 따르는 것을 특징으로 하는 데이터 송신장치.
  6. 제 5항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 송신장치.
  7. 제 5항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 송신장치.
  8. 제 5항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 송신장치.
  9. 제 1항에 있어서,
    상기 포맷은 IEEE1883에 의해 규정된 FCP프레임에 따르는 것을 특징으로 하는 데이터 송신장치.
  10. 제 9항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 송신장치.
  11. 제 9항에 있어서,
    각 패킷의 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 송신장치.
  12. 제 9항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 송신장치.
  13. 패킷데이터를 수신하는 데이터 수신장치에 있어서,
    소정의 포맷의 데이터를 수신하는 수단을 포함하고,
    상기 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함하는 것을 특징으로 하는 데이터 수신장치.
  14. 제 13항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 수신장치.
  15. 제 13항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 수신장치.
  16. 제 13항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 수신장치.
  17. 제 13항에 있어서,
    상기 포맷은 IEEE1394에 의해 규정된 Asynchronous 패킷에 따르는 것을 특징으로 하는 데이터 수신장치.
  18. 제 17항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 수신장치.
  19. 제 17항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 수신장치.
  20. 제 17항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 수신장치.
  21. 제 13항에 있어서,
    상기 포맷은 IEEE1883에 의해 규정된 FCP프레임에 따르는 것을 특징으로 하는 데이터 수신장치.
  22. 제 21항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 수신장치.
  23. 제 21항에 있어서,
    각 패킷의 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 수신장치.
  24. 제 21항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 수신장치.
  25. 패킷데이터를 송신하는 방법에 있어서,
    소정의 포맷으로 데이터를 송신하는 단계를 포함하고,
    상기 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함하는 것을 특징으로 하는 데이터 송신방법.
  26. 제 25항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 송신방법.
  27. 제 25항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 송신방법.
  28. 제 25항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 송신방법.
  29. 제 25항에 있어서,
    상기 포맷은 IEEE1394에 의해 규정된 Asynchronous 패킷에 따르는 것을 특징으로 하는 데이터 송신방법.
  30. 제 29항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 송신방법.
  31. 제 29항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 송신방법.
  32. 제 29항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 송신방법.
  33. 제 25항에 있어서,
    상기 포맷은 IEEE1883에 의해 규정된 FCP프레임에 따르는 것을 특징으로 하는 데이터 송신방법.
  34. 제 33항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 송신방법.
  35. 제 33항에 있어서,
    각 패킷의 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 송신방법.
  36. 제 33항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 송신방법.
  37. 패킷데이터를 수신하는 방법에 있어서,
    소정의 포맷의 데이터를 수신하는 단계를 포함하고,
    상기 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함하는 것을 특징으로 하는 데이터 수신방법.
  38. 제 37항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 수신방법.
  39. 제 37항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 수신방법.
  40. 제 37항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 수신방법.
  41. 제 37항에 있어서,
    상기 포맷은 IEEE1394에 의해 규정된 Asynchronous 패킷에 따르는 것을 특징으로 하는 데이터 수신방법.
  42. 제 41항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 수신방법.
  43. 제 41항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 수신방법.
  44. 제 41항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 수신방법.
  45. 제 37항에 있어서,
    상기 포맷은 IEEE1883에 의해 규정된 FCP프레임에 따르는 것을 특징으로 하는 데이터 수신방법.
  46. 제 45항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터 수신방법.
  47. 제 45항에 있어서,
    각 패킷의 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터 수신방법.
  48. 제 45항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터 수신방법.
  49. 소정의 포맷의 패킷데이터의 데이터구조에 있어서,
    상기 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함하는 것을 특징으로 하는 데이터 구조.
  50. 제 49항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터구조.
  51. 제 49항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터구조.
  52. 제 49항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터구조.
  53. 제 49항에 있어서,
    상기 포맷은 IEEE1394에 의해 규정된 Asynchronous 패킷에 따르는 것을 특징으로 하는 데이터구조.
  54. 제 53항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터구조.
  55. 제 53항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터구조.
  56. 제 53항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터구조.
  57. 제 49항에 있어서,
    상기 포맷은 IEEE1883에 의해 규정된 FCP프레임에 따르는 것을 특징으로 하는 데이터구조.
  58. 제 57항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 데이터구조.
  59. 제 57항에 있어서,
    각 패킷의 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 데이터구조.
  60. 제 57항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 데이터구조.
  61. 소정의 포맷의 패킷데이터가 저장되어 있는 기록매체에 있어서,
    상기 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함하는 것을 특징으로 하는 기록매체.
  62. 제 61항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 기록매체.
  63. 제 61항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 기록매체.
  64. 제 61항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 기록매체.
  65. 제 61항에 있어서,
    상기 포맷은 IEEE1394에 의해 규정된 Asynchronous 패킷에 따르는 것을 특징으로 하는 기록매체.
  66. 제 65항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 기록매체.
  67. 제 65항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 기록매체.
  68. 제 65항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 기록매체.
  69. 제 61항에 있어서,
    상기 포맷은 IEEE1883에 의해 규정된 FCP프레임에 따르는 것을 특징으로 하는 기록매체.
  70. 제 69항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 기록매체.
  71. 제 69항에 있어서,
    각 패킷의 상기 속성은 상기 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 기록매체.
  72. 제 69항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 기록매체.
  73. 패킷데이터를 송수신하는 통신장치에 있어서,
    소정의 포맷으로 데이터를 송신하는 수단과
    소정의 포맷으로 데이터를 수신하는 수단을 포함하고,
    상기 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함하는 것을 특징으로 하는 데이터 송수신장치.
  74. 패킷데이터를 송수신하는 통신방법에 있어서,
    소정의 포맷으로 데이터를 송신하고,
    소정의 포맷으로 데이터를 수신하고,
    상기 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함하는 것을 특징으로 하는 통신방법.
  75. 소정의 포맷의 복수의 (n개의) 패킷데이터를 송수신하고, 상기 포맷은 복수의 패킷으로 만들어진 패킷그룹에 공통인 속성 및/또는 상기 패킷그룹을 구성하는 각 패킷의 속성을 명시하는 정보를 포함하는 통신방법에 있어서,
    각 패킷의 속성과 상기 공통 속성을 송수신하는 제 1단계와,
    상기 공통 속성과 동일한 상기 공통 속성과, 상기 제 1단계에서 송신 또는 수신된 것과 다른 각 패킷의 속성을 송수신하는 n번째 단계를 포함하는 것을 특징으로 하는 통신방법.
  76. 제 75항에 있어서,
    상기 패킷그룹에 공통인 상기 속성은 상기 패킷그룹에 부가된 식별코드인 것을 특징으로 하는 통신방법.
  77. 제 75항에 있어서,
    각 패킷의 속성은 패킷그룹에서 각 패킷의 순서를 명시하는 코드인 것을 특징으로 하는 통신방법.
  78. 제 75항에 있어서,
    각 패킷의 상기 속성은 각 패킷이 패킷그룹에서 최종패킷인지 아닌지를 명시하는 코드인 것을 특징으로 하는 통신방법.
KR1019980021151A 1997-06-10 1998-06-08 데이터 송신장치, 데이터 수신장치, 데이터 송신시스템 및 데이터 송신방법 KR19990006761A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP97-152677 1997-06-10
JP9152677A JPH10341247A (ja) 1997-06-10 1997-06-10 データ送信装置、データ受信装置、データ伝送システム及びデータ伝送方法

Publications (1)

Publication Number Publication Date
KR19990006761A true KR19990006761A (ko) 1999-01-25

Family

ID=15545706

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980021151A KR19990006761A (ko) 1997-06-10 1998-06-08 데이터 송신장치, 데이터 수신장치, 데이터 송신시스템 및 데이터 송신방법

Country Status (6)

Country Link
EP (1) EP0884880A3 (ko)
JP (1) JPH10341247A (ko)
KR (1) KR19990006761A (ko)
CN (1) CN1211764A (ko)
ID (1) ID20946A (ko)
TW (1) TW455779B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100635014B1 (ko) * 1999-08-25 2006-10-16 삼성전자주식회사 복수의 입력스트림을 처리하는 디지털방송수신기

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR9807163A (pt) * 1997-12-10 2000-01-25 Sony Corp Processo de comunicação de dados, conjunto de equipamentos eletrônicos, e, meio de fornecimento de programa
US6498793B1 (en) 1999-03-12 2002-12-24 Hewlett-Packard Company Method for hardware-assisted automatic sorting of out-of-order packets using restricted transaction label
JP4192372B2 (ja) 1999-12-03 2008-12-10 ソニー株式会社 印刷装置、印刷制御装置、印刷システム及び印刷方法
JP4192371B2 (ja) * 1999-12-09 2008-12-10 ソニー株式会社 データ受信装置及びデータ送信装置、データ送受信システム
US7099318B2 (en) * 2001-12-28 2006-08-29 Intel Corporation Communicating message request transaction types between agents in a computer system using multiple message groups
US6944617B2 (en) * 2001-12-28 2005-09-13 Intel Corporation Communicating transaction types between agents in a computer system using packet headers including an extended type/extended length field
US7191375B2 (en) 2001-12-28 2007-03-13 Intel Corporation Method and apparatus for signaling an error condition to an agent not expecting a completion
US7581026B2 (en) 2001-12-28 2009-08-25 Intel Corporation Communicating transaction types between agents in a computer system using packet headers including format and type fields
KR100917889B1 (ko) * 2006-11-01 2009-09-16 삼성전자주식회사 무선 통신 장치 및 방법
JP6822297B2 (ja) 2017-04-21 2021-01-27 富士通株式会社 情報処理装置、情報処理システムおよび情報処理システムの制御方法
US10505530B2 (en) 2018-03-28 2019-12-10 Psemi Corporation Positive logic switch with selectable DC blocking circuit

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4700184A (en) * 1981-10-15 1987-10-13 L'etat Francais One-way data packet transmission system for processing data arranged in groups
US4794589A (en) * 1986-09-16 1988-12-27 Gte Communication Systems Corporation Asynchronous packet manage
JP3371174B2 (ja) * 1994-09-22 2003-01-27 ソニー株式会社 パケット受信装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100635014B1 (ko) * 1999-08-25 2006-10-16 삼성전자주식회사 복수의 입력스트림을 처리하는 디지털방송수신기

Also Published As

Publication number Publication date
EP0884880A2 (en) 1998-12-16
EP0884880A3 (en) 2001-01-10
JPH10341247A (ja) 1998-12-22
CN1211764A (zh) 1999-03-24
ID20946A (id) 1999-04-01
TW455779B (en) 2001-09-21

Similar Documents

Publication Publication Date Title
US6622187B1 (en) Method for pre-processing data packets
KR19990088404A (ko) 데이터버스상의데이터를최대속도로전송하는방법및장치
US20020010824A1 (en) Electronic equipment and method for processing digital serial data at bus initialization phase in interface unit
US6964006B2 (en) Network error display apparatus and error detection display method
KR19990006761A (ko) 데이터 송신장치, 데이터 수신장치, 데이터 송신시스템 및 데이터 송신방법
US6363428B1 (en) Apparatus for and method of separating header information from data in an IEEE 1394-1995 serial bus network
US6823408B2 (en) Electronic equipment, and method for controlling state of physical layer circuit therefor
US6895003B1 (en) Communication system, apparatus, and method in which data transmission is interrupted for a bus reset
JP3098996B2 (ja) パケット通信装置
JP4019481B2 (ja) 情報処理装置および方法、情報処理システム、並びに提供媒体
JP4009022B2 (ja) データ伝送方法及びデータ伝送装置
EP1253520B1 (en) Apparatus for issuing command for high-speed serial interface
US6580711B1 (en) Serial interface circuit and signal processing method of the same
US7154910B2 (en) Method for any speed dubbing using isochronous packets on isochronous channels or on asynchronous streams over an IEEE 1394-2000 serial bus network
EP1033658B1 (en) Communication apparatus with means for allocating alternate designation information to each function unit, and communication system with two such communication apparatus
KR100464469B1 (ko) 데이터 전송 제어 장치 및 전자기기
US7720821B1 (en) Method of and apparatus for writing and reading time sensitive data within a storage device
US7003604B2 (en) Method of and apparatus for cancelling a pending AV/C notify command
EP1058193A1 (en) Method and apparatus for pre-processing data packets in a bus interface unit
JP3800058B2 (ja) ゲートウェイ装置
JP4546960B2 (ja) 分散された複数の局のネットワークのためのネットワーク加入者局及び該ネットワーク加入者局を操作するための方法
EP1059590B1 (en) Method for pre-processing packets in a bus interface
JP2002135270A (ja) データの非同期転送方式
JP3977051B2 (ja) 通信装置及び制御方法
JP2006324869A (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