zip形式のファイルのダウンロードには、zip形式のファイルよりも時間がかかりますか?


13

zipファイルの性質上、同じサイズの解凍されたファイルよりも圧縮されたファイルをダウンロードするのに時間がかかることをどこかで読んだことがあります。

これは本当ですか、それともナンセンスですか?

編集:私はHTTPトラフィックについて話している


1
どのプロトコルで?
innaM

4
同じサイズの2つのファイル(zip形式とunzip形式(それぞれ1MBなど)、または圧縮および非圧縮形式(1MBと345KBなど))の2つのファイルについて話していますか?
トビーアレン

時間ではなくダウンロード速度を考慮する必要があります。どちらの場合も、レートは同じです...最終的に、一定の時間内に限られた数のバイトをダウンロードしました。Tobyのヒントのように、圧縮ファイルをダウンロードすると、最終的に圧縮されていないデータが増え、圧縮されていないダウンロードレートが効果的に増加します。
KFro

回答:


21

接続がcompressionを使用している場合、もちろんです。

データを2回効率的に圧縮することはできません。そのため、圧縮を有効にすると、1 MBのzipファイルは1 MBのtxtファイルよりも遅く転送されます。

注意:これは転送プロトコルに依存します。FTPまたはその他のプロトコルには、圧縮が組み込まれていません。HTTPが持っています。


ただし、通常はわずかです。mp3、jpg、またはzipをgzipしないでください。
リッチブラッドショー

1
圧縮するタイプを設定できます。そのため、最初に圧縮を有効にし、次に既知のタイプの圧縮を無効にするのはWebサーバー管理者次第です。
クリストファー

転送速度は遅くなりますか(パイプ上で遅くなります)、またはサーバーがサイクルを再圧縮するためにダウンロードに時間がかかりますか(パイプまで遅くなります)?最終結果は依然としてダウンロードが遅いため、非常に重要なポイントです。
MrChrister

3
ほとんどの場合、接続がボトルネックであるため、これはデータの圧縮/解凍にかかる時間の問題ではありません。HTTP圧縮はファイル自体ではなく転送で実行されるため、レイテンシはファイル全体ではなく転送の圧縮のレイテンシによってのみ増加します。サーバーでのCPU使用率が高すぎる場合を除き、http圧縮を有効にすることには実際には欠点はありません。反対に、すべてのサーバー管理者は、圧縮率の低いファイルタイプの転送の圧​​縮を無効にする必要があります。
クリストファー

11

標準のFTPまたはHTTPを介してダウンロードする場合は当てはまりません。他の接続タイプについては、クリストファーの答えを参照してください。

同じ接続を仮定すると、ダウンロードの速度はファイルのサイズによって決まります。

ファイルを直接確認するのではなく、zipファイルを開いて解凍して内容を確認する必要があるため、自動ウイルスチェックを有効にしている場合、ダウンロードの最後に遅延が発生する場合があります。


2
チャネルで圧縮が使用されている場合(@Christopherの答えを参照)。
fretje

2

圧縮でPPP(ダイヤルアップまたはVPN)接続を使用する場合、zipファイルはその性質によりテキストファイルよりも低速でダウンロードされる場合があります(前者は既に圧縮されており、後者はプロトコルによって圧縮されるため、測定速度が向上します) 。

ただし、受け取った情報の量を比較すると、ファイルアーカイバは通常、リンク層圧縮よりも優れているため、zipファイルのダウンロードはさらに効率的です。したがって、圧縮されたテキストファイルは、圧縮によりダウンロード速度が多少向上した場合でも、同じテキストファイルよりも速くダウンロードされます。


0

サーバーとルーターではGZIPを使用してパケットを圧縮し、圧縮しても圧縮しない場合でも送信するため、HTTPプロトコルに違いがないことに注意する必要があります。


0

既に述べたように、HTTPトラフィックは圧縮できますが、常に圧縮されるとは限りません。

これは、人々がadsl / cableモデムの代わりに電話モデムを使用したときに読んだかもしれません。この状況では、テキストは送信または受信の前に圧縮されるため、テキストファイルはより高速に送信されます。


2
私たちの中には、まだインターネットアクセスに電話モデムを使用している人もいます。:-)
ブライアンノブラウフ

0

これが関連しているかどうかはわかりませんが、1つのzipファイル(圧縮なしでzipで)をダウンロードすると、個々のファイルのダウンロードを開始する前にHTTPリクエストのオーバーヘッドが必要になるため、複数の(zipで解凍された)ファイルと同じパッケージをダウンロードするよりも高速です。


0

実用的な答え: ファイルを圧縮する目的は、他の人と簡単に共有(ダウンロード)できるようにすることです。zipは圧縮によって機能します。つまり、一般的な英語の「ファイルの圧縮」を意味します。

コンピューターソフトウェアは完全ではなく、ファイルを圧縮するとファイルがわずかに大きくなり共有が難しくなるという奇妙なケースがあります。ジッピングが失敗するこれらのエッジケースを見つけることは、おそらくあなたを涙させることになり、あなたの時間の価値はありません。

仮説的な答え:それは非常に複雑です。答えは、zipプログラム、転送プロトコル、ファイルサイズ、ファイルタイプ、さらにはブラウザタイプやクライアントコンピューターで実行されているウイルス対策ソフトウェアによって異なります。言い換えれば、「それは依存します」。


-2

答えは、実際には「依存します」です。Webサーバーがファイルの送信を選択した形式によって異なります。

サーバーがバイナリのそのままのバイトで回答を生成する場合、同じサイズの圧縮ファイルと圧縮解除ファイルは同じ速度でダウンロードされます。

サーバーがBase64エンコーディングで応答を生成すると、バイト数が増加し、zipファイルのダウンロードに時間がかかります。数年前までは非常に普及していましたが、最近のほとんどのWebサーバーはこれを行いません。

説明すると、base64形式は6ビットの表示可能文字のストリームです。これは、たとえば、6 * 8 = 48ビットである6バイナリバイトが48/6 = 8文字としてエンコードされることを意味します。一般に、nバイナリバイトの場合、送信されるbase64文字の数は(n * 8)/ 6です。したがって、nバイナリバイトの送信は、nのテキストバイトの送信よりも33%(8を6で除算)遅くなります。送られた。


1
これは電子メールメッセージには当てはまりますが、他のすべてのプロトコルには当てはまりません。
ブライアンノブラウフ

質問であったhttpについても同様です。HTTPダウンロードは、base64でマルチパートのエンコードを使用しています
harrymc

1
私はこれを少し疑っていますが、それをバックアップするための参照はありますか?
ハッセン

1
いいえ、一般的にhttpはバイナリファイルをbase64でエンコードしません。そのケースを宣言するMIMEタイプがありますが、一般的には、「パケット」(電子メールメッセージ)が8ビットクリーンでない接続を通過することが予想される電子メールにのみ使用されます。HTTPが存在するTCP / IPプロトコルは、8ビットクリーンであることが保証されており、MIMEエンコードコンテンツは帯域幅を浪費するだけです。
RBerteig

1
ファイルを送信するサーバーは、いくつかの形式から選択できます。私の答えは、約5年前に行った調査に関連しています。当時、かなりの数のサイトがContent-Transfer-Encoding(MIMEタイプとは異なる)でダウンロードマルチパートレスポンスを生成していました。簡単なチェックによると、これはもはや事実ではなく、実際、HTTP応答でContent-Transfer-Encodingを使用することに対する最新のRFCアドバイスです。したがって、OPに対する本当の答えは、上記の計算が一部のWebサイトで過去に当てはまることでしたが、現在では非常にまれであると信じています。しかし、それは都市の神話ではありません。
harrymc
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.