TcpAckFrequencyをめちゃくちゃに設定してみた。

http://d.hatena.ne.jp/rook5963/20081114/p1
コメントより

姜さんが人柱なら安心(リカバリの面で)
レポまってまーす(いろんなとこで出てるけど、不具合方面をw)

というわけで、効果検証を横に置いて間違った設定をしたらどうなるかを試してみた。


●検証キャラ

ある程度万能で、テレポ含む移動系スキルを持ってるということで。


●検証方法
レジストリ値を変えてOS再起動したあと、Wテレポ、キャラ移動、敵を殴るなどをして違いを判別する。但し主観。
尚、正常にTcpAckFrequencyに1を入れてある程度動かした後という前提で比較をします。


1、TcpAckFrequencyの値を10(0x0a)にする


Result:未設定状態と大きく変わらず。
これは「指定した数のAckが溜まる」か「遅延Ackタイマが切れる」のいずれかを満たすまで通信を止める(ラグらせる)という仕様のため
設定値の10のAckが溜まることはなくても、タイマ切れで通信する状態になるためと推測される。
人気のないところでの検証のため、変わらないという結論になっているが、人が多い(TCP接続が多い)状態だと結果が変わる可能性はある。



2、TcpAckFrequencyをDWORD値ではなくバイナリ値で1(正確には01)で設定する


Result:未設定状態と同様



3、TcpAckFrequencyをTcpAckFreqqqqと意図的に誤字って設定する


Result:未設定状態と同様



4、TcpAckFrequencyを別のInterface({8EDA92...}ってなってるやつ)に設定する


Result:未設定状態と同様
但しうちの環境は有線LAN一つのみのため、こういう結果になっているが、有線LANと無線LANを両方搭載してたり
LANの口を複数持ちその両方から通信できるような機種(PC向けであるか知らんが)の場合は
意図しない通信でTcpAckFrequency=1が適用される可能性がある。



というわけで結論を言うと
TcpAckFrequencyの設定に限れば、設定ミスしてもPCが起動できなくなるような事態はほとんどないと想定される。
1〜4いずれの場合もきちんとOSは起動され、ROの起動・接続までできている。


あくまでこれはレジストリを無茶苦茶にいじっても大丈夫という検証ではないことを念を押しておく。
TcpAckFrequencyの設定追加に関わるオペミスを検証しただけにすぎない上、既存のキー削除はしていない。
なのでこれらの変更を自己責任の上で行ってもらいたい、という点は重ねて書いておく。



以下は余談になるけど
Wテレポは確かにできないけど、TcpAckFrequency=1の設定するとテレポアウトした時に明転が露骨に早くなってるので
単にWテレポ自体が「暗転中にテレポを発動してテレポ窓が出てただけ」という気がしてならないけどどうなんですかね?
この辺は是非Gvの最前線で戦われる硬いLoad Kight様にトール火山で検証行って頂きたく。(ちなみに私は基本後方配置)


あとテレポ被ダメキャンセルはものごっついシビアなタイミングで出来たとだけ。
(多分TcpAckFrequencyが2以上なら0.2secの余裕があるけど、1だとサクサク動くダメージ処理の通信が成立する前にテレポ移動を成立させるタイミングになるからだと思う)
結構私も活用してたけど、これはTcpAckFrequency1設定だとほとんど期待できないんじゃないかな。