TCP三次握手
TCP三次握手(Three-way handshake)是TCP建立连接时所进行的一种握手方式,它的作用是使两个通信端口建立可靠的连接。
TCP三次握手的过程如下:
- 客户端向服务器发送一个连接请求报文段(SYN=1),并设置一个随机的序列号seq=x。
- 服务器收到连接请求报文段后,检查SYN=1,如果SYN=0,则拒绝连接,如果SYN=1,则服务器发送一个确认报文段(SYN=1,ACK=x+1),并设置一个随机的序列号ack=y。
- 客户端收到确认报文段后,检查ACK=x+1,如果ACK=x+1,则客户端发送一个确认报文段(ACK=y+1),并设置一个随机的序列号seq=x+1。
至此,TCP三次握手结束,客户端和服务器建立了可靠的连接。
TCP三次握手的作用是:
- 防止已建立连接的会话被重复利用。
- 防止恶意连接。
- 保证连接的可靠性。
网络编程
select、poll epoll
多线程多进程
阻塞非阻塞
实现一个网络框架
TCP-IP协议栈,TCP/IP协议栈包括以下协议:
- 应用层协议:HTTP、FTP、SMTP、POP3等。
- 传输层协议:TCP、UDP。
- 网络层协议:IP、ICMP。
- 链路层协议:ARP、RARP。
- 物理层协议:以太网、令牌环、FDDI等。