วันพฤหัสบดีที่ 3 กันยายน พ.ศ. 2552

Week 10 : Network and Transport Layers (1)

Three-way handshake
  • Client จะส่ง segment แรกออกไป เรียกกว่า TCP SYN segment ประกอบไปด้วย หมายเลขพอร์ตของทั้งต้นทางและปลายทาง, หมายเลขลำดับเริ่มต้น (Initialization sequence number : ISN) ซึ่งจะเป็นหมายเลขไบต์แรกที่ไคลเอ็นต์จะส่งให้กับเซิร์ฟเวอร์
  • Server ส่ง segment ที่สอง คือ SYN และ ACK segment
    - เป็นการตอบรับ segment แรกที่ได้รับ โดยการใช้แฟล็ก ACK พร้อมทั้งหมายเลขตอบรับ (Acknowledment number) ได้มาจากการนำ ISN ของClient บวก 1
    - ใช้เป็น segment เริ่มต้นของเซิร์ฟเวอร์ จะประกอบไปด้วย ISN
  • Client ส่ง segment ที่สาม คือ SYNACK เพื่อเป็นการตอบรับ segment ที่สอง โดยการใช้แฟล็ก ACK พร้อมทั้งหมายเลขตอบรับ ซึ่งได้มาจากการนำ ISN บวก 1 TCP (Transmission Control Protocol)

TCP (Transmission Control Protocol)
เป็น Protocol ใน Transport layer ที่ให้บริการแบบ connection - oriented และรับประกันความถูกต้องของข้อมูล
  • Port number (หมายเลขพอร์ต) TCP ใช้ Port number เป็นเหมือน Address ที่ใช้ใน Transport layer ตาราง Well-known port จะแสดง Well-known port number บางส่วนที่ถูกใช้โดย TCP
  • TCP Service (บริการของ TCP) เป็น Protocol ที่ใช้กับ process ที่อยู่ใน Application layer
    - Stream Delibery Service (บริการการส่งข้อมูลเป็นสตรีม) TCP มีการรับส่งข้อมูลเป็นstream มีการรับส่งข้อมูลเป็นไบต์ที่ต่อเนื่องกันไป ก่อนที่จะส่งได้นั้น process ทั้งสองจะต้องการติดต่อกันเหมือนมีท่อใช้ลำเลียงข้อมูล
    - Sending and receiving buffers บัฟเฟอร์นี้จะมีอยู่ 2 บัฟเฟอร์คือ สำหรับรับ และส่งข้อมูล ฝั่งส่งจะนำข้อมูลใส่ไว้ในบัฟเฟอร์ก่อนแล้วจึงค่อยเริ่มทยอยส่งออกไป เมื่อได้รับก็จะตอบกลับมาว่าได้รับข้อมูลนั้นๆ แล้ว จึงทำการเคลียบัฟเฟอร์ในส่วนนั้นออกไป เมื่อบัฟเฟอร์เต็มจะต้องหยุดการส่งเอาไว้ก่อน ส่วนฝั่งรับเมื่อได้รับข้อมูลแล้วจะทำการส่งต่อไปให้กับ process แล้วจะทำการตอบกลับไปเช่นเดียวกันว่าได้รับข้อมูลแล้ว จึงทำการเคลียบัฟเฟอร์เช่นกัน ถึงจะมีบัฟเฟอร์ช่วยแก้ปัญหาในเรื่องของอัตราความเร็วของการรับส่งที่ไม่เท่ากันได้ เนื่องจาก IP ที่ให้บริการกับ TCP และ IP จะส่งข้อมูลเป็นแพ็กเก็ต ไม่ใช่เป็นลักษณะ stream ของไบต์ จึงทำการแบ่งข้อมูลออกเป็นแพ็กเก็ตเสียก่อน ซึ่งเรียกว่า Segment
  • TCP segments จะแบ่งเป็น segment แล้ว TCP จะทำการเพิ่ม Header เข้าไปในแต่ละ segment จากนั้นจึงจะส่งต่อไปให้กับ IP แล้ว IP จะทำการเอ็นแคปซูเลตเซ็กเมนต์เป็นไอพีเดทาแกรมต่อไป

UDP (User Datagram Protocol)
เป็น Protocol ใน Transport layer ที่ให้บริการแบบ Conectionless และไม่รับประกันความถูกต้องข้อมูล นอกจากจัดการการส่งข้อมูลจาก Process-to-Process Delivery เท่านั้น UDP เป็น Protocol ที่มี Overhead น้อย UDP ยังเหมาะกับโปรแกรมประเภทมัลติมีเดียและMulticasting

  • Port Number ใช้ Port Number เหมือนกับ Address ที่ใช้ใน Transport layer ตาราง Well-known port จะแสดงให้เห็นถึง Well-known port number บางส่วนที่ถูกใช้โดย UDP

ไม่มีความคิดเห็น:

แสดงความคิดเห็น