0

TCP/IP Flags

همان طور که میدانید پروتکل TCP از Flag های مختلفی تشکیل شده است که در این مقاله به معرفی آنان می پردازیم .

اگر با پروتکل TCP آشنایی ندارید مقاله ی ما را بخوانید https://www.geekgap.ir/network/tcp-ip/

در یک بسته در پروتکل TCP شش بیت برای Flag ها در نظر گرفته شده است :

بیت URG:

اگر این بیت مقدار 1 داشته باشد، معین میکند که در فیلد Urgent Pointer (در اين فيلد يک عدد به عنوان اشاره قرار ميگيرد که موقعيت دادههاي اظطراري را درون بسته TCP معين ميکند. ) مقداری قابل استناد و معتبر قرار دارد و بایستی مورد پردازش قرار گیرد. در صورتی که این بیت صفر باشد فیلدUrgent Pointer شامل مقدار معتبر و قابل استنادی نیست و از ان چشم پوشی می شود.

بیت ACK:

اگر در این بیت مقدار 1 قرار گرفته باشد، نشان میدهد عددی که در فیلد Acknowledgement Number قرار گرفته است، دارای مقدار معتبر و قابل استناد است، بیت ACK و SYN برای برقراری یک اتصال TCP نیز به کار میاید.

 

بيت PSH:

اگر در اين بيت مقدار 1 قرار گرفته باشد فرستنده اطلاعات از گيرنده تقاضا مينمايد که داده هاي موجود در اين بسته را بافر نکند سریع آن را جهت پردازش هاي بعدي تحويل برنامه کاربردي صاحب آن بدهد. اين عمل گاهي براي برنامههاي مشابه Telnet ضروري است.

بیت RST:

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

بيت SYN:

اين بيت نقش اساسي در برقراري يک ارتباط بازي ميکند، برقراري يک ارتباط TCP به صورت زیر است :

الف: شروع کننده ارتباط یک بسته TCP بدون هیچگونه داده و با تنظیم بیتهای (ACK=0,SYN=1) برای طرف مقابل ارسال میکند. در حقیقت ارسال چنین بستهای به معنای “تقاضای برقراری تماس” Connection Request تلقی میشود.

ب: در پاسخ به درخواست تماس، در صورتي که طرف مقابل به برقراري ارتباط تمايل داشته باشد بستهاي برميگرداند که در آن بيت SYN=1 و بیت ACK=1 است. این بسته نقش “پذیرش یک تماس” Connection Accept را بازی میکند.

 

بیت FIN:

اگر یکی از طرفین ارتباط، داده دیگری برای ارسال نداشته باشد در هنگام ارسال اخرین بسته خود این بیت را 1 میکند و در حقیقت ارسال اطلاعات خودش را یک طرفه قطع میکند. در این حالت اگر چه ارسال اطلاعات قطع شده ولی طرف مقابل ممکن است هنوز به ارسال اطلاعات مشغول باشد. زمانی ارتباط کاملا خاتمه مییابد که طرف مقابل نیز در یک بسته با 1 کردن بیت FIN ارسال اطلاعات را خاتمه بدهد.

امتیاز ما
برای امتیاز به این پست کلیک کنید
[کل: 1 میانگین: 5]
ارسال دیدگاه