วันอาทิตย์ที่ 30 สิงหาคม พ.ศ. 2552

Week 9 : Chapter 5 Data link Layer (2) cont.

HDLC – High-Level Data Link Control
โปรโตคอล HDLC เป็นโปรโตคอลมาตรฐานซึ่งกำหนดขึ้นโดยองค์กร ISO เพื่อเพิ่มความเร็วในการส่ง-รับข้อมูลแบบซิงโครนัส สามารถใช้ได้กับการเชื่อมโยงการส่งข้อมูลทั้งแบบจุดต่อจุด และแบบหลาย จุด การส่ง-รับข้อเป็นได้ทั้ง Half Duplex และ Full Duplex ข้อมูลที่ส่ง-รับเป็นแบบบิตข้อมูล ( ฺBit-Oriented) ใช้

วิธีการส่งผ่านข้อมูลแบบซิงโครนัส
การเชื่อมโยงการสื่อสารโปรโตคอล HDLC โปรโตคอล HDLC จะกำหนดผู้ส่งและผู้รับเป็นสถานีปฐมภูมิและทุติยภูมิ(Primary/Secondary)คุณสมบัติพิเศษอย่างหนึ่งของโปรโตคอล HDLC คือแทนที่จะต้องส่งข้อมูลไปทีละ 1 บล็อกแล้วต้องคอยตอบรับแบบบล็อกต่อบล็อก เช่น ในการสื่อสารในโปรโตคอล SDLC สถานีปฐมภูมิสามารถส่งข้อมูล ได้ทีละหลาย ๆ บล็อกพร้อมกัน แล้วค่อยรอการตอบรับจากสถานีทุติยภูมิ
ว่าผลรับข้อมูลเป็นอย่างไร ซึ่งทำให้ลด การเสียเวลาในการตอบรับบล็อก ซึ่งอาจจะมีการตอบรับ
เพียงครั้งเดียวสำหรับการส่งข้อมูลทั้งหมดก็ได้ วิธีการ นี้เรียกว่า"Sliding Windows"HDLC สามารถส่งต่อเนื่องได้ 8 ครั้งโดยไม่ต้องมี Acknowledged
HDLC เป็นโปรโตคอลที่ทำงานในส่วน Data Link Layer ดังรูป


รูปที่ 1 แสดงการทำงานของ HDLC ใน Data Link Layer


รูปที่ 2 รูปแบบการส่งข้อมูลแบบ HDLC


รูปที่3 Frame type of HDLC


รูป"Sliding Windows" แบบ Half Duplex



สถานี 3 ประเภท ได้แก่
สถานีหลัก (Primary station)
• รับผิดชอบในการควบคุมการ operate link เฟรมต่างๆ ที่ออกมาจากสถานีนี้เรียกว่าคำสั่ง
(command)

สถานีรอง (Secondary station)
• ปฏิบัติการไปตามคำสั่งของ Primary station เฟรมที่สั่งออกมาจาก Secondary station
เรียกว่า response สถานีหลัก (Primary station) จะดูแล link ที่เป็น logical link กับแต่ละ
สถานีรอง (Secondary station) ที่เชื่อมต่ออยู่

สถานีผสม (Combined station)
• เป็นการรวมเอารูปแบบของการทำงาน แบบ 1 และ 2 เข้าด้วยกัน ดังนั้นสถานีนี้อาจส่ง
เฟรมได้ทั้งที่เป็น command และ response

คุณลักษณะของ link
Unbalanced configuration
• ประกอบด้วย primary หนึ่งสถานีและเชื่อมต่อด้วยมีสถานีของ Secondary station จำนวน
หนึ่งหรือมากกว่า แล้วสนับสนุนการส่งสัญญาณถึงกันทั้งแบบ full-duplex และ halfduplex
Balanced configuration
• ประกอบด้วย 2 สถานีที่เป็นสถานีผสมแล้ว ส่งสัญญาณทั้งแบบ full-duplex และ halfduplex

โหมดของการถ่ายโอนข้อมูล
Normal response mode (NRM)
• ใช้กับคุณลักษณะของ link แบบ unbalanced สถานีหลักจะเป็นตัวหลักเริ่มต้นการถ่ายโอน
ข้อมูลไปสถานีรอง สถานีรองอาจส่งข้อมูลที่เกี่ยวกับการตอบสนองต่อคำสั่งจากสถานี
หลักเท่านั้น
Asynchronous balanced mode (ABM)
• ใช้กับคุณลักษณะของ link ที่เป็นแบบ balanced โดยสถานีแบบผสมอาจเริ่มการส่งผ่าน
สัญญาณ โดยไม่ต้องรออนุญาตจากสถานีผสมอีกสถานีหนึ่ง
Asynchronous response mode (ARM)
• ใช้กับคุณลักษณะของ link แบบ unbalanced สถานีรอง (Secondary station) อาจเริ่มต้นการ
ส่งสัญญาณไปยังสถานีหลัก โดยไม่รออนุญาต ส่วนสถานีหลักยังคงรับผิดชอบกับ
สายสัญญาณ รวมถึงการเริ่มต้นเชื่อมต่อการแก้ไขข้อผิดพลาด และการยกเลิกการติดต่อ
ในทาง logical NRM ใช้กับ multidrop line ที่มีหลาย terminal เพื่อรับ input นอกจากนี้
NRM ยังใช้กับ point-to-point link โดยเฉพาะถ้า link เชื่อมต่อกับ terminal หรือ peripheral
อื่นเข้ากับคอมพิวเตอร์

โครงสร้างของเฟรม (Frame Structure)
• รูปแบบของการส่งเป็นแบบเฟรม แต่ละเฟรมมีรูปแบบ ที่รองรับได้หลายประการ และ
รายละเอียดของการควบคุมการแลกเปลี่ยนข้อมูลครบถ้วน

รูปแบบโครงสร้างของ HDLC เฟรมส่วนที่เป็นแฟลกซ์ (Flag) ที่อยู่ (Address) และฟิลด์
ควบคุม (Control field) ที่อยู่ก่อนฟิลด์ ที่เป็นข้อมูลเรียกว่า header และ FCS กับ Flag ที่ตามหลัง
ข้อมูลต่อมาเรียกว่า tailor

ฟิลด์ที่ใช้เป็นแฟลกซ์ (Flag Fields)
- Flag field ใช้แยกเฟรมแต่ละเฟรมออกจากกันโดย ผนวกไว้ทั้งหัวและท้ายของแต่ละ
เฟรมด้วยค่า 01111110
- แฟลกซ์ (flag) หนึ่ง ๆ อาจใช้เป็นฟิลด์ปิดท้ายของเฟรม เฟรมหนึ่งและเป็นแฟลกซ์ (flag)
เริ่มต้น ของอีกเฟรมหนึ่งก็ได้
- การอินเทอร์เฟสกันระหว่างผู้ใช้กับเครือข่าย (user-network interface) ทั้งสองด้าน ฝ่ายรับ
สัญญาณจะหาข้อมูลส่วนที่เป็นแฟลกซ์ เพื่อบอกจุดเริ่มต้นของเฟรม ไปตามลำดับจนสิ้นสุดเฟรม
- การเปรียบเทียบค่า 01111110 กับข้อมูลที่ส่งต่อเนื่องเข้ามา อีกทั้งข้อมูลอาจมีเหมือนกัน
กับค่าแฟลกซ์ (flag) ได้ ดังนั้นเพื่อหลีกเลี่ยงปัญหานี้จึงมีวิธีที่เรียกว่า bit stuffing มาใช้ ระหว่าง
แฟลกซ์ (flag) เริ่มต้นกับแฟลกซ์ (flag) ปิดท้ายเฟรม
ถ้ามีข้อมูลที่มีค่าเป็นหนึ่งจำนวน 5 ตัวติดต่อกัน (11111) จะมีบิตพิเศษเป็น 0 เพิ่มอีกหนึ่ง
บิต เพื่อใช้ปิดท้ายหลังบิตที่เป็น 1 ตัวที่ 5
* ส่วนฝ่ายรับข้อมูลเมื่อเจอ 1 ติดต่อกันจำนวน 5 ตัว ถ้าตัวที่ 6 เป็น 0 จะลบทิ้ง
* แต่ถ้าตัวที่ 6 เป็น 1 และที่ 7 เป็น 0 ก็จะถือว่านั้นคือแฟลกซ์ (flag)
* ถ้า 6 และ 7 มีค่าเป็น 1 ฝ่ายส่งข้อมูลมีความหมายเป็นการยุติการติดต่อ
โดยวิธีการใช้ bit stuffing ฟิลด์ (field) ที่เป็นข้อมูลอาจแทรกบิตที่มีรูปแบบที่กำหนดไว้ได้
ซึ่งลักษณะนี้เรียกว่า data transparency

ฟิลด์ที่ใช้ควบคุม (Control Field)
HDLC กำหนดเฟรมออกเป็น 3 แบบ แต่ละแบบมีรูปแบบของ field control แตกต่างกัน
Information frame (I-frame)
• จะนำส่งข้อมูลให้กับ user และใช้กลไก ARQ สำหรับ flow และ error control เกาะติดไป
กับ information frame
Supervisory frames (S-frame)
• จัดการกับ ARQ mechanism กรณีไม่มี flow กับ error control ไม่ได้เกาะติดไปด้วย
Unnumbered frames (U-frame)
• จัดให้มี link control functions สนับสนุนหนึ่งบิตหรือสองบิตแรกของฟิลด์ควบคุม ใช้ระบุ
ชนิดของเฟรมบิตต่อไป

poll/final (P/F)
ฟิลด์ที่เก็บ Information (Information Field) รูปแบบของฟิลด์ควบคุมทุกแบบจะมีบิต
เรียกว่า poll/final (P/F)
ถ้าเป็น command frame บิตนี้ เรียกว่า P bit
ถ้ามีค่าเป็น 1 ใช้ poll เพื่อหาเฟรมตอบสนอง (response frame) จาก peer HDLC ใน
respond frame บิตนี้เป็น F bit
ถ้า set เป็น 1 แสดงว่าเป็นเฟรมตอบรับเป็นผลมาจากคำสั่ง Soliciting (Poll)
ฟิลด์ที่ใช้ตรวจสอบ (Frame Check Sequence Field)
• FCS เป็น error-detecting code
• คำนวณจากเศษบิตของเฟรม code ปกติเป็น 16-bit CRC-CCITT
การควบคุม (Operation)
HDLC operations ประกอบด้วยการแลกเปลี่ยน I-frames, S-frames, และ U-frames ระหว่าง
สองสถานี คำสั่งต่าง ๆ รวมทั้งการตอบสนองที่กำหนดให้ชนิดต่าง ๆของเฟรม
• ฝ่ายใดฝ่ายหนึ่งเริ่มต้นการเชื่อมต่อ (initialize data link) ดังนั้นเฟรมมีการแลกเปลี่ยนกันใน
ลักษณะก่อนหลังตามลำดับ ระหว่างการทำงานในเฟสนี้ ทางเลือกต่าง ๆ จะมีการตกลงกัน
ระหว่างสองสถานี
• หลังจากเชื่อมต่อเกิดขึ้น สองฝ่ายมีการแลกเปลี่ยนข้อมูลและรายละเอียดเกี่ยวกับการ
ควบคุม (control information) เพื่อทำกิจกรรม การเลื่อนไหลของเฟรม และการควบคุม
ข้อผิดพลาด
• สุดท้ายฝ่ายใดฝ่ายหนึ่งส่งสัญญาณยุติการติดต่อ




เครือข่ายแบบ IEEE 802.3
เครือข่ายแบบ IEEE 802.3 หรือที่เรียกกันว่า เครือข่ายแบบ Ethernet Ethernet เป็นเทคโนโลยีสำหรับเครือข่ายแบบแลน (LAN) ที่ได้รับความนิยมสูงสุดในปัจจุบัน คิดค้นโดยบริษัท Xerox ตามมาตรฐาน IEEE 802.3
ปัจจุบัน 10 Gbps (มีชื่อว่า 10 Gigabit Ethernet หรือ 10 GbE) กำลังจะเข้ามาในเครือข่ายของ Ethernet และชั้นData Link
Point-to-Point Protocol (PPP)
Point-to-Point Protocol (PPP) เป็นโปรโตคอล สำหรับการสื่อสารระหว่างคอมพิวเตอร์ 2 ตัว ด้วยการอินเตอร์เฟซแบบอนุกรม ตามปกติ คอมพิวเตอร์ส่วนบุคคลที่เชื่อม ด้วยสายโทรศัพท์ไปที่เครื่องแม่ข่าย เช่น เครื่องแม่ข่ายของผู้ใช้บริการอินเทอร์เน็ตให้ผู้ใช้ต่อเชื่อมด้วย PPP ทำให้เครื่องแม่ข่าย สามารถตอบสนองคำขอผู้ใช้ ส่งสิ่งเหล่านี้ไปยังอินเทอร์เน็ต และส่งต่อการตอบสนองอินเทอร์เน็ต กลับไปยังผู้ใช้ PPP ใช้ Interner Protocol (IP)
ส่วนแรก จะทำหน้าที่เข้ารหัสข้อมูลเพื่อส่งทางพอร์ตอนุกรม ซึ่งใช้กับการรับส่งข้อมูลแบบเดียวกันกับ High-level Data Link Control หรือ HDLC นี้จะมีลักษณะเป็นเฟรมของกลุ่มข้อมูลเหมือนกับการรับส่งข้อมูลแบบ Synchronous นั่นเอง
สถานะว่าง (Idle state)เป็นสถานะที่เลือกสื่อกลางที่ใช้ในการสื่อสารว่างไม่มีการส่งสัญญาณภายในสาย
สถานะสร้างการติดต่อ (Establishing state)เป็นการสร้างการติดต่อระหว่างอุปกรณ์ 2 ตัว ถ้าสร้างการติดต่อกันได้จะเข้าสู่สถานะของการยืนยันตัวบุคคล (authenticating state)ถ้าไม่ต้องการยืนยันตัวบุคคลก็สามารถเข้าสู่networking state ได้เลย ในสถานะนี้จะเกี่ยวข้องกับโพรโตคอล LCP (link control protocol)
สถานะยืนยันตัวบุคคล (Authenticating state) สถานะนี้จะมีหรือไม่มีก็ได้ แต่ถ้ามีการแสดงว่าในการติดต่อกันนั้นจะต้องมีการยืนยันว่าเป็นบุคคลที่สามารถเข้าใช้งานระบบได้จริง ถ้าสามารถยืนยันตัวบุคคลจะได้เข้าสู่ networking state แต่ถ้าไม่ได้จะเข้าสู่ terminating state
สถานะเชื่อมโยง (Networking state) เป็นสถานะที่สามารถสื่อสารข้อมูลได้
สถานะสิ้นสุด (Terminating state)เป็นการยกเลิกการติดต่อกัน ท าให้ไม่สามารถสื่อสารข้อมูลกันได้อีก
2.PPP Stack
แม้ว่าโพรโตคอล PPP จะอยู่ในดาทาลิงค์เลเยอร์ แต่ยังคงใช้งานร่วมกันกับโพรโตคอลอื่นๆ ด้วย ไม่ว่าจะเป็นการสร้างการติดต่อ การยืนยันตัวบุคคล และการส่งข้อมูลกับเน็ตเวิร์กเลเยอร์ โพรโตคอลที่ต้องน ามาใช้งานร่วมกับโพรโตคอล PPP เพื่อให้มีประสิทธิภาพมากขึ้นนั้นได้แก่ link control protocol, authentication protocol และnetwork control protocol
Link Control Protocol (LCP)
เป็นโพรโตคอลท าหน้าที่ในการสร้างการติดต่อระหว่างอุปกรณ์ การคงสภาพของการเชื่อมต่อ และการยกเลิกการติดต่อ ในการสร้างการติดต่อกันจะมีกลไกในการเจรจาเพื่อที่จะก าหนดออปชันกันก่อน เพื่อเป็นการสร้างข้อตกลงกันว่าจะใช้ออปชันไหนในการติดต่อกัน ในขั้นตอนที่โพรโตคอล PPP ส่งแพ็กเก็ต LCP เพื่อการสร้างการติดต่อ หรือการยกเลิกการติดต่อนั้น จะไม่มีการส่งข้อมูลของผู้ใช้ไปด้วย แพ็กเก็ต LCP จะถูกบรรจุในฟิลด์ข้อมูลของเฟรมข้อมูล PPP ดังนั้นถ้าโพรโตคอล PPP ต้องการที่จะส่งแพ็กเก็ต LCP จะต้องก าหนดค่าในฟิลด์โพรโตคอลเป็น C02116
แพ็กเก็ต PAP จะถูกเก็บไว้ในเฟรมข้อมูล PPP ดังนั้นถ้าโพรโตคอล PPP ต้องการส่งแพ็กเก็ต PAP จะต้องก าหนดค่าในฟิลด์โพโตคอลเป็น C02316แพ็กเก็ต PAP แบ่งออกเป็น 3 ชนิดได้แก่
Authenticate-request ใช้ส าหรับส่งชื่อผู้ใช้ และรหัสผ่าน
Authenticate-ackใช้ส าหรับการยอมรับชื่อผู้ใช้และรหัสผ่าน บอกว่าสามารถให้เข้าใช้ระบบได้
Authenticate-nakใช้ส าหรับการปฏิเสธการเข้าใช้ระบบ
แพ็กเก็ต CHAP จะเก็บไว้ในเฟรมข้อมูล PPP ถ้าโพรโตคอล PPP ต้องการที่จะส่งแพ็กเก็ต CHAP จะต้องก าหนดค่าในฟิลด์โพโตคอลเป็น C22316 แพ็กเก็ต CHAP แบ่งออกเป็น 4 ชนิด ได้แก้
Challenge ใช้ส าหรับในการส่งตัวเลขส าหรับใช้ในการค านวณไปให้กับผู้ใช้
Response แพ็กเก็ตที่ผู้ใช้ส่งผลการค านวณมาให้กับระบบ
Success แพ็กเก็ตที่ระบบส่งไปบอกผู้ใช้สามารถเข้าใช้งานระบบได้
Failure แพ็กเก็ตที่ระบบส่งไปบอกผู้ใช้ว่าไม่อนุญาตให้เข้าใช้งานได้
Network Control Protocol (NCP)
หลัวจากสร้างการติดต่อ และยืนยันตัวบุคคลกันได้แล้ว ก็จะเข้าสู่สถานะเชื่อมโยง ซึ่งสถานะนี้ PPP จะต้องใช้โพรโตคอล NCP ท าหน้าที่ในการรับข้อมูลมาจากเน็ตเวิร์กเลเยอร์ แล้วน าไปเก็บในเฟรมข้อมูลของ PPP2.
Internetwork Protocol Control Protocol (IPCP)
เป็นโพโตคอลที่ท างานร่วมกับเน็ตเวิร์กเลเยอร์ โดยการน าข้อมูลจากเน็ตเวิร์กเลเยอร์มาใส่ไว้ในเฟรมข้อมูล PPP ฟิลด์โพรโตคอลจะมีค่าเป็น 802116เมื่อต้องน ามาส่งแพ็กเก็ต IPCP
Transmission Efficiency

Formula = Total number of info bit to be transmitted / Totla number of bits transmitted

วันอาทิตย์ที่ 23 สิงหาคม พ.ศ. 2552

Week 8 : Chapter 5 Data link Layer (2)

การแก้ไขแบบส่งข้อมูลซ้ำ (Error Detection With Retransmission) กำหนดให้ ผู้ส่งจัดการส่งข้อมูลที่เกิดผิดเพี้ยนมาใหม่ วิธีการที่นิยมกันโดยทั่วไปเรียกว่า การขอส่งข้อมูลซ้ำโดยอัตโนมัติ (Automatic Repeat Request; ARQ) ซึ่งมีอยู่สามแบบคือ แบบหยุดคอย แบบส่งย้อนกลับ และแบบต่อเนื่อง
กระบวนการขอร้องให้ส่งข้อมูลกับมาอีกครั้ง เรียกว่า Automatic Repeat Request or ARQ
ARQ แบ่งออกเป็น 3 แบบย่อย

1. Stop and wait ARQ
2. Go-back-N ARQ
3. Continuous ARQ

Stop and wait ARQ
การขอส่งข้อมูลซ้ำอัตโนมัติแบบหยุดคอย (Stop-and-wait ARQ) จะกำหนดให้ข้อมูลแต่ละแพ็กเกตมีหมายเลขเฉพาะของตนเองและส่งออกไปทางช่อง สื่อสารแล้วจึงหยุดคอย วิธีการนี้มี ประสิทธิภาพในระดับต่ำมาก ช่องสื่อสารส่วนใหญ่จะว่างเปล่าคือ ไม่มีการส่งข้อมูลเนื่องจากเวลา ส่วนใหญ่ในการรอคอยระหว่างผู้รับและผู้ส่ง อย่างไรก็ตามวิธีการนี้ได้รับความนิยมในการใช้งานทั้งบนเครื่องเมนเฟรมและใน ระบบเครือข่ายเฉพาะบริเวณเนื่องจากเป็นวิธีการที่ง่ายแก่การนำไปใช้ง่ายต่อ การควบคุม และสามารถไว้วางใจได้ดี
ผู้ ส่งจะส่งข้อมูลไปชุดแรกแล้วรอผล ถ้าผู้รับได้รับข้อมูลแล้วไม่มีข้อผิดพลาดจะตอบว่า acknowledgement (ACK) พอได้รับคำตอบแล้วว่าถูกต้องก็จะส่งข้อมูลตัวต่อไป แต่ถ้าเจอข้อมูลที่ผิดพลาด จะตอบว่า negative acknowledgemen ( NAK) แล้วผู้ส่งก็ต้องส่งข้อมูลชุดเดิมไปใหม่

Go-back-N ARQ
กับไปแก้ที่ตำแหน่งที่ผิด
การขอส่งข้อมูลซ้ำอัตโนมัติแบบส่งย้อนกลับ (Go-back-N ARQ) ปรับปรุงวิธีการแรกโดยยอมให้ผู้ส่งสามารถส่งแพ็กเกตข้อมูล (ที่มีการกำหนดหมายเลขเฉพาะ) ได้อย่างต่อเนื่องทางฝ่ายผู้รับยังคงตรวจสอบข้อมูลทีละแพ็กเกตแล้วจึงส่งการ ตอบรับสำหรับแพ็กเกตที่ถูกต้องหรือตอบปฏิเสธกลับไปสำหรับแพ็กเกตที่มีข้อมูล ผิดเพี้ยน เช่น สมมุติว่าแพ็กเกตหมายเลข 1 มีข้อมูล ผิดเพี้ยน ดังนั้นผู้รับจะส่งการตอบปฏิเสธแพ็กเกตหมายเลข 1 กลับไปยังผู้ส่ง ทางด้านผู้ส่ง (ซึ่งได้ส่งแพ็กเกตหมายเลข 2 ถึง 5 ไปแล้ว) จะต้องย้อนกลับไปส่งแพ็กเกตหมายเลข 1 รวมทั้งแพ็กเกตที่ส่งตามหลังหมายเลข 1 (คือแพ็กเกตหมายเลข 2 ถึง 5) กลับมาใหม่ทั้งหมดในกรณีที่แพ็กเกตหมายเลข 1 ถูกต้อง ทั้งผู้รับและผู้ส่งก็จะไม่ต้องเสียเวลาในการรอคอย เพราะผู้รับก็จะได้รับแพ็กเกตหมายเลข 2 ในทันที ถ้าไม่มีข้อมูลผิดเพี้ยนเกิดขึ้นเลย ก็จะทำให้การส่งข้อมูลวิธีนี้เสียเวลาในการรอคอยน้อยมาก แต่ถ้ามีข้อมูลผิดเพี้ยนเกิดขึ้นมาก ประสิทธิภาพของวิธีนี้จะไม่แตกต่างจากวิธีการแรกเลย อย่างไรก็ตาม วิธีการนี้มีข้อมูลถูกส่งเข้าสู่ระบบเครือข่ายตลอดเวลา และข้อมูลแพ็กเกตหนึ่งอาจถูกส่งซ้ำแล้วซ้ำอีกได้หลายครั้ง เช่น แพ็กเกตหมายเลข 2 ถึง 5 จะถูกส่งซ้ำจนกว่าแพ็กเกตหมายเลข 1 จะไปถึงผู้รับอย่าง ถูกต้อง


Continuous ARQ

ผิดตรงไหนเริ่มตรงนั้น แล้วส่งไปตัวต่อไปได้เลย เป็นวิธีที่เร็วที่สุด/ดีที่สุดแต่ราคาแพง
การขอส่งข้อมูลซ้ำอัตโนมัติแบบต่อเนื่อง (Continuous ARQ) เป็นวิธีที่มี ประสิทธิภาพสูงสุดและได้รับการนำไปใช้ในการส่งข้อมูลความเร็วสูงบนเครื่อง เมนเฟรมและ โพรโทคอลการสำเนาแฟ้มข้อมูลความเร็วสูงต่าง ๆ มากมาย วิธีนี้ทำงานเหมือนกับการส่งข้อมูลแบบย้อนกลับแต่ได้ปรับปรุงการตอบสนอง เมื่อข้อมูลผิดเพี้ยนโดยการส่งเฉพาะแพ็กเกตที่เสียหายเท่านั้น เมื่อผู้รับส่งการตอบปฏิเสธแพ็กเกตหมายเลข 1 มา ผู้ส่งก็จะส่งเฉพาะแพ็กเกตหมายเลข 1 กลับไปใหม่เท่านั้น อย่างไรก็ตามแพ็กเกตที่ไปถึงผู้รับอาจอยู่ในลำดับที่ไม่ถูกต้อง เช่น แพ็กเกตทางด้านผู้รับจะเป็น หมายเลข 2, 3, 4, 5, 6 และ 1 จึงเป็นหน้าที่ของฝ่ายผู้รับที่จะต้องจัดการเรียงลำดับแพ็กเกต ข้อมูลให้ ถูกต้องก่อนที่จะนำข้อมูลนั้นไปใช้งานต่อไป ประสิทธิภาพของวิธีการนี้จึงเกิดขึ้นจากการที่ผู้ส่งสามารถส่งข้อมูลได้ อย่างต่อเนื่องตราบเท่าที่มีข้อมูลจะต้องส่งออกไปและข้อมูลที่จะต้องถูกส่ง ซ้ำเป็นข้อมูลที่เกิดการผิดเพี้ยนเท่านั้น

selective–reject
เมื่อพบว่าในระหว่างการส่งหากไม่ได้รับ ACK ก็จะทำการส่งเฟรมนั้นใหม่จนกว่าจะได้ ACK จึงจะทำการส่งเฟรมต่อไป


Data Link Protocols

กลุ่มของข้อกำหนดกฎเกณฑ์ในการใช้งานจริงทำงานอยู่ใน OSI model อยู่ในชั้นของ Data Link มี 2 กลุ่ม

1. Asynchronous Protocols จะไม่สนใจเวลาในการส่ง ในการส่งแบบนี้จะต้องทราบ
- ข้อมูลที่จะส่ง
- Start Stop bits

XMODEM ใช้ในการ Download file,Upload file ผ่านสายโทรศัพท์ ระหว่าง PC กับ PC
การทำงานแบบ Half - duplex ในแต่ละตัวจะเป็น start and stop bits มี Header 2 ตัว เก็บ
Sequence number และ Frame number ขั้นตอนการทำงาน ผู้รับจะส่ง NAK ไปให้ผู้ส่ง และ ผู้ส่งจะส่งข้อมูลไปให้ และรอ ACK กลับมาจนข้อมูลหมด ผู้ส่งจะส่ง CAN

YMODEM พัฒนามาจาก XMODEM แต่การส่งข้อมูลสามารถส่งได้หลาย ๆ file ในเวลาเดียวกันได้

ZMODEM เหมือน XMODEM และ YMODEM แต่ ZMODEM มีการตรวจสอบ Error และมีการ Resume คือ จะเชื่อมต่อข้อมูลที่จุดเดิมเมื่อทำการเชื่อมต่อในครั้งใหม่

BLAST เป็นแบบ Full - duplex สามารถส่งข้อมูลที่เป็น binary file ได้

KERMIT การทำงานคล้าย XMODEM แต่จะมีการรอ NAK และเป็น Full - duplex ทำงานอยู่ในระดับ Physical - link

2. Synchronous Protocols ใช้ในระบบที่ไม่มี MODEM มาเกี่ยวข้อง โดยที่ หัวและท้ายของสัญญาณต้องเป็นสัญญาณเดียวกัน มี 2 แบบ
- Character - Oriented Protocols พัฒนาโดย IBM เป็นแบบ Half - duplex การส่งข้อมูลเป็นแบบ Stop and wait ARQ
- Bit - Oriented Protocols
โปรโตคอล SDLC เป็นโปรโตคอลแบบซิงโครนัสที่ส่งข้อมูลเป็นกลุ่มอักขระที่แทนด้วยรหัสไบนารี
(Binary-coded Character)มีความสามารถในการเชื่อมโยงการส่งข้อมูลทั้งแบบเครื่องต่อเครื่อง หรือจุดต่อ จุด (Point-to-Point) และเครื่องต่อ 2 เครื่องหรือมากกว่าหรือหลายจุด (Point-to-Multipoint) นอกจากนี้ยัง สามารถส่งรับข้อมูลได้ทั้งแบบ Half Duplex และ Full Duplex การควบคุมการส่ง-รับข้อมุลจะควบคุมเรียกว่า อักขระควบคุมดาต้า-ลิงก์ (DatalinkControl Character) โปรโตคอล SDLC เป็นมาตราฐานโปรโตคอลการ สื่อสารของบริษัท IBM เช่นดียวกับโปรโตคอล BSC
รูปแบบของเฟรมของโปรโตคอล SDLC ที่ใช้ในการส่งข้อมูลมี 3 แบบคือเฟรมข้อมูล (Informa-
tion Frame) เฟรมผู้ควบคุม (Supervisory Frame) และเฟรมไม่มีลำดับ (Nonsequence Frame) เฟรม ข้อมูลจะเป็นเฟรมที่บรรจุข่าวสาร ข้อมูล หรือข้อความ ส่วนเฟรมผู้ควบคุมจะบรรจุข้อมูลการควบคุมการส่งข้อ มูล หรือ ข้อความ ส่วนเฟรมผู้ควบคุมจะบรรจุข้อมูลการควบคุมการส่งข้อมูล และเฟรมไม่มีลำดับจะมีไว้สำหรับ เริ่มต้นการสื่อสาร หรือยกเลิกการสื่อสารข้อมูล
F =Flag จะประกอบด้วยอักขระควบคุมการบอกจุดเริ่มต้นส่วนหัว (SOH) จุดเริ่มต้นข้อมูล
(STX)และจุดจบของข้อมูล (ETX) โดยรูปแบบของอักขระจะเป็นอักขระ SYN หรือ 0111 1110 (8 บิต)
A = Address เป็นรหัส 8 บิตบอกตำแหน่งของผู้รับข้อมูล
C = Control อาจจะเป็นรหัส 8 บิต หรือ 16 บิต ทำหน้าที่เป็นตัวบ่งบอกว่าในเฟรมมีการบรรจุข้อ
มูล หรือบรรจุคำสั่ง หรือสัญญาณโต้ตอบอย่างไรบ้าง
I = Information บรรจุข่าวสาร ข้อมูล คำสั่ง หรือโต้ตอบขึ้นอยู่กับว่าเฟรมที่ส่งนั้นเป็นเฟรม
ข้อมูล เฟรมควบคุม หรือเฟรมไม่มีลำดับ ขนาดของ I จึงขึ้นอยู่กับชนิดของเฟรมข้อมูลโดยส่งเป็นบิต ๆ ไม่ส่ง เป็นไบต์
FCS = Frame Check Sequence เป็นส่วนที่ใช้ในการตรวจสอบความผิดพลาดในการส่ง
-รับข้อมูลที่อาจเกิดขึ้น ซึ่งอาจจะตรวจสอบเฉพาะพาริตี้บิต หรือทั้งบล็อกข้อมูลส่วนใหญ่ FCS จะมีขนาดเป็น 16บิต

วันศุกร์ที่ 14 สิงหาคม พ.ศ. 2552

Week 7: Chapter 4 Data Link Layer(1)

Data Link layer

จะเตรียมส่งผ่านข้อมูลข้ามเครือข่ายทางกายภาพ Data link layer ที่ต่างกันก็มีรายละเอียดของเครือข่าย และ
protocol ที่ต่างกัน รวมไปถึง physical address, network topology ,การประกาศข้อผิดพลาด , ลำดับของ
frame และการควบคุมการไหลของข้อมูล Data Link layer จะแปลข้อมูลจาก Network layer ให้เป็น bits
สำหรับ Physical layer เพื่อถ่ายโอนข้อมูล โดยรูปแบบ คือ จากข้อมูลแปลงเป็น frame แล้วเพิ่มส่วนหัวของข้อมูล
ซึ่งได้แก่ แหล่งกำเนิดและที่อยู่ของอุปกรณ์หลายทางData link layer จะรับผิดชอบการค้นหาอุปกรณ์บนเครือข่าย
กระบวณการ media access control คือ วิธีในการควบคุมการเข้าใช้งานสื่อกลาง จะเป็นข้อตกลงที่ใช้ในการรับส่งข้อมูลผ่านสื่อกลางซึ่งทุกโหนดในเครือข่ายจะ ต้องใช้มาตรฐานเดียวกัน การทำงานจะเกิดอยู่ในส่วนของแผงวงจรเชื่อมต่อเครือข่าย (Network Interface Card : NIC) และทำงานอยู่ในครึ่งท่อนล่างของ Data link Layer
Point-to-Point Topology

- เป็นการเชื่อมต่อระหว่างอุปกรณ์ได้เพียง 2 อุปกรณ์(หรือ 2 จุด)เท่านั้น
- ความน่าเชื่อถือต่ำ เนื่องจากถ้าหาก Link ที่มีอยู่เพียงเส้นเดียวเสียหาย จะทำให้เครือข่ายทั้งสองด้านของ Link ถูกตัดขาดออกจากกันทันที
- เป็นพื้นฐานของการเชื่อมต่อเครือข่ายประเภทอื่นๆที่ซับซ้อนมากขึ้นเนื่องจาก ต้องอาศัยการเชื่อมต่อแบบ Point-to-Point เป็นพื้นฐานนั้นเอง
- ในกระบวณการ media access method ที่ถูกทำโดย Data Link protocol จะถูกพิจารณาโดย logical point-to-point topology

Multi-Access Topology

- เป็นการเชื่อมต่อโดยอาศัยอุปกรณ์มากกว่า 2 อุปกรณ์ขึ้นไป ซึ่งอุปกรณ์สามารถ Share ร่วมกันได้
- อุปกรณ์สามารถส่งข้อมูลหากันได้ (ส่งได้เมื่อไม่มีการใช้สื่ออยู่)
- โดยปกติในการ media access control methods จะใช้ CSMA/CD or CSMA/CA, token passing
MAC for Shared Media

- กระบวณการขั้นพื้นฐานในการ media access control สำหรับการแชร์ไฟล์
1. Controlled : แต่ละโหนดจะมีช่วงเวลาในการใช้งานสื่อของตัวเอง
2. Contention-based : ทุกๆโหนดมีความพร้อมสำหรับการใช้งานสื่อ
- Controlled Access for Shared Media

- เมื่อใช้ กระบวณการ Controlled Access อุปกรณ์ในเครือข่ายจะผลัดกันในการใช้งานสื่อเป็นลำดับ โดยอาจเรียกกระบวณการนี้ว่า scheduled access or deterministic
- อุปกรณ์ในเครือข่ายสามารถส่งได้ทีละอัน อุปกรณ์อื่นต้องรอให้ถึงตาของตัวเอง
- ไม่มีการชนกันของข้อมูล
- ตัวอย่างเช่น Token Ring, FDDI


o Poll คือ Message ที่ Central computer ส่งไปถาม secondary ว่ามีอะไรจะส่งไหม
o ถ้าไม่ได้รับการอนุญาติ secondary ก็ไม่มีสิทธิส่ง
o ทั้งหมดควบคุมโดย central computer , สำหรับระบบ Multipoint จะรับประกันว่าจะส่งตรงเวลา
o ถ้า central computer พร้อมที่จะรับข้อมูลจะส่ง ask (Poll) ออกไปถาม secondary ว่ามีอะไรจะส่งหรือไม่
o ถ้า secondary ไม่มีอะไรจะส่งก็จะตอบ nothing to send control message(NAK) กลับมาบอก
o และถ้าได้รับ NAK frame , central computer ก็จะส่ง Poll ออกไปถาม secondary ตัวต่อไป
o จนกว่าจะมีข้อมูลที่จะส่ง
o และถ้าส่งข้อมูลเสร็จเรียบร้อย central computer ก็จะส่ง acknowledgement(ACK) ออกไป
o เพื่อเป็นการยืนยันว่าได้รับข้อมูลแล้ว


Roll-Call Polling

Roll-call polling protocol จะถูกส่งไปยังผู้ใช้งานรอบๆ โดยทั่ว, ที่ central control จะเลือกผู้ใช้เพียงหนึ่งราย ผู้ใช้งานรายอื่นจะถูกกำหนดให้ใช้หลังจากนั้นทีละราย ถ้าผู้ใช้รายนั้นได้รับ polling message จาก central control ก็ทำการส่ง message ไปจนไม่มีสิ่งใดจะส่งอีก หรือส่งทุก message ที่เก็บไว้ในหน่วยความจำกลาง หลังจากทำการส่งถึง message สุดท้าย มันก็จะส่งข้อความ “ready” ไปยัง central control หลังจาก central control ได้รับข้อความนี้ ตัว controller ก็จะส่ง polling message ไปยังผู้ใช้ในลำดับต่อไป

Token-Passing Protocol

ตัวอย่างหนึ่งของ token-passing protocol คือ token-bus protocol ใน protocol ชนิดนี้ ผู้ใช้งานทั้งหมดจะถูกต่อไปยัง bus เดียวกัน ผู้ใช้แต่ละรายจะให้ address ไว้อันหนึ่ง,ผู้ใช้ bus ถูกจัดลำดับเป็นวงแหวนโดยรหัสของผู้ใช้แต่ละราย ที่รู้จักกันใน

successor’s address ผู้ใช้จะมี address ที่แน่นอน และข้อมูลที่ส่งออกไปจะมี address ของผู้ใช้ถูกส่งออกไปด้วย ผู้รับที่รู้จัก address นั้น จะรู้ว่าข้อมูลที่ส่งมานั้นมีเจตนาที่จะส่งมาเพื่อเขา

ในความเป็นจริงผู้ใช้ที่จะส่งได้ขึ้นอยู่ว่าผู้ใช้รายนั้นได้รับส่วนของ control information ที่เรียกว่า token ก่อนหน้านั้นหรือไม่ ถ้าผู้ใช้ได้รับ token และต้องการที่จะส่งข้อมูลจริงๆ,ก็ทำการส่งข้อมูลนั้นออกไปได้จนถึงข้อมูลสุดท้าย,ก็ทำการส่ง token ไปยังผู้รับช่วงรายต่อไป ถ้าผู้รับช่วงรายนี้ยังไม่มีข้อมูลอะไรส่งในขณะนั้น มันก็จะส่ง token ไปยังผู้รับช่วงรายลำดับต่อไปทันที ถ้าผู้รับช่วงรายปัจจุบัน holds the token ก็ยอมให้ผู้ใช้รายนั้นส่งข้อมูลออกไปได้ อันนี้เป็นหลักการของ distributed demand assignment protocol

- Contention-based Access for Shared Media

- เรียกอีกอย่างว่า non-determistic ซึ่งจะอนุญาตให้อุปกรณ์มาสามารถใช้สื่อเมื่อไรก็ได้
- ซึ่งอาจจะมีการชนกันของข้อมูลได้
- เพื่อป้องการใช้กระบวณการ Carrier Sense Multiple Access (CSMA)ซึ่งจะคอยตรวจสอบสื่อกลางเสียก่อนว่าว่างหรือไม่ ถ้าว่างจึงจะสามารถส่งได้
- ตัวอย่างเช่น Eternet, wireless
- ไม่เหมาะกับระบบที่มีการใช้งานสื่อมากๆ เพราะว่าถ้าจำนวนโหนดเพิ่มขึ้น ความน่าจะเป็นนการประสบความสำเร็จในการใช้งานสื่อโดยไม่มี Collision หรือการชนกันของข้อมูลจะลดลง
Poll

Contention (Random) Multiple Access Protocols

สำหรับ contention multiple access จะไม่มีหมายกำหนดการในการใช้ช่องการสื่อสาร นั้นคือผู้ใช้รายใดพร้อมที่จะส่งก็ส่ง โดยไม่สามารถรู้ได้อย่างแน่ชัดว่าการส่งออกไปนั้นจะไปรบกวนกับผู้ใช้รายอื่นหรือไม่ ผู้ใช้อาจจะรู้หรือไม่รู้การดำเนินการของช่องการสื่อสารขณะนั้นอย่างแน่ชัดเกี่ยวกับผู้ใช้รายอื่น ดังนั้นเมื่อมีผู้ใช้พร้อมที่จะส่งมากกว่าหนึ่งรายในเวลาเดียวกัน ทุกการสื่อสารที่ทำการส่งในขณะนั้นของทุกรายก็จะ fail การสื่อสารที่ failure จะแสดงถึงสภาวะการประสบผลสำเร็จของการสื่อสารมากหรือน้อยในขบวนการของ random process, การเข้าถึงช่องสัญญาณแบบ random process protocol ควรมีการตัดสินใจในกรณีเกิดการ แย่งกันส่งในเวลาเดียวกันของผู้ใช้แต่ละราย
หากบังเอิญมีการส่งสัญญานตรวจสอบสายออกมาพร้อมกันมากกว่าหนึ่งเครื่อง จะเกิดการชนกันขึ้น เรียกปรากฎการณ์นี้ว่า Collision คือการชนกันของสัญญาน เมื่อเกิดการชนกันของสัญญานขึ้น เครื่องที่ต้องการส่งจะสุ่มเวลารอคอยใหม่ แล้วจึงจะส่งสัญญานถามออกไปใหม่ ซึ่งเวลาในการรอคอยนั้นๆ จะเป็นเวลาสุ่มซึ่งไม่เท่ากัน ( โดยมีวงจร Random ที่อยู่บนการ์ดแลน เป็นตัวทำงาน ) โดยวิธีการนี้จะแยกเป็น CSMA/CA และ CSMA/CD

การตรวจจับความผิดพลาด(Error detection) และ การแก้ไขความผิดพลาด(Error correction)

* การตรวจจับความผิดพลาดเป็นความสามารถในการตรวจจับความผิดพลาดที่เกิดจาก ถูกรบกวนระหว่างการส่งผ่านจากตัวส่ง(transmitter) ไปยังตัวรับ(receiver)
* การแก้ไขความผิดพลาดเป็นการเพิ่มคุณสมบัติด้านการจำแนกแยกแยะและแก้ไขความผิดพลาดที่เกิดขึ้น
* การตรวจจับความผิดพลาดเกิดขึ้นก่อนการแก้ไขความผิดพลาดเสมอ
วิธีตรวจหาข้อมูลผิดพลาดแบบง่ายที่สุดทำได้โดยใช้ พาริตี้บิต (parity bit) เป็นข้อมูลที่เพิ่มเข้าไป ซึ่งพาริตี้แบ่งได้เป็น 2 ชนิดคือ พาริตี้คี่ (odd parity) และพาริตี้คู่ (even parity) พาริตี้คี่คือจำนวนบิตทั้งหมดที่มีค่าเป็น 1 ของบิตข้อมูล ซึ่งรวมทั้งพาริตี้บิตด้วยจะเป็นจำนวนคี่ เช่น หากข้อมูลมีค่าเป็น 1010101011 แล้ว พาริตี้บิตต้องมีค่าเป็น 1 ทำให้ข้อมูลที่ส่งไปรวมพาริตี้บิตมีค่าเป็น 10101010111 นั่นคือจำนวนบิตทั้งหมดที่มีค่าเป็น 1 มีจำนวน 7 บิตนั่นเอง ส่วนพาริตี้คู่คือจำนวนบิตทั้งหมดที่มีค่าเป็น 1 ของบิตข้อมูลซึ่งรวมทั้งพาริตี้บิตด้วยจะเป็นจำนวนคู่ สำหรับตัวอย่างข้อมูลข้างต้นจะได้ว่า ในกรณีของพาริตี้คู่นั้น ข้อมูลที่ส่งไปรวมพาริตี้บิตมีค่าเป็น 1010101011
ในการหาพาริตี้ทำได้โดยการ XOR ของทุก ๆ บิต เช่น ในกรณีของพาริตี้คู่จะเอาค่า 0 มาทำการ XOR ตั้งแต่บิตแรกจนถึงบิตสุดท้ายของบิตข้อมูล ผลลัพธ์ที่ได้คือค่าพาริตี้บิต และสำหรับพาริตี้คี่นั้นจะนำเอาค่า 1 มาทำการ XOR กับทุกบิตข้อมูล วิธีการหาพาริตี้บิตนี้เป็นวิธีง่าย ๆ และใช้ข้อมูลที่เพิ่มเข้าไปน้อย แต่ประสิทธิภาพของการตรวจหาข้อมูลผิดพลาดจะมีแค่ 50% เท่านั้น กล่าวคือวิธีนี้จะตรวจหาข้อมูลผิดพลาดได้ในกรณีที่จำนวนบิตที่ผิดพลาดเป็นจำนวนคี่เท่านั้น
การเข้ารหัสแบบ LRC (Longitudinal Redundancy Check) การเข้ารหัสแบบ LRC (Longitudinal Redundancy Check) เป็นการนำบล็อกของบิตข้อมูลมาจัดในตาราง(จัดเป็นแถวและหลัก) โดยการนำบล็อกของข้อมูล 32 บิตมาจัดในตารางให้เป็น 4 แถวและ 8 หลัก แล้วทำการตรวจสอบพาริตี้บิตของหลักทุกหลักแล้วจะได้แถวของข้อมูล 8 บิตขึ้นมาใหม่ 1 แถว การทำพาริตี้บิต บิตที่ 1 ในแถวที่ 5 ได้จากการทำพาริตี้คู่ของบิตแรกในทุกๆ แถว, พาริตี้บิต บิตที่ 2 ในแถวที่ 5 ได้จากการทำพาริตี้คู่ของบิตที่ 2 ในทุกๆ แถว และเป็นเช่นนี้จนถึงบิตที่ 8 จากนั้นทำการส่งพาริตี้บิต 8 บิตนี้ต่อจากข้อมูลเดิมส่งไปยังผู้รับ

ข้อแตกต่างระหว่าง Parity bit กับ CRC

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


ข้อเสียของ Parity bit

การใช้ Parity bit คือ เสียเวลา และไม่ได้ประโยชน์เท่าไรนัก เพราะไม่สามารถบอกได้ว่าผิดที่ตำแหน่งตรงไหน และแก้ไขข้อผิดพลาดไม่ได้ บอกได้แค่เพียงว่ามีความผิดพลาดเกิดขึ้นเท่านั้น และ ถ้าสมมติข้อมูลเกิดผิดพลาดทีเดียว 2 บิต เช่น 10001001 เปลี่ยนเป็น 10101011 เราก็ไม่สามารถเช็คข้อผิดพลาดโดยใช้วิธี Parity ได้
cyclic redundancy checking (CRC)

cyclic redundancy checking เป็นวิธีการของการตรวจความผิดพลาดของข้อมูล ที่มีการส่งผ่านระบบการเชื่อมติดต่อ อุปกรณ์การส่งจะประยุกต์ข้อมูลขนาด 16 หรือ 32 บิต แบบ polynomial ไปยังบล๊อคข้อมูล โดยการส่งบิตแบบ polynomial จับผลลัพธ์ cyclic redundancy code (CRC) ไปยังบล๊อคข้อมูล ในด้านการรับประยุกต์ข้อมูลแบบ polynomial และเปรียบเทียบผลลัพธ์ ของด้านรับกับด้านส่ง ถ้ายอมรับ ข้อมูลจะได้รับเรียบร้อย ถ้าไม่ ผู้ส่งจะสามารถแจ้งให้ส่งบล๊อคข้อมูลใหม่

ITU-TS(CCITT) มีมาตรฐานสำหรับ 16 บิต polynomial ที่ใช้การตรวจสอบแบบ cyclic redundancy code (CRC) สำหรับ IBM มีระบบ Synchronous Data Link Control และโปรโตคอลอื่นได้ CRC -16 และ 16 บิตแบบ polynomial ซึ่ง 16 บิตของ cyclic redundancy code จะค้นหาบิตผิดพลาดถึงแบบเดี่ยวและคู่ เพื่อทำให้มั่นใจการค้นหาทำได้ 99.998 % ของความผิดพลาดที่เป็นไปได้ การค้นหาระดับนี้ รับประกันได้อย่างเพียงพอ สำหรับบล๊อคข้อมูลการส่ง 4 KB หรือน้อยกว่า สำหรับการส่งขนาด 32 บิตให้ CRC จะได้รับการส่งขนาดใหญ่ ซึ่งโปรโตคอลของเครือข่ายแบบ LAN คือ Ethernet และ Token ring ใช้ CRC ขนาด 32 - บิต

วิธีการตรวจสอบที่ซับซ้อนน้อยกว่า แต่ความสามารถน้อยกว่า คือ วิธีการ Checksum

CRC Check ใช้หลัก การหารเลขฐาน 2 โดยการเพิ่ม กลุ่มของบิต ต่อท้ายหน่วยข้อมูล เพื่อให้ ผลลัพธ์สามารถหารด้วย จำนวนที่กำหนดไว้ล่วงหน้า (เรียกว่า ตัวหาร –Divisor หรือ กุญแจรหัส) ลงตัวทางด้านรับตรวจสอบ โดยการ หารข้อมูลที่รับได้ด้วย กุญแจรหัส ซึ่งถ้าผลลัพธ์เป็นการหารลงตัวแสดงว่าข้อมูลถูกต้อง มิฉะนั้น แสดงว่าเกิด Error ขึ้น

คุณสมบัติของ CRC มี 2 ประการ
1.ความยาวของ CRC Bits น้อยกว่าของตัวหาร (Divisor) อยู่ 1
2.เมื่อ CRC นำมาต่อท้ายข้อมูลเดิมแล้ว ทำให้หารด้วย Divisor ลงตัว

หลักการคำนวณ Binary Division(คล้ายกับการหารยาวปกติ)
1.ตัวตั้งที่สามารถหารด้วย Divisor ได้ต้องมีจำนวนบิต (ความยาว) เท่ากับตัวหาร และผลหารที่ได้มีค่าเท่ากับ1
2.การลบตัวตั้งด้วยตัวหารในแต่ละขั้น ใช้การลบเลขฐานสองแบบไม่มีตัวทด
3.ถ้าตัวตั้งมีความยาวน้อยกว่า Divisor ผลหารมีค่าเท่ากับ 0 และแทนค่าตัวหารในขั้นตอนนั้น ด้วยเลข 0 ที่มีความยาวเท่ากับ Divisor
4.เศษเหลือในขั้นตอนสุดท้าย เมื่อใช้เลขตัวตั้งครบทุกบิต
การสร้าง CRC Bits สำหรับข้อมูลที่กำหนดให้มีขั้นตอนดังนี้
1.กำหนดให้ความยาวของ CRC เท่ากับ nBits
2.เลือกตัว Divisor ที่มีความยาว n + 1Bits และมีบิตซ้ายมือเท่ากับ 1
3.นำเลข 0 จำนวน nBits มาต่อท้ายข้อมูล
4.หารผลลัพธ์ที่ได้ในข้อ 3 ด้วย Divisor ด้วยวิธี Binary Division
5.เศษที่เหลือคือ CRC – ทำให้มีความยาว nBits โดยเติม 0 ไปด้านซ้ายมือ
6.แทนที่เลข 0 ในข้อ 3 ด้วย CRC Bits ที่ได้ในข้อ 5

Divisor Polynomial
Divisor สำหรับ CRC มักจะแสดงในรูปของฟังก์ชันพหุนาม (Polynomial) เพราะ1.เป็นการแสดงในรูปแบบที่กระชับ สื่อความหมายได้ดี
2.เอื้อประโยชน์ต่อการพิสูจน์การทำ CRC ทางคณิตศาสตร์

พหุนามดีกรีเท่ากับ 7

คุณสมบัติของ Divisor มีดังนี้
1.ต้องหารด้วย x ไม่ลงตัว
2.ต้องหารด้วย x + 1 ลงตัว
3.สามารถ Detect Burst Error ความยาว ≤degree ได้

Checksum
Checksum มีหลักการคล้ายกับ Parity และ CRC ตรงที่มีการใช้ข้อมูลซ้ำซ้อน (Redundancy)หลักการทำงานของ Checksum สามารถอธิบายได้ดังต่อไปนี้
1.ข้อมูลต้นฉบับจะถูกแบ่งออกเป็น Segment ซึ่งมีความยาว n bits(เช่น n = 16)
2.ข้อมูลในแต่ละ segment จะนำมาบวกกันด้วยวิธี One’s Complement ผลลัพธ์ที่ได้จะมีขนาด n bits.
3.ผลลัพธ์ที่ได้ในข้อ 2 จะถูกทำ Complement ซ้ำ แล้วนำไปต่อท้ายข้อมูลต้นฉบับ กลายเป็น Redundant Bits.
4.ข้อมูลต้นฉบับ พร้อมกับ Redundant Bits จะถูกส่งออกไปยังเครื่องรับปลายทาง ผ่านระบบเครือข่าย
Block Diagram
ในการสื่อสารทั่วไป มักจะทำ Checksum กับข้อมูลหลาย segments พร้อมๆ กัน ดังรูป แสดงการทำ Checksum กับข้อมูล k segments แต่ละ segment ยาว n

Check Sum ไม่สามารถตรวจพบ Error ได้ถ้าความผิดพลาดใน segment หนึ่ง สมดุลกับความผิดพลาดในอีก segment หนึ่ง ซึ่งเกิดในตำแหน่งเดียวกัน“จำนวน 1 และ 0 คงที่”

Forward Error Correction (FEC)คือวิธีที่แก้ไข Error อัตโนมัติที่ด้านรับ ทั้งนี้โดยอาศัยกลไกของการเข้ารหัสแบบพิเศษ เรียกว่า Error Correcting Code ซึ่งมีความซับซ้อนมากกว่าการตรวจจับ Error ทั่วไป และต้องการ Redundant Bits มากกว่า

Forward Error Correction
ในทางทฤษฎี Error Correcting Code สามารถแก้ไข Error ได้ทุกชนิด ทุกรูปแบบ เรียกการแก้ไข Error แบบนี้ว่า FECตัวอย่าง Single Bit Errorการตรวจจับและแก้ไข Error ชนิดนี้ ต้องสามารถระบุ “ข่าวสาร”2 ประการ–มี Error เกิดขึ้นหรือไม่ (Detection)–Error ที่เกิดขึ้นนั้น อยูที่ตำแหน่งใด (Identification)เพียงตรวจจับ Error ต้องการ Redundant Bit อีกเพียง 1 บิตเท่านั้นเพื่อระบุว่าชุดข้อมูลนั้นมี Error เกิดขึ้น (1) หรือไม่ (0)แต่การแก้ไข Error นั้นต้องสามารถ “ระบุตำแหน่งที่เกิด Error”(Identification of Invalid Bit) ได้ ซึ่งอุปกรณ์ด้านรับ เพียงกลับค่าบิต ของข้อมูล ณ ตำแหน่งนั้น

วันศุกร์ที่ 7 สิงหาคม พ.ศ. 2552

week 6 : Chapter 4 Cont. Physical Layer

ADSL
เป็น เทคโนโลยีใหม่ที่ปรับปรุง Local loop และใช้ Modem แบบ Synchronous ที่สามารถเปลี่ยนแปลงคู่สายโทรศัพท์ที่ใช้กันอยู่ปัจจุบันให้มีความเร็วใน การส่งข้อมูลมัลติมีเดียด้วยความเร็วสูงได้ โดย ADSL สามารถสื่อสารด้วยความเร็วกว่า 6 Mbps ไปยังผู้ใช้บริการ และได้เร็วถึงกว่า 640 Kbps ในสองทิศทาง ซึ่งอัตราความเร็วดังกล่าวช่วยเพิ่มประสิทธิภาพความจุของสายโทรศัพท์แบบเดิม มากกว่า 50 เท่า โดยไม่ต้องวางสายเคเบิลใหม่ วงจร ADSL นั้นจะเริ่มจากการต่อ ADSL modem เข้าที่ปลายแต่ละด้านของคู่สายโทรศัพท์ที่เป็นสายคู่ตีเกลียว ทำให้เกิดเป็นช่องสื่อสารข้อมูล (Information channel) ขึ้น 3 ช่อง คือช่องสำหรับดาวน์สตรีม (Downstream) ความเร็วสูง ช่องส่งดูเพล็กซ์ (Duplex) ความเร็วปานกลาง และช่องสำหรับให้บริการโทรศัพท์แบบเดิม (POTS:Plain old telephone service) ทั้งนี้ช่องบริการโทรศัพท์แบบเดิมจะถูกแยกออกจากดิจิตอลโมเด็มด้วยฟิลเตอร์ จึงมั่นใจได้ว่าการสนทนาทางโทรศัพท์ตามปกติจะไม่มีการถูกตัดออกแต่อย่างใด

ADSL (Asynchronous Digital Subscriber Line)
ตารางเปรียบเทียบ Bandwidth ADSL
ADSL Upstream ADSL Downstream ระยะทางไกลสุด
150 Kbps 1.5 Mbps 18,000 ฟุต
640 Kbps 6.0 Mbps 12,000 ฟุต

ADSL เป็นกระบวนการจัดการกับสัญญาณแบบดิจิตอลและทำการบีบข้อมูลเพื่อส่งผ่านคู่ สายโทรศัพท์ไปยังปลายทาง และใช้เทคโนโลยีในส่วนของ Transformer Analog Filter และ A/D Converter การทำงานมีลักษณะคล้าย ๆ กับเป็นท่อส่งข้อมูล Synchronous ที่มีอัตราความเร็วขนาดต่าง ๆ ไปบนคู่สายโทรศัพท์ธรรมดา ในกรณีที่ต้องการให้เกิดเป็นช่องสื่อสัญญาณได้หลาย ๆ ช่องนั้น ADSL modem จะทำการแบ่งแถบความถี่ที่ใช้งานของคู่สายโทรศัพท์ออกไปอีก 1 ช่อง มี 2 แบนด์ คือเป็น FDM (Frequency Division Multiplexing) หรือ Echo Cancellation โดย FDM กำหนดให้ใช้แบนด์หนึ่งสำหรับอัพสตรีมข้อมูล และอีกแบนด์หนึ่งสำหรับดาวน์สตรีมจะถูกแบ่งด้วยวิธีการของ TDM (Time Division Multiplexing) เป็นช่องความเร็วสูง 1 ช่องขึ้นไป และช่องความเร็วต่ำ 1 ช่องขึ้นไป ส่วนกรณีของอัพสตรีมจะถูกมัลติเพล็กซ์เข้ากับช่องความเร็วต่ำที่สัมพันธ์กัน สำหรับ Echo Cancellation จะกำหนดให้แบนด์อัพสตรีมเกิดการเหลื่อมกับของดาวน์สตรีม และแยกทั้งสองออกจากกันด้วย local echo cancellation ซึ่งเป็นเทคนิคหนึ่งในโมเด็ม V.32 และ V.34 ส่วนเทคนิคอื่น ๆ นั้น ADSL จะแยกย่านความถี่ 4 KHz ไว้สำหรับใช้กับบริการโทรศัพท์พื้นฐานที่ปลาย DC ของแบนด์ ADSL ขณะทำการรวบรวม data stream ที่เกิดจากการมัลติเพล็กซ์ช่องดาวน์สตรีม ช่องดูเพล็กซ์ และช่องบำรุงรักษาเข้าเป็นบล็อก และใส่รหัส Error Correction เข้าแต่ละบล็อก จากนั้นทางด้านรับจะทำการแก้ไขความผิดพลาดต่าง ๆ ที่เกิดขึ้นในช่วงของการสื่อสัญญาณให้อยู่ในระดับที่รับรู้ได้ด้วยรหัส และความยาวของบล็อก นอกจากนี้ยังทำการสร้างบล็อกพิเศษอีก ด้วยการสอด (interleave) ข้อมูลเข้าไปภายในบล็อกย่อย (subblock) ซึ่งทำให้ภาครับสามารถแก้ไขความผิดพลาดต่าง ๆ ที่เกิดขึ้นได้ เป็นผลทำให้การส่งสัญญาณข้อมูลและภาพเป็นไปได้อย่างมีประสิทธิภาพใกล้เคียง กัน สถาบันมาตรฐานแห่งชาติสหรัฐอเมริกา (ANSI) ได้ให้การรับรองมาตรฐาน ADSL ที่อัตราความเร็วสูงถึง 6.1 Mbps นั้นคือมาตรฐาน ANSI T1.413

เทคโนโลยีของเครือข่าย ADSL มิได้มีไว้เพื่อการ download ข้อมูลจาก Web Page อย่างรวดเร็วเท่านั้น แต่ยังมีศักยภาพในการให้บริการสื่อสารในลักษณะ Broadband สำหรับผู้ใช้งานทั่วไป ซึ่งคำว่า Broadband ในที่นี้หมายถึง การให้บริการสื่อสารที่มีความเร็วเกินกว่า 1-2 Mbps ขึ้นไป (ดังรูปที่ 4)


รูปที่ 4 ภาพแสดงโครงสร้าง Infrastructure ของเครือข่าย ADSL

รูปที่ 4 เป็นการแสดงการเชื่อมต่อ ADSL ในลักษณะเครือข่าย Broadband ซึ่งสถาปัตยกรรมแบบนี้เป็นแบบเรียบง่าย โดยผู้เข้ารับบริการมีเพียง Modem ที่เป็นระบบ ADSL เท่านั้น เสียบเข้ากับ Connector ที่เป็นอุปกรณ์เรียกว่า Splitter หรือ Filter มีลักษณะคล้ายเต้าเสียบสายโทรศัพท์ ซึ่งมี Connector 2 ช่อง โดยช่องหนึ่งสำหรับเสียบสาย Modem ขณะที่อีกช่องหนึ่งสำหรับเสียบเข้ากับสายโทรศัพท์ตามปกติ และสามารถใช้งานได้พร้อม ๆ กันบนสายโทรศัพท์เส้นเดียวกันเท่านั้น (ADSL Modem บางแบบสามารถติดตั้งเข้ากับสายโทรศัพท์ได้เลย ไม่ต้องเชื่อมต่อกับ Splitter) ลักษณะของตัว Splitter หรือ Filter ดังรูปที่ 5 และ 6

รูปที่ 5 ภาพแสดง อุปกรณ์ Splitter


รูปที่ 6 ภาพแสดงการเชื่อมต่อระหว่าง ADSL Modem ที่บ้าน

ผู้ใช้บริการสามารถใช้โครงข่าย ADSL นี้เพื่อการ Access เข้าไปขอรับบริการจากผู้ให้บริการ (Provider) เช่น Internet Provider หรือ ผู้ให้บริการ Video on Demand Server หรือผู้ให้บริการข้อมูลต่าง ๆ เป็นต้น



สถาน ที่รับบริการ ADSL นั้น นอกจากจะต้องมี ADSL Modem แล้ว ยังต้องมีอุปกรณ์เล็ก ๆ ตัวหนึ่งซึ่งได้กล่าวมาแล้วคือ Splitter หรือ Filter ซึ่งอุปกรณ์ตัวนี้จะทำหน้าที่แยกสัญญาณเสียงที่มีความถี่ไม่เกิน 4 KHz สำหรับการส่ง Voice เช่น การพูดคุยโทรศัพท์ ส่วนย่านความถี่ที่เหลือ เช่น 1-2 MHz ขึ้นไป จะถูกกันไว้เพื่อการส่งข้อมูล (Upstream) และรับข้อมูลเข้ามา (Downstream) โดยที่ Splitter สามารถแยกสัญญาณทั้ง 3 ออกจากกัน ดังนั้นท่านสามารถคุยโทรศัพท์ขณะที่ยังสามารถ Download ข้อมูลจากอินเทอร์เน็ตพร้อมกันได้



ส่วนที่ศูนย์บริการระบบ ADSL นั้น เราเรียกว่า CO หรือ Central Office ซึ่งอาจเป็นของผู้ให้บริการ ADSL หรือไม่ก็อาจเป็นชุมสายโทรศัพท์เสียเองก็ได้ จะทำหน้าที่รับเอาสัญญาณ Voice Service (เสียงพูดโทรศัพท์) เข้ามาที่ตัว Voice Switch ซึ่งอาจรวมทั้ง Data ก็ได้ โดยสัญญาณทั้งสองจะมาสิ้นสุดที่อุปกรณ์ที่เรียกว่า Splitter ชุดใหญ่ที่ศูนย์ให้บริการแห่งนี้ ลักษณะนี้จะเห็นได้ว่าเส้นทาง Local Loop (เส้นทางการเชื่อมต่อระหว่างผู้ให้บริการกับผู้รับบริการ) จะไปสิ้นสุดที่ Access Node แทนที่จะเป็น CO Switch (คำว่า Access Node ในที่นี้หมายถึงอุปกรณ์ที่ใช้เพื่อสลับสัญญาณ ADSL หรือที่เรียกว่า DSLAM (DSL Access Multiplexer ส่วน CO Switch หรือ Voice Switch หมายถึงระบบสลับสัญญาณเพื่อให้บริการระบบโทรศัพท์)



หน้าที่ ของ DSLAM ได้แก่การสลับสัญญาณ ADSL ที่เข้ามาพร้อม ๆ กันหลายช่อง โดยผ่านเข้ามาทางชุด Splitter ในศูนย์ผู้ให้บริการให้สามารถออกไปที่เอาท์พุทปลายทาง ซึ่งในที่นี้ได้แก่ผู้ให้บริการระบบเครือข่ายต่าง ๆ เช่น ISP หรือผู้ให้บริการ Video on Demand หรือศูนย์ให้บริการข้อมูลข่าวสารต่าง ๆ หรือสำนักงานใหญ่ของหน่วยงานธุรกิจภาคเอกชนก็ได้ (ดังรูปที่ 7)



รูปที่ 7 ภาพแสดงลักษณะของ DSLAM

week 5 : Chapter 3 Cont. & Chapter 4 Data Link Layer, Physical Layer

Datalink Layer
ชั้น Datalink เป็นชั้นที่อธิบายถึงการส่งข้อมูลไปบนสื่อกลาง ชั้นนี้ยังได้ถูกแบ่งออกเป็นชั้นย่อย (SubLayer) คือ Logical Link Control (LLC) และ Media Access Control (MAC) การแบ่งแยกเช่นนี้จะทำให้ชั้น LLC ชั้นเดียวสามารถจะใช้ชั้น MAC ที่แตกต่างกันออกไปได้หลายชั้น ชั้น MAC นั้นเป็นการดำเนินการเกี่ยวกับแอดเดรสทางกายภาพอย่างที่ใช้ในมาตรฐานอีเทอร์เน็ตและโทเคนริง แอดเดรสทางกายภาพนี้จะถูกฝังมาในการ์ดเครือข่ายโดยบริษัทผู้ผลิตการ์ดนั้น แอดเดรสทางกายภาพนั้นเป็นคนละอย่างกับแอดเดรสทางตรรกะ เช่น IP Address ที่จะถูกใช้งานในชั้น Network เพื่อความชัดเจนครบถ้วนสมบูรณ์ของการใช้ชั้น Data-Link นี้
Access Control Sestem
ระบบ Access Control เป็นระบบที่ควบคุมการเข้า หรือ ออก อัตโนมัติ โดยใช้บัตรเป็น อุปกรณ์สำหรับเข้าผ่าน โดยที่เครื่องควบคุม จะประกอบด้วย ส่วน 2 ส่วน หลักคือ ส่วนควบคุม (Controller) การทำงาน และส่วนของ หัวอ่านบัตร (Reader) โดยเครื่องควบคุมจะอ่านข้อมูลในบัตร หากข้อมูลถูกต้อง
การ Polling คือเลือกถามตามคิว เช่น มี Terminal อยู่ 3 เครื่อง Polling จะถาม Terminal1
ว่ามีข้อมูลไหม ถ้าไม่มีก็หมดสิทธิ์ผ่านไป ถาม Terminal2 ว่ามีข้อมูลไหม ถ้ามีก็จะถ่ายข้อมูลมาให้ Polling
* รับข้อมูลจาก Terminal
Noiseless Channel ใช้สมการของ Nyquist Bit Rate เมื่อไม่มีสัญญาณรบกวน. Noiseless Channel: Nyquist Bit Rate. Bit Rate = 2 ×Bandwidth ×log2L.
Error detection & correction

เรื่อง การส่งผ่านข่าวสารอนาลอก (Analog Transmission)

การส่งผ่านข่าวสารอนาลอก เป็นวิธีส่งสารสนเทศโดยใช้สัญญาณต่อเนื่องที่มีหลายระดับเป็นคุณสมบัติสำคัญ

ข้อ ด้อยที่สำคัญของการส่งผ่านข้อมูลข่าวสารด้วยระบบดิจิตอล ได้แก่ ต้องใช้ตัวกลางประเภท Low – Pass ซึ่งมี Bandwidth กว้างมาก ซึ่งหาก Bandwidth มีจำกัด การส่งผ่านด้วยระบบอนาลอก ซึ่งมีคุณสมบัติเป็นสัญญาณ Band – Pass เป็นทางเลือกที่น่าสนใจ กระบวนการแปลงสัญญาณดิจิตอล (Low – Pass) ให้เป็นอนาลอก (Band – Pass) เรียกว่า การผสมสัญญาณ (Modulation)

ในบทนี้จะกล่าวถึง
-วิธีการผสมสัญญาณของข้อมูลเลขฐานสอง
-อุปกรณ์ในการผสมสัญญาณ
-การผสมสัญญาณของสัญญาณอนาลอก ประเภท Low - Pass

Modulation of Digital Data
การ ผสมสัญญาณของข้อมูลเลขฐานสอง หรือ Digital-to-Analog Modulation คือการเปลี่ยนคุณสมบัติ ของสัญญาณอนาลอก ตามข่าวสารที่ปรากฏในสัญญาณดิจิตอล (ตามข้อมูลเลขฐานสอง)
เหตุผลที่ต้องมีการทำการผสมสัญญาณของข้อมูลเลขฐานสอง ที่สำคัญมีดังต่อไปนี้
•ส่วน ของสัญญาณดิจิตอล ที่มีนัยสำคัญอยู่ในย่านความถี่ต่ำ มีพลังงานน้อย ไม่สามารถส่งได้ไกลเท่ากับสัญญาณอนาลอก ที่มีปริมาณข่าวสารเท่ากัน
•สัญญาณดิจิตอล มีแถบความถี่ช่วงกว้างมาก ไม่สามารถผ่านไปในตัวกลางได้ทั้งหมด อาจทำให้ด้านรับเกิดข้อผิดพลาดได้
•ออกแบบระบบทวนสัญญาณด้วยอนาลอกได้ง่ายกว่า
•ความ ถี่สัญญาณอนาลอก ที่ใช้ในการ Modulation ไม่มีเงื่อนไขขอบเขตบน ดังนั้น ยิ่งมีความถี่สูงมาก ก็ออกแบบสายอากาศที่มีขนาดเล็กลงได้มาก (ตามข้อจำกัดทางเทคโนโลยีของอุปกรณ์ครับท่าน)

จากนิยามของการผสมสัญญาณดังกล่าวข้างต้น เราเรียกสัญญาณอนาลอก ว่าสัญญาณพาหะ (Carrier Signal) นั้นต้องมี
-ความถี่สูงกว่า
-อัตรา การเปลี่ยนแปลงของข้อมูลเลขฐานสอง ในสัญญาณดิจิตอล จากสมการของ Simple Signal องค์ประกอบ (Characteristics) ที่สามารถเปลี่ยนแปลงได้ คือ ขนาด (A) ความถี่ (f) เฟส หรือ ทั้งขนาดและเฟส โดยเรียกการผสมสัญญาณเหล่านี้ว่า ASK FSK PSK หรือ QAM ตามลำดับ

นิยามของอัตราบิตและอัตราบอด
การผสมสัญญาณมักกล่าวถึงบิต (Bit) และบอด (Baud)

นิยามต่อไปนี้เปรียบเทียบให้เห็นความแตกต่างระหว่างตัวแปรทั้งสอง
-อัตราบิต (Bit Rate) คือ จำนวนของ Bits ข้อมูลที่ส่งได้ใน 1 หน่วยเวลา (1 วินาที)
-อัตราบอด (Baud Rate) คือ จำนวนของสัญลักษณ์ (Symbols หรือ Signal Units) ที่ส่งได้ใน 1 หน่วยเวลา (1 วินาที) โดยที่ สัญลักษณ์แต่ละหน่วย สามารถใช้นำเสนอข้อมูลได้ตั้งแต่ 1 บิตขึ้นไป ในการสื่อสารมักใช้ Baud Rate เป็นดัชนีชี้วัดประสิทธิภาพในการถ่ายโอนข้อมูลระหว่างจุดสองจุด และพิจารณา Bandwidth ที่จำเป็นในการส่งสัญญาณ ความสัมพันธ์ระหว่างตัวแปรทั้งสองตัว ขึ้นอยู่กับจำนวนของบิตต่อสัญลักษณ์ ดังต่อไปนี้


ความสัมพันธ์ระหว่าง Bit Rate และ Baud Rate

Baud Rate = (Bit Rate) / (Number of Bits per Signal Unit) (Bauds)
Bit Rate = (Baud Rate) x (Number of Bits per Signal Unit) (Bits per Second)


เพื่อให้เข้าใจ จะเปรียบเทียบการสื่อสารกับการขนส่ง
สมมติให้ Baudคือรถโดยสาร
Bit คือผู้โดยสาร
เนื่องจากรถ 1 คันบรรทุกผู้โดยสารได้หลายคน เช่น ถ้ารถ 1 คันบรรทุกได้ 1 คน รถ 1000 คัน จะบรรทุกได้ 1000 คน
แต่ถ้ารถ 1 คันบรรทุกได้ 4 คน รถ 1000 คัน จะบรรทุกได้ 4000 คน
สังเกตว่าปริมาณการจราจรขึ้นอยู่กับ จำนวนรถ ไม่ใช่ จำนวนผู้โดยสาร ขนาดของถนนจึงขึ้นอยู่กับ จำนวนรถ เท่านั้น
ดังนั้น Bandwidth ของการสื่อสารจึงขึ้นอยู่กับ Baud Rate


Amplitude Shift Keying (ASK)
ASK คือการเปลี่ยนความสูง (ระดับ) ของสัญญาณ ตามบิตข้อมูล
เช่น ระดับ A0 เมื่อข้อมูลเป็น 0 (ถ้า A0 = 0 เรียกว่า On/Off Keying - OOK) และ ระดับ A1 เมื่อข้อมูลเป็น 1
จุดเด่นของ ASK คือสามารถออกแบบได้ง่าย เนื่องจากเป็นการคูณกันของฟังก์ชัน 2 ชนิด ดังสมการด้านล่าง ทำให้การคำนวณคุณสมบัติไม่ซับซ้อน
จุดด้อยของ ASK คือ มีภูมิต้านทานต่อสัญญาณรบกวนต่ำ อาจเกิดความผิดพลาดในการสื่อสารได้ง่าย

Frequency Shift Keying (FSK)
FSK คือการเปลี่ยน ความถี่ ของสัญญาณพาหะ ตามบิตข้อมูล

จุด เด่นของ FSK คือ มีภูมิต้านทานต่อสัญญาณรบกวนมากกว่าวิธี Modulation แบบ ASK เนื่องจากอุปกรณ์ด้านรับ มองหา ความถี่เฉพาะ ที่อยู่ในช่วงเวลาหนึ่งๆ โดยไม่สนใจ Noise กระชากระยะสั้น (Transient Noise)

จุดด้อยของ FSK คือ ต้องการ Bandwidth กว้างกว่าวิธี Modulation แบบ ASK เมื่อส่งข้อมูลที่มี Baud Rate เท่ากัน