رایانه شما هر روز بدون نقص از این پروتکل ها استفاده می کند، اما آنها واقعاً چه کاری انجام می دهند؟
آیا تا به حال فکر کرده اید که اینترنت چگونه کار می کند؟ چگونه از راحتی خانه خود می توانید تصاویر، ایمیل ها، تماس ها و مشاهده وب سایت ها را از دستگاه متصل به اینترنت خود ارسال و دریافت کنید؟ این اقدامات به پورت های TCP و UDP بستگی دارد. این پورت ها چگونه کار می کنند و چه هستند؟
قبل از پرداختن به موضوع، باید بفهمید که پورت چیست. رایانه ها از پورت ها برای برقراری ارتباط و ایجاد ارتباط با رایانه های دیگر در شبکه استفاده می کنند. پورت مورد نظر در اینجا یک جزء فیزیکی نیست بلکه یک نقطه پایان مجازی بین دو یا چند کامپیوتر است. رایج ترین پورت ها در اینترنت پورت های TCP و UDP هستند.
پورت های TCP چیست؟
TCP مخفف عبارت Transmission Control Protocol است و یک پروتکل اتصال گرا است. در شبکه، پروتکل ها قوانین یا استانداردهایی هستند که نحوه انتقال داده ها بین دستگاه ها را کنترل می کنند. TCP یک پروتکل اتصال گرا نامیده می شود زیرا قبل از ارسال هر گونه داده، یک ارتباط بین دستگاه های گیرنده و فرستنده برقرار می کند.
پورت های TCP پورت هایی هستند که با پروتکل های کنترل انتقال مطابقت دارند. برخی از پورتهای TCP شامل پورتهای پروتکل انتقال فایل (20 و 21) برای انتقال فایل، پورت SMTP (25) و پورت IMAP (143) برای ایمیلها و پورت Secure Shell (22) هستند.
پورت های TCP چگونه کار می کنند؟
پورت های TCP قبل از اشتراک گذاری داده ها، اتصالات ایجاد می کنند. به عنوان مثال، اگر می خواهید به دوست خود در مورد یک فیلم یا بازی جدید بگویید، می توانید یک تماس تلفنی برقرار کنید. شما شماره دوستتان را می گیرید و اگر او تماس گرفت و تأیید کرد که شما در آن طرف خط هستید، او تلفن را برمی دارد. سپس می توانید شروع کنید به او در مورد بازی بگویید.
پورت های TCP نیز به همین شکل کار می کنند. قبل از انتقال داده، اتصال ایمن بین فرستنده و دستگاه گیرنده تضمین می شود. اما چگونه دستگاه هایی که از پورت های TCP برای دریافت یا ارسال داده استفاده می کنند، این اتصال را در وهله اول برقرار می کنند؟ آنها این کار را با استفاده از دست دادن سه طرفه انجام می دهند.
دست دادن سه طرفه چیست؟
در TCP، دستگاهی که داده ها را ارسال می کند به دستگاهی که قرار است آن را دریافت کند متصل می شود. روشی که پورت های TCP اتصالات قابل اعتماد برقرار می کنند، دست دادن سه طرفه نامیده می شود.
همانطور که از نام آن پیداست، یک دست دادن سه طرفه به سه تعامل مختلف نیاز دارد که به شکل سه پیام است: SYN→SYN-ACK→ACK.
اولین بخش SYN است. دستگاه فرستنده یک پیام SYN (شماره دنباله همگامسازی شده) را برای برقراری ارتباط با رایانه گیرنده ارسال میکند. سعی دارد بگوید “سلام! آیا برای برقراری ارتباط در دسترس هستید؟”
اگر دستگاه دریافت کننده برای برقراری اتصال در دسترس باشد، به دستگاهی که درخواست اتصال را ارسال می کند با یک بخش SYN-ACK پاسخ می دهد. بخش SYN-ACK درخواست اتصال را تأیید می کند و در ازای آن یک شماره دنباله همگام شده ارسال می کند. به زبان ساده، دستگاه می گوید: “بله، من درخواست شما را تایید می کنم و مایل به برقراری ارتباط هستم.”
هنگامی که این اتفاق می افتد، دستگاه فرستنده یک قطعه ACK را به دستگاه دریافت کننده می فرستد و به آن می گوید که پیام خود را تأیید کرده است. سپس یک اتصال تشکیل می شود و شروع به انتقال داده می کند. هنگامی که انتقال داده تایید و تکمیل شد، اتصال به پایان می رسد.
به این ترتیب تمام داده های ارسال شده به دستگاه گیرنده کامل شده و به ترتیب صحیح ارسال می شود. علاوه بر این، هیچ بسته گمشده ای وجود ندارد زیرا ابتدا یک اتصال برقرار شد.
پورت های UDP چیست؟
UDP مخفف User Datagram Protocol است. پروتکل User Datagram بدون اتصال است، به این معنی که یک دستگاه میزبان میتواند دادهها را بدون ایجاد ارتباط از قبل به گیرنده خود ارسال کند. پورت های UDP به پروتکل های UDP/IP بستگی دارند. پورت های UDP شامل پورت DNS (53)، پورت Dynamic Host Configuration Protocol (68) و پورت Kerberos (88) است که توسط سرویس های بازی استفاده می شود.
پورت های UDP چگونه کار می کنند؟
برخلاف پورتهای TCP، درگاههای UDP نیازی به برقراری ارتباط قبل از انتقال داده ندارند. بنابراین، اگر میخواهید به دوستتان درباره فیلم جدیدی با تقلید از پورت بالا بگویید، باید مکالمه خود را فریاد بزنید و امیدوار باشید که دوستتان در نزدیکی شما باشد و صدای شما را بشنود. خیلی غیر قابل اعتماد است، درست است؟
مسئولیت دریافت اطلاعاتی که می خواهید منتقل کنید فقط بر عهده دوست شماست. از آنجایی که شما هنوز ارتباط برقرار نکرده اید، ممکن است دوست شما به درستی صدای شما را نشنود و فقط تکه ها و قطعات را بشنود یا اصلاً هیچ چیز را نشنود.
در پورتهای UDP، میزبان دادهها را در بستهها (بخشهای کوچک) بدون مقصد مشخصی در ذهن ارسال میکند. سپس امیدوار است که دستگاه دریافت کننده آن بسته ها را دریافت کند، که قابل اعتماد نیست زیرا تضمین نمی کند که داده ها به طور یکپارچه دریافت شوند. در نتیجه، بسته ها به انتهای گیرنده نمی رسند و داده ها از بین می روند. این به عنوان از دست دادن بسته شناخته می شود.
تفاوت بین پورت های TCP و UDP چیست؟
اگرچه پورت های TCP عملکرد یکسانی را برای ارسال اطلاعات در سراسر اینترنت انجام می دهند، اما ویژگی ها و کاربردهای متفاوتی دارند.
قابلیت اطمینان
یک پورت TCP برای ارتباط و انتقال داده قابل اعتمادتر است زیرا به عنوان یک پروتکل اتصال گرا، قبل از ارسال داده، با استفاده از یک دست دادن سه طرفه با دو دستگاه ارتباط برقرار می کند. به این ترتیب تمام داده ها و به ترتیب درست دریافت می شوند. و هنگامی که خطایی در فرآیند وجود دارد، تشخیص آن آسان است. اما، این در مورد پورت های UDP یکسان نیست.
به دلیل قابلیت اطمینان، پورت های TCP برای خدماتی استفاده می شود که در آنها به انتقال امن و کامل داده مانند ایمیل ها، تصاویر، وب سایت ها و غیره نیاز دارید.
زمان
از آنجایی که پورتهای UDP پروتکلهای بدون اتصال هستند، با برقراری نکردن اتصالات قبل از ارسال بستههای داده، در زمان زیادی صرفهجویی میکنند، که برای سرویسهای حساس به زمان و جایی که دادهها در زمان واقعی دریافت میشوند مفید است. پورت های UDP در پخش ویدئو، صدا و بازی استفاده می شود.
پورت های TCP و UDP، توضیح داده شده است
پورت های TCP و UDP اصطلاحات شبکه ای هستند که شما به طور منظم نمی شنوید، اما آنها پایه اینترنت ما هستند. این دو پورت نقش بزرگی در زندگی روزمره شما دارند، زیرا بدون این پورت ها، انتقال داده تقریبا غیرممکن خواهد بود.