سبد خرید (0)

تبلیغات

مدل کلاینت سرور

 مدل کلاینت سرور

دو فرایند کاربردی راه دور به طور کلی در دو حالت مختلف می توانند برقراری ارتباط داشته باشند :

  • همتا به همتا: فرآیندهای راه دور در سطح یکسان اجرا می شوند و با استفاده از برخی منابع به اشتراک گذاشته تبادل اطلاعات می کنند.
  • کلاینت سرور: یک فرآیند راه دور به عنوان مشتری عمل می کند و درخواست برخی از منابع را از فرایند دیگر به عنوان سرور می کند.

در مدل کلاینت سرور، هر فرایند می تواند به عنوان سرور و یا کلاینت عمل کند. نوع، اندازه دستگاه و یا قدرت محاسباتی، آن را تبدیل به سرور نمی سازد بلکه توانایی خدمت به درخواست ها باعث انتخاب یک ماشین سرور است.

یک سیستم می تواند به عنوان سرور و یا کلاینت به طور همزمان عمل کند. از این رو، یک فرایند به عنوان سرور و دیگری به عنوان یک مشتری عمل می کنند. همچنین ممکن است هر دو فرآیندهای کلاینت و سرور بر روی یک دستگاه قرار بگیرند.


 ارتباط (communication)

دو فرایند در مدل کلاینت سرور می توانید به روش های مختلف تعامل داشته باشند :

  • از طریق سوکت
  • فراخوانی از راه دور (RPC)

 روش سوکت (Sockets)

در این روش، فرآیندی به عنوان سرور، با استفاده از یک پورت شناخته شده (یا شناخته شده توسط مشتری) یک سوکت باز می کند و منتظر می ماند تا برخی از درخواست مشتری را دریافت کند. فرایند دوم به عنوان یک مشتری نیز یک سوکت باز می کند اما به جای انتظار برای درخواست های ورودی، فرآیندهای مشتری. ابتدا درخواست را انجام می دهند.

هنگامی که درخواست به سرور رسید، آن به آن درخواست رسیدگی می شود. این امر می تواند به اشتراک گذاری اطلاعات و یا درخواست منابع باشد.


 روش تماس از راه دور (Remote Procedure Calls)

این روش یک مکانیسم است که در آن یک فرآیند با فرایند دیگری به وسیله روش تماس تعامل برقرار می کند. یک فرایند (مشتری) بر روی میزبان راه دور یک تماس ایجاد می کند. به  فرایند در میزبان راه دور، سرور گفته می شود. هر دو فرایند به یکدیگر ارتباط دارند. این ارتباط به روش زیر اتفاق می افتد:

  • فرآیند مشتری مکانیزم ارتباط با مشتری  را صدا می زند. این کار تمام پارامترهای مربوط به برنامه های محلی را عبور می دهد.
  • همه پارامترها بسته بندی شده (بصورت مرتب شده) و یک تماس سیستمی به منظور ارسال آنها به طرف دیگر شبکه برقرار می شود.
  • هسته، داده ها را بر روی شبکه ارسال و انتهای دیگر آن را دریافت می کند.
  • میزبان راه دور اطلاعات را به سرور عبور می دهد.
  • پارامترها به روال فرستاده شده و سپس اجرا می شود.
  • نتیجه به همان شیوه به مشتری ارسال می شود.