当前位置:网站首页>OSI分层模型对工作的具体帮助

OSI分层模型对工作的具体帮助

2022-06-23 06:20:00 强强学习

  比如要对复杂系统进行性能调优,就可以从不同层次的角度去思考与实践。

  1. 在应用层不仅要考虑两大指标:TPS(每秒事务数)和QPS(每秒查询率),而且要考虑每个报文的平均大小。
  2. 如果希望提升握手或者对称加密的性能优化时,本质上是在表示层进行优化的,需要TLS安全层去讨论性能优化。
  3. 对RTT(网络时延)进行优化时,本质上是站在传输层来思考的,就需要考虑网卡的吞吐量、整个主机的BPS。
  4. 如果要对TCP的可靠传输进行性能优化时,可以考虑增加TCP连接握手的速度,这是在很深的优化层面上考虑问题。
  5. 如果要对PPS(每秒发送的packet)进行优化时,本质上是站在网络层来考虑问题的。比如后端或者运维人员使用英特尔的DPDK,它本质上就是在网络层上进行优化的。
  6. 如果对数据链路层进行优化,那么更多需要关注的是广播和ARP的欺骗。
  7. 如何选择负载均衡呢?负载均衡包括了三层、四层、七层的负载均衡。七层的负载均衡是在解析应用层的各种各样的协议。那么到四层的时候只解析到UDP或者TCP。三层的负载均衡就是网络层的负载均衡,用NET等各种各样的技术进行负担均衡,比如常用的LVS。

  案例一:阿里云ECS存储优化。在阿里云环境中,一台物理机上运行了很多虚拟机(购买的ECS服务器,本质上购买的是虚拟机)。如果购买了云盘,云盘是自动挂载在虚拟机上的。在虚拟机上任何的IO操作,本质上都会通过物理机上称为TTC的程序,将其转发到远端的存储集群中。优化之前,存储集群的cache缓存是放在远端的。那么放在远端时,如何进行优化呢?

  站在网络层(三层)的角度进行优化时,网络的传输路径太长了。传输路径过长还会带来另外一个问题,比如说后端云盘为了保证可靠性,就会复制两三份,这样会造成成本过高。如果把缓存前移,直接放在物理机上就会使得路径缩短。

  案例二:如何降低多线程多路复用的成本?比如一台物理机上跑了20个虚拟机,平均每个虚拟机包含有一个系统盘和一个数据盘。加起来是40个盘。40个盘使用多线程来解决问题。但是多线程会造成多路复用,成本就会比较高。那么怎么样把这个多路复用的成本降低呢? 通过协程来替代原先的这样多线程的架构,本质上是在传输层进行优化的。

  案例二:阿里云使用的是经典网络,内网IP是10开头的A类子网地址,如今使用的是是B类子网地址,网络本质上在跑在VPC或者SDN(软件定义网络),这种网络是在数据链路层上或者是数据链路层与网络层之间(2.5层)。本质上是在rp报文和ip tunnel概念上做文章。

原网站

版权声明
本文为[强强学习]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_47532216/article/details/124989138