หมายเลข Port คืออะไร ?
หมายเลข Port คืออะไร ?
สำหรับโปรแกรมประยุกต์ (Application) ที่ใช้ TCP (Transmission Control Protocol) หรือ UDP (User Datagram Protocol) หมายเลข Port คือเลข 16 บิต เริ่มตั้งแต่ 0 ถึง 65535 หมายเลข Port แต่ละหมายเลขจะถูกกำหนดโดยเฉพาะจาก OS (Operating Systems) ทาง Internet Assigned Numbers Authority (IANA) จะเป็นหน่วยงานกลางในการประสานการเลือกใช้ Port ว่า Port หมายเลขใดควรเหมาะสำหรับ Service ใด เช่น เลือกใช้ TCP Port หมายเลข 23 กับ Service Telnet และเลือกใช้ UDP Port หมายเลข 69 สำหรับ Service Trivial File transfer Protocol (TFTP) เป็นต้น
หมายเลข Port ถูกจัดแบ่งเป็น 2 ประเภทคือ
หมายเลข Port ถูกจัดแบ่งเป็น 2 ประเภทคือ
- Well known Ports
- Registered Ports
Well known Ports คืออะไร ?
Well Known Ports คือจะเป็น Port ที่ระบบส่วนใหญ่กำหนดให้ใช้โดย Privileged User (ผู้ใช้ที่มีสิทธิพิเศษ) โดย Port เหล่านี้ ใช้สำหรับการติดต่อระหว่างเครื่องที่มีระบบเวลาที่ยาวนาน วัตถุประสงค์ เพื่อให้ Service แก่ผู้ใช้ (ที่ไม่รู้จักหรือคุ้นเคย) แปลกหน้า จึงจำเป็นต้องกำหนด Port ติดต่อสำหรับ Service นั้นๆ
Well Known Ports คือจะเป็น Port ที่ระบบส่วนใหญ่กำหนดให้ใช้โดย Privileged User (ผู้ใช้ที่มีสิทธิพิเศษ) โดย Port เหล่านี้ ใช้สำหรับการติดต่อระหว่างเครื่องที่มีระบบเวลาที่ยาวนาน วัตถุประสงค์ เพื่อให้ Service แก่ผู้ใช้ (ที่ไม่รู้จักหรือคุ้นเคย) แปลกหน้า จึงจำเป็นต้องกำหนด Port ติดต่อสำหรับ Service นั้นๆ
Registered Ports คืออะไร ?
Registered Ports จะเป็น Port หมายเลข 1024 ขึ้นไป ซึ่ง IANA ไม่ได้กำหนดไว้
ตัวอย่างการใช้ Port
Transport Layer Segment ที่ประกอบไปด้วยหมายเลข Port ของเครื่องปลายทาง โดยที่เครื่องปลายทาง (Destination Host) จะใช้ Port นี้ในการส่งข้อมูลให้กับ Application ได้ถูกต้อง หมายเลข Port จะอยู่ใน 32 bit แรกของ TCP และ UDP Header โดยที่ 16 bit แรกเป็นหมายเลข Port ของเครื่องต้นทาง ขณะที่ 16 bit ต่อมาเป็นหมายเลข Port ของ เครื่องปลายทาง Well know Ports เป็น Port ที่ค่อนข้างมาตรฐาน ทำให้เครื่อง Remote Computer สามารถรู้ได้ว่าจะติดต่อกับทาง Port หมายเลขอะไรสำหรับ Service นั้นๆ กลุ่มของหมายเลข Port และ หมายเลข IP เราเรียกว่า Socket ที่ประกอบด้วย Socket หนึ่งตัว สำหรับต้นทาง และอีกตัว สำหรับปลายทาง
Transport Layer Segment ที่ประกอบไปด้วยหมายเลข Port ของเครื่องปลายทาง โดยที่เครื่องปลายทาง (Destination Host) จะใช้ Port นี้ในการส่งข้อมูลให้กับ Application ได้ถูกต้อง หมายเลข Port จะอยู่ใน 32 bit แรกของ TCP และ UDP Header โดยที่ 16 bit แรกเป็นหมายเลข Port ของเครื่องต้นทาง ขณะที่ 16 bit ต่อมาเป็นหมายเลข Port ของ เครื่องปลายทาง Well know Ports เป็น Port ที่ค่อนข้างมาตรฐาน ทำให้เครื่อง Remote Computer สามารถรู้ได้ว่าจะติดต่อกับทาง Port หมายเลขอะไรสำหรับ Service นั้นๆ กลุ่มของหมายเลข Port และ หมายเลข IP เราเรียกว่า Socket ที่ประกอบด้วย Socket หนึ่งตัว สำหรับต้นทาง และอีกตัว สำหรับปลายทาง
ความแตกต่างระหว่าง Active และ Passive Port
ในการใช้การติดต่อด้วย TCP สามารถกระทำได้ 2 วิธี คือ
ในการใช้การติดต่อด้วย TCP สามารถกระทำได้ 2 วิธี คือ
- Passive Connection
- Active Connection
Passive Connection คือ การติดต่อที่ Application Process สั่งให้ TCP รอหมายเลข Port สำหรับการร้องขอการติดต่อจาก Source Host เมื่อ TCP ได้รับการร้องขอแล้วจึงทำการเลือกหมายเลข Port ให้
แต่ถ้าเป็นแบบ Active Connection TCP ก็จะให้ Application Process เป็นฝ่ายเลือกหมายเลข Port ให้เลย
ความคิดเห็น