TCP/UDP的区别:
TCP:面向连接,即发送数据前要进行严谨的三次握手,能保证传输的数据不会丢失,重复,出现差错,对系统资源要求高,所以速度较慢
UDP:面向无连接,发送数据前不需建立连接,所以速度快,但只能尽最大努力交付数据,对系统资源要求低。
TCP三次握手:
如下图,TCP三次握手其实很简单,就是客户端发一个SYN过去询问服务器,
“服务器你听的到吗?”
服务器返回一个SYN+ACK,代表服务器说“我听得到,你听得到我说话吗吗”,
客户端发送一个ACK,代表客户端说“我也听到你说话了,那我就开始发数据了哈
TCP所谓四次挥手,
即客户端发送一个FIN过去,并进入FIN_WAIT状态,代表客户端说“我这边要停了,服务器你知道了吗”,
服务器返回一个ACK代表他说“收到!“
然后服务器再返回一个FIN代表“那我关闭了哈!“
客户端返回一个ACK,并进入TIME_WAIT状态,服务器关闭。
TCP共有6个标志位,分别是:
SYN(synchronous),建立联机。
ACK(acknowledgement),确认。
PSH(push),传输。
FIN(finish),结束。
RST(reset),重置。
URG(urgent),紧急。