KR20060113952A - 인터넷 리스너/퍼블리셔 - Google Patents

인터넷 리스너/퍼블리셔 Download PDF

Info

Publication number
KR20060113952A
KR20060113952A KR1020067012144A KR20067012144A KR20060113952A KR 20060113952 A KR20060113952 A KR 20060113952A KR 1020067012144 A KR1020067012144 A KR 1020067012144A KR 20067012144 A KR20067012144 A KR 20067012144A KR 20060113952 A KR20060113952 A KR 20060113952A
Authority
KR
South Korea
Prior art keywords
listener
publisher
intranet
internet
http
Prior art date
Application number
KR1020067012144A
Other languages
English (en)
Other versions
KR101109608B1 (ko
Inventor
로저 에이 다힐만
미첼 더블유 필
Original Assignee
스퀘어 디 컴패니
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 스퀘어 디 컴패니 filed Critical 스퀘어 디 컴패니
Publication of KR20060113952A publication Critical patent/KR20060113952A/ko
Application granted granted Critical
Publication of KR101109608B1 publication Critical patent/KR101109608B1/ko

Links

Images

Classifications

    • 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/0281Proxies
    • 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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • 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
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

통신 조직은 인트라넷(40) 웹 서비스(52)들과 통신하는 인트라넷(40) 상의 퍼블리셔(58)와 인터넷(30)상의 리스너(55)에 대하여 회사 인트라넷(40)상의 회사 방화벽(54) 뒤에서 선택된 서비스들에 인터넷(30) 액세스를 허용하며, 퍼블리셔(58)로부터의 질문에 응답하여 리스너(55)로부터 수신된 응답들에 삽입되는, 인터넷(30) 사용자로부터의 요청들을 선택하는 것에 응답한다.
인터넷, 인트라넷

Description

인터넷 리스너/퍼블리셔{INTERNET LISTENER/PUBLISHER}
본 발명은 인터넷 리스너/퍼블리셔에 관한 것이다.
방화벽 뒤에 있는 인트라넷 기반 시스템에 인터넷 기반 애플리케이션이 IOD(information on demand)를 송신 또는 수신하는 것이 대체로 바람직하다. 이러한 작업을 행하는데 직면하는 문제점은, 대부분의 회사 방화벽이 HTTP(HyperText Transfer Protocol)에 사용되는 포트 80 과 같은 인터넷 프로토콜(IP)에 대한 인바운드(inbound) 요청을 차단하고, 아웃바운드 인터넷 요청만을 허용하다는 점이다. 인바운드 요청을 행하는 능력없이는, 인트라넷 기반 시스템을 호출하는 것은 불가능하다. 만일 인바운드 요청들이 차단되지 않는다면, 이러한 요청들은 인트라넷 애플리케이션에 사용하기 위한 인트라넷 상의 장치들로부터 정보를 획득하는데 사용될 수 있다. XML(Extensible Markup Language) SOAP(Simple Object Access Protocol) 에 의해 형성된 웹 서비스들은 HTTP를 통하여 이러한 요청을 행한다. 인트라넷 상의 커스터머가 인바운드 요청들을 행하기를 원하는 경우, 그 커스터머는 통상적으로 보안 위험을 수용할 수 있다는 것에 대하여 회사의 IT 부를 납득시켜야 하는 많은 어려움을 가진다. 만일 불가능하지 않다면, 이는 인터넷으로부터 액세스될 수 있는 인트라넷 상의 HTTP 서버와 같은 솔루션(즉, 웹 서비스)을 사용 하는 것을 어렵게 한다.
요컨대, 전술한 바에 의하면, 본 발명은 인터넷 리스너/퍼블리셔 조직(scheme)을 설명하며, 이것은 HTTP 또는 보안 소켓 계층에 걸쳐 계층화된 HTTP(HTTPS) 인바운드 요청들을 인트라넷 상의 퍼블리셔와 인터넷 상의 방화벽 외부의 리스너와의 상호 작용을 통하여 인터넷으로부터 인트라넷으로 행할 수 있다.
따라서, 본 발명의 목적은 인터넷 기반 사용자에 대한 시스템을 제공하여 인트라넷 상의 시스템에 액세스하는 것이며, 여기서 방화벽은 인터넷과 인트라넷 사이에 동작가능하게 개재된다.
본 발명의 또 다른 목적은 인터넷 기반 사용자가 인트라넷 기반 시스템들에 접속되는 장치들에 액세스 및 모니터할 수 있는 시스템을 제공하는 것이며, 여기서 방화벽은 인터넷과 인트라넷 사이에 동작가능하게 개재된다.
도 1a 는 방화벽에 의한 인터넷 HTTP 요청의 차단을 나타내는 블록도이다.
도 1b 는 인트라넷 기반 웹 서비스에 인터넷 HTTP 액세스하기 위한 프록시 조직을 나타내는 블록도이다.
도 2 는 인터넷 리스너/퍼블리셔 조직의 바람직한 실시형태의 블록도이다.
도 3 은 인터넷 조직의 바람직한 실시형태의 통신 흐름에 대한 블록도이다.
도 4 는 리스너에 대한 통신 링크의 타이밍을 설명하는 퍼블리셔의 작업 흐름도이다.
도 5 는 퍼블리셔에 대한 통신 링크의 타이밍을 설명하는 리스너의 작업 흐름도이다.
다음으로 도면들 중 먼저 도 1a 를 참조하면, 애플리케이션(60)은 방화벽(54)의 측면의 인트라넷(40) 상의 웹 서비스(52)에 HTTP 요청(110)을 행한다. 인터넷 애플리케이션(60)은 요청 응답(124)을 수신할 것을 기대한다. 그러나, 방화벽(54)와 같은 대부분의 회사 방화벽은 인바운드 HTTP 서비스 요청(110)을 차단하고 아웃바운드 요청들만을 허용한다.
이것이 제한사항이라는 점을 극복하는 하나의 방법을 도 1b 에 나타내며, 여기서 방화벽(54)의 측면의 인트라넷(40) 상의 HTTP 리스너(55)는 프록시 에이전트로서 기능한다. 이러한 특정 구현예에서, HTTP 프로토콜을 사용한다. 외부 애플리케이션(60)이 인터넷(30)을 통한 인트라넷(40) 상의 웹 서비스(52)을 호출하기 위하여, 외부 애플리케이션은 리스너(55)에게 HTTP 프록시 요청(112)을 행한다. 이 프록시 요청(112) 은 호출에 대한 웹 서비스(52)의 인트라넷 어드레스를 나타내는 파라미터의 부가에 대한 표준 HTTP 요청일 수 있다.
예 : http://www.HttpListener.com?Redirect-http://intranet/webservice
퍼블리셔 파라미터가 사용되면, 이는 퍼블리셔를 이용하지 않기 위하여 리스너(55)에 대한 신호에 "국부적인"것으로 설정된다. 부가적인 파라미터 또는 파라미터들은 HTTP 헤더의 부분으로서 URL(universal resource link) 파라미터들로서 지정되거나 또는 SOAP 헤더에 포함된다.
예 :
http://www.HttpListener.com?Redirect=http://intarnet/webservice&PublisherURN-local
여분의 파라미터들 이외에, 이는 외부 애플리케이션(60)에게 이것이 리스너(55)에 대한 HTTP 요청을 행하고 있는 것으로 보여진다. 리스너(55)가 프록시 요청(112)을 수신한 이후에, 이 리스너는 웹 서비스(52)에 직접적으로 HTTP 서비스 요청(114)을 행한다. 그 후, 웹 서비스(52)는 웹 서비스 응답(120)을 전송하고 리스너(55)는 서비스 응답(124)으로서 인터넷 쪽으로 오리지널 요청 애플리케이션(60)에 전달한다.
이 동작 모드는 바람직하지 않은 방화벽 조건의 결함을 가진다. 그러나, 이는 비무장화된 지역 내에서 유용할 수 있으며, 여기서 리스너(55)는 원하는 IP 포트들에 대한 인바운드 및 아웃바운드 액세스 뿐만 아니라 인트라넷(40)에 대한 액세스를 가진다.
다음으로 도 2 를 참조하면,본 발명을 수행하도록 구성된 소프트웨어 프로세스들의 블록도를 나타낸다. 특히, 인터넷 리스너/퍼블리셔 조직(50)은 방화벽(54)의 측면의 인트라넷(40) 상에 있는 퍼블리셔(58) 및 방화벽(54)의 측면의 인터넷(30) 상에 있는 리스너(56)를 포함한다. 이 예시적인 실시형태에서는, 단지 하나의 퍼블리셔(58)와 하나의 리스너(56)가 있다. 그러나, 하나의 리스너는 복수의 퍼블리셔를 서비스할 수 있다. 퍼블리셔(58)와 리스너(56)는 이들 사이의 인터넷 HTTP 통신 채널(152)을 유지한다.
리스너(56)는 통신 채널(152)을 유지하는데 사용되는 응답 타이머(180)와 no 응답 타이머(182)와 같은 장치를 포함한다. 또한, 리스너(56)는 퍼블리셔(58)에 대하여 예정된 메시지들에 대한 요청 큐(184) 및 인터넷(30)에 대하여 예정된 메시지들에 대한 응답 큐(186)를 유지한다. 리스너(56)는 인바운드 HTTP 요청들 동안에 인터넷에 대한 HTTP 접속(150)을 유지한다.
퍼블리셔(58)는 리스너(56)와의 HTTP 접속(152)을 유지한다. 퍼블리셔는 리스너(56)로부터 수신한 인터넷 상의 요청(154)들을 통과시킨다. 퍼블리셔(58)는 오픈 인트라넷 접속을 유지하지 않고, 타이머들을 갖지 않는다. 퍼블리셔(58)에 대하여 발생하는 타임아웃만이 인트라넷 상의 웹 서비스에 대한 HTTP 프로토콜 타임아웃이 된다.
퍼블리셔(58)는 원하는 아웃바운드 포트들이 개방되어 있도록 요구하며, HTTP 또는 HTTPS 는 대부분의 회사 방화벽들에 대하여 디폴트된다. 리스너(56)는 통신 포트들이 인바운드 및 아웃바운드 트래픽에 대하여 개방되어 있도록 요구한다. 하나의 리스너(56)는 많은 인터넷 커스터머들에 대하여 인터넷(30) 상에 있을 수 있다. 리스너(56)가 인트라넷(40)으로의 접속을 요구하지 않으므로, 커스터머의 IT 부로부터 인터넷(30) 상에 리스너를 호스팅하는데 덜 방해받는다. 또한, 리스너(56)에 대한 인터넷 서비스 제공자(ISP)와 같은 외부 호스팅 회사는 옵션이며, 그 이유는 호스팅 회사가 커스터머의 인트라넷(40)에 액세스할 필요가 없기 때문이다. 퍼블리셔(58)와 리스너(56)는 제공자 네트워크의 설치 및 IT 실행에 의해 요구되는 바와 같이, 네크워크 게이트웨이, 네트워크 서버 등을 포함하는 임의의 종 래의 플랫폼 상에 집적될 수 있다.
다음으로 도 3 을 참조하면, 본 발명의 일 실시형태에 따른, 인터넷 리스너/퍼블리셔 조직(50)의 통신 흐름을 나타낸다. 퍼블리셔(58)와 웹 서비스(52)는 방화벽(54)의 인트라넷(40) 측에 있으며, 리스너(56)는 방화벽(54)의 인터넷(30) 측에 있다. 인터넷 리스너/퍼블리셔 조직(50)은 퍼블리셔(58)와 리스너(56)의 상호 작용을 통하여 인터넷(30)으로부터 인트라넷(40)으로 요청을 행할 수 있다.
본 발명의 하나의 예시적인 실시형태에 따르면, 외부 애플리케이션(60)이 인터넷을 통한 인트라넷(40)상의 웹 서비스(52)를 호출하기 위하여, 이 외부 애플리케이션은 리스너(56)에 대한 서비스 요청(112)을 행한다. 본 발명의 다른 실시형태에 따르면, 서비스 요청(112)은 프록시 요청이 된다. 서비스 요청(112)은 요청이 의도되는 퍼블리셔를 식별하는 파라미터와 웹 서비스(52)의 인트라넷 어드레스를 식별하는 파라미터가 부가된 표준 HTTP 요청일 수 있다. 이 파라미터들은 HTTP 헤더의 URL 파라미터 부분으로서 2 개 중 하나가 지정될 수 있거나 또는 SOAP 헤더에 포함될 수 있다. 여분의 파라미터들을 제외하고, 이는 외부 애플리케이션(60) 이 리스너(56)에게 HTTP 요청을 행하는 것으로 보인다.
예:http://www.HttpListener.com?Redirect,
http://intranet/webservice&PublisherURN,
http://Publisher.com
퍼블리셔(58)는 리스너(56)에 대하여 일정한 HTTP 접속을 개방상태로 유지함으로써 리스너(56)와 상호작용한다. 개방 접속은 리스너(56)에게 대기 요청(108) 들을 계속해서 전송하고, URN(universal resource name) 표시를 이용하여 퍼블리셔(58)를 식별함으로써 유지된다. 리스너가 퍼블리셔(58) 에 대하여 프록시 서비스 요청(112)을 수신하는 경우, 리스너는 어드레스된 퍼블리셔(58)가 합리적인 시간량 내에서 체크인(즉, 대기 요청(108)을 전송)되었는 지를 확인하기 위하여 체크한다. 대기 요청(108)이 최근에 수신되면, 리스너(56)는,
A. 리턴 요청(114) 패킷 내에 수신된 프록시 서비스 요청(112)을 삽입한다.
B. 이 요청을 고유의 트랜잭션 식별자에 할당한다.
C. 퍼블리셔(58)에 전송하기 위하여, 요청 큐(184) 내의 리턴 요청(114) 패킷을 큐잉한다.
D. 이 요청(112)을 응답 큐(186) 내에 배치하고, 이 응답 큐는 현저한 인트라넷 요청들의 큐를 나타낸다.
만일 퍼블리셔(58)가 합리적인 시간량 내에서 체크인되지 않으면(즉, 대기 요청(108)이 최근에 수신되지 않으면), 타임아웃 또는 이용가능하지 않은 에러가 애플리케이션(60)에 대한 서비스 요청 결과(124)로서 리턴된다.
서비스 타임 아웃과 같은 모든 에러 조건이 인터넷 리스너/퍼블리셔 조직(50)에 의해 투명하게 운반된다. 에러 조건은 적절한 HTTP 에러 응답으로서 도는 웹 서비스의 경우에 더 설명적인 SOAP 폴트로서 리턴될 수 있으며, 애플리케이션 레벨에서 적절하게 처리될 수 있다. 임의의 경우에, 인터넷 리스너/퍼블리셔 조직의 에러들은 리스너에 의해 결국 매핑되고 응답(124)으로 리턴된다.
퍼블리셔(58)가 리턴 요청(114)을 수신하는 경우에, 퍼블리셔는 삽입된 서비 스 요청(112)을 웹 서비스 HTTP 요청(116)으로서 어드레스된 인트라넷 웹 서비스(52)에 전송한다. 웹 서비스(52)는 요구된 동작(예를 들어, 정보에의 액세스 도는 제어 시스템으로의 액세스)를 수행하고, 이러한 동작에 의해 웹 서비스(52)는 웹 서비스 응답(120) 메시지를 전송한다. 퍼블리셔(58)는 웹 서비스 응답(120)을 수신하고, 이를 리턴 결과(122) 메시지로서 리스너(58)에게 전송한다. 리스너(56)는 리턴 결과(122) 메시지를 수신하고, 트랜잭션 식별자를 이용하여 응답 큐(186) 내의 오리지널 프록시 서비스 요청(112)을 찾고, 퍼블리셔의 응답(122)의 콘텐츠를 웹 서비스 응답(124)으로서 오리지널 요청 애플리케이션(60)에 전송한다. 그 후, 이 오리지널 요청은 요청 큐(186)로부터 클리어된다. 오리지널 프록시 서비스 요청(112)을 행하는 인터넷 애플리케이션(60)은 리스너(56)에 대한 단일 요청으로서 인트라넷(40) 방향의 요청을 수신한다.
또한, 리스너(56)는 상태 응답(126)으로 포스트(122)의 상태를 퍼블리셔(58)에 리턴시킨다. 이 상태 응답(126)은 리스너(56)와 퍼블리셔(58)사이의 실패들을 검출하기 위하여 로깅될 수 있다.
다음으로 도 4 를 참조하면, 퍼블리셔(58)의 통신 작업 활동의 하이 레벨 흐름도를 나타낸다. 리스너(56)와 퍼블리셔(58) 사이의 통신은 퍼블리셔에 의해 제어된다. 통신 채널을 리스너(56)에 대하여 개방상태로 유지하기 위하여, 퍼블리셔(58)는 대기 요청(108)의 신뢰적이고 연속적인 스트림을 유지해야 한다. 이는 퍼블리셔(58)와 리스너(56)의 통신 자원, 큐잉 자원 및 작업 환경에 의해 요구되는 공지의 소프트웨어 기술들 중 임의의 기술에 의해 달성될 수도 있다. 단계 312 는 퍼블리셔(58)의 활동에 대한 유휴(idle) 작업 상태를 나타낸다. 리턴 요청(114)이 단계 306 에서 수신되는 경우에, 이 요청(114) 내에 삽입된 요청은 단계 308 에서 제거되고, 단계 310 에서 웹 서비스 요청(116)으로서 인트라넷을 의해 어드레스된 웹 서비스(52)로 전송된다. 퍼블리셔(58)는 단계 312 에서 유휴상태에 있게 된다.
퍼블리셔(58)가 단계 302 에서 웹 서버로부터 웹 서비스 응답(120)을 수신하는 경우에, 이 퍼블리셔는 단계 304 에서 리턴 결과(122) 메시지로서 리스너에 따른 응답을 통과시키고 단계 312 에서 유휴상태에 있게 된다.
단계 300 에서, 대기 요청 메시지(108)를 리스너(56)에게 전송한다. 리스너(56)에 대한 대기 요청 메시지의 주기성은, 퍼블리셔(58)를 호스팅하는 동작 시스템에 의해 요구되는 바와 같이, 그리고 통신 작업 처리 분야의 당업자에게 명백한 바와 같이, 작업 클록, 폴링 기술 또는 리스너(56) 활동에 응답하여 제어될 수도 있다.
다음으로 도 5 를 참조하여, 리스너(56)의 통신 작업 활동의 흐름도를 나타낸다. 리스너(56)가 단계 320 에서 퍼블리셔로부터 대기 요청(108)을 수신하는 경우에, 리스너는 단계 322 에서 임의의 펜딩중인 no 응답 타이머(182)를 리셋시키고, 단계 324 에서는 퍼블리셔(58)가 마지막에 통신하였던 때를 나타내기 위하여 응답 타이머(180)를 설정한다. 그 후, 임의의 큐잉화된 메시지들은 단계 326 에서 퍼블리셔(58)로 전송되며(리턴 요청(114) 메시지들의 형태로), 단계 제 360 에서 작업 유휴 상태가 된다.
리스너(56)가 단계 330 에서 서비스 요청(112)을 수신하는 경우에, 리스너는 단계 332 에서 이 요청(112)을 트랜잭션 식별자에게 할당하고, 단계 333 에서 응답 큐(114)의 대기시에 그 요청을 큐잉(queue)한다. 다음으로, 이 요청(112)은 단계 334 에서 리턴 요청(114)의 형태로 삽입되고, 단계 336 에서 퍼블리셔로의 송신을 위해 요청 큐(184)에서 큐잉된다. 단계 338 에서, 응답 타이머(180)는 퍼블리셔(58)가 최근에 통신하였는지를 확인하기 위하여 체크된다. 만일 응답 타이머(180)가 단계 338 에서 타임아웃되지 않으면, 응답 큐(184)내의 임의의 서비스 요청(114)은 단계 326 에서 퍼블리셔(58)로 전송되며, 작업은 단계 360 에서 유휴상태로 된다. 만일 응답 타이머(180)가 단계 338 에서 타임아웃되면, no 응답 타이머(180)가 비활성적인 퍼블리셔 또는 다른 관점에서 비통신적인 퍼블리셔를 체크하기 위하여 합리적인 시간량 동안에 설정된다. 서비스 요청(114)이 큐 내에 남겨지고, 작업은 단계 360 에서 유휴상태로된다.
만일 no 응답 타이머가 단계 350 에서 타임아웃되면, 퍼블리셔(58)는 통신하지 않는다. 이 경우에, 에러가 단계 352 에서 각각의 큐잉된 서비스 요청(114)에 대한 웹 서비스 요청(124)의 결과로서 리턴되고, 메시지 큐(184)가, 단계 360 에서 작업을 유휴상태로 만들기 이전에 단계 354에서 클리어된다.
리턴 결과 메시지(122)가 단계 340 에서 퍼블리셔(58)로부터 수신되는 경우에, 트랜잭션 식별자는 응답 큐에서 발생하는 요청을 찾기 위하여 단계 342 에서 사용된다. 단계 344 에서, 응답 큐내의 엔트리가 클리어된다. 엔트리가 응답 큐에서 발견되지 않으면, 리턴 결과 메시지(122)는 유효하지 않은 발신 요청이 현재 이러한 트랜잭션에 대하여 존재하므로 클리어된다. 단계 346 에서, 리턴 결과 메 시지(122)는 인터넷(30)에 의해 서비스 응답 메시지(124)로서 발신 애플리케이션(60)으로 송신된다. 또한, 상태 응답 메시지(126)는 로깅 목적 및 트래킹 목적을 위하여 퍼블리셔(58)로 전송될 수 있다.
인터넷 리스너/퍼블리셔는, 인터넷으로부터 인바운드 IP 포트만을 사용하는 인트라넷으로 요청을 행하는 것이 유리한 경우에 임의의 애플리케이션에서 이용될 수 있다. SOAP 웹 서비스들을 호출하기 위하여 인터넷 리스너/퍼블리셔를 이용하는 것이 가장 유용하다. 본 발명의 하나의 애플리케이션은 Powerlogic®파워 서버에서 웹 서비스들을 이용하는 Square D PowerLogic®회로 모니터들 및/또는 시스템 관리자 소프트웨어(SMS-3000) 제품으로부터의 데이터를 액세스하는 것이다. 또 다른 애플리케이션은 전력 품질 및/또는 빌링(billing) 애플리케이션들을 포함하는 인터넷을 통한 일부 인트라넷 웹 서비스들로부터 데이터를 수집하는 전사적(enterprise wide) 시스템에 사용된다.
본 발명의 특정 실시형태들 및 애플리케이션들을 예시하고 설명하였지만, 본 발명이 여기에 개시된 정확한 구성 및 조직으로 제한되지 않으며, 첨부된 청구항들에 규정된 본 발명의 사상 및 범위를 벗어나지 않고 다양한 변경, 변화 및 변형이 전술한 설명으로부터 명백하게 될 수 있음을 이해하여야 한다.

Claims (16)

  1. 방화벽을 가로질러 인트라넷 기반 웹 서버에 대한 인터넷 사용자 액세스 요청에 응답하는 통신 시스템으로서,
    상기 인터넷 사용자로부터의 상기 액세스 요청들에 응답하는 상기 방화벽의 상기 인터넷 측상의 리스너(listener); 및
    상기 웹 서버에 액세스하며 상기 리스너에 대한 통신 링크를 유지하는, 상기 방화벽의 상기 인트라넷 측상의 퍼블리셔(publisher)를 포함하는 통신 시스템.
  2. 제 1 항에 있어서, 상기 퍼블리셔는 상기 리스너와의 개방 하이퍼텍스트 전송 프로토콜(HTTP) 또는 보안 소켓 계층을 통하여 계층화된 HTTP(HTTPS) 접속을 유지하는 것인 통신 시스템.
  3. 제 1 항에 있어서, 상기 리스너는 HTTP 또는 보안 소켓 계층을 통하여 계층화된 HTTP(HTTPS) 인터넷 접속을 유지하는 것인 통신 시스템.
  4. 제 1 항에 있어서, 상기 리스너는 상기 퍼블리셔로부터의 통신 요청들에 대한 응답들 내에 상기 액세스 요청들을 끼워넣는 것인 통신 시스템.
  5. 제 1 항에 있어서, 상기 리스너는 상기 퍼블리셔로터의 통신 요청들에 대한 응답들 내에 리스너 자신의 요청들을 끼워넣는 것인 통신 시스템.
  6. 방화벽을 가로질러 인터넷 사용자로부터 인트라넷 기반 웹 서버로의 인트라넷 서비스 액세스 요청들을 통신하는 방법으로서,
    인트라넷 퍼블리셔와 상기 웹 서버 사이의 통신 링크를 유지하는 단계;
    상기 인터넷 리스너와 상기 인터넷 사용자 사이의 통신 링크를 유지하는 단계; 및
    상기 퍼블리셔와 상기 리스너 사이의 통신 링크를 유지하는 단계를 포함하는 통신 방법.
  7. 제 6 항에 있어서, 상기 퍼블리셔와 상기 리스너 사이의 HTTP 또는 보안 소켓 계층을 통하여 계층화된 HTTP(HTTPS) 접속을 이용하는 것인 통신 방법.
  8. 제 6 항에 있어서, 상기 리스너는 HTTP 또는 HTTPS 인터넷 접속을 유지하는 것인 통신 방법.
  9. 제 6 항에 있어서, 상기 퍼블리셔로부터의 통신 요청들에 대한 응답들 내에 상기 인터넷 사용자 액세스 요청들을 끼워넣는 것인 통신 방법.
  10. 방화벽을 가로질러 인터넷 요청 사용자로부터 인트라넷 기반 서버로 인트라 넷 서비스 액세스 요청들을 통신하는 방법으로서,
    방화벽의 인트라넷 측으로부터 통신 요청들을 수신하는 단계;
    상기 인트라넷 사용자로부터 상기 액세스 요청을 수신하는 단계;
    상기 액세스 요청을 응답 메시지로 캡슐화하는 단계;
    상기 통신 요청에 응답하여 상기 응답 메시지를 전송하는 단계;
    상기 응답 메시지를 인트라넷 기반 웹 서버로 전달하는 단계;
    방화벽을 가로질러 아웃워드 바운드 인트라넷 기반 웹 서버 응답들을 전달하는 단계; 및
    상기 인터넷 요청 사용자에게 상기 인트라넷 기반 웹 서버 응답들을 전달하는 단계를 포함하는 통신 방법.
  11. 제 9 항에 있어서, 상기 액세스 요청에는 트랜잭션 ID 가 할당되는 것인 통신 방법.
  12. 제 10 항에 있어서, 상기 웹 서버 응답은 상기 트랜잭션 ID 에 기초하여 상기 인터넷 사용자에게 전달되는 것인 통신 방법.
  13. 제 9 항에 있어서, 상기 액세스 요청은 상기 통신 요청이 타임아웃 기간 이내에 수신되지 않으면 불이행되는 것인 통신 방법.
  14. 제 9 항에 있어서, 상기 통신 요청은 HTTP 대기 요청인 것인 통신 방법.
  15. 제 9 항에 있어서, 상기 액세스 요청은 HTTP 또는 HTTPS 접속을 통하여 행해지는 것인 통신 방법.
  16. 제 9 항에 있어서, 상기 통신 요청은 HTTP 접속을 통하여 행해지는 것인 통신 방법.
KR1020067012144A 2003-11-20 2004-11-12 인터넷 리스너/퍼블리셔 KR101109608B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/717,750 2003-11-20
US10/717,750 US7146420B2 (en) 2003-11-20 2003-11-20 Internet listener/publisher
PCT/US2004/038039 WO2005053268A2 (en) 2003-11-20 2004-11-12 Internet listener / publisher for secure access to intranet web services via firewalls

Publications (2)

Publication Number Publication Date
KR20060113952A true KR20060113952A (ko) 2006-11-03
KR101109608B1 KR101109608B1 (ko) 2012-02-06

Family

ID=34590952

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067012144A KR101109608B1 (ko) 2003-11-20 2004-11-12 인터넷 리스너/퍼블리셔

Country Status (7)

Country Link
US (1) US7146420B2 (ko)
EP (1) EP1695515B1 (ko)
KR (1) KR101109608B1 (ko)
CN (1) CN1906912B (ko)
CA (1) CA2549130C (ko)
ES (1) ES2568257T3 (ko)
WO (1) WO2005053268A2 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7590713B2 (en) 2003-11-24 2009-09-15 Microsoft Corporation Presenting a merged view of remote application shortcuts from multiple providers
US7720906B2 (en) * 2003-11-24 2010-05-18 Microsoft Corporation Web service for remote application discovery
US7475125B2 (en) 2003-11-24 2009-01-06 Microsoft Corporation Seamless discovery of workstation-installed remote applications from an extranet
US7844675B2 (en) * 2005-12-15 2010-11-30 At&T Intellectual Property I, L.P. Accessing web services
CN101043522B (zh) * 2006-03-22 2013-11-13 腾讯科技(深圳)有限公司 一种基于Web服务器的通信方法及系统
US7421352B2 (en) * 2006-04-10 2008-09-02 Square D Company Network-enabled electrical power equipment with integrated content management system
US8200764B2 (en) * 2006-12-19 2012-06-12 International Business Machines Corporation System and method for achieving highly scalable real-time collaboration applications using HTTP
US20120047223A1 (en) * 2010-08-20 2012-02-23 Nokia Corporation Method and apparatus for distributed storage
WO2013106454A1 (en) * 2012-01-09 2013-07-18 Qualcomm Incorporated Cloud computing controlled gateway for communication networks
US10659556B2 (en) * 2017-05-16 2020-05-19 Sap Se Progressive hybrid web application

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805803A (en) 1997-05-13 1998-09-08 Digital Equipment Corporation Secure web tunnel
US6088796A (en) * 1998-08-06 2000-07-11 Cianfrocca; Francis Secure middleware and server control system for querying through a network firewall
US6553422B1 (en) 1999-04-26 2003-04-22 Hewlett-Packard Development Co., L.P. Reverse HTTP connections for device management outside a firewall
US6516427B1 (en) 1999-11-05 2003-02-04 Hewlett-Packard Company Network-based remote diagnostic facility
US6510464B1 (en) * 1999-12-14 2003-01-21 Verizon Corporate Services Group Inc. Secure gateway having routing feature
US20020116258A1 (en) 2000-12-06 2002-08-22 George Stamatelatos Method for selecting and directing internet communications
US20030028577A1 (en) 2001-04-30 2003-02-06 Chia-Chu Dorland HTTP distributed XML-based automated event polling for network and E-service management
US20020184170A1 (en) 2001-06-01 2002-12-05 John Gilbert Hosted data aggregation and content management system
DE10301106A1 (de) 2002-01-24 2003-08-07 Volkswagen Ag Verfahren und Vorrichtung zur Kommunikation zwischen Anwendungssystemen in unterschiedlichen Netzwerken
WO2003084167A1 (en) 2002-03-28 2003-10-09 British Telecommunications Public Limited Company Secure remote control
US7206862B2 (en) * 2002-04-24 2007-04-17 Microsoft Corporation Method and apparatus for efficiently matching responses to requests previously passed by a network node
EP1418732B1 (en) * 2002-09-19 2016-01-06 Ricoh Company, Ltd. Communication system implementing a plurality of communication apparatuses as communication client and communication server for exchanging operation requests and operation responses

Also Published As

Publication number Publication date
CN1906912A (zh) 2007-01-31
US7146420B2 (en) 2006-12-05
KR101109608B1 (ko) 2012-02-06
CA2549130C (en) 2017-01-10
ES2568257T3 (es) 2016-04-28
CA2549130A1 (en) 2005-06-09
EP1695515B1 (en) 2016-03-23
WO2005053268A2 (en) 2005-06-09
EP1695515A2 (en) 2006-08-30
US20050114509A1 (en) 2005-05-26
CN1906912B (zh) 2010-09-08
WO2005053268A3 (en) 2005-08-25

Similar Documents

Publication Publication Date Title
KR101109608B1 (ko) 인터넷 리스너/퍼블리셔
EP1286513B1 (en) Message broker
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT
Cisco Configuring LAT

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150106

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160108

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170111

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180105

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190108

Year of fee payment: 8