Hub, Switch และ Router Layer L1-L3

Hub หรือ Repeater

เป็นอุปกรณ์ที่งานบน OSI Layer 1 ทำหน้าที่เชื่อมต่อกับอุปกรณ์ในระบบ LAN เข้าด้วยกัน โดยหลักการทำงานง่ายๆคือ รับสัญญาณจากต้นทางแล้วกระจายไปยังทุก Port ของตัวอุปกรณ์ (Broadcast) เครื่องไหนที่ไม่ต้องการข้อมูลก็ drop สัญญาณทิ้งไปทำให้ประสิทธิภาพในการจัดการข้อมูลไม่ดีนัก ปัจจุบันจึงไม่ค่อยนิยมใช้กันแล้ว


Switch

ทำหน้าที่คล้ายกับ Hub คือทำหน้าที่ เป็นอุปกรณ์ที่ทำหน้าที่เชื่อมต่อกับอุปกรณ์ในระบบ LAN เข้าด้วยกัน แต่ทำงานบน OSI Layer 2  ซึ่งเราอาจจะคิดว่ามันทำงานเหมือน Hub แต่จริงๆแล้วไม่ใช่ เพราะ Switch ทำได้มากกว่าและมีประสิทธิภาพมากกว่า Hub โดยสามารถแก้ปัญหาข้อมูลชนกัน (Collision) บน Hub และมีการเก็บ MAC Address ของอุปกรณ์แต่ละตัวลง MAC Address Table แล้วทำการส่งข้อมูลไปยัง address ตาม Port ต่างๆที่เชื่อมต่อกับ Switch

การส่งจะมีรูปแบบหลักๆ 3 แบบได้แก่

Broadcast (ส่งออกทุก Port)
Multicast (ส่งหลาย Port)
Unicast (ส่ง 1 Port แบบระบุปลายทาง)
ซึ่ง Switch จะเลือกเองว่าควรจะส่งแบบไหน ด้วยความที่มีประสิทธิภาพมากกว่าจึงทำให้ Switch เข้ามาแทนที่ Hub แล้วในปัจจุบันนี้


Router
เป็นอุปกรณ์ที่ทำหน้าที่เพื่อเชื่อมต่อ Network หนึ่ง เข้ากับอีก Network หนึ่ง ซึ่งเป็นการทำงานบน OSI Layer 3 โดยอุปกรณ์ที่เราน่าคุ้นเคยที่สุดคือ Router ที่เราใช้ตามบ้านเพื่อต่อกับ High Speed Internet นั่นเอง เราจะเห็นได้ว่า Router ตามบ้านนั้นจะมีการเชื่อมต่อ 2 ฝั่งคือ ฝั่งหนึ่งเป็นการเชื่อมต่อกับ Internet ของทางฝั่ง service provider ส่วนอีกฝั่งหนึ่งต่อกับอุปกรณ์ในบ้านเรานั่นเอง การทำแบบนี้เสมือนเป็นการเชื่อมต่อระหว่างองค์กร

แต่ในการใช้งานจริงๆแล้ว เราอาจจะไม่จำเป็นต้องเชื่อมต่อกับ Internet เหมือน Router ตามบ้านก็ได้ เราสามารถใช้ Router เพื่อเชื่อมต่อวง VLAN ภายในองค์กรก็ได้ (LAN)


สรุป

Hub/Repeater เป็นอุปกรณ์ที่ทำงานบน Layer 1 ใช้เชื่อมต่ออุปกรณ์ Network ในเครื่อข่าย LAN ยุคแรกๆ ปัจจุบันไม่ค่อยนิยมนำมาใช้
Switch เป็นอุปกรณ์ที่ทำงานบน Layer 2 ถูกนำมาใช้แทน Hub/Repeater เนื่องจากมีคุณสมบัติการทำงานที่รวดเร็ว, ยืดหยุ่น และมีฟังก์ชันการทำงานที่หลากหลายกว่า จึงเป็นที่นิยมอย่างมากในการนำมาใช้งาน
Router เป็นอุปกรณ์ที่ทำงานบน Layer 3 ใช้สำหรับการเชื่อมต่อระหว่าง Networks

Layer 2 Switch คืออะไร? มีกี่ชนิด? แต่ละชนิดมีลักษณะการทำงานต่างกันอย่างไร?

หลังจากที่เรารู้จักหลักการทำงานของ Hub, Switch และ Router แล้ว ในส่วนนี้เราจะเน้นไปที่การทำงานของ Layer 2 Switch เพื่อให้เห็นการทำงานที่ลึกขึ้นของ Layer 2 Switch มากขึ้น

Layer 2 Switch แบ่งย่อยเป็น 2 ประเภทคือ

Unmanaged Switch
Managed Switch

ซึ่งเราจะมาแยกความแตกต่างให้เห็นในภายหลัง หลังจากที่ได้อธิบายความสามารถเบื้องต้นร่วมกันของทั้ง 2 แบบก่อนดังนี้

เนื่องจาก Layer 2 Switch นี้ทำงานที่ Layer 2 ของ OSI model ซึ่งตัว packet จะถูกส่งไปที่พอร์ทของตัว Switch โดยอ้างอิงจาก destination MAC address เป็นหลัก (ในขณะที่การทำ Routing จะทำงานบน Layer 3 ซึ่งตัว packet จากถูกส่งไปยัง next-hop IP address ซึ่งอ้างอิงจาก destination IP address) ดังนั้นอุปกรณ์ที่อยุ่บน segment ของ Layer 2 เดียวกันจะไม่จำเป็นต้องทำการ routing เพื่อเข้าถึงอุปกรณ์แต่ละตัว แต่จะทำการค้นหา destination MAC address ด้วยวิธีที่เรียกว่า Address Resolution Protocol (ARP) ซึ่งแสดงได้ดังนี้


STEP 1: PC A ส่ง Frame ข้อมูลไปยัง Switch ผ่านพอร์ต F0/1 โดยจะแนบ MAC Address ของตัวเอง (Source MAC Address) และของเครื่องปลายทาง(Destination MAC Address) ไปด้วย

STEP 2: Switch บันทึก MAC Address ของ PC A ลงบน MAC Address Table จากนั้นจะ Broadcast Frame ผ่านไปยัง PC B และ PC C ผ่านพอร์ต F0/2 และ F0/3 เพื่อตรวจสอบว่าเครื่องไหนมี MAC Address ตรงกับ Destination MAC Address ที่ PC A ส่งมา

STEP 3: PC C ไม่ส่งอะไรกลับไปที่ Switch เพราะ MAC Address ไม่ตรงกับที่ Switch ส่งมาถาม ส่วน PC B จะส่งข้อมูล MAC Address ของตัวเองกลับไปให้ Switch เนื่องจากมี MAC Address ตรงกับที่ส่งมาถาม

STEP 4: Switch ทำการบันทึก MAC Address ของ PC B ลงบน MAC Address Table

เมื่อ Switch มีข้อมูล MAC Address ของทั้ง PC A และ PC B แล้ว หลังจากนี้ทั้งสองเครื่องสามารถส่งข้อมูลหากันผ่าน Switch ได้ โดยที่ Switch ไม่จำเป็นต้อง Broadcast ไปขอ MAC Address อีกแล้วเพราะ MAC Address Table มีข้อมูลที่จะสามารถ forward ไปยังอุปกรณ์ปลายทางผ่านทาง port ที่ถูกต้องได้เลย

ขั้นตอนที่กล่าวมาทั้งหมด เป็นสิ่งที่ Layer 2 Switch ใช้ในการทำงานเหมือนกัน แต่ก็จะมีปัญหาที่เกิดขึ้นได้หากอุปกรณ์ host จำนวนมากกว่า 2 ตัวต้องการสื่อสารในช่วงเวลาเดียวกันและใน network เดียวกันคือเกิดการชนกันของ network (Collision) ซึ่งจะทำให้ประสิทธิภาพของ network ลดลงไปเมื่อ data frame เกิดการชนกันและทำให้เราต้องทำการ resend ข้อมูลใหม่

การ broadcast ของ Layer 2 Switch นั้นจะ forward ข้อมูล broadcast traffic ไปที่ทุก port ยกเว้นว่า port นั้นๆจะได้รับ broadcast packet กลับมาแล้ว ซึ่งการ broadcast นี้จะทำใน segment ของ Layer 2 เท่านั้น ข้อมูลเหล่านี้จะไม่ข้ามไปยังขอบเขตของ Layer 3

เพื่อแก้ปัญหาของการชนกันของข้อมูลของการ broadcast storm จึงได้มีการพัฒนา Layer 2 Switch จากเดิมที่เป็นแบบ Unmanaged Switch ให้เป็นแบบ Managed Switch นั่นเอง โดยความแตกต่างหลักๆนั้นคือ

Unmanaged Switch คือ Switch ทั่วๆไปที่ใช้งานกันตามท้องตลาดทั่วๆไป เราสามารถใช้งาน Switch นี้ได้ทันทีโดยไม่ต้องตั้งค่าใดๆ หรือจะมองเป็น Hub ที่เพิ่มความสามารถของ Layer 2 เข้ามาก็ได้  มีความง่ายคือสะดวกในการใช้งาน แต่ก็มีข้อเสียคือขาดความยืดหยุ่นเพราะไม่สามารถ Monitor หรือ Configure สถานะใดๆได้
Managed Switch มีความสามารถพื้นฐานของ Unmanaged Switch อยู่แล้ว และเพิ่มความสามารถในการ configure การทำงานของพอร์ท เช่นการทำ MRP หรือทำ VLAN เป็นต้น ซึ่งเป็นความสามารถที่ช่วยแก้ข้อจำกัดของ Unmanaged Switch ได้อย่างมาก โดยเฉพาะอย่างยิ่งการทำ VLAN ที่จะช่วยให้เราสามารถแย่ง Broadcast domain ด้วย Switch ตัวเดียวกันได้

Managed Switch สามารถทำการระบุ VLAN ไปยัง port ที่ต้องการได้ ซึ่งจะทำให้เกิดการสร้าง Layer 3 subnet ขึ้นมาบน Switch เดียวกัน จึงทำให้เกิด  Broadcast domain ที่แตกต่างกันขึ้นมาด้วย ด้วยความที่เราสามารถสร้าง Layer 3 network ที่แตกต่างกันขึ้นมาบน infrastructure ของ Layer 2 Switch ตัวเดียวกันนั้น จึงทำให้ VLAN เพิ่มความยืดหยุ่นในการใช้งานได้อย่างมาก (แต่ตัวมันเองไม่สามารถส่งข้อมูลข้ามระหว่าง VLAN ได้)


จากรูปข้างบน จะเห็นได้ว่า Managed Switch สามารถแบ่ง network ออกเป็น 3 network คือ network ของ Faculty, Staff และ Student  ได้ด้วยตัวมันเพียงตัวเดียว ในกรณีนี้หากเราใช้ Unmanaged Switch ก็จำเป็นต้องใช้ถึง 3 ตัว และหากในอนาคตมีการเพิ่มแผนกอื่นขึ้นมาอีก ก็จะต้องเพิ่ม Unmanaged Switch เข้าไปอีกเรื่อยๆ ในกรณีนี้การใช้งาน Managed Switch จะตอบโจทย์การใช้งานที่ยืดหยุ่นกว่ามาก

เพื่อให้เห็นภาพการใช้งานที่มากขึ้น ขอยกตัวอย่างรูปด้านล่างนี้ ซึ่งเป็นวิธีที่ไม่ได้ใช้ VLAN จะเห็นได้ว่า Broadcast message ที่ถูกส่งจาก Host 1 จะถูกส่งไปยังทุกๆอุปกรณ์ใน network


แต่ด้วยการใช้งาน VLAN และทำการตั้งค่าให้กับ Switch ทั้ง 2 ตัวจะทำให้ Broadcast message จาก Host 1 สามารถส่งตรงไปหา Host 2 ได้ทันทีเพราะว่าเฉพาะ Host 1 และ Host 2 เท่านั้นที่ถูก define ให้เป็นสมาชิกใน set ของ VLAN เดียวกัน ในขณะที่อุปกรณ์อื่นจะถือเป็นสมาชิกของ VLAN ตัวอื่น  (ซึ่งการแยก subnet นี้ถือเป็น Layer 3 แล้ว ทำให้ข้อมูล Layer 2 ไม่สามารถทะลุไปได้  หากจะสามารถทำให้ข้อมูลวิ่งข้าม VLAN ได้เราจะใช้อุปกรณ์ที่เป็น Layer 3 Switch มาช่วยอีกที ซึ่งจะกล่าวถึงในภายหลัง)


ในการเชื่อมต่อมากกว่า 1 switch และต่าง VLAN กัน การเชื่อมต่อระหว่าง switch จะต้องกำหนดตัว port ให้เป็น Trunk port เพื่อให้สามารถรับ traffic ของ VLAN หลายๆตัวได้ ส่วน port ที่ต่อกับอุปกรณ์เฉพาะ VLAN ใด VLAN หนึ่ง เราจะกำหนดให้เป็น Access port แทน


สรุป

L2 Switch แบ่งออกเป็น 2 ชนิดคือ Unmanaged Switch และ Managed Switch โดยที่ Managed Switch มีลักษณะการทำงานที่ยืดหยุ่นและครอบคลุมทั้งยังเป็นที่นิยมมากกว่า โดยที่จุดเด่นของ Managed Switch ไม่ได้มีเพียงแค่การแบ่ง VLAN เท่านั้น แต่ยังสามารถทำอย่างอื่นได้อีกมาก

Layer 3 vs Layer 2 Switching
การทำ VLAN ที่กล่าวมาข้างต้นนั้น เป็นการแยก subnet ของแต่ละ port ออกจากกันเพื่อไม่ให้การทำงานของแต่ละ subnet ปนกันได้ ดังนั้น Layer 2 Switch จะไม่สามารถ transfer ข้อมูลระหว่าง subnet หรือระหว่าง VLAN ได้ ซึ่งการสื่อสารระหว่าง VLAN นี้เราจะใช้ Layer 3 Switch มาช่วยแทน

Layer 3 Switch เป็น switch ที่สามารถทำงานเพิ่มเติมในส่วนของ routing function ได้ โดยอุปกรณ์ฝั่ง client นั้นต้องทำการระบุ default gateway ด้วยเพื่อให้การทำงานฝั่ง layer 3 สามารถส่งข้อมูลไปยัง subnet อื่นได้

เมื่ออุปกรณ์ฝั่งหนึ่งต้องการส่งข้อมูลไปยังอีก subnet หนึ่งนั้น destination MAC address ใน packet จะเป็นของ default gateway ซึ่งเป็น packet ในส่วนของ layer 2 และจากนั้นก็จะทำขั้นตอนการ route traffic ด้วยปลายทางที่เหมาะสมด้วย routing table บน layer 3 ต่อไป

ตัวอย่างข้างล่างนี้เป็นตัวอย่างของการใช้งาน Layer 3 Switch เพื่อทำ Inter-VLAN Routing โดย PC A ที่อยู่ใน Faculty VLAN ต้องการสื่อสารกับ PC B ที่อยู่ในอีก VLAN หนึ่ง ซึ่งอยู่ใน Staff VLAN ซึ่งอุปกรณ์ทั้ง 2 ตัวอยู่คนละวง VLAN กัน ทำให้ต้องใช้ Layer 3 Switch ทำการ routing ข้อมูลจาก host1 ไปยัง host2

Layer 2 Switch จะทำหน้าที่ในส่วนของการเรียนรู้ destination address ของ host ปลายทางจาก MAC table หลังจากนั้น Layer 3 Switch จะทำหน้าที่ในการ switching และ routing ด้วย IP address และ subnet mask โดยทำหน้าที่เป็นตัวเชื่อมระหว่าง VLAN ทั้ง 2 วงที่แตกต่างกัน โดยสิ่งที่ต้องทำก่อนยังคงเหมือนเดิมคืออุปกรณ์ใน layer 3 ยังคงต้องการรู้ MAC Address ของ PC B ผ่านทาง ARP request broadcast ไปยัง VLAN20  จากนั้นมันจะทำการบันทึก destination MAC address ที่เหมาะสมแล้วทำการ forward packet บน layer 2 ต่อไป


ด้วยการทำหน้าที่ประสานข้อมูลระหว่างวง VLAN ทำให้การใช้งานร่วมกัน Layer 2 Switch และ Layer 3 Switch เหมาะในการนำไปขยายระบบให้มีขนาดใหญ่ขึ้นได้อย่างมีประสิทธิภาพมากกว่าการใช้งาน Layer 2 Switch อย่างเดียว

อีกตัวอย่างหนึ่งก็ยังคงคล้ายกับตัวอย่างก่อนหน้า คือเรายังคงมี Layer 3 Switch เพื่อทำการประสานระหว่าง VLAN หลายๆตัว โดยแสดงภาพให้เห็นการตั้ง Access port และ Trunk port ที่เหมาะสม

ใหม่กว่า เก่ากว่า