改造Firefoxで日米間6.5GbpsのWebアクセス。東大が世界最速達成 -BB Watch より。私は 1Gbps 以上の世界は完全に未知の世界なので、今回の記事は「どうやって 6.5Gbps ものデータ転送速度を達成するか」ではなく「何故、改善前は(そんな高速ネットワーク環境下で) 6Mbps 程度のデータ転送速度しか出せないのか」と言うお話です。 TCP のデータ転送(ダウンロード)では、ソケットバッファの値を弄っただけで劇的にデータ転送速度が改善される場合があります。 ソケットバッファとは? あるサーバ/クライアント間でデータ通信をする際、パケットが、受信ホストに到着するタイミングと(受信ホストの)アプリケーションが、到着したパケットを読み込むタイミングは非同期です。そのため、パケット(データ)は到着したのだけれどアプリケーションがまだ読み込みに来てくれないと言う場合に、そのデ
SO_LINGER の秒数を 0 にしてソケットを閉じればいい。Perl で書くなら以下のような感じ。 setsockopt($sock, SOL_SOCKET, SO_LINGER, pack("II", 1, 0)) or die $!; $sock->close() 一方で RST によって切断 (=異常切断された) かどうかはソケットからの読み込みが ECONNRESET エラーを返すかどうかで判断できる(正常切断なら 0 (==EOF) が返る)。
When you need to send small data packets over TCP, the design of your Winsock application is especially critical. A design that doesn't take into account the interaction of delayed acknowledgment, the Nagle algorithm, and Winsock buffering can drastically affect performance. This article discusses these issues by using a couple of cases studies. It also derives a series of recommendations for send
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く