KR20010052182A - 다형 토큰에 기초한 제어 - Google Patents
다형 토큰에 기초한 제어 Download PDFInfo
- Publication number
- KR20010052182A KR20010052182A KR1020007009399A KR20007009399A KR20010052182A KR 20010052182 A KR20010052182 A KR 20010052182A KR 1020007009399 A KR1020007009399 A KR 1020007009399A KR 20007009399 A KR20007009399 A KR 20007009399A KR 20010052182 A KR20010052182 A KR 20010052182A
- Authority
- KR
- South Korea
- Prior art keywords
- token
- network
- computer
- protocol
- computers
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/417—Bus networks with decentralised control with deterministic access, e.g. token passing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/427—Loop networks with decentralised control
- H04L12/433—Loop networks with decentralised control with asynchronous transmission, e.g. token ring, register insertion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/52—Indexing scheme relating to G06F9/52
- G06F2209/522—Manager
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/24—Negotiation of communication capabilities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Small-Scale Networks (AREA)
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
네트워크를 제어하기 위한 프로토콜은 토큰 링 네트워크를 순환한 토큰 내에 캡슐화된다. 토큰을 수신하는 네트워크 내의 각각의 컴퓨터는 토큰을 조사하고, 토큰에 명시된 네트워크 프로토콜을 실시한다. 이와 같이, 네트워크의 프로토콜이 용이하게 변경될 수 있고, 네트워크를 통해 자동적으로 공표된다.
Description
컴퓨터 네트워크에서의 컴퓨터는 흔히 제한된 수의 자원을 공유한다. 공유 자원 간의 액세스를 할당하는 종래 기술의 한가지 방법은, 네트워크 내의 각 컴퓨터에 "토큰"을 순환시켜 전달하는 것을 포함한다. 컴퓨터는 미리, 이 토큰 프로토콜을 사용하여, 토큰의 소유를 가지고 있는 컴퓨터가 언제 자원에 액세스할 수 있는 지를 동의한다. 토큰 전달 알고리즘을 사용하는 네트워크의 가장 흔한 예는 토큰 링 네트워크이다.
토큰 링 네트워크는, 네트워크 매체의 모든 송신 능력(즉, 네트워크 대역폭)이 하나의 신호에 의해 사용된다는 것을 의미하는 기저대역(baseband) 네트워크이다. 한번에 단지 하나의 신호만이 네트워크를 통해 송신될 수 있기 때문에, 토큰 링 네트워크 내의 다수의 컴퓨터는 동시에 송신하여서는 안된다. 이는 토큰 액세스 프로토콜을 사용하여 달성된다.
토큰 액세스 프로토콜에서, 네트워크 내의 컴퓨터는 네트워크 내의 모든 컴퓨터들에 정보 프레임을 계속해서 순환시키는 것에 동의한다. 컴퓨터가 메시지를 송신하고자 하면, 이는 비어있는 프레임을 소유할 때까지 대기하고, 다음에 그 메시지, 목적지 식별자 및 "토큰"을 삽입함으로써 프레임을 수정한다. 토큰은 예를 들어, 단순히, 삽입하는 컴퓨터가 토큰이 존재한다는 것을 가리키는 1 또는 비어있는 프레임을 가리키는 0으로 변하는 프레임 내의 비트 필드일 수 있다.
프레임은 네트워크로 전달됨에 따라 각각의 컴퓨터에 의해 조사된다. 목적지 컴퓨터는 이 프레임으로부터 메시지를 복사하고, 토큰을 제로로 변경한다. 발신 컴퓨터는 프레임을 수신할 때, 토큰이 제로로 설정되었다고 통지함으로써, 그 메시지가 수신되었다는 것을 증명할 수 있다. 발신자는 다음에 프레임으로부터 메시지를 제거하고, 비어있는 프레임을 네트워크 내의 다음 컴퓨터에 전달한다.
비록 종래의 토큰 링 네트워크가 데이타 충돌을 방지하는데 효과적이지만, 몇가지 단점이 있다. 실제로, 토큰 링 네트워크를 구현하기 위해서는, 네트워크 내의 모든 컴퓨터들은 미리 메시지 프레임을 전달하는데 사용되는 적당한 프로토콜을 동의하여야 한다. 이는 예를 들어, 네트워크가 동작가능하게 되기 전에 각각의 컴퓨터가 갱신되어야 하기 때문에, 네트워크 관리자가 토큰 링의 프로토콜을 변경하기를 원한다면 힘들 수 있다.
본 발명은 총체적으로 근거리 네트워크에 관한 것으로, 더 상세하게는 근거리 네트워크에서 토큰 링으로 전달하는 토큰에 관한 것이다.
본 발명에 일체화되고 본 명세서의 일부를 구성하는 첨부 도면들은 본 발명에 따른 몇몇 실시예를 예시하며, 상세한 설명과 함께 본 발명의 원리를 설명하는데 도움이 된다.
도 1은 토큰 링 네트워크의 하이 레벨도.
도 2는 토큰 링 네트워크에 사용되는 컴퓨터의 예시적인 실시예를 도시하는 블럭도.
도 3은 본 발명에 따른 토큰 오브젝트의 실시예를 도시하는 도면.
도 4는 본 발명에 따른 방법을 도시하는 순서도.
본 발명의 목적 및 장점은 부분적으로 이하에 설명되는 상세한 설명에 개진되며, 부분적으로 상세한 설명으로부터 명확하거나 또는 본 발명의 실시에 의해 알 수 있을 것이다. 본 발명의 목적 및 장점은, 첨부하는 특허청구범위에서 특별하게 지적된 구성요소 및 결합에 의해 실현되고 달성될 것이다.
상기 목적을 달성하고 그리고 본 발명의 목적에 따르면, 본 명세서에 예시적으로 그리고 포괄적으로 설명된 바와 같이, 본 발명에 따른 제1 특징은, 복수의 컴퓨터를 구비하는 컴퓨터 네트워크를 제어하기 위한 프로토콜을 갱신하는 방법을 포함하되, 상기 방법이 (1) 프로토콜의 갱신된 버젼을 정의하는 메소드를 포함하는 토큰 오브젝트를 생성하는 단계, (2) 상기 토큰 오브젝트를 네트워크 내의 각각의 컴퓨터에 순차적으로 전달하는 단계, 및 (3) 상기 복수의 컴퓨터 각각에 의해 사용되며, 상기 토큰 오브젝트가 각각의 컴퓨터에 존재하는 한 상기 프로토콜의 상기 갱신된 버젼을 정의하는 메소드를 갖는 프로토콜을 갱신하는 단계를 포함한다.
본 발명에 따른 제2 특징은, 토큰 링 네트워크에 관한 것이다. 이 네트워크는 함께 결합된 복수의 컴퓨터 및 토큰 링 오브젝트를 구비한다. 이 토큰 링 오브젝트는 상기 토큰 링 네트워크를 위한 프로토콜을 정의하는 메소드 및 데이타를 포함하고, 상기 토큰 링 오브젝트는 상기 복수의 컴퓨터의 각각에 순차적으로 전달되고, 상기 복수의 컴퓨터중의 하나가 상기 토큰 링 오브젝트의 소유권을 수신하면, 이는 상기 토큰 링 오브젝트에 의해 정의된 프로토콜이 컴퓨터에 의해 사용중인 프로토콜과는 다를 때, 상기 토큰 링 오브젝트에 의해 정의된 프로토콜을 채택한다.
또한, 본 발명에 따른 제3 특징은 컴퓨터 네트워크를 제어하기 위한 프로토콜을 갱신하는 방법을 포함한다. 이 방법은 (1) 네트워크 내의 제1 컴퓨터에서 토큰 오브젝트를 수신하는 단계; (2) 상기 토큰 오브젝트를 컨설트하고, 상기 토큰 오브젝트가 새로운 프로토콜이 네트워크를 통해 정보를 전송하는데 사용된다는 것을 가리키면, 상기 제1 컴퓨터에 저장된 프로토콜의 구 버젼을 갱신하는 단계, 및 (3) 상기 네트워크 내의 제2 컴퓨터에 상기 토큰 오브젝트를 전송하는 단계를 포함하되, 상기 제2 컴퓨터는 상기 토큰 오브젝트 내의 정보에 기초한다.
또한, 본 발명에 따른 부수적인 특징은 컴퓨터 네트워크를 제어하기 위한 프로토콜을 갱신하는 방법을 포함한다. 이 방법은 (1) 상기 네트워크의 프로토콜을 정의하는 토큰 오브젝트를 수신하는 단계, 및 (2) 상기 토큰 오브젝트에 정의된 프로토콜을 사용하여 상기 오브젝트를 송신하는 단계를 포함한다.
또한, 본 발명에 따른 부수적인 특징은, 네트워크에서 통신할 때 사용될 프로토콜의 표시를 포함하는 토큰을 구비한 컴퓨터 판독가능 메모리 장치를 포함한다.
네트워크 내의 컴퓨터들 간에 전달되는 토큰이 토큰 링 네트워크를 위한 프로토콜 또는 프로토콜의 적어도 일부를 정의하는 토큰 링 네트워크가 개시된다. 토큰을 수신하는 네트워크 내의 각각의 컴퓨터는 토큰을 조사하고, 토큰에 명시된 네트워크 프로토콜을 실시한다. 적당한 허가를 갖는 임의의 컴퓨터는 토큰 내의 프로토콜을 변경하거나 갱신할 수 있고, 그로 인해 전체 네트워크에 대한 프로토콜을 변경할 수 있다.
지금부터 첨부하는 도면에 도시된 예로서 본 발명의 실시예를 상세히 설명한다.
시스템 개관
도 1은 네트워크 매체(120)를 통해 시계 방향으로 토큰 오브젝트를 전달하는 분산된 네개의 컴퓨터(102,104, 106 및 108)로 구성된 토큰 링 네트워크(100)의 하이 레벨 블럭도이다. 토큰 오브젝트는 바람직하게, Javaremote 호출 시스템(JavaRMI)와 같은 일부 형태의 원격 오브젝트 전달 메커니즘을 사용하여 컴퓨터(102-108) 간에 전달된다. 부수적으로, 컴퓨터(102-108) 중의 하나는 보다 큰 토큰 링 네트워크 또는 비 토큰 링 네트워크에 대한 게이트웨이로서 작용할 수 있다. 도 1에 도시한 바와 같이, 컴퓨터(106)는 인터넷 네트워크(110)에의 게으트웨이로서 작용한다.
예시적인 분산 시스템(100)에서, 서로 다른 컴퓨터 및 장치들이 사용자에게 단일 시스템으로 보이는 것에 통합된다. 단일 시스템으로 보이게 함으로써, 분산 시스템(100)은 퍼스널 컴퓨터 또는 워크스테이션의 유연성 및 전용화 응답을 포기하지 않고 단일 시스템에 의해 제공될 수 있는 액세스의 간편성과 공유력을 제공한다. 분산 시스템(100)은 지정학적으로 분산되어 있지만, 신탁, 관리 및 정책의 기본적인 주석을 충족하는 사용자에 의해 운영되는 수많은 장치를 포함할 수 있다.
분산 시스템(100) 내에는 하나의 이상의 장치에 의해 제공되는 서비스의 다양한 논리적 그룹핑이며, 각각의 이와 같은 논리적 그룹핑은 Djinn으로 알려져 있다. "서비스"는 사용자, 프로그램, 장치 또는 다른 서비스에 의해 액세스될 수 있으며,연산, 기억 관련, 통신 관련 또는 다른 사용자에의 액세스를 제공하는 것에 관련될 수 있는 자원, 데이타, 또는 기능을 가리킨다. Djinn의 일부로서 제공된 서비스의 예는 프린터, 디스플레이, 및 디스크와 같은 장치; 및 프로그램 또는 유틸리티와 같은 소프트웨어; 데이타베이스 및 파일과 같은 정보; 및 시스템의 사용자를 포함한다.
사용자 및 장치 모두는 Djinn을 결합할 수 있다. Djinn을 결합하면, 사용자 또는 장치는 Djinn에 제로 이상의 서비스를 부가하며, 보안 제한에 따라 포함하고 있는 서비스중 임의의 서비스를 액세스할 수 있다. 따라서, 장치 및 사용자는 그 서비스에의 액세스를 위해 Djinn에 통합된다. Djinn의 서비스는, 프로그래밍적으로, 다른 오브젝트, 서로 다른 프로그래밍 언어로 작성된 소프트웨어 구성요소 또는 하드웨어 장치를 포함할 수 있는 Java 프로그래밍 환경의 오브젝트로서 보인다. 서비스는 해당 서비스를 요청할 수 있는 연산을 정의하는 인터페이스를 가지고 있으며, 서비스의 종류는 서비스를 구성하는 인터페이스를 결정한다.
지금부터, Java RMI 및 컴퓨터(102-108)과 토큰 링 네트워크(100)와의 그 관계를 도 2를 참조하여 설명한다.
도 2는 분산 시스템(100)의 많은 소프트웨어 구성요소를 상세히 도시하는 컴퓨터(102)를 도시한다. 컴퓨터(102)는 메모리(202), 보조 기억장치(204), 중앙 처리 장치(CPU)(206), 입력 장치(208), 및 비디오 디스플레이(210)를 구비한다. 메모리(202)는 룩업 서비스(212), 디스커버리 서버(214), 및 Java 런타임 시스템(216)을 포함한다. Java 런타임 시스템(216)은 JavaTM원격 메소드 호출(RMI) 시스템(218) 및 Java 버츄얼 머신(220)을 포함한다. 보조 기억장치(204)는 JavaSpaceTM(222)를 포함한다.
예시적인 분산 시스템(100)은 Java 프로그래밍 환경에 기초하며, 따라서 Java 런타임 시스템(216)을 이용한다. Java 런타임 시스템(216)은 Java 런타임 시스템의 상부 상에서 실행하는 프로그램들이 플랫폼에 독립하는 방식으로, 호스트 운영체제의 윈도우잉 능력 및 네트워킹 능력을 포함한 다양한 시스템 기능에 액세스하는 것을 가능하게 하는 자바 API를 포함한다. Java API가 Java 런타임 시스템이 포트되어 있는 모든 운영체제에 걸쳐 단일의 공통 API를 제공하기 때문에, Java 런타임 시스템의 상부 상에서 실행하는 프로그램들은 호스트 플랫폼의 운영 체제 또는 하드웨어 구성에 무관하게 플랫폼에 독립하는 방식으로 실행한다. Java 런타임 시스템(216)은 캘리포니아주, 마운틴 뷰에 위치한 Sun Microsystems, Inc.로부터 입수할 수 있는 Java 소프트웨어 개발 킷의 일부로서 제공된다.
Java 버츄얼 머신(220)은 또한 플랫폼 독립을 용이하게 한다. Java 버츄얼 머신(220)은 바이트코드 형태로 프로그램으로부터 명령을 수신하고, 이들 바이트코드를 오브젝트 코드와 같은 실행 형태로 동적으로 변환하여 이를 실행함으로써 해석하는 추상 컴퓨팅 머신과 같이 행동한다. RMI(218)는 하나의 컴퓨터 또는 장치 상에서 실행하는 오브젝트가 다른 컴퓨터 또는 장치 상에서 실행하는 오브젝트의 메소드를 호출하게 함으로써, 원격 메소드 호출을 용이하게 한다. RMI 및 Java 버츄얼 머신 모두는 또한 Java 소프트웨어 개발 킷의 일부로서 제공된다.
룩업 서비스(212)는 특정 Djinn에 이용가능한 서비스를 정의한다. 즉, 하나 이상의 Djinn, 결국 예시적인 분산 시스템(100) 내에 하나 이상의 룩업 서비스가 존재할 수 있다. 룩업 서비스(212)는 Djinn 내의 각각의 서비스를 위한 하나의 오브젝트를 포함하고, 각각의 오브젝트는 대응하는 서비스에의 액세스를 용이하게 하는 다양한 메소드를 포함한다. 룩업 서비스(212)는 본 발명의 참조로서 일체화되어 있는 "Method and System for Facilitating Access to a Lookuo Service"라는 제목의 현재 계류중인 미국특허출원 제 에 상세히 설명되어 있다.
디스커버리 서버(214)는 부트와 결합 또는 디스커버리라고 하는 프로세스 동안 새로운 장치가 분산 시스템(100)에 부가된 때를 검출하고, 이와 같은 새로운 장치가 검출되면, 디스커버리 서버는 새로운 장치로 룩업 서비스(212)에 대한 참조를 전달함으로써, 새로운 장치가 룩업 서비스에 그 서비스를 등록하여, Djinn의 멤버가 될 수 있게 한다. 등록후에, 새로운 장치는 Djinn의 멤버가 되며, 결국, 룩업 서비스(212)에 포함된 모든 서비스를 액세스할 수 있다. 부트 및 결합의 프로세스는 본 발명의 참조로서 일체화되어 있는 "Apparatus and Method for providing Downlodable Code for Use in Communicating with a Device in a Distributed System"이라는 제목의 미국특허출원 제 호에 설명되어 있다.
JavaSpace(222)는 오브젝트를 저장하는, 분산 시스템(100) 내의 프로그램에 의해 사용되는 오브젝트 저장고이다. 프로그램은 JavaSpace(222)를 사용하여, 예시적인 분산 시스템 내의 다른 장치에 액세스가능하게 하는 것은 물론, 지속적으로 오브젝트를 저장한다. JavaSpace는 본 발명의 참조로 일체화되어 있으며, "Database System Employing Polymorphic Entry and Entry Matching"이라는 제목의 현재 계류중인 미국특허 출원 제08/971,529호(1997년 11월 17일 출원)에 상세히 설명되어 있다. 기술분야의 숙련자는 예시적인 분산 시스템(100)은 많은 룩업 서비스, 디스커버리 서버 및 JavaSpace를 포함할 수 있다는 것을 알 것이다.
비록 본 발명에 따른 시스템 및 방법이 예시적인 분산 시스템 및 Java 프로그래밍 환경에서 동작하는 것으로 설명되지만, 기술분야의 숙련자는 본 발명의 다른 시스템 및 다른 프로그래밍 환경에서 실행될 수 있다는 것을 알 것이다. 부수적으로, 본 발명의 특징이 메모리에 기억되는 것으로 설명되지만, 기술분야의 숙련자는 이와 같은 특징들은 또한 하드 디스크, 플로피 디스크 또는 CD-ROM과 같은 보조 기억 장치와 같은 다른 형태의 컴퓨터 판독 매체; 인터넷으로부터의 반송파 또는 다른 형태의 RAM 또는 ROM 상에 기억되거나 그로부터 판독될 수 있다는 것을 알 것이다. Sun, Sun Microsystems, SunLogo, Java 및 Java에 기초한 상표는 미국 및 다른 국가에 위치한 Sun Microsystems, Inc.의 상표 또는 등록 상표이다.
다형 토큰 링
본 발명에 따른 다형 토큰 링은 종래 기술에 사용되는 토큰 링 네트워크에 사용되는 정적 토큰 프레임 대신에 네트워크 근방에 다형(polymorphic) 토큰 오브젝트를 전달한다. 토큰 오브젝트의 전달은, 바람직하게 Java RMI(이하에 설명함)와 같은 분산 오브젝트 지향 프로그래밍 환경을 사용하여 구현된다. Java RMI는 특히 분산 오브젝트의 자동적 관리, 및 네트워크 상이 머신에서 머신으로의 오브젝트의 전달을 용이하게 하는 능력을 제공하는 한 본 발명에 적합하다.
도 3은 예시적인 토큰(302) 및 토큰 클래스 계층(304)과의 관계를 도시하는 도면이다. 토큰(302)은 바람직하게 오브젝트 데이타 구조를 사용하여 구현되고, 함수(즉, 메소드) 및 데이타를 포함할 수 있다. 본 명세서 전반에 걸쳐 사용된 바와 같이, 그리고 오브젝트 지향 프로그래밍 분야에 일반적으로 사용되는 바와 같이, 클래스는 오브젝트를 정의할 수 있는 템플릿을 지칭한다. 오브젝트는 특정 클래스의 인스턴스이고, 동일한 클래스의 오브젝트를 구별하는 속성 정보를 포함할 수 있다. 오브젝트는 종속하는 클래스로부터 행위를 상속한다. 토큰 오브젝트(302)는 예를 들어," 일반적인(general) 토큰" 클래스(303)로부터 행위를 상속하는 "보안(secure) 토큰" 클래스(305)의 인스턴스이고, 그로부터 행위를 상속한다.
도시한 바와 같이, 토큰 오브젝트(302)는 네트워크 내의 토큰 전달 순서(즉, 시계방향으로)를 정의하는 메소드(들)(310), 고장 컴퓨터에 의해 사용될 디스트리스(distress) 프로토콜을 정의하는 메소드(들)(311), 및 네트워크에 의해 구현될 보안 조치를 정의하는 메소드(들)(313)을 포함한다. 종래 기술의 토큰 링 네트워크에서는, 메소드(310-313)에 의해 정의된 함수를 구현하는 토큰 링 프로토콜은 잘 공지되어 있고, 따라서 이들 메소드에 대한 상세한 설명은 생략한다.
토큰(302)은 또한 메시지 필드(314), 목적지 필드(315), 및 토큰 데이타 필드(316)를 포함하되, 이들 각각은 메시지, 메시지 식별자 및 종래의 토큰 링 네트워크 플레임과 관련하여 상기 설명한 토큰과 직접 유사하다.
토큰 클래스(3030는 "토큰"에 의해 필요한 일반적인 함수를 정의한다. 일반적인 클래스(303)로부터 정의된 클래스 및 오브젝트는 그 함수를 상속한다. 도시한 바와 같이, 토큰 클래스(303)는 메소드(310-312) 및 필드(314-316)를 구현하거나 이를 부분적으로 구현한다. 보안 토큰 클래스(305)는 클래스(303)의 서브클래스이고, 따라서, 클래스(305)는 클래스(305)의 함수를 상속한다. 부수적으로, 서브클래스(305)는 그 자신의 메소드, 및 예를 들어, 네트워크 보안 조치를 정의하는 메소드(들)(313)를 포함한 변수를 정의할 수 있다. 퀵 토큰(306)은 또한 클래스(303)의 서브클래스이다. 퀵 클래스(303)는 예를 들어, 메소드(들)(310)에 정의된 전달 순서를 더 정의하는 메소드(들)(317)을 포함할 수 있다.
동작에서, 네트워크(100) 내의 각 컴퓨터는 수신하는 토큰 오브젝트를 조사하고, 이 조사에 기초하여, 그것이 사용하는 프로토콜을 수정하여 토큰 링 네트워크를 구현한다. 만일 컴퓨터가 네트워크의 토큰 네트워크 프로토콜을 변경시키기를 원하면, 컴퓨터는 단순히, 새로운 메소드를 갱신, 무효화 또는 부가함으로써 이 토큰 오브젝트 내의 메소드를 변경한다. 토큰 오브젝트가 네트워크로 전파함에 따라, 새로운 프로토콜이 구현된다.
도 4는 본 발명에 따른 방법을 도시하는 순서도이다. 바람직하게, 네트워크 무결성을 보장하기 위해, 인가된 컴퓨터만이 토큰 링 네트워크 프로토콜을 수정할 수 있다. 만일 컴퓨터가 프로토콜을 수정하기를 원하고면(단계 402), 적당한 권한을 가지고 있다면(단계 403), 이는 토큰 오브젝트의 제어를 가지고 있을 때 토큰 링 프로토콜을 정의하는 그의 새로운 메소드를 부가 또는 대체함으로써 프로토콜을 수정한다(단계 404). 컴퓨터가 네트워크 프로토콜을 수정하는 권한을 가지고 있을 때마다, 예를 들어, 토큰 내의 필드에 의해 표시되거나 또는 네트워크(100) 내의 컴퓨터에 하드와이어될 수 있다.
토큰 오브젝트를 수신하는 네트워크(100) 내의 각각의 컴퓨터는, 토큰 오브젝트를 컨설트하고, 만일 필요하다면 네트워크 프로토콜의 그 버젼을 갱신한다(단계 405). 다음에 컴퓨터는 토큰을 적절히 조작하고, 이 토큰을 네트워크 내의 다름 컴퓨터에 전달한다(단계 406).
도 4에 도시한 방법의 예로서, 컴퓨터가 클래스(306)의 인스턴스인 퀵 토큰 오브젝트로, 안전 토큰 클래스(305)의 인스턴스인 현재의 토큰 오브젝트를 변경하기를 원한다고 가정한다. 컴퓨터가 토큰 오브젝트를 변경할 권한을 가지고 있다고 가정하면, 보안 토큰 오브젝트를 수신할 때까지 대기하고, 보안 토큰 오브젝트를 퀵 토큰 오브젝트로 대체하고, 적당한 프로토콜을 위해 퀵 토큰 오브젝트를 컨설트한 다음, 이 퀵 토큰 오브젝트를 네트워크 내의 다음 컴퓨터에 전달할 것이다.
비록 본 발명의 바람직한 실시예 및 방법으로 간주되는 것이 예시되고 설명되었지만, 기술분야의 숙련자는 본 발명의 범위를 일탈하지 않고도 다양한 변형과 수정이 있을 있다는 것과 그 구성요소를 등가물로서 대체할 수 있다는 것을 알 것이다. 예를 들어, 상기 시스템 및 방법이 JavaSpace를 이용한 자바에 기초한 런타임 환경을 참조하여 설명되었지만, 다른 런타임 환경 및 공유 메모리가 사용될 수 있다. 또한, 비록 상기 실시예가 토큰 링 네트워크의 문맥에 설명되었지만, 기술분야의 숙련자는 본 발명에 따른 토큰 오브젝트가 네트워크에 의해 사용되는 임의의 토큰 전달 알고리즘에도 동등하게 적용될 수 있다는 것을 알 것이다.
부수적으로, 본 발명의 범위를 일탈하지 않고 본 발명의 가르침에 대한 특정 구성요소, 기법 또는 구현에 맞도록 많은 변형이 이루어질 수 있다. 따라서, 본 발명은 본 명세서에 기술된 특정 실시예 및 방법에 제한되지 않고, 그보다는 본 발명은 첨부하는 특허청구범위의 범위 내에 포괄하는 모든 실시예를 포함하도록 의도되어 있다.
Claims (28)
- 복수의 컴퓨터를 구비하는 컴퓨터 네트워크를 제어하기 위한 자원 할당 프로토콜을 갱신하는 방법에 있어서,상기 프로토콜의 갱신된 버젼을 정의하는 메소드를 포함하는 토큰 오브젝트를 생성하는 단계,상기 토큰 오브젝트를 네트워크 내의 각각의 컴퓨터에 순차적으로 전달하여 상기 컴퓨터 간의 통신을 용이하게 하는 단계, 및상기 복수의 컴퓨터 각각에 의해 사용되며, 상기 토큰 오브젝트가 상기 컴퓨터 중의 하나에 존재하는 동안 상기 프로토콜의 상기 갱신된 버젼을 정의하는 상기 메소드를 갖는 상기 프로토콜을 갱신하는 단계를 포함하는 방법.
- 제1항에 있어서, 상기 토큰 오브젝트를 네트워크 내의 각각의 컴퓨터에 순차적으로 전달하는 단계는, 인가된 컴퓨터에게 상기 토큰 오브젝트의 이전 버젼의 제어가 주어질 때 상기 인가된 컴퓨터에 의해 상기 네트워크 내로 상기 토큰 오브젝트를 도입하는 부 단계를 포함하는 방법.
- 제1항에 있어서, 상기 토큰 오브젝트를 순차적으로 전달하는 단계는, Java 프로그래밍 언어로 정의된 토큰을 송신하는 부 단계를 포함하는 방법.
- 제3항에 있어서, 상기 토큰 오브젝트를 순차적으로 전달하는 단계는, Java 원격 호출 시스템을 사용하여 상기 토큰 오브젝트를 송신하는 부 단계를 더 포함하는 방법.
- 제1항에 있어서, 상기 네트워크 내의 상기 복수의 컴퓨터에 의해 수행되는 프로토콜은 토큰 링 컴퓨터 네트워크를 구현하는 방법.
- 제1항에 있어서, 상기 프로토콜의 갱신된 버젼을 정의하는 상기 메소드를 갖는 상기 토큰 오브젝트를 생성하는 단계는, 상기 네트워크에 대한 새로운 토큰 전달 순서를 정의하는 부 단계를 더 포함하는 방법.
- 토큰 링 네트워크에 있어서,상기 토큰 링 네트워크를 위한 프로토콜을 정의하는 메소드와 데이타를 포함하는 토큰 링 오브젝트, 및복수의 상호접속된 컴퓨터를 구비하되,상기 토큰 링 오브젝트는 상기 복수의 컴퓨터 간의 통신을 용이하게 하기 위해 상기 복수의 컴퓨터 각각에 순차적으로 전달되며,상기 복수의 컴퓨터중의 하나가 상기 토큰 링 오브젝트의 소유원을 수신하면, 상기 토큰 링 오브젝트에 의해 정의된 프로토콜이 상기 컴퓨터에 의해 사용중인 프로토콜과는 다를 때 상기 토큰 링 오브젝트에 의해 정의된 프로토콜을 채택하는 토큰 링 네트워크.
- 제7항에 있어서, 상기 복수의 컴퓨터 각각은, 상기 토큰 오브젝트를 상기 복수의 컴퓨터중의 다른 컴퓨터에 전당하는 원격 오브젝트 전달 메커니즘을 더 포함하는 토큰 링 네트워크.
- 제8항에 있어서, 상기 복수의 컴퓨터 각각은 상기 원격 오브젝트 전달 메커니즘이 구현되는 버츄얼 머신을 더 구비하는 토큰 링 네트워크.
- 컴퓨터 네트워크를 제어하기 위한 프로토콜을 갱신하는 방법에 있어서,상기 네트워크 내의 제1 컴퓨터에서 토큰 오브젝트를 수신하는 단계;상기 토큰 오브젝트를 컨설트(consulting)하고, 상기 토큰 오브젝트가 새로운 프로토콜이 상기 네트워크에 대한 정보를 전송하는데 사용된다는 것을 가리키면, 상기 제1 컴퓨터에 저장된 상기 프로토콜의 구 버젼(older version)을 갱신하는 단계; 및상기 네트워크 내의 제2 컴퓨터에 상기 토큰 오브젝트를 전송하는 단계 - 상기 제2 컴퓨터는 상기 토큰 오브젝트 내의 정보에 기초함-을 포함하는 방법.
- 제10항에 있어서, 상기 네트워크 내에 상기 토큰 오브젝트의 갱신된 버젼을 도입하는 단계를 더 포함하는 방법.
- 제10항에 있어서, 상기 토큰 오브젝트를 전송하는 단계는, Java 원격 호출 시스템을 사용하여 상기 토큰 오브젝트를 전송하는 부 단계를 포함하는 방법.
- 제11항에 있어서, 상기 토큰 오브젝트의 갱신된 버젼을 도입하는 단계는, 상기 네트워크에 대한 새로운 토큰 전송 순서를 정의하는 부 단계를 더 포함하는 방법.
- 컴퓨터들이, 컴퓨터 네트워크를 제어하는데 사용되는 프로토콜을 갱신하게 하는 명령어를 포함하는 컴퓨터 판독가능 매체에 있어서,상기 명령어가 상기 컴퓨터들로 하여금,상기 프로토콜의 갱신된 버젼을 정의하는 메소드를 포함하는 토큰 오브젝트를 생성하는 단계,상기 토큰 오브젝트를 상기 컴퓨터들의 각각에 순차적으로 전달하는 단계; 및상기 컴퓨터들의 각각에 의해 사용되며, 상기 토큰 오브젝트가 상기 각각의 컴퓨터에 존재하는 동안 상기 프로토콜의 상기 갱신된 버젼을 정의하는 상기 메소드를 갖는 상기 프로토콜을 갱신하는 단계를 수행하게 하는 컴퓨터 판독가능 매체.
- 제14항에 있어서, 상기 컴퓨터들로 하여금 상기 토큰 오브젝트를 상기 컴퓨터들의 각각에 순차적으로 전달하는 단계를 수행하게 하는 상기 명령어는, 인가된 컴퓨터에게 상기 토큰 오브젝트의 이전 버젼의 제어가 주어질 때 상기 인가된 컴퓨터에 의해 상기 네트워크 내로 상기 토큰 오브젝트를 도입하는 부 단계를 포함하는 컴퓨터 판독가능 매체.
- 제14항에 있어서, 상기 컴퓨터들이 상기 토큰 오브젝트를 순차적으로 전달하는 단계를 수행하게 하는 상기 명령어는, Java 원격 호출 시스템을 사용하여 상기 토큰 오브젝트를 전송하는 부 단계를 포함하는 컴퓨터 판독가능 매체.
- 제14항에 있어서, 상기 네트워크 내의 상기 복수의 컴퓨터에 의해 수행되는 상기 프로토콜은 토큰 링 컴퓨터 네트워크를 구현하는 컴퓨터 판독가능 매체.
- 제14항에 있어서, 상기 컴퓨터들로 하여금 상기 프로토콜의 갱신된 버젼을 정의하는 메소드를 포함하는 상기 토큰 오브젝트를 생성하는 단계를 수행하게 하는 상기 명령어는, 상기 네트워크에 대한 새로운 토큰 전달 순서를 정의하는 부 단계를 더 포함하는 컴퓨터 판독가능 매체.
- 네트워크 내의 프로토콜을 갱신하는 방법에 있어서,상기 네트워크의 프로토콜을 정의하는 토큰 오브젝트를 수신하는 단계, 및상기 토큰 오브젝트에 정의된 상기 프로토콜을 사용하여 상기 토큰 오브젝트를 송신하는 단계를 포함하는 방법.
- 제19항에 있어서, 상기 수신 단계는, 상기 네트워크 내의 제1 컴퓨터에서 상기 토큰 오브젝트를 수신하는 부 단계를 포함하고,상기 송신 단계는 상기 네트워크 내의 제2 컴퓨터에 상기 오브젝트를 송신하는 부 단계를 포함하는 방법.
- 제19항에 있어서, 상기 토큰 오브젝트를 상기 네트워크 내의 각각의 컴퓨터에 순차적으로 전달하는 단계를 더 포함하는 방법.
- 제19항에 있어서, 상기 토큰 오브젝트의 갱신된 버젼을 상기 네트워크로 도입하는 단계를 더 포함하는 방법.
- 컴퓨터 판독가능 메모리 장치에 있어서,네트워크에서 통신할 때 사용될 프로토콜의 표시를 포함하는 토큰을 구비하는 컴퓨터 판독가능 메모리 장치.
- 제23항에 있어서, 상기 토큰은 오브젝트인 컴퓨터 판독가능 메모리 장치.
- 제23항에 있어서, 상기 토큰은 상기 네트워크 내의 토큰 전달 순서를 정의하는 메소드를 더 포함하는 컴퓨터 판독가능 메모리 장치.
- 제23항에 있어서, 상기 토큰은 네트워크 진단을 정의하는 메소드를 더 포함하는 컴퓨터 판독가능 메모리 장치.
- 제23항에 있어서, 상기 토큰은 메시지 데이타 필드 및 목적지 데이타 필드를 더 포함하는 컴퓨터 판독가능 메모리 장치.
- 제23항에 있어서, 상기 토큰은 상기 네트워크에 대한 보안 절차를 정의하는 메소드를 더 포함하는 컴퓨터 판독가능 메모리 장치.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US7604898P | 1998-02-26 | 1998-02-26 | |
US60/076,048 | 1998-02-26 | ||
US9/044,934 | 1998-03-20 | ||
US09/044,934 US6438614B2 (en) | 1998-02-26 | 1998-03-20 | Polymorphic token based control |
PCT/US1999/004069 WO1999044334A2 (en) | 1998-02-26 | 1999-02-25 | Polymorphic token based control |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20010052182A true KR20010052182A (ko) | 2001-06-25 |
Family
ID=26722180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020007009399A KR20010052182A (ko) | 1998-02-26 | 1999-02-25 | 다형 토큰에 기초한 제어 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6438614B2 (ko) |
EP (1) | EP1072140A2 (ko) |
JP (1) | JP2002505553A (ko) |
KR (1) | KR20010052182A (ko) |
CN (1) | CN1292192A (ko) |
AU (1) | AU2876899A (ko) |
WO (1) | WO1999044334A2 (ko) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6901588B1 (en) * | 2000-04-17 | 2005-05-31 | Codemesh, Inc. | Sharing components between programming languages by use of polymorphic proxy |
EP1514183A2 (en) | 2002-06-20 | 2005-03-16 | BRITISH TELECOMMUNICATIONS public limited company | Distributed computer |
GB0230331D0 (en) | 2002-12-31 | 2003-02-05 | British Telecomm | Method and apparatus for operating a computer network |
GB2405054B (en) * | 2003-08-14 | 2006-05-10 | Siemens Ag | Method of resettting a plurality of connected units |
US7529267B2 (en) * | 2004-03-19 | 2009-05-05 | Fujitsu Limited | Data transmissions in communication networks using multiple tokens |
CN100334856C (zh) * | 2004-08-02 | 2007-08-29 | 华为技术有限公司 | 级联通信网的通信保证方法 |
US7280825B2 (en) * | 2004-12-28 | 2007-10-09 | Live Tv, Llc | Aircraft in-flight entertainment system including low power transceivers and associated methods |
US8776146B2 (en) * | 2004-12-28 | 2014-07-08 | Livetv, Llc | Aircraft in-flight entertainment system including a distributed digital radio service and associated methods |
US7676225B2 (en) * | 2004-12-28 | 2010-03-09 | Livetv, Llc | Area entertainment system including digital radio service and associated methods |
US9509937B2 (en) * | 2004-12-28 | 2016-11-29 | Livetv, Llc | Aircraft in-flight entertainment system with a distributed memory and associated methods |
US7587734B2 (en) * | 2004-12-28 | 2009-09-08 | Livetv, Llc | Aircraft in-flight entertainment system including a registration feature and associated methods |
US7177638B2 (en) * | 2004-12-28 | 2007-02-13 | Live Tv, Llc | Aircraft in-flight entertainment system including digital radio service and associated methods |
CN101472088A (zh) * | 2007-12-25 | 2009-07-01 | 新奥特(北京)视频技术有限公司 | 一种系统间交互方法 |
US9003454B2 (en) * | 2010-06-22 | 2015-04-07 | Livetv, Llc | Registration of a PED with an aircraft IFE system using an aircraft generated registration identifier and associated methods |
US8887260B2 (en) | 2012-10-25 | 2014-11-11 | Facebook, Inc. | Token-based access control |
US9690931B1 (en) | 2013-03-11 | 2017-06-27 | Facebook, Inc. | Database attack detection tool |
US9578032B2 (en) | 2014-08-23 | 2017-02-21 | Vmware, Inc. | Application publishing using memory state sharing |
Family Cites Families (177)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2476349A1 (fr) * | 1980-02-15 | 1981-08-21 | Philips Ind Commerciale | Systeme de traitement de donnees reparti |
US4491946A (en) | 1981-03-09 | 1985-01-01 | Gould Inc. | Multi-station token pass communication system |
AU556499B2 (en) | 1981-05-22 | 1986-11-06 | Data General Corporation | Data processing system |
US4558413A (en) * | 1983-11-21 | 1985-12-10 | Xerox Corporation | Software version management system |
JPH0640302B2 (ja) | 1984-01-30 | 1994-05-25 | 株式会社日立製作所 | 図式・ソ−スプログラム自動生成方法 |
US4823122A (en) | 1984-06-01 | 1989-04-18 | Digital Equipment Corporation | Local area network for digital data processing system |
US4809160A (en) | 1985-10-28 | 1989-02-28 | Hewlett-Packard Company | Privilege level checking instruction for implementing a secure hierarchical computer system |
US4713806A (en) | 1986-03-14 | 1987-12-15 | American Telephone And Telegraph Company, At&T Bell Laboratories | Communication system control arrangement |
US4939638A (en) | 1988-02-23 | 1990-07-03 | Stellar Computer Inc. | Time sliced vector processing |
US5287511A (en) | 1988-07-11 | 1994-02-15 | Star Semiconductor Corporation | Architectures and methods for dividing processing tasks into tasks for a programmable real time signal processor and tasks for a decision making microprocessor interfacing therewith |
US4979105A (en) | 1988-07-19 | 1990-12-18 | International Business Machines | Method and apparatus for automatic recovery from excessive spin loops in an N-way multiprocessing system |
US5133075A (en) | 1988-12-19 | 1992-07-21 | Hewlett-Packard Company | Method of monitoring changes in attribute values of object in an object-oriented database |
US5109486A (en) | 1989-01-06 | 1992-04-28 | Motorola, Inc. | Distributed computer system with network and resource status monitoring |
US5088036A (en) | 1989-01-17 | 1992-02-11 | Digital Equipment Corporation | Real time, concurrent garbage collection system and method |
DE69030340T2 (de) | 1989-02-24 | 1997-11-20 | Digital Equipment Corp | Makler für die Auswahl von Rechnernetzwerkservern |
US5297283A (en) | 1989-06-29 | 1994-03-22 | Digital Equipment Corporation | Object transferring system and method in an object based computer operating system |
US5187787B1 (en) | 1989-07-27 | 1996-05-07 | Teknekron Software Systems Inc | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5257369A (en) | 1990-10-22 | 1993-10-26 | Skeen Marion D | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5557798A (en) | 1989-07-27 | 1996-09-17 | Tibco, Inc. | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5218699A (en) | 1989-08-24 | 1993-06-08 | International Business Machines Corporation | Remote procedure calls in heterogeneous systems |
EP0463172A1 (en) | 1989-12-26 | 1992-01-02 | Fujitsu Limited | Object oriented distributed processing system |
GB2242293A (en) | 1990-01-05 | 1991-09-25 | Apple Computer | Apparatus and method for dynamic linking of computer software components |
AU628753B2 (en) | 1990-08-14 | 1992-09-17 | Digital Equipment Corporation | Method and apparatus for implementing server functions in a distributed heterogeneous environment |
AU639802B2 (en) | 1990-08-14 | 1993-08-05 | Oracle International Corporation | Methods and apparatus for providing dynamic invocation of applications in a distributed heterogeneous environment |
US5446897A (en) | 1990-08-31 | 1995-08-29 | International Business Machines Corporation | Automated address discovery method and apparatus for local area networks |
DE69132279T2 (de) | 1990-09-17 | 2001-01-18 | Cabletron Systems Inc | Verfahren zur Isolierung eines Netzwerkfehlers |
JPH0799497B2 (ja) | 1990-12-14 | 1995-10-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | ソフトウェアの使用を管理するための装置及び方法 |
EP0497022B1 (en) | 1991-01-31 | 1999-04-07 | Hewlett-Packard Company | Conference system |
IE910553A1 (en) | 1991-02-19 | 1992-08-26 | Tolsys Ltd | Improvements in and relating to stable memory circuits |
EP0501610B1 (en) | 1991-02-25 | 1999-03-17 | Hewlett-Packard Company | Object oriented distributed computing system |
EP0501613A3 (en) | 1991-02-28 | 1993-09-01 | Hewlett-Packard Company | Heterogeneous software configuration management apparatus |
US5293614A (en) | 1991-04-08 | 1994-03-08 | Texas Instruments Incorporated | System and method for hard real-time garbage collection requiring a write barrier but no read barrier |
US5481721A (en) | 1991-07-17 | 1996-01-02 | Next Computer, Inc. | Method for providing automatic and dynamic translation of object oriented programming language-based message passing into operation system message passing using proxy objects |
DE4131380A1 (de) | 1991-09-20 | 1993-03-25 | Siemens Ag | Verfahren zur adaption einer objektorientierten applikation |
US5319751A (en) | 1991-12-27 | 1994-06-07 | Intel Corporation | Device driver configuration in a computer system |
US5826017A (en) | 1992-02-10 | 1998-10-20 | Lucent Technologies | Apparatus and method for communicating data between elements of a distributed system using a general protocol |
US5390328A (en) | 1992-03-30 | 1995-02-14 | International Business Machines Corporation | Data processing system and method for providing notification in a central processor of state changes for shared data structure on external storage |
US5553305A (en) | 1992-04-14 | 1996-09-03 | International Business Machines Corporation | System for synchronizing execution by a processing element of threads within a process using a state indicator |
US5353343A (en) | 1992-04-30 | 1994-10-04 | Rockwell International Corporation | Telephonic switching system with a user controlled data memory access system and method |
US5412717A (en) | 1992-05-15 | 1995-05-02 | Fischer; Addison M. | Computer system security method and apparatus having program authorization information data structures |
CA2099918C (en) | 1992-07-06 | 2002-11-19 | Robert G. Atkinson | Method and system for naming and binding objects |
US5307490A (en) | 1992-08-28 | 1994-04-26 | Tandem Computers, Inc. | Method and system for implementing remote procedure calls in a distributed computer system |
JP2524472B2 (ja) | 1992-09-21 | 1996-08-14 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 電話回線利用の音声認識システムを訓練する方法 |
US5423042A (en) | 1992-10-23 | 1995-06-06 | International Business Machines Corporation | Remote procedure execution |
US5561785A (en) | 1992-10-29 | 1996-10-01 | International Business Machines Corporation | System for allocating and returning storage and collecting garbage using subpool of available blocks |
US5515536A (en) | 1992-11-13 | 1996-05-07 | Microsoft Corporation | Method and system for invoking methods of an object through a dispatching interface |
JPH09502547A (ja) | 1992-11-13 | 1997-03-11 | マイクロソフト コーポレイション | 遠隔手続き呼び出しのためのインターフェイスポインタをマーシャリングする方法及びシステム |
US5386568A (en) | 1992-12-01 | 1995-01-31 | Yamaha Corporation | Apparatus and method for linking software modules |
EP0602263A1 (en) | 1992-12-15 | 1994-06-22 | International Business Machines Corporation | User interface program generator |
US5560003A (en) | 1992-12-21 | 1996-09-24 | Iowa State University Research Foundation, Inc. | System and hardware module for incremental real time garbage collection and memory management |
US5452459A (en) | 1993-01-08 | 1995-09-19 | Digital Equipment Corporation | Method and apparatus for allocating server access in a distributed computing environment |
DE69429686T2 (de) | 1993-02-25 | 2003-04-30 | Sun Microsystems Inc | Transaktionsverwaltung in objektorientiertem System |
US5832593A (en) | 1993-04-14 | 1998-11-10 | Minnesota Mining And Manufacturing Company | Splice head for insulated telecommunication wires |
CA2121612A1 (en) | 1993-05-21 | 1994-11-22 | Chung-Hwa Herman Rao | Methods and apparatus for making and using distributed applications |
US5603031A (en) | 1993-07-08 | 1997-02-11 | General Magic, Inc. | System and method for distributed computation based upon the movement, execution, and interaction of processes in a network |
ES2206461T3 (es) | 1993-07-16 | 2004-05-16 | Siemens Aktiengesellschaft | Procedimiento para la coordinacion de accesos paralelos de varios procesadores a configuraciones de recursos. |
US5844553A (en) | 1993-08-30 | 1998-12-01 | Hewlett-Packard Company | Mechanism to control and use window events among applications in concurrent computing |
US5617537A (en) | 1993-10-05 | 1997-04-01 | Nippon Telegraph And Telephone Corporation | Message passing system for distributed shared memory multiprocessor system and message passing method using the same |
CA2118169A1 (en) | 1993-10-27 | 1995-04-28 | Michael R.C. Seaman | Event architecture for system management in an operating system |
US5455952A (en) | 1993-11-03 | 1995-10-03 | Cardinal Vision, Inc. | Method of computing based on networks of dependent objects |
US5742848A (en) | 1993-11-16 | 1998-04-21 | Microsoft Corp. | System for passing messages between source object and target object utilizing generic code in source object to invoke any member function of target object by executing the same instructions |
US5581704A (en) | 1993-12-06 | 1996-12-03 | Panasonic Technologies, Inc. | System for maintaining data coherency in cache memory by periodically broadcasting invalidation reports from server to client |
US5485617A (en) | 1993-12-13 | 1996-01-16 | Microsoft Corporation | Method and system for dynamically generating object connections |
AU6702594A (en) | 1993-12-17 | 1995-07-03 | Taligent, Inc. | Object-oriented distributed communications directory service |
US5548726A (en) | 1993-12-17 | 1996-08-20 | Taligeni, Inc. | System for activating new service in client server network by reconfiguring the multilayer network protocol stack dynamically within the server node |
US5594921A (en) | 1993-12-17 | 1997-01-14 | Object Technology Licensing Corp. | Authentication of users with dynamically configurable protocol stack |
AU1522095A (en) | 1994-01-05 | 1995-08-01 | Peter J. Covey | Dynamic-state, multi-dimensional, multi-media database |
US5832219A (en) | 1994-02-08 | 1998-11-03 | Object Technology Licensing Corp. | Distributed object networking service |
US5845090A (en) * | 1994-02-14 | 1998-12-01 | Platinium Technology, Inc. | System for software distribution in a digital computer network |
US5392280A (en) * | 1994-04-07 | 1995-02-21 | Mitsubishi Electric Research Laboratories, Inc. | Data transmission system and scheduling protocol for connection-oriented packet or cell switching networks |
US5675796A (en) | 1994-04-08 | 1997-10-07 | Microsoft Corporation | Concurrency management component for use by a computer program during the transfer of a message |
US6216138B1 (en) | 1994-04-22 | 2001-04-10 | Brooks Automation Inc. | Computer interface system for automatically generating graphical representations of computer operations linked together according to functional relationships |
US5680617A (en) | 1994-05-16 | 1997-10-21 | Apple Computer, Inc. | Computer-human interface which provides for user customization of object behavior |
DE69533148T2 (de) | 1994-05-26 | 2005-08-25 | Sun Microsystems, Inc., Santa Clara | Verfahren und Gerät zur Erzeugung und Verwendung kurzer Operationsidentifizierer in objektorientierten Systemen |
US5655148A (en) | 1994-05-27 | 1997-08-05 | Microsoft Corporation | Method for automatically configuring devices including a network adapter without manual intervention and without prior configuration information |
US5680573A (en) | 1994-07-12 | 1997-10-21 | Sybase, Inc. | Method of buffering data objects in a database |
US5778228A (en) | 1994-08-16 | 1998-07-07 | International Business Machines Corporation | Method and system for transferring remote procedure calls and responses over a network |
US5922054A (en) | 1994-08-19 | 1999-07-13 | Canon Kabushiki Kaisha | System for managing external applications and files |
US5555367A (en) | 1994-09-30 | 1996-09-10 | General Electric Company | Method and system for generating computer programs for queries formed by manipulating object-oriented diagrams |
JP4058118B2 (ja) | 1994-11-15 | 2008-03-05 | 株式会社日立製作所 | プログラム生成システム及び方法 |
US5577231A (en) | 1994-12-06 | 1996-11-19 | International Business Machines Corporation | Storage access authorization controls in a computer system using dynamic translation of large addresses |
US5644768A (en) | 1994-12-09 | 1997-07-01 | Borland International, Inc. | Systems and methods for sharing resources in a multi-user environment |
US5553282A (en) | 1994-12-09 | 1996-09-03 | Taligent, Inc. | Software project history database and method of operation |
EP0717337B1 (en) | 1994-12-13 | 2001-08-01 | International Business Machines Corporation | Method and system for the secured distribution of programs |
US5677851A (en) | 1994-12-15 | 1997-10-14 | Novell, Inc. | Method and apparatus to secure digital directory object changes |
US5608903A (en) | 1994-12-15 | 1997-03-04 | Novell, Inc. | Method and apparatus for moving subtrees in a distributed network directory |
US5630066A (en) | 1994-12-20 | 1997-05-13 | Sun Microsystems, Inc. | System and method for locating object view and platform independent object |
US5872928A (en) | 1995-02-24 | 1999-02-16 | Cabletron Systems, Inc. | Method and apparatus for defining and enforcing policies for configuration management in communications networks |
US5727203A (en) | 1995-03-31 | 1998-03-10 | Sun Microsystems, Inc. | Methods and apparatus for managing a database in a distributed object operating environment using persistent and transient cache |
EP0735472A3 (en) | 1995-03-31 | 2000-01-19 | Sun Microsystems, Inc. | Method and apparatus for conspiracy among objects |
US5812819A (en) | 1995-06-05 | 1998-09-22 | Shiva Corporation | Remote access apparatus and method which allow dynamic internet protocol (IP) address management |
US5628005A (en) | 1995-06-07 | 1997-05-06 | Microsoft Corporation | System and method for providing opportunistic file access in a network environment |
US5903731A (en) * | 1995-06-14 | 1999-05-11 | Us West Technologies, Inc. | System and associated method for re-engineering a telecommunications network support system with object-oriented translators |
US5761656A (en) | 1995-06-26 | 1998-06-02 | Netdynamics, Inc. | Interaction between databases and graphical user interfaces |
US5802367A (en) | 1995-07-07 | 1998-09-01 | Microsoft Corporation | Method and system for transparently executing code using a surrogate process |
US5745703A (en) | 1995-07-18 | 1998-04-28 | Nec Research Institute, Inc. | Transmission of higher-order objects across a network of heterogeneous machines |
US5774551A (en) | 1995-08-07 | 1998-06-30 | Sun Microsystems, Inc. | Pluggable account management interface with unified login and logout and multiple user authentication services |
US5956509A (en) | 1995-08-18 | 1999-09-21 | Microsoft Corporation | System and method for performing remote requests with an on-line service network |
JPH0962526A (ja) | 1995-08-28 | 1997-03-07 | Fujitsu Ltd | 耐故障型rpcシステムおよび方法 |
JP2964926B2 (ja) | 1995-08-29 | 1999-10-18 | 富士ゼロックス株式会社 | データベース管理装置及び方法 |
US5671225A (en) | 1995-09-01 | 1997-09-23 | Digital Equipment Corporation | Distributed interactive multimedia service system |
US5737607A (en) | 1995-09-28 | 1998-04-07 | Sun Microsystems, Inc. | Method and apparatus for allowing generic stubs to marshal and unmarshal data in object reference specific data formats |
US5765174A (en) | 1995-10-06 | 1998-06-09 | Sun Microsystems, Inc. | System amd method for distributed object resource management |
US5864862A (en) | 1996-09-30 | 1999-01-26 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for creating reusable components in an object-oriented programming environment |
US5872973A (en) | 1995-10-26 | 1999-02-16 | Viewsoft, Inc. | Method for managing dynamic relations between objects in dynamic object-oriented languages |
US5860153A (en) | 1995-11-22 | 1999-01-12 | Sun Microsystems, Inc. | Memory efficient directory coherency maintenance |
US5692047A (en) | 1995-12-08 | 1997-11-25 | Sun Microsystems, Inc. | System and method for executing verifiable programs with facility for using non-verifiable programs from trusted sources |
US6067575A (en) | 1995-12-08 | 2000-05-23 | Sun Microsystems, Inc. | System and method for generating trusted, architecture specific, compiled versions of architecture neutral programs |
US6003763A (en) | 1995-12-29 | 1999-12-21 | Visa International Service | Method and apparatus for recording magnetic information on traveler's checks |
US5745695A (en) | 1996-01-16 | 1998-04-28 | Motorola Inc. | Radio system with suspension of packet data service during non-data service connection |
US5754849A (en) | 1996-01-30 | 1998-05-19 | Wayfarer Communications, Inc. | Self-describing object providing dynamic manipulation of heterogeneous data values and semantic identity between memory and transmission representations |
US5946485A (en) | 1996-02-09 | 1999-08-31 | Intervoice Limited Partnership | Enhanced graphical development environment for controlling program flow |
CA2199108C (en) | 1996-03-05 | 2002-04-23 | Hirotoshi Maegawa | Parallel distributed processing system and method of same |
US5845129A (en) | 1996-03-22 | 1998-12-01 | Philips Electronics North America Corporation | Protection domains in a single address space |
US5706502A (en) | 1996-03-25 | 1998-01-06 | Sun Microsystems, Inc. | Internet-enabled portfolio manager system and method |
US5790548A (en) | 1996-04-18 | 1998-08-04 | Bell Atlantic Network Services, Inc. | Universal access multimedia data network |
US5815709A (en) | 1996-04-23 | 1998-09-29 | San Microsystems, Inc. | System and method for generating identifiers for uniquely identifying object types for objects used in processing of object-oriented programs and the like |
US6938263B2 (en) | 1996-04-23 | 2005-08-30 | Sun Microsystems, Inc. | System and method for facilitating dynamic loading of “stub” information to enable a program operating in one address space to invoke processing of a remote method or procedure in another address space |
US6226746B1 (en) * | 1998-03-20 | 2001-05-01 | Sun Microsystems, Inc. | Stack-based system and method to combine security requirements of methods |
US6185611B1 (en) * | 1998-03-20 | 2001-02-06 | Sun Microsystem, Inc. | Dynamic lookup service in a distributed system |
US5978484A (en) | 1996-04-25 | 1999-11-02 | Microsoft Corporation | System and method for safety distributing executable objects |
EP0805393B1 (en) | 1996-04-30 | 2011-11-09 | International Business Machines Corporation | Method and apparatus for managing membership of a group of processors in a distributed computing environment |
US5778368A (en) | 1996-05-03 | 1998-07-07 | Telogy Networks, Inc. | Real-time embedded software respository with attribute searching apparatus and method |
US5778187A (en) | 1996-05-09 | 1998-07-07 | Netcast Communications Corp. | Multicasting method and apparatus |
US5835737A (en) | 1996-05-10 | 1998-11-10 | Apple Computer, Inc. | Method and apparatus for arbitrating access to selected computer system devices |
US5889951A (en) | 1996-05-13 | 1999-03-30 | Viewpoint Corporation | Systems, methods, and computer program products for accessing, leasing, relocating, constructing and modifying internet sites within a multi-dimensional virtual reality environment |
US5928323A (en) | 1996-05-30 | 1999-07-27 | Sun Microsystems, Inc. | Apparatus and method for dynamically generating information with server-side software objects |
US5813013A (en) | 1996-06-06 | 1998-09-22 | Microsoft Corporation | Representing recurring events |
US5768532A (en) | 1996-06-17 | 1998-06-16 | International Business Machines Corporation | Method and distributed database file system for implementing self-describing distributed file objects |
JP3488019B2 (ja) | 1996-06-17 | 2004-01-19 | 株式会社山武 | 制御設計用コンフィギュレーション・ツールの部品再利用方法 |
US5727145A (en) | 1996-06-26 | 1998-03-10 | Sun Microsystems, Inc. | Mechanism for locating objects in a secure fashion |
US6044409A (en) | 1996-06-26 | 2000-03-28 | Sun Microsystems, Inc. | Framework for marshaling and unmarshaling argument object references |
US5991823A (en) | 1996-06-26 | 1999-11-23 | Sun Microsystems, Inc. | Low overhead object adaptor |
SG67354A1 (en) | 1996-06-27 | 1999-09-21 | Inst Of Systems Science Nation | Computationally efficient method for trusted and dynamic digital objects dissemination |
US5809507A (en) | 1996-07-01 | 1998-09-15 | Sun Microsystems, Inc. | Method and apparatus for storing persistent objects on a distributed object network using a marshaling framework |
US6360256B1 (en) | 1996-07-01 | 2002-03-19 | Sun Microsystems, Inc. | Name service for a redundant array of internet servers |
US5818448A (en) | 1996-07-02 | 1998-10-06 | Sun Microsystems, Inc. | Apparatus and method for identifying server computer aggregation topologies |
US5748897A (en) | 1996-07-02 | 1998-05-05 | Sun Microsystems, Inc. | Apparatus and method for operating an aggregation of server computers using a dual-role proxy server computer |
US5949998A (en) | 1996-07-03 | 1999-09-07 | Sun Microsystems, Inc. | Filtering an object interface definition to determine services needed and provided |
US5860004A (en) | 1996-07-03 | 1999-01-12 | Sun Microsystems, Inc. | Code generator for applications in distributed object systems |
US5757925A (en) | 1996-07-23 | 1998-05-26 | Faybishenko; Yaroslav | Secure platform independent cross-platform remote execution computer system and method |
US5875335A (en) | 1996-09-30 | 1999-02-23 | Apple Computer, Inc. | Parameter marshaling techniques for dynamic object-oriented programming languages |
US5787425A (en) | 1996-10-01 | 1998-07-28 | International Business Machines Corporation | Object-oriented data mining framework mechanism |
US5974201A (en) * | 1996-10-01 | 1999-10-26 | Siemens Corporate Research, Inc. | Smart image system |
US5832529A (en) | 1996-10-11 | 1998-11-03 | Sun Microsystems, Inc. | Methods, apparatus, and product for distributed garbage collection |
US5944793A (en) | 1996-11-21 | 1999-08-31 | International Business Machines Corporation | Computerized resource name resolution mechanism |
US5987506A (en) | 1996-11-22 | 1999-11-16 | Mangosoft Corporation | Remote access and geographically distributed computers in a globally addressable storage environment |
US5892904A (en) | 1996-12-06 | 1999-04-06 | Microsoft Corporation | Code certification for network transmission |
US5884024A (en) | 1996-12-09 | 1999-03-16 | Sun Microsystems, Inc. | Secure DHCP server |
US5787431A (en) | 1996-12-16 | 1998-07-28 | Borland International, Inc. | Database development system with methods for java-string reference lookups of column names |
US5933647A (en) * | 1997-01-24 | 1999-08-03 | Cognet Corporation | System and method for software distribution and desktop management in a computer network environment |
US6052761A (en) * | 1997-01-31 | 2000-04-18 | Hewlett-Packard Company | Increment update in an SCI based system |
US5913029A (en) | 1997-02-07 | 1999-06-15 | Portera Systems | Distributed database system and method |
US5815149A (en) | 1997-02-19 | 1998-09-29 | Unisys Corp. | Method for generating code for modifying existing event routines for controls on a form |
US5935249A (en) | 1997-02-26 | 1999-08-10 | Sun Microsystems, Inc. | Mechanism for embedding network based control systems in a local network interface device |
US6061713A (en) | 1997-03-12 | 2000-05-09 | Fujitsu Limited | Communications system for client-server data processing systems |
US5864866A (en) | 1997-03-26 | 1999-01-26 | International Business Machines Corporation | Apparatus and method for providing externalization in an object-oriented environment |
US5890158A (en) | 1997-03-31 | 1999-03-30 | International Business Machines Corporation | Method, apparatus, and program storage device for sharing objects with a network server and a database server using a common object model |
US5999988A (en) * | 1997-03-31 | 1999-12-07 | Sun Microsystems, Inc. | Method and apparatus for generating and employing a run-time generated stub to reference an object in object oriented systems |
US6247091B1 (en) * | 1997-04-28 | 2001-06-12 | International Business Machines Corporation | Method and system for communicating interrupts between nodes of a multinode computer system |
US6282295B1 (en) | 1997-10-28 | 2001-08-28 | Adam Lucas Young | Auto-recoverable and auto-certifiable cryptostem using zero-knowledge proofs for key escrow in general exponential ciphers |
US5808911A (en) | 1997-06-19 | 1998-09-15 | Sun Microsystems, Inc. | System and method for remote object resource management |
US5878411A (en) | 1997-06-27 | 1999-03-02 | International Business Machines Corporation | Dependent object class and subclass mapping to relational data store |
US5887134A (en) | 1997-06-30 | 1999-03-23 | Sun Microsystems | System and method for preserving message order while employing both programmed I/O and DMA operations |
CA2210755C (en) * | 1997-07-17 | 2003-12-23 | Ibm Canada Limited - Ibm Canada Limitee | Creating proxies for distribution of beans and event objects |
US5946694A (en) | 1997-09-29 | 1999-08-31 | International Business Machines Corporation | Apparatus and method for transparent application of service to business objects |
US5951652A (en) * | 1997-10-06 | 1999-09-14 | Ncr Corporation | Dependable data element synchronization mechanism |
US6061699A (en) | 1997-11-03 | 2000-05-09 | International Business Machines Corporation | Method and computer program product for extracting translatable material from browser program function codes using variables for displaying MRI |
US5999179A (en) | 1997-11-17 | 1999-12-07 | Fujitsu Limited | Platform independent computer network management client |
US6016496A (en) | 1997-11-20 | 2000-01-18 | International Business Machines Corporation | Method and apparatus for an object-oriented object for retrieving information from local and remote databases |
US6009103A (en) | 1997-12-23 | 1999-12-28 | Mediaone Group, Inc. | Method and system for automatic allocation of resources in a network |
US5963947A (en) | 1998-01-27 | 1999-10-05 | International Business Machines Corporation | Technique of dynamically adding functionality from a client to manipulated data at a server |
US6023586A (en) | 1998-02-10 | 2000-02-08 | Novell, Inc. | Integrity verifying and correcting software |
US6026414A (en) | 1998-03-05 | 2000-02-15 | International Business Machines Corporation | System including a proxy client to backup files in a distributed computing environment |
US6185602B1 (en) * | 1998-06-29 | 2001-02-06 | Sony Corporation | Multi-user interaction of multimedia communication |
US6108346A (en) * | 1998-08-27 | 2000-08-22 | Xiox Corporation | Combined synchronous and asynchronous message transmission |
US6282568B1 (en) * | 1998-12-04 | 2001-08-28 | Sun Microsystems, Inc. | Platform independent distributed management system for manipulating managed objects in a network |
-
1998
- 1998-03-20 US US09/044,934 patent/US6438614B2/en not_active Expired - Lifetime
-
1999
- 1999-02-25 JP JP2000533981A patent/JP2002505553A/ja active Pending
- 1999-02-25 AU AU28768/99A patent/AU2876899A/en not_active Abandoned
- 1999-02-25 EP EP99909596A patent/EP1072140A2/en not_active Withdrawn
- 1999-02-25 CN CN99803346A patent/CN1292192A/zh active Pending
- 1999-02-25 WO PCT/US1999/004069 patent/WO1999044334A2/en not_active Application Discontinuation
- 1999-02-25 KR KR1020007009399A patent/KR20010052182A/ko not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
JP2002505553A (ja) | 2002-02-19 |
WO1999044334A3 (en) | 1999-11-11 |
EP1072140A2 (en) | 2001-01-31 |
US6438614B2 (en) | 2002-08-20 |
AU2876899A (en) | 1999-09-15 |
CN1292192A (zh) | 2001-04-18 |
WO1999044334A2 (en) | 1999-09-02 |
US20010042091A1 (en) | 2001-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6226746B1 (en) | Stack-based system and method to combine security requirements of methods | |
US6134603A (en) | Method and system for deterministic hashes to identify remote methods | |
US6282652B1 (en) | System for separately designating security requirements for methods invoked on a computer | |
US6138238A (en) | Stack-based access control using code and executor identifiers | |
US6983285B2 (en) | Apparatus and method for dynamically verifying information in a distributed system | |
US7793289B1 (en) | System accounting for operating system partitions | |
US5566302A (en) | Method for executing operation call from client application using shared memory region and establishing shared memory region when the shared memory region does not exist | |
US6629154B1 (en) | Method and system for deterministic hashes to identify remote methods | |
US6434694B1 (en) | Security for platform-independent device drivers | |
KR20010052182A (ko) | 다형 토큰에 기초한 제어 | |
US20040226023A1 (en) | Interprocess communication within operating system partitions | |
US20020199036A1 (en) | Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system | |
JP2002505466A (ja) | 遠隔メソッド呼出し方法及び装置 | |
JP2002505461A (ja) | 事象ベース分散システムにおけるトランスポート処理方法及び装置 | |
KR20010041294A (ko) | 분산 시스템에서 동적 룩업 서비스 | |
US7089263B2 (en) | Apparatus and method for dynamically verifying information in a distributed system | |
WO1999044134A1 (en) | Method and system for facilitating access to a lookup service | |
EP1057110A2 (en) | Stack-based security requirements | |
EP1058880A1 (en) | Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |