งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Remote Procedure Calls (RPC)

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Remote Procedure Calls (RPC)"— ใบสำเนางานนำเสนอ:

1 Remote Procedure Calls (RPC)
การเรียกใช้โพรซีเยอร์ระยะไกล อ.คเชนทร์ ซ่อนกลิ่น ระบบสารสนเทศแบบกระจาย Distributed Information System

2 Remote Procedure Call (RPC)
เป็นโปรโตคอลที่โปรแกรมหนึ่งสามารถขอบริการจากโปรแกรมที่ตั้งอยู่ในคอมพิวเตอร์ อีกเครื่องในเครือข่าย RPC ใช้แบบจำลองลูกข่าย/แม่ข่าย โปรแกรมที่ขอเป็นลูกข่ายและโปรแกรมที่ให้บริการ เป็นแม่ข่าย RPC เป็นปฏิบัติการแบบพร้อมกันที่ต้องการให้โปรแกรมที่ขอได้รับการตอบ จนกระทั่งผลลัพธ์จาก remote procedure ได้รับกลับมา

3 แนวคิดของ RPC แนวความคิดของ RPC คือ ทำให้การเรียกใช้โพรซีเยอร์ของผู้ให้บริการ มีความ คล้ายคลึงกับการเรียกใช้ฟังก์ชั่นทั่วไปให้มากที่สุด ในรูปแบบที่ง่ายที่สุด การที่จะเรียกใช้โพรซีเยอร์ของโฮสที่อยู่ไกลออกไปได้นั้น โปรแกรมของผู้ใช้บริการ จะต้องถูกนำมาเชื่อมต่อเข้ากับโพรซีเยอร์ที่เป็นไลบราลี่ (Library Procedure) เรียกว่า “ Client Stub” ทางฝั่งผู้ให้บริการ ก็จะมีโพรซีเยอร์ที่เป็นไลบราลี่ เรียกว่า “Server Stub”

4 แนวคิดของ RPC โพรซีเยอร์เหล่านี้ จะซ่อนข้อเท็จจริงเอาไว้ว่าการเรียกใช้โพรซีเยอร์ของผู้ใช้บริการนั้น ไม่เกี่ยวข้องกับระบบเครือข่ายเลย

5 ขั้นตอนการทำงานของการทำ RPC
ขั้นตอนที่ 1 คือ การที่ผู้ใช้บริการเรียกใช้ Client Stub การเรียกใช้นี้เป็นการทำงานที่ เกิดขึ้นในเครื่องผู้ใช้บริการเอง ซึ่งอาจมีการส่งพารามิเตอร์ได้ตามปกติ ขั้นตอนที่ 2 Client Stub จัดการจัดรูปแบบของพารามิเตอร์ให้อยู่ในรูปของ Message และเรียกใช้ระบบปฎิบัติการเพื่อจัดการส่ง Message นั้นการจัดรูปแบบของพารามิเตอร์นี้ เรียกว่า “Marshaling”

6 ขั้นตอนการทำงานของการทำ RPC
ขั้นตอนที่ 3 Kernel จัดการส่ง Message จากผู้ใช้บริการไปยังผู้ให้บริการ ขั้นตอนที่ 4 Kernel จัดการส่ง Package ที่ได้รับเข้ามา ไปยัง Server stub ขั้นตอนที่ 5 Server Stub จะเรียกใช้โพรซีเยอร์ของผู้ให้บริการพร้อมทั้งส่ง พารามิเตอร์ไปให้ด้วย การตอบรับก็จะทำในทิศทางที่ย้อนกลับกัน

7 ขั้นตอนการทำงานของการทำ RPC
รายละเอียดเพิ่มเติม โพรซีเยอร์ของผู้ใช้บริการซึ่งเขียนขึ้นมาโดยผู้ใช้นั้น จะใช้วิธีการเรียกใช้ โพรซีเยอร์ไปยัง Client Stub ซึ่งมีชื่อเดียวกันกับโพรซีเยอร์ในเครื่องผู้ให้บริการ เนื่องจากโพรซีเยอร์ของผู้ใช้ และ Client Stub อยู่ในเครื่องผู้ใช้ด้วยกัน ทั้งคู่ การวิ่งผ่านพารามิเตอร์จึงเกิดขึ้นตามวิธีการปกติ ในส่วนของโพรซีเยอร์ในเครื่องผู้ให้บริการ ก็มีการเรียกใช้และส่งผ่าน พารามิเตอร์ตามปกติเช่นเดียวกัน

8 ข้อจำกัดของ RPC การส่งผ่านพารามิเตอร์ ที่เป็นพอยเตอร์นั้นเป็นไปไม่ได้ เพราะโพรซีเยอร์ ทั้งสองนั้นไม่ได้อยู่ในเครื่องเดียวกัน

9 RPC Process อ้างอิง ::

10 ระบบที่ใช้งาน RPC RPC มีหลายแบบจำลองและการที่นิยมมากคือ Distributed Computing Environment (DCE) ของ Open Software Foundation มีการกำหนด RPC เป็น มาตรฐานโดย Institute of Electrical and Electronics Engineers ใน ISO Remote Procedure Call Specification, ISO/IEC CD N6561, ISO/IEC, November 1991 RPC มีขอบเขตครอบคลุม Transport Layer และ Application Layer ใน แบบจำลอง Open Systems Interconnection (OSI) ของการสื่อสารเครือข่าย และ RPC ทำให้การพัฒนาโปรแกรมประยุกต์ที่รวมหลายโปรแกรมที่กระจายใน เครือข่ายง่ายขึ้น

11 แบบฝึกหัดท้ายบทที่ 7 1. จงอธิบายถึงความหมายของ “การเรียกใช้โพรซีเยอร์ระยะไกล (Remote Procedure Calls (RPC))” 2. “Marshaling” คืออะไร 3. จงอธิบายกระบวนการสื่อสารระหว่าง Client Stub และ Server Stub


ดาวน์โหลด ppt Remote Procedure Calls (RPC)

งานนำเสนอที่คล้ายกัน


Ads by Google