简述-七层网络模型

七层网络模型

# 每一层的作用

**物理层**:实现两台机器互联,机器和机器之间怎么通信,,肉眼可见物理介质比如网线,光纤。无线电波,存在形式就是二进制的比特流,可是现在还是0101的机器语言,没有什么意思的数据,那么就到达数据链路层

**数据链路层**:对二进制比特流进行分组,8个为一组,形成一个字节,依次按顺序去发送数据,,再数据链路层带着发件人地址和收件人地址,数据格式是帧,但是怎么样才能知道谁的mac地址是和链路层需要到达mac地址的一样,那就用到了网络层

**网络层**:确认对方的mac地址用到一个ARP协议,通过ip地址查找对应的mac地址,那么如何判断是否再一个子网内,就用到了ip协议,那如何去选择最优的路径,就有一组协议叫做路由协议,路由协议分为静态路由和动态路由(RIP   OSPF  BGP),那如何确保数据完整和正确

**传输层**:对发送数据进行封装,TCP协议和udp协议,一个一个按顺序依次发送,两个应用程序进行联系需要通过端口寻找到对应的端口

**会话层**:由于数据包很大容易出现中断和重传,那会话层就会通过断点续传功能,可以从校验点继续回复数据进行数据重传,自动收发,自动寻址的功能

**表示层**:因为可能两个沟通的机器系统可能不一样,所以表示层提供一种公共语言,让不同系统进行通信

**应用层**:数据到应用层的时候还是字节流也就是帧,所以应用层定义了各种应用协议来规范数据格式,比如http协议,FTP    DNS    TFTP   SMTP

![1593168004914](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1593168004914.png)

# 四层和七层有什么区别

![1586396758658](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586396758658.png)

# 数据传输过程

![1586396820920](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586396820920.png)



# 传输层TCP协议和udp协议

## TCP协议

![1586397364391](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397364391.png)

实现原理:在进行http请求之前必须先经过TCP请求:三次握手,四次挥手

**序号**:编号,tcp数据包过大的时候会进行分段,重组,按顺序重组,所以就是对分段进行编号,以后按照这个编号重组

**确认号**:当客户端向服务器发送一个连接请求,希望服务端给一个回应,服务端回应时候会带一个确认号,也就是第二次握手时候。存在确认消息里,跟序号有什么关系呢?(假设客户端第一次握手时候请求包的序号seq=1,服务端收到消息进行第二次握手时候会返回一个ack确认号,这个确认号值等于seq+1=2,当客户端收到这个确认号等于2时表示服务器期望收到客户端的下一个包的序号

**标志位**:状态控制码,如果打上标记就是1,不打就是0,表示数据包的一个类型

 

- ACK:占一个比特位表示确认位,如果确认位为1,表示这个消息是一个确认消息,
- RST:重置,如果这个位置被标记了,表示消息要被释放连接,是因为出错才要释放,就是要断开tcp连接,如果还想继续发消息就要重新建立连接
- SYN:同步,如果被标记为1,表示这个消息时一个发起连接的消息,就是第一次握手时候,客户端发起要变成1,服务端接受也要变成1
- FIN:终止,表示发送报文结束了释放这个连接,此时要开始TCP的四次挥手

握手过程中标志位变化:

![1586397596069](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397596069.png)

挥手过程中标志位变化:

![1586397630807](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397630807.png)

## UDP协议

Udp协议:不会建立连接,是一个无连接传输协议,所以没有序号确认号标志位

​           是一个不可靠协议,会存在丢包出错,比如游戏等等

常用的基于udp协议:Dns协议,SNMP  DHCP(动态获取ip)

常用的基于tcp协议:http  https   ftp

![1586397743339](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397743339.png)

## Tcp和udp的区别

![1586397769427](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397769427.png)

# HTTP协议

![1586397812444](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397812444.png)

## 请求头

请求报文分为四个部分:请求行,请求头部,空一行,请求体

![1586397838120](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397838120.png)

## 响应头

![1586397861378](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397861378.png)

## 为什么说http是无连接的

![1586397888919](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397888919.png)

![1586397909442](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397909442.png)



![1586397916920](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397916920.png)

## HTTPS协议

![1586397925097](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397925097.png)

![1586397961019](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397961019.png)

![1586397971354](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397971354.png)

## HTTP与HTTPS之间的区别

![1586397983011](C:\Users\MI\AppData\Roaming\Typora\typora-user-images\1586397983011.png)


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值