วันจันทร์ที่ 19 มกราคม พ.ศ. 2552

Quality of Services #1

Quality of Services (QoS)

ความหมายในมุมมองความคิดผม ก็คือ การจัดการ IP packet ให้ทันกับเวลาตามข้อจำกัดของโปรแกรมนั้น ๆ และ มีการรับประกันว่าจะสามารถทำตามที่ขอได้

Mechanisms for QoS

มี 2 กระบวนการด้วยกันคือ

1. Integrated Services (Intserv)

ใช้หลักการทำ QoS โดย จัดการกับ packet flow ซึ่ง router จะต้องสนับสนุนการทำงาน
2 ฟังก์ชันนี้คือ (คล้าย ๆ ใน ns2 เลย)
- the classifier: เป็นตัว mark IP packet เพื่อที่จะให้ router จัดการแยกประเภทของ packet
- the scheduler: เป็นตัวแยก packet ออกจากกัน ตามที่ classifier ทำการ mark ไว้

ในกระบวนการของ Intserv นั้น แบ่ง services ออกเป็น controlled load service [RFC 2211] กับ guaranteed service [RFC 2212] ก่อนจะเริ่มทำ Intserv จะต้องมีการจองเส้นทางก่อน เรียกว่า Resource Reservation Protocol (RSVP) เพื่อที่จะมั่นใจว่า ได้รับการให้บริการที่ดีพอ ซึ่งก็คล้าย ๆ กับแบบ Best-effort (ไม่มีการจัดการ QoS) แต่รับประกัน delay ตราบใดที่เส้นทางยังไม่เปลี่ยน และ อีกอย่างก็คือ router จะต้องมีความสามารถในการสร้าง RSVP ใหม่ หรือ Reject ทิ้ง โดยพิจารณาจาก ความสามารถในการจัดการ packet รวมถึง bandwidth ที่มีอยู่ เราเรียกว่า Admission control

เนื่องจากต้องมีการจองเส้นทางในการทำ RSVP ดังนั้น การส่ง ข้อมูลจะวิ่งเส้นทางนั้นตลอด การทำ RSVP จะเป็นแบบ uni นั้นก็คือ ต้องกำหนดทั้งขาไปและขากลับ โดย ผู้ส่งสามารถกำหนด RSVP request ไปยัง ปลายทาง และ ผู้รับก็จองเส้นทางกลับมาด้วย RESV

ปัญหาใหญ่ของ IntServ คือ scalability เพราะเครือข่ายต้องแบ่งทรัพยากรบางส่วนไปใช้กับ QoS routing โดยเฉพาะ ถ้าใช้งาน QoS routing กันมาก ๆ ทรัพยากรก็จะหมดไป นอกนี้ การจองทรัพยากรด้วย RSVP ไม่ได้กระทำอย่างถาวร จึงต้องมีการส่งแพคเก็ตของ RSVP ไปยังเราท์เตอร์เพื่อรีเฟรชการจองทรัพยากรตลอดเวลา จึงมี processing overhead สูง ปกติแล้ว IntServ จึงจำกัดให้ใช้งานเฉพาะใน Autonomous System (AS) เดียวกันเท่านั้น

2. Differentiated Services (Diffserv)

Diffserv ทำงานต่างกับ Intserv คือ แทนที่จะ คอยจัดการ flow ที่มีการจองเส้นทางเฉพาะ สำหรับ packet แต่ Diffserv นั้นจะจัดการในส่วนของ border router เท่านั้น โดย packet ที่วิ่งเข้าใน border router จะถูกติด tag เรียกว่า Differentiated Service Code Point (DSCP) จาก นั้น router ที่ได้รับ packet ที่ถูกส่งมา ก็จะดูเฉพาะใน DSCP packet ซึ่งถูก configuration ไว้ใน router ก่อนที่จะมีการใช้งาน Diffserv อยู่แล้ว โดยระบุคาพารามิเตอรตัวหนึ่ง คือ PHB (Per-Hop Behavior) สําหรับแพ็กเกตนั้น ๆ ทั้งนี้แพ็กเกตที่มี PHB เดียวกันจะถือวาอยูในกลุมเดียวกันและมีอัตราการสงผานแพ็กเกตไปตามโนดคอมพิวเตอรตาง ๆ เทากัน ดัง นั้นPHB จะเกี่ยวของกับการจัดการบัฟเฟอรรวมถึงกลไกในการใหลําดับของแพ็กเกตนั่นเอง

ชื่อก็บอกอยู่แล้วว่า เป็น Code Point (จาก DSCP) ดังนั้น เวลาพิจารณา มันก็จะใส่คะแนน ให้กับ packet แล้วเปรียบเทียบกับ rule ที่ตั้งไว้ใน router เหมือนกับเป็นการจัดการ priority

ซึ่งสามารถ กำหนดใน Type of Services (ToS) ของ IP header

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