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

Week 10 : Network and Transport Layers

Three-way handshake
  • Client จะส่ง segment แรกออกไป เรียกกว่า TCP SYN segment ประกอบไปด้วย หมายเลขพอร์ตของทั้งต้นทางและปลายทาง, Initialization sequence number : ISN) ซึ่งจะเป็นหมายเลขไบต์แรกที่Clientจะส่งให้กับServer
  • Server ส่ง segment ที่สอง คือ SYN และ ACK segment ซึ่ง segment มีจุดมุ่งหมาย 2 ประการคือ
    - เป็นการตอบรับ segment แรกที่ได้รับ โดยการใช้แฟล็ก ACK พร้อมทั้ง Acknowledment numberได้มาจากการนำ ISN ของ Client บวก 1
    - ใช้เป็น segment เริ่มต้นของ Server จะประกอบไปด้วย ISN (Initialization sequence number)
  • 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
    - TCP Service (บริการของ TCP) เป็น Protocol ที่ใช้กับ process ที่อยู่ใน Application layer
    1) Stream Delibery Service (บริการการส่งข้อมูลเป็นสตรีม) TCP มีการรับส่งข้อมูลเป็นstream มีการรับส่งข้อมูลเป็นไบต์ที่ต่อเนื่องกันไป ก่อนที่จะส่งได้นั้น process ทั้งสองจะต้องการติดต่อกันเหมือนมีท่อใช้ลำเลียงข้อมูล
    2) Sending and receiving buffers บัฟเฟอร์นี้จะมีอยู่ 2 buffersคือ สำหรับรับข้อมูล และส่งข้อมูล ฝั่งส่งจะนำข้อมูลใส่ไว้ในbuffersก่อนแล้วจึงค่อยเริ่มทยอยส่งออกไป เมื่อได้รับก็จะตอบกลับว่าได้รับข้อมูลแล้ว จึงทำการ clear buffers นั้นออกไป เมื่อbuffers เต็มจะต้องหยุดส่ง ส่วนฝั่งรับเมื่อได้รับข้อมูลแล้วจะทำการส่งต่อไปให้กับ process แล้วจะทำการตอบกลับไปว่าได้รับข้อมูลแล้ว จึงทำการ clear buffer ถึงจะมี buffer ช่วยแก้ปัญหาเรื่องความเร็วของการรับส่งที่ไม่เท่ากันได้ แต่เนื่องจาก IP ที่ให้บริการกับ TCP และ IP จะส่งข้อมูลเป็นแพ็กเก็ต ไม่ใช่เป็นลักษณะ stream ของไบต์ จึงทำการแบ่งข้อมูลออกเป็นแพ็กเก็ตเสียก่อน
  • TCP segments
    แบ่งเป็น segment แล้ว TCP จะทำการเพิ่ม Header เข้าไปในแต่ละ segment จากนั้นจึงจะส่งต่อไปให้กับ IP แล้ว IP จะทำการเอ็นแคปซูเลตเซ็กเมนต์เป็นIP datagram


UDP (User Datagram Protocol)

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

โครงสร้างของ User Datagram

  • Source port number : มีขนาด 16 บิต ถูกใช้โดย Process ที่ Host ต้นทาง
  • Destination port number : มีขนาด 16 บิต ถูกใช้โดย Process ที่ Host ปลายทาง
  • Length : มีขนาด 16 บิต ใช้บอกขนาดของ User Datagram รวมทั้งทั้ง Header and Data หน่วยเป็น byte
  • Checksum : มีขนาด 16 บิต ใช้เก็บค่าในการตรวจสอบความถูกต้องของ User Datagram สามารถเลือกใช้หรือไม่ใช้ก็ได้

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

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