lynx、links、elinksなどのテキストベースのブラウザはより少ない帯域幅を消費しますかGUIベースのブラウザ(つまり、Firefox、Chromeなど)よりも?
私は推測noトラフィックの減少です。
根拠:テキストベースのブラウザは、サーバーによって提供されるページ全体をダウンロードすると思います。ページウィジェットの合理化または削減は、ローカルで行われます。
ほとんどのテキストベースのブラウザはページスクリプトやSWFを実行しないため、トラフィックがいくらか減少する可能性があります。
Webサーバーは「Webサイト全体」を送信しませんが、ブラウザが要求するドキュメントを送信します。
たとえば、 https://www.google.com/ にアクセスすると、ブラウザはドキュメントをサーバーに問い合わせますhttps://www.google.com/
。サーバーはリクエストを処理し、HTMLコードを返します。
次に、ブラウザはサーバーが送信したものを確認します。この場合、それはHTML Webページなので、ドキュメントを解析し、参照されているスクリプト、スタイルシート、画像、フォントなどを探します。
この段階で、ブラウザはそのドキュメントのダウンロードを終了しましたが、参照されているドキュメントはまだダウンロードされていません。そうするか、スキップするかを選択できます。通常のブラウザは、最高の表示エクスペリエンスを得るために、参照されているすべてのドキュメントをダウンロードしようとします。広告ブロッカー(Adblockなど)またはプライバシープラグイン(Ghostery、NoScript)がある場合、一部のリソースもブロックする可能性があります。
次に、ブラウザーは、サーバーに1つのリソースを明示的に要求するたびに、参照されているドキュメントを1つずつダウンロードします。 Googleの例では、ブラウザは次の参照を見つけますが、それらのいくつかに名前を付けます。
(実際のファイルは、ユーザー、ブラウザー、セッションによって異なる場合があり、時間の経過とともに変化する場合があります)
テキストベースのブラウザは、画像、Flashファイル、HTML5ビデオなどをダウンロードしないため、ダウンロードするデータが少なくなります。
@NathanOsmanは、コメントで良い点を示しています。小さな画像がHTMLドキュメントに直接埋め込まれている場合があり、その場合はダウンロードを避けられません。これは、リクエストの数を減らすために使用されるもう1つのトリックです。それらは非常に小さいですが、そうでなければ、base64でバイナリファイルをエンコードするオーバーヘッドが大きすぎます。 Google.comにはそのような画像はほとんどありません:(base64エンコードサイズ/デコードサイズ)
彼らがそうしているのではないかと思う。テキストベースのブラウザが、デフォルトでは画像や、フォント(必要な場合)、スクリプトなどの外部エンティティなどのリソースをダウンロードするとは思わない。
私はlynxとwgetの両方でこのIANAページ( http://www.iana.org/domains/reserved )を取得しようとするtcpdumpを使用していくつかの基本的なテストを行い、結果がここにありました(HTTPコマンド必要に応じて残りを提供できます)。
lynx http://www.iana.org/domains/reserved
4 0.072774 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /domains/reserved HTTP/1.0
10 0.146971 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (text/html)
wget -p http://www.iana.org/domains/reserved
4 0.072139 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /domains/reserved HTTP/1.0
22 0.145905 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (text/html)
28 0.219381 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /robots.txt HTTP/1.0
30 0.291877 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (text/plain)
32 0.292550 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2013.1/screen.css HTTP/1.0
94 0.440388 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (text/css)
100 0.514652 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2013.1/print.css HTTP/1.0
132 0.660071 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (text/css)
138 0.733546 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_img/bookmark_icon.ico HTTP/1.0
154 0.878227 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/octet-stream)
160 0.950713 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_js/2013.1/jquery.js HTTP/1.0
277 1.172095 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/x-javascript)
283 1.244571 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_js/2013.1/iana.js HTTP/1.0
285 1.317059 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK
287 1.317609 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_img/2013.1/iana-logo-header.svg HTTP/1.0
332 1.464356 192.0.32.8 -> xx.xx.xx.xx HTTP/XML HTTP/1.1 200 OK
337 1.536749 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_img/2013.1/icann-logo.svg HTTP/1.0
348 1.610449 192.0.32.8 -> xx.xx.xx.xx HTTP/XML HTTP/1.1 200 OK
353 1.682727 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2013.1/fonts/OpenSans-Light.ttf HTTP/1.0
658 2.552776 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/octet-stream)
663 2.625015 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2013.1/fonts/OpenSans-Regular.ttf HTTP/1.0
926 3.063537 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/octet-stream)
932 3.135931 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2013.1/fonts/OpenSans-Semibold.ttf HTTP/1.0
1216 3.573481 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/octet-stream)
1222 3.645984 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2013.1/fonts/OpenSans-Bold.ttf HTTP/1.0
1500 4.012966 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/octet-stream)
1506 4.085693 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2013.1/fonts/Inconsolata.otf HTTP/1.0
1584 4.304016 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/octet-stream)
1589 4.376612 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_img/2011.1/icons/icon_alert.png HTTP/1.0
1592 4.449311 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (PNG)
1594 4.449930 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_img/2013.1/iana-logo-homepage.png HTTP/1.0
1627 4.596125 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (PNG)
1633 4.668596 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_img/2013.1/[email protected] HTTP/1.0
1704 4.895581 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (PNG)
1710 4.968097 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2011.1/fonts/OpenSans-Light.ttf HTTP/1.0
1982 5.364584 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/octet-stream)
1988 5.438091 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2011.1/fonts/OpenSans-Regular.ttf HTTP/1.0
2243 5.830353 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/octet-stream)
2249 5.902861 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2011.1/fonts/OpenSans-SemiBold.ttf HTTP/1.0
2259 5.976674 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 404 NOT FOUND (text/html)
2263 6.047876 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2011.1/fonts/OpenSans-Bold.ttf HTTP/1.0
2533 6.415590 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/octet-stream)
2539 6.487909 xx.xx.xx.xx -> 192.0.32.8 HTTP GET /_css/2011.1/fonts/Inconsolata.otf HTTP/1.0
2616 6.720477 192.0.32.8 -> xx.xx.xx.xx HTTP HTTP/1.1 200 OK (application/octet-stream)
wget
はブラウザがダウンロードできないリソースをダウンロードする可能性があるため、これは優れたテストではないことに気づきましたが、私が保持していると思われる例-GUIブラウザでコンテンツをレンダリングするには、さらに多くのリクエストが必要です。そのため、GUIブラウザは通常、テキストベースのブラウザよりも多くのネットワークトラフィックを引き起こします。
テキストベースのブラウザは、肥大化したWeb 2.0の高解像度の画像、ビデオ、インタラクティブなもの(Flashなど)をすべて要求するわけではないため、転送されるデータの量を大幅に削減できると思います。
特定のIPtablesルールにヒットするトラフィックの量をカウントするIPtablesルールを設定して、これをテストすることをお勧めします。
たとえば、トラフィックをカウントするポート80 + 443のルールを作成し、通常のブラウザーでWebを閲覧し、IPtablesカウンターをリセットして、テキストベースのブラウザーで同じことを行います。
動的なウェブコンテンツ(広告など)はアクセスごとに異なる可能性があるため、両方の実行を100%比較することはできないことに注意してください。