KR100540495B1 - 연속적이고불명확한데이타스트림의압축방법및장치 - Google Patents

연속적이고불명확한데이타스트림의압축방법및장치 Download PDF

Info

Publication number
KR100540495B1
KR100540495B1 KR1019970058631A KR19970058631A KR100540495B1 KR 100540495 B1 KR100540495 B1 KR 100540495B1 KR 1019970058631 A KR1019970058631 A KR 1019970058631A KR 19970058631 A KR19970058631 A KR 19970058631A KR 100540495 B1 KR100540495 B1 KR 100540495B1
Authority
KR
South Korea
Prior art keywords
data stream
data
compression
stream
network server
Prior art date
Application number
KR1019970058631A
Other languages
English (en)
Other versions
KR19980042182A (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 KR19980042182A publication Critical patent/KR19980042182A/ko
Application granted granted Critical
Publication of KR100540495B1 publication Critical patent/KR100540495B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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/04Protocols for data compression, e.g. ROHC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

연속적이고 불명확한 데이타 스트림의 압축 방법 및 장치가 공개된다. 본 발명의 일측면에 따라, 상기 데이타 스트림은 이 데이타 스트림이 압축가능한 지를 결정하기 위해 검사된다. 압축가능하면, 상기 데이타 스트림은 압축 스트림에 부가되고, 압축된 데이타 스트림을 발생하기 위해 바로 압축이 수행된다. 상기 압축된 데이타 스트림은 발생되면서 연속적으로 전송된다. 본 발명의 다른 측면에 따라, 상기 데이타 스트림은 HTML 데이타 스트림이다.

Description

연속적이고 불명확한 데이타 스트림의 압축 방법 및 장치{A METHOD AND APPARATUS FOR COMPRESSING A CONTINUOUS, INDISTINCT DATA STREAM}
관련 출원의 상호 참조
본 발명은 함께 계류중인 다음의 미국 특허 출원, 즉 1996년 6월 3일에 출원되고 발명의 명칭이 "원격 제어를 이용한 하이퍼텍스트 객체간의 항해를 제공하는 웹 브라우저" 인 미국 특허 출원 제 08/660,088호; 및 1996년 6월 3일에 출원되고 발명의 명칭이 "분산 네트워크의 문서 프록싱과 트랜스코딩 제공 방법 및 장치"로서 미국 특허 출원 제 08/656,924호와 관련되어 있으며, 이들 출원은 본 발명의 양수인에게 양도되어 있다.
발명의 분야
본 발명은 인터넷 기술 분야에 관한 것이다. 특히, 본 발명은 연속적이고 불명확한(indistinct) 데이타 스트림의 압축 방법 및 장치에 관한 것이다.
관련 기술 설명
최근에, 퍼스널 컴퓨터 사용이 상당히 증가되어 왔다. 이 증가와 더불어, 인터넷, 특히 월드 와이드 웹("웹")의 사용은 폭발적이다. 웹은 대화형 문서 또는 웹 페이지를 통해 상기 인터넷상의 정보에 대한 사용자 액세스를 제공하는 인터넷상의 모든 컴퓨터를 나타낸다. 과거에 웹은 주로 과학 정보의 제공처였지만, 이제는 비지니스, 오락, 여행, 및 교육을 포함해서 거의 모든 분야에 관련된 정보의 소중한 제공처가 되었다. 명백한 바와 같이, 이들 각각의 영역에 필요한 정보의 종류는 크게 변하고 있다. 예컨대, 오락 분야의 사용자는 상기 웹상의 멀티미디어 프리젠테이션에 대한 액세스를 시도할 수 있지만, 여행 분야의 사용자는 특정 여행 위치의 장면에 대해 다운 로드를 시도할 수 있다.
멀티미디어 파일과 그래픽 파일이 웹 머신상에서 막대한 양의 기억 공간을 차지하게 되면, 텍스트 문서를 포함해서 웹상의 대부분의 문서는 압축되게 된다. 일반적으로, 데이타 압축은 데이타를 원래 데이타보다 작은 여러 코드로의 변환하는 것으로 이루어져 있다. 도 1a 및 도 1b에는 종래 압축 메카니즘이 예시되어 있다. 이 압축 메카니즘은 정지화상 전문가 그룹(JPEG) 압축 알고리즘과 같은 블록 기초, 압축 패러다임을 기초로 하고 있다. 특히, 도 1a에 예시되어 있는 바와 같이, 데이타 블록(100)은 블록 헤더(102), 데이타(104), 및 엔드 오브 블록(end of block)(106)을 포함하고 있다. 데이타 블록(100)을 압축하기 위해서, 블록 기초 압축 메카니즘은 상기 데이타(104)의 길이에 관한 정보를 필요로 한다. 블록 기초 압축 메카니즘은 데이타(104)의 길이에 관한 정보를 블록 헤더(102)로부터 수신한 다음에, 데이타 블록(100)이 완전히 수신되었음을 지시해 주는 엔드 오브 블록(106)이 수신될 때까지 대기한다. 이때, 데이타 블록(100)은 압축되어 전송된다.
도 1b에는 이 블록 기초 압축 메카니즘이 보다 상세히 예시되어 있다. 예시되어 있는 바와 같이, 블록(1, 2, 3, 4)은 시간 라인상에서 압축 및 전송된다. 상기 시간 라인은 블록이 검색, 압축 및 전송된 시간을 지시한다고 가정하면, 시간(t0)에서 블록(1)의 검색이 개시된다. 블록(1)의 검색은 엔드 오브 블록 지시기가 수신되는 시간(t1)이 될 때까지 계속된다. 상기 블록이 완전하게 수신되었음을 인식한 경우에, 시간(t1)에서, 블록(1)이 압축되어 전송된다. 시간(t0)과 시간(t1)사이에서 데이타 전송은 없다. 이 패턴은 블록(2, 3, 4)에 대해서도 계속되는데, 즉 시간(t2, t3, t4)에서 데이타 블록의 압축 및 전송은 존재하지만, 데이타 블록이 수신되는 이들 시간 사이에서 데이타 전송은 없다.
이 블록 기초 압축 알고리즘에 의해 전송 전에 블록이 수신 및 압축될 때 특정량의 대기 시간을 생긴다. 앞서 설명한 바와 같이, 시간(t0, t1, t2, t3, t4)사이에서는 어떠한 데이타 블록도 전송되지 않는다. 그러므로, 특정량의 데이타를 요구하는 클라이언트 머신은 데이타 블록(1, 2, 3, 4)을 수신할 때에 대기 시간이 없다. 이 대기 시간은 갑자기 움직이는 화상, 영상 또는 텍스트를 유발하며, 그리고 사용자는 응답이 지연된다는 느낌을 가질 수 있다.
그러므로, 압축 및 전송 전에 데이타 길이에 관한 정보를 필요로 하지 않고, 연속적이고 불명확한 데이타 스트림을 압축하는 방법 및 장치를 가지고 있으면 바람직하다.
발명의 개요
본 발명은 연속적이고 불명확한 데이타 스트림의 압축 방법 및 장치를 공개한다. 본 발명의 일측면에 따라, 상기 데이타 스트림은 이 데이타 스트림이 압축가능한 지를 결정하기 위해 검사된다. 압축가능하면, 상기 데이타 스트림은 압축 스트림에 부가되고, 압축된 데이타 스트림을 발생하기 위해 압축이 바로 수행된다. 상기 압축된 데이타 스트림은 발생되면서 연속적으로 전송된다. 본 발명의 다른 측면에 따라, 상기 데이타 스트림은 하이퍼텍스트 표시 언어(HTML) 데이타 스트림이다.
본 발명의 기타 다른 측면, 특징 및 이점은 첨부 도면으로부터 그리고 상세한 설명으로부터 명맥해진다.
본 발명은 첨부 도면에 한정이 아닌 예로서 도시되어 있으며, 이때 동일한 참조 부호는 유사한 소자를 나타낸다.
바람직한 실시예의 상세한 설명
본 발명은 연속적이고 불명확한 데이타 스트림의 압축 방법 및 장치에 관한 것이다. 본 발명의 문장에서 "스트림 압축" 연속적이고 불명확한 데이타 스트림을 압축하기 위한 비블록(non-block) 기초 압축을 포함하고 있다. 이하의 상세한 설명에서는, 본 발명의 철저한 이해를 제공하기 위해 다수의 특정 사항에 대해 설명한다. 하지만, 본 발명을 실시하는데에는 이들 특정 사항이 필요없음이 당업자에게 명백해진다. 다른 예에서, 잘 알려진 구조, 인터페이스 및 프로세스는 본 발명이 불필요하게 모호해지지 않도록 하기 위해 도시되어 있지 않다.
도 2a에는 본 발명이 동작하는 일반적인 컴퓨터 시스템(200)이 예시되어 있다. 기타 다른 컴퓨터 시스템 구조도 사용될 수 있음이 당업자에게 명백해진다.
일반적으로, 도 2a에 의해 예시된 바와 같은 컴퓨터 시스템은 정보를 전달하기 위한 버스(201), 이 버스(201)에 접속되어 정보를 처리하기 위한 프로세서(202), 상기 버스(201)에 접속되어 프로세서(202)용 정보와 명령어를 저장하기 위한 메인 메모리(203), 상기 버스(201)에 접속되어 프로세서(202)용 동적 정보와 명령어를 저장하기 위한 판독 전용 메모리(204), 상기 버스(201)에 접속되어 컴퓨터 사용자를 위해 정보를 디스플레이하기 위한 디스플레이 장치(205), 상기 버스(201)에 접속되어 상기 프로세서(202)에 정보와 명령어 선택을 전달하는 입력 장치(206), 및 상기 버스(201)에 접속되어 정보와 명령어를 저장하기 위한, 자기 디스크와 관련 디스크 드라이브와 같은 대용량 기억 장치(207)를 구비하고 있다. 디지탈 정보를 저장하고 있는 데이타 기억 매체(208)는 버스(201)를 통한 데이타 기억 매체(208)상의 디지탈 정보에 대한 프로세서(202)의 액세스를 가능하도록 해 주기 위해 대용량 기억 장치(207)와 동작하도록 구성되어 있다.
프로세서(202)는 각종 범용 프로세서, 또는 IntelTM 코포레이션에 의해 제조된 PentiumTM 마이크로프로세서와 같은 프로세서일 수 있다. 하지만, 다른 각종의 프로세서도 특정 컴퓨터 시스템에 사용될 수 있음이 당업자에게는 명백해진다. 디스플레이 장치(205)는 액정 표시 장치, 음극선관(CRT), 또는 기타 다른 적합한 디스플레이 장치일 수 있다. 대용량 기억 장치(207)는 종래 하드 디스크; 플로피 디스크 드라이브; CD-ROM 드라이브; 하드 디스크, 플로피 디스크, CD-ROM 자기 테이프, 또는 기타 다른 자기 또는 광 데이타 기억 매체에 저장된 정보를 판독 기록하기 위한 기타 다른 자기 또는 광 데이타 기억 장치일 수 있다. 데이타 기억 매체(208)는 하드 디스크, 플로피 디스크, CD-ROM, 자기 테이프, 또는 기타 다른 자기 또는 광 데이타 기억 매체일 수 있다.
일반적으로, 프로세서(202)는 대용량 기억 장치(207)를 사용하여 데이타 기억 매체(208)로부터 처리 명령어 및 데이타를 검색하고, 이 정보를 실행을 위해 임의 액세스 메모리(203)에 다운로드한다. 이때, 프로세서(202)는 임의 액세스 메모리(203) 또는 판독 전용 메모리(204)로부터의 명령어 스트림을 실행한다. 입력 장치(206)의 명령어 선택 및 정보 입력은 프로세서(202)에 의해 실행된 명령어의 흐름의 방향을 결정하는데 사용된다. 등가의 입력 장치(206)는 종래의 마우스 또는 트랙볼 장치와 같은 포인팅 장치일 수도 있다. 이때, 이 처리 실행의 결과가 디스플레이 장치(205)상에 디스플레이된다.
컴퓨터 시스템(200)은 컴퓨터 시스템(200)을 네트워크에 접속하는 네트워크 장치(210)을 포함하고 있다. 컴퓨터 시스템(200)을 네트워크에 접속하는 상기 네트워크 장치(210)는 이더넷 장치, 폰 잭 및 위성 링크를 포함하고 있다. 기타 다른 네트워크 장치가 사용될 수 있음이 당업자에게 명백해진다.
본 발명의 바람직한 실시예는 WebTVTM 네크워크 인코포레이티드, Palo Alto에 의해 WebTVTM 로 알려진 시스템상에 구현된다. 상기 WebTVTM 시스템은 상기 웹을 브라우징하기 위한 디스플레이 장치로서 표준 텔레비젼 세트를 사용하고, 표준 전화기, 종합 정보 네트워크(ISDN), 또는 유사한 통신 라인을 사용하여 인터넷과 같은 종래 네트워크에 접속한다. WebTVTM 클라이언트 시스템의 사용자는 하나 이상의 원격 WebTVTM 서버에 의해 제공된 WebTVTM 네트워크 서비스를 이용할 수 있다. 상기 웹을 브라우징하고, 전자 우편을 전송하며, 여러 가지 다른 방법으로 상기 인터넷을 사용하기 위해, 상기 WebTVTM 네트워크 서비스는 WebTVTM 클라이언트 시스템을 구동하는 소프트웨어와 더불어 사용될 수 있다. 상기 WebTVTM 네트워크는 상기 웹내에서 구현되고 하나 이상의 웹 서버에 의해 지원되는, 하이퍼텍스트 전송 프로토콜(HTTP) 기초의 프로토콜 세트를 사용한다.
도 2b에는 일실시예에 따른 WebTVTM 네트워크의 기본적인 구성이 예시되어 있다. 다수의 WebTVTM 클라이언트(280)가 전화기(POTS) 즉, "플레인 올드(plain old) 전화 서비스", ISDN(종합 정보 네트워크), 또는 기타 다른 유사한 종류의 접속일 수도 있는 직접 다이얼, 쌍방향 데이타 접속(275)을 통해 모뎀 풀(modem pool)(270)에 접속되어 있다. 모뎀 풀(270)은 일반적으로 종래에 잘 알려진 바와 같은 라우터를 통해 인터넷과 같은 종래 네트워크 기반 구조(265)를 거쳐 다수의 원격 서버(250)에 접속되어 있다.
상기 WebTVTM 시스템은 또한, 특히 WebTVTM 클라이언트(280)를 지원하는 WebTVTM 서버(260)를 포함하고 있다. WebTVTM 서버(260)는 상기 웹 및 다른 WebTVTM 서비스에의 액세스에 WebTVTM 클라이언트(280)를 제공할 때에 프락시의 역할을 한다. 특히, WebTVTM 서버(260)는 "캐시 프록시" 로서 기능한다. WebTVTM 서버(260)상의 프락시 캐시는 웹 문서, 이미지, 및 WebTVTM 클라이언트(280) 또는 WebTVTM 서버(260)에 의해 빈번하게 사용되는 기타 다른 정보의 임시 기억 장치로 사용된다.
문서 트랜스코더가 또한 WebTVTM 서버(260)의 일부로서 제공되어 있다. 상기 문서 트랜스코더는 원격 서버(250)로부터 검색된 웹 문서의 코드를 자동적으로 수정하는데 사용되는 소프트웨어를 포함하고 있다. 트랜스코딩은 다음과 같은 모드, 즉 (1) 스트리밍(streaming) 모드, (2) 버퍼 모드, 및 (3) 지연 모드중 하나의 모드에서 수행된다. 프락시 및 트랜스코딩 메카니즘에 대한 다른 상세 사항은 1996년 6월 3일에 출원되고 발명의 명칭이 "분산 네트워크의 문서의 프락싱 및 트랜스코딩을 제공하는 방법 및 장치" 이며 함께 계류중인 미국 특허 출원 제 08/656,924호에 설명되어 있다. 현재 이용가능한 상업용 프락시 서버는 함께 계류중인 상기 출원에 설명되어 있는 트랜스코딩 기능을 포함하도록 수정될 수도 있다.
각각의 WebTVTM 클라이언트(280)는 모뎀 풀(270)과 유사한 WebTVTM 모뎀 풀(275)을 통해, 또는 종래 모뎀 풀(270)과 인터넷(265)을 통해 WebTVTM 서버(260)에 직접 접속되어 있다. 상기 모뎀 풀(270)은 인터넷 및 사설 네트워크에 액세스를 제공하는 세상 도처에서 오늘날 발견되고 있는 종래 모뎀 풀임에 주의하자. WebTVTM 클라이언트를 포함해서 WebTVTM 시스템의 다른 상세 사항은 1996년 6월 3일에 출원되고 발명의 명칭이 "원격 제어를 이용한 하이퍼텍스트 객체들간의 네비게이션을 제공하는 웹 브라우저"이며, 함께 계류중인 미국 특허 출원 제 08/660,088호에서 찾아 볼 수 있다.
본 발명의 일실시예는 종래 방법으로 컴퓨터 시스템(200) 또는 WebTVTM 서버(260)와 같은 컴퓨터 시스템상에서 실행될 수 있는 소프트웨어 모듈로서 구현된다. 잘 알려진 기술을 사용하여, 본 바람직한 실시예의 응용 소프트웨어는 데이타 기억 매체(208)에 저장되고, 컴퓨터 시스템(200) 또는 WebTVTM 서버(260)내로 연속적으로 로드되어 실행될 수 있다. 일단 개시되면, 이 실시예의 소프트웨어는 아래에 설명되는 방법으로 동작한다.
도 3에는 본 발명의 일실시예의 개략도가 예시되어 있다. 특히, 요구(302)는 클라이언트로부터 서버(300)에 수신된다. 서버(300)는 요구된 데이타(304)를 압축 유니트(306)에 전송한다. 압축 유니트(306)은 서버(300)상에 또는 별도의 시스템상에 상주할 수 있다. 압축 유니트(306)은 요구된 데이타(304)를, 압축 해제 유니트(310)에 의해 수신단에 수신된 압축 스트림(308)에 부가한다. 압축 해제 유니트(310)은 클라이언트(314)의 일부 또는 별도의 시스템일 수도 있다. 압축 해제 유니트(310)은 압축된 요구 데이타(304)를 수신하고 이 압축된 요구 데이타(304)를 압축 해제 스트림(312)에 부가한다. 다음에, 상기 압축 해제된 디스플레이 데이타(316)는 클라이언트(314)에 의해 디스플레이된다.
도 4a - 도 4c에는 본 발명의 일실시예가 보다 상세하게 예시되어 있다. 특히, 이 실시예에 따라, 스트림 압축 또는 "온 더 플라이(on the fly)" 압축 패러다임이 블록 패러다임 대신에 이용된다. 본 발명의 문장에서 "온 더 플라이"는 본 발명에 따른 스트림 압축 프로세스가 압축 전에 소정량의 데이타를 대기하지 않는다는 사실을 포함하고 있다. 대신에, 본 발명에 따른 스트림 압축은 상기 데이타 스트림을 압축 스트림에 부가하고, 데이타가 압축가능한 것으로 상기 프로세스에서 결정하면 데이타를 바로 압축 및 전송하기 시작한다. 상기 스트림 압축 프로세스는 모든 요구 데이타가 전송될 때까지 압축 스트림에 부가된 데이타를 연속적으로 압축 및 전송한다. 본 발명의 일실시예는 스트림 압축을 수행하기 위해 적응형 허프만 코딩의 수정된 코딩을 이용한다. 적응형 허프만 코딩 기술은 당업자에게는 잘 알려져 있다. LZP 알고리즘과 같은 기타 다른 코딩 알고리즘이 사용될 수도 있다.
도 4a에 예시되어 있는 바와 같이, 데이타 스트림(400)은 헤더(402), 데이타(404) 및 엔드 오브 데이타 지시기(406)를 포함하고 있다. 웹 문장에서, 헤더(402)는 내용 종류 헤더이다. 내용 종류 헤더는 웹 클라이언트 머신과 웹 서버간의 통신을 위한 HTTP 통신 프로토콜의 일부로서 정의되어 있다. 다른 종류의 헤더가 기타 다른 통신 프로토콜용으로 사용된다. 일반적으로, 헤더는 이 헤더에 후속되는 데이타의 종류와 특성에 관한 정보를 제공한다.
데이타 패킷(400)은 압축 전에 검사되고, 헤더(402)는 데이타(404)가 압축될 수 있는지를 결정하는데 사용된다. 본 발명의 일실시예에 따라, 데이타(404)는 내용 종류 헤더 "텍스트/HTML"에 의해 지시된 바와 같이 HTML 데이타이다. 상기 압축 유니트가 데이타(404)가 압축가능함을 지시하는 내용 헤더를 가지고 있는 데이타 패킷(400)을 검출하면, 데이타(404)는 상기 압축된 데이타를 전송하는 압축 스트림에 바로 부가된다. 소정의 다른 기능이 압축 전에 데이타 패킷(400)에 대해 수행될 수 있음에 주의하자. 이들 소정의 기능은 상기 데이타 스트림의 바이트를 카운트하는 기능과 상기 데이타 스트림의 바이트를 프린팅하는 기능을 포함하고 있다.
본 발명의 다른 실시예에 따라, 데이타 스트림(499)은 헤더(402)를 포함하고 있지 않다. 이 실시예에서, 검색 데이타의 파일 확장명은 어떤 종류의 데이타가 상기 파일에서 발견될 수 있는지를 결정하기 위해 검사될 수 있다. 예컨대, 상기 파일이 내용 종류 헤더 "텍스트/HTML"을 가지고 있지 않은 HTML 파일이더라도, 상기 파일내의 데이타의 종류는 상기 파일 확장명을 검사함으로써 여전히 결정될 수 있다. 이 예에서, 상기 파일 확장명이 .HTML이면, 상기 파일내의 데이타의 종류는 HTML 데이타인 것으로 결정되고, 상기 파일내의 데이타는 압축가능한 데이타로 표시된다. 다른 파일 확장명은 예컨대, 마이크로소프트 디지탈 비디오 파일용의 .AVI를 포함하고 있다. 일단 상기 파일의 내용이 결정되면, 데이타(404)가 앞서 설명된 바와 같이 상기 압축 데이타를 전송하는 압축 스트림에 부가된다.
본 발명의 이 실시예는 압축될 데이타의 길이를 알지 못하고 그리고 수신될 소정량의 데이타를 대기하지 않고 상기 데이타를 상기 압축 스트림에 부가한다. 압축 스텝, 부가 스텝, 및 전송 스텝은 모든 요구 데이타가 압축 및 전송될 때까지 연속적으로 발생된다. 앞서 설명한 바와 같이, 블록 기초 압축 패러다임에서, 상기 압축 유니트는 데이타 압축을 시작하기 전에 엔드 오브 블록 지시기를 수신할 때까지 대기한다.
도 4b 및 도 4c에는 이 실시예가 보다 상세하게 예시되어 있다. 도 4b에는 압축 스트림(410)에 부가된 데이타 스트림(408)이 예시되어 있다. 데이타 스트림(480)은 암호화 스트림(412)과 같은 다른 종류의 적절한 스트림에 부가될 수 있다. 기능 스트림의 "레이어링"에 의해 상기 기능들은 수신될 모든 데이타를 대기하지 않고 거의 동시에 수행될 수 있다. WebTVTM 서버는 다른 수정없이 이러한 종류의 스트림 압축을 수행할 수 있다. 기타 다른 표준 웹 서버가 동일 기능을 제공하기 위해 수정될 수도 있다.
도 4b에 예시되어 있는 바와 같이, 압축 및 전송은 단순히 시간(t1, t2, t3, t4)에서 발생되는 것이 아니고 연속적으로 발생된다. 상기 압축 유니트가 데이타를 압축가능한 것으로 결정하자마자, 데이타는 시간(t0)에서 압축 및 전송되기 시작한다. 시간(t0, t1, t2, t3, t4) 사이에서 데이타는 계속적으로 압축 및 전송된다. 이 방법으로, 본 발명은 블록 기초 압축 패러다임에 고유한 결함을 극복하며, 여기서 상기 압축 메카니즘은 압축 전에 특정 길이의 데이타를 대기하는데 필요하며, 이에따라 데이타 전송시에 고유한 대기 시간이 생긴다.
도 4c에는 압축 데이타의 수신단이 예시되어 있다. 압축된 암호화 데이타 스트림(414)이 수신되어, 해독 스트림(416)과 압축 해제 스트림(418)에 부가된다. 예시된 바와같이, 상기 데이타는 연속적으로 수신되어 해독 스트림(416)과 압축 해제 스트림(418)에 부가된다. 그러므로, 데이타는 시간(t11, t12, t13, t14)에서만 수신, 해독 및 압축 해제되는 것이 아니고, 이들 모든 시간 사이에서도 수신, 해독 및 압축 해제된다. WebTVTM 클라이언트는 어떤 다른 수정없이도 이러한 종류의 스트림 압축 해제를 수행할 수 있다. 동일한 기능을 제공하기 위해 다른 표준 웹 브라우저가 수정될 수도 있다. 또한, 추가적인 소프트웨어 요소 또는 "플러그 인"이동일한 기능을 제공하기 위해 표준 웹 브라우저를 개선하는데 제공될 수 있다.
도 5에는 WebTVTM 시스템에 구현된 본 발명의 일실시예가 예시되어 있다. WebTVTM 클라이언트(280)는 요구를 행한다. 이 요구가 처리되고, 데이타는 원격 서버(250)로부터 리턴된다. 원격 서버(250)로부터의 데이타는 인터넷(265)을 통해 WebTVTM 서버(260)로 전송된다. WebTVTM 서버(260)는 데이타를 WebTVTM 클라이언트(280)측에 동시에 전송하는 외에, 데이타를 디스크(600)에 기록할 수 있다. 전송 전에, 상기 데이타의 내용 종류 헤더가 검사된다. 상기 데이타가 압축가능한 것으로 결정되면, 상기 데이타는 압축 스트림에 부가된다. 상기 데이타가 내용 종류 헤더를 포함하고 있지 않으면, 상기 파일내의 데이타의 종류를 결정하기 위해 파일 확장명이 검사된다. 본 발명의 이 실시예에 따라, 상기 데이타는 이 데이타의 상기 내용 종류 헤더 또는 파일 확장명이 HTML 데이타를 지시하면 압축가능한 것으로 결정된다. 다음에, 상기 압축 스트림은 기록 스트림에 부가되고, 데이타는 WebTVTM 클라이언트(280)측에 전송된다.
도 6은 본 발명의 일실시예를 나타낸 흐름도이다. 클라이언트 요구를 기초로, 스텝(602)에서 데이타 스트림이 원격 소스로부터 수신되거나 로컬 디스크로부터 검색된다. 스텝(604)에서, 데이타 종류를 결정하기 위해 상기 데이타의 헤더 또는 파일 확장명이 검사된다. 상기 데이타 종류가 소정의 종류와 일치하면, 스텝(606)에서 상기 데이타는 압축가능한 것으로 결정된다. 상기 데이타 스트림은 스텝(608)에서 압축 스트림 또는 암호화 스트림과 같은 기타 다른 종류의 스트림에 부가된다. 다음에, 상기 압축 스트림과 기타 다른 스트림이 스텝(610)에서 기록 스트림에 부가된다. 스텝(612)에서, 기록 스트림은 부가된 스트림과 더불어 전송되고, 스텝(614)에서 기록 스트림이 상기 클라이언트에 의해 수신된다.
이와 같이, 스트림 압축 방법 및 장치가 공개된다. 여기에서 설명된 특정 배열과 방법은 단지 본 발명의 원리를 예시한 것에 불과하다. 본 발명의 범위로부터 이탈하지 않고 당업자에 의해 형태 및 상세 사항에 수많은 수정이 행해질 수도 있다. 본 발명은 특정 실시예와 관련하여 설명되었지만, 이에 한정되는 것으로 간주되어서는 안된다. 오히려, 본 발명은 첨부된 특허 청구의 범위의 범위에 의해서만 한정된다.
상기와 같이 본 발명을 구성하면, 압축 및 전송전에 데이타 길이에 관한 정보를 필요로 하지 않고, 연속적이고 불명확한 데이타 스트림을 압축하는 방법 및 장치를 제공한다.
도 1a는 종래 압축 방법에 사용된 데이타 블록을 나타낸 도면,
도 1b는 종래 압축 메카니즘이 다중 데이타 블록을 압축 및 전송하는 방법을 나타낸 도면,
도 2a는 본 발명이 동작하는 일반적인 컴퓨터 시스템,
도 2b는 본 발명이 동작하는 다른 컴퓨터 시스템(WebTVTM 시스템),
도 3은 현재 청구된 발명의 일실시예의 개략도,
도 4a는 본 발명의 일실시예에 따른 데이타 스트림을 나타낸 도면,
도 4b는 시간 라인에 따른 데이타 패킷의 압축 및 전송을 나타낸 도면,
도 4c는 시간 라인을 기초로 압축되고 암호화된 데이타 패킷의 수신을 나타낸 도면,
도 5는 WebTVTM 시스템에서 구현된 본 발명의 일실시예를 나타낸 도면,
도 6은 본 발명의 일실시예를 나타낸 흐름도.

Claims (27)

  1. 복수 개의 논리적으로 상호접속된 네트워크 서버와 클라이언트 시스템을 포함하고, 상기 네트워크 서버중의 적어도 일부는 압축 유닛을 포함하고 상기 클라이언트 시스템중의 적어도 일부는 데이터 압축해제 유닛을 포함하는 네트워크 접속된 컴퓨터 시스템에서, 데이터가 검색되는 시간과 데이터가 네트워크 서버에 의해 전송되는 시간 사이의 지연을 감소시키기 위해, 연속적이고 구별할 수 없는 데이타 스트림을 압축하는 컴퓨터 구현 방법에 있어서,
    상기 데이타 스트림이 압축가능한 지를 결정하기 위해 상기 데이타 스트림을 검사하는 단계;
    상기 데이타 스트림이 압축가능하면 상기 데이타 스트림을 네트워크 서버의 압축 유닛에 의해 발생된 압축 스트림에 부가하는 단계;
    네트워크 서버에 의한 완전한 데이터 블록에 대한 검색과 무관하게 압축된 데이타 스트림을 발생하기 위해 상기 데이타 스트림에 대해 압축을 바로 수행하는 단계; 및
    상기 압축된 데이타 스트림이 발생됨에 따라 상기 압축된 데이타 스트림을 연속적으로 전송하는 단계를 포함하고 있는 것을 특징으로 하는 컴퓨터 구현 방법.
  2. 제 1 항에 있어서, 상기 데이타 스트림이 압축가능한 지를 판정하기 위해 상기 데이타 스트림을 검사하는 상기 단계는 상기 데이타 스트림의 헤더가 소정의 헤더 종류와 매칭되는 지를 판정하기 위해 상기 데이타 스트림을 검사하는 단계를 포함하고 있는 것을 특징으로 하는 컴퓨터 구현 방법.
  3. 제 1 항에 있어서, 상기 데이타 스트림이 압축가능한 지를 판정하기 위해 상기 데이타 스트림을 검사하는 상기 단계는 상기 데이타 스트림의 파일 확장자가 소정의 헤더 종류와 매칭되는 지를 판정하기 위해 상기 데이타 스트림을 검사하는 단계를 포함하고 있는 것을 특징으로 하는 컴퓨터 구현 방법.
  4. 제 1 항에 있어서, 압축을 바로 수행하는 상기 단계는 상기 데이타 스트림의 데이타 바이트의 카운트를 수행하는 단계를 포함하고 있는 것을 특징으로 하는 컴퓨터 구현 방법.
  5. 제 1 항에 있어서, 상기 데이타 스트림은 HTML 데이타 스트림인 것을 특징으로 하는 컴퓨터 구현 방법.
  6. 복수 개의 논리적으로 상호접속된 네트워크 서버와 클라이언트 시스템을 포함하고, 상기 네트워크 서버중의 적어도 일부는 압축 유닛을 포함하고 상기 클라이언트 시스템중의 적어도 일부는 데이터 압축해제 유닛을 포함하는, 네트워크 접속된 컴퓨터 시스템에서, 데이터가 검색되는 시간과 데이터가 네트워크 서버에 의해 전송되는 시간 사이의 지연을 감소시키기 위해 HTML 데이타 스트림을 압축하는 컴퓨터 구현 방법에 있어서,
    상기 HTML 데이타 스트림의 컨텐츠 종류 헤더를 판독하는 단계;
    완전한 데이터 블록에 대한 검색과 무관하게 네트워크 서버에 의해 데이터가검색됨에 따라 상기 HTML 데이타 스트림을 압축하는 압축 알고리즘을 네트워크 서버의 압축 유닛에 의해 호출하는 단계;
    압축시에 바로 상기 압축된 HTML 데이타 스트림의 전송되어지게 하는 단계; 및
    데이타 끝 지시자가 수신될 때까지 전송을 계속하는 단계를 포함하고 있는 것을 특징으로 하는 컴퓨터 구현 방법.
  7. 제 6 항에 있어서, 압축 전에 상기 HTML 데이타 스트림의 데이타 바이트의 카운트를 실행하는 단계를 더 포함하고 있는 것을 특징으로 하는 컴퓨터 구현 방법.
  8. 제 6 항에 있어서, 압축 전에 상기 HTML 데이타 스트림의 상기 데이타 바이트의 프린트를 실행하는 단계를 더 포함하고 있는 것을 특징으로 하는 컴퓨터 구현 방법.
  9. 복수 개의 논리적으로 상호접속된 네트워크 서버와 클라이언트 시스템을 포함하고, 상기 네트워크 서버중의 적어도 일부는 압축 유닛을 포함하고 상기 클라이언트 시스템중의 적어도 일부는 데이터 압축해제 유닛을 포함하는, 네트워크 접속된 컴퓨터 시스템에서, 컴퓨터 시스템에 의해 실행될 때, 상기 컴퓨터 시스템이,
    데이타 스트림이 압축가능한 지를 결정하기 위해 상기 데이타 스트림을 검사하는 단계;
    상기 데이타 스트림이 압축가능하면 상기 데이타 스트림을 네트워크 서버의 압축 유닛에 의해 발생된 압축 스트림에 부가하는 단계;
    네트워크 서버에 의한 완전한 데이터 블록에 대한 검색과 무관하게 압축된 데이타 스트림을 발생하기 위해 상기 데이타 스트림에 대해 압축을 바로 수행하는 단계; 및
    상기 압축된 데이타 스트림이 발생됨에 따라 상기 압축된 데이타 스트림을 연속적으로 전송하는 단계를 수행하게 하는 명령어 열을 나타내는 데이타를 저장하고 있는 것을 특징으로 하는 머신 판독가능 매체.
  10. 제 9 항에 있어서, 상기 데이타 스트림이 압축가능한 지를 판정하기 위해 상기 데이타 스트림을 검사하는 상기 단계는 상기 데이타 스트림의 헤더가 소정의 헤더 종류와 매칭되는 지를 판정하기 위해 상기 데이타 스트림을 검사하는 단계를 포함하고 있는 것을 특징으로 하는 머신 판독가능 매체.
  11. 제 9 항에 있어서, 상기 데이타 스트림이 압축가능한 지를 판정하기 위해 상기 데이타 스트림을 검사하는 상기 단계는 상기 데이타 스트림의 파일 확장자가 소정의 헤더 종류와 매칭되는 지를 판정하기 위해 상기 데이타 스트림을 검사하는 단계를 포함하고 있는 것을 특징으로 하는 머신 판독가능 매체.
  12. 제 9 항에 있어서, 압축을 바로 수행하는 상기 단계는 상기 데이타 스트림의 데이타 바이트의 카운트를 수행하는 단계를 포함하고 있는 것을 특징으로 하는 머신 판독가능 매체.
  13. 제 9 항에 있어서, 상기 데이타 스트림은 HTML 데이타 스트림인 것을 특징으로 하는 머신 판독가능 매체.
  14. 복수 개의 논리적으로 상호접속된 네트워크 서버와 클라이언트 시스템을 포함하고, 상기 네트워크 서버중의 적어도 일부는 압축 유닛을 포함하고 상기 클라이언트 시스템중의 적어도 일부는 데이터 압축해제 유닛을 포함하는, 네트워크 접속된 컴퓨터 시스템에서, 컴퓨터 시스템에 의해 실행될 때 상기 컴퓨터 시스템이,
    HTML 데이타 스트림의 컨텐츠 종류 헤더를 판독하는 단계;
    완전한 데이터 블록에 대한 검색과 무관하게 네트워크 서버에 의해 데이터가 검색됨에 따라 상기 HTML 데이타 스트림을 압축하는 압축 알고리즘을 네트워크 서버의 압축 유닛에 의해 호출하는 단계;
    압축시에 바로 상기 압축된 HTML 데이타 스트림의 전송되어지게 하는 단계; 및
    데이타 끝 지시자가 수신될 때까지 전송을 계속하는 단계를,
    실행하게 하는 명령어 열을 나타내는 데이타를 저장하고 있는 것을 특징으로 하는 머신 판독가능 매체.
  15. 제 14 항에 있어서, 상기 명령어를 나타내는 저장된 데이터에는, 상기 컴퓨터 시스템이 압축 전에 상기 HTML 데이타 스트림의 데이타 바이트의 카운트를 실행하는 단계를 수행하게 하는 명령어를 나타내는 데이터가 더 저장되어 있는 것을 특징으로 하는 머신 판독가능 매체.
  16. 제 14 항에 있어서, 상기 명령어를 나타내는 저장된 데이터에는, 상기 컴퓨터 시스템이 압축 전에 상기 HTML 데이타 스트림의 상기 데이타 바이트의 프린트를 실행하는 단계를 수행하게 하는 명령어를 나타내는 데이터가 더 저장되어 있는 것을 특징으로 하는 머신 판독가능 매체.
  17. 복수 개의 논리적으로 상호접속된 네트워크 서버와 클라이언트 시스템을 포함하고, 상기 네트워크 서버중의 적어도 일부는 압축 유닛을 포함하고 상기 클라이언트 시스템중의 적어도 일부는 데이터 압축해제 유닛을 포함하는 네트워크 접속된 컴퓨터 시스템에서, 데이터가 검색되는 시간과 데이터가 네트워크 서버에 의해 전송되는 시간 사이의 지연을 감소시키기 위해 연속적이고 불명확한 데이타 스트림을 압축하는 장치에 있어서,
    상기 데이타 스트림이 압축가능한 지를 판정하기 위해 상기 데이타 스트림을 검사하는 수단;
    상기 데이타 스트림이 압축가능하면 네트워크 서버의 압축 유닛에 의해 상기 데이타 스트림을 압축 스트림에 부가하는 수단;
    네트워크 서버에 의해 완전한 데이터 블록에 대한 검색과 무관하게 압축된 데이타 스트림을 발생하기 위해 상기 데이타 스트림에 대해 압축을 바로 수행하는 수단; 및
    상기 압축된 데이타 스트림이 발생됨에 따라 상기 압축된 데이타 스트림을 연속적으로 전송하는 수단을 구비하고 있는 것을 특징으로 하는 장치.
  18. 제 17 항에 있어서, 상기 데이타 스트림이 압축가능한 지를 판정하기 위해 상기 데이타 스트림을 검사하는 상기 수단은 상기 데이타 스트림의 헤더가 소정의 헤더 종류와 매칭되는 지를 판정하기 위해 상기 데이타 스트림을 검사하는 수단을 포함하고 있는 것을 특징으로 하는 장치.
  19. 제 17 항에 있어서, 상기 데이타 스트림이 압축가능한 지를 판정하기 위해 상기 데이타 스트림을 검사하는 상기 수단은 상기 데이타 스트림의 파일 확장자가 소정의 헤더 종류와 매칭되는 지를 판정하기 위해 상기 데이타 스트림을 검사하는 수단을 포함하고 있는 것을 특징으로 하는 장치.
  20. 제 17 항에 있어서, 압축을 바로 수행하는 상기 수단은 상기 데이타 스트림의 데이타 바이트의 카운트를 수행하는 수단을 포함하고 있는 것을 특징으로 하는 장치.
  21. 제 16 항에 있어서, 상기 데이타 스트림은 HTML 데이타 스트림인 것을 특징으로 하는 장치.
  22. 복수 개의 논리적으로 상호접속된 네트워크 서버와 클라이언트 시스템을 포함하고, 상기 네트워크 서버중의 적어도 일부는 압축 유닛을 포함하고 상기 클라이언트 시스템중의 적어도 일부는 데이터 압축해제 유닛을 포함하는 네트워크 접속된 컴퓨터 시스템에서, HTML 데이타 스트림을 압축하는 장치에 있어서,
    상기 HTML 데이타 스트림의 컨텐츠 종류 헤더를 판독하는 수단;
    완전한 데이터 블록에 대한 검색과 무관하게 네트워크 서버에 의해 데이터가 검색됨에 따라 상기 HTML 데이타 스트림을 압축하는 압축 알고리즘을 네트워크 서버의 압축유닛에 의해 호출하는 수단;
    압축시에 바로 상기 압축된 HTML 데이타 스트림의 전송되어지게 하는 수단; 및
    데이타 끝 지시자가 수신될 때까지 전송을 계속하는 수단을 구비하고 있는 것을 특징으로 하는 장치.
  23. 제 22 항에 있어서, 압축 전에 상기 HTML 데이타 스트림의 데이타 바이트의 카운트를 실행하는 수단을 더 구비하고 있는 것을 특징으로 하는 장치.
  24. 제 22 항에 있어서, 압축 전에 상기 HTML 데이타 스트림의 상기 데이타 바이트의 프린트를 실행하는 수단을 더 구비하고 있는 것을 특징으로 하는 장치.
  25. 제 1 항에 있어서, 압축을 바로 수행하는 상기 단계는 상기 데이타 스트림의 데이타 바이트의 프린트를 수행하는 단계를 포함하고 있는 것을 특징으로 하는 컴퓨터 구현 방법.
  26. 제 9 항에 있어서, 압축을 바로 수행하는 상기 단계는 상기 데이타 스트림의 데이타 바이트의 프린트를 수행하는 단계를 포함하고 있는 것을 특징으로 하는 머신 판독가능 매체.
  27. 제 17 항에 있어서, 압축을 바로 수행하는 상기 수단은 상기 데이타 스트림의 데이타 바이트의 프린트를 수행하는 수단을 포함하고 있는 것을 특징으로 하는 장치.
KR1019970058631A 1996-11-22 1997-11-07 연속적이고불명확한데이타스트림의압축방법및장치 KR100540495B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US8/754,164 1996-11-22
US08/754,164 1996-11-22
US08/754,164 US5838927A (en) 1996-11-22 1996-11-22 Method and apparatus for compressing a continuous, indistinct data stream

Publications (2)

Publication Number Publication Date
KR19980042182A KR19980042182A (ko) 1998-08-17
KR100540495B1 true KR100540495B1 (ko) 2006-03-09

Family

ID=25033696

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970058631A KR100540495B1 (ko) 1996-11-22 1997-11-07 연속적이고불명확한데이타스트림의압축방법및장치

Country Status (6)

Country Link
US (1) US5838927A (ko)
EP (1) EP0844768A3 (ko)
JP (1) JP4165668B2 (ko)
KR (1) KR100540495B1 (ko)
AU (1) AU5264398A (ko)
WO (1) WO1998022880A1 (ko)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6339787B1 (en) * 1995-11-30 2002-01-15 Stampede Technologies, Inc. Apparatus and method for increasing speed in a network file/object oriented server/client system
KR19980044990A (ko) * 1996-12-09 1998-09-15 양승택 휴대형 멀티미디어 데이터 입출력 처리기의 구조 및 그 구동 방법
US6370571B1 (en) 1997-03-05 2002-04-09 At Home Corporation System and method for delivering high-performance online multimedia services
US7529856B2 (en) * 1997-03-05 2009-05-05 At Home Corporation Delivering multimedia services
US6587877B1 (en) * 1997-03-25 2003-07-01 Lucent Technologies Inc. Management of time and expense when communicating between a host and a communication network
US6182122B1 (en) * 1997-03-26 2001-01-30 International Business Machines Corporation Precaching data at an intermediate server based on historical data requests by users of the intermediate server
US8255680B1 (en) * 1997-06-26 2012-08-28 Oracle America, Inc. Layer-independent security for communication channels
US6115035A (en) * 1997-07-21 2000-09-05 Mediaone Group, Inc. System and method for automated audio/video archive and distribution
US6672775B1 (en) * 1997-08-01 2004-01-06 International Business Machines Corporation Cross-machine web page download and storage
AU1390399A (en) * 1997-11-24 1999-06-15 Pointcast, Inc. Identification and processing of compressed hypertext markup language (html)
EP0928070A3 (en) * 1997-12-29 2000-11-08 Phone.Com Inc. Compression of documents with markup language that preserves syntactical structure
US6144996A (en) * 1998-05-13 2000-11-07 Compaq Computer Corporation Method and apparatus for providing a guaranteed minimum level of performance for content delivery over a network
US6401133B1 (en) * 1998-06-24 2002-06-04 Unisys Corporation System for high speed continuous file transfer processing of data files
US7360230B1 (en) 1998-07-27 2008-04-15 Microsoft Corporation Overlay management
IL141104A0 (en) 1998-07-27 2002-02-10 Webtv Networks Inc Remote computer access
US8189662B2 (en) * 1999-07-27 2012-05-29 Microsoft Corporation Selection compression
US6704790B1 (en) * 1998-09-16 2004-03-09 Microsoft Corporation Server-side stream switching
SE513353C2 (sv) * 1998-10-21 2000-08-28 Ericsson Telefon Ab L M Partiell hämtning av bilder i den komprimerade domänen
US6298385B1 (en) * 1998-10-28 2001-10-02 Qwest Communications Int'l., Inc. Method and apparatus for optimizing playback of media files over a data network
US6624761B2 (en) 1998-12-11 2003-09-23 Realtime Data, Llc Content independent data compression method and system
US20010023429A1 (en) * 1999-02-16 2001-09-20 Keith R. Barker Data broadcasting system and method for distributing data from one or more content providers to personal computers
US6601104B1 (en) 1999-03-11 2003-07-29 Realtime Data Llc System and methods for accelerated data storage and retrieval
US6345307B1 (en) 1999-04-30 2002-02-05 General Instrument Corporation Method and apparatus for compressing hypertext transfer protocol (HTTP) messages
GB9911099D0 (en) * 1999-05-13 1999-07-14 Euronet Uk Ltd Compression/decompression method
US6449658B1 (en) * 1999-11-18 2002-09-10 Quikcat.Com, Inc. Method and apparatus for accelerating data through communication networks
JP2001242786A (ja) * 1999-12-20 2001-09-07 Fuji Photo Film Co Ltd 配信装置、配信方法、及び記録媒体
US20010047473A1 (en) 2000-02-03 2001-11-29 Realtime Data, Llc Systems and methods for computer initialization
US7330824B1 (en) 2000-02-25 2008-02-12 Navic Systems, Inc. Method and system for content profiling and activation
US6845396B1 (en) 2000-02-25 2005-01-18 Navic Systems, Inc. Method and system for content deployment and activation
US7392281B1 (en) 2000-02-25 2008-06-24 Navic Systems, Inc. System and method for providing guaranteed delivery of messages to embedded devices over a data network
US6714992B1 (en) 2000-02-25 2004-03-30 Navic Systems, Inc. Method and system for embedded network device installation
ATE369677T1 (de) * 2000-02-29 2007-08-15 Benjamin D Baker Intelligenter rufprozess für ein diskussionsforum
JP3623715B2 (ja) * 2000-04-07 2005-02-23 日本電気株式会社 通信端末装置
US6985963B1 (en) 2000-08-23 2006-01-10 At Home Corporation Sharing IP network resources
US20020059499A1 (en) * 2000-09-06 2002-05-16 Hudson Michael D. System and methods for performing last-element streaming
US7050376B2 (en) 2000-09-19 2006-05-23 Lg Electronics Inc. Optical disc player and method for reproducing thereof
DE10048482A1 (de) * 2000-09-29 2002-04-18 Siemens Ag Verfahren und Vorrichtung zur Optimierung der Datenübertragungsrate bei einer Netzwerkanbindung
US9143546B2 (en) 2000-10-03 2015-09-22 Realtime Data Llc System and method for data feed acceleration and encryption
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
US6834297B1 (en) * 2000-10-06 2004-12-21 Redline Networks, Inc. Web resource transfer acceleration system and method
US7319667B1 (en) * 2000-11-15 2008-01-15 Cisco Technology, Inc. Communication system with priority data compression
US7072982B2 (en) 2000-11-22 2006-07-04 Microsoft Corporation Universal naming scheme for peer to peer resources
US7594030B2 (en) 2000-11-22 2009-09-22 Microsoft Corporation Locator and tracking service for peer to peer resources
US7047273B2 (en) 2000-11-28 2006-05-16 Navic Systems, Inc. Load balancing in set top cable box environment
US20020078241A1 (en) * 2000-12-15 2002-06-20 Alfy, Inc. Method of accelerating media transfer
US6407680B1 (en) 2000-12-22 2002-06-18 Generic Media, Inc. Distributed on-demand media transcoding system and method
US7242324B2 (en) * 2000-12-22 2007-07-10 Sony Corporation Distributed on-demand media transcoding system and method
US7640362B2 (en) * 2001-01-31 2009-12-29 Interdigital Technology Corporation Adaptive compression in an edge router
US7386046B2 (en) 2001-02-13 2008-06-10 Realtime Data Llc Bandwidth sensitive data compression and decompression
US7069342B1 (en) * 2001-03-01 2006-06-27 Cisco Technology, Inc. Communication system with content-based data compression
GB0117132D0 (en) * 2001-07-13 2001-09-05 Roke Manor Research Data compression
GB2378361B (en) * 2001-08-01 2004-10-13 Roke Manor Research Method for compression of data
US7992067B1 (en) 2001-11-09 2011-08-02 Identita Technologies International SRL Method of improving successful recognition of genuine acoustic authentication devices
US7480703B2 (en) * 2001-11-09 2009-01-20 Sony Corporation System, method, and computer program product for remotely determining the configuration of a multi-media content user based on response of the user
US7730165B2 (en) * 2001-11-09 2010-06-01 Sony Corporation System, method, and computer program product for remotely determining the configuration of a multi-media content user
US7356575B1 (en) 2001-11-09 2008-04-08 Sony Corporation System, method, and computer program product for remotely determining the configuration of a multi-media content user
US7155475B2 (en) * 2002-02-15 2006-12-26 Sony Corporation System, method, and computer program product for media publishing request processing
US7659907B1 (en) * 2002-03-29 2010-02-09 Graphics Properties Holdings, Inc. System and method for providing dynamic control of a graphics session
US20040210947A1 (en) 2003-04-15 2004-10-21 Shusman Chad W. Method and apparatus for interactive video on demand
US20030196206A1 (en) 2002-04-15 2003-10-16 Shusman Chad W. Method and apparatus for internet-based interactive programming
US7920590B2 (en) * 2002-07-12 2011-04-05 Spyder Navigations L.L.C. Wireless communications system having built-in packet data compression and support for enabling non-standard features between network elements
US7610400B2 (en) * 2004-11-23 2009-10-27 Juniper Networks, Inc. Rule-based networking device
US8296354B2 (en) 2004-12-03 2012-10-23 Microsoft Corporation Flexibly transferring typed application data
US20070177590A1 (en) * 2006-01-31 2007-08-02 Microsoft Corporation Message contract programming model
US8423088B2 (en) * 2009-07-22 2013-04-16 Microsoft Corporation Aggregated, interactive communication timeline
US8837578B2 (en) * 2011-03-16 2014-09-16 Verizon Patent And Licensing Inc. MPEG-W decoder
US9521176B2 (en) 2014-05-21 2016-12-13 Sony Corporation System, method, and computer program product for media publishing request processing

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5495291A (en) * 1994-07-22 1996-02-27 Hewlett-Packard Company Decompression system for compressed video data for providing uninterrupted decompressed video data output
US5506580A (en) * 1989-01-13 1996-04-09 Stac Electronics, Inc. Data compression apparatus and method
US5557749A (en) * 1992-10-15 1996-09-17 Intel Corporation System for automatically compressing and decompressing data for sender and receiver processes upon determination of a common compression/decompression method understood by both sender and receiver processes
US5570197A (en) * 1993-06-01 1996-10-29 Matsushita Electric Industrial Co., Ltd. Apparatus for further compressing and recording encoded digital video data streams

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61158257A (ja) * 1984-12-29 1986-07-17 Hashimoto Corp ビデオテツクス受信中の電話応対方式
US4852151A (en) * 1988-02-24 1989-07-25 Hayes Microcomputer Products, Inc. Modem with call waiting
JPH01298854A (ja) * 1988-05-27 1989-12-01 Oki Electric Ind Co Ltd データ伝送装置の自動認識方式
KR910002934B1 (ko) * 1988-08-31 1991-05-10 삼성전자 주식회사 전자식 간이 교환 장치의 통화 대기 및 교대통화방법
US5177480A (en) * 1988-12-07 1993-01-05 British Telecommunications Public Limited Company Data communication having transmitter-controlled mode switching from compressed-to-transparent mode but local synchronous transmitter-controlled and receiver-controlled mode switching from transparent-to-compressed mode
US5005011A (en) * 1988-12-23 1991-04-02 Apple Computer, Inc. Vertical filtering apparatus for raster scanned display
US4995074A (en) * 1989-04-03 1991-02-19 Goldman Bruce J Switched line modem interface system
US5299307A (en) * 1990-08-17 1994-03-29 Claris Corporation Controls for drawing images on computer displays
JPH0813068B2 (ja) * 1991-01-16 1996-02-07 富士ゼロックス株式会社 データ通信装置
EP0512174B1 (en) * 1991-05-08 1997-02-26 Semaphore, Inc. Parallel rule-based data transmission method and apparatus
US5202828A (en) * 1991-05-15 1993-04-13 Apple Computer, Inc. User interface system having programmable user interface elements
US5241587A (en) * 1991-07-03 1993-08-31 Teltone Corporation Polling controller
US5263084A (en) * 1991-07-22 1993-11-16 Northern Telecom Limited Spontaneous caller identification with call-waiting
US5490208A (en) * 1991-10-03 1996-02-06 Viscorp Apparatus and method for voice mode and data mode television-to-television communication
US5396546A (en) * 1991-10-03 1995-03-07 Viscorp Apparatus and method for automatic and user configurable information appliance
US5538255A (en) * 1992-02-18 1996-07-23 Barker; Bruce J. Remote controlled multiplayer video game
US5410541A (en) * 1992-05-04 1995-04-25 Ivon International, Inc. System for simultaneous analog and digital communications over an analog channel
GB2271252A (en) * 1992-10-03 1994-04-06 Ibm Data compression in a computer workstation
US5325423A (en) * 1992-11-13 1994-06-28 Multimedia Systems Corporation Interactive multimedia communication system
CA2085280C (en) * 1992-12-14 2000-08-15 Carole Quirk Delayed cancel call waiting
US5469540A (en) * 1993-01-27 1995-11-21 Apple Computer, Inc. Method and apparatus for generating and displaying multiple simultaneously-active windows
US5287401A (en) * 1993-03-15 1994-02-15 Intel Corporation Apparatus and method for a modem for detecting a call waiting signal
US5521597A (en) * 1993-08-02 1996-05-28 Mircosoft Corporation Data compression for network transport
US5488411A (en) * 1994-03-14 1996-01-30 Multimedia Systems Corporation Interactive system for a closed cable network
US5548532A (en) * 1994-04-28 1996-08-20 Thomson Consumer Electronics, Inc. Apparatus and method for formulating an interactive TV signal
US5558339A (en) * 1994-05-05 1996-09-24 Perlman; Stephen G. Network architecture to support recording and playback of real-time video games
US5586257A (en) * 1994-05-05 1996-12-17 Perlman; Stephen G. Network architecture to support multiple site real-time video games
US5675507A (en) * 1995-04-28 1997-10-07 Bobo, Ii; Charles R. Message storage and delivery system
US5572206A (en) * 1994-07-06 1996-11-05 Microsoft Corporation Data compression method and system
US5530852A (en) * 1994-12-20 1996-06-25 Sun Microsystems, Inc. Method for extracting profiles and topics from a first file written in a first markup language and generating files in different markup languages containing the profiles and topics for use in accessing data described by the profiles and topics
US5612730A (en) * 1995-03-03 1997-03-18 Multimedia Systems Corporation Interactive system for a closed cable network
US5673209A (en) * 1995-03-29 1997-09-30 International Business Machines Corporation Apparatus and associated method for compressing and decompressing digital data
US5686912A (en) * 1995-05-08 1997-11-11 Hewlett-Packard Company Data compression method and apparatus with optimized transitions between compressed and uncompressed modes
US6112250A (en) * 1996-04-11 2000-08-29 America Online, Inc. Recompression of files at an intermediate node in a network system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5506580A (en) * 1989-01-13 1996-04-09 Stac Electronics, Inc. Data compression apparatus and method
US5557749A (en) * 1992-10-15 1996-09-17 Intel Corporation System for automatically compressing and decompressing data for sender and receiver processes upon determination of a common compression/decompression method understood by both sender and receiver processes
US5570197A (en) * 1993-06-01 1996-10-29 Matsushita Electric Industrial Co., Ltd. Apparatus for further compressing and recording encoded digital video data streams
US5495291A (en) * 1994-07-22 1996-02-27 Hewlett-Packard Company Decompression system for compressed video data for providing uninterrupted decompressed video data output

Also Published As

Publication number Publication date
JPH10190471A (ja) 1998-07-21
AU5264398A (en) 1998-06-10
EP0844768A3 (en) 1999-10-13
EP0844768A2 (en) 1998-05-27
US5838927A (en) 1998-11-17
WO1998022880A1 (en) 1998-05-28
JP4165668B2 (ja) 2008-10-15
KR19980042182A (ko) 1998-08-17

Similar Documents

Publication Publication Date Title
KR100540495B1 (ko) 연속적이고불명확한데이타스트림의압축방법및장치
US9100861B2 (en) System and method for abbreviating information sent to a viewing device
US6396805B2 (en) System for recovering from disruption of a data transfer
US8903937B2 (en) Apparatus and method for caching of compressed content in a content delivery network
CA2591782C (en) System and method for enhancing network browsing speed by setting a proxy server on a handheld device
JP4363847B2 (ja) インタラクティブ・テレビ用のデジタル・テレビ・アプリケーション・プロトコル
US6457054B1 (en) System for reducing user-visibility latency in network transactions
US6795848B1 (en) System and method of reading ahead of objects for delivery to an HTTP proxy server
US7716306B2 (en) Data caching based on data contents
JP2003099358A (ja) サーバー−クライアントネットワークを介するオンライン対話性を改善する方法及びシステム
US20100281042A1 (en) Method and System for Transforming and Delivering Video File Content for Mobile Devices
EP0961490A2 (en) Internet convolution audio/video server
CA2591777C (en) System and method for enhancing network browsing speed by setting a proxy server on a handheld device
JP2006520039A (ja) メディアデータストリームを処理するための方法、データ構造、及びシステム
JPH10247945A (ja) ユニフォーム・リソース・ロケータをテレビ信号内の放送アドレスへマッピングする方法及び装置
US20040080533A1 (en) Accessing rendered graphics over the internet
US7069297B2 (en) Data transfer scheme using re-direct response message for reducing network load
JP2004220260A (ja) ウェブページ閲覧システム及び画像配信サーバ
EP1159663A2 (en) A system and method for content analysis and minimization
US20040215716A1 (en) System and method for distributing foveated data in a network
CA2563488C (en) A system and method for abbreviating information sent to a viewing device
WO2001095119A1 (en) Caching architecture for delivery of multimedia content
CN104935632A (zh) 一种基于cifs协议的加速方法及系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20111206

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee