[PR]DoCoMop̕KI:̉^Ӓق̊ف

.::M o L D H o U S E::. MacOS X/Darwin上での動作上の注意

UDP最大パケットサイズ

 双助は負荷分散モードでの通信にUDPと云われる仕組みを利用します。 UDPには「最大パケットサイズ」という概念があり、双助はこのサイズが充分に大きくなければ 負荷分散モードで動作する事が出来ません。
 しかし、Darwinのカーネル(OSの中心部)は、このUDP最大パケットサイズの初期値を非常に小さく設定している為、 OS起動直後の状態では双助がうまく通信する事が出来ません。そこで、sysctlコマンドを使って 最大パケットサイズを大きくしなければなりません。この設定はOSの再起動後に元に戻りますので、 双助を起動する度に再設定する必要があります。

変更する方法

Terminal上で sudo sysctl -w net.inet.udp.maxdgram=65535 を実行します。
sysctlはカーネルの設定を変更する為、操作を間違えるとOSの動作がおかしくなりますので注意して下さい。

双助起動スクリプト

このような操作を毎回実行するのは面倒であり、危険でもあるので、次のようなシェルスクリプトから 双助を起動するようにした方が便利でしょう。
このファイルはここにあります。

#!/bin/sh
DGRAM=`sysctl net.inet.udp.maxdgram`
if [ "$DGRAM" != "net.inet.udp.maxdgram: 65535" ]; then
    CMD="sudo sysctl -w net.inet.udp.maxdgram=65535"
    echo $CMD
    $CMD
fi

CMD="python ./futasuke.py"
echo $CMD
$CMD
    

[PR]ÎԒTȂް:݌ɑSԕۏ؂‚I