运输层
运输层在协议栈中的地位和作用
运输层位于面向通信部分的最高层,同时也是用户功能中的最底层,向它上面的应用层提供服务
运输层和网络层的通信有什么重要区别
运输层(TCP/UDP):为应用进程之间的通信部分提供端到端的通信
网络曾(IP):是为主机之间提供逻辑通信
运输层以复用和分用的形式加载到网络层
多个用户使用一个IO资源 发送消息 时,我们称之为“复用”。
多个用户使用一个IO资源 接收消息 时,我们称之为 “分用” 。
UDP和TCP面向?
UDP面向报文(无论UDP包多长,一次只发送一个报文)
TCP面向字节流(有缓冲,积累到足够的字节后再构成报文段进行发送)
三次握手建立连接
- 服务器A
- 客户机B
- B -> SYN -> A
- B <- [SYN/ACK](对SYN的确认ACK包) <- A
- B -> ACK -> A
注意:这里的SYN和ACK指的是仅SYN或ACK标记为1的包
四次握手关闭连接
- B -> ACK/FIN -> A
- B <- ACK <- A
- B <- ACK/FIN <- A
- B -> ACK -> A
注意:ACK/FIN 包(ACK 和FIN 标记设为1)通常被认为是FIN(终结)包.然而, 由于连接还没有关闭, FIN包总是打上ACK标记