まめ畑

ゆるゆると書いていきます

色々変更

今日はシュミレータの手直しをしてました。
でも、これが本当に正しいかはわかりません・・・。

で、Jist/SWANSの2層での動作があやしかなと。
どんな状態でもコリジョンが起こらずに配送率100%です・・・。

パケットの配信処理は、送信をしようとした時にDIFS待って、その後にバックオフタイム
待ちます。
もちろん送信前にキャリアセンスを行って、チャンネルが開いているか確認します。
上記の動作はチャネルがアイドル状態で実行されます。
で、もしバックオフ待って再度送信を試みるときにチャネルが使用中だとコンテンション
ウインドウサイズを2倍にしてサイドバックオフを行います。
というのが基本動作なのですが、このシュミレータはパケット受信時にDIFSを実行し、
その間に送信しようとするパケットをバッファに入れてDIFS後に送信します。
なので、皆いっせいに送信しますがコリジョンは発生しません。
なんで、受信時に送信のDIFSを制御してるんだろう??

で、午後に訂正してみたのは送信実行時にバックオフ時間を設定し、時間切れに
なったらキャリアセンスを行って、実行するならバックオフをやり直すというものです。
これでも、現実的に戻りました。

でも、動作が怪しい・・・。

で、今直したのは、そもそもブロードキャストパケット受信時にDIFSにMACモードを
移行させているので、受信を完了させたのでMACモードはIDLEになるのでは
ないのでしょうか?
という事で、IDLEへ移行させました。
そしたら結構いい感じになりました。
IDLEに移行していれば送信実行時にバックオフタイムを設定してくれます。

など、諸々手直しをしました。
これが本当にあっているかは甚だ疑問です。

でも、そろそろ提案方式を煮詰めて、比較対象を作らないといけないです。
でも、今の配送率は・・・・。

講師と話したのですが、9月中に提案方式のプロトタイプを完成させて、年内に
チューニングや問題点を改善させれば、1月の全国大会に出れるかどうか
決めれるそうです。

さて、どうなる事やら・・・。