TGViewer
TKC TKC @things_to_know_channel · 830 subscribers
Post #448 374
#linux_time

‏🤝 دو تا سیستم چطور توافق می‌کنن که ترتیب packetها رو گم نکنن؟

‏تا حالا شده فکر کنی وقتی یه browser می‌خواد به یه سرور وصل شه، چطور اول با هم یه توافق می‌کنن تا دیتای رد و بدل شده قاطی نشه؟ این فرآیند شروع ارتباط توی TCP رو بهش می‌گن three-way handshake که یه جورایی مثل یه handshake رسمی بین دو تا سیستم برای شروع یه مکالمه‌ست.

‏داستان از اینجا شروع می‌شه که کلاینت یه packet با SYN flag می‌فرسته که توش یه عدد تصادفی به اسم ISN هست؛ این عدد در واقع نقطه شروع شماره‌گذاری بایت‌های ارسالیه. سرور در جواب یه SYN-ACK می‌فرسته که هم عدد کلاینت رو تایید می‌کنه و هم ISN تصادفی خودش رو می‌فرسته تا هر دو طرف بدونن بایت‌های بعدی از کجا شروع می‌شه. نکته مهم اینجاست که kernel این اعداد رو تصادفی انتخاب می‌کنه تا هم جلوی حملات sequence prediction گرفته بشه و هم اگه packetهای قدیمی از یه connection قبلی توی شبکه سرگردون بودن، با شماره‌های جدید قاطی نشن. در نهایت کلاینت با یه ACK آخرین تاییدیه رو می‌فرسته و هر دو طرف وارد حالت established می‌شن.

‏اگه این فرآیند درست انجام نشه یا مثلاً یه مهاجم کلی SYN بفرسته و جواب SYN-ACK رو نده، سرور توی حالت syn received می‌مونه و منابعش اشغال می‌شه که بهش می‌گن SYN flood. برای همین توی kernelهای مدرن مکانیزم‌هایی مثل SYN cookies وجود داره تا بدون رزرو کردن حافظه، این handshake رو مدیریت کنن.

‏❓ نظرتون راجب این پست چیه ؟ برامون تو کامنتا بنویسین :)

@things_to_know_channel
  • 🔥 6
  • ❤ 1
More from @things_to_know_channel
  1. Oct 3, 2026#network_time ‏🌐 چرا یه سرور شلوغ یهو نمی‌تونه connection جدید برقرار کنه؟ ‏تا حا…
  2. Oct 2, 2026#network_time ‏🧐 وقتی می‌دونیم IP طرف چیه، سیستم چطور می‌فهمه باید packet رو دقیقاً ب…
  3. Oct 1, 2026#linux_time ‏🤝 چطور میشه روی یه راز مشترک توافق کرد، وقتی همه دارن گوش می‌دن؟ ‏تا…
  4. Sep 24, 2026#linux_time ‏💿 dd — کپی سطح پایین دیسک ‏در ادامه چند تا مثال کاربردی ازش میبینیم:…
  5. Sep 22, 2026📌 systemctl Cheat Sheet اگر با Linux Server و DevOps سر و کار دارید، systemctl یکی از دست…
  6. Sep 21, 2026وقتی یک سرور لینوکسی را Boot می‌کنیم، اولین Process سیستم چیست و چه کسی مسئول زنده نگه داش…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →