ข้ามไปที่เนื้อหา
CYBERSKILLS Academy
ระดับกลาง7 ชม. 16 นาที · 24 ขั้นการเรียน · 3 ด่านบังคับ

เครือข่ายคอมพิวเตอร์

จาก packet หนึ่งใบบนสายไปจนถึงเซิร์ฟเวอร์ที่รับการเชื่อมต่อหลายพัน

สำหรับคนที่ใช้ Linux shell ได้คล่องและอ่านภาษา C ออก ซึ่งอยากเข้าใจเส้นทางจาก connect() ถึงเครื่องปลายทาง Lab บังคับใช้ Linux/WSL พร้อม C compiler, make, iproute2, procfs และ epoll ผู้เรียนบน macOS ต้องใช้ Linux VM/container สำหรับขั้นตอนเหล่านี้ เครื่องมือวินิจฉัยเสริมอย่าง tcpdump, dig และ gdb ต้องติดตั้งแยกเมื่อยังไม่มี ส่วนคอร์สตั้งต้นให้พร้อมครอบคลุม toolchain ฐาน

ตัวอย่างโครงสร้างคอร์ส

เมื่อจบคอร์ส คุณจะทำอะไรได้บ้าง

  • อธิบายได้ว่าแต่ละชั้นเพิ่มอะไรลงใน packet และอ่านการดักจับจริงได้
  • คำนวณ subnet เส้นทาง และช่วงที่อยู่ได้โดยไม่ต้องใช้เครื่องคิดเลข
  • เขียนไคลเอนต์และเซิร์ฟเวอร์ TCP ที่ใช้งานได้จริงในภาษา C พร้อมการจัดการข้อผิดพลาดที่ไม่ใช่ของเสริม
  • เลือกระหว่างการออกแบบแบบบล็อก ไม่บล็อก และขับด้วยเหตุการณ์ ให้เหมาะกับภาระที่มี
  • วินิจฉัยการเชื่อมต่อที่เสียด้วย ping, traceroute, ss, dig และ tcpdump
  • อธิบายได้ว่าทำไมเซิร์ฟเวอร์ที่รับสิบคนได้ถึงพังตอนมีหมื่นคน และต้องทำอย่างไร

ก่อนเริ่มเรียน

แผนการเรียน

ภาษาไทยพร้อมสำหรับทุกขั้นการเรียน.

นี่คือเส้นทางการเรียนทั้งหมด แต่ละบทต่อยอดจากบทก่อนหน้า และด่านบังคับคือจุดที่คุณได้แสดงสิ่งที่ทำได้จริง.

  1. 01

    เกิดอะไรขึ้นจริง ๆ เมื่อเครื่องสองเครื่องคุยกัน

    บทเรียน · 15 นาที

  2. 02

    ชั้นต่าง ๆ และซองที่ห่อหุ้มทุกข้อความ

    บทเรียน · 18 นาที

    ต่อยอดจาก: เกิดอะไรขึ้นจริง ๆ เมื่อเครื่องสองเครื่องคุยกัน

  3. 03

    ที่อยู่: เครื่องหนึ่งถูกค้นเจอได้อย่างไร

    บทเรียน · 18 นาที

    ต่อยอดจาก: ชั้นต่าง ๆ และซองที่ห่อหุ้มทุกข้อความ

  4. 04

    การแบ่งเครือข่าย และเลขคณิตที่อยู่เบื้องหลัง

    บทเรียน · 20 นาที

    ต่อยอดจาก: ที่อยู่: เครื่องหนึ่งถูกค้นเจอได้อย่างไร

  5. 05

    packet เลือกปลายทางถัดไปอย่างไร

    บทเรียน · 19 นาที

    ต่อยอดจาก: การแบ่งเครือข่าย และเลขคณิตที่อยู่เบื้องหลัง

  6. 06

    ตามรอย packet จากเครื่องคุณออกไปถึงอินเทอร์เน็ต

    ด่านบังคับ · 20 นาที

    ต่อยอดจาก: packet เลือกปลายทางถัดไปอย่างไร

  7. 07

    ที่อยู่สาธารณะหนึ่งอัน เครื่องภายในหลายเครื่อง

    บทเรียน · 17 นาที

    ต่อยอดจาก: packet เลือกปลายทางถัดไปอย่างไร

  8. 08

    พื้นที่ที่อยู่ที่ไม่มีวันหมด

    บทเรียน · 18 นาที

    ต่อยอดจาก: ที่อยู่: เครื่องหนึ่งถูกค้นเจอได้อย่างไร

  9. 09

    อินเทอร์เน็ตตกลงกันได้อย่างไรว่าอะไรอยู่ที่ไหน

    บทเรียน · 16 นาที

    ต่อยอดจาก: packet เลือกปลายทางถัดไปอย่างไร

  10. 10

    อุโมงค์: การขนเครือข่ายหนึ่งไว้ในอีกเครือข่ายหนึ่ง

    บทเรียน · 16 นาที

    ต่อยอดจาก: ที่อยู่สาธารณะหนึ่งอัน เครื่องภายในหลายเครื่อง

  11. 11

    socket คือ file descriptor

    บทเรียน · 16 นาที

    ต่อยอดจาก: ชั้นต่าง ๆ และซองที่ห่อหุ้มทุกข้อความ

  12. 12

    รอ หรือไม่รอ

    บทเรียน · 18 นาที

    ต่อยอดจาก: socket คือ file descriptor

  13. 13

    เฝ้าการเชื่อมต่อจำนวนมากพร้อมกัน

    บทเรียน · 20 นาที

    ต่อยอดจาก: รอ หรือไม่รอ

  14. 14

    เจ็ด call ที่ทำให้เกิดการเชื่อมต่อ

    บทเรียน · 19 นาที

    ต่อยอดจาก: socket คือ file descriptor

  15. 15

    การสร้าง และการรื้อ การเชื่อมต่อ

    บทเรียน · 19 นาที

    ต่อยอดจาก: เจ็ด call ที่ทำให้เกิดการเชื่อมต่อ

  16. 16

    สร้างเซิร์ฟเวอร์กับไคลเอนต์ที่คุยกันได้

    ด่านบังคับ · 22 นาที

    ต่อยอดจาก: การสร้าง และการรื้อ การเชื่อมต่อ

  17. 17

    ทุก call ของเครือข่ายล้มเหลวได้ และล้มเหลวอย่างไร

    บทเรียน · 18 นาที

    ต่อยอดจาก: สร้างเซิร์ฟเวอร์กับไคลเอนต์ที่คุยกันได้

  18. 18

    จากชื่อไปสู่ที่อยู่

    บทเรียน · 18 นาที

    ต่อยอดจาก: ที่อยู่: เครื่องหนึ่งถูกค้นเจอได้อย่างไร

  19. 19

    โปรโตคอลที่คุณใช้ทั้งวัน

    บทเรียน · 19 นาที

    ต่อยอดจาก: การสร้าง และการรื้อ การเชื่อมต่อ · จากชื่อไปสู่ที่อยู่

  20. 20

    หนึ่ง thread ต่อหนึ่งไคลเอนต์ และจุดที่มันพัง

    บทเรียน · 17 นาที

    ต่อยอดจาก: สร้างเซิร์ฟเวอร์กับไคลเอนต์ที่คุยกันได้

  21. 21

    ชุด worker คงที่ที่ทำงานจากคิวของการเชื่อมต่อ

    บทเรียน · 18 นาที

    ต่อยอดจาก: หนึ่ง thread ต่อหนึ่งไคลเอนต์ และจุดที่มันพัง

  22. 22

    ให้บริการการเชื่อมต่อหลายพันจาก thread เดียว

    ด่านบังคับ · 22 นาที

    ต่อยอดจาก: เฝ้าการเชื่อมต่อจำนวนมากพร้อมกัน

  23. 23

    การเรียกฟังก์ชันบนเครื่องอื่น

    บทเรียน · 16 นาที

    ต่อยอดจาก: โปรโตคอลที่คุณใช้ทั้งวัน

  24. 24

    schema, การสร้างโค้ด และทำไมมันถึงสำคัญ

    บทเรียน · 17 นาที

    ต่อยอดจาก: การเรียกฟังก์ชันบนเครื่องอื่น

เริ่มเรียนด้วยบัญชี CYBERSKILLS เมื่อเปิดให้ใช้งาน

บัญชี CYBERSKILLS จะเก็บความก้าวหน้าและผลจากด่านบังคับไว้ด้วยกัน ระหว่างนี้ คุณใช้แผนการเรียนนี้เลือกเส้นทางที่ตรงกับเป้าหมายได้.

ดูตัวอย่างคอร์สทั้งหมด
เครือข่ายคอมพิวเตอร์ · CYBERSKILLS Academy