OSI七层网络模型和TCP/IP四层模型

OSI七层网络模型
OSI: 开放系统互连参考模型是ISO制定的一个用于计算机或通信系统间互联的标准体系

OSI七层模型功能:
物理层: 七层模型的最底层,主要是物理介质传输媒介(网线或者无线),在不同设备中传输比特,将0/1信号与电信号或者光信号转化
数据链路层: 物理地址(MAC地址),网络设备的唯一身份标识。建立逻辑连接,进行硬件寻址,差错校验等,相邻的两个设备间的互相通信
网络层: 进行逻辑地址寻址,实现不同网络间的路径选择,IP在网络层。(协议:ICMP,IGMP,IP{IPV4,IPV6})
传输层: 定义传输数据的协议端口号,以及流控和差错校验。整个网络的关键部分,实现两个用户进程间端到端的可靠通信。是向下通信服务最高层,向上用户功能最底层。即向网络层提供服务,向会话层提供独立于网络层的传送服务和可靠的数据透明传输。(协议:TCP,UDP 数据包一旦离开网卡即进入网络传输层)
会话层: 建立,管理,终止会话。 对应主机进程,指本地主机与远程主机正在进行的会话
表示层: 主要负责数据格式的转换,确保一个系统的应用发送的消息可以被另一个系统的应用层读取,编码转换,数据解析,管理数据的解密和加密,同时也对应用层的协议进行翻译
应用层: 应用层是网络体系中最高的一层,也是唯一面向用户的一层,也可视为为用户提供常用的应用程序,每个网络应用都对应着不通的协议(协议: HTTP,FTP,TFTP,SMTP,DNS,HTTPS,POP3,DHCP)

TCP/IP四层模型
TCP/IP四层模型: 应用层{应用,表示,会话层},传输层,网络层,网络接口层(数据链路,物理层)

SYN:同步标志。该标志仅在三次握手建立TCP连接时有效。
ACK:确认标志。同时提示远端系统已经成功接收所有数据
FIN: 结束标志

建立TCP连接
三次握手: TCP的连接建立是一个三次握手的过程,目的是通信双方确认开始序列,以便后续通信的有序进行。
1. 连接请求: 连接开始时,客户端(Client)发送SYN包,并包含了一个初始的seq=a的值,客户端(Client)进入SYN_SENT状态,等待服务端(Server)确认
2. 请求确认: 服务端(Server)收到数据包后知道客户端(Client)请求建立连接,将回复一个SYN包,并包含了对上一个a包的回应信息ACK,ACK=a+1.然后还包含了一个随机的自己初始seq=b,服务端进入SYN_RCVD状态
3. 连接确认: 客户端(Client)收到确认SYN包后,检查ack是否为a+1,如果正确将回复发送一个ACK包,其中包含了一个ACK=b+1,和一个seq=a+1,服务端(Server)检查ACK是否为b+1,如果正确则建立连接,Client和Server进入ESTABLISHED状态,完成三次握手,Client和Server之间开始传输数据

断开TCP连接
四次挥手: 即终止TCP连接,需要Client端和Server端总共发送4个包已确认连接的断开
1. Client发送一个FIN并包含一个随机的seq=a,主动关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态
2. Server收到FIN后,发送一个ACK并包含一个seq=a+1给Client,Server进入CLOSE_WAIT状态。
3. Server发送一个FIN并包含一个随机的seq=b和一个ACK=a+1,用来关闭Server到Client的数据传输,Server进入LAST_ACK状态。
4. Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK并包含一个seq=b+1给Server,Servr收到ACK包后进入CLOSED状态,完成四次挥手

上一篇:抓包:Fiddler和Wireshark的简单使用


下一篇:每周分享(3)