ข้อสอบเก่า · Q5

Utilization ของ Stop-and-Wait

ข้อนี้ไม่มีตัวเลขให้แม้แต่ตัวเดียว — ต้อง derive คำตอบออกมาเป็นสัญลักษณ์ ทั้ง 4 ข้อย่อย และจุดตายอยู่ที่ M กับ N เป็น byte ต้องคูณ 8 ก่อนเสมอ

ระดับกลาง ควรใช้ ~20 นาที 10 คะแนน อ่านคู่กับ บทที่ 6 (Delay) อ่านคู่กับ บทที่ 11 (ARQ)
ทำไมข้อนี้คุ้ม

10 คะแนน แต่ 2 ข้อย่อยแรก (a และ b) รวมกัน 2 คะแนน ใช้เวลาไม่ถึงนาที — เขียน tprop = S/V กับ tx = 8M/BW ก็ได้ 2 คะแนนแล้ว ส่วนข้อ c อีก 3 คะแนนคือวาดรูป ซึ่งไม่ต้องคำนวณเลย รวม 5 คะแนนแบบแทบไม่ต้องคิด เหลือข้อ d อีก 5 คะแนนที่เป็นการ derive จริง ๆ

โจทย์จริงจากข้อสอบปีที่แล้ว

Q5 (10 คะแนน · 20 นาที)

สมมติให้ส่ง frame จาก A ไป B ที่ขนาด M bytes บนสายสัญญาณที่แบนด์วิดท์ BW Mbps และ link speed V เมตร/วินาที ที่ระยะทาง S เมตร มี Processing delay ที่ X second ของทุกเฟรมรวมถึง ACK และมี queueing delay Q โดยที่ B ตอบกลับด้วย ACK ที่ขนาด N bytes ด้วยระยะทางที่เท่ากัน จงหา utilization ของการส่ง frame

  1. a. จงหาค่า Propagation delay (1 คะแนน)
  2. b. จงหาค่า Transmission delay (1 คะแนน)
  3. c. วาดรูปการสื่อสารที่เกิดขึ้นพร้อมระบุเวลาของ Delay ทั้งหมด (3 คะแนน)
  4. d. จงหาค่า Utilization ที่เกิดขึ้น (5 คะแนน)
อ่านโจทย์ให้ขาดก่อนลงมือ

คำว่า "link speed V เมตร/วินาที" ในโจทย์นี้ไม่ใช่ความเร็วของลิงก์แบบ bps — หน่วยมันคือ เมตร/วินาที แปลว่ามันคือ ความเร็วการเคลื่อนที่ของสัญญาณ (propagation speed) ตัวเดียวกับ S ในสมการ tprop = d/S ของบทที่ 6 ส่วน "ความเร็วลิงก์" จริง ๆ คือ BW ถ้าอ่านผิดตรงนี้ ข้อ a กับ b จะสลับกันทันที

คิดยังไง (แนวคิดใน 30 วินาที)

ข้อนี้คือ สมการ 11.1 ของบทที่ 11 เขียนใหม่ด้วยตัวแปรของโจทย์ เท่านั้นเอง ไม่มีอะไรใหม่เลย ท่ามาตรฐานคือ:

  1. แยกให้ออกว่าตัวไหนคือ delay ชนิดไหน — โจทย์โยนตัวแปร 6 ตัวมาปนกัน (M, BW, V, S, X, Q, N) ให้จับคู่กับ delay 4 ชนิดของบทที่ 6 ก่อน

  2. ตัวไหนคูณ 2 ตัวไหนไม่คูณ — สิ่งที่เดินทางและสิ่งที่ถูกประมวลผลเกิดสองรอบ (ไป-กลับ) ส่วนสิ่งที่ถูกยิงขึ้นสายเกิดครั้งเดียวต่อหนึ่งเฟรม และเฟรมข้อมูลกับ ACK ขนาดไม่เท่ากัน จึงแยกเป็นคนละพจน์

  3. Utilization คือ "เวลาที่ได้ประโยชน์ ÷ เวลาทั้งรอบ" — เวลาที่ได้ประโยชน์ของ stop-and-wait คือ tx เท่านั้น (ช่วงที่สายกำลังแบกบิตข้อมูลจริง) ที่เหลือคือเวลาที่สายว่างเปล่ารอ ACK

  4. เขียนคำตอบสองรูปแบบ — รูป U = tx/T (ตรงตามนิยาม) และรูป U = 1/(1+a) (รูปที่หนังสือ/สไลด์ชอบใช้) เขียนทั้งคู่ กันอาจารย์ตรวจคนละแบบ

สูตร/ขั้นตอนที่ต้องใช้

tprop = SV Propagation delay — ระยะทาง ÷ ความเร็วสัญญาณ (บทที่ 6)
tx = 8MBW    tack = 8NBW Transmission delay — ขนาดข้อมูล (บิต) ÷ แบนด์วิดท์ · 8M เพราะ M เป็น byte
T = tx + 2tprop + 2X + tack + Q เวลาทั้งรอบของ Stop-and-Wait (สมการ 11.1 เขียนด้วยตัวแปรของโจทย์)
U = txT = 11 + a   เมื่อ a = T − txtx Utilization — สองรูปแบบที่เป็นสมการเดียวกัน
ตัวแปรในโจทย์คืออะไรหน่วยเข้าไปอยู่ตรงไหนของสูตร
Mขนาดเฟรมข้อมูลbyteตัวเศษของ tx — ต้อง ×8 ก่อน
Nขนาดเฟรม ACKbyteตัวเศษของ tack — ต้อง ×8 ก่อน
BWแบนด์วิดท์ของลิงก์Mbpsตัวส่วนของ tx และ tack (BW Mbps = BW×106 bps)
Sระยะทาง A ↔ Bเมตรตัวเศษของ tprop
Vความเร็วการเคลื่อนที่ของสัญญาณm/sตัวส่วนของ tprop
XProcessing delay ต่อ 1 เฟรมวินาทีคูณ 2 (ประมวลผลเฟรมที่ B + ประมวลผล ACK ที่ A)
QQueueing delayวินาทีบวกเข้าไปตรง ๆ ตามที่โจทย์ให้มาก้อนเดียว
ส่วนขยาย — เทคนิคย่อหน่วยที่ทำให้แทนเลขเร็วขึ้นมาก

ถ้า M เป็น byte และ BW เป็น Mbps พอดี จะได้ว่า tx = 8M/(BW×106) วินาที = (8M/BW) ไมโครวินาที เป๊ะ ๆ เช่น M = 1000 byte, BW = 1 Mbps → 8000 µs = 8 ms — ตรวจได้ในหัวโดยไม่ต้องเขียน 106 เลย (เป็นเพียงเทคนิคช่วยจำ ไม่ได้อยู่ในหนังสือ)

เฉลยละเอียดทีละขั้น

a. Propagation delay 1 คะแนน

  1. เขียนสูตรจากบทที่ 6: tprop = ระยะทาง ÷ ความเร็วสัญญาณ

  2. แทนตัวแปรของโจทย์: ระยะทาง = S เมตร, ความเร็วสัญญาณ = V m/s

tprop = SV วินาทีคำตอบข้อ a

b. Transmission delay 1 คะแนน

  1. เขียนสูตร: tx = ขนาดข้อมูล (บิต) ÷ แบนด์วิดท์ (bps)

  2. แปลงหน่วยก่อน — ขนาดเฟรม M เป็น byte จึงต้องแปลงเป็นบิต: M byte = 8M bit

  3. แบนด์วิดท์ BW เป็น Mbps จึงเท่ากับ BW × 106 bps

tx = 8MBW × 106 วินาที  (เขียนย่อว่า 8M/BW ได้ ถ้าประกาศว่า BW มีหน่วย bps)คำตอบข้อ b

และในทำนองเดียวกัน เฟรม ACK ขนาด N byte ใช้เวลายิงขึ้นสาย tack = 8N / (BW × 106) วินาที — ต้องคูณ 8 เหมือนกัน ข้อนี้คนลืมกันเยอะที่สุด

c. วาดรูปการสื่อสารพร้อมระบุเวลา Delay ทั้งหมด 3 คะแนน

3 คะแนนนี้ให้กับองค์ประกอบในรูป ไม่ใช่ความสวย — กดเล่นภาพข้างล่างทีละสเต็ป แล้วลอกลงกระดาษตามลำดับเดียวกันเลย

เช็กลิสต์ของรูปที่ได้ 3 คะแนนเต็ม
  • เส้นตั้ง 2 เส้น พร้อมชื่อโหนด A และ B ที่หัวเส้น
  • ลูกศรเวลาชี้ลง พร้อมคำว่า "เวลา" (ถ้าไม่มี อาจารย์ไม่รู้ว่าอ่านรูปจากบนลงล่างหรือล่างขึ้นบน)
  • แถบหนาบนเส้น A ยาวเท่า tx พร้อมเขียนกำกับว่า tx = 8M/BW
  • ลูกศรเฉียงลง A→B กำกับชื่อเฟรม และช่วงเฉียงนั้นคือ tprop = S/V
  • ที่ B: X (processing) และ Q (queueing) เขียนกำกับให้ครบ
  • แถบ tack = 8N/BW บนเส้น B แล้วลูกศรเฉียงกลับ B→A กำกับ tprop อีกรอบ
  • ที่ A: X อีกครั้ง (ประมวลผล ACK) — นี่คือเหตุผลที่ X คูณ 2
  • วงเล็บใหญ่ด้านซ้ายครอบตั้งแต่บิตแรกถึงจบ เขียนว่า T

d. Utilization 5 คะแนน

  1. รวมเวลาทั้งรอบ T — ไล่ตามรูปข้อ c จากบนลงล่าง จะได้พจน์ครบพอดีโดยไม่ต้องท่อง

    T = tx + 2tprop + 2X + tack + Q
  2. แทนค่าแต่ละพจน์ด้วยตัวแปรของโจทย์

    T = 8MBW + 2·SV + 2X + 8NBW + Q
  3. เขียนนิยาม Utilization — เวลาที่ "ใช้ส่งข้อมูลจริง" ÷ เวลาทั้งรอบ

    U = txT = 8M / BW8M/BW + 2S/V + 2X + 8N/BW + Q
  4. (ทางเลือก) คูณทั้งเศษและส่วนด้วย BW เพื่อกำจัดเศษซ้อน — รูปนี้อ่านง่ายกว่าและแทนเลขเร็วกว่า

    U = 8M8M + 8N + BW(2S/V + 2X + Q)
  5. เขียนในรูป U = 1/(1+a) — นิยาม a = "เวลาส่วนเกินคิดเป็นกี่เท่าของ tx"

    a = T − txtx = 2S/V + 2X + 8N/BW + Q8M/BW = BW(2S/V + 2X + Q) + 8N8M

    ⟹  U = txtx + (T − tx) = 11 + a
คำตอบสุดท้ายที่ควรใส่กรอบไว้ในกระดาษ
U = 8M / BW8M/BW + 2S/V + 2X + 8N/BW + Q = 11 + a a = (2S/V + 2X + 8N/BW + Q) ÷ (8M/BW) · U ไม่มีหน่วย (ตอบเป็นสัดส่วนหรือ % ก็ได้)

เขียนทั้งสองรูปไว้ในกระดาษเลย ใช้เวลาเพิ่มไม่ถึง 20 วินาที แต่กันพลาดได้ทั้งกรณีที่อาจารย์ต้องการรูปนิยามและกรณีที่ต้องการรูป 1/(1+a)

สัญลักษณ์เดียวกันนี้ในภาษาของเฉลย — เขียนแบบนี้ก็ได้คะแนนเต็มเหมือนกัน
U = ttrans,framettrans,frame + ttrans,ACK + 2·tprop + 2X + Q โดย tprop = S/V  ·  ttrans,frame = 8M/(BW×106)  ·  ttrans,ACK = 8N/(BW×106)

เฉลยเรียงเทอมในตัวส่วนเป็น ttrans,frame + ttrans,ACK + 2tprop + 2X + Q ส่วนหน้านี้เรียงเป็น 8M/BW + 2S/V + 2X + 8N/BW + Q — เป็นสมการเดียวกันเป๊ะ (บวกกันสลับที่ได้) · สิ่งที่ตรวจคือต้องมีครบทั้ง 5 เทอม: เวลายิงเฟรม + เวลายิง ACK + สอง propagation + สอง processing + queueing · ขาดเทอมไหนหักเทอมนั้น

ทำไม U ถึงร่วงเมื่อระยะทางไกลขึ้น — ดูเป็นภาพ

สูตรข้างบนบอกว่า tprop อยู่ที่ตัวส่วน ดังนั้นยิ่งไกล U ยิ่งเล็ก ลองดูสัดส่วนจริงของสามสถานการณ์ (ตัวเลขเป็นตัวอย่างประกอบ ไม่ใช่ส่วนหนึ่งของโจทย์)

ส่วนขยาย — ระวังสัญลักษณ์ a ชนกัน (ไม่ได้อยู่ในโจทย์ แต่เจอบ่อยในสไลด์)

ตำราหลายเล่มนิยาม a = tprop/tx แล้วได้ U = 1/(1+2a) (เลข 2 มาจาก 2tprop และใช้ได้เฉพาะกรณีที่ละ X, Q, tack) ส่วนโจทย์ข้อนี้ที่มี X, Q, tack ครบ ให้ใช้นิยามกว้าง a = (T − tx)/tx แล้วได้ U = 1/(1+a) — ถ้าเขียน a ในกระดาษ ต้องเขียนนิยามของ a กำกับไว้ด้วยเสมอ ไม่งั้นอาจารย์ไม่รู้ว่าคุณหมายถึงตัวไหน และเลข 2 จะกลายเป็นข้อผิดพลาดทันที

กับดักที่ทำให้เสียคะแนน

กับดักที่ 1 — ลืมคูณ 8 (พบบ่อยที่สุด)

คำตอบผิดที่เจอจริง: tx = M/BW — โจทย์ให้ M bytes แต่แบนด์วิดท์เป็น bit ต่อวินาที ถ้าไม่คูณ 8 คำตอบเล็กกว่าความจริง 8 เท่า และที่แย่กว่าคือ ผิดซ้ำอีกรอบที่ ACK เพราะคนที่ลืมคูณ 8 ตรง M มักจะลืมตรง N ด้วย → เสียทั้งข้อ b และข้อ d

กับดักที่ 2 — คูณ 2 ผิดตัว

คำตอบผิดที่เจอจริง: T = 2tx + 2tprop + 2X + Q (คูณ 2 ให้ tx แล้วไม่มี tack) — ผิดเพราะขากลับไม่ใช่เฟรมข้อมูลขนาด M แต่เป็น ACK ขนาด N ซึ่งขนาดต่างกัน จึงต้องเป็นคนละพจน์

พจน์คูณ 2 ไหมเพราะอะไร
tprop = S/Vคูณสัญญาณเดินทางไป 1 รอบ กลับ 1 รอบ ระยะทางเท่ากัน
Xคูณโจทย์บอกเอง: "ของทุกเฟรมรวมถึง ACK" → ประมวลผล 2 ครั้ง
tx = 8M/BWไม่คูณเฟรมข้อมูลถูกยิงขึ้นสายครั้งเดียว
tack = 8N/BWไม่คูณACK ถูกยิงขึ้นสายครั้งเดียว (และนี่คือ "ขากลับ" ของ tx)
Qไม่คูณโจทย์ให้มาเป็นค่าเดียวรวม ๆ ไม่ได้บอกว่าเกิดสองครั้ง — ถ้าจะคูณ 2 ต้องเขียนเหตุผลกำกับ

ทางปลอดภัยเรื่อง Q: เขียนกำกับข้าง ๆ ว่า "สมมติ Q เป็น queueing delay รวมของทั้งรอบตามที่โจทย์ให้" — เขียนสมมติฐานไว้ อาจารย์ตัดคะแนนไม่ลง

กับดักที่ 3 — แทนตัวเลขทั้งที่โจทย์ไม่ได้ให้

มีคนสมมติเองว่า BW = 10 Mbps, S = 100 m แล้วคำนวณออกมาเป็นตัวเลข — ผิดโจทย์ทันที ข้อนี้ต้องการคำตอบเป็นสัญลักษณ์ เพราะเขาต้องการดูว่าเรา derive เป็นไหม ไม่ใช่กดเครื่องคิดเลขเป็นไหม ถ้าอยากโชว์ว่าเข้าใจ ให้เขียนเพิ่มท้ายคำตอบว่า "ถ้าแทน … จะได้ …" เป็นตัวอย่างประกอบ แต่คำตอบหลักต้องเป็นสัญลักษณ์

กับดักที่ 4 — อ่าน V เป็น bit rate

คำว่า "link speed V" ชวนให้คิดว่าเป็น bps แต่หน่วยที่โจทย์ให้คือ เมตร/วินาที ถ้าเอา V ไปหารขนาดข้อมูล จะได้หน่วยประหลาด (bit·s/m) — เช็กหน่วยทุกครั้งก่อนหาร ถ้าหน่วยไม่ออกมาเป็นวินาที แปลว่าใส่ตัวแปรผิดที่

กับดักที่ 5 — ตอบ U เกิน 1

Utilization เป็นสัดส่วน ต้องอยู่ระหว่าง 0 ถึง 1 เสมอ (0–100%) ถ้าคำนวณแล้วได้เกิน 1 แปลว่ากลับเศษกับส่วน (เขียน T/tx แทน tx/T) — ตรวจง่าย ๆ ด้วยสายตา: ตัวส่วนต้องยาวกว่าตัวเศษเสมอ เพราะ T ประกอบด้วย tx บวกของอย่างอื่นอีก

เขียนยังไงให้ได้คะแนนเต็ม

อาจารย์ให้คะแนนขั้นตอน แม้คำตอบสุดท้ายพลาด ก็ยังเก็บได้ ในกระดาษคำตอบต้องมีครบตามนี้:

ข้อ a + b (2 คะแนน)

  1. เขียนชื่อสูตรก่อน เช่น "Propagation delay = ระยะทาง / ความเร็วสัญญาณ"
  2. เขียนสูตรสัญลักษณ์ tprop = S/V
  3. ข้อ b เขียนบรรทัดแปลงหน่วยแยกออกมา: "M byte = 8M bit" — บรรทัดนี้แหละที่กันตกข้อ b
  4. ใส่หน่วยท้ายคำตอบ: "วินาที"

ข้อ c (3 คะแนน)

  1. เส้นตั้ง 2 เส้น + ชื่อ A, B
  2. ลูกศรเวลาชี้ลง + คำว่า "เวลา"
  3. แถบ tx, ลูกศรเฉียง tprop, X, Q, tack, tprop, X — เขียนชื่อกำกับทุกช่วง
  4. วงเล็บ T คลุมทั้งรอบ

ข้อ d (5 คะแนน)

  1. บรรทัด "T = tx + 2tprop + 2X + tack + Q" (สมการทั่วไปก่อน)
  2. บรรทัดแทนตัวแปรของโจทย์ทีละพจน์
  3. บรรทัด "U = tx/T" พร้อมเศษส่วนเต็ม
  4. บรรทัด "= 1/(1+a) เมื่อ a = …" พร้อมนิยามของ a
  5. ตีกรอบคำตอบสุดท้าย

สิ่งที่ทำให้เสียคะแนนฟรี

  • เขียนแค่คำตอบบรรทัดเดียวไม่มีที่มา → ได้ไม่เกินครึ่ง
  • ไม่ใส่หน่วย
  • ใช้ a โดยไม่นิยาม
  • รูปข้อ c ไม่มีชื่อกำกับช่วงเวลา → เหลือ 1 จาก 3

โจทย์ฝึก 5 ข้อ

ไล่จากง่ายไปยากกว่าของจริงเล็กน้อย · ลองทำในกระดาษก่อนกดดูเฉลย

ข้อ 1 ง่าย — ส่งเฟรมขนาด 1000 byte บนลิงก์ 1 Mbps ระยะ 200 เมตร ความเร็วสัญญาณ 2×108 m/s ACK ขนาด 40 byte ไม่มี processing และ queueing delay จงหา tprop, tx, tack, T และ Utilization

เฉลยข้อ 1

ขั้นที่ 1 — แปลงหน่วยก่อน เฟรม 1000 byte = 8000 bit · ACK 40 byte = 320 bit · 1 Mbps = 106 bps

tprop = 200 / (2×108) = 1×10−6 s = 1 µs
tx    = 8000 / 106 = 8×10−3 s = 8 ms
tack  = 320 / 106 = 3.2×10−4 s = 0.32 ms

ขั้นที่ 2 — รวมเป็น T (X = 0, Q = 0)

T = 8 + (2 × 0.001) + 0.32 = 8.322 ms

ขั้นที่ 3 — Utilization

U = 88.322 = 0.9613 = 96.13 %

ตรวจด้วยรูป 1/(1+a): a = (8.322 − 8)/8 = 0.04025 → U = 1/1.04025 = 0.9613 ✓ ตรงกัน — สังเกตว่าลิงก์สั้น ๆ ช้า ๆ ได้ U สูงมาก เพราะ tx ครองเวลาเกือบทั้งหมด

ข้อ 2 ง่าย–กลาง — โจทย์สัญลักษณ์ (เปลี่ยนชื่อตัวแปรจากของจริง) ส่งเฟรมขนาด L bytes บนลิงก์ R Mbps ระยะทาง d กิโลเมตร ความเร็วสัญญาณ v m/s ปลายทางตอบ ACK ขนาด A bytes มี processing delay P วินาทีต่อการประมวลผลหนึ่งครั้ง ไม่มี queueing delay จงหา Utilization เป็นสัญลักษณ์

เฉลยข้อ 2

ขั้นที่ 1 — จุดต่างจากของจริงมี 2 จุด คือ (1) ระยะทางให้เป็น กิโลเมตร ต้อง ×1000 ก่อน และ (2) ไม่มี Q

tprop = 1000dv วินาที   (d km = 1000d เมตร)

tx = 8LR × 106 วินาที   tack = 8AR × 106 วินาที

ขั้นที่ 2 — เวลาทั้งรอบ

T = 8LR×106 + 2000dv + 2P + 8AR×106

ขั้นที่ 3 — Utilization (คูณเศษ-ส่วนด้วย R×106 เพื่อเก็บกวาด)

U = 8L8L + 8A + R×106(2000d/v + 2P)

หรือรูป U = 1/(1+a) เมื่อ a = [8A + R×106(2000d/v + 2P)] / 8L — บทเรียนของข้อนี้: เปลี่ยนชื่อตัวแปรยังไงก็ตาม โครงสมการเหมือนเดิมเป๊ะ สิ่งที่ต้องระวังมีแค่ หน่วยของแต่ละตัว เท่านั้น

ข้อ 3 กลาง — ลิงก์ดาวเทียม: เฟรม 1500 byte, ลิงก์ 10 Mbps, ระยะทาง 36,000 km, ความเร็วสัญญาณ 3×108 m/s, ACK 64 byte, ไม่มี X และ Q · จงหา U แล้วอธิบายว่าทำไมถึงได้ค่านั้น

เฉลยข้อ 3
tx    = (1500 × 8) / (10 × 106) = 12000 / 107 = 1.2 ms
tprop = 3.6×107 / (3×108) = 0.12 s = 120 ms
tack  = (64 × 8) / 107 = 512 / 107 = 0.0512 ms
T = 1.2 + (2 × 120) + 0.0512 = 241.2512 ms
U = 1.2241.2512 = 0.004974 = 0.4974 %

อธิบาย: a = (241.2512 − 1.2)/1.2 = 200.04 แปลว่าเวลาส่วนเกินยาวกว่าเวลาส่งข้อมูลจริงถึง 200 เท่า สายจึงว่างเปล่าไป 99.5% ของเวลา — นี่คือเหตุผลที่ลิงก์ดาวเทียมห้ามใช้ Stop-and-Wait เด็ดขาด ต้องใช้ Selective Repeat หรือ Go-Back-N ที่มี window (บทที่ 11)

ข้อ 4 กลาง — เฟรม 2000 byte, ลิงก์ 2 Mbps, ระยะ 1000 เมตร, ความเร็วสัญญาณ 2×108 m/s, ACK 50 byte, processing delay X = 0.5 ms ต่อครั้ง และ queueing delay Q = 1 ms · จงหา U ทั้งรูป tx/T และรูป 1/(1+a)

เฉลยข้อ 4
tx    = (2000 × 8) / (2 × 106) = 16000 / (2×106) = 8 ms
tprop = 1000 / (2×108) = 5×10−6 s = 5 µs = 0.005 ms
tack  = (50 × 8) / (2×106) = 400 / (2×106) = 0.2 ms

รวม T — ระวัง: X คูณ 2 แต่ Q ไม่คูณ

T = tx + 2tprop + 2X + tack + Q
   = 8 + (2 × 0.005) + (2 × 0.5) + 0.2 + 1
   = 8 + 0.01 + 1 + 0.2 + 1 = 10.21 ms
U = 810.21 = 0.78355 = 78.35 %

ตรวจด้วยรูป 1/(1+a): a = (10.21 − 8)/8 = 2.21/8 = 0.27625 → U = 1/1.27625 = 0.78355 ✓ ตรงกัน · สังเกตว่าที่ระยะแค่ 1 กม. ตัวที่กิน utilization ไม่ใช่ propagation (แค่ 0.01 ms) แต่เป็น processing + queueing (รวม 2 ms) ต่างหาก

ข้อ 5 ยากกว่าของจริง — ใช้ตัวเลขลิงก์ดาวเทียมจากข้อ 3 (T = 241.2512 ms, tx = 1.2 ms)
(ก) พิสูจน์ว่า ถ้าละ X, Q และ tack จะได้ U = 1/(1+2a′) เมื่อ a′ = tprop/tx
(ข) ถ้าเปลี่ยนไปใช้ Selective Repeat ที่มี window size W ต้องใช้ W อย่างน้อยเท่าไรจึงจะได้ utilization = 100% (ใช้สมการ 11.4: η = min{W·tx/T, 1})

เฉลยข้อ 5

(ก) พิสูจน์ — เริ่มจากนิยาม แล้วตัดพจน์ที่ให้ละทิ้งออก

U = txtx + 2tprop + 2X + tack + Q   ให้ X = Q = tack = 0

  = txtx + 2tprop   หารทั้งเศษและส่วนด้วย tx

  = 11 + 2(tprop/tx) = 11 + 2a′   ∎

ตรวจกับตัวเลขดาวเทียม: a′ = 120/1.2 = 100 → U = 1/(1+200) = 1/201 = 0.004975 = 0.4975% ต่างจากคำตอบเต็ม (0.4974%) นิดเดียว เพราะเราตัด tack = 0.0512 ms ทิ้งไป

(ข) หา W ที่ทำให้ utilization เต็ม 100%

η = min{ W · txT , 1 } = 1  ⟺  W · tx ≥ T  ⟺  W ≥ Ttx
W ≥ 241.25121.2 = 201.04 → W = 202 เฟรม

อ่านผลลัพธ์: ต้องส่งค้างไว้ในสายพร้อมกันถึง 202 เฟรมกว่าจะใช้ลิงก์ดาวเทียมได้เต็ม — สังเกตว่า T/tx = 1 + a พอดี (201.04 = 1 + 200.04) จึงจำง่าย ๆ ได้ว่า W ที่ต้องใช้ ≈ 1 + a ปัดขึ้นเป็นจำนวนเต็ม

เช็คความเข้าใจ

โจทย์ให้เฟรมขนาด M bytes และแบนด์วิดท์ BW Mbps — transmission delay เขียนยังไงถึงถูก?
ต้องแปลง byte → bit ด้วยการคูณ 8 (ไม่ใช่หาร) และแปลง Mbps → bps ด้วยการคูณ 106 จึงได้ 8M/(BW×106) — ตัวเลือกแรกผิดสองชั้น ตัวเลือกที่สองลืม ×8 ตัวเลือกสุดท้ายกลับทิศการแปลงหน่วย
ในเวลาทั้งรอบ T = tx + 2tprop + 2X + tack + Q ทำไม X ถึงคูณ 2 แต่ tx ไม่คูณ?
โจทย์ระบุว่า processing delay X เกิด "ของทุกเฟรมรวมถึง ACK" → B ประมวลผลเฟรมข้อมูล 1 ครั้ง + A ประมวลผล ACK อีก 1 ครั้ง = 2X · ส่วน tx คือการยิงเฟรมข้อมูลขึ้นสายซึ่งเกิดครั้งเดียว ขากลับเป็นเฟรม ACK ที่ขนาดต่างกัน (N bytes) จึงต้องแยกเป็นพจน์ tack
ถ้าคำนวณแล้วได้ U = 1.6 แปลว่าอะไร?
U คือสัดส่วนของเวลาที่สายถูกใช้ส่งข้อมูลจริง จึงเป็นไปไม่ได้ที่จะเกิน 1 · ตัวส่วน T ประกอบด้วย tx บวกของอย่างอื่น จึงต้องมากกว่า tx เสมอ ถ้าได้เกิน 1 คือเขียน T/tx กลับหัว ให้กลับไปเช็คบรรทัดที่เขียนเศษส่วน
เก็บก่อนออกจากข้อนี้
  • tprop = S/V · tx = 8M/BW · tack = 8N/BW — เลข 8 คือคะแนน
  • T = tx + 2tprop + 2X + tack + Q — คูณ 2 เฉพาะสิ่งที่เดินทางกับสิ่งที่ถูกประมวลผล
  • U = tx/T = 1/(1+a) — เขียนทั้งสองรูป และนิยาม a กำกับเสมอ
  • ข้อ c เป็นการวาดรูป 3 คะแนน — เส้นตั้ง 2 เส้น, ลูกศรเวลา, แถบ tx/tack, ป้าย X, Q, tprop และวงเล็บ T
  • ห้ามแทนตัวเลขที่โจทย์ไม่ได้ให้ — คำตอบต้องเป็นสัญลักษณ์ล้วน