KR20060120035A - 신뢰성 높고 지속적인 통신 세션들을 통한 클라이언트 자동재연결 - Google Patents
신뢰성 높고 지속적인 통신 세션들을 통한 클라이언트 자동재연결 Download PDFInfo
- Publication number
- KR20060120035A KR20060120035A KR1020067006932A KR20067006932A KR20060120035A KR 20060120035 A KR20060120035 A KR 20060120035A KR 1020067006932 A KR1020067006932 A KR 1020067006932A KR 20067006932 A KR20067006932 A KR 20067006932A KR 20060120035 A KR20060120035 A KR 20060120035A
- Authority
- KR
- South Korea
- Prior art keywords
- client
- service
- protocol
- connection
- ticket
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0209—Architectural arrangements, e.g. perimeter networks or demilitarized zones
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- 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/46—Interconnection of networks
-
- 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/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0272—Virtual private networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/166—Implementing security features at a particular protocol layer at the transport layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- 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/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0281—Proxies
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
본 발명은 신뢰성있고 지속적인 통신 세션에 걸쳐 사용자에게 인증을 제공하고 클라이언트를 재연결하기 위한 방법 및 시스템에 관한 것이다. 다수의 2차 프로토콜을 캡슐화하는 제 1 프로토콜이 사용되어 네트워크를 통해 통신한다. 제 1 프로토콜 서비스는 제 1 프로토콜을 사용하여 클라이언트와 호스트 서비스 간에 세션 영속성과 신뢰할 만한 연결을 제공한다. 클라이언트와 호스트 서비스 간의 네트워크 연결에서 단절이 있는 경우에, 사용자의 인증서를 재기입하거나, 호스트 서비스와의 사용자 세션을 재-설정하는 것 없이 호스트 서비스로 연결이 재-설정되고 사용자가 재인증된다.
Description
본 발명은 일반적으로 네트워크와 클라이언트-서버 통신에 관한 것이다. 특히, 본 발명은 세션(session)에 지속성과 신뢰도를 제공하기 위해 다른 프로토콜들을 캡슐화(encapsulate)하는 통신 프로토콜을 이용하여 클라이언트 통신을 재설정(re-establishing)하는 시스템 및 방법과, 캡슐화하는 프로토콜을 경유하여 서버 컴퓨터와 통신하기 위해 클라이언트 컴퓨터를 이용함으로써 사용자의 재인증을 간편화하는 시스템 및 방법에 관한 것이다.
2대의 컴퓨터, 일 예로 클라이언트와 서버 간의 네트워크 통신은 이미 알려진 다양한 통신 프로토콜을 이용하여 구현될 수 있다. 그러나, 간혹 상기 네트워크 연결은 쉽게 브레이크 다운(break down)될 수 있다. 예를 들면, 클라이언트와 서버 간의 무선 연결은 간혹 신뢰할 수 없으며, 이외의 경우에도 상기 네트워크 연결은 때때로 중단된다. 이와 같이 상기 연결은 사용자가 엘리베이터 또는 터널에 들어갈 때 차단되고, 이는 단지 다시 사용자가 엘리베이터 또는 터널에서 나올 때 복원될 수 있다.
클라이언트와 서버 컴퓨터 간의 확립된 통신 세션이 비정상적으로 종결되면, 상기 클라이언트는 일반적으로 새로운 통신 세션을 작동시킴으로써 연결을 재설정(re-establishing)하여야 한다. 이와 같은 새로운 통신 세션을 시작하기 위해서는 사용자가 로그인/패스워드와 같은 인증서(authentication credentials)를 서버 컴퓨터로 재전송 해야하며, 이에 상기 서버 컴퓨터는 사용자에게 상기 새로운 통신 세션에 대한 인증을 할 수 있다. 이와 같은 다중 통신 세션을 통한(across) 사용자 인증서의 재전송은 상기 인증서의 보안 레벨을 감소시키기 때문에 반복적으로 포텐셜 공격자들(potential attackers)에 그 사용자의 인증서를 노출시킨다. 게다가, 이와 같은 방식은 사용자의 좌절감과 비효율을 초래하는 느린 프로세스이다.
또한, 새로운 통신 세션을 확립함에 있어, 네트워크는 클라이언트가 인터넷 프로토콜 어드레스와 같은 새로운 네트워크 식별자(identifier)를 획득할 것을 요구할 수 있다. 이에 클라이언트 상의 애플리케이션(application) 또는 프로그램들은 상기 클라이언트 네트워크 식별자에 변화 때문에 재시작될 필요가 있을 수 있다. 그러므로, 클라이언트 컴퓨터와 서버 컴퓨터 간의 통신 세션이 클라이언트의 인증서의 반복된 전송을 요구하거나 프로그램의 재시작하는 것 없이 재설정(re-establishing)될 때, 자동적으로 클라이언트를 재인증하기 위한 기술을 제공하는 것은 바람직하다.
개선된 시스템과 방법은 반복적인 인증서 전송 없이 클라이언트 컴퓨터와 서버 컴퓨터 간에 통신 세션이 재설정(re-establishing)되는 것이 요구된다.
본 발명의 다른 목적, 양상, 특징 및 장점들은 이하 첨부된 도면과 발명의 상세한 설명을 통해 더욱 명확해지고 잘 이해될 것이다.
도 1A는 본 발명의 일 실시 예에 의한 호스트 서비스로의 신뢰성 높은 연결을 클라이언트에 제공하는 시스템의 블록도이다.
도 1B는 본 발명의 다른 실시 예에 의한 호스트 서비스로의 신뢰성 높은 연결을 클라이언트에 제공하는 시스템의 블록도이다.
도 2A는 본 발명의 일 실시 예에 의해 네트워크 상에서 발생되는 통신을 나타내는 도면.
도 2B는 본 발명의 다른 실시 예에 의해 네트워크 상에서 발생되는 통신을 나타내는 도면.
도 3은 본 발명의 일 실시 예에 의해 네트워크 상에서 통신을 위한 제 1 프로토콜 내의 다수의 2차 프로토콜을 캡슐화하는 프로세스를 나타내는 도면.
도 4는 본 발명에 의해 인증서를 유지하도록 하는 컴퓨터 시스템의 실시 예를 나타내는 블록도이다.
도 5A는 본 발명에 의해 제 1 통신 세션 동안 인증서를 유지하기 위해 도 4에 도시된 컴퓨터 시스템의 실시 예가 수행되는 단계를 나타내는 흐름도이다.
도 5B는 본 발명에 의해 도 5A의 제 1 통신 세션의 종료에 따른 제 2 통신 세션 동안 인증서를 유지하기 위해 도 4에 도시된 컴퓨터 시스템의 실시 예가 수행되는 단계를 나타내는 흐름도이다.
도 6은 본 발명의 다른 실시 예에 의한 인증서를 유지하도록 하는 컴퓨터 시스템의 실시 예의 블록도이다.
도 7A는 본 발명에 의해 제 1 통신 세션 동안 인증서를 유지하기 위해 도 6에 도시된 컴퓨터 시스템의 실시 예가 수행되는 단계를 나타내는 흐름도이다.
도 7B는 본 발명에 의해 도 6의 제 1 통신 세션의 종료에 따른 제 2 통신 세션 동안 인증서를 유지하기 위해 도 6에 도시된 컴퓨터 시스템의 실시 예가 수행되는 단계를 나타내는 흐름도이다.
도 7B는 본 발명에 의해 도 6의 제 1 통신 세션의 종료에 따른 제 2 통신 세션 동안 인증서를 유지하기 위해 도 6에 도시된 컴퓨터 시스템의 실시 예가 수행되는 단계를 나타내는 흐름도이다.
도 7C는 본 발명에 의해 도 6의 제 1 통신 세션의 제 2 통신 채널의 종료에 따른 제 2 통신 세션 동안 인증서를 유지하기 위해 도 6에 도시된 컴퓨터 시스템의 실시 예가 수행되는 단계를 나타내는 흐름도이다.
도 8A는 본 발명의 일 실시 예에 의해 인증서를 유지하고, 호스트 서비스로의 신뢰성 높은 연결을 클라이언트에 제공하는 시스템의 블록도이다.
도 8B는 본 발명의 다른 실시 예에 의해 인증서를 유지하고, 호스트 서비스로의 신뢰성 높은 연결을 클라이언트에 제공하는 시스템의 블록도이다.
도 9A는 본 발명의 다른 실시 예에 의해 인증서를 유지하고, 호스트 서비스로의 신뢰성 높은 연결을 클라이언트에 제공하는 시스템의 블록도이다.
도 9B는 본 발명의 다른 실시 예에 의해 인증서를 유지하고, 호스트 서비스로의 신뢰성 높은 연결을 클라이언트에 제공하는 시스템의 블록도이다.
도 10A는 본 발명의 실시 예에 의해 호스트 서비스로의 신뢰성 높은 연결을 클라이언트에 제공하고, 상기 호스트 서비스에 상기 클라이언트를 재연결시키는 성분(components)을 더 포함하는 시스템의 블록도이다.
도 10B는 호스트 서비스로의 신뢰성 높은 연결을 클라이언트에 제공하고, 상기 호스트 서비스에 상기 클라이언트를 재연결시키는 성분(components)을 더 포함하는 시스템의 실시 예에 대한 블록도이다.
도 11A는 도 10A의 실시 예로서, 호스트 서비스에 처음 클라이언트를 연결시키기 위한 구성요소(components)를 더 포함함을 나타내는 블록도이다.
도 11B는 본 발명의 실시 예에 의해 호스트 서비스에 처음 클라이언트를 연결시키기 위한 구성요소(components)를 더 포함하고, 인증서를 유지하는 도 10B의 시스템을 나타내는 블록도이다.
도 12A는 본 발명의 실시 예에 의한 네트워크 통신 방법의 흐름도이다.
도 12B는 호스트 서비스에 클라이언트를 재연결시키기 위한 방법의 흐름도이다.
도 13A 내지 13C는 본 발명의 실시 예에 의해 다수의 호스트 서비스에 클라이언트를 연결시키기 위한 방법의 흐름도이다.
도 14는 본 발명의 실시 예에 의해 호스트 서비스로의 신뢰성 높은 연결을 클라이언트에 제공하고, 상기 호스트 서비스에 상기 클라이언트를 재연결시키기 위한 방법의 흐름도이다.
도 15A 및 15B는 본 발명의 실시 예 의해 호스트 서비스에 클라이언트를 재연결시키기 위한 방법의 흐름도이다.
본 발명은 호스트 서비스에 대한 지속적이고 신뢰성 높은 연결을 클라이언트에 제공하는 시스템 및 방법과, 지속적이고 신뢰성 높은 연결로서 상기 클라이언트를 재연결하는 시스템 및 방법에 관한 것이다. 상기 클라이언트를 재연결하는 것은 호스트 서비스로 클라이언트의 통신 세션을 재설정하는 것과, 클라이언트의 사용자를 상기 호스트 서비스에 재인증하는 것을 포함한다. 호스트 서비스로의 지속적이고 신뢰성 높은 연결은 클라이언트를 대표하는 제 1 프로토콜 서비스에 의해 유지된다. 상기 제 1 프로토콜 서비스는 클라이언트와 호스트 서비스 간에서 통신된 데이터가 버퍼링되고, 상기 클라이언트와 상기 제 1 프로토콜 서비스의 네트워크 연결이 두절(disruption)된 기간에도 유지될 것을 보증한다. 일 예로 모바일 클라이언트와 같은 클라이언트가 동일한 네트워크 내에서 다른 액세스 포인트 간에 로밍할 때나, 또는 클라이언트가 네트워크 간에 전환(예를 들어, 유선 네트워크에서부터 무선 네트워크로)할 때 네트워크 연결에 일시적인 두절이 발생할 수 있다. 다른 액세스 포인트 간에 로밍할 때, 상기 클라이언트는 네트워크 토폴로지(topolgy) 의해 요구되는 인터넷 프로토콜 어드레스와 같은 다른 네트워크 식별 번호를 할당받을 필요가 있을 수 있다. 게다가 네트워크 두절 기간 동안 버퍼링된 데이터를 유지함에 있어, 제 1 프로토콜 서비스는 상기 제 1 프로토콜 서비스에 상기 클라이언트의 연결을 재설정할 때 상기 클라이언트를 호스트 서비스에 재인증한다. 상기 재 인증 후, 제 1 프로토콜 서비스는 상기 호스트 서비스에 클라이언트 연결을 다시 재 링크(re-link)한다. 이는 상기 클라이언트의 사용자가 상기 호스트 서비스에의 연결을 재설정하기 위해 인증서를 재 엔터링(re-entering)하는 것을 방지한다. 또한, 상기 제 1 프로토콜 서비스는 네트워크 두절 뒤에 발생할 필요가 있을 수 있는 클라이언트의 네트워크 식별자를 자동적으로 변경하는 것을 다룰 것이다. 이는 습관적으로 클라이언트의 지정된 네트워크 식별자가 변할 때 재시작될 필요가 있는 어떠한 애플리케이션 또는 프로그램에 대해 사용자가 이를 재시작하는 것을 방지한다. 이에 사용자의 네트워크 액세스 포인트 간 로밍에 있어 클라이언트의 지정된 네트워크 식별자에 의한 네트워크 변경을 해야하는 방해 없이 사용자는 상기 클라이언트의 이용을 계속할 수 있다. 요약하면, 본 발명은 사용자의 재 엔터링(reentering) 인증서 없이 재인증하는 것을 포함하여, 애플리케이션의 재 시작(restarting) 또는 세션의 재설정 없이 호스트 서비스에 대한 붕괴된 클라이언트 연결의 자동적인 재연결을 제공한다.
제 1 측면에서, 본 발명은 네트워크 연결 두절 뒤 호스트 서비스에 클라이언트를 재연결 시키기 위한 방법에 관한 것이다. 그 방법은 클라이언트와 호스트 서비스 간에 연결을 재설정하기 위해 제 1 프로토콜 서비스를 이용한다. 그 방법은 클라이언트와 제 1 프로토콜 서비스 간의 제 1 연결과 제 1 프로토콜 서비스와 호스트 서비스 간의 제 2 연결을 제공하는 것을 포함한다. 상기 제 1 연결에서 두절이 검출될 때, 상기 제 1 프로토콜 서비스와 호스트 서비스 간의 제 2 연결이 유지된다. 그리고나서, 상기 클라이언트와 제 1 프로토콜 서비스 간의 제 1연결은 재설정된다. 상기 제 1 프로토콜 서비스는 클라이언트를 관련된 티켓(ticket)을 수신하고 티켓을 확인한다(validate). 상기 티켓이 확인된 후, 재설정된 제 1 연결은 상기 유지된 제 1 연결과 링크된다.
본 발명의 일 실시 예에서, 상기 방법은 유지된 제 2 연결과 재설정된 제 1 연결을 링크하기 전에 상기 티켓을 더 확인하는 것을 포함한다. 상기 확인 방법은 제 1 프로토콜 서비스에 의해 수신된 티켓으로부터 세션 식별자와 키를 획득하는 것을 더 포함한다. 상기 티켓으로부터의 세션 식별자는 클라이언트의 저장되고 암호화된 인증서를 회수하기 위해 이용된다. 그리고나서, 상기 티켓으로부터의 키는 상기 회수된 인증서를 해독하기 위해 이용된다.
다른 실시 예에 있어서, 본 발명은 호스트 서비스에 클라이언트의 연결이 재설정될 때 호스트 서비스에 클라이언트의 재인증을 제공한다. 그 방법은 클라이언트와 제 1 프로토콜 서비스 간의 제 1 연결 및 상기 제 1 프로토콜 서비스와 호스트 서비스 간의 제 2 연결이 제공될 때, 상기 호스트 서비스에 클라이언트를 인증하는 것을 더 포함한다. 연결의 두절이 검출된 후 상기 제 1 연결을 재설정 할 때, 상기 방법은 호스트 서비스에 클라이언트를 재인증하는 것을 더 포함한다.
본 발명의 또 다른 실시 예에서, 상기 방법은 클라이언트를 관련된 티켓을 발생시키는 제 1 프로토콜 서비스를 더 포함한다. 이에 덧붙여, 상기 방법은 상기 티켓이 확인된 후 이를 삭제하는 것을 더 포함한다. 또 다른 실시 예에서 상기 티켓은 기 설정된 기간 뒤에 자동적으로 삭제될 수 있다. 더욱이, 상기 티켓이 삭제된 후, 교체(replacement) 티켓이 발생될 수 있다. 다른 실시 예에 있어서, 상기 티켓의 사본은 상기 제 1 프로토콜 서비스에 저장될 수 있다. 게다가, 상기 티켓은 제 1 프로토콜 서비스에서 클라이언트로 전송될 수 있다.
다른 측면에서, 본 발명은 네트워크 연결이 두절된 뒤에 호스트 서비스에 클라이언트를 재연결하는 시스템에 관한 것이다. 상기 시스템은 제 1 프로토콜 서비스를 이용하여 상기 클라이언트와 호스트 서비스 간의 연결을 재설정한다. 상기 클라이언트는 상기 제 1 프로토콜 서비스와의 제 1 연결을 유지하도록 형성된다. 상기 제 1 프로토콜 서비스는 상기 클라이언트와의 제 1 연결 및 상기 호스트 시스템과의 제 2 연결을 유지하도록 형성된다. 상기 시스템에 의해, 두절(disrution)은 상기 제 1 연결에서 검출되고, 상기 제 1 연결은 제 1 프로토콜 서비스와 호스트 서비스 간의 제 2 연결이 유지되는 동안 상기 클라이언트와 제 1 프로토콜 서비스 간에서 재설정된다. 상기 클라이언트는 상기 제 1 프로토콜 서비스에 클라이언트를 관련된 티켓을 전송한다. 상기 티켓이 확인되고, 상기 티켓이 확인된 후, 상기 제 1 프로토콜 서비스는 재설정된 제 1 연결을 유지되고 있는 제 2 연결에 링크한다.
본 발명의 일 실시 예에서, 상기 시스템은 상기 재설정된 제 1 연결을 유지되고 있는 제 2 연결에 링크하기 전에 상기 티켓을 확인하는 것을 더 포함한다. 상기 티켓의 확인는 상기 제 1 프로토콜 서비스에 의해 수신된 티켓으로부터 세션 식별자와 키를 획득하는 것을 더 포함한다. 상기 티켓으로부터의 세션 식별자는 클라이언트의 저장되고 암호화된 인증서를 회수하기 위해 이용된다. 그리고나서, 상기 시스템은 상기 티켓으로부터의 키를 이용하여 상기 회수된 인증서를 해독한다.
다른 실시 예에 있어서, 본 발명은 호스트 서비스에 클라이언트 연결을 재설정할 때, 호스트 서비스에 클라이언트를 재인증하기 위한 시스템을 제공한다. 상기 시스템은 클라이언트와 제 1 프로토콜 서비스 간의 제 1 연결 및 제 1 프로토콜 서비스와 호스트 서비스 간의 제 2 연결을 제공할 때, 상기 호스트 서비스에 클라이언트를 인증하는 것을 포함한다. 연결에서 두절을 검출한 후, 상기 연결을 재설정할 때, 상기 시스템은 상기 호스트 서비스에 클라이언트를 재인증하기 위해 상기 회수된 인증서를 이용한다.
본 발명의 또 다른 실시 예에서, 시스템은 클라이언트에 관련된 티켓을 생성하는 제 1 프로토콜 서비스를 더 포함한다. 또한, 상기 시스템은 상기 티켓이 확인된 후 이를 삭제하는 것을 포함한다. 일 실시 예에서, 상기 제 1 프로토콜 서비스는 상기 티켓을 기 설정된 기간 뒤에 자동적으로 삭제할 수 있다. 더욱이, 상기 티켓이 삭제된 후, 상기 시스템은 교체 티켓을 생성한다. 다른 실시 예에 있어서, 상기 제 1 프로토콜 서비스는 상기 티켓의 사본을 저장한다. 게다가, 제 1 프로토콜 서비스는 상기 티켓을 클라이언트로 전송할 수 있다.
본 발명의 실시 예들이 이하에 기술된다. 단, 상기 실시 예들에 의해 본 발명이 한정되는 것은 아니며, 본 발명의 범위 내라면 이하에서 표현된 내용의 부가 및 변경도 또한 포함된다. 더욱이, 이하에 기술된 다양한 실시 예들의 형태는 상호배타적이지 않으며, 다양한 조합 및 치환이 가능하고, 본 발명의 사상 및 범위로부터 벗어나지 않는 범위 내에서 이하에 표현된 바에 의해 만들어 지지 않은 상기 조합 및 치환도 가능할 수 있음은 당업자에게 명확하다.
도 1A를 참조하면, 일반적으로 본 발명은 네트워크 통신에 속하고, 특히 호스트 서비스에 신뢰성 높은 연결을 클라이언트에 제공하기 위해 유용하게 사용될 수 있다. 개괄적으로, 네트워크 통신을 위한 시스템(100)은 네트워크(104) 상에서 제 1 프로토콜 서비스(112)(예를 들어, 제 2 컴퓨팅 장치)와 통신하는 클라이언트(108)(예를 들어, 제 1 컴퓨팅 장치)를 포함한다. 또한, 상기 시스템(100)은 네트워크(104') 상에서 제 1 프로토콜 서비스(112)와 통신되고, 이를 통해 상기 네트워크(104) 상에서 클라이언트(108)와 통신되는 다수의 호스트 서비스(116a-116n)(예를 들어, 제 3 컴퓨팅 장치)를 포함한다. 또는, 본 발명의 다른 실시 예의 경우, 도 1B를 참조하면, 상기 제 1 프로토콜 서비스(112)와 호스트 서비스(116a-116n)는 도 1A에 도시된 바와 같이 분리된 컴퓨팅 장치로 구현되지 않으며, 일 예로 호스트 노드(118a)와 같은 동일한 컴퓨팅 장치에 병합되어 구현된다. 상기 시스템(100)은 하나, 둘 또는 임의의 수의 호스트 노드들(118a-118n)을 포함할 수 있다.
일 실시 예로서, 상기 네트워크들(104, 104')은 도 1A에 도시된 바와 같이 분리된 네트워크이다. 또는, 상기 네트워크들(104, 104')은 도 1B에 도시된 바와 같이 동일한 네트워크(104)일 수 있다. 일 실시 예로서, 상기 네트워크(104) 및/또는 네트워크(104')는 일 예로 사내 인트라넷과 같은 랜(Local-Area Network, LAN) 또는 인터넷, 월드와이드웹(World Wide Web)과 같은 광역 네트워크(Wide-Area Network, WAN)일 수 있다. 상기 클라이언트(108), 제 1 프로토콜 서비스(112), 호스트 서비스(116a-116n) 및/또는 호스트 노드(118a-118n)들은 규격 전화선, 랜 또는 광역 네트워크 링크(예 : 802.11, T1, T3, 56kb, X.25), 광대역 연결(예 : ISDN, Frame Relay, ATM), 무선 연결 또는 상기 언급한 것의 적어도 하나 이상의 조합에 따른 다양한 연결 수단을 통하여 연결된다.
게다가, 상기 클라이언트(108)는 워크스테이션, 데스크탑 컴퓨터, 랩탑, 핸드헬드 컴퓨터, 모바일 전화기 또는 통신 가능하고 충분한 프로세서 파워와 상기 언급한 기능을 수행하기 위한 메모리 용량을 가지는 다른 형태의 컴퓨팅 또는 정보통신 기기가 될 수 있다. 덧붙여, 상기 클라이언트(108)는 로컬 네트워크(104)에 로컬 데스크탑 클라이언트이거나 개별 네트워크(104)의 원격 디스플레이 클라이언트일 수 있다. 상기 클라이언트(108)는 예를 들어, 비주얼 디스플레이 장치(예: 컴퓨터 모니터), 데이터 입력 장치(예: 키보드), 비휘발성 및/또는 휘발성 스토리지(예: 컴퓨터 메모리), 프로세서, 그리고 마우스를 포함할 수 있다. 사용자 인터페이스를 갖는 클라이언트 에이전트(Client Agent)(128)의 일 예는 웹 브라우저이다.( 예: 마이크로소프트. 인터넷 익스플로러 브라우저 및/또는 네스케이프 브라우저 ).
이와 마찬가지로, 도 1A에 도시된, 상기 제 1 프로토콜 서비스(112)와 호스트 서비스(116a-116n)는 각각 통신 가능하고, 명세서 상에 기재된 작동을 수행하기에 충분한 프로세서 파워와 메모리 용량을 가지는 어떠한 계산 장치로도 제공될 수 있다. 또는, 제 1 프로토콜 서비스(112)와 호스트 서비스(116a-116n)는 도 1B에 도시된 바와 같이 동일한 컴퓨팅 장치 즉, 일 예로 호스트 노트(118a-118n) 중 하나에 병합되는 것으로, 상기 제 1 프로토콜 서비스(112) 및/또는 호스트 서비스(116a-116n)은 일반적인 컴퓨터 및/또는 예를 들어 ASIC 또는 FPGA와 같은 특수 목적 하드웨어 장치를 동작시키는 소프트웨어 프로그램으로서 구현될 수 있다.
상기 클라이언트(108)와 유사하게, 각각의 호스트 노드들(118a-118n)은 각각 통신 가능하고, 명세서 상에 기재된 작동을 수행하기에 충분한 프로세서 파워와 메모리 용량을 가지는 앞서 설명한 바와 같은(예 : 퍼스널 컴퓨터) 어떠한 계산 장치도 제공될 수 있다. 각각의 호스트 노드들(118a-118n)은 다양한 통신 프로토콜들(예: ICA, HTTP, TCP/IP 그리고 IPX), SPX, 넷 바이오스, 이더넷, RS232, 직접적인 비동기 연결)을 사용하여 통신 채널들(124a-124n) 상에서 통신을 설정할 수 있다.
일 실시 예로서, 각각의 호스트 서비스(116a-116n)는 원격 조작으로 클라이언트(108)에 이용 가능한 하나 이상의 애플리케이션 프로그램을 호스팅한다. 동일한애플리케이션 프로그램은 하나 또는 임의 수의 호스트 서비스(116a-116n)에 의해 호스팅될 수 있다. 이와 같은 애플리케이션들은 마이크로소프트 워드와 같은 워드프로세싱 프로그램들, 마이크로소프트 엑셀과 같은 스프레드시트 프로그램들, Microsoft Corporation of Redmond, Washington.으로부터 이용가능한 프로세싱 프로그램들 및 스프레드 프로그램들을 포함한다. 애플리케이션 프로그림들의 다른 실시 예로서 어떠한 또는 모든 호스트 서비스(116a-116n)에 의해 호스팅받을 수 있는 재정 처리 프로그램, 고객 등록 프로그램, 프로그램이 기술 자원 정보, 고객 데이터베이스 애플리케이션 및 애플리케이션 세트 매니저를 포함한다. 더욱이 일 실시 예로서, 하나 이상의 호스트 서비스(116a-116n)는 상기 클라이언트(108)에 스트리밍 오디오 및/또는 스트리밍 비디오를 제공하는 오디오/비디오 스트리밍 서버이다. 다른 실시 예에 있어서, 상기 호스트 서비스(116a-116n)는 상기 클라이언트(108)에 어떠한/모든 파일 유형을 제공하는 파일 서버를 포함한다.
도 1A 및 도 1B를 참조하면, 상기 클라이언트(108)는 제 1 프로토콜을 이용하여 네트워크(104) 상에서 클라이언트(108)와 제 1 프로토콜 서비스(112) 간의 연결을 설정하도록 형성된다. 이에 대해 상기 제 1 프로토콜 서비스(112)는 연결(120)을 받아드리도록 형성된다. 따라서, 상기 클라이언트(108)와 제 1 프로토콜 서비스(112)는 이하 도 2A, 2B 및 도 3에 기술되는 바와 같은 제 1 프로토콜을 이용하여 서로 통신할 수 있게 된다.
도 1A 및 도 1B에 도시된 바와 같이, 몇몇의 실시 예에서, 클라이언트 에이전트(128)는 상기 클라이언트(108)에 포함된다. 상기 클라이언트 에이전트(128)은 일 예로 소프트웨어 프로그램 및/또는 ASIC 또는 FPGA와 같은 하드웨어 기기로 구현될 수 있다. 상기 클라이언트 에이전트(128)은 어떤 종류의 프로토콜도 이용할 수 있고, 이는 일 예로 HTTP 클라이언트 에이전트, FTP 클라이언트 에이전트, Oscar 클라이언트 에이전트, Telnet 클라이언트 에이전트, Citrix 시스템로부터의 ICA(Independent Computing Architecture) 클라이언트 에이전트, Microsoft Corporation of Redmond, Washington.으로부터의 RDP(Remote Desktop Procedure) 클라이언트 에이전트가 될 수 있다. 몇몇 실시 예로서, 상기 클라이언트 에이전트(128)은 제 1 프로토콜을 사용하여 통신할 수 있도록 자체적으로 구현된다. 몇몇 실시 예에서는(미도시), 상기 클라이언트(108)는 다수의 클라이언트 에이전트(128a-128n)을 포함하며, 이들은 각각 호스트 서비스(116a-116n)과 통신한다.
다른 실시 예에 있어서, 단독 수행 클라이언트 에이전트는 제 1 프로토콜을 이용함으로써 클라이언트(108)가 통신할 수 있도록 구현된다. 상기 단독 수행 클라이언트 에이전트는 상기 클라이언트(108) 내에 통합될 수 있거나, 또는, 단독 수행 클라이언트 에이전트가 상기 클라이언트(108)로부터 분리될 수 있다. 상기 단독 수행 클라이언트 에이전트는 예를 들어, 로컬 호스트 프록시(local host proxy)이다. 일반적으로, 상기 단독 수행 클라이언트 에이전트는 상기 클라이언트 에이전트(128)과 비교하여 본 명세서 상에 기술된 어떠한 기능도 구현시킬 수 있다.
이하 기술되는 바와 같이, 상기 제 1 프로토콜 서비스(112)는 일 실시 예로서 제 1 프로토콜을 이용하여 통신할 수 있도록 자체적으로 구현된다. 상기 제 1 프로토콜 서비스(112)는 각각 제 1 프로토콜 서비스(112)와 호스트 서비스(116a-116n) 간의 연결(124a-124n)을 설정하도록 형성된다. 예를 들어, 상기 제 1 프로토콜 서비스(112)는 제 1 프로토콜 서비스(112)와 하나의 호스트 서비스(116a) 간의 연결(124a) 및 제 1 프로토콜 서비스(112)와 또 다른 호스트 서비스(116b) 간의 연결(124b)를 설정할 수 있다. 일 실시 예로서, 상기 제 1 프로토콜 서비스(112)는 이와 같은 연결(124a-124n)을 개별적으로 설정한다.(즉, 제 1 프로토콜 서비스(112)가 한번에 하나의 연결을 설정한다.) 다른 실시 예로서, 상기 제 1 프로토콜 서비스(112)가 동시에 이와 같은 적어도 2개 이상의 연결(124a-124n)을 설정한다.
또 다른 실시 예로서, 상기 제 1 프로토콜 서비스(112)는 다중의 연결(124a-124n)을 동시에 설정하고, 이를 유지할 수 있다. 상기 제 1 프로토콜 서비스(112)는 상기 클라이언트(108)로의 연결에 대한 중단(interrupt)없이 적어도 2개 이상의 연결(124a-124n)을 제공할 수 있도록 구현된다. 예를 들어, 상기 제 1 프로토콜 서비스(112)는 상기 클라이언트(108)의 사용자가 상기 호스트 서비스(116a) 상에 속한 제 1 애플리케이션 프로그램의 실행 처리를 요구할 때, 상기 제 1 프로토콜 서비스(112)와 호스트 서비스(116a) 간의 연결(124a)을 설정하도록 구현될 수 있다. 사용자가 상기 제 1 애플리케이션 프로그램의 실행을 종료하고, 예를 들어 호스트 서비스(116b)에 속한 제 2 애플리케이션 프로그램의 실행을 시작할 때, 일 실시 예로서 상기 제 1 프로토콜 서비스(112)는 상기 제 1 프로토콜 서비스(112)와 클라이언트(108) 간의 연결(120)을 두절하지 아니하고, 상기 제 1 프로토콜 서비스(112)는 연결(124a)을 중단하고, 상기 제 1 프로토콜 서비스(112)와 호스트 서비스(116b)의 연결(124b)을 설정하도록 구현된다.
상기 제 1 프로토콜 서비스(112)와 호스트 서비스(116a-116n)는 HTTP, FTP, Oscar, Telnet, Citrix 시스템로부터의 ICA 원격 디스플레이 프로토콜, 및/또는 Microsoft Corporation of Redmond, Washington.으로부터의 RDP 원격 디스플레이 프로토콜을 포함하는 다양한 2차 프로토콜 중 어느 하나를 각각 이용하는 상기 연결(124a-124n)을 통해 통신할 수 있다.
예를 들어, 상기 제 1 프로토콜 서비스(112)와 호스트 서비스(116a)는 ICA 원격 디스플레이 프로토콜을 이용하여 연결(124a)을 통해 통신할 수 있고, 반면에 상기 제 1 프로토콜 서비스(112)와 호스트 서비스(116b)는 RDP 원격 디스플레이 프로토콜을 이용하여 연결(124b)을 통해 통신할 수 있다.
일 실시 예로서, 상기 제 1 프로토콜 서비스(112) 및 호스트 서비스(116) 간의 통신에 사용되는 ICA 원격 디스플레이 프로토콜과 같은 2차 프로토콜은 다수의 가상(virtual) 채널을 포함한다. 가상 채널은 데이터 교환의 커맨드(command)를 발행(issue)하기 위한 애플리케이션 층(layer) 코드에 의해 사용되는 세션-오리엔티드(session-oriented) 전송 연결이다. 예를 들어, 다수의 가상 채널 각각은 원격의 클라이언트(108)에서 기능을 구현할 수 있도록 하는 다수의 프로토콜 패킷들을 포함할 수 있다. 일 실시 예로서, 상기 다수의 가상 채널 중 하나는 클라이언트 (108)가 그래픽 사용자 인터페이스를 디스플레이하도록 하기 위한 제 1 프로토콜 서비스(112)를 통하여, 상기 호스트 서비스(116)로부터 상기 클라이언트(108)에 그래픽 스크린 커맨드를 전송하도록 하는 프로토콜 패킷을 포함한다. 다른 실시 예에 있어서, 상기 다수의 가상 채널 중 하나는 클라이언트(108)가 문서를 출력하도록 하기 위한 제 1 프로토콜 서비스(112)를 통하여, 상기 호스트 서비스(116)로부터 상기 클라이언트(108)에 프린터 커맨드를 전송하도록 하는 프로토콜 패킷을 포함한다.
또 다른 실시 예에 있어서, 상기 제 1 프로토콜은 터널링(tunneling) 프로토콜이다. 상기 제 1 프로토콜 서비스(112)는 제 1 프로토콜 내에, 호스트 서비스(116a-116n) 중 하나와 제 1 프로토콜 서비스(112) 간의 통신을 위해 각각 사용되는 다수의 2차 프로토콜을 캡슐화한다. 이와 같이 상기 호스트 서비스(116a-116n)와 제 1 프로토콜 서비스(112)는 다수의 2차 프로토콜을 경유하여 클라이언트 (108)와 통신한다. 일 실시 예로서, 상기 제 1 프로토콜은 예를 들어, TCP/IP 연결 상에서 다중 2차 프로토콜에 터널링시킬 수 있는 애플리케이션-레벨 이동 프로토콜이다.
도 2A를 참조하면, 연결(120)을 경유하는 클라이언트(108)와 제 1 프로토콜 서비스(112) 간의 통신은 제 1 프로토콜(204) 내에서 캡슐화된 다수의 2차 프로토콜(200a-200n)의 형태를 갖는다.(예 : HTTP, FTP, Oscar, Telnet, ICA 및/또는 RDP) 이는 상기 제 1 프로토콜(204) 내에서 상기 2차 프로토콜(200a-200n)의 위치에 의해 표시된다. 보안 통신이 요청되지 않는 경우 상기 제 1 프로토콜(204)은 도2A에 도시된 바와 같이, 비보안 TCP/IP 연결(208) 상에서 통신된다.
도 2B를 참조하면, 보안 통신이 사용되면, 상기 제 1 프로토콜(204)은 예를 들어 보안 소켓 층(Secure Socket Layer, SSL)과 같은 보안 프로토콜(216) 사용에 의해 보안되는 TCP/IP 연결(212)과 같은 암호화된 연결 상에서 통신된다. 상기 SSL은 Netscape Communication Corporation of Mauntain View, Califonia에 의해 최초로 개발된 보안 프로토콜이고, 현재는 전송계층 보안(Transport Layer Security, TLS) 프로토콜로서 IETF(Internet Engineering Task Force)에 의해 선포되고 IETF RFC-2246에 기술된 표준이다.
그러므로, 상기 다수의 2차 프로토콜들(200a-200n)은 연결(120) 상의 보안 프로토콜(216)이 있거나(도 2B) 또는 없는(도 2A) 제 1 프로토콜 내에서 통신된다.
상기 2차 프로토콜들은 HTTP, FTP, Oscar, Telnet, ICA를 포함하는 연결들(124a-124n) 상에서 통신하기 위해 사용될 수 있다. 게다가, 일 실시 예로서, 앞서 언급한 적어도 하나 이상의 2차 프로토콜들은 다수의 가상 채널들을 포함하고, 그들 각각은 원격의 클라이언트(108)의 기능을 구현하는 다수의 프로토콜 패킷을 포함한다. 일 실시 예로서, 예를 들면 하나의 호스트 서비스(106a)가 HTTP 프로토콜을 사용하는 연결(124a) 상에서 제 1 프로토콜 서비스(112)와 통신하는 웹 서버이고, 다른 하나의 호스트 서비스(116b)는 ICA 프로토콜을 사용하는 연결(124b) 상에서 제 1 프로토콜 서비스(112)와 통신하는 애플리케이션 서버이다. 상기 호스트 서비스(116b)는 상기 클라이언트(108)가 그래픽 사용자 인터페이스를 디스플레이하도록 하기 위해 상기 클라이언트(108)에 그래픽 스크린 커맨드을 전송하는 프로토콜 패킷과, 상기 클라이언트(108)가 문서를 출력하도록 하기 위해 상기 클라이언트(108)에 프린터 커맨드을 전송하는 프로토콜 패킷을 생성한다.
본 발명의 다른 측면은, 이하에서 기술되는 바와 같은 네트워크 연결들이 열리고 닫히는 횟수를 감축시키는 방법 및 시스템이다. 일 실시 예로서, 제 1 프로토콜(204)은 상기 2차 프로토콜 연결들(200a-200n)이 터널링되는 것을 허용한다. 즉, 일 예로 HTTP 연결(200n)은 열리거나 또는 닫히기 위해 반복적으로 상기 제 1 프로토콜(204) 상의 전송 연결의 요구 없이 통신되며(예 : TCP 연결(208) 및/또는 212), 보안 프로토콜 연결(216) 또는 제 1 프로토콜 연결(204)은 이와 유사하게 자체적으로 열림 및/또는 닫힘이 반복된다.
제 1 프로토콜(204)의 캡슐화가 없으면 상기 2차 프로토콜(200a-200n)은 TCP 연결들과 마찬가지로 자주 네트워크 연결들을 개폐하게 된다. 이는 시스템에 심각한 지연과 부하를 추가할 것이다. 이러한 지연과 부하는 네트워크 연결의 설정에 있어 심각한 부하를 가진 SSL과 같은 보안 캡슐화 프로토콜 214를 이용하여 더 증가된다. 제 1 프로토콜(204) 내에서 2차 프로토콜(200a-200n)을 캡슐화하고, 전송 연결(208, 212)의 연결을 유지함으로써, 제 1 프로토콜(204)의 페이로드(paylaod)이 일환으로 상기 2차 프로토콜(200a-200n)들은 네트워크 연결(120)의 빈번하고 손실이 큰 개폐 동작을 수행하지 않아도 된다. 게다가, 2차 프로토콜(200a-200n)이 보안 프로토콜(216)로 제 1 프로토콜(204) 내에서 통신될 수 있기 때문에, 상기 2차 프로토콜(200a-200n)은 또한 SSL과 같은 보안 연결을 개폐할 필요가 없다. 전송 연결(208, 212)은 보안 또는 비보안 네트워크 연결(120)의 반복적인 개폐없이 캡슐화된 제 2 프로토콜들(200a-200n)이 통신될 수 있도록 네트워크 연결(120)을 설정하고 유지한다. 이는 상기 2차 프로토콜(200a-200n)을 통신시킴에 있어 현저하게 작동의 속도를 증가시킨다.
상술한 바와 같이, 2차 프로토콜(200a-200n)은 HTTP, FTP, Oscar, Telnet, RDA 또는 ICA와 같은 프로토콜을 이용함으로써, 애플리케이션에 관련된 프로토콜 패킷을 운반한다. 상기 2차 프로토콜 패킷(304a-304n)은 상기 클라이언트(108)와 호스트 서비스(116a-116n) 간에 처리(transacted)된 애플리케이션 기능에 관련된 데이터를 운반한다. 일 예로, 클라이언트(108)의 사용자는 상기 호스트 서비스(116a-116n)에 의해 제공된 웹 페이지와 상호 작용을 할 수 있다. 상기 클라이언트(108)과 호스트 서비스(116a-116n) 간의 처리에 있어, 제 1 프로토콜(204) 내에서 캡슐화된 2차 프로토콜(200a-200n)은 웹 페이지를 디스플레이하고, 상기 호스트 서비스(116a-116n)에 통신하기 위한 어떠한 사용자의 상호작용을 접수하는 http 프로토콜 패킷들을 가질 수 있다. 상기 전송 연결(208, 212)이 2차 프로토콜(200a-200n)에 의해 유지되지 않기 때문에, 상기 2차 프로토콜(200a-200n)은 어떠한 네트워크-레벨 연결 방해를 다룰 필요가 없다. 즉, 상기 2차 프로토콜(200a-200n)은 그들의 페이로드(payload)에 어떠한 네트워크-레벨 연결 방해 정보를 제공하지 않을 수 있다. 상기 실시 예에서, 상기 클라이언트(108)에 전송된 2차 프로토콜(200a-200n)의 http 관련된 2차 프로토콜 패킷(304a-304n)은 네트워크 방해에 대한 통지(예 : 웹 페이지 상의 에러 메시지)를 제공하지 않을 것이다. 그러므로, 상기 클라이언트(108) 상의 사용자는 상기 2차 프로토콜(200a-200n)을 통한 어떠한 네트워크 레벨 연결 방해를 통보받지 않을 것이다. 이는 상기 2차 프로토콜(200a-200n)에 관련된 애플리케이션의 사용 동안 사용자로부터 네트워크 연결 방해를 효과적으로 숨길 수 있다.
도 3을 참조하면, 상기 제 1 프로토콜 서비스(112)와 클라이언트(108)의 클라이언트 에이전트(128)가 사용된 일 예의 프로세스(300)는 연결(120)을 경유하는 통신을 위한 제 1 프로토콜(204) 내에서 다수의 2차 프로토콜(200)(예 : HTTP, FTP, Oscar, Telnet, ICA 및/또는 RDP)을 캡슐화한다. 선택적으로, 이하에 기술된 바와 같이, 상기 제 1 프로토콜 서비스(112)와 클라이언트(108)의 클라이언트 에이전트(128)가 사용된 일 예의 프로세스(300)는 또한 연결(120)을 경유하는 통신에 앞서 제 1 프로토콜의 레벨에 있어서 통신을 압축 및/또는 암호화한다. 상기 제 1 프로토콜 서비스(112)의 관점에서 보면, 상기 2차 프로토콜 패킷(304a-304n)은 제 1 프로토콜 서비스(112)에서 연결(124a-124n)을 경유하여 수신된다. 예를 들어, 2개의 2차 프로토콜 패킷(304a, 304b)은 제 1 프로토콜 서비스 112에 의해 수신된다. 하나, 2 또는 임의 수의 2차 프로토콜 패킷들(304a-304n)은 제 1 프로토콜 서비스(112)에 의해 수신된다. 하나, 둘 또는 2차 프로토콜 패킷들(304a-304n) 중 몇개도 수신될 수 있다. 일 실시 예로서, 상기 2차 프로토콜 패킷들(304a-304n)은 연결(124) 상에서 제 1 프로토콜 서비스(112)로 호스트 서비스(116)에 의해 전송된다. 상기 2차 프로토콜 패킷들(304a-304n)은 또한 데이터 페이로드로도 불리는 데이터 패킷(312) 및 헤더(308)를 포함한다.
상기 2차 프로토콜 패킷들(304a-304n)의 수신에 따라 상기 제 1 프로토콜 서비스(112)가 제 1 프로토콜 패킷(316) 내의 적어도 하나 이상의 2차 프로토콜 패킷 (304)을 캡슐화한다. 일 실시 예로서, 상기 제 1 프로토콜 서비스(112)는 제 1 프로토콜 패킷 헤더(320)를 생성하고, 일 예로 2개의 2차 프로토콜 패킷(304a, 304b)과 같은 적어도 하나 이상의 2차 프로토콜 패킷(304a-304n)을 갖는 제 1 프로토콜 패킷(316)의 데이터 페이로드(316)을 캡슐화한다. 다른 실시 예로서, 단지 하나의 2차 프로토콜 패킷(304a)이 각각의 제 1 프로토콜 패킷(316) 내에 캡슐화된다.
일 실시 예로서, 제 1 프로토콜 패킷들(316)은 이후 일 예로 도 2A를 통해 기술된 바와 같이 연결(208) 과 같은 연결(120) 상에서 클라이언트(108)의 클라이언트 에이전트(128)로 전송된다. 또는, 다른 실시 예로서, 상기 제 1 프로토콜 서비스(112)는 어떠한 제 1 프로토콜 패킷들(316)의 전송에 앞서 상기 제 1 프로토콜(204) 레벨에 있어서의 통신을 암호화하도록 구현된다. 이와 같은 실시 예에 있어서, 상기 제 1 프로토콜 패킷들(316)은 일 예로 도 2B에 나타난 바와 같은 SSL 프로토콜을 사용하여 암호화된다. 그 결과, 데이터 페이로드(336)로서의 암호화된 제 1 프로토콜 패킷(316')와 헤더(332)를 포함하는 보안 패킷(328)이 생성된다. 상기 보안 패킷(328)은 그 후 일 예로 도 2B에 도시된 바와 같이 바와 같이 보안 TCP/IP 연결(212)과 같은 연결(120) 상에서 클라이언트(108)의 클라이언트 에이전트(128)로 전송될 수 있다.
다른 실시 예에 있어서, 상기 제 1 프로토콜 서비스(112)는 어떠한 제 1 프로토콜 패킷들(316)의 전송에 앞서 상기 제 1 프로토콜(204) 레벨에 있어서의 통신을 압축하도록 구현된다. 일 실시 예로, 상기 제 1 프로토콜 패킷(316)의 암호화에 앞서, 상기 제 1 프로토콜 서비스(112)는 기본 압축 기술을 사용하여 상기 제 1 프로토콜 패킷(316)을 압축한다. 즉, 상기 시스템(100)의 효율이 향상된다.
상기 도 1A 및 도 1B를 다시 참조하면, 일 실시 예로서, 본 발명에 의한 상기 시스템(100)은, 일 예로 호스트 서비스(116a)와 같은 호스트 서비스(116)에 대한 지속적인 연결을 원격의 클라이언트(108)에 제공한다. 예를 들어, 상기 클라이언트(108)가 상기 클라이언트(108)와 제 1 프로토콜 서비스(112) 간의 연결(120)을 설정하고, 상기 제 1 프로토콜 서비스(112)는 상기 제 1 프로토콜 서비스(112)와 호스트 서비스(116a) 간의 연결(124a)을 설정하면, 상기 클라이언트 에이전트(128) 및 제 1 프로토콜 서비스(112) 중 하나 또는 이들 모두가 상기 연결(120)을 경유하여 가장 최근에 전송된 제 1 프로토콜 데이터 패킷들의 큐(queue)를 유지하도록 구현된다. 일 예로 상기 큐(queue) 된 데이터 패킷들은 연결(120)의 장애 발생 전 및 발생 시에 클라이언트 에이전트(128) 및 /또는 제 1 프로토콜 서비스(112)에 의해 유지될 수 있다. 게다가, 상기 연결(120)의 발생 시에 상기 제 1 프로토콜 서비스(112), 또한 상기 호스트 서비스(116a)는 상기 연결(124a)을 유지하도록 형성된다.
상기 연결(120)의 장애를 따라, 상기 클라이언트(108)는 어떠한 데이터의 손실없이 상기 제 1 프로토콜 서비스(112)로 새로운 연결(120)을 설정한다. 보다 명확하게, 상기 연결(120)의 장에 발생 시에 상기 연결(124a)이 유지되기 때문에 새롭게 설정된 연결(120)은 상기 유지된 연결(124a)과 링크될 수 있다. 또한, 상기 가장 최근에 전송된 제 1 프로토콜 데이터 패킷들이 큐(queue) 되었기 때문에, 이들은 상기 클라이언트(108)에 의해 제 1 프로토콜 서비스(112)로 및/또는 상기 제 1 프로토콜 서비스(112)에 의해 상기 새롭게 설정된 연결(120) 상에서 클라이언트(108)로 다시 전송될 수 있다. 즉, 상기 제 1 프로토콜 서비스(112)를 통한 상기 호스트 서비스(116a)와 클라이언트(108) 간의 통신 세션은 지속적이고, 어떠한 데이터의 손실 없이 처리한다.
일 실시 예로서, 상기 클라이언트(108) 상의 클라이언트 에이전트(128) 및/또는 제 1 프로토콜 서비스(112)는 상기 연결(120) 상에서 그들이 전송한 데이터 패킷들을 넘버링한다. 예를 들어, 각각의 클라이언트 에이전트(128)와 제 1 프로토콜 서비스(112)는 다른 것이 그것의 데이터 패킷들이 어떻게 넘버링되는 지에 관계없이 자신의 전송 데이터 패킷들을 넘버링한다. 더욱이, 상기 데이터 패킷들의 넘버링은 상기 데이터 패킷들의 어떠한 재 넘버링도 없이 절대적이다. 일 예로, 상기 클라이언트 에이전트(128) 및/또는 제 1 프로토콜 서비스(112)에 의해 전송된 제 1 데이터 패킷은 No.1으로 넘버링 될 수 있으며, 상기 클라이언트 에이전트(128) 및/또는 제 1 프로토콜 서비스(112)에 의해 상기 연결(120)에서 전송되는 각각의 데이터 패킷은 그 후 개별적으로 연속적인 번호가 넘버링된다.
이와 같은 실시 예에서, 연결(120)의 두절 및 재설정 이후, 상기 클라이언트 에이전트(128) 및/또는 제 1 프로토콜 서비스(112)는 상대측에게 필요한 다음 데이터 패킷을 공지한다. 예를 들어, 클라이언트 에이전트(128)가 연결(120)의 두절 전에 Nos.1-10의 데이터 패킷을 수신받으면, 상기 클라이언트 에이전트(128)은 상기 연결(120)의 재설정 시에 현재 데이터 패킷 No.11이 필요하다는 것을 상기 제 1 데이터 프로토콜 서비스(112)에 공지한다. 이와 마찬가지로 제 1 프로토콜 서비스(112)도 상기와 같이 동작한다. 또는, 다른 그와 같은 실시 예에 있어서, 클라이언트 에이전트(128) 및/또는 제 1 프로토콜 서비스(112)는 상대측에게 수신받은 마지막 데이터 패킷을 공지한다. 예를 들어, 클라이언트 에이전트(128)가 연결(120)의 두절 전에 Nos.1-10의 데이터 패킷을 수신받으면, 상기 클라이언트 에이전트(128)는 상기 연결(120)의 재설정 시에 마지막으로 수신된 데이터 패킷이 No.1 이라는 것을 상기 제 1 데이터 프로토콜 서비스(112)에 공지한다. 이와 마찬가지로 제 1 프로토콜 서비스(112)도 상기와 같이 동작한다. 또 다른 실시 예로서, 상기 클라이언트 에이전트(128) 및/또는 제 1 프로토콜 서비스(112)는 상대측에게 연결(120)의 재설정 시에 상기 마지막으로 수신된 데이터 패킷 및 필요한 다음 데이터 패킷을 공지한다.
이와 같은 실시 예에서, 상기 연결(120)의 재설정 시, 상기 클라이언트 에이전트(128) 및/또는 제 1 프로토콜 서비스(112)는 상기 제 1 프로토콜 서비스(112)를 통하여, 호스트 서비스(116)와 상기 클라이언트(108) 간의 통신 세션이 데이터의 어떠한 손실량 없이 처리하도록 허용되는 상대측으로부터 수신받지 못한 버퍼 데이터 패킷을 재 송신할 수 있다. 더욱이, 상기 연결(120)의 재설정 시에, 상기 클라이언트 에이전트(128) 및 제 1 프로토콜 서비스(112)는 그들 각자의 버퍼 각각으로부터 지금 상대측에 의해 수신될 것으로 알려진 버퍼 데이터 패킷을 플러쉬(flush)시킬 수 있다.
신뢰할 수 있고 지속적인 연결을 갖는 클라이언트(108)를 호스 서비스(116a ~ 116n)에 제공함으로써, 본 발명은 네트워크 연결 차단을 통해 사용자 세션을 보유함으로써 호스트 서비스(116a~116n)로 새로운 사용자 세션을 개시하는 프로세스를 피한다. 호스트 서비스(116a ~ 116n)를 갖는 각 사용자 세션에 대해, 클라이언트(108) 및 호스트 서비스(116a ~ 116n)는 특정한 세션 컨텍스트 및 캐시 및 사용자 세션의 인스턴스와 연관된 다른 특정 애플리케이션 메커니즘을 보유할 수 있다. 각 새로운 사용자 세션이 설정되는 경우, 이 특정한 세션 컨텍스트 및 캐시는 새로운 사용자 세션을 반영하기 위해 재-상주(populate) 또는 재-설정 요구된다. 예를 들면, 클라이언트(108) 상의 사용자는 호스트 서비스(116a ~ 116n)와 http 세션을 가질 수 있다. 호스트 서비스(116a ~ 116n)는 특정한 컨텍스트를 유지하여 클라이언트(108)로 http 세션의 상기 인스턴스를 제공할 수 있다. 컨텍스트는 호스트 서비스(116a ~ 116n)의 기능을 제공하는 것과 연관된 데이터 베이스 또는 다른 구성요소를 서버의 메모리, 서버의 파일 내에 저장될 수 있다. 또한, 클라이언트(108)는 호스트 서비스(116a ~ 116n)에 두드러진 요청에 대한 트랙을 보유하기 위한 메커니즘으로, http 세션의 인스턴스에 특정한 로컬 컨텍스트를 가질 수 있다. 본 컨텍스트는 클라이언트(108)의 메모리, 클라이언트(108)의 파일 또는 클라이언트(108)와 인터페이스되는 다른 소프트웨어 컴포넌트에 저장될 수 있다. 만약, 클라이언트(108)와 호스트 서비스(116a ~ 116n) 간에 연결이 영구적이지 않으면, 새로운 사용자 세션은 호스트 서비스(116a ~ 116n)와 클라이언트(108) 상에 새로운 특정한 세션 컨텍스트로 설정될 것을 요구한다. 본 발명이 세션을 보유하므로, 새로운 세션과 새로운 특정 세션 컨텍스트가 재설정되는 것은 요구되지 않는다.
본 발명은 세션이 중단되는(interrupt) 것을 클라이언트의 사용자에게 알리지 않고 네트워크 레벨 연결 중단을 통해 사용자 세션을 보유한다. 본 발명의 본 측면에 대한 동작에서, 제 1 프로토콜 서비스(112)는 클라이언트(108)와의 제 1 연결과 호스트 서비스(116a ~ 116n)와의 제 2 연결을 설정하여 보유한다. 제 1 연결 및 제 2 연결을 경유하여, 클라이언트(108)와 호스트 서비스(116a ~ 116n) 간의 세션이 설정된다. 제 1 프로토콜 서비스(112)는 임의의 인증서와 같은 임의의 세션 관련 정보 및 설정된 세션에 대한 클라이언트(108) 및 호스트 서비스(116a ~ 116n) 컨텍스트를 저장하여 보유할 수 있다. 클라이언트(108) 상에서 사용자는 설정된 세션을 통해 호스트 서비스(116a ~ 116n)에 의해 제공된 기능을 실행할 수 있다(exercise). 이처럼, 연관된 이차 프로토콜 패킷(340a ~ 340n)은 이러한 기능의 거래(transaction)에 관한 데이터를 포함할 수 있다. 이차 프로토콜(200a~ 200n)의 일부로 이 이차 프로토콜 패킷(340a ~ 340n)은 제 1 프로토콜(204)에서 캡슐화되어 통신된다. 제 1 연결 또는 제 2 연결 중 하나에서의 단절을 삭제함에 따라, 제 1 프로토콜 서비스(112)가 단절된 연결을 재-설정할 수 있는 한편 단절되지 않는 다른 연결을 보유할 수 있다. 네트워크 연결의 단절은 클라이언트와 호스트 서비스(116a ~ 116n) 간의 세션에 대한 단절을 야기할 수 있다. 그러나, 전달 메커니즘은 이차 프로토콜(200a~ 200n)에 의해 보유되지 않으므로, 네트워크 연결이 세션을 차단하지 않는다를 통지를 갖는 클라이언트(108) 상에서 사용자 없이 재-설정된 후에, 세션이 재-설정될 수 있다. 그러므로, 제 1 프로토콜(204)의 캡슐화 때문에, 네트워크 연결 단절에 의해 야기된 세션의 중단은 사용자로부터 효과적으로 숨겨진다.
세션 관련 정보를 보유하는 제 1 프로토콜 서비스(112)는 클라이언트(108)와 호스트 서비스(116a ~ 116n) 간에 세션을 재설정할 수 있다. 예를 들면, 클라이언트(108)와 제 1 프로토콜 서비스(112) 간에 제 1 연결이 단절되면, 제 1 프로토콜 서비스(112)는 제 1 프로토콜 서비스(112) 및 호스트 서비스(116a ~ 116n) 간에 클라이언트(108)의 세션 활동 또는 개시를 유지할 수 있다. 제 1 연결이 재-설정된 다음, 제 1 프로토콜 서비스(112)는 제 1 프로토콜 서비스(112) 및 호스트 서비스(116) 간에 보유된 세션에 클라이언트(108)의 세션을 링크할 수 있다. 제 1 프로토콜 서비스는 제 1 연결 내의 단절 전에 큐된 임의 데이터를 클라이언트(108)에 전송할 수 있다. 이와 같이, 클라이언트(108)가 단절 전에 동일한 세션을 이용할 수 있으며, 호스트 서비스(116a ~ 116n)와 클라이언트(108)는 메모리 또는 그외에 저장 영역에 저장될 수 있는 임의의 특정 세션 컨텍스트를 지속적으로 이용할 수 있다. 더욱이, 제 1 프로토콜 서비스의 중개 때문에, 호스트 서비스(116a ~ 116n)는 제 1 프로토콜 서비스(112)와 클라이언트(108) 간에 네트워크 단절을 인식할 수 없다.
다른 예에서, 제 1 프로토콜 서비스 및 호스트 서비스(116a ~ 116n) 간에 제 2 연결이 단절되면, 제 1 프로토콜 서비스는 클라이언트(108)와 제 1 연결을 유지할 수 있는 한편, 호스트 서비스(116a ~ 116n)와 제 2 연결을 재-설정한다. 제 2 연결을 재설정한 다음, 제 1 프로토콜 서비스(112)는 클라이언트를 대신하여, 호스트 서비스(116a ~ 116n)와 클라이언트의 세션을 재-설정할 수 있다. 제 1 프로토콜 서비스(112)가 임의의 세션 관련 정보를 보유함으로, 클라이언트(108)가 제 1 프로토콜 서비스(112)와 호스트 서비스(116a ~ 116n) 간의 세션에 대한 제 2 네트워크 연결 및 단절 결과를 인식하지 않으므로, 제 1 프로토콜 서비스는 동일한 세션 또는 유사한 세션을 재-설정할 수 있다. 제 2 네트워크 연결 및 세션이 재설정되는 동안, 제 1 프로토콜 서비스(112)는 단절하는 동안 클라이언트(108)에 의해 전송된 임의의 세션 트랜잭션을 큐할 수 있다. 다음, 호스트 서비스(116a ~ 116n)를 가지고 세션을 재-설정한 다음, 제 1 프로토콜 서비스(112)는 큐된 트랜잭션을 호스트 서비스(116a ~ 116n)에 송신할 수 있으며, 세션은 정상적으로 지속할 수 있다. 이 방법으로, 클라이언트(108)는 세션에 대한 단절이 없는 것처럼 동작을 계속한다.
추가적으로, 신뢰할 수 있고 지속적인 연결을 제공함으로써, 본 발명은 또한 클라이언트(108)와 서버(415) 간 또는 호스트 서비스(116a ~ 116n)에서 실행된 기능의 일부로 트랜잭션, 커맨드 또는 동작에 대한 차단을 피한다. 예를 들면, 윈도우즈 익스플로러를 이용하는 파일 복사 동작은 네트워크 연결 내에 단절이 있은 후에 동작(working)을 진행하도록 설계되지 않는다. 클라이언트(108) 상에서 사용자가 클라이언트(108)에서 서버(415)로 파일을 복사하기 위해 윈도우즈 익스플로러의 파일 복사 특징을 이용할 수 있다. 파일(또는 파일들)의 크기 때문에, 본 동작은 완성하기 위해 상대적으로 연장된 시간을 소요할 수 있다. 만약 서버(415)에 파일 복사 동작을 진행하는 과정에서, 클라이언트(108)와 서버(415) 간에 네트워크 연결에 단절이 있다면, 파일 복사는 실패할 것이다. 네트워크 연결이 재-설정될 때, 사용자는 클라이언트(108)에서 서버(415)로 파일을 복사하기 위해 윈도우즈 익스플로러로부터 다른 파일 복사 동작을 시작해야할 것이다. 본 발명에 따르면, 사용자는 다른 파일 복사 동작을 시작할 필요가 없다. 네트워크 연결이 제 1 프로토콜(204) 연결의 일부로 재-설정될 수 있다. 파일 복사 동작은 이차 프로토콜(200a~ 200n)의 페이로드에서 캡슐화될 것이다. 이처럼, 윈도우즈 익스플로러의 파일 복사 동작이 네트워크 연결 내에 단절에 대해 표시하지 않으므로, 실패하지 않을 것이다. 제 1 프로토콜 서비스(112)는 임의의 연결을 재설정하고 임의의 큐잉된 데이터를 송신하므로 동작이 실패 없이 진행할 수 있다. 제 1 프로토콜 서비스(112)는 네트워크 연결에서의 단절 때문에 서버(415)에 전달되지 않는 파일 복사 동작에 관련한 큐 데이터를 보유할 것이다. 네트워크 연결이 재설정될 때, 제 1 프로토콜 서비스(112)가 규된 데이터를 송신할 수 있으며, 다음, 때가 되면 파일 복사 동작과 관련한 데이터를 전달하는 것을 계속할 수 있다.
본 발명의 일 측면은 파일 복사 동작을 관하여 설명하고 있지만, 당업자들은 클라이언트(108)와 서버(415) 또는 호스트 서비스(116a ~ 116n) 간에 처리된 임의의 동작, 트랜잭션(transaction), 커맨드, 함수 호출, 등이 네트워크 연결 단절로부터의 실패 없이, 더 나아가서 클라이언트(108)가 단절이 있다는 것을 인식하지 않거나 또는 단절을 알리지 않고 보유되어 지속될 수 있다.
또한, 신뢰할 수 있고 지속적인 연결을 제공함으로써, 본 발명 역시 클라이언트(108)가 클라이언트(108)에서 세션 또는 애플리케이션을 재시작하지 않고 다양한 네트워크 토폴로지를 통해 전달할 수 있다. 예를 들면, 클라이언트(108)는 무선 네트워크 연결을 갖는 컴퓨터 노트북일 수 있다. 클라이언트(108)가 제 1 무선 네트워크에서 제 2 무선 네트워크로 이동함에 따라, 클라이언트의 네트워크 연결(120)은 네트워크 연결이 제 2 무선 네트워크로 재설정되는 것과 같이, 제 1 무선 네트워크에서 임시적으로 단절될 수 있다. 제 2 무선 네트워크는 호스트 네임 또는 인터넷 프로토콜 주소와 같은 새로운 네트워크 식별자를 클라이언트(108)에 할당할 수 있다. 상기 새로운 네트워크 식별자는 제 1 무선 네트워크에 의해 클라이언트(108)에 할당된 네트워크 식별자와 상이할 수 있다. 다른 실시 예에서, 클라이언트(108)는 네트워크상에서 이더넷 케이블을 통해 포트에 물리적으로 연결될 수 있다. 물리적 연결이 언플러그될(unplug) 수 있으며, 클라이언트(108)는 네트워크에서 다른 포트에 플러그하기 위해 다른 위치로 이동된다. 이것은 네트워크 연결(102)로의 단절 및 할당된 네트워크 식별자에서의 가능한 변경을 야기할 수 있이다. 본 발명에는 없지만, 클라이언트(108)에서 호스트 서비스(116a ~ 116n)로의 임의의 세션 또는 네트워크를 액세싱하는 클라이언트(108) 상에서의 애플리케이션은 네트워크 토폴로지 내의 변경, 네트워크 연결(120)에 대한 단절, 및/또는 할당된 네트워크 식별자 내의 변경에 의해 재시작될 필요가 있다. 본 명세서에 개시된 방법 및 시스템에 의해, 본 발명은 클라이언트에 대한 네트워크 연결 및 네트워크 토폴로지 및 네트워크 식별자 내의 핸들링 변경을 포함하는 자동 재설정된 클라이언트(108) 네트워크 연결을 보유한다. 네트워크 연결 단절 또는 네트워크 식별자의 변경이 없는 것처럼, 클라이언트(108) 및 클라이언트(108) 상에서의 임의의 애플리케이션 또는 세션이 동작을 계속할 수 있다. 또한, 클라이언트(108) 상에서의 사용자는 임의 차단 또는 변경이 있다는 것을 인식할 수 없으며, 클라이언트(108)는 이러한 차단에 대한 임의 공지를 수신할 수 없다.
전술한 신뢰성 있고 지속적인 통신 세션을 가지더라도, 네트워크 접속은 아직도 교란받는다. 호스트 서비스로의 클라이언트 접속을 재확립할 때, 클라이언트(108)는 호스트 서비스(116)로 재인증받는 것이 또한 필요하다. 본 발명의 일 실시 예는 호스트 서비스(116)로 클라이언트를 인증받는 방법 및 시스템에 관한 것이며, 또한, 인증서를 다시 신청하지 않고 호스트 서비스(116)에 클라이언트(108)를 재인증받는 방법 및 시스템에 관한 것이다.
도 4는 자동 클라이언트 재연결 서비스 또는 ACR 서비스로 불려지는 자동으로 클라이언트에 재연결하는 서비스를 이용하여, 클라이언트(108)를 호스트 서비스(116)에 재연결시킬 수 있는 시스템의 일 실시 예를 도시하고 있다. 간략히 살펴보면, 클라이언트(108)는 통신채널(418)을 경유하여 서버 컴퓨터(415)(서버라 칭하겠다)와 통신한다. 상기 통신 채널(418)은 네트워크(104)를 포함할 수 있다. 예컨대, 통신채널은 사내 인터넷 같은 지역 네트워크(LAN), 인터넷 또는 월드와이드웹 같은 광대역 네트워크(WAN)를 포함하는 개념일 수 있다. 서버(415)는 ACR 서비스(405)를 통한 자동 클라이언트 재연결 서비스를 제공한다.클라이언트(108)는 통신 채널(418)을 통해 서버(415)에 액세스한다. 서버(415)의 ACR 서비스(405)는 인증 서비스를 제공한다. 네트워크 연결상 교란이 있으면, ACR 서비스(405)는 클라이언트(108)를 서버(415)로 재인증하기 위해 재인증 서비스를 더 제공할 수 있다. 단일 클라이언트(108) 및 하나의 통신 채널(418)로 표현되었지만, 복수개의 클라이언트(예: 108, 108)가 시스템(100)에 포함될 수 있다.
일 실시 예에 따르면, 서버(415)는 시스템 버스(432)를 통해 통신하는 프로세서(425) 및 메모리(430)를 포함한다. 메모리(430)는 랜덤 액세스 메모리(RAM) 및/또는 리드 온리 메모리(ROM)를 포함할 수 있다. 다른 실시 예에 따르면, 서버(415)는 원격 사이트에서 메모리(430)를 액세스한다(예 : 다른 컴퓨터, 외부 저장 장치).
서버(415)에서 실행되는 ACR 서비스(405)는 키 생성기(435), 세션 식별자(SID) 생성기(438), 암호화기(440), 키 파괴기(445) 및 복호화기(448)를 포함한다. 키 생성기(435)는 서버(415) 또는 ACR 서비스(405)가 클라이언트(108)로부터 인증서를 받을 때, 키를 생성한다. 일 실시 예에 따르면, 키 생성기(435)는 서버(415)의 특성으로부터 키를 추출한다. 특정한 예를 들면, 키 생성기(435)가 키를 프로세서(425)의 온도로부터 추출하거나, 서버(415)가 인증서를 접수한 시간으로부터 추출하거나, 메모리(430)에 저장된 키의 개수로부터 추출할 수 있다. 개선된 실시 예에 따르면, 상기 키 및 인증서는 동일한 크기(예: 8비트)를 가진다. 일 실시 예에 따르면, 상기 키 생성기는 소프트웨어 모듈이다. 다른 실시 예에 따르면, 키 생성기(435)는 난수 생성기이다.
SID 생성기(438)는 서버(415)가 특정 통신 세션을 식별하도록 하기 위해 유일한 SID를 생성한다. 일 실시 예에 따르면, SID 생성기(438)는 소프트웨어 모듈이다. 다른 실시 예에 따르면, SID 생성기(438)는 난수 생성기이다. 다른 실시 예에 따르면, SID 생성기(438)는 SID를 호스트 서비스(116)로 전달한다. 일 실시 예에 따르면, SID 생성기(438)는 서버상에서 실행 중인 호스트 서비스(116)로부터 SID를 획득한다. 다른 실시 예에 따르면, SID 생성기는 사용자 세션을 확립하는 호스트 서비스(116)로부터 세션 식별자를 접수함에 의해 SID를 생성한다.
암호화기(440)는 암호화된 인증서를 작성하기 위해 키와 인증서를 암호화한다. 일 실시 예에 따르면, 암호화기(440)는 키와 인증서에 대하여 배타적 논리합 연산(즉, XOR)을 수행하여, 키와 인증서를 암호화한다. 다른 실시 예에 따르면, 암호화기(440)는 인증서를 암호화하기 위하여 인증서를 키에 합산한다. 이것은 암호화기(440)가 시프트값으로 상기 키를 사용하여 인증서에 대하여 "caesar Cipher"를 수행하는 것이다. 다른 실시 예에 따르면, 암호화기(440)는 인증서에 대하여, MD4, MD5 또는 SHA-1같은 해쉬 함수를 수행한다. ACR 서비스(405)가 암호화된 인증서를 상기 키를 가지고 복호할 수 있도록, 암호화기(440)가 인증서에 대하여 다양한 방식의 조작을 수행할 수 있음은 자명하다.
일 실시 예에 따르면, 암호화기(440)는 암호화된 인증서를 작성하기 위해 키와 인증서에 대하여 수학적 알고리즘을 실행하는 소프트웨어 모듈이다. 다른 실시 예에 따르면, 암호화기(440)는 배타적 논리합(XOR) 게이트 같은 서버 컴퓨터(415)의 로직 게이트이다.
일 실시 예에 따르면, 암호화기(440)는 메모리(430)내 테이블(455)에 SID와 함께 암호화된 인증서를 저장한다. 다른 실시 예에 따르면, 암호화기(440)는 테이블(455)에 암호화된 인증서를 저장하고, SID 생성기(438)는 테이블(455)에 SID를 저장한다. 일 실시 예에 따르면, 테이블(455)은 암호화기(440)에 사용될 수 있도록 프로세서(455)에 의해 할당된 메모리(430)내 영역이다. 다른 실시 예에 따르면, 암호화기(440)는 암호화된 인증서와 SID를 메모리(430)와 구분되는 데이터베이스(도 4에는 미도시) 내에 저장한다.
일 실시 예에 따르면, ACR 서비스(405)는 테이블(455)내 암호화된 인증서의 위치 벡터로서 SID를 이용한다. 다른 실시 예에 따르면, ACR 서비스(405)는 데이터베이스(도 4에서는 미도시) 내 암호화된 인증서를 위치시키고 회수하기 위한 데이터 베이스 키로서 SID를 이용한다. 암호화기(440)에 의해 작성되는 각 암호화된 인증서는 하나의 유일한 SID와 연관된다. 따라서, ACR 서비스(405)는 특정 SID를 사용하여 암호화된 인증서를 위치시키고 회수할 수 있다.
키 파괴기(445)는 ACR 서비스(405)가 키가 더 이상 필요없다고 판단하면, 키를 삭제한다. 일 실시 예에 따르면, 키 파괴기(445)는 서버(415)의 운영체제 같은 소프트웨어 프로그램의 삭제 함수이다.
복호화기(448)는 ACR 서비스(405)가 키와 SID를 클라이언트(108)로부터 수령하면, 암호화된 인증서를 복호화한다. 일 실시 예에 따르면, 복호화기(448)는 암호화기(440)가 암호화된 인증서를 작성하기 위해 사용한 것에 대한 역함수나 역알고리즘을 수행하는 소프트웨어 모듈이다. 다른 실시 예에 따르면, 복호화기(448)는 암호화기(440)에 대한 역기능을 수행하는 하드웨어 소자(예 : 논리게이트)이다.
일 실시 예에 따르면, 하나 혹은 그 이상의 키 생성기(435), SID 생성기(438), 암호화기(440), 키 파괴기(445) 및 복호화기(448)들이 ACR 서비스(405)로 표현되는 하나의 소프트웨어 모듈로 통합될 수 있다. 다른 실시 예에 따르면, 이 구성요소들(436, 438, 440, 445 및 448)은 로직 게이트 같은 하드웨어 소자일 수 있다. 개선된 실시 예에 따르면, 이 구성요소들(436, 438, 440, 445 및 448)은 단일 집적회로내에 통합될 수 있다. 다른 실시 예에 따르면, 상기 구성요소들 중 일부, 예컨대 키 생성기(435)와 SID 생성기(438)는 하드웨어 소자이고, 다른 구성요소들, 예컨대 암호화기(440), 키 파괴기(445) 및 복호화기(448)는 소프트웨어 소자일 수 있다.
다른 실시 예에 따르면, 본 발명은 또한 네트워크로의 클라이언트의 연결이 교란되면 클라이언트(108)가 호스트 서비스(116)에 재연결하는 방법을 제공한다. 상기 방법은 호스트 서비스로 클라이언트를 재인증받을 수 있도록 ACR 서비스(405)를 사용하는 것 및 호스트 서비스(116)로의 클라이언트의 연결을 재확립하는 것을 포함한다.
도 5A에 도시한 바와 같이, 클라이언트(108)는 통신 채널(418)을 통해 서버(415)와의 제 1 통신 세션을 확립한다. 클라이언트(108)는 클라이언트(108)의 사용자로부터 인증서를 획득한다(단계 500). 클라이언트(108)과 서버(415)간의 통신을 위해 오픈 시스템 상호연결(OSI) 프로토콜을 사용하지 않는 시스템(100) 내에서는, 인증서는 제 1 통신 세션을 확립하기 위해 필요로 하는 로그인 패스워드일 수 있다. 본 실시 예에 따르면, 사용자로부터 인증서를 획득하는 것은 통신 세션의 확립을 진행시킨다. 다른 실시 예에 따르면, 인증서는 제 1 통신 세션이 확립된 후 클라이언트(180)가 획득하는 사용자의 개인 정보이다. 인증서의 일례로서 로그인 패스워드, 사회 보안 번호, 전화번호, 주소, 생체학적 정보, 시간에 따라 변하는 패스 코드 및 디지털 인증서가 될 수 있다. 서버(415)가 클라이언트(108)나 클라이언트(108)의 사용자를 인증할 수 있도록, 다음 클라이언트(108)는 인증서를 통신 채널(418)을 통해 서버(415)로 전달한다(단계 505)
서버(415)가 인증서를 수령한 후, ACR 서비스(405)는 자동 클라이언트 재연결 서비스를 제공한다. 키 생성기(435)는 인증서와 함께 사용되는 제 1 암호화 키를 생성한다(단계 510). 일 실시 예에 따르면, 암호화 키는 난수이다. 다른 실시 예에 따르면, 암호화 키는 어떤 표준 암호키이다. 다음, 암호화기(440)는 암호화된 인증서를 작성하기 위해 제 1 키로 인증서를 암호화한다(단계 515). 이는 키 없이 인증서를 액세스하여 서버(415)로의 접속을 획득하려는 공격자를 방지한다. 다음, SID 생성기(438)는 클라이언트(108)와 서버(415)간의 제 1 통신 세션을 식별하기 위한 제 1 SID를 생성한다(단계 520). 일 실시 예에 따르면, 제 1 통신 세션은 서버(415)에 의해 호스트 서비스(116)와 함께 호스트된다. 다음, 암호화기(440)는 상기 테이블(455) 내에 제 1 SID와 함께 암호화된 인증서를 저장한다.(단계 525)
일 실시 예에 따르면, 암호화기(440)는 추후에 보다 효율적인 회수를 위해 특정 위치내에 제 1 SID와 함께 인증서를 저장한다. 예컨대, 암호화기(440)는 램(30) 내의 예정된 시간량 내에 생성되는 SID들과 모든 암호화된 인증서를 저장한다. ACR 서비스(405)는 모든 암호화된 인증서 및 생성된 SID들을 예정된 시간전에 제 2, 외부 메모리(미도시)로 전달한다. 다른 실시 예에 따르면, 암호화기(440)는 SID와 함께 암호화된 인증서를 데이터베이스(미도시)에 저장한다.
메모리(430) 내 저장된 SID 및 암호화된 인증서는 어떤 특정 순서 및/또는 포맷에 따라 배열될 수 있다. 예컨대, SID 및 암호화된 인증서는 인증서의 생성 시간에 대한 연대순으로 저장될 수 있다.
다음, 서버(415)는 제 1 키 및 관련 제 1 SID를 네트워크(104)를 통해 클라이언트(108)로 전달한다(단계 535). 클라이언트(108)는 제 1 키 및 제 1 SID를 클라이언트(108)의 메모리(미도시)내에 저장한다(단계 540). 다음, ACR 서비스(405)의 키 파괴기(445)는 메모리(430)내 저장된 키를 삭제한다(단계 545).
다른 실시 예에 따르면, ACR 서비스(405)가 클라이언트(108)가 키를 수령하였다는 통지를 받을 때까지, ACR 서비스(405)는 메모리(430)에서 제 1 키를 삭제하지 않는다. 예컨대, 클라이언트(108)는 키를 성공적으로 받은 후, 확인(acknowledgement) 메시지를 전달한다. ACR 서비스(405)가 통지를 받으면, 키 파괴기(445)는 메모리(430)에서 키를 삭제한다(단계545). 이는 클라이언트(108)가 성공적으로 키를 수령하기 전에 ACR 서비스(405)가 키를 삭제하는 것을 방지한다. 확인 메시지를 받을 때 까지 키를 삭제하지 않는 것에 의해, ACR 서비스(405)는 전송 오류의 경우에 키 및 SID를 클라이언트(108)로 재전송할 수 있다.
단계 545에서 키를 삭제함에 의해, ACR 서비스(405)는 테이블내 저장된 암호화된 인증서를 복호화할 것이 필요한 매커니즘을 가지지 않게 된다. 따라서, 만약 공격자가 서버(415)의 메모리(430)로 액세스해도, 공격자는 암호화된 인증서를 얻게되나, 암호화된 인증서를 복호화하지 못하게 된다. 그러므로, 공격자는 인증서를 읽을 수 없게 된다. 요약하면, 서버(415)에 저장된 암호화된 인증서는 공격자가 번역하거나 이해할 수 있는 어떤 정보도 제공하지 않는다. 이에 따라, 서버(415)는 암호화된 인증서를 복호화하기 위한 어떤 정보도 보유하지 않는다.
게다가, 클라이언트(108)는 암호화된 인증서에 키를 제공할 수 있는 유일한 장치이다. 네트워크(104)의 부분으로서 많은 클라이언트들(108)의 가능성과 함께, 공격자는 각 클라이언트의 액세스를 획득하기 위한 시도를 하여야 하고, 올바른 키를 보유한 클라이언트를 찾아야 한다. 이것은 시간이 많이 소요되며 지루한 일이 되며, 결국 공격자가 암호화된 인증서를 복호화하려는 시도를 방지하게 된다.
다른 실시 예에 따르면, 서버(415)는 암호화된 인증서를 액세스하는데 대하여 타임아웃 특성을 가진다. 예컨대, 서버(415)는 제 1 통신이 비정상적으로 종료되면 타이머를 개시한다. 만약 타이머가 클라이언트(108)가 제 2 통신 세션을 재확립하고 복호를 위한 키를 서버(415)로 전송하기 전에 예정된 값의 시간에 도달하면, ACR 서비스(405)는 테이블(455)에서 암호화된 인증서를 삭제한다. 만약 타이머가 사용되지 않는다면, 키는 다음 번 세션을 위한 사실상의 패스워드로서 작용한다.
상기 도 5A에 기술한 바와 같이, 일단 클라이언트(108)가 제 1 키 및 제 1 SID를 서버(415)로부터 받으면, 도 5B에 도시한 바와 같이 사용자가 자신의 인증서를 재제출하는 것을 요구함없이 세션이 재확립될 수 있다. 클라이언트(108)와 서버(415)간에 제 1 통신 세션에 교란이나 단절이 있어면(단계 500), 제 1 통신 세션(418)이 재확립되고, 클라이언트(108)가 서버(415)로 재인증 받을 것이 요구된다. ACR 서비스(405)는 클라이언트(108)를 서버(415)로 재인증받고 재확립하기 위한 방법 및 시스템을 제공한다.
클라이언트(108) 및 서버(415)가 제 2 통신 세션을 재확립할 때, 클라이언트(108)는 제 1 키 및 제 1 SID를 서버(415)로 전달한다(단계 555). ACR 서비스(405)는 서버의 메모리(430)에 암호화된 인증서를 위치시키고 회수하기 위해 SID를 이용하고,(단계558) 회수한 인증서를 복호화하기 위해 키를 사용한다(단계 560). 다음, 서버(415)는 클라이언트(108)로부터의 인증서를 확인함에 의해 클라이언트(108)를 서버(415)로 재인증한다. 일 실시 예에 따르면, 인증 및 재인증은 서버(415)의 컴퓨팅 시스템의 운영체제에 의해 제공되는 보안 서비스들을 통해 구현된다. 예컨대, 인증서는 서버로의 로그인 및 패스워드이다. 다른 실시 예에 따르면, 인증 및 재인증은 서버(415)상의 애플리케이션이나 소프트웨어 프로그램의 애플리케이션 레벨의 보안 서비스들을 통해 구현된다. 예컨대, 인증서는 특정 호스트 서비스(116)로의 애플리케이션 로그인 및 패스워드이다.
설명하자면, 사용자의 로그인 패스워드가 인증서인 제 1 통신 세션의 비정상적인 종료에 대하여(단계 550), 클라이언트(108)는 서버(415)와 제 2 통신 세션을 확립하기 위한 시도를 한다. 서버(415)와 제 2 통신 세션을 확립하기 위한 서버(415)로의 요청의 일부분으로서, 클라이언트(108)는 제 1 통신 세션의 키와 SID를 서버(415)로 전달한다(단계 555). 사용자의 로그인 패스워드를 다시 제출하도록 프롬프트하는 대신에, ACR 서비스(415)를 통해, 사용자와 연관된 암호화된 인증서를 위치시키고 회수하기 위한 SID를 이용하고(단계 558), 회수된 인증서를 복호화하기 위해 키를 사용하고(단계 560), 복호화된 인증 정보를 사용하여 클라이언트를 재인증한다(단계 565).
일 실시 예에 따르면, 제 2 통신 세션 동안, ACR 서비스(405)는 인증서를 위한 제 2 키를 작성하고(단계 570), 이 제 2 키를 사용하여 인증서를 암호화한다(단계 575). 제 2 SID가 제 2 통신 세션을 식별하기 위해 작성되며(단계 580), 상기 세션을 클라이언트(108)에 연관시킨다. 제 2 암호화 인증서는 테이블(455) 내 제 2 SID와 함께 저장된다(단계 525).
본 실시 예에 따르면, 다음, 서버는 클라이언트(108)로 제 2 키 및 제 2 SID를 전달한다(단계 585). 다음, 클라이언트(108)는 추후의 회수를 위해 메모리(미도시) 내에 제 2 키와 제 2 SID를 저장한다(단계 590). 다음, ACR 서비스(405)는 메모리(430)에서 제 2 키를 삭제한다(단계 595). 따라서, ACR 서비스는 클라이언트(108)로부터 제 2 키와 제 2 SID를 획득해야만, 제 2 암호화된 인증서를 복호화할 수 있다. ACR 서비스(405)는 제 1 통신 세션 동안 사용자가 전달하였던 동일한 인증서를 사용하는 제 2 통신 세션을 위한 새로운 키 및 새로운 SID를 작성하였다. 그러므로, 사용자의 인증서는 제 1 통신 세션의 비정상적인 종료후의 제 2 통신 채널에 대하여 재전송되지 않는다.
비록 본 발명이 인증서를 중심으로 논의되지만, 통신 오류가 있을 때, 세션을 유지시킬 수 있는 어떤 보안 수단도 사용될 수 있다. 따라서, 신용카드 정보가 애플리케이션에 요구되고, 신용카드 정보를 서버로 전송하였다면, 그 직후 클라이언트와 서버간의 단절이 있어도, 본 발명이 발급했다면, 신용카드 정보를 다시 제출하도록 요구하지 않는다. 더욱이, 세션 식별자 또는 SID는 저장된 인증서들에 대한 포인터 또는 숫자나 값 등 포인터처럼 사용되는 것을 제공하는 것으로 논의될 수도 있다.
도 6은 중간 노드(650)상에서 실행되는 ACR 서비스(405)를 이용하여 클라이언트(108)를 서버(415)에 재연결시킬 수 있는 시스템(600)의 또 다른 실시 예를 도시한다. 중간 노드(650)는 서버(415)와는 다른 컴퓨팅 장치로서, 통신이 가능하고 여기에 기술하는 동작들을 수행하기에 충분한 메모리 용량 및 프로세서 능력을 가진다. 간략히 살펴보면, 클라이언트(108)는 통신 채널(108)에 대하여 중간 노드(650)와 통신을 형성한다. 통신 채널(418)은 네트워크(104)를 포함할 수 있다. 중간 노드(650)는 클라이언트(108)의 서버(415)로의 연결을 위해 클라이언트(108)에, ACR 서비스를 통한 자동 클라이언트 재연결 서비스들을 제공한다. 중간 노드(650)는 통신 채널(418)을 통해 서버(415)와 통신한다. 통신 채널(418)는 네트워크(104)를 포함할 수 있다. 클라이언트(108)는 중간 노드(650)를 통해 서버(415)의 서비스에 액세스한다. 중간 노드(650) 상의 ACR 서비스(405)는 클라이언트(108)의 서버(415)로의 연결을 위해 자동 클라이언트 재연결 서비스들을 제공한다. 비록 한 통신 채널(418)에 대하여 단일 클라이언트(108)가 있는 것을 도시하지만, 클라이언트들의 개수 및 통신 채널들의 개수가 어떤 것이라도 본 시스템(600)에 포함될 수 있다.
개선된 실시 예(미도시)에 따르면 시스템(600)은, 추가적인 통신 채널들(418, 418)에 대하여 네트워크(104)를 통해 하나 또는 그 이상의 클라이언트들(108)과 통신을 수행하는, 다중 중간노드들(650)을 포함할 수 있다. 비록 도 6에 하나의 통신 채널(418)에 대하여 단일 중간 노드(650)를 도시하였지만, 중간 노드들의 개수 및 통신 채널들의 개수가 어떤 것이라도 본 시스템(600)에 포함될 수 있다.
다른 실시 예에 따르면, 본 발명은 하나 혹은 그 이상의 중간 노드들(650)을 사용하여, 클라이언트(108)의 서버(415)로의 연결을 확립하고 인증하는 것을 구현하기 위한 방법에 관한 것이다. 도 7A에 도시한 바와 같이, 중간 노드(650)는 서버(415)와 세션을 확립한다(단계 520A).
클라이언트(108)는 통신 채널(418)을 통해 중간 노드(650)와 제 1 통신 세션을 확립한다. 클라이언트(108)는 클라이언트(108)의 사용자로부터 인증서를 획득한다(단계 500). 다음, 중간 노드(650)가 서버(415)와 함께 사용자를 인증할 수 있도록, 클라이언트(108)는 인증서를 통신 채널(418)을 통해 중간 노드(650)로 전달한다(단계 505)
중간 노드(650)가 인증서를 받은 후, ACR 서비스(405)는 그것의 자동 재접속 서비스를 제공한다. ACR 서비스(405)는 인증서와 함께 사용하기 위한 제 1 암호화 키를 생성하고(단계 510), 암호화된 인증서를 생성하기 위해 제 1 키를 인증서와 암호화한다(단계 515). 이는 서버(415)로의 액세스를 획득한 공격자가 키 없이 인증서를 액세스하는 것을 방지한다. 다음, 세션이 서버(415)와 확립되고(단계 520A), 클라이언트(108)가 인증서를 사용하여 서버(415)로부터 인증받는다. 이에 의하여, ACR 서비스(405)는 제 1 통신 세션을 식별하기 위해 제 1 SID를 생성한다. 암호화된 인증서는 제 1 SID와 함께 상술한 테이블(455) 내에 저장된다(단계 525). 다음, 중간 노드(650)는 네트워크(104)를 통해 클라이언트(108)로 제 1 키와 제 1 SID를 전달한다(단계 535). 클라이언트(108)는 클라이언트(108)의 메모리(미도시) 내에 제 1 키와 제 1 SID를 저장한다(단계 540). 다음, ACR 서비스(405)는 메모리(430) 내 저장된 키를 삭제한다(단계 545).
도 7A에 도시한 바와 같이 클라이언트(108)가 중간 노드(650)로부터 제 1 키와 제 1 SID를 수령하면, 도 7B에 도시한 바와 같이 사용자에게 그의 인증서를 요구함이 없이, 통신 세션이 재확립되고 재인증된다. 예컨대, 비정상적인 종료로부터 클라이언트(108)와 중간 노드(650)간의 제 1 통신 세션 내 교란이 있을 수 있다(단계 705).
클라이언트(108)와 중간 노드(650)가 제 2 통신 세션을 재확립할 때, 클라이언트(108)는 중간 노드(650)로 제 1 키와 제 1 SID를 전달한다. 중간 노드(650)의 ACR 서비스(405)가 서버의 메모리(430) 내에 암호화된 인증서를 위치시키고 회수하기 위해 SID를 이용하고(단계 558), 회수된 인증서를 복호화하기 위해 키를 이용한다(단계 560). 키 생성기는 인증서를 위해 제 2 키를 생성한(단계 570) 후, 제 2 키를 사용하여 인증서를 암호화한다(단계 575). SID 생성기(438)는 제 2 통신 세션을 식별하기 위한 제 2 SID를 또한 생성하고(단계 580), 중간 노드(650) 및 서버(415)간의 유지되는 세션에 연관시킨다. 암호화기(440)는 제 2 암호화된 인증서를 SID와 함께 테이블(455)내에 저장한다.
본 구현에 따르면, 다음, 서버(415)는 클라이언트(108)로 제 2 키와 제 2 SID를 전달한다(단계 585). 다음, 클라이언트(108)는 추후의 복구를 위해 제 2 키와 제 2 SID를 저장한다(단계 590). 다음, 키 파괴기(445)는 메모리(430)로부터 제 2 키를 삭제한다(단계 595). 따라서, ACR 서비스(405)는 클라이언트(108)로부터 제 2 키와 제 2 SID를 획득해야 제 2 암호화된 인증서를 복호화할 수 있다. ACR 서비스(405)는 제 1 통신 세션 동안 사용자가 전달하였던 동일한 인증서를 사용하는 제 2 통신 세션을 위한 새로운 키 및 새로운 SID를 작성하였다. 그러므로, 사용자의 인증서는 제 1 통신 세션의 비정상적인 종료후의 제 2 통신 채널에 대하여 재전송되지 않는다.
다른 실시 예에 따르면, 서버(415)와 중간 노드(650)간에 제 2 통신 세션에 교란이나 비정상적인 종료가 발생할 수 있다(단계 710). 도 7C에 도시한 바와 같이, 사용자에게 그의 인증서를 재제출하는 것을 요청하지 않고, 제 2 통신 세션이 재확립되고 재인증될 수 있다.
중간 노드(650)와 서버(415)가 제 2 통신 세션을 재확립할 때, 중간 노드(650)는 클라이언트의 행위상 서버(415)와 함께 세션을 재확립하기 위해, 클라이언트(108)로부터 제 1 키와 제 1 SID를 요청한다(단계 550). 이에 응답하여, 클라이언트(108)는 중간 노드(650)로 제 1 키와 제 1 SID를 전달한다(단계 555). 중간 노드(650)의 ACR 서비스(405)는 서버의 메모리(430) 내에 암호화된 인증서를 위치시키고 회수하기 위해 SID를 이용하고(단계 558), 회수된 인증서를 복호화하기 위해 키를 이용한다(단계 560). 다음, ACR 서비스(500)는 클라이언트(108)를 서버(415)로 재인증하기 위해 복호화된 인증서를 이용하여 서버로의 클라이언트의 세션을 재확립한다(단계 565).
다른 실시 예에 따르면, 제 2 통신 세션에 대하여 클라이언트의 재확립 및 재인증 후에, 중간 노드(650)의 ACR 서비스(405)는 도 7B에 도시한 바와 같이 제 2 키 및 대체용의 제 2 SID를 생성한다. 도 4에 도시한 ACR 서비스의 구현과 비교할 때, 키 생성기(440)가 인증서를 위한 제 2 키를 생성한 후(단계 570), 키 암호화기(440)가 제 2 키를 이용하여 인증서를 암호화한다(단계 575). SID 생성기(438)는 또한 제 2 통신 세션을 식별하기 위한 제 2 SID를 생성하고(단계 580), 중간 노드(650)와 서버(415)간에 재확립된 세션을 이것과 연관시킨다. 암호화기(440)는 테이블(455) 내에 제 2 SID와 함께 제 2 암호화된 인증서를 저장한다. 본 실시 예에 있어서, 그 후 제 2 키와 제 2 SID를 클라이언트(108)로 전달한다(단계 585). 다음, 클라이언트(108)는 추후의 복구를 위해 제 2 키와 제 2 SID를 저장한다(단계 590). 다음, 키 파괴기(445)는 메모리(430)에서 제 2 키를 삭제한다(단계 595).
다른 실시 예에 따르면, 하나 혹은 그 이상의 제 1 프로토콜 서비스(112) 및 ACR 서비스(405)가 호스트 서비스 노드들의 어떤 것을 통하여 배포될 수 있다. 이처럼, 호스트 서비스(116)에 연결되는 클라이언트(108)에 대한 재확립과 재인증, 또는 자동적으로 재연결하는 것의 기능성은, 호스트 서비스들(116) 및/또는 호스트 노드들(118)을 넘어 다른 시스템 및 배치 아키텍쳐들 내에 유연하게 배포될 수 있다.
본 발명의 상기 관점에 대한 일 실시 예에 따르면, 각각 ACR 서비스(405)는 각 호스트 서비스(116)에 전용의 자동 클라이언트 재연결 서비스들을 제공하기 위해, 각 시스템(116a-116n)에 연관될 수 있다. 단일 제 1 프로토콜 서비스(112)가 호스트 서비스들(116a-116n) 모두를 다루도록 구현될 수 있다. 도 8A에 도시한 바와 같이, 각 다중 ACR 서비스들(405a-405n)이 각 호스트 서비스들(116a-116n)에 각각 연관된다. 일례로서, 클라이언트(108)가 제 1 프로토콜 서비스(112)를 이용하여 호스트 서비스(116a)와 통신 세션을 확립한다. 클라이언트(108)의 호스트 서비스(116a)로의 연결을 위해 호스트 서비스(116a)와 연관된 ACR 서비스(405a)는 자동 클라이언트 재연결 서비스들을 제공한다. 네트워크 연결 내에 교란이 있으면, 제 1 프로토콜 서비스(112)는 클라이언트(108)와 연결이 재확립되며, ACR 서비스(405a)는 클라이언트(108)를 호스트 서비스(116a)로 재인증할 것이다. 제 2 클라이언트(108)는 제 1 프로토콜 서비스(112)를 이용하여 호스트 서비스(116b)와 통신 세션을, 제 1 클라이언트(108)와 동시에 확립한다. ACR 서비스(405b)는 호스트 서비스(116b)로의 클라이언트의 연결을 위해 자동 클라이언트 재연결 서비스들을 제공한다. 네트워크 교란이 발생하면, ACR 서비스(405a)와 관련된 제 1 프로토콜 서비스(112)는 클라이언트(108)를 호스트 서비스(116b)로 재연결할 것이다.
본 발명의 상기 관점에 대한 다른 실시 예에 따르면, ACR 서비스는 시스템(100)의 각 호스트 노드들(118a-118n) 상에서 실행되는 각 다중 호스트 서비스들(116a-116n)에 연관될 수 있다. 호스트 노드(118) 상에서 실행되는 각 다중 호스트 서비스들(116a-116n)을 서비스 하기 위해, 제 1 프로토콜 서비스(112)는 각 호스트 노드(118) 상에 구현될 수 있다. 도 8B에 도시한 바와 같이, 각 ACR 서비스(405a-405n)는 각 호스트 서비스(116a-116n)에 각각 연관된다. 각 호스트 노드(118)는 그것의 각 호스트 서비스들(116)과 각 ACR 서비스(405)를 서비스하는 전용의 제 1 프로토콜 서비스(112)를 가진다. 예컨대, 클라이언트(108)는 제 1 프로토콜 서비스(112a)를 이용함에 의해 호스트 노드(118a) 상에 호스트 서비스(116a)에 대한 통신 세션을 확립한다. 호스트 노드(118a) 상의 ACR 서비스(405a)는 호스트 노드(118a) 상에 호스트 서비스(116a)에 대한 클라이언트(108)의 연결을 위한 자동 클라이언트 재연결 서비스들을 제공할 수 있다.
네트워크 교란이 감지되면, 제 1 프로토콜 서비스(112a)는 호스트 노드(118a)상에 호스트 서비스(116a)로의 클라이언트의 연결을 재확립하고, 호스트 노드(118a) 상의 ACR 서비스(405a)는 호스트 노드(118a) 상의 호스트 서비스(116a)로 클라이언트(108)를 재인증한다. 제 1 클라이언트(108)와 동시에 제 2 클라이언트(108)는, 제 1 프로토콜 서비스(112a) 및 ACR 서비스(405a)를 이용하여, 호스트 노드(118a) 상에 호스트 서비스(116b)와 통신 세션을 재확립한다. 네트워크 교란이 있다면, ACR 서비스(405a)와 관련한 제 1 프로토콜 서비스(112a)는 클라이언트(108)를 호스트 노드(118a) 상의 호스트 서비스(116b)와 재연결한다. 제 1 클라이언트(108) 및 제 2 클라이언트(108)와 동시에 제 3 클라이언트(108)는, 제 1 프로토콜 서비스(112b) 및 호스트 노드(118b)상의 ACR 서비스(405n)를 이용하여, 호스트 노드(118b) 상의 호스트 서비스(116n)와 통신 세션을 재확립한다. 유사한 방법으로 제 1 프로토콜 서비스(112b) 및 ACR 서비스(405n)는 호스트 노드(118b)의 호스트 서비스(116n)로 클라이언트(108)를 재연결할 수 있다.
다른 실시 예에 따르면, 하나 혹은 그 이상의 ACR 서비스들(405)은 중간 노드 또는 제 1 프로토콜 서비스 노드들 중 어느 것을 통해 제 1 프로토콜 서비스들(112)로 배포될 수 있다. 이와 같이, 이처럼, 호스트 서비스(116)에 클라이언트(108)가 연결되는 기능성은, 제 1 프로토콜 서비스(112)와 연관된 구현 아키텍쳐들 및 다른 시스템에 유연하게 배포될 수 있다.
본 발명의 상기 관점에 대한 일 실시 예에 따르면, 제 1 프로토콜 서비스(112)에 전용인 자동 클라이언트 재연결 서비스들을 제공하기 위해, ACR 서비스(405)는 각 제 1 프로토콜 서비스(112)에 연관될 수 있다. 단일 제 1 프로토콜 서비스(112) 및 ACR 서비스(405)는 호스트 서비스들(116a-116n) 모두를 다루도록 구현될 수 있다. 도 9A에 도시한 바와 같이, 호스트 서비스들(116a-116n)로 자동 클라이언트 재연결 서비스들을 제공하기 위해, ACR 서비스(405)는 동일한 컴퓨팅 디바이스 상의 제 1 프로토콜 서비스(112)와 함께 존재한다. 예컨대, 클라이언트(108)는 제 1 프로토콜 서비스(112) 및 ACR 서비스(405)를 이용하여 호스트 서비스들(116a-116n)의 어느 것과 통신 세션을 확립한다. 제 1 프로토콜 서비스(112) 및 ACR 서비스(405)는 클라이언트(108)에서 호스트 서비스들(116a-116n) 중 어느 것과 재연결 기능성을 제공한다.
본 발명의 상기 관점에 대한 다른 실시 예에 따르면, 각 ACR 서비스들(405a-405n)은 각 다중 제 1 프로토콜 서비스들(116a-116n)과 연관될 수 있다. 도 9B에 도시한 경우를 예로 들면, 호스트 노드(118a) 상에 실행되는 각 다중 호스트 서비스들(116a-116n)을 서비스 하기 위해, 제 1 프로토콜 서비스(112a) 및 ACR 서비스(405a)는 호스트 노드(118a) 상에 구현될 수 있다. 도 9B에 도시한 바와 같이, 각 호스트 노드(118a-118n)의 다중 호스트 서비스들(112a-112n)에 전용의 자동 클라이언트 재연결 서비스들을 제공하기 위해, 각 ACR 서비스(405a-405n)는 각 제 1 프로토콜 서비스(112a-112n)와 연관된다. 일례로서, 클라이언트(108)는 호스트 노드(118a) 상의 호스트 서비스(116a)와, 동일한 호스트 노드(118a) 상의 ACR 서비스(405a)와 제 1 프로토콜 서비스(112a)를 이용함에 의해, 통신 세션을 확립한다. 네트워크 교란이 발생하면, ACR 서비스(405a)와 관련된 제 1 프로토콜 서비스(112)는 클라이언트(108)를 호스트 노드(118a) 상의 호스트 서비스(116a)로 재연결할 것이다.
비록 본 발명이 도 8A-8B 및 도 9A-9B의 다양한 시스템 및 구현 아키텍쳐에 대하여 논의되었지만, 호스트 노드들(118), 중간 노드들(650) 또는 다른 컴퓨팅 장치들 중 어느 것을 통한, 제 1 프로토콜 서비스(들), ACR 서비스(들)(405) 및 호스트 서비스(들)(116)의 하나 혹은 그 이상을 결합하고 및/또는 배포하는 다른 시스템 및/또는 구현 아키텍쳐가 사용될 수 있다.
더욱이, 인증 및 재인증 서비스들을 제공하는 ACR 서비스(405)를 사용하는 대신에, 티켓 권한부(1036) 서비스가 이용될 수도 있다. 티켓 권한부(1036)는 연결 및 인증 목적을 위해 티켓을 생성하고 확인한다. 티켓은 세션 식별자 및 키로 이루어질 수 있다. 그것은 또한, 이런 목적으로 사용될 수 있는 보안, 안전 또는 식별의 다른 타입이나 널 값 또는 상수, 넌스(nonce) 또는 애플리케이션 서버 인증서, 난수 등으로 이루어질 수 있다.
도 10A에 도시한 바와 같이 클라이언트(108)를 호스트 서비스(116)로 재연결하기 위한 네트워크 통신 시스템(1000)의 구현에 있어서, 티켓 권한부(1036)은 한 노드를 중간 노드(1032), 제 1 프로토콜 서비스(112) 또는 호스트 서비스들(116a-116n) 중 어느 것로부터 분리시킬 수 있다. 도 10A는 시스템(2000)의 일부로서, 단일 컴퓨팅 장치가 될 수 있는, 티켓 권한부(1036) 및 중간 노드(1032)를 도시한다. 네트워크들(104, 104)에 추가로, 시스템(1000)은 클라이언트(108), 제 1 프로토콜 서비스(112) 및 호스트 서비스들(116a-116n)을 포함한다. 이것들 모두는 상기에서 설명하였다. 일 실시 예에 따르면, 중간 노드(1032)는 보안 게이트웨이이며, 예컨대, 방화벽 및/또는 라우터이다. 이것에 통해, 클라이언트(108) 및 제 1 프로토콜 서비스(112)간의 메시지들은 네크워크(104)의 구성에 따라 통과될 수 있다. 티켓 권한부(1036)는, 통신이 가능하고 여기에 기술된 동작들을 수행하기에 충분한 메모리 용량 및 프로세서 능력을 가진, 예컨대 스탠트-얼론(stand-alone) 네트워크 구성요소일 수 있다. 티켓 권한부(1036)은 서버(415) 상의 티켓 관련 서비스들을 제공하는 전용의 특정 호스트 서비스(116)일 수 있다.
도 10A에 도시한 실시 예에 따르면, 중간 노드(1032)는 클라이언트(108)에 의해 초기화되는 연결(120a)고, 제 1 프로토콜 서비스(112)와 제 2 연결(120b)을 확립하도록 구성된다. 연결(120a) 및 제 2 연결(120b)은 함께 상기 연결(120)을 구성한다. 여기서, 클라이언트(108) 및 제 1 프로토콜 서비스(112)는 제 1 프로토콜을 사용하여 통신한다.
도시한 중간 노드(1032)는 티켓 권한부(1036)와 함께 통신하도록 또한 구성된다. 일 실시 예에 따르면, 티켓 권한부(1036)는 제 1 재연결 티켓을 위한 요청을 중간 노드(1032)로부터 수령하고, 제 1 재연결 티켓을 생성한다. 제 1 재연결 티켓은 예컨대, 큰 난수를 포함할 수 있다. 제 1 재연결 티켓은, 비정상적인 서비스의 교란 후에 클라이언트(108)에 다시 인증서를 제공하도록 요구하지 않고, 클라이언트(108)가 자동적으로 호스트 서비스와의 연결을 재확립하도록 한다.
제 1 재연결 티켓의 생성후, 중간 노드(1032) 또는 티켓 권한부(1036)으로의 액세스를 획득한 공격자가 제 1 재연결 티켓없이 인증서를 액세스할 수 없도록, 티켓 권한부(1036)는 제 1 재연결 티켓을 사용하는 클라이언트(108)에 의해 제공되는 인증서를 암호화한다. 티켓 권한부(1036)는 클라이언트(108)와 중간 노드(1032)간에 확립되는 통신 세션을 식별하는 SID를 또한 생성할 수 있다. 다음, 티켓 권한부(1036)는 메모리에 SID와 함께 암호화된 인증서를 저장하고, 네트워크(104)를 통해 클라이언트(108)로 제 1 재연결 티켓 및 SID를 전달한다. 클라이언트가 SID와 제 1 재연결 티켓을 수령하면, 티켓 권한부(1036)는 그 메모리(미도시)로부터 티켓을 파괴(즉, 삭제)한다.
다른 실시 예에 따르면, 티켓 권한부(1036)는 핸들을 생성하도록 구성된다. 핸들은 예컨대, 제 1 재연결 티켓과 연관되는(예: 맵핑되는) 난수일 수 있다. 일 실시 예에 따르면, 상기 핸들은 제 1 재연결 티켓을 형성하기 위한 난수보다 작은 난수이다. 예컨대, 상기 핸들은 32비트 난수일 수 있다. 티켓 권한부(1036)는, 제 1 재연결 티켓의 복사본 및 핸들의 복사본을 보유한 채, 제 1 재연결 티켓과 핸들을 중간 노드(1032)로 전달한다. 제 1 재연결 티켓의 복사본은 추후에, 클라이언트(108)를 재연결하는 과정 중 티켓 권한부에 제출된다면, 티켓 권한부(1036)가 클라이언트(108)로 전달하였던 제 1 재연결 티켓을 확인하는데 사용될 수 있다. 일 실시 예에 따르면, 티켓 권한부(1036)는 또한 제 1 프로토콜 서비스(112)를 위한 어드레스를 보유한다. 이것은 하기와 같이, 제 1 재연결 티켓에 연관되고, 제 1 재연결 티켓을 확인할 때, 중간 노드(1032)로 전달된다.
일 실시 예에 따르면, 중간 노드(1032)는, 티켓 권한부(1036)가 티켓 권한부(1036)에 보유되는 제 1 재연결 티켓의 복사본을 삭제하는 티켓 권한부(1036)에 의해, 핸들을 사용하고 그것을 전달하도록 개량 구성될 수 있다. 하기의 다른 실시 예에 따르면, 중간 노드(1032)는, 클라이언트(108)가 호스트 서비스(116)로 재연결되는 과정 중에, 제 1 재연결 티켓을 삭제하고, 제 1 재연결 티켓의 대체물을 생성하도록 개량 구성될 수 있다. 추가적인 다른 실시 예에 따르면, 제 1 재연결 티켓은 예정된 시간 후에 자동 삭제되도록 구성된다.
다른 실시 예에 따르면, 제 1 프로토콜 서비스(112)는 제 2 재연결 티켓을 생성하도록 구성된다. 제 2 재연결 티켓은 제 2 재연결 티켓의 경우처럼, 예컨대 큰 난수를 포함할 수 있다. 제 1 프로토콜 서비스(112)는 또한 제 2 재연결 티켓을 클라이언트(108)로 전달하도록 구성될 수 있으며, 세션 넘버 및 제 2 재연결 티켓의 복사본을 보유한다. 제 2 재연결 티켓의 복사본은 추후에 클라이언트(108)를 재연결하는 과정 중 제 1 프로토콜 서비스(112)에 제출된다면, 제 1 프로토콜 서비스(112)가 클라이언트(108)로 전달하였던 제 2 재연결 티켓을 확인하는데 사용될 수 있다. 일 실시 예에 따르면, 제 1 프로토콜 서비스(112)는 제 2 재연결 티켓을 중간 노드(1032)를 경유하여 클라이언트(108)로 전달한다. 다른 실시 예에 따르면, 제 1 프로토콜 서비스(112)는 제 2 재연결 티켓을 클라이언트(108)로 직접 전달한다. 더욱이, 하기에 상술할 바와 같이, 제 1 프로토콜 서비스(112)는 클라이언트(108)를 호스트 서비스(116)로 재연결하는 과정 중에, 제 2 재연결 티켓을 삭제하고, 제 2 재연결 티켓의 대체물을 생성하도록 개량 구성할 수 있다. 추가적인 다른 실시 예에 따르면, 제 2 재연결 티켓은 예정된 시간 후 자동적으로 삭제되도록 구성된다.
일 실시 예에 따르면, 중간 노드(1032)는 제 1 및 제 2 재연결 티켓들을 위한 매개물로서 역할을 한다. 중간 노드(1032)는 예컨대, 티켓 권한부(1036)에 의해 생성된 제 1 재연결 티켓 및 제 1 프로토콜 서비스(112)에 의해 생성된 제 2 재연결 티켓을 수령한다. 다음, 중간 노드(1032)는 제 1 재연결 티켓과 제 2 재연결 티켓을 클라이언트(108)로 전달한다. 더욱이, 클라이언트(108)가 호스트 서비스(116)로 재연결되는 도중에, 중간 노드(1032)는 제 1 재연결 티켓과 제 2 재연결 티켓을 클라이언트(108)로부터 받아서, 티켓 권한부(1036)으로 제 1 재연결 티켓을 전달할 수 있고, 적당하다면, 제 2 재연결 티켓을 제 1 프로토콜 서비스(112)로 전달할 수 있다.
만약 클라이언트(108)와 호스트 서비스(116) 간의 제 1 통신 세션이 종료되면, 사용자에게 그의 인증서를 요청함이 없이 새로운 세션이 재확립될 수 있다. 클라이언트(108) 및 호스트 서비스(116)가 제 2 통신 세션을 재확립할 때, 클라이언트(108)는 제 1 및 제 2 재연결 티켓과 SID를 중간 노드(1032)로 재전송한다. 중간 노드(1032)가 제 1 및 제 2 재연결 티켓 및 SID를 티켓 권한부(1036)으로 전송하고, 티켓 권한부은 제 1 연결을 위해 암호화된 인증서를 위치시키고 회수하는데 SID를 이용하고, 회수된 인증서를 복호화하는데 제 1 재연결 티켓을 이용한다. 다음, 티켓 권한부(1036)은 복호화된 인증서를 확인함에 의해 클라이언트를 인증한다. 재인증 후, 제 2 재연결 티켓은 호스트 서비스(116)와의 제 2 연결을 재확립하는 제 1 프로토콜 서비스(112)로 진행된다.
도 10B에 도시한 바와 같은 네트워크 통신 시스템(1000)의 다른 실시 예에 따르면, 클라이언트(108)를 호스트 서비스들(116a-116n) 중 어느 것과 재연결하기 위해 티켓 권한부(1036) 대신에 ACR 서비스(405)를 이용할 수 있다. 본 구현에 따르면, ACR 서비스(405)는 티켓 권한부(1036)에 대한 상술한 것들과 유사한 서비스들을 제공한다. 미리 기술하자면, ACR 서비스(405)는 클라이언트 통신 세션을 연결하고 재연결하기 위한 키 및 SID를 생성하고 확인하고 관리한다. 상술한 티켓 권한부(1036)에 의해 생성되고, 확인되고 관리되는 티켓의 타입에 따라, SID 및 키는 티켓을 생성한다. 이처럼, 다른 실시 예에 따르면, 티켓은 세션 식별자와 키의 결합을 위해 상호가변적으로 사용될 수 있다.
도 10B에 도시한 바와 같은 중간 노드(1032)는 ACR 서비스(405)와 함께 통신하도록 구성된다. 일 실시 예에 따르면, ACR 서비스(405)는 중간 노드(1032)로부터 제 1 SID 및 제 1 키를 위한 요청을 수령하고, 제 1 SID 및 제 1 키를 생성하도록 구성된다. ACR 서비스(405)는 클라이언트(108)와 호스트 서비스(116)간에 확립되는 통신 세션을 식별하기 위해 제 1 SID를 사용한다. 제 1 SID 및 제 1 키는, 서비스에 비정상적인 교란이 발생하면, 클라이언트(108)에 인증서를 다시 요청하지 않고 클라이언트(108)가 호스트 서비스(116)와 자동적으로 재연결되도록 한다.
제 1 SID 및 제 1 키를 생성한 후, 중간 노드(1032) 또는 ACR 서비스(405)로의 액세스를 획득한 공격자가 제 1 키 없이 인증서에 액세스할 수 없도록, ACR 서비스(405)는 클라이언트(108)로부터 받은 인증서를 제 1 키를 사용하여 암호화한다. 다음, ACR 서비스(405)는 암호화된 인증서를 SID와 함께 메모리(430)에 저장하고, 제 1 SID 및 제 1 키를 네트워크(104)를 통해 클라이언트(108)로 전달한다. 클라이언트의 제 1 SID 및 제 1 키의 수령에 맞추어, ACR 서비스(405)는 그의 메모리(430)에서 키를 파괴(삭제)한다.
다른 실시 예에 따르면, 제 1 프로토콜 서비스(112)는 제 2 SID 및 제 2 키를 생성하도록 구성된다. 제 1 프로토콜 서비스(112)는, 제 2 SID 및 제 2 키의 복사본을 보유한 체, 제 2 SID 및 제 2 키를 클라이언트(108)로 전달하도록 구성된다. 제 2 SID 및 제 2 키의 복사본은 추후에, 클라이언트(108)를 재연결하는 과정 중 제 1 프로토콜 서비스(112)에 제출된다면, 제 1 프로토콜 서비스(112)가 클라이언트(108)로 전달하였던 제 2 SID 및 제 2 키를 확인하는데 사용될 수 있다. 일 실시 예에 따르면, 제 1 프로토콜 서비스(112)는 제 2 SID 및 제 2 키를 중간 노드(1032)를 경유하여 클라이언트(108)로 전달한다. 다른 실시 예에 따르면, 제 1 프로토콜 서비스(112)는 제 2 SID 및 제 2 키를 클라이언트(108)로 직접 전달한다. 더욱이, 하기에 상술할 바와 같이, 제 1 프로토콜 서비스(112)는 클라이언트(108)를 호스트 서비스(116)로 재연결하는 과정 중에, 제 2 SID 및 제 2 키를 삭제하고, 제 2 SID 및 제 2 키의 대체물을 생성하도록 개량 구성할 수 있다. 추가적인 다른 실시 예에 따르면, 제 2 SID 및 제 2 키는 예정된 시간 후 자동적으로 삭제되도록 구성된다.
일 실시 예에서, 중간 노드(1032)는 제 1 및 제 2 SID 및 키를 위한 중개자로 작용한다. 중간 노드(1032)는, 예를 들면, ACR 서비스(405)에 의해 생성된 제 1 SID 및 제 1 키와 제 1 프로토콜 서비스(112)에 의해 생성된 제 2 SID 및 제 2 키를 수신한다. 다음, 중간 노드(1032)는 제 1 SID 및 제 1 키 및 제 2 SID 및 제 2 키를 클라이언트(108)에 송신한다. 게다가, 중간 노드(1032)는, 호스트 서비스(116)에 클라이언트(108)를 재연결하기 위한 프로세스 과정 동안, 제 1 SID 및 제 1 키 및 제 2 SID 및 제 2 키를 클라이언트(108)로부터 수용할(accept) 수 있으며, 그 후, 해당 될 경우, 제 1 SID 및 제 1 키를 ACR 서비스(405)에 송신할 수 있으며, 제 2 SID 및 제 2 키를 프로토콜 서비스(112)에 송신할 수 있다.
예를 들어, 클라이언트(108)와 호스트 서비스(116) 간의 제 1 통신 세션(communication session)이 비정상적으로 종결하면, 사용자에게 사용자의 인증서를 재입력할 것을 요구하지 않아도 새로운 세션이 재-설정될 수 있다. 클라이언트(108)와 호스트 서비스(116)가 제 2 통신 세션을 재-설정할 때, 클라이언트(108)는 제 1 및 제 2 SID 및 키를 중간 노드(1032)에 송신한다. 중간 노드(1032)는 제 1 SID 및 제 1 키를 ACR 서비스(405)에 송신하며, 여기서 제 1 연결을 위한 암호화된 인증서(authentication credential)를 찾아서 탐색하기 위해 SID를 이용하고, 탐색된 인증서를 복호화하기 위해 제 1 키를 이용한다. 다음, ACR 서비스(405)가 복호화된 인증서가 유효한 것으로 확인함으로써 클라이언트를 인증한다. 재-인증한 후, 제 2 SID 및 제 2 키는 호스트 서비스(116)와 제 2 연결(124)을 재-설정하기 위해 제 1 프로토콜 서비스(112)에 포워딩된다.
도 11A를 참조하면, 네트워크 통신을 위한 다른 실시 예 시스템(1100)은, 전술과 마찬가지로, 네트워크(104, 104'), 클라이언트(108), 제 1 프로토콜 서비스(112), 호스트 서비스(116), 중간 노드(1032), 및 티켓 권한부(ticket authority)(1036)를 포함하며, 제 1 컴퓨팅 노드(1140) 및 제 2 컴퓨팅 노드(1144)를 더 개시하며, 일 실시 예에서는 제 1 및 제 2 컴퓨팅 노드 둘 다 클라이언트(108)를 호스트 서비스(116)에 초기 연결하기 위해 이용된다. 더욱이, 도 11A의 실시 예에서, 클라이언트(108)는 월드 와이드 웹에 연결하기 위해, 웹 브라우저(148)(예를 들면, 워싱톤, 레드몬드 마이크로소프트 사의 INTERNET EXPLORER 프로그램과 같은)를 포함한다.
일 실시 예(미도시)에서, 시스템(1100)은 두 개 이상의 중간 노드(1032) 및/또는 두 개 이상의 제 1 프로토콜 서비스(112)를 포함한다. 후술되는 바와 같이, 클라이언트(108) 및 제 1 프로토콜 서비스(112) 간에 전달해야만 하는 메시지를 통해, 중간 노드(1032) 및/또는 제 1 프로토콜 서비스(112)는, 예를 들면, 로드 대응 등식(load balancing equation)에 따라 선택될 수 있다.
제 1 컴퓨팅 노드(1140) 및 제 2 컴퓨팅 노드(1144) 각각은 통신할 수 있으며 명세서에 설명될 운영체계(operation)를 실행하기에 프로세서 전력과 메모리 용량을 충분히 갖는 임의의 컴퓨팅 디바이스일 수 있다. 예를 들면, 일 실시 예에서, 제 1 컴퓨팅 노드(1140)는 하나 이상의 웹 사이트 또는 웹 기반형 애플리케이션을 제공하는 웹 서버이다. 다른 실시 예에서, 제 2 컴퓨팅 노드(1144)는 XML 서비스 또는 웹 서비스를 제공한다.
일 실시 예에서, 클라이언트(108)와 네트워크(104)는 외부 네트워크(external network: 1152)를 형성하고, 점선으로 표시된 제 1 방화벽(1156)에 의해 시스템(1100)의 나머지 부분과 분리된다. 중간 노드(1132) 및 제 1 컴퓨터 노드(1140)는 "비무장 지대(demilitarized zone)"(1160)(즉, 사내 통신망과 개인 통신망 간에 배치된 네트워크 영역)에서 찾을 수 있으며, 점선으로 표시된 제 1 방화벽(1156) 및 제 2 방화벽(1164)에 의해 시스템(1100)의 나머지 부분과 분리된다. 다음, 도시된 바와 같이, 네트워크(104'), 제 1 프로토콜 서비스(112), 호스트 서비스(116a ~ 116n), 티켓 권한부(1036), 및 제 2 컴퓨팅 노드(1144)는 내부 네트워크(1168)를 형성하며, 제 2 방화벽(1164)에 의해 시스템(1100)의 나머지 부분과 분리된다.
대안적으로, 도 11A에 도시되지 않는 다른 실시 예에서, 시스템(1100)은 비무장 지대(1160) 내의 네트워크(104) 및 중간 노드(1032) 간에 위치된 제 3 컴퓨팅 노드(1146)를 더 포함한다. 제 3 컴퓨팅 노드(1146)는 명세서에 설명된 동작(들)을 수행하기 위해, 네트워크 통신 가능하며 프로세서 전력과 메모리 용량을 충분히 갖는 임의의 컴퓨팅 디바이스일 수 있다. 후술에 따르면, 임의의 실시 예로, 제 3 컴퓨팅 노드(1146)는 클라이언트(108)를 호스트 서비스(116)에 초기에 연결하는 프로세스를 수행하는 동안 및/또는 클라이언트(108)를 호스트 서비스(116)에 재연결하는 프로세스를 수행하는 동안 이용된다. 더 구체적으로, 후술과 같이, 시스템(1100)이 두 개 이상의 중간 노드(1032)를 포함하는 경우, 제 3 컴퓨팅 노드(1164)는 클라이언트(108)의 클라이언트 에이전트(128) 및 제 1 프로토콜 서비스(112) 간에 전달해야 하는 통신을 통해, 예를 들면, 로드 대응 등식(load balancing equation)에 따라, 중간 노드(1032)를 선택할 수 있다.
더욱이, 도 11A를 참조하면, 대안적인 실시 예에서, 중간 노드(1032)는 두 개 이상의 중간 노드(1032) 레벨 "a" ~ "n"에 의해 교체될 수 있다. 도시된 바와 같이, 각 레벨 "a" ~ "n"은 두 개 이상의 중간 노드(1032a ~ 1032n)를 포함할 수 있다. 후술과 같이, 클라이언트(108)의 클라이언트 에이전트(1280)는, 예를 들면, 로드 대응 등식에 따라 중간 노드(1032)의 임의의 조합을 통해 라우트(route)될 수 있다. 예를 들면, 도시된 바와 같이, 클라이언트 에이전트(128)는 연결(120)을 경유하여 중간 노드(1032)를 통해 라우트될 수 있다. 당업자에게 쉽게 이해될 수 있는 시스템(1100)의 다른 구성 역시 가능하다.
다시 도 11A를 참조하면, 일 실시 예에서, 웹 브라우저(1148)는 네트워크(104)를 통해 제 1 컴퓨팅 노드(1140)와 통신하며, 제 1 컴퓨팅 노드는 제 2 컴퓨팅 노드(1144) 및 티켓 권한부(1036)와 인터페이스한다. 보다 구체적으로, 제 1 컴퓨팅 노드(1140)는 제 2 컴퓨팅 노드(1144) 및 티켓 권한부(1036)의 주소로 구성된다. 후술에 따르면, 일 실시 예에서, 제 1 컴퓨팅 노드(1140)는 클라이언트(108)의 웹 브라우저(1148), 제 2 컴퓨팅 노드(1144) 및 티켓 권한부(1036) 간의 정보를 중계하도록(relay) 구성됨으로써, 이들 간의 직접 통신을 차단한다. 이처럼 직접 통신을 차단함으로써, 제 1 통신 노드(1140)는 시스템(1100)에 추가 보안 레벨을 더한다. 또한, 제 1 통신 노드(1140)는 중간 노드(1032)의 주소 또는, 대안적으로, 두 개 이상의 중간 노드(1032)의 주소로 구성될 수 있다.
일부에서, 제 2 컴퓨팅 노드(1144)는 호스트 서비스(116)에서 동작하는 애플리케이션 프로그램이 클라이언트(108)의 사용자에게 이용할 수 있는지를 판단하도록 구성된다. 다시 말해, 제 2 컴퓨팅 노드(1144)는 사용자가 애플리케이션 프로그램에 액세스하도록 인증되는 지를 판단하도록 구성된다. 일 실시 예에서, 다른 후술에 따르면, 사용자가 원하는 애플리케이션 프로그램을 선택한 다음, 제 2 컴퓨팅노드(1144)는 호스트 서비스(116)가 로드 대응을 목적으로 사용자가 원하는 애플리케이션을 동작하는데 이용할 수 있는 지를 판단하도록 구성된다. 제 2 컴퓨팅 노드(1144)는 제 1 컴퓨팅 노드(1140)의 호스트 서비스(116)에 대한 주소를 리턴한다. 또한, 제 2 컴퓨팅 노드(1144)는 로드 대응 등식을 이용하여 다수의 제 1 프로토콜 서비스(112) 간에서 선택될 수 있는 제 1 프로토콜 서비스의 주소를 제 1 컴퓨팅 노드(1140)에 리턴한다. 제 1 통신 노드(1140)는 선택된 제 1 프로토콜 서비스(112) 및 선택된 호스트 서비스(116)의 주소를 번갈아 티겟 권한부(1036)에 송신한다.
일부에서, 티겟 권한부(1036)는 연결 티겟을 생성한다. 일 실시 예에서, 티겟 권한부(1036)는 클라이언트(108)로의 송신을 위해 초기 연결 티겟을 제 1 컴퓨팅 노드(1140)에 송신한다. 다른 실시 예에서, 티겟 권한부(1036)는 제 1 재연결 티겟을 중간 노드(1032)에 송신한다.
도 11B에 도시된 바와 같이, 네트워크 통신 시스템(1100)의 다른 실시 예에서, ACR서비스(405)는 클라이언트(108)를 호스트 서비스(116)에 재연결하기 위해 티켓 권한부(1036) 대신 이용될 수 있다. 티겟 권한부(1036)로 티켓을 이용하는 대신, ACR 서비스(405)는 클라이언트 통신 세션을 연결 및 재연결하기 위해 SID 및 키를 생성하고, 확인하여 관리한다. ACR 서비스(405)는 클라이언트(108)와 연관된 SID 및 키, 또는 티켓을 이용하여 호스트 서비스(116) 또는 서버(415)에 대해 클라이언트를 인증 및 재-인증한다. 전술한 바와 같이, 티켓은 SID 및 키의 조합을 참조하여 이용될 수 있거나 또는 티켓은 SID 및 키를 포함할 수 있다.
도 11B의 시스템(1100)은 전술한 바와 같이, 네트워크(104, 104'), 클라이언트(108), 제 1 프로토콜 서비스(112), 호스트 서비스(116), 중간 노드(1032) 및 ACR 서비스(405)를 포함하며, 제 1 컴퓨팅 노드(1140) 및 제 2 컴퓨팅 노드(1144)를 더 개시하며, 일 실시 예에서 상기 노드들 모두는 클라이언트(108)를 호스트 서비스(116)에 초기 연결하기 위해 이용된다. 더욱이, 클라이언트(108)는 웹 브라우저(148)를 포함하여 월드 와이드 웹에 연결한다.
일 실시 예에서(미도시), 시스템(1100)은 두 개 이상의 중간 노드(1032) 및/또는 두 개 이상의 제 1 프로토콜 서비스(112) 또는 두 개 이상의 ACR서비스(405)를 포함한다. 클라이언트(108) 및 제 1 프로토콜 서비스(112) 간에 전달해야하는 메시지를 통해, 중간 노드(1032) 및/또는 제 1 프로토콜 서비스(112) 및/또는 ACR서비스(405) 각각은, 예를 들면, 로드 대응 등식에 따라 선택될 수 있다.
다른 실시 예에서, 도 11B의 시스템(1100)은 제 1 방화벽(1156)에 의해 "비무장 지대(demilitarized zone)"(1160)로 분리된 외부 네트워크(1152)를 포함할 수 있으며, 교대로 제 2 방화벽(1156)에 의해 내부 네트워크(1168)로 분리된다. 본 발명이 도 11A의 다양한 네트워크 토폴로지(topology)에 대해서 전술되어 있지만, 예를 들면, 임의의 다른 네트워크 토포로지는 내부 네트워크, 외부 네트워크, 서브-네트워크, 인트라넷, 방화벽, 보안 영역(security zone), 단일 서버, 서버 네트워크 또는 서버 펌(server farm)의 조합을 포함하는 토폴로지를 이용할 수 있다.
대안적으로, 도 11B에 도시되지 않은 다른 실시 예에서, 시스템(1100)은 비무장 지대(1160) 내에서 네트워크(104) 및 중간 노드(1032) 간에 위치된 제 3 컴퓨팅 노드(1146)를 더 포함한다. 임의의 실시 예에서, 제 3 컴퓨팅 노드(1146)는,클라이언트(108)를 호스트 서비스(116)에 초기에 연결하는 프로세스를 수행하는 동안 및/또는 클라이언트(108)를 호스트 서비스(116)에 재연결하는 프로세스를 수행하는 동안 이용된다.
도 11B의 다른 실시 예 시스템(1100)에서, 중간 노드(1032)는 두 개 이상의 중간 노드(1032a ~ 1032n) 레벨 "a" ~ "n"에 의해 교체될 수 있다. 클라이언트(108)의 클라이언트 에이전트(1280)는, 예를 들면, 로드 대응 등식에 따라 중간 노드(1032)의 임의의 조합을 통해 라우트(route)될 수 있다.
일 실시 예에서, 웹 브라우저(1148)는 네트워크(104)를 통해 제 1 컴퓨팅 노드(1140)와 통신하며, 제 1 컴퓨팅 노드(1140)는 제 2 컴퓨팅 노드(1144) 및 ACR 서비스(405)와 인터페이스 한다. 보다 구체적으로, 제 1 컴퓨팅 노드(1140)는 제 2 컴퓨팅 노드(1144) 및 ACR 서비스(405)의 주소로 구성된다. 다른 실시 예에서, 시스템(1100)에서 추가 보안 레벨을 제공하기 위해, 제 1 컴퓨팅 노드(1140)는 클라이언트(108)의 웹 브라우저(1148), 제 2 컴퓨팅 노드(1144) 및 ACR 서비스(405) 간의 정보를 중계하도록 구성됨으로써, 이들 간의 직접 통신을 차단한다. 제 1 컴퓨팅 노드(1140)는 임의의 중간 노드(1032a ~ 1032n)의 주소로 구성될 수 있다.
일부에서, 제 2 컴퓨팅 노드(1144)는 호스트 서비스(116)에서 동작하는 애플리케이션 프로그램이 클라이언트(108)의 사용자에게 이용가능한 것인 지를 판단하도록, 그리고 사용자에 의해 선택된 호스트 서비스(116)의 주소를 제 1 컴퓨팅 노드(1140)에 제공하도록 구성된다. 또한, 제 2 컴퓨팅 노드(1144)는 로드 대응 등식을 이용하여 다수의 제 1 프로토콜 서비스(112)중 하나의 주소를 제 1 컴퓨팅 노드(1140)에 제공한다. 제 1 통신 노드(1140)는 선택된 제 1 프로토콜 서비스(112) 및 선택된 호스트 서비스(116)의 주소를 번갈아 ACR서비스(405)에 송신한다.
일부에 대해, 명세서에 개시된 바와 같이, ACR 서비스(405)는 연결 SID 및 키를 생성하고, 확인하여 관리하며, 호스트 서비스(116) 또는 서버(415)와 함께 클라이언트의 통신 세션을 재-설정하기 위해 인증 및 재-인증 서비스를 제공한다. 일 실시 예에서, ACR 서비스(405)는 클라이언트(108)로의 송신을 위해 제 1 SID 및 제 1 키를 제 1 컴퓨팅 노드(1140)에 송신한다. 다른 실시 예에서, ACR 서비스(405)는 제 1 SID 및 제 1 키를 중간 노드(1032) 중 하나에 송신한다.
다른 측면에서, 본 발명은 제 1 프로토콜 내에서 캡슐화된 다수의 이차 프로토콜을 이용하는 네트워크 통신 방법 및 클라이언트(108)를 호스트 서비스(116)에 재연결하기 위한 방법에 관한 것이다. 본 발명은 제 1 프로토콜을 이용하여 클라이언트(108) 및 제 1 프로토콜 서비스(112) 간의 제 1 연결을 설정하는 단계와, 제 1 프로토콜 내에서 캡슐화된 다수의 제 1 프로토콜을 통해 클라이언트(108) 및 제 1 프로토콜 서비스(112) 간에서 통신하는 단계를 포함한다. 더욱이, 제 2 프로토콜 중 적어도 하나는 다수의 가상 채널(virtual channel)을 포함한다.
본 발명의 일 측면에 대한 일 실시 예에서, 제 2 연결은 이차 프로토콜 중 하나를 이용하여 제 1 프로토콜 서비스(112) 및 호스트 서비스(116) 간에 설정된다. 제 1 프로토콜 서비스(112) 및 호스트 서비스(116) 간의 통신은 이차 프로토콜 중 하나를 경유하여 발생한다. 구체적으로, 다수의 제 2 연결 각각은 제 1 프로토콜 서비스(112) 및 다른 호스트 서비스(116) 간에서 설정되며, 다수의 제 2 연결 각각은 다수의 이차 프로토콜 중 하나를 이용하여 설정된다. 또 다른 실시 예에서, 클라이언트(108) 및 제 1 프로토콜 서비스(116) 간의 제 1 연결은 하나 이상의 중간 노드(1032)를 통해 설정된다.
도 12A를 참조하면, 네트워크 실패 후에 클라이언트를 호스트 서비스에 재연결하는 방법을 나타내는 실시 예가 개시된다. (단계 1204)에서, 예를 들면, 클라이언트(108)는 복수의 호스트 서비스 중 하나를 이용함으로써 초기에 연결한다. 일반적으로, 클라이언트(108)는 인증서를 호스트 서비스(116)에 송신하여 통신 세션을 초기화할 것을 요구한다. 클라이언트(108)가 호스트 서비스(116)에 연결된 다음, 도 2A ~ 도 2B 및 도 3을 참조하여 전술한 바와 같이, 클라이언트(108) 및 호스트 서비스(116)는 제 1 프로토콜 내에 캡슐화된 복수의 이차 프로토콜을 경유하여 제 1 프로토콜 서비스(112)를 통해 통신한다(단계 1208). 본 실시 예에서, 제 1 프로토콜 서비스(112)는 임의의 제 1 프로토콜 패킷의 송신 전에 제 1 프로토콜(204) 레벨에서 통신을 암호화함으로써, 통신을 보호한다(secure). 다른 실시 예에서, 제 1 프로토콜 서비스(112)는 임의의 제 1 프로토콜 패킷의 송신 전에, 제 1 프로토콜 레벨에서 통신을 압축함으로써(compress), 통신 효율을 개선한다.
(단계 1212)에서, 클라이언트 에이전트(128)는 클라이언트 에이전트(128) 및 제 1 프로토콜 서비스(112) 간의 연결(120)이 실패했는지를 판단한다. 예를 들면, 클라이언트 에이전트(128) 및 중간 노드(1032) 간의 연결(120a)이 실패할 수 있으며, 중간 노드(1032) 및 제 1 프로토콜 서비스(112) 간의 연결(120b)이 실패할 수 있으며, 또는 두 개의 연결(120a, 120b)이 실패할 수 있다. 클라이언트 에이전트(128)가 연결(120)이 실패가 아니라고 판단하면, 방법(1200)은 (단계 1220)으로 진행한다. 한편, 클라이언트 에이전트(128)가 연결(120)이 실패라고 판단하면, 클라이언트(108)는 호스트 서비스(116)에 재연결된다(단계 1216).
제 1 통신 세션이 비정상적으로 끝난 후에, 재연결 단계인 (단계 1216)는 티켓 권한부(1036)를 배치하는 시스템 내에 포함할 수 있으며, 클라이언트(108)는 SID 및 제 1 및 제 2 재연결 티겟을 중간 노드(1032)에 송신한다. 중간 노드(1032)는 클라이언트(108)를 인증하기 위해 제 1 연결 티겟을 이용하여 클라이언트(108)와 중간 노드(1032) 간의 연결(120)을 재설정한다. 다음, 중간 노드(1032)는 제 2 연결 티켓을 제 1 프로토콜 서비스에 송신하며, 제 1 프로토콜 서비스(112)는 제 2 연결 티켓을 이용하여 호스트 서비스(116)에 재설정 연결(124)을 인증한다. 그러므로 재연결 티켓은 클라이언트(108)가 두 번 인증서를 재송신하지 않고 호스트 서비스(116)에 제 2 통신 세션을 자동적으로 설정하도록 허용한다.
다른 실시 예에서, 또한, 재연결 단계(단계 1216)는 또한 ACR 서비스(405)를 배치하는 시스템(1100)을 포함한다. 이러한 실시 예에서, 클라이언트(108)는 클라이언트(108)를 인증하기 위해 제 1 SID 및 제 1 키를 중간 노드(1032)에 송신하여 클라이언트(108)의 연결을 호스트 서비스(116)에 재설정한다.
(단계 1220)에서, 클라이언트(108)가 제 1 프로토콜 서비스(112)와의 연결 및, 결과적으로, 호스트 서비스(116a ~ 116n)와의 연결(124a ~ 124n)을 명확하게 종료하길 원하는 지를 판단한다. 만약, 그렇지 않다면, 클라이언트(108)와 제 1 프로토콜 서비스(112) 간의 통신은 제 1 프로토콜 내에 캡슐화된 다수의 이차 프로토콜을 경유하여 (단계 1208)를 진행한다. 다음, 만약 그렇다면, (단계 1224)에서는 모든 연결(120a 120b, 및 124a ~ 124n)이 차단되고, 모든 재연결 티켓이 삭제된다. ACR 서비스(405)를 이용하는 다른 실시 예에서는, (단계 1224)에서 모든 연결(120a 120b, 및 124a ~ 124n)이 차단되고 모든 SID 및 키가 삭제된다. 일 실시 예에서, 중간 노드(1032)는 티켓 권한부(1036)로부터 수신한 핸들(handle)을 이용하여 티켓 권한부(1036)에서 얻은 제 1 재연결 티켓 사본을 삭제한다. 티켓 권한부(1036)를 배치하는 다른 실시 예에서, 제 1 프로토콜 서비스(112)는 제 1 프로토콜 서비스(112)에서 얻은 제 2 재연결 티켓사본을 삭제한다. ACR 서비스(405)를 배치하는 또 다른 실시 예에서, 제 1 프로토콜 서비스(112)는 제 1 프로토콜 서비스(112)에서 얻은 제 2 SID 및 제 2 키 사본을 삭제한다.
티켓 권한부(1036)를 이용하는 다른 실시 예에서, 이차 프로토콜 연결(124)이 실패하는 다른 이유가 있다면, 제 1 프로토콜 서비스(112)와 연관되고 제 프로토콜 서비스(112)에서 얻은 제 2 연결 티켓 사본이 제 1 프로토콜 서비스(112)에 의해 삭제된다. 또 다른 실시 예에서, 제 1 연결 티켓 및/또는 제 2 재연결 티켓은 (단계 1212)에서와 같이 연결(120) 실패에 따라 및/또는 단계(1220)에서와 같이 연결의 분명한 종결에 따라 기설정된 시간 후에 자동적으로 삭제된다.
다른 측면에서, 본 발명은 ACR서비스(405)를 이용하여 클라이언트(108)를 호스트 서비스(116)에 재연결하기 위한 방법에 관한 것이다. 도 12B를 참조하면, 클라이언트(108)를 호스트 서비스(116)에 재연결하기 위한 방법(1216)에 대한 일 실시 예가 개시된다. 클라이언트(108)는 제 1 SID 및 제 1 키를 ACR서비스에 송신하여 호스트 서비스에 재연결한다(단계 1225). ACR 서비스(405)는 SID를 이용하여 암호화된 인증서를 찾아서 탐색하고(단계 1258), 키를 이용하여 탐색된 인증서를 복호화한다(단계 1260). 일 실시 예(미도시)에서, ACR서비스(405)는 암호화된 인증서를 이용하여 제 1 프로토콜 서비스(113) 및 호스트 서비스(116) 간에 보유된 세션으로 클라이언트(108)를 재인증한다. 재-인증한 다음, 제 1 프로토콜 서비스(116)에 재설정된 클라이언트(108)의 연결이 제 1 프로토콜 서비스(112) 및 호스트 서비스(116) 간에 보유된 세션에 재-링크된다.
다른 실시 예에서, 제 2 통신 세션 동안, ACR 서비스(405)가 인증서에 대한 키를 생성한(단계 1270) 다음, 제 2 키를 이용하여 인증서를 암호화한다(단계 1275). ACR 서비스(405)는 제 2 SID를 생성한다(단계 1280). 다음, 복호화된 인증서는 호스트 서비스(116)로 재인증되며, 제 2 SID는 호스트 서비스(116)를 가지고 보유된 통신 세션과 연관된다(단계 1280a). 다음, ACR 서비스(405)는 제 2 SID 및 제 2 키를 클라이언트(108)에 송신한다(단계 1285). 일 실시 예에서, ACR 서비스(405)는 중간 노드(1032)를 통해 제 2 SID 및 제 2 키를 송신할 수 있다. 클라이언트(108)는 제 2 SID 및 제 2 키를 저장한다(단계 1290). 다음, ACR 서비스(405)는 제 2 키를 삭제한다(단계 1295).
도 13A ~ 도 13C를 참조하면, ACR 서비스(405)를 이용하여 클라이언트(108)를 호스트 서비스(116)에 초기에 연결하기 위한 방법(1300)이 개시되어 있다. (단계 1304)에서, 브라우저(148)를 이용하는 클라이언트(108)는, 예를 들면, HTTP 요청(request)과 같은 요청을 제 1 컴퓨팅 노드(1140)에 전송한다. 제 1 컴퓨팅 노드(1140)는, 예를 들면, 인증정보(예를 들면, 사용자 이름 및 패스워드)를 요청하는 HTML 폼과 같은 웹 페이지를 리턴한다. 클라이언트(108)의 사용자는 인증서를 인가하고 완성된 폼을 제 1 컴퓨팅 노드(1140)에 송신한다.
다음, (단계 1308)에서, 클라이언트(118)의 사용자에게 실행가능한 애플리케이션을 알린다. 일 실시 예에서, 제 1 컴퓨팅 노드(1140)는 사용자 인증서를 로그인 페이지에서 추출하고, 이용가능한 애플리케이션을 사용자에게 열거하기 위해 제 2 컴퓨팅 노드(1144)에 대한 요청과 함께 추출한 인증서를 제 2 컴퓨팅 노드(1144)에 송신한다. 사용자의 인증서에 따라, 제 2 컴퓨팅 노드(1140)는 이용가능한 특정한 애플리케이션 리스트, 예를 들면, 리스트를 웹 페이지 형태로 리턴한 다음 클라이언트(108)의 사용자에게 포워딩한다.
(단계 1312)에서, 사용자는 원하는 애플리케이션을 선택하고, 상기 애플리케이션에 대한 요청을 제 1 컴퓨팅 노드(1140)에 전송한다. 예를 들면, 일 실시 예에서, 사용자는 제 1 컴퓨팅 노드(1140)에 의해 사용자에게 표시된 웹 페이지 내에 리스트된 원하는 애플리케이션을 클릭하고, 상기 애플리케이션에 대한 HTTP요청은 제 1 컴퓨팅 노드(140)에 포워딩된다. 요청은 제 1 컴퓨팅 노드(1140)에 의해 진행되고 제 2 컴퓨팅 노드(1144)에 포워딩된다.
(단계 1316)에서, 제 2 컴퓨팅 노드(1144)는 원하는 애플리케이션이 호스트 서비스(116)에서 수행될 수 있는 지를 판단한다. 제 2 컴퓨팅 노드(1144)는, 예를 들면, 로드 대응 등식에 따라 판단할 수 있다. 또한, 일 실시 예에서, 제 2 컴퓨팅 노드(1144)는 연결(124)을 경유하여 호스트 서비스(116)와 통신에 이용될 수 있는 다수의 제 1 프로토콜 서비스(112) 간에서 제 1 프로토콜 서비스를 판단한다. 예를 들면, 제 2 컴퓨팅 노드(1144) 역시 로드 대응 등식에 따라 판단할 수 있다. 제 2 컴퓨팅 노드(1144)는 선택된 호스트 서비스(116) 및 선택된 제 1 프로토콜 서비스의 주소를 제 1 컴퓨팅 노드(1140)에 리턴한다.
다음, (단계 1320)에서, 클라이언트(108)는 초기 연결 세션 id 및 키, 제 1 SID 및 제 1 키, 및 중간 노드(1032)에 대한 주소(후술하는 바와 같이, 실제 주소 및 가상 주소 중 하나)로 제공된다. 일 실시 예에서, 제 1 컴퓨팅 노드(1140)는 선택된 호스트 서비스(116) 및 선택된 제 1 프로토콜 서비스(112)에 대한 주소를 초기 연결 세션 id 및 키와 함께 ACR 서비스(405)에 제공한다. ACR 서비스(405)는 초기 세션 id 및 키를 생성하고, 세션 id 및 키를 제 2 컴퓨팅 노드(1140)에 송신하는 한편, 사본을 저장한다.
일 실시 예에서, 제 1 컴퓨팅 노드(1140)가 중간 노드(1032)의 실제 주소로 구성된 다음, 중간 노드(1032)의 실제 주소 및 초기 연결 세션 id 및 키를 클라이언트(108)의 브라우저에 송신한다. 제 1 컴퓨팅 노드(1140)는, 예를 들면, 우선 중간 노드(1032) 의 실제 주소 및 초기 연결 티켓 둘 다를 포함하는 파일을 생성할 수 있으며, 다음 상기 파일을 상기 클라이언트(108)의 브라우저(1148)에 송신할 수 있다. 선택적으로, 다른 실시 예에서, 제 1 컴퓨팅 노드(1140)는 두 개 이상의 중간 노드(1032)의 실제 주소로 구성된다. 이러한 실시 예에서, 제 1 컴퓨팅 노드(1140)는 우선 클라이언트(108)와 제 1 프로토콜 서비스(112) 간에서 전달해야하는 메시지를 통해 중간 노드(1032)를 판단한다. 다음, 제 1 통신 노드(1140)는 예를 들면, 전술한 상기 파일을 이용하여, 선택된 중간 노드(1032)의 실제 주소 및 초기 연결 티켓을 클라이언트(108)의 브라우저(1148)에 송신한다. 일 실시 예에서, 제 1 컴퓨팅 노드(1140)는 로드 대응 등식을 이용하여 중간 노드(1032)를 선택한다. 다음, 클라이언트(108)의 클라이언트 에이전트(128)가 시작되며, 중간 노드(1032)의 주소를 이용하여, 클라이언트(108)의 클라이언트 에이전트(128) 및 중간 노드(1032) 간에 제 1 프로토콜 연결(120a)을 설정한다(단계 1324).
대안적으로, 다른 실시 예에서, 제 1 컴퓨팅 노드(1140)는 제 3 컴퓨팅 노드(1146)의 실제 주소로 구성되며, 이것은 중간 노드(1032)의 가상 주소로 작용한다. 이러한 실시 예에서, 제 1 컴퓨팅 노드(1140)는, 예를 들면, 전술한 파일을 이용하여 제 3 컴퓨팅 노드(1146)의 실제 주소와 초기 연결 세션 id 및 키를 클라이언트(108)의 브라우저(1148)에 송신한다(단계 1320). 클라이언트(108)의 클라이언트 에이전트(128)가 시작된 다음, 제 3 컴퓨팅 노드(1146)의 실제 주소를 이용하여 클라이언트(108)의 클라이언트 에이전트(128)와 제 3 컴퓨팅 노드(1146) 간에 제 1 프로토콜 연결을 설정한다(단계 1324). 다음, 제 3 컴퓨팅 노드(1146)는 클라이언트 와 제 1 프로토콜 서비스(112) 간에 전달해야하는 메시지를 통해 중간 노드(1032)를 판단한다. 일 실시 예에서, 제 3 컴퓨팅 노드(1146)는 로드 대응 등식을 이용하여 중간 노드(1032)를 설정한다. 선택된 중간 노드(1032)를 가지고, 제 3 컴퓨팅 노드(1046)는 제 1 프로토콜 연결을 중간 노드(1032)에 설정한다. 그러므로, 제 3 컴퓨팅 노드(1146)를 통해, 클라이언트(108)의 클라이언트 에이전트(128)와 중간 노드(1032) 간에 제 1 프로토콜 연결(120a)이 존재한다. 이에 의해, 제 3 컴퓨팅 노드(1046)의 실제 주소는 중간 노드(1032)의 실제 주소에 매핑된다. 이에 따라, 클라이언트(108)의 클라이언트 에이전트(128)에 대해, 제 3 컴퓨팅 노드의 실제 주소는 중간 노드(1032)의 가상 주소로 작용한다.
일 실시 예에서, 전술한 바와 같이, 중간 노드(1032a ~ 1032n)에 대해 하나 이상의 레벨이 존재하는 부분에서, 제 1 컴퓨팅 노드(1140) 또는 제 3 컴퓨팅 노드(1146)는 각각 클라이언트 에이전트(108)가 레벨 "a"에 연결할 수 있는 중간 노드(1032)만 선택한다. 이러한 실시 예에서, 각각의 레벨 "a" ~ "n-l" 에서, 상기 레벨에서 클라이언트 에이전트(128)가 라우트되는 동안 중간 노드(1032)는 로드 대응 등식, 예를 들면, 다음 레벨에 연결할 수 있는 중간 노드(1032)에 따라 판단한다. 대안적으로, 다른 실시 예에서, 제 1 컴퓨팅 노드(1032) 또는 제 3 컴퓨팅 노드(1046) 각각은 하나 또는 모든 레벨 "a" ~"n"이상에 대해 클라이언트 에이전트(128)가 라우트될 수 있는 동안 중간 노드(1032)를 판단한다.
클라이언트(108)의 클라이언트 에이전트(128)와 중간 노드(1032), 예를 들면, 레벨 "n"(이하, 방법(1300)에서 중간 노드(1032)라 칭함)에서 중간 노드(1032) 간에 제 1 프로토콜 연결(120a)이 설정되면, 클라이언트 에이전트(128)는 초기연결 티켓을 중간 노드(1032)에 송신한다.
다음, (단계 1328)에서는 초기 연결 SID 및 키를 확인했는지(validate)를 판단한다. 일 실시 예에서, 중간 노드(1032)가 확인하기 위해 초기 연결 SID 및 키를 ACR 서비스(405)에 송신한다. 일 실시 예에서, ACR 서비스(405)는 SID 사본과 (단계 1320)에서 얻은 암호화된 인증서를 비교함으로써 SID 및 키를 확인한다. ACR 서비스(405)가 SID 및 키를 확인했다면, ACR 서비스(405)는 제 1 프로토콜 서비스(112)의 주소 및 선택된 호스 서비스(116)의 주소를 중간 노드(1032)에 송신한다(단계 1332). 제 1 프로토콜 서비스(112)는 또한 SID 및 키 및 이들의 임의의 사본을 삭제할 수 있다. 한편, ACR 서비스(405)가 SID 및 키를 확인하지 않았다면, 클라이언트(108)는 제 1 프로토콜 서비스(112)에 대한 연결, 결과적으로, 호스트 서비스(116)에 대한 연결을 거부한다(단계 1330).
후속 (단계 1332)에서, 중간 노드(1032)는 선택된 제 1 프로토콜 서비스(112)의 주소를 이용하여, 중간 노드(1032)와 제 1 프로토콜 서비스(112) 간에 제 1 프로토콜 연결(102b)을 설정한다(단계 1336). 이에, 클라이언트(108)의 클라이언트 에이전트(128)와 제 1 프로토콜 서비스(112) 간에 중간 노드(1032)를 통해 제 1 프로토콜 연결(120)이 존재한다. 중간 노드(1032)는 또한 선택된 호스트 서비스(116)의 주소를 제 1 프로토콜 서비스(112)에 전달할 수 있다.
일 실시 예에서, 제 1 프로토콜 서비스(112)는 선택된 호스트 서비스(116)의 주소를 이용하여, 제 1 프로토콜 서비스(112) 및 선택된 호스트 서비스(116) 간에 2차 프로토콜 연결(124)을 설정한다(단계 1340). 예를 들면, 선택된 호스트 서비스(116)는 실제 호스트 서비스(116a)이고, 이차 프로토콜 연결(124a)은 제 1 프로토콜 서비스(112) 및 호스트 서비스(116a) 간에 설정된다.
일 실시 예에서, (단계 1340)에 후속하여, 사용자가 실행될 제 2 애플리케이션을 선택하고(단계 1344), 제 2 컴퓨팅 노드(1144)는 실행될 제 2 애플리케이션 상에서 호스트 서비스(116)를 결정한다(단계 1348). 예를 들면, 로드 대응 등식을 연산함으로써, 제 2 컴퓨팅 노드(1144)는 제 2 애플리케이션 프로그램을 실행할 호스트 서비스(116)를 선택할 수 있다. 다음, 제 2 컴퓨팅 노드(1144)는 선택된 호스트 서비스(116b)의 주소를 제 1 프로토콜 서비스(112)에 송신한다. 일 실시 예에서, 제 2 컴퓨팅 노드(1144)는 제 1 프로토콜 서비스(112)와 직접 통신하며, 주소를 제 1 프로토콜 서비스(112)에 직접 송신한다. 다른 실시 예에서, 선택된 호스트 서비스(116b)의 주소는 제 1 프로토콜 서비스(112)에 직접 송신된다. 예를 들면, 주소는 제 1 컴퓨팅 노드(1140), ACR 서비스(405), 중간 노드(1032), 및 제 1 프로토콜 서비스(112)의 임의 조합을 통해 제 1 프로토콜 서비스(112)에 송신될 수 있다. 선택된 호스트 서비스(116b)의 주소가 수신되면, 제 1 프로토콜 서비스(112)는 제 1 프로토콜 서비스(112) 및 선택된 호스트 서비스(116b) 간에 이차 프로토콜 연결을 설정한다(단계 1352).
(단계 1344, 1348, 및 1352)는 여러 번 반복될 수 있다. 이처럼, 애플리케이션 프로그램의 임의의 개수는 임의의 호스트 서비스(116a ~ 116n)의 개수에서 실행될 수 있으며, 이 출력은 임의의 이차 프로토콜 개수를 이용하여 연결(124a ~ 124n)을 제 1 프로토콜 서비스(112)와 통신할 수 있다.
다음, (단계 1356)으로 넘어가면, 제 1 프로토콜 서비스(112)는 전술과 같이, 다수의 이차 프로토콜을 제 1 프로토콜 내에 캡슐화한다. 이처럼, 클라이언트(108)은 다수의 호스트 서비스(116)에 연결되고 동시에 다수의 호스트 서비스(116)와 통신한다.
다른 실시 예에서, (단계 1344, 1348, 및 1352)를 실행하기 전에, 호스트 서비스(116)(예를 들면, 호스트 서비스(116a))상에서 새로운 애플리케이션 프로그램을 수행하기 위해, 클라이언트(108)의 사용자는 다른 애플리케이션 프로그램, 예를 들면, 호스트 서비스(116a) 상에서 실행하는 애플리케이션 프로그램의 실행을 끝낸다. 이 경우, 제 1 프로토콜 서비스(112)는 제 1 프로토콜 서비스(112) 및 호스트 서비스(116a) 간의 연결을 단절한다(disrupt). 다음, 제 1 프로토콜 서비스(112)는 (단계 1344, 1348, 1352)를 구현함으로써, 클라이언트(108) 및 제 1 프로토콜 서비스(112) 간의 연결(120)을 중단하지 않고 제 1 프로토콜 서비스(112) 및 호스트 서비스(116b) 간의 연결(124b)을 설정한다.
일 실시 예에서, 제 1 SID 및 키가 생성된다(단계 1360). 예를 들면, 중간 노드(1032)는 ACR 서비스(405)에서 제 1 SID 및 키를 요청한다. 요청을 수신함에 따라, ACR서비스(405)는 제 1 SID 및 키를 생성하고, 또한, 난수(random number)와 같은 핸들(handle)을 생성할 수 있다. 다음, ACR 서비스(405)는 제 1 SID 및 키의 사본 및 핸들 사본을 보유하는 반면, 제 1 SID 및 키 및 핸들을 중간 노드(1032)에 송신할 수 있다(단계 1364). ACR 서비스(405)는 (단계 1320)에서 제 1 컴퓨팅 노드(1140)에 의해 ACR 서비스(405)로 전송된 제 1 프로토콜 서비스(112)의 주소를 계속 보유한다. 다음, 중간 노드(1032)는 제 1 재연결 티켓을 클라이언트(108)에 송신한다(단계 1368).
다음 (단계 1372)에서, 제 2 SID 및 키가 생성된다. 일 실시 예에서, 제 1 프로토콜 서비스(112)는 제 2 SID 및 키를 생성한다. 다음, 제 1 프로토콜 서비스(112)는 중간 노드(1032)를 통해, 제 2 SID 및 키를 클라이언트(108)에 송신한다(단계 1376). 수행한 다음, 제 1 프로토콜 서비스(112)는 연결(120)의 단절에 이어 재연결될 세션을 확인하기 위해 키 사본과 세션 번호를 갖는다. 일 실시 예에서, 예를 들면, 제 1 프로토콜 서비스(112)는 특정 세션 번호에 대해, 상기 세션 번호와 연관된 이차 프로토콜 연결(124a ~ 124n)을 리스트하는 테이블을 보유한다. 따라서, 제 1 프로토콜 서비스(112)에서의 제 1 프로토콜 연결(120) 및 제 2 SID 및 키의 확인의 재-설정에 이어, 전술한 바와 같이, 제 1 프로토콜 서비스(112)는 클라이언트(108)에 통신을 위해 재-설정된 제 1 프로토콜 연결(120) 내에 캡슐화될 이차 프로토콜 연결(124)을 확인할 수 있다.
도 13A ~ 도 13C 내에 도시되지 않은 실시 예에서, 티켓 권한부(1136)는 호스트 서비스(116)에 클라이언트(108)를 재연결하기 위해 제공할 ACR 서비스(405) 대신 이용될 수 있다. (방법 1300)에서, 티켓 권한부(1326)는 ACR 서비스(405)로 SID 및 키 대신 재연결 티켓을 생성하여 송신할 수 있다. 예를 들면, (단계 1320)에서, 티켓 권한부(1036)는 초기 연결 티겟과 중개 노드(1032)에 대한 주소를 클라이언트(108)에 제공할 수 있다. 또한, (단계 1328)에서, 티켓 권한부(1036)는 호스트 서비스(116)에 클라이언트(108)의 재연결을 촉진할 수 있다. 또한 (단계 1328)에서, 티켓 권한부(1036)는 초기 연결 티켓이 유효한지를 판단할 수 있으며, (단계 1360)에서 티켓 권한부(1036)는 제 1 재연결 티켓을 생성할 수 있다. 추가적으로, (단계 1364, 1368, 1372, 및 1378)에서 티켓 권한부는 (방법 1300)에 따른 제 1 및 제 2 재연결 티켓을 생성하여 송신할 수 있다. 이와 같이, 티켓 권한부(1036)는 호스트 서비스(116)에 클라이언트(108)의 재연결을 촉진했다.
도 14를 참조하면, 영구적으로 신뢰할 수 있는 하나 이상의 호스트 서비스(116)를 클라이언트(108)에 제공하고 클라이언트(108)를 호스트 서비스(116)에 재연결(예를 들면, 도 12A의 단계 1216)하기 위한 방법(1400)에 대한 실시 예가 개시되어 있다. 특히, (단계 1404)에서, 제 1 프로토콜 서비스(112) 및 각각의 하나 이상의 호스트 서비스(116) 간에 이차 프로토콜 연결(124)이 보유된다. 더욱이, (단계 1408)에서, 차단이 결정된 연결(120)(예를 들면, 도 12의 단계 1216)을 경유하여, 클라이언트(108)의 클라이언트 에이전트(128) 및 제 1 프로토콜 서비스(112) 간에 가장 최근에 송신된 데이터 패킷의 큐(queue)가 보유된다. 일 실시 예에서, 데이터 패킷은 연결(120)이 실패하기 전 또는 실패할 때 모두 큐되어 보유된다. 큐된 데이터 패킷은, 예를 들면, 클라이언트 에이전트(128)에 의해 버퍼 내에 보유된다. 대안적으로, 제 1 프로토콜 서비스(112)는 규된 데이터 패킷 내에 보유될 수 있다. 또 다른 실시 예에서, 클라이언트 에이전트(128) 및 제 1 프로토콜 서비스(112)는 모두 버퍼 내에 큐 데이터 패킷을 보유한다.
(단계 1412)에서, 새로운 제 2 프로토콜 연결(120)은 클라이언트(108)의 클라이언트 에이전트(128) 및 제 1 프로토콜 서비스(112) 간에 설정되고, 제 1 프로토콜 서비스(112) 및 각각의 하나 이상의 호스트 서비스(116) 간에 보유된 이차 프로토콜 연결(124)에 링크됨으로써, 클라이언트(108)를 호스트 서비스(166)에 재연결한다. 클라이언트(108)가 재연결된 다음, 보유된 큐된 데이터 패킷은 새롭게 설정된 제 1 프로토콜 연결(120)을 경유하여 송신될 수 있다(단계 1416). 이처럼, 제 1 프로토콜 서비스(112)를 통해, 호스트 서비스(116) 및 클라이언트(108) 간의 통신 세션은 임의의 데이터 손실 없이 영구적으로 진행한다. 일 실시 예에서, ACR 서비스(405)는 클라이언트(108)를 호스트 서비스(116)에 재연결하기 전에 클라이언트(108)를 호스트 서비스(116)에 인증한다. 다른 실시 예에서, 제 1 프로토콜 서비스(112)는 클라이언트(108)를 호스트 서비스(116)에 재연결하기 전에 티켓 권한부(1036)를 이용하여 재연결 티켓을 확인한다.
도 15A ~ 도 15B는 도 11B에 개시된 시스템(1100) 실시 예와 마찬가지로 ACR서비스(405)를 이용하여 하나 이상의 호스트 서비스(116)에 클라이언트(108)를 재연결하기 위한 방법(1500)에 대한 실시 예를 나타낸다.
(단계 1504)에서, 클라이언트(108)와 제 1 프로토콜 서비스(112) 간의 임의의 남아있는 연결이 차단된다. 예를 들면, 연결(120a)이 실패하는 경우, 그러나 연결(120b)이 없는 경우, 연결(120b)이 차단된다. 대안적으로, 연결(120b)이 실패하지만, 연결(120a)이 없는 경우, 연결(120a)이 차단된다.
일 실시 예에서, 클라이언트(108)에 제공된 중간 노드(1032)의 실제 주소를 이용한 다음, 클라이언트(108)의 클라이언트 에이전트(128)는 클라이언트 에이전트(128)와 중간 노드(1032) 간에 제 1 프로토콜 연결(120a)을 재설정한다(단계 1508). 대안적으로, 다른 실시 예에서, 클라이언트(108)에 제공된 제 3 컴퓨팅 노드(1146)의 실제 주소를 이용한 다음, 클라이언트(108)의 클라이언트 에이전트(128)는 클라이언트 에이전트(128)와 제 3 컴퓨팅 노드(1146) 간에 제 1 프로토콜 연결을 재-설정한다(단계 1508). 제 3 컴퓨팅 노드(1146)는 클라이언트(108) 및 제 1 프로토콜 서비스(112) 간에 전달해야하는 메시지를 통해 중간 노드(1032)를 판단한다. 일 실시 예에서, 제 3 컴퓨팅 노드(1146)는 대응 등식을 이용하여 중간 노드(1032)를 선택한다. 클라이언트(108)를 하나 이상의 호스트 서비스(116)에 재연결하는 단계에서 제 3 컴퓨팅 노드(1146)에 의해 선택된 중간 노드(1032)는 클라이언트(108)를 하나 이상의 호스트 서비스(116)에 초기에 연결하기 위해 선택된 중간 노드와 다를 수 있다. 중간 노드(1032)를 선택하면, 제 3 컴퓨팅 노드(1146)는 제 1 프로토콜 연결을 중간 노드(1032)에 재설정한다. 그러므로, 제 3 컴퓨팅 노드(1146)를 통해, 제 1 프로토콜 연결(120a)은 클라이언트(108)의 클라이언트 에이전트(128)와 중간 노드(1032) 간에 재-설정된다.
일 실시 예에서, 중간 노드(1032)에 대해 하나 이상의 레벨이 존재하는 부분에서, 각각의 레벨 "a" ~ "n-l"에서 클라이언트 에이전트(128)가 라우트되는 동안 중간 노드(1032)는 로드 대응 등식, 예를 들면, 다음 레벨에 연결할 수 있는 중간 노드(1032)에 따라 결정한다. 대안적으로, 다른 실시 예에서, 제 3 컴퓨팅 노드(1146)는 하나 또는 모든 레벨이상의 "a" ~"n"에 대해 클라이언트 에이전트(128)가 라우트될 수 있는 동안 중간 노드(1032)를 결정한다.
클라이언트(108)의 클라이언트 에이전트(128)와 중간 노드(1032), 예를 들면, 레벨 "n"에서 중간 노드(1032)(이하, 방법 1500에서 중간 노드(1032)로 칭함) 간에 제 1 프로토콜 연결(120a)이 설정되면, 클라이언트 에이전트(128)는 제 1 SID 및 키 및 제 2 SID 및 키를 중간 노드(1032)에 송신한다.
다음, (단계 1516)에서는 제 1 SID 및 키가 확인됐는지를 판단한다. 일 실시 예에서, ACR 서비스(405)를 이용하여 제 1 SID 및 키의 확인이 판단된다. 예를 들면, 중간 노드(1032)는 제 1 SID 및 키를 ACR 서비스(405)에 송신한다. 일 실시 예에서, ACR서비스(405)는 메모리(43)에 저장된 제 1 SID 사본과 제 1 SID 및 키를 비교함으로써 제 SID 및 키를 확인를 판단한다. ACR 서비스(405)가 제 1 SID 및 키가 확인되었다면, ACR 서비스(405)는 클라이언트(108)를 호스트 서비스(116)에 재-인증하고 제 1 프로토콜 서비스(112)의 주소를 중간 노드(1032)에 송신한다(단계 1520). 한편, ACR 서비스(405)가 SID 및 키가 확인되지 않았다면, 클라이언트(108)는 제 1 프로토콜 서비스(112)에 대한 재연결, 결과적으로, 호스트 서비스(116)에 대한 재연결을 거부한다(단계 1524).
(단계 1528)에서, 예를 들면, 제 1 SID 및 키는 ACR 서비스(405)에 의해 삭제되며, 재배치 제 2 SID 및 키는 ACR 서비스(405)에 의해 생성된다. 임의의 실시 예에서, ACR 서비스(405)는 제 2 SID 및 키를 중간 노드(1032)에 송신한다. 임의실시 예에서, ACR 서비스(405)는 제 1 SID 및 키를 삭제하는 것을 진행하기 전에 제 2 SID 및 키가 수신되는 것을 확인하기 위해 클라이언트를 기다린다(wait).
제 SID 및 키가 확인된 후에, 중간 노드(1032)는 제 1 프로토콜 서비스(112)의 주소를 이용하여 중간 노드(1032)와 제 1 프로토콜 서비스(112) 간에 제 1 프로토콜 연결(120b)을 재-설정한다(단계 1532). 중간 노드(1032) 및 제 1 프로토콜 서비스(112) 간에 제 1 프로토콜 연결(120b)이 재-설정된 다음, 제 2 SID 및 키가 확인되는지를 판단한다(단계 1536). 일 실시 예에서, 제 2 SID 및 키의 유효성은 제 1 프로토콜 서비스(112)를 이용함으로써 결정된다. 예를 들면, 중간 노드(1032)는 제 2 SID 및 키를 제 1 프로토콜 서비스(112)에 송신한다. 일 실시 예에서, 제 1 프로토콜 서비스(112)는 기존에 갖고 있는 제 2 SID 및 암호화된 인증서와 제 2 SID 및 키를 비교함으로써 제 2 SID 및 키의 유효성을 판단한다. 제 1 프로토콜 서비스(112)가 제 2 SID 및 키를 확인하면, 중간 노드(1032) 및 제 1 프로토콜 서비스(112) 간에 재-설정된 제 1 프로토콜 연결(120b)은 제 1 프로토콜 서비스(112) 및 하나 이상의 호스트 서비스(116) 각각 간에 보유된 이차 프로토콜 연결(124)에 링크된다. 한편, 제 1 프로토콜 서비스(112)가 제 2 SID 및 키가 확인되지 않은 것으로 판단하면, 재-설정된 제 1 프로토콜 연결(120b)은 하나 이상 보유된 이차 프로토콜 연결에 링크되지 않으며, 클라이언트(108)는 하나 이상의 호스트 서비스(116)에 재연결을 거부한다(단계 1544).
(단계 1548)에서, 제 2 SID 및 키는, 예를 들면, 제 1 프로토콜 서비스(112)에 의해 삭제되며, 재배치 제 2 SID 및 키는, 예를 들면, 클라이언트(108)로의 송신을 위한 제 1 프로토콜 서비스(112)에 의해 생성된다. 이러한 실시 예에서, 제 1 프로토콜 서비스(112)는 재배치 제 2 SID 및 키의 사본을 갖는다. 임의 실시 예에서, 제 1 프로토콜 서비스(112)는 제 2 세션 id 및 키를 삭제하는 것을 진행하기 전에 재배치 제 2 SID 및 키가 수신되는 것을 확인하기 위해 클라이언트(108)를 기다린다(wait for).
(단계 1552)에서, 재배치 제 2 SID 및 키는 클라이언트에 송신된다. 예를 들면, ACR 서비스(405)는 중간 노드(1032)를 통해, 재배치 제 2 SID 및 키를 클라이언트(108)에 송신할 수 있다. 더욱이, 일 실시 예에서, 제 1 프로토콜 서비스(112)는 중간 노드(1032)를 통해 재배치 제 2 SID 및 키를 클라이언트(108)에 송신한다.
도 15A ~ 도 15C에 도시되지 않은 실시 예에서, 또한, 티켓 권한부(1136)는 호스트 서비스(116)에 클라이언트(108)를 재연결하기 위해 ACR 서비스(405) 대신 이용될 수 있다. (방법 1500)에서, 티켓 권한부(1326)는 ACR 서비스(405)에 SID 및 키 대신 재연결 티켓을 생성하여 송신할 수 있다. 예를 들면, (단계 1512)에서, 티켓 권한부(1036)는 (단계 1512)내의 중간 노드(1032)에서 수신된 제 1 재연결 티켓이 확인되는 지를 판단할 수 있다(단계 1516). (단계 1528)에서 티켓 권한부(1036)는 제 1 재연결 티켓을 삭제하고 핸들을 이용하여 제 2 재연결 티켓을 생성할 수 있다. 이와 같이, 티켓 권한부(1036)는 호스트 서비스(116)에 클라이언트(108)의 통신 세션의 재-설정 및 재-인증을 촉진한다.
본 발명의 범주 및 정신을 벗어나지 않는 범위에서 당업자에 의해 다양한 다른 변경 및 수정이 가능하다. 본 명세서에서 본 발명의 예시적 실시 예는 본 발명을 이해하기 위한 목적으로 사용되었을 뿐, 청구항에 정의된 본 발명을 제한하지 않는다. 본 청구항들은 그들이 문헌적으로 내포하고 있는 것 또한, 본 명세서에 도시되고 설명된 다른 것과 동일하지 않지만 약간 다른 등가물을 포함하여 판단한다.
Claims (24)
- 호스트 서비스를 클라이언트에 재연결하는 방법에 있어서,(a) 클라이언트와 제 1 프로토콜 서비스 간에 제 1 연결을 제공하고, 제 1 프로토콜 서비스와 호스트 서비스 간에 제 2 연결을 제공하는 단계와,(b) 상기 제 1 연결에서 단절(disruption)을 검출하는 단계와,(c) 상기 제 1 프로토콜 서비스와 상기 호스트 서비스 간에 제 2 연결을 보유하면서 상기 클라이언트와 상기 제 1 프로토콜 서비스 간의 제 1 연결을 재설정하는 단계와,(d) 상기 제 1 프로토콜 서비스에서 상기 클라이언트와 연관된 티켓을 수신하는 단계와,(e) 상기 티켓을 확인하는(validate) 단계와,(f) 상기 티켓이 확인된 후에 상기 재-설정된 제 1 연결을 상기 보유된 제 2 연결에 링크하는 단계를 포함하는 방법.
- 제 1항에 있어서, (a)단계는, 상기 클라이언트와 상기 호스트 서비스 간의 제 1 통신 세션 동안 상기 호스트 서비스로 상기 클라이언트를 인증하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 제 1항에 있어서, (e)단계는, 티켓으로부터 키와 세션 id를 획득하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 제3항에 있어서, (e)단계는 티켓으로부터의 세션id를 이용하여 암호화된 인증서를 복구하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 제4항에 있어서, (e)단계는, 티켓으로부터의 키를 사용하여 상기 복구된 인증서를 복호화하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 제5항에 있어서, (e)단계는, 상기 복호화된 인증서를 사용하여 호스트 서비스로 클라이언트를 재인증하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 제 1항에 있어서, (f)단계는, 티켓이 확인된 후에 티켓을 삭제하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 제 2항에 있어서, (f)단계는, 티켓이 삭제된 후에 대체 티켓을 생성하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 제 1항에 있어서, (a)단계는, 제 1 프로토콜 서비스에서 티켓을 생성하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 제9항에 있어서, (a)단계는, 제 1 프로토콜 서비스에서 티켓의 사본을 저장하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 제4항에 있어서, (a)단계는, 제 1 프로토콜 서비스로부터 클라이언트로 티켓을 송신하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 제 1항에 있어서, (a)단계는, 소정의 시간 후에 자동적으로 티켓을 삭제하는 단계를 더 포함하는, 호스트 서비스를 클라이언트에 재연결하는 방법.
- 호스트 서비스를 클라이언트에 재연결하는 시스템에 있어서,상기 시스템은제 1 프로토콜 서비스와 제 1 연결을 보유하도록 구성된 클라이언트와,클라이언트와 제 1 연결을 보유하고 호스트 서비스와 제 2 연결을 보유하도록 구성된 제 1 프로토콜 서비스를 포함하고,상기 제 1 연결에서 단절이 검출되며,상기 제 1 프로토콜 서비스와 상기 호스트 서비스 간의 상기 제 2 연결을 보유하면서, 상기 제 1 연결은 상기 클라이언트와 상기 제 1 프로토콜 서비스 간에 재-설정되고,클라이언트로부터 상기 제 1 프로토콜 서비스로 상기 클라이언트와 연관된 티켓이 송신되며,상기 티켓은 확인되고,티켓이 확인된 후에 상기 재-설정된 제 1 연결은 상기 보유된 제 2 연결에 링크되는, 호스트 서비스를 클라이언트에 재연결하는 시스템.
- 제 13항에 있어서, 상기 클라이언트와 상기 호스트 서비스 간의 제 1 통신 세션 동안 상기 클라이언트가 상기 호스트 서비스로 인증되는, 호스트 서비스를 클라이언트에 재연결하는 시스템.
- 제 13항에 있어서, 상기 티켓은 키와 세션 id를 포함하는, 호스트 서비스를 클라이언트에 재연결하는 시스템.
- 제 15항에 있어서, 상기 티켓은 세션 id를 사용하여 상기 제 1 프로토콜 서비스에 의해서 확인되어 암호화된 인증서를 복구하는, 호스트 서비스를 클라이언트에 재연결하는 시스템.
- 제 16항에 있어서, 티켓으로부터의 키로 상기 복구된 인증서를 복호화함으로써 상기 티켓을 더 확인하는, 호스트 서비스를 클라이언트에 재연결하는 시스템.
- 제 17항에 있어서, 상기 복호화된 인증서를 사용하여 상기 호스트 서비스로 상기 클라이언트가 재-인증되는 시스템.
- 제 13항에 있어서, 상기 티켓이 확인된 후에, 상기 제 1 프로토콜 서비스가 상기 티켓을 삭제하도록 더 구성되는 시스템.
- 제 19항에 있어서, 상기 티켓이 삭제된 후에, 상기 제 1 프로토콜 서비스가 대체 티켓을 생성하도록 더 구성되는 시스템.
- 제 13항에 있어서, 상기 제 1 프로토콜 서비스는 상기 티켓을 생성하도록 더 구성되는 시스템.
- 제 13항에 있어서, 상기 제 1 프로토콜 서비스는 상기 티켓의 사본을 저장하도록 더 구성되는 시스템.
- 제 13항에 있어서, 상기 제 1 프로토콜 서비스는 클라이언트로 티켓을 송신하도록 더 구성되는 시스템.
- 제 13항에 있어서, 상기 제 1 프로토콜 서비스는 소정시간 후에 상기 티켓을 자동적으로 삭제하도록 더 구성되는 시스템.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/683,881 | 2003-10-10 | ||
US10/683,881 US7562146B2 (en) | 2003-10-10 | 2003-10-10 | Encapsulating protocol for session persistence and reliability |
US10/711,646 US20050198379A1 (en) | 2001-06-13 | 2004-09-29 | Automatically reconnecting a client across reliable and persistent communication sessions |
US10/711,646 | 2004-09-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20060120035A true KR20060120035A (ko) | 2006-11-24 |
Family
ID=34437417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020067006932A KR20060120035A (ko) | 2003-10-10 | 2004-10-08 | 신뢰성 높고 지속적인 통신 세션들을 통한 클라이언트 자동재연결 |
Country Status (7)
Country | Link |
---|---|
US (5) | US20050198379A1 (ko) |
EP (1) | EP1678917B1 (ko) |
JP (1) | JP2007514337A (ko) |
KR (1) | KR20060120035A (ko) |
AU (1) | AU2004306771A1 (ko) |
CA (1) | CA2542139C (ko) |
WO (1) | WO2005036857A1 (ko) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150026894A (ko) * | 2013-08-28 | 2015-03-11 | 주식회사 케이티 | 컨트롤러와 네트워크 장치 간 재연결 방법 |
KR101506223B1 (ko) * | 2014-12-10 | 2015-03-27 | (주)한위드정보기술 | 가상화 서비스 제공을 위한 비정상적인 접속 차단시 자동 재접속 시스템 |
KR101627256B1 (ko) * | 2015-01-08 | 2016-06-03 | (주)넷텐션 | 다수 분산서버를 구비한 네트워크 통신의 세션 이양 방법 |
KR20180050952A (ko) * | 2016-11-07 | 2018-05-16 | 한국전자통신연구원 | 다중 채널 기반 데이터 송수신 방법 및 장치 |
KR102339028B1 (ko) * | 2021-06-17 | 2021-12-15 | 농업협동조합중앙회 | 로봇 프로세스 자동화 장치 및 그 동작 방법 |
Families Citing this family (240)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7290288B2 (en) | 1997-06-11 | 2007-10-30 | Prism Technologies, L.L.C. | Method and system for controlling access, by an authentication server, to protected computer resources provided via an internet protocol network |
US6928469B1 (en) | 1998-12-29 | 2005-08-09 | Citrix Systems, Inc. | Apparatus and method for determining a program neighborhood for a client node in a client-server network using markup language techniques |
US7117239B1 (en) | 2000-07-28 | 2006-10-03 | Axeda Corporation | Reporting the state of an apparatus to a remote computer |
US7185014B1 (en) | 2000-09-22 | 2007-02-27 | Axeda Corporation | Retrieving data from a server |
US8108543B2 (en) | 2000-09-22 | 2012-01-31 | Axeda Corporation | Retrieving data from a server |
US8479189B2 (en) | 2000-11-17 | 2013-07-02 | Hewlett-Packard Development Company, L.P. | Pattern detection preprocessor in an electronic device update generation system |
US7409685B2 (en) | 2002-04-12 | 2008-08-05 | Hewlett-Packard Development Company, L.P. | Initialization and update of software and/or firmware in electronic devices |
US20050198379A1 (en) * | 2001-06-13 | 2005-09-08 | Citrix Systems, Inc. | Automatically reconnecting a client across reliable and persistent communication sessions |
US7363376B2 (en) * | 2001-07-31 | 2008-04-22 | Arraycomm Llc | Method and apparatus for generating an identifier to facilitate delivery of enhanced data services in a mobile computing environment |
US7783901B2 (en) * | 2001-12-05 | 2010-08-24 | At&T Intellectual Property Ii, L.P. | Network security device and method |
US7254601B2 (en) | 2001-12-20 | 2007-08-07 | Questra Corporation | Method and apparatus for managing intelligent assets in a distributed environment |
US8135843B2 (en) * | 2002-03-22 | 2012-03-13 | Citrix Systems, Inc. | Methods and systems for providing access to an application |
US7080404B2 (en) * | 2002-04-01 | 2006-07-18 | Microsoft Corporation | Automatic re-authentication |
US7178149B2 (en) | 2002-04-17 | 2007-02-13 | Axeda Corporation | XML scripting of soap commands |
US7246178B2 (en) * | 2002-05-07 | 2007-07-17 | Nortel Networks Limited | Methods and systems for changing a topology of a network |
US7966418B2 (en) | 2003-02-21 | 2011-06-21 | Axeda Corporation | Establishing a virtual tunnel between two computer programs |
US20040187029A1 (en) * | 2003-03-21 | 2004-09-23 | Ting David M. T. | System and method for data and request filtering |
JP3882917B2 (ja) * | 2003-04-03 | 2007-02-21 | 日本アイ・ビー・エム株式会社 | 情報処理システム、情報処理装置及びプログラム |
US8473620B2 (en) * | 2003-04-14 | 2013-06-25 | Riverbed Technology, Inc. | Interception of a cloud-based communication connection |
US7409451B1 (en) | 2003-05-30 | 2008-08-05 | Aol Llc, A Delaware Limited Liability Company | Switching between connectivity types to maintain connectivity |
US9081620B1 (en) * | 2003-09-11 | 2015-07-14 | Oracle America, Inc. | Multi-grid mechanism using peer-to-peer protocols |
US8555273B1 (en) | 2003-09-17 | 2013-10-08 | Palm. Inc. | Network for updating electronic devices |
US7978716B2 (en) | 2003-11-24 | 2011-07-12 | Citrix Systems, Inc. | Systems and methods for providing a VPN solution |
US7904895B1 (en) | 2004-04-21 | 2011-03-08 | Hewlett-Packard Develpment Company, L.P. | Firmware update in electronic devices employing update agent in a flash memory card |
US8954590B2 (en) * | 2004-04-27 | 2015-02-10 | Sap Ag | Tunneling apparatus and method for client-server communication |
US7580867B2 (en) * | 2004-05-04 | 2009-08-25 | Paul Nykamp | Methods for interactively displaying product information and for collaborative product design |
US8023985B1 (en) * | 2004-06-07 | 2011-09-20 | Nortel Networks Limited | Transitioning a state of a connection in response to an indication that a wireless link to a wireless device has been lost |
US8495305B2 (en) | 2004-06-30 | 2013-07-23 | Citrix Systems, Inc. | Method and device for performing caching of dynamically generated objects in a data communication network |
US8739274B2 (en) | 2004-06-30 | 2014-05-27 | Citrix Systems, Inc. | Method and device for performing integrated caching in a data communication network |
US7757074B2 (en) | 2004-06-30 | 2010-07-13 | Citrix Application Networking, Llc | System and method for establishing a virtual private network |
CA2572401A1 (en) | 2004-07-23 | 2006-02-02 | Citrix Systems, Inc. | A method and systems for securing remote access to private networks |
US8046830B2 (en) * | 2004-07-23 | 2011-10-25 | Citrix Systems, Inc. | Systems and methods for network disruption shielding techniques |
US7657657B2 (en) | 2004-08-13 | 2010-02-02 | Citrix Systems, Inc. | Method for maintaining transaction integrity across multiple remote access servers |
US8526940B1 (en) | 2004-08-17 | 2013-09-03 | Palm, Inc. | Centralized rules repository for smart phone customer care |
US20060067244A1 (en) * | 2004-09-30 | 2006-03-30 | Microsoft Corporation | Registration identifier reuse |
US8954595B2 (en) | 2004-12-30 | 2015-02-10 | Citrix Systems, Inc. | Systems and methods for providing client-side accelerated access to remote applications via TCP buffering |
US8706877B2 (en) | 2004-12-30 | 2014-04-22 | Citrix Systems, Inc. | Systems and methods for providing client-side dynamic redirection to bypass an intermediary |
US8700695B2 (en) | 2004-12-30 | 2014-04-15 | Citrix Systems, Inc. | Systems and methods for providing client-side accelerated access to remote applications via TCP pooling |
US8549149B2 (en) | 2004-12-30 | 2013-10-01 | Citrix Systems, Inc. | Systems and methods for providing client-side accelerated access to remote applications via TCP multiplexing |
US7810089B2 (en) | 2004-12-30 | 2010-10-05 | Citrix Systems, Inc. | Systems and methods for automatic installation and execution of a client-side acceleration program |
US8255456B2 (en) | 2005-12-30 | 2012-08-28 | Citrix Systems, Inc. | System and method for performing flash caching of dynamically generated objects in a data communication network |
KR20070104566A (ko) | 2005-01-24 | 2007-10-26 | 사이트릭스 시스템스, 인크. | 네트워크에서 동적으로 발생된 객체들의 캐싱을 수행하는시스템 및 방법 |
US8726023B2 (en) * | 2005-02-03 | 2014-05-13 | Nokia Corporation | Authentication using GAA functionality for unidirectional network connections |
EP1866797A4 (en) * | 2005-03-16 | 2010-08-04 | Guidance Software Inc | SYSTEM AND METHOD FOR SEARCHING FOR STATIC DATA IN A COMPUTER INVESTIGATION SYSTEM |
US7831833B2 (en) * | 2005-04-22 | 2010-11-09 | Citrix Systems, Inc. | System and method for key recovery |
US7594020B2 (en) * | 2005-05-31 | 2009-09-22 | Microsoft Corporation | Re-establishing a connection for an application layer via a service layer |
US7986947B2 (en) * | 2005-06-28 | 2011-07-26 | Hewlett-Packard Development Company, L.P. | Device management network with support for roaming |
US8438628B2 (en) * | 2005-08-10 | 2013-05-07 | Riverbed Technology, Inc. | Method and apparatus for split-terminating a secure network connection, with client authentication |
US8478986B2 (en) * | 2005-08-10 | 2013-07-02 | Riverbed Technology, Inc. | Reducing latency of split-terminated secure communication protocol sessions |
US8220042B2 (en) * | 2005-09-12 | 2012-07-10 | Microsoft Corporation | Creating secure interactive connections with remote resources |
US7725737B2 (en) * | 2005-10-14 | 2010-05-25 | Check Point Software Technologies, Inc. | System and methodology providing secure workspace environment |
JP4670598B2 (ja) * | 2005-11-04 | 2011-04-13 | 日本電気株式会社 | ネットワークシステム、プロキシサーバ、セッション管理方法、及びプログラム |
JP4232778B2 (ja) * | 2005-12-28 | 2009-03-04 | コニカミノルタビジネステクノロジーズ株式会社 | 画像処理装置及び画像処理システム |
US7921184B2 (en) | 2005-12-30 | 2011-04-05 | Citrix Systems, Inc. | System and method for performing flash crowd caching of dynamically generated objects in a data communication network |
US8301839B2 (en) | 2005-12-30 | 2012-10-30 | Citrix Systems, Inc. | System and method for performing granular invalidation of cached dynamically generated objects in a data communication network |
US8788807B2 (en) | 2006-01-13 | 2014-07-22 | Qualcomm Incorporated | Privacy protection in communication systems |
EP1987627B1 (en) | 2006-02-03 | 2016-11-16 | Mideye AB | A system, an arrangement and a method for end user authentication |
US8782393B1 (en) | 2006-03-23 | 2014-07-15 | F5 Networks, Inc. | Accessing SSL connection data by a third-party |
US7904563B2 (en) * | 2006-03-31 | 2011-03-08 | Microsoft Corporation | Establishing and utilizing terminal server dynamic virtual channels |
US8356171B2 (en) * | 2006-04-26 | 2013-01-15 | Cisco Technology, Inc. | System and method for implementing fast reauthentication |
JP2007318650A (ja) * | 2006-05-29 | 2007-12-06 | Funai Electric Co Ltd | クライアント・サーバシステム |
US20070288645A1 (en) * | 2006-06-08 | 2007-12-13 | International Business Machines Corporation | Method and System for Persistent and Reliable Data Transmission |
WO2007146710A2 (en) | 2006-06-08 | 2007-12-21 | Hewlett-Packard Development Company, L.P. | Device management in a network |
JP4787684B2 (ja) * | 2006-06-15 | 2011-10-05 | 日本電気株式会社 | セッション管理システム、セッション管理方法、及びプログラム |
US20090005122A1 (en) * | 2006-07-10 | 2009-01-01 | David Elliot Goldfarb | Advertisement-based dialing |
EP2047420A4 (en) | 2006-07-27 | 2009-11-18 | Hewlett Packard Development Co | USER EXPERIENCE AND DEPENDENCE MANAGEMENT IN A MOBILE DEVICE |
US20080075096A1 (en) * | 2006-09-22 | 2008-03-27 | Enthenergy, Llc | Remote access to secure network devices |
US8370479B2 (en) | 2006-10-03 | 2013-02-05 | Axeda Acquisition Corporation | System and method for dynamically grouping devices based on present device conditions |
JP4819644B2 (ja) * | 2006-10-12 | 2011-11-24 | 株式会社日立製作所 | 情報処理システム、情報処理方法、情報処理装置 |
US20080091814A1 (en) * | 2006-10-16 | 2008-04-17 | Tao Xie | Network Connection Fast Recovery |
WO2008074366A1 (en) * | 2006-12-19 | 2008-06-26 | Telefonaktiebolaget Lm Ericsson (Publ) | Managing user access in a communications network |
US8065397B2 (en) | 2006-12-26 | 2011-11-22 | Axeda Acquisition Corporation | Managing configurations of distributed devices |
US8902449B1 (en) * | 2007-01-03 | 2014-12-02 | Crimson Corporation | Systems and methods for determining when results from a criteria scan are deleted from a computing device |
US8923827B2 (en) | 2007-01-09 | 2014-12-30 | Visa U.S.A. Inc. | Mobile payment management |
US8201218B2 (en) * | 2007-02-28 | 2012-06-12 | Microsoft Corporation | Strategies for securely applying connection policies via a gateway |
US8650297B2 (en) * | 2007-03-14 | 2014-02-11 | Cisco Technology, Inc. | Unified user interface for network management systems |
US8020195B2 (en) * | 2007-03-30 | 2011-09-13 | Citrix Systems, Inc. | Systems and methods for user login |
US8224919B2 (en) | 2007-04-04 | 2012-07-17 | Research In Motion Limited | Mobile communications system including intermediate service provider and related methods |
US7770214B2 (en) * | 2007-04-17 | 2010-08-03 | International Business Machines Corporation | Apparatus, system, and method for establishing a reusable and reconfigurable model for fast and persistent connections in database drivers |
US8291483B2 (en) * | 2007-04-30 | 2012-10-16 | Hewlett-Packard Development Company, L.P. | Remote network device with security policy failsafe |
US20090003387A1 (en) * | 2007-06-27 | 2009-01-01 | Microsoft Corporation | Synchronization Between Connection Manager and Extension Components |
US20090006537A1 (en) * | 2007-06-29 | 2009-01-01 | Microsoft Corporation | Virtual Desktop Integration with Terminal Services |
KR101092675B1 (ko) * | 2007-07-06 | 2011-12-09 | 엘지전자 주식회사 | 무선 네트워크 관리 방법 및 그 방법을 지원하는 스테이션 |
JP5002830B2 (ja) * | 2007-07-31 | 2012-08-15 | ソフトバンクモバイル株式会社 | 通信モジュール、通信方法、通信プログラム、通信端末、および通信制御装置 |
US8291481B2 (en) * | 2007-09-18 | 2012-10-16 | Microsoft Corporation | Sessionless redirection in terminal services |
US8782251B2 (en) * | 2008-02-27 | 2014-07-15 | Microsoft Corporation | Automated configuration of network mode |
US8683062B2 (en) | 2008-02-28 | 2014-03-25 | Microsoft Corporation | Centralized publishing of network resources |
US8281377B1 (en) | 2008-04-15 | 2012-10-02 | Desktone, Inc. | Remote access manager for virtual computing services |
US20090259757A1 (en) * | 2008-04-15 | 2009-10-15 | Microsoft Corporation | Securely Pushing Connection Settings to a Terminal Server Using Tickets |
ES2575006T3 (es) * | 2008-05-20 | 2016-06-23 | Raytheon Company | Sistema y método para filtrar mensajes |
US8200751B2 (en) * | 2008-05-20 | 2012-06-12 | Raytheon Company | System and method for maintaining stateful information |
EP2281387A4 (en) * | 2008-05-20 | 2013-03-20 | Raytheon Co | SYSTEM AND METHOD FOR COLLABORATIVE MESSAGE TRANSMISSION AND DATA DISTRIBUTION |
EP2304567A2 (en) * | 2008-05-20 | 2011-04-06 | Raytheon Company | Method and apparatus for providing a synchronous interface for an asynchronous service |
EP2301208A1 (en) * | 2008-05-20 | 2011-03-30 | Raytheon Company | System and method for dynamic contact lists |
WO2009147215A2 (en) * | 2008-06-04 | 2009-12-10 | Nokia Siemens Networks Oy | Device management in visited network |
US8275830B2 (en) | 2009-01-28 | 2012-09-25 | Headwater Partners I Llc | Device assisted CDR creation, aggregation, mediation and billing |
US8548428B2 (en) | 2009-01-28 | 2013-10-01 | Headwater Partners I Llc | Device group partitions and settlement platform |
US8626115B2 (en) * | 2009-01-28 | 2014-01-07 | Headwater Partners I Llc | Wireless network service interfaces |
US8391834B2 (en) | 2009-01-28 | 2013-03-05 | Headwater Partners I Llc | Security techniques for device assisted services |
US8346225B2 (en) | 2009-01-28 | 2013-01-01 | Headwater Partners I, Llc | Quality of service for device assisted services |
US8832777B2 (en) | 2009-03-02 | 2014-09-09 | Headwater Partners I Llc | Adapting network policies based on device service processor configuration |
US8340634B2 (en) | 2009-01-28 | 2012-12-25 | Headwater Partners I, Llc | Enhanced roaming services and converged carrier networks with device assisted services and a proxy |
US8355337B2 (en) | 2009-01-28 | 2013-01-15 | Headwater Partners I Llc | Network based service profile management with user preference, adaptive policy, network neutrality, and user privacy |
US8402111B2 (en) | 2009-01-28 | 2013-03-19 | Headwater Partners I, Llc | Device assisted services install |
US8589541B2 (en) | 2009-01-28 | 2013-11-19 | Headwater Partners I Llc | Device-assisted services for protecting network capacity |
US8406748B2 (en) | 2009-01-28 | 2013-03-26 | Headwater Partners I Llc | Adaptive ambient services |
US8612862B2 (en) * | 2008-06-27 | 2013-12-17 | Microsoft Corporation | Integrated client for access to remote resources |
US8018940B2 (en) * | 2008-08-13 | 2011-09-13 | Alcatel Lucent | Network address lookup based on bloom filters |
US7694130B1 (en) * | 2008-09-12 | 2010-04-06 | Michael Anthony Martinez | System and method to authenticate a user utilizing a time-varying auxiliary code |
US8149431B2 (en) * | 2008-11-07 | 2012-04-03 | Citrix Systems, Inc. | Systems and methods for managing printer settings in a networked computing environment |
JP5161736B2 (ja) * | 2008-11-18 | 2013-03-13 | 株式会社東芝 | 障害診断プログラム、方法、および通信装置 |
US10783581B2 (en) | 2009-01-28 | 2020-09-22 | Headwater Research Llc | Wireless end-user device providing ambient or sponsored services |
US10248996B2 (en) | 2009-01-28 | 2019-04-02 | Headwater Research Llc | Method for operating a wireless end-user device mobile payment agent |
US10326800B2 (en) | 2009-01-28 | 2019-06-18 | Headwater Research Llc | Wireless network service interfaces |
US9392462B2 (en) | 2009-01-28 | 2016-07-12 | Headwater Partners I Llc | Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy |
US10492102B2 (en) | 2009-01-28 | 2019-11-26 | Headwater Research Llc | Intermediate networking devices |
US9565707B2 (en) | 2009-01-28 | 2017-02-07 | Headwater Partners I Llc | Wireless end-user device with wireless data attribution to multiple personas |
US9954975B2 (en) | 2009-01-28 | 2018-04-24 | Headwater Research Llc | Enhanced curfew and protection associated with a device group |
US9572019B2 (en) | 2009-01-28 | 2017-02-14 | Headwater Partners LLC | Service selection set published to device agent with on-device service selection |
US10264138B2 (en) | 2009-01-28 | 2019-04-16 | Headwater Research Llc | Mobile device and service management |
US9270559B2 (en) | 2009-01-28 | 2016-02-23 | Headwater Partners I Llc | Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow |
US10841839B2 (en) | 2009-01-28 | 2020-11-17 | Headwater Research Llc | Security, fraud detection, and fraud mitigation in device-assisted services systems |
US10715342B2 (en) | 2009-01-28 | 2020-07-14 | Headwater Research Llc | Managing service user discovery and service launch object placement on a device |
US10064055B2 (en) | 2009-01-28 | 2018-08-28 | Headwater Research Llc | Security, fraud detection, and fraud mitigation in device-assisted services systems |
US9706061B2 (en) | 2009-01-28 | 2017-07-11 | Headwater Partners I Llc | Service design center for device assisted services |
US11985155B2 (en) | 2009-01-28 | 2024-05-14 | Headwater Research Llc | Communications device with secure data path processing agents |
US10057775B2 (en) | 2009-01-28 | 2018-08-21 | Headwater Research Llc | Virtualized policy and charging system |
US10779177B2 (en) | 2009-01-28 | 2020-09-15 | Headwater Research Llc | Device group partitions and settlement platform |
US11218854B2 (en) | 2009-01-28 | 2022-01-04 | Headwater Research Llc | Service plan design, user interfaces, application programming interfaces, and device management |
US11973804B2 (en) | 2009-01-28 | 2024-04-30 | Headwater Research Llc | Network service plan design |
US10237757B2 (en) | 2009-01-28 | 2019-03-19 | Headwater Research Llc | System and method for wireless network offloading |
US9955332B2 (en) | 2009-01-28 | 2018-04-24 | Headwater Research Llc | Method for child wireless device activation to subscriber account of a master wireless device |
US10200541B2 (en) | 2009-01-28 | 2019-02-05 | Headwater Research Llc | Wireless end-user device with divided user space/kernel space traffic policy system |
US9980146B2 (en) | 2009-01-28 | 2018-05-22 | Headwater Research Llc | Communications device with secure data path processing agents |
US10798252B2 (en) | 2009-01-28 | 2020-10-06 | Headwater Research Llc | System and method for providing user notifications |
US10484858B2 (en) | 2009-01-28 | 2019-11-19 | Headwater Research Llc | Enhanced roaming services and converged carrier networks with device assisted services and a proxy |
US8707043B2 (en) * | 2009-03-03 | 2014-04-22 | Riverbed Technology, Inc. | Split termination of secure communication sessions with mutual certificate-based authentication |
US8555069B2 (en) * | 2009-03-06 | 2013-10-08 | Microsoft Corporation | Fast-reconnection of negotiable authentication network clients |
US8676926B2 (en) | 2009-04-15 | 2014-03-18 | Wyse Technology L.L.C. | System and method for handling remote drawing commands |
US8869239B2 (en) | 2009-04-15 | 2014-10-21 | Wyse Technology L.L.C. | Method and system for rendering composite view of an application |
US9578113B2 (en) | 2009-04-15 | 2017-02-21 | Wyse Technology L.L.C. | Method and apparatus for transferring remote session data |
US9553953B2 (en) | 2009-04-15 | 2017-01-24 | Dell Products L.P. | Method and apparatus for extending capabilities of a virtualization domain to support features available in a normal desktop application |
US9588803B2 (en) | 2009-05-11 | 2017-03-07 | Microsoft Technology Licensing, Llc | Executing native-code applications in a browser |
US8930527B2 (en) * | 2009-05-26 | 2015-01-06 | Oracle International Corporation | High availability enabler |
US8219676B2 (en) | 2009-06-22 | 2012-07-10 | Citrix Systems, Inc. | Systems and methods for web logging of trace data in a multi-core system |
CN101605108B (zh) | 2009-07-15 | 2013-06-12 | 阿里巴巴集团控股有限公司 | 一种即时通信的方法、系统及装置 |
CN101997673B (zh) * | 2009-08-17 | 2012-11-21 | 成都市华为赛门铁克科技有限公司 | 网络代理实现方法及装置 |
US9438448B2 (en) * | 2009-08-18 | 2016-09-06 | Microsoft Technology Licensing, Llc | Maintaining communication connections during temporary network disruptions |
US20110047610A1 (en) * | 2009-08-19 | 2011-02-24 | Keypair Technologies, Inc. | Modular Framework for Virtualization of Identity and Authentication Processing for Multi-Factor Authentication |
US8599834B2 (en) * | 2009-09-29 | 2013-12-03 | Ipc Systems, Inc. | Systems, methods, and computer program products for providing a manual ring-down communication line using session initiation protocol |
US8688816B2 (en) * | 2009-11-19 | 2014-04-01 | Oracle International Corporation | High availability by letting application session processing occur independent of protocol servers |
US9054913B1 (en) | 2009-11-30 | 2015-06-09 | Dell Software Inc. | Network protocol proxy |
US8479268B2 (en) | 2009-12-15 | 2013-07-02 | International Business Machines Corporation | Securing asynchronous client server transactions |
US8265591B1 (en) * | 2010-02-02 | 2012-09-11 | Sprint Communications Company L.P. | Blocking subscribers defaulting payment from network access |
JPWO2011096307A1 (ja) | 2010-02-03 | 2013-06-10 | 日本電気株式会社 | プロキシ装置とその動作方法 |
TWI502375B (zh) * | 2010-03-09 | 2015-10-01 | Alibaba Group Holding Ltd | Instant messaging method, system and device |
US8700892B2 (en) | 2010-03-19 | 2014-04-15 | F5 Networks, Inc. | Proxy SSL authentication in split SSL for client-side proxy agent resources with content insertion |
US9443078B2 (en) | 2010-04-20 | 2016-09-13 | International Business Machines Corporation | Secure access to a virtual machine |
US8452877B2 (en) * | 2010-04-28 | 2013-05-28 | Lenovo (Singapore) Pte. Ltd. | Establishing a remote desktop |
US9323921B2 (en) | 2010-07-13 | 2016-04-26 | Microsoft Technology Licensing, Llc | Ultra-low cost sandboxing for application appliances |
WO2012040837A1 (en) | 2010-09-01 | 2012-04-05 | Jigsee Inc. | Systems and methods for resilient media streaming |
US8819424B2 (en) | 2010-09-30 | 2014-08-26 | Microsoft Corporation | Token-based authentication using middle tier |
US20120084369A1 (en) * | 2010-09-30 | 2012-04-05 | Microsoft Corporation | Unified Reconnection To Multiple Remote Servers |
US8607306B1 (en) | 2010-11-10 | 2013-12-10 | Google Inc. | Background auto-submit of login credentials |
CN106131081A (zh) * | 2010-12-30 | 2016-11-16 | 交互数字专利控股公司 | 从应用服务器接入服务的方法及移动装置 |
US8542810B2 (en) * | 2011-03-21 | 2013-09-24 | Microsoft Corporation | Automatic rejoining of conferences |
JP2012227704A (ja) * | 2011-04-19 | 2012-11-15 | Fujitsu Ltd | 伝送装置、伝送制御方法及び伝送制御プログラム |
US9495183B2 (en) | 2011-05-16 | 2016-11-15 | Microsoft Technology Licensing, Llc | Instruction set emulation for guest operating systems |
JP5677899B2 (ja) * | 2011-06-16 | 2015-02-25 | 株式会社三菱東京Ufj銀行 | 情報処理装置及び情報処理方法 |
US10855734B2 (en) * | 2011-06-29 | 2020-12-01 | Interdigital Ce Patent Holdings | Remote management of devices |
US20130054734A1 (en) * | 2011-08-23 | 2013-02-28 | Microsoft Corporation | Migration of cloud applications between a local computing device and cloud |
US9043480B2 (en) | 2011-10-11 | 2015-05-26 | Citrix Systems, Inc. | Policy-based application management |
US20140032733A1 (en) | 2011-10-11 | 2014-01-30 | Citrix Systems, Inc. | Policy-Based Application Management |
US9280377B2 (en) | 2013-03-29 | 2016-03-08 | Citrix Systems, Inc. | Application with multiple operation modes |
US20140040979A1 (en) | 2011-10-11 | 2014-02-06 | Citrix Systems, Inc. | Policy-Based Application Management |
US9143530B2 (en) | 2011-10-11 | 2015-09-22 | Citrix Systems, Inc. | Secure container for protecting enterprise data on a mobile device |
US9215225B2 (en) | 2013-03-29 | 2015-12-15 | Citrix Systems, Inc. | Mobile device locking with context |
US9389933B2 (en) | 2011-12-12 | 2016-07-12 | Microsoft Technology Licensing, Llc | Facilitating system service request interactions for hardware-protected applications |
US9413538B2 (en) | 2011-12-12 | 2016-08-09 | Microsoft Technology Licensing, Llc | Cryptographic certification of secure hosted execution environments |
US9537899B2 (en) | 2012-02-29 | 2017-01-03 | Microsoft Technology Licensing, Llc | Dynamic selection of security protocol |
US9467305B2 (en) | 2012-03-07 | 2016-10-11 | Vmware, Inc. | Multitenant access to multiple desktops on host machine partitions in a service provider network |
US10148438B2 (en) * | 2012-04-03 | 2018-12-04 | Rally Health, Inc. | Methods and apparatus for protecting sensitive data in distributed applications |
US10936591B2 (en) | 2012-05-15 | 2021-03-02 | Microsoft Technology Licensing, Llc | Idempotent command execution |
US9239868B2 (en) | 2012-06-19 | 2016-01-19 | Microsoft Technology Licensing, Llc | Virtual session management and reestablishment |
US9251194B2 (en) | 2012-07-26 | 2016-02-02 | Microsoft Technology Licensing, Llc | Automatic data request recovery after session failure |
US8898109B2 (en) | 2012-07-27 | 2014-11-25 | Microsoft Corporation | Automatic transaction retry after session failure |
US9553935B2 (en) * | 2012-09-29 | 2017-01-24 | Oracle International Corporation | Mechanism for configuring service endpoints in native client applications at runtime |
US9053340B2 (en) | 2012-10-12 | 2015-06-09 | Citrix Systems, Inc. | Enterprise application store for an orchestration framework for connected devices |
US9516022B2 (en) | 2012-10-14 | 2016-12-06 | Getgo, Inc. | Automated meeting room |
US20140109171A1 (en) * | 2012-10-15 | 2014-04-17 | Citrix Systems, Inc. | Providing Virtualized Private Network tunnels |
US20140109176A1 (en) | 2012-10-15 | 2014-04-17 | Citrix Systems, Inc. | Configuring and providing profiles that manage execution of mobile applications |
US8910239B2 (en) | 2012-10-15 | 2014-12-09 | Citrix Systems, Inc. | Providing virtualized private network tunnels |
US20140108793A1 (en) | 2012-10-16 | 2014-04-17 | Citrix Systems, Inc. | Controlling mobile device access to secure data |
US9971585B2 (en) | 2012-10-16 | 2018-05-15 | Citrix Systems, Inc. | Wrapping unmanaged applications on a mobile device |
WO2014062804A1 (en) | 2012-10-16 | 2014-04-24 | Citrix Systems, Inc. | Application wrapping for application management framework |
US9606774B2 (en) | 2012-10-16 | 2017-03-28 | Citrix Systems, Inc. | Wrapping an application with field-programmable business logic |
US9235464B2 (en) | 2012-10-16 | 2016-01-12 | Microsoft Technology Licensing, Llc | Smart error recovery for database applications |
US9374351B1 (en) * | 2012-11-02 | 2016-06-21 | Wyse Technology L.L.C. | Virtual desktop accelerator support for network gateway |
US9992185B1 (en) | 2012-11-02 | 2018-06-05 | Wyse Technology L.L.C. | Virtual desktop accelerator support for network gateway |
US9485233B1 (en) | 2012-11-02 | 2016-11-01 | Wyse Technology L.L.C. | Virtual desktop accelerator support for network gateway |
US9560069B1 (en) | 2012-12-02 | 2017-01-31 | Symantec Corporation | Method and system for protection of messages in an electronic messaging system |
CN103870346B (zh) | 2012-12-11 | 2015-12-23 | 腾讯科技(深圳)有限公司 | 解锁用户数据方法和通信系统 |
WO2014159862A1 (en) | 2013-03-14 | 2014-10-02 | Headwater Partners I Llc | Automated credential porting for mobile devices |
US9355223B2 (en) | 2013-03-29 | 2016-05-31 | Citrix Systems, Inc. | Providing a managed browser |
US9369449B2 (en) | 2013-03-29 | 2016-06-14 | Citrix Systems, Inc. | Providing an enterprise application store |
US8850049B1 (en) | 2013-03-29 | 2014-09-30 | Citrix Systems, Inc. | Providing mobile device management functionalities for a managed browser |
US10284627B2 (en) | 2013-03-29 | 2019-05-07 | Citrix Systems, Inc. | Data management for an application with multiple operation modes |
US9985850B2 (en) | 2013-03-29 | 2018-05-29 | Citrix Systems, Inc. | Providing mobile device management functionalities |
US9398111B1 (en) | 2013-08-30 | 2016-07-19 | hopTo Inc. | File caching upon disconnection |
US20180082050A1 (en) * | 2013-09-08 | 2018-03-22 | Yona Flink | Method and a system for secure login to a computer, computer network, and computer website using biometrics and a mobile computing wireless electronic communication device |
US20150082390A1 (en) * | 2013-09-08 | 2015-03-19 | Yona Flink | Method and a system for secure login to a computer, computer network, and computer website using biometrics and a mobile computing wireless electronic communication device |
US9961027B2 (en) | 2013-09-17 | 2018-05-01 | Amazon Technolgies, Inc. | Email webclient automatic failover |
US9900366B2 (en) | 2013-09-17 | 2018-02-20 | Amazon Technologies, Inc. | Email webclient notification queuing |
US9118650B1 (en) | 2013-09-23 | 2015-08-25 | Amazon Technologies, Inc. | Persistent connections for email web applications |
US20150149536A1 (en) * | 2013-11-27 | 2015-05-28 | Sharp Kabushiki Kaisha | Network system, constant connection method, communication method, electronic device, constant connection server, application server, and program |
JP6248641B2 (ja) * | 2014-01-15 | 2017-12-20 | 株式会社リコー | 情報処理システム及び認証方法 |
US9553925B2 (en) | 2014-02-21 | 2017-01-24 | Dell Products L.P. | Front-end high availability proxy |
US20150244835A1 (en) * | 2014-02-21 | 2015-08-27 | Andrew T. Fausak | Transcoding instance with multiple channels |
US9936002B2 (en) | 2014-02-21 | 2018-04-03 | Dell Products L.P. | Video compose function |
EP3123686B1 (en) * | 2014-03-24 | 2022-04-06 | Nokia Technologies Oy | Content management |
CN106537885A (zh) * | 2014-07-18 | 2017-03-22 | 诺基亚技术有限公司 | 接入节点 |
US9930013B2 (en) * | 2014-11-14 | 2018-03-27 | Cisco Technology, Inc. | Control of out-of-band multipath connections |
US10044726B2 (en) * | 2015-05-07 | 2018-08-07 | Cyberark Software Ltd. | Systems and methods for detecting and reacting to malicious activity in computer networks |
US10432592B2 (en) * | 2015-05-10 | 2019-10-01 | Citrix Systems, Inc. | Password encryption for hybrid cloud services |
US10122767B2 (en) | 2015-05-29 | 2018-11-06 | Nagravision S.A. | Systems and methods for conducting secure VOIP multi-party calls |
US9900769B2 (en) | 2015-05-29 | 2018-02-20 | Nagravision S.A. | Methods and systems for establishing an encrypted-audio session |
US9891882B2 (en) | 2015-06-01 | 2018-02-13 | Nagravision S.A. | Methods and systems for conveying encrypted data to a communication device |
US10356059B2 (en) | 2015-06-04 | 2019-07-16 | Nagravision S.A. | Methods and systems for communication-session arrangement on behalf of cryptographic endpoints |
US10582022B2 (en) * | 2016-05-20 | 2020-03-03 | Citrix Systems, Inc. | Adaptive session reliability over multiple transports |
FR3057373A1 (fr) * | 2016-10-12 | 2018-04-13 | Orange | Securisation d'une base de donnees d'authentification par un reseau |
US10791103B2 (en) * | 2016-10-28 | 2020-09-29 | Vmware, Inc. | Adapting remote display protocols to remote applications |
US10447672B2 (en) | 2016-11-01 | 2019-10-15 | Salesforce.Com, Inc. | Facilitating encrypted persistent storage in browsers |
US11348685B2 (en) * | 2017-02-28 | 2022-05-31 | 19Labs, Inc. | System and method for a telemedicine device to securely relay personal data to a remote terminal |
US10613994B2 (en) * | 2017-03-29 | 2020-04-07 | Intel Corporation | Methods and apparatus to establish a connection between a supplicant and a secured network |
JP7033978B2 (ja) * | 2018-03-28 | 2022-03-11 | 株式会社トプコン | 測量機の遠隔操作システム |
US11082217B1 (en) * | 2019-01-31 | 2021-08-03 | Amazon Technologies, Inc. | Session resumption |
WO2020255072A1 (en) * | 2019-06-21 | 2020-12-24 | Snapt, Inc | Control configuration for a plurality of endpoint devices |
JP7318423B2 (ja) * | 2019-08-30 | 2023-08-01 | 富士通株式会社 | 通信制御装置、通信制御方法及び通信制御プログラム |
CN113206790B (zh) * | 2021-04-30 | 2022-10-18 | 网络通信与安全紫金山实验室 | 基于时间周期的SRv6传输路径认证方法、系统及存储介质 |
US20220377061A1 (en) * | 2021-05-20 | 2022-11-24 | Zebra Technonolgies Corporation | Accelerated Reconnection in Authenticated Networks |
Family Cites Families (440)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4438511A (en) * | 1980-11-10 | 1984-03-20 | Telebit Corporation | Packetized ensemble modem |
US4649510A (en) * | 1982-04-30 | 1987-03-10 | Schmidt Walter E | Methods and apparatus for the protection and control of computer programs |
US4435511A (en) | 1982-09-13 | 1984-03-06 | Owens-Illinois, Inc. | Glasses suitable for sealing ferrites |
GB2168831B (en) | 1984-11-13 | 1988-04-27 | Dowty Information Services Lim | Password-protected data link |
US4768190A (en) * | 1986-04-30 | 1988-08-30 | Og Corporation | Packet switching network |
US4736369A (en) * | 1986-06-13 | 1988-04-05 | International Business Machines Corp. | Adaptive session-level pacing |
US4750171A (en) * | 1986-07-11 | 1988-06-07 | Tadiran Electronics Industries Ltd. | Data switching system and method |
US4941089A (en) * | 1986-12-12 | 1990-07-10 | Datapoint Corporation | Input/output network for computer system |
US5390297A (en) * | 1987-11-10 | 1995-02-14 | Auto-Trol Technology Corporation | System for controlling the number of concurrent copies of a program in a network based on the number of available licenses |
US5021949A (en) * | 1988-02-29 | 1991-06-04 | International Business Machines Corporation | Method and apparatus for linking an SNA host to a remote SNA host over a packet switched communications network |
US4893307A (en) * | 1988-02-29 | 1990-01-09 | International Business Machines Corporation | Method and apparatus for linking SNA terminals to an SNA host over a packet switched communications network |
US4837800A (en) * | 1988-03-18 | 1989-06-06 | Motorola, Inc. | Cellular data telephone system and cellular data telephone therefor |
JP2643978B2 (ja) * | 1988-04-23 | 1997-08-25 | 株式会社ケンウッド | パケットデータ生成装置 |
US4924378A (en) * | 1988-06-13 | 1990-05-08 | Prime Computer, Inc. | License mangagement system and license storage key |
US4953159A (en) * | 1989-01-03 | 1990-08-28 | American Telephone And Telegraph Company | Audiographics conferencing arrangement |
US5349678A (en) | 1991-08-21 | 1994-09-20 | Norand Corporation | Versatile RF data capture system |
ATE151183T1 (de) | 1989-02-24 | 1997-04-15 | Digital Equipment Corp | Makler für die auswahl von rechnernetzwerkservern |
US4912756A (en) * | 1989-04-07 | 1990-03-27 | Unilink Corporation | Method and apparatus for error-free digital data transmission during cellular telephone handoff, etc. |
US5220501A (en) * | 1989-12-08 | 1993-06-15 | Online Resources, Ltd. | Method and system for remote delivery of retail banking services |
CA2048306A1 (en) | 1990-10-02 | 1992-04-03 | Steven P. Miller | Distributed configuration profile for computing system |
US5212806A (en) * | 1990-10-29 | 1993-05-18 | International Business Machines Corporation | Distributed control methods for management of migrating data stations in a wireless communications network |
US5181200A (en) | 1990-10-29 | 1993-01-19 | International Business Machines Corporation | Handoff method and apparatus for mobile wireless workstation |
US5159592A (en) | 1990-10-29 | 1992-10-27 | International Business Machines Corporation | Network address management for a wired network supporting wireless communication to a plurality of mobile users |
CA2040234C (en) | 1991-04-11 | 2000-01-04 | Steven Messenger | Wireless coupling of devices to wired network |
US5204897A (en) * | 1991-06-28 | 1993-04-20 | Digital Equipment Corporation | Management interface for license management system |
US5504814A (en) * | 1991-07-10 | 1996-04-02 | Hughes Aircraft Company | Efficient security kernel for the 80960 extended architecture |
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 |
US5224098A (en) * | 1991-07-17 | 1993-06-29 | International Business Machines Corporation | Compensation for mismatched transport protocols in a data communications network |
US5241542A (en) | 1991-08-23 | 1993-08-31 | International Business Machines Corporation | Battery efficient operation of scheduled access protocol |
DE4131133B4 (de) | 1991-09-19 | 2005-09-08 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Austausch von Daten in Datenverarbeitungsanlagen |
US5210753A (en) * | 1991-10-31 | 1993-05-11 | International Business Machines Corporation | Robust scheduling mechanm for efficient band-width usage in muliticell wireless local networks |
US5610595A (en) * | 1991-12-09 | 1997-03-11 | Intermec Corporation | Packet radio communication system protocol |
US5359721A (en) | 1991-12-18 | 1994-10-25 | Sun Microsystems, Inc. | Non-supervisor mode cross address space dynamic linking |
US6850252B1 (en) | 1999-10-05 | 2005-02-01 | Steven M. Hoffberg | Intelligent electronic appliance system and method |
WO1993020511A1 (en) | 1992-03-31 | 1993-10-14 | Aggregate Computing, Inc. | An integrated remote execution system for a heterogenous computer network environment |
US5412717A (en) * | 1992-05-15 | 1995-05-02 | Fischer; Addison M. | Computer system security method and apparatus having program authorization information data structures |
US6026452A (en) | 1997-02-26 | 2000-02-15 | Pitts; William Michael | Network distributed site cache RAM claimed as up/down stream request/reply channel for storing anticipated data and meta data |
US5265159A (en) | 1992-06-23 | 1993-11-23 | Hughes Aircraft Company | Secure file erasure |
US5442633A (en) | 1992-07-08 | 1995-08-15 | International Business Machines Corporation | Shortcut network layer routing for mobile hosts |
US5307490A (en) * | 1992-08-28 | 1994-04-26 | Tandem Computers, Inc. | Method and system for implementing remote procedure calls in a distributed computer system |
US5325361A (en) * | 1992-12-01 | 1994-06-28 | Legent Corporation | System and method for multiplexing data transmissions |
CA2103297A1 (en) | 1992-12-07 | 1994-06-08 | Donald J. Kennedy | Interception system and method including user interface |
US5550976A (en) | 1992-12-08 | 1996-08-27 | Sun Hydraulics Corporation | Decentralized distributed asynchronous object oriented system and method for electronic data management, storage, and communication |
US5426637A (en) * | 1992-12-14 | 1995-06-20 | International Business Machines Corporation | Methods and apparatus for interconnecting local area networks with wide area backbone networks |
US5509070A (en) * | 1992-12-15 | 1996-04-16 | Softlock Services Inc. | Method for encouraging purchase of executable and non-executable software |
US5410543A (en) * | 1993-01-04 | 1995-04-25 | Apple Computer, Inc. | Method for connecting a mobile computer to a computer network by using an address server |
FR2703362B1 (fr) * | 1993-03-31 | 1997-08-29 | Aerospatiale | Procede et machine de collage d'une bordure de protection adhesive sur le bord d'un panneau multicouche tel qu'un panneau de protection thermique d'engin spatial. |
US6006090A (en) | 1993-04-28 | 1999-12-21 | Proxim, Inc. | Providing roaming capability for mobile computers in a standard network |
US5796727A (en) | 1993-04-30 | 1998-08-18 | International Business Machines Corporation | Wide-area wireless lan access |
US5446915A (en) | 1993-05-25 | 1995-08-29 | Intel Corporation | Parallel processing system virtual connection method and apparatus with protection and flow control |
FI107102B (fi) | 1993-05-31 | 2001-05-31 | Nokia Networks Oy | Menetelmä puhelukustannusten ilmoittamiseksi sekä tilaajalaite |
EP0631455A1 (de) | 1993-06-25 | 1994-12-28 | Siemens Aktiengesellschaft | Verfahren zum Aufrechterhalten von virtuellen Verbindungen bei einem zumindest teilweisen Ausfall von Verbindungswegen |
US5794207A (en) | 1996-09-04 | 1998-08-11 | Walker Asset Management Limited Partnership | Method and apparatus for a cryptographically assisted commercial network system designed to facilitate buyer-driven conditional purchase offers |
US6249818B1 (en) | 1993-06-30 | 2001-06-19 | Compaq Computer Corporation | Network transport driver interfacing |
US5564070A (en) | 1993-07-30 | 1996-10-08 | Xerox Corporation | Method and system for maintaining processing continuity to mobile computers in a wireless network |
US5359593A (en) | 1993-08-26 | 1994-10-25 | International Business Machines Corporation | Dynamic bandwidth estimation and adaptation for packet communications networks |
US5544246A (en) | 1993-09-17 | 1996-08-06 | At&T Corp. | Smartcard adapted for a plurality of service providers and for remote installation of same |
US5446736A (en) | 1993-10-07 | 1995-08-29 | Ast Research, Inc. | Method and apparatus for connecting a node to a wireless network using a standard protocol |
US5455953A (en) | 1993-11-03 | 1995-10-03 | Wang Laboratories, Inc. | Authorization system for obtaining in single step both identification and access rights of client to server directly from encrypted authorization ticket |
US5835726A (en) | 1993-12-15 | 1998-11-10 | Check Point Software Technologies Ltd. | System for securing the flow of and selectively modifying packets in a computer network |
US5515508A (en) * | 1993-12-17 | 1996-05-07 | Taligent, Inc. | Client server system and method of operation including a dynamically configurable protocol stack |
US5564016A (en) | 1993-12-17 | 1996-10-08 | International Business Machines Corporation | Method for controlling access to a computer resource based on a timing policy |
US5548723A (en) | 1993-12-17 | 1996-08-20 | Taligent, Inc. | Object-oriented network protocol configuration system utilizing a dynamically configurable protocol stack |
US5499343A (en) * | 1993-12-17 | 1996-03-12 | Taligent, Inc. | Object-oriented networking system with dynamically configurable communication links |
US5491800A (en) * | 1993-12-20 | 1996-02-13 | Taligent, Inc. | Object-oriented remote procedure call networking system |
US5495411A (en) * | 1993-12-22 | 1996-02-27 | Ananda; Mohan | Secure software rental system using continuous asynchronous password verification |
US5491750A (en) * | 1993-12-30 | 1996-02-13 | International Business Machines Corporation | Method and apparatus for three-party entity authentication and key distribution using message authentication codes |
US5412654A (en) * | 1994-01-10 | 1995-05-02 | International Business Machines Corporation | Highly dynamic destination-sequenced destination vector routing for mobile computers |
US5559800A (en) | 1994-01-19 | 1996-09-24 | Research In Motion Limited | Remote control of gateway functions in a wireless data communication network |
US5627821A (en) * | 1994-03-15 | 1997-05-06 | Hitachi, Ltd. | Defect notification method in a multipoint ATM network |
US5524238A (en) * | 1994-03-23 | 1996-06-04 | Breakout I/O Corporation | User specific intelligent interface which intercepts and either replaces or passes commands to a data identity and the field accessed |
US5553139A (en) | 1994-04-04 | 1996-09-03 | Novell, Inc. | Method and apparatus for electronic license distribution |
US5757907A (en) | 1994-04-25 | 1998-05-26 | International Business Machines Corporation | Method and apparatus for enabling trial period use of software products: method and apparatus for generating a machine-dependent identification |
CA2143874C (en) * | 1994-04-25 | 2000-06-20 | Thomas Edward Cooper | Method and apparatus for enabling trial period use of software products: method and apparatus for utilizing a decryption stub |
JP2826468B2 (ja) * | 1994-04-27 | 1998-11-18 | 日本電気 株式会社 | 回線切替え装置 |
US5574774A (en) | 1994-05-04 | 1996-11-12 | Ericsson Inc. | Method and apparatus of maintaining an open communications channel between a cellular terminal and an associated cellular radio network |
US5586257A (en) | 1994-05-05 | 1996-12-17 | Perlman; Stephen G. | Network architecture to support multiple site real-time video games |
US5594490A (en) * | 1994-05-23 | 1997-01-14 | Cable Services Technologies, Inc. | System for distributing video/audio files from central location to a plurality of cable headends |
US5416842A (en) * | 1994-06-10 | 1995-05-16 | Sun Microsystems, Inc. | Method and apparatus for key-management scheme for use with internet protocols at site firewalls |
US5771459A (en) * | 1994-06-21 | 1998-06-23 | U.S. Philips Corporation | Communication system for use with stationary and second entities, via a wireless intermediate network with gateway devices, a gateway device for use with such system, and a mobile entity provided with such gateway device |
US5550981A (en) | 1994-06-21 | 1996-08-27 | At&T Global Information Solutions Company | Dynamic binding of network identities to locally-meaningful identities in computer networks |
US5481535A (en) * | 1994-06-29 | 1996-01-02 | General Electric Company | Datagram message communication service employing a hybrid network |
US5557732A (en) | 1994-08-11 | 1996-09-17 | International Business Machines Corporation | Method and apparatus for protecting software executing on a demonstration computer |
US5604490A (en) * | 1994-09-09 | 1997-02-18 | International Business Machines Corporation | Method and system for providing a user access to multiple secured subsystems |
US5490139A (en) * | 1994-09-28 | 1996-02-06 | International Business Machines Corporation | Mobility enabling access point architecture for wireless attachment to source routing networks |
US5652789A (en) * | 1994-09-30 | 1997-07-29 | Wildfire Communications, Inc. | Network based knowledgeable assistant |
US5602916A (en) * | 1994-10-05 | 1997-02-11 | Motorola, Inc. | Method and apparatus for preventing unauthorized monitoring of wireless data transmissions |
US5659544A (en) | 1994-10-17 | 1997-08-19 | Lucent Technologies Inc. | Method and system for distributed control in wireless cellular and personal communication systems |
US5633868A (en) * | 1994-10-17 | 1997-05-27 | Lucent Technologies Inc. | Virtual circuit management in cellular telecommunications |
US5623601A (en) * | 1994-11-18 | 1997-04-22 | Milkway Networks Corporation | Apparatus and method for providing a secure gateway for communication and data exchanges between networks |
US5566225A (en) | 1994-11-21 | 1996-10-15 | Lucent Technologies Inc. | Wireless data communications system for detecting a disabled condition and simulating a functioning mode in response to detection |
US5752185A (en) * | 1994-11-21 | 1998-05-12 | Lucent Technologies Inc. | Disconnection management system for wireless voice communications |
US5668999A (en) | 1994-12-20 | 1997-09-16 | Sun Microsystems, Inc. | System and method for pre-verification of stack usage in bytecode program loops |
JP3251797B2 (ja) * | 1995-01-11 | 2002-01-28 | 富士通株式会社 | ワイヤレスlanシステム |
US5682478A (en) | 1995-01-19 | 1997-10-28 | Microsoft Corporation | Method and apparatus for supporting multiple, simultaneous services over multiple, simultaneous connections between a client and network server |
JPH08235114A (ja) | 1995-02-28 | 1996-09-13 | Hitachi Ltd | サーバアクセス方法と課金情報管理方法 |
US5664007A (en) | 1995-03-06 | 1997-09-02 | Samadi; Behrokh | Method and apparatus for providing continuation of a communication call across multiple networks |
EP0734144A3 (de) | 1995-03-20 | 1999-08-18 | Siemens Aktiengesellschaft | Verfahren und Anordnung zum Ermitteln der Benutzergebühr in einer Teilnehmereinrichtung |
US5572528A (en) | 1995-03-20 | 1996-11-05 | Novell, Inc. | Mobile networking method and apparatus |
US5623492A (en) | 1995-03-24 | 1997-04-22 | U S West Technologies, Inc. | Methods and systems for managing bandwidth resources in a fast packet switching network |
US5666501A (en) | 1995-03-30 | 1997-09-09 | International Business Machines Corporation | Method and apparatus for installing software |
US5689708A (en) | 1995-03-31 | 1997-11-18 | Showcase Corporation | Client/server computer systems having control of client-based application programs, and application-program control means therefor |
US5627892A (en) * | 1995-04-19 | 1997-05-06 | General Instrument Corporation Of Delaware | Data security scheme for point-to-point communication sessions |
US5717737A (en) * | 1995-06-01 | 1998-02-10 | Padcom, Inc. | Apparatus and method for transparent wireless communication between a remote device and a host system |
US6418324B1 (en) | 1995-06-01 | 2002-07-09 | Padcom, Incorporated | Apparatus and method for transparent wireless communication between a remote device and host system |
US5592549A (en) * | 1995-06-15 | 1997-01-07 | Infosafe Systems, Inc. | Method and apparatus for retrieving selected information from a secure information source |
US5657390A (en) | 1995-08-25 | 1997-08-12 | Netscape Communications Corporation | Secure socket layer application program apparatus and method |
US5657452A (en) * | 1995-09-08 | 1997-08-12 | U.S. Robotics Corp. | Transparent support of protocol and data compression features for data communication |
US5682534A (en) | 1995-09-12 | 1997-10-28 | International Business Machines Corporation | Transparent local RPC optimization |
US5623600A (en) * | 1995-09-26 | 1997-04-22 | Trend Micro, Incorporated | Virus detection and removal apparatus for computer networks |
US5758186A (en) * | 1995-10-06 | 1998-05-26 | Sun Microsystems, Inc. | Method and apparatus for generically handling diverse protocol method calls in a client/server computer system |
US5729734A (en) * | 1995-11-03 | 1998-03-17 | Apple Computer, Inc. | File privilege administration apparatus and methods |
WO1997019415A2 (en) * | 1995-11-07 | 1997-05-29 | Cadis, Inc. | Search engine for remote object oriented database management system |
PL326670A1 (en) | 1995-11-14 | 1998-10-12 | Ibm | Information processing system enabling a versatile worldwide www network scanning program to get access to servers of many different protocols |
US6112085A (en) | 1995-11-30 | 2000-08-29 | Amsc Subsidiary Corporation | Virtual network configuration and management system for satellite communication system |
US5732074A (en) * | 1996-01-16 | 1998-03-24 | Cellport Labs, Inc. | Mobile portable wireless communication system |
US5721818A (en) * | 1996-01-25 | 1998-02-24 | Apple Computer, Inc. | Method and system for enabling a file server to service multiple networks of the same network protocol family by invoking multiple instances of a network session protocol |
US5889816A (en) * | 1996-02-02 | 1999-03-30 | Lucent Technologies, Inc. | Wireless adapter architecture for mobile computing |
US5856974A (en) * | 1996-02-13 | 1999-01-05 | Novell, Inc. | Internetwork address mapping gateway |
US5754774A (en) * | 1996-02-15 | 1998-05-19 | International Business Machine Corp. | Client/server communication system |
US5673322A (en) | 1996-03-22 | 1997-09-30 | Bell Communications Research, Inc. | System and method for providing protocol translation and filtering to access the world wide web from wireless or low-bandwidth networks |
US5784643A (en) * | 1996-03-28 | 1998-07-21 | International Business Machines Corporation | System incorporating program for intercepting and interpreting or altering commands for generating I/O activity for enabling real-time user feedback by sending substitute characters to modem |
JP3510042B2 (ja) * | 1996-04-26 | 2004-03-22 | 株式会社日立製作所 | データベース管理方法及びシステム |
GB2313524A (en) | 1996-05-24 | 1997-11-26 | Ibm | Providing communications links in a computer network |
US5742757A (en) * | 1996-05-30 | 1998-04-21 | Mitsubishi Semiconductor America, Inc. | Automatic software license manager |
EP0851628A1 (en) | 1996-12-23 | 1998-07-01 | ICO Services Ltd. | Key distribution for mobile network |
US5740361A (en) * | 1996-06-03 | 1998-04-14 | Compuserve Incorporated | System for remote pass-phrase authentication |
US6026379A (en) | 1996-06-17 | 2000-02-15 | Verifone, Inc. | System, method and article of manufacture for managing transactions in a high availability system |
US6178409B1 (en) | 1996-06-17 | 2001-01-23 | Verifone, Inc. | System, method and article of manufacture for multiple-entry point virtual point of sale architecture |
US6002767A (en) | 1996-06-17 | 1999-12-14 | Verifone, Inc. | System, method and article of manufacture for a modular gateway server architecture |
US6072870A (en) | 1996-06-17 | 2000-06-06 | Verifone Inc. | System, method and article of manufacture for a gateway payment architecture utilizing a multichannel, extensible, flexible architecture |
US6373950B1 (en) | 1996-06-17 | 2002-04-16 | Hewlett-Packard Company | System, method and article of manufacture for transmitting messages within messages utilizing an extensible, flexible architecture |
US6119105A (en) | 1996-06-17 | 2000-09-12 | Verifone, Inc. | System, method and article of manufacture for initiation of software distribution from a point of certificate creation utilizing an extensible, flexible architecture |
US5987132A (en) | 1996-06-17 | 1999-11-16 | Verifone, Inc. | System, method and article of manufacture for conditionally accepting a payment method utilizing an extensible, flexible architecture |
US5983208A (en) | 1996-06-17 | 1999-11-09 | Verifone, Inc. | System, method and article of manufacture for handling transaction results in a gateway payment architecture utilizing a multichannel, extensible, flexible architecture |
US5850446A (en) | 1996-06-17 | 1998-12-15 | Verifone, Inc. | System, method and article of manufacture for virtual point of sale processing utilizing an extensible, flexible architecture |
US5943424A (en) | 1996-06-17 | 1999-08-24 | Hewlett-Packard Company | System, method and article of manufacture for processing a plurality of transactions from a single initiation point on a multichannel, extensible, flexible architecture |
US6324525B1 (en) | 1996-06-17 | 2001-11-27 | Hewlett-Packard Company | Settlement of aggregated electronic transactions over a network |
US5889863A (en) | 1996-06-17 | 1999-03-30 | Verifone, Inc. | System, method and article of manufacture for remote virtual point of sale processing utilizing a multichannel, extensible, flexible architecture |
US6253027B1 (en) | 1996-06-17 | 2001-06-26 | Hewlett-Packard Company | System, method and article of manufacture for exchanging software and configuration data over a multichannel, extensible, flexible architecture |
US5812668A (en) | 1996-06-17 | 1998-09-22 | Verifone, Inc. | System, method and article of manufacture for verifying the operation of a remote transaction clearance system utilizing a multichannel, extensible, flexible architecture |
US6058250A (en) * | 1996-06-19 | 2000-05-02 | At&T Corp | Bifurcated transaction system in which nonsensitive information is exchanged using a public network connection and sensitive information is exchanged after automatically configuring a private network connection |
US5909431A (en) * | 1996-06-28 | 1999-06-01 | At&T Corp. | Packet mode multimedia conferencing services over an ISDN wide area network |
US6088451A (en) | 1996-06-28 | 2000-07-11 | Mci Communications Corporation | Security system and method for network element access |
US6272556B1 (en) | 1996-07-01 | 2001-08-07 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for migrating a client-server application (#5) |
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 |
US5812671A (en) | 1996-07-17 | 1998-09-22 | Xante Corporation | Cryptographic communication system |
US5848064A (en) | 1996-08-07 | 1998-12-08 | Telxon Corporation | Wireless software upgrades with version control |
US5931917A (en) | 1996-09-26 | 1999-08-03 | Verifone, Inc. | System, method and article of manufacture for a gateway system architecture with system administration information accessible from a browser |
US5978840A (en) | 1996-09-26 | 1999-11-02 | Verifone, Inc. | System, method and article of manufacture for a payment gateway system architecture for processing encrypted payment transactions utilizing a multichannel, extensible, flexible architecture |
US5944791A (en) | 1996-10-04 | 1999-08-31 | Contigo Software Llc | Collaborative web browser |
JP3492865B2 (ja) * | 1996-10-16 | 2004-02-03 | 株式会社東芝 | 移動計算機装置及びパケット暗号化認証方法 |
JPH10178421A (ja) | 1996-10-18 | 1998-06-30 | Toshiba Corp | パケット処理装置、移動計算機装置、パケット転送方法及びパケット処理方法 |
US6101543A (en) | 1996-10-25 | 2000-08-08 | Digital Equipment Corporation | Pseudo network adapter for frame capture, encapsulation and encryption |
JP3651721B2 (ja) | 1996-11-01 | 2005-05-25 | 株式会社東芝 | 移動計算機装置、パケット処理装置及び通信制御方法 |
US5974151A (en) | 1996-11-01 | 1999-10-26 | Slavin; Keith R. | Public key cryptographic system having differential security levels |
US6131116A (en) * | 1996-12-13 | 2000-10-10 | Visto Corporation | System and method for globally accessing computer services |
US5987611A (en) | 1996-12-31 | 1999-11-16 | Zone Labs, Inc. | System and methodology for managing internet access on a per application basis for client computers connected to the internet |
US6026440A (en) | 1997-01-27 | 2000-02-15 | International Business Machines Corporation | Web server account manager plug-in for monitoring resources |
US6055575A (en) * | 1997-01-28 | 2000-04-25 | Ascend Communications, Inc. | Virtual private network system and method |
US5923756A (en) * | 1997-02-12 | 1999-07-13 | Gte Laboratories Incorporated | Method for providing secure remote command execution over an insecure computer network |
US5996076A (en) | 1997-02-19 | 1999-11-30 | Verifone, Inc. | System, method and article of manufacture for secure digital certification of electronic commerce |
WO1998038762A2 (en) | 1997-02-26 | 1998-09-03 | Siebel Systems, Inc. | Determining visibility to a remote database client |
US6304637B1 (en) * | 1997-03-14 | 2001-10-16 | Itxc, Inc. | Method and apparatus for establishing and facilitating a direct quality voice call to a telephone extension on behalf of a client computer |
US6282172B1 (en) | 1997-04-01 | 2001-08-28 | Yipes Communications, Inc. | Generating acknowledgement signals in a data communication system |
US6161123A (en) | 1997-05-06 | 2000-12-12 | Intermec Ip Corporation | Providing reliable communication over an unreliable transport layer in a hand-held device using a persistent session |
US6166729A (en) | 1997-05-07 | 2000-12-26 | Broadcloud Communications, Inc. | Remote digital image viewing system and method |
US6408174B1 (en) | 1997-05-13 | 2002-06-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Communication method, system, and device for reducing processor load at tariff switch |
US6201962B1 (en) | 1997-05-14 | 2001-03-13 | Telxon Corporation | Seamless roaming among multiple networks including seamless transitioning between multiple devices |
US6091951A (en) | 1997-05-14 | 2000-07-18 | Telxon Corporation | Seamless roaming among multiple networks |
US6154461A (en) | 1997-05-14 | 2000-11-28 | Telxon Corporation | Seamless roaming among multiple networks |
US5968176A (en) | 1997-05-29 | 1999-10-19 | 3Com Corporation | Multilayer firewall system |
US5958016A (en) | 1997-07-13 | 1999-09-28 | Bell Atlantic Network Services, Inc. | Internet-web link for access to intelligent network service control |
US6006268A (en) | 1997-07-31 | 1999-12-21 | Cisco Technology, Inc. | Method and apparatus for reducing overhead on a proxied connection |
US5935212A (en) | 1997-08-07 | 1999-08-10 | I-Planet, Inc. | Connection-oriented session emulation |
US6061796A (en) | 1997-08-26 | 2000-05-09 | V-One Corporation | Multi-access virtual private network |
US6681017B1 (en) * | 1997-09-03 | 2004-01-20 | Lucent Technologies Inc. | Simplified secure shared key establishment and data delivery protocols for electronic commerce |
IL126149A (en) | 1997-09-09 | 2003-07-31 | Sanctum Ltd | Method and system for protecting operations of trusted internal networks |
US6490620B1 (en) | 1997-09-26 | 2002-12-03 | Worldcom, Inc. | Integrated proxy interface for web based broadband telecommunications management |
US6023724A (en) * | 1997-09-26 | 2000-02-08 | 3Com Corporation | Apparatus and methods for use therein for an ISDN LAN modem that displays fault information to local hosts through interception of host DNS request messages |
US6256739B1 (en) | 1997-10-30 | 2001-07-03 | Juno Online Services, Inc. | Method and apparatus to determine user identity and limit access to a communications network |
US6725376B1 (en) * | 1997-11-13 | 2004-04-20 | Ncr Corporation | Method of using an electronic ticket and distributed server computer architecture for the same |
EA002886B1 (ru) | 1997-11-13 | 2002-10-31 | Хайперспейс Коммьюникейшнз, Инк. | Система пересылки файлов |
EP1705563B1 (en) * | 1997-11-14 | 2009-03-11 | Microsoft Corporation | Server operating system for supporting multiple client-server sessions and dynamic reconnection of users to previous sessions |
US6085247A (en) * | 1998-06-08 | 2000-07-04 | Microsoft Corporation | Server operating system for supporting multiple client-server sessions and dynamic reconnection of users to previous sessions using different computers |
AU1421799A (en) | 1997-11-25 | 1999-06-15 | Packeteer, Inc. | Method for automatically classifying traffic in a packet communications network |
US6230004B1 (en) * | 1997-12-01 | 2001-05-08 | Telefonaktiebolaget Lm Ericsson | Remote procedure calls using short message service |
US6065120A (en) * | 1997-12-09 | 2000-05-16 | Phone.Com, Inc. | Method and system for self-provisioning a rendezvous to ensure secure access to information in a database from multiple devices |
EP1040611B1 (en) | 1997-12-12 | 2002-06-05 | 3Com Corporation | A forward error correction system for packet based real-time media |
US5870412A (en) * | 1997-12-12 | 1999-02-09 | 3Com Corporation | Forward error correction system for packet based real time media |
US6145109A (en) | 1997-12-12 | 2000-11-07 | 3Com Corporation | Forward error correction system for packet based real time media |
US6170075B1 (en) | 1997-12-18 | 2001-01-02 | 3Com Corporation | Data and real-time media communication over a lossy network |
FR2773935A1 (fr) * | 1998-01-19 | 1999-07-23 | Canon Kk | Procedes de communication entre systemes informatiques et dispositifs les mettant en oeuvre |
US6226750B1 (en) * | 1998-01-20 | 2001-05-01 | Proact Technologies Corp. | Secure session tracking method and system for client-server environment |
US6415329B1 (en) | 1998-03-06 | 2002-07-02 | Massachusetts Institute Of Technology | Method and apparatus for improving efficiency of TCP/IP protocol over high delay-bandwidth network |
US6147986A (en) | 1998-03-06 | 2000-11-14 | Lucent Technologies Inc. | Address updating of wireless mobile terminal hosts affiliated with a wired network |
US6327242B1 (en) | 1998-03-17 | 2001-12-04 | Infolibria, Inc. | Message redirector with cut-through switch for highly reliable and efficient network traffic processor deployment |
US6199113B1 (en) * | 1998-04-15 | 2001-03-06 | Sun Microsystems, Inc. | Apparatus and method for providing trusted network security |
US6590588B2 (en) | 1998-05-29 | 2003-07-08 | Palm, Inc. | Wireless, radio-frequency communications using a handheld computer |
US6289461B1 (en) | 1998-06-09 | 2001-09-11 | Placeware, Inc. | Bi-directional process-to-process byte stream protocol |
US6308273B1 (en) | 1998-06-12 | 2001-10-23 | Microsoft Corporation | Method and system of security location discrimination |
US6243753B1 (en) | 1998-06-12 | 2001-06-05 | Microsoft Corporation | Method, system, and computer program product for creating a raw data channel form an integrating component to a series of kernel mode filters |
AU760640B2 (en) | 1998-06-19 | 2003-05-22 | Juniper Networks, Inc. | An interconnect network for operation within a communication node |
US6564320B1 (en) * | 1998-06-30 | 2003-05-13 | Verisign, Inc. | Local hosting of digital certificate services |
US6360265B1 (en) * | 1998-07-08 | 2002-03-19 | Lucent Technologies Inc. | Arrangement of delivering internet protocol datagrams for multimedia services to the same server |
US6640248B1 (en) | 1998-07-10 | 2003-10-28 | Malibu Networks, Inc. | Application-aware, quality of service (QoS) sensitive, media access control (MAC) layer |
US6452915B1 (en) | 1998-07-10 | 2002-09-17 | Malibu Networks, Inc. | IP-flow classification in a wireless point to multi-point (PTMP) transmission system |
US6269402B1 (en) | 1998-07-20 | 2001-07-31 | Motorola, Inc. | Method for providing seamless communication across bearers in a wireless communication system |
US7277424B1 (en) * | 1998-07-21 | 2007-10-02 | Dowling Eric M | Method and apparatus for co-socket telephony |
US6714536B1 (en) * | 1998-07-21 | 2004-03-30 | Eric M. Dowling | Method and apparatus for cosocket telephony |
JP3216607B2 (ja) * | 1998-07-29 | 2001-10-09 | 日本電気株式会社 | デジタル著作物流通システム及び方法、デジタル著作物再生装置及び方法、並びに記録媒体 |
US6233619B1 (en) | 1998-07-31 | 2001-05-15 | Unisys Corporation | Virtual transport layer interface and messaging subsystem for high-speed communications between heterogeneous computer systems |
US6094423A (en) * | 1998-08-03 | 2000-07-25 | Motorola, Inc. | Wireless protocol method and apparatus supporting transaction requests with variable length responses |
US6226618B1 (en) * | 1998-08-13 | 2001-05-01 | International Business Machines Corporation | Electronic content delivery system |
US6308281B1 (en) | 1998-09-02 | 2001-10-23 | International Business Machines Corporation | Virtual client to gateway connection over multiple physical connections |
GB2341523B (en) | 1998-09-12 | 2003-10-29 | Ibm | Apparatus and method for establishing communication in a computer network |
JP3929186B2 (ja) * | 1998-09-18 | 2007-06-13 | 三菱電機株式会社 | クライアント/サーバシステム |
US6574239B1 (en) * | 1998-10-07 | 2003-06-03 | Eric Morgan Dowling | Virtual connection of a remote unit to a server |
US6484206B2 (en) * | 1998-10-07 | 2002-11-19 | Nortel Networks Limited | Efficient recovery of multiple connections in a communication network |
US6546425B1 (en) | 1998-10-09 | 2003-04-08 | Netmotion Wireless, Inc. | Method and apparatus for providing mobile and other intermittent connectivity in a computing environment |
WO2002023362A1 (en) * | 2000-09-12 | 2002-03-21 | Netmotion Wireless, Inc. | Method and apparatus for providing mobile and other intermittent connectivity in a computing environment |
US7136645B2 (en) | 1998-10-09 | 2006-11-14 | Netmotion Wireless, Inc. | Method and apparatus for providing mobile and other intermittent connectivity in a computing environment |
JP2000125029A (ja) | 1998-10-12 | 2000-04-28 | Matsushita Electric Ind Co Ltd | 網制御装置 |
US6700902B1 (en) | 1998-10-19 | 2004-03-02 | Elster Electricity, Llc | Method and system for improving wireless data packet delivery |
FI108195B (fi) * | 1998-10-19 | 2001-11-30 | Nokia Networks Oy | Mekanismi verkon aloittamaa informaation siirtoa varten |
WO2000025467A1 (en) | 1998-10-28 | 2000-05-04 | L-3 Communications Corporation | Encryption and authentication methods and apparatus for securing telephone communications |
ATE316730T1 (de) | 1998-11-02 | 2006-02-15 | Airbiquity Inc | Geo-räumliche adressierung zum internet-protokoll |
US6449651B1 (en) * | 1998-11-19 | 2002-09-10 | Toshiba America Information Systems, Inc. | System and method for providing temporary remote access to a computer |
US6253327B1 (en) | 1998-12-02 | 2001-06-26 | Cisco Technology, Inc. | Single step network logon based on point to point protocol |
US6697844B1 (en) | 1998-12-08 | 2004-02-24 | Lucent Technologies, Inc. | Internet browsing using cache-based compaction |
US6333931B1 (en) | 1998-12-28 | 2001-12-25 | Cisco Technology, Inc. | Method and apparatus for interconnecting a circuit-switched telephony network and a packet-switched data network, and applications thereof |
US6452923B1 (en) | 1998-12-31 | 2002-09-17 | At&T Corp | Cable connected wan interconnectivity services for corporate telecommuters |
US6760748B1 (en) | 1999-01-20 | 2004-07-06 | Accenture Llp | Instructional system grouping student terminals |
EP1022875B1 (en) * | 1999-01-25 | 2005-06-01 | Nippon Telegraph and Telephone Corporation | Push network |
US6615357B1 (en) | 1999-01-29 | 2003-09-02 | International Business Machines Corporation | System and method for network address translation integration with IP security |
JP2000242589A (ja) | 1999-02-25 | 2000-09-08 | Mitsubishi Electric Corp | データ転送制御コンピュータシステム |
AU769742B2 (en) | 1999-03-02 | 2004-02-05 | Amway Corp. | Electronic commerce transactions within a marketing system that may contain a membership buying opportunity |
US6662221B1 (en) | 1999-04-12 | 2003-12-09 | Lucent Technologies Inc. | Integrated network and service management with automated flow through configuration and provisioning of virtual private networks |
US6421768B1 (en) * | 1999-05-04 | 2002-07-16 | First Data Corporation | Method and system for authentication and single sign on using cryptographically assured cookies in a distributed computer environment |
US7103068B1 (en) | 1999-05-04 | 2006-09-05 | Sprint Communication Company L.P. | System and method for configuring bandwidth transmission rates for call connections |
US7152092B2 (en) | 1999-05-05 | 2006-12-19 | Indeliq, Inc. | Creating chat rooms with multiple roles for multiple participants |
US6611822B1 (en) | 1999-05-05 | 2003-08-26 | Ac Properties B.V. | System method and article of manufacture for creating collaborative application sharing |
US6505230B1 (en) | 1999-05-14 | 2003-01-07 | Pivia, Inc. | Client-server independent intermediary mechanism |
US6792615B1 (en) | 1999-05-19 | 2004-09-14 | New Horizons Telecasting, Inc. | Encapsulated, streaming media automation and distribution system |
CZ20014168A3 (cs) | 1999-05-21 | 2002-05-15 | International Business Machines Corporation | Způsob a zařízení pro inicializaci zabezpečné komunikace a pro vytvoření výhradních dvojic bezdrátových přístrojů |
US6615166B1 (en) | 1999-05-27 | 2003-09-02 | Accenture Llp | Prioritizing components of a network framework required for implementation of technology |
US7165041B1 (en) | 1999-05-27 | 2007-01-16 | Accenture, Llp | Web-based architecture sales tool |
US6519571B1 (en) | 1999-05-27 | 2003-02-11 | Accenture Llp | Dynamic customer profile management |
US6721713B1 (en) | 1999-05-27 | 2004-04-13 | Andersen Consulting Llp | Business alliance identification in a web architecture framework |
US6957186B1 (en) | 1999-05-27 | 2005-10-18 | Accenture Llp | System method and article of manufacture for building, managing, and supporting various components of a system |
US6536037B1 (en) | 1999-05-27 | 2003-03-18 | Accenture Llp | Identification of redundancies and omissions among components of a web based architecture |
US6473794B1 (en) | 1999-05-27 | 2002-10-29 | Accenture Llp | System for establishing plan to test components of web based framework by displaying pictorial representation and conveying indicia coded components of existing network framework |
US6289450B1 (en) * | 1999-05-28 | 2001-09-11 | Authentica, Inc. | Information security architecture for encrypting documents for remote access while maintaining access control |
US7882247B2 (en) | 1999-06-11 | 2011-02-01 | Netmotion Wireless, Inc. | Method and apparatus for providing secure connectivity in mobile and other intermittent computing environments |
US7100195B1 (en) | 1999-07-30 | 2006-08-29 | Accenture Llp | Managing user information on an e-commerce system |
US6718535B1 (en) | 1999-07-30 | 2004-04-06 | Accenture Llp | System, method and article of manufacture for an activity framework design in an e-commerce based environment |
US6633878B1 (en) | 1999-07-30 | 2003-10-14 | Accenture Llp | Initializing an ecommerce database framework |
US6704873B1 (en) | 1999-07-30 | 2004-03-09 | Accenture Llp | Secure gateway interconnection in an e-commerce based environment |
US6609128B1 (en) | 1999-07-30 | 2003-08-19 | Accenture Llp | Codes table framework design in an E-commerce architecture |
US6523027B1 (en) | 1999-07-30 | 2003-02-18 | Accenture Llp | Interfacing servers in a Java based e-commerce architecture |
US6601233B1 (en) | 1999-07-30 | 2003-07-29 | Accenture Llp | Business components framework |
US6609198B1 (en) | 1999-08-05 | 2003-08-19 | Sun Microsystems, Inc. | Log-on service providing credential level change without loss of session continuity |
US6691232B1 (en) * | 1999-08-05 | 2004-02-10 | Sun Microsystems, Inc. | Security architecture with environment sensitive credential sufficiency evaluation |
US6477665B1 (en) | 1999-08-31 | 2002-11-05 | Accenture Llp | System, method, and article of manufacture for environment services patterns in a netcentic environment |
US6427132B1 (en) | 1999-08-31 | 2002-07-30 | Accenture Llp | System, method and article of manufacture for demonstrating E-commerce capabilities via a simulation on a network |
US6571282B1 (en) | 1999-08-31 | 2003-05-27 | Accenture Llp | Block-based communication in a communication services patterns environment |
US6550057B1 (en) | 1999-08-31 | 2003-04-15 | Accenture Llp | Piecemeal retrieval in an information services patterns environment |
US6502213B1 (en) | 1999-08-31 | 2002-12-31 | Accenture Llp | System, method, and article of manufacture for a polymorphic exception handler in environment services patterns |
US6636242B2 (en) | 1999-08-31 | 2003-10-21 | Accenture Llp | View configurer in a presentation services patterns environment |
US6438594B1 (en) | 1999-08-31 | 2002-08-20 | Accenture Llp | Delivering service to a client via a locally addressable interface |
US6289382B1 (en) | 1999-08-31 | 2001-09-11 | Andersen Consulting, Llp | System, method and article of manufacture for a globally addressable interface in a communication services patterns environment |
US6529948B1 (en) | 1999-08-31 | 2003-03-04 | Accenture Llp | Multi-object fetch component |
US6477580B1 (en) | 1999-08-31 | 2002-11-05 | Accenture Llp | Self-described stream in a communication services patterns environment |
US6611867B1 (en) | 1999-08-31 | 2003-08-26 | Accenture Llp | System, method and article of manufacture for implementing a hybrid network |
US6615253B1 (en) | 1999-08-31 | 2003-09-02 | Accenture Llp | Efficient server side data retrieval for execution of client side applications |
US6434568B1 (en) | 1999-08-31 | 2002-08-13 | Accenture Llp | Information services patterns in a netcentric environment |
US6640249B1 (en) | 1999-08-31 | 2003-10-28 | Accenture Llp | Presentation services patterns in a netcentric environment |
US6640238B1 (en) | 1999-08-31 | 2003-10-28 | Accenture Llp | Activity component in a presentation services patterns environment |
US6578068B1 (en) | 1999-08-31 | 2003-06-10 | Accenture Llp | Load balancer in environment services patterns |
US6539396B1 (en) | 1999-08-31 | 2003-03-25 | Accenture Llp | Multi-object identifier system and method for information service pattern environment |
US6549949B1 (en) | 1999-08-31 | 2003-04-15 | Accenture Llp | Fixed format stream in a communication services patterns environment |
US6697824B1 (en) | 1999-08-31 | 2004-02-24 | Accenture Llp | Relationship management in an E-commerce application framework |
US6442748B1 (en) | 1999-08-31 | 2002-08-27 | Accenture Llp | System, method and article of manufacture for a persistent state and persistent object separator in an information services patterns environment |
US6615199B1 (en) | 1999-08-31 | 2003-09-02 | Accenture, Llp | Abstraction factory in a base services pattern environment |
US6842906B1 (en) | 1999-08-31 | 2005-01-11 | Accenture Llp | System and method for a refreshable proxy pool in a communication services patterns environment |
US6606660B1 (en) | 1999-08-31 | 2003-08-12 | Accenture Llp | Stream-based communication in a communication services patterns environment |
US6496850B1 (en) | 1999-08-31 | 2002-12-17 | Accenture Llp | Clean-up of orphaned server contexts |
US6640244B1 (en) | 1999-08-31 | 2003-10-28 | Accenture Llp | Request batcher in a transaction services patterns environment |
US6529909B1 (en) | 1999-08-31 | 2003-03-04 | Accenture Llp | Method for translating an object attribute converter in an information services patterns environment |
US6601192B1 (en) | 1999-08-31 | 2003-07-29 | Accenture Llp | Assertion component in environment services patterns |
US6434628B1 (en) | 1999-08-31 | 2002-08-13 | Accenture Llp | Common interface for handling exception interface name with additional prefix and suffix for handling exceptions in environment services patterns |
US6742015B1 (en) | 1999-08-31 | 2004-05-25 | Accenture Llp | Base services patterns in a netcentric environment |
US6601234B1 (en) | 1999-08-31 | 2003-07-29 | Accenture Llp | Attribute dictionary in a business logic services environment |
US6345239B1 (en) | 1999-08-31 | 2002-02-05 | Accenture Llp | Remote demonstration of business capabilities in an e-commerce environment |
US6715145B1 (en) | 1999-08-31 | 2004-03-30 | Accenture Llp | Processing pipeline in a base services pattern environment |
US6339832B1 (en) | 1999-08-31 | 2002-01-15 | Accenture Llp | Exception response table in environment services patterns |
US6332163B1 (en) | 1999-09-01 | 2001-12-18 | Accenture, Llp | Method for providing communication services over a computer network system |
US6732269B1 (en) | 1999-10-01 | 2004-05-04 | International Business Machines Corporation | Methods, systems and computer program products for enhanced security identity utilizing an SSL proxy |
US6826696B1 (en) * | 1999-10-12 | 2004-11-30 | Webmd, Inc. | System and method for enabling single sign-on for networked applications |
US6363065B1 (en) | 1999-11-10 | 2002-03-26 | Quintum Technologies, Inc. | okApparatus for a voice over IP (voIP) telephony gateway and methods for use therein |
US6870921B1 (en) | 1999-11-12 | 2005-03-22 | Metro One Telecommunications, Inc. | Enhanced directory assistance service providing individual or group directories |
US6606744B1 (en) | 1999-11-22 | 2003-08-12 | Accenture, Llp | Providing collaborative installation management in a network-based supply chain environment |
US7124101B1 (en) | 1999-11-22 | 2006-10-17 | Accenture Llp | Asset tracking in a network-based supply chain environment |
US6671818B1 (en) | 1999-11-22 | 2003-12-30 | Accenture Llp | Problem isolation through translating and filtering events into a standard object format in a network based supply chain |
US7130807B1 (en) | 1999-11-22 | 2006-10-31 | Accenture Llp | Technology sharing during demand and supply planning in a network-based supply chain environment |
US7587467B2 (en) * | 1999-12-02 | 2009-09-08 | Western Digital Technologies, Inc. | Managed peer-to-peer applications, systems and methods for distributed data access and storage |
US7917628B2 (en) * | 1999-12-02 | 2011-03-29 | Western Digital Technologies, Inc. | Managed peer-to-peer applications, systems and methods for distributed data access and storage |
US20020010866A1 (en) * | 1999-12-16 | 2002-01-24 | Mccullough David J. | Method and apparatus for improving peer-to-peer bandwidth between remote networks by combining multiple connections which use arbitrary data paths |
US6904449B1 (en) | 2000-01-14 | 2005-06-07 | Accenture Llp | System and method for an application provider framework |
US6496520B1 (en) | 2000-01-21 | 2002-12-17 | Broadcloud Communications, Inc. | Wireless network system and method |
US7072665B1 (en) | 2000-02-29 | 2006-07-04 | Blumberg Brad W | Position-based information access device and method of searching |
US6496776B1 (en) | 2000-02-29 | 2002-12-17 | Brad W. Blumberg | Position-based information access device and method |
JP3630065B2 (ja) | 2000-03-03 | 2005-03-16 | 株式会社村田製作所 | セラミックグリーンシートの製造方法及びセラミックグリーンシート製造装置 |
US7058973B1 (en) | 2000-03-03 | 2006-06-06 | Symantec Corporation | Network address translation gateway for local area networks using local IP addresses and non-translatable port addresses |
US7065547B2 (en) | 2000-03-09 | 2006-06-20 | Persels Conrad G | Integrated on-line system with enchanced data transfer protocol |
US7111060B2 (en) | 2000-03-14 | 2006-09-19 | Aep Networks, Inc. | Apparatus and accompanying methods for providing, through a centralized server site, a secure, cost-effective, web-enabled, integrated virtual office environment remotely accessible through a network-connected web browser |
US6845091B2 (en) * | 2000-03-16 | 2005-01-18 | Sri International | Mobile ad hoc extensions for the internet |
US7343413B2 (en) | 2000-03-21 | 2008-03-11 | F5 Networks, Inc. | Method and system for optimizing a network by independently scaling control segments and data flow |
US8380854B2 (en) | 2000-03-21 | 2013-02-19 | F5 Networks, Inc. | Simplified method for processing multiple connections from the same client |
US6701514B1 (en) | 2000-03-27 | 2004-03-02 | Accenture Llp | System, method, and article of manufacture for test maintenance in an automated scripting framework |
US6907546B1 (en) | 2000-03-27 | 2005-06-14 | Accenture Llp | Language-driven interface for an automated testing framework |
US6502102B1 (en) | 2000-03-27 | 2002-12-31 | Accenture Llp | System, method and article of manufacture for a table-driven automated scripting architecture |
US6553377B1 (en) | 2000-03-31 | 2003-04-22 | Network Associates, Inc. | System and process for maintaining a plurality of remote security applications using a modular framework in a distributed computing environment |
US6845387B1 (en) * | 2000-04-07 | 2005-01-18 | Advanced Digital Information Corporation | Creating virtual private connections between end points across a SAN |
IL135555A0 (en) * | 2000-04-09 | 2001-05-20 | Vidius Inc | Preventing unauthorized access to data sent via computer networks |
US7028333B2 (en) | 2000-04-12 | 2006-04-11 | Corente, Inc. | Methods and systems for partners in virtual networks |
US6996628B2 (en) | 2000-04-12 | 2006-02-07 | Corente, Inc. | Methods and systems for managing virtual addresses for virtual networks |
US7028334B2 (en) | 2000-04-12 | 2006-04-11 | Corente, Inc. | Methods and systems for using names in virtual networks |
US7085854B2 (en) | 2000-04-12 | 2006-08-01 | Corente, Inc. | Methods and systems for enabling communication between a processor and a network operations center |
US7181766B2 (en) | 2000-04-12 | 2007-02-20 | Corente, Inc. | Methods and system for providing network services using at least one processor interfacing a base network |
US7047424B2 (en) | 2000-04-12 | 2006-05-16 | Corente, Inc. | Methods and systems for hairpins in virtual networks |
US6671729B1 (en) * | 2000-04-13 | 2003-12-30 | Lockheed Martin Corporation | Autonomously established secure and persistent internet connection and autonomously reestablished without user intervention that connection if it lost |
US6981041B2 (en) | 2000-04-13 | 2005-12-27 | Aep Networks, Inc. | Apparatus and accompanying methods for providing, through a centralized server site, an integrated virtual office environment, remotely accessible via a network-connected web browser, with remote network monitoring and management capabilities |
GB0010238D0 (en) * | 2000-04-28 | 2000-06-14 | Northeastern Components Intern | Locking mechanism for chair and pushbutton control therefor |
US7047279B1 (en) | 2000-05-05 | 2006-05-16 | Accenture, Llp | Creating collaborative application sharing |
US7152047B1 (en) | 2000-05-24 | 2006-12-19 | Esecure.Biz, Inc. | System and method for production and authentication of original documents |
US6732314B1 (en) | 2000-05-26 | 2004-05-04 | 3Com Corporation | Method and apparatus for L2TP forward error correction |
US6766373B1 (en) * | 2000-05-31 | 2004-07-20 | International Business Machines Corporation | Dynamic, seamless switching of a network session from one connection route to another |
US7010300B1 (en) * | 2000-06-15 | 2006-03-07 | Sprint Spectrum L.P. | Method and system for intersystem wireless communications session hand-off |
US9038170B2 (en) * | 2000-07-10 | 2015-05-19 | Oracle International Corporation | Logging access system events |
US7260638B2 (en) * | 2000-07-24 | 2007-08-21 | Bluesocket, Inc. | Method and system for enabling seamless roaming in a wireless network |
US7336682B2 (en) | 2000-07-25 | 2008-02-26 | Juniper Networks, Inc. | Network architecture and methods for transparent on-line cross-sessional encoding and transport of network communications data |
US7221660B1 (en) | 2000-08-08 | 2007-05-22 | E.F. Johnson Company | System and method for multicast communications using real time transport protocol (RTP) |
US6874086B1 (en) * | 2000-08-10 | 2005-03-29 | Oridus, Inc. | Method and apparatus implemented in a firewall for communicating information between programs employing different protocols |
US6996631B1 (en) * | 2000-08-17 | 2006-02-07 | International Business Machines Corporation | System having a single IP address associated with communication protocol stacks in a cluster of processing systems |
US20020038339A1 (en) | 2000-09-08 | 2002-03-28 | Wei Xu | Systems and methods for packet distribution |
US6691227B1 (en) | 2000-09-08 | 2004-02-10 | Reefedge, Inc. | Location-independent packet routing and secure access in a short-range wireless networking environment |
US8250357B2 (en) | 2000-09-13 | 2012-08-21 | Fortinet, Inc. | Tunnel interface for securing traffic over a network |
US6990480B1 (en) | 2000-09-18 | 2006-01-24 | Trancept Limited | Information manager method and system |
US7958185B2 (en) | 2000-09-18 | 2011-06-07 | Bentley Systems, Inc. | Spatial data enabled engineering, construction, and operations computer-aided design (CAD) project system, method and computer program product |
WO2002033607A1 (en) | 2000-10-16 | 2002-04-25 | Iis Inc. | Method for offering multilingual information translated in many languages through a communication network |
WO2002033515A2 (en) | 2000-10-17 | 2002-04-25 | Broadcloud Communications, Inc. | Wireless asp systems and methods |
US6697377B1 (en) * | 2000-10-21 | 2004-02-24 | Innomedia Pte Ltd. | Method for communicating audio data in a packet switched network |
US7620719B2 (en) | 2002-06-06 | 2009-11-17 | Juniper Networks, Inc. | Method and system for providing secure access to private networks |
US8996698B1 (en) * | 2000-11-03 | 2015-03-31 | Truphone Limited | Cooperative network for mobile internet access |
US7140044B2 (en) | 2000-11-13 | 2006-11-21 | Digital Doors, Inc. | Data security system and method for separation of user communities |
US7191252B2 (en) | 2000-11-13 | 2007-03-13 | Digital Doors, Inc. | Data security system and method adjunct to e-mail, browser or telecom program |
US7146644B2 (en) | 2000-11-13 | 2006-12-05 | Digital Doors, Inc. | Data security system and method responsive to electronic attacks |
JP4183379B2 (ja) | 2000-11-27 | 2008-11-19 | 富士通株式会社 | ネットワーク及びエッジルータ |
US6735601B1 (en) | 2000-12-29 | 2004-05-11 | Vmware, Inc. | System and method for remote file access by computer |
US7096009B2 (en) | 2001-03-09 | 2006-08-22 | Research In Motion Limited | Advanced voice and data operations in a mobile data communication device |
US7072843B2 (en) | 2001-03-23 | 2006-07-04 | Restaurant Services, Inc. | System, method and computer program product for error checking in a supply chain management framework |
US6954736B2 (en) | 2001-03-23 | 2005-10-11 | Restaurant Services, Inc. | System, method and computer program product for order confirmation in a supply chain management framework |
US7171379B2 (en) | 2001-03-23 | 2007-01-30 | Restaurant Services, Inc. | System, method and computer program product for normalizing data in a supply chain management framework |
US20030074206A1 (en) | 2001-03-23 | 2003-04-17 | Restaurant Services, Inc. | System, method and computer program product for utilizing market demand information for generating revenue |
US7533409B2 (en) | 2001-03-22 | 2009-05-12 | Corente, Inc. | Methods and systems for firewalling virtual private networks |
US7120596B2 (en) | 2001-03-23 | 2006-10-10 | Restaurant Services, Inc. | System, method and computer program product for landed cost reporting in a supply chain management framework |
US7039606B2 (en) | 2001-03-23 | 2006-05-02 | Restaurant Services, Inc. | System, method and computer program product for contract consistency in a supply chain management framework |
US7136364B2 (en) | 2001-03-29 | 2006-11-14 | Intel Corporation | Maintaining a reliable link |
IL158189A0 (en) | 2001-04-03 | 2004-03-28 | L 3 Comm Security & Detection | A remote baggage screening system, software and method |
US20030041175A2 (en) | 2001-05-03 | 2003-02-27 | Singhal Sandeep K | Method and System for Adapting Short-Range Wireless Access Points for Participation in a Coordinated Networked Environment |
US7224979B2 (en) | 2001-05-03 | 2007-05-29 | Symantec Corporation | Location-aware service proxies in a short-range wireless environment |
US6925481B2 (en) | 2001-05-03 | 2005-08-02 | Symantec Corp. | Technique for enabling remote data access and manipulation from a pervasive device |
US6947444B2 (en) * | 2001-06-06 | 2005-09-20 | Ipr Licensing, Inc. | Method and apparatus for improving utilization efficiency of wireless links for web-based applications |
US7216173B2 (en) | 2001-06-12 | 2007-05-08 | Varian Medical Systems Technologies, Inc. | Virtual private network software system |
US20050198379A1 (en) * | 2001-06-13 | 2005-09-08 | Citrix Systems, Inc. | Automatically reconnecting a client across reliable and persistent communication sessions |
US7100200B2 (en) * | 2001-06-13 | 2006-08-29 | Citrix Systems, Inc. | Method and apparatus for transmitting authentication credentials of a user across communication sessions |
US7698381B2 (en) * | 2001-06-20 | 2010-04-13 | Microsoft Corporation | Methods and systems for controlling the scope of delegation of authentication credentials |
US20040107360A1 (en) | 2002-12-02 | 2004-06-03 | Zone Labs, Inc. | System and Methodology for Policy Enforcement |
US7546629B2 (en) | 2002-03-06 | 2009-06-09 | Check Point Software Technologies, Inc. | System and methodology for security policy arbitration |
US6873988B2 (en) | 2001-07-06 | 2005-03-29 | Check Point Software Technologies, Inc. | System and methods providing anti-virus cooperative enforcement |
US8200818B2 (en) | 2001-07-06 | 2012-06-12 | Check Point Software Technologies, Inc. | System providing internet access management with router-based policy enforcement |
US7908472B2 (en) | 2001-07-06 | 2011-03-15 | Juniper Networks, Inc. | Secure sockets layer cut through architecture |
US6832260B2 (en) | 2001-07-26 | 2004-12-14 | International Business Machines Corporation | Methods, systems and computer program products for kernel based transaction processing |
AU2002355530A1 (en) | 2001-08-03 | 2003-02-24 | John Allen Ananian | Personalized interactive digital catalog profiling |
WO2003019870A2 (en) | 2001-08-24 | 2003-03-06 | Peribit Networks, Inc. | Dynamic multi-point meshed overlay network |
US20030046587A1 (en) | 2001-09-05 | 2003-03-06 | Satyam Bheemarasetti | Secure remote access using enterprise peer networks |
US20030046586A1 (en) | 2001-09-05 | 2003-03-06 | Satyam Bheemarasetti | Secure remote access to data between peers |
AUPR797501A0 (en) | 2001-09-28 | 2001-10-25 | BlastMedia Pty Limited | A method of displaying content |
US6993652B2 (en) * | 2001-10-05 | 2006-01-31 | General Instrument Corporation | Method and system for providing client privacy when requesting content from a public server |
US20030084165A1 (en) * | 2001-10-12 | 2003-05-01 | Openwave Systems Inc. | User-centric session management for client-server interaction using multiple applications and devices |
US20030078983A1 (en) | 2001-10-23 | 2003-04-24 | Sullivan Terence Sean | Message prioritization and buffering in a limited network |
US20030078985A1 (en) * | 2001-10-23 | 2003-04-24 | David Holbrook | Proactive message buffering across intermittent network connections |
US7631084B2 (en) | 2001-11-02 | 2009-12-08 | Juniper Networks, Inc. | Method and system for providing secure access to private networks with client redirection |
US7042879B2 (en) * | 2001-11-02 | 2006-05-09 | General Instrument Corporation | Method and apparatus for transferring a communication session |
US7028183B2 (en) | 2001-11-13 | 2006-04-11 | Symantec Corporation | Enabling secure communication in a clustered or distributed architecture |
US6975647B2 (en) | 2001-11-13 | 2005-12-13 | Ems Technologies Canada, Ltd | Enhancements for TCP performance enhancing proxies |
US7509393B2 (en) | 2001-12-19 | 2009-03-24 | International Business Machines Corporation | Method and system for caching role-specific fragments |
US7054944B2 (en) | 2001-12-19 | 2006-05-30 | Intel Corporation | Access control management system utilizing network and application layer access control lists |
KR100436435B1 (ko) | 2001-12-26 | 2004-06-16 | 한국전자통신연구원 | 유무선 통합망에서 간접 승인을 이용한 패킷 전송 장치 및그 방법 |
US7984157B2 (en) | 2002-02-26 | 2011-07-19 | Citrix Systems, Inc. | Persistent and reliable session securely traversing network components using an encapsulating protocol |
US7661129B2 (en) * | 2002-02-26 | 2010-02-09 | Citrix Systems, Inc. | Secure traversal of network components |
US7023979B1 (en) | 2002-03-07 | 2006-04-04 | Wai Wu | Telephony control system with intelligent call routing |
US7107285B2 (en) | 2002-03-16 | 2006-09-12 | Questerra Corporation | Method, system, and program for an improved enterprise spatial system |
US7707287B2 (en) | 2002-03-22 | 2010-04-27 | F5 Networks, Inc. | Virtual host acceleration system |
AU2003226128A1 (en) | 2002-03-27 | 2003-10-13 | First Virtual Communications | System and method for traversing firewalls with protocol communications |
JP4315696B2 (ja) | 2002-03-29 | 2009-08-19 | 富士通株式会社 | ホスト端末エミュレーションプログラム、中継用プログラムおよびホスト端末エミュレーション方法 |
US7080404B2 (en) * | 2002-04-01 | 2006-07-18 | Microsoft Corporation | Automatic re-authentication |
US20030208602A1 (en) | 2002-04-08 | 2003-11-06 | Cisco Technology, Inc. | System and method for pushing data in an internet protocol network environment |
US7197553B2 (en) | 2002-04-19 | 2007-03-27 | Nortel Networks Limited | Network system having a virtual-service-module |
US7804785B2 (en) | 2002-04-19 | 2010-09-28 | Avaya Inc. | Network system having an instructional sequence for performing packet processing and optimizing the packet processing |
US7246178B2 (en) | 2002-05-07 | 2007-07-17 | Nortel Networks Limited | Methods and systems for changing a topology of a network |
US20030217126A1 (en) | 2002-05-14 | 2003-11-20 | Polcha Andrew J. | System and method for automatically configuring remote computer |
US7203192B2 (en) | 2002-06-04 | 2007-04-10 | Fortinet, Inc. | Network packet steering |
US7171467B2 (en) | 2002-06-13 | 2007-01-30 | Engedi Technologies, Inc. | Out-of-band remote management station |
US6744774B2 (en) | 2002-06-27 | 2004-06-01 | Nokia, Inc. | Dynamic routing over secure networks |
US7114180B1 (en) | 2002-07-16 | 2006-09-26 | F5 Networks, Inc. | Method and system for authenticating and authorizing requestors interacting with content servers |
US6826627B2 (en) | 2002-09-03 | 2004-11-30 | Burnbag, Ltd. | Data transformation architecture |
US20040078772A1 (en) | 2002-10-16 | 2004-04-22 | Cosine Communications, Inc. | Dynamic route exchange |
US7363347B2 (en) * | 2002-11-07 | 2008-04-22 | Hewlett-Packard Development Company, L.P. | Method and system for reestablishing connection information on a switch connected to plural servers in a computer network |
US20040203296A1 (en) | 2002-11-15 | 2004-10-14 | Globespan Virata Inc. | Method and system for attaching a USB network adapter supporting both RNDIS and non-RNDIS capable operating systems |
TWI234969B (en) | 2002-11-26 | 2005-06-21 | Ind Tech Res Inst | Dynamic network address translation system and method of transparent private network device |
CA2508526A1 (en) | 2002-12-03 | 2004-06-17 | Funk Software, Inc. | Tunneled authentication protocol for preventing man-in-the-middle attacks |
US7587587B2 (en) | 2002-12-05 | 2009-09-08 | Broadcom Corporation | Data path security processing |
WO2004086363A2 (en) | 2003-03-27 | 2004-10-07 | M-Systems Flash Disk Pioneers Ltd. | Data storage device with full access by all users |
US7026954B2 (en) | 2003-06-10 | 2006-04-11 | Bellsouth Intellectual Property Corporation | Automated parking director systems and related methods |
US7746799B2 (en) | 2003-06-20 | 2010-06-29 | Juniper Networks, Inc. | Controlling data link layer elements with network layer elements |
US7467214B2 (en) * | 2003-06-20 | 2008-12-16 | Motorola, Inc. | Invoking protocol translation in a multicast network |
US7532640B2 (en) * | 2003-07-02 | 2009-05-12 | Caterpillar Inc. | Systems and methods for performing protocol conversions in a machine |
US7453852B2 (en) | 2003-07-14 | 2008-11-18 | Lucent Technologies Inc. | Method and system for mobility across heterogeneous address spaces |
WO2005043360A1 (en) | 2003-10-21 | 2005-05-12 | Green Border Technologies | Systems and methods for secure client applications |
US7584500B2 (en) | 2003-11-19 | 2009-09-01 | Hughes Network Systems, Llc | Pre-fetching secure content using proxy architecture |
US8572249B2 (en) | 2003-12-10 | 2013-10-29 | Aventail Llc | Network appliance for balancing load and platform services |
US8255973B2 (en) | 2003-12-10 | 2012-08-28 | Chris Hopen | Provisioning remote computers for accessing resources |
US7113779B1 (en) | 2004-01-08 | 2006-09-26 | Iwao Fujisaki | Carrier |
US7555772B2 (en) | 2004-01-26 | 2009-06-30 | Juniper Networks, Inc. | Wireless firewall with tear down messaging |
US9626655B2 (en) | 2004-02-19 | 2017-04-18 | Intellectual Ventures I Llc | Method, apparatus and system for regulating electronic mail |
EP1575238A1 (en) | 2004-03-08 | 2005-09-14 | Nokia Corporation | IP mobility in mobile telecommunications system |
US20050262357A1 (en) | 2004-03-11 | 2005-11-24 | Aep Networks | Network access using reverse proxy |
US7502925B2 (en) | 2004-04-19 | 2009-03-10 | Nvidia Corporation | Method and apparatus for reducing TCP frame transmit latency |
-
2004
- 2004-09-29 US US10/711,646 patent/US20050198379A1/en not_active Abandoned
- 2004-10-08 KR KR1020067006932A patent/KR20060120035A/ko not_active Application Discontinuation
- 2004-10-08 CA CA2542139A patent/CA2542139C/en active Active
- 2004-10-08 JP JP2006534409A patent/JP2007514337A/ja active Pending
- 2004-10-08 WO PCT/US2004/033333 patent/WO2005036857A1/en active Application Filing
- 2004-10-08 AU AU2004306771A patent/AU2004306771A1/en not_active Abandoned
- 2004-10-08 EP EP04794632A patent/EP1678917B1/en active Active
-
2005
- 2005-06-20 US US11/158,156 patent/US7502726B2/en not_active Expired - Fee Related
- 2005-06-20 US US11/157,289 patent/US8090874B2/en not_active Expired - Fee Related
- 2005-06-20 US US11/157,315 patent/US7340772B2/en not_active Expired - Lifetime
-
2011
- 2011-01-18 US US13/008,634 patent/US8874791B2/en not_active Expired - Lifetime
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150026894A (ko) * | 2013-08-28 | 2015-03-11 | 주식회사 케이티 | 컨트롤러와 네트워크 장치 간 재연결 방법 |
KR101506223B1 (ko) * | 2014-12-10 | 2015-03-27 | (주)한위드정보기술 | 가상화 서비스 제공을 위한 비정상적인 접속 차단시 자동 재접속 시스템 |
KR101627256B1 (ko) * | 2015-01-08 | 2016-06-03 | (주)넷텐션 | 다수 분산서버를 구비한 네트워크 통신의 세션 이양 방법 |
WO2016111407A1 (ko) * | 2015-01-08 | 2016-07-14 | (주)넷텐션 | 단말 세션의 복원 기능을 구비한 네트워크 통신 방법 |
US10630479B2 (en) | 2015-01-08 | 2020-04-21 | Nettention Co., Ltd. | Network communication method having function of recovering terminal session |
KR20180050952A (ko) * | 2016-11-07 | 2018-05-16 | 한국전자통신연구원 | 다중 채널 기반 데이터 송수신 방법 및 장치 |
KR102339028B1 (ko) * | 2021-06-17 | 2021-12-15 | 농업협동조합중앙회 | 로봇 프로세스 자동화 장치 및 그 동작 방법 |
Also Published As
Publication number | Publication date |
---|---|
US8090874B2 (en) | 2012-01-03 |
WO2005036857A1 (en) | 2005-04-21 |
EP1678917A1 (en) | 2006-07-12 |
JP2007514337A (ja) | 2007-05-31 |
US7340772B2 (en) | 2008-03-04 |
US20050246445A1 (en) | 2005-11-03 |
CA2542139A1 (en) | 2005-04-21 |
AU2004306771A1 (en) | 2005-04-21 |
US20050273513A1 (en) | 2005-12-08 |
US8874791B2 (en) | 2014-10-28 |
CA2542139C (en) | 2014-11-25 |
US20050198379A1 (en) | 2005-09-08 |
EP1678917B1 (en) | 2008-08-27 |
US20050267974A1 (en) | 2005-12-01 |
US7502726B2 (en) | 2009-03-10 |
US20110113247A1 (en) | 2011-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7340772B2 (en) | Systems and methods for continuing an operation interrupted from a reconnection between a client and server | |
CA2541151C (en) | A persistent and reliable session securely traversing network components using an encapsulating protocol | |
CA2541137C (en) | Encapsulating protocol for session persistence and reliability | |
US9667601B2 (en) | Proxy SSL handoff via mid-stream renegotiation |
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 |