วันพฤหัสบดีที่ 26 มกราคม พ.ศ. 2555

สถาปัตยกรรมเครือข่าย OSI (OSI Architecture)

สถาปัตยกรรมเครือข่าย OSI (OSI Architecture)
เพื่อให้การออกแบบเครือข่ายคอมพิวเตอร์เป็นไปในมาตรฐานเดียวกันองค์กรมาตรฐานสากลอย่าง ISO
จึงได้กำหนดตัวแบบเครือข่ายคอมพิวเตอร์ที่เรียกว่า OSI (Open System Interconnection)
ซึ่งมีเป้าหมายเพื่อให้มีการติดต่อส่งข้อมูลในลักษณะระบบเปิด (Open Systems) ได้

ตัวแบบเครือข่ายแบบ OSI ซึ่งแบ่งระดับชั้นออกเป็น 7 ระดับชั้นดังนี้คือ
1. ระดับชั้นฟิสิคัล (Physical layer)
2. ระดับชั้นดาต้าลิงก์ (Data link layer)
3. ระดับชั้นเน็ตเวิร์ก (Network layer)
4. ระดับชั้นทรานสปอร์ต (Transport layer)
5. ระดับชั้นเซสชัน (Session layer)
6. ระดับชั้นพรีเซนเตชัน (Presentation layer)
7. ระดับชั้นแอปพลิเคชัน (Application layer)

แสดงตัวแบบสถาปัตยกรรมเครือข่ายแบบ OSI

1.ระดับชั้นฟิสิคัล
สาระสำคัญของระดับชั้นฟิสิคัลจะเกี่ยวกับการส่งสัญญาณบิตข้อมูลผ่านช่องสัญญาณให้ได้ถูกต้องและมีประสิทธิภาพกล่าวคือเมื่อผู้ส่งส่งบิตที่มีค่าเป็น1ผู้รับต้องได้รับบิตมีค่าเป็น1เช่นเดียวกันและเพื่อให้การส่งบิต
ข้อมูลเป็นไปอย่างถูกต้องระดับชั้นฟิสิคัลจึงมีการกำหนดค่าต่างๆ เช่น
- กำหนดค่าแรงดันไฟฟ้าของบิต 1 , 0 และอัตราของการส่งข้อมูล (สัญญาณเวลาที่ใช้ในการรับส่งข้อมูล)
- กำหนดมาตรฐานการส่งสัญญาณแบบแอนาล็อกและแบบดิจิตอล มาตรฐานของตัวแปลงสัญญาณ มาตรฐานของการอินเตอร์เฟซและการส่งข้อมูลโต้ตอบระหว่างอุปกรณ์ผู้ใช้ (DTE) กับอุปกรณ์สื่อสาร (DCE)
- กำหนดลักษณะช่องสัญญาณของสายสื่อสารในลักษณะของ ซิมเพล็กซ์ ฮาล์ฟดูเพล็กซ์หรือฟูลดูเพล็กซ์ตลอดจนการมัลติดเพล็กซ์สัญญาณข้อมูล

2.ระดับชั้นดาต้าลิงก์
หน้าที่ของระดับชั้นดาต้าลิงก์คือ การบริการส่งข้อมูล ระหว่างโหนดที่ติดกันของเครือข่ายให้ผ่านสายส่งได้อย่างถูกต้อง และมีประสิทธิภาพ หน้าที่โดยสังเขปของระดับชั้นนี้เช่น
- การตรวจสอบความถูกต้องของการส่งข้อมูล ซึ่งหากมีความผิดพลาดอันเนื่องมาจากสัญญาณรบกวนในสายส่ง (Noise) ระดับชั้นนี้ต้องทำการแก้ไข ซึ่งกระบวนการแก้ไขข้อมูลที่ผิดพลาดสามารถทำได้โดยการนำเอาบิตข้อมูลมาทำเป็นเฟรม (บล็อกของบิตข้อมูล)และทำการตรวจสอบและแก้ไขทั้งเฟรม ดังนั้น จึงมีการกำหนดโครงสร้างและขอบเขตของเฟรม เพื่อเพียร์โปรเซสส์ของฝั่งรับจะสามารถนำเฟรมของข้อมูลไปประมวลผลได้อย่างถูกต้อง

แสดงถึงตัวอย่างของเฟรมจะเห็นว่ามีการเพิ่มแฟล็ก(Flag)ที่ต้นและท้ายของเฟรมข้อมูลเพื่อให้ฝั่งรับ
สามารถรับรู้ขอบเขตของเฟรมได้ถูกต้อง
- ควบคุมให้การส่งข้อมูลระหว่างโหนดที่ติดกันผ่านสายส่งเป็นไปอย่างถูกต้อง ไม่มี ข้อมูลหายหรือข้อมูลซ้ำ อันเนื่องมาจากสัญญาณรบกวนในสายอาจจะทำให้เฟรมข้อมูลหายไปได้จึงอาจต้องมีการส่งเฟรมเดิมไปใหม่หลายครั้ง ซึ่งก็อาจทำให้ฝั่งรับได้รับเฟรมเดิม
- ควบคุมการไหลของข้อมูล (flow control) โดยไม่ให้ฝั่งส่ง ๆ ข้อมูลเร็วเกินไปจนฝั่งรับนำข้อมูลที่รับเข้ามาส่งให้แก่ระดับชั้นเน็ตเวริร์กไม่ทันทำให้ข้อมูลที่เข้ามาใหม่
ทับข้อมูลเดิมที่อยู่ในบัฟเฟอร์ของระดับชั้นดาต้าลิงก์ฝั่งรับ ซึ่งทำให้ข้อมูลเสียหายได้
- กำหนดวิธีการในการส่งข้อมูลระหว่างโหนดที่ติดกันทั้งในกรณีของการส่งแบบ ซิมเพล็กซ์
ฮาล์ฟดูเพล็กซ์ และฟูลดูเพล็กซ์

ระดับชั้นเน็ตเวิร์กสาระสำคัญของระดับชั้นเน็ตเวิร์กคือกำหนดเส้นทางการส่งข้อมูลผ่านโหนดต่างๆของเครือข่ายจากต้นทางให้ถึงปลายทางได้อย่างถูกต้องและรวดเร็ว ซึ่งวิธีการกำหนดเส้นทางเดินของข้อมูลอาจจะเป็นลักษณะที่ทุก ๆ แพ็กเกตของข้อมูลชุดเดียวกันถูกส่งผ่านโหนดต่าง ตามเส้นทางเดียวกันเส้นทางใดเส้นทางหนึ่ง หรือเป็นลักษณะที่แต่ละแพ็กเกตถูกส่งผ่านโหนดของเส้นทางที่แตกต่างกันไปแล้วค่อยไปรวมกันใหม่ที่ปลายทาง ขึ้นอยู่กับว่าเส้นทางใดที่จะสามารพส่งแพ็กเกตให้ถึงปลายทางได้เร็วที่สุด นอกจากนั้นหากในเครือข่ายมีแพ็กเกตจำนวนมากอาจทำให้เกิดการ ติดขัดของการส่งข้อมูล (congestion) จึงเป็นหน้าที่ของระดับชั้นเน็ตเวิร์กที่ต้องแก้ไขปัญหาเหล่านี้

ระดับชั้นทรานสปอร์ต

สาระสำคัญของระดับชั้นทรานสปอร์ตคือ การควบคุมการส่งข้อมูลของผู้ใช้ต้นทางหรือกระบวนการประมวลผลของโฮสต์ต้นทาง ระดับชั้นทรานสปอร์ตมีการทำงานคล้ายกับบริษัท Shipping ซึ่งจะคอยดูแลการขนส่งสินค้าจากต้นทางไปยังปลายทางได้ถูกต้องครบถ้วนตามเวลาที่กำหนดแต่จะไม่ได้เป็นผู้ที่ทำการขนส่งสินค้าเองหน้าที่การขนส่งสินค้าเป็นหน้าที่ของบริษัทขนส่งนอกจากนี้ในระดับชั้นทรานสปอร์ตยังมีหน้าที่ดูแลความสามารถในการส่งข้อมูลของผู้ใช้ในกรณีที่ชนิดรูปแบบและเทคโนโลยีของการส่งข้อมูลของเครือข่ายสื่อสารเปลี่ยนไปก็เป็นหน้าที่ของระดับชั้นทรานสปอร์ตในการกันผู้ใช้จากการเปลี่ยนแปลงไปนั้นทำให้ผู้ใช้สามารถส่งข้อมูล ได้ดังเดิมในOSI ถือได้ว่าตั้งแต่ระดับชั้นทรานสปอร์ตลงมานั้นเป็นระดับชั้นต่ำ(LowerLayer)ทำหน้าที่หลักในการสื่อสารส่งข้อมูลจากต้นทางถึงปลายทางให้ได้อย่างถูกต้องและมีประสิทธิภาพ ส่วนตั้งแต่ระดับชั้นเซสชันระดับชั้นพรีเซนเตชันและระดับชั้นแอปพลิเคชันถูกจัดว่าเป็นระดับชั้นที่สูง (upper layer) ซึ่งทำหน้าที่ให้บริการความสะดวกสบายต่าง ๆ แก่ผู้ใช้ หรือแก่โปรแกรมประยุกต์ โดยผู้ใช้แต่ละราย

ระดับชั้นเซสชัน มีหน้าที่ให้บริการแก่ผู้ใช้ในการสร้างเซสชัน (session) ของการติดต่อระหว่างเครื่องและยกเลิกเซสชัน
ของการติดต่อสื่อสาร ตัวอย่างของการสร้างเซสชันของการติดต่อ เช่น การสร้าง เซสชันเพื่อใช้ในการ Log in ของเครื่อง Client เข้าสู่เครื่อง Server หรือในการโอนย้ายไฟล์ข้อมูลระหว่างเครื่องเมือมีการสร้างเซสชันของการติดต่อแล้วระดับชั้นเซสชันจะใช้บริการของระดับชั้นทรานสปอร์ตในการติดต่อส่งข้อมูลจากต้นทางถึงปลายทาง และเมื่อเลิกเซสชันของการติดต่อแล้ว การติดต่อส่งข้อมูลในระดับชั้นทรานสปอร์ตก็จะถูกยกเลิกไปด้วย ดังแสดงในรูป ()แต่ในบางกรณี เช่น การจองตั๋วรถไฟ เมื่อมีการจองตั๋วแต่ละครั้งจะมีการสร้างเซสชันของการติดต่อระหว่าง Clientที่สถานีย่อยกับServerของสำนักงานใหญ่เมื่อจองตั๋วเสร็จแล้วเซสชันจะถูกยกเลิกไปแต่ก็ไม่มีความจำเป็นต้องยกเลิกการติดต่อในระดับชั้นทรานสปอร์ตเพราะแน่นอนว่าจะมีการติดต่อมาเพื่อใช้Serverที่สำนักงานใหญ่อีกภายในไม่กี่นาที ซึ่งรูปแบบของการติดต่อเช่นนี้แสดงได้ดังในรูป ()

แสดงการติดต่อของระดับชั้นเซสชันซึ่งสัมพันธ์กับการติดต่อในระดับชั้นทรานสปอร์ต

นอกจากนั้นในการการโอนย้ายไฟล์ หรือการส่งแฟ้มข้อมูลไปพิมพ์ ณ ที่ไกลออกไป (Remote Printing) หากการส่งข้อมูลโดยระดับชั้นทรานสปอร์ตทำได้ถูกต้องและข้อมูลนี้ถูกนำไปพิมพ์ แต่ในระหว่างการพิมพ์นั้น เครื่องพิมพ์เกิดขัดข้องทำให้ข้อมูลบางส่วนหายไประดับชั้นเซสชันจะมีหน้าที่ในการแก้ปัญหานี้โดยให้มีการซิงโครไนเซชันของการส่งข้อมูลระหว่างผู้ใช้ทั้งสองฝั่งโดยที่ระดับชั้นเซสชันจะยอมให้ผู้ใช้แบ่งข้อความออกมาเป็นหน้าๆ และใส่จุดซิงโครไนเซชันระหว่างแต่ละหน้า ด้วยวิธีเช่นนี้เมื่อเกิดปัญหาที่หน้าใด ระบบก็สามารถปรับ (reset) สภาวะของการติดต่อส่งข้อมูลให้กลับไปยังจุดซิงโครไนเซชันก่อนหน้า และทำการส่ง ข้อมูลต่อจากจุดซิงโครไนเซชันนั้น

แสดงตัวอย่างกานใส่จุดซิงโครไนเซชัน
ระดับชั้นพรีเซนเตชัน
ระดับชั้นพีเซนเตชันทำหน้าที่เกี่ยวกับการคงไว้ซึ่งความหมายของข้อมูลที่ส่งเมื่อผู้ส่งได้ส่งข้อมูลที่มีความหมายอย่างไร ผู้รับต้องได้รับข้อมูลซึ่งมีความหมายอย่างเดียวกันนั้น ทั้งนี้เนื่อง จากคอมพิวเตอร์ต่างชนิดกันจะมีรูปแบบของการแทนค่าข้อมูลภายในเครื่องแตกต่างกัน เช่น เครื่องเมนเฟรมของไอบีเอ็มจะใช้รหัส EBCDIC แทนค่าตัวอักษร ในขณะที่คอมพิวเตอร์อื่นๆใช้ รหัสแอสกี นอกจากนั้นไมโครคอมพิวเตอร์ส่วนใหญ่ใช้ 2's complement สำหรับนับจำนวนตัวเลข (integer) 16 บิต แต่เครื่อง CDC Cybers ใช้จำนวนบิต 60 บิต 1'scomplement สำหรับจำนวนตัวเลข จึงเป็นหน้าที่ของระดับชั้นพรีเซนเตชันในการแปลงข้อมูลให้อยู่ในรูปแบบที่เหมาะสมในการส่ง ข้อมูล นอกจากนั้นระดับชั้นพรีเซนเตชันยังทำหน้าที่อื่นๆ อีกเช่น
- ทำหน้าที่ในการอัดข้อมูล (data compression) ทำให้สามารถลดค่าใช้จ่ายในการส่ง ข้อมูลลงไปได้มาก
- ป้องกันข้อมูลไม่ให้ถูกอ่านหรือแก้ไขโดยบุคคลที่ไม่ได้รับอนุญาต
- ตรวจพิสูจน์ว่าผู้ที่ส่งข้อมูลนั้นเป็นผู้ส่งจริงหรือไม่ ซึ่งใช้หลักการของการเข้ารหัสลับข้อมูล (encryption)

ระดับชั้นแอปพลิเคชั่น
หน้าที่สำคัญของระดับชั้นนี้คือการให้บริการโปรแกรมประยุกติต่างๆที่ใช้ในระบบ เครือข่าย เช่น การส่งแฟ้มข้อมูลระหว่างเครื่องคอมพิวเตอร์ต่างนอกจากนี้ระดับชั้นแอปพลิเคชันยังมีหน้าที่จัดการโปรแกรมประยุกต์ที่ทำงานบนโฮสต์ให้สามารถทำงานได้กับเทอร์มินัลชนิดต่าง ๆ ได้ เนื่องจากปกติแล้วเทอร์มินัลแต่ละชนิดจะมีการใช้ตัวอักษรในการควบคุมหน้าจอ (control characters) แตกต่างกันออกไป

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

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