12 กันยายน, 2552

Data Com คาบเจ็ด

Datacom คาบที่ 7 เรียนเรื่อง
Data Link Layer มีหน้าที่ในการส่งข้อมูลจาก node หนึ่งไปยังอีก node หนึ่ง และ ควบคุมเส้นทางการเดินทางของข้อมูล
Function หลักของ Data Link protocol ได้แก่
- Media Access Control [MAC] คือ การควบคุมคอมพิวเตอร์ว่าจะส่งอะไรและส่งเมื่อไหร่
- Controlled Access คือ การควบคุมการเข้าถึงของข้อมูลว่าใครจะเข้าถึงก่อนใครจะเข้าถึงทีหลัง
- Polling คือ กระบวนการในการส่งข้อมูลไปยังผู้รับเมื่อผู้รับต้องการหรืออนุญาตเท่านั้น
- Roll Call Polling คือ กระบวนการในการยืนยันอีกครั้งว่าผู้รับยังต้องการข้อมูลอีกหรือไม่
- Hub polling คือ การใช้ Token ในการส่งข้อมูล
- Contention มีหลักการทำงานคือ ถ้าเรามีคอมพิวเตอร์หลายตัวและแต่ละตัวอยู่ไกลกันมากจนเวลาส่งข้อมูลจะไม่รู้ว่าเครื่องไหนส่งอยู่บ้าง ซึ่งจะมีโอกาสที่เครื่องแต่ละเครื่องจะส่งพร้อมกันจนทำให้เกิดปัญหาขึ้น และเราสามารถแก้ปัญหาได้โดยการสุ่มตัวเลขขึ้นมาให้กับแต่ล่ะเครื่องและเครื่องไหนได้ค่าที่มากที่สุดเครื่องนั้นจะได้ส่งก่อน ระบบนี้ใช้ใน LAN
Error Detection and Correction
Error Control คือ การควบคุมข้อผิดพลาดซึ่งอาจเกิดได้จาก
1>Network errors เช่น Corrupted (ข้อมูลเปลี่ยน), Lost data (ข้อมูลเสีย)
2>Human errors เช่น การพิมพ์ผิด, การส่งข้อมูลผิด เป็นต้น
ประเภทของข้อผิดพลาด
1>Single-Bit Error ข้อผิดพลาดที่เกิดเพียง 1 bit
2>Burst Error ข้อผิดพลาดที่เกิดมากกว่า 1 bits
Function หลักของ Error control ได้แก่
1>Preventing errors [การหลีกเลี่ยงข้อผิดพลาด]
2>Detecting errors [การตรวจจับข้อผิดพลาด]
3>Correcting errors [การรวบรวมข้อผิดพลาด]
ในที่นี้เราจะพูดถึงการตรวจจับข้อผิดพลาดและการรวบรวมข้อผิดพลาด
เทคนิดในการตรวจจับข้อผิดพลาดมีดังนี้
1>Parity Checking คือ เทคนิคที่จะเพิ่ม 0 เข้าไปต่อท้ายเมื่อจำนวนของ 1ใน Bit ของข้อมูลเป็นเลขคี่และจะเพิ่ม 1 เมื่อจำนวนของ 1 เป็นเลขคู่
2>Longitudinal Redundancy Checking [LRC] คือการเพิ่ม Block Check Character [BBC] เข้าไปใน Bits
ตัวอย่างการคำนวณ
Send the message “DATA” using ODD parity and LRC
Letter ASCII Parity Bit
D 1 0 0 0 1 0 0 1
A 1 0 0 0 0 0 1 1
T 1 0 1 0 1 0 0 0
A 1 0 0 0 0 0 1 1
BCC 1 1 0 1 1 1 1 1<-This bit calculate from Parity Bit
3> Polynomial Checking คือ การเพิ่มตัวเลข 1 ตัวหรือมากกว่าเข้าไปต่อท้ายข้อความโดยแบ่งออกเป็น
3.1>Checksum คือการ Check จากผลรวมของตัวเลข
ตัวอย่างการคำนวณ
Suppose the following block of 16 bits is to be sent using a checksum of 8 bits 10101001 ,00111001
1 0 1 0 1 0 0 1
0 0 1 1 1 0 0 1
Sum 1 1 1 0 0 0 1 0
Check sum 0 0 0 1 1 1 0 1
Pattern ที่ส่งไป คือ 10101001 00111001 11100001
3.2>Cyclic Redundancy Check (CRC)
การหา CRC นั้นจะหาได้จากกการนำข้อมูลไปหารด้วย Divisor ก็จะได้ CRC
ตัวอย่างการคำนวณ
You want to send data 100100 and Divisor is 1101 then you will get CRC 001 by let data plus extra zero divided by Divisor.
โดย Divisor จะมีข้อมูลที่มากกว่า CRC อยู่ 1 ตัว
Polynomial form คือ การนำเสนอ binary code ในรูปแบบของ xn
ตัวอย่างการคำนวณ
Data 1000011 can represent in Polynomial form like x6+x+1
Error Correction คือ การเก็บข้อผิดพลาดเมื่อตรวจพบ โดยที่เทคนิคในการเก็บมีดังต่อไปนี้
1>Retransmission คือ การส่งข้อมูลซ้ำเมื่อเกิดข้อผิดพลาดขึ้น แต่แบบนี้จะไม่ใช้ในระบบดาวเทียม ซึ่งเทคนิคนี้จะถูกเรียกว่า Automatic Repeat Request [ARQ]
2>Forward Error Correction [FEC] คือเทคนิคที่อุปกรณ์ของผู้รับสามารถรวบรวมข้อมูลที่รับเข้ามาได้ด้วยตัวเองโดยไม่ต้องมีการส่งข้อมูลซ้ำ
Hamming code คือการเพิ่ม bit เข้าไปใน Data เพื่อที่จะคำนวณว่า Data ที่ส่งมามี Error เกิดขึ้นหรือไม่ ทำได้โดย
Step1> หา Bit ที่ซ้ำ โดยหาจาก 2r≥m+r+1 ตัวเลขที่ r ดูแลอยู่จะมาจาก bit ทางขวาสุด
Step2>กำหนด Bit สำหรับ r โดย r จะถูกใส่เข้าไปใน bit โดยการคำนวณจาก r1=20=1, r2=21=2, r3=22=4 …
Redundancy ต้องการ 1 เป็นจำนวนคู่ และ Receiver จะให้ r1 = bit ตัวที่ 1, r2 = bit ตัวที่ 2, r3 = bit ตัวที่ 4, r4 = bit ตัวที่ 8
โดยถ้าเลขของ 1 ของ bit ที่ r ดูแลอยู่เป็นเลขคู่ทุกตัวจะคำนวณออกมาได้ 0000 หมายความว่าไม่มี error เกิดขึ้น

ไม่มีความคิดเห็น: