Какво е TCP протокол?

TCP (Transmission Control Protocol) се определя като стандарт, който обяснява как да се установи, както и поддържането на мрежовия разговор, с помощта на който приложните програми са в състояние да обменят данни. Този протокол работи заедно с IP, тоест Интернет протокол, който казва как компютърът изпраща пакети данни помежду си. Като цяло TCP и IP се считат за основни правила, които определят Интернет. TCP е дефиниран от IETF, тоест Internet Engineering Task Force (IETF).

Разбиране на TCP протокол

Той се разглежда като протокол, ориентиран към връзката, което означава, че връзката е установена и поддържана, докато приложенията на програмите за времето във всеки от края не се извършват за обмен на съобщения. Той също така решава как да разбие данните на приложението под формата на пакети, които мрежите доставят, след това изпраща пакети и накрая приема тези пакети от мрежовия слой, а в допълнение управлява и контрола на потока. В OSI модела TCP заема части от слой 4, който е транспортен слой, а също и части от слой 5, които са сесиен слой.

Нека вземем пример. Когато уеб сървърът изпрати HTML файл на клиента, той използва HTTP протокола. След това HTTP програмният слой изисква TCP слой да настрои връзката и след това да изпрати файла. След това TCP стека разделя файла под формата на пакети, номерира ги и накрая ги препраща към слоя Internet Protocol, за да се достави. Въпреки че всеки от пакетите в предаването има един и същ източник, както и дестинация IP адреси, пакетите все още се изпращат по различни маршрути. TCP програмният слой в клиентския компютър винаги изчаква, докато всички пакети вече са пристигнали, и след това потвърждава получените и след това иска повторно изпращане.

Предимства на TCP протокол

  • Това е доста надежден протокол.
  • Той също така гарантира, че данните достигат желаната дестинация в същия ред, в който са изпратени.
  • Той също е ориентиран към връзката.
  • Той дава механизъм за проверка на грешки, както и механизъм за възстановяване.
  • Той също така показва комуникация, която е край до край.
  • Също така, той дава контрол на потока.
  • И накрая, този протокол показва сървър (пълен дуплекс), което означава, че има възможност да изпълнява роли на приемник, както и изпращачи.

Обхват на протокола TCP

Минималната дължина на заглавката на TCP е 20 байта, а максималната дължина 60 байта.

  • Изходен порт - Той е 16-битов и той идентифицира изходния порт на процеса на кандидатстване при изпращане на устройството.
  • Порт за местоназначение - Той също е 16-битов и той идентифицира целевия порт на процеса на кандидатстване при получаване на устройството.
  • Отместване на данни (4 бита) - Това е 4 бита и споменава размера на заглавката на TCP, както и компенсиране на данните в настоящия пакет в целия сегмент на TCP.
  • Запазен (3-битов) - По подразбиране всичко е на нула и е запазено за бъдеща употреба.
  • ECE - има две интерпретации:
    1. В случай, че битът на SYN е 0, това означава, че ECE означава, че IP пакетът има своя опит за претоварване, тоест CE бита.
    2. В случай, че битът на SYN е 1, това означава, че ECE означава, че устройството е в състояние да ECT.
  • URG - URG означава, че полето Спешен указател има важни данни и че трябва да се обработи.
  • ACK - ACK означава, че полето Потвърждение има значение. В случай, че ACK е 0, това означава, че пакетът няма потвърждение.
  • PSH - Когато PSH е зададен, това означава, че се изисква да получи станция, така че да PUSH на данните, когато става въпрос за получаване на приложение, но без да го буферира.
  • RST - флагът за нулиране има следните функции:
  1. RST е необходим, за да откаже входяща връзка.
  2. RST е необходим и за отхвърляне на сегмент.
  3. RST е необходим, за да се рестартира връзката.
  • SYN - SYN флаг е необходим, за да настроите връзката между хостовете.

Какво можете да направите с протокола TCP?

TCP протоколът работи в сървър или клиентски модел. Клиентът винаги стартира връзката и сървърът или ще я приеме, или ще я отхвърли. Това трипосочно ръкостискане по същество е необходимо за управление на връзката.

Клиентът стартира връзката и след това изпраща сегмента заедно с номера на последователността. След това сървърът ще го потвърди заедно със своя SN (последователност №) и с ACK на сегмента на клиента, който е един повече в сравнение с номера на последователността на клиента. Сега клиентът, след като получи ACK на сегмента, изпраща потвърждение на отговора на сървъра.

И сървърът, или клиентът могат да изпращат TCP сегмента заедно с FIN флаг, който е настроен на 1. Всеки път, когато получаването му връща обратно чрез признаване на FIN, тази конкретна посока на TCP комуникацията се затваря и след това връзката се освобождава.

Работа с TCP протокол

TCP използва номера на портове, за да знае кои приложения обработват, за да предадат сегмента от данни. Заедно с това той използва номерата на поредиците, за да се синхронизира заедно с отдалечения хост. След това всеки сегмент от данни се изпраща, както и получава заедно с SN-ите. Подателят се уверява, че последният от сегмента с данни е получен от получателя, когато получи потвърждението. Получателят е запознат с последния сегмент, който е изпратен от подателя, като споменава поредния номер (SN) на последния получен пакет.

заключение

И накрая, след като обсъдихме основните компоненти на мрежите, както и TCP / IP, имаме необходимата информация, за да разгледаме доста критични въпроси на сигурността. Когато сме наясно как се изграждат мрежите, това ни дава разбиране към кои физически уязвимости се въвеждат, когато избираме един мрежов дизайн над който и да е друг и знанието как са формирани пакетите ни дава разбиране за това как те са създадени за постигане на предназначение. Също така, ние сме наясно как пакетите се предават и доставят предоставят добро разбиране на това, което евентуално би могло да се случи с пакетите.

Препоръчителен член

Това е ръководство за Какво е TCP протокол ?. Тук сме обсъдили обхвата и работата заедно с предимствата на протокола TCP. Можете също да разгледате следните статии, за да научите повече -

  1. Какви са приложенията на HTML
  2. Въведение в Какво е VFX?
  3. Какво е интерфейс на командния ред?
  4. Какво е JVM Architecture