کاربر:ZahraaaNajafi/برنامه نویسی شبکه های کامپیوتری

از ویکی‌پدیا، دانشنامهٔ آزاد

برنامه نویسی شبکه های کامپیوتری شامل نوشتن برنامه های کامپیوتری است که باعث ایجاد برقراری ارتباط میان پروتکل ها در یک شبکه کامپیوتری میشود.

ارتباطات اتصال گرا و ارتباطات بدون اتصال[ویرایش]

به طور کلی بسیاری از ارتباطات را می توان به دونوع اتصال گرا وبدون اتصال تقسیم کرد.

نوع این ارتباط به پروتکل ارتباطات بستگی دارد نه به رابط برنامه نویس نرم افزار(API).

نمونه هایی ازپروتکل های ارتباطات اتصال گراعبارتند از پروتکل کنترل انتقال(TCP) وپروتکل (SPX)نمونه هایی از پروتکل های بدون اتصال عبارتند از پروتکل دیاگرام کاربر(UDP)

rowIP,IPx.

سرویس گیرنده وسرویس دهنده[ویرایش]

درارتباطات اتصال گرا معمولا نقش های متفاوتی برای بخش های ارتباطی وجوددارد. یک بخش معمولا درانتظار ارتباطات ورودی است که این بخش به عنوان سرور شناخته می شودوبخش دیگر که برقرار کننده ی ارتباط است وسرویس گیرنده می گوبند.

درارتباطات بدون اتصال یک طرف (سرور)منتظر بسته ورودی است وطرف دیگر(سرویس گیرنده)به عنوان فرستنده بسته تلقی می شود.

پروتکل های محبوب و API ها[ویرایش]

برنامه نویسی شبکه عموما لایه های مختلف مدل OSI را پوشش می دهد.(اکثر برنامه نویسی های کاربردی متعلق به لایه چهارم وبالاتر هستند.)

جدول زیر نمونه هایی از پروتکل های متعلق به لایه های مختلف OSI وAPI های محبوب برای آن ها رانشان می دهد.

لایه OSI / ISO پروتکل API
L3 (شبکه) IP سوکت خام
L4 (حمل و نقل) TCP ، UDP ، SCTP سوکت های Berkeley
L5 (جلسه) TLS OpenSSL
L7 (نرم افزار) HTTP مختلف
  • W. ریچارد استیونز: برنامه نویسی شبکه یونیکس، دوره 1، ویرایش دوم: API های شبکه: سوکت و XTI، Prentice Hall، 1998، شابک ‎۰−۱۳−۴۹۰۰۱۲-X

[[رده:شبکه‌های رایانه‌ای]] [[رده:ارتباطات بین پردازشی]] [[رده:برنامه‌نویسی]]