بخشی از پاورپوینت
اسلاید 1 :
برنامه نویسی سوکت
- تولید برنامه های کاربردی که بتوانند با استفاده از خدمات TCP/IP تهیه شده توسط سیستم عامل، و پروتکل های رایج عملیات مورد نیاز کاربر را فراهم آورد.
- برنامه نویسی تحت شبکه اینترنت
- متفاوت در ظاهر بین سیستم عاملهای متفاوت – زبانهای متفاوت
- شبیه در مفاهیم اصلی/ بنیادی در تمام سیستم عاملها و زبانها
اسلاید 2 :
شباهت عملیات فایل و سوکت
- ایجاد ساختار FCB
- باز کردن فایل
–موفق: هندل فایل
–ناموفق: -1
- خواندن یا نوشتن در فایل
–Read(), write()
- بستن فایل
- ایجاد ساختار TCB
- ایجاد اتصال
–موفق: شماره سوکت
–ناموفق: -1
- ارسال یا دریافت از اتصال
–send(), receive()
- قطع ارتباط
اسلاید 3 :
انواع سوکت های مهم
- سوکت های استریم (اتصال گرا)
- استفاده از اتصال TCP
- سوکت های دیتاگرام (بدون اتصال)
- استفاده از اتصال UDP
_____________________________________________________________
.Aسوکت های همزمان (Synchronous )
.Aاجرای فقط یک نخ
.Bقطع اجرا هنگام receive
.Bسوکت های غیر همزمان( Asynchronous)
.Aاجرای چند نخ
.Bادامه اجرا همزمان با receive
اسلاید 4 :
سرویس دهنده - مشتری
- برنامه شروع کننده / مشتری / Initiator / Client
- برنامه پذیرنده / سرویس دهنده / Listener / Server
- برنامه اجرا شونده در این دو سو با هم اندکی تفاوت دارند.
اسلاید 5 :
عملیات سمت سرویس دهنده
- تولید یک سوکت
- تولید و ذخیره فضا جهت ساختار داده TCB
- تخصیص شماره پورت به سوکت
- Bind – مقید کردن شماره پورت به عددی که مشتری ها آنرا می شناسند.
- تعلیق تا زمان دریافت درخواست
- Listen
- پذیرش یک درخواست
- Accept – مرتبط کردن یکی از درخواست ها به این نخ
- ارسال و دریافت داده
- Recv یا Send
- قطع ارتباط
- Close یا Shutdown
اسلاید 6 :
عملیات سمت مشتری
- تولید یک سوکت
- تولید و ذخیره فضا جهت ساختار داده TCB
- تخصیص شماره پورت به سوکت (اختیاری است و معمولاً انجام نمی شود.)
- Bind – مقید کردن شماره پورت به عددی که مشتری ها آنرا می شناسند.
- درخواست اتصال
- Connect – ایجاد یک ارتباط
- ارسال و دریافت داده
- Recv یا Send
- قطع ارتباط
- Close یا Shutdown
اسلاید 7 :
توابع و متدهای مرتبط
- بستگی تام به سیستم عامل و نیز زبان مورد استفاده دارد.
- کتاب جزئیات توابع در سیستم عامل Unix و زبان C را شرح داده است.
- توابع در دیگر سیستم عاملها و زبانها با اندکی تفاوت وجود دارند.
- برای برنامه نویسی، جزئیات و تفاوتها باید بدقت مورد بررسی قرار گیرند.
- یک روش مناسب، بررسی برنامه های نمونه ارائه شده در بسته کامپایلر است.