رفتن به مطلب



iran rules jazbe modir
ADS mahak

جستجو در تالارهای گفتگو

در حال نمایش نتایج برای برچسب های 'سوکت'.



تنظیمات بیشتر جستجو

  • جستجو بر اساس برچسب

    برچسب ها را با , از یکدیگر جدا نمایید.
  • جستجو بر اساس نویسنده

نوع محتوا


انجمن آموزش امنیت و راه های مقابله با نفوذ

  • انجمن های اصلی تیم
    • قوانین و اساسنامه ی انجمن
    • آخرین خبرها
    • اطلاعیه ها
    • مدیران
    • دوره های آموزشی
    • انتقادات پیشنهادات
  • آموزش های تخصصی
    • برنامه نویسی
    • هکینگ
    • امنیت
    • شبکه
    • سخت افزار
    • متفرقه
  • پرسش و پاسخ (FAQ)
    • سوالات و مشکلات پیرامون برنامه نویسی
    • سوالات و مشکلات پیرامون هکینگ
    • سوالات و مشکلات پیرامون امنیت
    • سوالات و مشکلات پیرامون شبکه
    • سوالات و مشکلات پیرامون سخت افزار
    • سوالات و مشکلات پیرامون سیستم عامل
    • سوالات و درخواست های متفرقه
  • سیستم عامل
  • بخش ویژه (مخصوص اعضای ویژه)
  • پروژه های تیم
  • مسابقات
  • عمومی
  • بحث آزاد علمی
  • بخش دریافت
  • آرشیو

جستجو در ...

جستجو به صورت ...


تاریخ ایجاد

  • شروع

    پایان


آخرین به روز رسانی

  • شروع

    پایان


فیلتر بر اساس تعداد ...

تاریخ عضویت

  • شروع

    پایان


گروه


درباره من


جنسیت


محل سکونت

2 نتیجه پیدا شد

  1. کاربرد پایتون در شبکه میدانیم پایتون زبانی است با قابلیت های بسیار، ازبرنامه نویسی برای وب گرفته تاهوش مصنوعی و.... امروز میخواهیم قدرت این زبان محبوب را در شبکه بررسی کنیم و بفهمیم چه کاربردی دارد؟ چگونه میتوان از این زبان در بحث شبکه استفاده کرد؟ زبان پایتون با استفاده از ماژول خود به نام سوکت در شبکه کار میکند پس قبل از آن ما شما را با تاریخچه این ماژول وهمچنین تعریفی ازآن آشنا میکنیم سپس آموزش پایتون سوکت را به طورمختصر برای شما بیان میکنیم پس باماهمراه باشید.
  2. Doctor Robot

    Programming-Csharp سوکت چیست؟(SOCKET)

    سوکت به دو رابط فایل مانند در دو سوی ارتباطهای شبکه ای گفته میشه که در برنامه نویسی از اونا استفاده میکنیم. یعنی فرض کن الف و ب میخوان با هم تماس بگیرن. خب فرضا ب درحال گوش دادن برای تماس هست (سرور) و الف باهاش توسط توابع مربوطه تماس میگیره، بعد از اینکه ب ارتباط رو پذیرفت، در هر دو طرف سوکت هایی برای ارتباط ایجاد میشن که توسط توابع و روشهایی شبیه به توابع و روشهایی که با اونها در فایلهای معمولی مینویسیم و میخونیم از اونها استفاده میکنیم. یعنی مثلا وقتی در سوکتی که در سمت ب ایجاد شده اطلاعاتی رو مینویسیم، اون اطلاعات به الف ارسال میشه. و وقتی الف اطلاعاتی رو به ب ارسال میکنه اینطور بنظر میرسه که این اطلاعات در سوکت ذخیره شده که بعد با توابع خواندن از سوکت اون اطلاعات رو از سوکت استخراج میکنیم. البته امروزه در کتابخانه های سوکت سطح بالا احتمالا شما جز یکسری متغییر به اسم سوکت چیزی نمیبینید، ولی بطور مثال در سیستمهای قدیمی تر یا یونیکسی ها، عملا فایلهایی مجازی روی سیستم فایل ایجاد میشن که نمایندهء اون سوکت ها هستن و میشه مثل فایل معمولی از اونها خوند یا در اونها نوشت (که نتیجتا این عملیات به شبکه منتقل میشه و به طرف دیگر میرسه). یعنی اصلا فکر میکنم در لینوکس میتونید این کار رو توسط توابع فایل معمولی انجام بدید و حتی داده ها رو از خط فرمان توسط ریدایرکشن معمولی به اونها بفرستید یا بخونید. یعنی با سوکت ها در لینوکس میتونید مثل فایلهای معمولی برخورد کنید. البته مسلما با این وجود سوکت ها با فایلهای معمولی تفاوتهای مهمی دارن. درواقع عملیات مربوط به سوکت ها در هستهء سیستم عامل لینوکس انجام میشه (عملا چیزی روی دیسک سخت نوشته و خونده نمیشه)؛ یعنی سوکت ها فایلهایی مجازی هستن. فرق دیگه مثلا اینه که در فایل معمولی وقتی اطلاعاتی نوشته میشه در همونجا باقی میمونه، ولی در سوکت این اطلاعات به طرف مقابل ارسال میشن و در سوکت باقی نمیمونن (که بعد خودتون بتونید بخونید)، یا وقتی اطلاعاتی رو از فایل معمولی میخونید اون اطلاعات از فایل پاک نمیشن ولی در سوکت خواندن اطلاعات باعث حذف اونها از سوکت میشه. سوکت یک رابط پایه ای در ارتبط بین دو برنامهء لوکال یا ریموت هست که پروتکل خاصی نداره. یعنی شما میتونید هر دیتایی رو به هر شکلی توسط سوکت ها ارسال و دریافت کنید. این قرارداد و کار دو طرف هست که از چه پروتکل و فرمتی برای ارسال و دریافت اطلاعات استفاده کنن. بطور مثال HTTP یک پروتکل هست که روی سوکت های زیرین که از نوع TCP هستن استفاده میشه. سوکت هایی که ما با اونها در شبکه و اینترنت سروکار و داریم عمدتا دو نوع هستن، یکی TCP و یکی UDP. سوکت های TCP برای ارسال و دریافت نیاز به اتصال اولیه دارن؛ یعنی نیاز هست دو طرف با هم اتصال اولیه و با توافق و تنظیم پارامترهای لازم برقرار کنن. و خاصیت دیگرش اینه که شما اطلاعات رو ارسال میکنید و بقیهء کارها رو خود سوکت و سرویسهای سطح پایینتر بصورت خودکار انجام میدن؛ یعنی تضمین میکنن که بسته های اطلاعاتی شما بصورت سالم و کامل طبق ترتیب به مقصد برسن. البته اگر مشکل جدی در ارتباط بوجود بیاد که اطلاعات به هیچ وجه نتونن بصورت سالم و کامل دریافت و ارسال بشن، این مشکل با استفاده از خطا و (مقدار برگشتی) توابع و Exception های مربوطه به اطلاع برنامه میرسه. در سوکت های UDP نیاز به هیچ اتصال و توافق دوطرفهء قبلی نیست و هر طرف میتونه هر زمان همینطوری هرچیزی رو که میخواد به آدرس و پورتی از ماشین مقصد که میخواد ارسال کنه. در اینصورت باید در اون زمان برنامهء مربوطه روی ماشین دیگر روی آدرس و پورت مورد نظر درحال انتظار باشه، وگرنه اطلاعات دریافتی نیست و نابود میشن. ضمنا این نوع سوکت ها هیچ تضمینی برای دریافت کامل و مرتب اطلاعات در سمت دیگه نمیدن و این موارد رو برنامه نویس باید خودش برنامه نویسی کنه. یعنی شما باید به طریقی از اینکه اطلاعات ارسالی به مقصد رسیدن مطمئن بشید و اگر نرسیدن اونها رو مجددا ارسال کنید تا وقتی که در سمت مقابل دریافت بشن. ضمنا اطلاعات در این روش ممکنه به ترتیب های نامعین به مقصد برسن که باید این رو هم خودتون هندل کنید. یعنی مثلا اگر اطلاعاتی رو (فرضا 1000 بایت اول از یک فایل تصویر رو) اول ارسال کنید و بعد بخش دوم اطلاعات رو (1000 بایت بعدی تصویر رو) ارسال کنید، هیچ تضمینی وجود نداره که 1000 بایت اول قبل از 1000 بایت دوم به مقصد برسه. ضمنا اطلاعات ارسال شده حتی ممکنه بصورت تکراری در سمت دیگر دریافت بشه؛ یعنی ممکنه 1000 بایت اول ارسالی، در طرف دوم دو بار یا بیشتر دریافت بشه. بنابراین برای دریافت صحیح فایل شما (یا هر نوع اطلاعات دیگری) در طرف دیگه، باید تمام این موارد رو درنظر گرفته و هندل کنید. یعنی مثلا روی بخشهای مختلف فایل که ارسال میکنید شماره بذارید و در طرف مقابل بر اساس اون شماره ها اطلاعات مرتب بشن. موقعی که مرورگر وب شما با سرور تماس میگیره درواقع اول یک ارتباط سوکتی TCP با اون سرور برقرار میکنه و بعد اطلاعات بر اساس فرمت و استاندارد و قراردادهای پروتکل HTTP با سرور مبادله میشن. اتصالهای Persistent که در بحث HTTP و سرورهای وب میشنوید درواقع به اون ارتباط سوکتی TCP زیرین مربوط میشن که اگر ارتباط TCP مورد نظر فقط برای یک درخواست و پاسخ HTTP استفاده بشه و بعدش ارتباط TCP بسته بشه، یک اتصال غیر Persistent رو داریم، و اگر سوکت های TCP با یک درخواست و پاسخ از بین نرن و ارتباط TCP همچنان باز بمونه و برای درخواست و پاسخهای دیگری هم استفاده بشه، بهش اتصال Persistent گفته میشه. اتصال Persistent برای HTTP در نسخهء 1.1 پروتکل HTTP برای استفادهء بهینه تر از منابع دو طرف و سرعت بیشتر در مرورگرها و سرورها طراحی شد. اگر برای هر درخواست یک اتصال TCP مجدد ایجاد کنیم، عملیات اتصال اولیهء سوکت ها (صحبت کردن و توافق و تنظیم پارامترهای اولیه) هر بار باید تکرار بشه و این نیاز به تعداد بیشتری رفت و برگشت اطلاعات بین کلاینت و سرور داره و در نتیجه در کل زمان و منابع بیشتری در هر دو طرف مصرف میشه. پروتکل هایی مثل HTTP, FTP و غیره همه چیزی نیستن جز قراردادهایی برای روش و فرمت و رفتارهای ارسال و دریافت اطلاعات بین دو طرف، و همهء این پروتکل ها برای ارسال واقعی اطلاعات خودشون از سوکت ها (معمولا از نوع TCP) استفاده میکنن.
×
×
  • جدید...