网络基础之--IP数据报、分片策略、路由表

IP 数据报的格式

  • 一个 IP 数据报由首部和数据两部分组成。
  • 首部的前一部分是固定长度共 20 字节是所有 IP 数据报必须具有的。
  • 在首部的固定部分的后面是一些可选字段其长度是可变的。

IP 数据报首部的固定部分中的各字段

  • 版本——占 4 位指 IP 协议的版本目前的 IP 协议版本号为 4 (即 IPv4)
  • 首部长度——占 4 位可表示的最大数值是 15 个单位(一个单位为 4 字节)因此 IP 的首部长度的最大值是 60 字节。
  • 区分服务——占 8 位用来获得更好的服务在旧标准中叫做服务类型但实际上一直未被使用过。1998年这个字段改名为区分服务。只有在使用区分服务DiffServ时这个字段才起作用。在一般的情况下都不使用这个字段
  • 总长度——占 16 位指首部和数据之和的长度单位为字节因此数据报的最大长度为 65535 字节。总长度必须不超过最大传送单元 MTU。
  • 标识(identification)——占 16 位它是一个计数器用来产生数据报的标识。
  • 标志(flag)——占 3 位目前只有前两位有意义。标志字段的最低位是 MF (More Fragment)。MF = 1 表示后面“还有分片”。MF = 0 表示最后一个分片。标志字段中间的一位是 DF (Don‘t Fragment) 。只有当 DF = 0 时才允许分片。
  • 片偏移(13 位)指出较长的分组在分片后某片在原分组中的相对位置。片偏移以 8 个字节为偏移单位。
  • 生存时间(8 位)记为 TTL (Time To Live)数据报在网络中可通过的路由器数的最大值。
  • 协议(8 位)字段指出此数据报携带的数据使用何种协议以便目的主机的 IP 层将数据部分上交给哪个处理过程
  • 首部检验和(16 位)字段只检验数据报的首部不检验数据部分。这里不采用 CRC 检验码而采用简单的计算方法。
  • 源地址和目的地址都各占 4 字节

IP 数据报分片

IP 层转发分组的流程

  • 有四个 A 类网络通过三个路由器连接在一起。每一个网络上都可能有成千上万个主机。
  • 可以想像若按目的主机号来制作路由表则所得出的路由表就会过于庞大。
  • 但若按主机所在的网络地址来制作路由表那么每一个路由器中的路由表就只包含 4 个项目。这样就可使路由表大大简化。

查找路由表

根据目的网络地址就能确定下一跳路由器这样做的结果是

  • IP 数据报最终一定可以找到目的主机所在目的网络上的路由器可能要通过多次的间接交付。
  • 只有到达最后一个路由器时才试图向目的主机进行直接交付。

特定主机路由

  • 这种路由是为特定的目的主机指明一个路由。
  • 采用特定主机路由可使网络管理人员能更方便地控制网络和测试网络同时也可在需要考虑某种安全问题时采用这种特定主机路由。

默认路由(default route)

  • 路由器还可采用默认路由以减少路由表所占用的空间和搜索路由表所用的时间。
  • 这种转发方式在一个网络只有很少的对外连接时是很有用的。
  • 默认路由在主机发送 IP 数据报时往往更能显示出它的好处。
  • 如果一个主机连接在一个小网络上而这个网络只用一个路由器和因特网连接那么在这种情况下使用默认路由是非常合适的。

注意

  • IP 数据报的首部中没有地方可以用来指明“下一跳路由器的 IP 地址”。
  • 当路由器收到待转发的数据报不是将下一跳路由器的 IP 地址填入 IP 数据报而是送交下层的网络接口软件。
  • 网络接口软件使用 ARP 负责将下一跳路由器的 IP 地址转换成硬件地址并将此硬件地址放在链路层的 MAC 帧的首部然后根据这个硬件地址找到下一跳路由器。

分组转发算法

(1)  从数据报的首部提取目的主机的 IP 地址 D, 得出目的网络地址为 N。

(2)  若网络 N 与此路由器直接相连则把数据报直接交付目的主机 D否则是间接交付执行(3)。

(3)  若路由表中有目的地址为 D 的特定主机路由则把数据报传送给路由表中所指明的下一跳路由器否则执行(4)。

(4)  若路由表中有到达网络 N 的路由则把数据报传送给路由表指明的下一跳路由器否则执行(5)。

(5) 若路由表中有一个默认路由则把数据报传送给路由表中所指明的默认路由器否则执行(6)。

(6)  报告转发分组出错。

路由选择协议

因特网有两大类路由选择协议

  • 内部网关协议 IGP (Interior Gateway Protocol)    即在一个自治系统内部使用的路由选择协议。目前这类路由选择协议使用得最多如 RIP 和 OSPF 协议。
  • 外部网关协议EGP (External Gateway Protocol)    若源站和目的站处在不同的自治系统中当数据报传到一个自治系统的边界时就需要使用一种协议将路由选择信息传递到另一个自治系统中。这样的协议就是外部网关协议 EGP。在外部网关协议中目前使用最多的是 BGP-4。

下面主要介绍内部网关协议 RIP (Routing Information Protocol)

工作原理

  • 路由信息协议 RIP 是内部网关协议 IGP中最先得到广泛使用的协议。
  • RIP 是一种分布式的基于距离向量的路由选择协议。
  • RIP 协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录。

“距离”的定义 

  • 从一路由器到直接连接的网络的距离定义为 1。
  • 从一个路由器到非直接连接的网络的距离定义为所经过的路由器数加 1。
  • RIP 协议中的“距离”也称为“跳数”(hop count)因为每经过一个路由器跳数就加 1。
  • 这里的“距离”实际上指的是“最短距离”
  • RIP 认为一个好的路由就是它通过的路由器的数目少即“距离短”。
  • RIP 允许一条路径最多只能包含 15 个路由器。
  • “距离”的最大值为16 时即相当于不可达。可见 RIP 只适用于小型互联网。
  • RIP 不能在两个网络之间同时使用多条路由。RIP 选择一个具有最少路由器的路由即最短路由哪怕还存在另一条高速(低时延)但路由器较多的路由。

RIP 协议的三个要点 

  • 仅和相邻路由器交换信息。
  • 交换的信息是当前本路由器所知道的全部信息即自己的路由表。
  • 按固定的时间间隔交换路由信息例如每隔 30 秒。

路由表的建立

  • 路由器在刚刚开始工作时只知道到直接连接的网络的距离此距离定义为1。
  • 以后每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息。
  • 经过若干次更新后所有的路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址。
  • RIP 协议的收敛(convergence)过程较快即在自治系统中所有的结点都得到正确的路由选择信息的过程。

距离向量算法

示例

时间: 2024-10-21 20:51:56

网络基础之--IP数据报、分片策略、路由表的相关文章

【网络基础】IP数据报文段解析

IP数据报文段的结构示意图如下: (1)版本 占4位,指IP协议的版本. 通信双方使用的IP协议版本必须一致.目前广泛使用的IP协议版本号为4(即IPv4).关于IPv6,目前还处于草案阶段. (2)首部长度 占4位,可表示的最大十进制数值是15. 请注意,这个字段所表示数的单位是32位字长(1个32位字长是4字节),因此,当IP的首部长度为1111时(即十进制的15),首部长度就达到4*15=60字节.当IP分组的首部长度不是4字节的整数倍时,必须利用最后的填充字段加以填充.因此数据部分永远在

网络基础——TCP/IP

网络基础--TCP/IP 一.TCP/IP协议族 计算机与网络设备要相互通信,双方就必须基于相同的方法.比如,如何探测到通信目标.由哪一边先发起通信.使用哪种语言进行通信.怎样结束通信等规则都需要事先确定.不同的硬件.操作系统之间的通信,所有的这一切都需要一种规则.而我们就把这种规则称为协议(protocol). 如图:TCP/IP是互联网相关的各类协议族的总称. 协议中存在各式各样的内容.从电缆的规格到IP地址的选定方法.寻找异地用户的方法.双方建立通信的顺序,以及Web页面显示需要处理的步骤

网络基础---TCP/IP五层模型

网络基础---TCP/IP五层模型 计算机之间的通讯是通过互联网来进行的,各个计算机在internet上遵循它的一系列协议才能进行通讯,因此实际上可以把互联网本质看作是一系列的网络协议. 1.TCP/IP五层模型 (1)物理层功能:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0 (2)数据链路层的功能:建立逻辑连接.进行硬件地址寻址.差错校验等功能(由底层网络定义协议).并且将比特组合成字节进而组合成帧,用MAC地址访问介质,错误发现但不能纠正. 1)以广播的方式通

IP数据报格式,路由表

IP数据报格式 MTU最大传输单元:数据帧中的有效载荷的最大长度,不包括首部的长度,若大于MTU,则需要分片,分片是由IP层完成的.组装也是由IP层自行完成. 在IP分组头中,与分组的分片与组长有关的字段有:16位标识,3位标志,13位片位移 16位标识: 分组可能通过不同的传输路径到达目的主机.属于同一分组的不同片会出现乱序,或者与其他分组混合在一起.若将属于一个分组的所有片分配一个标识值ID,则目的主机可根据标识值将属于同一分组的片挑出来,重新组装.标识ID是片识别的标记. 3位标志: 标志

网络基础tcp/ip协议四

网络层的功能: 定义了基于ip协议的逻辑地址. 链接不同的媒介类型. 选择数据通过网络的最佳路劲. 数据包格式: 优先级与服务类型(8)位:优先级与服务类型 标识符,标志,段偏移量:这几个字用来对数据包进行标识,使数据包到达目的端重组的时候,不会乱序. 首部长度:ip包头首部长度最短20字节 总长度(16): 协议号:UDP是17,TCP是6 首部效验和: TTL:生命周期字段,经过一个路由器TTL值减1,为0时,数据包丢弃,为了防止一个数据包在网络中无限的循环下去. ip地址分类: ip地址分

加深理解HTTP请求---网络基础TCP/IP

为了了解HTTP,必须的了解TCP/IP协议族. 通常使用的网络实在TCP/IP协议族的基础上运作的.而HTTP就属于他的一个子集. 1.TCP/IP 协议族 计算机与网络设备要相互通信,双方就必须基于相同的方法.比如:如何探测到通信目标.由哪一方先发起通信.使用哪种语言等等好多规则. 然而这种规则就是所谓的协议(protocol),你要用我就按照我协议的规则来.常用协议有:tcp,http,ftp,dhcp,dns,ip,pppoe,udp,snmp,icmp等等. 像这样把与互联网关联的协议

IP数据报分片、组装过程以及路由表的建立过程

1)IP分组 中3位标志 标志位共三位 最高位为0 该值必须复制到所有的分组中 DF(Do not Fragment) DF 值为1 表示不能分片 如果分组的长度超过MTU 又不可以分片 则这个分组丢弃 并用ICMP差错报文向主机报告 0 表示可以分片 MF (More Fragment) MF 值为1 表示接收的不是最后一个分片 0 表示 接收的是最后一个分片 2)分片.组装 过程 描述 IP分组头中 ,与分组和组装相关的 字段有: 标识(16位).标志(3位).片偏移(13位). 最大传输单

网络基础tcp/ip协议五

传输层的作用: ip层提供点到点的链接. 传输层提供端到端的链接. 传输层的协议: TCP: 传输控制协议可靠的,面向链接的协议,传输效率低. UDP: 用户数据报协议,不可靠,无连接的服务,传输效率高. TCP工作原理: TCP的封装格式 链接与断开 流量控制 拥赛控制 差错控制 计时器 TCP的封装格式: 源端口,目标端口 序列号,确认序列号 如序列号为x则确认号为x+1 TCP首部长度至少20字节 控制位: SYN:建立连接时将这个值设为1 ACK:当ACK=1表示确认,ACK=0表示确认

Linux之网络基础TCP/IP以及网络属性配置

计算机网络区域范围: 局域网络 (Local Area Network, LAN):节点之间的传输距离较近 广域网 (Wide Area Network, WAN):传输距离较远,网络应用方面大多为类似 email, FTP, WWW 浏览等功能 计算机网络协议:网络连接过程分成数个阶层 (layer),每个阶层都有特别的独立的功能,不会互相干扰的. 目前的OSI七层协定(Open System Interconnection) OSI模型自上而下,分为以下: 应用层:文件传输,电子邮件,文件服