انجمن تخصصی موبایل برای ایرانیان - صفحه اصلی
  • ثبت نام


  • انجمن
    • ارسالهاي امروز
    • ثبت نام
    • تقویم
    • ابزار انجمن
      • نشانه گذاري انجمن ها به عنوان خوانده شده
    • کلیدهای میانبر
      • نمايش مديران انجمن ها
  • آخرین ارسال ها
  • پرتال تخصصی موبایل
  • فروشگاه اینترنتی
  • آپلود عکس
  • بازارچه
  • پکیج ویژه مستندهای جنجالی ایرانی

    • خانه
    • انجمن
    • بخش کامپیوتر- Computer Section
    • برنامه نویسی کامپیوتر - Pc Programming
    • برنامه نویسی تحت شبکه socket programming














    irantrack irantrack

    irantrack irantrack

    irantrack irantrack
    نمایش نتایج: از شماره 1 تا 2 , از مجموع 2

    تاپيك: برنامه نویسی تحت شبکه socket programming

    • LinkBack
      • LinkBack URL LinkBack URL
      • About LinkBacks About LinkBacks
    • ابزارهای تاپيك
      • پرینت این صفحه / نمایش بصورت پرینت
      • ارسال این صفحه توسط ایمیل…
      • اشتراک در این تاپيك…
    • حالت نمایش
      • تعویض به حالت ترکیبی
      • تعوض به حالت رشته ای
    1. 09-02-2008 #1
      Tom Clancy
      Tom Clancy آنلاین نیست.
      Tom Clancy آواتار ها

      تاریخ عضویت
      Mar 2008
      محل سکونت: کرج
      پست‌ها
      910
      تشکر : 149
      تشکر شده 153 بار در 299 پست

      برنامه نویسی تحت شبکه socket programming



      IP: در شبکه هر کامپیوتر دارای آدرس میباشد , این عدد آدرس 32 بیتی , به عبارتی 4 قسمتی را IP گویند.
      TCP: یکی از پروتکل های لایه انتقال در شبکه اتصالگرا میباشد Transmission Control Protocol .
      UDP: یکی از پروتکل های لایه انتقال در شبکه غیراتصالگرا میباشد .
      CLIENT:کامپیوتری که در شبکه سرویس گیرنده است.
      SERVER:کامپیوتری که به در خواستهای سرویس گیرنده ها پاسخ میدهد.

      خلاصه:

      امروزه با گسترش ارتبا طات و انواع شبکه های کامپیوتری جهت انجام امور نیاز مبرم به بر نامه های تحت شبکه از جمله socket programing احساس میشود , لذا در این مقاله به ا رائه مطالبی در این زمینه و ایجاد یک برنامه تحت شبکه(برنامه chat) میپردازم. در حقیقت این مقاله نقطه آغازی برای همه بر نامه نویسانی خواهد بود که به نحوی مجبور خو اهند شد برنامه کار بردی تحت شبکه اینترنت بنویسند.برای یک ارتباط نیاز به موارد زیر است :

      • ارتباط ادامه دار
      • زبان مشترک
      • معنای آدرس دهی

      ارتباط عمومی:
      پروتکلها : زبانهای مشترک اینترنت هستند.

      انواع آدرس در اینترنت :

      1- آدرس IP از جنس آدرس فیزیکی 161.12.188.167
      2- نام Domain از جنس آدرس منطقی ex.iraji .com
      آدرس IP آدرس 32 بیتی است که به 4 قسمت تقسیم می گردد محدوده اعداد در هر قسمت از 255- 0
      می باشد.
      5 طبقه بندی برای آدرس IP وجود دارد :

      توابع API در C :
      GETHOST BY NAME – NAME IP ADDRES
      GET HOST BY ADDRES – IP ADDRES AQME

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

      شماره پورت :
      16 بیت صحیح است . برای ارتباط نیاز به آدرس IP و شماره پورت می باشد.

      در TCP ارتباط تعریف می شود با Unix در unix 1024 پورت اول برای هر دو نوع پورتکلها است و weu known ports نامیده می شود.

      مدل tcp مبتنی بر اتصال است
      قابل اطمینان smtr،http ،telnet ،ftp
      رشته ای است (مسیل و نهر) (transmission control protocol / internet protocol)

      مدلp ud غیر قابل اتصال
      غیر قابل اطمینان tftp، nfs
      دیتا گرامی است . ( بر اساس packet) (user datagram protocol) چکسام

      مفهوم socket :
      فرض کنید در محیطی کار میکنید که فقط با فایل ها سر و کار داریم ,در چنین سیستمی ورودی خروجی هم (I/O) میتواند تو سط سیستم فایلها مدیریت شود.به عنوان مثال, صفحه نمایش را همانند یک فایل متنی در نظر بگیرید برای ا ینکه اطلاعا ت را در صفحه نمایش بفرستیم باید فایل را از نوع نوشتنی باز کنیم و اگر محتوای اشاره گر فایل خالی نبود یعنی سیستم عامل به فایل حافظه اختصاص داد میتوان در فایل اطلاعات را نوشت.

      میتوانیم این ساختار را برای ارتباط دو بر نامه کاربردی روی دو کامپیوتر گسترش دهیم , یعنی باید یک ارتباط با یک کامپیوترروی شبکه) با یک آدرس Ip خاص (و برنامه ای خاص روی کامپیوتر با آدرس پورت مشخص بگشاییم.
      سوکت ، ترکيبی از يک آدرس IP و پورت TCP ويا پورت UDP است . يک برنامه ، سوکتی را با مشخص نمودن آدرس IP مربوط به کامپيوتر و نوع سرويس ( TCP برای تضمين توزيع اطلاعات و يا UDP) و پورتی که نشاندهنده برنامه است، مشخص می نمايد. آدرس IP موجود در سوکت ، امکان آدرس دهی کامپيوتر مقصد را فراهم و پورت مربوطه ، برنامه ای را که داده ها برای آن ارسال می گردد را مشخص می نمايد.درزیر نام چند پروتکل برنامه کاربردی و آدرس پورت آنها مشخص شده است:

      بسیاری از برنامه های کاربردی تحت شبکه از یک شماره پورت خاصی برای ارسال و در یافت اطلاعات استفاده میکنند.به عنوان مثال برنامه فرستادن ایمیل به پورت 25 گوش میکند , ما در برنامه های کاربردی خود می توانیم از پورت دلخواه استفاده کنیم , به عنوان مثال شماره سوکت در یک برنامه تحت شبکه میتواند :2000 127.67.78.97 باشد که قالب کلی این آدرس به صورت Ip:Port میباشد .
      مفهوم Sap :
      در سمت client & server بسته های شکسته شده برنامه های کاربردی مربوطه با عبور از پورت مربوطه از لایه های دیگر شبکه عبور میکنند.این شماره پورت واسط بین لایه برنامه کاربردی و انتقال در حقیقت همان Sap میباشد .

      بنابراین ارتباط بین دو برنامه تحت شبکه مبادله اتلاعات بین دو نقطه TSap روی دو کامپیوتر در شبکه میباشد.همانطور که میتوان چندین فابل را همزمان باز نگه داشت در یک برنامه تحت شبکه همزمان میتوان چندین ارتباط باز و فعال داشته باشیم .مثلا از برنامه Yahoo messenger استفاده میکنیم در حقیقت ما از برنامه سمت client آن استفاده میکنیم و در server yahoo برنامه ای به پورتی که برنامه client اطلاعات را به آن میفرستد گوش میدهد.

      انواع سوکت :

      سوکت ها به طور کلی به 2 نوع میباشند:
      1- سوکت های نوع stream که از نوع اتصالگرا هستند , یعنی باید قبل از مبادله اطلا عات یک اتصال به صورت لوله فرضی بین client و server بوجود میاید, این نوع سوکت ها بر مبنای tcp هستند.
      2
      - سوکت های datagramکه از نوع بدون اتصال هستند , یعنی نیاز به برقراری ارتباط فرضی ندارند , پس هیچ امنیتی در این نوع ارتباط وجود ندارد, این نوع سوکت ها بر مبنایudp هستند.
      همواره باید به این نکته توجه کرد که در برنامه های تحت شبکه ارتباطات دو طرفه میباشد, یک برنامه ای که در سمت سرویس گیرنده اجرا میشود و دیگری در سمت سرویس دهنده.برنامه نویسی سوکت مربوط به لایه کاربردی میباشد و انتقال بسته های اطلاعاتی به لایه های دگر بر عهده سیستم عامل میباشد.
      قبل از وارد شدن در مقوله برنامه نویسی سوکت بد نیست الگوریتم کل کاری که بایستی در سمت سرویس دهنده همچنین در سمت مشتری انجام شود را بررسی نماییم :

      الف) یک سوکت را که مشخصه یک ارتباط است بوجود بیاوریم . این قسمت باید نوع ارتباط خود با سیستم عامل را (tcp یا upd ) معرفی نماییم . این کار در محیط یونیکس توسط تابع ()socket انجام می گیرد .

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

      ج) حال باید به سیستم عامل بگوییم کارش را برای پذیرش تقاضاهای ارتباط شروع نماید.این کار توسط تابع سیستمی ()listen انجام می شود . چون ممکن است تعداد تقاضاهای ارتباط زیاد باشد باید حد اکثر تعداد ارتباط tcp را که می توان پذیرفت مشخص کرد و برای آن بافر در نظر گرفت.

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

      ه) از دستورات () send و ()recv برای مبادله داده استفاده می شود.
      و) در پایان باید ارتباط خاتمه یابد . به دو صورت است:

      در برنامه مشتری بایستی اعمال زیر را انجام داد :
      الف) یک سوکت بوجود بیاوریم
      ب) نیازی نیست مانند سرویس دهنده به سوکت خود آدرس پورت نسبت دهیم یعنی لزومی به استفاده از دستور bind نیست چرا که برنامه سمت client منتظر تقاضای دیگران نیست بلکه خودش متقاضی برقراری ارتباط است . بنا بر این با تابع connect تقاضا را به سمت server می فرستیم .
      ج) از توابع ()send یا ()recv برای ارسال و در یافت داده اقدام کنید .
      د) ارتباط را با توابع close یا shut down می بندیم .

      توابع مورد استفاده در socket programming در :C
      * توابع socket غیر واقعی :
      Ret = parse _net work _args (args & argv & host & port &errmes)
      تنظیمات مربوط به شبکه را انجام می دهد و ویرایش می کند. به دنبال host و port می گردد و آنها را منتقل می کند . در صورت موفقیت صفررا برمی گرداند.
      **قسمت :server

      1)-Port _sk = socket(af_inet ,sock_stream ):

      2)-Port _sk = tcp _passive _ open (port)
      در قسمت server اجرا می شود.
      Port = تعداد rort هایی که به کار می رود .
      است . Port- sk توصیفگر socket
      3)-Bind (polt _ sk, &bind_ddr , addr _lenl);

      4)- Client _sk = accept (port _sk , &bind _ addr ,&lenl);

      :client قسمت ***
      1)-Serr_ sk = tcp _active_open (host ,port)
      Host = نام ماشین server
      Port = شماره پورتی که به کار می رود
      Server-sk = توصیفگر socket است .
      آدرس IP و HOST پیدا می شود :
      Host Ip = gethost by name(host name);
      2) Ser v _sk = secket (af _ inetو sock _ stream;
      3) connect( ser v _skو &bind _addr و addr _len);
      سوکت Serv _sk می تواند برای صحبت با سرور به کار رود .
      Header files های اصلی در زبان c برای برنامه نویسی socket :

      .<sys/ typas.h> لازمه انواع داده ای است
      .<errno.h> ها می باشد error شماره
      .<sys/sochet.n> و سیستمی را شامل میباشد socke ساختارها و ثابت های
      .<netdb.h.h> ساختارهای مربوطه به شبکه ای را شامل می باشد
      .<netinet/in.h > را شامل می شود socketتوابع مربوط .<arpa/inet.h> توابع کاربردی را شامل می باشد
      توابع مدیریت داده در شبکه :
      IP و نام dns یک host را بر می گردان * get host by name -
      نام service و پروتکل را بر می گرداند. * get serv by name -
      نام host را در شبکه محلی بر می گرداند. * get host name -
      * get server by name get serv by port get servent
      * getproto by name get proto by number get protobyeat
      * get net by name get net by add get net ent

      مقایسه ارسال و دریافت داده ها به روش : udp
      روال در هر دو برنامه سمت client ،server به یک شکل است :
      الف ) یک سوکت از نوع دیتا گرام ایجاد کنید . این کار با فراخوانی تابع ()socket با پارامتر sock-dgram انجام می شود
      ب) با تابع ()bind به سکوت ایجاد شده آدرس پورت مورد نظرتان را نسبت دهید.
      ج ) حال می توانید منتظر دریافت و یا ارسال داده ها باشید ( در دریافت آدرس برنامه مبداء ( آدرس ip و port ) مشخص می گردد و ارسال امکان پذیر است).

      ارسال و دریافت با توابع انجام می شود.

      نتیجه گیری:

      بر اساس تمام برنامه های کاربردی تحت شبکه لایه چهارم مفهومی به نام سوکت است . این مفهوم به منظور برقراری ارتباط برنامه های تحت شبکه و تبادل جریان داده ها بین پروسه ها ابداع شد . لذا این مقاله نقطه آغازی برای همه برنامه نویسانی خواهد بود که به نحوی مجبور خواهند شد برنامه کاربردی تحت شبکه اینترنت بنویسند.
      تا کی ما در این سایت گرد هم هستیم ؟! یک لحظه به این سوال فکر کن ...


      قهرمانان ازگارد: تنها بازي استراتژي فضايي تحت وب به زبان فارسي
      پاسخ با نقل قول پاسخ با نقل قول


    2. تبلیغات در موبایل برای ایرانیان


      • فول آلبوم آهنگ های تمامی خواننده های ایرانی
      • مستند جنجالی شیطان پرستان ایرانی
      • آموزش شعبده بازی + تردستی با ورق
      • آموزش تکنیک دفاع شخصی با دست خالی
      • پکیج استثنائی ۲۰۰ کارتون دوبله فارسی
      • سخنرانی دکتر انوشه(روابط دختر و پسر)
      • مستند بی نظیر حیات BBC Life 2009
      • مجموعه سخنرانی های جنجالی استاد دانشمند
      • کلکسیون مسابقات قویترین مردان جهان
      • مجموعه افکت های حرفه ای سینمایی
      • با این 3 دی وی دی استاد فتوشاپ شوید
      • آموزش آرایشگری مثلث طلایی
      • تکنیک ها و رموز موفقیت در زندگی
      • مجموعه کامل آهنگ های قدیمی و سنتی چهره
      • یادگیری سریع مکالمه انگلیسی با لهجه آمریکایی
      • مستند متافیزیک ماورای طبیعه (قیمت ارزان)
      • مسابقه “معجزه کاهش وزن” The Biggest Loser
      • مجموعه بزرگ آموزش فتوشاپ Lynda
      • آموزش تعمیر و نگهداری انواع خودروها
      • مستند جذاب توقف زمان – Time Warp با کیفیت HD
      • آموزش تقویت حافظه و تند خوانی مرد حافظه ایران


    3. irantrack irantrack

      irantrack irantrack

      irantrack irantrack
    4. 09-02-2008 #2
      Tom Clancy
      Tom Clancy آنلاین نیست.
      Tom Clancy آواتار ها

      تاریخ عضویت
      Mar 2008
      محل سکونت: کرج
      پست‌ها
      910
      تشکر : 149
      تشکر شده 153 بار در 299 پست

      برنامه نویسی تحت شبکه socket programming



      IP: در شبکه هر کامپیوتر دارای آدرس میباشد , این عدد آدرس 32 بیتی , به عبارتی 4 قسمتی را IP گویند.
      TCP: یکی از پروتکل های لایه انتقال در شبکه اتصالگرا میباشد Transmission Control Protocol .
      UDP: یکی از پروتکل های لایه انتقال در شبکه غیراتصالگرا میباشد .
      CLIENT:کامپیوتری که در شبکه سرویس گیرنده است.
      SERVER:کامپیوتری که به در خواستهای سرویس گیرنده ها پاسخ میدهد.

      خلاصه:

      امروزه با گسترش ارتبا طات و انواع شبکه های کامپیوتری جهت انجام امور نیاز مبرم به بر نامه های تحت شبکه از جمله socket programing احساس میشود , لذا در این مقاله به ا رائه مطالبی در این زمینه و ایجاد یک برنامه تحت شبکه(برنامه chat) میپردازم. در حقیقت این مقاله نقطه آغازی برای همه بر نامه نویسانی خواهد بود که به نحوی مجبور خو اهند شد برنامه کار بردی تحت شبکه اینترنت بنویسند.برای یک ارتباط نیاز به موارد زیر است :

      • ارتباط ادامه دار
      • زبان مشترک
      • معنای آدرس دهی

      ارتباط عمومی:
      پروتکلها : زبانهای مشترک اینترنت هستند.

      انواع آدرس در اینترنت :

      1- آدرس IP از جنس آدرس فیزیکی 161.12.188.167
      2- نام Domain از جنس آدرس منطقی ex.iraji .com
      آدرس IP آدرس 32 بیتی است که به 4 قسمت تقسیم می گردد محدوده اعداد در هر قسمت از 255- 0
      می باشد.
      5 طبقه بندی برای آدرس IP وجود دارد :

      توابع API در C :
      GETHOST BY NAME – NAME IP ADDRES
      GET HOST BY ADDRES – IP ADDRES AQME

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

      شماره پورت :
      16 بیت صحیح است . برای ارتباط نیاز به آدرس IP و شماره پورت می باشد.

      در TCP ارتباط تعریف می شود با Unix در unix 1024 پورت اول برای هر دو نوع پورتکلها است و weu known ports نامیده می شود.

      مدل tcp مبتنی بر اتصال است
      قابل اطمینان smtr،http ،telnet ،ftp
      رشته ای است (مسیل و نهر) (transmission control protocol / internet protocol)

      مدلp ud غیر قابل اتصال
      غیر قابل اطمینان tftp، nfs
      دیتا گرامی است . ( بر اساس packet) (user datagram protocol) چکسام

      مفهوم socket :
      فرض کنید در محیطی کار میکنید که فقط با فایل ها سر و کار داریم ,در چنین سیستمی ورودی خروجی هم (I/O) میتواند تو سط سیستم فایلها مدیریت شود.به عنوان مثال, صفحه نمایش را همانند یک فایل متنی در نظر بگیرید برای ا ینکه اطلاعا ت را در صفحه نمایش بفرستیم باید فایل را از نوع نوشتنی باز کنیم و اگر محتوای اشاره گر فایل خالی نبود یعنی سیستم عامل به فایل حافظه اختصاص داد میتوان در فایل اطلاعات را نوشت.

      میتوانیم این ساختار را برای ارتباط دو بر نامه کاربردی روی دو کامپیوتر گسترش دهیم , یعنی باید یک ارتباط با یک کامپیوترروی شبکه) با یک آدرس Ip خاص (و برنامه ای خاص روی کامپیوتر با آدرس پورت مشخص بگشاییم.
      سوکت ، ترکيبی از يک آدرس IP و پورت TCP ويا پورت UDP است . يک برنامه ، سوکتی را با مشخص نمودن آدرس IP مربوط به کامپيوتر و نوع سرويس ( TCP برای تضمين توزيع اطلاعات و يا UDP) و پورتی که نشاندهنده برنامه است، مشخص می نمايد. آدرس IP موجود در سوکت ، امکان آدرس دهی کامپيوتر مقصد را فراهم و پورت مربوطه ، برنامه ای را که داده ها برای آن ارسال می گردد را مشخص می نمايد.درزیر نام چند پروتکل برنامه کاربردی و آدرس پورت آنها مشخص شده است:

      بسیاری از برنامه های کاربردی تحت شبکه از یک شماره پورت خاصی برای ارسال و در یافت اطلاعات استفاده میکنند.به عنوان مثال برنامه فرستادن ایمیل به پورت 25 گوش میکند , ما در برنامه های کاربردی خود می توانیم از پورت دلخواه استفاده کنیم , به عنوان مثال شماره سوکت در یک برنامه تحت شبکه میتواند :2000 127.67.78.97 باشد که قالب کلی این آدرس به صورت Ip:Port میباشد .
      مفهوم Sap :
      در سمت client & server بسته های شکسته شده برنامه های کاربردی مربوطه با عبور از پورت مربوطه از لایه های دیگر شبکه عبور میکنند.این شماره پورت واسط بین لایه برنامه کاربردی و انتقال در حقیقت همان Sap میباشد .

      بنابراین ارتباط بین دو برنامه تحت شبکه مبادله اتلاعات بین دو نقطه TSap روی دو کامپیوتر در شبکه میباشد.همانطور که میتوان چندین فابل را همزمان باز نگه داشت در یک برنامه تحت شبکه همزمان میتوان چندین ارتباط باز و فعال داشته باشیم .مثلا از برنامه Yahoo messenger استفاده میکنیم در حقیقت ما از برنامه سمت client آن استفاده میکنیم و در server yahoo برنامه ای به پورتی که برنامه client اطلاعات را به آن میفرستد گوش میدهد.

      انواع سوکت :

      سوکت ها به طور کلی به 2 نوع میباشند:
      1- سوکت های نوع stream که از نوع اتصالگرا هستند , یعنی باید قبل از مبادله اطلا عات یک اتصال به صورت لوله فرضی بین client و server بوجود میاید, این نوع سوکت ها بر مبنای tcp هستند.
      2
      - سوکت های datagramکه از نوع بدون اتصال هستند , یعنی نیاز به برقراری ارتباط فرضی ندارند , پس هیچ امنیتی در این نوع ارتباط وجود ندارد, این نوع سوکت ها بر مبنایudp هستند.
      همواره باید به این نکته توجه کرد که در برنامه های تحت شبکه ارتباطات دو طرفه میباشد, یک برنامه ای که در سمت سرویس گیرنده اجرا میشود و دیگری در سمت سرویس دهنده.برنامه نویسی سوکت مربوط به لایه کاربردی میباشد و انتقال بسته های اطلاعاتی به لایه های دگر بر عهده سیستم عامل میباشد.
      قبل از وارد شدن در مقوله برنامه نویسی سوکت بد نیست الگوریتم کل کاری که بایستی در سمت سرویس دهنده همچنین در سمت مشتری انجام شود را بررسی نماییم :

      الف) یک سوکت را که مشخصه یک ارتباط است بوجود بیاوریم . این قسمت باید نوع ارتباط خود با سیستم عامل را (tcp یا upd ) معرفی نماییم . این کار در محیط یونیکس توسط تابع ()socket انجام می گیرد .

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

      ج) حال باید به سیستم عامل بگوییم کارش را برای پذیرش تقاضاهای ارتباط شروع نماید.این کار توسط تابع سیستمی ()listen انجام می شود . چون ممکن است تعداد تقاضاهای ارتباط زیاد باشد باید حد اکثر تعداد ارتباط tcp را که می توان پذیرفت مشخص کرد و برای آن بافر در نظر گرفت.

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

      ه) از دستورات () send و ()recv برای مبادله داده استفاده می شود.
      و) در پایان باید ارتباط خاتمه یابد . به دو صورت است:

      در برنامه مشتری بایستی اعمال زیر را انجام داد :
      الف) یک سوکت بوجود بیاوریم
      ب) نیازی نیست مانند سرویس دهنده به سوکت خود آدرس پورت نسبت دهیم یعنی لزومی به استفاده از دستور bind نیست چرا که برنامه سمت client منتظر تقاضای دیگران نیست بلکه خودش متقاضی برقراری ارتباط است . بنا بر این با تابع connect تقاضا را به سمت server می فرستیم .
      ج) از توابع ()send یا ()recv برای ارسال و در یافت داده اقدام کنید .
      د) ارتباط را با توابع close یا shut down می بندیم .

      توابع مورد استفاده در socket programming در :C
      * توابع socket غیر واقعی :
      Ret = parse _net work _args (args & argv & host & port &errmes)
      تنظیمات مربوط به شبکه را انجام می دهد و ویرایش می کند. به دنبال host و port می گردد و آنها را منتقل می کند . در صورت موفقیت صفررا برمی گرداند.
      **قسمت :server

      1)-Port _sk = socket(af_inet ,sock_stream ):

      2)-Port _sk = tcp _passive _ open (port)
      در قسمت server اجرا می شود.
      Port = تعداد rort هایی که به کار می رود .
      است . Port- sk توصیفگر socket
      3)-Bind (polt _ sk, &bind_ddr , addr _lenl);

      4)- Client _sk = accept (port _sk , &bind _ addr ,&lenl);

      :client قسمت ***
      1)-Serr_ sk = tcp _active_open (host ,port)
      Host = نام ماشین server
      Port = شماره پورتی که به کار می رود
      Server-sk = توصیفگر socket است .
      آدرس IP و HOST پیدا می شود :
      Host Ip = gethost by name(host name);
      2) Ser v _sk = secket (af _ inetو sock _ stream;
      3) connect( ser v _skو &bind _addr و addr _len);
      سوکت Serv _sk می تواند برای صحبت با سرور به کار رود .
      Header files های اصلی در زبان c برای برنامه نویسی socket :

      .<sys/ typas.h> لازمه انواع داده ای است
      .<errno.h> ها می باشد error شماره
      .<sys/sochet.n> و سیستمی را شامل میباشد socke ساختارها و ثابت های
      .<netdb.h.h> ساختارهای مربوطه به شبکه ای را شامل می باشد
      .<netinet/in.h > را شامل می شود socketتوابع مربوط .<arpa/inet.h> توابع کاربردی را شامل می باشد
      توابع مدیریت داده در شبکه :
      IP و نام dns یک host را بر می گردان * get host by name -
      نام service و پروتکل را بر می گرداند. * get serv by name -
      نام host را در شبکه محلی بر می گرداند. * get host name -
      * get server by name get serv by port get servent
      * getproto by name get proto by number get protobyeat
      * get net by name get net by add get net ent

      مقایسه ارسال و دریافت داده ها به روش : udp
      روال در هر دو برنامه سمت client ،server به یک شکل است :
      الف ) یک سوکت از نوع دیتا گرام ایجاد کنید . این کار با فراخوانی تابع ()socket با پارامتر sock-dgram انجام می شود
      ب) با تابع ()bind به سکوت ایجاد شده آدرس پورت مورد نظرتان را نسبت دهید.
      ج ) حال می توانید منتظر دریافت و یا ارسال داده ها باشید ( در دریافت آدرس برنامه مبداء ( آدرس ip و port ) مشخص می گردد و ارسال امکان پذیر است).

      ارسال و دریافت با توابع انجام می شود.

      نتیجه گیری:

      بر اساس تمام برنامه های کاربردی تحت شبکه لایه چهارم مفهومی به نام سوکت است . این مفهوم به منظور برقراری ارتباط برنامه های تحت شبکه و تبادل جریان داده ها بین پروسه ها ابداع شد . لذا این مقاله نقطه آغازی برای همه برنامه نویسانی خواهد بود که به نحوی مجبور خواهند شد برنامه کاربردی تحت شبکه اینترنت بنویسند.
      تا کی ما در این سایت گرد هم هستیم ؟! یک لحظه به این سوال فکر کن ...


      قهرمانان ازگارد: تنها بازي استراتژي فضايي تحت وب به زبان فارسي
      پاسخ با نقل قول پاسخ با نقل قول


    « تبدیل اعداد به حروف در زبانهای برنامه نویسی گوناگون | مقدمات برنامه نویسی موبایل »

    فروش استثنائی محصولات نوین | با قیمتی استثنائی

    • بهترین شعبده بازی های کریس آنجل (دوبله فارسی)
    • مسابقه جنجالی(دروغ نیم میلیون دلاری)زیرنویس فارسی
    • مستند جنجالی فوتبالیست های زن ایرانی
    • آموزش تصويري پينگ پونگ
    • بمب خنده مهران مديري – جديد
    • دوربین مخفی بازیگران هالیوودی
    • دو جنسه های ایرانی+دماغ عملی
    • تمام سریالها و شاهکارهای مهران مدیری
    • آنچه مردان و زنان به آن نیاز دارند
    • هنر عشق بازی در روابط زناشوئی


    • آموزش حرفه ای ورزش پارکور
    • آموزش مهارتهاي فوتبال توسط ديويد بکهام+هديه
    • گلچین بهترین قسمتهای خنده بازار
  • تمامی نکات و دانستنی های یک ازدواج موفق
  • مجموعه کامل شب هاي برره (بدون سانسور)

  • اطلاعات تاپیک:

    Users Browsing this Thread

    در حال حاضر 1 کاربر در حال بازدید از این تاپیک هست.(شامل 0 کاربر و 1 مهمان)

    http://www.irantrack.com/novin/zqd7l5b9lozqvr6w8jb.jpg
    مستند ابتذال در سینمای ایران + هدیه
    توضیحات بیشتر
    خرید پستی

    http://www.irantrack.com/novin/200kartoon-k.gif
    پکیج استثنائی ۲۰۰ کارتـون دوبـله فـارسی جدید |۹۰ هزار تومان زیر قیمت
    توضیحات بیشتر
    خرید پستی

    http://www.irantrack.com/novin/2qsb4kit7yyqj5o2bzvr.gif
    آب کردن چربی های اضافی در منزل (تضمینی)
    توضیحات بیشتر
    خرید پستی

    http://www.irantrack.com/novin/k055d0pjer1kjfftnzzl.gif
    آموزش تقویت حافظه و تند خوانی (دکتر سیدا: مرد حافظه ایران)
    توضیحات بیشتر
    خرید پستی

    http://www.irantrack.com/novin/0x3yymtrjettye310y53.jpg
    کاهش وزن تنها در ٣٠ دقیقه
    توضیحات بیشتر
    خرید پستی

    • تماس با ما
    • mobile4persian
    • بایگانی
    • بالا
    اکنون ساعت 01:36 PM برپایه ساعت جهانی (GMT - گرینویچ) +3.5 می باشد.
    Powered by vBulletin .
    Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.
    Search Engine Friendly URLs by vBSEO