【网络排查】网络分层

网络为什么分层?

  • 分层可以解耦
  • 分层可以复用

如果实现一个应用!早起可能有两种做法。

  • 大包大揽:假设我们开发完这个程序,但我们开发第二程序的时候,还是需要开发一个网络模型,一个操作系统等。
  • 应用程序,网络设备,操作系统各自分工:这样我们应用程序开发自己程序,当需要系统调用的时候就调用操作系统,当网络发包的时候通过交换机发送!

常见的网络分层

OSI七层模型和TCP/IP的四层,五层模型

 

 

什么是TCP流?

TCP流表示一个连续事件的意思!是指有前后顺序的。一个TCP流对应的是一个五元组

  • 源IP
  • 源端口
  • 目的IP
  • 目的端口
  • 传输协议类型

是指数据链路层的概念,代表二层报文。

  • 帧头
  • 载荷
  • 帧尾

注意:帧是有尾部的,像IP,TCP,HTTP报文都是没有尾部的!

 

分组

IP层报文。也是狭义的packet

 

TCP segment,也就是TCP报文。segment是指“部分”的意思。那整体是表示什么呢?它就是在应用层交付给传输层的消息(message)。当 message 被交付给传输层时,如果这个 message 的原始尺寸,超出了传输层数据单元的限制(比如超出了 TCP 的 MSS),它就会被划分为多个 segment。这个过程就是分段(segmentation),也是 TCP 层的一个很重要的职责。

 

 

各个分层的排查工具

应用层

各大浏览器的开发者工具(Chrome,FireFox等)

表示层和会话层

  • 基于浏览器做初步的检查,主要是围绕证书本身做检查
  • 关于 TLS 握手、密钥交换、密文传输等方面的排查,还是需要用 tcpdump 和 Wireshark 来做

传输层

  • 路径可达性测试(telnet nc)
  • 查看当前连接状况(netstat ss)
  • 查看当前连接的传输速率(iftop)
  • 查看丢包和乱序等的统计(netstat -s)
网络层

 网络层

  • 查看网络路
    查看网络路径状况(traceroute  mtr)
  • 查看路由(route netstat -r)

数据链路层和物理层

  • ethtool

 

网络为什么要分层呢
网络为什么要分层呢
posted @ 2022-03-11 18:03  大胖猴  阅读(121)  评论(0编辑  收藏  举报