Checkpoint 2 — แนวคิดเรื่อง Ethernet
ข้อสอบรวม Module 4–7 — ชั้นกายภาพ สื่อกลาง เฟรม MAC address ตาราง MAC วิธีสวิตช์เฟรม และ ARP 65 ข้อ แปลไทยครบทุกตัวเลือกพร้อมเฉลยว่าทำไมข้ออื่นผิด
โหมดอ่าน = เห็นเฉลยทุกข้อทันที เหมาะกับรอบแรก · โหมดทำข้อสอบ = กดเลือกคำตอบเอง แล้วค่อยเฉลย พร้อมนับคะแนน (คำตอบถูกบันทึกไว้ในเครื่อง) · ทุกข้อกดดู โจทย์ภาษาอังกฤษต้นฉบับ ได้ เพราะข้อสอบจริงอาจเป็นภาษาอังกฤษ
สรุปสาระสำคัญก่อนลงมือทำ
ชุดนี้คือ Checkpoint Exam: Ethernet Concepts (Modules 4–7) รวมเรื่อง ชั้นกายภาพ (สื่อกลาง สาย สัญญาณรบกวน) + ชั้น data link (เฟรม โทโพโลยี การเข้าใช้สื่อกลาง) + Ethernet และการสวิตช์ (MAC address ตาราง MAC วิธี forward) เกือบทั้งหมดเป็นข้อสอบ “จำนิยาม + แยกคำที่คล้ายกัน” ไม่มีคำนวณ ถ้าจำตารางทั้ง 9 หัวข้อข้างล่างได้ก็เก็บได้เกือบเต็ม เนื้อหาเชิงลึกอ่านต่อที่ บท 8 อุปกรณ์ · บท 14 Ethernet · บท 17 ARP
1. Ethernet MAC frame — ทุกฟิลด์ ต้องจำขนาดได้
| ฟิลด์ | ขนาด | อยู่ส่วนไหน | หน้าที่ |
|---|---|---|---|
| Preamble | 7 ไบต์ | นำหน้าเฟรม | ลาย 10101010 ซ้ำ ๆ ใช้ ซิงค์นาฬิกา ของผู้รับกับผู้ส่ง |
| SFD (Start Frame Delimiter) | 1 ไบต์ | นำหน้าเฟรม | 10101011 — บอกว่า “เฟรมจริงเริ่มตรงนี้” |
| Destination MAC | 6 ไบต์ | header | ปลายทางบนเซกเมนต์นี้ — สวิตช์ใช้ตัดสินว่าจะส่งออกพอร์ตไหน |
| Source MAC | 6 ไบต์ | ต้นทางบนเซกเมนต์นี้ — สวิตช์ใช้ตัวนี้เรียนรู้และสร้างตาราง MAC | |
| Type / Length | 2 ไบต์ | บอกโพรโตคอลชั้น 3 ที่ห่ออยู่ข้างใน — 0x0800 = IPv4, 0x86DD = IPv6, 0x0806 = ARP (ฟิลด์นี้คือส่วนที่ LLC ใส่ให้) | |
| Data / Payload | 46–1500 ไบต์ | ตัวข้อมูล | PDU ชั้น 3 ทั้งก้อน (IP header + ข้อมูล) · ถ้าสั้นกว่า 46 ต้อง เติม padding |
| FCS (Frame Check Sequence) | 4 ไบต์ | trailer | เก็บค่า CRC — ผู้รับคำนวณใหม่แล้วเทียบ ไม่ตรง = ทิ้งเฟรม (ไม่ซ่อม ไม่ขอส่งใหม่) |
ขนาดเฟรม Ethernet = 64 ถึง 1518 ไบต์ (นับตั้งแต่ Destination MAC ถึง FCS ไม่นับ preamble/SFD) · เล็กกว่า 64 = runt / collision fragment → ทิ้ง · ใหญ่กว่า 1518 = jumbo / giant → ทิ้ง · MTU ของ Ethernet = 1500 ไบต์ (ขนาด payload สูงสุด) · เฟรมทุกชนิดในโลกมี 3 ส่วนเหมือนกันเสมอ: header → data → trailer
2. MAC address — 48 บิต และการอ่านชนิดของแอดเดรส
MAC address ยาว 48 บิต = 6 ไบต์ = เลขฐานสิบหก 12 ตัว เผาไว้ใน ROM ของ NIC (จึงเรียก burned-in address / physical address) แบ่งครึ่งเป็น
| ครึ่งหน้า 24 บิต | ครึ่งหลัง 24 บิต |
|---|---|
| OUI (Organizationally Unique Identifier) — IEEE แจกให้ผู้ผลิตแต่ละราย ดูจากตรงนี้ก็รู้ว่าใครผลิต | เลขประจำตัวที่ผู้ผลิตกำหนดเอง ห้ามซ้ำภายในยี่ห้อเดียวกัน |
| ชนิด | หน้าตา | ใครรับ | สวิตช์ทำอย่างไร |
|---|---|---|---|
| Unicast | MAC ของเครื่องนั้นโดยเฉพาะ เช่น 5C-26-0A-4B-19-3E | เครื่องเดียว | ถ้ามีในตาราง MAC → ส่งออกพอร์ตนั้นพอร์ตเดียว (forward) · ถ้าไม่มี → flood ออกทุกพอร์ต ยกเว้นพอร์ตที่รับเข้ามา |
| Multicast | ขึ้นต้นด้วย 01-00-5E (สำหรับ IPv4 multicast) เช่น 01-00-5E-00-00-03 | กลุ่มที่สมัครไว้ | flood ออกทุกพอร์ต ยกเว้นพอร์ตขาเข้า (ถ้าไม่มี IGMP snooping) |
| Broadcast | FF-FF-FF-FF-FF-FF (48 บิต เป็น 1 ทั้งหมด) | ทุกเครื่องใน LAN/VLAN เดียวกัน | flood ออกทุกพอร์ต ยกเว้นพอร์ตขาเข้า เสมอ ไม่ต้องเปิดตาราง MAC ดูเลย |
คำถามชอบถามสองแบบสลับกัน อ่านให้ดีว่าถาม “a switch receives…” หรือ “a host receives…”
• สวิตช์ ได้เฟรม broadcast/multicast → flood ออกทุกพอร์ตยกเว้นพอร์ตขาเข้า
• โฮสต์ ได้เฟรม broadcast → ประมวลผลเฟรมนั้นเอง (process) — โฮสต์ ไม่เคย forward หรือ flood เฟรมต่อให้ใคร
• โฮสต์ ได้เฟรม unicast ที่ปลายทางไม่ใช่ MAC ตัวเอง → ทิ้ง (discard) ทันที ไม่ส่งต่อ ไม่ตอบกลับ
3. สวิตช์ทำงานอย่างไร — learn / flood / forward / filter
| ขั้น | ดูฟิลด์ไหน | ทำอะไร |
|---|---|---|
| 1. Learn (เรียนรู้) | Source MAC | จด “MAC ต้นทาง ↔ พอร์ตที่รับเข้ามา” ลงตาราง MAC (CAM table) • ถ้ายังไม่มีในตาราง → เพิ่มรายการใหม่ • ถ้ามีอยู่แล้ว → รีเฟรช aging timer ของรายการนั้น (ไม่สร้างรายการซ้ำ) รายการที่ไม่ถูกใช้จนหมดเวลา (ปกติ 5 นาที) จะถูกลบทิ้ง |
| 2. Forward (ส่งต่อ) | Destination MAC | เจอในตาราง → ส่งออก เฉพาะพอร์ตนั้น |
| 3. Flood (กระจาย) | Destination MAC | ไม่เจอในตาราง (unknown unicast) หรือเป็น broadcast/multicast → ส่งออก ทุกพอร์ตยกเว้นพอร์ตขาเข้า |
| 4. Filter (กรอง) | Destination MAC | ปลายทางอยู่ พอร์ตเดียวกับที่รับเข้ามา → ไม่ต้องส่งไปไหน ทิ้งเฟรมนั้น |
Memory buffering — สวิตช์พักเฟรมไว้ในบัฟเฟอร์ก่อนส่งออก มี 2 แบบ:
Port-based buffering
แต่ละพอร์ตมีคิวของตัวเอง ข้อเสียคือ เฟรมหัวคิวที่ติดพอร์ตปลายทางที่ยุ่งอยู่จะบล็อกเฟรมทั้งคิว
Shared memory buffering
ทุกพอร์ตใช้บัฟเฟอร์ก้อนเดียวกัน จำนวนเฟรมที่เก็บได้จำกัดด้วยขนาดหน่วยความจำรวม ไม่ใช่ต่อพอร์ต — เหมาะกับ asymmetric switching (พอร์ตความเร็วต่างกัน เช่น รับจาก 1000BASE-T ส่งออก 100BASE-T) เพราะดร็อปเฟรมน้อยกว่า
4. วิธีตัดสินใจส่งเฟรม — store-and-forward vs cut-through
| วิธี | รอรับแค่ไหนก่อนส่งต่อ | ตรวจ error (CRC/FCS) ไหม | Latency |
|---|---|---|---|
| Store-and-forward | ทั้งเฟรม | ตรวจ — เฟรมเสียถูกทิ้ง ไม่ปล่อยออกเครือข่าย · จำเป็นสำหรับการวิเคราะห์ QoS | สูงสุด |
| Cut-through (แม่ของสองแบบล่าง) | แค่บางส่วน | ไม่ตรวจ — เฟรมเสียหลุดออกไปได้ | ต่ำ |
| ↳ Fast-forward | แค่ 6 ไบต์แรก คือ Destination MAC | ไม่ตรวจ | ต่ำที่สุด |
| ↳ Fragment-free | 64 ไบต์แรก (กรอง collision fragment ออกได้) | ไม่ตรวจ CRC เต็มเฟรม | ต่ำ (สูงกว่า fast-forward เล็กน้อย) |
ท่องสั้น ๆ: อยากได้ความถูกต้อง = store-and-forward · อยากได้ความเร็ว (HPC) = cut-through/fast-forward · ข้อไหนพูดถึง “CRC” หรือ “ตรวจ error” คำตอบคือ store-and-forward เสมอ
5. Duplex และ auto-MDIX
| โหมด | ทำอะไรได้ | ต้องแย่งสื่อกลางไหม |
|---|---|---|
| Half-duplex | ส่งหรือรับได้ทีละทิศ ผลัดกัน | ต้อง — ใช้ CSMA/CD ตรวจจับการชน (collision) ยังมี collision domain |
| Full-duplex | ส่งและรับพร้อมกัน ใช้คู่สาย/เส้นใยคนละเส้นสำหรับแต่ละทิศ | ไม่ต้อง — ไม่มีการชน CSMA/CD ถูกปิด ได้แบนด์วิดท์เต็มทั้งสองทาง |
Auto-MDIX = ความสามารถของอินเทอร์เฟซในการ ตรวจว่าฝั่งตรงข้ามต้องใช้สาย straight-through หรือ crossover แล้วสลับขา TX/RX ให้เอง จึงเสียบสายอะไรก็ติด (เปิดใช้เป็นค่าเริ่มต้นบนสวิตช์รุ่นใหม่ · สั่งเองด้วย mdix auto)
ระวังสับสน: auto-MDIX = เรื่องชนิดสาย · autonegotiation = เรื่องความเร็วและduplex — คนละอย่างกัน
ติดปกติ เพราะ auto-MDIX เปิดอยู่แล้ว ไม่ต้องเปลี่ยนเป็น crossover · แล้ว autonegotiation จะเจรจาได้ ความเร็วสูงสุดที่ทั้งสองฝั่งรองรับร่วมกัน (ไม่ใช่ต่างคนต่างวิ่งความเร็วตัวเอง) และได้ full-duplex
6. ชั้น data link แบ่งเป็น 2 sublayer — LLC กับ MAC
| LLC (Logical Link Control) | MAC (Media Access Control) | |
|---|---|---|
| มาตรฐาน | IEEE 802.2 | IEEE 802.3 (Ethernet), 802.11 (Wi-Fi) |
| ทำด้วยอะไร | ซอฟต์แวร์ (ไดรเวอร์ NIC) | ฮาร์ดแวร์ (วงจรใน NIC) |
| คุยกับใคร | ชั้นบน (network layer) | ชั้นล่าง (physical layer / สื่อกลาง) |
| หน้าที่ (ออกสอบซ้ำ ๆ) | • ใส่ข้อมูลควบคุมชั้น 2 ลงใน PDU ของโพรโตคอลชั้นเครือข่าย • ใส่ฟิลด์ระบุว่าเฟรมนี้ห่อโพรโตคอลชั้น 3 ตัวไหน • ⇒ ทำให้ IPv4 และ IPv6 ใช้ network interface และสื่อกลางเดียวกันได้ | • ควบคุม NIC ที่รับ-ส่งข้อมูลบนสื่อกลางจริง • ใส่ trailer (FCS/CRC) เพื่อตรวจจับข้อผิดพลาด • ใส่ MAC address (data link addressing) และ preamble/delimiter เพื่อ synchronization • ผนวกเทคโนโลยีทางกายภาพหลากหลายชนิดเข้าด้วยกัน (integrates various physical technologies) • กำหนดกฎการเข้าใช้สื่อกลาง เช่น CSMA/CD |
มีคำถาม “Which two functions are performed at the LLC / MAC sublayer?” หลายข้อ ตัวเลือกสลับกันไปมา ท่องเป็นคู่ ๆ ไปเลย:
LLC = “ใส่ control info ชั้น 2 ให้ PDU ชั้น 3” + “บอกว่าเป็นโพรโตคอลชั้น 3 ตัวไหน” + “ให้ IPv4/IPv6 ใช้ interface เดียวกันได้”
MAC = “คุม NIC ที่รับ-ส่งบนสื่อกลาง” + “ใส่ trailer ตรวจ error” + “ให้ data link addressing” + “delimit ฟิลด์ในเฟรม” + “ผนวกเทคโนโลยีกายภาพหลายชนิด” + “ทำ data encapsulation”
7. การเข้าใช้สื่อกลาง โทโพโลยี และ CSMA/CD
| วิธีเข้าใช้สื่อกลาง | หลักการ | ใช้ที่ไหน |
|---|---|---|
| Contention-based (แย่งกัน) | ใครอยากส่งก็ส่ง แต่ต้องฟังก่อน ชนแล้วค่อยแก้ — มี collision ได้ | CSMA/CD = Ethernet มีสาย (half-duplex) · CSMA/CA = 802.11 ไร้สาย |
| Controlled access (ผลัดกัน) = deterministic | แต่ละเครื่องมี “ตา” ของตัวเอง — ไม่มี collision เลย แต่ประสิทธิภาพตกเมื่อบางเครื่องไม่มีอะไรจะส่ง | Token Ring, Token Bus (ของเก่า) |
CSMA/CD ทำงานทีละขั้น: 1 ทุกเครื่องต้องฟังก่อนส่งเสมอ (carrier sense) → 2 ว่างจึงส่ง พร้อมฟังต่อไปด้วย → 3 ถ้าตรวจพบการชน ส่ง jam signal ให้ ทุกเครื่อง รู้ → 4 เครื่องที่ชนกันเข้าสู่ backoff แบบสุ่ม (ไม่มีใครได้สิทธิ์ก่อน) แล้วลองใหม่
| โทโพโลยี | ลักษณะ |
|---|---|
| Star | อุปกรณ์ปลายทางทุกตัวต่อเข้าอุปกรณ์ตัวกลางศูนย์กลางตัวเดียว |
| Extended star | ดาวหลายวงต่อเข้าด้วยกัน — อุปกรณ์ตัวกลางศูนย์กลางต่อไปยังอุปกรณ์ตัวกลางศูนย์กลางตัวอื่นอีกที (LAN องค์กรจริงเป็นแบบนี้) |
| Full mesh | ทุกจุดต่อถึงทุกจุด — ทนทานที่สุด แพงที่สุด |
| Partial mesh | เชื่อมสาขาบางแห่ง (ไม่ใช่ทุกแห่ง) เข้าหากัน ได้ high availability โดยไม่ต้องลากครบทุกคู่ |
| Hub and spoke | สาขาทั้งหมดต่อเข้าศูนย์กลางจุดเดียว ไม่มีเส้นทางสำรอง |
| Point-to-point | ลิงก์เดี่ยวระหว่างอุปกรณ์สองตัว |
8. ชั้นกายภาพ — ศัพท์ 4 ตัวที่สับสนที่สุด และสื่อกลาง 3 ชนิด
| ศัพท์ | นิยาม | คีย์เวิร์ดในโจทย์ |
|---|---|---|
| Bandwidth | ความจุสูงสุดในทางทฤษฎีของสื่อกลาง วัดเป็น bps/Mbps/Gbps | “capacity at which a medium can carry data” |
| Throughput | อัตราการส่งบิตที่วัดได้จริงในช่วงเวลาหนึ่ง — ต่ำกว่า bandwidth เสมอ เพราะปริมาณ traffic ชนิด traffic และ latency ของอุปกรณ์ที่ต้องผ่าน | “measure of the transfer of bits across a medium over a given period of time” |
| Goodput | ข้อมูลที่ใช้ได้จริง (payload ของแอป) ต่อหน่วยเวลา = throughput ลบ overhead ของ header และการส่งซ้ำ | “usable data” |
| Latency | เวลาทั้งหมดรวมดีเลย์ที่ข้อมูลใช้เดินทางจากจุดหนึ่งไปอีกจุดหนึ่ง | “amount of time, including delays” |
| Modulation | กระบวนการที่คลื่นหนึ่ง (สัญญาณข้อมูล) ไป แก้ไขคุณสมบัติ (amplitude / frequency / phase) ของอีกคลื่นหนึ่ง (carrier) | “one wave modifies another wave” |
bandwidth > throughput > goodput เสมอ
| สื่อกลาง | ส่งอะไร | เด่น | ด้อย | ใช้ที่ไหน |
|---|---|---|---|---|
| Copper cable (UTP/STP/coax) | พัลส์ไฟฟ้า | ถูก ติดตั้งง่าย | โดน EMI/RFI และ crosstalk · attenuation ไวตามระยะ (UTP จำกัด 100 ม.) | horizontal cabling, PC ตั้งโต๊ะในสำนักงาน |
| Fiber-optic cable | พัลส์แสง | ภูมิคุ้มกัน EMI/RFI 100% · แบนด์วิดท์สูงสุด · ไปได้ไกลสุด | แพงกว่า ต้องใช้ทักษะและอุปกรณ์เฉพาะ ปลายสายเปราะ | backbone ในองค์กร, เครือข่ายระยะไกล (long-haul), ใต้ทะเล |
| Air (ไร้สาย) | คลื่นวิทยุ / ไมโครเวฟ | ไม่ต้องเดินสาย เคลื่อนที่ได้ | ครอบคลุมจำกัด โดน RFI แชร์สื่อกลาง มีปัญหาความปลอดภัย | guest access ในร้านกาแฟ, ห้องพักคอยในโรงพยาบาล |
| ปัญหาสัญญาณ | เกิดจากอะไร |
|---|---|
| Attenuation | สัญญาณอ่อนลงเมื่อระยะทางเพิ่มขึ้น — แก้ด้วยการจำกัดความยาวสาย หรือใช้ repeater |
| Crosstalk | สนามแม่เหล็กรอบเส้นลวดที่มีกระแสไหล ไปเหนี่ยวนำสัญญาณเข้าคู่สายข้าง ๆ ในสายเดียวกัน — แก้ด้วยการ บิดเกลียวคู่สายที่กระแสไหลสวนทางกัน ให้สนามหักล้าง (cancellation) |
| EMI / RFI | สัญญาณรบกวนจากภายนอก เช่น มอเตอร์ หลอดฟลูออเรสเซนต์ เตาไมโครเวฟ โทรศัพท์ไร้สาย — แก้ด้วย shielding, grounding หรือใช้ fiber |
| ชนิดสาย | หน้าตา | ชนิดสาย UTP | ใช้ต่ออะไร |
|---|---|---|---|
| UTP | 4 คู่สีบิดเกลียว หุ้มปลอกพลาสติกอ่อน ไม่มีฟอยล์/ลวดถัก | Straight-through | PC ↔ สวิตช์, สวิตช์ ↔ router (อุปกรณ์ต่างชนิด) |
| STP | 4 คู่ แต่ละคู่ห่อฟอยล์ แล้วห่อรวมด้วยลวดถัก/ฟอยล์อีกชั้น | Crossover | อุปกรณ์ชนิดเดียวกัน: สวิตช์ ↔ สวิตช์, PC ↔ PC, router ↔ router |
| Coax | แกนทองแดงเส้นเดียว หุ้มฉนวน แล้วหุ้มตัวนำชั้นนอก | Rollover | สายคอนโซล (Cisco proprietary) — PC ↔ พอร์ต console ของ router/switch |
| Fiber | เส้นใยแก้วใสบางมาก หุ้มพลาสติก มาเป็น คู่ (TX + RX) หัวต่อ ST/SC/LC | ปลายสาย UTP ต้องปอกเกลียวออกให้ สั้นที่สุด และย้ำปลอกพลาสติกไว้ในหัว RJ-45 — มองจากใต้หัวต้อง ไม่เห็นลวดสีเปลือย | |
9. ARP — หา MAC จาก IP
โฮสต์รู้ IP ปลายทาง แต่ต้องใส่ MAC ปลายทางลงเฟรมถึงจะส่งได้ ARP คือกลไกที่แปลง IP → MAC
| ข้อความ | Destination MAC | ส่งแบบไหน | ใครตอบ |
|---|---|---|---|
| ARP request | FF-FF-FF-FF-FF-FF | broadcast ทั้ง LAN — “ใครถือ IP นี้ ช่วยบอก MAC ที” | ทุกเครื่องรับไปดู แต่ มีเจ้าของ IP นั้นเครื่องเดียวที่ตอบ |
| ARP reply | MAC ของผู้ถาม | unicast ตอบกลับเฉพาะผู้ถาม | — |
ผลลัพธ์ถูกเก็บใน ARP table / ARP cache (ดูด้วย arp -a บน PC หรือ show ip arp บน router) แต่ละรายการมีอายุ หมดอายุแล้วถูกลบ ต้อง ARP ใหม่
เมื่อปลายทางอยู่ต่างเครือข่าย ผู้ส่งจะ ARP หา MAC ของ default gateway ไม่ใช่ MAC ของปลายทางจริง · ดังนั้นตลอดเส้นทาง Source/Destination IP คงเดิมตั้งแต่ต้นจนจบ แต่ Source/Destination MAC ถูกเขียนใหม่ทุกครั้งที่ข้าม router · เจอโจทย์ถาม “destination MAC ตอนเฟรมออกจากเครื่อง X” ให้ถามตัวเองก่อนว่า “ปลายทางอยู่ subnet เดียวกันไหม” — ถ้าไม่ ตอบ MAC ของ gateway ฝั่งเดียวกับเครื่องนั้น · ARP request ที่เยอะเกินไปทำให้เกิด broadcast storm และ ARP มีช่องโหว่ให้ทำ ARP spoofing/poisoning ได้ เพราะไม่มีการยืนยันตัวตน
• เฟรม Ethernet = 64–1518 ไบต์ · MAC = 48 บิต · FCS = 4 ไบต์ ใน trailer · • สวิตช์เรียนรู้จาก source MAC ตัดสินใจส่งจาก destination MAC · • เจอ source MAC ที่มีอยู่แล้ว = รีเฟรช timer ไม่ใช่เพิ่มรายการใหม่ · • สวิตช์เจอ FF:FF:FF:FF:FF:FF หรือ 01:00:5E… = flood ทุกพอร์ตยกเว้นพอร์ตขาเข้า · • โฮสต์เจอ broadcast = process · โฮสต์เจอ unicast ที่ไม่ใช่ของตัวเอง = discard · • CRC / ตรวจ error = store-and-forward · latency ต่ำสุด = fast-forward · อ่าน 64 ไบต์แรก = fragment-free · • ไม่ต้อง media arbitration = full-duplex · สายอะไรก็เสียบติด = auto-MDIX · • LLC = 802.2 ซอฟต์แวร์ คุยกับชั้นบน ระบุโพรโตคอลชั้น 3 · MAC = 802.3 ฮาร์ดแวร์ คุม NIC ใส่ FCS · • ARP request = broadcast · ARP reply = unicast