เวิลด์ไวด์เว็บ (World Wide Web) หรือเรียกสั้น ๆ ว่า เว็บ (Web) หรือ WWW เป็นแอพพลิเคชันหนึ่งที่ทำให้อินเทอร์เน็ตเป็นที่นิยมมากในปัจจุบัน WWW ใช้โปรโตคอล HTTP (Hyper text transfer Protocol) ซึ่งเป็นโปรโตคอลที่ใช้รับส่งไฟล์ HTML (Hyper text Markup Protocol) โดย HTML นั้นเป็นภาษาที่ใช้อธิบายการแสดงเว็บเพจนั้นเอง WWW เป็นแอพพลิเคชันที่ทำงานแบบไคลเอนท์เซิร์ฟเวอร์ กล่าวคือ WWW นั้นจะมีโฮสต์เครื่องหนึ่งที่ทำหน้าที่เป็นเซิร์ฟเวอร์ เรียกว่า “เว็บเซิร์ฟเวอร์ (Web Server) ซึ่งจะทำหน้าที่ให้บริการเอกสาร HTML ส่วนเครื่องไคลเอนท์นั้นใช้โปรแกรมเว็บบราวเซอร์ (Web Browser) เช่น อินเตอร์เน็ตเอ็กซ์พลอเรอร์ (IE) ซึ่งจะร้องขอไฟล์ HTML จากเว็บบราวเซอร์และแสดงผลให้ผู้ใช้ดู
1 กลไกการทำงานของ
โปรโตคอล HTTP เป็นโปรโตคอลที่อยู่ในชั้นแอพพลิเคชันของชุดโปรโตคอล TCP/IP ซึ่งจะเป็นตัวกำหนดรูปแบบการร้องขอไฟล์ของไคลเอนท์ (เว็บบราวเซอร์) จากเว็บเซิร์ฟเวอร์ และรูปแบบการถ่ายโอนไฟล์จากเว็บเซิร์ฟเวอร์ไปยังไคลเอนท์โดยขั้นตอนคร่าวๆ นั้นได้แสดงในรูปที่ 2.51 ซึ่งอธิบายได้ดังนี้คือ กระบวนการนั้นจะเริ่มที่ทางฝั่งไคลเอนท์ โดยผู้ใช้คลิกในลิงค์ในเว็บเพจ หรือพิมพ์ URL (Uniform Resource Locator) ในช่องที่อยู่ (Address) ของเว็บบราวเซอร์ หลังจากนั้นเว็บบราวเซอร์จะทำการส่งการร้องขอ (HTTP Request) ผ่านเครือข่ายไปยังเว็บเซิร์ฟเวอร์ เมื่อเว็บเซิร์ฟเวอร์ที่ได้รับการร้องขอก็จะทำการค้นหาไฟล์ที่ถูกกำหนดใน URL ซึ่งถ้าพบก็จะตอบกลับ (HTTP Response) พร้อมกับไฟล์ กลับไปยังฝั่งไคลเอนท์ เว็บบราวเซอร์เมื่อได้รับการตอบกลับก็จะแสดงไฟล์นั้นให้ผู้ใช้ดู โปรโตคอล HTTP นั้นไม่ได้กำหนดรูปแบบการแสดงผลให้ผู้ใช้ดู ซึ่งหน้าที่นี้เป็นของเว็บบราวเซอร์ ดังนั้นเว็บบราวเซอร์ที่ต่างกันอาจแสดงเว็บเพจไม่เหมือนกันก็ได้
เว็บเพจหรือไฟล์ที่อยู่ในรูปแบบ HTML นั้นจะประกอบด้วยออบเจ็กต์ เช่น รูปภาพ (ไฟล์ .jpg, .gif เป็นต้น) เสียง และวิดีโอ เป็นต้น โดยออบเจ็กต์เหล่านี้จะถูกส่งทีละออบเจ็กต์ผ่านการเชื่อมต่อ TCP ที่สร้างไว้ก่อนหน้า ดังนั้นถ้ามีออบเจ็กต์เยอะๆ ในไฟล์ ก็จะทำให้กระบวนการนี้ช้าเนื่องจากมีแค่การเชื่อมต่อเดียว แต่ละบราวเซอร์ในปัจจุบันสามารถสร้างการเชื่อมต่อ TCP ได้ทีละหลายๆ การเชื่อมต่อในเวลาเดียวกัน ดังนั้นเมื่อบราวเซอร์ได้รับการตอบรับ
เว็บเพจหรือไฟล์ที่อยู่ในรูปแบบ HTML นั้นจะประกอบด้วยออบเจ็กต์ เช่น รูปภาพ (ไฟล์ .jpg, .gif เป็นต้น) เสียง และวิดีโอ เป็นต้น โดยออบเจ็กต์เหล่านี้จะถูกส่งทีละออบเจ็กต์ผ่านการเชื่อมต่อ TCP ที่สร้างไว้ก่อนหน้า ดังนั้นถ้ามีออบเจ็กต์เยอะๆ ในไฟล์ ก็จะทำให้กระบวนการนี้ช้าเนื่องจากมีแค่การเชื่อมต่อเดียว แต่ละบราวเซอร์ในปัจจุบันสามารถสร้างการเชื่อมต่อ TCP ได้ทีละหลายๆ การเชื่อมต่อในเวลาเดียวกัน ดังนั้นเมื่อบราวเซอร์ได้รับการตอบรับ
ครั้งแรกก็จะสร้างการเชื่อมต่อใหม่หลาย ๆ การเชื่อมต่อพร้อมกับการส่งในการร้องขอไปในการเชื่อมต่อเหล่านั้น ทำให้การถ่ายโอนออบเจ็กต์ทั้งหมดที่ต้องแสดงในเว็บเพจหนึ่งนั้นเร็วขึ้น
2 ข้อความการร้องขอและตอบกลับ (HTTP Message)
มาตรฐานของโปรโตคอล HTTP ที่ใช้ในปัจจุบันคือเวอร์ชัน1.1 (HTTP/1.1) ซึ่งได้กำหนดรูปแบบข้อมูลที่รับส่งระหว่างไคลเอนท์และเซิร์ฟเวอร์ โดยข้อความที่แลกเปลี่ยนกันนี้แบ่งออกเป็น 2 ประเภทคือ ข้อความการร้องขอ (HTTP Request Message) และข้อความการตอบกลับ (HTTP Response Message)
2 ข้อความการร้องขอและตอบกลับ (HTTP Message)
มาตรฐานของโปรโตคอล HTTP ที่ใช้ในปัจจุบันคือเวอร์ชัน1.1 (HTTP/1.1) ซึ่งได้กำหนดรูปแบบข้อมูลที่รับส่งระหว่างไคลเอนท์และเซิร์ฟเวอร์ โดยข้อความที่แลกเปลี่ยนกันนี้แบ่งออกเป็น 2 ประเภทคือ ข้อความการร้องขอ (HTTP Request Message) และข้อความการตอบกลับ (HTTP Response Message)
FTP (File Transfer Protocol) เป็นโปรโตคอลสำหรับถ่ายโอนไฟล์ระหว่างสองเครื่อง โปรโตคอล FTP นั้นมีมาพร้อมกับอินเตอร์เน็ตในสมัยแรกๆ และยังเป็นโปรโตคอลที่นิยมในปัจจุบัน FTP ถูกอธิบายใน RFC 959 ดังรูปที่ 2.52 ซึ่งแสดงลักษณะการถ่ายโอนไฟล์ระหว่างเครื่องด้วย FTP
โดยทั่วไปแล้วเมื่อผู้ใช้ต้องการถ่ายโอนไฟล์ระหว่างเครือข่าย ผู้ใช้ก็จะต้องเปิดโปรแกรม FTP ซึ่งสิ่งที่ผู้ใช้ต้องระบุในการเชื่อมต่อครั้งแรกคือ ชื่อหรือที่อยู่ของ FTP เซิร์ฟเวอร์ พร้อมทังชื่อล็อกอินและรหัสผ่าน หลลังจากนั้นไคลเอนท์จะสร้างการเชื่อมต่อ TCP กับเซิร์ฟเวอร์ และส่งข้อมูลเกี่ยวกับล็อกอินเพื่อเซิร์ฟเวอร์จะได้ตรวจสอบสิทธิ์ของผู้ใช้ และถ้าตรวจสอบสิทธิ์ผ่านผู้ใช้ก็สามารถอัพโหลดไฟล์ หรือดาวน์โหลดไฟล์ระหว่างเครื่องของผู้ใช้และเซิร์ฟเวอร์ได้
โดยทั่วไปแล้วเมื่อผู้ใช้ต้องการถ่ายโอนไฟล์ระหว่างเครือข่าย ผู้ใช้ก็จะต้องเปิดโปรแกรม FTP ซึ่งสิ่งที่ผู้ใช้ต้องระบุในการเชื่อมต่อครั้งแรกคือ ชื่อหรือที่อยู่ของ FTP เซิร์ฟเวอร์ พร้อมทังชื่อล็อกอินและรหัสผ่าน หลลังจากนั้นไคลเอนท์จะสร้างการเชื่อมต่อ TCP กับเซิร์ฟเวอร์ และส่งข้อมูลเกี่ยวกับล็อกอินเพื่อเซิร์ฟเวอร์จะได้ตรวจสอบสิทธิ์ของผู้ใช้ และถ้าตรวจสอบสิทธิ์ผ่านผู้ใช้ก็สามารถอัพโหลดไฟล์ หรือดาวน์โหลดไฟล์ระหว่างเครื่องของผู้ใช้และเซิร์ฟเวอร์ได้
โปรโตคอล FTP และ HTTP มีหลายอย่างที่เหมือนกัน เช่น ทั้งสองเป็นโปรโตคอลสำหรับถ่ายโอนไฟล์และนอกจากกนี้ใช้การเชื่อมต่อแบบ TCP เหมือนกัน อย่างไรก็ตามทั้งสองโปรโตคอลมีข้อแตกต่างที่สำคัญคือ โปรโตคอล FTP จะใช้การเชื่อมต่อ TCP ที่ขนานกันสองการเชื่อมต่อ การเชื่อมต่อแรกใช้สำหรับการควบคุมการถ่ายโอนไฟล์ (Control Connection)
ส่วนการเชื่อมต่อที่สองจะใช้สำหรับการถ่ายโอนข้อมูลหรือไฟล์ (Data Connection) ช่องการเชื่อมต่อข้อมูลนั้นจะใช้สำหรับการส่งข้อมูล หรือคำสั่งที่ใช้สำหรับควบคุมการถ่ายโอนไฟล์ระหว่างโฮสต์ เช่น ชื่อล็อกอิน รหัสผ่าน คำสั่งสำหรับการเปลี่ยนไดเร็คทอรี หรือคำสั่งสำหรับการอัพโหลดไฟล์ (put) และคำสั่งสำหรับการดาวน์โหลดไฟล์ (get) เป็นต้น ส่วนช่องการเชื่อมต่อข้อมูลนั้นก็ใช้สำหรับการถ่ายโอนไฟล์ ส่วนโปรโตคอล HTTP นั้นจะใช้การเชื่อมต่อเดียวสำหรับทั้งรับส่งข้อมูลการควบคุมและไฟล์เว็บเพจ รูปที่ 2.53 แสดงช่องการเชื่อมต่อของ FTP
ส่วนการเชื่อมต่อที่สองจะใช้สำหรับการถ่ายโอนข้อมูลหรือไฟล์ (Data Connection) ช่องการเชื่อมต่อข้อมูลนั้นจะใช้สำหรับการส่งข้อมูล หรือคำสั่งที่ใช้สำหรับควบคุมการถ่ายโอนไฟล์ระหว่างโฮสต์ เช่น ชื่อล็อกอิน รหัสผ่าน คำสั่งสำหรับการเปลี่ยนไดเร็คทอรี หรือคำสั่งสำหรับการอัพโหลดไฟล์ (put) และคำสั่งสำหรับการดาวน์โหลดไฟล์ (get) เป็นต้น ส่วนช่องการเชื่อมต่อข้อมูลนั้นก็ใช้สำหรับการถ่ายโอนไฟล์ ส่วนโปรโตคอล HTTP นั้นจะใช้การเชื่อมต่อเดียวสำหรับทั้งรับส่งข้อมูลการควบคุมและไฟล์เว็บเพจ รูปที่ 2.53 แสดงช่องการเชื่อมต่อของ FTP
ช่องควบคุมและช่องการถ่ายโอนไฟล์ของ FTP
กระบวนการของการถ่ายโอนไฟล์ด้วย FTP นั้นจะเริ่มจากไคลเอนท์สร้างการเชื่อมต่อ TCP กับทางฝั่งเซิร์ฟเวอร์ผ่านทางพอร์ต 21 ซึ่งการเชื่อมต่อนี้เป็นช่องสำหรับการรับส่งข้อมูลการควบคุมการถ่ายโอนไฟล์ เมื่อสร้างการเชื่อมต่อสำหรับต่อไปทางฝังไคลเอนท์ก็จะส่งข้อมูลล็อกอิน เช่น ชื่อผู้ใช้และรหัสผ่านไปให้ทางฝั่งเซิร์ฟเวอร์ตรวจสอบสิทธิ์ เมื่อเซิร์ฟเวอร์ตรวจสอบสิทธิ์ผ่านไคลเอนท์ก็สามารถดาวน์โหลด หรืออัพโหลดไฟล์ได้ ซึ่งมีขขั้นตอนดังนี้ เช่น เมื่อไคลเอนท์ต้องการดาวน์โหลดไฟล์ไคลเอนท์ก็ส่งข้อมูลเกี่ยวกับไฟล์นั้นไปให้ทางฝั่งเซิร์ฟเวอร์ผ่านทางพอร์ต 21 เมื่อเซิร์ฟเวอร์ได้รับการร้องขอก็จะสร้างการเชื่อมต่อใหม่โดยใช้พอร์ต 20 กับ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น