torutkのブログ

ソフトウェア・エンジニアのブログ

書籍「Javaネットワークプログラミングの真髄」

Javaネットワークプログラミングの真髄

Javaネットワークプログラミングの真髄

先月購入し、通勤のお供としてしばらく朝のお勉強の本となっていました。よさそうなポイントは、

  • IPv4だけでなくIPv6についても記述がある
  • java.ioを使ったプログラミングとjava.nioを使ったソケットプログラミングが解説されている
  • SSL(JSSE)が解説されている
  • UDPマルチキャストが解説されている
  • TCP/UDPのバッファサイズ、タイムアウトなどに言及している

この本の著者はかなりネットワークプログラミングに深い造詣を持っているようで、随所に濃い記述があります。

UDPのプログラム実験

UDPの送受信バッファサイズの影響を見るために、JavaUDP送信/受信プログラムを作って実験してみました。

Windows Vistaマシン上で送信/受信プログラム双方を動かし、自分のアドレス宛にUDPパケットを複数連続で投げてみたところ、8KBでパケットロストが発生し始めます。やはりWindowsはデフォルトのUDPの送信または受信バッファが8KBのようです。

Solaris 10 x86では、84KBでパケットロスが発生し始めました。

バッファサイズの調整の仕方は今後調べてみようと思っていますが、Windowsのデフォルトは少し値が小さいです。