第五周作业
一 简述osi七层模型和TCP/IP五层模型
一、OSI参考模型
第7层 应用层
第6层 表示层
第5层 会话层
第4层 传输层
第3层 网络层
第2层 数据链接层
第1层 物理层
二 TCP/IP五层模型
二 总结描述TCP三次握手四次挥手
TCP三次握手
所谓的三次握手即TCP 连接的建立,这个里那句必须一方主动打开,另一方被动打开,如下图:
说明:
1)首先客户端向服务端发送一段TCP报文,其中:
标记为为SYN,表示“请求建立新连接”;
序号为Seq=X (X一般为1);
随后客户端进入SYN-SENT阶段
2)服务端接受到来自客户端的TCP 报文后,结束LISTEN阶段,并返回一段TCP 报文:
其中标志位为SYN和ACK,表示“确认客户端的报文Seq序号有效,服务端能正常接收客户端发送数据,并同一创建新连接”(也就是告诉客户段,我收到了你的数据);
序号为Seq=y;
确认号为Ack=x+1,表示收到客户段的序号Seq 并将其值加1作为自己确认号Ack的值,随后服务器进入SYN-RCVD阶段;
3)客户端收到来自服务端的确认收到数据的TCP 报文之后,明确了从客户端到服务器端的数据传输正常的,结束SYN-SENT阶段,并返回最后一段TCP报文。其中:
标志位为ACK,表示”确认收到服务端同意连接的信号“(也就是告诉服务器,我知道你收到我的数据了)
序号为Seq=x+1,表示收到服务端的确认信号Ack ,并将其值作为自己的序号值;
确认号为Ack=y+1,表示收到服务端的序号Seq,并将其值加1作为自己的确认Ack的值;
随后客户端进入ESTABLISHED阶段
服务器收到来自客户端”确认收到服务器数据“的TCP 报文后,明确了从服务器到客户端数据传输正常,结束SYN-SENT阶段,进入ESTABLISHED阶段。
在客户端和服务端传输的TCP 报文中,双方的确认Ack 和序号Seq 的值,都是在彼此的Ack和Seq 值的基础上进行计算,这样就保证了TCP 传输的连贯行,一旦出现某以防发出的TCP 报文丢失,便无法继续握手,以此确保”三次握手“的顺利完成,此后,客户端服务端正常传输数据,这就是三次握手的过程。
TCP四次挥手
四次挥手指的是TCP 连接释放的过程,也是必须一方主动发起,另一方被动释放,如下图,客户端主动发起:
说明:
1)首先客户端想要释放连接