TW201440475A - 串流zip檔 - Google Patents

串流zip檔 Download PDF

Info

Publication number
TW201440475A
TW201440475A TW103101866A TW103101866A TW201440475A TW 201440475 A TW201440475 A TW 201440475A TW 103101866 A TW103101866 A TW 103101866A TW 103101866 A TW103101866 A TW 103101866A TW 201440475 A TW201440475 A TW 201440475A
Authority
TW
Taiwan
Prior art keywords
file
container
zip
streamable
archive
Prior art date
Application number
TW103101866A
Other languages
English (en)
Inventor
Paul William Chinn
Eric Olaf Carlson
Ronnie Misra
Original Assignee
Apple Inc
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 Apple Inc filed Critical Apple Inc
Publication of TW201440475A publication Critical patent/TW201440475A/zh

Links

Classifications

    • 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
    • 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 Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本發明描述一種建立並傳輸一可串流ZIP檔案容器的系統。該可串流ZIP檔案容器含有串流後設資料、檔案及一中央目錄。該串流後設資料、檔案及中央目錄可儲存於一連續串流中而無任何介入之位元組。當由支援可串流ZIP檔案容器之一用戶端器件讀取該可串流ZIP檔案容器時,該用戶端器件可退出該資料串流而不接收該中央目錄。該ZIP檔案容器之傳輸期間的中斷可得以繼續。

Description

串流ZIP檔
本技術係關於檔案容器,且更具體而言係關於建立並傳輸可串流ZIP檔案容器。
隨著網際網路存取變得更風行,軟體產品及媒體愈來愈頻繁地經由網際網路而非經由諸如CD及DVD之實體媒體來傳送並出售。時常,發送者(或賣方)可經由一或多個網路將檔案傳送至接收端(或買方)。檔案經分組並壓縮成稱作檔案容器(或封存檔案)之單一方裝以易於使用。一種風行封存檔案格式為由PKWARE開發的PKZIP檔案格式。此檔案格式被非正式地稱作「zip封存」或「zip檔案」。ZIP封存由一組檔案及中央目錄構成。中央目錄包括各自儲存對於ZIP封存之操作為本質之檔案屬性的許多記錄。每一記錄可連同關於應用至檔案之壓縮或加密演算法(若存在)之屬性來識別檔案在ZIP封存中之位置。實際上,未定義資料之位元組貫穿ZIP封存而被支付,且結果中央目錄來充當映射以對複數個檔案進行定位並排序。中央目錄亦可包括驗證ZIP封存中內容之完整性的資訊。由於此等原因,ZIP封存需要在儲存於ZIP封存中之資料可進行解壓縮並存取之前整體地進行接收。
使用ZIP檔案容器可具有某些缺點。舉例而言,若在ZIP檔案容器之傳輸期間接收到中斷,則網路資源可被浪費。中斷可係歸因於電 力中斷或網路故障。由於ZIP檔案容器之架構要求在容器內之資料係可存取之前整體地接收容器,因此ZIP檔案容器之所接收部分視檔案格式而可係不能用的。在一些情形下,ZIP檔案容器必須被重新傳輸至使用者,因此導致被浪費之頻寬。作為另一實例,ZIP檔案容器之處理時間可係過長的,此係由於整個ZIP檔案容器必須在儲存於容器中之資料可經處理並存取之前被下載。前述情形在ZIP檔案容器大小較大的情形下特別為真。除由ZIP檔案容器自身消耗之磁碟空間外,處理ZIP檔案容器且以內容之原始形式將其內容寫入至磁碟中要求顯著磁碟空間。因此,需要用於傳輸ZIP檔案容器的改善之技術。
本發明之額外特徵及優點將在隨後之描述中加以闡述,且將部分地自該描述顯而易見,或可藉由實踐本文所揭示之原理而得知。可借助於在隨附申請專利範圍中特定指出的器具及組合來實現並獲得本發明之特徵及優點。本發明之此等及其他特徵將自以下描述及所附申請專利範圍變得更加充分地顯而易見,或可藉由實踐本文所闡述之原理而得知。
所揭示係用於建立並傳輸可串流ZIP檔案容器(例如,可串流封存檔案)的系統、方法及非暫時性電腦可讀儲存媒體。可串流ZIP檔案容器經組態以同時地進行接收並處理。因此,用戶端可在正自網路接收可串流ZIP檔案容器同時處理可串流ZIP檔案容器中的檔案。在與傳統ZIP檔案容器相比較時,此情形導致處理時間及磁碟空間要求的減少。
結構上,可串流ZIP檔案容器含有串流後設資料,繼之以ZIP檔案容器之檔案,繼之以中央目錄。此等檔案中之每一者可係完整檔案。串流後設資料可含有ZIP檔案容器後設資料之版本號碼、壓縮區塊大小、ZIP檔案容器中記錄(或檔案)的數目、待用於檔案及目錄之 標準檔案系統權限,及需要非預設檔案系統權限及彼等權限之值的檔案的清單。ZIP檔案容器之部分係在連續串流中而無任何介入之位元組。此情形導致ZIP檔案容器具有以其將被處理(例如,解壓縮、解密等)之次序定序且無任何未定義資料的檔案。中央目錄可藉由使用數個經排序記錄來描述檔案的配置。
隨著可串流ZIP檔案容器正被用戶端接收,中斷可發生。在此等情形下,可串流ZIP檔案容器之傳輸可被恢復並繼續。在一些實例中,發送者或接收者可維持設定為可串流ZIP檔案容器中複數個檢查點中之一者的繼續點以識別傳輸的進度。當中斷發生時,繼續點可藉由發送者使用以自中斷恢復,並繼續可串流ZIP檔案容器的傳輸。因此,可串流ZIP檔案容器既為可串流的(例如,可在其正被接收同時進行處理)亦為可恢復的(例如,可自中斷繼續)。
100‧‧‧系統
110‧‧‧伺服器
115‧‧‧ZIP檔案產生器
120‧‧‧用戶端
150‧‧‧時序圖
160‧‧‧時序圖
190‧‧‧資料庫
200‧‧‧ZIP檔案轉換區塊
201‧‧‧未定義資料
202‧‧‧未定義資料
203‧‧‧未定義資料
204‧‧‧未定義資料
210‧‧‧本機檔案標頭
215‧‧‧本機檔案
220‧‧‧本機檔案標頭
225‧‧‧本機檔案
230‧‧‧中央目錄記錄
240‧‧‧中央目錄記錄
250‧‧‧結束中央目錄記錄
260‧‧‧經定義本機標頭
265‧‧‧串流後設資料
270‧‧‧中央目錄
700‧‧‧習知系統匯流排計算系統架構
705‧‧‧系統匯流排
710‧‧‧處理單元/處理器
712‧‧‧快取記憶體
715‧‧‧系統記憶體
720‧‧‧唯讀記憶體(ROM)
725‧‧‧隨機存取記憶體(RAM)
730‧‧‧儲存器件
732‧‧‧模組1/軟體模組
734‧‧‧模組2/軟體模組
735‧‧‧輸出器件
736‧‧‧模組3/軟體模組
740‧‧‧通信介面
745‧‧‧輸入器件
800‧‧‧例示性雲端計算系統組態
8021‧‧‧使用者終端機
8022‧‧‧使用者終端機
802n‧‧‧使用者終端機
8041‧‧‧伺服器
8042‧‧‧伺服器
804n‧‧‧伺服器
806‧‧‧資料庫
820‧‧‧雲端計算資源
822‧‧‧雲端伺服器
824‧‧‧雲端資料庫
826‧‧‧雲端儲存器
828‧‧‧雲端網路
為了描述可獲得本發明之上述及其他優點及特徵所用的方式,上文簡潔描述之原理的更特定描述將藉由參考其特定實施例來再現,該等實施例說明於附圖中。理解此等圖式描繪本發明之僅例示性實施例,且因此不被視為限制本發明的範疇,本文中之原理經由使用隨附圖式藉由額外專一性及細節來描述並解釋,其中:圖1說明經組態以傳送ZIP檔案容器之例示性系統;圖2說明例示性ZIP檔案轉換;圖3說明用於建立可串流ZIP檔案容器的例示性程序;圖4說明用於在偵測到中斷之後繼續傳輸的例示性程序;圖5說明用於在偵測到中斷之後繼續傳輸的另一例示性程序;圖6說明用於處理ZIP檔案容器的例示性程序;圖7說明習知系統匯流排計算系統架構;且圖8說明例示性雲端計算資源系統組態。
下文詳細論述本發明之各種實施例。雖然論述了特定實施,但應理解,僅出於說明目的進行此論述。熟習相關技術者將認識到,在不脫離本發明之精神及範疇之情況下可使用其他組件及組態。
所揭示技術解決此項技術中對用於串流ZIP檔案容器(例如,封存檔案)之系統、器件、技術及方法的需要。可串流ZIP檔案容器可給予優於傳統ZIP檔案容器的許多優點。舉例而言,可串流ZIP檔案容器大小上可小於傳統非可串流ZIP檔案容器。此外,可串流ZIP檔案容器可包括額外後設資料,其允許來自可串流ZIP檔案容器之所接收檔案在接收到整個可串流ZIP檔案容器之前開始解密或解壓縮。最後,可串流zip檔案亦可被直接提取至磁碟,前述操作需要較少磁碟空間來處理內容且對儲存硬體產生較少磨損。
圖1說明經組態以傳送ZIP檔案容器之例示性系統。系統100包括伺服器110、用戶端120及資料庫190。用戶端120可將內容請求傳輸至伺服器110。回應於內容請求,伺服器110與資料庫190通信以接收所請求之內容。所請求內容可係應用程式、數位媒體項目、呈現、文件,或其他類型之數位內容。在一項實施例中,內容可以ZIP容器格式來接收。在其他實施例中,內容可作為若干檔案或作為非可串流ZIP檔案容器格式來接收。在內容作為若干檔案經接收之實施例中,伺服器110之ZIP檔案產生器115可將內容封裝至可串流ZIP檔案容器中。一旦經封裝,可串流ZIP檔案容器便可被傳輸至用戶端120。此情形可涉及視需要在封裝期間壓縮或加密內容以建立經緊縮及/或加密的可串流ZIP檔案容器。在內容作為非可串流ZIP檔案容器經接收的實施例中,ZIP檔案產生器115可自非可串流版本來產生可串流ZIP檔案容器。下文在時序圖150及160中描述可串流ZIP檔案容器與非可串流ZIP檔案容器之間的差異。在其他實例中,伺服器110可被另一用戶端 器件替換,因此將系統100轉換成系統以在多個用戶端器件之間共用內容。
時序圖150說明在用戶端120可存取非可串流ZIP檔案容器的內容之前於用戶端120開始接收非可串流ZIP檔案容器之後的遲滯量(表示為時間段)。如時序圖150中所展示,在用戶端120開始處理非可串流ZIP檔案容器之前,用戶端120整體地接收ZIP檔案容器。一旦處理為完成的,用戶端120便可存取ZIP檔案容器的內容。相反,時序圖160說明在用戶端120可存取可串流ZIP檔案容器的內容之前於用戶端120開始接收可串流ZIP檔案容器之後的遲滯量。如圖所示,用戶端120可就在接收可串流ZIP檔案容器之後開始處理可串流ZIP檔案容器。舉例而言,ZIP檔案容器之解壓縮可在接收到將ZIP檔案容器識別為可串流的標頭資訊之後開始。此情形允許ZIP檔案容器之接收時間與處理時間重疊。由於重疊,處理就在接收到可串流ZIP檔案容器之整體之後完成,前述情形意謂用戶端120可就在接收到可串流ZIP檔案容器之後存取容器的內容。本質上,相較於非可串流ZIP檔案容器,用戶端器件可以較高處理器使用為代價相對較快地存取可串流ZIP檔案容器的內容歷時接收及處理重疊的時間段。
時序圖150及160亦說明,當用戶端處理可串流ZIP檔案時,需要較少磁碟空間。如時序圖150中所展示,非可串流ZIP檔案在處理開始之前被整體地接收。結果,需要磁碟空間以儲存非可串流ZIP檔案及非可串流ZIP檔案的經處理內容兩者。相反,可串流ZIP檔案可在與時序圖160中所展示之時間相同的時間經接收並處理。由於可串流ZIP檔案之數個檔案可隨著ZIP檔案正被接收而經解壓縮並提取,因此需要較少儲存容量來儲存可串流ZIP檔案及經解壓縮/提取的內容。結果,需要較少磁碟空間來處理可串流ZIP檔案。
圖2說明例示性ZIP檔案轉換區塊。ZIP檔案轉換區塊200經組態 以接收非可串流ZIP檔案容器,且將所接收容器轉換成可串流ZIP檔案容器。此情形可涉及接收、解封裝及重新封裝檔案容器。在一些實例中,ZIP檔案轉換區塊200可係圖1之ZIP檔案產生器115的部分。如圖2中所展示,所接收容器(例如,非可串流版本)包括本機檔案標頭220、本機檔案225、本機檔案標頭210、本機檔案215、中央目錄記錄230及240、結束中央目錄記錄250。由中央目錄記錄230、中央目錄記錄240及結束中央目錄記錄250構成的中央目錄包括至檔案容器之不同部分的位移或指標。舉例而言,中央目錄記錄230包括至本機檔案標頭210之連結,中央目錄記錄240包括至本機檔案標頭220之連結,且結束中央檔案目錄記錄250包括至中央目錄記錄230之連結。中央目錄描述ZIP檔案容器中檔案的處理次序。所接收容器亦包括經由容器在檔案當中分散的未定義資料201至204,因此建立非連續檔案容器。
在接收到非可串流ZIP檔案容器之後,ZIP檔案轉換區塊200可解封裝容器。解封裝容器係指解譯容器之內容的程序。當解封裝非可串流ZIP檔案容器時,結束中央目錄記錄250首先位於所接收容器內。在一項實例中,ZIP檔案轉換200可經由所接收容器之結束反覆,直至識別出結束中央目錄記錄250。中央目錄記錄250指示至第一中央目錄記錄(例如,中央目錄記錄230)之指標(或位移),該指標又可用以定位第一檔案(例如,本機檔案標頭210及本機檔案215)以供處理。在處理第一檔案之後,中央目錄之反覆繼續至第二中央目錄記錄(例如,中央目錄記錄240),第二中央目錄記錄用以定位第二檔案(例如,本機檔案標頭220及本機檔案225)。在處理第二本機檔案之後,中央目錄繼續反覆至下一中央目錄記錄(若存在)。一旦處理了所有中央目錄,則中央目錄之反覆可到達結束中央目錄記錄250,因此表示所有檔案已經排序並處理。處理可包括解壓縮、解密或其他資料操控技術。處理亦可包括自中央目錄及/或本機檔案收集後設資料。
一旦已解封裝容器,ZIP檔案轉換區塊200便可將容器重新封裝成可串流ZIP檔案容器。ZIP檔案轉換區塊200可藉由在新容器中建立並寫出經定義本機標頭260而開始。經定義本機標頭260可包括串流後設資料265的標頭資訊。經定義本機標頭260亦可包括名為「META-INF」的目錄。在一項實例中,經定義本機標頭260可包括複數個檔案,其組合地將容器識別為可串流ZIP檔案容器。舉例而言,針對含有電子出版物之檔案容器可存在稱作「mimetype」之可選第一檔案。名為「META-INF」之目錄可接著顯現於經定義本機標頭260中。可選「mimetype」檔案及「META-INF」目錄之組合可將容器識別為可串流的。替代地,經定義本機標頭260亦可包括經組態以將容器識別為可串流ZIP檔案容器的旗標或其他識別符。旗標可藉由用戶端器件讀取為檔案容器是否為可串流的早期指示符。在經定義本機標頭260之後,ZIP檔案轉換區塊200可寫出串流後設資料265。串流後設資料265可包括描述可串流ZIP檔案容器之屬性及屬性的後設資料。由於檔案容器經組態以被同時串流並處理,因此檔案容器之屬性及屬性在串流後設資料265中被提供至用戶端器件,使得用戶端可判定隨著檔案容器正被讀取而處理檔案容器的最佳方式。串流後設資料265可包括ZIP檔案容器之版本號碼、預設壓縮演算法、用以壓縮本機檔案之壓縮區塊大小、ZIP檔案容器中之檔案及/或記錄的數目、與ZIP檔案容器相關聯以確保ZIP檔案容器內之檔案尚未變更的總和檢查碼,及使用不同於預設壓縮演算法之壓縮演算法的本機檔案之清單。
在寫入串流後設資料265之後,ZIP檔案轉換區塊200可藉由寫出檔案之本機檔案標頭及資料而進行。在一項實施例中,檔案可根據所接收容器之中央目錄來寫出。舉例而言,與所接收容器之第一中央目錄記錄相關聯的檔案可首先被寫出,繼之以與所接收容器之第二中央目錄記錄相關聯的檔案。此操作可繼續,直至所有檔案以依序次序寫 出而無任何介入之未定義資料。在其他實施例中,檔案可以不同於由所接收容器之中央目錄指定之次序的次序被寫出。舉例而言,檔案可不同於由中央目錄指定之次序經重新排序,以允許在串流提取期間支援額外活動。舉例而言,應用二進制及支援檔案在ZIP檔案容器中可經較早地重新排序以允許隨著正接收ZIP檔案容器之其他部分而驗證可執行之應用程式的簽名及其資源。在一些實例中,待寫出之檔案可以將使可串流ZIP檔案容器之處理時間最佳化的次序來由ZIP檔案轉換區塊200自動地重新排序。舉例而言,由於ZIP檔案容器之內容未被封裝,因此可檢驗該等內容,且內容之次序可根據ZIP檔案容器之內容來指定。映射表或演算法可基於所接收ZIP檔案容器之內容的目錄來選擇最佳次序。每一檔案包括本機檔案標頭及本機檔案。舉例而言,寫出第一檔案包括寫出本機檔案標頭210及本機檔案215。在一些實施例中,本機檔案標頭可儲存資訊以驗證本機檔案之完整性。舉例而言,本機檔案標頭210可包括總和檢查碼以驗證本機檔案215的完整性。ZIP檔案轉換200視需要亦可壓縮或加密檔案。此情形可允許所產生ZIP檔案內之檔案使用相同壓縮及加密演算法。
在一些實施例中,ZIP檔案轉換區塊200可驗證,經寫入本機檔案標頭包括與資料相關的某資訊。舉例而言,ZIP檔案轉換區塊200可驗證,本機檔案標頭儲存經壓縮大小、未經壓縮大小,及/或與本機檔案標頭相關聯之資料的總和檢查碼。在一項實例中,串流資料必要之資訊經確認以存在於本機檔案標頭中。
一旦已寫出了檔案,ZIP檔案轉換區塊200便進行以寫出中央目錄。類似於所接收容器之中央目錄,所產生之中央目錄含有檔案容器內每一檔案的記錄。每一記錄包括至檔案之開始的指標或位移。舉例而言,中央目錄270包括至經定義本機檔案標頭260之開始的位移,中央目錄230包括至本機檔案標頭210之開始的指標,且中央目錄240包 括至本機檔案標頭220之開始的指標。記錄之排序可係根據容器內之檔案將由用戶端處理的次序。中央目錄記錄中之一些可自所接收容器進行複製,同時新產生其他中央目錄記錄。舉例而言,中央目錄270經新建立,且指向經定義本機檔案標頭260、並未在所接收容器中的檔案。一旦已寫出了中央目錄,在結束中央目錄記錄之後,可串流ZIP檔案容器便為完整的。如圖所示,可串流ZIP檔案容器之屬性係,檔案係連續資料串流而無任何介入之未定義資料。換言之,ZIP檔案容器中之每一檔案與另一檔案共用共同邊界。此外,可串流ZIP檔案容器中之檔案根據檔案將由用戶端進行處理之次序來定序。此情形允許ZIP檔案容器隨著其被接收到而進行處理。
在其他實施例中,ZIP檔案轉換區塊200視需要在可串流ZIP檔案容器之建立期間可使檔案經封裝,因此避免在解封裝可串流ZIP檔案容器上花費資源。然而,此情形可導致具具有不同壓縮或加密方案之檔案的容器。在一項實施例中,ZIP檔案轉換區塊200可處理所接收容器之中央目錄以判定其屬性及屬性。舉例而言,ZIP檔案容器之版本號碼、預設壓縮方案或加密方案、應用至容器中之檔案的預設壓縮區塊大小、容器中檔案的數目、總和檢查瑪及針對容器內並未正利用預設壓縮區塊大小或加密方案之檔案的壓縮區塊大小或加密方案可藉由處理中央目錄來判定。當寫入經定義本機檔案標頭260、串流後設資料265或本機檔案標頭時,可使用此等屬性及屬性。在一些實施中,屬性及屬性可在可串流ZIP檔案容器之兩個位置中找到:容器之開始處於串流後設資料265中,及容器之結束處於中央目錄中。藉由將資訊提供於兩個位置中,串流ZIP檔案容器對於不能串流ZIP檔案容器之用戶端器件為向後相容的。此外,具有串流ZIP檔案容器之能力的器件可跳過傳送可串流ZIP檔案容器之中央目錄,此係由於儲存於中央目錄中之資料可自可串流ZIP檔案容器的其他位置找到。此情形可導 致傳送至能夠串流ZIP檔案容器之器件的資料量的最佳化。在一項實例中,在兩個位置中重複屬性及屬性。
一旦建立了經定義本機檔案標頭260及串流後設資料265,ZIP檔案轉換區塊200便可根據指定於中央目錄中之次序經由所接收容器的檔案反覆,且將檔案寫入至可串流ZIP檔案容器中。ZIP檔案轉換區塊200亦可添加並未在所接收檔案容器之本機檔案標頭中的額外資訊至本機檔案標頭中。舉例而言,係關於本機檔案之關聯中央目錄記錄中的資訊可被複製至本機檔案標頭中,因此允許用戶端獲得對關聯本機檔案之所有屬性及屬性的存取而並非必須讀取關聯中央目錄記錄。
在寫入檔案之後,ZIP檔案轉換區塊200可寫出中央目錄。中央目錄可實質類似於所接收檔案容器的中央目錄,唯含有至經定義本機檔案標頭260之位移的新中央目錄記錄270且又說明中央目錄記錄270之經更新結束中央目錄記錄250外。在其他實例中,利用在用於產生以上可串流ZIP檔案容器之兩個不同方法中描述之技術的不同組合可用以產生可串流ZIP檔案容器。
圖3說明用於建立可串流ZIP檔案容器的例示性程序。程序300藉由在310處接收非可串流ZIP檔案容器而開始。非可串流ZIP檔案容器可類似於或實質類似於圖2中之所接收容器。一旦接收到非可串流ZIP檔案容器,便可在步驟320處分析容器。分析可包括收集本機檔案及容器的屬性及屬性。一旦已完成了對檔案容器之分析,便可在330處產生描述檔案容器之屬性及屬性的後設資料。舉例而言,圖2之經定義本機檔案標頭260及串流後設資料265可基於分析來產生。在已產生了後設資料之後,可在步驟340處使用後設資料及非可串流ZIP檔案容器來建立可串流ZIP檔案容器。此操作可包括寫入經定義本機檔案標頭、串流後設資料、ZIP檔案容器中的檔案,及中央目錄。
在一些實施例中,圖1之伺服器及用戶端可經進一步組態以在偵 測到中斷時繼續可串流ZIP檔案容器的傳輸。換言之,可串流ZIP檔案容器之傳輸在中斷之後可被繼續,而並非必須重新傳輸整個可串流ZIP檔案容器。舉例而言,若偵測到中斷,同時圖2之可串流ZIP檔案容器的本機檔案標頭220正被接收,則伺服器可繼續可串流ZIP檔案容器之以本機檔案標頭220開始的傳輸。圖4說明用於在偵測到中斷之後繼續傳輸的例示性程序。例示性程序可在伺服器上執行,該伺服器經組態以將ZIP檔案容器遞送至用戶端器件。程序400藉由在410處將可串流ZIP檔案容器傳輸至用戶端而開始。在傳輸期間,在420處偵測到中斷。可由伺服器偵測到中斷,或替代地可由用戶端來提供中斷。中斷可係網路錯誤、伺服器錯誤,或導致ZIP檔案容器之傳輸之中斷的用戶端錯誤。在偵測到中斷之後,在430處偵測到繼續指令。繼續指令可藉由伺服器或藉由用戶端來提供,以向伺服器通知中斷已被清除。舉例而言,伺服器在伺服器重新啟動或返回在線上之後可提供繼續指令,或用戶端在用戶端已重新啟動或返回在線上之後可提供繼續指令。在接收到繼續指令之後,可串流ZIP檔案容器之剩餘部分可被傳輸至用戶端。
在一些實例中,伺服器或用戶端可管理用以識別可串流ZIP檔案容器之傳輸之進度的繼續點。當中斷發生時,可串流ZIP檔案容器可基於繼續點來繼續傳輸。在一項實例中,繼續點可設定為可串流ZIP檔案容器中複數個預定義檢查點中的一者。取決於實施細節,預定義檢查點可位於構成可串流ZIP檔案容器之檔案的邊界處。預定義檢查點亦可係更通用或特定的。舉例而言,預定義檢查點可指定檔案容器之區段(經定義本機檔案標頭區段、檔案區段、中央目錄區段)的邊界,或可指定屬於檔案容器之檔案的厚塊(chunk)。預定義檢查點亦可係至ZIP檔案容器中的位移。在一項實例中,當偵測到中斷時,可設定繼續點。舉例而言,繼續點可設定為藉由伺服器成功傳輸之最後 檔案之後的檔案。在另一實例中,繼續點可提供於繼續指令中。舉例而言,用戶端可提供設定為藉由用戶端成功接收之最後檔案之後的檔案的繼續點。在一些實例中,繼續點/檢查點可簡單地係至ZIP檔案容器中的位移。在其他實例中,繼續點/檢查點可取決於所應用之加密/壓縮演算法。舉例而言,繼續點/檢查點可係壓縮區塊邊界。
圖5說明用於在偵測到中斷之後繼續傳輸的另一例示性程序。例示性程序可由用戶端執行執行,該用戶端經組態自伺服器接收ZIP檔案容器。程序500可藉由在510處接收含有可串流ZIP檔案容器之資料串流而開始。資料串流可係來自伺服器或另一用戶端。在520處,隨著接收到檔案容器,可維持繼續點。隨著接收到檔案,可使繼續點推進,直至由用戶端接收到整個檔案。在一項實施例中,繼續點在驗證檔案之後被推進。驗證可包括在檔案自伺服器進行傳輸時,驗證檔案尚未被破壞,經編輯,或以其他方式經變更。此操作可包括驗證關於檔案之總和檢查碼,解壓縮檔案,解密檔案,或其他資料處理技術。在一些實例中,繼續點可藉由經組態以隨著檔案經處理而使繼續點遞增的串流提取器來維持。
在530處,可偵測到資料串流之中斷。中斷可歸因於差/斷開之網路連結或器件離線。當偵測到中斷時,在540處,可暫時中止ZIP檔案容器之提取。在某將來時間點處,在550處重新建立資料串流。一旦重新建立了資料串流,便在560處傳輸繼續點。繼續點可被傳輸至傳輸器(伺服器或另一用戶端)以向傳輸器通知繼續資料串流之以繼續點開始的傳輸。在570處,用戶端基於繼續點繼續以接收可串流ZIP檔案容器。
圖6說明用於處理ZIP檔案容器的例示性程序。例示性程序可藉由用戶端來執行,該用戶端經組態以接收並處理可串流ZIP檔案容器及非可串流ZIP檔案容器兩者。程序600藉由在610處接收屬於ZIP檔案 容器之標頭而開始。在實例中,標頭可係圖2之經定義本機檔案標頭260,或圖2之本機檔案標頭220。在其他實例中,來自檔案容器之預定數目個位元組的資料或第一檔案而非標頭可被接收到。程序600可在620處基於所接收資訊來判定ZIP檔案容器是否為可串流的。在一項實例中,標頭中旗標或其他屬性的識別可用以判定ZIP檔案容器之可串流性。在另一實例中,經定義本機檔案標頭可基於標頭中之屬性或屬性來識別。舉例而言,「mimetype」檔案及/或「META-INF」目錄之存在可將檔案容器識別為可串流的。在又一實例中,標頭及關聯串流後設資料檔案(本機檔案)兩者可用以將檔案容器識別為可串流的。舉例而言,經定義本機檔案標頭之屬性及關聯串流後設資料檔案之屬性的分析可將檔案識別為可串流的。屬性可包括檔案/標頭之名稱、格式,或儲存於檔案/標頭內的值。若ZIP檔案容器並非可串流的(在640處),則程序600繼續以在650處接收整個ZIP檔案容器。一旦接收到了整個ZIP檔案容器,程序600便可在660處繼續處理ZIP檔案容器。處理可包括解密、解壓縮及驗證ZIP檔案容器的內容。替代地,若ZIP容器為可串流的(在640處),則程序600繼續以在670處隨著接收到ZIP檔案容器中之檔案而處理該等檔案。換言之,程序600可隨著接收到本機檔案標頭/本機檔案對而處理本機檔案標頭/本機檔案對。處理可包括解密、解壓縮及驗證ZIP檔案容器的內容。隨著檔案正進行處理,檔案可經追蹤以保持已進行處理之檔案之數目的計數。一旦所有檔案經處理(藉由程序600已處理了指定於容器中之數目個檔案,或藉由接收中央目錄記錄),程序600便可視需要在680處取消資料串流。換言之,當判定ZIP檔案容器為可串流的時,檔案容器之中央目錄部分的傳輸可被省略。
圖7及圖8說明例示性可能系統實施例。更恰當實施例在實踐本技術時對於一般熟習此項技術者將係顯而易見。一般熟習此項技術者 亦易於瞭解,其他系統實施例係可能的。
圖7說明習知系統匯流排計算系統架構700,其中系統之組件使用匯流排705彼此電通信。例示性系統700包括處理單元(CPU或處理器)710,及將包括系統記憶體715(諸如唯讀記憶體(ROM)720及隨機存取記憶體(RAM)725)的各種組件耦接至處理器710的系統匯流排705。系統700可包括具有高速度記憶體之快取記憶體,該快取記憶體與處理器710直接連接、接近處理器,或作為處理器的部分經整合。系統700可將資料自記憶體715及/或儲存器件730複製至快取記憶體712以供處理器710快速存取。以此方式,快取記憶體可提供使處理器710避免在等待資料同時延遲的效能提昇。此等及其他模組可控制或經組態以控制處理器710執行各種動作。其他系統記憶體715亦可供使用。記憶體715可包括具有不同效能特性之多個不同類型的記憶體。處理器710可包括任何通用處理器及硬體模組或軟體模組(諸如儲存於儲存器件730中之模組1 732、模組2 734及模組3 736,該等模組經組態以控制處理器710)以及專用處理器(其中軟體指令併入於實際處理器設計中)。處理器710可本質上係含有多個核央或處理器、匯流排、記憶體控制器、快取記憶體等之完全獨立計算系統。多核處理器可係對稱或非對稱的。
為實現與計算器件700的使用者互動,輸入器件745可表示任何數目個輸入機構,諸如用於語音之麥克風、用於示意動作或圖形輸入之觸敏式螢幕、鍵盤、滑鼠、動作輸入、語音等。輸出器件735亦可係對於熟習此項技術者已知的多個輸出機構中的一或多者。在一些個例中,多模式系統可使得使用者能夠提供多種類型之輸入以與計算器件700通信。通信介面740通常可管控並管理使用者輸入及系統輸出。不限制在任何特定硬體配置上操作,且因此可容易地用改良之硬體或韌體配置(在得以開發時)來替代此處之基本特徵。
儲存器件730係非揮發性記憶體,且可係硬碟或可儲存由電腦可存取之資料的其他類型之電腦可讀媒體,諸如匣式磁帶、快閃記憶卡、固態記憶體器件、數位影音光碟、卡匣、隨機存取記憶體(RAM)725、唯讀記憶體(ROM)720,及其混合物。
儲存器件730可包括用於控制處理器710之軟體模組732、734、736。預期到其他硬體或軟體模組。儲存器件730可連接至系統匯流排705。在一個態樣中,執行特定功能之硬體模組可包括儲存於電腦可讀媒體中的軟體組件,該軟體組件結合必要硬體組件(諸如處理器710、匯流排705、顯示器735等等)以進行功能。
雲端計算係一類型之基於網際網路之計算,在該計算中,多種資源由實體主控及/或控制,且經由網際網路藉由實體而可用於經授權之使用者。圖8說明例示性雲端計算系統組態800,其中多種電子器件可為了交換內容及其他資料經由網路進行通信。系統可經組態以用於促進電子器件之內部通信的廣泛之多種網路組態上。舉例而言,圖8中系統800之組件中的每一者可以區域化或分散式樣式實施於網路中。
系統800可經組態以包括雲端計算資源820(亦即,「雲端」)。雲端資源可包括多種硬體及/或軟體資源,諸如雲端伺服器822、雲端資料庫824、雲端儲存器826、雲端網路828、雲端應用程式、雲端平台及/或任何其他基於雲端的資源。在一些狀況下,雲端資源係分散式的。舉例而言,雲端儲存器826可包括多個儲存器件。在一些狀況下,雲端資源可越過多個雲端計算系統及/或個別具有網路能力之計算器件而分散。舉例而言,雲端計算資源820可與伺服器8041、8042、…、804n(統稱為「804」)、資料庫806及/或任何其他具有網路能力之計算器件通信以提供雲端資源。
此外,在一些狀況下,雲端資源可為冗餘的。舉例而言,若雲 端計算資源820經組態以提供資料備份服務,則資料之多個副本可經儲存,使得資料仍可用於使用者,即使儲存資源離線、繁忙,或以其他方式不可用於處理請求。在另一實例中,若雲端計算資源820經組態以提供軟體,則軟體可得自不同雲端伺服器,使得軟體可自不同雲端伺服器中之任一者進行伺服。演算法可經應用,使得最近伺服器或自具有最低當前負載之伺服器經選擇以處理給定請求。
在系統800中,使用者經由藉由直接及/或間接通信連接至網路的使用者終端機8021、8022、…、802n(統稱為「802」)與雲端計算資源820互動。雲端計算資源820可支援來自諸如以下各者之多種不同電子器件的連接:伺服器、桌上型電腦、行動電腦、手持型通信器件(例如,行動電話、智慧型電話、平板電腦)、機上盒、具有網路能力之硬碟機及/或任何其他具有網路能力之計算器件。此外,雲端計算資源820可同時接受來自多個電子器件之連接並與該多個電子器件互動。與多個電子器件之互動可經區分優先次序,或同時地發生。
雲端計算資源820可經由諸如以下各者之多種部署模型來提供雲端資源:公眾部署模型、私密部署模型、社區型部署模型、混合式部署模型及/或任何其他雲端部署模型。在一些狀況下,雲端計算資源820可支援多個部署模型。舉例而言,雲端計算資源820可經由公眾部署模型提供一組資源,且經由私密部署模型來提供另一組資源。
在一些組態中,使用者終端機802可自網際網路連接為可用的任何位置存取雲端計算資源820。然而,在其他狀況下,雲端計算資源820可經組態以約束對某些資源之存取,使得資源可僅自某些位置進行存取。舉例而言,若雲端計算資源820經組態以使用私密部署模型來提供資源,則雲端計算資源820可諸如藉由要求使用者終端機802自防火牆後方存取資源來約束對資源的存取。
雲端計算資源820可經由諸如以下各者之多種服務模型將雲端資 源提供至使用者終端機802:軟體即服務(SaaS)、平台即服務(PaaS)、基礎架構即服務(IaaS)及/或任何其他雲端服務模型。在一些狀況下,雲端計算資源820可將多個服務模型提供至使用者終端機802。舉例而言,雲端計算資源820可將SaaS及IaaS兩者提供至使用者終端機802。在一些狀況下,雲端計算資源820可將不同服務模型提供至不同使用者終端機802。舉例而言,雲端計算資源820可將SaaS提供至使用者終端機8021,且將PaaS提供至使用者終端機8022
在一些狀況下,雲端計算資源820可維持帳戶資料庫。帳戶資料庫可儲存註冊使用者的設定檔資訊。設定檔資訊可包括資源存取權,諸如准予使用者使用之軟體、最大儲存空間等。設定檔資訊亦可包括使用資訊,諸如消耗之計算資源、資料儲存位置、安全設定、個人組態設定等。在一些狀況下,帳戶資料庫可駐留於在雲端計算資源820遠端之資料庫或伺服器(諸如,伺服器804或資料庫806)上。
雲端計算資源820可提供需要使用者互動之多種功能性。因此,使用者介面(UI)可經提供從而用於與雲端計算資源820通信及/或執行與雲端資源相關聯的任務。UI可經由與雲端計算資源820通信之終端使用者終端機802來存取。取決於視雲端計算資源820及/或使用者終端機802之儲存及處理能力,UI可經組態而以包括以下各者之多種用戶端模式操作:複雜型用戶端模式、精簡型用戶端模式或混合式用戶端模式。因此,在一些實施例中,UI可實施為在使用者終端機處操作之獨立應用程式。在其他實施例中,基於網頁瀏覽器之入口可用以提供UI。在各種實施中,亦可使用存取雲端計算資源820之任何其他組態。
為了解釋清楚,在一些個例中,本技術可呈現為包括個別功能區塊,該等功能區塊包括包含器件,器件組件,在以軟體或硬體與軟體之組合具體化之方法中之步驟或常式的功能區塊。
在一些實施例中,電腦可讀儲存器件、媒體及記憶體可包括纜線或含有位元串流的無線信號,及其類似者。然而,在提及時,非暫時性電腦可讀儲存媒體明確地將諸如能量、載波信號、電磁波及信號本身之媒體排除在外。
根據上述實例之方法可使用儲存於電腦可讀媒體上或以其他方式自電腦可讀媒體獲得的電腦可執行指令來實施。此等指令可包含(例如)使得或以其他方式組態通用電腦、專用電腦或專用處理器件執行某一功能或功能群組的指令及資料。所使用之電腦資源的部分可係經由網路可存取的。電腦可執行指令可係(例如)二進制、中間格式指令,諸如組合語言、韌體或源碼。可用以儲存指令、所使用資訊及/或在根據所描述實例之方法期間建立之資訊的電腦可讀媒體之實例包括磁碟或光碟、快閃記憶體、具備非揮發性記憶體的USB器件、網路連接儲存器件,等等。
實施根據此等揭示內容之方法的器件可包含硬體、韌體及/或軟體,且可採用多種形式因數中的任一者。此等形式因數之典型實例包括膝上型電腦、智慧型電話、小型形式因數個人電腦、個人數位助理,等等。本文中所描述之功能性亦可具體化於周邊器件或內插式(add-in)卡中。以其他實例說明之,在單一器件中執行之不同晶片或不同程序當中此功能性亦可實施於電路板上。
指令、用於輸送此等指令之媒體、用於執行指令的計算資源及用於支援此等計算資源的其他結構係用於提供此等揭示內容中描述之功能的構件。
儘管多種實例及其他資訊用以解釋在隨附申請專利範圍之範疇內的態樣,但申請專利範圍之限制皆不應基於此等實例中之特定特徵或配置而暗示,此係由於一般熟習此項技術者將能夠使用此等實例以導出廣泛之多種實施。另外且儘管某標的可能以對於結構特徵及/或 方法步驟之實例特定的語言進行了描述,但應理解,隨附申請專利範圍中定義之標的不必限於此等所描述特徵或動作。舉例而言,此功能性可經不同地分佈,或以不同於本文中所識別之組件的組件來執行。確切而言,所描述特徵及步驟揭示為在隨附申請專利範圍之範疇內的系統及方法之組件的實例。
200‧‧‧ZIP檔案轉換區塊
201‧‧‧未定義資料
202‧‧‧未定義資料
203‧‧‧未定義資料
204‧‧‧未定義資料
210‧‧‧本機檔案標頭
215‧‧‧本機檔案
220‧‧‧本機檔案標頭
225‧‧‧本機檔案
230‧‧‧中央目錄記錄
240‧‧‧中央目錄記錄
250‧‧‧結束中央目錄記錄
260‧‧‧經定義本機標頭
265‧‧‧串流後設資料
270‧‧‧中央目錄

Claims (20)

  1. 一種電腦實施方法,其包含:藉由以一指定次序配置至少以下完整檔案來產生一封存檔案,該次序係:一定義本機檔案標頭,其經組態以將該配置識別為一可串流ZIP檔案,一定義本機檔案,其對應於該定義本機檔案標頭,該定義本機檔案經組態以儲存一可串流ZIP檔案之屬性,至少一本機檔案,每一本機檔案具有一本機檔案標頭及對應於該本機檔案標頭之一有效負載,及一中央目錄,其包括對應於該定義本機檔案標頭之記錄之一清單、該至少一本機檔案之該本機檔案標頭及一結束中央目錄記錄,該結束中央目錄記錄包括至該第一中央目錄記錄之一指標。
  2. 如請求項1之電腦實施方法,其中該指定次序將該封存檔案識別為可串流的。
  3. 如請求項1之電腦實施方法,其中該等屬性包括:用以壓縮該有效負載之一壓縮類型;及驗證來自該至少一本機檔案之一本機檔案的驗證資訊。
  4. 如請求項1之電腦實施方法,其中該等屬性包括來自該至少一本機檔案的利用另一壓縮類型之一本機檔案之一識別。
  5. 如請求項1之電腦實施方法,其中該等屬性包括記錄之該清單的一計數。
  6. 如請求項1之電腦實施方法,其進一步包含將該可串流ZIP檔案容器傳輸至一用戶端器件,該用戶端器件經組態以解密該複數 個檔案中之一者,同時接收該複數個檔案中之另一者。
  7. 如請求項1之電腦實施方法,其中無額外檔案存在於該定義本機檔案標頭、該定義本機檔案、該至少一本機檔案與該中央目錄之間。
  8. 如請求項1之電腦實施方法,其進一步包含:接收一非可串流封存檔案,該非可串流封存檔案含有該等完整檔案、該至少一本機檔案及該中央目錄。
  9. 如請求項8之電腦實施方法,其進一步包含:分析該非可串流封存檔案以判定該等完整檔案之該指定次序、完整檔案之數目;及基於該分析產生該定義本機檔案標頭及該定義本機檔案。
  10. 如請求項1之電腦實施方法,其中該封存檔案含有儲存於該中央目錄中的後設資料之兩個複本,使得可在該封存檔案中存取儲存於該中央目錄中之後設資料,而不讀取該中央目錄。
  11. 一種電腦實施方法,其包含:將一可串流ZIP檔案容器傳輸至一用戶端器件;偵測該可串流ZIP檔案容器之該傳輸的一中斷;偵測一繼續指令;回應於該繼續指令將另一資料串流傳輸至該用戶端器件,該另一資料串流含有該ZIP檔案容器之剩餘部分。
  12. 如請求項11之電腦實施方法,其中該繼續指令包括識別該可串流ZIP檔案容器之該傳輸在該中斷之前的進度的一繼續點。
  13. 如請求項12之電腦實施方法,其中該繼續點經設定為與該可串流ZIP容器相關聯之複數個預定義檢查點中的一者。
  14. 如請求項13之電腦實施方法,其中該複數個預定義檢查點位於構成該可串流ZIP檔案容器之複數個檔案的邊界處。
  15. 如請求項11之電腦實施方法,其中偵測該中斷包含自該用戶端器件接收一中斷訊息,該中斷訊息包括識別該可串流ZIP檔案容器之該傳輸之該進度的一繼續點。
  16. 一種電腦實施方法,其包含:自一傳輸源接收含有一可串流ZIP檔案容器之一串流資料傳輸,該可串流ZIP檔案容器包括該可串流ZIP檔案容器之參數、複數個檔案及一中央目錄;維持指示該可串流ZIP檔案容器之已被接收之一部分的一檢查點;當一中斷發生於該串流資料傳輸中時,將該檢查點傳輸至該傳輸源;及當該中斷被清除時,繼續以自藉由該所傳輸檢查點指示之該點接收該串流資料傳輸。
  17. 如請求項16之電腦實施方法,其中該檢查點係該複數個檔案之間的一邊界。
  18. 一種電腦實施方法,其包含:接收屬於一ZIP檔案容器之一標頭作為一資料串流之部分,該ZIP檔案容器進一步包括複數個檔案及一中央目錄;基於該標頭首先判定該ZIP檔案容器是否為可串流的;及在判定該ZIP檔案容器為可串流的之後,便隨著每一檔案經由該資料串流被接收而處理該複數個檔案。
  19. 如請求項18之電腦實施方法,其中該標頭儲存與該ZIP檔案容器相關聯之一版本號碼。
  20. 如請求項18之電腦實施方法,其中後設資料包括:用以壓縮該複數個檔案中之至少一者的一壓縮類型;及驗證該複數個檔案中之至少一者的驗證資訊。
TW103101866A 2013-01-17 2014-01-17 串流zip檔 TW201440475A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/744,007 US9420070B2 (en) 2013-01-17 2013-01-17 Streaming zip

Publications (1)

Publication Number Publication Date
TW201440475A true TW201440475A (zh) 2014-10-16

Family

ID=50073481

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103101866A TW201440475A (zh) 2013-01-17 2014-01-17 串流zip檔

Country Status (3)

Country Link
US (3) US9420070B2 (zh)
TW (1) TW201440475A (zh)
WO (1) WO2014113715A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9420070B2 (en) 2013-01-17 2016-08-16 Apple Inc. Streaming zip
US11055258B2 (en) * 2014-04-02 2021-07-06 International Business Machines Corporation Directly accessing archived data and executable files
US9954930B2 (en) 2015-08-06 2018-04-24 Airwatch Llc Generating content fragments for content distribution
US10572153B2 (en) 2016-07-26 2020-02-25 Western Digital Technologies, Inc. Efficient data management through compressed data interfaces
CN109525624B (zh) * 2017-09-20 2022-01-04 腾讯科技(深圳)有限公司 一种容器登录方法、装置及存储介质
US11064010B2 (en) * 2018-03-30 2021-07-13 Microsoft Technology Licensing, Llc Download progress information for composite files
US11061867B2 (en) * 2019-01-15 2021-07-13 EMC IP Holding Company LLC Application aware deduplication allowing random access to compressed files
WO2021014324A1 (en) * 2019-07-19 2021-01-28 JFrog Ltd. Data archive release in context of data object
CN116881035B (zh) * 2023-07-20 2024-06-14 上海弘连网络科技有限公司 文件修复方法、存储介质及电子设备

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6396805B2 (en) * 1997-03-25 2002-05-28 Intel Corporation System for recovering from disruption of a data transfer
US6311221B1 (en) * 1998-07-22 2001-10-30 Appstream Inc. Streaming modules
US6401239B1 (en) * 1999-03-22 2002-06-04 B.I.S. Advanced Software Systems Ltd. System and method for quick downloading of electronic files
US6377974B1 (en) * 2000-01-19 2002-04-23 Speedbit Ltd. Methods and apparatus for downloading a file from a server
GB2373067A (en) * 2000-11-29 2002-09-11 Ruslan Gennadievich Fedorovsky File transfer method and system using segmented transfer and targeted content
US7624132B2 (en) * 2002-01-22 2009-11-24 Sun Microsystems, Inc. Method and apparatus for processing a streamed zip file
US7039663B1 (en) * 2002-04-19 2006-05-02 Network Appliance, Inc. System and method for checkpointing and restarting an asynchronous transfer of data between a source and destination snapshot
US20040117459A1 (en) * 2002-12-12 2004-06-17 George Fry System and method providing multimedia messaging in communication networks
US7343435B2 (en) * 2003-11-10 2008-03-11 Digital Networks North America, Inc. Stream based compressed file download with interruption recovery
US8209434B2 (en) * 2006-06-22 2012-06-26 Sony Ericsson Mobile Communications Ab Continued transfer or streaming of a data file after loss of a local connection
US7707273B2 (en) * 2006-09-11 2010-04-27 Apple Inc. Management and prioritization of media item downloading
US7797746B2 (en) 2006-12-12 2010-09-14 Fortinet, Inc. Detection of undesired computer files in archives
US7792983B2 (en) * 2007-07-31 2010-09-07 International Business Machines Corporation Method and apparatus for checkpoint and restart of pseudo terminals
EP2088751B1 (en) * 2008-02-08 2013-07-03 Accenture Global Services Limited Streaming media interruption and resumption system
US8024382B2 (en) 2009-01-20 2011-09-20 Autodesk, Inc. Dynamic manipulation of archive files
US8630899B1 (en) * 2009-09-18 2014-01-14 Alpine Audio Now, LLC System and method for interactive advertisement augmentation via a called voice connection
US8769039B2 (en) * 2011-01-21 2014-07-01 Kaseya International Limited Method and apparatus of performing remote computer file exchange
US20130346379A1 (en) * 2012-06-22 2013-12-26 W. Andrew Loe Streaming dynamically-generated zip archive files
US9420070B2 (en) 2013-01-17 2016-08-16 Apple Inc. Streaming zip
US9697215B2 (en) 2013-09-04 2017-07-04 Oracle International Corporation Systems and methods for resumable replication

Also Published As

Publication number Publication date
US20160352811A1 (en) 2016-12-01
US20140201316A1 (en) 2014-07-17
US10250670B2 (en) 2019-04-02
US10965732B2 (en) 2021-03-30
US9420070B2 (en) 2016-08-16
US20190199775A1 (en) 2019-06-27
WO2014113715A1 (en) 2014-07-24

Similar Documents

Publication Publication Date Title
US10965732B2 (en) Streaming zip
US10142106B2 (en) System and method for securing sensitive data
JP6621543B2 (ja) ハイブリッドアプリケーションの自動更新
US10958416B2 (en) Encrypted and compressed data transmission with padding
KR102042723B1 (ko) 애플리케이션을 업데이트하는 방법
US9940203B1 (en) Unified interface for cloud-based backup and restoration
JP2019061694A (ja) データ転送最適化
US20220075750A1 (en) Article, device, and techniques for serverless streaming message processing
US8694685B2 (en) Migrating virtual machines with adaptive compression
US10216580B1 (en) System and method for mainframe computers backup and restore on object storage systems
US11803309B2 (en) Selective compression and encryption for data replication
US9898401B2 (en) Service associated with persistent storage
CN112948340A (zh) 数据同步方法、装置、电子设备及可读存储介质
US10747458B2 (en) Methods and systems for improving efficiency in cloud-as-backup tier
US20130167148A1 (en) Computing device and virtual machine operation control method
US10924275B1 (en) Creating multiple encrypted volumes from a single source
US11422871B1 (en) Event archiving and replay
US10133759B1 (en) System for determining storage or output of data objects
US20170228325A1 (en) Retrieving and converting offline data
US11474767B1 (en) Print from web services platform to local printer
CN115129425A (zh) 一种复制镜像的方法和装置
US20140068006A1 (en) Method, apparatus and system for providing content
US10936550B2 (en) Synchronizing different representations of content
CN112968763B (zh) 用于传输数据的方法、装置和系统
US20240020402A1 (en) Snapshot export from software as a service platforms