KR950014178B1 - 컴퓨터 시스템용 입/출력 네트워크 - Google Patents

컴퓨터 시스템용 입/출력 네트워크 Download PDF

Info

Publication number
KR950014178B1
KR950014178B1 KR1019870014267A KR870014267A KR950014178B1 KR 950014178 B1 KR950014178 B1 KR 950014178B1 KR 1019870014267 A KR1019870014267 A KR 1019870014267A KR 870014267 A KR870014267 A KR 870014267A KR 950014178 B1 KR950014178 B1 KR 950014178B1
Authority
KR
South Korea
Prior art keywords
information
control
session
data
packet
Prior art date
Application number
KR1019870014267A
Other languages
English (en)
Other versions
KR880008170A (ko
Inventor
에이.피춰 마이클
Original Assignee
데이타 포인트 코오포레이숀
로스 라프헤드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 데이타 포인트 코오포레이숀, 로스 라프헤드 filed Critical 데이타 포인트 코오포레이숀
Publication of KR880008170A publication Critical patent/KR880008170A/ko
Application granted granted Critical
Publication of KR950014178B1 publication Critical patent/KR950014178B1/ko

Links

Images

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/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
    • 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/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • 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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • 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
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/327Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the session layer [OSI layer 5]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Control By Computers (AREA)
  • Communication Control (AREA)

Abstract

내용 없음.

Description

컴퓨터 시스템용 입/출력 네트워크
제1도는 대용량 기억 I/O 채널, 문자 I/O 채널 및 국부 지역 네트워크가 접속된 전형적인 종래의 컴퓨터 시스템의 블록도.
제2도는 본 발명의 IONET 채널을 이용한 컴퓨터 시스템의 블록도.
제3도는 복수의 IONET 채널에 의해 복수의 I/O 장치는 단일 컴퓨터 시스템에 접속한 것을 예시한 블록도.
제4도는 하나의 IONET 채널에 의해 복수의 컴퓨터 시스템을 복수의 I/O 장치에 접속한 것을 예시한 블록도.
제5도는 LAN에 의해 상호 접속된 복수의 컴퓨터 시스템과 복수의 I/O 장치를 각 컴퓨터 시스템에 접속한 IONET 채널을 가진 각각의 컴퓨터 시스템을 예시한 블록도.
제6도는 I/O 장치를 IONET채널의 케일블에 상호 접속한 IONET 채널을 사용접(POU)어댑터의 블록도.
제7도는 IONET 채널의 케이블에 접속된 컴퓨터 시스템의 블록도.
제8도는 RS232직렬 장치 인터페이스를 사용한 POU어댑터의 예에 대한 블록도.
제9도는 국제표준 기구의 통신용기준 모델의 7개의 층으로 된 오픈 시스템 인터페이스(OSI)아키텍춰를 예시한 도면.
제10도는 순차적인 바이트 형태로 도신된, IONET 채널을 통해 전송된 정보의 IONET 패킷을 예시한 도면.
제11도는 물리적 회선 네트워크 이송에 대응하는 계층 레벨과 OSI 모델의 세션 레벨로 절단된 제10도의 IONET 패킷을 예시한 도면.
제12도는 제10도의 IONET 패킷의 비트 레이아웃과 개개의 바이트중 몇개에 대한 다른 세부를 상세히 예시한 도표.
제13도는 본 발명의 POU 어댑터의 송신기 상태 머신용의 일반화된 상태 천이도의 일례를 도시한 도면.
제14도는 본 발명의 POU 어댑터의 수신기 상태 머신용의 일반화된 상태 천이도의 일례를 도시한 도면.
제15도는 정상모드에서 송신기 상태머신의 동작을 특징짓는 도표.
제16도는 즉시 모드에서 송신기 상태 머신의 동작을 특징짓는 도표.
제17도는 정상모드에서 수신기 상태머신의 동작을 특징짓는 도표.
제18도는 즉시 모드에서 수신기 상태머신의 동작을 특징짓는 도표.
* 도면의 주요부분에 대한 부호의 설명
100 : 컴퓨터 시스템 102 : 프로세서
104 : 메모리 106 : I/O 장치
108 : 대용량 기억 I/O 채널 110 : 디스크
112 : 테이프 114 : 문자 I/O 채널
116 : 다중 포트 어댑터 120,134 : 터미날
122 : 프린터 124 : 모템
125 : 국부지역 네트워크 어댑터 130 : 국부지역 네트워크
132 : 클러스터 서버 142 : 터미날
144 : 프린터 146 : PC
148 : 데이타 수집장치 150 : 모뎀
156 : 원격 컴퓨터 시스템 162 : 터미날
172 : POU 176 : I/O 장치
180 : 마이크로 컴퓨터 182 : 장치 인터페이스
190 : 하이브리드 회로 204 : 어드레스 드라이버
206 : 데이타 트랜시버 208 : 패킷 버퍼 RAM
210 : 버퍼포인트
본 발명은 컴퓨터 시스템 입/출력 개선에 관한 것으로서, 특히 컴퓨터 시스템 재원의 효율적인 시분할과 I/O 장치와 컴퓨터 시스템간의 효과적인 통신을 달성하기 위하여 비교적 큰 지형학적 구조의 지역을 통해 비교적 다수의 저속 또는 중속 I/O 장치와 혼합형태의 주변 장치를 컴퓨터 시스템에 경제적으로 접속하는데 유용하다.
복수의 상이한 비교적 저속의 외리부 I/O 장치중에서 컴퓨터 재원의 시분할에 대한 요구가 증가됨에 따라 수년에 걸쳐 컴퓨터 시스템 아키텍춰에 있어서 혁명적인 변화가 일어나게 되었다. 이러한 변화의 대부분은 I/O 서브시스템 중심이었다. I/O 채널 제어기는 증가하는 수의 I/O 장치를 수용하고 현대식 중앙처리장치로부터 얻을 수 있는 처리 속도를 제한하는 것을 피하기 위하여 고안되었다. I/O 채널 제어기는 보통 대용량 기억형태 또는 분자 형태롤 되어 있다. 대용량 기억 I/O 채널 제어기는 비교적 대량의 데이타를 디스크드라이브와 같은 하나 또는 그 이상의 외부 대용량 기억 장치로부터 컴퓨터 시스템의 버스를 거쳐 시스템 주메모리로의 고속 전송을 제어하는데 사용된다. 각각의 한번의 연속적인 고속 전송 동작시 비교적 소수의 대량 데이타 전송으로 인하여, 대용량 기억 채널 제어기의 동작 효율은 보통 주요 제한 요인으로 간주되지 않고 있다. 그러나, 터미날 또는 프린터와 같은 비교적 다수의 비교적 저속 및 중속의 I/O 장치의 경우처럼 비교적 소량의 데이타, 보통 문자를 간헐적으로 비교적 다수회 전송하고자 하는데 있어서 실질적인 제한이 야기되었다. 저속 및 중속의 I/O 장치의 사용증가에 따라 진보된 문자 I/O 채널 제어기는 계속 복잡도를 증가시켜 왔고 원하는 개선에 대하여 효율성을 감퇴시키는 지점에 이르게 되었다.
문자 I/O 채널 제어기의 가장 통상적인 버전(version)은 그것에 접속된 일정수(예 8,16 또는 32개)의 I/O 장치로/로부터의 다중 데이타에 대하여 독자적인 비교적 복잡한 처리기를 사용한다. 문자 채널 제어기의 I/O 포트는 엄격한 국부 접속을 위해 특정 형태의 장치로 제한될 수 있다. 문자 채널 제어기가 특별한 장치가 아니라면, 유사하게 복잡한 I/O 어댑터가 I/O 채널 제어기 및 각 장치 또는 장치 그룹간의 통신에 필요하다. I/O 채널 제어기, I/O 어댑터, 호스트 컴퓨터 및 I/O 장치의 동작 기능은 이들 모든 컴포넌트 사이에서 공유된다. 이러한 통신을 완수하는데 사용된 통신 및 제어 프로토콜은 보통 복잡하고 동작 시프템에서 실질적인 오버헤드를 필요로 하며 또한 일반적으로 I/O 데이타의 전송을 복잡하게 하고 데이타 처리 효율을 제한하게 된다.
각 장치를 컴퓨터 시스템에 접속하는데 드는 비용의 대부분은 채널 제어기 및 어댑터내의 I/O 처리기의 비교적 복잡한 동작 특성과 필요한 프로토콜에 따라서 발생된다. 이러한 비교적 높은 비용의 일부를 삭감하기 위해서는, 다수의 I/O 장치를 접속하기 위하여 각 I/O 어댑터의 다수으 포트를 제공하는 것이 일반적이다. I/O 장치는 케이블 길이가 신뢰성 있는 데이타 전송이 이루어질 수 있는 속도를 제한할 수 있기 때문에 통상적으로 I/O 어댑터에 물리적으로 근접되게 배치되어야 한다. 다중표트의 I/O 어댑터상의 비사용된 포트가 이용될 수 없는 경우에 새로운 I/O 장치를 컴퓨터 시스템에 접속하기 위해서는, 또다른 다중 포트 I/O 어댑터가 채널 제어기에 접속되어야 한다. 사용자는 시스템상의 각각의 새로운 I/O 장치의 부가에 필수적으로 관계되지 않는 접속 비용을 부담하여야 하는데, 그 이유는 이러한 모든 포트 접속이 이용될 수 있는가의 여부에 관계없이 각각의 새로운 다중포트 어댑터의 부가로 인해 다수의 I/O 장치를 접속하는 능력이 필요하기 때문이다. 이떤 상황에서는, I/O 장치를 시스템에 접속하는 비용은 I/O 장치 자체의 비용을 초과할 수도 있다.
문자 I/O 채널 제어기 및 어댑터에 사용되는 멀티플렉싱 형태는 또한 제한을 나타낼 수도 있다. 멀티플렉싱의 한가지 형태는 센트럴라이즈드 폴링(centralized polling)으로 알려져 있다. 센트럴라이즈드 폴링의 경우, 중앙 처리장치는 그것이 송출할 데이타를 가졌는가의 여부에 관계없이 각각의 I/O 장치를 순서적으로 검색하는 신호를 송출한다. 인듀스드 폴링(indured polling)또는 폴링 온 디멘드(polling on demand)로서 알려진 또다른 폴링의 형태는 어댑터가 상태 신호의 변화를 송출할 때에만 이와 같으 ㄴ센트럴라이즈드 폴링을 개시한다. 인듀스드 폴링은 모든 어댑터 및 I/O 장치를 연속적으로 폴링하는 처리 부담 또는 오버 헤드를 피하지만, 어떤 폴링 시퀀스 동안 모든 어댑터가 순서적으로 폴링되는 것을 필요로 한다. 폴링은 중앙 처리장치 또는 채널 제어기에서 상당한 소프트웨어 기능을 필요로 하며, 능동 및 수동 I/O 장치를 폴링하고 또 폴링의 결과를 분석하는데 시간을 허비한다.
또다른 형태의 멀티플렉싱은 일반적으로 액세스 온 디멘드(access on demand)로서 불리운다. 액세스 온 디멘드 멀티플렉싱은 통신 회선에 대한 액세스를 위한 어댑터로부터의 요구와 다른 어댑터로부터의 경합하는 요구를 해소하기 위한 어떤 중재 형태를 포함한다. 중재 시스템에서의 신호 전파 지연은 상당한 악영향을 미치게 된다. 신호 전파 지연은 물리적인 케이블 길이의 증가에 따라 시스템 버스 제어기를 이용하는 중재 기술은 보통 컴퓨터 버스 및 요구를 발생하는 I/O 어댑터와 중재 논리 사이의 거리가 수 피이트 이하로 확장되는 다른 응용 분야로 제한된다.
토큰 패싱(token passing)은 국부 지역 네트워크(LAN)에서 연속적으로 사용되온 부배식 제어 또는 중재 기술이다.
본 발명은 컴퓨터 시스템용 I/O 네트워크(IONET) 채널에 관한 것이다. 일반적으로, IONET 채널은 LAN 형태의 통신 매체를 통한 중재, 그 매체를 통해 분배되고 각 I/O 장치에 개별적으로 또는 비교적 소수의 I/O 의 장치에 접속된 마이크로컴퓨터를 가진 비교적 저가격의 사용점 어댑터, 및 마이크로컴퓨터를 효과적으로 제어하고, I/O 장치와 컴퓨터 시스템 메모리 사이의 데이타 통신을 제어하는 통신 및 제어 프로토콜을 사용함으로써 컴퓨터 시스템의 I/O 서브시스템에 직접 접속되는 동일 또는 혼합형태의 복수의 저속 및 중속 장치들가느이 고도의 효과적인 문자 및 기타 통신을 위해 마련된 것이다. LAN 형태의 통신 매체, 프로토콜, 분배 방식의 저가격 사용점 어댑터는 전술한 중요한 제한없이 개선된 I/O 채널 제어기로소 협동하여 기능한다.
I/O 장치는 중재 제어기 데이타 전송효율이 감소 없이 이러한 접속을 가능케하기 때문에, 그리고 LAN 기술일 저가격 케이블과 병용될 수 있는 다른 방식보다 더 먼 거리에서 신뢰성 있는 데이타 통신을 제공하기 때문에 전형적인 I/O 채널 경우보다 중앙 처리장치로부터 실질적으로 더 먼 거리에서 부착될 수 있다. 그 통신 및 제어 프로토콜은 비교적 간단하고 실질적인 오버헤드를 필요로 하지 않으며 효율적인 데이타 전송을 가능케 한다. 사용점 어댑터는 비교적 간단히 구성되고 데이타 전송을 제어하도록 프로토콜의 지령에 직접적으로 효과적으로 응답한다. 사용자는 각각의 새로운 I/O 장치를 시스템에 부착함에 있어 비교적 적은 접속 비용을 부담하게 되며, 이에 의해서 고가격의 단일의 광범한 공유 로직 멀티 플렉싱 어댑터와, 이러한 공유 로직 멀티플렉싱 어댑터에 I/O 장치를 접속하는 것과 관련된 물리적인 위치 제한을 피할 수 있게 된다.
I/O 장치는 널리 분포된 장소에 위치하게 될 수 있다. 데이타 전송 효율은 통신이 상당히 저속의 I/O 장치로써 행하여 진다는 사실에도 불구하고 훨씬 더 신속한 중앙 처리 장치의실시간 시분할을 필요로 하지 않는다. 각 I/O 장치의 사용자는 각 I/O 장치 또는 터미날에 완전한 컴퓨터 시스템을 배치하지 않고도 완전한 컴퓨터 시스템의 재원에 대하여 액세스 할 수있다.
본 발명의 프로토콜은 그것이 이송 레벨의 흐름 제어를 포함하기 때문에 네트워크 대역폭의 상단한 보존을 꾀할 수 있다. 데이타 패킷은 패킷이 수신될 수 있다고 설정될 때까지 송출되지 않는다. 프로토콜은 일반적으로 임의의 시간에서 어느 한 패킷의 손실 또는 복사가 없게 된다. 패킷이 복사되거나 제외되는 경우 시스템은 이송 레벨에서 저절로 복구된 것이다. 본 발명은 또한 안정성을 고려할 필요가 있고 정보에 대한 액세스를 제한할 필요가 있는 경우에 매우 유용한 것으로서, 마이크로프로세서내에서 비밀리에 접속되는 국부장치의 단면을 보여준다. 멀티플렉싱 기능과 네트워크 제어기능의 중요한 부분이 프로토콜로 이동되었다.
본 발명은 첨부 도면을 참조로 한 본 발명의 양호한 실시예에 대한 다음의설명으로부터 보다 명확히 이해할 수 있을 것이다. 본 발명의 실제의 범위는 부속 청구범위로 제한되지 않으며 상술한 본 발명에 대한 설명은 어떤 특징에 대한 일반적 개요로만 인식되어야 한다.
본 발명은 제1도에 예시된 전형적인 종래의 컴퓨터 시스템(100)을 참조함으로써 보다 잘 이해할 수 있을 것이다.
컴퓨터 시스템(100)은 전형적인 시스템 주 메모리 소자(104)에 접속되어 그것과 통신하는 전형적인 프로세서(102)를 포함하다. 전형적인 I/O 서브시스템(106)은 주 메모리(104)로/로부터의 데이타를 통신하기 위하여 마련된다. 프로세서(102), 주메모리(104) 및 I/O 서브시스템(106)은 모두 현대식 컴퓨터 시스템을 전형화하는 큰 내부 용량 또는 대역폭에서 서로 통신할 수 있다.
I/O 서브시스템(106)은 외주 주변장치를 위한 하나 또는 그 이상의 외부 상호 접속부를 가질 것이다. 이러한 외부 접속부는 통상적으로 I/O 채널로 불리운다. 가장 현대식의 컴퓨터 시스템에서는 두가지 형태의 I/O 채널이 이용된다. 그중 한가지 형태의 I/O 채널은 대용량 기억 I/O 채널(108)이다. 대용량 기억 I/O 채널(108)은 디스크(110) 및 테이프(112) 기억장치의 전형적인 큰 대역폭 전송을 보조함으로써 전형화된다. 대용량 기억 I/O 채널(108)을 통상적으로 그 길이가 수십피이트로 제한된다. 대용량 기억 채널(108)은 어떤 대용량 기억 I/O 채널이 다른 장치가 데이타를 동시에 액세스 하고 있으나 단지 하나가 데이타를 동시에 단지 물리적으로 전송하고 있는 경우에 오우버랩 동작을 처리할 수도 있지만, 단지 하나의 I/O 장치로/로부터의 데이타 전송을 동시에 수행할 수 있다. 일반적으로, 대용량 기억 채널은 다른일 중에서 비교적 값비싼 케이블링 요건, 비교적 광범위한 인터페이스 회로, 물리적 거리 제한 및 비교적 큰 데이타 블록의 전송을 위한 대용량 기억 I/O 채널(108)의 각각의 전송과의 최적화 때문에 시스템 메모리와 I/O 주변장치 사이의 저속 또는 덜 연속적인 듀티 사이클을 취급하는데 있어 최적은 아니다.
비교적 짧은 양의 데이타의 비교적 다수의 개별적 전송을 수용하기 위해서, 대부부느이컴퓨터 시스템은 또한 문자 I/O 채널(114)를 구비한다. "문자"란 용어는 가장 지배적인 사용으로서 영숫자 및 특수 문자를 나타내는 데이타 엔티티(dats entities)를 외부 주변장치로/로부터 전송하는 것을 의미한다. 그러나, "문자"란 용어는 결코 단지 문자가 전송될 수도 있는 제한을 나타내지 않는다. 그래픽 데이타, 중재 2진 데이타 및 정보의 다른 인코딩이 문자 I/O 채널(114)는 전송될 수도 있다. 문자 I/O 채널(114)은 대용량 기억 I/O 채널(108)의 속도보다 일반적으로 낮은 속도이지만 문자 I/O 채널(114)에 부착된 어떤 개별적인 주변장치보다 빠른 속도로 발생하는 병렬 또는 직렬 데이타 비트 전송에 의해 전형화된다.
문자 I/O 채널(114)은 소수의 주변장치로의 긴 전송보다는 비교적 다수의 주변장치로의 짧은 전송에 가장 적합하다.
중규모 및 소규모 컴퓨터 시스템에서는, I/O 장치를 접속하는 가장 통상적인 접속 배열은 채널(114)에 부착된 하나 또는 그 이상의다중 포트 인터페이스 또는 어댑터(116)이다.
전형적으로 어댑터(16)는 전체 컴퓨터 시스템(100)의 일부일 것이다. 다수의 저속 직렬 또는 병렬 통신 인터페이스(118)는 컴퓨터 시스템(100)의 외장을 나가게 되고, 예를 들어 터미날(120), 프린터(122) 및 모뎀(124)과 같은 주변장치에 전기적으로 접속되어 그것과 통신하게 된다. 인터페이스(118)는 모뎀이 사용되지 않는 경우 길이가 극히 제한되는 경향이 있는 저속 통신 케이블로서 정상적으로 기껏해야 초당 수십 킬로비트로 속도가 제한되며, 컴퓨터 시스템(100) 외장의 후면 파넬상에서 각각의 케이블(118)이 눈에 띌만한 이격량을 나타내기 때문에 컴퓨터 시스템 성능을 제한한다. 흔히 현대식 컴퓨터 시스템이 보조할 수 있는 외부 케이블(118)의 수는 컴퓨터 시스템의실제적인 상용 I/O 대역폭보다 우면 파넬 스페이스 량에 의해 더욱 제한된다.
또한 실용적으로 다중포트 어댑터(116)를 컴퓨터 시스템 외장내 또는 그것에 바로 인접한 I/O 문자 채널(114)에 직접 접속한다. 그러나, 이러한 직접 접속은 컴퓨터 시스템 자체의 위치로부터 상당히 이동되지 않은 거리에 다중포트 어댑터(116)를 배치함으로써 비교적 짧은 거리로 제한된다.
가장 대규모의 컴퓨터 시스템에서는, 다중포트 어댑터(116)는 실제로 소위프로트 엔드 프로세서(front end processor)로 불리우는 전용 프로세서를 구비하여 실제로 여러 주변장치와 컴퓨터 시스템(100)사이의 통신 및 멀티플렉싱을 제한한다.
어댑터(166)의 기능은 저속 I/O 장치의 제어를 위한 처리 요건이 제어프로세서상에 과도한 부하를 위치시키는 것을 방지하기 위하여 독자적인 비교적 복잡하고 값비싼 프로세서를 필요로하므로 다소 복잡하게 되는 경향이 있다. 또한 I/O 서브시스템(106)과 다중 포트 어댑터(104)로/로부터의 상당한 내부통신 오버헤드를 필요로 하게 된다.
각각의 다중포트 어댑터(116)에 결합되는 것을 필요로 하는 공유로직과 비교적 복잡한 하드웨어는 복수의 주변장치 전형적으로는 적어도 4개, 보통으로는 8 또는 16개, 때때로는 32개의 주변장치에 접속할 능력을 갖추어야할 필요가 있다. 이에 따라 각 어댑터(116)에 접속돌 다수의 주변장치가 존재한다면 코스트 효율성이 얻어지게 된다. 모든 인터페이스 또는 케이블(118)이 점유된다면, 다음의 추가 주변장치를 수용하도록 사용자가 또다른 다중 포트 어댑터(116)를 컴퓨터 시스템에 부착하는 것이 필요하다. 이러한 추가 주변장치를 부착하는데 있어 증가되는 코스트는 극히 높거나 사용을 불가능하게 만들며, 심지어는 주변장치 자체의 코스트를 초과하는 경우도 있다. 또한, 문자 I/O 채널(114)의 거리제한과 인터페이스 케이블(118)의 길이 제한 때문에 모든 주변장치는 물리적으로는 다중포트 어댑터(116)에 대해 비교적 가까운 거리에 위치하게 된다.
상술한 다중포트 어댑터(116)과 동일한 일반적 기능을 가진 장치는 종종 I/O 채널 제어기로 일컬어진다.
여러 경우에, 국부지역 네트워크(LAN)는 또한 컴퓨터 시스템(100)에 부착된다. 전형적으로 LAN 어댑터(125)는 I/O 서브시스템(106)사이에 사용된다. 이 LAN 어댑터는 흔히 문자 I/O 채널(114)에 부착한다. LAN(126)은 정보를 분할을 위하여 복수의 컴퓨터 시스템의 접속되는 네트워크 통신 매체 또는 케이블(128)을 구비한다. 각각의 컴퓨터 시스템은 탭 또는 드롭(13)에서 LAN 케이블(128)에 접속된다. 탭(130)에서 LAN 케이블(128)에 접속된 각 시스템은 노드로서 일컬어진다. 여러가지 다른 통상의 LAN 구성, 이를테면 토큰링, 토큰버스, 내용 중재 버스등이 이용될 수 있다. 여러 통상의 LAN들의 가정 중요한 차이는 재원 공유 및 기능의 상이도를 제공함으로써 네트워크 형성 소프트웨어의 복잡성에 근거한다.
네트워크 케이블(128)은 호스트 또는 메인 컴퓨터 시스템(100)으로부터 다른 노드로 비교적 긴 거리만큼 확장될 수 있다.
이러한 노드 중 어떤 것은 다른 범용 컴퓨터 시스템(100')이다. LAN의 어떤 노드는 프로트 엔드 프로세서로서 알려진 특수 목적의 장치일수도 있다. 프론트 엔드 프로세서는 때때로 클러스터 서버(cluster server)로 불리운다. 프론트 엔드 프로세서(132)는 일반적 계산 기능을 제공하지는 않으나, 터미날(134) 또는 다른 비컴퓨터화된 I/O 장치의 부착을 가능케 하도록 투과 인터페이스 소자로서 기능한다. LAN(126)에 의해 LAN 어댑터(125)를 통해 I/O 서브시스템(106)을 통해 I/O 서브시스템(106)에 접속되지만, 복잡한 처리 기능, 번잡한 오버헤드, 멀티플렉싱을 위한 공유로직과 고나계되는 다중포트 어댑터(116)과 관련하여 논의된 단점은 일반적으로 각각의 클러스터 서버(132)에 적용된다. 확실이 각 클러스터 서버(132)의 코스트 효율성은 비교적 다수의 I/O 장치(34)를 비교적 짧은 거리에서 그것에 접속하는 것에 좌우된다. 그러나, 추가 터미날은 LAN에 부착하기 위한 코스트 증가는 모든 터미날이 클러스터 서버에 대해 물리적으로 가까이 위치될 수 있기 때문에 통상적으로 확대된다. 결과적으로, I/O 장치의 물리적 이격화를 수용하기 위해 실제로 필요한 것보다 많은 클러스터 서버 또는 다른 프론트 엔드 프로세서가 사용되어야 한다. 이러한 요건은 추가 I/O 장치를 부가하는 비용에 상당히 기여하게 된다.
전형적인 종래의 컴퓨터 시스템에 대하여 본 발명은 일반적으로 제2도에 예시된다. 입/출력 네트워크(IONET)채널(140)은 컴퓨터 시스템(100)을 복수의 I/O 장치 예를들어 터미날(142), 프린터(144), 개인용 컴퓨터(146), 각종 데이타 수집장치(148), 모뎀(150) 및 통제용 멀티플렉서(152)에 접속하기 위하여 마련된다. 모뎀(150)은 예를들어 전화선로(154)를 통해 원격 컴퓨터 시스템(156)과 통신한다. 통계용 멀티플렉서(152)는 전화 선로(158)를 통해 물리적으로 유사한 원격 유니트(160)에 통신한다. 복수의 원격 터미날(158)상의 수개의 함께 위치한 원격 터미날(162)로/로부터 나가는 집합 입/출력을 조합함으로써 전화 선로 비용을 감소시킨다.
여기에서 사용된 바와같이 "I/O장치"는 자동적으로 동작할 수 없으며 컴퓨터 시스템에 부착하도록 어떤 형태의 인터페이스 어댑터를 필요호 하는 주변장치로서, 이하에서 상세히 정의되는 바와같이 독자적인 프로세서를 구비하는 "장치"와는 구별되는 것이다. I/O 장치는 I/O 정보 전송을 수행한다.
IONET 채널(140)은 종래의 기술에서 나타나는 상당히 많은 제한을 피하면서도 비교적 다수의 저속 및 중속 I/O 장치를 컴퓨터 시스템에 부착시키는데 있어서 상당한 개선을 달성하도록 토근 패싱 LAN 및 문자 I/O 채널의 어떤 특징을 결합한다. IONET 채널(140)은 주로 문자 채널이지만, 중재 바이트열은 이 채널을 통해 전송될 수 있고 그것의 사용은 문자 전송 상황으로 제한되지 않는다.
IONET 채널(140)은 통신 매체 또는 케이블(170), 케이블(170)에 접속된 복수의 사용점(POU) 어댑터(172)를 구비하며, 컴퓨터 시스템을 접속하기 위한 수단은 노드(node)(174)에 있다.
"node"란 용어는 케이블에 대한 전기 접속부를 말하며 아래에서 상세히 정의된 바와같이 일반적으로 node에서 접속된 모든 장치를 일컫는 용어 "Node" 와 구분되는것이다. IONET 채널(140)은 인터페이스 수단이 될 수 있는데, 그것에 의해 컴퓨터(100)는 여러 I/O 장치에 접속된다. I/O 장치는 모든 여러가지 다른 형태의 논-프로세서(non-processor)및 터미날(142), 프린터(144), 개인용 컴퓨터(146), 데이타 수집장치(148), 모뎀(150), 통계용 멀티플렉서(152)와 같은 IONET 채널에 부착될 수 있는 대용량이 아닌 기억 주변 장치(non-bulk peripherals)를 둘러싸도록 되어 있다.
컴퓨터 시스템(100)은 별도의 LAN, 다중포트 어댑터, 자체의 문자 I/O 채널 인터페이스 레퍼토리에서 각종 다른 농력을 필요로 하지 않기 때문에 간소화된다. 또한, 컴퓨터 시스템은 다른 컴퓨터 시스템과 LAN의 통신이 필요하지 않는 한 컴퓨터 시스템으로 하여금 LAN 프로토콜을 보조할 필요성을 피할 수 있게 함으로써 주변장치와의 통신을 위해서 LAN 프로토콜에서 네트워크 Node의 기능을 필요로 하지 않는다. 이와는 대조적으로, IONET 채널(140)과 관련하여 사용하기 적합한 프로토콜은 주로 I/O 장치 인테페이싱을 위한 것으로서, 재원 공유 또는 원격 연산 시스템 기능을 위한 것은 아니다. 결과적으로, IONET 프로토콜은 POU 어댑터(172)에 의해 각각의 원격 I/O 장치에서 비교적 간단히 시행된다.
POU 어댑터(172)는 컴퓨터 시스템(100)에 물리적으로 비교적 근접되게 위치할 필요는 없으나, 상당한 거리로 이동될 수도 있다. 예를들어, 본 발명의 양호한 실시예에 있어서, I/O 장치는 컴퓨터 시스템(100)으로부터 22,000feet 거리에 위치할 수 있다.
I/O 장치로/로부터 나가는 데이타는 단일 직렬 케이블(170)상으로 멀티플렉스된다. POU 어댑터(172)는 그들이 부착된 I/O 장치내에 또는 그것에 인접하여 위치하게 된다. I/O 장치내에 위치하거나 I/O 장치내에 내장된 POU 어댑터(172)의 예는 개인용 컴퓨터(146)에 의해 예시되는데, 여기에서 POU 어댑터(172)는 개인용 컴퓨터(146)과 동일한 하우징내에 내장된 것으로 예시되어 있다.
보다 큰 수효의 I/O 장치를 부착시키는 훨씬 더 큰 컴퓨터 시스템을 수용하기 위하여 다수의 I/O 채널(140a),(140b)이 제3도에 도시된 것과 동일한 컴퓨터 시스템에 접속될 수 있다. 제3도는 이러한 방법이 컴퓨터 시스템 외장을 들어가고 나가는 케이블의 수가 크게 증가되지 않고 다수의 I/O 장치를 보조하도록 확장될 수 있는 방식을 예시하고 있다. 각각의 IONET 채널(140a),(140b)은 각각 단일 도체(170a),(170b) 를 이용하여, 각각의 IONET 채널 형태로 컴퓨터 시스템의 저속 및 중속 I/O 능력을 부여하고 정상적으로 다중포트 어댑터 또는 프론트 앤드 프로세서와 관련된 기능을 복수의 POU 어댑터로 분배함으로써, 파넬 간격의 양과 호스트 컴퓨터 시스템에 필요한 케이블 상호 접속부가 실질적으로 감소된다. 또한, 컴퓨터 시스템 외장에 대한 액세스는 주변장치를 부가하는 것을 필요로 하지 않는다. 더우기, 집중 대역폭이 전형적인 컴퓨터 시스템으로부터 나오는 저속 통신 케이블의 전형적인 초당 수천 비트보다는 LAN 형태 매체의 초당 수백만비트로서 측정되기 때문에 통신 대역폭은 감소되지 않는다.
본 발명의 또다른 중요한 구성적 잇점은 제4도에 나타나 있다. 대용량 기억 형태 또는 문자 방위 형태이든간에 통상의 I/O 채널은 컴퓨터 시스템과 복수의 외부 주변장치 사이에서 정보를 전송하기 위한 도관을 제공하기 위하여 단일 컴퓨터 시스템에 부착되는 것으로 제한된다. 이러한 본 발명의 특성 때문에, 제4도에 예시된 단일 공유 IONET 문자 채널(140)에 의해 복수의 컴퓨터 시스템(100a),(100b)를 복수의 I/O 장치(176)에 부착시키는 것이 가능하다. I/O 장치(176) 중 어느 하나는 컴퓨터 시스템(100a) 또는 (100b)와 통신할 수 있다. IONET 채널이 보조할 수 있는 Node 수의 물리적인 제한과 집중 채널에 의해 부과될 수 있는 것 이외에 IONET 문자 채널에 접속될 수 있는 이러한 컴퓨터 시스템의 수에 대해서는 아무런 제한이 없다. 이러한 잇점은 특히 아무런 물리적 스위칭 또는 물리적 멀티포팅(multiporting)이 포함되지 않기 때문에 중요하다. 이것은 통상의 I/O 채널간의 스위칭을 위한 주변장치 또는 I/O 채널상에서 다중 채널 스위치를 사용하는 것과 대조적이며, 또한 다중 채널 상에서의 주변장치의 접속을 제어하는데 이용될 수 있는 통상의 패치 파넬(patch panel)또는 정자 스위칭 시스템을 사용하는 것과도 대조적이다. 이러한 통상의 구성은 특정 주변 장치를 다중 I/O 채널에 접속하는데 필요한 추가 하드웨어 때문에 비용이 증가되고 신뢰성이 감소된다. IONET 채널을 통한 통신은 차후에 상세히 설명될 바와같이 케이블을 통해 어드레스 신호 또는 토큰을 전도시킴으로써 제어된다. 따라서 접속능력은 컴퓨터 시스템과 POU 어댑터에서의 소프트웨어 및 퍼엄웨어 동작이 기준이 되며, 각각의 I/O 장치로 하여금 토큰을 재방향시킴으로써 IONET 채널의 ON 또는 OFF 스위칭을 가능케 한다. 아무런 물리적 스위칭이 행해질 필요가 없기 때문에, 컴퓨터 시스템 중 어느 하나의 고장은 그 컴퓨터 시스템에 부착된 장치가 동작될 수 없게 만드는데, 그 이유는 상기한 부착이 논리적이기 때문이다. 본 발명은 또한 안전 설비를 구비하여 동일 케이블 상에 다수의 상기 시스템이 존재함에도 불구하고 I/O 장치가 단일 컴퓨터 시스템에 부착될 수 있게 한다. 이러한 설비에 대해서는 이하에서 보다 상세히 설명된다.
각각 IONET 채널을 구비한 네트워크 컴퓨터 시스템의 정상적인 구성은 제5도에 예시되어 있다. 두개의 별도의 컴퓨터 시스템(100a),(100b)은 LAN(126)에 의해 공유되는 재원을 위해 접속된다. 각 컴퓨터 시스템(100a)(100b)는 각각 그것에 접속된 IONET 채널(140a)(140b)를 가지는데 그것에는 복수의 I/O 장치(176)이 부착된다. 특정 IONET 채널이 접속된 컴퓨터 시스템이외에 컴퓨터 시스템사의 재원을 액세스 하도록 어떤 특정 IONET 문자 채널에 부착된 어떤 I/O 장치(176)의 능력은 컴퓨터 시스템을 운용하는 오퍼레이팅 시스템 소프트웨어에서의 LAN 보조기능으로서, 시스템 소프트웨어가 그 기능을 보조하는 정도로 나타나게 될 것이다.
특별히 예시되지는 않았으나 제4도를 통해 이해할 수 있는 본 발명의 또다른 장점은 LAN 과 IONET 문자 채널 양자의 기능을 달성하기 위하여 단일 케이블(170)을 사용할 수 있는 가능성이다. 이러한 상황에서, 각 컴퓨터 시스템(100a),(100b)내의 소프트웨어는 LAN 인터-컴퓨터 프로토콜(inter-computerprotocol)과 IONET 프로토콜 양자를 보조한다. 따라서, 단일 케이블 시스템은 IONET 채널상의 LAN과 주변 I/O 작용에서 재원 공유 작용의 조합된 트래픽(traffic)을 취급할 수 있다. 이러한 구성은 동수의 부착된 I/O 장치로써 더 많은 전송 대역폭을 이용할 것이며, 케이블의 집중 대역폭이 이러한 조합된 부하를 취급하기에 충분한 경우에만 사용되어야 한다. 단일 케이블이 공유될때, 이것은 매우 경제적인 상호 접속 수단을 제공한다. 이러한 구성은 제5도에 예시된 별도의 LAN 및 IONET 채널 구성보다는 컴퓨터 시스템 외장을 떠나는 케이블이 훨씬 덜 필요하게 된다.
본 발명의 양호한 실시예는 본 발명의 양수인의 제품인 ARCNET로서 알려진 LAN에 사용된 하드웨어 부품 및 프로토콜과 관련하여 실현되었다. ARCNET는 그것의 양수인의 상표로서 미합중국 특허 상표국에 등록되었다. 그러나, 본 발명이 ARCNET LAN 기술로써 실현되는 것에는 아무런 제한도 없다.
본 발명은 토큰 패싱 LAN 기술로도 실현될 수 있다. 그러나, 본 발명은 ARCNET LAN 기술을 이용한 그것의 양호한 실시예와 관련하여 설명될 것이다.
ARCNET LAN 의 하드웨어 및 소프트웨어 컴포넌트는 상용화되어 있으며 또한 잘 알려져 있다. 본 발명의 양수인은 다른 것들 중에서 ARCNET 디자이너를 위한 핸드북(1983년 판)에서 그것의 ARCNET LAN 에 관한 광범위한 정보를 공개하였다.또한, 뉴욕 11788, 하우파그, 마르쿠스 부울바드 35 소재의 Standard Microsystems Corporation 은 ARCNET LAN 에 이용되는 중요한 집적회로중 두개를 제조하고 있으며, 아울러 본 분야의 숙련 기술자가 ARCNET LAN을 구성 및 사용할 수 있도록 하는 중요한 오퍼레이팅 정보를 제공한다. 이러한 기재는 1985년에 발간된 Standard Microsystems Corporation의 데이타 카다로그 193 내지 213 면에서 찾아볼 수 있다. ARCNET LAN 기술의 비교적 잘 알려진 특성에 비추어, 본 발명과 관련하여 이용된 ARCNET 특성은 간략하게 이하에 설명될 것이다.
ARCNET LAN은 토큰 패싱 시스템에 근거한다. 토큰 패싱 시스템에 있어서, 네트워크상의 각 Node는 논리적으로 인접한 상류 Node로부터 특유의 짧은 디지탈 비트 시퀀스 즉 토큰으로 알려진 신호의 도착을 기다린다. 토큰의 수신은 그 Node에서의 장치(Device)를 네트워크를 통해 정보를 전송 또는 송출하는 것이 가능하다는 것을 나타낸다. 네트워크는 단일 토큰만이 동시에 네트워크상에 나타날 수 있게끔 구성된다. 정보의 송출후, Node는 토큰을 다음의 논리적으로 계속되는 네트워크상의 Node로 송출하며 거기에서 그 정보의 송출후, Node가 송출할 것이 없을때 토큰을 수신한다면, 그것은 토큰을 즉시 통과시킨다. ARCNET LAN은 단지 능동 Node가 어떤 시간에 네트워크상에 나타나도록 배열된다. 따라서, 능동이 아니거나 단전된 Node들은 토큰이 수신 및 전송에 논리적으로 또는 전기적으로 참여되지 않는다.
ARCNET 네트워크는 토큰이 통과되는 Node의 어드레스를 동적으로 조정함으로써 네트워크를 절단하는 Node를 제거하고 네트워크를 합치는 Node를 수용하도록 그 자체를 재구성할 수 있다. Node의 능동 상태의 변화는 회선 레벨위의 네트워크 동작에 영향을 주지 않고 동작중에 있다.
ARCNET LAN에 사용된 표준 통신 매체는 RG-62 동축 케이블이다. 이 케이블은 제2도에서 (170)으로 표시된다. 다른 통신 매체는 광섬유, 자유공간 적외선 링크, 마이크로파 링크 및 차폐된 트위스트형의 케이블쌍을 구비할 수도 있다.
동축 케이블에 대한 접속 능력은 "허브"로 알려진 코넥터의 사용으로 간단하게 된다. 각 허브는 각 프로세서와 통신하기 위하여 재원 인터페이스 모듈 또는 RIMS로 알려진 매체 인터페이스 유니트가 부착되거나 혹은 다른 케이블 링크가 부착되는 복수의 포트를 포함한다. 허브는 케이블 부분들 사이에서 능동 또는 수동 리피터(repeater)로서 작용하며 단일 루우팅에서 어떤 기능을 갖지 않는다. 허브는 각각의 다른 포트를 통해 어떤 도래 신호를 나가는 신호로서 재전송하게 된다. 허브는 또한 ARCNET LAN에 관계된 공개 문헌에 기재되어 있으며 시장에서 구매가 가능하게 된다.
ARCNET LAN의 물리적 위상구조는 제약받지 않는 브랜칭 트리(unconstrained branching tree)이다. ARCNET LAN의 전지 접속성의 논리적 구성은 각 전송 Node가 LAN 상의 모든 다른 Node에 그것의 신호를 송신하는 버스의 논리적 구성이다.
ARCNET LAN에서의 케이블링은 케이블을 통해 신호가 교번적으로 양방향으로 흐른다는 것을 의미하는 양방향성이다. 매체 액세스 제어의 관점에서 ARCNET LAN은 산술적으로 하강하는 네트워크 RIM식별값에 근거한 논리적 링이다. LAN은 토큰이 능동 Node로 부터 RIM 식별 번호에 근거한 능동 Node로 통과되도록 논리링으로부터 비능동 Node를 제거하고 또 새로운 능동 Node를 논리링에 부가하도록 그 자체를 자동적으로 재구성한다.
토큰을 비능동인 Node로 전송하는데에는 시간이 허비된다. 토큰은 네트워크상의 Node의 물리적 위치에 관계없이 능동 Node로부터 능동 Node로 통과될 수 있다. 토큰은 원 Node로 복귀하기 전에 네트워크상의 모든 능동 Node 사이를 통과하며, 이에 의해서 링 형태의 패턴을 따르게 된다.
RIM은 본 발명과 통상의 ARCNET LAN 양자에서 통신 매체 또는 케이블(170)에 대한 물리적 인터페이스 수단으로 작용한다. 이러한 RIM(178)은 각 POU 어댑터(172)에 포함되고 각각 제6도 및 7도에 도시한 바와같은 상호 접속 매체 케이블(170)에 부착된 각 컴퓨터 시스템(100a)에 포함된다. 각 RIM(178)은 신호를 케이블(170)상으로 송신 또는 방송하는 송신기, 케이블(170)을 통해 신호 방송을 수신하는 수신기, 전송되고 케이블(170)을 통해 수신되는 메세지 또는 신호를 수신 및 홀드하기 위한 복수의 메세지 버퍼 및 제6도에 도시된 마이크로 컴퓨터(180) 또는 제7도에 도시된 중앙 처리장치(102)와 같은 RIM이 부착되는 프로세서 사이에서 버퍼를 공유하고 다른 기능을 수행하는데 필요한 중재 및 기타 로직을 구비한다. RIM은 상호 접속 케이블(170)을 통해 기준 대역 신호 전송(base band signaling)을 사용한다. RIM(178)은 상호 접속 케이블(170)에 결합된 트랜스포머로서, RIM의 전원이 OFF될때 네트워크 성능이 저하한다는 관점에서 네트워크 동작에 대한 최소한의 충격과 무충격으로 LAN이 동작되는 동안 그것의 전원이 ON 및 OFF 되게 한다. 각 RIM은 흔히 RIM ID로서 일컬어지는 물리적 어드레스가 할당된다. 이 어드레스는 토큰 패싱을 수행하는데 사용된다.
RIM(178)이외에, 각각의 POU 어댑터(172)는 제6도에 도시된 바와 같이 마이크로컴퓨터(180) 및 장치인터페이스(182)를 구비한다. 마이크로컴퓨터(180)는 필요한 데이타율을 취급하고 IONET 채널 통신 및 제어 프로토콜을 실현하기에 충분한 계산능력을 갖추고 있다. 종래의 클러스터 서버 또는 다른 다중 포트어댑터와는 대조적으로, 마이크로 컴퓨터(180)는 오퍼레이팅 시스템 기능, LAN 기능 또는 다른 멀티유저기능을 갖추고 있지 않다.
오버헤드에서의 실질적인 절약과 네트워크 대역폭의 증가가 이에 의해 얻어질 뿐만 아니라 고스트의 상당한 감소가 얻어진다.
마이크로컴퓨터(180)는 단일 집적회로 칩상에 간단한 중앙처리장치(CPU), 소량의 랜덤 액서스 메모리(RAM), 소량의 리드 온리 메모리(ROM) 및 여러 I/O 및 타이머 기능부를 구비한 마이크로 콘트롤러로서 더 잘 설명될 수 있다. 양호한 실시예에서 그것의 코스트 및 스페이스 효율성을 위해 선택된 Hitachi HD63 BOIYO 마이크로 컴퓨터를 사용한다. 이러한 마이크로 컴퓨터에 관한 더 많은 정보는 1985년 7월 발간된 Hitachi 마이크로 컴퓨터 데이타 북 358 내지 405면에서 찾아볼 수 있다.
POU 어댑터(172)의 장치 인터페이스(182)는 POU 어댑터(172)에 부착된 특정 형태의 I/O 장치(176)로 특정된다. 예를들어, 장치 인터페이스(182)는 터미날 및 모뎀을 부착하기 위한 RS-232 직렬 인터페이스, 저가격 프린터를 부착하기 위한 8비트 병렬 인터페이스, 다양한 종류의 개인용 컴퓨터를 부착하기 위한 인터페이스 또는 어떤 형태의 주변 장치를 부착하기 위한 8비트 범용 핸드쉐이크 인터페이스 일수도 있다.
사용점 어댑터(170)는 제2도에 예시된 어떤 특정 형태의 장치에 내장되거나, 그 장치에 물리적으로 인접된 위치에서 부착된 분리된 외장일 수도 있다. 이 모든 경우에 있어서, 상호 접속 케이블(170)에 POU 어댑터(172)에 직접 부착된다.
제7도는 컴퓨터 시스템(100a)를 IONET 채널의 케이블(170)에 접속한 것을 예시한다. 컴퓨터 시스템의 중앙처리장치(102)는 RIM(178)에 접속되고, RIM은 노드(174)에서 케이블(170)에 접속된다. 제6도와 제7도를 비교함으로써, 중앙처리장치 또는 컴퓨터 시스템이 I/O 장치와 직접 인터페이스 되지 않는다는 점을 제외하고는 중앙처리장치(102)의 IONET 기능이 마이크로 컴퓨터(180)의 기능과 전적으로 동일하다는 것을 쉽게 이해할 수 있다. 따라서, 중앙처리장치(102)는 종래의 기술에서 통상적인 것처럼 채널 제어기 및 다중포트 어댑터로/로부터의 통신을 달성하는데 필요한 별도의 프로토콜의 사용을 필요로 하지 않고 간단히 IONET 프로토콜을 보조하고 케이블(170)위의 RIM을 통해 직접 전송한다.
RIM 은 단지 완전한 POU 어댑터가 아닌 케이블에 컴퓨터 시스템을 인터페이스시키는데 필요하다. 단일 컴퓨터 시스템(100)(제3도)로부터 하나 이상의 IONET 채널이 사용된다면 하나이상의 RIM(178)이 필요하게 된다.
제8도는 대표적인 POU 어댑터(172a)를 보다 상세히 도시한 것이다. 어댑터(172a)는 직렬 데이타를 통상의 I/O 장치에 공급하고 또 RS232 포멧으로 그것으로부터 직렬 데이타를 수신한다. RIM(178)은 상호 접속 통신 매체 또는 케이블(170)에 전기적으로 접속된 하이브리드 회로(190)를 구비한다. 하이브리드 회로(190)는 상용화된 제품으로서 위스콘신 53201, 밀워키, 우편함 2145, 사우스 무어랜드 로드 2601에 소재한 Centralab Inc., 위스콘신 53051, 메노모니폴스, 카울 애비뉴 W141N5984에 소재한 Micro Technology Inc. 또는 일리노이 60025, 클렌비유, 밀워키 애비뉴 100에 소재한 Zenith CRT and Component Operations를 통해 구입할 수 있다. 그 하이브리드 회로는 트랜스포머 결합을 포함한다. 클럭 발진기(192)는 클럭신호를 트랜시버(194)에 공급한다. POU 어댑터(172a)내에서 신호를 제어하는 것 이외에, 클럭(192)은 또한 게이블(170)에 나타나는 데이타 비트에 대하여 동기화를 달성한다. 트랜시버(194)는 COM 9032라는 명칭으로 Standard Microsystems Co. 에 의해 상용화된 항목이다. 트랜시버(194)는 하이브리드 회로에 신호를 공급하는 송신기 및 하이브리드 회로로부터 신호를 수신하는 수신기를 포함한다. 트랜시버(194)는 또한 클럭신호를 제어기(196)에 공급함과 동시에 도선(198)을 통해 마이크로컴퓨터(180)에 공급한다.
제어기(196)는 RIM(178)의 심장부이다. 제어기(196)에 특유의 RIM 식별번호(RIM ID)를 설정하기 위한 일련의 스위치(200)가 접속된다. RIM ID는 RIM(178)이 부착된 네트워크상의 Node와 동질의 것이다. 제어기(196)는 마이크로프로그램된 시퀀서와 네트워크에 대한 토큰 패싱을 제어하고 또 적당한 시간에 데이타 패킷을 송수신하는데 필요한 모든 로직을 포함한다.
제어기(196)는 또한 네트워크 구성을 완성하고 새로운 Node 가 네트워크에 부가되거나 그것으로부터 제외됨에 따라 네트워크를 자동적으로 재구성한다. 제어기(196)는 또한 어드레스 디코딩 기능 패킷 발생 및 수신과 패킷인지시의 순환적인 용장성 검사(CRC : cyclic redundency checking)뿐만 아니라 기타 네트 워크 기능을 수행한다. 제어기(196)는 COM 9026이란 명칭으로 Standard Microsystems Co. 에 의해 상용화된 아이템이다.
표준 멀티플렉스 방식의 어드레스/데이타 버스(202)는 제어기(196)으로부터 연장되며, 데이타 및 어드레스 통신 인터페이스가 완성되도록 하는 수단이다. 단방향성 어드레스 드라이버(204)와 양방향성 데이타 트랜시커(206)는 또한 마이크로컴퓨터(100)가 이 버스를 액세스할 수 있게 하기 위하여 버스(202)에 접속될 수도 있다.
외부 패킷버퍼, 랜덤 액세스 메모리(208)는 또한 버스(202)에 접속된다. 본 발명의 목적상, RAM(208)은 8까지의 완전한 IONET 패킷을 홀드하기에 충분한 최소한 2048개의 8비트 기억 장소를 포함하여야 한다. RAM(208)은 제어기(196)와 마이크로컴퓨터(180) 양자에 의해 액세스될 수 있다. 버퍼 포인터(20)는 패킷의 전송, 수신 및 마이크로컴퓨터에 의한 패킷의 처리를 위해 8패킷 기억 영역중 어느것이 사용될 것인지 식별하기 위하여 마련된다. 제어기(196)는 그 자체와 마이크로컴퓨터(180)사이에서 RAM(208) 버퍼의 액세스에 대한 중재를 가능케 하는데 필요한 모든 신호를 공급한다. RAM(208)은 통상의 디지탈적 메모리이다.
마이크로컴퓨터(180)는 제어 및 바이트 열 데이타 통신 목적상 IONET 프로토콜에 포함된 제어 정보에 응답하는데 필요한 메모리 및 처리 능력을 갖추고 있다. 마이크로 컴퓨터(180)는 송신기 상태 머신 및 수신기 상태 머신을 실현하도록 제어기(196)와 트랜시버(194)와 관련하여 기능한다. 송신기 상태 머신은 RIM(178)로부터 케이블(178)로의 신호 전송을 제어한다. 수신기 상태 머신은 케이블(170)로부터 RIM(178)로의 신호 수신을 제어한다. 송신된 신호로 인코드되고 수신된 신호로부터 디코드된 정보는 패킷 버퍼 RAM(208)의 지정된 영역에 기억된다.
마이크로 컴퓨터(180)는 병렬 I/O 포트(212) 및 직렬 I/O 포트(214)를 구비한다. 직렬 I/O 포트(214)는 제8도에 도신된 RS-223POU 어댑터(172a)의 경우에 I/O 장치(176)와 통신하도록 라인 드라이버 및 수신기(216)에 접속된다. 다른 형태의 장치 인터페이스를 위해서는 병렬 포트(212)가 사용될 수도 있다.
본 발명의 IONET 채널내의 컴포넌트의 일반적 구성을 설명해 왔는바, 아래에 기재된 정의가 더 잘 이해될 수 있을 것이다.
이 정의들은 본 발명의 보다 특별한 특징과 관계된다.
"서버(server)"는 그것의 부어드레스와 세션 시작시 동적으로 할당될 수 있는 그것의 내부적 기능 엔티티들간의 결합으로 다중 IONET 세션을 동시에 보조하는 프로세서이다.
"클라이언트(client)"는 그것의 부어드레스와 그것의 내부적 기능 엔티티간의 고정 결합으로 하나 또는 그 이상의 IONET 세션을 보조하는 POU 어댑터(또는 컴퓨터)이다.
"장치(Device)"는 IONET 세션의 풀-듀플렉스(full-duplex)방식의 통신 경로의 일단부에서 엔티티이다. 여기에서 "클라이언트"와 "서버"란 용어는 전형적 사용 패턴에 관계된 기재 용어로서 사용된다. 본 발명을 사용하는 통신은 클라이언트와 클라이언트, 서버와 서버, 또는 클라이언트와 서버 이들간에 수쌍의 "장치2"에 의해 완성될 수 있다.
"장치"는 그 장치와 관련된 프로세서 또는 POU 어댑터의 RIM ID인 어드레스와, 복수의 장치를 동시에 접속할 수도 있는 각 프로세서 또는 POU 어댑터에서의 각 패킷에 대하여 소스 및 행선 장치를 구별하기 위한 수단인 부어드레스에 의해 식별된다. "Node"는 RIM을 가진 IONET 채널에 부착된 모든것을 일컫는다. "세션(session)"은 한쌍의 장치 사이에 형성된 점 대 점 풀듀블렉스 가상 회로(point to point full duplex virtual circuit)이다.
세션은 두개의 하프 "세션(half session)"으로 구성된다. 하프세션은 한 Node에 있는 송신기와 다른 Node에 있는 대응하는 세션 파트너의 수신기 사이의 통신 회선이다. 완성된 모든 완전한 세션에 대하여 두개의 하프 세션이 있는바, 각 방향에 하나가 있다.
케이블(170)을 통과한 신호는 네트워크를 통하는 통신을 제어한다. 이 신호들은 IONET 채널을 통한 통신 및 제어용의 IONET 프로토콜을 형성한다. IONET 프로토콜은 ARCNET 국부 지역 네트워크 하드웨어의 특성을 이용하지만, IONET 프로토콜은 특별한 ARCNET는 아니다. IONET 프로토콜은 토큰 방식 네트워크와 비견할만한 효율과 동일한 기능으로 동작할 수 있지만, 토큰 패싱 이외의 중재 기술이 이용되는 경우 감소된 효율로 동작할 수도 있다.
네트워트에 대한 인터페이스의 양호한 실시예는 ARCNET NET와 같은 이용되었던 LAN 매체의 인터페이스 시키고 또 IONET 프로토콜을 보조할 필요성으로만 제약 받는다. IONET 프로토콜은 특정 장치 또는 어떤 특징 오퍼레이팅 시스템과 무관하게 그리고 여러 컴퓨터 시스템상의 I/O 채널의 특성과는 무관하게 동작한다.
IONET 프로토콜은 이하에서 설명될 국제표준기구(ISO)의 오픈 시스템 인터페이스(OSI)방식 통신용 모델로 된 네트워크, 이송, 세션층에 존재하는 완전한 피어 투 피어 프로토콜(peer to peer protocol)이다. 한쌍의 장치 사이에 세션의 설정, 관리 또는 사용에 있어서 통신중인 엔티티간에 마스터-슬레이브 관계가 없다. 이것은 호스트 프로세서에서 채널 제어기가 채널을 통한 모든 통신의 마스터 및 기본 제어기인 곳에서 모든 I/O 채널의 특성과는 대조적이다. IONET 프로토콜에서 이들 장치의 특별한 능력에 의해서 제한될 수 있는 것 이외에 어떤 장치들간의 바이트 열 통신 또는 제어 기능의 레벨에서의 기능적 차이는 없다.
제9도에 도시된 OSI 모델은 네트워크를 포함한 통신 시스템을 설명하는데 유용하다. 논리적으로 어떤 층의 기능을 다른 방식으로 실현된 등가적인 기능으로 대치시키는 것이 가능하며 모든 다른층은 영향받지 않고 유지되며 시스템에서 적절히 동작할 것이다. 케이블(170)과 같은 통신 매체를 통한 하나의 I/O 장치(176a)와 또다른 I/O 장치(175b)사이의 통신은 7개의 층 또는 레벨을 기초로 설명되며, 그것의 각각의 어떤 기능 레벨을 통신 프로토콜내에 포함한다. 최저 레벨은 물리적 층(220)이다.
물리적 층(220)은 통신 매체(170)에 대한 물리적 접속 및 전기 시스템내에 전압 레벨, 광섬유 시스템에서의 광학 변조, 마이크로파 시스템내의 무선 주파수 변조와 같은 물리적 신호 전송을 포함한다. 전기적 시스템에서 물리적 층은 통신 매체상에 존재하는 비트열로 나타난다.
다음의 윗층은 때때로 데이타 링크층으로 불리우는 링크층(222)이다. 데이타 링크층(222)은 네트워크상의 Node 사이의 원 데이타의 물리적 전달이 완성된 층이다. 링크 정보, 동기화 정보, 에러 정정 정보, 블록사이즈, 프레이밍(framing)등을 포함하는 물리적 신호전송 프로토콜은 이 레벨에서 전도된다.
대부분 네트워크에서, 링크 레벨(222)은 기본적 통신 에러가 검출될 수 있고 정정되거나 재전송 요구될 수 있는 레벨이다. 네트워크상에서의 한쌍의 Node 사이의 통신은 데이타 링크층의 호환성 구성에 좌우된다. 개략적으로 말하여, 링크층은 데이타 링크를 설정, 관리 및 해제하며 에러 검출 및 물리적 흐름 제어에 사용된다.
제3의 층은 네트워크 층(224)이다. 네트워크층(224)은 어드레싱, 네트워크 초기설정, 에러 검출 및 복구를 포함한 네트워크를 통한 정보의 루우팅 및 정보의 스위칭, 세그멘팅, 블로킹에 관계된다. 때때로 원 전달데이타의 인지는 네트워크 레벨에서 달성되고, 때때로 링크 레벨에서 달성된다.
외부층에서의 OSI 모델에서 직접 어드레스 되지 않았던 통신 특징은 물리적층에서 전송할 권리의 논리적 중재를 완성하는 수단을 일컫는다. OSI는 정상적으로 링크층(222)상에 이러한 중재를 두지만, 때때로는 어디에나 위치하게 된다.
본 발명의 개시 목적상, 매체 액세스 제어는 링크 기능이 되도록 간주된다.
다음의 위 레벨은 이송층(226)이다. 이송층은 이송 데이타 전송, 엔드 투 엔드 제어, 멀티플렉싱, 맵핑등에 관계된다.
데이타 전달은 이송 레벨이하의 층에 대하여 설명되어야 하는 데이타를 전달하도록 하는 최선의 노력에 반하여 신뢰성 있는 전달을 의미한다. 이송 레벨에서, 테이타는 신뢰성 있는 방식으로 통신되었고, 유실 데이타, 순서를 벗어나 전달된 데이타의 재순서와, 전송 에러로부터의 복구등과 같은 일은 이송층에서 또는 그 이하에서 정정되었다고 가정한다. 실제로, 이송 레벨(226)과 그 상위 레벨에서의 데이타 입력 및 출력은 네트워크에 대하여 적당히 포맷화된 원 데이타에 반하는 컴퓨터 시스템에 의미있는 데이타이다.
제4의 레벨은 세션 레벨(228)이다. 이 세션 레벨(228)은 세션으로 일컬어진 주어진 작용과 관련된 바와 같이 이송 레벨로부터 데이타 그룹으로의 정보 전송을 이용한다. 세션은 네트워크상의 여러 위치에 있는 두개의 엔티티 사이에서 발생한다. 주어진 시간에서, 네트워크상의 단일 Node는 복수의 다른 Node로 가는 다중 세션에 포함되며, 다수의 세션이 동일 네트워크를 통해 멀티플렉스 된다. 그러나, 세션층 서비스는 다른 작용으로부터의 데이타에 의한 방해없이 주어진 논리적 작용과 관련된 데이타의 엔드 부 엔드 전달을 제공한다.
제6의 레벨은 표시층(230)이다. 표시층(230)은 세션층(228)과 제7레벨인 응용 레벨(232)사이의 인터페이스에 관계된다. 응용 레벨(232)은 실제의 데이타가 통신의 각 단부에서 I/O 장치(176a, 176)에 인가되거나 그것으로부터 수신된다. 표시 레벨(230)은 세션층(228)의 네트워크 관련 신뢰도를 조정할 필요없이 응용레벨(232)에 사용하기에 적당한 허용가능한 형태로 데이타를 표시하는 것이다. 따라서 표시층(230)은 데이타 해석, 포멧 및 코드 변환에 관계되는 반면, 응용층은 사용자 응용 처리와 관리 기능에 관계된다.
아래에서 설명될 LAN 및 IONET 채널기능을 위한 작용은 세션층과 그 이하에서 존재한다. 표시층과 응용층과 대한 더이상의 설명은 이들 층이 엄격한 시스템, 물리적 장치 및/또는 유저 응용이라는 사실 때문에 하지 않는다.
IONET 데이타 패킷(240)의 바이트 구성은 제10도에 예시되고, 제11도에서 이 IONET 패킷은 제9도에 예시된 OSI 모델에 대응하는 계층적 레벨로 나누어진다. 패킷의 시작을 식별하도록 제어기(196)(제8도)에 의해 RIM 에서 발생된 경보 버스트(alert burst)(242)는 제10도에 도시된 IONET 패킷에 포함되지 않았다. 경보 버스트(242)는 6개의 순서적 "1"비트로 구성되고, 제11도에 도시된 바와같은 물리적 레벨에서 발생한다. 물리적 레벨 패킷(244)에서 정보의 나머지 부분은 링크 레벨 정보(245)를 포함하는 8비트 바이트 세트이다.
링크 레벨 패킷(245)에서, RIM은 ARCNET 데이타 패킷의 시작을 표시하는 문자인 스타트 오브 헤딩(SOH : start of heading) 바이트를 전송한다. SOH 바이트(246) 후, RIM은 패킷을 송출하고 있는 Node의 RIM ID를 나타내는 소스 식별(SID) 바이트를 전송한다. 다음의 두개의 후속 바이트는 행선 식별(DID) 바이트(250)의 반복이다. DID 바이트(250)는 이 패킷의 어드레스 되거나 목표로 하는 Node의 RIM ID를 나타낸다. DID 바이트 ARCNET LAN 에서 에러 제어 및 신뢰도를 위해 두번 나타난다.
다음의 후속 바이트(252)는 패킷 길이(네트워크 레벨 바이트의 수)를 식별하도록 인코드되며, 일반적으로 ARCNET 용어로 연속 포인터(CP)로서 일컬어진다. 패킷의 두개의 엔딩 바이트는 16비트의 순환적 용장성 검사(CRC)(254)이다. CRC 바이트(254)는 전송 에러를 검출하기 위하여 RIM에 의해 이용된다.
링크 레벨 패킷(245)의 시작부에서의 SOH(246)과 끝부분에서의 CRC(254)는 정상적으로 네트워크 인터페이스 하드웨어(예 : ARCNET 제어기(196))에 의해 발생되고 검사되기 때문에 ARCNET 패킷의 부분으로 간주되지 않고 결코 RIM의 패킷 버퍼(RAM(208), 제8도)에 나타나지 않는다. 링크 레벨 패킷(245) 헤더의 나머지 바이트는 네트워크 하드웨어가 패킷 버퍼의 값에 관계없이 나가는 패킷상에 SID(248)를 공급하지만, 패킷 버퍼에 나타난다. 각 수신기에 대한 DID는 한상 RIM ID와 동일하거나 방송 패킷(모든 Node에 의해 수신됨)에 대하여 제로가 될 것이다. 또한, 두개의 DID(250) 중 하나만이 RIM의 패킷 버퍼에 기억되므로, 단지 하나의 DID(250)는 IONET 패킷(240)의 ARCNET 헤더 부분(258)의 부분이다. 제10도에 도시된 IONET 패킷(240)은 예시 목적상 이러한 내용을 따른다.
정상적으로, 전형적인 ARCNET 패킷은 그 길이가 256바이트 또는 그 이하이다. 그러나, 512개까지의 데이타 바이트의 긴 데이타 패킷 길이로 ARCNET 채널을 통해 통신하는 것이 가능하다. 긴 데이타 패킷 모드에서, CP(252)는 링크 레벨 헤더를 6바이트로 만드는 2바이트 길이이다.
CP(252)를 따르고 CRC(254)에 선행하는 네트워크 레벨정보(257)는 컴퓨터 시스템 또는 POU 어댑터의 저 레벨 소프트웨어 또는 퍼엄웨어내에서 제어기(196)(제8도)로부터 네트워크 레벨 해석까지 통과되는 정보이다.
네트워크 레벨 패킷(257)은 시스템 코드(SC) 바이트(256)과 시작하는 7바이트 헤더로써 시작된다. 시스템 코드는 동시에 사용될 수도 있는 다른 형태의 통신 프로토콜을 식별 및 구분하는데 사용된다.
ARCNET 헤어(258)내의 SC(256)의 IONET 패킷에 특유한 코드를 통해 IONET 패킷을 식별할때, 다음의 10 바이트(260)는 IONET 헤더를 구성한다. IONET 헤더(260)는 네트워크 레벨 및 이송 레벨 정보를 제공하며 나머지 데이타 영역(262)이 관리 정보(264)와 바이트 열 정보(266) 사이에서 어떻게 나누어질 것인가 나타낸다.
데이타 영역(262)을 관리 부분(264)와 바이트 열 부분(266)으로 나누는 것은 I/O 장치로/로부터 정보를 통신하는데 사용되는 바이트 열 정보(266)로부터 I/O 장치 및 POU 어댑터를 제어하거나 I/O 장치 또는 POU 어댑터의 상태를 보고하는데 사용되는 관리 정보의 명확한 분리를 제공함으로써 소위 아웃 오브 밴드 신호 전송(out-of-bands signalling)을 가능케 한다. 관리 정보(264)는 IONET 제어 성분에 의해 공급되거나 검사되거나 수정되지만, 바이트 열 정보(266)는 항상 투과 방식으로 취급되므로 전송시에 그것을 구성했던 소스값으로부터 수정되지 않은 행선 I/O 장치로 전달된다.
IONET 헤더(260)의 처음 6바이트는 네트워크 패킷(257)의 일부분이다. 이 바이트들은 순서대로 송신기 상태 바이트(TXSB)(268), 수신기 상태 바이트(RXSB)(270), 2바이트 소스 부어드레스(SSA)(272) 및 2바이트 행선 부어드레스(DSA)(274)이다. IONET 헤더(260)의 나머지 4바이트는 이송 레벨 패킷(276)내에 포함된다. 이송 레벨 패킷(276)의 첫 바이트는 패킷 기능(PFN)(278)을 나타내는 바이트이다. 다음의 후속 바이트(280)는 현재 사용되지 않으나 장래의 확장을 위해 보존된다. 제3바이트는 관리 길이 값(ADL 또는 ADLNG)(282)이다. ADL 바이트의 기능은 데이타 영역(262)의 관리 정보(264)의 길이를 식별하는 것이다. 마지막 바이트(284)는 바이트 열길이 값(BSL 또는 BSLNG)(284)이다. BSL 바이트(284)는 데이타 영역(262)의 바이트 열 정보(266)의 길이를 식별한다.
ADL(282) 및 BSL(284) 바이트는 관리 정보(264)와 바이트 열 정보(266)의 조합된 길이가 네트워크 레벨 패킷(257)의 전체 길이보다 작기 때문에 둘다 이용된다. 이러한 경우에 데이타 영역(262)을 위해 정의된 것 너머의 네트워크 레벨 패킷(257)의 나머지 바이트들은 사용되지 않는다. 데이타 영역(262)의 길이는 짧은 패킷 모드에서 242까지의 바이트이거나 긴 패킷 모드에서 497까지의 바이트이다. 긴 패킷 모드가 이용될 때, CP(252)는 길이가 2바이트 확장되고 ARCNET 헤더(258) 및 IONET 헤더(260) 양자는 제10도에 예시된 것 이외에 하나의 추가 바이트 확장된다.
ARCNET 헤더(258) 및 IONET 헤더(260)의 상세는 제12도에 도시된 도표로 예시되는데, 그것은 각 헤더내의 각 란의 명칭, 각 란의 우측상의 최하위 비트로부터 각 란의 좌측상의 최상위 비트까지의 레이아웃을 예시하고 각 란의 사용을 요약한 것이다.
각각의 유입 패킷의 ARCNET 헤더(258)내의 소스 식별부(SID)(248)은 세션이 진행중인 경우 언제든지 각 수신 Node에서 RIM에 의해 검사된다. 능동 세션 파트너에 의해 송출된 모든 패킷은 해석과 처리를 위핸 받아들여진다. 어떤 레벨 제어 기능부를 포함하는 것을 제외하고는 다른 Node에서 RIM으로부터 수신된 모든 패킷은 제외되고 RIM 수신기는 즉시 재차 인에이블 된다.
세션이 진행중이 아닐 경우, 모든 유입 패킷은 해석되지만 세션 및 보고를 설정하거나 파라미터 또는 통계치를 세팅하는 것과 관계된 어떤 네트워크 및 이송 레벨 제어 기능부를 포함하는 것만이 처리를 위해 받아들여진다.
ARCNET(258)의 행선 식별부(DID)(250)는 노드의 RIM ID 와 동일하거나 방송 메세지에 대하여 제로이다. IONET 채널상에서 사용된 RIM은 항상 방송을 수락하도록 사용된다. 아래에서 설명될 로케이트 지령은 장치에서 의한 방송으로 받아들여진다. IONET 시스템 코드(SC)를 갖는다 하더라도 수신된 어떤 다른 방송은 장치에 의해 제외된다.
ARCNET(258)의 연속 포인터(CP)(252)는 IONET 패킷의 길이를 결정하는데 사용된다. CP는 짧은 패킷 모드동안 1바이트 길이이고 (259)로부터 추출된 패킷 길이를 포함한다. CP는 긴 패킷 모드동안 2바이트 길이이며, 제1바이트는 제로로 세트되고 제2바이트는 (516)으로부터 추출된 패킷 길이로 세트된다.
ARCNET 헤더(258)의 시스템 코드(SC)(256)는 IONET 프로토콜을 식별하기 위한 어떤 특별한 코딩일 수 있으며 그 코딩의 한예는 제12도에 도시된다. 다른 시스템 코드들(진단 시스템 코드 제외)을 가진 유입 패킷은 모든 클라이언트에 의해 제외되고 모든 서버에 의해 다른 프로토콜 코드로 취급된다.
IONET에서(260)는 네트워크의 통신 매체를 통해 바이트 열 통신을 제어하고 패킷 정보를 정확한 논리 I/O장치로 향하게 하며 패킷의 데이타 영역(제10도)의 내용을 결정하도록 모든 송신기 및 수신기 상태 머신에 의해 사용된다.
IONET 헤더(260)의 송신기 상태 바이트(TXSB)(268)은 IONET 패킷의 전체 용도와 패킷을 송출한 송신기 상태 머신의 상태에 관한 정보를 포함한다. 제12도에 도시한 바와같이, TXSB 바이트의 즉시간(Imm.)은 즉시 우선순위 패킷(Imm.=1)과 정상 우선순위 패킷(Imm.=0)사이를 구별하도록 인코드된다.
긴급 전달용 패킷은 즉시 패킷으로 일컬어진다. 나가는 즉시 패킷은 계류중인 정상 우선순위 패킷에 앞서 전송되고 유입되는 즉시 패킷은 수신 버퍼에서 기다리는 어떤 정상 우선순위 패킷에 앞서, 그리고 즉시 패킷이 도착했을때 진행중인 정상 우선순위 패킷의 나머지에 앞서 그들이 수신되자마자 처리된다.
TXSB의 동작란은 IONET 패킷으로 만들어질 이송 레벨 용도용 코드를 포함한다. 이송 레벨은 다음과 같이 동작란에서 인코드될수 있는 것을 사용한다. 즉, NOP는 생생한 메세지를 유지하기 위해 사용되고, IDLE은 송신기 대기(TW)상태를 나타내고, DATAF는 PFN(278)란이 데이타 용역의 용도를 제어하는 전송 그룹에서 최종 패킷에 대한 송신기 능동(TA)또는 즉시 송신기 능동(ITA)상태를 나타내며, DATAI는 PFN(278)란이 데이타 영역의 용도를 제어하는 전송 그룹에서 초기 또는 중간 패킷에 대한 TA 상태를 나타내며, CONTROL COMMAND는 TXSB 바이트의 기능란에서 추가로 인코드되고, CONTROL REPLY는 TXSB 바이트의 기능란에서 추가로 인코드된다.
TXSB 바이트(268)의 순서번호 또는 기능란은 동작란이 CONTROL COMMAND 및 CONTROL REPLY 기능을 제외한 모든 기능으로서 인코드될때 전송되고 있는 패킷의 순서 및 번호를 포함한다. 동작란이 CONTROL COMMAND 또는 CONTROL REPLY로서 인코드될때, 제어기능은 다음의 도표에 도시된 바와 같이 TXSB의 기능란에서 인코드된다.
[표 1]
Figure kpo00001
* 이 지령은 구성 로크가 세트되지 않을때에만 받아들여진다.
* 이 지령은 구성 로크가 세트되지 않을때에만 세션 파트너 이외의 것으로부터 받아들여진다.
상기 도표를 참조하면, CONTROL COMMAND 는 TXSB 값이 도표사의 "E"또는 "6"으로 시작할때 TXSB(268)의 동작란에 존재한다. 특정 CONTROL COMMAND에 의해 달성된 기능은 "제어기능"열에 표시된다. TXSB의 동작란에서 인코드된 데이타 기능은 "4","5"또는 "C"로 시작하는 TXSB 값으로 표시된다. 이 다섯가지 기능, 즉 최종 데이타 전송(DATAF), 초기/중간 데이타 전송(DATAI), 플러시 버퍼, 운용 확장 진단 및 보고 상태는 TXSB 이외에 PFN 바이트(278)의 형태 코드란으로 인코드 된다. "LNG"란은 제어기능의 각 형태를 위해 필요하거나 허용되는 길이를 보여준다. "리시브드 바이(Received By: RCVD BY)란은 IONET 패킷의 각 형태를 수신할 수 있는 장치의 분류, 즉 클라이언트(C),서버(S) 또는 그 양자(A)를 나타낸다.
"세션"열은 지령이 "E"로 표시된 인 세션(in session)과 아웃 오브 센서(out of session) 양자에서 받아들여지는가, 지령이 "0"로 표시된 아웃 오브 세션에서만 받아들여지는가 혹은 지령이 "I"로 표시된 인 세션(in session)에서만 받아들여지는가를 나타낸다. "모드"열은 패킷이 "I"로 표시된 즉시 패킷으로 송출되어야 하는가, 패킷이 "N"으로 표시된 정상 우선순위 패킷으로 송출되어야 하는가, 혹은 "E"로 표시된 정상 또는 즉시 모드에서 송출되어야 하는가를 나타낸다.
거의 모든 제어기능의 경우에, 응답 패킷은 수신자 장치에 의해 발생되어 원 제어 지령을 송출하는 장치로 다시 송출된다. "응답"밑의 TXSB,PFN,LNG는 여러 CONTROL COMMAND에 응답하여 송출된 CONTROL REPLY 기능에 대한 제어 인코딩과 길이를 제공한다.
IONET 헤더의 수신기상태 바이트 RXSB(270)는 패킷을 전송했던 장치에서 수신기상태 머신의 상태에 관한 정보를 포함한다. 그 순위 비트 또는 즉시 란은 즉시 패킷 및 정상 패킷의 인지 사이를 구별하도록 세트된다. 인지란(ACK)은 그 인지를 NOP, 수신기 대기(RW)를 나타내는 BUSY, 즉시 수신기 대기(IRW)상태, 수신기 능동(RA) 또는 즉시 수신 능동(IRA)상태를 나타내는 READY와같은 코드들을 송출함으로써 장치에 의해 수신된 마지막 패킷으로 인코드한다. 오류란은 클라이언트 하드웨어 또는 퍼엠웨어에 국부적인 검출 가능한 내부 오류상태가 발생한 경우 클라이언트에서 세트=1이 되며, 그렇지 않은 경우에는 제로로 세트된다. 서버는 항상 오류란을 제조로 세트한다. 순서번호란은 인지중의 패킷의 순서번호를 포함한다.
IONET 헤더의 소스 부어드레스(SIA)(272)는 패킷이 송출된 Node에서 특정 소스 장치를 식별한다. 행선 부어드레스(DSA)(274)는 이 패킷을 수신중인 Node에서 특정 행선 장치를 식별한다.
패킷기능 PFN(278)은 TXSB가 이것이 "DATAI"또는 "DATAF" 의 동작 코드에 의한 데이타 패킷이라는 것을 나타내는 경우에 IONET 패킷의 데이타 영역(262)(제10도)의 용도를 정의한다.
PFN(278)의 형태 코드란은 데이타 영역이 I/O장치에 의한 사용을 위해 바이트열 및 관리 데이타를 포함하는 데이타 전송, 클라이언트 퍼엄웨어에 의한사용을 위해 제저정보를 포함하는 클라이언트 제어지령, 또는 데이타 영역이 응답 요구에 답하여 송출된 제어정보를 포함하는 클라이언트 제어 응답을 나타내도록 패킷의 일반적 용도를 인코드한다.
PFN(278)의 ALS 및 ADL 로 지정된 비트들은 이하에서 기술된 ADLNG(282) 및 BSLNG(284)바이트에서의 길이값의 최상위 비트를 홀드하는데 사용된다.
PFN(278)의 기능 코드란은 항상 데이타전송 기능에 대하여 제로로 세트된다. 클라이언트 제어지령 및 클라이언트 제어 응답의 경우 클라이언트 기능은 상기 도표에 기재된 플러시버퍼, 운용확장진단, 보고상태 기능을 나타내도록 인코드된다.
어드레스 길이(ADLNG)(282) 및 바이트 열길이(BSLNG)(284)바이트들은 데이타 영역 디스크립터를 형성한다 데이타 영역 디스크립터는 IONET 패킷의 데이타 영역(262)(제10도)의 용도를 정의한다. ADLNG란 내의 값은 관리정보(264)(제10도)의 길이를 특정한다. 관리정보 길이가 제로가 아닌경우, 관리 데이타는 데이타 영역 디스크립터(282),(284)후에 즉시 시작하여 특정수의 바이트로서 확장한다. PFN 바이트(278)의 비트 4는 긴 패킷 모드로써 사용하기 위해 255보다 더 큰 ADLNG 값을 허용하도록 ADLNG 282바이트의 최상위 비트로서 작용한다.
BSLNG 란(284)에서 인코드된 수는 데이타 영역(262)의 바이트 열 정보부분(266)(제10도)의 길이를 특정한다.
BSLNG 바이트에서 값이 제로가 아닌경우, 바이트 열 영역은 관리 영역을 따르는 바이트에서 시작하거나, ADLNG 란(282)이 제로가 아닌경우 데이타 영역 디스크립터(282)(284)를 따르게 된다. PFN 바이트(278)의 비트5는 긴 패킷 모드로써 사용하기 위해 255보다 큰 BSLNG 값을 허용하도록 BSLNG 란(284)에서 특정된 길이값의 최상위 비트로써 작용한다.
IONET 채널을 통해 송출된 가장 흔한 패킷은 행성 I/O 장치에 의한 사용을 위해 바이트 열 데이타를 전송하는 패킷이다.
제어기능 패킷은 그것의 내용이 IONET 서버 또는 IONET 클라이언트의 보조 소프트웨어 또는 퍼엄웨이내에서 해석되는 것들로서, I/O 장치에 의해 알 수 없다. IONET 제어기능 패킷은 상기 도표에서 식별되는 것들로서, 제12도와 관련하여 설명될 바와 같이 TXSB(268)에서 식별된다.
"TONET"제어기능 지령 및 응답들은 몇몇 레벨에서 이용 가능하다. 네트워크 레벨 제어기능들은 IONET 제어시 Node 들과 관계하고 세션 활성화에 의존한다. 이송 레벨 제어 기능들은 세션을 설정하고, 제어하고 그리고 끝내는데 사용된다. 세션 레벨 제어 기능들은 I/O 장치에 대한 인터페이스를 제어하는데 사용되고 전술한 예외는 제외하고 세션이 진행될 때만 이용 가능하다. 세션 레벨 바이트 열 기능들은 데이타 제어 및 상태 정보를 부착된 I/O 장치들로 전송하거나 I/O 장치들로부터 수신한다.
제어 지령 메세지들은 항상 쇼트 IONET 패킷을 사용하여 전송된다. 모든 CONTROL COMMAND는 수신내용을 CONTROL REPLY 패킷으로 다시 송신하는 것을 요구된다. 따라서 제어기능들은 두 통신 장치들의 송신기상태 머신들간의 특수한 핸드쉐이크를 포함한다. 이 핸드쉐이크는 수신기상태 머신을 포함하지 않는다. CONTROL COMMAND 및 CONTROL REPLY 에 적용 가능한 일반적인 내용은 다음과 같다.
CONTROL COMMAND 에 대한 포지티브 수령은 송신 패킷 카운트와 무관하게 항상 CONTROL REPLY 패킷 형태를 요구한다.
상기 대응 CONTROL REPLY 가 수신될때까지 송신(재시도된 송신이 아님)은 더이상 수행되지 않는다. 순서넘버링은 이제 요구되지도 않고 제어기능 패킷에 사용될 수도 없다.
제어기능 수신은 종료 코드 바이트로 인코드되어, 모든 CONTROL REPLY 패킷에서 관리 데이타인 제1바이트로서 나타나게 된다. 제어 응답을 수신하는 각 IONET 패킷(240)의 데이타 영역(262)의 관리 영역(264)에서 인코드된 예시적인 종료 코드 형태로는 제어기능에 대한 성공적인 종료를 들 수 있는데, 상기 제어기능은 특수장치에 의해 공급된 것일수도, 수신기상태 때문에 거절된 것일수도 있고, 상기 장차가 세션이 있지 않기 때문에 거절된 것일수도 있고, 상기 장치가 이미 세션내에 있기 때문에 거절된 것일수도 있고, 장차가 세트되는 것과 관련된 구조 로크 때문에 거절된 것일수도 있으며, 그리고 CONTROL COMMAND 파라미터에는 시방 에러가 존재한다.
전술한 도표로부터 알 수 있듯이, 네트워크 레벨 정보기능등은 보고 장치 파라미터, 보고 통계치, 보고 인터페이스 파라미터 및 로케이트를 포함한다. 전술한 도표에는 도시되지 않았지만, 에러나 응답을 발생시키는 일없이 수신내용에 의해 무시되는 널(null)기능도 존재한다. 이 네트워크 레벨 제어기능들은 세션이 진행중인지 여부와 무관하게 INET Node 에 의해 언제든지 받아들여진다. 이 제어기능들은 세션동작등 받아들여질 액티브 세션 파트너의 SID에서 발생되지 않는다.
보고 장치 파라미터 CONTROL COMMAND는 IONET장치가 I/O장치의 형태 및 상태에 대한 정보를 포함하는 CONTROL REPLY 패킷을 생성시키게끔 한다. 이 보고 장치 파라미터지령은 모든 장치에 의해 식별되고, 세션의 진행여부와 관계없이 받아들여지는데, 상기 장치가 세션중에 있을때 어떤 소스로부터 받아지는 것이지 세션 파트너로부터 받아들여지는 것은 아니다. 이 정보는 모든 장치의 균일한 기본 값으로 기록된다. 이 보고 장치 파라미터 지령은 발생될 수도 있는 대량의 네트워크 전송량, 부어드레스로 언급되는 방송능력 부족 및 응답이 어떤 장치로부터 수신되었는지를 알아보는 판단불능으로 인해 방송 패킷으로부터 받아들여지지 않는다. 이 보고 장치 파라미터 지령은 이미디어트 패킷으로서 보내진다. 파라미터인 CONTROL COMMAND에 응답해서 송신되는 CONTROL REPLY 패킷의 포맷은 데이타 영역(262)(제10도)의 관리 정보부(264), 전술한 종료 코드의 식별, "클라이언트" 또는 "서버" 그리고 상기 장치에 결합된 I/O 장치 인터페이스(182)(제6도)의 형태 코드, DATAF 패킷이 요구되기 전에 허락된 DATAI패킷의 최대수를 지시하는 패킷길이 및 송신 패킷 카운트, 그리고 세션 초기 형태 바이트를 포함할 수도 있다.
이 세션 초기 형태 바이트는 미리 예정된 세션 내에서 미리 예정된 클라이언트 또는 서버와의 통신을 제한하는 IONET 장치의 한계를 나타낸다. 이러한 형태의 제한식 통신능력은 특정 장치들간의 통신을 허락하기 위해 어떤 장치에 대한 액세스를 제한하고 안전 레벨을 요구할 목적으로 채택된다.
보고 통계치 CONTROL COMMAND는 상기 장치가 지령을 어드레스해서 상기 장치에 의해 수집되는 통계치 정보를 포함하는 CONTROL REPLY 패킷을 발생하게끔 한다. 이 지령은 부어드레스 0에서 모든 Node 에 의해 식별되고 모든 장치에 의해 식별될 수도 있다. 이 지령은 세션이 진행중인지 여부에 관계없이 받아들여지는데, 상기 장치가 세션중일 때 어떤 소스로부터 받아들여지는 것인지 세션 파트너로부터 받아들여지는 것은 아니다.
어떤 정보는 Node 결과의 관련해서 보고되는데, 상기 Node에서 모든 장치들에 대해 동일한 형태로 보고 된다.
이 지령은 발생가능한 대량의 네트워크 전송량, 부어드레스로 언급되는 방송능력 부족 및 모든 응답들이 수신되었는지의 여부를 판단할수 없는 능력부족으로 인해 받아들여지지 않는다.
이 지령은 이미디어트 패킷으로서 보내진다.
이 보고 인터페이스 파라미터 CONTROL COMMAND는 클라이언트 장치가 인터페이스 상태 및 관련 형식 상태에 관한 정보를 포함하는 CONTROL REPLY 패킷을 발생하게끔 한다. 이 정보는 상기 장치와 결합되고 상기 장치에 의해 현재 사용중인 RAM 메모리에 기억된 파라미터 세트로부터 보고되어진다. 이 값들은 어떤 조건하에서 클라이언트의 비휘발성 메모리에 기억된 파라미터 값들과 다를수도 있다. 이 지령은 모든 클라이언트에 의해서는 장치 식별 방식으로 인식되어지지만 모든 서버에 의해서는 거절되며, 그리고 세션이 진행중인지의 여부에 관계없이 클라이언트에 의해 받아들여지는데, 클라이언트 장치가 세션중일 때 어떤 소스로부터 받아들여지는 것이지 세션 파트너로부터 받아들여지는 것은 아니다.
보고 인터페이스 파라미터 지령은 세션 파트너가 아닌 장치들에 의해서는 이미디어트 패킷으로 전송되어야 하지만, 세션 파트너에 의해서는 정상 또는 이미디어트 패킷 형태로 전송될 수도 있다. IONET 패킷의 데이타 영역(262)(제10도)의 관리정보(264)내의 어떤 바이트들은 RAM 메모리에 기억된 파라미터들과 다른 값으로 쓰일수도 있다.
세트장치 파라미터 CONTROL COMMAND는 상기 클라이언트 장치로 하여금 새로운 값들은 비휘발성 메모리에 기억시키게끔 한다. 이 지령은 클라이언트 장치에 의해서만 받아들여지는데, 즉 구조 로크가 세트되지 않았을 때만 세션 파트너(만약 있다면)가 아닌 어떤 소스로부터 받아들여지는 것이다. 이 지령은 이미디어트 패킷으로서 보내져야 한다.
IONET 패킷의 데이타 영역의 관리 정보부는 다른 정보 즉 외부 장비 형태, 장치의 명칭, 상기 장치의 세션 초기 형태, 상기 장치의 특정 서비스 분류 형태, 미리 예전된 파트너 또는 원격 세션 패스워드의 식별 및, 구조 로크 상태를 식별해내는 바이트들을 포함할 수 있다.
세트 인터페이스 파라미터 CONTROL COMMAND는 상기 클라이언트 장치가 인터페이스 제어 및 관련된 형식 상태에 대한 새로운 값들을 세트하게끔 한다. 이 새로운 값들은 인터페이스에 공급된 후 상기 클라이언트 장치내의 RAM에 기억된다. 또한 이 값들은 클라이언틀 장치의 비휘발성 메모리에 기억될 수도 있다. 이 지령은 상기 RAM내의 비휘발성 메모리부터 상기 값들을 재호출하는데 사용될 수도 있다.
이 세트 인터페이스 파라미터 지령은 장차 특정 방식으로 모든 클라이언트들에 의해 식별되고, 모든 서버드러에 의해 거절되고, 세션 파트너로부터 클라이언트에 의해 언제든지 받아들여지며, 구조 로크가 세트되지 않은 경우엔 세션중인지의 여부와 관계없이 어떤 소스로부터 클라이언트에 의해 받아들여진다.
이 세트 인터페이스 파라미터들은 세션 파트너가 아닌 장치에 의해서는 이미디어트 패킷으로 송신되어야 하지만, 세션 파트너에 의해서는 정상 혹은 이미디어트 패킷으로 보내질 수도 있다.
IONET 패킷의 관리 정보부에 포함된 다른 정보를 패킷으로부터 파라미터를 RAM 또는 RAM과 비휘발성 메모리 둘다에 기입하고 상기 비휘발성 메모리로부터 RAM으로 재호출할 수 있는 RAM 또는 비휘발성 메모리의 제어에 관계한다. 관리정보부 내의 다른 정보부장치 형태 특정 인터페이스 파라미터와 관계한다.
로케이트 CONTROL COMMAND는 장치에 할당된 명칭을 사용함으로써 위치가 결정될 요구된 지정 장치의 RIM 식별 번호와 부어드레스를 결정하기 위해 세션의 설정을 시도하는 장치에 의해 방송으로서 전달된다. 만약 이러한 응답들중 첫번째를 제외한 모든 다중 응답이 수신되었다면 무시된다. 이 로케이트 지령은 부어드레스 0에서 모든 Node 에 의해 인식된 후, 세션이 진행 중인지의 여부에 관계없이 받아들여지는데, 상기 장치가 세션중일 때 세션 파트너가 아닌 어떤 소스로부터 받아들여진다.
이 로케이트 지령은 방송 패킷으로부터 받아들여진 제어지령 기능일 뿐이다.
로케이트 지령은 지정된 부어드레스 0로 보내져야 한다.
제어응답 패킷의 소스 어드레스는 그 식별 번호를 송신함으로써 로케이트 되어진 응답 Node 에서 특정 장치를 식별한다.
만약 응답 Node 에서 다중 장치들이 지정된 명칭과 일치하면 다중 응답 패킷들이 발생된다. 만약 상기 로케이트 패킷을 수신하는 Node에서 다중 장치들이 지정된 명칭과 일치되지 않으면 응답은 발생되지 않는다.
로케이트 지령에 대한 응답을 대기하는 기간이 타임아웃 되면 일치하는 명칭을 가진 액티브 장치가 없다는 것을 의미한다. 이 로케이트 지령은 이미디어트 패킷으로서 보내져야 한다. 응답 Node의 명칭은 IONET 패킷의 관리 정보부에서 인코드된다. 또한 로케이트 패킷은 요구된 서비스 분류를 포함한다. 만약 이 값이 0이면 명칭만이 일치하고 그렇지 않으면 명칭과 서비스 분류도 일치한다. 로케이트 지령에 응답하는 종료 코드는 지정된 서비스 분류에 대한 접속 지령을 상기 장치가 받아들일 수 있는 경우와 접속 지령을 받아들일 수 없는 경우를 구별한다.
전술한 도표에서 알 수 있듯이 이송 레벨 제어지령 기능들은 접속, 순방향, 분리, 재전달 및 재동기를 포함한다.
접속 CONTROL COMMAND는 만약 세션이 진행중이 아니면 세션을 설정하고, 세션이 진행중일 때 수신되면 거절된다.
클라이언트 또는 서버는 접속 제어지령을 보내므로써 세션을 초기화한다. 서버에 대한 접속 요청들을 요구된 세션 파트너의 명칭에 대한 로케이트 지령에 의해 복귀된 서브 어드레스(또는 서브 어드레스 0)에 보내질 수도 있다. 상기 서버는 응답 패킷의 소스 부어드레스(SSA)(272)(제12도)필드에 대한 적절한 값을 보내므로써 세션 통신을 다른 서브 어드레스 재전달할 수 있다.
실질적으로, 세션 전송량은 상기 응답 패킷의 SSA 필드로부터 얻어진 지정 부어드레스로 재전달 될수도 있다.
이 접속 지령은 이미디어트 패킷으로서 보내져야 한다.
바람직하게는 상기 접속 CONTROL COMMAND 패킷의 관리 정보부는 장치형태, 그 장치의 하드웨어 및 퍼엄웨어 또는 소프트웨어 정정 레벨, 그 프로토콜 버젼 공급, 그 장치의 최대 부어드레스, 그 패킷 길이 및 송신 패킷 카운트, 입력되는 송신 버퍼 길이, 최대 입력 송신 길이, 입력 패킷을 클라이언트에 의해 강제로 전송시키기전 까지의 시간, 소스 외부 장치형태, 소스 장치 명칭, 소스 세션 초기형태, 소스 서비스 분류 및 세션 초기 패스워드와 관련된 정보들을 포함한다.
만약 접속 지령이 받아들여지면, CONTROL REPLY 패밋은 접속 요청의 성공 여부에 관계없이 발생된다. 만약 종료 코드필드가 세션이 성공적으로 설정되지 않았음을 나타내는 식별부를 포함한다면, 이 종료 코드는 그 실패의 원인을 명기한다. 세션을 성공적으로 설정되지 못한 원인들중 일부는 제어기능이 거절되었기 때문이며(상기 장치가 이미 세션중이기 때문이 거절됨), 이 제어기능 파라미터에는 시방 에러가 존재하며, 응답 장치는 특수한 프로토콜 버젼 또는 요구된 하드웨어 정정 레벨 또는 퍼엄웨어나 소프트웨어 정정 레벨을 공급하지 않으며, 상기 장치는 원격으로 초기화될 수 없는 구조를 갖고 있고 또는 원격 패스워드 또는 명칭 불일치가 존재할 수도 있다. 이외에도, CONTROL REPLY 패킷내에는 다른관리 정보 즉, 프로토콜 버젼용, 패킷 길이용, 송신 패킷 카운트용, 입력 송신 버퍼길이, 최소 입력 송신 길이 및 입력 패킷을 강제로 송신하기 전까지의 시간용 정보가 포함될 수도 있다.
순방향 CONTROL COMMAND는 서버 장치가 내부-네트워크링 케이지에 대한 패킷 포워더(for warder)로서 작동하게끔 한다. 순방향 진행이 설정되었을때 장치는 IONET 패킷들을 인터럽트하지도 않고 수령하지도 않고, 단지 IONET 패킷을 설정된 링크를 향해 두 방향으로 단순히 전송시킬 뿐이다.
포워더 장치와의 통신은 불가능하기 때문에 이 장치내의 모든 구조는 순방향 지령을 보내기 전에 처리되어야 한다. 포워딩 장치는 이송 제어상태 머신을 동작시킬 뿐만 아니라 순방향 처리가 종료된 시기를 알리기 위해 분리 CONTROL REPLY 코드용 역채널을 감시한다. 통신이 무질서하게 이루어질 때 자원의 손실을 방지하기 위해, 순방향 처리를 끝내고, 순방향 지령(링크를 설정함)에 명기된 타임아웃 간격동안 어느 방향으로든 통신이 수신되지 않았으면 상기 장치는 분리 상태로 진행한다.
이 순방향 지령은 부어드레스 0로 보내질 수도 있다.
상기 포워더는 응답 패킷의 SSA 필드(272)(제12도)에 대한 적절한 값을 세팅하므로써 다른 부어드레스로 재전달할 수도 있다. 실질적으로, 통신은 응답 패킷의 SSA 필드로부터 얻어진 지정 서브 어드레스로 재전달 될 수 있다.
이 순방향 지령은 세션이 진행중일 때 수신되면 거절된다.
패킷 포워더(모든 클라이언트 포함)로서의 기능을 다하지 못하는 장치는 이 지령을 항상 거절한다. 이 순방향 지령은 이미디어트 패킷으로서 송신되어야 한다. 바람직하게, 순방향 IONET 패킷의 관리 정보부는 지정 네트워크 명칭, 요구된 지정 장치명칭, 요구된 서비스 분류 및 접속 타임아웃 주기에 관한 정보를 포함한다.
순방향 지령에 대한 지정 장치는 순방향으로 진행된 RIMID와 부어드레스를 결정하기 위해 지정된 행선장치용 행선 네트워크 상에서 로케이트 기능을 수행한다.
순방향 지령이 받아들여지면, 응답이 패킷이 순방향 처리 요청의 성공 여부와 관계없이 발생된다. 만약 상기 종료 코드필드가 순방향 처리가 성공적으로 설정되지 않았음을 나타내는 어떤 코드를 포함하면, 상기 종료 코드는 그 실패원인을 명기한다. 이러한 실패의 원인은 전술한 바와 동일할 수도 있다.
분리 CONTROL COMMAND는 세션을 종료시킨다. 이 분리 지령은 세션이 진행중이 아닌 경우에는 거절 된다. 클라이언트나 서버들은 분리 지령은 초기화할 수 있다. 이 분리 지령은 이니디어트 패킷으로서 전송되어야 한다.
재전달 CONTROL COMMAND는 두 세션의 전송량을 재전달하기 원하는 Node로부터 두 액티브 세션들의 세션 파트너에게 동시에 보내지므로, 이 세션들내의 파트너들은 서로 통신하게 되고 재전달 지령을 Node 로 더 이상 보내지 않는다. 이 지령은 이미디어트 패킷으로서 보낼 수도 있다. 이 재전달 패킷의 관리 정보부는 새로운 행선지 식별 및 새로운 행선지 부어드레스를 포함한다. 재전달 지령은 하기와 같은 재동기처리를 필요로 한다.
재동기 CONTROL COMMAND는 송수신기 상태 머신들을 세션의 끝부분에서 세션설정 시기의 상태로 리세트 되게 한다.
이것은 두 장치간의 순서번호나 또는 다른 재동기화가 이루어지지 않은 경우에 분리 및 재접속 하는 일없이 통신을 재차 허락한다.
클라이언트나 서버는 세션이 진행중일때 재동기 지령을 보낼수 있다. 이 재동기 지령은 세션이 진행중이 아닐때는 거절된다. 이 재동기 지령은 이미디어트 패킷으로서 송신되어야 한다.
세션 레벨 제어 기능들은 플러쉬 버퍼, 운용 확장 진단 및 보고 상태를 포함한다. 이 세션 레벨 제어 기능들을 클라이언트의 인터페이스 제어 퍼엄웨어에 의해 해석된다. 플러쉬 버퍼 기능을 나머지 제어 기능들은 서버에 의해 공급되지 않는다. 이들 대부분이 클라이언트 타잎이며 이것에 대해서는 이하에 기술한다. 이 세션 레벨 제어 기능들은 패킷들로 전송되는데, TXSB 값은 데이타 전송(DATAF)을 나타내지만 PFN 값은 클라이언틀 제어 요청 및 클라이언트 제어 응답을 나타낸다.
플러시 버퍼 제어 기능은 수신된 내용이 POU 어댑터 또는 저레벨 소프트웨어내의 수신 버퍼에 존재하는 어떤 패킷들 또는 부분 패킷들을 버리게끔 한다. 이 플러쉬 버퍼 지령은 세션이 진행중인 어떤 장치에 의해 받아들여지고 세션이 진행되지 않을 때눈 무시된다. 이 플러쉬 버퍼 지령은 이미디어트 패킷으로서 보내진다.
운용 확장 진단 제어 기능은 상기 장치가 진단 기능을 수행하고 그 결과를 기록하게끔 한다. 이 진단 기능들은 전력 부족 상태에서 또는 특수한 시험에서 수행된 것과 동일할 수도 있다.
이 지령은 모든 클라이언트에 의해 특수한 방식으로 인식된다.
확장된 진단 기능들을 실행하지 않는 클라이언트들은 이 지령이 성공적으로 완료되었음을 기록한다. 이 지령은 모든 클라이언트에 의해서는 인식되지만 모든 서버에 의해서는 거절되는데, 세션이 진행중일 때만 받아들여진다. 이 운용 확장 진단 지령은 정상 또는 이미디어트 패킷중 어느 하나로 전송될 수도 있다.
IONET 지령 패킷으리 관리 정보부는 진단 파라키터로 간주되는 정보를 포함할 수도 있으며, 이 IONET 응답 패킷의 관리 정보부는 진단 결과로 간주되는 정보를 포함할 수도 있다.
보고 상태 제어 기능은 장치로 하여금 그 장치의 I/O 인터페이스 상태에 대한 정보를 포함하는 응답 데이타 패킷을 발생되게 한다. 이러한 지령은 모든 클라이언트에 의해 특유한 방식으로 인식된다. 이러한 지령이 모든 클라이언트에 의해 인식되고, 모든 서버에 의해서는 거부되며, 또한 하나의 세션이 진행중일때만 받아들여진다. 상기 지령은 정상 또는 즉시 패킷중 어느 하나에 송출된다. 응답 IONET 패킷내의 최소 응답은 표준화돈 인터페이스 제어상태와, 그리고 세센 레벨 바이트 열기능과 관련하여 하기 설명되는 상태로 이루어진다.
상기 세션 레벨 바이트 열 기능은 초기 또는 즉시 데이타 패킷을 전송하는 DATAI와, 최종 또는 유일 데이타 패킷을 전송하는 DATAF와, 수신기상태 머신을 정지상태로 되게 하는 IDLE와, 그리고 메세지들을 키업어라이브 하기 위한 NOP을 포함한다. 이들 기능의 사용에 대해서는 이송 제어상태 머신과 관련하여 후술된다.
DATAI 및 DATAF IONET 패킷의 데이타 영역에 대한 관리정보 부분은 표준화된 인터페이스 제어 및 상태 설비에 사용된다. 표준화된 인터페이스 제어 및 인터페이스 설비의 잇점은 장치제어 및 상태 정보를 물리적 I/O 장치와는 독립적으로 직접 액세스하기 위한 수단을 갖는다는 점이다. 상기 장치의 독립성은 서버에서 저레벨 소프트웨어의 단일 구현을 가능케 함과 아울러, I/O 장치의 모든 유형을 가상적으로 제어할 수 있다.
DATAI 및 DATAF IONET 패킷의 관리 데이타 영역은 외부 인터페이스 제어 입력신호의 상태를 보고 하고 또한 총징적 전력 온/오프 및 총칭적 준비/비준비 상태를 나타내는 입력상태 워드(ISW)와, 이 입력상태 변경이 세션 파트너에 관심을 갖고 또한 관리 데이타 영역에의 보고를 하게 하도록 선택하는 상태 마스크 워드(SMW)와, 그리고 외부 인터페이스 출력 제어 신호의 세팅을 특정하는 출력 제어 워드(OCW)를 홀드하는데 사용된다.
데이타를 전송하는데 사용되는 모든 DATAI 및 DATAF는 다음과 같이 해석된다. 즉 관리 데이타 영역은 널인 경우, 인터페이스 제어나 혹은 상태 변경이 전혀 발행하지 않는다.
실제로, 관리 데이타에 대한 2개의 바이트가 존재하는 경우에는 이들 바이트가 ISW이다. 또, 사실상 관리 데이타에 대한 4개의 바이트가 존재하는 경우에는 이들 바이트가 SMW에 의해 수반되는 ISW이다. 만일 실제로 관리 데이타에 대한 6개의 바이트가 존재하면, 이들 바이트는 각기 ISW 및 OCW이다.
그리고, 관리 데이타에 대한 6개 이상의 바이트가 존재하면, 제1의 6개의 바이트는 ISW, SMW 및 OCW 이며 그 부수적인 바이트는 특유한 바이트이다.
선행 워드의 정보에 영향을 미치지 않고 나중 워드의 정보를 보고하거나 혹은 세팅하는 것을 돕기 위한 각각의 ISW, SMW 및 OCW의 최상위 비트는 유효 또는 인에이블 비트이다.
유효 비트 세트가 0으로 된 워어드는 무시된다. 클라이언트로부터 서버로 통신하기 위해서는, ISW가 외부 인터페이스 입력 상태를 보고하고, SMW는 현재 마스크 세팅을 보고하며, 또한 OCW는 현재 외부 인터페이스 제어 출력 세팅을 보고한다.
또, 서버로부터 클라이언트로 통신하기 위해서는, ISW가 사용되지 않고, SMW는 상태 마스크값을 세팅하는데 사용되며, 그리고 OCW는 외부 인터페이스 제어 출력을 세팅하도록 사용된다. 또, 서버로부터 서버로 통신하기 위해서는 ISW, SMW 및 OCW가 일반적으로 사용되지 않고, 클라이언트로부터 클라이언트로 통신하기 위해서는 이들 3개의 워드는 일반적으로 무시된다.
데이타 메세지 통신에 대한 세션 레벨 기밀보호를 얻기위해 본 발명으로부터 이용할 수 있는 전략은, 3개의 장치로 하여금 IONET 세션에 관여하는 한쌍의 장치들간의 통신과 간섭하는 것을 방지되게 하기 위해 SID를 사용하는 것이다.
또, 서버로부터 클라이언트로 통신하기 위해서는 ISW가 사용되지 않고, SMW는 상태 마스크값을 세팅하는데 사용되며, 그리고 OCW는 외부 인터페이스 제어 출력을 세팅하도록 사용된다. 또, 서버로부터 서버로 통신하기 위해서는 ISW,SMW 및 OCW가 일반적으로 사용되지 않고, 클라이언트로부터 클라이언트로 통신하기 위해서는 이들 3개의 워드는 일반적으로 무시된다.
데이타 메세지 통신에 대한 세션 레벨 기밀보호를 얻기위해 본 발명으로부터 이용할 수 있는 전략은, 3개의 장치로 하여금 IONET 세션에 관여하는 한쌍의 장치들간의 통신과 간섭하는 것을 방지되게 하기 위해 SID를 사용하는 것이다.
세션이 진행중일 때, 데이타 및 제어패킷은 그 SID가 오리지날 연결 지령을 기능 패킷을 송출하거나 혹은 그 응답을 오리지날 연결 패킷에 송출하는 Node의 SID와 정합하는 경우에만 받아들여진다. 이송에 대한 매우 간단하고 효율적인 것은 물론 여분의 하드웨어를 전혀 필요로 하지 않는 이러한 기밀보호 기법은 다른 Nodes로부터 인식되지 않은 통신에 대한 장벽을 제공한다. 이것은 ARCNET 링크 레벨 하드웨어가 그 설정된 SID와는 다른 SID의 전송을 방해하기 때문에 생긴다.
세션들은 패스워드 및 구성 로크의 사용에 의해 설정 및 제어될 수 있다. 상기 패스 워드는 한 장치의 메모리에서 설정된 정보이다. 세션을 설정하기 위해서는, 연결 지령 패킷이 패스워드에 대응하거나 혹은 이 패스워드에 의해 형성된 SID의 한 그룹이내에 있는 SID을 갖도록 장치에서 발생하여야 한다. 모든 클라이언트는 불휘발성 메모리내의 어떤 장치 파라미터를 유지시킨다. 이러한 불휘발성 메모리의 내용들은 구성 로크와 다른 IONET 제어기능에 의해 세트되지 않는 한 IONET 제어기능에 의해 액세스 및 갱신하게 된다.
일단 구성 로크가 한번 세트되면, 그 구성 로크가 장치에서 수행되는 휴먼 액션에 의해, 예컨대 스위치를 작동시켜 클리어될 때까지, 불휘발성 메모리의 내용에 대한 변경은 전혀 이루어지지 않는다. 구성 로크를 세팅하는 것은 장치 구성이 인식되지 않은 수정으로부터 보호되게 한다.
서버가 세션을 초기화해야 하는 경우, 클라이언트들이 원격 세션 초기화를 구성되게 할수 있다. 구성정보 파일을 관련 서버측에서 보호함으로써, 유저가 세션을 초기화하게 되는 태스크의 로케이션 및 특성들의 변경을 제한되게 할 수 있다. 세션 파트너가 클라이언트의 불휘발성 메모리에서 식별 및 고정되는 경우에는, 클라이언트가 소정의 세션 초기화를 구성할 수가 있다. 구성 로크는 유저 및 응용 하드웨어로 하여금 세션 초기화 형태 및 세션 파트너의 변경을 방지되게 하도록 세트된다. 미리 정의된 세션으로서 구성된 클라이언트들은 메세지를 받아들이지 않거나 혹은 세션 파트너가 유저로부터 식별하기 때문에, 미리 정의된 세션들은 통신 매체의 멀티콘텍스트, 다중화된 특성에도 불구하고 단일 서버 및 단일 클라이언트 상기의 직접 전용 연결에 대한 출현을 제공한다.
통신 매체상의 이러한 유형의 전용 포인트별 통신은 전용 포인터별 단일 케이블링의 사용을 제외하고는 종래의 I/O 채널을 이용하지 않는다. 어떤 장치에도 도달하는 원격 세션 초기와 요구신호는 그 세션 초기화 유형이 미리 정의되지 않는 경우엔 패스워드를 필요로 할 수 있으며, 그에 따라 상기 장치들이 허가되지 않은 유입 엑세스를 배제하도록 구성되게 한다. 어댑터의 견지에서 볼 때, 원격 세션 패스워드는 구성 로크가 세트된 경우엔 판독 또는 수정될 수 없다.
이송 제어상태 머신은 IONET 통신채널을 통해 통신하는데 필요한 기능을 제공하도록 동작하며, 또한 상술한 IONET 프로토콜에 응답하여 동작한다. 상기 통신 채널은 한쌍의 통신장치들간의 풀 듀플렉스는 논리링크이다. 이 각각의 논리링크는 각각 단일상태 머신에 의해 제어되는 2개의 송신기 및 2개의 수신기를 수반한다. 또, 모든 세션은 그 세션에 관여하는 각각의 Node로 동작하는 송신기 및 수신기 상태 머신들을 갖는다.
상기 상태 머신의 목적은 바이트 열 이송을 동기화하고, 패킷의 성공적인 수신을 인지하며, 미싱 또는 상실 패킷을 검출 및 송신하고, 복제 패킷을 검출 및 무시하며, 데이타가 전혀 통신되지 않는 경우의 구간동안 주기적인 "키입 얼라이브" 패킷을 제공하고, 그리고 데이타가 전혀 송출되지 않거나 혹은 버퍼 스페이스가 데이타를 전혀 수신하지 않는 경우의 주기동안 통신을 중단하고 그 이후 이들 상태가 제거될 때 통신을 재개하여 불필요한 순서제어 동작을 방지하기 위한 것이다.
IONET 헤더의 TXSB는 패킷을 수신기상태 머신(패킷을 수신함)에 송출하는 송신기상태 머신의 상태를 통신한다.
또, RXSB는 상기 패킷을 그 패킷의 행선인 장치에서 송신기상태 머신(이 송신기상태 머신은 패킷을 송출되지 않음)으로 송출하는 장치에서 수신기상태 머신(이 수신기상태 머신은 패킷을 수신하지 않음)의 상태를 통신한다.
각각의 패킷에 대한 인자는 인지되는 패킷을 수신받는 장치에서 송신기에 의해 전송된 다음 패킷의 RXSB로서 나타난다.
양방향성 통신의 주기동안, 이러한 인지의 "패킷 백킹(piggy backing)"배열이 네트워크 대역폭을 보존한다. 또, 단 방향성 통신의 주기동안에는 역방향으로 되는 데이타 패킷이 전혀 존재하지 않게 되지만, 인지를 포함하는 패킷들은 발생된다. 송신기상태 머신 또는 수신기 상태 머신들 중 어느 하나가 상태 변경을 보고할 때마다. 하나의 패킷의 발생된다. 만일 상기 상태 머신들중 하나가 제때 아무런 송신도 하지 않으면, 그 상태 바이트내의 "NOP"코드를 사용하여 무상태임을 보고한다.
최대 송신 패킷 카운트는 세션이 설정될 때 세션 파트너들간에 설정된다. 이들 카운터는 수신기로부터의 인지 없이도 송신기가 송출될 수 있게 하는 데이타 패킷의 최대 갯수를 특정한다.
지령 패킷들은 각각의 지령에 대한 응답에 따라 항상 한번에 하나씩 송출된다. 송신기는 인지가 재송신에 대한 필요성을 허용하도록 수실될때까지 데이타 패킷들의 전체 그룹에 대한 카피를 유지하여야 한다. 수신 에러 또는 동기화 에러가 발생하는 경우, 이러한 상태가 즉시 보고된다. 즉시 데이타 패킷들 및 모든 지령 패킷들은 송신 카운트와는 별도로 수신시에 인지된다. 정상 우선순위 데이타 패킷들은 긍정인지를 발생시키도록 설계될 수 있다. 또, 수신기는 수신준비중 임을 송신기에 알리기에 앞서, 부정 인지된 패킷들의 최대 갯수를 유지함에 있어 충분한 버퍼를 가져야 한다.
디폴트 송신 패킷 카운트는 송신된 모든 패킷의 긍정인지를 초래하는 하나의 패킷이다. 가장 많이 허용 가능한 송신 패킷 카운트는 15인데, 이는 패킷 이송동기화를 유지하기 위한 4비트 순서 수의 사용으로 제한된다. 어떤 장치에 의해 사용된 송신 패킷 카운트는 관련된 수신기상태 머신이 RIM 수신기를 억제함이 없어 버퍼할 수 있는 패킷 갯수보다 1이 적은 값을 초과하지 않아야 한다. 보다 큰 송신 패킷 카운트, 보다 적은 네트워크 대역폭 및 처리시간은 인지를 송출하는데에 사용되는데, 상기 보다 적은 시간은 연속 송신 사이를 경과하지 않아야 하지만, 버퍼의 보다 큰 갯수는 재송신을 취급하기 위해 송신 상태 머신에 의해 유지되어야 한다.
송신기 및 수신기상태 머신 동작은 하드웨어나 혹은 소프트웨어의 둘중 어느 하나에 의해 비교적 간단히 구현된다.
소프트웨어 구현은 경제적인 이유로 인해 매우 바람직하며, 하드웨어 구현은 POU 어댑터 및 대부분의 응용에 있어 받아들이기 어려운 큰 물리적 크기를 초래하므로 그다지 바람직하지 못하다.
제13도 및 제14도는 어떠한 상태가 송신기 및 수신기상태 머신들 사이에서 이돌할 수 있는지에 대한 일반적 상태 천이를 도시한 것이다. 상태 머신들을 동일한 상태로 유지되게 하는 상태는 제15,16,17 및 18도의 상태 천이 표에서 도시된 바와같은 정보의 수신을 기초로한 복합 결정이나 혹은 프로토콜 외부에 있는 패킷의 수신중 어느 하나에 의해 특징으로 될 수 있는데, 그에따라 머신이 동일한 상태에 머무르는 것이 무시되게 한다.
제13도는 다음과 같은 다섯가지의 기본적인 송신기 상태들을 도시한다. 즉, 송신기가 정보를 송출하였거나 혹은 송출 과정중 또는 송출시도중 일때의 TA(송신기 액티브); 송신기가 순서적인 제어에 관계될 때까지 데이타를 송신할 수 있거나, 아니면 아무런 송신을 하지 않으므로 말미암아, 보다 많은 이용 가능한 데이타를 생성하도록 그 절점내의 내부상태로 대기중 일때의 TW(송신기 대기); 송신이 이송 레벨순서제어에 기인하여 중단되었음을 나타내는 TS(송신기 정지); 즉시 패킷들이 송출되고 있을때 정상 모드로부터 인입되는 ITA(즉시 모드 송신기 액티브); 그리고 TS(송신기 정지)와는 등가이지만, 즉시 모드내에 있는 동안의 이송 레벨순서제어에 기인하여 생기는 ITS(즉시 모드 송신기 정지)이다. 즉시 모드에서 정상 모드로의 드롭백은 모든 즉시 패킷들이 송출되자마자 곧바로 해제된다.
"세센 불가능"으로서 표기된 상태는 엄밀히 말하자면 스테이트라는 의미라기 보다는 오히려 상태 머신이 세션이 전혀 진행하지 않기 때문에 작동하지 않는 컨디션임을 의미한다. 이러한 세션 불가능 상태는 채널 또는 Node 의 리세트 이후와 마찬가지로, 그 세션을 종료시키는 분리 제어 기능이나 혹은 타임아웃중 어느 하나를 세션 종료의 결과에 따라 인입된다.
세션이 설정된 경우, 송신기상태 머신은 수신장치가 데이타의 수신준비중임을 나타낼 때까지 송신기가 수신기의 비지 상태임을 인식하는 사실에 기인하여 TS(송신기 정지)상태를 인입시킨다.
따라서, 어떤 세션 내부에서는, 그 세션에 통신되는 제1의 수단이 송신기의 TS 불가능 상태를 취하기 위해 수신기에서 송신기로의 준비상태를 나타낸다. 상태들간에 송신을 초래하는 상태들의 나머지에 대해서는 제13도로부터 이해될 수 있다.
제14도는 다음과 같은 다섯가지의 기본적인 수신기 상태를 도시한다. 즉, 수신기가 정보를 수신중인 경우의 RA(수신기 액티브); 순서 제어가 관계될 때까지 수신기가 데이타를 수신할 수 있으나 실질상 데이타를 수신하지 않고 있으므로 데이타가 이용 가능하게 될때까지 대기하는 RW(수신기 대기); 데이타의 송신이 중지되고 그에따라 더이상의 데이타를 송출할 필요가 없음을 상기 세션의 반대편에 있는 송신기상태 머신에서 알리는 RS(수신기 정지); 즉시 패킷이 수신되고 있을때 정상 모드에서 인입되는 IRA(즉시 모드 수신기 액티브); RW(수신기 대기)와는 등가이지만, 즉시 모드내에 있는 동안의 이송 레벨순서제어에 기인하여 발생하는 IRW(즉시 모드 수신기 대기)이다.
"세션 불가능"으로 표시된 상태는 엄밀히 말해서 스테이트를 의미하는 것이 아니라 오히려 세션이 전혀 진행되지 않기 때문에 상태 머신이 동작하게 않게 하는 컨디션임을 의미한다.
상기 세션 불가능 상태는 IONET 채널 또는 Node의 리세트 이후와 마찬가지로; 그 세션을 종료시키는 분리 제어 기능이나 혹은 타임아웃중 어느 하나를 통한 세션 종료의 결과에 따라 인입된다.
제14도에 도시된 수신기상태 머신 도면과 관련하여, 상태를 링크시키는 천이 상태에 대한 상태 및 천이수와 그리고 그 방향은, 세션 불가능에서의 천이가 세션의 설정에 대한 RS(수신기 정지) 상태보다는 오히려 RW(수신기 대기) 상태로 되는것을 제외하고는 제13도의 송신기상태 머신 도면과 동일하다. 제13도 및 14도에서 도신된 상태 쌍들을 주목하면, 통상 TA 및 RA는 액티브 통신을 취급하기 위한 하나의 쌍이다. 송신기가 더이상 송출되지 않는 경우에는 지연을 나타내며 TW 상태로 된다. 송신기로부터의 지연 메세지는 수신기를 RS 상태로 천이됨을 나타내는 액티브 상태로 된 송신기에 의해 RS 상태로부터 해제된다. 만일 수신기가 인입 데이타를 유지하기 위해 버퍼불가능을 실행하면, 그것은 RA에서 RW로 되는 준비상태가 아님을 나타낸다. 이것은 송신기가 TS상태로 이동하기 때문이다. 액티브 통신이 온 될때는, 송신기 및 수신기가 그들의 액티브 상태, 즉 TA 및 RA로 된다. 송신기가 더이상 송출되지 않기 때문에 송신이 일시 중단된 경우에는, 송신기가 TW 상태로 되며 수신기는 RS 상태로 되는 반면에, 수신기가 더이상의 데이타를 저장할 스페이스가 전혀 없기 때문에 중단되는 경우, 수신기는 RW 상태로 되고 송신기는 TS 상태로 된다.
송신기 및 수신기상태 머신의 동작에 대한 보다 상세한 설명은 제15,16, 17 및 18도와 관련하여 하기에서 설명된다.
송신기 상태 머신은 주어진 장치에 대한 모든 유입 패킷을 취급하며, 그 취급한 모든 패킷에 대한 송신기 상태 바이트를 제공하고, 데이타 패킷을 유입시키기 위한 시퀀스 수를 발생하며, 또 그 인지를 송출된 패킷과 정합시키고, 타임아웃이 종료된후 부정 인지 패킷을 재송신하며, 유입 데이타가 전혀 이용될 수 없는 주기동안 키입 얼라이브 패킷을 소정의 시간 구간에서 발생하며, 그리고 대응하는 수신기상태 머신에서의 상태 응답없이 제2의 소정시간 주기가 경과하는 경우 연결을 끊어 버린다.
정상 모드 송신기 상태는 제15도에 도시되어 있다.
상기 상태는 다음과 같다. 즉, 유입 데이타가 송신되고 있을때와 그리고 송신기가 송신된 패킷에 대한 인지를 대기하고 있을때 유입도는 송신기 액티브(TA); 최종 송신된 패킷이 인지되어 더이상의 유입 데이타가 불필요할 때 유입되는 송신기 대기(TW); 수신 버퍼 스페이스가 더이상 불필요하기 때문에 수신기가 통신을 중단할 때 유입되는 송신기 정지(TS)이다.
정상 패킷 및 즉시 패킷의 송신은 독립활동 상태로서 취급된다.
ITA 및 ITS 송신기 상태를 사용하며 제16도에서 도시된 즉시 패킷에 대한 반 독립적인 송신기 머신이 있다. 즉시 패킷이 전혀 인지를 펜딩 혹은 대기하지 않고 있는 때와 마찬가지로, 리세트 이후에는 송신기상태 머신이 정상모드에 있으며, TA,TW 및 TS을 사용한다.
즉시 모드가 일단 한번 유입되면, 송신기상태 머신은 모든 펜딩 즉시 패킷들이 송출 및 인지될 때까지 즉시 모드로 유지된다.
이때, 송신기상태 머신은 제1 즉시 패킷이 발생되어 상태가 액티브 상태로 될 때마다 정상 모드로 복귀한다.
각 세션의 두 단부방향에 있는 송신상태 머신 및 수신기상태 머신의 동시 동작에 기인하여, 정상 우선순위 활동 상태에 관한 패킷들은 즉시 패킷의 처리 진행동안 송신기 상태 머신에 도달할 수 없다. 이들 수신은 다른 정상 모드 동작이 즉시 모드 처리가 완료될 때까지 전혀 생성되지 않음에도 불구하고 정상 모드 송신기의 상태를 기초로 하여 처리된다.
송신기상태 머신은 송신 패킷 카운트에 대하여 특정된 값에 관계없이 모든 즉시 패킷에 대한 긍정인지를 기대한다.
수개의 정수값이 메세지 시퀀스를 추적하여 유실 및/또는 복사된 패킷을 검출하도록 송신기상태 머신에 의해 유지된다.
이들은 정상 우선순위 패킷의 전송에 사용되는 현재 순서번호는 나타내는 n; 대응하는 수신기상태 머신이 성공적인 수신을 인지했던 최상위(정상 우선순위) 메세지 순서번호를 나타내는 m; 즉시 패킷의 전송에 사용되는 현재 순서번호를 나타내는 p : 이러한 능동 세션의 방향을 위해 사용중인 송신 패킷 카운트를 나타내는 t; 0 내지 15의 범위인 값을 나타내는 x를 포함한다.
이들 번호 사이의 모든 크기 관계는 15에서 0까지의 랩 어라운드(wrap-around)가 크기 증가로서 나타나게끔 구성된다. 이것은 t가 16이하가 되어야 하기 때문에 불명확하다.
송신기상태 머신은 그것이 송출한 각 패킷의 송신기상태 바이트(TXSB)의 동작코드 및 순서번호를 사용한 그것의 상태 전이를 나타낸다. 허용 가능한 동작은 다음의 것을 포함한다.
이 패킷이 바이트 열 및/또는 관리 데이타를 포함하고, 이 패킷이 긍정인지 없이 전송중인 둘 또는 그이상의 그룹에서 초기 또는 중간 패킷이라는 것을 나타내는 DATAIn; 이 패킷이 바이트 열 및/또는 관리 데이타를 포함하고, 이 패킷이 한 그룹내의 최종(또는 유일한)패킷이며, 긍정인지가 필요하다는 것을 나타내는 DATAFn; 아무런 추가 데이타가 데이타 패킷 "n-1"후 현재(일시적으로) 이용될 수 없다는 것을 나타내는 IDLEn ; 생생한 메세지를 유지하는데 사용되는 NOPx(순서번호는 무시); 접속, 분리, 보고장치 파라미터등과 같은 기능에 사용하는 CONTROL COMMAND(순서번호는 사용되지 않음); CONTROL COMMAND에 응답하여 완성 코드와 응답 데이타를 송출하는데 사용되는 CONTROL REPLY(순서번호는 사용되지 않음).
송신기상태 머신에서 상태 천이를 일으킬수 있는 사진은 다음의 것을 포함한다.
수신기가 DATAFn를 통해 완전히 전송된 모든 패킷을 성공적으로 수신하였다는 것과, 수신기가 능동 전송패킷 카운트의 길이를 패킷 그룹에 이용할 수 있는 충분한 버퍼를 가지고 있다는 것을 나타내는 것으로서, 수신기상태 바이트가 인지형태 READYn+1을 포함하는 패킷의 수신을 표시하는 "READYn+1"; 수신기상태 바이트가 인지형태 BUSYn+1을 포함하는 패킷의 수신을 표시하는 것으로서, 수신기가 DATAfn을 통해 완전히 전송된 모드 패킷을 성공적으로 수신하였다는 것과, 수신기가 현재 이용 가능한 추가 버퍼를 갖고 있지않다는 것(혹은 능동 송신 패킷 카운트의 길이로서 패킷 그룹을 받아들이게 불충분한 수의 버퍼를 가짐)을 나타내는 "BUSYn+1"; 인지형태 READYm+1를 수신기상태 바이트가 포함하는 패킷의 수신을 표시하는 것으로서, 수신상태 머신이 DATAFm을 통해 완전히 전송된 모든 패킷을 성공적으로 수신하였고, 순서번호로써 전송된 패킷을 성공적으로 수신하지 못했으며, 패킷 "m" 전송의 재시도가 필요하다는 것을 나타내는 "READYm+1"; 하나 또는 그 이상의 유출 패킷이 아무런 데이타 패킷이 마지막 "READYn+1", "READYm+1"또는 "T1" 사건 이래로 송출되지 않았을때 전송을 위해 출현되었다는 것을 나타내는 "송출 없음, 데이타 이용가능"; 적어도 하나의 DATAIn 패킷이 마지막 "READYn+1", "READYm+1" 또는 "T1" 사건 이래로 송출되었을 때 하나 또는 그 이상의 추가 유출 패킷이 전송을 기다리고 있다는 것을 나타내는 "DATAIn 송출, 더 많은 데이타 이용 가능"; 재시도 및 생생한 유지에 관한 타임아웃 간격의 소멸을 표시하는 것으로서, 이 타임아웃이 어떤 패킷이 세션 파트너로 전송될 때마다 리세트된다는 것을 나타내는 "T1"; 통신 또는 프로토콜 위반의 손실에 관계된 타임아웃 간격의 소멸을 표시하는 것으로서, 이 타임아웃이 어떤 유효 패킷이 세션 파트너로부터 수신될 때마다 리세트된다는 것을 나타내는 "T2".
RIM 수신기가 금지되는 장치로 패킷을 전송하기 위한 이전의 시도를 포함하는 여러 상황으로 인하여, 그것의 RIM 송신기가 비지(BUSY)일때 송신기 상태 머신이 패킷을 송출할 필요성이 있는 경우가 있을 수 있다. 이것이 발생할때 송신기상태 머신은 "T2" 타임아웃 사건을 제외하고 그것의 상태 천이표에 도시된 모든 사건의 취급을 일시적으로 중단한다. 송신기가 이용 가능하게 되고 대기 전송을 송출하도록 재차 인에이블된 후, 송신기가 비지였던 기간동안 도달한 어떤 사건이 처리된다. 수신된 "NOPx"패킷의 처리(T2를 리세트하는 것)도 또한 송신기가 비지인 기간동안 보류된다.
정상 모드에서 송신기상태 머신의 동작은 제15도에 도시된 표로 특징지워진다. 그표의 각 박스에 대하여, 대문자로된 항목은 송신기상태 바이트에서 지시된 기능을 가진 패킷의 전송을 나타내고, 소문자로된 항목은 송신기상태 머신내의 내부동작을 나타내며, 우측 화살표로 시작하는 항목은 박스내의 작용의 완성시 들어가게되는 상태를 나타낸다.
송신기상태 머신의 다른 동작 특성은 다음과 같다. 하나 이상의 사건이 동시에 발생한다면, 표의 최좌측열에 도시된 사건이 최초로 취급된다. 다른 사건들은 초기 사건이 취급된후 그들의 여전히 참일 경우에만 취급된다. T1 타임아웃 간격은 도시된 바의 송신기 상태에 따라 변화하고, T2 타임아웃 간격은 항상 T1보다 큰 일정값을 갖는다. "NOPx"의 어떤 수신기상태 메세지(순서번호에 관계없음)의 수신은 T2 타이머가 리세트되게 하지만, 이와는 달리 송신기상태 머신에 의해 무시된다. CONTROL COMMAND 또는 CONTROL REPLY의 전송은 "DATAFn"이 나타날 때마다 발생할 수도 있다. 대응하는 CONTROL REPLY가 수신될 때까지 CONTROL COMMAND의 송출후 추가 전송은 발생하지 않는다. T1 시간 간격이 이러한 CONTROL REPLY를 기다리는 동안 소멸된다면, CONTROL COMMAND가 재차 전송된다. 각 CONTROL REPLY에 대해서는 아무런 인지도 기대되거나 필요치 않다. T2 시간 간격이 CONTROL REPLY를 수신하지 않고, 경과한다면 CONTROL COMMAND작용(어떤 경우에는 세션)이 종료된다. 상태 천이표에 정의된 사건에 의해 포함된 것 이외의 수신기 상태 값으로 세션 파트너로부터 수신된 모든 패킷은 T2 타이머를 리세트시키지 않고 송신기상태 머신에 의해 무시된다.
이것은 프로토콜 위반으로 인하여 타임아웃 기준 세션 종료라는 결과를 낳는다. 또는 T2 타이머가 리세트하여야 하는 것을 특정하는 상태 천이표상에 도시된 에러 조건이 있다. 세션의 설정시 또는 재동기화시 송신기상태 머신은 n:m=-1을 가진 상태 TS로 들어간다.
즉시 모드에서 송신기상태 머신의 동작은 제16도에 도시된 표에 의해 특징지워진다. 이 표내의 각 박스에 대하여, 대문자로된 항목은 송신기상태 바이트에서 지시된 기능을 가진 패킷의 전송을 나타내고, 소문자로된 항목은 송신기상태 머신의 내부동작을 나타내며, 우측 화살표로 시작하는 항목은 박스내의 작용의 완성시 들어가게 되는 상태를 나타내며, "Tx"는 즉시 모드 동작의 종료시 들어가기에 적합한 정상 모드 상태(TA, TW 또는 TS)를 일컫는다.
즉시 모드에서 송신기상태 머신의 다른 동작 특성은 다음과 같다. T1 타임아웃 간격은 도시된 송신기 상태에 따라 변화하고, T2 타임아웃 간격은 항상 T1보다 큰 일정값을 가진다. 이들 T1 및 T2 타이머는 정상모드 송신기상태 머신과 사용된 것과 동일하다. "NOPx"(순서번호 무시)의 어떤 수신기상태에 메세지의 수신은 T2 타이머로 하여금 리세트되게 하지만, 이와는 달리 송신기상태 머신에 의해 무시된다. CONTROL COMMAND 또는 CONTROL REPLY의 전송은 "DATAFp"가 나타날 때마다 발생할 수도 있다. 대응하는 CONTROL REPLY가 수신될 때까지 CONTROL COMMAND의 송출후 추가 전송이 발생하지 않는다.
이러한 CONTROL REPLY를 기다리고 있는 동안 T1 시간 간격이 소멸된다면 CONTROL COMMAND가 재차 전송된다. 각 CONTROL REPLY에 대하여, 아무런 인지도 기대되거나 필요치 않다. T2 시간 간격이 CONTROL REPLY를 수신하지 않고 경과한다면 CONTROL COMMAND 작용, 어느 경우에는 세션이 종료된다. 상태 천이표에서 정의된 사건에 의해 포함된 것 이외의 수신기 상태 값을 가진 세션 파트너로부터 수신된 모든 패킷들은 T2 타이머를 리세트시키지 않고 송신기상태 머신에 의해 무시된다. 이것은 프로토콜 위반으로 인한 타임아웃 기준 세션 종료라는 결과는 낳는다. 또한 T2 타이머가 리세트하지 않아야 한다는 것을 특정하는 상태 천이표상에 도시된 에러 조건이 있다. 세션이 설정시 또는 재동 기화시 P의 값은 제로로 초기설정된다. 즉시 모드로의 유입세 송신기 상태 머신은 DATAFp 패킷을 송출하고 ITA 상태로 들어가게 된다. 이 DATAFp 패킷으로 사용된 P의 값은 즉시 모드로부터의 이전의 출구로부터 변화되지 않는다.
수신기상태 머신은 주어진 장치에 대한 모든 유입 패킷을 취급하여, 이 장치로부터 모든 유출 패킷에 포함하기 우한 수신기상태 바이트 RXSB를 제공하며; 나가는 인지 결과에 대한 순서번호를 발생하고; 새로운 패킷이 타임아웃 간격내에 수신되지 않는다면 지시를 이용할 수 있는 자유버퍼를 재차 전송하고; 자유버퍼의 이용이 불가능할 때 소정의 시간 간격에서 생생하게 유지된 패킷을 발생하며; 더 큰 다른 소정의 시간 간격 이상의 대응하는 송신기상태 머신으로부터의 상태 응답없이 경과한다면 접속을 파괴한다.
정상 모드 수신기 상태는 제17도에 도시되어 있다. 수신기 상태는 하나 또는 그 이상의 수신버퍼가 이용될 수 있을 때 들어가게 되는 수신기 능동(RA), 수신기 버퍼가 이용될 수 없을 때 들어가게 되는 수신기 대기(RW); 송신기가 송출할 유출 데이타가없기 때문에 송신을 중단했을때 들어가게 되는 수신기 중단(RS)이다.
정상 패킷 및 즉시 패킷의 수신을 독립적인 작용으로 다루어진다.
IRA 및 IRW 수신기 상태를 사용한 즉시 패킷의 경우 반 독립적인 수신기 상태가 있다. 리세트 후 뿐만 아니라 즉시 패킷이 수신되지 않아서 아직 인지되지 않은 때에는, 수신기 상태 머신은 IRA 상태를 가진 즉시 모드로 들어가고 패킷을 인지한다. 일단 즉시 모드가 유입되면 수신기 상태 머신은 수신된 즉시 패킷인 인지되었을때까지 즉시 모드(상태 IRA 및 IRW)에서 유지된다. 이때 수신기상태 머신은 최초의 즉시 패킷이 수신된 시간에서 어느 상태가 능동인지에 따라 정상 모드로 돌아간다. 각 세션의 각 방향의 두단부에서 송신기상태 머신 및 수신기상태 머신의 동시적인 동작 때문에, 정상 우선순위 작업에 관계된 패킷은 수신기상태 머신에 도달할 수 있는 반면 즉시 패킷의 처리는 진행중에 있다. 이러한 수신은 즉시 모드 처리가 완료될 때까지 어떠한 다른 정상 모드 동작도 발생하지 않지만 정상 모드 수신기의 상태를 기준으로 하여 취급된다. 이것은 정상 모드 수신기가 RW 상태로 들어가게 될때 이용될 수 있는 수신 버퍼가 적어도 하나(일반적으로 정확히 하나)있어샤 한다는 것을 의미한다.
수신기 상태 머신은 송신 패킷 카운트에 대하여 특정된 값에 무관하게 모든 즉시 패킷에 대한 긍정인지를 발생한다.
수개의 정수값이 메세지 시퀀스를 추적하여 유실 및/또는 복사 패킷을 검출하도록 수신기상태 머신에 의해 유지된다. 이들은 다음의 것을 포함한다.
정상 우선순위 수신을 위해 사용된 현재의 순서번호를 나타내는 n; 수신된 정상 우선순위 패킷과 관련된 것으로서, n보다 순서가 빠르지만 가동중의 전송 패킷 카운트이 범위내에 있는 순서번호를 나타내는 m·(t=1)일때 m=(n-1),t가 1보다 클때 (n-t)가 m보다 작고 m은 (n-1)보다 작거나 같음); 즉시 패킷 수신을 위해 사용된 현재의 순서번호를 나타내는 p; 이러한 가동중의 세션의 방향을 위해 사용중인 송신 패킷 카운트를 나타내는 t; 0 내지 15 범위의 값을 나타내는 x.
이들 번호 사이의 모든 크기 관계는 15에서 0까지의 랩-어라운드(wrap-around)가 크기 증가로 되도록 나타나게끔 구성된다. 이것은 t가 10보다 작아야하기 때문에 불명확하다.
수신기상태 머신은 그것이 송출한 각 패킷의 수신기상태 바이트에서 인지 코드 및 순서번을 사용하는 그것의 상태 천이를 나타낸다. 허용 가능한 인지는 다음의 것을 포함한다.
수신기가 "n-1"을 통해 모든 패킷을 성공적으로 완전히 수신되었고 송신 패킷 카운트에 의해 허용된 적어도 패킷의 번호를 수신할 수 있다는 것을 나타내는 READYn; 수신기가 "n-1"을 통해 모든 패킷을 완전히 성공적으로 수신하였지만 송신 패킷 카운트에 의해 허용된 패킷의 번호를 수신하는데 이용될 수 있는 버퍼가 현재(일시적으로) 불충분하다는 것을 BUSYn; 생생하게 유지된 메세지(순서번호 무시)를 위해 사용된 NOPx.
수신기상태 머신에서 상태 천이를 일으킬 수 있는 사건은 다음의 것을 포함한다.
송신기상태 바이트가 가능형태 DATAFn을 포함하는 패킷의 수신을 표시하는 것으로서, 긍정인지가 필요한 패킷 그룹내의 마지막(또는 유일한)데이타 패킷상에 다음의 예상된 순서값의 도달을 나타내는 "DATAFn"; 송신기상태 바이트가 기능형태 IDLEn을 포함하는 패킷의 수신을 표시하는 것으로서, 송신기가 현재 송출할 추가 데이타를 가지고 있지 않다는 것을 나타내는 "IDLEn"; 송신기상태 바이트가 기능형태 DATAFm을 포함하는 패킷의 수신을 표시하는 것으로서, 송신기상태 머신이 데이타 패킷에 대한 마지막 인지를 성공적으로 수신하지 못했다는 것과 그 송신(및 차후의 송신)의 재시도가 발생하고 있다는 것을 나타내는 "DATAFm"(t=1,m=(n-1)일때, DATAFn-1과 동일함) ; 송신기상태 바이트가 기능형태 DATAIn을 포함하는 패킷의 수신을 표시하는 것으로서, 인지가 전체 그룹이 수신된 후 발생된 데이타 패킷 그룹내의 초기 또는 중간 데이타 패킷상에 다음의 예상순서 값이 도달하였다는 것을(기능형태 DATAFn을 가진 패킷의 수신에 의해 지시되는 경우처럼)나타내는 "DATAIn"(마지막 DATAFn 사건이래로 DATAIn 사건의 번호가 가동중의 송신 패킷 카운트 마이너스 1을 초과할 경우 DATAIn 패킷의 수신은 무시된다) ; 최소한 "+" 자유수신기 패킷 버퍼가 "+" 자유 수신기 버퍼가 이용될 수 있었던 조건후 이용가능하게 되었다는 것을 나타내는 "+수신 버퍼 이용가능"; 재시도 및 생생한 유지와 관계된 타임아웃 간격의 소멸을 표시하는 것으로서, 어떤 패킷이 세션 파트너로 전송될 때마다 이러한 타임아웃이 리세트된다는 것을 나타내는 "T3"; 손실된 통신 또는 프로토콜 위반에 관계된 타임아웃 간격의 소멸을 표시하는 것으로서, 어떤 유효 패킷이 세션 파트너로부터 수신될 때마다 이러한 타임아웃이 리세트된다는 것을 나타내는 "T2".
정상 모드에서 수신기상태 머신의 동작을 제17도에 도시된 표에 그 특징이 나타나 있다. 상기 표내의 각 박스에 대하여, 대문자로된 항목은 수신기상태 바이트에서 지시된 기능을 갖는 패킷의 전송을 나타내고, 소문자로된 항목은 수신기상태 머신내에서의 내부동작을 나타내며, 우측 화살표로 시작하는 항목은 박스내의 작업의 완성시 들어가게 되는 상태를 나타낸다.
수신기상태 머신의 다른 동작 특성은 다음을 포함한다.
하나 이상의 사건이 동시에 계류중인 경우에는 표의 최좌측열에 나타나는 것이 더 우측에 있는 것에 대하여 어떠한 고려가 주어지기 전에 완전히 처리된다. 대부분의 경우 최좌측 사건을 처리하는 것은 이러한 처리가 완료될때 다른 사건이 더이상 계류되고 있지 않게할 것이다. CONTROL COMMAND 또는 CONTROL REPLY 패킷의 수신은 수신기상태 머신이 T2 타이머를 리세트하여 장치의 설비를 처리하는 제어기능으로 패킷을 통과시키게 된다.
수신기상태 머신은 어떠한 다른 행동도 취하지 않고 CONTROL COMMAND 또는 각 CONTROL REPLY를 인지하지 않는다. T3 타임아웃 간격은 도시된 수신기 상태에 따라 변화하고, T2 타임아웃 간격은 항상 일정시간을 갖는다. "NOPx"라는 어떤 송신기상태 메세지(순서번호와 무관)의 수신은 T2 타이머가 리세트되게 하지만, 이와는 달리 수신기상태 머신에 의해 무시된다. 정의된 사건에 의해 포함된 것 이외의 송신기 상태를 갖는 세션 파트너로부터 수신된 모든 패킷은 T2 타이머를 리세트시키지 않고 수신기상태 머신에 의해 무시된다. 이것은 프로토콜 위반에 대한 타임아웃 기준 복구를 발생시킬 것이다. 또한 T2 타이머가 리세트되지 않는다는 것을 특정하는 상태 천이표상에 도시된 에러 조건이 있다. 리세트 또는 세션의 설정시, 수신기상태 머신은 n:=0를 가진 상태 RW로 들어가게 된다.
즉시 모드에서 수신기상태 머신의 동작은 그 특징이 제18도에 도시된 표에 나타나 있다. 상기 표와 각 박스에 대하여 대문자로된 항목은 수신기상태 바이트에서 지시된 기능을 가진 패킷의 전송을 나타내고, 소문자로된 항목은 수신기상태 머신내에서의 내부동작을 나타내며, 우측 화살표로 시작하는 항목은 박스내의 작업의 완성시 들어가게 되는 상태를 나타내며, "Rx"는 즉시 모드 동작의 종료시 들어가기에 적당한 정상 모드상태(RA,RW 또는 RS)를 일컫는다.
즉시 모드에서 수신기상태 머신의 다른 동작 특성은 다음과 같다. CONTROL COMMAND 또는 CONTROL REPLY 패킷은 수신기상태 머신으로 하여금 T2 타이머를 리세트하게 하고 패킷을 장치의 제어기능 처리설비로 통과하게 한다. 수신기상태 머신은 다른 행위를 취하지 않고 CONTROL COMMAND 또는 각 CONTROL REPLY를 인지하지 않는다. T3 타임아웃 간격은 도시된 수신기 상태에 따라 변화하고, T2 타임아웃 간격은 항상 일정하다. 이들 T3 및 T2 타이머는 정상 모드 수신기상태 머신상에서 사용된 것과 동일하다. "NOPx"라는 어떤 송신기 상태 메세지(순서번호에 무관)의 수신은 T2 타이머가 리세트되게 하지만 이와는 달리 수신기상태 머신에 의해 무시된다. 정의된 사건에 의해 포함된 것 이외의 송신기상태를 가진 세션 파트너로부터 수신된 모든 패킷은 T2 타이머를 리세트시키지 않고 수신기상태 머신에 의해 무시된다.
이것은 프로토콜 위반에 대한 타임아웃 기준 복구를 일으킬 것이다. 또한 T2 타이머가 리세트 되지 않는다는 것을 특정하는 상태 천이표상에 도시된 에러조건이 있다. 세션 또는 재동기화의 설정시, 수신기상태 머신은 0으로 초기 설정된 P를 가지고 비가동중으로 세트된다. 즉시 모드로의 유입시 수신기상태 머신은 즉시 모드(또는 재동기화)로부터의 이전이 출구로부터 변화되지 않은 P의 값을 가진 IRA 상태로 들어간다.
IONET 프로토콜 및 상태 머신의 기능을 포함하는 그것의 여러 특징에서 IONET 문자 채널의 전술한 기재로부터, 본 발명으로부터 이용될 수 있는 개선의 중요성을 이해하여야 한다. 그러나, 이러한 기재는 부속 청구범위의 법률적인 범위를 너머 본 발명의 범위를 제한하는 것으로 이해되지 않아야 하는 양호한 실시예에 대한 것이다.

Claims (20)

  1. 채널에 접속된 복수의 물리적으로 분리된 장치, 즉 주 메모리와 프로세서 수단을 가진 컴퓨터 시스템 장치인 적어도 하나의 장치와 입/출력 정보 전달을 수행하기 위한 관련 I/O 장치를 포함하는 적어도 하나의 다른 장치 사이에서 데이타 메세지를 통신하기 입/출력 네트워크 채널에 있어서, 실질적인 물리적 거리 너머로 확장하기 위한 것으로서 장치를 매체로 동작 가능하게 접속하기 위한 복수의 물리적으로 분리된 접속점을 가진 네트워크 통신 매체와; 각각의 개별적인 장치를 매체상의 분리된 접속점에 접속하기 위한 인터페이스 수단을 구비하는데, 그 접속점과 접속된 장치는 노드로서 명명되며; 각 인터페이스 장치는 매체상의 모든 다른 노드로부터 관련 장치가 접속된 특정 노드를 구별하는 소정의 식별 번호를 설정하기 위한 수단, 메세지내의 데이타를 매체를 통해 전송하기 위한 송신기 수단, 데이타 메세지를 매체로부터 수신하기 위한 수신기 수단, 데이타 메세지를 홀드하기 위한 버퍼 수단 및 송신기 수단, 수신기 수단, 버퍼 수단을 동작 가능하게 제어하기 위한 제어기 수단을 구비하며; 상기 제어기 수단은 링크레벨 통신 정보를 각 데이타 메세지의 일부로서 전송하며 각 데이타 메세지의 전송을 식별하는 물리적 레벨 통신 정보를 전송하도록 상기 송신기 수단을 동작적으로 제어하고, 상기 링크레벨 정보는 데이타 메세지 전송을 시작했던 노드를 식별하는 소스 정보 및 데이타 메세지가 목표로하는 노드를 식별하는 행선 정보를 포함하며; 상기 제어기 수단은 물리적 및 링크레벨 정보에 응답하여 버퍼 수단으로 하여금 특정 노드를 명시하는 행선 정보를 가진 데이타 메세지만을 홀드시키게 하도록 추가로 동작하며; 각 I/O 장치를 매체상의 접속점에 동작적으로 상호 접속하는 사용점 수단을 구비하는데, I/O 장치를 포함하는 각 장치는 사용점 수단을 포함하고, 각각의 사용점 수단은 하나의 상기 인터페이스 수단 및 그 인터페이스 수단에 동작 가능하게 접속된 마이크로 컴퓨터 수단을 포함하며; 컴퓨터 시스템 장치의 프로세서 수단과 사용점 수단의 마이크로 컴퓨터 수단은 각각의 관련 인터페이스 수단의 제어기 수단 및 버퍼 수단에 동작 가능하게 접속되고, 상기 피로세서 수단과 마이크로 컴퓨터 수단은 버퍼 수단에 유지된 정보를 해석하여, 송신기 수단과 수신기 수단으로 하여금 각각 송신기상태 머신 및 수신기상태 머신으로 가능하도록 제어기 수단을 제어하고 버퍼 수단에 유지된 데이타 메세지에 포함된 네트워크 레벨 정보에 응답하여 어떤 수정의 동작상태 및 노드 제어기능을 달성하고 버퍼 수단에 유지된 데이타 메세지에 포함된 이송 레벨 정보에 응답하여 소정의 데이타 전송 및 장치 제어 기능을 수행하며 버퍼 수단에 유지된 데이타 메세지에 포함된 세션 레벨 정보에 응답하여 장치내에서 소정의 I/O 장치 제어기능과 바이트 열 데이타 통신 기능을 수행하도록 구성된 것을 특징으로 하는 입/출력 네트워크 채널.
  2. 제1항에 있어서, 통신이 두개의하프 세션으로 이루어진 세션의 결과로서 발생하는데, 제1의 소정의 노드로부터 제2의 소정의 노드로의 데이타 메세지의 전송이 하나의 하프 세션을 형성하고, 제2의 소정의 노드로부터 제1의 소정의 노드로의 응답 데이타 메세지의 전송이 다른 하프 세션을 형성하며; 사용점 수단의 마이크로 컴퓨터 및 각 컴퓨터 시스템 장치의 프로세서 수단은 버퍼 수단에 유지된 데이타 메세지에 포함된 모든 네트워크, 이송 및 세션 레벨 정보의 해석을 동작적으로 제어하는 것을 특징으로 하는 입/출력 네트워크 채널.
  3. 제2항에 있어서, 각각 하나의 하프 세션 전송은 이송 레벨에서 전송된 각 데이타 메세지에 포함된 어떤 다수의 데이타 패킷의 순차적인 순서화를 특정하는 네트워크 레벨에서 순서화 정보를 포함하고; 각각 다른 하프 세션 전송은 상기 하나의 하프 세션 동안 성공적으로 수신되었던 데이타 패킷을 특정하는 인지정보를 포함하는 것을 특징으로 하는 입/출력 네트워크 채널.
  4. 제3항에 있어서, 성공적으로 수신되지 않았던 모든 정보 패킷은 제2의 소정의 노드로부터 수신된 인지 정보에 응답하여 제1의 소정의 노드에 의해 재차 전송되는 것을 특징으로 하는 입/출력 네트워크 채널.
  5. 제3항에 있어서, 제어기능 정보를 포함하는 한 하프 세션동안 전송된 각 데이타 메세지는 다른 세션동안 제어 응답 정보를 포함하는 데이타 메세지의 전송을 일으키며; 제어기능 정보 및 제어응답 정보는 제1 및 제2의 소정의 노드에서 송신기상태 머신을 제어하기 위해서만 해석되는 것을 특징으로 하는 입/출력 네트워크 채널.
  6. 제2항에 있어서, 성공적으로 수신되지 않았던 모든 정보 패킷은 제2의 소정의 노드로부터 아무런 인지 정보도 수신되지 않았던 소정의 기간의 노드로부터 아무런 인지 정보도 수신되지 않았던 소정의 기간의 소멸에 응답하여 제1의 소정의 노드에 의해 재차 전송되는 것을 특징으로 하는 입/출력 네트워크 채널.
  7. 제6항에 있어서, 네트워크 레벨 제어기능 정보는 장치와 관련된 I/O 장치의 형태와 소정의 속성에 대한 정보를 포함하는 제어 응답 정보를 발생케하는 보고 장치 파라미터 제어 명령과; 매체 통신에 관계되는 통계 정보를 포함하는 제어 응답 정보를 발생케하는 보고 통계 제어 명령과; 장치의 인터페이스 제어와 관련 모드 상태에 관계되는 제어 응답 정보를 발생케하는 보고 인터페이스 파라미터 제어 지령과; 제2의 노드에 있는 장치로 하여금 새로운 파라미터 정보를 그것의 메모리에 기억하게 하는 세트 장치 파라미터 제어 지령과; 제2의 소정의 노드에 있는 장치로 하여금 인터페이스 제어 및 관련 모드 상태에 대한 새로운 값들을 세트케하는 세트 인터페이스 파리미터 제어 지령과; 세션을 설정하기 위하여 한 노드에 있는 소정의 행선 장치의 소정의 식별 번호를 결정하도록 시도하는 로케이트 제어 지령 중 적어도 하나를 포함하는 것을 특징으로 하는 입/출력 네트워크 채널.
  8. 제6항에 있어서, 이송 레벨 제어기능 정보는 세션을 설정하는 접속 제어 명령과; 또 다른 상이한 통신 매체와 연결을 위해 장치가 데이타 메세지 순방향자로서 작용케하는 순방향 제어 지령과; 세션을 종료시키는 분리 제어 지령과; 데이타 메세지 전송을 재방향 시키길 원하는 노드로부터 송출된 재방향 제어 지령과; 세션에 참여된 장치들로 하여금 세션의 시작시에 설정된 조건으로 그들의 수신기 및 송신기상태 머신을 리세트시키도록 하는 재동기화 제어지령 중 적어도 하나를 포함하며; 각각의 이송 레벨 제어 정보에 응답하여 발생된 제어 응답 정보는 이송 레벨 기능이 성공적으로 설정되었는지의 여부를 나타내고 그렇지 못한 경우 설정되지 못한 이유를 나타내는 것을 특징으로 하는 입/출력 네트워크 채널.
  9. 제6항에 있어서, 세션 레벨 기능제어 정보는 수신자 장치의 버퍼 수단내의 모든 이전의 정보 패킷 또는 부분적 패킷이 제외되게 하는 플러시 버퍼 제어 지령과; 장치로 하여금 진단 기능과 이러한 진단 기능의 결과에 대한 보고를 수행케 하는 운용 확장 진단 제어 지령과; 장치로 하여금 그 장치의 I/O 인터페이스 상태에 관한 제어 응답 정보를 발생케 하는 보고 상태 제어 지령중 적어도 하나를 포함하는 것을 특징으로 하는 입/출력 네트워크 채널.
  10. 제6항에 있어서, 세션 레벨 바이트열 데이타 통신 기능은 데이타 메세지의 초기 및 중간 데이타 패킷을 전달하는 지령과; 데이타 메세지의 최종 또는 유일한 데이타 패킷을 전달하는 지령과; 수신기상태 머신을 중단 상태로 두는 지령 다른 데이타 메세지의 통신이 없음으로 인하여 세션의 종료를 방지하도록 작동 유지 메세지를 장치로 통신하는데 사용되는 지령중 적어도 하나를 포함하는 것을 특징으로 하는 입/출력 네트워크 채널.
  11. 제6항에 있어서, 제어 응답 정보는 제어기능의 성공적인 완수; 행선 장치에 의한 제어기능의 비보조; 장치에서 수신기 상태로 인한 제어기능의 거부; 장치가 세션에 있지 않기 때문에 제어기능의 거부; 장치가 세션에 있기 때문에 제어기능의 거부; 장치와 관련된 구성 로크가 세트되기 때문에 제어기능의 거부; 및 제어 지령 정보에 특징 에러가 있기 때문에 제어기능의 거부중 적어도 하나를 나타내는 정보를 포함하는 것을 특징으로 하는 입/출력 네트워크 채널.
  12. 제6항에 있어서, 제어 응답 정보는 데이타 메세지가 수신될 수 있을때까지 매체를 통한 제2노드로의 데이타 메세지의 전송을 금지하도록 제1의 소정의 노드에서 마이크로 컴퓨터 수단 또는 프로세서 수단 중 하나에 의해 해석되어 제2의 소정의 노드에 있는 버퍼 수단내의 유지되는 네트워크 레벨에서 정보를 포함하는 것을 특징으로 하는 입/출력 네트워크 채널.
  13. 제6항에 있어서, 마이크로 컴퓨터 수단이 수신된 데이타 메세지내의 소스 정보가 세션을 설정했던 노드에 의해 전송된 소스 정보와 일치하지 않는한 수신된 어떤 데이타 메세지에 응답하여 데이타 메세지의 전송을 동작적으로 금지하는 것을 특징으로 하는 입/출력 네트워크 채널.
  14. 제6항에 있어서, 적어도 하나의 사용점 수단의 마이크로 컴퓨터 수단은 하나의 사용점 수단을 가지고 세션을 시작할 수 있는 각 장치의 소스 정보를 식별하는 패스워드 정보를 포함하며, 한 사용점 수단의 상기 마이크로 컴퓨터 수단은 또한 한 하프 세션동안 수신된 각 데이타 메세지내의 소스 정보가 세션을 개시하도록 패스워드 정보를 공급한 장치의 소스 정보에 대응하지 않는한 데이타 메세지의 전송을 동작적으로 금지하는 것을 특징으로 하는 입/출력 네트워크 채널.
  15. 제14항에 있어서, 한 사용점 수단의 마이크로 컴퓨터 수단은 패스워드 정보가 매체를 통한 메세지의 전송에 의해 변화되는 것을 방지하기 위한 로크 수단을 아울러 구비하는 것을 특징으로 하는 입/출력 네트워크 채널.
  16. 제6항에 있어서, 네트워크 레벨 제어정보는 전송된 데이타 메세지의 명칭에 의해 지정된 장치의 소정의 식별 정보를 결정하도록 시도하는 로케이트 제어 지령을 포함하는 것을 특징으로 하는 입/출력 네트워크 채널.
  17. 제6항에 있어서, 이송 레벨 정보는 장치로 하여금 수신된 데이타 메세지를 상술한 것 이외으 다른 송신 매체상에 전송되게 하는 순방향 제어 지령을 포함하는 것을 특징으로 하는 입/출력 네트워크 채널.
  18. 제6항에 있어서, 네트워크 레벨 제어 정보는 즉시 정보를 포함하는 데이타 메세지의 수신시 즉시 기능응답을 발생하는 즉시 정보를 포함하는 것을 특징으로 하는 입/출력 네트워크 채널.
  19. 제1항에 있어서, 이송 레벨 정보는 세션 레벨 정보를 임의의 길이 관리 데이타 부분과 바이트 열 데이타 부분으로 나누는 정보를 포함하며, 관리 데이타 부분은 소정의 I/O 장치의 소정의 인터페이스 제어 및 상태 기능을 특정하는 정보를 포함하는 것을 특징으로 하는 입/출력 네트워크 채널.
  20. 제1항에 있어서, 상기 제어기 수단은 특정 노드를 명시하는 행선 정보를 포함하는 토큰 메세지의 수신에 응답하여서만 데이타 메세지를 전송하고 또 데이타 메세지의 전송후 매체상에서 노드의 논리 루우프내의 다음 순서 노드를 특정하는 행선 정보를 포함하는 토큰 메세지를 전송하도록 송신기 수단을 동작적으로 제어하는 것을 특징으로 하는 입/출력 네트워크 채널.
KR1019870014267A 1986-12-12 1987-12-12 컴퓨터 시스템용 입/출력 네트워크 KR950014178B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US941084 1986-12-12
US941,084 1986-12-12
US06/941,084 US4941089A (en) 1986-12-12 1986-12-12 Input/output network for computer system

Publications (2)

Publication Number Publication Date
KR880008170A KR880008170A (ko) 1988-08-30
KR950014178B1 true KR950014178B1 (ko) 1995-11-22

Family

ID=25475892

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019870014267A KR950014178B1 (ko) 1986-12-12 1987-12-12 컴퓨터 시스템용 입/출력 네트워크

Country Status (9)

Country Link
US (1) US4941089A (ko)
EP (1) EP0333715B1 (ko)
JP (1) JPH0783365B2 (ko)
KR (1) KR950014178B1 (ko)
AU (1) AU614499B2 (ko)
CA (1) CA1293820C (ko)
DE (1) DE3788355T2 (ko)
DK (1) DK444988A (ko)
WO (1) WO1988004511A1 (ko)

Families Citing this family (141)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4965825A (en) * 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
AU601328B2 (en) * 1988-05-26 1990-09-06 Digital Equipment Corporation Temporary state preservation for a distributed file service
AU599856B2 (en) * 1988-09-08 1990-07-26 Digital Equipment Corporation Local area system transport
US5167035A (en) * 1988-09-08 1992-11-24 Digital Equipment Corporation Transferring messages between nodes in a network
EP0371377A3 (en) * 1988-12-01 1992-04-29 Bull HN Information Systems Inc. A distributed terminal driver protocol
US5263137A (en) * 1989-05-12 1993-11-16 Nec Corporation Syntax converting apparatus for decomposing different portions of a data string differently depending on whether a data string is an external type data string
DE3917715A1 (de) * 1989-05-31 1990-12-06 Teldix Gmbh Rechnersystem
US5430876A (en) * 1989-06-27 1995-07-04 Digital Equipment Corporation Remote procedure callback system and method
US5249293A (en) * 1989-06-27 1993-09-28 Digital Equipment Corporation Computer network providing transparent operation on a compute server and associated method
US5317736A (en) * 1989-07-07 1994-05-31 Bowen Frederic W System for managing information using codes and coded objects
US5265261A (en) * 1989-08-14 1993-11-23 Microsoft Corporation Method and system for network communications using raw mode protocols
US5701427A (en) * 1989-09-19 1997-12-23 Digital Equipment Corp. Information transfer arrangement for distributed computer system
US5301280A (en) * 1989-10-02 1994-04-05 Data General Corporation Capability based communication protocol
JPH03123244A (ja) * 1989-10-06 1991-05-27 Matsushita Electric Ind Co Ltd 通信装置
US5247520A (en) * 1989-10-13 1993-09-21 International Business Machines Corporation Communications architecture interface
US5165022A (en) * 1989-10-23 1992-11-17 International Business Machines Corporation Channel and control unit having a first I/O program protocol for communication with a main processor and a second universal I/O program protocol for communication with a plurality of I/O adapters
US6389010B1 (en) * 1995-10-05 2002-05-14 Intermec Ip Corp. Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US5237693A (en) * 1990-04-04 1993-08-17 Sharp Kabushiki Kaisha System for accessing peripheral devices connected in network
US5150464A (en) * 1990-06-06 1992-09-22 Apple Computer, Inc. Local area network device startup process
JPH077975B2 (ja) * 1990-08-20 1995-01-30 インターナショナル・ビジネス・マシーンズ・コーポレイション データ伝送を制御するためのシステムおよび方法
DE69132236T2 (de) * 1990-08-22 2000-11-30 Sanyo Electric Co Übertragungssteuerungssystem
US5500860A (en) * 1991-06-14 1996-03-19 Digital Equipment Corporation Router using multiple hop redirect messages to enable bridge like data forwarding
US5420862A (en) * 1991-06-14 1995-05-30 Digital Equipment Corporation Router using remote address resolution to enable bridge like data forwarding
US5224098A (en) * 1991-07-17 1993-06-29 International Business Machines Corporation Compensation for mismatched transport protocols in a data communications network
US5247623A (en) * 1991-08-15 1993-09-21 Primax Electronics Ltd. Automatic multiple personal computer/computer printer connecting system
US5371897A (en) * 1991-08-27 1994-12-06 International Business Machines Corporation Method for requesting identification of a neighbor node in a data processing I/O system
US5317744A (en) * 1991-11-15 1994-05-31 The United States Of America As Represented By The Secretary Of The Air Force Method for configuring a computer server to operate with network operating system software to prevent memory address conflicts between workstations
US5351243A (en) * 1991-12-27 1994-09-27 Digital Equipment Corporation Monitor for packets on a communications network
US5805808A (en) * 1991-12-27 1998-09-08 Digital Equipment Corporation Real time parser for data packets in a communications network
US5446866A (en) * 1992-01-30 1995-08-29 Apple Computer, Inc. Architecture for transferring pixel streams, without control information, in a plurality of formats utilizing addressable source and destination channels associated with the source and destination components
US5502726A (en) * 1992-01-31 1996-03-26 Nellcor Incorporated Serial layered medical network
JPH0564947U (ja) * 1992-02-04 1993-08-27 大日本スクリーン製造株式会社 製版用データ処理システム
US5255268A (en) * 1992-02-04 1993-10-19 International Business Data distribution network with improved broadcast feature
US5311515A (en) * 1992-02-07 1994-05-10 Sim Ware, Incorporated Method and apparatus for the control of local area network multi-station access units
US5418939A (en) * 1992-02-20 1995-05-23 International Business Machines Corporation Concurrent maintenance of degraded parallel/serial buses
FR2687878A1 (fr) * 1992-02-21 1993-08-27 Bull Sa Systeme de relais de transport osi entre reseau en mode connecte et un reseau en mode non connecte.
GB2264843B (en) * 1992-02-28 1995-09-20 Texas Instruments Ltd An interface device for coupling a host device having a network interface to a computer network having a predetermined communications medium
US5642515A (en) * 1992-04-17 1997-06-24 International Business Machines Corporation Network server for local and remote resources
ATE207679T1 (de) * 1992-04-20 2001-11-15 3Com Corp Vorrichtung zur netzmittelerweiterung auf entfernte netzwerke
US5278834A (en) * 1992-05-26 1994-01-11 Alcatel Network Systems, Inc. Method for implementing a data communication protocol stack
EP0584027A2 (en) * 1992-08-19 1994-02-23 International Business Machines Corporation Seamless peer-to-peer communications in a layered communications architecture
US5442637A (en) * 1992-10-15 1995-08-15 At&T Corp. Reducing the complexities of the transmission control protocol for a high-speed networking environment
AU5552294A (en) * 1992-11-12 1994-06-08 New Media Corporation Reconfigureable interface between a computer and peripheral devices
GB2273023B (en) * 1992-11-26 1996-05-22 Kim Philip Lyon Token bus protocol number 1
US5325361A (en) * 1992-12-01 1994-06-28 Legent Corporation System and method for multiplexing data transmissions
US7401286B1 (en) 1993-12-02 2008-07-15 Discovery Communications, Inc. Electronic book electronic links
US7298851B1 (en) 1992-12-09 2007-11-20 Discovery Communications, Inc. Electronic book security and copyright protection system
JP3958355B2 (ja) 1992-12-09 2007-08-15 セドナ・パテント・サービシズ・エルエルシー ケーブルテレビ配送システムのためのネットワーク・コントローラ
US7509270B1 (en) 1992-12-09 2009-03-24 Discovery Communications, Inc. Electronic Book having electronic commerce features
US7835989B1 (en) 1992-12-09 2010-11-16 Discovery Communications, Inc. Electronic book alternative delivery systems
US7336788B1 (en) * 1992-12-09 2008-02-26 Discovery Communicatoins Inc. Electronic book secure communication with home subsystem
US8073695B1 (en) 1992-12-09 2011-12-06 Adrea, LLC Electronic book with voice emulation features
US7849393B1 (en) 1992-12-09 2010-12-07 Discovery Communications, Inc. Electronic book connection to world watch live
US5619650A (en) * 1992-12-31 1997-04-08 International Business Machines Corporation Network processor for transforming a message transported from an I/O channel to a network by adding a message identifier and then converting the message
JPH07115428A (ja) * 1993-10-20 1995-05-02 Hitachi Ltd 遠隔電源制御方式
US9053640B1 (en) 1993-12-02 2015-06-09 Adrea, LLC Interactive electronic book
US7865567B1 (en) 1993-12-02 2011-01-04 Discovery Patent Holdings, Llc Virtual on-demand electronic book
US7861166B1 (en) 1993-12-02 2010-12-28 Discovery Patent Holding, Llc Resizing document pages to fit available hardware screens
GB2288955A (en) * 1994-04-25 1995-11-01 Esselte Dymo Nv Communications link module
US5550848A (en) * 1994-05-13 1996-08-27 Lucent Technologies Inc. Signaling protocol for a noisy communications channel
JP3172387B2 (ja) * 1994-06-01 2001-06-04 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 入出力通信サブシステム及び方法
US5903566A (en) * 1994-06-24 1999-05-11 Metricom, Inc. Method for distributing program code to intelligent nodes in a wireless mesh data communication network
US5555374A (en) * 1994-08-26 1996-09-10 Systech Computer Corporation System and method for coupling a plurality of peripheral devices to a host computer through a host computer parallel port
US5588120A (en) * 1994-10-03 1996-12-24 Sanyo Electric Co., Ltd. Communication control system for transmitting, from one data processing device to another, data of different formats along with an identification of the format and its corresponding DMA controller
TW250616B (en) 1994-11-07 1995-07-01 Discovery Communicat Inc Electronic book selection and delivery system
US5668810A (en) * 1995-04-26 1997-09-16 Scientific-Atlanta, Inc. Data transmission protocol method and apparatus
US6006017A (en) * 1995-05-02 1999-12-21 Motorola Inc. System for determining the frequency of repetitions of polling active stations relative to the polling of inactive stations
US5812776A (en) * 1995-06-07 1998-09-22 Open Market, Inc. Method of providing internet pages by mapping telephone number provided by client to URL and returning the same in a redirect command by server
US7272639B1 (en) 1995-06-07 2007-09-18 Soverain Software Llc Internet server access control and monitoring systems
US5629933A (en) * 1995-06-07 1997-05-13 International Business Machines Corporation Method and system for enhanced communication in a multisession packet based communication system
US6067407A (en) * 1995-06-30 2000-05-23 Canon Information Systems, Inc. Remote diagnosis of network device over a local area network
AU7017196A (en) * 1995-09-08 1997-03-27 Next Level Communications Fttc interface circuitry as a physical layer entity
US5926642A (en) 1995-10-06 1999-07-20 Advanced Micro Devices, Inc. RISC86 instruction set
US5774670A (en) * 1995-10-06 1998-06-30 Netscape Communications Corporation Persistent client state in a hypertext transfer protocol based client-server system
US5793983A (en) * 1996-01-22 1998-08-11 International Business Machines Corp. Input/output channel interface which automatically deallocates failed subchannel and re-segments data block for transmitting over a reassigned subchannel
US5778199A (en) * 1996-04-26 1998-07-07 Compaq Computer Corporation Blocking address enable signal from a device on a bus
US7555458B1 (en) 1996-06-05 2009-06-30 Fraud Control System.Com Corporation Method of billing a purchase made over a computer network
US20030195848A1 (en) 1996-06-05 2003-10-16 David Felger Method of billing a purchase made over a computer network
US8229844B2 (en) 1996-06-05 2012-07-24 Fraud Control Systems.Com Corporation Method of billing a purchase made over a computer network
US6377691B1 (en) 1996-12-09 2002-04-23 Microsoft Corporation Challenge-response authentication and key exchange for a connectionless security protocol
US5864674A (en) * 1997-01-03 1999-01-26 At&T Corp. Reconfigurable lan and method of adding clients thereto
US6229821B1 (en) * 1997-04-22 2001-05-08 At&T Corp. Serial data transmission of variable length mini packets using statistical multiplexing
US6088370A (en) 1997-09-22 2000-07-11 Intel Corporation Fast 16 bit, split transaction I/O bus
US6108736A (en) * 1997-09-22 2000-08-22 Intel Corporation System and method of flow control for a high speed bus
US7107371B1 (en) 1997-09-22 2006-09-12 Intel Corporation Method and apparatus for providing and embedding control information in a bus system
US9900305B2 (en) 1998-01-12 2018-02-20 Soverain Ip, Llc Internet server access control and monitoring systems
US6128656A (en) * 1998-09-10 2000-10-03 Cisco Technology, Inc. System for updating selected part of configuration information stored in a memory of a network element depending on status of received state variable
US6339802B1 (en) * 1999-02-19 2002-01-15 International Business Machines Corporation Computer program device and an apparatus for processing of data requests using a queued direct input-output device
JP3148733B2 (ja) * 1999-02-26 2001-03-26 株式会社神戸製鋼所 信号処理装置及び信号処理システム
US6813240B1 (en) 1999-06-11 2004-11-02 Mci, Inc. Method of identifying low quality links in a telecommunications network
US6557038B1 (en) * 1999-06-30 2003-04-29 International Business Machines Corporation Method and apparatus for maintaining session states
JP4115060B2 (ja) * 2000-02-02 2008-07-09 株式会社日立製作所 情報処理システムのデータ復旧方法及びディスクサブシステム
US6842459B1 (en) 2000-04-19 2005-01-11 Serconet Ltd. Network combining wired and non-wired segments
US6728772B1 (en) * 2000-05-12 2004-04-27 International Business Machines Corporation Automatic configuration of a channel-to-channel connection employing channel-to-channel functioning integrated within one or more channels of a computing environment
US6859439B1 (en) 2000-05-12 2005-02-22 International Business Machines Corporation Partition-to-partition communication employing a single channel path with integrated channel-to-channel function
JP4404493B2 (ja) * 2001-02-01 2010-01-27 日本電気株式会社 計算機システム
US20050198379A1 (en) * 2001-06-13 2005-09-08 Citrix Systems, Inc. Automatically reconnecting a client across reliable and persistent communication sessions
US7562146B2 (en) 2003-10-10 2009-07-14 Citrix Systems, Inc. Encapsulating protocol for session persistence and reliability
US20030110208A1 (en) * 2001-09-12 2003-06-12 Raqia Networks, Inc. Processing data across packet boundaries
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
US7661129B2 (en) 2002-02-26 2010-02-09 Citrix Systems, Inc. Secure traversal of network components
US7984157B2 (en) 2002-02-26 2011-07-19 Citrix Systems, Inc. Persistent and reliable session securely traversing network components using an encapsulating protocol
US7542471B2 (en) 2002-10-30 2009-06-02 Citrix Systems, Inc. Method of determining path maximum transmission unit
US8270423B2 (en) 2003-07-29 2012-09-18 Citrix Systems, Inc. Systems and methods of using packet boundaries for reduction in timeout prevention
US7616638B2 (en) 2003-07-29 2009-11-10 Orbital Data Corporation Wavefront detection and disambiguation of acknowledgments
US7630305B2 (en) 2003-07-29 2009-12-08 Orbital Data Corporation TCP selective acknowledgements for communicating delivered and missed data packets
US8233392B2 (en) 2003-07-29 2012-07-31 Citrix Systems, Inc. Transaction boundary detection for reduction in timeout penalties
JP2004171379A (ja) * 2002-11-21 2004-06-17 Hitachi Ltd 送信装置、ビデオカメラ装置、送信装置の送信方法およびビデオカメラ装置の送信方法
AU2003224532A1 (en) * 2003-04-10 2004-11-01 Telefonaktiebolaget Lm Ericsson (Publ) Method and system of retransmission
US8437284B2 (en) 2003-07-29 2013-05-07 Citrix Systems, Inc. Systems and methods for additional retransmissions of dropped packets
US8238241B2 (en) 2003-07-29 2012-08-07 Citrix Systems, Inc. Automatic detection and window virtualization for flow control
US7656799B2 (en) 2003-07-29 2010-02-02 Citrix Systems, Inc. Flow control system architecture
US8432800B2 (en) 2003-07-29 2013-04-30 Citrix Systems, Inc. Systems and methods for stochastic-based quality of service
US7100002B2 (en) * 2003-09-16 2006-08-29 Denali Software, Inc. Port independent data transaction interface for multi-port devices
US7103683B2 (en) * 2003-10-27 2006-09-05 Intel Corporation Method, apparatus, system, and article of manufacture for processing control data by an offload adapter
US7890996B1 (en) 2004-02-18 2011-02-15 Teros, Inc. Using statistical analysis to generate exception rules that allow legitimate messages to pass through application proxies and gateways
US7774834B1 (en) 2004-02-18 2010-08-10 Citrix Systems, Inc. Rule generalization for web application entry point modeling
EP1713003B1 (en) * 2005-04-14 2007-11-21 Agilent Technologies, Inc. Measurement device with measurement data buffer
FR2892070B1 (fr) * 2005-10-13 2009-05-01 Comm Materiel Aeronautiquesicm Siege d'avion a architecture de controle repartie
US8693308B2 (en) 2006-02-10 2014-04-08 Aviat U.S., Inc. System and method for resilient wireless packet communications
US7706266B2 (en) * 2007-03-12 2010-04-27 Citrix Systems, Inc. Systems and methods of providing proxy-based quality of service
US8717910B2 (en) * 2007-04-26 2014-05-06 Cisco Technology, Inc. Field modulation for transfer and measurement of flow statistics
US7756029B2 (en) * 2007-05-24 2010-07-13 Harris Stratex Networks Operating Corporation Dynamic load balancing for layer-2 link aggregation
US8264953B2 (en) 2007-09-06 2012-09-11 Harris Stratex Networks, Inc. Resilient data communications with physical layer link aggregation, extended failure detection and load balancing
US8908700B2 (en) * 2007-09-07 2014-12-09 Citrix Systems, Inc. Systems and methods for bridging a WAN accelerator with a security gateway
US8149431B2 (en) 2008-11-07 2012-04-03 Citrix Systems, Inc. Systems and methods for managing printer settings in a networked computing environment
US20110213897A1 (en) * 2010-02-26 2011-09-01 Qualcomm Incorporated Systems and methods for releasing stale connection contexts
US20110282980A1 (en) * 2010-05-11 2011-11-17 Udaya Kumar Dynamic protection of a resource during sudden surges in traffic
JP5895199B2 (ja) * 2010-12-28 2016-03-30 パナソニックIpマネジメント株式会社 無線装置
US9713093B2 (en) 2011-02-10 2017-07-18 Mediatek Inc. Wireless communication device
US9258030B2 (en) * 2011-02-10 2016-02-09 Mediatek Inc. Wireless communication device
US9369172B2 (en) 2011-02-10 2016-06-14 Mediatek Inc. Wireless communication device
US20120268288A1 (en) * 2011-04-21 2012-10-25 Baker Hughes Incorporated Arcnet use in downhole equipment
EP2725868B1 (en) * 2012-10-24 2017-10-04 BlackBerry Limited System and method for controlling connection timeout in a communication network
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US10019580B2 (en) * 2015-11-19 2018-07-10 Federal Reserve Bank Of Philadelphia Integrity checking for computing devices
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US10154067B2 (en) * 2017-02-10 2018-12-11 Edgewise Networks, Inc. Network application security policy enforcement
US10439985B2 (en) 2017-02-15 2019-10-08 Edgewise Networks, Inc. Network application security policy generation
US10348599B2 (en) 2017-11-10 2019-07-09 Edgewise Networks, Inc. Automated load balancer discovery
CN114422393B (zh) * 2021-12-28 2023-06-13 中国信息通信研究院 用于确定无损网络性能的方法及装置、电子设备、存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2504330A1 (fr) * 1981-04-15 1982-10-22 Philips Ind Commerciale Reseau local de communication decentralise
US4423414A (en) * 1981-08-27 1983-12-27 Burroughs Corporation System and method for name-lookup in a local area network data communication system
JPS58153436A (ja) * 1982-03-08 1983-09-12 Fuji Xerox Co Ltd 誤り再送方式
AU1929483A (en) * 1982-09-30 1984-04-05 Honeywell Information Systems Incorp. High speed serial bus
US4574284A (en) * 1983-01-26 1986-03-04 Trw Inc. Communication bus interface unit
US4692918A (en) * 1984-12-17 1987-09-08 At&T Bell Laboratories Reliable local data network arrangement
US4680581A (en) * 1985-03-28 1987-07-14 Honeywell Inc. Local area network special function frames
US4706080A (en) * 1985-08-26 1987-11-10 Bell Communications Research, Inc. Interconnection of broadcast networks

Also Published As

Publication number Publication date
AU8039487A (en) 1988-06-30
CA1293820C (en) 1991-12-31
JPH0783365B2 (ja) 1995-09-06
AU614499B2 (en) 1991-09-05
DK444988D0 (da) 1988-08-09
DE3788355T2 (de) 1994-05-05
DK444988A (da) 1988-09-20
DE3788355D1 (de) 1994-01-13
US4941089A (en) 1990-07-10
WO1988004511A1 (en) 1988-06-16
EP0333715B1 (en) 1993-12-01
KR880008170A (ko) 1988-08-30
JPH02501787A (ja) 1990-06-14
EP0333715A1 (en) 1989-09-27
EP0333715A4 (en) 1991-01-30

Similar Documents

Publication Publication Date Title
KR950014178B1 (ko) 컴퓨터 시스템용 입/출력 네트워크
US5041963A (en) Local area network with an active star topology comprising ring controllers having ring monitor logic function
US4750109A (en) Method and system for expediting multi-packet messages in a computer network
US6697372B1 (en) Local area network accessory for integrating USB connectivity in existing networks
US4939724A (en) Cluster link interface for a local area network
EP1454440B1 (en) Method and apparatus for providing optimized high speed link utilization
US6115747A (en) Computer network interface that merges remote data received from other computers with local data before transmitting the merged data to a network
JP2510606B2 (ja) ロ−カル エリア デ−タ ディストリビユ−ション システム
US5764895A (en) Method and apparatus for directing data packets in a local area network device having a plurality of ports interconnected by a high-speed communication bus
US20020103947A1 (en) Fly-by serial bus arbitration
EP0355861A1 (en) Industrialized token passing network
EP0755012A2 (en) High speed serial communications link for desktop computer peripherals
JPH0290752A (ja) 複数のデータ処理装置間のデータ転送装置および方法
US5349583A (en) Multi-channel token ring
US5938731A (en) Exchanging synchronous data link control (SDLC) frames to adjust speed of data transfer between a client and server
US5856921A (en) Apparatus and method for intermodular communications using system bus controllers
US5870566A (en) Port expansion network and method for lan hubs
JP2986798B2 (ja) データ伝送制御方法およびデータ通信装置
JP4220208B2 (ja) 確定的フィールドバス及びその種のバスの管理方法
US5051892A (en) Full duplex conversation between transaction programs
US6115391A (en) Method and apparatus for integrating multiple repeaters into a single collision domain
Casale et al. On the implementation of an optical token-ring LAN
RU2068579C1 (ru) Способ доступа абонента к шине данных в вычислительной сети ethernet и устройство для его осуществления
NO174910B (no) Inngangs-/utgangsnettverk for datamaskin
US7046697B2 (en) Fast ethernet multiport repeater

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee