当前位置: 首页 > article >正文

计算机网络学习20250528

地址解析协议ARP

实现IP地址和Mac地址的转换
ARP工作原理:
每台主机或路由器都有一个ARP表,表项:<IP地址,Mac地址,TTL>(TTL一般为20分钟)
主机产生ARP查询分组,包含源目的IP地址和源Mac地址,目的Mac地址FF-FF-FF-FF-FF-FF(mac广播地址),该查询分组广播给子网内的所有主机,路由器接口处的网卡,并向上交给ARP模块,
每个主机或路由器的ARP模块检查自己的IP地址是否与ARP查询分组中的目的IP地址一致,相匹配的主机或路由器在标准帧中返回ARP响应分组,包含所查询的Mac地址,主机根据ARP响应分组更新自己的ARP表

以太网帧结构

前同步码(8字节)时钟同步
目的Mac地址(6字节)
源Mac地址(6字节)
类型(2字节):指示数据部分送给哪个网络层协议,eg:0x0800-ip,0x0806-ARP
数据:46-1500字节,不足46字节时,会填充至最小值
crc(4字节)

IPV4

首部(4bit):版本号,IPV4 0100,IPV6 0110
首部长度(4bit):20字节固定+可选
服务类型(8bit):区别不同类型的数据报
数据报长度(16bit):首部+数据
标识,标志,片偏移:IPV4分片时使用
寿命TTL:每经过一个路由器,TTL-1,TTL减为零时丢弃
协议:IP数据报到达目的终端时,协议字段指示数据部分交付给哪个传输层协议,TCP-6,UDP-17
首部校验和:只检验首部的比特错误
选项:允许首部扩展
源和目的IP地址:IPv4 32位地址

IP数据报分片
不同链路层协议的MTU不同,以太网1500字节,FDDI 4352字节,PPP 296字节,大的IP数据报到较小的MTU链路上,需要进行分片,重新组装在端系统完成

  • 标识号ID:同一IP数据报的片具有相同的ID,确认是否属于同一数据报
  • 偏移offset:指示片在初始数据报中的位置,以8字节为单位,确认是否确认
  • 标志flag:标识是否为最后一个分片,值为0时表示是最后一个分片,确认是否收完
  • 接收端对于不完整的数据报会丢弃
  • IPV4通过分片实现对不同链路层MTU的适配,实现不同网络的互连,但分片会增加路由器和终端的复杂性
  • IPV6改进:如果路由器收到的数据报尺寸大于MTU,则丢弃,返回报告,由终端重新决定IP

DHCP:动态主机配置协议,主机频繁的加入和离开网络

IPV6

引入原因:

IPV4 32位地址耗尽=》IPV6 128位地址
固定首部长度易于快速处理和转发
实现QOS

IPV6数据报格式:固定40字节首部字段+数据字段

首部字段
版本:0100(IPV6)
流量类型 流标签:标识不同类型的流,分配不同的优先级,实现QOS
有效载荷长度:数据字段长度
下一个首部:标识数据字段交付给哪个上层协议,
跳限制:每经一台路由器减一,减为0时丢弃
源IP地址,目的IP地址:128位

IPV6与IPV4的区别

  1. 扩大的地址容量
  2. 简化高效的40字节首部
  3. 流标签与优先级:实现QOS
  4. 取消分片:当路由器 收到数据报太大不能转发时,丢弃,返回分组太大ICMP报文,发送方重新发送较小分组
  5. 取消首部检验:快速处理IP数据报
http://www.lryc.cn/news/2395766.html

相关文章:

  • Next.js路由导航完全指南
  • 五、web安全--XSS漏洞(1)--XSS漏洞利用全过程
  • 【C++高级主题】命令空间(六):重载与命名空间
  • 利用 Python 爬虫获取淘宝商品详情
  • 动态拼接内容
  • Tomcat运行比较卡顿进行参数调优
  • java直接获取MyBatis将要执行的动态sql命令(不是拦截器方式)
  • C++四种类型转换方式
  • Canvas: trying to draw too large(256032000bytes) bitmap.
  • 【深度学习-pytorch篇】5. 卷积神经网络与LLaMA分类模型
  • matlab全息技术中的菲涅尔仿真成像
  • 基于对比学习的推荐系统开发方案,使用Python在PyCharm中实现
  • 网络协议之办公室网络是怎样的?
  • 鸿蒙OSUniApp PWA开发实践:打造跨平台渐进式应用#三方框架 #Uniapp
  • uni-data-picker级联选择器、fastadmin后端api
  • 8天Python从入门到精通【itheima】-62~63
  • 运维 pgsql 安装完后某次启动不了
  • Linux基本指令/下
  • matlab中绘图函数plot
  • 在线音乐服务器测试报告
  • spark-AQE/Tungsten介绍及其触发条件
  • leetcode-hot-100 (矩阵)
  • 深度学习中常见的超参数对系统的影响
  • 评标专家系统随机抽选 开发 Excel 中使用东方仙盟软件助理——未来之窗——仙盟创梦IDE
  • MySQL、PostgreSQL、Oracle 区别详解
  • 【第4章 图像与视频】4.6 结合剪辑区域来绘制图像
  • 【Linux】Linux文件系统详解
  • IDEA使用Git进行commit提交到本地git空间后撤回到commit版本之前
  • LangChain完全指南:从入门到精通,打造AI应用开发新范式
  • 深入解析Vue.js:构建现代Web应用的高效之道