KR20040039304A - 사설 네트워크 리소스로의 액세스를 가능하게 하기 위한출력 관리 시스템 및 방법 - Google Patents

사설 네트워크 리소스로의 액세스를 가능하게 하기 위한출력 관리 시스템 및 방법 Download PDF

Info

Publication number
KR20040039304A
KR20040039304A KR10-2004-7002682A KR20047002682A KR20040039304A KR 20040039304 A KR20040039304 A KR 20040039304A KR 20047002682 A KR20047002682 A KR 20047002682A KR 20040039304 A KR20040039304 A KR 20040039304A
Authority
KR
South Korea
Prior art keywords
output
management system
firewall
user
print
Prior art date
Application number
KR10-2004-7002682A
Other languages
English (en)
Inventor
코코티스토마스에이.
커티스앨런디.
에메트데이비드엠.
팬쉥쿠오
헨더슨크리스토퍼피.
루엡케잭더블유.
넬러하워드제이.
트렙토우제이에이.
웡그레고리에이치.
Original Assignee
피어리스 시스템즈 코퍼레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/098,832 external-priority patent/US20020138564A1/en
Priority claimed from US10/104,528 external-priority patent/US6993562B2/en
Priority claimed from US10/225,582 external-priority patent/US20030079030A1/en
Application filed by 피어리스 시스템즈 코퍼레이션 filed Critical 피어리스 시스템즈 코퍼레이션
Publication of KR20040039304A publication Critical patent/KR20040039304A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00413Display of information to the user, e.g. menus using menus, i.e. presenting the user with a plurality of selectable options
    • H04N1/00416Multi-level menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/327Initiating, continuing or ending a single-mode communication; Handshaking therefor
    • H04N1/32765Initiating a communication
    • H04N1/32767Initiating a communication in response to a user operation, e.g. actuating a switch
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/10015Access to distributed or replicated servers, e.g. using brokers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/59Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup

Abstract

각종 타입의 컴퓨터 네트워크를 통해 인쇄, 팩스전송, 이메일 등의 출력을 관리하기 위한 시스템 및 방법을 제공한다. 일양태에 있어서, 시스템 및 방법은 방화벽(61,62,63,64) 뒤의 사설 네트워크 상에 위치된 프린터 및/또는 문서 리소스의 액세스를 제공한다. 패스-스루 통신 링크는 방화벽의 양측에 위치된 시스템 구성요소 사이에 설정된다. 시스템-제공 이용자 인터페이스는 이용자로 하여금 소스 데이터 및 소스 데이터가 인쇄될 출력 장치를 선택할 수 있도록 해주고, 이들 중 하나 또는 이들 모두는 방화벽 뒤에 존재할 수도 있다. 이어서, 소스 데이터가 검색되고, 소스 데이터와 선택 출력 장치(D1)에 대응하는 출력 이미지를 렌더링 하는 프린터(PS1)로 포워딩된다. 이어서, 출력 이미지 데이터는 물리적으로 렌더링되기 위해 출력 장치로 제공된다. 패스-스루 통신 링크에 의해 사설 리소스로의 액세스가 제공된다. 또한, 이 시스템은 문서가 리퍼런스에 의해 인쇄되도록 할 수 있다.

Description

사설 네트워크 리소스로의 액세스를 가능하게 하기 위한 출력 관리 시스템 및 방법{OUTPUT MANAGEMENT SYSTEM AND METHOD FOR ENABLING ACCESS TO PRIVATE NETWORK RESOURCES}
종래의 인쇄 환경에서, LAN(local area network) 등의 폐쇄형 컴퓨터 네트워크를 통해 상호 접속되는 컴퓨터를 조작하는 이용자는 제공되어질 그들의 컴퓨터 상에서 실행중인 어플리케이션에 의해 생성된 문서를, 프린터, 플로터 등과 같이 네트워크에 접속된 출력 장치 상에 제공할 수도 있다. 현재의 급진적인 모바일 비즈니스 환경에서, 이러한 제한된 인쇄 해결책은 더 이상 충분하지 않다. 종래의 인쇄 기술은 고해상도, 향상된 품질 및 칼라를 갖고 보다 신속하게 문서를 출력하기 위해 진보해 온 것은 분명하지만, 현재의 모바일 역량(workforce)을 만족시키는 인쇄 기술을 개발하기 위한 노력은 거의 없었다.
현재의 모바일 비즈니스 환경에서, 종래의 인쇄 환경의 개발자에 의해 고려되지 않거나 어드레스되지 않는 많은 인쇄 시나리오가 발생한다. 예컨대, 다음의 상황이 고려된다. 파트너의 사무실에서 사업 계획을 논의하기 위한 준비를 하면서, 비즈니스 개발자가 그 회사의 홈 네트워크 상에 저장된 필요한 계약서를 파트너 네트워크의 프린터로 제공할 수 있는가? 이동 외판원이 근처의 프린터로 그녀의 프리젠테이션 슬라이드를, 그녀가 프리젠테이션 슬라이더를 가지고 있지 않은 경우에도 보다 쉽게 인쇄할 수 있는가?
블루투스 핸드세트 이용자가 실내로 들어가고, 블루투스 가능한 프린터의 유무를 탐색하고, 프린터가 블루투스형이 아닌 경우에도 근방의 프린터를 이용하여 인쇄할 수 있는가? 인스턴트 메시지 사용자가 친구의 프린터 목록으로 문서를 드래그 앤 드롭(drag and drop)하여 문서를 인쇄할 수 있는가? 공항의 벤처 사업가(venture capitalist)가 그의 셀룰러 폰을 이용하여 그의 사무실에서 필요한 문서를 인쇄할 수 있는가? 이러한 각각의 상황에 대해 인쇄 해결책을 제공하는 것이 바람직하고, 이는 다른 비슷한 시나리오에 대해서도 마찬가지이다.
본 발명은 네트워크 접속 인쇄 환경(networked printing environment)에 관한 것으로, 보다 상세하게는 네트워크 접속 인쇄 환경 및 출력 요구의 관리에 관한 것이지만, 이에 한정되지는 않는다.
도1은 메시지 센터(MC)에 의해 수행되는 각종 태스크(task)를 나타내는 개략적인 블록도.
도2는 인쇄 서비스(PS)에 의해 수행되는 각종 태스크를 나타내는 개략적인 블록도.
도3은 원격 데스크탑 클라이언트(RDC:Remote Desktop Client)에 의해 수행되는 각종 태스크를 나타내는 개략적인 블록도.
도4는 무선 데이터 액세스 포인트(WDAP:Wireless Data Access Point)에 의해 수행되는 각종 태스크를 나타내는 개략적인 블록도.
도5는 간단한 출력 관리 시스템 구현을 나타내는 개략도.
도6은 보다 복잡한 출력 관리 시스템 구현을 나타내는 개략도.
도7은 루트 메시지 센터와 사설 네트워크에 접속된 메시지 센서 사이의 인터액션(interaction)의 개략도.
도8은 P2P(peer-to-peer) 메시지 센터 접속을 설정하기 위해 이용되는 셋업 동작을 나타내는 개략도.
도9는 RDC와 RDC 클라이언트 등록 요구(Client Registration Request)와 일치하는 메시지 센터 사이의 인터액션을 나타내는 흐름도.
도10은 RDC 프린터 등록 요구에 대응하는 흐름도.
도11은 장치 리소스 정의(Device Resource Definition)를 메시지 센터에 제공하는 RDC에 대응하는 흐름도.
도12는 홈 메시지 센터를 거쳐 루트 메세지 센터로의 공중 장치 질의(public device query)의 흐름도.
도13은 홈 도메인 내의 인쇄 서비스에 직접 접속된 출력 장치로의, 홈 도메인 내의 이용자에 의해 발행된 리퍼런스에 의한 인쇄(PBR:Print By Referece) 작업 요구에 대응하는 흐름도.
도14는 도13의 PBR 작업 요구에 대응하는 구성요소 인터액션 도면.
도15는 홈 도메인 내의 인쇄 서비스에 직접 접속되는 출력 장치로의, 홈 도메인 내의 이용자에 의해 발행된 비-PBR(non-PBR) 작업 요구에 대응하는 흐름도.
도16은 홈 도메인 내의 원격 데스크탑 클라이언트(Remote Desktop Client)에 접속되는 로컬 프린터로의, 홈 도메인 내의 이용자에 의해 제공된 PBR 작업 요구에 대응하는 흐름도.
도17은 도16의 PBR 작업 요구에 대응하는 구성요소 인터액션 도면.
도18은 루트 메시지 센터 공중 출력 장치(D1)상으로 인쇄될 홈 도메인(예컨대, 구역1) 내의 이용자에 의해 제공되는 PBR 작업 요구에 대응하는 흐름도.
도19는 도18의 PBR 작업 요구에 대응하는 구성요소 인터액션 도면.
도20은 시스템에서의 메시지 센터와 인터액션하기 위한 3가지 우선 액세스 메커니즘(three primary access mechanism)을 나타내는 개략도.
도21은 이용자가 SDAP를 통해 작업 요구를 제공했을 때, 동적 디폴트 프린터(dynamic default printer)를 결정하기 위해 이용되는 동작을 나타내는 개략도.
도22a 및 도22b는 블루투스-인에이블 방식의 발신 장치의 이용자가 블루투스 장치 에뮬레이터(emulator)를 포함하는 WDAP를 통해 작업 요구를 제공했을 때, 동적 디폴트 프린터를 결정하기 위해 이용되는 동작을 나타내는 개략도.
도23은 출력 관리 시스템의 전형적인 구현 동안 부딪칠 수도 있는 각종 접속 경로 및 접속 형태를 나타내는 일반적인 시스템 접속 토폴리지 도면.
도24는 내부 구역 메시지 센터(Inter-Zone Message Center) 및 공중 RDC를통해 통제되는 작업 요구의 프로세싱 동안 수행되는 동작을 나타내는 흐름도.
도25는 본 발명의 일실시예에 따른 4-계층 아키텍처(4-tier architecture)에 대응하는 개략적인 블록도.
도26은 메시지 센터에 의해 제공되는 동작을 구현하기 위해 이용되는 것에 대응하는 각종 소프트웨어 모듈 및 데이터베이스를 나타내는 개략적인 블록도.
도27은 인쇄 서비스에 의해 구현되는 각종 소프트웨어 구성요소를 나타내는 개략적인 블록도.
도28은 인쇄 서비스에 의해 이용되는 각종 CGI 스크립트를 나타내는 개략적인 블록도.
도29는 드라이버 인쇄 서버에 의해 구현되는 각종 소프트웨어 구성요소를 나타내는 개략적인 블록도.
도30은 인쇄 서비스에 제공된 인쇄 요구에 대응하는 전형적인 데이터 플로우 프로세스를 나타내는 개략도.
도31은 인쇄 서비스의 무-드라이버(driverless) 프린터 서버에 의해 제공되는 동작 및 로직을 나타내는 개략도와 흐름도의 조합적인 도면.
도32는 인쇄 작업을 프로세스할 때 런치될 수도 있는 각종 다이얼로그 및 메시지 박스를 통제하기 위해 통제 윈도우 구성요소에 의해 채용되는 동작 및 로직을 나타내는 흐름도 및 개략도.
도33은 출력 관리 시스템을 통해 이용자가 파일 서버 액세스를 셋업할 수 있게 하는 웹-기반 이용자 인터페이스를 나타내는 도면.
도34는 다수의 파일 서버가 액세스를 위해 셋업된 후의 도33의 웹-기반(Web-based) UI를 나타내는 도면.
도35는 이용자가 주요 프린터의 리스트를 셋업할 수 있게 해주는 웹-기반 UI를 나타내는 도면.
도36은 이용자가 시스템 관리자에 의해 사전에 구성된 프린터를 검색할 수 있게 해주는 웹-기반 UI를 나타내는 도면.
도37은 다수의 프린터가 주요 프린터의 리스트에 추가된 후의 도35의 웹-기반 UI를 나타내는 도면.
도38은 도39 내지 도52에서의 WAP-기반 이용자 인터페이스 항목에 대응하는 범례(legend)를 나타내는 도면.
도39는 가입자 로그인 프로세스에 대응하는 WAP UI 흐름도의 제1 부분을 나타내는 도면.
도40는 가입자 로그인 프로세스에 대응하는 WAP UI 흐름도의 제2 부분을 나타내는 도면.
도41은 subOutputlndex.pl CGI 스크립트에 대응하는 WAP UI 흐름도.
도42는 출력할 문서를 검색하기 위해 네트워크의 네비게이션을 가능하게 하는 카드 세트에 대응하는 WAP UI 흐름도.
도43은 네트워크 사이트, 팩스 머신, 이메일 어드레스의 추가에 대응하는 WAP UI 흐름도.
도44는 네트워크 사이트가 이용자의 네트워크 사이트 리스트에 추가되어진것을 이용자에게 알리기 위해 이용되는 WAP UI 도면.
도45는 주요 프린터의 리스트로의 새로운 프린터의 추가에 대응하는 WAP UI 흐름도.
도46은 팩스 머신이 이용자의 팩스 리스트에 추가되어진 것을 이용자에게 알리기 위해 이용되는 WAP UI 도면.
도47은 이메일 이름이 이용자의 콘택 리스트에 추가되어진 것을 이용자에게 알기이 위해 이용되는 WAP UI 도면.
도48은 선택된 문서 및 출력 장치의 확인에 대응하는 WAP UI 흐름도.
도49는 새로운 팩스를 이용자의 주요 팩스 리스트에 추가하는 것에 대응하는 WAP UI 흐름도.
도50은 새로운 이메일 콘택을 이용자의 콘택 리스트에 추가하는 것에 대응하는 WAP UI 흐름도.
도51은 작업 큐로의 인쇄, 팩싱, 및 이메일 작업을 삽입하는 것에 대응하는 WAP UI 흐름도.
도52는 이용자 요구에 응답하여 PIN이 이메일을 통해 이용자에게 성공적으로 송신되었는지의 여부를 가리키는 WAP UI 흐름도.
도53은 저해상도 스크린을 갖는 장치 상에서의 문서 미리보기를 위해 최초의 문서 이미지가 각종 크기의 인쇄견본(thumbnail)으로 어떻게 변환되는지를 나타내는 도면.
도54는 문서가 선택된 출력 장치 상에서 출력될 때, 문서가 어떻게 나타날지를 미리보기 위해, 어떻게 이용자가 문자-기반(text-based) 문서의 부분들을 통해 네비게이트할 수 있는지를 나타내는 개략도.
도55는 문서가 선택된 출력 장치 상에 출력될 때, 문서가 어떻게 나타날지를 미리보기 위해, 어떻게 이용자가 스프레드시트 문서의 부분들을 통해 네비게이트할 수 있는지를 나타내는 개략도.
도56은 어떻게 출력 관리 시스템 아키텍처의 이론이 인스턴트 메시지 서비스를 통해 공유하는 리소스를 지원하기 위해 연장될 수 있는지를 나타내는 개략도.
도57은 멀티미디어 메시지-인에이블 방식의 장치를 통해 어떻게 이 시스템이 이용될 수 있는지를 나타내는 개략도.
도58은 시스템에 의해 이용되는 리소스를 포함하는 사설 네트워크의 보안성을 향상시키기 위해 어떻게 CGI VPN 프록시가 구현되는지를 나타내는 개략도.
도59a는 메시지 센터를 포함하지 않는 사설 네트워크 상에 위치된 출력 장치로의 액세스를 가능하게 하기 위한 제1 구성을 나타내는 개략도.
도59b는 메시지 센터를 포함하지 않는 사설 네트워크 상에 위치된 출력 장치로의 액세스를 가능하게 하기 위한 제2 구성을 나타내는 개략도.
도60은 메시지 센터 및 사설 서비스를 포함하는, 시스템의 호스트 각종 구성요소에 이용될 수도 있는 컴퓨터 서버의 개략도.
본 발명의 양태에 따르면, 각종 형태의 컴퓨터 네트워크를 통해 프린터, 팩스, 및 이메일 등의 출력을 관리하기 위한 시스템 및 방법이 기재된다. 일 양태에 있어서, 시스템 및 방법은 방화벽 뒤의 사설 네트워크에 위치된 프린터 및/또는 문서 리소스를 액세스한다. 방화벽을 통과하는 통신 링크는 방화벽의 양측 상에 위치된 시스템 구성요소 사이에 설정된다. 시스템에 의해 지상유선(land-wired) 장치 또는 무선장치 등의 발신 장치(originating device)로 제공되는 렌더링 가능한 데이터(renderable data)는 발신 장치 상에 이용자-인터페이스를 렌더링하기 위해 제공된다. 이용자-인터페이스는 이용자가 소스 데이터와, 소스 데이터가 인쇄될 출력 장치를 선택하는 것을 가능하게 해준다. 이들 중 하나 또는 이들 모두는 방화벽 뒤에 존재할 수도 있다. 이어서, 소스 데이터가 검색되고(사설 네트워크로부터 일부의 경우에), 소스 데이터와 선택된 출력 장치에 대응하여 출력 이미지 데이터를 렌더링하는 인쇄 서비스로 포워딩된다. 다음으로, 출력 이미지 데이터는 출력 장치로 제공되어 물리적으로 렌더링된다. 사설 리소스에 대한 액세스는 통신 링크를 통과하는 것으로 제공된다. 이 시스템은 문서가 리퍼런스에 의해 인쇄되게 해준다.
본 발명의 전술한 양태 및 많은 부수적인 장점은 도면을 참조한 이하의 상세한 설명을 통해 보다 명확해질 것이며, 여기서, 동일한 부분에 대해서는 동일한 참조번호를 부여한다.
모바일 이용자 및 지상-유선 이용자에게 인쇄 해결책을 제공하는 출력 관리시스템 및 방법의 실시예를 이하에 설명한다. 다음의 설명에서, 본 발명의 실시예의 이해를 돕기 위해 아키텍처 구현 등과 같은 다수의 특정 항목을 설명한다. 그러나, 당업자는 본 발명이 하나 또는 그 이상의 특정 항목, 구성요소, 재료 없이, 또는 기타 방법으로 실시될 수 있다는 것을 알아야한다. 즉, 통상적인 구조, 재료, 또는 동작은 본 발명을 모호하게 하는 것을 회피하기 위해 도시되지 않거나 상세하게 설명되지 않는다.
"하나의 실시예(one embodiment)" 또는 "실시예(a embodiment)"는 실시예와 연관되어 설명되는 특정 특성, 구조, 또는 특징이 본 발명의 적어도 하나의 실시예에 포함되는 것을 의미한다. 따라서, 본 명세서에서 다양하게 표현되는 "하나의 실시예에서(in one embodiment)" 또는 "실시예에 있어서(in a embodiment)"라는 구문은 동일한 실시예를 모두 참조할 필요는 없다. 게다가, 특정 특성, 구조, 또는 특징은 하나 또는 그 이상의 실시예와 적당한 방식으로 조합될 수 있다.
이하의 용어 및 그 정의는 이하의 설명에 자주 이용된다.
소스 데이터(Source Data): 소스 데이터는 검색되어 장치로 출력될 수 있는 임의의 문서 또는 미디어를 나타낸다. 지원되는 입력 데이터 포맷은 대부분의 문서 프로세서 지원 형태(예컨대 PDF, PostScript, MicrosoftWord, ASCII text 등), 웹 URL 링크, 이메일, 및 이메일 첨부물을 포함하지만 이에 한정되지는 않는다.
원격 스토어(Remote Store): 원격 스토어는 소스 데이터가 저장되는 LAN 또는 인터넷 상의 원격 위치(remote location)를 포함한다. 원격 스토어는 FTP 컨텐츠 서버, NFS 파일 서버, PCNFS 파일 서버, 및 웹 서버를 포함하지만 이에 한정되지는 않는다.
로컬 소스(Local Source): 로컬 소스는 인쇄 요구가 발행되는 동일한 이용자 장치 상에 저장되는 소스 데이터를 포함한다. 따라서, 로컬 소스로부터 인쇄되면, 소스 데이터는 프로세싱을 위해 이용자 장치로부터 출력 관리 시스템 상으로 업로드되어야 한다.
원격 소스(Remote Source): 원격 스토어 상에 저장되는 소스 데이터를 포함한다.
발신 장치(Originating Device): 이용자가 작업 요구를 발신하는 무선 또는 유선 장치.
출력 장치(Output Device): 출력장치는 시스템으로부터 이미지 데이터를 추출하고, 이들을 열람(viewing) 또는 기록할 목적으로 특정한 형태로 전환한다. 지원되는 출력 장치는 프린터, 팩스 머신, 원격 문서 리포지토리(repository), 및 이메일 목적지를 포함하지만 이에 한정되지는 않는다. 이들 출력 장치는 LAN에 놓여질 수도 있고, 또는 인터넷과 같은 공중 액세스 가능한 네트워크 및 사설 네트워크를 포함하는 외부 네트워크 상에 존재할 수도 있다.
작업 요구(Job Request): 작업 요구는 처리 및 출력 장치로 송신되어질, 이용자가 시스템에 제공하는 요구를 나타낸다.
요구 상태(Job Status): 요구 상태는 요구 프로세싱의 현재 진도를 나타내는 작업 요구의 상태를 나타낸다. 이는 이용자가 그들의 작업 요구의 상태의 이해를 돕고, 관리자가 이들을 관리하는 것을 돕기 위한 메커니즘을 나타낸다.
지연 인쇄(Deferred Print): 지연 인쇄는 예정된 출력 장치가 현재 사용불가능이기 때문에, 작업 프로세싱의 마지막 단계에서, 프로세스된 작업 요구의 출력을 지연하는 것을 나타낸다.
이용자 데이터베이스(User Database): 이용자 데이터베이스는 각 이용자의 시스템 구성 설정을 추적하기 위해 이용되는 시스템 데이터베이스를 나타낸다.
서버(Sever): 네트워크 상에서 액세스 가능한 컴퓨터 실행 소프트웨어를 나타낸다.
웹 서버(Web Server): 하이퍼텍스트 전송 프로토콜(HTTP: HyperText Transmission Protocol) 또는 HTML(HyperText Markup language) 파일을 전송하기 위한 보안 HTTP, CGI(Common Gateway Interface) 데이터, 및 클라이언트와 서버 컴퓨터 사이의 데이터 파일을 이용하여 클라이언트 컴퓨터와 통신하는, 컴퓨터 또는 서버상에서 실행되는 컴퓨터 프로그램을 나타낸다.
윈도우 프린터(Window Printer): 마이크로소프트 윈도우 운영 체제에서, '프린터'는 프린터 드라이버, 인쇄 프로세서, 랭귀지 모니터(language monitor), 및 포트 모니터의 이름으로 정의된다.
스풀 파일(Spool File): MS 윈도우 프린터 드라이버에 의해 생성되는 프린터 랭귀지 파일. 이 파일의 컨텐츠는 인쇄를 위해 프린터로 직접적으로 송신될 수도 있다.
인터넷 인쇄 프로토콜(IPP): 스풀 파일을 네트워크 프린터로 송신하고, 네트워크 프린터로부터 인쇄 작업을 획득하기 위한 HTTP와 유사한 프로토콜.
라인 프린터 원격(LPR): 스풀 데이터를 네트워크 프린터로 제공하기 위한 프로토콜.
구역(Zone): 자율 출력 관리 시스템을 둘러싸는 네트워크. 일반적으로 구역은 네트워크 도메인의 논리적인 표현을 포함한다.
본 명세서에 기재된 본 발명의 각종 실시예는 무선 또는 유선 이용자가 로컬 및 원격 소스로부터 소스 데이터를 검색하는 것을 가능하게 하고, 소스 데이터가 선택된 출력 장치상에 출력되게 요구하는 것을 가능하게 한다. 여기서 선택된 출력장치는 예정된 출력 장치 또는 목적지 출력 장치라고 언급되기도 한다. 일반적으로, 출력 장치는 발신 장치(예컨대, 출력 요구가 발행되는 장치)로서 동일한 네트워크 상에 위치될 수도 있고, 또는 이보다는 빈번하게, 발신 장치로 액세스할 수 없는 네트워크를 포함하는 분리 네트워크(separate network) 상에 위치될 수도 있다.
최상위 레벨(top level)에서, 본 명세서에 기재된 본 발명의 출력 관리 시스템의 실시예의 동작 및 기능성(functionality)은 4개의 주요 구성요소, 즉 메시지 센터(MC), 인쇄 서비스(PS), 원격 데스크탑 클라이언트(RDC: Remote Desktop Clients), 및 무선 데이터 액세스 포인트(WDAP:Wireless Data Access Points)를 통해 가능하게 된다. 실제 구현에 있어서, 구현의 특정 요구에 따라, 이들 구성요소의 각종 조합이 일반적으로 이용된다.
메시지 센터는 이 시스템의 핵심이다. 이는 전체 시스템이 바람직하게 기능하는 것을 보장하기 위해 이 시스템에서의 나머지 구성요소와 조화한다. 도1에 나타낸 바와 같이, 일 실시예에서, 메시지 센터(MCn)는 구성요소 등록 및 등록해제(unregistration)(10), 작업 요구 접수, 작업 요구 프로세싱(14), 작업 출력 스케줄링 및 쿼링(16), 작업 출력 상태 모니터링(18), 동등 메시지 센터 인터액션(20), 루트 레벨 메시지 센터 인터액션(22), 원격 데스트탑 클라이언트 관리(24), 인쇄 서비스 관리(26), 무선 데이터 액세스 포인트 관리(28), 이용자 프로파일 관리(30) 및 이용자 인터페이스 관리(32)를 포함하는 12개의 주요 태스크를 수행한다.
인쇄 서비스 구성요소는 작업 요구의 렌더링 및 인쇄를 통제한다. 도2에 나타낸 바와 같이, 일 실시예에서, 인쇄 서비스(PSn)는 렌더링 출력 이미지(34), 리포지토리로의 출력 이미지 적재(Deposit)(36), 로컬 장치로의 출력 이미지 송신(38), 메시지 센터(40)로의 작업 출력 상태 송신(40), 및 로컬 출력 장치 관리(42)를 포함하는 인쇄 서비스 태스크를 수행한다.
무선 데이터 액세스 포인트 구성요소는 무선 이용자가 블루투스, IEEE 802.11 등의 표준 무선 프로토콜을 이용하여 시스템으로 접속하는 것을 돕는다. 또한, 무선 액세스를 위해 메시지 센터가 리소스 매핑을 관리하는 것을 도와준다. 도4에 나타낸 바와 같이, 일 실시예에서, WDAPn은 구성요소 등록 및 등록해제(50), 수신 장치 접속 요구(52), 이용자의 무선 장치(54)로부터의 중계 요구(relay request), 이용자의 무선 장치에 대한 중계 시스템 응답(56), 및 기록 출력 장치 지리학적 관계(58)를 포함하는 5개의 주요 태스크를 실행한다.
종합적으로, 본 명세서에 기재된 출력 관리 시스템의 실시예의 특성은 이하의 동작, 즉 1) 장치 리소스 관리, 2) 장치 리소스 발견, 3) 작업 요구 관리, 4) 작업 요구 스케줄링, 5) 작업 요구 모니터링, 6) 이용자 프로파일 관리, 및 7) 이용자 모바일 서명(sign-in)을 포함한다. 이하의 설명은 각 양태의 간단한 미리보기를 기재하고, 그 다음에 시스템 실시예를 통해 보다 상세히 설명한다.
장치 리소스 관리
시스템은 쉽고 빠른 출력 장치 위치를 위해 장치 리소스를 관리한다. 일 실시예에서, 이들 장치는 물리적 및 논리적 출력 장치로 나뉜다. 물리적 출력 장치는 프린터, 팩스 머신, 카피 머신을 포함하지만 이에 한정되지는 않는다. 논리적 출력 장치는 파일 서버, 인쇄 서버, FTP 리포지토리, 및 이메일 목적지를 포함한다. 다음은 연관된 동작의 리스트이다.
계층적 루트 관리 센터의 이용, 용이한 리소스 관리 및 공유를 위한 공중 및 사설 장치 분류: 시스템은 각 메시지 센터의 관계를 기록하기 위해 데이터베이스를 이용한다. 루트 메시지센터는 0과 동일한 메시지 센터 Id(MCID)를 갖는다. 다른 모든 메시지 센터는 0이 아닌 양수 MCID 값을 갖는다. 루트 메시지 센터 테이블은 구역 및 다른 메시지 센터의 네트워크 어드레스를 식별하는 정보를 포함한다. 로컬 메시지 센터는 루트 메시지 센터에 등록되어야 하고, 리소스 공유를 위해 그들의 공중 리소스 정보를 알린다. 모든 비공표(non-published) 장치 리소스는 사설인 것으로 간주하고, 그들이 존재하는 구역의 외측으로는 공유되지 않는다.
로컬 및 원격 클라이언트 등록 메커니즘을 이용한 장치 관리: 관련 인쇄 서비스는 그들의 접속 출력 장치를 메시지 센터에 등록하고, 마찬가지로 관련 원격 데스크탑 클라이언트는 그들이 직접적으로 접속된 출력 장치를 메시지 센터에 등록한다. 이어서, 이들 출력 장치는 대응하는 인쇄 서비스 또는 원격 데스크탑 클라이언트를 통해 참조될 수도 있다. 구현의 특정 보안 요구에 따라, 시스템 내의 인쇄 서비스 및 원격 데스크탑 클라이언트 상에 암호를 이용하여, 필요한 경우 데이터 보안성 및 무결성을 보장하는 것이 바람직할 수도 있다.
월드 와이드 웹(WWW: World Wide Web) 및 모바일 장치 인터페이스를 이용한 장치 관리: 시스템은 장치 관리 목적의 간단한 모바일 관리 인터페이스와 함께 완전한 관리 인터페이스를 제공한다.
중앙식 드라이버 스토어(Centralized Driver Store)를 이용하는 원격 장치 설치: 출력 장치의 등록에 따라, 대응하는 드라이버가 출력 장치와 연관된 인쇄 서비스상에 인스톨되어야 한다. 메시지 센터는 그 드라이버 스토어에서 공동으로 이용되는 드라이버 어레이를 제공하여 드라이버를 인쇄 서비스 구성요소로 전송하는 장치의 필요성을 제거한다. 그러나, 이 드라이버가 MC 드라이버 스토어로부터 현재 이용가능하지 않으면, 장치 스토어로 전송되고, 이어서 프리트 서비스 상에 설치될 수도 있다.
장치 리소스 발견(Device Resource Discovery)
이 시스템은 이용자가 출력 장치를 모바일 계산 환경(mobile computing environment)에 위치시킬 수 있게 해준다. 이하에 상세히 설명되는 바와 같이, 일실시예에서, 장치 발견을 위해 블루투스 및 IEEE 802.11 기술을 이용한다. 이는 또한 비-블루투스식 장치가 그 블루투스 장치 에뮬레이터를 통해 이들이 블루투스 장치로서 동작하는 것을 가능하게 해준다. 다음은 관련된 동작의 리스트이다.
출력 장치 발견 및 블루투스 접속을 통한 메시지 센터로의 등록: 이는 출력 장치 정보를 취득하기 위해 무선 데이터 액세스 포인트(WDAP) 상의 에이전트를 메시지 센터와의 인터페이스에 실행함으로써 얻어진다. 또한, 에이전트는 메시지 센터와 협력하여 WDAP상에서 동작하는 그 출력 장치 정보 데이터베이스를 유지시킨다.
블루투스 게이트웨이를 통해 블루투스 클라이언트로의 로컬 총칭 출력 장치 유효성 공표(Local Generic Output Device Availability Announcement): 선택적인 블루투스 게이트웨이는 메시지 센터가 WDAP를 통해 수신되는 정보를 관리하는 것을 돕기 위해 배치될 수 있다. 출력 장치 유효성을 포함하는 이 정보는 무선 이용자가 등록된 WDAP를 통해 네트워크로 접속할 때 무선 이용자에게 알려진다. 모바일 이용자의 경우, 이 정보는 이용자가 네트워크를 통해 이동하여 다른 WDAP로 접속됨에 따라 시스템에 의해 새로 고쳐진다.
802.11 게이트웨이를 통한 출력 장치 발견 및 등록: 이는 무선 데이터 액세스 포인트(WDAP) 상의 에이전트를 메시지 센터와의 인터페이스에 실행시킴으로써 얻어지고, 블루투스 접속에 이용되는 유사한 방법으로 출력 장치 정보가 얻어진다.
IP 브로드캐스트를 통한 출력 장치 유효성 공표: 선택적인 802.11 게이트웨이는 메시지 센터가 WDAP를 통해 수신하는 정보를 관리하는 것을 돕기 위해 시스템에 배치될 수 있다. 출력 장치 유효성을 포함하는 이 정보는 802.11의 인증된 이용자가 등록된 WDAP를 통해 네트워크로 진입할 때 이용자에게 알려질 것이다. 이 정보는 이용자가 네트워크를 통해 이동하여 다른 WDAP로 접속됨에 따라 시스템에 의해 새로 고쳐진다.
인스턴트 메시징 인터페이스를 통한 로컬 출력 장치 유효성 공표: 원격 데스크탑 클라이언트는 인스턴트 메시지(IM) 프로토콜(예컨대, AOL 인스턴트 메시징, 야후 메시징, MSN 메시징, ICQ 등)을 통해 장치 관리를 지원하도록 확장될 수 있다. 이 개념은 이용자의 출력 리소스가 다른 메신저 이용자(예컨대, 친구 등)에게 표시가능하고 공유 가능하게 하는 것이다. 예컨대, 이러한 능력은 IM 이용자가 파일을 출력 장치의 친구 리스트상의 공유 장치에 드래그 앤 드롭할 수 있게 하고, 따라서 파일에 대응하는 출력이 친구가 쉽게 액세스할 수 있는 장치상으로 출력되게 해준다.
출력 리소스 발견에 기반한 디폴트 출력 장치 할당: 디폴트 출력 장치에는 2가지의 형태가 존재한다. 하나는 정적인 디폴트 출력 장치이고, 다른 하나는 동적인 디폴트 출력 장치이다. 정적 디폴트 출력 장치를 변경하기 위해, 이용자는 그 프로파일 설정을 그래픽 이용자 인터페이스(GUI)를 통해 변경할 수 있다. 그러나, 이용자가 모바일 장치를 시스템을 액세스하기 위해 이용할 때에는 시스템만이 동적 디폴트 출력 장치를 업데이트한다. 또한, 이용자는 이용자의 프로파일 설정을 변경함으로써 동적인 겹쳐 쓰기를 오프할 수도 있고, 출력 장치 목적지를 언제나 특정할 수도 있다.
작업 요구 관리
이 시스템은 작업 요구를 관리하기 위해 요구 큐(request queue)를 구현한다. 이하는 관련된 동작의 리스트이다.
출력 장치에 대한 작업 요구를 관리하기 위해 원격 데스크탑 클라이언트의 사용: 예정된 출력 장치로의 작업 요구는 원격 데스크탑 클라이언트(RDC)를 통해 채널된다. 이 RDC는 출력 장치가 출력 데이터를 검색하고, 메시지 센터로 상태를 송신하는 것을 돕는다. 동일한 RDC는 메시지 센터와 RDC 사이에서 교체되는 출력 데이터를 보호화기 위해 암호화를 구현할 수도 있다.
인스턴트 메시징 인터페이스를 통한 작업 제공: 원격 데스크탑 클라이언트는 인스턴트 메시징 프로토콜(예컨대, AOL 인스턴트 메시징, 야후 메시징, MSN 메시징, ICQ 등)을 통한 작업 제공을 지원하기 위해 변경될 수 있다. 이 메커니즘은 이용자가 파일을 그 친구의 공유 출력 장치 리스트 상의 장치로 드래그 앤 드롭할 수 있게 해준다. 이어서, 친구는 장치로부터 출력 데이터를 수신한다. 변경된 RDC는 메신저 센터(예컨대, AOL 소유, 야후 소유, 법인 소유, 또는 루트 MC)에 등록되어야 한다. 성공함에 따라, 인스턴트 메시징 UI 상의 출력 관리 인터페이스가 보여질 것이다. 이용자의 리소스 정보는, 이용자의 친구가 인스턴트 메시징 툴에 맞춰진 RDC 를 실행하면 인스턴트 메시징 프로토콜을 통해 접속된 친구에게 전달된다. 이어서 문서는 이용자 친구의 공유 출력 장치로 드래그 앤드 드롭될 수 있다.
인스턴트 메시징 인터페이스를 통한 작업 인쇄 요구 수신: 원격 데스크탑 클라이언트는 인스턴트 메시징 프로토콜을 통한 작업 수신을 지원하기 위해 변경될 수 있다. 발신자가 출력 데이터를 수신자의 공유 출력 장치 리스트상의 장치로 드래그 앤드 드롭하면, 인쇄를 위해 작업 요구가 수신자의 RDC 로 송신된다. 변경된 RDC는 사전에 메시지 센터에 등록되어야 한다. 인스턴트 메시징 UI 상의 출력 관리 인터페이스가 보여질 것이다. 이용자의 리소스 정보는, 이용자의 친구가 인스턴트 메시징 툴에 맞춰진 RDC를 실행하면 인스턴트 메시징 프로토콜을 통해 접속된 친구에게 전달된다.
멀티미디어 메시징 시스템과의 인터페이스: 메시지 센터는 대부분의 멀티미디어 메시징 시스템과의 인터페이스로의 내향(inbound) 및 외향(outbound) 게이트웨이를 배치할 수 있다. 이러한 배치는 총칭 멀티미디어 클라이언트가 출력 관리 시스템 지배 클라이언트(output management system powered client)와 통신할 수 있게 하여, 정보를 교환하거나 또는 공유 장치 및 목적지로의 출력을 요구할 수 있게 해준다.
블루투스 접속을 통한 총칭 출력 장치로의 작업 제공: 블루투스 장치 에뮬레이터를 포함하는 WDAP는 이용자가 블루투스 접속을 통해 시스템 제공 인터페이스를 액세스할 수 있게 해준다. 요구에 따라, 블루투스 및 총칭 출력 장치를 포함하는 출력 장치 유효성은 이용자에게 회답된다. 이어서, 이용자는 블루투스 접속을 통해 선택된 목적지 출력 장치로 출력을 송신할 수도 있다.
전용 서버(Dedicated Sever)를 통한 작업 요구 렌더링: 시스템은 전용 작업-렌더링 서버로서 인쇄 서비스를 이용한다. 이는 클라이언트 서버상의 불필요한 장치 드라이버의 설치를 감소시킨다. 원격 데스크탑 클라이언트에 의해, 수천 마일 떨어진 출력 장치로 출력될 수 있고, 역의 경우에 대해서도 마찬가지이다.
개인 및 비지니스 작업 요구 분류: 현재의 공동 인쇄 환경은 개인적인 인쇄 작업 요구와 비지니스 요구를 구별하지 않는다. 대조적으로, 이 시스템은 작업 요구를 분류하고, 데이터베이스에 이들을 태그하고, 계산을 위해 이들 정보를 유지한다. 계산 부분은 작업 요구에 의해 정의된 작업 특성에 기초하여 부분(department)이나 임플로이(empolyee)를 적당하게 변경할 수 있다.
게스트 인쇄 지원: 이 시스템은 게스트 인쇄를 지원하도록 구성될 수 있다. 이는 메시지 센터상에 호스트된 게스트 작업 제공 인터페이스을 통해 획득된다. 이 인터페이스는 이용자 프로파일 검증을 실시하지 않지만, 공동 출력 리소스로의 제한된 액세스만을 허용한다. 관리자는 게스트 인쇄에 대하여 동적 디폴트 프린터까지 지원하도록 메시지 센터를 구성할 수 있다.
이메일 작업 요구 지원: 이 시스템은 첨부가 있거나 없는 이메일을 일반적인 작업 요구로서 수용한다. 시스템은 다중 출력 채널에 대한 첨부가 있거나 없는 이들 요구를 프로세스할 수 있다.
문서 미리보기: 이 시스템은 최종 출력 요구가 발행되기 전에 이용자에게 가시적인 확인(예컨대 문서의 올바른 버전)을 제공하기 위해 문서 미리보기를 지원한다. 이 문서 미리보기 특성은 이용자가 불완전한 견본으로 이미지를 볼 수 있게 하고, 페이지 번호가 유지된 평문 포맷으로 다른 파일을 볼 수 있게 하는 신속한 방법이다. 스프레드시트의 경우, 수직 및 수평의 양 방향으로의 네비게이션이 제공된다. 게다가, 문서 미리보기에서, 원본 문서의 페이지 관계가 유지되기 때문에, 이용자가 문서를 미리보기 위해 랜덤한 액세스를 할 수 있게 해준다.
작업 요구 스케줄링
이 시스템은 작업 요구를 관리하기 위해 요구 큐를 구현한다.
전용 작업 스케줄링: 작업 요구가 메시지 센터로 진입하면, 작업 프로세싱 목적을 위해 충분한 정보를 유지하기 위해, 작업 큐 엔트리가 메시지 센터 데이터베이스로 삽입된다. 예정된 출력 장치가 이용가능하지 않다면, 시스템은 큐내의 엔트리를 유지하고, 출력 장치가 활용 가능하게 되면 제공되도록 이후 시간을 재스캐줄링한다.
작업 스풀링 팩토리 내의 파일 리퍼런스를 이용하는 출력: 이 시스템은 출력 이미지를 렌더링하기 위해 인쇄 서비스를 이용한다. 인쇄 서비스 및 메시지 센터는 동일한 호스트 머신에 함께 위치하지 않는 것이 일반적이기 때문에, 최종 단계 프로세싱을 위해 렌더링된 데이터는 인쇄 서비스로부터 메시지 센터로 전송되어야 한다. 능률을 고려하면, 인쇄 서비스는 렌더링된 이미지를 공유된 스풀링 팩토리(예컨대, 리포지토리)에 저장하고, 이미지의 리퍼런스를 메시지 센터로 회답한다. 이어서, 메시지 센터는 리퍼런스를 이용하여 데이터를 목적지로 출력한다.
방화벽을 통한 보안 출력: 시스템의 모듈 설계는 각 구성요소의 개별화된 구성을 허용한다. 관리자는 시스템을 보호하기 위해 방화벽을 설치할 수도 있다. 원격 데스크탑 클라이언트는, 방화벽이 바람직하게 구성될 때, 메시지센터와의 인터페이스를 위해 자격을 갖는다. 이는 이용자에게 방화벽을 통해 문서를 인쇄하는 자격을 부여한다.
작업 요구 모니터링
이 시스템은 작업 큐 로그 추적을 통해 작업 상태 모니터링을 구현한다. 이하는 관련된 동작의 리스트이다.
데이터베이스 업데이트를 이용하는 지속적인 상태 추적을 통한 작업 상태 모니터링: 메시지 센터는 각각의 작업 요구에 대하여 지속적인 상태를 유지한다. 작업 출력 요구가 송출되면, 테이블 업데이트 핸들러(Table Update Handler)는 작업 상태를 모니터링하고, 작업 요구가 종료되었는지를 결정한다. 그런 경우, 데이터베이스를 업데이트하고 이용자에게 상태를 회답한다.
WAP 푸시(WAP PUSH)를 통한 작업 출력 상태 기록: 작업 요구가 종료될 때, 데이터베이스 내의 작업 상태는 업데이트된다. 이어서, 메시지 센터는 작업 발신자가 WAP 클라이언트라면 WAP 푸시를 통해 그 종료를 이용자에게 알린다.
HTTP 브라우저 리프레시를 통한 작업 출력 상태 기록: 작업 요구가 종료될 때, 데이터베이스 내의 작업 상태는 업데이트된다. 이어서, 메시지 센터는 그 종료를 이용자에게 알린다. HTTP 작업 제공 클라이언트인 경우, 작업 상태는 자동 브라우저 리프레시에 의해 상태가 종료로 마크될 때까지 업데이트된다.
출력 생성
이 시스템은 출력 생성을 위한 인쇄 서비스를 구현한다. 이하는 인쇄 서비스에 의해 수행되는 관련 동작의 리스트이다.
입력 파일 포맷에 기반한 출력 렌더링 어플리케이션의 동적 선택 및 구성가능한 시스템 설정: 출력 파일 이미지를 렌더링하기 위해 이용된 어플리케이션은 입력 파일의 포맷에 기반하여 우선순위가 결정될 수 있다. 우선순위는 시스템 구성 설정의 변경을 통해 조정될 수 있다.
출력 파일 이미지 렌더링을 위한 제3자 어플리케이션의 이용: 이 시스템은 출력 이미지를 렌더링하기 위해 제2자 어플리케이션 역시 이용할 수 있다.
다중 출력 렌더링 알고리즘 지원: 이 시스템은 입력 문서의 특정 특징에 따라 상이한 방법을 이용한다. 이는 인쇄 툴 및 프린터 드라이버를 갖는 백그라운드 서비스(background service), 어플리케이션 제어 핸들러를 갖는 포그라운드 키스트로크 시뮬레이션(foreground keystroke simulation), 또는 렌더링을 위한 변환기(translator)를 이용할 수도 있다.
다중 출력 채널 지원: 이 시스템은 프린터 채널로의 인쇄, 팩스 수신자로의 팩스 송신, 발신 장치 상의 출력 이미지 미리보기, 및 이메일 목적지로의 출력 송신을 포함하는(이에 한정되는 것은 아님) 다중 출력 채널을 지원한다. 이메일 목적지 출력 채널이 선택되면, 문서는 이메일 몸체에 포함될 수 있고, 또는 첨부로서 송신될 수도 있다.
총 시스템 신뢰도를 향상시키기 위한 윈도우 핸들러: 이 시스템은 포그라운드 출력 렌더링 옵션이 이용될 때 발생될 수도 있는 각종 팝업 다이얼로그 박스를 처리하기 위해 윈도우 핸들러를 이용한다. 이는 시스템이 장시간 동안 완전 무인으로 동작하는 것을 허용한다.
이용자 프로파일 관리
이 시스템은 웹 또는 모바일 장치 인터페이스를 이용하여 이용자가 그들의 개인적인 프로파일을 관리하도록 해준다. 이하는 관련된 동작의 리스트이다.
웹 및 모바일 장치 인터페이스를 통한 이용자 프로파일 관리 및 동적 업데이트: 서브스크립션 정보를 저장하는데 이용되는 메시지 센터에 의해 이용자 프로파일이 생성되고 유지된다. 이용자는 필요시 WEB(HTML) 또는 WAP(WML) 인터페이스를 이용하여 그들의 구성 설정을 변경할 수 있다. 또한, 이용자가 이용자의 홈 네트워크 내의 시스템을 액세스하기 위해 모바일 장치를 현재 이용중이라면, 시스템은 이용자의 동적 디폴트 프린터를 자동으로 업데이트한다.
이용자 프로파일 다중 과금 기록 지원: 이용자 프로파일은 상이한 종류의 과금을 부가하기 위해 시스템에 대해 다중 과금 ID를 포함한다. 즉, 이용자는 개인적인 인쇄 계좌 및 비지니스 인쇄 계좌를 모두 가질 수도 있다. 이는 조직이 출력 관리 시스템을 용이한 그들의 과금 시스템으로 통합하는것을 도울 수 있다.
이용자 모바일 서명(User Mobile Sign-in)
이 시스템은 이용자가 무선 데이터 액세스 포인트(WDAP)를 통해 로컬 네트워크 상으로 서명하는 것을 가능하게 한다. 이어서, 로컬 공유 리소스는 이용자에게 사용 가능하게 될 것이다. 이하는 관련된 동작의 리스트이다.
모바일 장치로부터의 질의 결과의 검증을 통한 이용자 인증: 이 시스템은 이용자 프로파일을 확인하기 위해 쿼리 결과의 고유 식별자를 검색한다. 이어서, 이용자 식별자에 기반하여 개별화된 인사를 송출할 수 있다.
모바일 이용자가 시스템 리소스를 액세스하는 것을 가능하게 함: 무선데이터 액세스 포인트 구성요소는 무선 이용자가 무선 접속(예컨대, 블루투스, 802.11)을 통해 네트워크로 액세스하는 것을 가능하게 한다. WDAP는 동적 디폴트 프린터 관리도 지원한다.
시스템 구성
간단한 시스템 구성(59)의 예를 도5에 나타낸다. 이 예에서, 시스템은 두개의 구역, 즉 인터넷(60)을 통해 통신이 링크되어 있는 구역(0)과 구역(1)에 배치된다. 구역(0)은 모든 공유된 공동 출력 리소스를 관리하는 루트 메시지 센터(MC0)를 포함한다. 구역(0)은 선택적인 방화벽(61)을 포함할 수도 있다. 구역(10)은 두개의 메시지 센터(MC1,MC2)를 포함한다. 메시지 센터(MC1)는 내부 방화벽(62)의 뒤에 위치하고, 사설 센터이다. 메시지 센터(2)는 방화벽(63,64) 사이의 네트워크(DMZ: demilitarized zone)에 위치된다. 프린터 서비스(PS1)도 원격 데스크탑 클라이언트(RDC1)와 같은 공중이다. 출력 장치(D1,D2)도 모두 공중이다.
도5 및 이하의 시스템 구성 도면에서, 실선은 접속 엔티니 사이에 직접 링크가 있다는 것을 나타내는 반면, 점선은 엔티티의 접속이 직접 링크 보다는 로지컬한 관계(예컨대, 등록을 통함)인 접속을 나타낸다. 예컨대, 출력 장치(D1)는 직접 링크(66)를 통해 인쇄 서비스(PS1)에 직접적으로 링크되는 반면, 출력 장치(D2)는 로지컬한 결합(68)으로 나타나듯이, 원격 데스크탑 클라이언트(RDC1)와 로지컬하게결합된다.
일부 구성에서, 이용자가 메시지 센터(MC2)를 액세스할 수 있게 하고, 메시지 센터(MC2)가 인쇄 서비스(PS1), 원격 데스크탑 클라이언트(RDC1), 및 출력 장치(D1,D2)를 액세스하는 것을 허용하게 하기 위해, 방화벽은 포트(80)(예컨대 CGI 콜을 서비스하는 아파치 웹 서비스(Apache Web Service))를 개방할 수도 있다. SSL(Secure Socket Layer)이 필요하다면, 방화벽은 포트(443)를 개방할 수도 있다. 내부 네트워크로부터 외부 무선 이용자를 차단하기 위한 보안의 이유로, 무선 데이터 액세스 포인트(WDAP1)는 내부 방화벽(60) 뒤에 위치된다. 더욱 복합한 시스템 구성(70)을 도6에 나타낸다. 이 예에서, 시스템은 구역(0), 구역(1), 구역(2)의 3개의 구역에 거쳐 배치된다. 구역(0)은 모든 공유된 공중 출력 리소스를 관리하는 루트 메시지 센터(MC0)를 포함한다. 구역(1) 및 구역(2)은 공중 및 사설 리소스 모두를 포함할 수도 있는 사설 구역이다. 구역(1)은 공중 메시지 센터(Mc1), 2개의 사설 인쇄 서비스(PS1,PS2), 2개의 사설 WDAP(WDAP1,WDAP2), 하나의 공중 원격 데스크탑 클라이언트(RDC2), 2개의 사설 출력 장치(D2,D3), 및 하나의 공중 출력 장치(D4)를 포함한다. 구역(2)은 2개의 공중 메시지 센터(MC2,MC3), 2개의 사설 인쇄 서비스(PS3,PS4), 2개의 사설 WDAP(WDAP1,WDAP2), 하나의 사설 원격 데스크탑 클라이언트(RDC5), 3개의 공중 원격 데스크탑 클라이언트(RDC3,RDC4, RDC6), 3개의 사설 출력 장치(D6,D8,D9), 및 3개의 공중 출력 장치(D5,D7,D10)를 포함한다. 구역(0)은 3개의 메시지 센터(MC1,MC2,MC3)가 등록되어진 메시지 센터(MC0)를 포함한다. 원격 데스크탑 클라이언트(RDC1)도 등록되어 있다. 각 구역 내의 사설 리소스(예컨대, 출력 장치(D2,D3,D8) 및 원격 데스크탑 클라이언트(RDC5))는 구역의 외부와는 공유되지 않는다. 공중 리소스를 관리하는 메시지 센터는 루트 메시지 센터(MC0)에 등록되어, 공중 요구를 통해 액세스될 수도 있다.
메시지 센터(MC0)는 등록된 공중 메시지 센터에 대한 리퍼런스를 포함하는 루트 레벨 메시지 센터이다. 시스템의 설치에 따라, 법인 소유의 메시지 센터(MC1,MC2)는 루트 메시지 센터에 그들 자신을 등록해야만 한다. 많은 수의 공중 리소스가 관리되어야 하는 경우, 구성은 복수 루트 메시지 센터를 포함할 수도 있다. 이러한 경우, 일실시예에서, 루트 MC는 계층적 트리로 떨어질 것이다. 일반적으로, 그러한 구현에 있어서의 루트 관리 센터의 구성은 매우 가요적이다. 한가지 분류 가능성을 도시하기 위해 지리 위치를 이용하면, 트리 계층의 하부 레벨은 특정 영역(예컨대, 캘리포니아주, 미네소타주, 타이완시, 광동시)으로 대응할 수 있고, 제2 하부 레벨은 더 큰 지역 MC(예컨대, 미국 MC, 중국 MC)로 일부 지역 MC의 그룹일 수 있고, 계층에서 그 다음 큰 레벨은 더 큰 지역 MC(예컨대, 아메리카, 아시아, 유럽)로 제2 하부 레벨에서의 일부 MC의 그룹일 수 있고, 끝으로 계층은 전체 도메인을 나타내는 마스터 MC로 될 것이다. 유사한 접근법이 법인, 개인, 및 정부의 용어로 메시지 센터 계층을 셋업하기 위해 적용될 수도 있다.
등록된 메시지 센터는 공중 출력 리소스에 대해 루트 메시지 센터에 질의할 수 있다. 일실시예에서, 탐색은 다음의 RDC 파라미터, 즉 클라이언트의 이름, 클라이언트의 짚 코드, 또는 클라이언트의 상태 등에 기반할 수도 있다. 탐색은 구역 설명자 또는 구역 형태에 기반할 수도 있다. 게다가, 장치 리소스 탐색은 장치 리소스 이름 또는 장치 리소스 설명에 기반할 수도 있다. 구역(0) 루트 레벨 메시지 센터가 탐색 요구를 수신하면, 그 데이터베이스에서 발견된 리록의 식별자를 회답한다. 이어서 다음의 탐색은 더욱 상세한 정보를 회답하기 위해 조건(qualification)으로서 이들 식별자를 이용한다.
도1을 참조하여 메시지 센터를 더욱 상세하게 설명한다. 원격 데스크탑 클라이언트 및 인쇄 서비스는 그들의 출력 리소스를, 구성요소 등록 및 등록해제 구성요소(10)를 통해 이들 서비스로의 액세스를 제공하는 메시지 센터에 등록한다. 등록 프로세스 동안, 출력 리소스 형태(예컨대, 프린터, 플로터등)가 대응하는 형태의 판정 데이터에 의해 판정된다. 메시지 센터는 이들 출력 리소스를 수집하고, 루트 레벨메시지 센터에 공중인 것을 등록한다. 루트 레벨 센터는 충분한 정보를 갖는 각각의 등록된 공중 출력 장치에 대한 기록을 생성하고, 다른 메시지 센터는 리소스를 원격으로 액세스하기 위해 대응하는 리퍼런스로서 이 기록에 포함된 데이터를 이용할 수도 있다.
출력 장치가 메시지 센터로부터 그 자신을 분리하기를 원할 때, 메시지 센터로 등록 해제 요구를 송신한다. 따라서, 메시지센터는 루트 메시지 센터로부터 출력 장치를 등록해제한다. 출력 장치가 공중 리소스라면, 루트 메시지 센터 데이터베이스 내의 대응하는 공유 기록도 제거된다. 작업 요구 접수 태스크(12)는 메시지 센터가 작업 요구를 수신하는 것을 가능하게 한다. 일실시예에서, 메시지 센터는 작업 요구 제공을 실시할 수 있는 CGI 스크립트의 세트를 실행하는 아파치 웹 서버(Apache Web Server)를 채용한다. CGI 스크립트는 인쇄 작업을 메시지 센터 내의 시스템 작업 큐에 추가한다. 작업 큐 엔트리가 일단 생성되면, 작업 제공은 완료된 것으로 고려된다.
작업 요구가 제공되고 나면, 요구의 제어는 작업 요구 프로세스 태스크(14)에 의해 수행된다. 작업 요구가 시스템에 진입되면, 메시지 센터는 원격 스토어 상의 원격 소스의 참조하여 소스 데이터를 수집하거나, 제공기는 로컬 소스를 메시지 센터로 전송할 것이다. 이어서, 메시지 센터는 인쇄 서비스를 위치시켜 소스 데이터에 대응하는 출력 이미지 파일을 예정된 출력 장치로 렌더링 한다.
출력 이미지 파일이 생성된 후, 인쇄 서비스는 파일 리퍼런스를 메시지 센터로 회답하고, 이어서 메시지 센터는 렌더링된 이미지를 출력 장치로 송신하기 위해 대응하는 RDC를 호출한다. RDC 또는 예정된 장치가 사용가능하지 않다면, 인쇄 요구는 연기된다. 이어서 시스템은 구성가능한 재시도 기간에 의해 정의된 바와 같이 인쇄 요구를 RDC로 재송신 하기 위해 시도한다. 이들 동작은 작업 출력 스케줄링 및 큐링(Qeueing) 태스크(16)에 의해 조정된다.
작업 출력 요구가 출력 장치로 송신된 후, 작업 상태는 작업 출력 상태 모니터링 태스크(18)를 통해 메시지 센터로 회답된다. 이어서, 메시지 센터는 그 상태를 업데이트하고, 현재의 작업 출력 상태의 이용자에게 알려준다. 하나의 현재 구현에 있어서, 시스템은 다음의 작업 상태, 즉 DOCUMENT_DONE, INPUT_PENDING, RESOURCE_WAIT, IN_PROGRESS, COMPLETE, CANCEL_BY_USER, 및 ERROR를 지원한다.
피어(peer) 메시지 센터 태스크(20)에 따라, 시스템 아키텍처는 각종 동작에 대한 P2P 메시지 센터 통신을 허용한다. 피어 메시지 센터 사이의 인터액션은구역(0) 룩업 질의, 문서 라우팅 요구, 문서 인쇄 요구, 및 상태 복원 응답(status back replies)을 포함한다.
2개의 메시지 센터 인터액션의 예를 도7 및 도8에 나타낸다. 도7에서의 예는 공중 장치로 임의의 일련의 요구를 준비하기 위해 공중 장치를 그의 홈 메시지 센터로 접속하기 위해 이용자가 어떻게 요구하는지를 나타낸다. 질의 순서는 아래와 같이 진행된다.
1. 이용자(U1)는 공중 장치 접속 요구를 이용자의 홈 메시지 센터(MC1)에 제공한다. 이 공중 장치(D2)는 루트 메시지 센터 접속 장치일 수도 있다.
2. 이용자의 홈 메시지 센터(MC10)는 출력 장치로의 액세스를 위해 루트 메시지 센터(MC0)에 질의한다.
3. 루트 메시지 센터(MC0)는 특정 출력 장치로의 경로를 위치시키고, 그 원격 데스크탑 클라이언트(RDC1)에 접속 요구를 송신한다.
4. 원격 데스크탑 클라이언트(RDC1)는 이용자의 홈 MC(MC1)에 접속하고, 따라서 접속이 이루어진다.
도8에 나타낸 예는 P2P 메시지 센터 요구에 대응한다. 순서는 다음과 같다.
1. 이용자(U1)는 공중 장치 접속 요구를 이용자의 홈 메시지 센터(MC1)에 제공한다. 이 공중 장치(D2)는 다른 피어 메시지 센터(MC2)에 등록될 수도 있다.
2. 이용자 홈 메시지 센터(MC1)가 루트 MC(MC0)에 질의한다.
3. 루트 메시지 센터(MC0)는 루트 메시지 센터(MC0)로부터 조회를 수신하고, 루트 메시지 센터(MC0)로 응답을 송신한다.
5. 루트 메시지 센터(MC0)는 "OK" 응답을 수신하면, 이용자 홈 메시지 센터(MC1)로 경로 정보를 송신한다.
6. 예정된 메시지 센터(MC2)가 이용자의 홈 MC(MC1)에 접속되고, 따라서 접속이 이루어진다.
루트 레벨 메시지 센터 대화형 태스크(22)에 따르면, 루트 레벨 메시지 센터의 개념은 공중 출력 리소스 공유를 촉진한다. 장점으로서, 루트 레벨 메시지 센터는 신속한 공중 리소스 룩업을 위해 중심 위치를 제공한다. 이러한 메커니즘을 지원하기 위해, 비-루트 레벨 메시지 센터는 필요시 다른 공중 리소스에 대해 질의하고, 또한 그들의 공중 리소스를 알리기 위해 루트 레벨 메시지 센터와 인터액션 해야만 한다.
원격 데스크탑 클라이언트는 메시지 센터가 출력 장치로 작업 요구를 송신하는 것을 돕는다. 보안 위험을 감소시키는 방식으로 총 시스템을 구성하는데 이용될 수도 있다. 즉, 보안 출력 장치에 대한 내부 RDC를 셋업하고, 공중 출력 장치에 대한 외부 RDC를 셋업한다. 이들 동작은 원격 데스크탑 클라이언트 관리 태스크(24)에 의해 제어된다.
메시지 센터는 다중 인쇄 서비스로 접속될 수 있다. 이러한 아이디어는 출력 장치를 보다 효율적으로 관리하기 위해 하나의 인쇄 서비스를 대신하여 인쇄 서비스 세트를 이용하는 것이다. 메시지 센터는 이들이 출력 이미지를 생성하는 핵심적인 구성요소이기 때문에 이들 인쇄 서비스와 밀접한 관계를 유지한다. 이들 인터액션은 인쇄 서비스 관리 태스크(26)에 의해 제어된다.
블루투스 및 802.11-인에이블 방식의 장치 등의 무선 장치를 지원하기 위해, 이 시스템은 하나 또는 그 이상의 무선 데이터 액세스 포인트를 배치한다. 각각의 WDAP는 관리를 위해 대응하는 메시지 센터를 필요로 하는 설명 및 정보의 세트를 갖는다. 즉, 각각의 무선 데이터 액세스 포인트의 동적 디폴트 출력 장치는 MC에 대응하는 WDAP에 의해 유지된다. 이들 오퍼레인션은 무선 데이터 액세스 포인트 관리 태스크(28)에 의해 제어된다.
메시지 센터는 이용자 프로파일 관리 태스크(30)에 의해 묘사되는 바와 같이, 로그인 인증을 위한 이용자 프로파일 및 약간의 디폴트 서비스 설정을 유지한다. 즉, 각 이용자에 대한 정적 디폴트 프린터 및 동적 디폴트 프린터는 이용자 프로파일에서 정의된다. 이용자는 표준 웹 인터페이스 또는 장치 인터페이스를 통해 그들의 프로파일을 변경할 수 있다.
이용자 인터페이스 관리 태스크(32)는 시스템에 의해 제공되는 각종 이용자 인터페이스를 제어한다. "소비자" 이용자 인터페이스는 서비스 요구를 실시하기 위해서, 또한 그들의 계정을 관리하기 위해 이용자에게 이용된다. 일실시예에서, 소비자 인터페이스는 홈 이용자에 대해 하나의 세그먼트를 가지며, 게스트 이용자에 대해 다른 세그먼트를 갖는다. 게스트 이용자 인터페이스는 보안 이유로 인하여 특정 조건하에서 시스템 리소스에 대해 제한된 액세스를 제공한다. 이 시스템은 또한 디버깅 및 유지보수의 목적으로, 또한 각종 시스템 구성요소와 파라미터를 셋업하기 위해 관리 이용자 인터페이스를 갖는다.
인쇄 서비스는 도2에 나타낸 5개의 주요 태스크를 수행한다. 렌더링 출력 이미지 태스크(34)에 따르면, 인쇄 서비스가 작업-렌더링 요구를 수신하면, 무-드라이버(driverless) 인쇄(DP) 서버라고 불리는 내부 구성요소가 소스 데이터를 수집하고, 이 데이터를 그 DP 서버 큐에 배치시킨다. 이어서, DP 서버는 적당한 드라이버를 위치시키기 위해 DPS 인쇄 모듈을 호출하고, 출력 이미지를 생성한다. DPS 인쇄 모듈은 내부 출력 큐로 출력 이미지를 보내고, 제어를 DP 서버로 되돌린다. 이들 동작을 이하에 더욱 상세히 설명한다.
DPS 인쇄 모듈이 DP 서버로 제어를 되돌리면, DP 서버는 상태 모니터 모듈을 호출한다. 목적지 장치가 인쇄 서비스에 지역적으로 접속되지 않으면, 태스크(36)에 따라 상태 모니터는 출력 이미지를 공유 리포지토리에 기록한다. 이어서, DPS 인쇄 모듈은 제어를 DP 서버로 되돌린다. 목적지 장치 지역적으로 접속된 장치라면, 이어서 상태 모니터는 태스크(38)에 따라 출력 이미지를 장치로 송신한다. 이어서, DPS 인쇄 모듈이 제어를 DP 서버로 되돌린다. 태스크(40)에 따라 상태 모니터가 작업 상태를 DP 서버로 되돌리면, 작업 상태는 다시 메시지 센터로 포워딩된다. 로컬 출력 장치 관리 태스크(42)는 인쇄 서비스가 지역적으로 접속된 출력 장치를 지원하도록 해준다. 이는 메시지 센터로/메시지 센터로부터 장치 등록 및 등록해제를 제어한다.
도3을 참조하면, 원격 데스크탑 클라이언트는 장치 등록 및 등록해제 태스크(44)를 통해 장치를 메시지 센터로 접속하는 관리를 돕는다. 등록을 위해, 원격 데스크탑 클라이언트는 장치 등록 요구를 송신하여 메시지 센터와의 결합(association)을 설정한다. 등록해제를 위해, 원격 데스크탑 클라이언트는 장치 등록해제 요구를 송신하여 메시지 센터로부터의 결합을 제거한다.
원격 데스크탑 클라이언트는 태스크(46)에 따라 출력 이미지 파일에 대한 리퍼런스를 갖는 메시지 센터로부터 작업 출력 요구를 수신한다. 원격 데스크탑 클라이언트는 출력 이미지 파일을 검색하고, 이들을 예정된 출력 장치로 송신한다. 리퍼런스가 이용되지 않으면, 메시지 센터는 출력 데이터를 원격 데스크탑 클라이언트로 직접 전송한다. 작업 출력이 종료되면, 원격 데스크탑 클라이언트는 작업 출력 상태를 업데이트할 것을 메시지 센터에 통보하고, 태스크(48)에 따라 이용자에게 알린다.
도4를 참조하면, 각각의 무선 데이터 액세스 포인트는 다음의 주요 태스크를 수행한다. 무선 데이터 액세스 포인트는 시스템에 링크되기 위해서 그 자신을, 구성요소 등록 및 등록해제 태스크(50)를 통해 제어되는 메시지 센터에 등록해야만 한다. WDAP 등록의 목적은 WDAP 디폴트 출력 장치(예컨대, 가까운 출력 장치)의 메시지 센터에 알리기 위함이다. 이는 메시지 센터가 모바일 이용자의 동적 디폴트 프린터를 결정하는 것을 돕는다. 결합을 해제하기 위해, 태스크(50)는 등록해제 요구를 동일한 메시지 센터로 송신한다.
무선 장치가 유선 네트워크를 액세스하기 위해서는, 요구를 수신하고, 요구를 무선 패킷으로부터 유선 패킷으로 변환하기 위한 액세스 포인트가 있어야만 한다. WDAP 서브는 시스템에 대한 데이터 액세스 포인트이다. 비-셀룰러 장치 무선 요구는 태스크(52)에 따라 무선 데이터 액세스 포인트를 통해 시스템으로 들어간다.
무선 데이터 액세스 포인트가 접속 요구를 수신하면, 무선 데이터 액세스 포인트는 이 요구를 IP 패킷으로 변환하고, 이어서 태스크(54)에 따라, IP 패킷을 요구에 의해 정의된 목적지로 송신한다. 그 대신, 시스템 응답은 태스크(56)에 의해 제어된다. 이용자가 제1 WDAP에 근접한 제1 위치로부터 제2 WDAP에 근접한 제2 위치로 이동하면, 시스템은 제2 WDAP를 통해 상이한 장치 정보 세트를 이용자에게 회답한다. 따라서, WDAP의 키 응답(responsibility) 중 하나가 그 디폴트 출력 장치를 표시하고, 장치 정보가 동적으로 생성될 수 있도록 기록 출력 장치 지리적 관련 태스크(58)에 따라 메시지 센터와 통신한다.
상술한 바와 같이, 시스템은 비-블루투스식 장치(이들은 블루투스-인에이블 방식의 장치임)가 이 시스템과 작업할 수 있게 하기 위해 필요에 따라 블루투스 게이트웨이 및 블루투스 장치 에뮬레이션을 이용할 수도 있다. 원하다면, 블루투스 게이트웨이 기능은 하드웨어 비용을 절감하기 위해 아래에 기술되는 바와 같이 무선 데이터 액세스 포인트에 내장될 수도 있다.
동작의 이론
이 섹션은 시스템의 공동 동작 뿐만 아니라 요구 데이터 흐름을 설명한다. 다음은 이 시스템의 주요 특징 및 필수사항을 나타낸다.
1. 모든 이용자는 홈 메시지 센터와 연결된다.
2. 이 시스템은 두개의 메시지 센터 사이, 메시지 센터와 인쇄 서비스 사이, 그리고 메시지 센터와 RDC 사이에 보안을 실시할 수도 있다.
3. 메시지 센터는 리소스의 정규 이용자 및 게스트(방문자) 이용자 액세스 제어를 제공한다.
4. 각각의 WDAP는 이와 결합되는 구성가능한 디폴트 프린터를 갖는다.
5. WDAP를 통해 시스템을 액세스할 때, 이용자가 그 프로파일 내의 이용자 항목이 동적 시스템 겹쳐 쓰기를 허용하면, 이용자의 디폴트 프린터는 이용자가 현재 접속되어있는 WDPA에 기반하여 변경될 것이다.
6. 게스트 이용자 인터페이스는 그 구역 내의 방문객 인쇄를 지원하는 메시지 센터 상에 구현될 수도 있다. 이러한 인터페이스는 이용자가 등록할 필요가 없고, 프로파일을 생성할 필요도 없다. 따라서, 이는 정적 디폴트 프린터 인쇄를 지원하지 않는다. 그러나, 이 시스템은 방문객 동적 디폴트 프린터 인쇄는 지원한다. 필요에 따라, 이용자는 목적지 프린터를 특정할 수 있다.
이 시스템의 모듈러 아키텍처 설계 및 연장 가능한 데이터베이스 개요(schema)는 복합한 보안성 개요가 구현될 수 있게 한다. 먼저, 이용자 인증에 있어서, 가입자(subscriber) 데이터베이스는 지원되는 액세스 장치를 통해 시스템으로 진입한 이용자 로그인 데이터를 확인하기 위해 이용되는 이용자 프로파일을 포함한다. 확인이 실패하면, 추후 리퍼런스 또는 조사(investigation)를 위해 시스템상으로 기록이 로그되고, 로그 요구가 거절된다. 게다가, 메시지 센터는 높은 레벨의 클라이언트 및 서버 인증을 위해 공중 키 기반구조 지원을 구현할 수 있다. 두 번째로, 데이터 암호화 지원에 있어서, 각각의 모듈은 컨텐츠 데이터를 보호하기 위해 암호화를 구현할 수 있다. 암호화는 메시지 센터 대 파일 스토어, 인쇄 서비스 대 메시지 센터, 출력 리포지토리 대 인쇄 서비스, 및 RDC 대 출력 리포지토리 사이에 실시될 수 있다. 세 번째로, 부인 방지(non-repudiation) 구현 하에서, 시스템은 각각의 가입자에 고유한 ID를 할당한다. 이용자가 시스템에 요구를 제공하면, 요구는 이용자 ID 와 시각소인(timestamp)을 즉각 태그한다. 이것이 작업 제공 요구라면, 중복 카피가 시스템에 생성되고, 로그되어, 추후 리퍼런스 및 과금 목적을 위해 획득되어 진다.
전술한 보안 구현에 더하여, 모듈러 및 이산 구조의 다른 이점은, 관리자가 각 조직에 대한 특정 요구에 기반하여 보안 설정을 개별화할 수 있다는 점이다. 예컨대, 가상 사설 네트워크(VPN)는 공유 파일 서버를 메시지 센터에 링크하기 위해 이용될 수도 있다. 마찬가지로, VPN은 메시지 센터와 원격 데스크탑 클라이언트 사이에 구현될 수 있다. 이 시스템 아키텍처는 소프트웨어 및 하드웨어 VPN 구성을 모두 지원한다. 전체 시스템은 인증 및 인증화를 제공하고, 데이터 무결성 및 데이터 프라이버시를 보호하며, 부인 방지 요구사항을 만족시킬 뿐만 아니라 공중 키 인프라를 지원하도록 구성될 수 있다.
RDC 클라이언트 등록 요구에 따라 RDC와 메시지 센터 사이의 인터액션을 도시하는 흐름도를 도9에 나타낸다. RDC는 세션 패킷을 메시지 센터로 전송하여 클라이언트 등록 프로세스를 개시한다. 일실시예에서, 세션 패킷은 클라이언트 설명자 문자열, 클라이언트 타입, 파일 이름, 중간 이름, 끝 이름, 어드레스1, 어드레스2, 도시, 주, 우편번호, 이용자ID, 보호된 패스워드, 및 이메일 값을 포함하는, 메시지 센터 상의 클라이언트를 정의하기 위해 각종 파라미터를 포함한다. 성공시, 클라이언트 식별자(CID)는 RDC로 되돌려진다.
RDC 프린터 등록 요구에 대응하는 흐름도를 도10에 나타낸다. 전술한 프로세스에서와 같이, RDC는 세션 패킷을 메시지 센터로 송신하여 프린터 등록 프로세스를 개시한다. 이 패킷은 메시지 센터 상의 클라이언트를 식별하는 데이터를 포함하고, 등록 요구된 리소스(예컨대, 출력장치)의 상태를 제공한다. 성공시, 프린터 리소스 식별자(PID)가 RDC로 되돌려진다.
원격 데스크탑 클라이언트는 다른 공중 리소스를 액세스하고, 그 자원을 이용 가능하게 하기 위해 MC에 등록되어야 한다. 장치 리소스 정의를 메시지 센터로 제공하는 RDC에 대응하는 흐름도를 도11에 나타낸다. RDC는 메시지 센터에 정의된 장치 리소스를 갖기 위해 장치 리소스 정의 패킷을 메시지 센터로 송신한다. 일반적으로, 이 정보는 장치 이름, 장치 타입, 장치 설명자, 및 장치 상태를 포함한다.
클라이언트가 원격 공중 장치를 액세스하기를 원하면, 먼저 공중 장치 질의를 통해 장치를 위치시켜야 한다. 이 동작은, 도12의 흐름도에서 나타낸 바와 같이, 루트 메시지 센터에게 이용 가능한 공중 장치의 리스트에 대해 질의하기 위해 홈 메시지 센터를 필요로 한다. 이어서, 메시지 센터는 그러한 공중장치가 구역 내에서 지원되는 지를 판정한다. 이는 홈 메시지 센터가 그러한 공중 장치를 지원하는 등록된 인쇄 서비스를 위치시킬 필요가 있다는 것을 의미한다. 질의에 응답하여, 이용 가능한 공중 장치의 리스트가 요구자에게 회답된다. 공중 장치를 지원하는 등록 인쇄 서비스가 발견되지 않으면, 지원되지 않는 공중 장치는 그 리스트에 포함되지 않는다.
도13 및 도14는, 홈 도메인 내의 인쇄 서비스에 직접 접속되는(예컨대, 도6에서 U1 -> D2 또는 U1 -> D3) 출력 장치로 그 홈 도메인 내의 이용자에 의해 발행된 리퍼런스에 의한 인쇄(PBR: Print By Reference) 작업 요구에 대응하는 프로세스 흐름도 및 구성요소 인터액션 도면을 각각 나타낸다. PBR 작업 요구에서, 이용자는 타겟 목적지 프린터에서 인쇄되는 원격 스토어(74)상에 저장된 문서(72)(원격 소스)를 가질 수 있고, 여기서 원격 배치되어 저장된 무서 및 목적지 프린터는 이용자 인터페이스(76)를 통해 선택될 수도 있다.
비-PBR 작업 요구에 대응하는 프로세스 흐름도를 도15에 나타낸다. 이 예에서, 모든 동작은 원격 소스를 검색하기 보다 소스 데이터가 이용자 장치로부터 메시지 센터로 업로드되는 것을 제외하면 PBR 작업 요구와 동일하다.
도16 및 도17은 홈 도메인 내의 원격 데스크탑 클라이언트에 접속되는(예컨대, 도6에서 U1 -> D4) 로컬 프린터로 그 홈 도메인 내의 이용자에 의해 제공된 PBR 작업 요구에 대응하는 프로세스 흐름도 및 구성요소 작호작용 도면을 각각 나타낸다. 이 경우, 출력 이미지는 인쇄 서비스에 의해 렌더링되고, 출력 이미지 파일(80)로서 출력 리포지토리(78)에 저장된다. 이어서, 인쇄 요구는 적절한 RDC(예컨대, RDC2)로 송신되고, 이어서 리포지토리로부터 출력 이미지 파일을 검색하고, 동일한 것을 출력 장치(예컨대, D4)로 제공하여 물리적으로 렌더링 한다. 종료됨에 따라, 인쇄 종료 통보가 메시지 센터를 통해 다시 이용자에게 송신되고, 이용자 인터페이스(76) 상에 표시된다.
도18 및 도19는 루트 메시지 센터 공중 출력 장치(D1) 상으로 인쇄되어질,그 홈 도메인(예컨대, 구역1) 내의 이용자에 의해 제공되는 PBR 작업 요구에 대응하는 프로세스 흐름도 및 구성요소 인터액션 도면을 각각 나타낸다. 프로세스는 공중 장치 질의를 수행하기 위해 UI 활성 이용자 인터페이스(76)를 이용하여 개시된다. 본질적으로, 질의는 이용 가능한 공중 장치의 리스트를 회답하기 위한 것이다. 필요에 따라, 이용자는 알려진 공중 장치를 선택할 수도 있고, 질의는 장치가 공중 액세스에 대해 이용가능한지를 확인하는 태스크를 수행한다. 이용자는 그 홈 메시지 센터(MC1)로 질의를 제공하고, MC는 이 질의를 루트 MC로 포워딩한다. 이어서, 루트 MC는 그 데이터베이스를 검사하여, (질의와 함께 송신된 이용자 인증 정보 및 이용자 주요 프린터의 사전 구성 리스트를 기반하여)이용자에 대해 모든 프린터가 이용가능한지를 판정한다. 로컬 인쇄 서비스는 홈 메시지 센터로의 출력 장치 경로와 함께 식별된다. 이어서, 공중 장치 정보는 다시 이용자에게 송신되고, 이용자는 공중 출력 장치를 선택하여, 홈 MC로 인쇄 작업 요구를 제공할 수 있다.
인쇄 작업 요구를 수신하면, 홈 MC는 인쇄될 문서를 검색하고(이 경우, 문서는 로컬 소스이므로, 이는 발신 장치로부터 MC로 송신됨), 렌더링 요구와 함께 문서를 예정된 인쇄 서비스(PS1)로 송신한다. 이어서, 인쇄 서비스는 문서의 출력 이미지를 렌더링하고, 출력 리포지토리(78)에 이를 저장한다. 이어서, 렌더링이 종료되었음을 알리는 통보가 PS로부터 다시 홈 MC로 송신됨에 따라, 홈 MC는 출력 리포지토리로부터 렌더링된 데이터(예컨대 출력 이미지 파일(80))를 검색하고, 출력 이미지 데이터와 함께 인쇄 요구를 예정된 원격 데스크탑 클라이언트(RDC1)로 송신한다. 이어서, RDC는 출력 이미지 데이터를 예정된 출력 장치(D1)로 송신함에 따라,하드-카피 출력이 렌더링되고, 인쇄 종료 통보가 RDC로 회신된다. 이어서, 인쇄 종료 통보는 루트 및 홈 MC를 통해 다시 이용자에게 포워딩된다.
메시지 센터 액세스 메커니즘
일반적으로, 홈 메시지 센터를 액세스하기 위한 3가지 메커니즘이 있다. 이들은 유선 네트워크 접속, 무선 네트워크 접속, 및 무선 웹 셀룰러 접속을 포함한다. (본 발명에 이용된 바와 같이, 셀룰러 접속은 셀-기반 인프라를 통해 구현된 셀룰러 및 SC 네트워크를 포함하는 모든 무선 접속을 포함한다.) 예컨대, 셀룰러 폰(100), PDA(102), 및 대화형 페이저(104)를 포함하는 무선 웹-인에이블 방식의 장치의 이용자는 복수의 셀룰러 타워(106) 및 셀룰러 서비스 프로바이더 네트워크 동작 센터(108)를 포함하는 셀룰러 네트워크를 통해 메시지 센터(MCn)를 액세스할 수 있다.
미국에서, 무선 인터넷(예컨대, 무선-웹) 액세스는 일반적으로 WAP-인에이블 방식의 장치와 함께 동작하는 무선 어플리케이션 프로토콜(WAP: Wireless Application Protocol)을 이용하여 제공된다. 아시아에서, 무선 인터넷 액세스는 일반적으로 i-모드 프로토콜을 이용하여 제공된다. i-모드 프로토콜을 이용하여 데이터를 액세스하기 위해서, 무선 장치는 i-모드 장치이어만 하고, 또는 i-모드 및 WAP 연결성(connectivity)을 모두 제공해야 한다. 기타 적게 이용되는 프로토콜 역시 세계의 각 지역에서 이용될 수도 있다. 도20에 나타낸 실시예에서, 이러한 무선-웹 접속은 WAP 게이트웨이 서버(112)에 의해 호스트되는 WAP 게이트웨이(110)를 통해 더 사용될 수 있다. 필요에 따라, i-모두 게이트웨이와 같은 다른 타입의 무선-웹 게이트웨이가 무선 서비스 프로바이더에 의해 제공되는 설비에 따라 이용될 수도 있다.
WAP-인에이블 방식의 장치는 이러한 장치에 의해 이용되도록 설계되는 컨텐츠를 제공하는 각종 인터넷 사이트로부터 데이터를 액세스할 수 있다. 이하에 더 상세히 설명되는 바와 같이, 이 데이터는 일반적으로 무선 마크업 랭귀지(WML:Wireless Markup Language) 데이터로서 장치로 전달된다. WML은 저해상도 디스플레이를 고려하여 제한된 브라우징 능력 및 무선 핸드폰, PDA, 및 포켓 PC 와 같은 현재의 핸드헬드(handheld) 장치 상에서 이용 가능한 제한된 네비게이션 능력을 돕도록 설계되는 특정 마크업 랭귀지를 포함한다. WML은 HDML(Handheld Device Markup Language)를 포함하고, 그 루트를 XML(extensible Markup Language)로 추적할 수 있다. 이는 이용자 정의 확장을 지원하는 메타-랭귀지(meta-language)를 더 포함한다.
WAP-인에이블 방식의 장치는 WAP 게이트웨이(WAP 게이트웨이(110))를 통해 무선 인터넷 컨텐츠를 제공하는 각종 웹 사이트를 액세스하도록 제공되고, 하나 또는 그 이상의 WAP 게이트웨이 서버(112)를 이용하여 구현된다. 일반적으로, 서비스 프로바이더가 WAP 게이트웨이 설비를 고유할 수도 있지만, 각각의 WAP 게이트웨이는 무선 인터넷 액세스를 지원하는 영역 내의 각종 서비스 프로바이더에 의해 동작된다. 즉, WAP 게이트웨이 서버는, 무선 웹 사이트로부터 HTTP(Hypertext Transport Markup Language)를 통해 검색된 HTML(HyperText Markup Language)로 변환하는 것(이는 WML 내의 무선 웹 컨텐츠를 직접적으로 인코딩하지 않음)을 포함하는, WAP-인에이블 방식의 장치와의 인터액션을 돕는 기능을 제공하는 각종 소프트웨어 모듈 및/또는 어플리케이션을 수행한다. 이들 기능은 WAP 인코더 스크립트 컴파일러, HTML 데이터를 WML로 변환하는 프로토콜 어댑터를 포함한다.
무선 인터넷 컨텐츠를 생성하기 위해, 웹 사이트는 일반적으로 그 사이트 상의 페이지의 일부분 또는 모든 부분의 특정 텍스트-전용(text-only) 또는 낮은 그래픽 버전을 생성해야만 한다. 현재, 인터넷 웹 사이트의 일부분만이 무선 인터넷 컨텐츠를 제공하지만, 이들 사이트의 수는 더욱 많은 사람들이 WAP-인에이블 방식의 장치를 필요로 할 수록 급진적으로 증가될 것으로 기대된다. 텍스트 전용 또는 낮은 그래픽 컨텐츠에 대한 중대한 이유는, WAP-인에이블 방식의 장치는 일반적으로 매우 작은 저해상도 스크린을 제공하고, 통상의 무선 데이터 전송 속도가 지상-기반 네트워크를 통해 가능한 데이터 전송 속도 보다 매우 낮기 때문이다. 현재 무선 인터넷 컨텐츠의 일부분은 WAP 게이트웨이에서 WML로 변환되어야만 하는 HTML을 포함하지만, 이미 WML로 직접 인코딩된 데이터를 WAP 게이트웨이로 제공하는 웹 사이트가 많다는 것을 유념해야 한다.
도20을 참조하면, 통상의 WAP 세션은 아래와 같이 작동한다. PDA(102)와 같은 WAP-인에이블 방식의 장치를 조작하는 이용자는 "미니-브라우저"(세션에 대한 WAP 클라이언트)를 오픈하고, 이어서 WAP 서비스를 탐색하기 위해 PDA(102)의 무선 모뎀을 통해 라디오 신호(114)를 송출한다. 따라서, 이용자가 근방의 셀룰러 타워(106)를 통해 무선 인터넷 액세스 가입자 서비스를 갖는 서비스 프로바이더와접속이 이루어진다. 이어서, 이용자는 (미니 브라우저 UI(107)에 의해 묘사되는 것과 같은) 미니 브라우저에 의해 제공되는 UI를 통해 웹 사이트의 URL을 입력함으로써 이용자가 열람하고 싶은 웹 사이트를 선택한다. 이어서, 이 사이트를 액세스하기 위한 요구가 PDA(102)로부터 WAP 게이트웨이(110)로 송신된다. WAP 게이트웨이 서버(112)는 URL - 이 예에서는 HTML 데이터임 - 에 대응하는 정보를 HTTP를 통해 웹 사이트로부터 검색하고, HTML 데이터를 WML로 인코딩한다. 상술한 바와 같이, 일부 인터넷 사이트에 있어서, 데이터는 이미 WML 포맷으로 되어 있을 수도 있고, 따라서 HTML로부터 WML로의 인코딩이 필요하지 않다.
본 발명의 일실시예에 따르면, 각각의 메시지 센터(MCn)는 하나 또는 그 이상의 각각의 URL을 이하 상세히 설명되는 웹 서버(113)를 통해 호스트한다. 웹 서버(113)에 의해 호스트되는, HTML 데이터(114)와 WML 데이터(116)에 의해 묘사되는 바와 같은, URL 데이터는 메시지 센터로부터 WAP 게이트웨이로 인터넷(60) 또는 사설 네트워크 등의 통신 네트워크를 통해 지난다. 이이서, WML 데이터는 WAP 게이트웨이 서버(112)로부터 셀룰러 타워(106)를 통해 다시 PDA(102)로 송신된다. 종래 브라우징과 동일한 방식으로, 이용자는 이용자 측에 존재하는 적당한 UI 구성요소를 활성화 시켜 사이트 상의 다양한 페이지를 미니 브라우저를 통해 브라우징할 수 있고, 따라서 상술한 것과 동일한 프로세스가, 이용자에 의해 선택된 것에 대응하는 현재의 컨텐츠에 대한 이용자 인터액션에 응답하여 수행된다.
무선-웹 액세스에 더하여, 메시지 센터는 직접 지상-회선(land-line) 접속을 통해 액세스될 수도 있고, 또는 지상-회상 네트워크 및 무선 네트워크의 조합(예컨대, 802.11) 또는 블루투스 무선 링크를 통해 이용자 장치에 링크된 지상-회선 네트워크를 포함하는 통신 링크를 통해 액세스될 수도 있다. 예컨대, 퍼스널 컴퓨터(PC)(118) 및 랩탑(120)의 이용자는 메시지 센터로의 직접 네트워크 접속(예컨대, LAN 접속)을 통해, 또는 인터넷과 같은 WAN 접속을 통해 메시지 센터(MCn)를 액세스할 수도 있다. 이들 네트워크 접속 모두 컴퓨터 네트워크(122)에 의해 묘사된다. 일실시예에서, 이용자는 시스템에 의해 제공되는 서비스를 웹 페이지(126)의 세트를 통해 이하에 상세히 설명되는 바와 같은 브라우저-기반 이용자 인터페이스를 거쳐 액세스할 수 있다.
일반적으로, 이용자-인터페이스는 802.11(WiFi로 알려짐)를 더 포함하는 링크와 유사하다. 예컨대, 통상의 802.11 의 구현에 있어서, 도20에서 PDA(128)와 같은 WiFi-인에이블 방식의 이용자 장치는 WDAP(130)를 통해 유선 네트워크(예컨대, 네트워크(122))로 접속된다. WDAP는 WiFi-인에이블 방식의 장치로부터의 모든 통신을 제어하고, 일반적인 클라이언트 접속을 가지도록 네트워크에 장치가 나타나게 한다. 따라서, 동작적인 관점에서, 유선 및 WiFi 클라이언트는 메시지 센터에 동일하게 나타난다.
이 시스템은 블루투스-접속 클라이언트가 선택된 출력 장치로 인쇄하는 것을 가능하게 하지만, 다른 메커니즘을 이용한다. 이러한 메커니즘 하에서, 블루투스 에뮬레이터는 셀룰러 폰(132)과 같은 블루투스-인에이블 방식의 발신 장치를 형성하기 위해 구현되고, 블루투스 장치와 직접적으로 통신하고, 블루투스 이용자 인터페이스에 내장된 발신 장치를 변경할 필요가 없다고 고려한다. 예컨대, 이용자가비-블루투스-인에이블 방식의 프린터/팩스 장치에 인쇄하기를 원한다고 가정하면, 이 경우, 근방의 무선 데이터 액세스 포인트와의 통신에 선단 에이전트(front-end agent) 제공하는 블루투스 프린터/팩스 에뮬레이터가 구현된다. 일시시예에서, 블루투스 장치 에뮬레이터는 WDAP + 블루투스 장치 에뮬레이터(134)로 묘사되는 바와 같이 WDAP에 일체화된다. 필요에 따라, 블루투스 장치 에뮬레이터는 네트워크(122)와의 통신에 링크된 장치를 분리할 수도 있다. 일반적으로, 블루투스 장치 에뮬레이터는 메시지 센터로부터 검색되는 대응하는 출력장치 정보를 이용하여 필요한 블루투스 장치 정보(예컨대, 인쇄 및 팩스 프로파일)를 생성한다. 프로파일은 메시지 센터로부터 검색되는 리소스 정보를 이용하여 플라이(fly)상에 형성된다. 따라서, 일실시예에서, 에뮬레이터는 메시지 센터와 함께 인터페이스에 채용되는 후단(backend) 통신 채널도 포함한다. 블루투스-인에이블 방식의 장치는 상이한 액세스 포인트에서 시스템에 접속되고, 대응하는 에뮬레이터는 그 액세스 포인트에 대한 프로파일 정보에 응답할 것이다.
동일한 블루투스 장치 에뮬레이터를 통해, 블루투스 초기 인쇄 또는 팩스 프로파일 상호 운영성(interoperability) 스펙에 의해 정의되는 것 처럼, 이 시스템은 비-블루투스식 장치가 마치 블루투스-인에이블 방식의 장치인 것 처럼 동작하도록 해주고, 따라서 무선 컴퓨팅 환경에서 이들 비무선 기술-인에이블 방식의 장치를 관리하기 위해 회사에 대해 간단하고 비용 효율이 좋은 방법을 제공한다. 이들 동작은 이용자와 예정된 장치 모두에 대해 투명성을 갖는다. 게다가, 기업은 이들 리소스가 메시지 센터에 의해 관리되기 때문에 오래된 장치를 변경하거나, 교체하거나, 업그레이드할 필요가 없다.
출력관리 시스템의 리퍼런스에 의한 인쇄(print-by-reference) 능력은 블루투스-인에이블 방식의 발신 장치로 확장될 수도 있다. 예컨대, 일실시예에서, 이하에 설명할 WAP 인터페이스를 렌더링하기 위한 WML 컨텐츠는 블루투스 서비스를 통해 WAP용으로 설계된 WAP 미니 브라우저(107A)를 포함하는 블루투스-인에이블 방식의 장치에 제공될 수 있다. 이러한 장치가 가까운 장래에 일반화될 것이라고 여겨진다. 이러한 구성에서, 블루투스-인에이블 방식의 장치 이용자는 WDAP + 블루투스 장치 에뮬레이터를 통해 블루투스-인에이블 방식의 장치에 대해 동일한 WML 컨텐츠로 동작함으로써 무선-웹 이용자와 실질적으로 동일한 방식으로 시스템이 인터액션할 수 있다.
디폴트 장치 발견(Default Device Discovery)(WiFi)
이 시스템은 모바일 컴퓨팅 프로토콜을 수용하기 위해 정적 및 동적 디폴트 설정의 개념을 도입한다. 예컨대, 메시지 센터는 이용자 프로파일 내의 디폴트 장치 설정 옵션을 구현한다. 예와 같은 프린터를 이용하면, 이용자에 대해 정적 디폴트 프린터 및 동적 디폴트 프린터와 같은 두 가지 타입의 프린터가 존재한다. 전자는 이용자가 유선 접속(예컨대, PC(118))을 통해 시스템을 액세스할 때 선택되는 반면, 후자는 이용자가 무선 접속(예컨대, 블루투스, 802.11 등)을 통해 시스템을 액세스할 때 선택된다. 이용자의 클라이언트 사이트에서 이동국을 이용할 때, 이용자가 출력을 그 사무실 프린터로 송신할 가능성은 적다. 디폴트 설정을 자동으로스위칭하기 위한 액세스 방법을 이용하는 것이 더 실질적이고 편리하다. 그러나, 융통성을 고려하면, 이용자는 프로파일 구성을 통해 동적 디폴트 프린터 겹쳐 쓰기 특정을 불가능하게 할 수 있는 옵션을 갖는다.
도21은 이용자가 작업을 WDAP를 통해 제공할 때 동적 디폴트 프린터를 판정하기 위해 이용되는 동작을 설명하는 도면이다. 먼저, 무선 장치(128)의 이용자가 무선 데이터 액세스 포인트(WDAP2)로의 무선접속을 통해 시스템으로 진입한다. 도시된 예에서, 이용자는 PBR 작업 요구를 제공하는 것이라고 가정한다. 따라서, WDAP2는 PBR 작업 요구를 메시지 센터로 중계한다. 메시지 센터는 PBR 작업 요구에 대응하는 파일 스토어(136)로부터 소스 데이터를 검색한다. 메시지 센터가 WDAP2로부터 도달한 요구를 발견하고, 그 장치 데이터베이스를 검사하고, WDAP2와 결합된 동적 디폴트 프린터가 인쇄 서비스(PS1)와 결합된 출력 장치(D1)라는 것을 발견한다. 따라서, 렌더링 요구를 PS1으로 송신한다. PS1은 작업 요구를 렌더링 하고, 이어서 출력 이미지 데이터를 출력 장치(D1)로 송신한다. 출력 장치(D1)는 작업 출력을 종료하고, 태스크 완료를 PS1에 알린다. PS1은 차례대로 메시지 센터로 통보한다. 메시지 센터는 작업 요구가 성공적으로 완료되었다는 것을 이용자에게 알리기 위해 WDAP2로 응답을 송신한다. 이이서, WDAP2는 이용자의 장치로 응답을 중계한다.
디폴트 장치 발견(블루투스)
도22a 및 도22b에 도시된 이하의 경우에서, 네트워크 구성은, WDAP1 및WDAP2 가 WDAP + 블루투스 장치 에뮬레이터 장치(138,140)로 묘사된 바와 같이, 블루투스 장치 에뮬레이터를 현재 포함하고 있는 것을 제외하면 실질적으로 동일하다. 이들 모두의 경우에서, 프로세스는 다른 블루투스-인에이블 방식의 장치와의 초기 통신을 탐색하는 블루투스-인에이블 방식의 발신 장치(132)의 이용자에 의해 시작된다. 예로서, 발신 장치의 블루투스 신호는 WDAP2 + 블루투스 장치 에뮬레이터(140)에 의해 수신되고, 이는 블루투스-인에이블 방식의 발신 장치와의 통신 링크를 설정한다.
이러한 점에서, 블루투스-인에이블 방식의 장치 이용자와의 시스템의 인터액션을 가능하게 하도록 이용될 수도 있는 2가지 타입의 인터페이스가 존재한다. 즉, 기본 블루투스 UI(예컨대, 블루투스 UI(133)) 및 향상된 블루투스 UI(예컨대, 블루투스 미니 브라우저 UI(107A) 상의 WAP)가 존재한다. 기본 블루투스 UI 하에서, 에뮬레이터는 모의 블루투스-인에이블 방식의 출력 장치 또는 복수의 그러한 출력 장치로서 동작한다. 향상된 블루투스 UI 하에서, 에뮬레이터는 블루투스 상의 WAP를 통해 WAP 컨테츠가 블루투스-인에이블 방식의 장치로 공급해주는 콘딧(conduit)으로서 기능한다. 기본 블루투스 UI가 제공된다고 가정한다. 이 경우가 도22a에 도시된다. 이 예에서, 블루투스 링크를 설정한 후, 이용자는 블루투스-인에이블 방식의 출력 장치를 탐색할 것이다(또는 이용자는 블루투스 링크를 초기화하기 위해 출력 장치 탐색을 이용할 것이다). 따라서, 에뮬레이터는 루트 메시지 센터로 접속될 것이고(간접 또는 직접적으로 접속됨), 인터액션을 용이하게 하는 WDAP에 근접한 출력 장치와 관련한 정보를 검색한다. 이런 타입이 정보는 메시지 센터 데이터베이스에 저장되고, MC는 블루투스 에뮬레이션 파라미터(114) WDAP를 통해 이용 가능한 각종 출력 장치에 대응하는 에뮬레이터로 다시 되돌릴 수 있다. 선택적인 실시예에서, 에뮬레이터는 인증된 이용자를 요구할 수도 있고(또는 고유한 장치 식별자를 통해 이용자를 식별함), 이용자에게 특정한 출력 장치의 리스트를 제공한다. 이어서, 에뮬레이터는 블루투스-인에이블 방식의 발신 장치가 하나 또는 그 이상의 대응하는 블루투스-인에이블 방식의 출력 장치와 실제 직접 연결되어 있다고 생각하도록 이용 가능한 출력 장치를 에뮤레이트한다. 예컨대, 이용 가능한 출력 장치가 2가지 타입의 레이저 프린터와 하나의 텍스트 프린터를 포함하면, 에뮬레이터는 이들 3개의 프린터에 대해 블루투스 장치 에뮬레이션을 제공할 것이다. 단지 하나의 장치가 이용된다면, 이 장치는 디폴트 출력 장치로 될 것이다. 이어서, 이용자는 블루투스 UI를 통해 출력 장치를 선택하고, 소스 데이터가 블루투스-인에이블 방식의 출력 장치로 직접적으로 업로드된 것 처럼, 소스 데이터를 에뮬레이터에 업로드한다. 이어서, 에뮬레이터는 소스 데이터를 메시지 센터로 포워딩하고, 메시지 센터는 출력 이미지 데이터를 생성하기 위해 적당한 인쇄 서비스를 호출(invoke)하고, 이어서 이미지 데이터는 렌더링을 위해 선택된 출력 장치로 제공된다.
도22b에 도시된 예에 따르면, 메시지 센터에 의해 호스트된 블루투스 서비스 상의 WAP를 통해 시스템을 액세스한다. 최초로, 블루투스-인에이블 방식의 발신 장치와 에뮬레이터 사이의 블루투스 접속이 상술한 방식으로 설정된다. 이어서, 에뮬레이터는 메시지 센터로 콘택하고, 이용자로 하여금 파일 스토어(136)로부터의 소스 데이터를 선택할 수 있게 해주고, 출력 장치(D1)를 선택할 수 있게 해주는 블루투스 미니 브라우저(107A) 상의 WAP를 통해 이용자 인터페이스를 렌더링 하기 위해 WML 컨텐츠를 운반하기 시작한다. 나머지 동작은 도21의 PBR 예에서 설명한 것과 실질적으로 동일하다.
일실시예에서, 시스템은 블루투스 게이트웨이(142)를 채용하는 선택적인 구성을 포함한다. 게이트웨이는 메시지 센터가 블루투스 장치 에뮬레이터와 통신하는 것을 도와준다. 또한, 블루투스 게이트웨이는 장치와 무선 데이터 액세스 포인트 사이의 매핑 트랙을 유지하고, 맵을 메시지 센터와 동기화시킨다. 이러한 매핑은 장치 에뮬레이터로부터의 입력에 의해 계산되거나 네트워크의 스나이핑 오프(sniffing off)에 의해 계산된다.
시스템 접속 토폴리지
출력 관리의 통상적인 구현 중에 대면할 수도 있는 각종 접속 경로 및 접속 타입을 나타내는 총칭 시스템 접속 토폴리지 다이어그램(150)을 도23에 나타낸다. 실선은 지속적인 접속을 나타내는 반면, 점선은 임시 접속을 나타낸다. 구성요소 통신에 있어서, 제1 법칙은 PS와 RDC가 언제나 메시지 센터로의 접속을 개시하는 것이다. P2P 메시지 센터 통신에 대응하는 제2 법칙에 다르면, 접속은 언제나 높은 보안의 네트워크로부터 낮은 보안 네트워크로 개시되는 것이다(예컨대, 사설 네트워크로부터 DMZ, 구역1 DMZ, 구역0 DMZ). 이들 법칙이 모두 적용 가능하면, 제1 법칙이 우선된다.
다이어그램(150)에서, 다이어그램의 중간에 배치된 구역0은, 그들의 공중 리소스(예컨대, 출력장치)를 공고하여 공유하기 위해 모든 MC에 대해 집중된 리포지토리를 포함하는 루트 메시지 센터(MC0)를 포함한다.
그러므로, 구역0 내의 구성요소는 인커밍 접속 요구를 수락하기 위해 DMZ 내에 적당한 보안 보호를 갖고 바람직하게 위치될 것이다. 구역0의 양측에 배치되는 구역1 및 구역2는 각각이 완전 보장된 서브넷(예컨대, 사설 네트워크 부분)과 DMZ 부분을 갖는 2개의 독립 네트워크를 포함한다. 구역1 및 구역2의 DMZ 내의 MC(MC12,MC22)는 공중 및 공유 가능한 리소스를 관리하고, 따라서 "공중" MC라고 언급된다. 내부 통합 방화벽(152,154) 뒤의 사설 서브넷 내의 MC(각각, MC21,MC11)는 사설 리소스를 관리하고, 따라서 "사설" MC라고 언급된다.
다음은 구성요소가 본 발명의 일실시예에 따라 어느 곳에 귀속될 수 있는지를 나타내는 구성요소 배치 위치 맵 테이블이다. "공중 네트워크"는 인터넷에 직접 접속되는 방화벽 보호가 없는 네트워크로 언급된다. 이는 언제나 인커밍하는 모든 접속 요구를 수락한다. "DMZ"는 제한된 보호를 갖는 사설 네트워크라고 언급된다. 이는 요구가 일부 알려진 포트를 통해 패치(patch)되면 인커밍 접속 요구를 언제나 수락한다. "사설 네트워크"는 강력한 방화벽 보호를 갖는 네트워크로 언급된다. 이는 전부는 아니지만 대부분의 인커밍 접속 요구를 언제나 차단한다. 사설 네트워크에서의 로케이팅은 인커밍 접속요구가 차단되는 것을 의미한다. 따라서, 리소스 할당은 작업 요구를 브리지하기 위해 프록시(예컨대, DMZ MC 또는 루트 MC)의 사용을 통해 촉진된다. MC 및 PS는 명백한 보안상의 이유로 인해 공중 네트워크에 배치되어선 안된다. 루트 메시지 센터(예컨대, MC0)는, 공중 MC가 등록되는 것을 허용하기 위해 적어도 제한된 공중 액세스를 제공해야만 하기 때문에, 사설 네트워크에 배치될 수 없다. RDC는 리소스 공유의 넓은 범위를 위해 공중 네트워크 내에 위치될 수도 있다. 그러나 추천하지는 않는다.
다음은 다이어그램(150)에서 구성요소 배치 위치를 설명하는 구성요소 배치 위치 분류 맵 테이블이다.
접속 타입, 접속 개시자, 및 데이터 전송 타입을 포함하고 있는, 구성요소가 어떻게 서로 통신하는지를 설명하는 MC 네트워크 접속 맵의 세트를 표3 내지 표6에나타낸다. 성능의 이유로, 지속적인 접속은 제어 메시지 교환(리소스 질의, 리소스 등록)에 이용되는 것이 바람직하지만, 임시 접속은 제어 메시지 교환 및 비제어 메시지 교환, 즉 소스 파일 데이터 전송 및 렌더링된 출력 이미지 데이터 전송 모두에 이용될 수도 있다. 지속적인 접속이 허용되면, 임시적인 접속 지원은 포함된다. 데이터 전송 타입은 "바이 버퍼(By Buffer)" 또는 "바이 리퍼런스(By Reference)" 중 하나일 수 있다."바이 리퍼런스" 전송이 허용되면, "바이 버퍼" 전송 지원은 포함된다. 리퍼런스에 의한 전송은 송신자의 파일 스토어가 수신에 적합하지 않다면 적합한 옵션이 아닐 수도 있다. 이러한 경우, 적당한 MC가 데이터를 목적지 리소스로 채널링할 것이다.
다음의 테이블은 MC0 내부 구역 네트워크 접속 맵에 대응한다. 이 테이블은 루트 MC가 어떻게 동일 구역 내의 다른 구성요소와 통신하는 지를 설명한다. 구역0에 있기 때문에, "사설" MC 및 PS는 허용되지 않는다.
*** 공중 RDC로부터 DMZ 파일 스토어를 보는 것은 허용되지 않는다.
다음은 상호 구역(inter-zone) 통신인 것을 제외하면, 상술한 표3과 유사한 MC0 상호 구역 네트워크 접속 맵이다. 이 표는 루트 MC가 다른 구역 내의 다른 구성요소와 어떻게 통신하는지를 설명한다.
* DMZ MC는 리소스 공유를 가능하게 하고, 공중 장치 질의를 지원하기 위해 MC로의 지속적 접속을 유지해야 한다.
** 사설 MC는 장치 질의 목적을 위해 또는 공중 RDC로의 데이터 전송을 브리지하기 위해 MC0으로의 임시적 접속을 설정할 수도 있다.
*** 공중 RDC로부터 DMZ 파일 스토어를 보는 것은 허용되지 않는다.
다음은 구역0이 아닌 MC 상호 구역 네트워크 접속 맵이다. 이 테이블은 구역0이 아닌 메시지 센터가 어떻게 동일한 구역 내의 다른 구성요소와 통신하는지를 설명한다.
* 일반적이지 않고 불필요한 구성
** MCx는 MCx에 등록되지 않은 RDC로의 MCy 채널 출력을 돕는다.
*** MCy는 MCx에 등록되지 않은 RDC로의 MCx 채널 출력을 돕는다.
다음은 상호 구역 통신인 것을 제외하고, 상술한 표와 동일한 구역0이 아닌MC 상호 구역 네트워크 접속 맵이다. 이 테이블은 구역0 이 아닌 MC가 어떻게 다른 구역 내의 다른 구성요소와 통신하는지를 설명한다.
* 장치 질의 목적.
** 장치 질의 목적 및 MCx와 관련된 공중 RDC로의 MCy의 채널 출력.
*** 장치 질의 목적 및 MCy와 관련된 공중 RDC로의 MCx의 채널 출력.
일반적으로, 시스템에서의 구성요소는 네트워크 메시지 프로토콜을 이용하여 상호 통신할 것이다. 예컨대, 원격 데스크탑 클라이언트와 메시지 센터 서버 사이의 통신을 위해 설계된 RDC 네트워크 메시지 프로토콜이 있다. 일실시예에서, RDC와 MC 서버 사이의 접속은 RDC로부터 MC 서버 상의 포트 5190로의 소켓 접속에 의해 개시된다. 이들 소켓 접속은 세션의 수명에 대해 지속적이다. 세션은 클라이언트와 서버 사이의 접속 다이얼로그로서 정의된다. 대부분의 세션은, 클라이언트와 연관된 원격 프린터에 대해 예정된 인쇄 작업이 있지 않는 한 클라이언트와 서버 사이에서 기본적으로 비활동적(quiescent)이다. 세션 초기에, 접속된 세션을 설정하기 위해 클라이언트는 복수의 세션 파라미터를 클라이언트에 제공한다.
데이터 전송 타입 지원
이 섹션은 작업 요구 데이터가 어떻게 프로세스되고 각 구성요소로 전송되는지를 간단하게 설명한다. 기본 작업 요구 프로세스 처리는 다음의 동작으로 요약된다. 1) 메시지 센터로 입력 파일 데이터를 업로드, 2) MC는 식별된 목적지 출력 장치에 기반하여 출력 이미지 렌더링을 위해 적당한 인쇄 서비스를 위치시킴, 3) MC는 입력 데이터를 PS로 전달하거나, 리퍼런스에 의해 PS로 하여금 파일을 액세스함, 4) PS는 출력 이미지를 렌더링함, 5) PS는 출력 이미지를 MC로 출력 이미지를 전달하거나, 출력 이미지를 공동 리포지토리에 저장함, 6) MC는 출력 데이터를 RDC로 송신하거나, 공동 리포지토리에 대한 리퍼런스에 의해 PS로 하여금 파일을 액세스하게 함. 실제 작업 요구 기점 및 목적지에 따라, 스태깅 MC(staging MC)는 데이터 전송을 브리지하기 위해 요구될 수도 있다. 전송 타입은 "바이 리퍼런스" 및 "바이 버퍼"로 분류된다. 일반적으로, 리퍼런스에 의한 전송은 버퍼에 의한 전송 보다 효율적인 것으로 나타나지만(감소된 파일 스풀링으로 인함), 네트워크의 상이한 부분상에 존재하는 상이한 구성요소가 보안 제한(예컨대, 방화벽)으로 인해 서로간의 리퍼런스를 볼 수 없을 때에는 실현되지 않을 수도 있다. 그러한 경우, 버퍼에 의한 전송이 데이터 전송을 위한 유일한 선택이다. 다음의 테이블은 데이터 전송 타입을 정의한다.
* 내부 구역에만 적용할 수 있음
내부 구역 MC(DMZ) - RDC(공중).이 타입의 통신의 목적은 DMZ MC로부터 동일 구역 내의 동일한 DMZ에서 동일한 MC로 등록된 공중 네트워크 내의 RDC에 부착되는 장치로 인쇄 요구를 송신하는 것이다. 예컨대, MC(12) -> RDC(14)로의 전송이다.
도24의 흐름도를 참조하면, 프로세스는 이용자가 이용자의 홈 메시지 센터로 접속하여 로그인 동작이 수행되는 블록(160)에서 시작한다. 블록(162)에서, 이용자는 인쇄 요구를, 이용자가 시스템에 접속하는 발신 장치에 대응하는 이용자 인터페이스를 통해 제공한다. 인쇄 요구가 리퍼런스에 의한 인쇄(PBR)에 대응하면, 블록(164)에서 MC는 UI를 통해 지정된 원격 스토어로부터 소스 데이터(예컨대, 소스 데이터가 포함된 "입력" 파일)를 업로드하고, PBR 요구에 의해 식별된다. 인쇄 요구가 비-PBR 요구에 대응하면(예컨대, 인쇄될 소스 데이터가 발신 장치상에 존재하면), 블록(166)에서 MC는 버퍼에 의해 장치로부터 소스 데이터를 업로드한다.
다음으로, 블록(168)에서 MC는 적당한 인쇄 서비스를 위치시키고, 작업-렌더링 요구를 송신한다. 일반적으로, 적당한 인쇄 서비스는 목적지 출력 장치와 동일한 구역에 있는 PS에 대응할 것이고, 목적지 출력 장치 및 소스 데이터의 특정한 특징을 지원하기 위해 인쇄 서비스를 제공한다(예컨대, 출력 장치를 지원하는 드라이버를 가지며, 소스 데이터에 대응하는 이미지 출력 데이터를 생성하기 위해 실행될 수 있는 어플리케이션을 갖는다). 요구가 PBR 이라면, 블록(170)에서, MC는 입력 파일의 네트워크 저장 위치를 식별하기 위한 리퍼런스를 인쇄 서비스로 전달한다. 요구가 PBR이 아니라면, 블록(172)에서 MC는 입력 파일을 버퍼에 의해 PS로 전달한다. 입력 파일의 검색 또는 수신에 따라, 블록(174)에서 인쇄 서비스는 출력 이미지 데이터(출력 이미지 파일)를 생성한다.
리포지토리가 이용되어야 한다면, 블록(176)에서 PS는 출력 이미지 파일을 리포지토리에 축적하고, 블록(178)에서 PS는 리퍼런스에 의해 출력 이미지를 MC로전송한다. 이 경우, 출력 이미지 데이터는 리포지토리 내의 파일에 저장되고, 리퍼런스에 의한 전송은 PS가 경로, 파일 이름, 및 출력 이미지 파일의 네트워크 위치를 MC에 제공하는 것을 의미한다. 리포지토리가 이용되지 않으면, 블록(180)에서 PS는 출력 이미지를 버퍼에 의해 MC로 전송한다.
이러한 점에서, 블록(182)에서, 출력 이미지를 수신하기 위해, MC는 적당한 원격 데스크탑 클라이언트를 위치시킨다. 이는, 목적지 출력 장치로 출력 이미지를 제공하기 위해 이용될 수도 있는 임의의 RDC를 식별하기 위해, 목적지 출력 장치에 기반한 데이터베이스 룩업을 통해 일반적으로 이루어질 것이다. 이어서, 블록(184)에서, MC는 리퍼런스에 의해 출력 이미지를 식별된 RDC로 송신한다. 블록(186)에서, 리퍼런스를 수신함에 따라, RDC는 출력 이미지를 검색하고, 이를 출력 장치로 제공하여, 출력 장치에 의해 렌더링된다. 작업이 성공적으로 인쇄되었다는 정보를 수신함에 따라, 이어서 MC는 인쇄 작업이 성공적으로 인쇄되었음을 이용자에게 알리기 위해 이용자에게 다시 통보를 송신한다. 블록(188)에서, 속기 표기로는, 전술한 프로세스는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> PBB에 의해 설명될 수도 있다.
내부-구역 MC(DMZ) - RDC(DMZ). 이 타입의 통신의 목적은 DMZ에 위치된 메시지 센터로부터 MC와 동일한 구역 내의 동일한 MC에 등록된 동일한 DMZ 내의 RDC에 부착되는 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(12) -> RDC(13)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> (PBB,PBB) 이다.
내부-구역 MC(DMZ) - RDC(사설). 이 타입의 통신의 목적은 DMZ로부터 동일한구역 내의 동일한 MC에 등록된 사설 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(12) -> RDC(12)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> (PBB,PBB) 이다.
내부-구역 MC(사설) - RDC(공중). 이 타입의 통신의 목적은 사설 MC로부터 동일 구역 내의 DMZ 내의 다른 MC에 등록된 공중 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(14)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> SBB -> PBB 이다.
내부-구역 MC(사설) - RDC(DMZ). 이 타입의 통신의 목적은 사설 MC로부터 동일 구역 내의 동일 DMZ 내의 다른 MC에 등록된 DMZ 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(13)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> SBB -> (PBR,PBB) 이다.
내부-구역 MC(사설) - RDC(사설). 이 타입의 통신의 목적은 사설 MC로부터 동일 구역 내의 DMZ 내의 동일 MC에 등록된 사설 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(11)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> (PBR,PBB) 이다.
상호-구역 MC(DMZ) - RDC(공중). 이 타입의 통신의 목적은 DMZ MC로부터 상이한 구역으로부터 외부 DMZ 내의 다른 MC에 등록된 공중 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(12) -> RDC(24)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> PBB 이다.
상호-구역 MC(DMZ) - RDC(DMZ). 이 타입의 통신의 목적은 상이한 구역으로부터 동일한 외부 DMZ 내의 다른 MC에 등록된 상이한 DMZ 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(12) -> RDC(23)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> PBB 이다.
상호-구역 MC(DMZ) - RDC(사설). 이 타입의 통신의 목적은 DMZ MC로부터, 상이한 구역으로부터 상이한 DMZ 내의 다른 MC에 등록된 사설 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(12) -> RDC(22)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> PBB 이다.
상호-구역 MC(사설) - RDC(공중). 이 타입의 통신의 목적은 사설 MC로부터, 상이한 구역으로부터 상이한 DMZ 내의 다른 MC에 등록된 공중 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(24)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> SBB -> PBB 이다.
상호-구역 MC(사설) - RDC(DMZ). 이 타입의 통신의 목적은 사설 MC로부터, 상이한 구역으로부터 동일한 외부 DMZ 내의 다른 MC에 등록된 DMZ 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(23)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> SBB -> PBB 이다.
상호-구역 MC(사설) - RDC(사설). 이 타입의 통신의 목적은 사설 MC로부터, 상이한 구역으로부터 상이한 외부 DMZ 내의 다른 MC에 등록된 상이한 사설 네트워크 내의 RDC에 부착된 장치로 인쇄 요구를 송신하기 위한 것이다(예컨대, MC(11) -> RDC(22)). 대응하는 속기 표기는 (UBR,UBB) -> (DBR,DBB) -> (TBR,TBB) -> SBB -> PBB 이다.
시스템 하드웨어 다 계층(multi-tier) 아키텍처
일실시예에서, 도25에서 다층 아키텍처(200)로 나타내듯이, 이 시스템은 4 계층 아키텍처 설계를 이용하여 구현될 수도 있다. 이 아키텍처의 제1 계층은 웹 서버 팜(WSF: Web Server Farm)(202)을 포함하고, 제2 계층은 메시지 센터 팜(MCF)(204)을 포함하고, 제3 계층은 인쇄 서비스 서버 팜(PSSF)(206)을 포함하며, 제4 계층은 데이터베이스 서버 팜(DBSF)을 포함한다. 다음의 각 계층에 대한 설명이다.
계층-1 웹 서버 파(WSF). 이 계층은 부하 평형기(Load Balancer)(208) 및 웹 서버 팜(202)으로 이루어진다. 부하 평형기는 인커밍 요구를 받아들이고, 웹 서버 팜 중의 하나의 웹 서버에 이들을 분배한다. 웹 서버는 도일한 URL을 공유하므로, 이용자는 이 시스템을 액세스하기 위해 하나의 URL을 기억하기만 하면 된다. 요구의 분배는 부하 평형기(208)의 구성에 따른다. 부하 평형기는 웹 서버 위치 및 요구 디스패치(dispatch)를 관리한다. 할당된 웹 서버는 지역적으로 스크립트를 실행하고, 대응하는 데이터 서버 팜에 대한 공동 데이터베이스 액세스 인터페이스를 호출함으로써 NFS(network file system) 또는 SAN(storage area network)에 저장된 데이터베이스(21)를 업데이트한다. 게다가, 부하 평형기는 웹 서버 팜 내의 모든 에러를 알리기 위해 관리자에게 경고 메시지를 송출할 수도 있다.
계층-2 메시지 센터 팜(MCF). 메시지 센터 팜은 메시지 센터 소프트웨어 구성요소의 2개의 실행 카피를 포함한다. 이중 하나는 프로세싱 모드에서 동작하는 제1 MC(216)를 포함하고, 다른 하나는 대기 모드에서 동작하는 제2 MC(216)이다.제1 MC는 인커밍 요구에 언제나 응답한다. 제1 MC가 응답하지 않으면, 제2 MC는 자체적으로 토글링하여 요구를 제어한다. 이어서, 제2 MC는 에러를 알리기 위해 시스템 관리자에게 경고 메시지를 송출한다. 이 장애-극복(fail-over) 스위치는 사람이 개입 없이 자동적으로 이루어진다. 문제점이 해결되고 제1 MC가 다시 온라인 되면, 제2 MC는 그 자신을 다시 대기 모드로 전환하고, 이어서 인계를 위해 제1 MC에 통보한다.
자동 장애-극복 스위치를 지원하기 위해 이 시스템은 제1 및 제2 MC 사이에 "하트비트 체킹(heartbeat checking)"를 구현한다. 이를 구현하기 위해, 각각의 MC는 두개의 이더넷 인터페이스와 직렬 포트를 갖는다. 모두 4개의 이더넷인터페이스가 동일한 서브넷에 접속되고, 직렬 포트는 상호 접속된다. 설치됨에 따라, MC는 이들 이더넷 인터페이스(유동 인터페이스)중 하나의 인터페이스 상의 동일한 유동 IP 및 다른 인터페이스 상의 상이한 정적 IP 어드레스를 갖고 할당된다. 제1 MC는 시스템 기동시 이들 이더넷 인터페이스를 모두 초기설정(bring-up)한다. 그러나, 제2 MC는 충돌을 피하기 위해 정적 인터페이스만을 초기 설정한다. 제2 MC는 그 정적 인터페이스를 통해 테스트 패킷을 송신함으로써 제1 MC의 이용가능성을 검사한다. 제1 MC의 유동 인터페이스가 불가능이라면, 문제를 보다 이해하기 위해, 보험으로서, 제2 MC가 지역적으로 접속된 직렬 포트를 이용하여 재검사한다. 이어서, 인커밍 요구를 서비스하고, 관리자에게 경고 메시지를 송출하기 위해, 제2 MC는 그 유동 인터페이스를 초기 설정한다. 제1 MC의 회복을 검출하기 위해 제2 MC가 하트비트 검사를 지속한다. 제1 MC이 다시 온라인으로 되면, 제2 MC는 그 유동 인터페이스를 다운으로 토글링하고, 제1 MC의 유동 인터페이스를 초기설정하기 위해 제1 MC에게 요청하는 요구를 송신한다. 제2 MC가 항상 대기 상태로 있는 것을 보장하기 위해, 제1 MC는, 제2 MC에 문제가 있을 때 관리자에게 경고 메시지를 송신하는 것을 제외하고, 제2 MC에 대하여 동일한 검사를 한다. 하트비트 검사는 시스템이 기동하여 동작중인 동안 계속된다. 하트비트의 간격은 시스템의 안정성 및 성능을 향상하기 위해 구성될 수 있다.
계층-3 인쇄 서비스 서버 팜(PSSF). 이 계층은 부하 평형기(218) 및 인쇄 서비스 서버 팜(206)으로 이루어진다. 부하 평형기는 메시지 센터 팜(204)으로부터의 인커밍 요구를 받아 들여, 이들을 PSSF(206) 내의 인쇄 서비스 서버 중 하나의 서버에 분배한다. MCF는 인쇄 서비스를 액세스하기 위해 동일한 소정 IP를 언제나 이용한다. 요구의 분배는 부하 평형기(218)의 구성에 따른다. 부하 평형기는 인쇄 서비스 서버 위치 및 요구 디스패치를 관리한다. 할당된 인쇄 서비스 서버는 렌더링 요구를 프로세스하고, 필요하다면 공유된 NFS 또는 SAN에 출력 이미지 데이터를 축적한다. 부하 평형기는 인쇄 서비스 팜 내의 모든 에러를 알리기 위해 관리자에게 경고 메시지를 송출할 수도 있다.
계층-4 데이터베이스 서버 팜(DBSF). 이 계층은 메시지 센터 데이터베이스 서버 팜(MCDSF)(220) 및 인쇄 서비스 데이터베이스 서버 팜(PSDSF)(222)을 포함하는 2개의 데이터베이스 서버 팜으로 이루어진다. 각각의 이들 서버 팜은 NFS 서버 또는 SAN 서버(224,226)에 각각 접속되고, 각각의 데이터베이스(228,230)을 호스팅한다.
데이터베이스 서버 팜은 상술한 계층-2 메시지 센터 팜에서와 동일한 방법으로 서로를 검사하는 하트비트를 구현한다. 그러나, 일부 향상된 상업적인 데이터베이스 시스템은 서버 내장식 장애-극복 스위치를 가질 수도 있다. 그런 경우, "서버 팜 하트비트 시험"의 구현 없이 안정성이 달성될 수 있다.
범위성(Scalability). 계층-1 및 계층-3에서 더 동작하는 예(instance)의 생성은 전체 시스템의 스케일링을 도울 수 있다. 선택적인 부하 평형기는 시스템을 완전 확장하기 위해 계층-2에 배치될 수 있다. 이러한 경우, 각 구성요소의 액세스 가능성을 보장하기 위해 부하 평형기가 책임(responsibility)을 다하기 때문에, 하트비트 검사 메커니즘은 불필요하게 된다.
보안성. 모듈러 아키텍처 설계 및 연장가능한 데이터베이스 방식은 정교한 보안 구현을 가능하게 한다. 먼저, 이용자 인증에 있어서, 가입자 데이터베이스는 지원되는 장치를 통해 이용자가 시스템으로 로그인할 때 검증을 위해 이용되는 이용자 프로파일을 포함한다. 검증이 실패하면, 참조 또는 조사를 위해 기록은 시스템상에 로그된다. 게다가, 메시지 센터는 높은 레벨의 클라이언트 및 서버 인증을 지원하는 공중 키 기반구조를 구현할 수 있다. 두 번째로, 데이터 암호화 지원에 있어서, 각각의 모듈은 메시지 센터 대 파일 스토어, 인쇄 서비스 대 메시지 센터, 출력 이미지 리포지토리 대 인쇄 센터, RDC 대 파일 이미지 리포지토리 사이에 실시될 수 있다. 심한 암호화는 전체 성능을 감소시키는 반면, 부족한 암호화는 이용자 데이터를 위험하게 한다. 세 번째로, 부인 방지(non-repudiation) 구현에서, 시스템은 각각의 가입자에 고유한 ID를 할당한다. 이용자가 요구를 시스템에 제공하면, 요구는 그 ID와 시각소인(timestamp)과 함께 즉시 태그된다. 작업 제공 요구라면, 중복 카피가 시스템에 생성되고, 로그되어, 추후의 참조 및 과금을 위해 획득된다. 전술한 보안 구현에 더하여, 본 시스템 모듈 및 이산 아키텍처의 다른 이점은 관리자가 조직의 필요에 기반하여 보안 세팅을 개별화할 수 있다는 점이다. 예컨대, 가상 사설 네트워크(VPN)는 공유 파일서버와 메시지 센터 사이의 표준 셋업으로서 구현될 수도 있다. 마찬가지로, VPN은 메시지 센터와 원격 데스크탑 클라이언트 사이에 구현될 수 있다. 이 시스템 아키텍처는 소프트웨어 및 하드웨어 VPN 구성을 모두 지원한다. 전체 시스템은 인증 및 인증화를 제공하고, 데이터 무결성 및 데이터 프라이버시를 보호하며, 부인 방지 요구사항을 만족시키기 위해, 공중 키 인프라로 구성될 수 있다.
메시지 센터
메시지 센터는 예컨대 인터넷을 통해 일반적으로 공중 액세스를 제공하는 하나 또는 그 이상의 네트워크 서버로 이루어지고, RDBMS(relational database management system) 데이터베이스를 구현한다. 도26을 참조하면, 일실시예에서, 메시지 센터(MCn)는 유닉스 서버(232)상에 호스트된다. 일반적으로, 각종 서버 클래스는 유닉스(UNIX), 마이크로소프트 윈도우 서버, 및 리룩스(Linux) 운영체제를 실행하는 서버를 포함하는, 메시지 센터 호스트로서 이용될 수도 있다. 바람직하게, 서버는 RAID5 디스크 서브시스템 등의 중복 구성요소(redundant component)와 높은 가용도의 하드웨어로 구현되어야한다.
메시지 센터(MCn)는 메시지 센터 및 기타 시스템 구성요소의 동작에 관련하는 데이터가 저장되는 RDBMS 데이터베이스(228)를 포함한다. 일반적으로, RDBMS 데이터베이스는 오라클(Oracle)(예컨대, 8i 또는 9i), 마이크로소프트(예컨대, SQL Server 7 또는 2000), IBM(DB2), Informix, 및 Sybase를 포함하는, 여러 판매자 중 하나에 의해 제공되는 SQL RDBMS 데이터베이스 소프트웨어에 의해 호스트될 수도 있다. 현재의 구현에 있어서, 네트워크 소켓 접속, PERL 및 C 언어 프로그래밍 API을 갖는 MySOL RDBMS가 이용된다. 선택적으로, 데이터베이스(228)는 비-SQL RDBMS에 의해 호스트될 수도 있다.
또한, 각각의 메시지 센터는 도1을 참조하여 설명한 태스크를 제어하기 위해 각종 소프트웨어 모듈을 포함한다. 이들은 메시지 핸들러(234), 테이블 업데이트 핸들러(236), 테이블 유지 동작(238), 및 인쇄 서비스 통신 채널(240)을 포함한다. 게다가, 메시지 센터는 웹 트래픽과의 인터페이싱을 위해 웹 서버 구성요소를 포함한다. 일실시예에서, PHP4 및 SSL 서버 확장을 갖고, 인쇄 서비스 통신 동작 뿐 아니라 원격 서버 유지 및 관리를 지원하기 위해 CGI 어플리케이션에 연계된 아파치 웹 서버가 이용된다.
메시지 핸들러(234)는 특정 네트워크 포트(예컨대, 시스템 포트 5190)로 바운드 되는 서비스로서 실행한다. 원격 데스크탑 클라이언트는 이 포트를 이용하여 메시지 센터에 접속하고, 세션의 수명 동안 지속적인 접속을 유지한다. 메시지 센터와 RDC 사이의 통신은 지향된 접속이고, 각각의 세션은 네트워크 메시지 프로토콜을 이용하는 특정 페이즈(phase)로 이루어진다. 메시지 센터와 원격 데스크탑 클라이언트 사이의 통신은, RDC가 세션 시작 프로세스를 개시할 때 갑작스런 접속해제(RDC 호스트 머신(예컨대, PC)이 셧다운되거나 RDC 어플리케이션이 중단될 때 네트워크 접속의 해제 또는 RDC 상의 에러로 기인함)에 의해 종료되거나, RDC가 세션 정지 프로세스를 개시할 때 종료된다.
테이블 업데이트 핸들러(TUH)(236)는 RDBMS 시스템의 음성(negative) API로 기록된 데이터베이스 방법의 세트로 이루어진다(예컨대, MySQL RDBMS 구현에 있어서, C 및 PERL 언어 API가 이용될 것이다. Oracle RDBMS 구현에 있어서, PLSQ 저장 프로시저가 이용될 것이다). 이 모듈에서의 방법은 원격 프린터 리소스 상태를 변경하고, 무선 가입자 프로파일을 추가하고, 삭제하고, 변경하며, 인쇄 서비스 작업 큐 관리 테이블 업데이트하는 기능과 기타 기능으로 이루어진다.
테이블 유지 동작(TMO) 모듈은 로그 및 기록을 생성하고, 주기적으로 테이블을 정리하고, 데이터베이스 테이블 문제를 보정하기 위해 필요한 유지 기능을 수행하는 일련의 이산 데이터베이스 동작을 포함한다. 이들 기능 중 일부는 기본적으로 실행되는 반면, 다른 일부는 매시간, 매일 또는 주말마다 주기적으로 수행되도록 예정된다. 이 모듈에서의 일부 기능은 포트 80 상의 CGI 인터페이스(또는 SSL)를 통해 이용 가능하다.
인쇄 서비스 통신 채널(240)은 인쇄 서비스 구성요소에 의해 메시지 센터를 액세스 하기 위해 메시지 채널을 구현한다. 이 채널은 작업 큐 관리 상태를 업데이트하기 위해 시스템 내의 인쇄 서비스가 메시지 센터로 접속되게 해준다. 일실시예에서, 이 채널은 포트 80 또는 메시지 센터의 SSL 포트를 통해 구현되고, 메시징능력을 제공하는 API는 CGI 스크립트를 포함한다.
데이터베이스 방식
일반적으로, 메시지 센터 RDBMS 방식은, 원격 프린터 리소스 관리(RPRM) 데이터베이스(242), 작업 인쇄 큐 관리(JPQM) 데이터베이스(244), 및 무선 가입자(SUB) 데이터베이스(246)를 포함하는 3개의 분리된 데이터베이스를 포함한다.
RPRM 데이터 베이스는 프린터 리소스 레지스트리, RDC 프로세스, 및 프린터 자산(asset) 관리와 관련한 테이블을 포함한다. JPQM 데이터베이스는 인쇄 서비스에 의해 프로세스되는 인쇄 작업의 제공과 관련한 테이블을 포함한다. 무선 가입자데이터베이스는 무선 가입자와 관련한 테이블을 포함한다.
SUB 데이터베이스 테이블
가입자 테이블. 이 테이블은 시스템 내의 무선 가입자의 특정 정보를 포함한다. 가입자는 한번의 등록 시퀀스 동안 이 테이블의 필드를 기록한다. "HTTP_X_UP_DEVCAP"와 함께 시작하는 설명에 대응하는 필드는 무선 장치의 일부 능력을 정의하는 HTTP GET 헤더 내의 무선 장치로부터 되돌려지는 장치 능력 값(device capability value)을 포함한다. SUB_NO 필드는 등록 중에 가입자에 의해 입력되는 모바일 전화 번호와 관련한 고유 가입자 번호를 포함하고, 모든 세션에 대해 가입자를 인증하기 위해 이용된다. 인덱스 필드 SUB_ID는 각각의 기록에 대해고유하고, 이하에 설명하는 NETWORK_SITES 및 PRINTERS 테이블을 참조하는데 이용된다.
네트워크 사이트 테이블. 이 테이블은 가입자에 의해 추가되는 네트워크 사이트를 정의하는 여러 개의 필드를 포함하고, 각 사이트에 대한 로그인 정보를 포함한다.
프린터 리소스 테이블. 이 테이블은 특정 가입자에 대한 프린터 리소스를 정의하기 위해 요구되는 정보의 여러 필드를 포함한다.
RPRM 데이터베이스 테이블
마스터 프린터 리소스 테이블. 이 테이블은 시스템 와이드 원격 프린터 리소스 구성 및 특정 메시지 센터에 등록된 모든 인쇄 리소스에 대한 상태 정보를 포함한다.
구역 설명자 테이블. 이 테이블은 시스템 와이드 네트워크에서 정의된 구역에 대한 파라미터를 정의한다. 이 테이블의 기록은 구역 식별자(ZID) 값에 의해 참조된다. ZONE_DESC 설명자, ZONE_TYPE, 및 STATUS 필드는 구역의 특성을 설명한다.
메시지 센터 테이블(MCT). 이 테이블은 시스템 내의 메시지 센터를 참조하기 위해 이용되는 정보를 포함한다. 이들 프로세스는 메시지 센터 식별자(MCID)에 의해 식별되고, 고유한 시스템 와이드 값이다. 모든 PUBLIC 리소스에 대하여 0과 동일한 MCID로 항상 참조되는 마스터 메시지 센터가 있고, 다른 메시지 센터는 0이 아닌 양의 MCID 값을 가지는 것을 유의해야 한다. MCT는 구역 및 메시지 센터의 네트워크 어드레스를 식별하는 정보를 포함한다. 마스터 메시지 센터는 0과 동일한 구역 식별자(ZID)를 가지며, 다른 모든 메시지 센터는 0이 아닌 양의 MCID 값을 가지는 것을 유의해야 한다.
클라이언트 설명자 테이블. 이 테이블은 원격 프린터 리소스와 관련한 개별적인 클라이언트를 정의한다. 이 테이블 내의 기록은 클라이언트 식별자(CID)에 의해 참조된다. CLIENT_DESC, CLIENT_TYPE, NAME, 및 어드레스 필드는 클라이언트의 속성을 정의한다. 이 테이블에 저장된 정보는 데스크탑 클라이언트 소프트웨어가 개인에 의해 설치될 때 또는 회사의 방화벽 뒤에 있는 PC 상에 설치될 때 일어나는 등록 프로세스 동안 생성된다. 인쇄 작업 큐 정보는 인쇄될 작업을 갖는 클라이언트 프로세스와 관련하는 CID 식별자를 포함한다.
작업 인쇄 큐 관리 데이터베이스 테이블
인쇄 서비스 테이블. 이 테이블은 네트워크 내에 설치된 등록된 인쇄 서비스를 포함한다. 이 테이블 내의 기록은 MPID 식별자에 의해 참조된다(현재의 구현에서, 인쇄 서비스 서버는 "MAGICPRINT"TM서버라고 언급되며, 따라서 식별자 이름의 사용은 MPID라고 명명한다. 이들 인쇄 서버는 여기서는 무-드라이버(Driverless) 인쇄 서버(DPS)라고 언급된다. NAME 설명자, IP 어드레스, 상태, 및 서버 설명자문자열 필드는 각각의 인쇄 서비스의 속성을 정의하는데 이용된다. 인쇄 서비스 서버 상의 각각의 드라이버 타입에 대하여 엔트리가 만들어진 것에 유의해야 한다. 특정 장소에 놓여진 서버에 있어서, ZID 식별자는 관련된 구역을 참조하기 위해 이용된다.
인쇄 큐 테이블. 이 테이블은 네트워크에 대한 프린터 큐를 관리한다. 이 테이블에서의 각각의 기록은 QID 식별자에 의해 참조되는 단일 인쇄 작업을 나타낸다. 전체 시스템 설계는 지연된 인쇄 작업 능력을 촉진시키고, QDATE 및 DQATE 필드는 작업 큐 엔트리 및 빠져나간 날자 및 시간을 추적한다. 이 테이블에서의 대부분의 식별자는 인쇄 작업이 그 테이블로부터 처리된 후 작업 큐 로그 테이블로 복사된다. DRIVERDESC 문자열은 PID 식별자에 의해 참조되고, CID 식별자에 의해 참조되는 데스크탑 클라이언트와 관련된 원격 프린터 리소스 뿐만 아니라 문서 프로세스에 이용된 프린터 드라이버의 타입을 정의하는 정보를 포함한다.
작업 큐 로그 테이블. 작업 큐 로그 테이블은 프로세스된 인쇄 작업 로그에 대한 정보를 포함한다. 이 로그 내의 작업은 작업 로그 ID(JID) 값에 의해 참조된다. 인쇄 큐 테이블로부터의 필드가 이 테이블로 전송된다. 인쇄 서비스 서버는 MPID 식별자에 의해 참조된다. 작업을 인쇄하는데 이용된 클라이언트는 CID 식별자에 의해 참조된다. CID와 관련한 원격 프린터 리소스는 PID 식별자에 의해 참조된다. 게다가, 작업 소유 식별자 스트링은 인쇄 작업의 기점을 식별하기 위해 포함된다.
인쇄 서비스(PSn)에 이용된 소프트웨어 구성요소의 일실시예의 보다 상세한 설명이 도27에 나타난다. 소프트웨어 구성요소는, 셋업 구성요소(300), 메시지 센터 통신 인터페이스(301), 문서 프로세싱 구성요소(302), 및 관리 구성요소(304)를 포함하는 4개의 그룹으로 논리적으로 분할된다. 각각의 이들 구성요소는 하나 또는 그 이상의 소프트웨어 어플리케이션, 스크립트, 구성요소 및/또는 모듈을 더 포함한다. 셋업 구성요소(300)는 인쇄 셋업 모듈(306) 및 계정 마법사 모듈(308)을 포함한다. 메시지 센터 통신 인터페이스(301)는 메시지 센터 통신채널(310)에 대한 인쇄 서버를 포함한다. 문서 프로세싱 구성요소(302)는 CGI 스크립트(311), 무-드라이버 인쇄 서버 구성요소(312), 포트 모니터(314), 상태 모니터(316), 및 미리보기 모듈(318)을 포함한다. 관리 구성요소(304)는 시스템 모니터(320), 관리(제어 패널) 웹 페이지(322), 자동 확장 모듈(324), 및 자동 업데이트 모듈(326)을 포함한다.
일실시예에서, 인쇄 셋업 모듈(306)은 시스템에 의해 이용되는 윈도우 프린터의 구성을 변경하기 위해 시스템 관리자에 의해 실행되는 마이크로소프트(MS) 윈도우 어플리케이션을 포함한다. 이 어플리케이션은 현존의 프린터를 전환하고, 새로운 프린터를 설치하고, 또는 프린터를 삭제하는데 이용될 수도 있다. 현존하는 프린터의 전환은 현존하는 프린터 설치를 선택하고, MS 윈도우의 포트 모니터에 의해 제공되는 동작을 포트 모니터(314)로 대체하는 것을 포함한다. 포트 모니터(314)의 이용은 스풀 파일이 DPS 시스템에 의해 조작되게 하고, 상태 모니터(316)가 스풀 파일을 선택된 목적지 출력장치로 송신할 수 있게 해준다.
인쇄 셋업 모듈(306)은 적당한 프린터 장치 드라이버로 새로운 프린터를 설치하기 위해 이용될 수도 있다. 예컨대, 관리자는, 프린터의 포스트스크립트 프린터 설명(PPD) 파일을 이용함으로써 DPS 시스템의 사용을 위한 Adobe PostScriptTM드라이버를 인스톨함으로써 포스트스크립트(postscript) 프린터를 셋업할 수 있다. 관리자가 PDD를 제공할 수 있으면, 프린터 셋업 모듈은 포스트스크립트 드라이버를 설치하고, DPS 시스템에 의한 사용을 위해 이를 구성할 것이다. 다른 경우, 관리자는 새로운 프린터에 대하여 적당한 프린터 장치 드라이버를 제공할 수도 있다. 인쇄 셋업 모듈(306)은 프린터를 삭제하는데 이용될 수도 있다. 그러한 경우, 윈도우 포트 모니터는 시스템의 포트 모니터로서 복원될 수 있고, 또는 선택된 프린터를 위한 DPS 서버의 지원이 완전히 제거될 수도 있다.
계정 마법사 모듈(308)은 관리 웹 페이지(322)의 세트에 보안성을 부여하여, 관리자의 로그인은 웹 페이지의 어느 세트가 액세스 가능한지를 판정할 것이다. 일실시예에서, 시스템은 모니터, 매니저, 및 관리 레벨을 포함하는 3가지 관리 레벨을 구현한다. 일실시예에서, 계정 마법사는 이들 3개 그룹을 MS 윈도우 이용자 그룹으로서 생성한다. 게다가, 계정 마법사는 MS 윈도우 이용자 계정을 생성하고, 관리 이용자 그룹 중 하나에 이들을 배치한다. 일실시예에서, 계정 마법사 모듈(308)은 MS 윈도우 어플리케이션이다.
메시지 센터 통신채널(310)에 대한 인쇄 서비스는 인쇄 서비스와 메시지 센터 사이의 통신을 가능하게 한다. 이 통신은 인쇄 서비스 등록 및 등록해제, 작업 렌더링 요구, 작업 인쇄 요구, 장치 등록 및 등록해제, 및 장치 상태 질의 등을 포함한다.
CGI 스트립트(311)의 보다 상세한 설명이 도28에 나타난다. 취소 인쇄 작업 CGI 스크립트(328)는 시스템으로부터 인쇄 작업 요구를 제거하는데 이용된다. 관리 웹 페이지(322)로부터, 스크립트는 시스템으로 제공되었고, 아직까지 그 스풀 파일을 프린터로 송신하지 않은 모든 인쇄 작업에 대해 호출될 수 있다. 이 스크립트는 메시지 센터로부터 호출될 수도 있다.
자동 확장 구성 CGI(automatic extension configuration CGI) 스크립트(329)는 설치된 어플리케이션에 대한 인쇄 서비스 호스트를 탐색하고, 어느 문서 타입이 발견된 어플리케이션에 의해 지원될 수 있는지를 발견하고, 발견된 그러한 파일 타입의 인쇄 작업 요구를 허용하도록 인쇄 서비스를 구성한다. 이 정보는 메시지 센터로 포워딩되어 그 리소스 구성정보를 업데이트한다. 업데이트 시스템 CGI 스크립트(330)는 설치된 시스템 구성요소를 최근의 이용가능한 구성요소와 비교하고, 새로운 구성요소(적용 가능할 때)를 다운로드하고, 이를 PS 호스트에 설치한다.
인쇄 요구 CGI 스크립트(331)는 소스 데이터(예컨대, 문서 파일, 그래픽 이미지 파일 또는 입력으로서 메시지 센터로부터의 URL)를 선택하고, 인쇄 서비스에 의해 처리될 인쇄 작업 요구를 생성한다. 작업 큐 CGI 스크립트(332)는 시스템으로부터 인쇄 작업 요구의 큐를 판독하고, 리스트를 스크립트 호출자(예컨대, MC)에게 되돌린다. 미리보기 CGI 스크립트(323)는 문서 파일, 그래픽 파일, 또는 메시지 센터로부터의 URL을 선택하고, 인쇄 요구 CGI 스크립트와 유사한 방식으로 시스템 상에 인쇄 작업 요구를 생성한다. 그러나, 미리보기 CGI 스크립트가 호출되면, 시스템은 문서, 이미지, 또는 웹 페이지를 인쇄를 위해 프린터로 송신하기보다는 이용자의 발신 장치의 이용자 인터페이스에 나타내기 위한 포맷으로 변환한다. 미리보기 CGI 스크립트는 시스템에게 미리 보기된 아이템을 선택된 출력 장치로 송신하도록 명령하기 위해 문서, 이미지, 또는 웹 페이지에 대해 두 번째 호출될 수 있다.
리셋 CGI 스크립트(334)는 시스템 어플리케이션을 종료하고, 이들을 다시 시작한다. 이 스크립트는 발생할 수도 있는 모든 프로그램을 제거하기 위해 시스템 관리자에 의해 최후 시도로서 이용된다. 상태 CGI 스크립트(335)는 인쇄 작업 요구의 진행 상황을 관리 웹 페이지(322)에 제공한다.
무-드라이버 인쇄 서버(312)에 의해 구현되는 구성요소가 도29에 보여진다. 무-드라이버 인쇄 서버는 인쇄 서비스에 의해 이용되는 메인 소프트웨어 구성요소이다. 이는 최종 인쇄를 위해 작업 요구, 큐 요구를 수락하는 인쇄 서비스 호스트(예컨대, 서버 컴퓨터)상에서 실행되는 어플리케이션을 포함하고, 문서, 이미지 또는 요구로부터의 URL에 대한 인쇄 프로세스를 명령한다. 무-드라이버 인쇄 서버 구성요소는 파일 타입 구성 리스트(File Type Configuration list)(336), 브라우저 인쇄 구성요소(337), 추가 어플리케이션 인쇄 구성요소(Supplemental Application Print component)(338), 셀 확장 인쇄 구성요소(Shell Extension Print component)(339), 인쇄 미리보기 구성요소(340), 작업 요구 서버 구성요소(341), 작업 프로세싱 구성요소(342), 제어 윈도우 구성요소(Handle Window component)(343), 및 작업 상태 구성요소(344)를 포함한다.
파일 타입 구성 리스트(336)는 무-드라이버 인쇄 서버에 의해 유지된다. 구성 리스트는 각각의 파일 타입에 대한 확장자 및 그 파일 타입을 인쇄하는데 이용되는 방법을 갖는다. 인쇄 방법이 추가 어플리케이션 인쇄 구성요소(338)에 의해 제공되면, 이 리스트는 인쇄에 이용되는 어플리케이션으로의 경로, 인쇄를 위해 어플리케이션이 이용하는 메뉴 명령어, 및 어플리케이션을 종료하기 위해 어플리케이션이 이용하는 메뉴 명령어를 포함한다.
브라우저 인쇄 구성요소(337)는, 무-드라이버 인쇄 서버가 출력 이미지 데이터를 생성하기 위해 이용하는 3가지 방법 중 한가지를 포함한다. 일실시예에서, 이 구성요소는 마이크로소프트 인터넷 익스플로러(IE:Internet Explorer) 웹 브라우저에 의해 제공되는 어플리케이션-프로그래밍 인터페이스(API: Application-Programming Interface)를 이용한다. IE API를 이용하면, 구성요소는 무-드라이버인쇄 서버 어플리케이션 상의 윈도우 내에서 브라우저를 실행한다. URL을 인쇄하기 위해, 무-드라이버 인쇄 서버는 제공된 네비게이트 프로그래밍 인터페이스를 이용하여 웹 페이지를 윈도우에 로드한다. 페이지가 일단 로드되면, 구성요소는 IE의 제공된 인쇄 프로그래밍 인터페이스를 이용하여 인쇄동작을 수행한다.
문서 및 이미지 파일은 DPS 서버 컴퓨터 상의 IE 브라우저 인스턴스가 요구된 문서 또는 이미지 파일의 타입에 대한 브라우저 플러그인으로 구성되면 이 방법을 이용하여 인쇄될 수 있다. 예컨대, 어도비 아크로뱃(Adobe AcrobatTM)에 대한 IE 플러그인을 생각해보자. 어도비 아크로뱃 문서 파일은 PDF 확장자를 갖는다. Acrobat 플러그인이 서버 컴퓨터 상에 설치되면, IE의 네비게이트 프로그래밍 인터페이스는 그 파일의 인쇄를 허용할 것이다.
추가 어플리케이션 인쇄 구성요소(338)는 출력 이미지 데이터를 생성하기 위해 무-드라이버 인쇄 서버에 의해 이용되는 다른 방법을 제공한다. 이 구성요소는 파일 확장자와 연관되는 어플리케이션을 발견하기 위해 파일 타입 구성 리스트(336)를 이용하여, 그 파일을 어플리케이션으로 로드하고, 그 어플리케이션에 대한 인쇄 메뉴 명령어를 실행하고, 인쇄 오퍼레이션의 종료에 따라 그 어플리케이션을 종료한다. 파일 타입 구성 리스트와 추가 어플리케이션 인쇄 방법의 조합으로, 서버 머신 상에 어플리케이션을 설치하고, 파일 타입 구성 리스트를 편집함으로써 시스템 관리자는 추가적인 문서 또는 이미지 타입에 대한 지원을 추가할 수 있다.
셀 확장 인쇄 구성요소(339)는 인쇄를 위해 무-드라이버 인쇄 서버에 의해 이용되는 제3 방법을 제공한다. 이 구성요소는 인쇄를 위해 MS 윈도우 셀 확장 프로그래밍 인터페이스를 이용한다. MS 윈도우 셀 확장 인터페이스는 이용자로 하여금 문서 타입을 지원하는 어플리케이션으로 송신되는 명령어를 갖는 문서 타입을 인쇄할 수 있게 해주는 운영체제 특징이다. 어플리케이션이 셀 확장 인터페이스를 지원하면, 어플리케이션은 문서를 로드하고, 이를 인쇄하고, 자체적으로 종료할 것이다. 파일 타입 구성 리스트와 셀 확장 인쇄 방법의 조합으로, 시스템 관리자는 서버 머신 상에 어플리케이션을 설치하고, 파일 타입 구성 리스트를 편집함으로써 시스템 관리자는 추가적인 문서 또는 이미지 타입에 대한 지원을 추가할 수 있다.
인쇄 미리보기 구성요소(340)는 인쇄 작업 요구 문서, 이미지 또는 URL을 문서 포맷 파일로 변환하고, 따라서 소비자 이용자는 요구된 문서, 이미지 또는 URL의 예를 볼 수 있다. 이 구성요소는 미리보기 CGI 스크립트(333)와의 조합으로 작업한다. 하나의 변환에 있어서, 무-드라이버 인쇄 서버는 어도비 아크로뱃 문서 포맷과 관련하여 수행한다. 인쇄 미리보기 구성요소의 이용을 통해, 무-드라이버 인쇄 서버는 인쇄용 스풀 파일을 생성하기 위해 이용된 동일한 방법에 의해 스풀 파일을 생성한다. 그러나, 출력 장치 또는 리포지토리로 송신하기 위해 상태 모니터(316)로 스풀 파일을 송신하는 대신에, 스풀 파일을 어도비 아크로뱃 디스틸러(distiller) 어플리케이션을 통해 실행하고, 이는 문서 파일을 아크로뱃 문서 포맷으로 변환한다. 이 변환은 프린터 드라이버가 어도비 포스트스크립트 드라이버인 것을 요구한다. 무-드라이버 인쇄 서버는 미리보기 프로세스에서 생성된 스풀파일을 유지하고, 소비자 이용자가 문서를 인쇄하길 원한다면, DPS는 스풀 파일을 간단하게 상태 모니터(316)로 송신할 수 있고, 이어서 상태 모니터는 이를 프린터로 송신하여 인쇄한다.
작업 요구 서버 구성요소(341)는 인쇄 요구 CGI 스크립트(331)로부터 인쇄 작업 요구를 받고, 프로세스를 위해 이들을 큐한다. 작업 프로세싱 구성요소(342)는 출력 이미지 데이터가 생성될 때까지 인쇄 작업 요구가 작업 큐로의 삽입되는 것을 관리한다. 이 구성요소는 큐된 작업 요구를 판독하고, 3가지 인쇄 방법 중 어느 하나를 인쇄를 위해 이용할 지를 결정하고, 문서, 이미지, 또는 URL을 결정된 인쇄 방법으로 제공하고, 인쇄 명령어 실행을 제어하고, 스풀 파일을 저장을 위한 상태 모니터로 제공한다. 출력 이미지 생성 프로세스의 단계 동안, 상태는 추적되고, 만들어질 수도 있는 모든 상태 CGI 스크립트(335)에 이용가능하게 만들어진다.
제어 윈도우 구성요소(343)는 안정적인 인쇄를 제공하기 위해 이용된다. 많은 어플리케이션이 인쇄 프로세스 동안 인쇄 서비스를 요구한 이용자로부터 정보를 수집하거나 이용자에게 정보를 알리기 위해 메시지 박스 및/또는 다이얼로그를 표시한다. 인쇄 요구의 자동 프로세싱을 지원하기 위해, 요구를 인쇄하기 위해 이용되는 어플리케이션에 나타날 수도 있는 모든 메시지 박스 또는 다이얼로그에 응답하는 메커니즘이 필요하다. 이 메커니즘은 제어 윈도우 구성요소(343)에 의해 제공된다. 무-드라이버 인쇄 서버는 나타날 수도 있는 메시지 박스 및 다이얼로그에 대하여 인쇄 프로세스 동안 호스트 서버 어플리케이션을 주시한다. 새로운 메시지 박스 또는 다이얼로그가 나타나면, 제어 윈도우 구성요소는 정보를 판독하고, 이를알려진 메시지 또는 알려진 상태(statement)와 비교하고, 그 프로그램된 로직에 따라 메시지 박스 또는 다이얼로그를 종료한다. 제어 윈도우 구성요소의 더욱 상세한 설명은 도32를 참조하여 이하에 설명된다.
작업 상태 구성요소(344)는 각각의 무-드라이버 인쇄 서버 큐 내의 모든 작업의 메모리-맵 파일(memory-mapped file)을 유지하기 위해 제공된다. 주기적인 간격으로, 작업 상태 정보는 메모리-맵 파일에 기록되어 상태 CGI 스크립트는 작업 요구를 판독할 수 있다.
포트 모니터는 MS 윈도우 인쇄 서브시스템에서의 표준 구성요소이다. 포트 모니터는 인쇄 서브시스템을 통해 프린터 드라이버로부터 스풀 데이터를 수신한다. 종래의 포트 모니터는 프린터 드라이버로부터 스풀 데이터를 받아들이고, 이를 프린터로 분배하는 책임이 있다. 무-드라이버 인쇄 서버에서, 포트 모니터(314)(도27)는 스풀 데이터를 파일에 기록한다. 전체 스풀 파일이 파일에 기록되고 나면, 포트 모니터 모듈(314)은 무-드라이버 인쇄 서버에 이름 및 스풀 데이터의 위치를 전달한다.
상태 모니터(316)는 서버 컴퓨터에서 동작하는 어플리케이션을 포함한다. 이는 복수의 기능을 수행하지만, 스풀 파일을 프린터로 송신하는 것을 최우선으로 한다. 무-드라이버 인쇄 서버가 포트 모니터(314)로부터 스풀 파일의 위치를 전달받은 후, 무-드라이버 인쇄 서버는 상태 모니터(316)로 스풀 파일의 위치, 스풀 파일이 송신되어질 프린터의 URL, 및 스풀 파일을 프린터로 송신하기 위한 프로토콜 정보를 전달한다. 프린터는 한번에 하나의 스풀 파일만을 수신할 수 있기 때문에, 스풀 파일 전달자(transmittals)를 나열한다. 상태 모니터(316)는 동시적으로 다중 큐를 생성하고 유지할 수 있다.
출력 이미지가 성공적으로 생성된 후, 상태 모니터(316)는 작업이 종료되었음을 무-드라이버 인쇄 서버에 전달한다. 작업 내력(job history)이 업데이트되고, 무-드라이버 인쇄 서버 큐로부터 작업이 삭제된다. 상태 모니터(316)는, 출력 이미지가 생성되는 도중 또는 생성된 후에, 메시지를 외부 구성요소(external component)로 송신하도록 구성될 수 있다. 예컨대, 상태 모니터는 출력 이미지가 인쇄 작업에 대응하는 지정된 인쇄 작업이 종료되었음을 메시지 센터에게 알리기 위해 이용될 수도 있다.
시스템 모니터 구성요소(320)는 다른 모든 인쇄 서비스 구성요소를 모니터하는 어플리케이션을 포함하고, 이는 오류를 감시하고, 특정 요구를 수신한다. 인쇄 작업 요구가 인쇄 요구 CGI 스크립트(331)로부터 도달될 때, 무-드라이버 인쇄 서버 어플리케이션이 동작하지 않으면, 인쇄 요구 CGI 스크립트는 시스템 모니터(320)가 무-드라이버 인쇄 서버를 개시해야 한다고 요구할 수 있고, 따라서 인쇄 작업 요구가 서비스되는 것을 허용한다. 시스템 모니터(320)는 무-드라이버 인쇄 서버로 메시지를 주기적으로 송신하여 프로그램의 상태 및 그 큐 내의 모든 인쇄 작업을 취득한다. 시스템 모니터가 오류를 검출하면, 이 문제를 해결하기 위해 시도한다.
시스템 모니터(320)는 새로운 인쇄 서비스 시스템 구성요소를 다운로드하고 설치하는데 이용될 수도 있다. 시스템 모니터는 시스템 내의 모든 구성요소의 버전번호를 수집하고, 이를 시스템의 업데이트 웹 사이트로 송신한다. 업데이트 웹 사이트가 더 새로운 구성요소의 이용가능성에 대한 정보를 제공하면, 시스템 모니터는 이러한 구성요소를 검색하고, 이를 시스템 상에 설치한다. 시스템 모니터는 그 메뉴로부터 또는 업데이트 시스템 CGI 스크립트(330)로부터 업데이트 요구를 접수한다.
관리 웹 페이지(322)는 관리 이용자에 의한 시스템의 원격 구성 및 모니터링을 허용한다. 소비자 이용자에 의한 이들 웹 페이지의 억세스를 방지하기 위해 보안 특성(security feature)이 이용될 수 있다.
출력 이미지 생성을 위해 파일이 제공되면, 무-드라이버 인쇄 서버는 파일의 파일 타입에 대응하는 어플리케이션을 연다. 예컨대, 파일이 .doc 확장자를 갖는다면, MS 워드 어플리케이션이 일반적으로 열릴 것이다. 이어서, 어플리케이션은 파일을 열고, 내장된 인쇄 명령어를 통해 제공 파일을 선택된 프린터에 송신한다. 확장자 웹 페이지(미도시)는 파일 타입 정보("확장자" 컬럼에) 및 파일 타입에 대응하는 소프트웨어 어플리케이션("어플리케이션 이름" 컬럼에)을 나열하는 로우(엔트리)를 표시한다. 각각의 엔트리는 확장자에 대한 우선 레벨(동일한 확장자를 갖는 파일 타입이 제공된 파일에 대하여 적당한 어플리케이션을 결정하기 위해 평가되어지는 순서를 결정하기 위함), 어플리케이션에 관련한 정보가 OS 레지스트리의 어느 곳에 저장되는지를 식별하는 레지스트리 위치, 어플리케이션에 대한 디폴트 경로, 어플리케이션에 대한 실행 가능한 이름, 및 인쇄하기 위한 내부 코드를 디스플레이하고, 어플리케이션을 종료한다. 관리자는 "새로운 엔트리 추가" 버튼의 활성화를통해 새로운 파일 타입을 추가할 수 있고, 이는 이전의 웹 페이지에서의 각각의 컬럼에 대한 대응하는 편집 컨트롤을 갖는 웹 페이지를 렌더링할 것이다. 이용자는 또한 파일 타입을 업데이트하고, 현재의 파일 타입 정보를 편집할 수도 있다.
무-드라이버 프린트 서버는 어느 어플리케이션이 서버 컴퓨터 상에 설치되었는지를 판정하기 위해 파일 타입 값에 대응하는 확장자 테이블을 사용하고, 확장자 테이블에 나열된 각각의 파일 타입의 파일 인쇄에 이를 이용한다. 테이블 내의 정보는 또한 인쇄 서비스 서버 컴퓨터 상의 실행 가능한 파일의 위치를 판정하기 위해 이용된다. 일실시예에서, 확장자 테이블과 각종의 기타 구성 및 인쇄 작업 데이터는 데이터베이스에 유지된다. 일반적으로, 데이터베이스는 DPS 소프트웨어를 호스트하는 것과 동일한 머신 상에서 호스트되지만, 개별적인 머신이 데이터 베이스를 호스트하기 위해 이용될 수도 있고, 이는 당업자들에게 잘 알려져 있다.
인쇄 요구의 프로세싱
인쇄 요구에 응답하여 인쇄 서비스 DPS 시스템 소프트웨어 구성요소에 의해 수행되는 데이터 흐름 및 동작이 도30에 보여진다. 우선, 발신 장치(350)의 이용자는 시스템에 접속하고, 로컬 스토어 또는 원격 스토어로부터 인쇄할 소스 데이터 및 상술한 방식으로 소스 데이터가 인쇄되어질 출력 장치를 선택한다. 이용자 입력(352)을 포함하는 이 정보는 대응하는 메시지 센터에 의해 수신될 것이며, 메시지 센터는 이 정보를 프로세싱 하여 인쇄 작업(353)을 생성한다. 일반적으로, 인쇄 작업은 소스 데이터 또는 소스 데이터에 대한 리퍼런스를 포함할 것이고, 인쇄서비스에 의해 생성되는 출력 이미지가 리포지토리에 저장되는지 또는 출력 장치로 직접적으로 제공되는지를 식별한다. 인쇄 작업은 인쇄 파라미터 및 인쇄 작업에 대응하는 기타데이터를 포함하는 tmpdoc.dpsn 문서(354)를 생성하는 인쇄 요구 CGI 스크립트(331)에 의해 최초로 프로세스된다. 이어서, tmpdoc.dpsn 문서는 인쇄 요구 CGI 스크립터를 통해 작업 큐(356)로 송신된다. 일실시예에서, 작업 큐는 FIFO(First-in first-out) 타입의 작업 큐를 포함한다. 선택적으로, 기타 타입의 작업 큐도 이용될 수 있고, 이는 당업자에게 잘 알려져 있다. 전술한 바와 같이, 작업 큐 동작은 작업 프로세싱 구성요소(342)에 의해 수행된다.
작업 큐는 인쇄 서비스에 의해 프로세스될 작업 요구를 제공한다. 각각의 요구는, tmpdoc.dpsn 파일이 분석되어 문서 파일(360)에 저장되는 인쇄 요구에 대응하는 인쇄 작업 파라미터를 검색하는 블록(358)에 의해 프로세스된다. 예컨대, 분석된 정보는 프린터 섹션, 카피 개수, 소비자 이용자의 식별, 문서 이름, 인쇄 작업을 제공하는 메시지 센터를 포함한다. 이어서, 인쇄 작업 파라미터의 일부분이 DPS 데이터베이스(361)에 저장된다.
판정 블록(362)에서, 예컨대, 어플리케이션 파일, 이미지, 또는 웹 페이지 URL과 같이, 어느 타입의 문서가 인쇄될 것으로 요구되었는지가 결정된다. 웹 페이지, 이미지 또는 PDF 파일과 같이, 문서가 브라우징 가능한(browsable) 문서라면, 로직은 블록(364)으로 진행되고, 여기서, 웹 페이지, 이미지, 또는 PDF 문서는 무-드라이버 인쇄 서버의 브라우저로 로드된다. 그렇지 않으면, 로직은 블록(366)으로 진행되고, 여기서 문서를 인쇄하는데 이용될 수 있는 문서 및 적당한 추가 어플리케이션이 로드된다. 예컨대, 문서가 MS 엑셀 스프레드시트를 포함하면, MS 엑셀 어플리케이션의 인스턴스가 엑셀 문서와 함께 로드된다. 블록(368)에서, 내부 명령어는 URL, 이미지, 또는 문서가 브라우저 또는 추가 어플리케이션에 의해 인쇄되는 요구에 대한 인쇄 동작을 요구한 이용자를 시뮬레이트하기 위해 생성된다. 예컨대, 대부분의 어플리케이션은 파일 -> 인쇄 메뉴 옵션을 제공하고, 이는 어플리케이션에 대한 인쇄 프로세스를 개시한다.
내부 어플리케이션 또는 브라우저 인쇄 요구에 따라, 각종 인쇄 및 문서 정보는 프린터 동작을 제어하는 운영체제로 내부적으로 전달된다. 상술한 바와 같이, 일실시예에서, 무-드라이버 인쇄 서버는 MS 윈도우 OS 환경에서 동작한다. 따라서, 이 환경은 OS 인쇄 서브시스템(369)을 제공하고, 서브시스템은, 출력 문서를 생성하기 위해, 타겟 프린터(374)로 송신되어질 적당한 프린터(예컨대, 출력장치) 데이터를 생성하는 선택된 프린터에 대응하는 프린터 장치 드라이버(372)와 인터액션하는 그래픽 장치 인터페이스(GDI) 구성요소(370)를 포함한다. 프린터 데이터는 포트 모니터(314)에 의해 수신되는 인쇄 스풀 파일을 출력하는 MS 윈도우 인쇄 스풀러 구성요소(376)에 의해 내부적으로 제어된다. 도시된 예에서, 목적지 출력 장치(DDEST)는 포스트스크립트 프린터를 포함한다고 가정한다. 따라서, 포트 모니터(314)는 포스트스크립트 파일(378)을 출력한다.
전술한 동작이 진행되는 동안, 발신 장치(350)의 이용자는 소스 데이터가 인쇄되기 이전에, 문서, 이미지, 또는 웹 페이지의 시뮬레이팅된 인쇄 출력을 미리보기 위해 선택될 수도 있다. 판정 블록(380)에서, 이용자가 프린터 출력 미리보기를 요구했는지에 여부가 판정된다. 대답이 예(TRUE)라면, 일실시예에서, 어도비 아크로뱃 디스틸러(382)의 인스턴스가 런치 되고, 이는 어도비 포터블 문서 포맷(PDF) 문서(384)를 생성하는데 이용된다. 이어서, PDF 문서는 미리보기 CGI 스크립트(333)에 의해 제어되고, 이는 문서를 메시지 센터(Mcn)를 통해 다시 발신 장치(350)로 송신하고, 여기서 어도비 PDF 플러그인을 통해 발신 장치 상에서 실행중인 브라우저 상에서 렌더링된다. 렌더링된 디스플레이(미도시)는 인쇄된 문서가 어떻게 보여지는지를 나타내는 미리보기를 제공하고, 소비가 이용자가 문서를 인쇄하거나 취소하는 것을 선택할 수 있게 해주는 이용자 인터페이스(UI) 컨트롤을 포함한다.
소비자 이용자가 인쇄된 문서를 갖기 원한다면, 인쇄 통보가 다시 메시지 센터(MCn)로 송신되고, 여기서 미리보기 CGI 스크립트(333)에 의해 프로세스된다. 인쇄 통보를 수신함에 따라, 미리보기 CGI 스크립트(333)는 상태 모니터(316)를 기동하고, 인쇄 문서(378)를 출력 이미지 데이터가 어디로 송신되는지에 따라 목적지 출력 장치(DDEST) 또는 출력 리포지토리(78)로 제공한다. 이러한 경우와 관련하여, 작업 내력 정보가 DPS 데이터베이스(361)에서 업데이트 된다. 게다가, 출력이미지가 일단 출력되면, 인쇄 종료 통보(380)가 다시 상태 모니터(316)로 송신되고, 이어서 상태 모니터는 이 통보를 다시 메시지 센터(MCn)로 작업 상태 메시지(381)로서 포워딩한다.
인쇄 미리보기 옵션이 소비자 이용자에 의해 선택되지 않은 경우, 판정 블록(382)에서의 응답은 "아니오(FALSE)"이고, 이는 상태 모니터(316)를 기동하고, 인쇄 문서(378)를 목적지 출력 장치(DDEST) 또는 출력 리포지토리(78)로 제공한다. 인쇄 프로세스 동안, 상태 모니터(116)는 프로세스의 진행을 모니터링하고, DPS 데이터베이스(361)를 업데이트한다. 상태 CGI 스크립트(335)는, 작업 상태 메시지(381)에 의해 묘사되는 바와 같이, 데이터베이스로부터의 진행 정보를 검색하고, 대응하는 인쇄 작업을 제공하는 메시지 센터로 다시 송신하기 위해 적당한 HRML을 생성함으로써, 메시지 센터에 인쇄 상태 정보를 제공하는데 이용된다.
일실시예에서, 무-드라이버 프린트 서버는 프린터 파일의 직접 인쇄를 지원한다. 예를 들어, 만일, 인쇄 작업 파일이 프린터 파일을 포함하면, 목적지 출력 장치의 프린터 파일 타입에 대응하면 직접 인쇄될 수 있다. 예를 들어, 포스트스크립트 파일은 포스트스크립트상에 인쇄될 수 있다. 유사하게, 다른 타입의 프린터에 대한 프린터 파일은 인쇄 과정 동안 "파일저장" 옵션을 선택함으로써 이전에 생성될 수 있다. 만일 판정블록(362)에서 파일이 프린터 파일로 결정되면, 로직은 블록(367)으로 진행하고, 여기서, (프린터 파일(367)에 의해 설명된) 프린터 파일이 직접적으로 윈도우 인쇄 스풀러(376)에 송신된다.
만일 출력 이미지가 출력 장치에 송신되기 보다 출력 리포지토리(78)에 저장되면, 출력 이미지 파일 리퍼런스(386)에 의해 설명된 바와 같이, 상태 모니터(316)는 메시지 센터(MCn) 표시(indicia)를 인쇄 작업에 대응하여 출력 이미지 파일이 리포지토리에 축적되는 작업 상태 메시지(381)를 통해, 출력 이미지 파일의 이름 및 위치를 따라 송신한다.
무-드라이버 프린트 서버 소프트웨어(46)의 내부 동작의 추가적인 세부사항이 도31에 도시되어 있다. 전술한 바와 같이, 소비이용자 동작 발신장치(350)는 발신장치(예: 미니 브라우저 UI(107) 또는 브라우저 UI(124))에 적합한 이용자 인터페이스를 통해 소스 데이터(예: 문서, 이미지 파일, 또는 웹 페이지)를 인쇄하도록 요구한다. 적합한 UI 페이지상의 "지금 인쇄" 버튼의 활성화에 대응하여, 이용자 입력 데이터는 tmpdoc.dpsn 문서(354)를 생성하는 인쇄 요구 CGI 스크립트에 의해 처리된다. 또한 인쇄 요구 CGI 스크립트는 메시지를 메시지 큐(392)에 저장하는 새로운 작업 파이프 서버(390)로의 인쇄 요구를 포함하는 메시지를 파이프 한다. 각 인쇄 요구 메시지에 있어서, 메시지 큐 핸들러(394)는 대응하는 tmpdox.dpsn 문서(354)를 분석하는 대응하는 스레드를 시작하고, 그것에 의해 문서 파일(360)을 발생시키고 작업 큐(356)에 인쇄 요구를 제공한다.
시작 작업 큐 루프 블록(396) 및 종료 작업 큐 루프 블록(397)에 의해 설명되는 바와 같이, 이러한 루프단에 디스플레이 되는 다음 동작 및 로직이 인쇄 작업을 위해 수행된다. 우선, 블록(398)에서, 후속 작업이 작업 큐(356)로부터 검색된다. 판정 블록(400)에서, 인쇄 작업이 어떤 타입의 문서에 대응하는지 판정된다. 만일 문서가 어플리케이션 파일이면, 로직은 어떤 타입의 파일 타입 인쇄 방법이 사용되어야 하는지에 대한 판정이 내려지는 판정블록(402)으로 진행한다. 만일, 파일이 추가 어플리케이션을 요구하면(예: MS 워드, MS 엑셀, AutoCAD 등), 로직은문서 및 적합한 추가 어플리케이션이 전술한 방식으로 로드되는 블록(366)으로 진행한다. 파일이 추가 어플리케이션에서 로드되면, 전술한 바와 같이, OS에 의해 인쇄하기 위한 파일을 제공하기 위해 블록(368)에서 파일 인쇄 명령이 내부적으로 발생된다.
다음으로, 판정 블록(404)에서 포트 모니터(314)로부터 "완료된" 메시지가 수신되는지 여부가 판정된다. 이러한 판정은 "완료된" 메시지가 수신될 때까지 주기적 기저상에 또는 소프트웨어 인터럽트 메커니즘을 통해 내려진다. 그 다음에 상태 모니터(316)는 블록(406)에서 시작되고, 전술한 바와 같이, 이것은 인쇄 문서(378)를 목표 프린터(374)로 송신하고 DPS 데이터베이스(386)에서 작업 이력 데이터를 갱신한다.
판정 블록(400 및 402)으로 되돌아가서, 만일 문서 타입이 웹 페이지 또는 추가 어플리케이션(예: PDF 문서 또는 각종 타입의 이미지 파일)을 요구함 없는 무-드라이버 인쇄 서버 컴퓨터에 의해 직접 인쇄될 수 있는 파일 타입이면, 로직은 블록(364)으로 진행하고, 여기서, DPS 컴퓨터의 브라우저가 웹 페이지에 대해 URL로 네비게이트 되거나 그렇지 않으면 브라우저는 PDF 파일 또는 이미지 파일을 렌더링하기 위해 이용된다. 렌더링되면, 나머지 인쇄 동작은 블록(368)에서부터 전술한 방식으로 수행된다. 전술한 바와 같이, 만일 문서 타입이 프린터 파일이면, 문서는 직접 윈도우 인쇄 스풀러(376)에 송신된다.
핸들 윈도우 구성요소(343)에 의해 제공되는 로직 및 동작의 세부사항에 대한 흐름도가 도32에 도시되어 있다. 도30의 시작 블록(450)에 의해 도시된 바와 같이, 핸들 윈도우 스레드는 판정 블록(362)의 시작에서 및 블록(368)에서 인쇄 동작이 야기된 직후 런칭된다. 전술한 바와 같이, 핸들 윈도우 구성요소는 어플리케이션이 로드되는 경우, 문서가 어플리케이션으로 로드되는 경우, 인쇄 동작이 초기화되는 경우, 인쇄 과정 동안 등에 런칭될 수 있는 각종 대화 및 메시지 상자를 핸들하기 위해 이용된다.
도32의 흐름도로 되돌아가서, 런칭된 상태에서, 핸들 윈도우 스레드는 블록(452)에서 더 이상의 검사할 데스크 탑 윈도우가 있는지 여부를 판정한다. 이러한 원도우는 통상적으로 대화 상자 또는 메시지 상자를 포함한다. 만일 더 이상의 검사할 윈도우가 없다면, 종료 스레드 종료 블록(454)에 의해 전술한 바와 같이, 스레드는 종료된다. 만일 검사할 윈도우가 더 있다면, 로직은 윈도우에 대한 윈도우 정보가 획득되는 블록(456)으로 진행한다. MS 윈도우 운영체제하에서, 윈도우 정보는 적합한 윈도우 API 호출을 구성함으로써 획득될 수 있다.
다음으로, 판정 블록(458)에서 윈도우가 렌더링 어플리케이션의 자(子) 윈도우인지(즉, 추가 어플리케이션 또는 브라우저에 의해 생산되었는지) 여부의 판정이 내려진다. 만일 아니오 판정이 내려지면, 윈도우는 렌더링 어플리케이션에 대응하지 않고, 로직은 후속 윈도우를 평가하기 위해 판정 블록(452)으로 진행한다. 만일 예(참) 판정이 내려지면, 로직은 윈도우에 대한 텍스트 및 제어 버튼이 검사되는 블록(460)으로 진행한다.
판정 블록(462)에서 판정된 바와 같이, 만일 텍스트가 표준 메시지 스트링과 일치하면 로직은 윈도우상의 닫기 버튼 또는 윈도우 프레임의 윈도우 닫기 아이콘을 활성화하는 이용자를 에뮬레이팅하기 위해 윈도우 닫기 명령이 내부적으로 제공되는 블록(464)으로 진행한다. 그 다음에 로직은 후속 윈도우를 처리하기 위해 판정 블록(452)으로 되돌아간다.
만일 표준 메시지 스트링과 정합하지 않으면, 판정 블록(462)으로 아니오(거짓) 판정이 내려지고, 로직은 텍스트가 DPS 데이터베이스(386)의 핸들 윈도우 테이블(470)에 저장되는 대응하는 엔트리 리스트 메시지텍스트 값과 일치하는지 여부의 판정이 내려지는 판정 블록(466)으로 진행한다. 만일 정합 값이 있으면, 로직은 정합 메시지텍스트 값의 행에서 데이터를 검색하고 데이터에 의해 제공되는 파라미터에 기초한 윈도우 API로의 대응하는 메시지를 발행함으로써 테이블 명령이 실행되는 블록(468)으로 진행한다. 예를 들어, 전형적인 엔트리 리스트 행(472)이 도72의 상측에 도시되어 있다. 행은 메시지ID, W파라미터, L파라미터 값을 포함하는 원도우 API에 관련된 정보를 보유한다. 이러한 파라미터는 원도우를 핸들링하기 위해 바람직한 동작을 유효하게 하기 위한 대응하는 API를 구성하도록 이용된다. 테이블 명령이 실행되면, 또는 만일 판정 블록(466)에 아니오(거짓) 판정이 내려지면, 로직은 후속 원도우 처리 시작을 위해 판정 블록(452)으로 되돌아간다.
이용자 계정 셋업
도33 내지 37을 참조하여, 시스템은 이용자로 하여금 그들의 계정 셋업 및 네트워크, 프린터, 팩스 및 콘택과 같은 각종 파라미터를 구성하는 것을 가능하게 하는 각종 이용자 인터페이스 스크린을 제공한다. 전술한 바와 같이, 이러한 UI 스크린은 전형적으로 유선 및 무선 네트워크 액세스를 위한 HTLM-기반 웹 페이지 및 셀룰러 기반구조를 통해 시스템에 액세스하는 그러한 장치들을 위한 WAP-기반 카드를 포함할 것이다. 다중 동작을 포함하는 셋업 프로세스는 도33의 웹 페이지(500)이 상측에 디스플레이 되어 있다. 이러한 동작은 시작 셋업 동작(502), 파일 서버 액세스 셋업 동작(504), 즐겨찾는 프린터 셋업(506), 팩스 셋업 동작(508), 콘택 리스트 셋업 동작(510) 및 종료 셋업 동작(512)을 포함한다. 이러한 동작을 통해 가능하게된 각종 파라미터 셋업에 우선하여, 이용자는 이용자 이름 및 개인 식별 번호(PIN)를 수반하는 전형적인 이용자 인증 방식을 이용하는 시스템을 등록할 것이다.
이용자는 시스템으로 로그인하고 계정 셋업 스크린 또는 세팅 스크린에 네비게이팅함으로써 셋업 프로세스를 시작한다. 후술할 컨텐츠와 유사한 컨텐츠를 보유하는 각종 스크린은 복수의 네비게이션 방식을 통해 액세스될 수 있다. 셋업 동작 동안, 이용자는 후속 이용자 세션 동안 이용자가 액세스 하고자 하는 하나 또는 그 이상의 파일서버를 정의할 것이다. 웹 페이지(500)에 대응하여, 이용자는 서버 이름(즉, 에일리어스) 및 편집 상자(514 및 516)에서 대응하는 서버 어드레스를 정의할 수 있다. 또한 이용자는 편집 상자(522)에서의 확인 패스워드에 진입하면서, 편집 상자(518 및 520)에서의 계정 이름 및 패스워드에 각각 진입한다. 최종적으로, 이용자는 풀다운 리스트(524)를 통해 파일서버를 선택할 것이다. 모든 파라미터가 진입한 후, 이용자는 "지금 서버 추가" 버튼(526)을 활성화할 것이고, 그것에 의해 웹 페이지로 하여금 파라미터를 웹 페이지를 관리하는 메시지 센터로 회신되게끔 한다. 그 다음에 파라미터는 메시지 센터 데이터베이스(228)에서의 네트워크 사이트 테이블에 저장된다.
도33은 이용자가 복수의 서버를 추가한 후 웹 페이지(500)가 어떻게 나타나는지를 묘사하는 웹 페이지(500)를 도시한다. 서버 이름 열(528)에 도시된 바와 같이, 이용자는 원하는 어떤 이름으로 (32자 이하와 같이 합리적인 길이 제한 내에서) 서버 이름을 정할 것이다. 네트워크 사이트 테이블은 SUB_ID 외부 키를 통해 가입자 테이블을 참조하고 대행 제1 키(SITE_ID)를 이용하기 때문에, 다중의 이용자들은 마이서버, 홈_네트워크 등과 같은 혼란을 초래하지 않고 동일한 서버 이름을 이용할 수 있다. 그러나, 단지 이용자에게 가시적인 서버만이 이용자가 이전에 등록한 서버가 될 것이다.
호스트 어드레스 열(530)에 도시된 바와 같이, 이용자는 IP 어드레스(예: 200.221.219.218) 또는 도메인 이름(예: ftp.prisip.com)을 이용하여 서버(호스트) 어드레스를 식별할 수 있다. 파일서버 타입 열(532)은 이용자가 추가한 서버의 서버 타입을 리스트 한다. 이러한 파라미터로의 변경은 "편집" 버튼(534)의 활성화를 통해 구성될 수 있고, 반면에 서버는 "제거" 버튼(536)을 통해 제거될 수 있다.
이용자가 그의 서버를 셋업한 후, 도35의 웹 페이지(540)에 의해 도시된 바와 같이, 이용자는 "다음 >" 버튼(538)을 활성화할 것이고, 셋업 프로세스를 즐겨찾는 프린터 셋업 동작(506)으로 진행시킨다. 이 때, 이용자에게 프린터를 선택하기 위한 2개의 옵션(즉, 출력장치)이 나타나게 된다. "선택" 버튼(542)의 활성화는 이용자로 하여금 미리 구성된 인쇄 리스트에서 프린터를 탐색할 수 있게 하고, 반면에, "탐색" 버튼(544)의 활성화는 이용자로 하여금 하나 또는 그 이상의 입력 파라미터를 통해 프린터를 탐색할 수 있도록 한다. 통상적으로, 미리 구성된 인쇄 리스트는 단지 관리자에게만 이용가능한 관리 웹 페이지의 분리된 세트를 통해 이용자가 근무하는 회사 또는 기업의 관리자에 의해 구성될 것이다. 이용자에게 프린터 리스트가 나타날 것이고, 이용자는 "즐겨찾는" 프린터로서 리스트 내의 하나 또는 그 이상의 프린터를 선택할 수 있다.
탐색 버튼(544)의 활성화는 웹 페이지(546)가 이용자에게 제공되도록 한다. 이러한 웹 페이지는, "도시별" 편집 상자(458), "주(state)별" 편집 상자(550), "우편번호별" 편집 상자(552), "비즈니스별" 편집 상자(554), "프린터 닉네임별" 편집 상자(556), "프린터 제품별" 편집 상자(558) 및 "프린터 모델별" 편집 상자(560)를 포함하고 이용자가 선택적으로 정보 탐색에 진입할 수 있는 복수의 편집 상자를 포함한다. "지금 탐색" 버튼(562)의 활성화에 응답하여, 시스템은 이용자에게 이용가능하고 이용자 탐색 판정기준을 충족시키는 어떤 등록된 프린터를 식별하기 위해 시도할 것이다. 예를 들어, 3개의 프린터의 예시적인 세트는 "주별" 편집 상자(550)에 진입한 워싱턴의 기준 값의 탐색에 응답하여 회신된다. 그 다음에 회신된 리스트에서의 프린터는 리스트에서의 각 행에 대응하는 체크상자(564)를 체크함으로써 이용자의 프린터 리스트에 추가되도록 선택될 수 있다. 그 다음에 이용자는 선택된 프린터를 세이브하기 위해 "완료" 버튼(566)을 활성화할 것이고, 이용자를 웹 페이지(540(A))로 되돌린다. 이 때, 웹 페이지는 즐겨찾는 프린터 리스트(568)의 이전에 선택된 어떤 프린트를 나타낼 것이다. 원한다면, 이용자는 활성버튼(570)을 통해 리스트로부터 프린터를 제거할 수 있다.
이용자가 그의 즐겨찾는 리스트에 프린터를 추가한 후, 이용자는 "다음 >" 버튼(572)을 활성화할 것이고, 셋업 프로세스를 팩스 셋업 동작(508)으로 진행시킨다. 이것은 이용자를 팩스 셋업 웹 페이지(도시하지 않음) 절차로 진행시킬 것이다. 이러한 페이지는 이용자로 하여금 디폴트 아웃고잉 팩스(default outgoing faxes)를 선택하고 팩스 커버 페이지를 미리 구성할 수 있게 한다. 이어서, 이용자는 콘택 리스트 셋업 동작(510)에 콘택 리스트 웹 페이지(도시하지 않음) 세트의 이용을 통해 콘택 정보를 선택적으로 추가할 수 있다. 콘택 정보는 이용자로 하여금 그 콘택 리스트의 사람들에게 보다 쉽게 문서 및 팩스를 송신할 수 있게 한다.
WAP UI 예
전술한 바와 같이, 일실시예에서, 무선-웹 인에이블 장치는 WAP 게이트웨이(110)를 통해 시스템에 액세스할 수 있다(도20). WAP 인터페이스는 WML에서 인코딩되고 중대하게 적은 데이터를 보유하는 경우를 제외하고, HTML-기반 웹 페이지에 대략 유사한 "카드"의 "덱(deck)"을 포함한다. 또한, WAP 카드는 최소의 이용자 인터페이스로 네비게이트할 수 있도록 설계된다. 도38의 범례를 참조하여, 예시적인 WAP-기반 이용자 인터페이스에 대응하는 각종 WAP 카드 및 동작의 세부사항은 도39 내지 52에 도시되어 있다. 일실시예에서, CGI 스크립트 세트는 자동적으로 WAP 카드를 발생시키기 위해 이용된다.
도39 및 40을 참조하여, 이용자는 다음의 방식으로 WAP-인에이블 장치를 이용하여 시스템에 액세스한다. 우선, 이용자는 그의 무선 인터넷 게이트웨이에 전술한 방식으로 액세스한다. 그 다음에 이용자는 직접 또는 재호출 링크(recalled link)(즉, 즐겨찾는 링크 등)를 통해 시스템용 URL에 진입한다. 그 다음에 스플래쉬 스크린(600)은 WAP 카드(1)에 대응하여 이용자에게 제공될 것이다. 로그인의 초기 동안, 시스템은 (예: 장치 전화번호 또는 다른 고유 식별자를 통해) 무선 장치를 식별하고 데이터베이스 질의(601)를 통한 메시지 센터 데이터베이스(228)의 가입자 테이블을 통해 장치에 대응하는 정보의 검색을 시도할 것이다. 만일 장치가 인식되면, 이용자는 이전에 장치를 시스템에 등록하였다. 따라서, 이용자에게 WAP 카드(2)에 대응하는 로그인 스크린(602)이 나타날 것이다. 이용자 이름(또는 다른 식별자)이 이전에 가입자 테이블에 입력된 정보에 기초하여 스크린상에 나타날 것이고 이용자는 그의 PIN을 입력할 것인지 질문 받게 된다. 만일 입력된 PIN이 저장된 PIN에 일치하면 이용자는 시스템에 로그인된다. 그렇지 않으면, 이용자에게 PIN의 재-엔트리를 요구하는 스크린(604)이 나타나게 된다. 만일 PIN 엔트리가 또 다시 실패하면, 이용자에게 이용자가 PIN이 이용자에게 이메일로 보내지기를 원하는지를 묻는 스크린(606)이 나타나게 된다.
만일 이용자의 무선 장치가 시스템에 새로운 것이면, 데이터베이스 질의(601)의 결과는 널(Null)일 것이고, 로직은 이용자가 이용자 이름 및 PIN을 입력하는 초기 엔트리 스크린(606)으로 진행할 것이다. 만일 무효의 PIN이 입력되면, 스크린(610)은 새로운 PIN의 엔트리를 요구하는 장치상에 디스플레이될 것이다. 성공적인 PIN 엔트리이면, 확인 스크린(612)이 이용자에게 나타날 것이다. 도40을 참조하여, 이용자 이름 및 PIN이 입력되면, 데이터베이스 질의(613)는 이용자의 이메일 어드레스를 검색하기 위해 가입자 테이블로 구성된다. 만일 이용자가 새로운 이용자이거나 이메일 어드레스가 발견되지 않으면, 이용자는 스크린(614)을 통해 이메일 어드레스를 입력하도록 요구된다. 만일 기존 이용자 이메일 주소가 발견되면, 새로운 장치용 가입자 테이블 엔트리는 데이터베이스 질의(616)를 통해 갱신될 것이다. 대안적으로, 새로운 이용자 이름, PIN 및 이메일 주소가 입력되면, 새로운 가입자 기록이 데이터 베이스 질의(6118)를 통해 가입자 테이블에 입력된다.
이용자가 확인되면, 데이터베이스 질의(622)를 통해 이용자가 이전에 어떤 구성된 네트워크 사이트를 갖는지 여부에 대한 판정이 내려진다. 만일 이용자가 이전에 구성된 네트워크 사이트를 가지면, 로직은 CGI 스크립트(3)를 실행하기 위해 진행하고, 세부사항은 도41에 도시되어 있다; 그렇지 않으면 로직은 도43에 도시된 네비게이션 위치(5)로 점프한다.
도41을 참조하여, CGI 스크립트(3)의 실행에 응답하여, 이용자에게 이용자로 하여금 이용자가 인쇄하기 원하는 문서에 대응하는 소스 데이터가 위치되는 네트워크 사이트를 선택할 수 있도록 하는 사이트 선택 스크린(624)이 나타난다. 원한다면, 이용자는 로직을 네비게이션 위치(5)로 점프시킬 새로운 네트워크 사이트 셋업을 선택할 수 있다.
네트워크 사이트가 선택되면, 도42에 도시된 네트워크 네비게이션 스크린(626, 628 및 630)을 발생시키는 CGI 스크립트(4)의 실행이 시작된다. 이러한 스크린은 이용자로 하여금 인쇄하기 원하는 문서 파일을 브라우징하는 네트워크사이트를 네비게이팅할 수 있게 한다. 이용자가 문서를 선택하면, CGI 스크립트(3)는 네트워크 사이트 및 문서 파일명이 디스플레이되는 스크린(632)을 발생시키기 위해 이용된다. 또한 이러한 스크린은 이용자로 하여금 인쇄, 팩스 및 이메일 옵션(634)을 통해 이용자가 원하는 타입의 출력을 선택할 수 있게 한다.
도3을 참조하여, 네비게이션 위치(5)로 점프하면, 이용자에게 셋업 스크린(636)이 나타난다. 이러한 스크린은 이용자로 하여금 네트워크 사이트, 프린터를 포함하는 각종 기호를 셋업할 수 있게 하고, 팩스 및 이메일 정보를 정의할 수 있게 한다. 네트워크 사이트 옵션의 선택은 이용자를, 웹 페이지(500)를 통해 새로운 네트워크 사이트를 추가하는 것을 참조한 전술한 방식에 유사하게 URL 또는 IP 어드레스, 이용자 이름 및 패스워드를 제공함으로써 이용자가 새로운 네트워크 사이트를 추가하는 파일서버 추가 스크린(638)로 진행시킨다. 전술한 바와 같이, 이용자 이름 및 패스워드는 추가될 특정한 네트워크에 관련된다. 네트워크 사이트 추가를 선택하면, 이용자에게 확인 스크린(640)이 나타나게 된다. 도44에 도시된 바와 같이, 이용자가 OK 옵션을 통해 네트워크 사이트 추가를 선택했다면, CGI 스크립트(9)는 스크린(644)이 서버가 추가되었다는 것을 확인하는 이용자의 장치상에 렌더링되는 데이터베이스 질의(642)를 통해 네트워크 사이트 테이블로 입력된 데이터를 저장하기 위해 실행된다.
스크린(636)으로부터의 팩스 옵션에 응답하여, 이용자에게 이름 및 팩스번호를 특정함으로써 새로운 팩스를 입력할 수 있는 팩스 추가 스크린(646)이 나타나게 된다. 이용자가 팩스 데이터 추가를 선택하면 확인 스크린(647)이 나타나게 되고,OK 옵션을 선택하면, 도46에 도시된 바와 같이, CGI 스크립트(11)가 데이터베이스 질의(648)를 통해 팩스/이메일 테이블(FET)에 새로운 기록을 삽입하기 위해 실행된다. 그 다음에 이용자에게 팩스 데이터가 추가되었다는 것을 확인하는 스크린(650)이 나타나게 된다.
유사하게, 스크린(636)으로부터 이메일 옵션의 선택에 대응하여, 이용자에게 이메일 추가 스크린(652)이 나타날 것이고, 여기서, 이용자는 이메일 이름(즉, 에일리어스) 및 이메일 어드레스를 입력할 것이고 그 다음에 새로운 이메일 정보 추가를 선택함으로써, 확인 스크린(653)이 나타나게 된다. OK 옵션을 통해 수용되면, 도47에 도시된 바와 같이, CGI 스크립트(12)가 데이터베이스 질의(654)를 통해 FET 테이블에 새로운 기록을 삽입하기 위해 실행된다. 그 다음에 이용자에게 이메일 어드레스가 추가되었다는 스크린(656)이 나타나게 된다.
도45에 도시된 바와 같이, 스크린(636)으로부터의 프린터 옵션의 선택에 응답하여, 이용자가, 웹 페이지(540 및 546)를 참조한 전술한 방식에 유사하게, 탐색 기준을 통해 추가할 프린터를 선택할 수 있는 프린터 추가 스크린(658)이 나타난다. 이용자가 되돌아온 선택 리스트를 통해 프린터 추가를 선택하면, 이용자에게 확인 스크린(660)이 나타날 것이고, OK 옵션을 선택하면, 데이터베이스 질의(662)를 통해 프린터 테이블에 새로운 기록이 추가될 것이다. 이용자에게 새로운 프린터가 추가되었다는 것을 확인하는 스크린(664)이 나타나게 된다.
도41의 스크린(632)으로 되돌아가서, 문서 파일이 선택되면, 이용자는 선택된 프린터상에 문서 인쇄, (머신의 팩스번호를 통해) 선택된 팩스 머신으로 문서를팩스로 보내기 또는 인쇄, 팩스 및 이메일 옵션을 통해 선택된 이메일 수신자에게 문서를 이메일로 보내기를 할 수 있다. 인쇄 옵션의 활성화는 도48에 도시된 프린터 선택 스크린(666)을 발생시키는 CGI 스크립트(13)를 런칭한다. 이러한 스크린은 이용자로 하여금 이용자의 즐겨찾는 프린터 리스트에 이전에 추가된 프린터들 중에서 프린터를 선택할 수 있게 한다. 리스트에서 프린터를 선택하면, 이용자에게 인쇄될 문서 및 선택된 프린터를 식별하는 구성화면(668)이 나타나게 된다. 도52에 도시된 바와 같이, OK 옵션의 활성화는 CGI 스크립트(16)가 실행되게 한다. 인쇄 요구에 따라서, 대응하는 인쇄 작업은 데이터베이스 질의(670)를 통해 인쇄 큐 테이블에 배치되고, 작업 큐 확인 스크린(672)이 이용자에게 나타난다. 인쇄 작업이 큐되면, 메시지 센터, RDC 및 인쇄 서비스의 적합한 조합에 의해 처리되어 전술한 방식으로 문서가 선택된 프린터상에 인쇄되도록 한다.
스크린(632)으로부터의 팩스 옵션의 활성화는 도49에 도시된 팩스 선택 스크린(674)을 발생시키는 CGI 스크립트(14)를 런칭한다. 이러한 스크린은 이용자로 하여금 이전에 이용자의 즐겨찾는 팩스 리스트에 추가된 팩스들 중에서 팩스를 선택할 수 있게 하거나 팩스 리스트에 이미 셋업되지 않은 팩스 머신에 대한 번호를 입력할 수 있게 한다. 만일 이용자가 후자에 대한 번호 입력을 선택하면, 이용자에게 번호가 입력될 수 있는 스크린(676)이 나타난다. 스크린(676)으로부터의 OK 옵션의 선택 또는 스크린(674)으로부터의 미리 구성된 팩스의 선택은 확인 스크린(676)이 렌더링되게 한다. OK 옵션이 선택되면, CGI 스크립트(16)가 실행될 것이고, 여기서, 이러한 경우에 팩스 작업 정보는 데이터베이스 질의(678)를 통해 팩스/이메일큐로 삽입될 것이다. 팩스 작업이 큐되면, 어떻게 인쇄 서비스가 인쇄를 위해 문서를 처리하는지에 다소 유사한 방식으로 대응하는 문서를 발생시키고 팩스번호에 기초하여 정해진 팩스 머신에 팩스 데이터를 송신하는 적합한 메시지 센터에 의해 처리된다.
이메일 요구의 처리는 팩스 요구에 유사한 방식으로 진행한다. 도50에 도시된 바와 같이, 이러한 프로세스는 CGI 스크립트(15)를 런칭하는 스크린(632)으로부터의 이메일 옵션의 활성화에 의해 초기화된다. 이러한 CGI 스크립트는 우선, 이용자로 하여금 (대응하는 이메일 엘리어스를 통해) 즐겨찾는 이메일 수신자의 이전에 구성된 리스트 중에서 문서를 송신하기 위해 이메일 어드레스를 선택할 수 있게 하거나, 미리 구성되지 않은 자를 위해 새로운 이메일 어드레스를 입력할 수 있게 하는 이메일 선택 스크린(682)을 발생시킨다. 만일 이용자가 수동으로 리스트되지 않은 이메일 어드레스 입력하기를 선택하면, 이용자에게 어드레스가 입력될 수 있는 스크린(684)이 나타난다. 스크린(684)으로부터의 OK 옵션의 선택 또는 스크린(682)으로부터의 미리 구성된 이메일 수신자의 선택은 확인 스크린(686)이 렌더링되게 한다. OK 옵션을 선택하면, CGI 스크립트(16)가 실행될 것이고, 여기서 이러한 경우에 이메일 작업 정보는 데이터베이스 질의(678)를 통해 팩스/이메일 큐 테이블로 삽입될 것이다. 이메일 작업이 큐되면, 선택된 문서 파일이 부착된 이메일 메시지를 발생시키고, 이메일 메시지를 수신자의 이메일 어드레스를 통해 또는 스크린(684)을 통해 입력된 이메일 어드레스를 통해 선택된 수신자에게 송신할 적합한 메시지 센터에 의해 처리된다. 선택적으로, 문서의 컨텐츠를 이메일의 본문에포함될 수 있다. 이메일 발생의 추가적인 세부사항은, 2002년 3월 21일에 출원된 공동 계류 중인 미국 특허 출원 제xxxx호, "이메일을 통해 인쇄하는 방법 및 시스템"에 개시되어 있고, 전체내용을 참조하여 그 명세서 및 도면을 포함한다.
도39의 스크린(606)으로 되돌아가서, 이메일을 통해 송신된 그의 PIN을 갖고자는 이용자 요구에 응답하여, 시스템은 메시지 센터 데이터베이스(228)로부터 이용자에 대한 PIN을 검색할 것이고, 자동적으로 이름에 의해 이용자를 식별하고 PIN을 포함하는 이메일을 발생시키고, 이용자의 이전에 등록된 이메일 어드레스를 통해 이메일을 이용자에게 돌려 보낸다. 도52에 도시된 바와 같이, 그 다음에 CGI 스크립트(17)가 실행된다. 만일 이메일 메시지가 성공적으로 송신되면, 스크린(688)은 그러한 것을 식별하며 렌더링된다. 만일 이메일 어드레스를 송신하는데 장애가 발생하면, 대응하는 장애 메시지가 스크린(690)상에 렌더링된다.
문서 미리보기 네비게이션
작업 요구의 선택사양인 출력방법의 하나는 문서 미리보기이다. 통상적으로 제한된 디스플레이 특성(예: 작은 스크린, 비표준 가로세로비 및 낮은 픽셀 해상도)으로 인하여, 출력장치상에 렌더링되면 어떻게 문서가 나타나는가의 미리보기의 발생은 하찮은 것이 아니고 오히려 시도적인 태스크이다. 또한, 미리보기 요구의 요구된 응답시간은 인쇄 요구 보다 훨씬 더 긴박하다. 출력 관리 시스템은 2개의 방향으로 이러한 시도에 접근한다. 이미지 파일에 있어서, 견본을 생성시키고 가로세로비를 잃지 않고 수직 및 수평 차원에 알맞도록 최종 출력 사이즈를 조정한다.이미지 파일이 아닌 파일에 있어서, 페이지 관계를 잃어버리지 않고 파일을 평범한 텍스트 포맷으로 변환하고, 각 페이지를 카드의 시리즈로 부수고, 그 다음에 이들 카드를 수직 및 수평 차원에서 허용 페이지 네비게이션을 참조하여 함께 링크한다.
도700의 다이어그램은 변환이 어떻게 일어나는지를 도시한다. 프로세스는 본래 이미지(702)로 시작한다. 제1행에서, 견본(704)은 팜 장치(Palm device)(706)의 디스플레이 특성에 기초하여 생산되고, 반면에 제2행에서 보다 작은 견본(708)이 셀룰러 폰(710)에 의해 제공되는 스크린의 보다 낮은 해상으로의 대응에 기초하여 생산된다. 셀룰러 폰에 대한 견본은 가로세로비를 보존하기 위해 전체 스크린을 커버하지 않는다는 것을 주목하자.
도54의 다이어그램(712)은 변환 프로세스를 보여주는 텍스트 문서를 도시한다. 전술한 바와 같이, 출력문서의 텍스트 페이지는 텍스트 흐름에 기초하여 WAP 카드로 부수어 진다. 예를 들어, 페이지의 최초 256 바이트는 제1 카드("1"로 라벨됨)로 변환되고, 다음 256 바이트는 제2 카드로 변환된다. 이미지 링크(714) 및 미리보기 이미지(716)에 의해 설명된 바와 같이, 본래 텍스트 페이지의 이미지는 본래 콘텍스트에서 그 배치를 표시하기 위해 카드에서 이미지 링크와 각각 교체된다. 이용자는 전술한 이미지 보기 변환 메커니즘에 기초하여 발생되는 이미지를 미리보기 위해 이들 링크를 이용할 수 있다. 이러한 레이아웃(layout)은 페이지 네비게이션을 상이한 페이지를 가로질러서 뿐만 아니라 위아래 방향으로도 허용한다.
페이지 관계가 유지되기 때문에, 또한 이용자들은 이들 페이지를 미리보기 위해 렌덤 액세스(random access)할 수 있다.
순차적인 텍스트 문서에 부가하여, 도55의 다이어그램(718)에 의해 도시된 바와 같이, 시스템은 또한 스프레드시트-타입(spreadsheet-type) 문서에 대한 미리보기를 제공할 수 있다. 보통의 문서 미리보기와 스프레드시트-타입 문서 미리보기와의 차이는 스프레드시트는 그 물리적 레이아웃의 보존을 요구한다는 것이다. 그러므로, 스프레드시트의 미리보기는 수직 및 수평 차원 모두에서 내장될(built) 필요가 있다. 도55의 예는 2개의 9-카드 미리보기 페이지로 변환되는 2-페이지 스프레드시트 문서에 대응하고, 각각은 또 다른 페이지로 네비게이트 하기 위해 2개 또는 그 이상의 링크(적용 가능한 경우)를 포함한다. 예를 들어, 제1 카드(720)는 카드(724)에 "오른편" 링크(722) 및 카드(728)에 "아래" 링크(726)를 포함한다. 또한 링크는 페이지들 사이에서 네비게이트 하도록 제공된다. 페이지 관계가 유지되기 때문에, 또한 이용자들은 이들 페이지를 미리보기 위해 렌덤 액세스할 수 있다.
인스턴트 메시징 통합
급속한 인구성장 및 인스턴트 메시징 테크놀로지의 광범위한 수용은 인스턴트 메시징을 이용자들을 접속시키는 거대한 시스템으로 만들었다. 인스턴트 메시징은 이용자들로 하여금 텍스트 메시지, 채팅을 교환하고 이미지 송신 또는 단순한 방식, 근접한 실시간 방식으로 친구 및 가족들로 음성 인사가 가능하게 한다. 그러나, 이것은 근본적으로 텍스트 교환을 위해 설계되었기 때문에, 통상적으로 정보의 인식 또는 리소스 공유를 가지지 못한다. 그러므로 출력 관리 시스템은 결핍을 증가시키기 위해 들어갈 수 있다.
그 시스템은 인스턴트 메시징 이용자로 하여금 그의 리소스를 그의 친구들과 공유할 수 있게 한다. 장치가 네트워크상에 공유되는 한, 리소스는 그 타입, 연결성(내부 또는 외부, 네트워크 또는 로컬) 또는 실행 플랫폼에 제한되지 않는다. 리소스는 파일, 플로피 또는 콤팩트디스크 드라이버 및 네트워크 파일 시스템(즉, 공유되는 파일 디렉토리 등)을 포함하지만 이에 제한되지는 않는다. 이용자가 그의 공유된 리소스의 이용가능성을 알리면, 이들 리소스는 그의 친구들에게 가시적(visible)이 될 것이다. 그 다음에 그의 친구들은 버튼을 누름으로써 다른 사람의 로컬 디렉토리로부터 파일을 다운로드할 수 있고, 다른 사람의 플로피 또는 콤팩트 디스크로 드래그-앤-드롭(drag-and-drop)할 수 있고, 드라이버 링크를 클릭함으로써 다른 사람의 로컬 드라이브 디렉토리를 볼 수 있으며, 인스턴트 메시징 동작 도메인에서의 한번의 출력 관리 시스템 배치를 제외한 모든 중요한 순환 시스템 관리 노력 없이, 이용자가 가능한 원격 데스크탑 클라이언트(Remote Desktop Client)로써 인스턴트 메시징을 실행하도록 할 수 있다.
인스턴트 메시징 도메인에서 리소스 공유를 완성하기 위해, 인스턴트 메시징 클라이언트는 원격 테스크탑 클라이언트 특성을 구비할 필요가 있다. 원격 데스크탑 클라이언트는 메시지 센터로 등록함으로써 클라이언트 머신이 그것의 공유를 알리도록 돕는다. 등록이 완료되면, 클라이언트 머신은 리소스-공유 요구를 송수신할 수 있다. 성능을 개선하기 위해, 바람직하게, 인스턴트 메시징 오퍼레이터는 루트 메시지 센터에 의지하는 대신에 그 고유 메시지 센터가 클라이언트를 관리하도록 설치할 수 있다.
예시적인 인스턴트 메신저 통합 구현을 도시하는 다이어그램(729)이 도56에 도시되어 있다. 이러한 예에서, 각각 통합된 인쇄 서버를 포함하는 2개의 공중 메시지 센터(MC1 및 MC2)는 인스턴트 메시지(IM) 오퍼레이팅 네트워크(730) 내에 위치된다. 이들 메시지 센터는 존(Zone)(0) 루트 메시지 센터(MC0)로 등록된다. 각 인스턴트 메시징 클라이언트(732) 이용자는 동일한 호스트상에 원격 클라이언트를 실행하고 IM 오퍼레이터 네트워크(730)에서 메시지 센터 중의 하나에 등록된다. 이러한 구성에 있어서, 인스턴트 메시징 클라이언트 이용자의 모두는 루트 메시지 센터에 상의함 없이 서로의 공유된 리소스에 액세스할 수 있다. 원한다면, IM 네트워크 오퍼레이터는 성능을 고려하여 시스템 크기를 증가시키기 위해 추가 메시지 센터를 설치할 수 있다.
도시된 시스템은 마이크로 소프트 윈도우의 장치공유용 새로운 아키텍처에 대해 유리하다. 예를 들어 프린터 드라이버를 이용하여, 요구되면, 프린터를 공유하는 윈도우의 장치 드라이버가 원격 데스크탑 클라이언트를 통해 다른 호스트로 운송될 수 있다. 다운로드 및 프린터 드라이버의 설치 후, 이용자들은 공유된 네트워크 장치로서 다른 사람의 프린터에 액세스할 수 있다. 이것은 윈도우에서 공유하는 장치의 개념을 보다 크게 확장한다. 이러한 구성에서의 네트워크는 LAN을 대신하여 전체 인스턴트 메시징 네트워크로 확장된다. 그 다음에 인스턴트 메시징 이용자는, 원격 데스크탑 클라이언트가 모든 일을 하는 동안에 마치 동일한 LAN에 접속된 것 처럼 문서를 서로의 공유된 장치에 출력할 수 있다.
멀티미디어 메시징 서비스 통합
최근까지도, 통상적으로 낮은 네트워크 대역폭 및 무선 장치상의 프로세싱 파워의 부족으로 인하여, 무선 컴퓨팅은 여전히 텍스트-지향 어플리케이션에 제한되어 있었다. 최근, 어떤 캐리어(carrier)는 WAP 어플리케이션과 같은 보다 광범위한 서비스 슈트에 대한 지원을 소개하였다. 초기 응답은 압도적이지 않지만, 대부분의 무선 캐리어는 이용자에게 보다 강제적인 경험을 제공할 서비스를 제공하는 것이 불가피하다고 믿는다. 이것은 보다 높은 네트워크 대역폭, 보다 유용한 하드웨어 및 보다 강한 장치를 요구한다. 캐리어, 인프라 제공자 및 장치 제조자들로부터의 모든 노력들이 "3G"(제3 세대) 무선 통신에 이르게 하였다.
많은 모바일 장치 제조자들은, 비디오 클립, MP3, 슬라이드 쇼(slide show), 비디오 컨퍼런싱 등을 포함하는 3G 서비스 개발에 착수하였다. 이것은 범용 카테고리 멀티미디어 무선 해결책으로 귀결한다. 본 시스템의 아키텍처는 멀티미디어 출력 관리용 공용 플랫폼을 제공함으로써 이러한 멀티미디어 및 모바일 컴퓨팅 환경을 제공한다. 업계 선두주자의 하나인 노키아에 의해 개발된 멀티미디어 통합 시스템, 소위 멀티미디어 메시징 서비스(MMS)에 대응하는 다이어그램(734)이 도57에 도시되어 있다.
이러한 예에서, 내향 게이트웨이(736) 및 외향 게이트웨이(738)가 출력 관리 네트워크(740) 내에서 MMSC와 메시지 센터(MC1)를 모두 접속하도록 배치된다. 내향 게이트웨이는 MMS 유용 장치(742)로부터의 모바일 발신 MMS 요구를 수신하고, 이러한 요구들을 추가적 프로세싱을 위해 메시지 센터(MC1)로 변환하고 전달한다. 전형적인 요구는 무비 클립(movie clip)을 공유되는 파일서버로 세이브, 픽처 이미지를컬러 레이저 프린터에 인쇄 또는 MP3 오디오 메시지를 전술한 출력 관리 시스템-파워 인스턴트 메시징 클라이언트(output management system-powered instant messaging client)로 릴레이가 될 수 있다. 외향 MMS 게이트웨이는 출력 관리 클라이언트로부터 MMS로 예정된 일반적 요구를 수신한다. 이것은 MMS 포맷에 대응하는 요구를 변환하고 그것을 전달을 위해 멀티미디어 메시지 서비스 센터(MMSC)로 송신한다. 시스템은 MMS-가용 메시지 센터와 클라이언트 중에서 효율적인 리소스 공유를 지원하기 위해 MMS 동작 네트워크(746)에서 선택사양인 루트 메시지 센터를 사용할 수 있다. 일실시예에서, 내향 게이트웨이 및 외향 게이트웨이는 하드웨어 비용을 최소화하기 위해 공동 위치될 수 있다(즉, 동일한 장비에 호스트될 수 있다). 이러한 아키텍처는 출력 관리 시스템을 콘딧(conduit)으로서 이용하여 MMS 서비스를 비-MMS 클라이언트(non-MMS client)에 영향을 줄 수 있다. 멀티미디어 메시징 서비스 통합의 일반적 개념은 내향 게이트웨이의 내향 인터페이스 및 외향 게이트웨이의 송출 인터페이스의 수정을 이용하는 어떤 타입의 멀티미디어 서비스에 적용할 수 있다. 나머지 출력 관리 시스템은 그대로 둘 것이다.
문서 액세스/보안 CGI/VPI 프록시를 통한 방화벽 뒤로의 인쇄
전술한 바와 같이, 시스템은 이용자로 하여금 방화벽 뒤의 사설 네트워크상에 위치되는, 문서 및 출력 장치를 포함하는 리소스에 액세스할 수 있도록 한다. 초기 아키텍처에서, 이러한 기능은 방화벽을 통해 지속적인 통신 채널 메시지 채널로의 메시지 채널(Message Channel-to-Message Channel persistent communicationchannel)을 이용함으로써 촉진될 수 있다. 도58을 참조하여, 이것이 완수될 수 있는 또 다른 방식은 CGI/VPN 프록시의 이용자를 통한 방식이다. 도58에 도시된 바와 같이, 시스템의 각종 이용자 인터페이스(750)는, DMZ(754) 내에 배치된 CGI VPN 프록시(752)를 통해 공중 네트워크(즉, 인터넷(60))로부터 공중 이용자 통신이 라우팅 되게 구성될 수 있다. 그 다음에 CGI VPN 프록시는 방화벽(758)을 통해 보안 패스-스루(secure pass-through)를 제공하는 VPN 스위치(756)를 통한 통신을 라우팅하고, 이것은 DMZ(754)와 사설 인터넷(760) 사이에 보안 보호를 제공한다. 그 다음에 VPN 스위치는 인터넷(760) 내에 위치되는 메시지 센터(MC1)로 내향 통신을 라우팅한다. 또한 인쇄 서비스(PS1), 파일 저장(FS1) 및 출력 장치(D1)를 포함하는 3개의 사설 리소스가 인터넷에 위치된다.
도시된 아키텍처에 따라, 공중 이용자들은 공개적으로 액세스 가능한 이용자 인터페이스(즉, Web 및 WAP UI's)와 사설 네트워크 내에 위치된 메시지 센터와의 사이의 VPN 링크를 통해 사설 인터페이스에 액세스가 허가된다. 예를 들어, 이용자 인증 및 선택사양인 암호화 기술을 통해, Web 및 WAP UI's의 보안이 확보되면, 단지 인증된 이용자만이 VPN 링크에 액세스할 수 있고, 그것에 의해, 방화벽(756)의 보안 특징을 유지할 수 있다. 또한, 보안 CGI/VPN 프록시가 이용되면, 프록시를 통한 사설 네트워크로의 해킹이 실질적으로 말소된다.
이러한 구현은 공개적으로 액세스 가능한 메시지 센터를 제공하는 요구조건이 없도록 시스템의 기능을 확장한다. 예를 들어, 기업은 외판원이 본사에서 멀리 떨어져 있는 경우에 외판원에게 하나 또는 그 이상의 사설 기업 네트워크에 저장된인쇄 문서를 검색할 수 있도록 원할 수 있다. 사설 MC와 CGI/VPN 프록시와의 조합은 이들 외판원으로 하여금 사설 기업 네트워크 내의 파일 스토어에 액세스할 수 있게 하고 사설 MC에 등록된 어떤 출력 장치로의 이러한 파일 스토어 상에 저장된 문서를 인쇄할 수 있도록 한다.
VPN 스위치를 통한 사설 MC에 액세스하는 또 다른 방식은 J2ME(Java 2 Micro Edition) + VPN-인에이블 장치(762)의 이용을 통한 방식이다. 이러한 장치들은 현재개발 중이고 가까운 미래에 보다 쉽게 이용가능하게 될 것으로 상상된다. 도58에 도시된 바와 같이, 본질적으로, J2ME + VPN-인에이블 장치는, 그 장치로 하여금 VPN 프록시의 이용자를 요구함 없이 VPN 스위치와 직접 통신할 수 있도록 하는 VPN 클라이언트를 내장한다.
MC 없이 사설 네트워크상의 리소스로 인쇄
도59a 및 59b에 도시된 바와 같이, 메시지 센터를 포함하지 않는 사설 네트워크상에 위치되는 출력 장치를 인쇄할 수 있도록 시스템을 구성할 수 있다. 예를 들어, 도59a에 도시된 구성(764)에서, 메시지 센터(MC1)는 DMZ(754)에 배치되고, 반면에 예정된 프린터(D1)는 방화벽(758)에 의해 DMZ로부터 분리된 사설 인터넷(760)에 위치된다. 이러한 구성에서 지속적인 접속(764)이 사설 인터넷에 위치된 원격 데스크탑 클라이언트(RDC1)와 메시지 센터(MC1)와의 사이에서 셋업된다.
셋업 동작 동안, 원격 데스크탑 클라이언트(RDC1)는 메시지 센터를 이용하여 지속적인 접속(766)에 대응하는 통신 링크를 개방하기 위해 메시지 센터(MC1)와의통신을 초기화할 것이다. 그 다음에 RDC는 연결된 출력 장치(이 경우에 출력장치(D1))를 식별하는 메시지 센터(MC1)에 데이터를 송신할 것이다. 이러한 정보는 메시지 센터(MC1)의 RPRM 데이터베이스(242)에 저장될 것이다.
그 다음의 구성(764)에 대응하는 예시적인 인쇄 동작은 다음과 같이 진행될 수 있다. 우선, 셀룰러 폰(768)과 같은 발신 장치의 이용자는 UI(750)를 통해 메시지 센터(MC1)에 접속한다. UI를 통해, 이용자는, 예를 들어, DMZ(754)에 위치되는 파일 스토어(FS1)상에 저장되는 인쇄될 원격 소스 문서를 선택할 수 있게 된다. 선택적으로, 다른 MC의 구성 및 다른 파일 스토어의 위치에 의존하여, 문서가 또 다른 DMZ 또는 사설 네트워크(도시하지 않음)로부터 검색될 수 있다. 물론, 또한 이용자는 인쇄할 발신 장치상에 저장되는 로컬 소스 문서를 선택할 수 있다.
문서를 선택한 후, 그 다음에 이용자는 출력 장치를 선택할 것이다; 본 경우에 출력 장치(D1)가 선택된다. 인쇄 요구가 확인되면, 소스 문서는 인쇄 서비스(PS)에 의해 그 파일 스토어로부터 검색될 것이고, 만일 문서가 로컬 소스이면 인쇄 서비스로 송신될 것이다. 또한 MC는 선택된 출력 장치의 장치 특성을 식별하는 PS에 정보를 송신할 것이다. 그 다음에 인쇄 서비스는 소스 문서 및 선택된 출력 장치에 대응하는 출력 이미지 데이터를 발생시키고, 출력 이미지 데이터를 (예를 들어, 파일 스토어(FS1) 내에 위치된) 리포지토리에 출력 이미지 파일로서 저장한다. 그 다음에 PS는 작업이 완료된 메시지 센터(MC1)를 출력 이미지 파일로의 참조를 따라서 통지한다. 그 다음에 메시지 센터는 출력 이미지 파일을 검색하고 지속적인 접속(766)을 통해 원격 데스크탑 클라이언트(RDC1)로 나아가게 한다. 이미지 데이터 파일이 수신되면, 그 다음에 RDC는 렌더링을 위해 그것을 출력 장치(D1)에 제공한다. 완료되면, RDC는 지속적인 접속(766)을 통해 메시지 센터를 통보할 것이고, 그 후에 MC는 이용자에게 인쇄 작업이 완료되었다는 것을 통지하기 위해 UI(750)을 갱신한다.
동일한 종료 결과를 생산하는 구성(770)이 도59b에 도시되어 있다. 이 경우에, VPN 스위치(756) 및 VCN 클라이언트(772 및 774)의 추가를 제외하고, 모든 구성요소는 도59a에 도시된 것과 동일하다. 이 경우에, 메시지 센터((MC1)와 원격 데스크탑 클라이언트(RDC1)는 VPN 채널(766)을 통해 통신한다. VPN 채널의 이용은 사설 인터넷(760)을 위한 보안의 엑스트라 레벨을 제공한다.
전술한 설명 및 첨부한 도면에서, MS 윈도우 운영체제 구성요소에 의해 제공되는 소프트웨어 동작을 구현하는 본 발명의 실시예가 개시되었다. 본 발명의 이론 및 사상은 유닉스 기반 운영체제 및 리눅스 기반 운영체제와 같은 다른 운영체제가 이용되는 구현에 적용될 수 있기 때문에, 이것은 제한적으로 간주되어서는 안된다. 예를 들어, 각종 유닉스 및 리눅스 운영체제는 그래픽 이용자 인터페이스(graphical user interface), 어플리케이션 API's 및 전술한 MS 윈도우 인쇄 지원 구성요소(예: 윈도우 GDI, 인쇄 스풀러, 프린터 드라이버 등)에 유사한 동작을 제공하는 OS 커널에 의해 지원되는 인쇄 특성을 제공한다.
예시적인 서버 컴퓨터 시스템
도60을 참조하여, 통상적으로 종래의 컴퓨터 서버(800)가 도시되었는데, 이것은 본 발명의 실행과 접속한 이용에 적합하고, 분리된 컴퓨터가 웹 서버 동작을 수행하기 위해 이용되는 DPS 서버 컴퓨터 및 웹 서버 컴퓨터에 대해 이용될 수 있다. 이들 목적에 적합할 수 있는 컴퓨터 시스템의 예들은 마이크로소프트 윈도우, 유닉스 기반 및 리눅스 기반 운영체제를 동작시키는 컴퓨터 서버를 포함한다.
이 기술분야에서 통상의 지식을 가진 자에게 주지된 바와 같이, 컴퓨터 서버(800)는 하나 또는 그 이상의 프로세서(804) 및 메모리(예: DIMMs 또는 SIMMs)를 포함하는 적합한 집적회로로 채워진 마더보드(motherboard)(도시하지 않음)에 설치되는 새시(802)를 포함한다. 모니터(808)는, 소프트웨어 프로그램 및 컴퓨터 서버에 의해 실행되는 프로그램 모듈에 의해 발생되는 그래픽 및 텍스트를 디스플레이하기 위해 포함된다. 마우스(810)(또는 다른 위치지정도구)는 새시(802)의 후면상의 직렬 포트로(또는 버스 포트 또는 USB 포트)에 접속될 수 있고, 마우스(810)로부터의 신호는 디스플레이상의 커서를 제어하고 컴퓨터에 실행 중인 소프트웨어 프로그램 및 모듈에 의해 모니터(808)상에 디스플레이되는 텍스트, 메뉴 옵션 및 그래픽 구성요소를 선택하기 위해 모기판에 송신된다. 또한, 키보드(812)는 컴퓨터에 실행 중인 소프트웨어의 실행에 작용하는 텍스트 및 명령의 이용자 엔트리를 위해 모기판에 결합된다. 또한 컴퓨터 서버(800)는 네트워크 인터페이스 카드(NIC)(814) 또는 네트워크(816)를 통해 서버로 하여금 데이터 송수신을 할 수 있게 하기 위해 모기판에 내장되는 등가회로를 포함한다.
본 발명에 대응하는 파일 시스템 저장은, 새시(802) 내에 내부적으로 저장되는 복수의 하드디스크(818)를 통해 및/또는 SCSI 카드(822) 또는 모기판에 내장되는 등가 SCSI 회로를 통해 액세스될 수 있는 외부 디스크 어레이(820)에 저장되는 복수의 하드디스크를 통해 구현될 수 있다. 선택적으로, 디스크 어레이(820)는 적합한 섬유 채널 인터페이스 카드(도시하지 않음) 또는 내장 회로를 이용하는 섬유 채널 링크를 이용하여 액세스될 수 있다.
통상적으로 컴퓨터 서버(800)는, 콤팩트 디스크-판독 전용 메모리(CD-ROM disk)가 삽입될 수 있어서 디스크 상에서 실행가능한 파일 및 데이터가 메모리(806)로 및/또는 하드디스크(818)상의 저장으로 이송하기 위해 판독될 수 있는 CD-ROM 드라이버(824)를 포함할 수 있다. 유사하게. 플로피 디스크 드라이버(826)가 이러한 목적들을 위해 제공될 수 있다. 광학 기록 매체 또는 DVD 드라이버와 같은 다른 대량 저장 장치 또한 포함될 수 있다. 프로세서(804)로 하여금 전술한 본 발명의 동작을 구현하도록 하는 소프트웨어 프로그램, 구성요소 및 모듈을 포함하는 기계 명령은 전형적으로 플로피 디스크(828) 또는 CD-ROM(830)(또는 다른 메모리 매체)상에 분배되고 프로세서(804)에 의한 실행을 위해 메모리(806)로 로딩될 때까지 하나 또는 그 이상의 하드디스크(818)상에 저장된다. 선택적으로, 기계 명령은 캐리어 웨이브 파일로서 네트워크(816)를 통해 로딩될 수 있다. 전술한 바와 같이, 본 발명의 실시예는 (컴퓨터의 CPU와 같은) 어떤 형태의 프로세싱 코어상에 실행 또는 구현되는 또는 기계-판독 가능한 매체 상에 또는 내에서 실현되는 소프트웨어 프로그램을 지원하기 위해 또는 소프트웨어 프로그램으로서 이용될 수 있다. 기계-판독 가능한 매체는 정보를 기계(예: 컴퓨터)에 의해 판독 가능한 형태로 저장 또는 전송하는 어떤 메커니즘을 포함한다. 예를 들어, 기계-판독 가능한 매체는 판독 전용 메모리(ROM), 비순차적 액세스 메모리, 자기 디스크 저장 매체, 광학 저장 매체 및 플래시 메모리 장치 등을 포함할 수 있다. 또한, 기계-판독 가능한 매체는 전기신호, 광신호, 음향신호 또는 다른 형태의 전파된 신호(예: 반송파, 적외선 신호, 디지털 신호 등)와 같은 전파된 신호를 포함할 수 있다.
그러므로, 본 발명의 실시예는 (컴퓨터의 CPU와 같은) 어떤 형태의 프로세싱 코어상에 실행 또는 구현되는 또는 기계-판독 가능한 매체 상에 또는 내에서 실현되는 소프트웨어 프로그램을 지원하기 위해 또는 소프트웨어 프로그램으로서 이용될 수 있다. 기계-판독 가능한 매체는 정보를 기계(예: 컴퓨터)에 의해 판독 가능한 형태로 저장 또는 전송하는 어떤 메커니즘을 포함한다. 예를 들어, 기계-판독 가능한 매체는 판독 전용 메모리(ROM), 비순차적 액세스 메모리, 자기 디스크 저장 매체, 광학 저장 매체 및 플래시 메모리 장치 등을 포함할 수 있다. 또한, 기계-판독 가능한 매체는 전기신호, 광신호, 음향신호 또는 다른 형태의 전파된 신호(예: 반송파, 적외선 신호, 디지털 신호 등)과 같은 전파된 신호를 포함할 수 있다.
본 발명의 도시된 실시예의 전술한 설명은, 발명의 요약에서 설명된 것을 포함하고, 개시된 정확한 형태에 철저하거나 한정되도록 의도되지 않는다. 본 발명의 특정 실시예 및 예들은 도시의 목적으로 설명되고, 관련 기술분야의 당업자가 인지함에 따라, 본 발명의 범위 내에서 각종 등가의 변형이 가능하다.
이러한 변형은 전술한 상세한 설명에 비추어서 본 발명에 이루어질 수 있다. 첨부된 청구항에서 이용되는 용어는 명세서 및 청구항에 개시되는 특정 실시예로본 발명을 한정하기 위한 것으로 이해되어서는 안된다. 오히려, 본 발명의 범위는 청구항에 의해 전체적으로 이해되어야 한다.

Claims (67)

  1. 방화벽 외측의 발신 장치로부터 상기 방화벽 뒤의 사설 네트워크 상에서 인쇄하기 위한 방법에 있어서,
    상기 방화벽 뒤에 위치된 출력 관리 시스템 구성요소와 상기 방화벽 외측의 출력 관리 시스템 사이에 상기 방화벽을 통과하는 패스-스루 통신 링크(pass-through communication link)를 설정하는 단계;
    이용자 인터페이스가 상기 발신 장치 상에 렌더링될 수 있도록 렌더링가능한 데이터(renderable data)를 상기 발신 장치에 제공하는 단계;
    이용자로 하여금 상기 이용자 인터페이스를 통해 인쇄될 소스 데이터를 선택할 수 있도록 하는 단계;
    이용자로 하여금 상기 소스 데이터가 인쇄될 상기 사설 네트워크 상의 출력 장치를 선택할 수 있도록 하는 단계;
    스토어로부터 상기 소스 데이터를 검색하는 단계;
    상기 선택된 소스 데이터 및 출력 장치에 대응하는 출력 이미지 데이터를 렌더링하는 단계;
    상기 방화벽 외측의 출력 관리 시스템 구성요소로부터 상기 방화벽 뒤에 위치된 출력 관리 시스템 구성요소로 상기 출력 이미지 데이터를 송신하는 단계; 및
    상기 방화벽 뒤에 위치된 출력관리 시스템 구성요소로부터 상기 출력 장치에 의해 물리적으로 렌더링될 상기 출력 장치로 상기 출력 이미지 데이터를 제공하는단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 방화벽 외측에 위치된 출력 관리 시스템 구성요소 및 상기 방화벽 뒤에 위치된 출력 관리 시스템 구성요소 각각은, 출력 관리 시스템 내의 다른 구성요소의 관리를 제공하는 메시지 센터 구성요소를 포함하는
    방법.
  3. 제1항에 있어서,
    상기 방화벽 뒤에 위치된 출력 관리 시스템 구성요소로부터 상기 패스-스루 통신 링크를 거쳐 상기 방화벽의 외측의 출력 관리 시스템 구성요소로, 상기 방화벽 뒤에 위치된 상기 출력 관리 시스템 구성요소를 통해 액세스될 수 있는 상기 방화벽 뒤에 위치된 하나 또는 그 이상의 출력 장치를 식별하는 데이터를 송신하는 단계
    를 더 포함하는 방법.
  4. 제1항에 있어서,
    상기 방화벽의 외측에 위치된 출력 관리 시스템 구성요소는 서버 구성요소를 포함하고, 상기 방화벽 뒤의 출력 관리 시스템 구성요소는 클라이언트 구성요소를 포함하는
    방법.
  5. 제1항에 있어서,
    상기 패스-스루 통신 링크는 가상 사설 네트워크(VPN:virtual private network) 링크를 포함하는
    방법.
  6. 제1항에 있어서,
    상기 발신 장치는 웹-인에이블 방식의 무선 장치(web-enabled wireless device)를 포함하는
    방법.
  7. 제1항에 있어서,
    상기 발신 장치는 블루투스-인에이블 방식의 장치(Bluetooth-enabled device)를 포함하는
    방법.
  8. 제1항에 있어서,
    상기 스토어는 상기 발신 장치 상의 로컬 스토어(local store)를 포함하는
    방법.
  9. 제1항에 있어서,
    상기 스토어는 상기 무선 장치로부터 원격으로 위치되는 원격 스토어를 포함하는
    방법.
  10. 제9항에 있어서,
    상기 원격 스토어는 상기 사설 네트워크 상에 위치되는
    방법.
  11. 제1항에 있어서,
    상기 소스 데이터의 파일 타입을 판정하는 단계;
    상기 출력 이미지 데이터를 생성하기 위해, 상기 인쇄 서비스를 통해 로드할 적당한 어플리케이션을 판정하는 단계; 및
    상기 어플리케이션으로 하여금 인쇄 서브시스템과의 협력하여 상기 출력 이미지 데이터를 생성하도록 인쇄 동작(print action)을 개시하는 단계
    를 수행함으로써 상기 출력 이미지 데이터를 생성하기 위해 인쇄 서비스가 이용되는
    방법.
  12. 제1항에 있어서,
    상기 이용자 인터페이스 상에 렌더링될 때, 상기 출력 장치에 의해 생성될 렌더링 출력의 모의 표현(simulated representation)을 포함하는 인쇄 미리보기 데이터(print preview data)를 상기 무선 장치에 제공하는 단계
    를 더 포함하는 방법.
  13. 방화벽 외측의 발신 장치로부터 상기 방화벽 뒤의 사설 네트워크 상에서 인쇄하기 위한 방법에 있어서,
    상기 방화벽 뒤에 위치된 출력 관리 시스템 구성요소와 상기 방화벽 외측의 출력 관리 시스템 사이에 상기 방화벽을 통과하는 패스-스루 통신 링크를 설정하는 단계;
    이용자 인터페이스가 상기 발신 장치 상에 렌더링될 수 있도록 렌더링가능한 데이터를 상기 발신 장치에 제공하는 단계;
    이용자로 하여금 상기 이용자 인터페이스를 통해 인쇄될 소스 데이터를 선택할 수 있도록 하는 단계;
    이용자로 하여금 상기 소스 데이터가 인쇄될 상기 사설 네트워크 상의 출력 장치를 선택할 수 있도록 하는 단계;
    상기 소스 데이터 또는 그에 대한 리퍼런스를 상기 방화벽 외측에 위치된 출력 관리 시스템 구성요소로부터 상기 방화벽 뒤에 위치된 출력관리 구성요소로 포워딩하는 단계;
    상기 선택된 소스 데이터 및 출력 장치에 대응하는 출력 이미지 데이터를 렌더링하는 단계; 및
    상기 출력 장치에 의해 물리적으로 렌더링될 상기 출력 장치로 상기 출력 이미지 데이터를 제공하는 단계
    를 포함하는 방법.
  14. 제13항에 있어서,
    상기 방화벽 외측에 위치된 출력 관리 시스템 구성요소 및 상기 방화벽 뒤에 위치된 출력 관리 시스템 구성요소 각각은, 출력 관리 시스템 내의 다른 구성요소의 관리를 제공하는 메시지 센터 구성요소를 포함하는
    방법.
  15. 제13항에 있어서,
    상기 방화벽 뒤에 위치된 출력 관리 시스템 구성요소로부터 상기 패스-스루 통신 링크를 거쳐 상기 방화벽의 외측의 출력 관리 시스템 구성요소로, 상기 방화벽 뒤에 위치된 상기 출력 관리 시스템 구성요소를 통해 액세스될 수 있는 상기 방화벽 뒤에 위치된 하나 또는 그 이상의 출력 장치를 식별하는 데이터를 송신하는 단계
    를 더 포함하는 방법.
  16. 제13항에 있어서,
    상기 방화벽 내측에 위치된 출력 관리 시스템 구성요소는 서버 구성요소를 포함하고,
    상기 출력 이미지 데이터를 상기 출력 장치로 제공하는 단계는 상기 출력 이미지 데이터를 클라이언트로 제공하는 단계를 포함하며,
    상기 출력 이미지 데이터의 수신에 응답하여, 상기 클라이언트는 렌더링을 위해 상기 출력 이미지 장치로 상기 출력 이미지 데이터를 제공하는
    방법.
  17. 제13항에 있어서,
    상기 발신 장치는 웹-인에이블 방식의 무선 장치를 포함하는
    방법.
  18. 제13항에 있어서,
    상기 발신 장치는 블루투스-인에이블 방식의 장치를 포함하는
    방법.
  19. 제13항에 있어서,
    상기 소스 데이터는 상기 발신 장치 상에 저장된 문서를 포함하고,
    상기 방화벽 외측의 출력 관리 시스템 구성요소에서 상기 발신 장치로부터의상기 소스 데이터를 수신하는 단계
    를 더 포함하는 방법.
  20. 제13항에 있어서,
    상기 소스 데이터는 원격 스토어 상에 저장되고,
    상기 원격 스토어로부터 상기 소스 데이터를 검색하는 단계
    를 더 포함하는 방법.
  21. 제20항에 있어서,
    상기 원격 스토어는 상기 사설 네트워크 상에 위치되고, 상기 소스 데이터는 상기 소스 데이터에 대한 상기 리퍼런스에 의해 식별되는 위치로부터 검색되는
    방법.
  22. 제13항에 있어서,
    상기 이용자 인터페이스를 통해 작업 상태 정보를 상기 이용자에게 제공하는 단계
    를 더 포함하는 방법.
  23. 제13항에 있어서,
    상기 소스 데이터의 파일 타입을 판정하는 단계;
    상기 출력 이미지 데이터를 생성하기 위해, 상기 인쇄 서비스를 통해 로드될 적당한 어플리케이션을 판정하는 단계; 및
    상기 어플리케이션으로 하여금 인쇄 서브시스템과 협력하여 상기 출력 이미지 데이터를 생성하도록 인쇄 동작을 개시하는 단계
    를 수행함으로써 상기 출력 이미지 데이터를 생성하기 위해 인쇄 서비스가 이용되는
    방법.
  24. 제13항에 있어서,
    상기 이용자 인터페이스 상에 렌더링될 때, 상기 출력 장치에 의해 생성될 렌더링 출력의 모의 표현을 포함하는 인쇄 미리보기 데이터를 상기 무선 장치에 제공하는 단계
    를 더 포함하는 방법.
  25. 방화벽 외측의 발신 장치로부터 상기 방화벽 뒤의 사설 네트워크 상에서 인쇄하기 위한 방법에 있어서,
    상기 발신 장치와 상기 방화벽 뒤에 위치된 출력 관리 시스템 구성요소 사이에 통신 링크를 설정하는 단계 - 상기 통신 링크는 상기 방화벽을 통과하는 가상 사설 네트워크(VPN) 터널을 포함함 - ;
    이용자 인터페이스가 상기 발신 장치 상에 렌더링될 수 있도록 렌더링가능한 데이터를 상기 발신 장치에 제공하는 단계;
    이용자로 하여금 상기 이용자 인터페이스를 통해 인쇄될 소스 데이터를 선택할 수 있도록 하는 단계;
    이용자로 하여금 상기 소스 데이터가 인쇄될 상기 사설 네트워크 상의 출력 장치를 선택할 수 있도록 단계;
    상기 소스 데이터 또는 그에 대한 리퍼런스를 상기 발신 장치로부터 상기 방화벽 뒤에 위치된 출력관리 구성요소로 상기 VPN 터널을 통해 포워딩하는 단계;
    상기 선택된 소스 데이터 및 출력 장치에 대응하는 출력 이미지 데이터를 렌더링하는 단계; 및
    상기 출력 장치에 의해 물리적으로 렌더링될 상기 출력 장치로 상기 출력 이미지 데이터를 제공하는 단계
    를 포함하는 방법.
  26. 제25항에 있어서,
    상기 이용자 인터페이스는 복수의 대화형(interactive) 웹 페이지를 포함하고, 상기 VPN 터널은 상기 방화벽에 위치된 VPN 스위치와 협력하여 상기 방화벽 외측에 위치된 공동 게이트웨이 인터페이스(CGI:common gateway interface) VPN 프록시에 의해 용이하게 동작되는(facilitated)
    방법.
  27. 제25항에 있어서,
    상기 발신 장치는 VPN-인에이블 방식의 장치(VPN-enabled device)를 포함하고, 상기 VPN 터널은 상기 VPN-인에이블 방식의 장치 상에서 실행되는 클라이언트측 구성요소와 상기 방화벽에 위치된 VPN 스위치에 의해 용이하게 동작되는
    방법.
  28. 제25항에 있어서,
    상기 방화벽 뒤에 위치된 출력 관리 시스템 구성요소는 서버 구성요소를 포함하고,
    상기 출력 이미지 데이터를 상기 출력 장치로 제공하는 단계는 상기 출력 이미지 데이터를 클라이언트로 제공하는 단계를 포함하며,
    상기 출력 이미지 데이터의 수신에 응답하여, 상기 클라이언트는 렌더링을위해 상기 출력 이미지 장치로 상기 출력 이미지 데이터를 제공하는
    방법.
  29. 제25항에 있어서,
    상기 발신 장치는 웹-인에이블 방식의 무선 장치를 포함하는
    방법.
  30. 제25항에 있어서,
    상기 발신 장치는 블루투스-인에이블 방식의 장치를 포함하는
    방법.
  31. 제25항에 있어서,
    상기 소스 데이터는 상기 발신 장치 상에 저장된 문서를 포함하고,
    상기 방화벽 뒤의 출력 관리 시스템 구성요소에서 상기 VPN 터널을 통해 상기 발신 장치로부터의 상기 소스 데이터를 수신하는 단계
    를 더 포함하는 방법.
  32. 제31항에 있어서,
    상기 소스 데이터는 원격 스토어 상에 저장되고,
    상기 원격 스토어로부터 상기 소스 데이터를 검색하는 단계
    를 더 포함하는 방법.
  33. 제32항에 있어서,
    상기 원격 스토어는 상기 사설 네트워크 상에 위치되고, 상기 소스 데이터는 상기 소스 데이터에 대한 상기 리퍼런스에 의해 식별되는 위치로부터 검색되는
    방법.
  34. 제25항에 있어서,
    상기 이용자 인터페이스를 통해 작업 상태 정보를 상기 이용자에게 제공하는 단계
    를 더 포함하는 방법.
  35. 제25항에 있어서,
    상기 소스 데이터의 파일 타입을 판정하는 단계;
    상기 출력 이미지 데이터를 생성하기 위해, 상기 인쇄 서비스를 통해 로드될 적당한 어플리케이션을 판정하는 단계; 및
    상기 어플리케이션으로 하여금 인쇄 서브시스템과 협력하여 상기 출력 이미지 데이터를 생성하도록 인쇄 동작을 개시하는 단계
    를 수행함으로써 상기 출력 이미지 데이터를 생성하기 위해 인쇄 서비스가 이용되는
    방법.
  36. 제25항에 있어서,
    상기 이용자 인터페이스 상에 렌더링될 때, 상기 출력 장치에 의해 생성될 렌더링 출력의 모의 표현을 포함하는 인쇄 미리보기 데이터를 상기 무선 장치에 제공하는 단계
    를 더 포함하는 방법.
  37. 방화벽의 외측에 위치된 발신 장치로부터 상기 방화벽 뒤에 배치된 사설 네트워크에 접속된 예정(destined) 출력 장치 상으로의 인쇄를 가능하게 하는 출력 관리 시스템에 있어서,
    입력 소스 데이터와 상기 예정 출력 장치에 대응하는 출력 이미지 데이터를 생성하기 위한 인쇄 서비스; 및
    상기 방화벽 외측에 위치되고, 상기 인쇄 서비스와 통신하여 링크되는 메시지 센터;
    를 포함하고,
    상기 메시지 센터는,
    렌더링가능한 데이터를 공급하기 위한 웹 서버 구성요소 - 이것에 의해 이용자 인터페이스(UI)는, 상기 웹 서버 구성요소와 통신하여 작동가능하게 링크되는 발신 장치 상에 렌더링될 수 있으며, 이용자가 렌더링될 소스 데이터를 선택할 수 있도록 하고, 상기 소스 데이터를 상기 예정 출력 장치 상으로 렌더링하기 위한 작업 요구를 제공할 수 있도록 함 - ; 및
    상기 사설 네트워크 상에 배치되고, 상기 방화벽을 통과하는 링크를 통해 상기 메시지 센터와 통신하여 링크되는 클라이언트측 구성요소를 포함하고,
    상기 메시지 센터는 상기 웹 서버 구성요소로부터 수신되는 작업 요구를 관리하고, 그에 응답하여 상기 선택된 소스 데이터 또는 그에 대한 리퍼런스를 상기 인쇄 서비스로 라우팅하고, 상기 인쇄 서비스에 의해 생성된 상기 출력 이미지 데이터의 상기 예정 프린터로의 전달을 제어하기 위한 시스템 관리 구성요소를 더 포함하는
    출력 관리 시스템.
  38. 제37항에 있어서,
    상기 클라이언트측 구성요소는 그 서비스를 통해 액세스될 수 있는 출력 장치들을 상기 메시지 센터에 등록하는 동작을 더 수행하는
    출력 관리 시스템.
  39. 제37항에 있어서,
    상기 클라이언트측 구성요소와 상기 메시지 센터 사이의 상기 방화벽을 통과하는 링크는 지속적인 접속(persistent connection)을 포함하는
    출력 관리 시스템.
  40. 제37항에 있어서,
    상기 출력 이미지 데이터가 출력 장치로 제공되기 전에 저장될 수 있는 출력 리포지토리(output repository)
    를 더 포함하는 출력 관리 시스템.
  41. 제37항에 있어서,
    상기 이용자 인터페이스는 무선 웹-인에이블 방식의 장치(wireless web-enabled device)를 통해 액세스될 수 있는 무선-웹 이용자 인터페이스를 포함하는
    출력 관리 시스템.
  42. 제37항에 있어서,
    상기 메시지 센터와 통신하여 링크되는 무선 데이터 액세스 포인트(WDAP: wireless data access point)
    를 더 포함하는 출력 관리 시스템.
  43. 제42항에 있어서,
    블루투스-인에이블 방식의 무선 장치(Bluetooth-enabled wireless device)가 상기 시스템에 액세스할 수 있도록 상기 WDAP에 동작가능하게 결합된 블루투스 장치 에뮬레이터
    를 더 포함하는 출력 관리 시스템.
  44. 제43항에 있어서,
    상기 이용자 인터페이스는 블루투스 프로토콜을 통해 WAP(wirelessapplication protocol)을 이용하여 서비스되는
    출력 관리 시스템.
  45. 제37항에 있어서,
    상기 인쇄 서비스는,
    상기 소스 데이터의 파일 타입을 판정하는 단계;
    상기 출력 이미지 데이터를 생성하기 위해, 상기 인쇄 서비스를 통해 로드될 적당한 어플리케이션을 판정하는 단계; 및
    상기 어플리케이션으로 하여금 인쇄 서브시스템과 협력하여 상기 출력 이미지 데이터를 생성하기 위해 인쇄 동작을 개시하는 단계
    를 수행함으로써 상기 출력 이미지 데이터를 생성하는
    출력 관리 시스템.
  46. 제37항에 있어서,
    상기 이용자 인터페이스는 이용자로 하여금 상기 소스 데이터가 렌더링될 상기 출력 장치를 선택할 수 있도록 하는
    출력 관리 시스템.
  47. 제37항에 있어서,
    이용자 프로파일 및 시스템 리소스 정보가 저장되는 데이터베이스 서버
    를 더 포함하는 출력 관리 시스템.
  48. 제47항에 있어서,
    상기 이용자 인터페이스는 이용자로 하여금 상기 출력 관리 시스템을 통해 액세스가능한 출력 장치 중에서 하나 또는 그 이상의 즐겨찾는 출력 장치를 선택 및/또는 지정할 수 있도록 하고,
    여기서, 상기 이용자에 의해 선택 및/또는 지정된 출력 장치에 관한 데이터는 상기 데이터베이스 서버에 의해 저장되는
    출력 관리 시스템.
  49. 제37항에 있어서,
    상기 메시지 센터는 루트(root) 메시지 센터를 포함하고,
    여기서, 상기 클라이언트측 구성요소는 메시지 센터 계층에서 상기 루트 메시지 센터의 아래에 위치된 제2 메시지 센터를 포함하는
    출력 관리 시스템.
  50. 제37항에 있어서,
    상기 인쇄 서비스는 상기 방화벽 뒤에 배치되는
    출력 관리 시스템.
  51. 제37항에 있어서,
    상기 인쇄 서비스 및 상기 클라이언트측 구성요소는 단일 머신에 의해 호스트되는
    출력 관리 시스템.
  52. 제37항에 있어서,
    상기 인쇄 서비스는 상기 방화벽의 외측에 배치되고,
    상기 클라이언트측 구성요소는 원격 데스크탑 클라이언트(remote desktop client)를 포함하고, 상기 원격 데스크탑 클라이언트(remote desktop client)는 상기 메시지 센터를 통해 이미지 출력 손상부분(image output damage)을 수신하고, 상기 이미지 출력 손상부분을 렌더링을 위한 상기 예정 출력 장치로 제공하는
    출력 관리 시스템.
  53. 제37항에 있어서,
    상기 인쇄 서비스는, 상기 이용자 인터페이스 상에 렌더링될 때, 상기 출력 장치에 의해 생성될 렌더링 출력의 모의 표현을 포함하는 인쇄 미리보기 데이터를 상기 무선 장치에 더 제공하는
    출력 관리 시스템.
  54. 방화벽의 외측에 위치된 발신 장치로부터 상기 방화벽 뒤에 배치된 사설 네트워크에 접속된 예정 출력 장치 상에서의 인쇄를 가능하게 하는 출력 관리 시스템에 있어서,
    입력 소스 데이터와 상기 예정 출력 장치에 대응하는 출력 이미지 데이터를 생성하기 위한 인쇄 서비스; 및
    상기 방화벽 내측에 위치되고, 상기 인쇄 서비스와 통신하여 링크되는 메시지 센터
    를 포함하고,
    상기 메시지 센터는,
    렌더링가능한 데이터를 제공하기 위한 웹 서버 구성요소 - 이것에 의해 이용자 인터페이스(UI)는, 보안 링크를 통해 상기 웹 서버 구성요소와 통신하여 동작가능하게 링크된 발신 장치상에 렌더링되어, 이용자가 렌더링될 소스 데이터를 선택할 수 있도록 하고, 상기 소스 데이터를 상기 예정 출력 장치상으로 렌더링하기 위한 작업 요구를 제공할 수 있도록 함 - ; 및
    상기 웹 서버 구성요소로부터 수신되는 작업 요구를 관리하고, 그에 응답하여 상기 선택된 소스 데이터 또는 그에 대한 리퍼런스를 상기 인쇄 서비스로 라우팅하고, 상기 인쇄 서비스에 의해 생성된 상기 출력 이미지 데이터의 상기 예정 프린터로의 전달을 제어하기 위한 시스템 관리 구성요소를 포함하는
    출력 관리 시스템.
  55. 제54항에 있어서,
    VPN-인코드된 데이터가 상기 방화벽을 통과하여 상기 메시지 센터에 의해 수신될 수 있도록 하기 위해 상기 방화벽과 함께 배치되는 가상 사설 네트워크(VPN) 스위치
    를 더 포함하는 출력 관리 시스템.
  56. 제54항에 있어서,
    상기 비-VPN 인에이블 방식의 무선 장치(non-VPN-enabled originating device)와 상기 메시지 센터 사이에 보안 접속을 제공하는기 위해, 상기 이용자 인터페이스를 통해 비-VPN 인에이블 방식의 발신 장치로부터 수신되는 데이터를 VPN-인코드된 데이터로 인코딩하기 위해 상기 방화벽의 외측에 배치된 공동 게이트웨이 인터페이스(CGI) VPN 프록시
    를 더 포함하는 출력 관리 시스템.
  57. 제54항에 있어서,
    상기 출력 장치는 상기 무선 장치에 의해 직접적으로 액세스될 수 없는 사설 네트워크 상에 배치되는
    출력 관리 시스템.
  58. 렌더링가능한 데이터를 제공하도록 구성된 소스트웨어를 실행하기 위해 적어도 하나의 웹 서버를 포함하는 웹 서버 계층(tier) - 이것에 의해, 이용자 인터페이스(UI)는 상기 적어도 하나의 웹 서버와 통신하여 동작가능하게 링크된 발신 장치 상에서 렌더링될 수 있고, 상기 이용자 인터페이스는 이용자로 하여금 렌더링될 소스 데이터를 선택할 수 있도록 하고, 상기 소스 데이터를 예정 출력 장치상으로 렌더링하기 위한 작업 요구를 제공할 수 있도록 함 - ;
    입력 소스 데이터 및 상기 입력 소스 데이터가 렌더링될 출력 장치에 대응하는 출력 이미지 데이터를 생성하는 인쇄 서비스를 수행하기 위한 소프트웨어를 실행하기 위해, 적어도 하나의 인쇄 서비스 서버를 포함하는 인쇄 서비스 계층; 및
    작업 요구를 관리하도록 구성된 소프트웨어를 실행하고, 그에 응답하여, 상기 선택된 소스 데이터 또는 그에 대한 리퍼런스를 상기 인쇄 서비스 계층으로 라우팅하고, 상기 인쇄 서비스에 의해 생성된 상기 출력 이미지 데이터의 렌더링을 위한 예정 프린터로의 제공을 관리하기 위해 적어도 하나의 메시지 센터 서버를 포함하는 메시지 센터 계층
    을 포함하고,
    여기서, 상기 인쇄 서비스 및 상기 메시지 서비스 계층들 내의 상기 서버 중 적어도 하나의 서버는 사설 네트워크 상의 방화벽 뒤에 위치되는
    출력 관리 시스템.
  59. 제58항에 있어서,
    적어도 하나의 데이터베이스를 호스팅하기 위해 적어도 하나의 데이터베이스 서버를 포함하는 데이터베이스 계층
    을 더 포함하고,
    상기 데이터베이스 계층은 시스템 관리 및 작업 요구 데이터를 포함하는 시스템 데이터를 저장하는
    출력 관리 시스템.
  60. 제58항에 있어서,
    상기 데이터베이스 계층은,
    상기 시스템 관리 및 작업 요구 데이터가 저장되는 메시지 센터 데이터베이스; 및
    상기 인쇄 서비스에 관한 데이터가 저장되는 인쇄 서비스 데이터베이스를 포함하는
    출력 관리 시스템.
  61. 제58항에 있어서,
    상기 데이터베이스 계층은 상기 출력 이미지 데이터가 예정 출력 장치로 제공되기 이전에 저장될 수 있는 출력 이미지 스토어를 더 포함하는
    출력 관리 시스템.
  62. 제58항에 있어서,
    상기 웹 서버 계층은 복수의 웹 서버를 포함하고, 상기 복수의 웹 서버들 사이의 인입(incoming) 접속들의 평형을 맞추기 위한 부하 평형기(load balancer)를 더 포함하는
    출력 관리 시스템.
  63. 제58항에 있어서,
    상기 인쇄 서비스 계층은 복수의 인쇄 서비스 서버에 의해 호스팅되고, 상기 복수의 웹 서버들 사이의 인입 인쇄 서비스 요구들의 평형을 맞추기 위한 부하 평형기를 더 포함하는
    출력 관리 시스템.
  64. 제58항에 있어서,
    상기 메시지 센터 계층으로부터 수신되는 출력 장치 제공 명령어에 의해 지정되는 예정 출력 장치로 상기 출력 이미지 데이터를 제공하기 위해, 상기 메시지 센터 계층 및 적어도 하나의 출력 장치와 통신하여 링크되는 원격 데스크탑 클라이언트
    를 더 포함하는 출력 관리 시스템.
  65. 제58항에 있어서,
    상기 이용자 인터페이스는 무선 웹-인에이블 방식의 장치를 통해 액세스될수 있는 무선-웹 이용자 인터페이스를 포함하는
    출력 관리 시스템.
  66. 제58항에 있어서,
    상기 인쇄 서비스는,
    상기 소스 데이터의 파일 타입을 판정하는 단계;
    상기 출력 이미지 데이터를 생성하기 위해, 상기 인쇄 서비스를 통해 로드될 적당한 어플리케이션을 판정하는 단계; 및
    상기 어플리케이션으로 하여금 인쇄 서브시스템과 협력하여 상기 출력 이미지 데이터를 생성하도록 인쇄 동작을 개시하는 단계
    를 수행함으로써 상기 출력 이미지 데이터를 생성하는
    출력 관리 시스템.
  67. 제58항에 있어서,
    상기 인쇄 서비스는, 상기 이용자 인터페이스 상에 렌더링될 때, 상기 예정 출력 장치에 의해 생성될 렌더링 출력의 모의 표현을 포함하는 인쇄 미리보기 데이터를 상기 무선 장치에 더 제공하는
    출력 관리 시스템.
KR10-2004-7002682A 2001-08-22 2002-08-22 사설 네트워크 리소스로의 액세스를 가능하게 하기 위한출력 관리 시스템 및 방법 KR20040039304A (ko)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US31441201P 2001-08-22 2001-08-22
US60/314,412 2001-08-22
US35175402P 2002-01-23 2002-01-23
US60/351,754 2002-01-23
US10/098,832 2002-03-13
US10/098,832 US20020138564A1 (en) 2001-03-21 2002-03-13 Universal printing and document imaging system and method
US10/104,528 2002-03-21
US10/104,528 US6993562B2 (en) 2002-03-21 2002-03-21 Method and system to print via email
US10/225,582 US20030079030A1 (en) 2001-08-22 2002-08-21 Output management system and method for enabling access to private network resources
US10/225,582 2002-08-21
PCT/US2002/026791 WO2003019389A1 (en) 2001-08-22 2002-08-22 Output management system and method for enabling access to private network resources

Publications (1)

Publication Number Publication Date
KR20040039304A true KR20040039304A (ko) 2004-05-10

Family

ID=27536904

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2004-7002682A KR20040039304A (ko) 2001-08-22 2002-08-22 사설 네트워크 리소스로의 액세스를 가능하게 하기 위한출력 관리 시스템 및 방법

Country Status (5)

Country Link
EP (1) EP1428129A1 (ko)
JP (1) JP2005523489A (ko)
KR (1) KR20040039304A (ko)
CN (1) CN1307565C (ko)
WO (1) WO2003019389A1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101249185B1 (ko) * 2009-01-06 2013-04-03 캐논 가부시끼가이샤 인쇄 시스템, 인쇄 서버 및 그 제어 방법
KR101442368B1 (ko) * 2010-02-23 2014-09-17 지티이 코포레이션 영역에 기반한 통신 서비스 처리 방법 및 장치
KR20190134505A (ko) 2018-05-25 2019-12-04 주식회사 엠디헬스케어 qPCR 분석을 통한 대장암 진단방법
KR20210030846A (ko) 2019-09-10 2021-03-18 주식회사 엠디헬스케어 세포밖 소포의 메타게놈 및 대사체 기반 대장암 진단방법

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040196486A1 (en) * 2003-04-01 2004-10-07 Atsushi Uchino Addressbook service for network printer
US7448080B2 (en) * 2003-06-30 2008-11-04 Nokia, Inc. Method for implementing secure corporate communication
US7640066B2 (en) 2004-02-05 2009-12-29 York International Corporation Transport of encapsulated serial data via instant messaging communication
JP4428250B2 (ja) * 2005-02-17 2010-03-10 セイコーエプソン株式会社 ネットワークに接続された印刷装置の印刷進行状況監視制御
JP4650200B2 (ja) * 2005-10-13 2011-03-16 ブラザー工業株式会社 画像処理プログラム
US8411291B2 (en) 2005-10-13 2013-04-02 Brother Kogyo Kabushiki Kaisha Image processing program product
CN102685196A (zh) * 2010-12-22 2012-09-19 北京华夏未来信息技术有限公司 在虚拟应用环境下改善用户体验的方法及虚拟应用系统
US9319244B2 (en) 2010-12-22 2016-04-19 Usablenet Inc. Methods for emailing labels as portable data files and devices thereof
JP5736972B2 (ja) * 2011-05-30 2015-06-17 富士ゼロックス株式会社 蓄積装置及び通信システム
CN103955348B (zh) * 2014-05-06 2018-12-18 南京四八三二信息科技有限公司 一种网络打印系统和打印方法
JP6217604B2 (ja) * 2014-11-21 2017-10-25 コニカミノルタ株式会社 通信システム、通信方法、ゲートウェイ機能付きデバイス及びプログラム
CN104978403B (zh) * 2015-06-04 2018-08-24 无锡天脉聚源传媒科技有限公司 一种视频专辑名称的生成方法及装置
JP6627314B2 (ja) 2015-08-03 2020-01-08 株式会社リコー 通信システム、通信方法、通信装置およびプログラム
KR20200072854A (ko) * 2018-12-13 2020-06-23 에스케이하이닉스 주식회사 데이터 처리 시스템 및 그것의 동작방법
CN112199865B (zh) * 2020-11-11 2022-03-22 西南科技大学 基于sbr的多层密闭舱体射线跟踪方法、存储介质及终端
CN114415987B (zh) * 2021-12-02 2023-09-22 杭州衣科信息技术股份有限公司 一种针对iOS系统的多客户端协调连接打印系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5680461A (en) * 1995-10-26 1997-10-21 Sun Microsystems, Inc. Secure network protocol system and method
US5828833A (en) * 1996-08-15 1998-10-27 Electronic Data Systems Corporation Method and system for allowing remote procedure calls through a network firewall
US6226372B1 (en) * 1998-12-11 2001-05-01 Securelogix Corporation Tightly integrated cooperative telecommunications firewall and scanner with distributed capabilities

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101249185B1 (ko) * 2009-01-06 2013-04-03 캐논 가부시끼가이샤 인쇄 시스템, 인쇄 서버 및 그 제어 방법
US8576422B2 (en) 2009-01-06 2013-11-05 Canon Kabushiki Kaisha Print system, print server, control method thereof, and program capable of registering printer configuration information in a service provider in an environment in which a service for providing the printing function is utilized
US8755065B2 (en) 2009-01-06 2014-06-17 Canon Kabushiki Kaisha Print system, print server, control method thereof, and program
US9041968B2 (en) 2009-01-06 2015-05-26 Canon Kabushiki Kaisha Print system, print server, control method thereof, and program
US9354828B2 (en) 2009-01-06 2016-05-31 Canon Kabushiki Kaisha Print system, print server, control method thereof, and program
KR101442368B1 (ko) * 2010-02-23 2014-09-17 지티이 코포레이션 영역에 기반한 통신 서비스 처리 방법 및 장치
KR20190134505A (ko) 2018-05-25 2019-12-04 주식회사 엠디헬스케어 qPCR 분석을 통한 대장암 진단방법
KR20210030846A (ko) 2019-09-10 2021-03-18 주식회사 엠디헬스케어 세포밖 소포의 메타게놈 및 대사체 기반 대장암 진단방법

Also Published As

Publication number Publication date
CN1575458A (zh) 2005-02-02
CN1307565C (zh) 2007-03-28
EP1428129A1 (en) 2004-06-16
JP2005523489A (ja) 2005-08-04
WO2003019389A1 (en) 2003-03-06

Similar Documents

Publication Publication Date Title
US8019829B2 (en) Output management system and method for enabling printing via wireless devices
US8065357B2 (en) Output management system and method for enabling access to private network resources
KR20040029438A (ko) 무선 장치를 통한 인쇄를 가능하게 하는 출력 관리 시스템및 방법
KR20040039304A (ko) 사설 네트워크 리소스로의 액세스를 가능하게 하기 위한출력 관리 시스템 및 방법
US6925481B2 (en) Technique for enabling remote data access and manipulation from a pervasive device
US7024497B1 (en) Methods for accessing remotely located devices
US9280547B2 (en) System and method for displaying and operating multi-layered item list in browser with supporting of concurrent users
US10686664B1 (en) System and method for access resources by deploying web based multi-layers item list
US7277912B2 (en) Browser environment using multiple browser instantiations
US7028102B1 (en) Method and system for presenting information
CN1703031B (zh) 用于将企业服务安全扩展到移动设备的移动网关
US8069246B2 (en) Relay server and relay communication system including a relay group information registration unit, a shared resource information registration unit, and a control unit
US20020138564A1 (en) Universal printing and document imaging system and method
JP2005251194A (ja) アクセスを管理する方法、プログラム、及びシステム、及び、電子メール・メッセージを送信する方法、及びプログラム
JP2004213656A (ja) ドライバレス・ウェブ・プリント・サーバでのオンライン・プリント
JP2001320405A (ja) 情報アクセス方法及びネットワークシステム
WO2002046971A1 (en) Remote service agent for sending commands and receiving data over e-mail network
US20120198033A1 (en) Display, View and Operate Multi-Layers Item list in Web-Browser With Supporting of Concurrent Multi-Users
JP2002328869A (ja) モバイル機器によりファイアウォールを通してリモートで情報を適用する方法及び装置
JP2000293458A (ja) データ配信装置及びデータ受信装置及びそれらの制御方法
JP3743314B2 (ja) 移動端末によるpc端末接続操作システム及び方法
AU2002336388A1 (en) Output management system and method for enabling printing via wireless devices
AU2002327508A1 (en) Output management system and method for enabling access to private network resources
JP2007148605A (ja) ワークフロー情報管理装置、同方法及びプログラム
KR20030009772A (ko) 이메일 플랫폼 제공장치 및 그 방법

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