miftahulmahfuzh / slidingwindowprotocol

implementing sliding window protocol in UDP
2 stars 3 forks source link

Threading #2

Open miftahulmahfuzh opened 8 years ago

miftahulmahfuzh commented 8 years ago

mode threading di transmitter menurut gw :

  1. selalu baca file eksternal, kalo queue penuh fungsinya keluar.
  2. tukang ngirim frame, kalo queue kosong fungsinya keluar.
  3. tukang nerima frame ACK, kalo dalam jangka DELAY ga ada nerima apapun dari receiver, Queue->Head nya dikirim ulang lagi.

trus menurut gw kaya nya yang di taro thread utama tuh thread no 2

miftahulmahfuzh commented 8 years ago

ini udah. tinggal yang Threading receiver trus ada beberapa perubahan juga :

  1. selain thread utama, kita bikin dua thread baru
  2. thread yang buat ngirim, firstChild(). kerjaannya manggil void sendFrame() doang
  3. thread yang buat nerima, secondChild(), kerjaannya manggil void receiveACK() doang
  4. sendFrame() bakalan selalu ngirim isi dari sebuah meta-queue dari window, namanya *qsend
  5. receiveACK() bakalan selalu nerima ack, dan mengolah frame ack tersebut,
  6. kalo ack nya bener, berarti window di majuin headnya.
  7. kalo acknya salah, si meta-queue di tambahin frame head dari window, buat dikirim ulang sama si sendFrame()

terakhir, kita ada 2 jenis frame (MESGB & RESPL), sama 3 variabel gede buat nyimpan frame : 1.trmq (ini window), 2.trsend (ini meta-queue), 3.temp (ini buat nyimpan ack yang msgno nya != head window)