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

การควบคุมข้อผิดพลาด (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 หมดลง จะทำการส่งอีกครั้ง

 

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

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ดีใจจริงๆ
โดย noppadonsk ศ 13 มี.ค. 2020 12:33 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
2
718
อ 15 มี.ค. 2020 10:50 am โดย kreemza123
ความจริงที่โหดร้ายของ Editor
โดย noppadonsk พฤ 12 มี.ค. 2020 3:29 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
259
พฤ 12 มี.ค. 2020 3:29 pm โดย noppadonsk
ขออนุญาตสอบถาม เรื่อง Query ค้นหาข้อมูลครับ
โดย 9kitti พฤ 12 มี.ค. 2020 3:03 pm บอร์ด SQL - Database
2
1784
ศ 13 มี.ค. 2020 10:17 am โดย 9kitti
มันมาโดยไม่รู้ตัว
โดย noppadonsk พ 11 มี.ค. 2020 5:42 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
215
พ 11 มี.ค. 2020 5:42 pm โดย noppadonsk
มาแล้ว! Joomla 3.9.16 อัพเดทด่วน ปรับปรุงเรื่องความปลอดภัยกว่า 6 จุด
โดย tsukasaz พ 11 มี.ค. 2020 11:13 am บอร์ด MindPHP News & Feedback
0
613
พ 11 มี.ค. 2020 11:13 am โดย tsukasaz
ของขวัญจากซานต้า
โดย noppadonsk อ 10 มี.ค. 2020 3:05 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
273
อ 10 มี.ค. 2020 3:05 pm โดย noppadonsk
ถึงเวลาที่ต้องเลือกแล้วนีโอ!
โดย noppadonsk จ 09 มี.ค. 2020 6:35 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
384
จ 09 มี.ค. 2020 6:35 pm โดย noppadonsk
อยากทราบว่าปรับขนาด listbox
โดย Ittichai_chupol จ 09 มี.ค. 2020 5:07 pm บอร์ด HTML CSS
1
496
จ 09 มี.ค. 2020 5:08 pm โดย Ittichai_chupol
ความเจ็บนี้ไม่มีเสียง
โดย noppadonsk ศ 06 มี.ค. 2020 4:49 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
573
ศ 06 มี.ค. 2020 4:49 pm โดย noppadonsk
การเก็บ log เมื่อมีการ แยก รวม ที่ดิน
โดย blackbullx16 ศ 06 มี.ค. 2020 4:47 pm บอร์ด SQL - Database
4
844
ศ 27 มี.ค. 2020 4:11 pm โดย blackbullx16
วิธีการการเขียน css เพื่อปรีบความกว้างในการสแดงประโยค
โดย Ittichai_chupol ศ 06 มี.ค. 2020 1:40 pm บอร์ด CSS Knowledge
0
305
ศ 06 มี.ค. 2020 1:40 pm โดย Ittichai_chupol
วิธีการการเขียน css เพื่อปรีบความกว้างในการสแดงประโยค
โดย Ittichai_chupol ศ 06 มี.ค. 2020 10:34 am บอร์ด CSS Knowledge
1
826
ศ 06 มี.ค. 2020 5:17 pm โดย Riyaaa
ทิป การใช้งานโปรแกรมนาโน nano บน Linux ทั้ง Ubuntu CentOS ไปบรรทัดสุดท้ายของ ไฟล์
โดย mindphp ศ 06 มี.ค. 2020 3:08 am บอร์ด Linux - Web Server
0
342
ศ 06 มี.ค. 2020 3:08 am โดย mindphp
อยากทราบวิธีการการแก้ไขไม่ให้ตัวอักษรอยู่ภายใต้ปุ่ม
โดย Ittichai_chupol พฤ 05 มี.ค. 2020 6:47 pm บอร์ด HTML CSS
1
400
พฤ 05 มี.ค. 2020 6:51 pm โดย thatsawan
เรียกให้ดูหรูหรา
โดย noppadonsk พฤ 05 มี.ค. 2020 6:31 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
171
พฤ 05 มี.ค. 2020 6:31 pm โดย noppadonsk
ประสบการณ์เรื่องที่พัก เสียเงินค่าเช่าไปวันๆ
โดย jataz2 พฤ 05 มี.ค. 2020 5:52 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
134
พฤ 05 มี.ค. 2020 5:52 pm โดย jataz2
เรียกใช้งาน pip ใน python 3.7 บน ubuntu ไม่ได้ครับ
โดย chatee supasand พฤ 05 มี.ค. 2020 10:49 am บอร์ด Programming - C/C++ & java & Python
1
560
พฤ 05 มี.ค. 2020 11:41 am โดย mindphp
สอบถามเรื่องพัฒนาเว็บไซต์โดยใช้ PHP ช่วยเข้ามาตอบหรืออธิบายขั้นตอนการทำงานให้ฟังหน่อยได้ไหมครับตอนนี้ไปไม่ถูกแล้ว
โดย gangger00 อ 03 มี.ค. 2020 1:03 pm บอร์ด Programming - PHP
0
161
อ 03 มี.ค. 2020 1:03 pm โดย gangger00
แก้ปัญหา gnutls_handshake() failed: Decrypt error ติดตั้ง packet ใหม่บน Ubuntu 14
โดย mindphp จ 02 มี.ค. 2020 5:05 pm บอร์ด Linux - Web Server
0
360
จ 02 มี.ค. 2020 5:05 pm โดย mindphp
การแก้ปัญหาไวรัส
โดย noppadonsk จ 02 มี.ค. 2020 4:42 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
149
จ 02 มี.ค. 2020 4:42 pm โดย noppadonsk