ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

การควบคุมข้อผิดพลาด (Error Control)

รูปการควบคุมข้อผิดพลาด
รูปการควบคุมข้อผิดพลาด

 

การควบคุมข้อผิดพลาด (Error Control) หมายถึงการควบคุมข้อผิดพลาดด้วยเทคนิคต่าง ๆ ได้เเก่ การควบคุมข้อผิดพลาดด้วยวิธีไม่ตอบสนองต่อข้อมูลที่ผิดพลาด การควบคุมข้อผิดพลาดด้วยวิธีส่งข้อความเตือนกลับไป และ การควบคุมข้อผิดพลาดด้วยวิธีแก้ไขข้อผิดพลาดให้ถูกต้อง โดยแต่ละวิธีก็มีเทคนิคที่แต่ต่างกันออกไป และจะมีอะไรบ้างศึกษาจากบทความนี้ได้เลย

 

การควบคุมข้อผิดพลาด (Error Control)

  1. การควบคุมข้อผิดพลาดด้วยวิธีไม่ตอบสนองต่อข้อมูลที่ผิดพลาด (Do nothing)
  2. การควบคุมข้อผิดพลาดด้วยวิธีส่งข้อความเตือนกลับไป (Return Message)
  3. การควบคุมข้อผิดพลาดด้วยวิธีแก้ไขข้อผิดพลาดให้ถูกต้อง (Correct Error)

 

การควบคุมข้อผิดพลาดด้วยวิธีไม่ตอบสนองต่อข้อมูลที่ผิดพลาด (Do nothing)

เป็นวิธีที่ไม่นิยมใช้แพร่หลายมากนัก การใช้ส่วนใหญ่จะใช้งานในการส่งข้อมูลบน WAN เช่น Frame Relay เป็นต้น เมื่อ Frame ข้อมูลถูกส่งไปถึง Switch และจะถูกตรวจสอบข้อผิดพลาดด้วยวิธี CRC Check หากพบข้อผิดพลาด Frame ข้อมูลก็จะถูกตัดทิ้งทันที จากนั้นจึงจะส่งคำรองของ Frame ข้อมูลที่ผิดพลาดนั้น ไปยังผู้ส่งอีกครั้ง

 

การควบคุมข้อผิดพลาดด้วยวิธีส่งข้อความเตือนกลับไป (Return Message) ใช้ Message ที่เรียกว่า ARQ: Auto Repeat request

การควบคุมข้อผิดพลาด
รูปแสดงการควบคุมข้อผิดพลาด

 

Stop and Wait ARQ

เมื่อผู้ส่ง ส่งข้อมูลไปให้ผู้รับแล้ว ผู้ส่งจะหยุดและรอการตอบกลับจากผู้รับ

               Stop-and-Wait ARQ – Normal Operation หากไม่มีข้อผิดพลาดในการส่ง ผู้รับจะส่ง Acknowledgement (ACK) กลับมา ผู้ส่งก็จะทำการส่งข้อมูลชุดต่อไป

 

Stop-and-Wait ARQ – Normal Operation
Stop-and-Wait ARQ – Normal Operation

 

Stop-and-Wait ARQ – Lost ACK frame หากไม่มีข้อผิดพลาดในการส่ง ผู้รับจะส่ง ACK กลับมายังผู้ส่ง แต่ ACK เกิดสูญหายระหว่างทาง ผู้ส่งจะรอจนกว่า Timeout หมดลง และทำการส่งข้อมูลชัดเดิมไปให้ใหม่

หากไม่มีข้อผิดพลาดในการส่ง ผู้รับจะส่ง ACK กลับมายังผู้ส่ง
หากไม่มีข้อผิดพลาดในการส่ง ผู้รับจะส่ง ACK กลับมายังผู้ส่ง

 

Stop-and-Wait ARQ – Lost frame หากข้อมูลที่ส่งไปสูญหายก่อนที่จะถึงปลายทาง ผู้ส่งจะรอให้ Timeout หมดลงและจะทำการส่งข้อมูลชุดเดิมกลับไปให้อีกครั้ง

หากข้อมูลที่ส่งไปสูญหายก่อนที่จะถึงปลายทาง ผู้ส่งจะรอให้ Timeout หมดลง
หากข้อมูลที่ส่งไปสูญหายก่อนที่จะถึงปลายทาง ผู้ส่งจะรอให้ Timeout หมดลง

 

การควบคุมข้อผิดพลาด หรือ Error Control เป็นการนำเทคนิคข้างต้นในบทความมาใช้โดยเเต่ละเทคนิคจะมีข้อเเตกต่างกันออกไป ได้แก่ Normal Operation เป็นเทคนิคปกติ แบบ Lost ACK frame  หากไม่มีข้อผิดพลาดในการส่ง ผู้รับจะส่ง ACK กลับมายังผู้ส่ง แต่ ACK เกิดสูญหายระหว่างทาง  และแบบ Lost frame  หากข้อมูลที่ส่งไปสูญหายก่อนที่จะถึงปลายทาง ผู้ส่งจะรอให้ Timeout หมดลง จะทำการส่งอีกครั้ง

 

ช่องทางการศึกษาเพิ่มเติมข่าวสารที่น่าสนใจเกี่ยวกับ : บทความทั่วไป

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
เปิดใช้งาน log_slow_queries MySQL 5.7 บน Ubuntu
โดย mindphp อ 31 ธ.ค. 2019 5:55 pm บอร์ด Linux - Web Server
0
730
อ 31 ธ.ค. 2019 5:55 pm โดย mindphp
อยากทราบวิธีการแสดงที่มี id ซ้ำกันครับ
โดย jamepiyawat ส 28 ธ.ค. 2019 4:22 pm บอร์ด Programming - PHP
3
80
พฤ 02 ม.ค. 2020 8:47 am โดย tsukasaz
ปฏิทินประจําปี 2563 นักษัตย์ 12 ราศี ของจีนที่เรามักคุ้นเคยกัน
โดย noppadonsk ส 28 ธ.ค. 2019 10:40 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
239
ส 04 ม.ค. 2020 4:38 am โดย mindphp
คำสั่งจาก LINE API บันทึกเรียบร้อยแล้ว แต่ไม่เข้าไปใน inbox e-mail : order@dapper.com [2019-12][002]
โดย thatsawan ศ 27 ธ.ค. 2019 5:56 pm บอร์ด MD-CRM - Tester
2
5
ศ 27 ธ.ค. 2019 9:25 pm โดย mindphp
อยากทราบวิธีการอัพโหลดรูปภาพลงใน9kik'ฐานข้อมูล ของ phpbb
โดย Ittichai_chupol ศ 27 ธ.ค. 2019 4:22 pm บอร์ด Programming - PHP
1
73
ศ 27 ธ.ค. 2019 4:38 pm โดย thatsawan
ปฏิทินประจําปี 2563 ธีมการศึกษาสำหรับเด็กเรียน
โดย noppadonsk ศ 27 ธ.ค. 2019 10:41 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
269
ส 04 ม.ค. 2020 4:38 am โดย mindphp
B - ข้อมุลเชื่อม ตำบลที่มี รหัสไปรษณี ไม่เหมือน อำเภอข้อมมูลผิด
โดย mindphp พฤ 26 ธ.ค. 2019 3:01 pm บอร์ด Odoojob.com - Tester
0
1
พฤ 26 ธ.ค. 2019 3:01 pm โดย mindphp
ปฏิทินประจําปี 2563 มาในธีมปาร์ตี้และการเฉลิมฉลอง
โดย noppadonsk พฤ 26 ธ.ค. 2019 1:51 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
229
ส 04 ม.ค. 2020 4:38 am โดย mindphp
B - SQL ทำงานช้า
โดย mindphp พ 25 ธ.ค. 2019 10:07 pm บอร์ด Odoojob.com - Tester
0
1
พ 25 ธ.ค. 2019 10:07 pm โดย mindphp
ทิปเล็กๆ การใช้งาน Directadmin บน Ubuntu หรือ CentOS ใช้ .tar.gz จะทำงานได้เร็วกว่า..
โดย mindphp พ 25 ธ.ค. 2019 8:53 pm บอร์ด Linux - Web Server
0
32
พ 25 ธ.ค. 2019 8:53 pm โดย mindphp
เครื่องมือในการคำนวณภาษีหัก ณ ที่จ่าย ลดภาระการเสียภาษีก้อนใหญ่ได้ง่ายๆ
โดย prmindphp พ 25 ธ.ค. 2019 6:56 pm บอร์ด MindPHP News & Feedback
0
30
พ 25 ธ.ค. 2019 6:56 pm โดย prmindphp
วิธีการเขียน SQL เพื่อเปลี่ยนชื่อตาราง ในฐานข้อมูลเมื่อมีการเขียนชื่อตารางผิด
โดย Ittichai_chupol พ 25 ธ.ค. 2019 5:15 pm บอร์ด SQL Knowledge
0
28
พ 25 ธ.ค. 2019 5:15 pm โดย Ittichai_chupol
แก้ปัญหา ใช้ Python โอนย้ายไฟล์ข้ามเครื่อง ด้วย ftplib แล้วเจอ Connection timed out
โดย mindphp พ 25 ธ.ค. 2019 1:21 pm บอร์ด Python Knowledge
0
36
พ 25 ธ.ค. 2019 1:21 pm โดย mindphp
ตัวช่วยในคำนวณอัตราดอกเบี้ยสำหรับนักลงทุน
โดย prmindphp อ 24 ธ.ค. 2019 6:52 pm บอร์ด MindPHP News & Feedback
0
30
อ 24 ธ.ค. 2019 6:52 pm โดย prmindphp
วิธีการดึงกลุ่มของ phpbb มาสร้างเป็น listbox พร้อมเปลี่ยนชื่อกลุ่มตามภาษาที่กำหนด
โดย Ittichai_chupol อ 24 ธ.ค. 2019 6:35 pm บอร์ด PHP Knowledge
0
28
อ 24 ธ.ค. 2019 6:35 pm โดย Ittichai_chupol
R - ขั้นตอนการตรวจ สอบปัญหา ที่อาจจะเกิดขึ้น ตาม Systems Diagram
โดย mindphp อ 24 ธ.ค. 2019 12:12 pm บอร์ด MlineCRM Line + MD-CRM
0
2
อ 24 ธ.ค. 2019 12:12 pm โดย mindphp
ปฏิทินประจําปี 2563 มาในรูปแบบไซเบอร์ สำหรับคนสมัยใหม่ที่มีหัวคิดก้าวไกลเท่าทันเทคโนโลยี
โดย noppadonsk อ 24 ธ.ค. 2019 10:35 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
152
ส 04 ม.ค. 2020 4:38 am โดย mindphp
R - เพิ่ม Exception ตอน push ข้อมความ ไปที่ Line หรือ รับข้อความจาก Line ไม่ได้
โดย mindphp อ 24 ธ.ค. 2019 7:06 am บอร์ด MD-CRM - Tester
0
4
อ 24 ธ.ค. 2019 7:06 am โดย mindphp
B - เวลาใน Logs ไม่ตรง
โดย mindphp อ 24 ธ.ค. 2019 5:57 am บอร์ด MlineCRM Line + MD-CRM
0
3
อ 24 ธ.ค. 2019 5:57 am โดย mindphp
วางแผนเงินออมได้ง่ายๆ ด้วยโปรแกรมคำนวณหามูลค่าเงินในอนาคต
โดย prmindphp จ 23 ธ.ค. 2019 7:28 pm บอร์ด MindPHP News & Feedback
0
53
จ 23 ธ.ค. 2019 7:28 pm โดย prmindphp