VPNを介した低帯域幅インターネット


10

新しく取得したオーバークロックされていないRaspberry Pi Model-Bを使用して、VPNで接続されたNASのセットアップを完了したところです。他では解決できない問題に遭遇しました。

を使用して決定されたインターネット帯域幅

wget --output-document = / dev / null http://speedtest.wdc01.softlayer.com/downloads/test500.zip

予想よりもはるかに遅いです。イーサネットがラップトップに直接接続されているときに7MBpsに近づくと、イーサネットを介してPiで約1.34MBpsを取得します。

問題はOpenVPNにありますが、それが正確に何であるか理解できません。これが私がこれを知っている方法です。

VPNをオフにしてからオンにした場合のPiのダウンロード速度を比較したところ、5.03 MBPSと1.34 MBPSでした。

次に、ラップトップ(有線)で試しました-6.9 MBPS(完全)対6.7 MBPS(ほぼ完全)でした。

そのため、私のラップトップの帯域幅を3%削減するVPNサービス(PrivateInternetAccess)に問題があるわけではありません。ただし、OpenVPNがPiで実行され、帯域幅が74%削減される方法と関係があります。

RaspbianのOpenVPNがそれほどひどいのはなぜですか?

更新:VPNなしのラップトップでの6.9MBPSから、VPNなしのPiでの5.03MBPSへのその減少のほとんどは、SDカードの書き込み速度によるもので、4.9MBPS前後であると判断しました。説明する必要があるのは、VPNのないPiの5.03 MPBSからVPNのある1.3MBPSへの大幅な削減です。

更新2:コメントからの提案からいくつかの手がかり:1)OpenVPNが実行されていて、wgetがバックグラウンドにある場合、CPUの70%を使用します2)Piで、US VPNサーバーから1.34 MBPSを取得し、約500-すべてのヨーロッパのVPNサーバーから600 KBPSですが、私のラップトップでは、米国のVPNサーバーから6.7MBPSを取得し、オランダのヨーロッパのサーバーのような非常に類似した6.6MBPSを取得しています。私が言っているのは、サーバーまでの距離が、ラップトップではなくPiに過度に影響しているように見えることです。


これは、書き込み速度とVPNオーバーヘッドの組み合わせの可能性があります。VPNはインターネット上で低速であり、SSHトンネリングが常に最速であったため、VPNを使用するのは好きではありませんでした。OpenVPNで圧縮を有効にするオプションはありますか?おそらくそれで遊んでください。おそらく暗号化は問題を引き起こします。いい質問ですね。また、Pi
Piotr Kula

topテスト中にCPU負荷を確認すると、暗号化のオーバーヘッドについて何かがわかるはずです。
Frepa

@フレパ素晴らしい提案!VPNを有効にすると、OpenVPNはCPUの70%を使用します。これが転送レートの大きな違いを引き起こしている原因だと思いますか?
dbrane 2013年

@dbrane、まるでCPUが制限要因であるかのように聞こえます。残りの30%のCPU時間はどこに行きますか?アイドル?アップデート2からは、ネットワークレイテンシ(スループットだけでなく)がパフォーマンスにとって重要であるかのように聞こえます。たぶんVPNで起こっているいくつかのハンドシェイクがあります。
Frepa 2013年

@Frepa残りのCPU時間のほとんどはwget自体によって使用されます。これは、転送速度のテストに使用するコマンドです。リストの他のすべては、それぞれ1%未満を使用します。その情報が役立つ場合は、VPNでCA証明書を使用しています。多分私はオーバークロックを試してみて、それが役立つかどうかを確認する必要がありますか?
dbrane 2013年

回答:


4

低電力のデバイスでは、少なくともSSHを使用する場合、RC4暗号を使用するとパフォーマンスが向上します。これは、計算が高速であるため、帯域幅に使用するCPUを少なくし、同じCPUの使用に対してより高い帯域幅を許可するためです。このガイドでは、暗号をRC4などのOpenSSLでサポートされているものに変更する方法について説明します。

http://openvpn.net/index.php/open-source/documentation/howto.html#security

RC4は利用可能な最も安全なアルゴリズムではありませんが、SSLは依然として安全な方法でそれを使用していることに注意してください(http://en.wikipedia.org/wiki/RC4で説明されているように、存在します)。更新:これは、以前よりも今は真実ではありません。RC4のセキュリティへの信頼は、事前を壊すための技術として、さらに減少され、そして2013年は私たちに様々な与えているRC4破壊の進展管理したNSAに関する憶測を。ウィキペディアの引用:

2013年の時点で、一部の州の暗号機関は、TLSプロトコルで使用されている場合でも、RC4を解読する機能を持っている可能性があるという推測があります。[3] 可能な場合は、RC4を無効にすることをお勧めします。[4] [5]

では、RC4を引き続き推奨できますか?本当に一般的ではありません。もちろん、セキュリティとパフォーマンスのトレードオフが必要であり、実際には多くのセキュリティは必要ないかもしれません。RC4であっても、暗号化はNSAのようなドラッグネット監視の取り組みを遅くします。しかし、私は実際に機密データに注意し、可能な場合はアルゴリズムを別のものに変更します(高速な代替案を探すためにラズベリーのベンチマークを開始しました)。

アップデート2:私の(オーバークロックされた)ラズベリーでは、十分なCPUを使用できる場合、AESはそれほど遅くありません。以下の表は、RC4が最大57MB / sを暗号化できるのに対し、AES-128-CBCは最大21.4MB / sを暗号化できることを示しています。もちろん、これはなぜそのような悪いパフォーマンスが得られるのかを説明するものではありませんが、デフォルトでより低速の暗号を使用している、または改善される可能性のある他の非効率性があるかもしれません。

$ openssl speed rc4 aes
[...]
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
rc4              45281.36k    54782.67k    57196.80k    57391.48k    57570.77k
aes-128 cbc      17904.15k    20469.38k    21133.95k    21449.62k    21403.72k

からのオーバークロック設定/boot/config.txt

arm_freq=950

# for more options see http://elinux.org/RPi_config.txt
core_freq=250
sdram_freq=450
over_voltage=6

1
あらゆるタイプの暗号化(ssh / vpn)は、おそらくあなたのボトルネックである追加のCPU使用率を引き起こします。
earthmeLon 2013年

1
私のポイントは、RC4は他の暗号よりもCPUの使用量が少ないということでした。そのため、この状況ではそれが良いかもしれません。しかし、あなたが私の答えに同意するか、同意しないかはわかりません。
Blaisorblade 2013年

@earthmeLon:とにかく不明確だったので、私のポイントを明確に述べるために私の回答を更新しました。それがあなたのコメントに対処しているのかわかりません。
Blaisorblade 2013年

もちろんです。SSH2の実装により、RC4はオーバーヘッドが最小限の優れたソリューションであることを知って、とても感謝しています。情報をありがとう:D。私があなたに賛成票を投じたのが見えなかったのは残念です。
earthmeLon 2013年

確かに—後で気づいたのは、あなたのコメントが賛成投票のタイミングと一致していたことだけです。ありがとう!
Blaisorblade 2013年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.