Network

TCP Protocol

یەکێک لە پرۆتۆکۆڵە سەرەکییەکانی ناو TCP/IP بریتییە لە پرۆتۆکۆڵی کۆنترۆڵکردنی گواستنەوە یان (Transmission Control Protocol) کە بە کورتکراوەی TCP دەناسرێت، کە هەڵدەستێت بە گەیاندنی متمانەپێکراو و ڕێکخراو لە نێوان ئەو بەرنامانەی کە لەسەر هۆستەکان لەسەر تۆڕی TCP/IP کاردەکەن. بەهۆی سروشتی متمانەپێکراوەکەیەوە، TCP  لەلایەن ئەو بەرنامانەی کە پێویستیان بە متمانەیەکی بەرز هەیە، وەک  FTP، SSH، SMTP، HTTP و هتد بەکاردەهێنرێت.

TCP  پەیوەندی ئاڕاستەکراوە، ئەم وشە بە کوردی زۆر ڕوون نییە، بۆیە زیاتر لەسەری باس دەکەین، بە ئینگلیزی پێی دەوترێت (connection:oriented)، ئەمەش زۆر بە پوختی، واتە پێش ئەوەی داتاکان بنێردرێت، دەبێت پەیوەندییەک لە نێوان دوو هۆستەکەدا دامەزرێت و دڵنیابنەوە کە یەکتری دەبینن و پەیوەندییەک بوونی هەیە، ئەوکات داتا دەنێردریت. ئەو پرۆسەیەی کە بۆ دامەزراندنی پەیوەندی TCP بەکاردێت بە دەستگرتنی سێ لایەنە (three way handshake) ناسراوە، ئەمەش واتە سەرەتا لایەنێک داوای دروستکردنی پەیوەندییەکە دەدات، دواتر لایەنی بەرانبەر وەڵام دەداتەوە و ئامادەیی دەردەبڕێت، دواتر داتا دەنێردرێت. دوای ئەوەی پەیوەندییەکە دامەزرا، قۆناغی گواستنەوەی زانیارییەکان دەست پێدەکات. دوای گواستنەوەی داتاکان، پەیوەندییەکە کۆتایی دێت.

 

یەکێک لە تایبەتمەندییە دیارەکانی تری TCP گەیاندنی جێی متمانەیە.TCP  چونکە ژمارەی یەک لەدوای یەک و بە ڕیز بەکاردەهێنێت بۆ دیاریکردنی ڕیزبەندی ئەو بایتانەی کە لە هەر کۆمپیوتەرێکەوە دەنێردرێت بۆ ئەوەی داتاکان بە ڕێکوپێکی بنیات بنرێنەوە. ئەگەر هەر داتایەک لە کاتی گواستنەوەدا لەدەستچوو، ئەوا نێردەر دەتوانێت جارێکی تر داتاکان بنێرێتەوە.

 

بەهۆی هەموو تایبەتمەندییەکانییەوە، TCP  لە ڕووی بەکارهێنانی نێتۆرکەوە بە ئاڵۆز و تێچووی زۆر دادەنرێت. سەردێڕی TCP درێژییەکەی تا ٢٤ بایتە و لەم بوارانەی خوارەوە پێکدێت:

  • دەرچەی سەرچاوە: ژمارەی دەروازەی بەرنامەکە لەسەر ئەو هۆستەی کە داتاکان دەنێرێت.
  • دەروازەی مەبەست: ژمارەی دەروازەی بەرنامەکە لەسەر ئەو هۆستەی کە داتاکان وەردەگرێت.
  • ژمارەی ڕیزبەندی: بەکاردێت بۆ ناسینەوەی هەر بایتێکی داتا.
  • ژمارەی دانپێدانان: ژمارەی ڕێککەوتی داهاتوو کە وەرگر چاوەڕێی دەکات.
  • درێژی سەردێڕ: قەبارەی سەردێڕی TCP
  • گیراوە: هەمیشە لەسەر 0 دانراوە.
  • فلاگ: بەکاردێت بۆ ڕێکخستن و کۆتاییهێنان بە کۆنێکشنێک.
  • ویندۆو (Window): قەبارەی ویندۆوەکە کە نێردەر ئامادەیە وەریبگرێت.
  • چێکسەم (Checksum): بەکاردێت بۆ پشکنینی هەڵەی سەردێڕ و داتاکان.
  • بەپەلە: ئاماژەیە بۆ ئۆفسێت لە ژمارەی زنجیرەی ئێستا، کە بەشی ئەو داتایانەی لێوە دەست پێدەکات کە بەپەلە نین.
  • هەڵبژاردەکان: هەڵبژاردەی جۆراوجۆری  TCP، وەکو زۆرترین قەبارەی بەشەکان (MSS) یان قەبارەدانانی ویندۆو.

 

مۆدێلی پرۆتۆکۆڵی کۆنترۆڵکردنی گواستنەوە (TCP) داتاکان دەشکێنێت بۆ بەندڵی بچووک و دواتر بەندڵەکان کۆدەکاتەوە و دەیانکاتەوە بە داتا ڕاستەقینەکە، بۆ ئەوەی دڵنیابێت کە هەر پەیامێک بە تەواوی دەگاتە شوێنی ئامانجەکەی. دوای ئەوەی پەیامێکی دیاریکراو دابەش دەکرێت بۆ چەند بەشێک، ئەم بەندڵانە لەوانەیە بە چەندین ڕێگادا بڕۆن، واتە ئەگەر ڕێگای سەرەکی گیرا یان لەکار کەوت، دەشێت لە چەندین ڕێگەی جیاوازەوە بڕۆن بەڵام هەرگیز لایەنی بەرانبەریان ناگۆڕێت و دەزانن کە بەرەو کوێ دەڕۆن.

بۆ نموونە: کاتێک بەکارهێنەرێک داوای وێب پەیجێک دەکات لە ئینتەرنێت، لە شوێنێکی جیهان، سێرڤەر ئەو داواکارییە پرۆسێس دەکات و لاپەڕەیەکی HTML بۆ ئەو بەکارهێنەرە دەنێرێتەوە. سێرڤەر سوود لە پرۆتۆکۆڵێک وەردەگرێت کە پێی دەوترێت HTTP Protocol. پاشان HTTP داوای چینی TCP دەکات کە پەیوەندییەکە لەگەڵ ئەو داواکارە دابنێت و HTMLـەکەی بۆ بنێرێت.

TCP لەلای بەکارهێنەر چاوەڕێی تەواوبوونی گواستنەوەکە دەکات ئینجا دان بەوەدا دەنێت کە گەیشتووە، لەپێش گەیشتنەکە هەرگیز ناڵێت کە پاکەتەکان وەرگیراون.

 

تایبەتمەندییەکان

 

سیستەمی ژمارەدان بە بەشەکان: TCP ئاگاداری ئەو سێگمێنتانە دەبێت کە دەگوازرێنەوە یان وەرگیراون بە دیاریکردنی ژمارە بۆ هەر یەکێکیان. ژمارەیەکی بایتی تایبەت بۆ بایتەکانی داتا دیاری دەکرێت کە بڕیارە بگوازرێنەوە، هەروەها سیگمێنتەکان ژمارەی ڕیزبەندییان بۆ دیاری دەکرێت. ژمارەی (Acknowledgment)ـیش بۆ بەشە وەرگیراوەکان دیاری دەکرێت.

Connection Oriented: واتە نێردەر و وەرگر تا تەواوبوونی پرۆسەکە بەستراونەتەوە بە یەکەوە. بەمەش ڕێکوپێکیی داتاکان دەپارێزرێت، واتە ڕێکوپێکیی پێش و دوای گواستنەوە وەک خۆی دەمێنێتەوە.

دوولایەنەی تەواو یان فوول دووپلێکس: لە TCPـدا دەتوانرێت داتا لە وەرگرەوە بۆ نێردەر یان بە پێچەوانەوە بگوازرێتەوە لە هەمان کاتدا. بەدڵنیاییشەوە ئەمە کارایی ڕۆیشتنی داتا لە نێوان نێردەر و وەرگر زیاد دەکات.

کۆنترۆڵی لێشاوی داتا: کۆنترۆڵی لێشاو (Flow Control) ڕێژەی گواستنەوەی زانیارییەکانی نێردەر سنووردار دەکات، واتە ناهێڵێت لۆدێکی بێ شوومار بکەوێتە سەری و نەتوانێت کۆنترۆڵی بکات. ئەمەش بۆ دڵنیابوون لە گەیاندنی متمانەپێکراو ئەنجام دەدرێت. وەرگرەکە بەردەوام ئاماژە بە نێردەر دەدات کە چەند داتا دەتوانرێت وەربگیرێت.

کۆنترۆڵی هەڵە: TCP میکانیزمێکی کۆنترۆڵکردنی هەڵە بۆ گواستنەوەی زانیاری متمانەپێکراو جێبەجێ دەکات. کۆنترۆڵی هەڵەش بە بایت تێبینی و ئاڕاستە دەکرێت. چونکە هەموو بەشەکانی داتا پشکنینیان بۆ دەکرێت بۆ دۆزینەوەی هەڵە. کۆنترۆڵی هەڵە بریتییە لە بەڕێوەبردنی بەشی تێکچوو و بەشی ونبووی داتایەک کە دەبێت جۆرێک بێت بەڵام بەجۆرێکی تر گەیشتووە یان بڕیارە بنێردرێت، بۆ نموونە سیگمێنتی تێکچوو و شپرز، یان سیگمێنتی دووبارە.

کۆنترۆڵی قەرەباڵغی: TCP ئاستی قەرەباڵغی لە نێتۆرکەکەدا لەبەرچاو دەگرێت. ئاستی قەرەباڵغی بەپێی بڕی ئەو زانیاریانەی کە لەلایەن نێردەرێکەوە دەنێردرێت دیاری دەکرێت.

 

سوودەکانی TCP

 

  • متمانەپێکراوە
  • میکانیزمێکی پشکنینی هەڵە و هەروەها میکانیزمێک بۆ چاکبوونەوە دابین دەکات.
  • کۆنترۆڵی لێشاو دەکات
  • دڵنیا دەبێتەوە لەوەی کە داتاکان دەگەنە شوێنی مەبەست بە ڕێکوپێکی و وردی.
  • لەلایەن ڕێکخراوە ستانداردەکانی وەک IETF (Internet Engineering Task Force) پارێزگاری لێدەکرێت.
  • بە هاوبەشی لەگەڵ IP (Internet Protocol) کاردەکات بۆ دامەزراندنی پەیوەندی نێوان ئامێرەکانی سەر نێتۆرکێک.