1.简述osi七层模型和TCP/IP五层模型
OSI(Open System Interconnect),即开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互模型。
OSI参考模型(由高往低) | 各层的描述 |
---|---|
应用层 | 应用层是OSI最高层,离物理硬件层最远,OSI参考模型中最靠近用户的一层,是为计算机用户提供应用接口,也为用户直接提供各种网络服务 |
表示层 | 将为应用层产生的数据提供能数据转换类的服务,也就是数据如何展示的功能。 |
会话层 | 会话层就是负责建立、管理和终止表示层实体之间的通信会话。该层的通信由不同设备中的应用程序之间的服务请求和响应组成。 |
传输层 | 接收上一层数据,并在必要时将数据分割成更小的数据单元,然后把这些数据单元传递给网络层。它是第一个端对端的传输控制层(通过指定端口找到对方主机上的对应服务程序。) |
网络层 | 网络层会为数据段或数据包继续封装,加上源IP和目标IP地址,加上IP地址后数据段或数据报就成为了数据包。 |
数据链路层 | 数据包将继续封装得到数据帧(将源MAC地址和目标MAC地址加入到数据包中,得到数据帧。) |
物理层 | 在物理层,网卡会将数字信号转变为电信号传递给网线(或者其他传输介质,物理层处理后得到的数据是二进制数据,也称为bit位数据。(bit流)) |
TCP/IP五层模型 | TCP/IP协议栈 |
---|---|
应用层 | FTP、DNS、Telnet、SMTP、HTTP、WWW、NFS等 |
传输层 | TCP,UDP等 |
网络层 | ARP,RARP,IP,ICMP,IGMP等 |
数据链路层 | PPP、FR、HDLC、VLAN、MAC (网桥,交换机)等 |
物理层 | RJ45、CLOCK、IEEE802.3 (中继器,集线器)等 |
2、总结描述TCP三次握手四次挥手
三次握手(如图一) | 四次挥手(如图二) |
---|---|
最开始的时候客户端和服务器都是处于CLOSED状态。主动打开连接的为客户端,被动打开连接的是服务器。 | 数据传输完毕后,双方都可释放连接。最开始的时候,客户端和服务器都是处于ESTABLISHED状态,然后客户端主动关闭,服务器被动关闭。 |
第一次握手:建立连接时,Client将标志位SYN置为1,序号seq=x,并发送该SYN包到服务器,并进入SYN_SENT状态,等待Server确认。 第二次握手:Server 收到SYN包,由标志位SYN=1知道Client请求建立连接,server需要给client确认,确认包中标志位SYN和ACK都置为1,ack=x+1,序号 seq=y,发送完SYN+ACK包后,server进入SYN_RECV状态。 第三次握手:client收到server的SYN+ACK 包,检查ack是否为x+1,ACK是否为1,如果正确则将标志位ACK置为1,ack=y+1,并将该包回复给server,server检查ack是否为y+1,ACK是否为1,如果正确则连接建立成功,服务器和客户端进入ESTABLISHED状态,此后双方就可以开始传数据。 |
第一次挥手:client发送一个FIN,用来关闭client和server的数据传送,client进入FIN_WAIT_1状态. 第二次挥手:server收到FIN后,发送一个ACK给client,确认序号为收到序号+1,server进入CLOSE_WAIT状态。 第三次挥手:server发送一个FIN,用来关闭server到client的数据传送,server进入LAST_ACK状态。 第四次挥手:client 收到FIN后,client进入TIME_WAIT状态,接着发送一个ACK给server,确认序号为收到序号+1,server进入CLOSED状态,完成四次挥手。等待2MSL后client端连接关闭。 |
3、描述TCP和UDP区别
TCP与UDP区别 |
---|
1.基于连接与无连接 2.TCP要求系统资源较多,UDP较少; 3.UDP程序结构较简单 4.流模式(TCP)与数据报模式(UDP); 5.TCP保证数据正确性,UDP可能丢包 6.TCP保证数据顺序,UDP不保证 |