وائر شارک میں TCP 3 وے ہینڈ سیک تجزیہ

Wayr Shark My Tcp 3 W Yn Syk Tjzy



ٹرانسمیشن کنٹرول پروٹوکول OSI یا TCP/IP ماڈل کے لیے ٹرانسپورٹ لیئر میں ایک بہت اہم پروٹوکول ہے۔ TCP میں بہت سے فوائد ہیں جیسے:

  • TCP دوبارہ ٹرانسمیشن کرتا ہے اگر کچھ بھیجا گیا ڈیٹا وصول کنندہ کے ذریعہ کچھ وقت کے اندر تسلیم نہیں کیا جاتا ہے۔
  • ڈیٹا بھیجنے سے پہلے TCP کچھ کنکشن قائم کرتا ہے۔ ہم اس کنکشن کو 3 طرفہ مصافحہ کہتے ہیں۔
  • TCP میں بھیڑ کو کنٹرول کرنے کا طریقہ کار ہے۔
  • TCP کچھ طریقوں سے غلطی کا پتہ لگا سکتا ہے۔

آئیے بنیادی طور پر TCP 3 طرفہ مصافحہ پر سیکھیں۔ آئیے 3 طرفہ مصافحہ کے لیے Wireshark میں اہم شعبوں کے بارے میں بھی جانیں۔







3-طریقہ مصافحہ

تین فریموں کے تبادلے ہیں جو 3 طرفہ مصافحہ میں ہوتے ہیں:



  1. SYN
  2. View+AC
  3. اے سی کے

پہلا فریم ہمیشہ کلائنٹ کے ذریعہ سرور کو بھیجا جاتا ہے۔ آئیے اسے ایک سادہ خاکہ سے سمجھتے ہیں:



'کلائنٹ' 'سرور'

فریم 1: کلائنٹ سرور کو SYN فریم بھیجتا ہے۔

------------------------------------------- سرور SYN+ACK فریم بھیجتا ہے۔ کلائنٹ کو: Frame2

فریم 3: کلائنٹ سرور کو ACK فریم بھیجتا ہے۔

ہم ان تینوں فریموں کو Wireshark میں دیکھ سکتے ہیں۔ تمام TCP فریموں کو دیکھنے کے لیے Wireshark میں 'tcp' فلٹر استعمال کیا جا سکتا ہے۔ تین فریموں کا اسکرین شاٹ یہ ہے:





آئیے اب تینوں فریموں کو تفصیل سے سمجھیں:



SYN

یہ فریم سرور کو مطلع کرنے کے لیے کلائنٹ کی صلاحیتوں کے بارے میں بہت سی معلومات پر مشتمل ہے۔ درج ذیل اسکرین شاٹ SYN فریم کے تمام اہم فیلڈز کو دکھاتا ہے:

یہاں SYN فریم کے لیے اہم فیلڈز ہیں:

سورس پورٹ: 50602
منزل پورٹ: 80
ترتیب نمبر: 0
اعتراف نمبر: 0
ہیڈر کی لمبائی: 32 بائٹس
جھنڈے: 0x002 (SYN):
اعتراف: سیٹ نہیں ہے۔
پش: سیٹ نہیں ہے۔
ری سیٹ کریں: سیٹ نہیں ہے۔
Syn: سیٹ -----> یہ بٹ سیٹ کیونکہ یہ ایک SYN فریم ہے۔
فن: سیٹ نہیں ہے۔

ونڈو: 65535
ارجنٹ پوائنٹر: 0
TCP آپشن - زیادہ سے زیادہ سیگمنٹ سائز: 1460 بائٹس
TCP اختیار - ونڈو اسکیل: 3 (8 سے ضرب)
TCP اختیار - SACK کی اجازت ہے۔

View+AC

یہ فریم کلائنٹ کو مطلع کرنے کے لیے سرور کی صلاحیتوں کے بارے میں بہت سی معلومات پر مشتمل ہے۔ درج ذیل اسکرین شاٹ SYN+ACK فریم کے تمام اہم فیلڈز کو دکھاتا ہے۔

یہ فریم SYN فریم کو بھی تسلیم کرتا ہے جو کلائنٹ کی طرف سے بھیجا جاتا ہے۔

SYN+ACK فریم کے لیے یہاں اہم فیلڈز ہیں:

ماخذ پورٹ: 80
منزل پورٹ: 50602
ترتیب نمبر: 0
اعتراف نمبر: 1

ہیڈر کی لمبائی: 32 بائٹس (8)
پرچم: 0x012 (SYN, ACK)
اقرار: سیٹ
پش: سیٹ نہیں ہے۔
ری سیٹ کریں: سیٹ نہیں ہے۔
اس کا: سیٹ
فن: سیٹ نہیں ہے۔

ونڈو: 29200
ارجنٹ پوائنٹر: 0
TCP آپشن - زیادہ سے زیادہ سیگمنٹ سائز: 1412 بائٹس
TCP اختیار - SACK کی اجازت ہے۔
TCP اختیار - ونڈو اسکیل: 7 (128 سے ضرب)

ہم دیکھ سکتے ہیں کہ اس فریم میں 'Acknowledge' اور 'SYN' بٹس سیٹ ہیں۔ اس کی وجہ یہ ہے کہ یہ فریم SYN+ACK ہے۔

اے سی کے

یہ فریم 3 طرفہ ہینڈ شیک کا آخری فریم ہے اور کلائنٹ کی طرف سے SYN+ACK کا اعتراف بھی۔ درج ذیل اسکرین شاٹ ACK فریم کے تمام اہم فیلڈز کو دکھاتا ہے۔

ACK فریم کے لیے یہاں اہم فیلڈز ہیں:

سورس پورٹ: 50602
منزل پورٹ: 80
ترتیب نمبر: 1
اعتراف نمبر: 1
ہیڈر کی لمبائی: 20 بائٹس (5)
پرچم: 0x010 (ACK)
ارجنٹ: سیٹ نہیں ہے۔
اقرار: سیٹ
پش: سیٹ نہیں ہے۔
ری سیٹ کریں: سیٹ نہیں ہے۔
Syn: سیٹ نہیں ہے۔
فن: سیٹ نہیں ہے۔

ونڈو: 32768

یہاں، صرف 'Acknowledge' بٹ سیٹ ہے کیونکہ یہ ACK فریم ہے۔

کچھ اہم مشترکہ شعبوں کی وضاحت

پورٹ 80 : ہم نے اس ٹیوٹوریل میں ایک فکسڈ پورٹ 80 کا مشاہدہ کیا۔ اس کی وجہ یہ ہے کہ یہ ایک HTTP کیپچر ہے اور HTTP مواصلت کے لیے پورٹ 80 فکسڈ (سرور سائیڈ) ہے۔

ترتیب نمبر : اس فریم کی ترتیب نمبر۔ مطابقت پذیری پہلا فریم ہے لہذا ہمارے پاس ایک ترتیب نمبر کے طور پر 0 ہے۔

TCP جھنڈے:

اعتراف - یہ بٹ سیٹ کیا جاتا ہے اگر فریم ACK ہے۔ مثال: SYN+ACK، ACK فریم۔

SYN - یہ بٹ سیٹ کیا جاتا ہے اگر فریم SYN ہے۔ مثال: SYN۔

کھڑکی : یہ فیلڈ وصول کرنے کے موڈ میں بھیجنے والے کے زیادہ سے زیادہ ونڈو سائز کا اشتراک کرتا ہے۔ مثال: ہمارے پاس SYN فریم میں ونڈو کا سائز 65535 بائٹس ہے۔ اس کا مطلب ہے کہ وصول کنندہ کسی بھی وقت 65535 بائٹس کا زیادہ سے زیادہ TCP ڈیٹا حاصل کر سکتا ہے۔

SACK کی اجازت ہے۔ : یہ بٹ سیٹ کیا جاتا ہے اگر بھیجنے سے SACK [انتخابی اعتراف] کی حمایت ہوتی ہے۔

زیادہ سے زیادہ سیگمنٹ کا سائز : ہم اسے MSS بھی کہہ سکتے ہیں۔ یہ زیادہ سے زیادہ ڈیٹا فریم کی وضاحت کرتا ہے جسے بھیجنے والا وصول کر سکتا ہے۔ مثال: ہمیں SYN فریم میں MSS 1460 بائٹس کے طور پر ملتا ہے۔

نتیجہ

ہم نے TCP 3 طرفہ ہینڈ شیک اور SYN، SYN+ACK، اور ACK فریموں کے لیے تمام مفید فیلڈز کے بارے میں سیکھا۔ اگر آپ TCP کے بارے میں مزید جاننا چاہتے ہیں، تو آپ اس RFC لنک کو فالو کر سکتے ہیں۔ https://tools.ietf.org/html/rfc793 .