七层通讯

- 从下图我们可以看到HTML属于应用层,TCP,UDP在第四层传输层,IP在第三层网络层。
UDP
- IP 通过 IP 地址信息把数据包发送给指定的电脑,而 UDP通过端口号把数据包分发给正确的程序。
- UDP不能保证数据可靠性,但是传输速度比较快。
但是会存在数据包丢失,不知道如何把数据包组装成完整的文件的问题。
TCP/IP
TCP/IP 一般泛指这些协议:TCP,IP,ICMP,UDP,TELNET.FTP,HTTP

一个完整的TCP建立过程:

从上图我们看到
- 建立连接阶段:通过三次握手建立服务器和客户端的连接
- 传输数据阶段:通过重发机制,保证每个小的数据包都接受成功。
-
三次握手

过程: 首先服务器B处在监听状态,等待客户端A的连接请求
- A向B发送连接请求
- B收到连接请求,如果同意,B向A发送同意连接
- A收到B的同意连接,A向B发送确认连接
- B收到A的确认连接,连接建立。
解释:
很多人疑惑为什么要有第三次连接?第三次连接的作用是防止失效的连接请求发送到服务器,让服务器错误的打开连接。
四次握手

过程:A发送释放连接请求
- B收到之后发出确认,这个时候TCP处于半关闭状态,服务器B能向客户端A发送请求,A不能向B发送请求。
- 当B不需要连接时,发送释放请求。
- A收到发出确认,进入 TIME-WAIT 状态,等待 2 MSL(最大报文存活时间)后释放连接。
- B收到A的确认后释放连接
解释:
