از پارسکدرز بیشترین بهره را ببرید و رویای کاری خود را زندگی کنید.
پنج سال پیش منتشر شده
تعداد بازدید: 1194
کد پروژه: 90396
شرح پروژه
با سلام
برای درس شبکه پروژه ای دارم که توش باید روی یک مسیر غیر قابل اعتماد، یک پروتکل قابل اعتماد رو پیاده سازی کنم (همون کاری که TCP انجام میده)
سرور و کلاینت هر دوبه صورت دو برنامه ی جدا روی یک ماشین خواهند بود (از آی پی 127.0.0.1 استفاده خواهد شد)
باید ابتدا بینشون اتصال برقرار بشه (three-way handshake) و بعد پکت هایی به سایز حداکثر یک کیلو بایت فرستاده بشه و کلاین اعلام کنه که فایل دریافت شده (ACK)
فایل ها به صورت تک تک فرستاده میشن(مالتی ترد نیاز نیست) اما برای یک مورد مالتی ترد نیازه ، هر بار که سرور بسته ای ارسال میکنه recv() روی کلاینت باید قفل بشه تا زمانی که بسته بهش برسه و بعد ACK رو برگردونه ، یک تایمر نیازه که وقتی تموم شد اگر بسته ای از سرور دریافت نشده بود ACK بسته ی قبلی که دریافت شده رو دوباره بفرسته (این برای اینه که به سرور اعلام بشه بسته بهم نرسیده). این کار با بهره گیری از pthread انجام خواهد شد.
این برنامه باید روی یک لینوکس Ubuntu نسخه ی 18.04 قابل کامپایل شدن باشه
از g++ برای کامپایل استفاده خواهد شد که نسخه ی 7.3.0 هست (فکر کنم سی پلاس پلاس هم همین نسخه ست ، نباید از نسخه های بالاتر استفاده کنم)
ای پی آی POSIX استفاده خواهد شد ، از SO_RCVTIMEO نباید استفاده کنم
کامند برای اجرای برنامه ها این شکلیه (1080 پورتی هست که استفاده خواهد شدو از md5sum برای مقایسه ی فایل ارسالی و دریافتی استفاده خواهد شد)
./cs494rcp_server 1080
./cs494rcp_client 127.0.0.1 1080 ./test.jpg
برای سابمیت پروژه سورس کد (c & .h.) رو نیاز دارم. همچنین Make cs494rcp_server و Make cs494rcp_client و Make clean. یک BASH هم روی لینوکس باید نوشته بشه که دو برنامه ی سرور و کلاینت رو فراخوانی و اجرا کنه و بعد تستشون کنه. همه ی اینها باید TAR بشن.
دو فایل به زبان انگلیسی هم فرستادم که این پروژه رو شرح داده. اگر نیاز به اطلاعات بیشتر یا مکالمه بود همین جا بهم اطلاع بدین تا با هم در تماس باشیم
در انتها چند لینک با اطلاعات مفید مربوط به این پروژه (به زبان انگلیسی) می گذارم
http://www.linuxhowtos.org/C_C++/socket.htm
http://www.gnu.org/software/make/manual/make.html
https://www.cs.cmu.edu/afs/cs/academic/class/15492-f07/www/pthreads.html
https://www3.physnet.uni-hamburg.de/physnet/Tru64-Unix/HTML/APS33DTE/DOCU_007.HTM#sig-and-timers-sec
این پروژه شامل 2 فایل مهم است، لطفا قبل از ارسال پیشنهاد حتما نسبت به بررسی این فایل اقدام فرمایید.
مهارت ها و تخصص های مورد نیاز
بودجه
750,000 تومان تا 5,000,000 تومان
مهلت برای انجام
4روز
وضعیت مناقصه
بسته
درباره کارفرما
عضویت پنج سال پیش
قادر به انجام این پروژه هستید؟
مهلت ارسال پیشنهاد قیمت برای این پروژه تمام شده است
به رایگان یک حساب کاربری بسازید
مهارتها و تخصصهای خود را ثبت کنید، رزومه و نمونهکارهای خود را نشان دهید و سوابق کاری خود را شرح دهید.
به شیوهای که دوست دارید کار کنید
برای پروژههای دلخواه در زمان دلخواه پیشنهاد قیمت خود را ثبت کنید و به فرصتهای شغلی منحصر به فرد دسترسی پیدا کنید.
با اطمینان دستمزد دریافت کنید
از زمان شروع کار تا انتهای کار به امنیت مالی شما کمک خواهیم کرد. وجه پروژه را از ابتدای کار به امانت در سایت نگه خواهیم داشت تا تضمین شودکه بعد از تحویل کار دستمزد شما پرداخت خواهد شد.
میخواهید شروع به کار کنید؟
یک حساب کاربری بسازید
بهترین مشاغل فریلنسری را پیدا کنید
رشد شغلی شما به راحتی ایجاد یک حساب کاربری رایگان و یافتن کار (پروژه) متناسب با مهارتهای شما
است.
پیدا کردن کار (پروژه)
تماشای دمو روش کار