技术分享
首页
  • JavaScript

    • 构造函数和原型
    • Cookie和Session
    • Object.create(null)和{}
    • TypeScript配置
    • typescript入门到进阶
  • 框架

    • Vue-Router
    • React基础入门
  • 其它

    • Http协议
    • 跨域问题总结
  • 分析Promise实现
  • Axios源码分析
  • Webpack原理
  • vueRouter源码分析
  • Vue

    • Vite快速搭建Vue3+TypeScript项目
    • Cordova打包Vue项目的问题
    • Vue将汉字转为拼音,取出首字母
  • JavaScript

    • new Function
  • 后端

    • Node.js中使用Crypto生成Token
    • Body-Parser处理多层对象的问题
  • 其它

    • 项目Demo汇总
    • Vuepress+Vercel搭建个人站点
    • 项目中能用到的
    • husky规范代码提交
  • Mongoose基础
  • Multer文件上传中间件的使用
  • JavaScript

    • 浅谈两数全等
    • JavaScript进制转换
    • 手写bind,apply,call和new
  • 算法

    • 数组去重和排序
    • 数组扁平化
    • 斐波那契数列
  • JavaScript 数据结构
  • 其它

    • webpack面试题
    • vite面试题
    • svg和canvas的优缺点
    • TypeScript面试题
    • Vue常见面试题
  • 计算机网络

    • 数据链路层
    • 网络层
  • Git的使用
  • Nginx的使用
  • CentOS7安装Nginx
  • 正则表达式
  • SEO搜索引擎优化
  • Serverless介绍
友链
GitHub (opens new window)

鑫生活

总有人要赢,为什么不能是我
首页
  • JavaScript

    • 构造函数和原型
    • Cookie和Session
    • Object.create(null)和{}
    • TypeScript配置
    • typescript入门到进阶
  • 框架

    • Vue-Router
    • React基础入门
  • 其它

    • Http协议
    • 跨域问题总结
  • 分析Promise实现
  • Axios源码分析
  • Webpack原理
  • vueRouter源码分析
  • Vue

    • Vite快速搭建Vue3+TypeScript项目
    • Cordova打包Vue项目的问题
    • Vue将汉字转为拼音,取出首字母
  • JavaScript

    • new Function
  • 后端

    • Node.js中使用Crypto生成Token
    • Body-Parser处理多层对象的问题
  • 其它

    • 项目Demo汇总
    • Vuepress+Vercel搭建个人站点
    • 项目中能用到的
    • husky规范代码提交
  • Mongoose基础
  • Multer文件上传中间件的使用
  • JavaScript

    • 浅谈两数全等
    • JavaScript进制转换
    • 手写bind,apply,call和new
  • 算法

    • 数组去重和排序
    • 数组扁平化
    • 斐波那契数列
  • JavaScript 数据结构
  • 其它

    • webpack面试题
    • vite面试题
    • svg和canvas的优缺点
    • TypeScript面试题
    • Vue常见面试题
  • 计算机网络

    • 数据链路层
    • 网络层
  • Git的使用
  • Nginx的使用
  • CentOS7安装Nginx
  • 正则表达式
  • SEO搜索引擎优化
  • Serverless介绍
友链
GitHub (opens new window)
  • 数据链路层
  • 网络层
    • 网络设备和 OSI 参考模型关系
      • 计算机通信的过程,本网段通信跨网端通信的过程
    • 网络层协议
      • IP 协议、RIP、OSPF
      • ARP 协议
      • 网际控制报文协议 ICMP
      • Internet 组播管理协议 IGMP
    • 协议号
    • 静态路由和动态路由
      • 静态路由
      • 动态路由
  • 计算机
coderly
2019-12-29

网络层

# 网络层

网络层负责在不同网络之间尽力转发数据包,基于数据包的 IP 地址转发;
不负责丢失重传,不负责顺序;

# 网络设备和 OSI 参考模型关系

# 计算机通信的过程,本网段通信跨网端通信的过程

【发送端】:

  1. 应用程序准备要传输的文件;

  2. 传输层 将文件分段并编号;

  3. 网络层 添加目标 ip 地址、源 ip 地址;

  4. 数据链路层:两种情况;

    • 使用自己的子网掩码,判断自己在哪个网段;
    • 使用自己的子网掩码,判断目标地址在哪个网段;
    • 如果是同一个网段,使用 ARP 协议广播解析目标 IP 地址的 MAC 地址;
    • 如果不是一个网段;
图片

# 网络层协议

可参考:
https://www.jianshu.com/p/e4efd121a48c

# IP 协议、RIP、OSPF

# IP 数据包

一个 ip 数据包由首部和数据两部分组成:

  1. 首部的前一部分是固定长度,供 20 字节,是所有 ip 数据报必须具有的;
  2. 在首部的固定部分的后面是一些可选字段,其长度是可变的;
# IP 数据包结构
图片
  1. Version: 4:版本,用来标识 TCP/IP 协议的版本,V4、V6;
  2. Header length: 20 bytes:首部长度;
  3. Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00: Not-ECT (Not ECN-Capable Transport)):区分服务;
  4. Total Length: 40:总长度;
  5. Identification: 0x4445 (17477):标识;
  6. Flags: 0x02 (Don't Fragment):标志;
  7. Fragment offset: 0:片偏移;
  8. Time to live: 64:生存时间;
  9. Protocol: TCP (6):协议; 10.Header checksum: 0x4aa2 [correct]:首部检验和;
  10. Source: 192.168.1.188 (192.168.1.188):原地址;
  11. Destination: 220.181.12.207 (220.181.12.207):目的地址;

# ARP 协议

ARP 将 IP 地址通过广播,目标 MAC 地址 IP 是 FF-FF-FF-FF-FF-FF,解析目标 IP 地址的 MAC 地址;

# 扫描本网段 MAC 地址;

代码:arp -a

# 网际控制报文协议 ICMP

# ping 命令诊断网络故障

  1. ping(Packet Internet Group),因特网包探索器,用于测试网络连接量的程序。ping 发送一个 ICMP 回声请求消息给目的地并报告是否收到所希望的 ICMP 回声应答;
  2. ping 指的是端对端连通,通常用来作为可用性的检查,但是某些病毒木马会强行大量远程执行 ping 命令抢占你的网络资源,导致系统变慢,网速变慢。严禁 ping 入侵作为大多数防火墙的一个基本功能提供给用户进行选择;

# pathping 跟踪数据包路径,计算丢包情况

pathping coderly.cn

# tracert 在路由器上跟踪数据包路径

# Internet 组播管理协议 IGMP

# 协议号

  1. ICMP:1;
  2. IGMP:2;
  3. TCP:6;
  4. UDP:17;
  5. IPv6:41;
  6. OSPF:89;

# 静态路由和动态路由

# 静态路由

  1. 需要管理员告诉路由器所有没有直连的网络下一跳该给谁;
  2. 静态路由的缺点:适合于小规模网络,不能够自动调整路由;

# 动态路由

  1. RIP 周期性广播路由表,选择跳数少的,每隔 30 秒更新一下路由信息;最大跳数 15;
#计算机
上次更新: 2021/09/13, 15:11:59
数据链路层

← 数据链路层

最近更新
01
css
09-13
02
html
09-13
03
README
09-13
更多文章>
Theme by Vdoing | Copyright © 2021-2021 coderly | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式