1 / 49

Multiplexing Error Detection Flow Control

Multiplexing Error Detection Flow Control. Multiplexing. เส้นทางที่ใช้ในการสื่อสาร ( Link) เป็นองค์ประกอบที่สำคัญของการสื่อสารข้อมูล เปรียบได้กับถนนที่เชื่อมต่อระหว่างเมืองต่างๆ ดังนั้นการสร้างถนนและการบริหารการเดินรถที่ดี จะทำให้รถสามารถเดินทาได้โดยสะดวก รวดเร็วและปลอดภัย

kelsie-kidd
Download Presentation

Multiplexing Error Detection Flow Control

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Multiplexing Error Detection Flow Control

  2. Multiplexing • เส้นทางที่ใช้ในการสื่อสาร(Link)เป็นองค์ประกอบที่สำคัญของการสื่อสารข้อมูล เปรียบได้กับถนนที่เชื่อมต่อระหว่างเมืองต่างๆ ดังนั้นการสร้างถนนและการบริหารการเดินรถที่ดี จะทำให้รถสามารถเดินทาได้โดยสะดวก รวดเร็วและปลอดภัย • ภายในเส้นทางการสื่อสารนั้นสามารถมีช่องทาง(Channel)ได้หลายช่องสัญญาณ ดังนั้นจึงทำให้สามารถส่งสัญญาณต่างๆไปพร้อมกันได้ • แต่จะต้องมีเทคนิคในการจัดการกับสัญญาณที่จะส่งไปพร้อมๆกัน โดยไม่ทำให้สัญญาณรบกวนซึ่งกันและกัน เรียกว่า การผสมสัญญาณ หรือ Multiplexing

  3. Multiplexing • มัลติเพล็กซิง เป็นเทคนิคที่ใช้ในการรวมสัญญาณหลายๆสัญญาณเข้าด้วยกันและส่งออกไปพร้อมกันภายในเส้นทางที่ใช้ในการสื่อสารเพียงเส้นทางเดียว • Multiplexer / MUX เป็นอุปกรณ์ที่ใช้สำหรับการรวมสัญญาณจากอุปกรณ์อื่นๆและส่งสัญญาณที่ผ่านการผสมกันแล้วออกไปด้วยกัน • Demultiplexer เป็นอุปกรณ์ทำหน้าที่ในการแยกสัญญาณที่ได้รับมา แล้วส่งต่อให้กับอุปกรณ์ที่ใช้ในการรับข้อมูลต่อไป

  4. Multiplexing

  5. Multiplexer

  6. Multiplexing

  7. Multiplexing

  8. FDM • สัญญาณอะนาล็อกที่ถูกส่งมาจากแต่ละอปุกรณ์ จะต้องผ่าน modulator ซึ่ง modulator แต่ละตัวนั้นจะมีคลื่นพาห์ที่มีความถี่ที่แตกต่างกัน รวมกับสัญญาณข้อมูล เป็น composite signal • Guard bands หรือแถบคุ้มกันการแทรกสอด • กระบวนการผสมสัญญาณ • กระบวนการแยกสัญญาณ

  9. FDM

  10. FDM Multiplexing Process Modulator Carrier f1 Modulator Carrier f2 Modulator Carrier f3

  11. Demodulator Filter Carrier f1 Demodulator Filter Carrier f2 Demodulator Filter Carrier f3 FDM De-multiplexing Process

  12. WDM • ถูกออกแบบมาเพื่อใช้กับสายไฟเบอร์ออปติก ซึ่งมีแบนด์วิธที่กว้างมากและมีอัตราการส่งข้อมูลที่สูง • มีหลักการเหมือนกับ FDM แตกต่างกันที่ WDM นั้นจะใช้แสงเป็นตัวนำส่งสัญญาณ • ช่องสัญญาณสื่อสารแต่ละช่องจะถูกแบ่งออกตามความยาวคลื่นแสง • ถึงแม้ว่า WDM จะใช้เทคโนโลยีที่ซับซ้อน แต่จะใช้หลักการทำงานที่ง่ายๆคือการมัลติเพล็กซ์จะรวมแสงจากแหล่งกำเนิดต่างๆเข้าด้วยกันเป็นหนึ่งเดียวก่อนที่จะส่งออกไป ซึ่งในการรวมแสงนั้นจะใช้หลักการฟิสิกส์พื้นฐานในเรื่องของการหักเหของแสง

  13. TDM • การผสมสัญญาณโดยแบ่งเวลา • เป็นเทคนิคที่ใช้กับสัญญาณดิจิตอล • โดยจะทำการแบ่งเวลาในการส่งข้อมูลให้กับแต่ละอุปกรณ์ • ข้อมูลที่ส่งออกมาจากสถานีส่งทุกเครื่องจะถูกนำมารวมกันเรียกว่า เฟรม • ช่วงเวลาที่แบ่งให้กับแต่ละเครื่องเรียกว่า ช่องเวลา (slot time) • Synchronous TDM (สถานีที่ไม่มีข้อมูลก็จะส่ง slot ว่าง) • Statistic TDM (สถานีจะบรรจุแอดเดรสกับข้อมูลส่วนสถานีที่ไม่มีข้อมูลก็จะไม่ส่งอะไร)

  14. TDM

  15. 3T 3T 3T A3 A2 A1 Frame3 Frame2 Frame1 B3 B2 MUX C3 C1 Each frame is 3 time slot. Each time slot duration is T seconds. C1 A1 C3 B2 B3 A2 A3 Data are taken from each line every 3T seconds TDM

  16. TDM • จากรูปในสไลด์ที่ผ่านมา จะแสดงถึงการผสมสัญญาณโดยแบ่งเวลา โดยจะมีสายเข้าตัวมัลติเพล็กเซอร์ 3 สาย • กำหนดให้ช่องเวลา เท่ากับ T วินาที • ดังนั้นในการสร้างเฟรมข้อมูลแต่ละเฟรมจะต้องใช้เวลา 3T วินาที (เนื่องจากมีสายเข้า 3 สาย และแต่ละสายจะมีเวลาในการส่งข้อมูล T วินาที) • และอัตราการส่งข้อมูลโดย TDMจะมีค่าเท่ากับ n เท่าของอัตราการส่งข้อมูลของสายเข้า • เช่น ถ้าสายเข้ามีอัตราส่ง 2400 bps แล้ว อัตราการส่งข้อมูลโดย TDM จะเท่ากับ 2400 * 3 = 7200 bps

  17. สัญญาณรบกวน Noise • Thermal noise เป็นสัญญาณรบกวนที่เกิดจากการเคลื่อนที่แบบผิดปกติของอิเล็กตรอนบางตัวในสายสื่อสาร • Crosstalk เป็นสัญญาณรบกวนที่เกิดจากสายสื่อสารที่อยู่ติดกัน ส่งสัญญาณรบกวนกันเอง • Impulse noise เป็นสัญญาณรบกวนที่เกิดขึ้นอย่างฉับพลันจากแหล่งพลังงานแรงสูง เช่น สายไฟฟ้าแรงสูง หรือเกิดฟ้าผ่า

  18. สัญญาณรบกวน Noise • Echo เป็นสัญญาณที่ถูกสะท้อนกลับ • Jitter เป็นเหตุการณ์ที่ความถี่ของสัญญาณได้มีการเปลี่ยนแปลงไปอย่างต่อเนื่อง ก่อให้เกิดการเปลี่ยนเฟสไปเป็นค่าอื่น • Delay Distortion สัญญาณความเร็วไม่เท่ากันมาผสมกัน • Attenuation การอ่อนกำลัง

  19. การป้องกันสัญญาณรบกวนการป้องกันสัญญาณรบกวน • ใช้สายเคเบิลชนิดที่มีชิลด์ป้องกันสัญญาณรบกวน • ใช้อุปกรณ์ใหม่ที่มีประสิทธิภาพและทันสมัยกว่าอุปกรณ์เดิม • ใช้อุปกรณ์ขยาย/เพิ่มสัญญาณ • พิจารณาข้อกำหนด/ข้อจำกัดของสายสัญญาณแต่ละชนิด

  20. Error Detection Techniques • Parity Check • Checksum • CRC

  21. Parity Check • Simple Parity Check • ในการส่ง-รับ จะมีการตกลงวิธีการตรวจสอบข้อมูล โดยการเพิ่มบิตจำนวน 1 บิต เรียกว่า “Parity bit” อาจเป็น 0 หรือ 1 ขึ้นอยู่กับวิธีที่ตกลงกัน • Even Parity เพิ่มบิตตรวจสอบ(0หรือ1)รวมกับบิตข้อมูล แล้วนับจำนวนบิต “1” ทั้งหมดให้ได้จำนวนคู่ • Odd Parity เพิ่มบิตตรวจสอบ(0หรือ1)รวมกับบิตข้อมูล แล้วนับจำนวนบิต “1” ทั้งหมดให้ได้จำนวนคี่ • ตัวอย่าง วิธี Even Parity ส่ง : 100010000 รับ : 10001000 0คำนวณแล้ว ได้ คู่ = ถูกต้อง • วิธีนี้ถ้ามีข้อมูลผิดพลาดเพียงบิตเดียว ก็ตรวจสอบได้ ถ้าผิดหลายๆบิตจะตรวจได้กรณีที่เกิดการผิดพลาดไปเป็นเลขคี่เท่านั้น

  22. Parity Check • Simple Parity Check • ตัวอย่าง ส่งคำวา “world” ใช้วิธี even parity

  23. Parity Check • Two-Dimensional parity check

  24. CRC • มีประสิทธิภาพสูงว่าแบบพาริตี้บิต • แบบพาริตี้บิตใช้การบวก แต่ CRC ใช้การหาร • แบบพาริตี้บิตจะแทรกบิตตรวจสอบลงในข้อมูล แต่แบบ CRC จะต้องนำบิตตรวจสอบไปต่อท้ายข้อมูล

  25. การหาบิตตรวจสอบของเทคนิค CRC 1. ถ้าตัวหารมีจำนวนบิตเท่ากับ n+1 บิตแล้วจะต้องเติมบิต 0 จำนวน n ตัวที่ส่วนท้ายของข้อมูล 2. ใช้บิตข้อมูลลบด้วยตัวหาร(ใช้วิธี XOR) เมื่อลบแล้วผลที่ได้จากการลบ ถ้า 2.1 บิตซ้ายสุดของเศษเป็น 1 ให้นำตัวหารมาเป็นตัวลบอีกครั้ง 2.2 บิตซ้ายสุดของเศษเป็น 0 ให้นำ 0000 มาเป็นตัวลบ 3. ทำในข้อ 2 จนกระทั่งไม่สามารถลบกันได้อีกแล้ว (จำนวนบิตของเศษน้อยกว่าจำนวนบิตของตัวหาร) จะถือได้ว่าเศษที่ได้จากการหารนั้นคือ บิตตรวจสอบ 4. นำบิตตรวจสอบที่ได้ไปแทนที่บิต 0 จำนวน n ตัวที่ส่วนท้ายของข้อมูล

  26. การหาบิตตรวจสอบของเทคนิค CRC 1101 100100000 1101 1000 1101 1010 1101 1110 1101 0110 0000 1100 1101 001 Divisor หามาจากสูตรโพลิโนเมียล ดังนั้นเวลาส่งข้อมูลไปจะได้ 100100 + 001 = 100100001 Remainder

  27. CRC การตรวจสอบความผิดพลาดของข้อมูล • เมื่อผู้รับได้รับบิตข้อมูลรวมทั้งบิตตรวจสอบที่อยู่ส่วนท้ายของบิตข้อมูลแล้ว จะใช้วิธีการหารในโมดูโล2 เช่นกัน • ถ้าเศษของการหารเท่ากับ 0 หรือหารลงตัว แสดงว่าข้อมูลชุดนั้นเป็นข้อมูลที่ถูกต้อง • แต่ถ้าหารไม่ลงตัวคือมีเศษ แสดงว่าข้อมูลที่ได้รับมานั้นเป็นข้อมูลผิดพลาด

  28. การตรวจสอบของเทคนิค CRC ฝั่งรับ 1101 100100001 1101 1000 1101 1010 1101 1110 1101 0110 0000 1101 1101 000 Divisor ได้มาจากสูตรโพลิโนเมียล Result

  29. CRC • โพลิโนเมียล (Polynomial) ปกติแล้วในการแทนบิตข้อมูลของตัวหารจะไม่ใช้รูปของเลขฐานสอง เนื่องจากค่อนข้างยาวและจำได้ยาก แต่จะเขียนให้อยู่ในรูปของโพลิโนเมียล เช่น ถ้าตัวหารมีค่าเป็น 10100111 จะสามารถเขียนให้อยู่ในรูปของโพลิโนเมียลได้ x7+x5+x2+x+1

  30. CRC • ความสัมพันธ์กันระหว่างโพลิโนเมียลกับเลขฐานสอง x7 + x5 + x2 + x + 1 x6 x4 x3 1 0 1 0 0 1 1 1

  31. CRC • สำหรับตัวหารที่เป็นมาตรฐานทั่วไป ที่มีการนำไปใช้งานในโปรโตคอลต่างๆ มีดังนี้

  32. Checksum • วิธีการแบบ checksum จะคล้ายคลึงกับวิธีแบบ CRC และพาริตี้ ซึ่งวิธีการแบบนี้ยังคงอยู่บนพื้นฐานของการเพิ่มบิตตรวจสอบเข้าไปพร้อมกับบิตข้อมูล

  33. Checksum • ก่อนที่จะหาบิตตรวจสอบได้นั้น จะต้องทำการแบ่งข้อมูลออกเป็นเซ็กเมนต์ก่อน โดยแต่ละเซ็กเมนต์จะมีข้อมูล n บิต (ปกติจะแบ่งเป็นเซ็กเมนต์ละ 16 บิต) • จากนั้นนำบิตข้อมูลของทุกเซ็กเมนต์มาบวกกันด้วยวิธีการแบบ 1’s complement ซึ่งจะได้ผลลัพธ์ออกมา n บิต • เมื่อได้ผลลัพธ์จากการบวกแล้วจะนำมาทำคอมพลีเมนต์หรือทำการกลับบิตให้เป็นตรงกันข้าม (0 เป็น 1 , 1 เป็น 0) • ผลที่ได้จากการทำคอมพลีเมนต์คือบิตตรวจสอบ ที่จะต้องนำไปต่อไว้ส่วนท้ายของบิตข้อมูล ก่อนที่จะส่งออกไป

  34. Checksum • สรุปการหาบิตตรวจสอบสำหรับวิธีการตรวจสอบแบบ checksum 1. ข้อมูลจะถูกแบ่งออกเป็นเซ็กเมนต์ย่อยๆ เซ็กเมนต์ละ n บิต 2. นำข้อมูลของทุกเซ็กเมนต์มาบวกกันด้วยวิธีการแบบ 1’s complement 3. นำผลรวมของทุกเซ็กเมนต์มาทำคอมพลีเมนต์ 4. ส่งบิตตรวจสอบไปพร้อมกับข้อมูล • การตรวจสอบความผิดพลาดของข้อมูล 1. รวบรวมข้อมูลแต่ละเซ็กเมนต์ ๆ ละ n บิต 2. นำข้อมูลของทุกเซ็กเมนต์มาบวกกันด้วยวิธีการแบบ 1’s complement 3. นำผลรวมของทุกเซ็กเมนต์มาทำคอมพลีเมนต์ 4. ถ้าผลลัพธ์ที่ได้เท่ากับ 0 แสดงว่าข้อมูลชุดนั้นถูกต้อง แต่ถ้าผลลัพธ์ที่ได้ไม่เท่ากับ 0 แสดงว่าข้อมูลชุดนั้นมีความผิดพลาด

  35. Checksum • ตัวอย่าง ฝั่งส่ง สมมติว่าต้องการที่จะส่งบิตข้อมูลจำนวน 16 บิตออกไป และใช้วิธีการตรวจสอบแบบ checksum โดยมีบิตตรวจสอบ 8 บิต ซึ่งบิตข้อมูลที่ต้องการส่งมีดังนี้ 10101001 00111001 วิธีทำ นำข้อมูลของทุกเซ็กเมนต์มาบวกกันด้วยวิธีแบบ 1’s complement ได้ดังนี้ 10101001 00111001 sum 11100010 Checksum 00011101 10101001 0011100100011101 ข้อมูลและบิตตรวจสอบที่จะส่งออกไป

  36. Checksum • ตัวอย่าง ฝั่งรับ จากตัวอย่างการส่งที่ผ่านมาเมื่อฝั่งรับได้รับข้อมูลดังข้างล่างนี้ จงตรวจสอบข้อมูลดังกล่าวว่าถูกต้องหรือไม่ 10101001 0011100100011101 วิธีทำ นำข้อมูลของทุกเซ็กเมนต์มาบวกกันด้วยวิธีแบบ 1’s complement ได้ดังนี้ 10101001 00111001 00011101 sum 11111111 complement 00000000 

  37. Flow control • หน้าที่หลักของ Data link layer • การควบคุมการไหลของข้อมูล หรือ Flow control คือ เป็นขั้นตอนกระบวนการที่ควบคุมจำนวนของข้อมูลที่ถูกส่งออกไปให้อยู่ในปริมาณที่เหมาะสม ก่อนที่จะได้รับการตอบรับยืนยันจากผู้รับข้อมูล นั่นหมายความว่าข้อมูลที่ถูกส่งไปนั้นจะต้องถูกจำกัดเอาไว้จำนวนหนึ่ง ถ้ายังไม่ได้รับการตอบรับจากผู้รับ ว่าได้รับข้อมูลชุดนั้นๆแล้ว ผู้ส่งจะต้องไม่ส่งข้อมูลชุดถัดไป • สาเหตุที่ต้องมีการควบคุมอัตราการไหลก็เนื่องจากว่า ผู้รับอาจจะมีความเร็วในการรับข้อมูลไม่เท่ากับผู้ส่ง หรือมีหน่วยความจำที่ใช้ในการเก็บข้อมูลอย่างจำกัด หรือมีความเร็วในการประมวลผลต่ำ ดังนั้นการควบคุมอัตราการไหลของข้อมูลจึงมีความจำเป็นอย่างมาก ถ้าผู้รับยังไม่พร้อมที่จะรับข้อมูลในขณะนั้น ผู้ส่งจะต้องทำการหยุดส่งชั่วคราวก่อน หรือถ้าผู้รับมีความเร็วในการประมวลผลต่ำ ผู้ส่งจะต้องส่งข้อมูลด้วยอัตราเร็วที่เหมาะสม เพื่อให้เกิดความสมดุลกันในการรับส่งข้อมูล

  38. Error control • หน้าที่หลักของ Data link layer • การควบคุมข้อผิดพลาดของข้อมูล หรือ error control คือ การที่ผู้ส่งต้องส่งข้อมูลไปใหม่อีกครั้งหนึ่ง ถ้าผู้รับไม่สามารถรับข้อมูลหรือได้รับข้อมูลที่ไม่ถูกต้อง • สาเหตุที่ต้องมีการควบคุมก็เนื่องจากว่า ข้อมูลจะต้องเดินทางจากที่หนึ่งไปยังอีกที่หนึ่ง จึงมีความเป็นไปได้ที่ข้อมูลชุดนั้นจะเกิดสูญหายหรือเสียหายในระหว่างการเดินทางได้ ดังนั้นผู้รับจะต้องมีกระบวนการในการตรวจสอบความผิดพลาดของข้อมูล นอกจากนั้นจะต้องมีการส่งข้อความไปบอกกับผู้ส่งข้อมูลด้วยว่าข้อมูลชุดไหนที่ได้รับมามีความผิดพลาด ซึ่งฝ่ายส่งจะต้องทำการส่งข้อมูลชุดนั้นๆไปใหม่อีกครั้งหนึ่ง

  39. Flow control • กลไกในการควบคุมอัตราการไหลและควบคุมความผิดพลาดของข้อมูล • Stop-and-wait • Go-Back-N • Selective-Repeat

  40. Flow control

  41. Stop-and-wait 1.กรณีปกติ Sender Receiver S = 0 Frame 0 R = 0 ACK 1 S = 1 R = 1 Frame 1 ACK 1 S = 0 ... Time Time

  42. Stop-and-wait 2.กรณีเฟรมข้อมูลสูญหายหรือเสียหาย Sender Receiver S = 0 Frame 0 R = 0 ACK 1 S = 1 R = 1 Frame 1 Lost S = 1 R = 1 Frame 1 ACK 1 R = 0 S = 0 Time Time

  43. Stop-and-wait 3.กรณีเฟรม ACKสูญหายหรือเสียหาย Sender Receiver S = 0 Frame 0 R = 0 ACK 1 S = 1 Frame 1 R = 1 ACK 0 Lost S = 1 R = 0 Frame 1 เมื่อ Receiverตรวจแล้ว ไม่ใช่ 0 ก็จะทิ้งเฟรมนี้ไป ACK 0 S = 0 Time Time

  44. Stop-and-wait 4.กรณีเฟรม ACK ล่าช้า Sender Receiver S = 0 Frame 0 R = 0 ACK 1 S = 0 Frame 0 Time out R = 1 S = 1 เมื่อ Receiverตรวจแล้ว ไม่ใช่ 1 ก็จะทิ้งเฟรมนี้ไป ACK 1 Frame 1 Sender จะทิ้ง เฟรมนี้ไป Frame 1 Time out S = 1 R = 1 ACK 0 Time Time

  45. Stop-and-wait การส่งข้อมูลแบบสองทาง Piggybacking A B R = 0 S = 0 Frame 0,ACK 0 R = 0 S = 0 Frame 0,ACK 1 R = 0 S = 1 Frame 1,ACK 1 R = 1 S = 1 R = 1 Frame 1, ACK 0 S = 0 ... Time Time

  46. Sliding Window Go-back-N • กลไก Go-back-N จะทำการส่งเฟรมข้อมูลจำนวน w เฟรม ก่อนที่จะได้รับ ack ดังนั้นผู้ส่งจะต้องทำการสำเนาเฟรมข้อมูลทั้ง w เฟรมเอาไว้ด้วย และเฮดเดอร์แต่ละเฟรมจะมีหมายเลขลำดับด้วย โดยที่จะเริ่มจาก 0 เป็นต้นไปและเริ่มจากซ้ายไปขวา • การเลื่อนหน้าต่างของผู้ส่งข้อมูล : ผู้ส่งข้อมูลจะต้องทำการเก็บเฟรมข้อมูลเอาไว้ในบัฟเฟอร์ก่อน จนกระทั่งได้รับเฟรม ack กลับมา จึงจะทำการลบเฟรมข้อมูลนั้นทิ้งได้ ดังนั้นหลักการของการ เลื่อนหน้าต่าง (sliding window)จะเสมือนกับการมีหน้าต่างมาครอบเฟรมข้อมูลไว้ แล้วใช้การเลื่อนหน้าต่างไปมา เฟรมข้อมูลที่อยู่ด้านซ้ายของหน้าต่างจะหมายถึงเฟรมที่ได้รับ ack แล้ว สามารถที่จะลบทิ้งเฟรมนั้นออกจากบัฟเฟอร์ได้ ส่วนเฟรมที่อยู่ด้านขวาของหน้าต่าง เป็นเฟรมที่ยังไม่ได้มีการส่งออกไป จะต้องรอจนกระทั่งหน้าต่างเลื่อนมาถึงจึงจะสามารถส่งเฟรมข้อมูลได้

  47. Sliding Window Go-back-N การเลื่อนหน้าต่างของผู้ส่งข้อมูล : ก่อนเลื่อนหน้าต่าง Windows size = 7 ... ... จากตัวอย่าง เฟรม 0 ถึง 6 ได้ถูกส่งออกไปและกำลังรอเฟรม ack ตอบกลับมาจากผู้รับ หลังเลื่อนหน้าต่าง 2 เฟรม Windows size = 7 ... ... และเมื่อผู้ส่งได้รับเฟรม ack ตอบกลับมาแล้วว่าผู้รับได้รับเฟรม 0 และเฟรม 1 เรียบร้อยแล้ว ผู้ส่งจะทำการเลื่อนหน้าต่างไปทาง ด้านขวา 2 เฟรม

  48. Sliding Window Go-back-N การเลื่อนหน้าต่างของผู้รับข้อมูล : ขนาดหน้าต่างของผู้รับจะมีค่าเท่ากับ 1 เสมอ หมายความว่าหน้าต่างของผู้รับจะสามารถครอบเฟรมข้อมูลได้เพียงเฟรมเดียว ดังนั้นเฟรมที่ถูกหน้าต่างครอบไว้คือเฟรมที่ต้องการรับและยังไม่ได้รับ ก่อนเลื่อนหน้าต่าง Windows size = 1 ... ... จากตัวอย่าง หมายความว่าผู้รับต้องการจะรับเฟรม 0 หลังเลื่อนหน้าต่าง ... ... เมื่อได้รับเฟรม 0 เรียบร้อยแล้ว จึงจะทำการเลื่อนหน้าต่างไปทางด้านขวา เพื่อบ่งบอกว่าเฟรมถัดไปที่ต้องการรับคือเฟรม 1

  49. Sender A Receiver B F0 F1 F2 เมื่อได้รับการตอบว่า 3 เฟรมที่ส่งไปแล้ว เรียบร้อย จึงเลื่อนหน้าต่างไปอี ก 3 ช่อง RR3 F3 F4 F5 F6 RR4

More Related