KR20070001973A - 클라이언트 측 통신 프로토콜 스택 구성 방법, 프로세스 간통신 프로토콜 구성 시스템 및 머신 판독가능한 저장 장치 - Google Patents

클라이언트 측 통신 프로토콜 스택 구성 방법, 프로세스 간통신 프로토콜 구성 시스템 및 머신 판독가능한 저장 장치 Download PDF

Info

Publication number
KR20070001973A
KR20070001973A KR1020067017210A KR20067017210A KR20070001973A KR 20070001973 A KR20070001973 A KR 20070001973A KR 1020067017210 A KR1020067017210 A KR 1020067017210A KR 20067017210 A KR20067017210 A KR 20067017210A KR 20070001973 A KR20070001973 A KR 20070001973A
Authority
KR
South Korea
Prior art keywords
protocol stack
client
side protocol
client side
server
Prior art date
Application number
KR1020067017210A
Other languages
English (en)
Other versions
KR100920595B1 (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 KR20070001973A publication Critical patent/KR20070001973A/ko
Application granted granted Critical
Publication of KR100920595B1 publication Critical patent/KR100920595B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0853Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • H04L41/0869Validating the configuration within one network element
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • 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
    • 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
    • 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/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • 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/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Abstract

본 발명은 클라이언트 측 통신 프로토콜 스택을 구성하는 방법 및 시스템에 관한 것이다. 한 방법에서, 서버 측 프로토콜 스택 예 내의 프로토콜 스택 요소 세트에 대응하는 클라이언트 측 프로토콜 스택 요소 세트를 결정하는 데 매핑이 참조될 수 있다. 이어서, 결정된 클라이언트 측 프로토콜 스택 요소 세트의 목록이 생성될 수 있다. 최종적으로, 외부에 배치된 클라이언트 연산 프로세스에 의한 액세스를 위해 이 목록이 공표될 수 있다. 바람직하게, 이 목록은 반전될 수 있다. 또한, 참조하는 단계는 클라이언트 측 프로토콜 스택이 서버 측 프로토콜 스택 예와 상호 연동하는 것이 가능할 때 적어도 하나의 클라이언트 측 프로토콜 스택 요소에 적용되는 적어도 하나의 속성을 결정하는 단계를 더 포함할 수 있다.

Description

클라이언트 측 통신 프로토콜 스택 구성 방법, 프로세스 간 통신 프로토콜 구성 시스템 및 머신 판독가능한 저장 장치{SERVER-SIDE PROTOCOL CONFIGURATION OF ACCESSING CLIENTS}
본 발명은 프로세스 간 통신(inter-process communication) 분야에 관한 것으로, 보다 구체적으로 서버 프로세스와 통신하는 클라이언트 프로세스 구성에 관한 것이다.
프로세스 간 통신은 2개 이상의 연산 프로세스 간의 정보 교환과 관련이 있는데, 이들 프로세스는 단일 연산 장치 내에 함께 배치되거나, 컴퓨터 통신 네트워크 주위에 서로 원격으로 배치된다. 전형적으로, 개별 연산 프로세스는 정보를 교환할 목적으로 설정된 통신 링크를 통해 서로 통신할 수 있다. 대부분의 경우에, 통신 링크를 설정하는 동안 또는 이전에 결정된 공용 통신 프로토콜을 사용하여 정보를 교환할 수 있다.
다수의 경우에, 정보 교환을 위해 2개 이상의 연산 프로세스에 의해 이용되는 공용 통신 프로토콜은 통신 링크를 설정하려는 임의의 시도가 이루어지기 전에 사전결정될 수 있다. 예컨대, 인터넷 환경에서, 웹콘텐츠는 TCP/IP를 통해 HTTP(hypertext transfer protocol)를 이용하여 콘텐츠 서버와 콘텐츠 브라우저 사이에서 교환될 수 있다. 또한, 통신 프로토콜은 반드시 물리 네트워크 층에 기반한 데이터 교환으로 한정되는 것은 아니다. 오히려, 통신 프로토콜은 2개 이상의 연산 프로세스 간의 정보 교환을 허용하는 데 필요한 통신 구성 및 실행 집합체를 포함할 수 있다. 이 점에 있어서, 통신 프로토콜은 프로세스 사이에서 데이터를 전달하는 메커니즘뿐만 아니라, 일부를 명명하기 위한 암호화, 압축과 같은 부수적인 설정과 실행 및 터널링 프로토콜도 포함할 수 있다.
어떤 경우에, 통신 프로토콜은 클라이언트 연산 프로세스와 서버 연산 프로세스 사이에서처럼 사전결정되지 않았을 것이다. 특히, 하나의 서버 연산 프로세스가 다수의 다른 통신 프로토콜을 사용하여 복수의 클라이언트 연산 프로세스와 통신하도록 구성되는 경우에, 어떤 연산 프로세스가 클라이언트와 서버 사이에서 임의의 한 세션을 이용하는지 사전결정될 수 없다. 이에 따라, 흔히 클라이언트 연산 프로세스가 프로세스의 시행착오를 통해 적합한 통신 프로토콜을 선택하게 된다. 구체적으로, 전형적인 경우에, 클라이언트 프로세스는 복수의 가능한 통신 프로토콜 표를 포함할 수 있다. 이처럼, 클라이언트 프로세스는 통신 링크가 성공적으로 설정될 때까지 각각의 가능한 통신 프로토콜을 사용하는 서버 프로세스와의 통신 링크를 설정하려 할 수 있다.
상술한 서버 프로세스 간의 통신 링크를 설정하는 프로세스는 궁극적으로 통신 링크가 알려진 통신 프로토콜 중 하나를 사용하여 설정될 수 있다면 효과적일 수 있다. 또한, 당업자는 통신 링크 설정시에 최종적으로 선택되는 통신 프로토콜이 아닌 다른 특정 통신 프로토콜을 사용하여 통신 링크를 설정하는 각각의 실패로 인해 발생할 수 있는 심한 리소스의 낭비를 알 것이다. 가능한 한, 통신 프로토콜 선택 시에 프로세스의 시행착오를 방지하여 높은 수준의 성능을 얻는 것이 바람직할 것이다.
본 발명은 프로세스 간 통신에 대한 기술의 부족을 해결하고, 클라이언트 측 연산 프로세스에서 통신 프로토콜 스택을 구성하는 방법 및 시스템을 제공한다. 본 발명의 바람직한 일 측면에서, 프로세스 간 통신 프로토콜 구성 시스템은 서버 측 프로토콜 스택에서 서버 측 프로토콜 스택 요소를 클라이언트 측 프로토콜 스택 요소에 매핑하는 것을 포함할 수 있다. 이 시스템은 매핑에 기반하여 서버 측 프로토콜 스택 내의 서버 측 프로토콜 스택 요소 중 종속적인 요소의 목록을 포함할 수 있다. 최종적으로, 시스템은 목록에 대한 공표가능한 인터페이스를 포함할 수 있다.
매핑은 서버 측 프로토콜 스택의 프로토콜 스택 요소와 관련된 클라이언트 측 프로토콜 스택에 존재하도록 요청되는 대응하는 프로토콜 스택 요소 사이의 연결(linkage) 세트를 포함할 수 있다. 이 매핑은 대응하는 프로토콜 스택 요소 중 선택된 요소에 대한 속성 세트도 포함할 수 있다. 본 발명의 바람직한 측면에서, 이 목록은 매핑에 기반하여 서버 측 프로토콜 스택 내의 서버 측 프로토콜 스택 요소 중 종속적인 요소의 역순 목록을 포함하는 역목록이 될 수 있다. 또한, 공표가능한 인터페이스는 목록을 통합시키는 적어도 하나의 객체에 대한 기본 디렉토리 인터페이스인 것이 바람직하다.
클라이언트 측 통신 프로토콜 스택을 구성하는 방법에서, 서버 측 프로토콜 스택 예 내의 프로토콜 스택 요소 세트에 대응하는 클라이언트 측 프로토콜 스택 요소 세트를 결정하는 데 매핑이 참조될 수 있다. 이어서, 결정된 클라이언트 측 프로토콜 스택 요소 세트의 목록이 생성될 수 있다. 최종적으로, 외부에 배치된 클라이언트 연산 프로세스에 의한 액세스를 위해 이 목록이 공표될 수 있다. 바람직하게, 이 목록은 반전될 수 있다. 또한, 참조하는 단계는 클라이언트 측 프로토콜 스택이 서버 측 프로토콜 스택 예와 상호 연동하는 것이 가능할 때 적어도 하나의 클라이언트 측 프로토콜 스택 요소에 적용되는 적어도 하나의 속성을 결정하는 단계를 더 포함할 수 있다.
이와 달리, 클라이언트 측 통신 프로토콜 스택을 구성하는 방법은 서버 측 프로토콜 스택 예에 모인 프로토콜 스택 요소에 대응하는 요청된 클라이언트 측 프로토콜 스택 요소의 목록을 액세스하는 단계를 포함할 수 있다. 요청된 클라이언트 측 프로토콜 스택 요소를 포함하는 클라이언트 측 프로토콜 스택 예가 이미 존재하는 지를 목록으로부터 판단할 수 있다. 만일 클라이언트 측 프로토콜 스택 예가 이미 존재하면, 서버 측 프로토콜 스택과 통신하기 위해 클라이언트 측 프로토콜 스택 예를 재사용할 수 있다. 그렇지 않으면, 요청된 클라이언트 측 프로토콜 스택 요소를 사용하여 새로운 클라이언트 측 프로토콜 스택 예가 생성될 수 있다.
이제 후속하는 도면을 예시로서만 참조하여 본 발명의 실시예를 설명할 것이다.
도 1은 본 발명의 실시예에 따른 클라이언트를 액세스하는 서버 측 구성용으로 형성된 연산 시스템의 개략도이다.
도 2는 도 1의 시스템에서 서버 측 구성 내의 서버 프로토콜 요소와 대응하는 클라이언트 프로토콜 요소를 연결(link)하는 프로세스를 도시하는 흐름도이다.
도 3은 도 1의 시스템에서 서버 내의 다른 프로토콜 요소의 프로토콜 스택(stack)을 초기화하는 프로세스를 도시하는 흐름도이다.
도 4는 도 1의 시스템에서 서버 지정형 프로토콜 스택에 기반하여 다른 클라이어트 측 프로토콜 요소의 특정 프로토콜 스택을 선택하고 구성하는 프로세스를 도시하는 흐름도이다.
본 발명은 동적으로 선택되고 구성되는 통신 프로토콜 스택에 기반하여 서버 연산 프로세스와 통신하는 클라이언트 연산 프로세스를 지능적으로 구성하는 방법, 시스템 및 장치에 관한 것이다. 본 발명에 따르면, 프로토콜 스택 내의 상이한 해당 프로토콜 요소 또는 성분은 서버 연산 프로세스와 이 서버 연산 프로세스를 액세스하도록 구성된 하나 이상의 클라이언트 연산 프로세스 사이에서 매핑(map)될 수 있다. 예상되는 클라이언트 측 프로토콜 요소의 속성들에 매핑하는 구체적으로 지정된 속성을 갖는 서버 측 프로토콜 요소에 있어서, 이들 속성은 매핑으로도 지정될 수 있다. 지정된 속성에 따른 이 매핑은 서버 내에 프로토콜 스택을 배치할 때 다음 사용을 위해 저장될 수 있다.
프로토콜 스택이 서버 연산 프로세스 내에서 사용하기 위해 배치될 때, 프로토콜 스택에 대한 종속적인 프로토콜 요소의 목록이 생성될 수 있고, 이 목록은 순서에 있어서 반전될 수 있다. 종속적인 프로토콜 요소의 목록 내의 각 프로토콜 요소에 있어서, 임의의 특성값이 검색될 수 있다. 이에 따라, 프로토콜 스택에 대한 클라이언트 구성은 반전된 종속적인 프로토콜 요소의 목록과 검색된 프로토콜 스택의 특성 종속성에 대한 임의의 특성값을 모두 사용하여 생성될 수 있다. 이어서, 이 구성은 서버와 통신하려하는 클라이언트 프로세스가 저장된 구성을 발견할 수 있도록 공표될 수 있다.
클라이언트 연산 프로세스가 서버 연산 프로세스와 통신하려 할 때, 클라이언트 연산 프로세스는 우선 이전 공표를 통해 서버 지정형 프로토콜 구성에 질의할 수 있다. 일단 발견되면, 클라이언트 프로세스는 지정된 프로토콜 구성이 클라이언트 프로세스 내에 이미 존재하는지를 판단할 수 있다. 만일 존재하면, 프로토콜 구성은 서버 프로세스와 통신하기 위해 재사용될 수 있다. 그렇지 않으면, 지정된 구성은 서버 내에 생성될 수 있고, 이 구성의 종속성에 대한 관련 특성값으로 구성될 수 있다. 프로토콜 스택이 동작가능해 질 때, 클라이언트 프로세스는 이 프로토콜 스택을 사용하여 서버 프로세스와 통신할 수 있다.
상술한 것 중 보다 구체적인 예에서, 도 1은 본 발명에 따른 클라이언트 프로세스를 액세스하는 서버 측 구성으로 설정된 전형적이지만 비배타적(non-exclusive)인 연산 시스템의 개략도이다. 이 시스템은 컴퓨터 통신 네트워크(120)를 통해 서버 프로세스(130)와 결합하는 통신을 위해 프로그램된 하나 이상의 클라이언트 연산 프로세스(110A, 110B, 110n)를 포함할 수 있다. 특히, 각 클라이언트 연산 프로세스(110A, 110B, 110n)는 설정된 통신 프로토콜을 사용하여 서버 연산 프로세스(130)와 통신할 수 있다. 설정된 통신 프로토콜은 예컨대 TCP/IP를 사용하는 HTTP와 같은 물리 및 응용 프로토콜뿐만 아니라, 암호화 또는 압축 프로세스와 같은 하나 이상의 부수적인 절차의 실행도 포함할 수 있다.
서버 통신 프로세스(130)는 구성 프로세서(140)와 결합할 수 있다. 구성 프로세서(140)는 프로토콜 구성(150) 세트를 설정할 수 있다. 구체적으로, 구성 프로세서(140)는 서버 연산 프로세스(130)에서 프로토콜의 실행을 위해 요청되는 개별 요소를 클라이언트 연산 프로세스(110A, 110B, 110n) 중 어느 하나 내의 대응하는 요청되는 요소에 매핑할 수 있다. 프로토콜 스택이 서버 연산 프로세스(130)에서 생성될 때, 스택 내의 요소 세트의 요소 종속성은 목록에 기록되고 이어서 역구성(180)을 생성하기 위해 반전된다. 역구성(180) 내의 요소의 개별 특성값이 추가로 결정될 수 있고, 프로토콜 스택 구성(190)으로서 조합이 공표될 수 있다. 구체적으로, 종래 기술에 잘 알려져 있는 것처럼, 프로토콜 스택(190)의 구성은 기본 디렉토리 인터페이스를 통해 콘텐츠가 인식될 수 있는 하나 이상의 클래스 객체 세트에 대한 인터페이스로서 포괄적인 네임 스페이스(global names space)에서 공표 될 수 있다.
실행시에, 클라이언트 연산 프로세스(110A, 110B, 110n) 중 하나가 서버 연산 프로세스(130)와의 통신 링크를 설정하기를 원할 때, 클라이언트 연산 프로세스(110A, 110B, 110n)는 우선 서버 연산 프로세스(130)가 바람직한 통신 프로토콜 구성을 식별할 것을 요청하는 질의(100)를 서버 연산 프로세스(130)에 전달할 수 있다. 이에 응답하여, 서버 연산 프로세스(130)는 클라이언트 연산 프로세스(110A, 110B, 110n) 중 요청하는 하나가 프로토콜 스택 구성(190)에 의해 정의된 바람직한 통신 프로토콜 스택을 선택하고 구성할 수 있는 프로토콜 스택 구성(190)에 대한 액세스를 반환할 수 있다.
바람직한 통신 프로토콜 구성을 사용하여 서버 연산 프로세스와 통신하는 클라이언트 연산 프로세스를 구성하는 프로세스는 서버 측 프로토콜과 클라이언트 측 프로토콜을 서로 매핑으로 연결하는 단계를 포함할 수 있다. 이 프로세스는 서버 연산 프로세스에서 통신 프로토콜 스택을 초기화하고, 매핑에 기반하여 대응하는 사용가능한 클라이언트 측 통신 프로토콜 스택 구성을 전개하는 단계도 포함할 수 있다. 최종적으로, 이 프로세스는 서버 지정형 프로토콜 스택에 기반하여 다른 클라이언트 측 프로토콜 요소의 특정 프로토콜 스택을 선택하고 구성하는 단계를 포함할 수 있다.
상술한 프로세스를 더 설명하기 위해, 도 2는 도 1의 시스템에서 서버 측 구성 내의 대응하는 서버 프로토콜 요소와 클라이언트 프로토콜 요소를 연결(link)하는 프로세스를 도시하는 흐름도이다. 블록(210)에서 처음에, 제 1 프로토콜 세트 가 구성을 위해 로딩될 수 있다. 블록(220)에서, 서버 연산 프로세스에 대한 세트 내의 각 프로토콜 요소는 예상 통신 클라이언트 프로세스에 대응하는 종속적인 프로토콜 요소에 연결되거나 매핑될 수 있다. 예컨대, 서버 연산 프로세스 내의 HTTP 애플리케이션 레벨 프로토콜의 사용은 클라이언트 연산 프로세스 내의 HTTP에 매핑될 수 있다. 이와 유사하게, 서버 연산 프로세스 내의 물리 제어층 프로토콜과 같은 TCP는 클라이언트 연산 프로세스 내의 TCP에 매핑될 수 있다. 또 다른 예로서, 서버 연산 프로세스 내의 압축 해제 프로세스는 클라이언트 연산 프로세스 내의 압축 프로세스에 매핑될 수 있다.
어느 경우에도, 결정 블록(230)에서, 종속적인 프로토콜 요소 중에서 선택된 요소의 특정 속성이 서버 연산 프로세스 내의 프로토콜 요소 중 하나에 대응하는 특정 속성의 애플리케이션에 기반하여 적용되는 지를 판단할 수 있다. 만일 속성이 매핑되면, 이 속성은 매핑으로 지정될 수 있다(블록 240). 그렇지 않으면, 결정 블록(250)에서, 추가 프로토콜 세트가 프로세싱되기 위해 남아있는 지를 판단할 수 있다. 만일 남아있다면, 블록(260)에서 프로토콜 세트는 구성을 위해 로딩될 수 있고, 이 프로세스는 블록(220) 내지 블록(260)을 반복할 수 있다. 매핑으로 구성되기 위해 남아있는 프로토콜 세트가 더 이상 없다면, 이 프로세스는 블록(270)에서 종료할 수 있다.
다른 프로토콜 스택 요소 및 대응하는 속성이 매핑으로 연결되었다면, 공표된 프로토콜 스택의 특정예에 대한 구성은 이 매핑을 사용하여 생성될 수 있다. 보다 구체적으로, 도 3은 도 1의 시스템에서 서버 내의 다른 프로토콜 요소의 프로 토콜 스택을 초기화하는 프로세스를 도시하는 흐름도이다. 블록(310)에서 처음에, 프로토콜 스택이 초기화될 수 있다. 객체 지향 언어 환경에서, 예컨대, 프로토콜 스택 내에 모인 상이한 프로토콜 요소는 프로세스 주소 공간 내에서 설명되고 거기서 실행가능해질 수 있다.
블록(320)에서, 클라이언트 측 종속 요소의 목록은 예컨대, 서버 측 프로토콜 스택 내의 각 요소를 트래버싱(traverse)하고, 매핑으로 요소 종속성을 구별함으로써 생성될 수 있다. 일단 프로토콜 스택 내의 종속 요소의 목록이 생성되었다면, 블록(330)에서 목록의 순서가 반전될 수 있다. 이러한 방법으로, 이 목록에 기반하여 프로토콜 스택을 구성하는 클라이언트 연산 프로세스는 스택 내의 각 요소가 자신의 종속성에 의존할 수 있음을 보장할 수 있다. 어느 경우에도, 결정 블록(340)에서, 스택의 종속성이 이용가능한 요소 예에 의존한다는 점에서 이 종속성이 적합한 지를 판단할 수 있다. 만일 적합하지 않으면, 이 프로세스는 블록(350)에서 종료할 수 있다. 그렇지 않으면, 이 프로세스는 블록(360)까지 계속될 수 있다.
블록(360)에서, 만일 적합한 종속성이 존재하면, 각 통신 프로토콜 요소의 특성값이 검색될 수 있다. 또한, 블록(370)에서, 역순 목록에 기반하여 클라이언트 내에 배치되는 프로토콜 스택에 대한 구성이 생성될 수 있다. 최종적으로, 블록(380)에서, 검색된 특성값은 생성된 클라이언트 프로토콜 스택에 대한 구성에 첨가될 수 있다. 블록(390)에서, 요청시에 임의의 알려진 메커니즘을 통해 클라이언트 프로토콜 스택에 대한 구성이 요청하는 클라이언트 프로세스에 전달될 수 있다. 본 발명의 바람직한 측면에서, 이 구성은 기본 디렉토리 인터페이스를 통해 포괄적인 네임스페이스에서 공표될 수 있다.
일단 공표되면, 클라이언트 측 프로토콜 스택 구성은 서버 연산 프로세스가 선호하는 통신 프로토콜을 사용하는 서버 연산 프로세스와의 통신 링크 설정에 관계된 클라이언트 연산 프로세스에 의해 액세스될 수 있다. 중요하기로는, 클라이언트 연산 프로세스는 사용할 프로토콜을 추정할 때 시행착오 없이 및 사용할 프로토콜에 대한 사전 구성된 이해 없이 적절한 통신 프로토콜을 선택할 수 있다. 보다 구체적으로, 도 4는 도 1의 시스템에서 서버 지정형 프로토콜 스택에 기반하여 다른 클라이언트 측 프로토콜 요소의 특정 프로토콜 스택을 선택하고 구성하는 프로세스를 도시하는 흐름도이다.
블록(410)에서 처음에, 바람직한 프로토콜 스택 구성은 서버 연산 프로세스로부터 검색될 수 있다. 이 점에 있어서, 클라이언트 연산 프로세스는 예컨대, 기본 디렉토리 인터페이스를 통해 바람직한 프로토콜 스택에 대한 인터페이스를 액세스함으로써 서버 연산 프로세스에 바람직한 프로토콜 스택 구성에 대해 질의할 수 있다. 결정 블록(420)에서, 바람직한 프로토콜 스택이 클라이언트 연산 프로세스 내에 이미 존재하는 프로토콜 스택 예와 유사한지를 판단할 수 있다. 만일 유사하지 않다면, 적절한 종속성 순서로 구성 내에서 지정된 각 요소를 갖는 새로운 프로토콜 스택 예가 생성될 수 있다. 또한, 바람직한 프로토콜 스택에 설명된 것처럼 요소의 속성이 설정될 수 있고, 요소의 특성에 대한 특성값도 바람직한 프로토콜 스택에 따라 더 설정될 수 있다.
그러나, 결정 블록(420)에서, 만일 바람직한 프로토콜 스택이 클라이언트 연산 프로세스 내에 이미 존재하는 프로토콜 스택 예와 유사하면, 블록(430)에서 기존의 프로토콜 스택 예가 바람직한 프로토콜 스택에 의해 지정된 속성과 동일한 속성을 포함하는 지를 판단할 수 있다. 만일 아니라면, 블록(450)에서 이전처럼 바람직한 통신 프로토콜 스택의 새로운 예가 클라이언트에서 생성될 수 있다. 그렇지 않으면, 블록(440)에서, 서버 연산 프로세스와의 통신을 위해 기존의 통신 프로토콜 스택 예가 재사용될 수 있다.
본 발명은 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 본 발명의 방법 및 시스템의 구현은 하나의 컴퓨터 시스템에서의 집중 방식 또는 상이한 요소가 다수의 상호접속 컴퓨터 시스템을 통해 전개되는 분산 방식으로 구현될 수 있다. 어떤 종류의 컴퓨터 시스템 또는 본 명세서에 설명된 방법을 수행하기에 적합한 다른 장치는 본 명세서에 설명된 기능을 실행하기에 적합하다.
하드웨어 및 소프트웨어의 전형적인 조합은 로딩되고 실행될 때 본 명세서에 설명된 방법을 수행하도록 컴퓨터 시스템을 제어하는 컴퓨터 프로그램을 포함하는 범용 컴퓨터 시스템이 될 수 있다. 본 발명은 본 명세서에 설명된 방법의 구현을 가능하게 하는 모든 특성을 포함하며 컴퓨터 시스템에서 로딩될 때 이들 방법을 수행할 수 있는 컴퓨터 프로그램 제품에도 내장될 수 있다.
본 발명에서 컴퓨터 프로그램 또는 애플리케이션은 정보 처리 능력을 갖는 시스템이 a) 다른 언어, 코드 또는 기호로 변환, b) 다른 물질 형태로 재생성 중 하나 또는 둘 다를 실행한 즉시 또는 이후에 특정 기능을 수행하게 하는 인스트럭션 세트의 임의의 언어, 코드 또는 기호에 의한 임의의 표현을 의미한다. 중요한 것은, 본 발명은 다른 특정 형태에 구현됨에 있어서 상술한 명세 사항보다는 본 발명의 범주를 나타내는 후속하는 특허 청구 범위를 참조해야한다.

Claims (12)

  1. 서버 측 프로토콜 스택 예(server side protocol stack instance) 내의 프로토콜 스택 요소 세트에 대응하는 클라이언트 측 프로토콜 스택 세트를 결정하기 위해 매핑을 참조하는 단계와,
    상기 결정된 클라이언트 측 프로토콜 스택 요소의 목록을 생성하는 단계와,
    외부에 배치된 클라이언트 연산 프로세스에 의한 액세스를 위해 상기 목록을 공표하는 단계를 포함하는
    클라이언트 측 통신 프로토콜 스택 구성 방법.
  2. 제 1 항에 있어서,
    상기 참조하는 단계는 클라이언트 측 프로토콜 스택이 상기 서버 측 프로토콜 스택 예와 상호 연동하는 것이 가능할 때 상기 적어도 하나의 클라이언트 측 프로토콜 스택 요소에 적용되는 적어도 하나의 속성을 결정하는 단계를 더 포함하는
    클라이언트 측 통신 프로토콜 스택 구성 방법.
  3. 제 1 항에 있어서,
    상기 생성하는 단계는 상기 생성된 목록의 순서를 반대로 하는 단계를 더 포 함하는
    클라이언트 측 통신 프로토콜 스택 구성 방법.
  4. 서버 측 프로토콜 스택 예에 모인 프로토콜 스택 요소에 대응하는 요청된 클라이언트 측 프로토콜 스택 요소의 목록을 액세스하는 단계와,
    상기 목록으로부터 상기 요청된 클라이언트 측 프로토콜 스택 요소를 포함하는 클라이언트 측 프로토콜 스택 예가 이미 존재하는 지를 판단하는 단계와,
    상기 클라이언트 측 프로토콜 스택 예가 이미 존재하면, 상기 클라이언트 측 프로토콜 스택 예를 재사용하여 상기 서버 측 프로토콜 스택과 통신하는 단계와,
    상기 클라이언트 측 프로토콜 스택 예가 존재하지 않으면, 상기 요청된 클라이언트 측 프로토콜 스택 요소를 사용하여 새로운 클라이언트 측 프로토콜 스택 예를 생성하는 단계를 포함하는
    클라이언트 측 통신 프로토콜 스택 구성 방법.
  5. 제 4 항에 있어서,
    상기 액세스하는 단계는 기본 디렉토리 인터페이스를 통해 상기 목록을 액세스하는 단계를 포함하는
    클라이언트 측 통신 프로토콜 스택 구성 방법.
  6. 제 4 항에 있어서,
    상기 요청된 클라이언트 측 프로토콜 스택 요소에 적용되는 속성을 식별하는 단계와,
    상기 새로운 예 내의 상기 클라이언트 측 프로토콜 스택 요소에 상기 식별된 속성을 적용하는 단계를 더 포함하는
    클라이언트 측 통신 프로토콜 스택 구성 방법.
  7. 제 6 항에 있어서,
    상기 재사용하는 단계는,
    상기 클라이언트 측 프로토콜 스택 예가 상기 식별된 속성을 포함하는 경우에만 상기 클라이언트 측 프로토콜 스택 예를 재사용하여 상기 서버 측 프로토콜 스택과 통신하는 단계와,
    상기 클라이언트 측 프로토콜 스택 예가 상기 식별된 속성을 포함하지 않으면, 상기 요청된 클라이언트 측 프로토콜 스택 요소를 사용하여 상기 식별된 속성을 포함하는 새로운 클라이언트 측 프로토콜 스택 예를 생성하는 단계를 포함하는
    클라이언트 측 통신 프로토콜 스택 구성 방법.
  8. 서버 측 프로토콜 스택에서 서버 측 프로토콜 스택 요소를 클라이언트 측 프로토콜 스택 요소에 매핑하는 수단과,
    상기 매핑에 기반하여 상기 서버 측 프로토콜 스택 내의 상기 서버 측 프로토콜 스택 요소 중 종속적인 요소를 목록에 기록하는 수단과,
    상기 목록 기록에 공표가능한 인터페이스를 제공하는 수단을 포함하는
    프로세스 간 통신 프로토콜 구성 시스템.
  9. 제 8 항에 있어서,
    상기 매핑하는 수단은,
    상기 서버 측 프로토콜 스택의 프로토콜 스택 요소와 관련된 클라이언트 측 프로토콜 스택에 존재하도록 요청되는 대응하는 프로토콜 스택 요소 사이의 연결(linkage) 세트와,
    상기 대응하는 프로토콜 스택 요소 중 선택된 요소에 대한 속성 세트를 포함하는
    프로세스 간 통신 프로토콜 구성 시스템.
  10. 제 8 항에 있어서,
    상기 목록은 상기 매핑에 기반하여 상기 서버 측 프로토콜 스택 내의 상기 서버 측 프로토콜 스택 요소 중 상기 종속적인 요소의 역순 목록을 포함하는 역목록인
    프로세스 간 통신 프로토콜 구성 시스템.
  11. 제 8 항에 있어서,
    상기 공표가능한 인터페이스는 상기 목록을 통합시키는 적어도 하나의 객체에 대한 기본 디렉토리 인터페이스인
    프로세스 간 통신 프로토콜 구성 시스템.
  12. 클라이언트 측 통신 프로토콜 스택을 구성하는 컴퓨터 프로그램을 저장하는 머신 판독가능한 저장 장치에 있어서,
    상기 컴퓨터 프로그램은 머신에 의해 실행될 때 상기 머신으로 하여금 제 1 항 내지 제 7 항 중 어느 한 항의 단계를 수행하게 하는 머신 판독가능한 인스트럭션 세트를 포함하는
    머신 판독가능한 저장 장치.
KR1020067017210A 2004-02-27 2006-08-25 클라이언트 측 통신 프로토콜 스택 구성 방법, 프로세스 간통신 프로토콜 구성 시스템 및 머신 판독가능한 저장 장치 KR100920595B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/789,573 US7519718B2 (en) 2004-02-27 2004-02-27 Server-side protocol configuration of accessing clients
US10/789,573 2004-02-27

Publications (2)

Publication Number Publication Date
KR20070001973A true KR20070001973A (ko) 2007-01-04
KR100920595B1 KR100920595B1 (ko) 2009-10-08

Family

ID=34887307

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067017210A KR100920595B1 (ko) 2004-02-27 2006-08-25 클라이언트 측 통신 프로토콜 스택 구성 방법, 프로세스 간통신 프로토콜 구성 시스템 및 머신 판독가능한 저장 장치

Country Status (7)

Country Link
US (3) US7519718B2 (ko)
EP (1) EP1719320B1 (ko)
JP (2) JP4818251B2 (ko)
KR (1) KR100920595B1 (ko)
CN (1) CN1918886B (ko)
CA (1) CA2557492C (ko)
WO (1) WO2005083967A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7519718B2 (en) * 2004-02-27 2009-04-14 International Business Machines Corporation Server-side protocol configuration of accessing clients
FI117587B (fi) * 2004-06-18 2006-11-30 Nethawk Oyj Menetelmä, laite ja tietokoneohjelmatuote tiedonsiirtoyhteyksien monitorointiin
US8161162B1 (en) * 2004-06-30 2012-04-17 Kaseya International Limited Remote computer management using network communications protocol that enables communication through a firewall and/or gateway
US8220042B2 (en) * 2005-09-12 2012-07-10 Microsoft Corporation Creating secure interactive connections with remote resources
WO2007109923A1 (en) * 2006-03-29 2007-10-04 Intel Corporation Optimization of network protocol options by reinforcement learning and propagation
JP4803260B2 (ja) * 2009-01-15 2011-10-26 ソニー株式会社 ゲートウェイ装置、情報通信方法、情報通信プログラム、および情報通信システム
AU2011287656B2 (en) * 2010-08-04 2017-01-19 Inventio Ag Magnetic lock for an operating unit in an elevator system
CN103268305B (zh) * 2013-04-23 2017-07-25 上海斐讯数据通信技术有限公司 一种oam协议栈移植方法
CN104539506A (zh) * 2015-01-27 2015-04-22 浪潮集团有限公司 一种网络传输服务构件及网络传输系统
WO2018053852A1 (zh) * 2016-09-26 2018-03-29 北京小米移动软件有限公司 无线承载的配置方法、装置及系统
CN110278161B (zh) * 2019-05-06 2020-08-11 阿里巴巴集团控股有限公司 基于用户态协议栈的报文分流方法、装置及系统
US10904719B2 (en) 2019-05-06 2021-01-26 Advanced New Technologies Co., Ltd. Message shunting method, device and system based on user mode protocol stack

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61200740A (ja) * 1985-03-04 1986-09-05 Kokusai Denshin Denwa Co Ltd <Kdd> プロトコルの自動合成方式
JPH04111022A (ja) * 1990-08-30 1992-04-13 Matsushita Electric Ind Co Ltd インタフェースプログラム自動生成装置
JPH0546414A (ja) * 1991-08-08 1993-02-26 Nec Corp 共有データ処理方式
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
JPH08195870A (ja) 1995-01-17 1996-07-30 Nippon Telegr & Teleph Corp <Ntt> データ通信方法及びその端末装置並びにデータ通信システム
US5826027A (en) * 1995-10-11 1998-10-20 Citrix Systems, Inc. Method for supporting an extensible and dynamically bindable protocol stack in a distrubited process system
US5951639A (en) 1996-02-14 1999-09-14 Powertv, Inc. Multicast downloading of software and data modules and their compatibility requirements
EP1032886B1 (en) * 1997-11-14 2009-03-18 Microsoft Corporation Server operating system for supporting multiple client-server sessions and dynamic reconnection of users to previous sessions
US6212160B1 (en) * 1998-03-24 2001-04-03 Avaya Technlogy Corp. Automated selection of a protocol by a communicating entity to match the protocol of a communications network
JP3225917B2 (ja) 1998-03-24 2001-11-05 日本電気株式会社 通信システムの属性情報抽出設定装置
US6311278B1 (en) 1998-09-09 2001-10-30 Sanctum Ltd. Method and system for extracting application protocol characteristics
JP2000090030A (ja) * 1998-09-10 2000-03-31 Toshiba Corp 情報処理装置
US6507563B1 (en) * 1998-12-24 2003-01-14 Cisco Technology, Inc. Methods and apparatus for controlling congestion within diverse protocol stacks
US6539030B1 (en) * 2000-02-07 2003-03-25 Qualcomm Incorporated Method and apparatus for providing configurable layers and protocols in a communications system
US6601094B1 (en) * 2000-04-27 2003-07-29 Hewlett-Packard Development Company, L.P. Method and system for recommending an available network protocol
US7139822B2 (en) * 2000-07-07 2006-11-21 International Business Machines Corporation Interception method and system for compensating disadvantageous characteristics of a communication protocol
FI114265B (fi) * 2001-03-26 2004-09-15 First Hop Oy Menetelmiä ja järjestelyjä tehokkaan tiedonsiirron toteuttamiseksi nopeudeltaan rajoitetun tiedonsiirtolinkin yli
US7006452B2 (en) * 2001-05-22 2006-02-28 Intel Corporation Matching DSL data link layer protocol detection
US7103578B2 (en) * 2001-05-25 2006-09-05 Roche Diagnostics Operations, Inc. Remote medical device access
EP1292160A1 (en) 2001-09-07 2003-03-12 Telefonaktiebolaget Lm Ericsson Method for adapting mobile terminals to different protocols and mobile terminal
US20040088448A1 (en) * 2001-10-16 2004-05-06 Userspace Corporation Embedded system and method for controlling, monitoring of instruments or devices and processing their data via control and data protocols that can be combined or interchanged
US20030140129A1 (en) * 2002-01-24 2003-07-24 Noam Livnat Installing communication protocol in a handheld device
US6957086B2 (en) 2002-05-01 2005-10-18 Microsoft Corporation Method for wireless capability discovery and protocol negotiation, and wireless device including same
FR2842970B1 (fr) * 2002-07-29 2005-03-18 Qosmos Procede de reconnaissance et d'analyse de protocoles dans des reseaux de donnees
US7480915B2 (en) * 2002-10-03 2009-01-20 Nokia Corporation WV-IMS relay and interoperability methods
US7475240B2 (en) * 2002-11-06 2009-01-06 Symantec Corporation System and method for add-on services, secondary authentication, authorization and/or secure communication for dialog based protocols and systems
US7519718B2 (en) * 2004-02-27 2009-04-14 International Business Machines Corporation Server-side protocol configuration of accessing clients
JP5046414B2 (ja) 2006-07-20 2012-10-10 有限会社スガイ総業 電動車両のインホイールモータ

Also Published As

Publication number Publication date
US7519718B2 (en) 2009-04-14
CN1918886A (zh) 2007-02-21
US20050193136A1 (en) 2005-09-01
JP2011259467A (ja) 2011-12-22
JP4818251B2 (ja) 2011-11-16
JP5325268B2 (ja) 2013-10-23
CA2557492A1 (en) 2005-09-09
EP1719320A1 (en) 2006-11-08
EP1719320B1 (en) 2012-12-05
CN1918886B (zh) 2010-06-16
US9071516B2 (en) 2015-06-30
US9736017B2 (en) 2017-08-15
US20150381415A1 (en) 2015-12-31
WO2005083967A1 (en) 2005-09-09
KR100920595B1 (ko) 2009-10-08
JP2007525133A (ja) 2007-08-30
US20090234961A1 (en) 2009-09-17
CA2557492C (en) 2010-10-19

Similar Documents

Publication Publication Date Title
KR100920595B1 (ko) 클라이언트 측 통신 프로토콜 스택 구성 방법, 프로세스 간통신 프로토콜 구성 시스템 및 머신 판독가능한 저장 장치
US7188155B2 (en) Apparatus and method for selecting a web service in response to a request from a client device
US8583810B2 (en) Session affinity cache and manager
EP1483671B1 (en) Provisioning aggregated services in a distributed computing environment
US10331504B2 (en) Method and system for extending application programming interfaces
US5881230A (en) Method and system for remote automation of object oriented applications
JP5389829B2 (ja) リモートリソースのウェブアクセスのためのxmlベースのウェブフィード
US7571208B2 (en) Creating proxies from service description metadata at runtime
US7756984B2 (en) Systems and methods for virtual host name roaming
CA2890411C (en) System and method for managing dedicated caches
US20040111525A1 (en) Dynamic web service implementation discovery and selection apparatus and method
JPH10312350A (ja) リソース命名方法及び機構
KR101497167B1 (ko) 분산 운영 시스템에서의 외부 하드웨어 기기의 관리
JP2003076560A (ja) Asp.nethttpランタイム
JP2004533687A (ja) コンピュータ・ネットワークにおけるサービスの動的配備
CN111371679A (zh) 一种基于kubernetes与Kong实现API网关的方法
US7873707B1 (en) Client-side URL rewriter
US7890487B1 (en) Facilitating client-side data-management for web-based applications
JP2003162449A (ja) アクセス統合管理システム、アクセス統合管理装置及び方法並びにプログラム
JPH11296456A (ja) サーバ統合用プロキシサーバ
JP5809220B2 (ja) データセット転送プロトコルを用いた多重要請処理方法
JP4950389B2 (ja) ネットワークベースのアプリケーション、それを処理するためのアーキテクチャ及びシステム、ならびにそれを実行するための方法
Zambon et al. Tomcat 6
WO2001095116A2 (en) A method and a system for providing information from a server to a client

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee