<计算机网络自顶向下> Internet Protocol(未完成)

2024-04-26 08:20

本文主要是介绍<计算机网络自顶向下> Internet Protocol(未完成),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

互联网中的网络层

IP数据报格式

  • ver: 四个比特的版本号(IPV4 0100, IPV6 0110)

  • headlen:head的长度(头部长度字段(IHL)指定了头部的长度,以32位字(4字节)为单位计算。这个字段的值乘以4就是头部的实际长度,因为每个值代表4个字节。所以,如果IHL字段的值为5,那么头部长度就是5 * 4 = 20字节,IP数据包头部最小长度是20所以这个headlen字段最小的值是5)

  • flgs字段是分片用的

  • upper layer: (该字段是8位长,就是protocol字段,它指示了数据部分所使用的上层协议类型。以下是一些常见协议类型的数值表示:1表示ICMP(Internet控制消息协议);6表示TCP(传输控制协议);17表示UDP(用户数据报协议))

  • 这里的Internet checksum是头部的校验和

  • Option:比如说有些option就是记录下途中每个路由器的地址

IP分片和重组(Fragmentation & Reassembly)

  • 网络链路有MTU(最大传输单元,是包括头部的)——链路层帧所携带的最大数据长度
    • 不同的链路类型
    • 不同的MTU
  • 大的IP数据报在网络上被分片(“fragmented”)
    • 一个数据报被封为若干个小的数据报(每个小的数据报必须都要加上头部)
      • 相同的ID
      • 不同的偏移量(以八个字节为单位偏移量)
      • 最后一个分片的fragflag标记为0,反之为1
    • “重组”旨在最终的目标主机进行(要是每个路由器都充足的话就太忙了)
    • 胖分组加入中间有分片没到就全扔了
    • IP头部的信息被用于表示,排序相关分片

IP编址

  • IP地址:32位标识,对主机或者路由器的接口编址(是标识接口点的而不是标识主机)
  • 接口:主机/路由器和物理链路的连接处
    • 路由器通常多个接口
    • 主机也有可能多个接口
    • IP地址和每个接口相关联
  • 一个IP地址和一个接口相关联

子网(Subnet) 

  • IP地址:
    • 子网部分(高位bits)
    • 主机部分(低位bits)
  • 什么是子网
    • 一个子网内的节点(主机或路由器)它们的IP地址的高位部分相同,这些节点构成的网络的一部分叫做子网(条件一:前缀一样)
    • 无需路由器介入,子网内个主机可以在物理上相互直接到达(条件二:分组收发不需要路由器,一跳可达,可借助交换机)
    • 把纯子网的所有信息聚集为一条向外发送,可以减少在广域网范围路由表表项的数量,减小传输和计算路由信息的代价(所以说路由表的单位实际上是网络而不是IP地址)

  • 判断子网数量 (看"孤岛”): 把路由器连线断开看分区比如下图就是六个子网

IP地址分类

  • 单播地址(我->你)
    • A类:地址的最高位为0,第一个字节的其他7个比特代表网络号,后面三个字节的24比特代表主机号(一共有126个网络因为2^7-2,不要全0的网络和全1的网络,这是IP地址的约定,每个网络2^24-2个主机)
    • B类:最高地址为10,前面两个字节剩余部分代表网络号,后面两个字节代表主机号
    • C类:最高地址为110,前面三个字节剩余部分代表网络号,后面一个字节代表主机号
  • 主播地址(我->所有)
    • D类:最高地址为1110,后面就是主播地址(主播组成员)
  • 预留地址
    • E类:最高地址为11110

  •  一些约定
    • 回路地址:就是自己的地址(也叫测试地址,因为通常用于本地测试,诊断和通信,不涉及真实的网络通信)

  •  内网(专用)IP地址
    • 专用地址:地址空间的一部分供专用地址使用
    • 永远不会被当做公用地址来分配,不会与公用地址重复
      • 只在局部网络中有意义,区分不同的设备
    • 路由器不对目标地址是专用地址的分组进行转发
    • 举例来说,一个公司内部网络可以使用192.168.0.0/24的地址范围,例如192.168.1.0到192.168.1.255之间的IP地址,来连接其内部设备,比如电脑、打印机、服务器等。这些地址只在公司内部可用,不会被互联网路由器转发
    • 专用地址范围

  •  无类地址:按需分配IP地址
    • 因为是按需分配所以无法直接通过用IP地址在路由表查询,需要使用CIDR

CIDR:Class InterDomain Routing(无类域间路由)

  • 子网部分可以在任何位置
  • 地址格式:a.b.c.d/x,其中x是地址中子网号的长度(为1说明是网络号,为1为主机号)取与即可

  • 转发表和转发算法:
    • 目标子网号
    • 子网掩码
    • 下一跳
    • 端口
  • 步骤
    • 取出目标IP
    • 和每个表项子网掩码做个与(就可以把网络号取出来)
    • 取出来判断和目标子网号是否一样,要是不一样接着往下找
    • 一样的话表项就找到了
    • 只有最后一跳目标主机的主机号才有用

  • 这里再次详细叙述一下一次数据报从源主机到目标主机的过程 :某路由器从某个端口收到数据报,匹配表项,知道从哪个端口放出去,下一跳的IP地址是什么,找到IP地址相对应的网卡MAC地址(根据ARP协议,这还是匹配IP地址和MAC号的协议),然后重新解封装封装继续转发,直到最后一跳,到达目标网络,交给目标主机(只有最后一条需要用到主机号)

 如何获得IP地址

  • 自动分配IP地址
    • 系统管理员将地址配置在一个文件中
    • 上网必备的四个信息
      • IP地址(Internet Protocol Address)

      • 子网掩码(Subnet Mask):两种表示方式

      • 默认网关(Default Gateway):是一个设备(通常是路由器)的IP地址,用于将数据包发送到其他网络。当一个设备需要发送数据到不在同一子网内的目标时,它将数据包发送到默认网关,由默认网关来负责将数据包转发到正确的目标。

      • DNS服务器(Domain Name System Server)

    • DHCP:Dynamic Host Configuration Protocol 从服务器中动态获得一个IP地址
  • 手动分配IP地址
    • 非最大ISP就请求大网给你分配小网
    • 最大ISP找ICANN分配IP地址(Internet Corporation for Assigned Names and Numbers)

Dynamic Host Configuration Protocol(动态主机配置协议)

  • 目标:允许主机在加入网络的时候,动态的从服务器哪里获取IP地址
    • 可以更新对主机再用IP地址的租用期-租期快到了
    • 重新启动时,允许重新使用以前用过的IP地址
    • 支持移动用户加入到该网络(短期在网)
  • DHCP工作概况

层次编址:路由聚集(route aggregation)

  • 第一个路由器:当一个数据包被发送到一个目的地时,首先它需要知道它要去的第一个路由器,也就是数据包的第一个下一跳。

    通常情况下,源设备(发送数据包的设备)已经配置了默认网关(Default Gateway)。默认网关是一个设备的IP地址,用于指示发送到其他网络的数据包应该发送到哪个路由器。首先查路由表如果发现不是自己网络范围的所以要发到默认网关。源设备将数据包发送到默认网关,然后默认网关将根据自己的路由表将数据包发送到适当的下一跳。

  • 下一跳:路由器在转发数据包时选择的下一个路由器或者目的地设备的地址
  •  层次编制是指路由协议在路由信息传播时采用分层的方法。在分层编制中,路由信息首先传播到特定的节点,然后再传播到更广泛的节点,最终到达整个网络。这种分层的方法有助于减少路由信息的传播量和路由器之间的通信开销,提高了路由信息的有效传播效率。(路由器允许一定的空洞就是没必要全部都收到了再发出去)
  • 层次编制允许路由信息的有效广播,某一子网前缀的分组全部整合发到路由器以后再根据路由表查询最长匹配的下一跳发到下一个地点

 层次编址:特殊路由信息(more specific routes)

这篇关于<计算机网络自顶向下> Internet Protocol(未完成)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/937066

相关文章

Java 后端接口入参 - 联合前端VUE 使用AES完成入参出参加密解密

加密效果: 解密后的数据就是正常数据: 后端:使用的是spring-cloud框架,在gateway模块进行操作 <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>30.0-jre</version></dependency> 编写一个AES加密

计算机网络基础概念 交换机、路由器、网关、TBOX

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、VLAN是什么?二 、交换机三、路由器四、网关五、TBOXTelematics BOX,简称车载T-BOX,车联网系统包含四部分,主机、车载T-BOX、手机APP及后台系统。主机主要用于车内的影音娱乐,以及车辆信息显示;车载T-BOX主要用于和后台系统/手机APP通信,实现手机APP的车辆信息显示与控

CCF推荐C类会议和期刊总结(计算机网络领域)

CCF推荐C类会议和期刊总结(计算机网络领域) 在计算机网络领域,中国计算机学会(CCF)推荐的C类会议和期刊为研究者提供了广泛的学术交流平台。以下是对所有C类会议和期刊的总结,包括全称、出版社、dblp文献网址以及所属领域。 目录 CCF推荐C类会议和期刊总结(计算机网络领域) C类期刊 1. Ad Hoc Networks 2. CC 3. TNSM 4. IET Com

如何完成本科毕业论文设计

完成本科毕业论文设计是一个系统性的工程,需要经过多个阶段的规划、执行和总结。以下是一个详细的步骤指南,帮助你顺利完成本科毕业论文设计。 ### 1. 选题与开题 - **选题**:选择一个有研究价值且你感兴趣的题目。与导师讨论,确保题目具有可行性和创新性。 - **开题报告**:撰写开题报告,包括研究背景、研究目的、研究内容、研究方法、预期成果等。 ### 2. 文献综述 - **文献检索**

LabVIEW环境中等待FPGA模块初始化完成

这个程序使用的是LabVIEW环境中的FPGA模块和I/O模块初始化功能,主要实现等待FAM(Field-Programmable Gate Array Module,FPGA模块)的初始化完成,并处理初始化过程中的错误。让我们逐步分析各部分的功能: 1. Wait for FAM Initialization框架 此程序框架用于等待I/O模块成功初始化。如果在5秒钟内模块没有完成配

[计算机网络]-计网学习笔记-计网知识点总结(附完整笔记)

本笔记是跟着 b站 湖科大教书匠 视频做的笔记,其中图片为视频中的 PPT,加上了自己的注释。         这是原视频链接。大家可以参照着笔记看原视频。视频中的 PPT 做的非常好。         【计算机网络微课堂(有字幕无背景音乐版)】https://www.bilibili.com/video/BV1c4411d7jb?vd_source=1146b07cc2d66

完成一个项目的流程

我自己总结的,有什么问题,请大家指点啊! 1. 制定项目的周期。工具:project 2. 确定需求,设计界面。工具:Axure 3. 写需求文档。 4. 写接口文档。 5. 设计项目架构。工具:Visio 6. 做图。工具:ps 7. 编码。 8. 写测试用例。 9.测试。

idea中配置Translation插件完成翻译功能

文章目录 idea下载插件配置有道云阿里云百度翻译开放平台 idea下载插件 idea中安装Translation插件 使用方法:右下角选择翻译引擎,鼠标选中想翻译的部分,右键翻译即可 之前一直用的微软的翻译,不需要配置,但是最近微软服务器总是抽风,无法使用,故打算配置一下国内的翻译服务。 配置 有道云 只有初始的一点额度,用完就要收费了,不推荐

解决解压缩时的错误提示 “无法成功完成操作, 因为文件包含病毒或者潜在垃圾文件“

近期, 有一些朋友反馈在解压zip压缩包, 或者在安装软件的过程中出现了下面的错误提示: "无法成功完成操作, 因为文件包含病毒或者潜在垃圾文件" "Operation did not complete successfully because the file contains a virus or potentially unwanted software" 上述错误一般

亚信安慧AntDB数据库与华为DPA数据保护一体机完成兼容性互认证,共筑数据安全与效率新高地

近日,湖南亚信安慧科技有限公司(简称“亚信安慧”)与华为技术有限公司(简称“华为”)完成了亚信安慧AntDB数据库与华为DPA数据保护一体机兼容性互认证。 图1:华为DPA数据保护一体机兼容性互认证 亚信安慧AntDB数据库作为领先的数据库解决方案提供商,专注于数据库产品的研发与创新,以其卓越的性能和稳定性,服务于超数亿用户,连续十年无故障运行。亚信安慧AntDB数据库的云原生分布式架