TCP协议的概念以及与UDP的区别
脚本之家
TCP的概念
(Transmission Control Protocol 传输控制协议)是一种面向连接(连接导向)的、可靠的、基于IP的传输层协议,由IETF的RFC 793说明(specified)。TCP在IP报文的协议号是6。
一、传输控制协议
1 面向连接意味着两个使用TCP的应用(通常是一个客户端和一个服务器)在彼此交换数据之前必须先建立一个TCP连接。
2 TCP通过下列方式来提供可靠性:
1)应用数据被分割程TCP认为合适的数据块。TCP传递给IP的信息单位称为报文段。
2)当TCP发出一个段后,它启动一个计时器,等待目的端确认这个报文段。如果不能及时收到确认,将重新发送这个报文段。
3)当TCP收到发自一个TCP连接另一端的数据,它将发送一个确认。这个确认将推迟几分之一秒。
4)TCP将保持它首部以及数据的检验和。如果检验和接收端将丢弃这个报文段而且不确认收到此报文段。
5)TCP提供流量控制。
3 TCP对字节流内容不作任何解释,对字节流的解释交由应用层。
二、TCP首部
一个TCP首部的长度为20字节。
一个TCP连接由一个包含源ip,源端口,目的ip,目的端口的四元组唯一表示。序号用来标示从发送端到接收端的数据字节流,它表示在一个报文段的首字节。确认序号为上次成功接收的数据字节序号加一。接收窗口表示用来完成TCP的流量控制,表明接收端还能接收的字节。检验和覆盖了整个TCP报文段:包括首部和数据,由发端计算和存储,由收端进行验证。
TCP与UDP的区别
TCP协议面向连接,UDP协议面向非连接;
TCP协议传输速度慢,UDP协议传输速度快
TCP有丢包重传机制,UDP没有;
TCP协议保证数据正确性,UDP协议可能丢包;
以上就是TCP的概念及基础知识,TCP与UDP的区别就是面向连接和面向非连接,希望可以帮助大家,谢谢阅读。