导航:首页 > 网络连接 > 计算机网络转发分组

计算机网络转发分组

发布时间:2022-12-16 14:22:16

Ⅰ 在计算机网络中,信息的传递为什么要分组

将信息分组并行传输,比如讲一个1024kb大小的文件传给你,分10组并行传输我需要1s,如果不分组,我串行传输,我就需要等前面的发送后才能发送后面的数据,计算机网络中有一种UDP(user data protocal),它是无连接的不可靠,也就是不保证信息到达的时间顺序,就是利用这个原理,分组不用等待,也就是异步的概念。

Ⅱ 计算机网络-网络层-子网分组转发

在划分子网的情况下,分组转发的算法必须做相应的改动。我们应当注意到,使用子网划分后,路由表必须包含以下三项内容: 目的网络地址、子网掩码和下一跳地址 。

在划分子网的情况下,路由器转发分组的算法如下:

(1)从收到的数据报的首部提取目的IP地址D。

(2)先判断是否为直接交付。对路由器直接相连的网络逐个进行检查:用 发送方网络的子网掩码和目的IP地址 D逐位相“与”(AND操作) ,看结果是否和 发送方的网络地址匹配 。若匹配,则把分组进行直接交付(当然还需要把D转换成物理地址,把数据报封装成帧发送出去),转发任务结束。否则就是间接交付,执行(3)。

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

(4)对路由表中的每一行(目的网络地址,子网掩码,下一跳地址),用其中的子网掩码和D逐位相“与”(AND操作),其结果为N。若N与该行的目的网络地址匹配,则把数据报传送给该行指明的下一跳路由器;否则,执行(5)。

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

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

【例4-4】图4-24有三个子网,两个路由器,以及路由器R1中的部分路由表。现在源主机H1向目的主机H2发送分组。R1收到H1向H2发送的分组后查找路由表的过程。

源主机H1向目的主机H2发送的分组的目的地址是H2的IP地址128.30.33.138。源主机H1首先要进行的操作是要判断:发送的这个分组,是在本子网上进行直接交付还是要通过本子网上的路由器进行间接交付?

源主机H1把本子网的“子网掩码255.255.255.128”与目的主机H2的“IP地址128.30.33.138”逐位相“与”(即逐位进行AND操作),得出128.30.33.128,它不等于H1的网络地址(128.30.33.0)。这说明H2与H1不在同一个子网上。因此H1不能把分组直接交付H2,而必须交给子网上的默认路由器R1由R1来转发。

路由器R1在收到一个分组后,就在其路由表中逐行寻找有无匹配的网络地址。

路由表第一行:用这一行的“子网掩码255.255.255.128”和收到的分组的“目的地址128.30.33.138”逐位相“与”(即逐位进行AND操作),得出128.30.33.128。然后和这一行给出的目的网络地址128.30.33.0进行比较。但比较的结果不一致(即不匹配)。

用同样方法继续往下找第二行:用第二行的“子网掩码255.255.255.128”和该分组的“目的地址128.30.33.138”逐位相“与”(即逐位进行AND操作),结果也是128.30.33.128。这个结果和第二行的目的网络地址128.30.33.128相匹配说明这个网络(子网2)就是收到的分组所要寻找的目的网络。于是不需要再继续查找下去。R1把分组从接口1直接交付主机H2(它们都在一个子网上)。

Ⅲ 计算机网络-网络层-路由器的构成

路由器是一种具有多个输入端口和多个输出端口的专用计算机,其任务是转发分组。从路由器某个输入端口收到的分组,按照分组要去的目的地(即目的网络),把该分组从路由器的某个合适的输出端口转发给下一跳路由器。下一跳路由器也按照这种方法处理分组,直到该分组到达终点为止。路由器的转发分组正是网络层的主要工作。

整个的路由器结构可划分为两大部分:路由选择部分和分组转发部分。

路由选择部分也叫做控制部分,其核心构件是路由选择处理机。 路由选择处理机的任务是根据所选定的路由选择协议构造出路由表,同时经常或定期地和相邻路由器交换路由信息而不断地更新和维护路由表。 分组转发部分由三部分组成:交换结构、一组输入端口和一组输出端口(请注意:这里的端口就是硬件接口)。

交换结构(switching fabric)又称为交换组织 ,交换结构是路由器的关键构件,它的作用就是根据转发表(forwarding table)对分组进行处理,将某个输入端口进入的分组从一个合适的输出端口转发出去,交换结构本身就是一种网络,但这种网络完全包含在路由器之中,因此交换结构可看成是“在路由器中的网络”。实现这样的交换有多种方法,以下这三种方法都是将输入端口 I1收到的分组转发到输出端口O2。

图4-45(a)的示意图表示 分组通过存储器进行交换 。目的地址的查找和分组在存储器中的缓存都是在输入端口中进行的。若存储器的带宽(读或写)为每秒M个分组,那么路由器的交换速率(即分组从输入端口传送到输出端口的速率)一定小于M2。这是因为存储器对分组的读和写需要花费的时间是同一个数量级。

图4-45(b)是 通过总线进行交换 的示意图。采用这种方式时,数据报从输入端口通过共享的总线直接传送到合适的输出端口,而不需要路由选择处理机的干预。但是,由于总线是共享的,因此在同一时间只能有一个分组在总线上传送。当分组到达输入端口时若发现总线忙(因为总线正在传送另一个分组),则被阻塞而不能通过交换结构,并在输入端口排队等待。因为每一个要转发的分组都要通过这一条总线,因此路由器的转发带宽就受总线速率的限制。现代的技术已经可以将总线的带宽提高到每秒吉比特的速率,因此许多的路由器产品都采用这种通过总线的交换方式。

图4-45(c)是 通过纵横交换结构(crossbar switch fabric)进行交换 。这种交换机构常称为互连网络(interconnection network),它有2N条总线,可以使N个输入端口和N个输出端口相连接,这取决于相应的交叉结点是使水平总线和垂直总线接通还是断开。当输入端口收到一个分组时,就将它发送到与该输入端口相连的水平总线上。若通向所要转发的输出端口的垂直总线是空闲的,则在这个结点将垂直总线与水平总线接通,然后将该分组转发到这个输出端口。但若该垂直总线已被占用(有另一个分组正在转发到同一个输出端口),则后到达的分组就被阻塞,必须在输入端口排队。

在图4-42中,路由器的输入和输出端口里面都各有三个方框,用方框中的1,2和3分别代表物理层、数据链路层和网络层的处理模块。物理层进行比特的接收。数据链路层则按照链路层协议接收传送分组的核。在把航的首部和尾部去后,分组就被送入网络层的处理模块。若接收到的分组是路由器之间交换路由信总的分组(如RIP或OSPF分组等),则把这种分组送交路由器的路由选择部分中的路由选择处理机。若接收到的是数据分组,则按照分组首部中的目的地址查找转发表,根据得出的结果,分组就经过交换结构到达合适的输出端口。 一个路由器的输入端口和输出端口就做在路由器的线路接口卡上。

输入端口 中的查找和转发功能在路由器的交换功能中是最重要的。为了使交换功能分散化,往往把复制的转发表放在每一个输入端口中(如图4-42中的虚线箭头所示)。路由远择处理机负责对各转发表的副本进行更新。这些副本常称为“影子副本”(shadow ),分散化交换可以避免在路由器中的某一点上出现瓶颈。

“但在具体的实现中还是会遇到不少困难。问题就在于路由器必须以很高的速率转发分组。最理想的情况是 输入端口的处理速率能够跟上线路把分组传送到路由器的速率。这种速率称为线速 (line speed  或 wirc  peed)。可以粗略地估算一下。设线路是0C-48链路,即2.5 Gbit/s。若分组长度为256字节,那么线速就应当达到每秒能够处理100万以上的分组。现在常用Mpps(百万分组每秒)为单位来说明一个路由器对收到的分组的处理速率有多高。”

当一个分组正在查找转发表时,后面又紧跟着从这个输入端口收到另一个分组。这个后到的分组就必须在队列中排队等待,因而产生了一定的时延。

输出端口 从交换结构接收分组,然后把它们发送到路由器外面的线路上。在网络层的处理模块中设有一个缓冲区,实际上它就是一个队列。当交换结构传送过来的分组的速率超过输出链路的发送速率时,来不及发送的分组就必须暂时存放在这个队列中。数据链路层处理模块把分组加上链路层的首部和尾部,交给物理层后发送到外部线路。

从以上可以看出,分组在路由器的输入端口和输出端口都可能会在队列中排队等候处理。若分组处理的速率赶不上分组进入队列的速率,则队列的存储空间最终必定减少到零,这就使后面再进入队列的分组由于没有存储空间而只能被丢弃。分组丢失就是发生在路由器中的输入或输出队列产生溢出的时候。当然,设备或线路出故障也可能使分组丢失。

“转发”和“路由选择”的区别 :在互联网中, “转发” 就是路由器根据转发表把收到的IP数据报从路由器合适的端口转发出去。“转发”仅仅涉及到一个路由器。但 “路由选择” 则涉及到很多路由器,路由表则是许多路由器协同工作的结果。这些路由器按照复杂的路由算法,得出整个网铭的拓扑变化情况,因而能够动态地改变所选择的路由,并由此构造出整个的路由表,路由表一般仅包含从目的网络到下一跳(用P地址表示)的映射,而转发表是从路由表得出的。转发表必须包含完成转发功能所必需的信息。这就是说,在转发表的每一行必须包含从要到达的目的网路到输出端口和某些MAC地址信息(如下跳的以太网地址)的映射。将转发表和路由表用不同的数据结构实现会带来一些好处,这是因为在转发分组时,转发表的结构应当使查找过程最优化,但路由表则需要对网络拓扑变化的计算最优化。路由表总是用软件实现的,但转发表则甚至可用特殊的硬件来实现。请读者注意,在讨论路由选择的原理时, 往往不去区分转发表和路由表的区别,而可以笼统地都使用路由表这一名词。

Ⅳ 计算机网络-网络层-IP层转发分组的流程

在路由表中,对每一条路由最主要的是以下 两个信息①:(目的网络地址,下一跳地址) 。

①注:一个实际的路由表还会有其他的一些信息。例如,标志、参考计数、使用情况以及接口等。“标志”可以设置多个字符以说明不同的意思。如U表示该路由是可用的,G表示下一跳地址是一个路由器,因而是间接交付(如不设置G,则表示直接交付),H表示该路由是到一台主机(如不设置H,则表示该路由是到一个网络)。“参考计数”是给出正在使用该路由的TCP连接数。“使用情况”显示出通过该路由的分组数。“接口”是本地接口的名字,指出分组应当从哪一个接口转发。

根据目的网络地址来确定下一跳路由器,这样做可得出以下的结果:

(1)IP数据报最终一定可以找到目的主机所在目的网络上的路由器(可能要通过多次的间接交付)。

(2)只有到达最后一个路由器时,才试图向目的主机进行直接交付。

虽然互联网所有的分组转发都是 基于目的主机所在的网络 ,但在大多数情况下都允许有这样的特例,即 对特定的目的主机指明一个路由, 这种路由叫做 特定主机路由 。采用特定主机路由可使网络管理人员更方便地控制网络和测试网络,同时也可在需要考虑某种安全问题时采用这种特定主机路由。在对网络的连接或路由表进行排错时,指明到某一台主机的特殊路由就十分有用。

路由器还可采用 默认路由 (default route)以减小路由表所占用的空间和搜索路由表所用的时间。这种转发方式在一个网络只有很少的对外连接时是很有用的。实际上,默认路由在主机发送IP数据报时往往更能显示出它的好处。主机在发送每一个IP数据报时都要查找自己的路由表。如果一台主机连接在一个小网络上,而这个网络只用一个路由器和互联网连接,那么在这种情况下使用默认路由是非常合适的。例如,在图4-17的互联网中,连接在网络N1上的任何一台主机中的路由表只需要三个项目即可:

第一个项目就是到本网络主机的路由,其目的网络就是本网络N1,因而不需要路由器转发,而是直接交付。

 第二个项目是到网络N2的路由,对应的下一跳路由器是R2。

第三个项目就是默认路由。

只要目的网络是其他网络(不是N1或N2),就一律选择默认路由,把数据报先间接交付路由器R1,让R1再转发给互联网中的下一个路由器,一直转发到目的网络上的路由器,最后进行直接交付。在实际上的路由器中,像图4-17路由表中所示的 “直接”和“其他” 的几个字符并没有出现在路由表中,而是被记为 0.0.0.0 。

在IP数据报的首部中没有地方可以用来指明“下一跳路由器的IP地址”。在IP数据报的首部写上的IP地址是源IP地址和目的IP地址,而没有中间经过的路由器的IP地址,既然IP数据报中没有下一跳路由器的IP地址,那么待转发的数据报又怎样能够找到下一跳路由器呢?

当路由器收到一个待转发的数据报,在从路由表得出 下一跳路由器的IP地址 后,不是把这个地址填入IP数据报,而是 送交数据链路层的网络接口软件 。网络接口软件负贵把下一跳路由器的P地址转换成硬件地址(必须使用ARP),并将此硬件地址放在链路层的MAC帧的首部,然后根据这个硬件地址找到下一跳路由器。由此可见,当发送一连串的数据报时,上述的这种查找路由表、用ARP得到硬件地址、把硬件地址写入MAC帧的首部等过程,将不断地重复进行造成了一定的开销。

根据以上所述,可归纳出分组转发算法如下:

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

(2)若N就是与此路由器直接相连的某个网络地址,则进行直接交付,不需要再经过其他的路由器,直接把数据报交付目的主机(这里包括把目的主机地址D转换为具体的硬件地址,把数据报封装为MAC慎,再发送此顿):否则就是间接交付,执行(3)。

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

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

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

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

这里我们要再强调一下,路由表并没有给分组指明到某个网络的完整路径(即先经过哪一个路由器,然后再经过哪一个路由器,等等)。路由表指出,到某个网铭应当先到某个路由器〔即下一跳路由器),在到达下一跳路由器后,再继续查找其路由表,知道再下一步应当到哪一个路由器。这样一步一步地查找下去,直到最后到达目的网络。

Ⅳ 计算机网路分组

“分组”(packet)也就是“包”,它是一个不太严格的名词,意思是将若干个比特加上首部的控制信息就封装在一起,组成一个在网络上传输的数据单元。在数据链路层这样的数据单元叫做“帧”。而在IP层(即网络层)这样的数据单元就叫做“IP数据报”。在运输层这样的数据单元就叫做“TCP报文段”或“UDP用户数据报”。但在不需要十分严格和不致弄混的情况下,有时也都可笼统地采用“分组”这一名词。这点请读者注意。
OSI为了使数据单元的名词准确,就创造了“协议数据单元”PDU这一名词。在数据链路层的PDU叫做DLPDU,即“数据链路协议数据单元”。在网络层的PDU叫做“网络协议数据单元”NPDU。在运输层的PDU叫做“运输协议数据单元”TPDU。虽然这样做十分严格,但过于繁琐,现在已没有什么人愿意使用这样的名词。

Ⅵ 分组交换技术在计算机网络技术中的作用及特点是什么

采用存储转发的分组交换技术,实质上是在计算机网络的通信过程中动态分配传输线路或信道带宽的一种策略。x0dx0a它的工作机理是:首先将待发的数据报文划分成若干个大小有限的短数据块,在每个数据块前面加上一些控制信息(即首部),包括诸如数据收发的目的地址、源地址,数据块的序号等,形成一个个分组,然后各分组在交换网内采用“存储转发”机制将数据从源端发送到目的端。由于节点交换机暂时存储的是一个个短的分组,而不是整个的长报文,且每一分组都暂存在交换机的内存中并可进行相应的处理,这就使得分组的转发速度非常快。x0dx0a分组交换网是由若干节点交换机和连接这些交换机的链路组成,每一结点就是一个小型计算机。 基于分组交换的数据通信是实现计算机与计算机之间或计算机与人之间的通信,其通信过程需要定义严格的协议;x0dx0a分组交换网的主要优点:x0dx0a1、高效。在分组传输的过程中动态分配传输带宽。2、灵活。每个结点均有智能,可根据情况决定路由和对数据做必要的处理。3、迅速。以分组作为传送单位,在每个结点存储转发,网络使用高速链路。4、可靠。完善的网络协议;分布式多路由的通信子网。x0dx0a电路交换相比,分组交换的不足之处是:① 每一分组在经过每一交换节点时都会产生一定的传输延时,考虑到节点处理分组的能力和分组排队等候处理的时间,以及每一分组经过的路由可能不等同,使得每一分组的传输延时长短不一。因此,它不适用于一些实时、连续的应用场合,如电话话音、视频图像等数据的传输;② 由于每一分组都额外附加一个头信息,从而降低了携带用户数据的通信容量; ③ 分组交换网中的每一节点需要更多地参与对信息转换的处理,如在发送端需要将长报文划分为若干段分组,在接收端必须按序将每个分组组装起来,恢复出原报文数据等,从而降低了数据传输的效率。 习题1-03 试从多个方面比较电路交换、报文交换和分组交换的主要优缺点。x0dx0a答:电路交换,它的主要特点是:① 在通话的全部时间内用户独占分配的传输线路或信道带宽,即采用的是静态分配策略;② 通信双方建立的通路中任何一点出现了故障,就会中断通话,必须重新拨号建立连接,方可继续,这对十分紧急而重要的通信是不利的。显然,这种交换技术适应模拟信号的数据传输。然而在计算机网络中还可以传输数字信号。数字信号通信与模拟信号通信的本质区别在于数字信号的离散性和可存储性。这些特性使得它在数据传输过程中不仅可以间断分时发送,而且可以进行再加工、再处理。x0dx0a③ 计算机数据的产生往往是“突发式”的,比如当用户用键盘输入数据和编辑文件时,或计算机正在进行处理而未得出结果时,通信线路资源实际上是空闲的,从而造成通信线路资源的极大浪费。据统计,在计算机间的数据通信中,用来传送数据的时间往往不到10%甚至1%。另外,由于各异的计算机和终端的传输数据的速率各不相同,采用电路交换就很难相互通信。x0dx0ax0dx0a分组交换具有高效、灵活、可靠等优点。但传输时延较电路交换要大,不适用于实时数据业务的传输。

Ⅶ 计算机网络之数据交换(电路交换,报文交换,分组交换)

如何实现数据通过网络核心从源主机到达目的主机?

就要经过网络核心进行数据交换,数据不断从一个网络交换到另一个网络,直到到达目的主机。所以网络核心解决的基本问题就是数据交换。

数据交换主要有三种:

最典型电路交换网络:电话网络

电路交换的三个阶段:

电路交换网络如何共享中继线?
通过多路复用技术,电路交换可以共用中继线

报文:源(应用)发送信息整体。比如要发送一个文件,那么这个文件的信息就是要发送的报文。

分组:报文分拆出来的一系列相对较小的数据包
分组交换需要报文的拆分与重组
分组交换相对于报文交换会产生额外开销,因为i要进行数据的拆分和重组

分组交换:统计多路复用
统计多路复用就是,按顺序接受来自多个主机的分组,并且按接受的顺序的发送,并不进行区分,对路由器来说,所有的分组都是等价的,所以分组交换是公用发送信道的。

不同的分组序列顺序是不确定的,按需求共享,谁发送的分组多且快,那么自然占用的就高。

报文交换与分组交换均采用存储-转发交换方式
区别是:

首先从发送速率上来说,报文交换就比较简单,易于分析

对上面的例子来说:
报文交换每次都是交换完整的报文
报文长度为M bits,链路带宽为R bps,每次传输报文需要M/R秒
所以报文要从源主机到目的主机,就需要三次传输延迟

另一方面,路由器至少需要一个报文长度M那么大的缓存

我们再来分析分组交换的过程
分组交换:报文被拆分为多个分组,分组长度为L bits,每个分组传输时延为L/R秒
例:M=7.5 Mbits,L=1500bits,M=5000L,R = 1.5 Mbps。

下面我们来分析分组转发的具体过程:

第一个分组到达第一个路由器所需要的时间,是一个L/R

有趣的在于,在第二个分组到达第一个路由器的时候,第一个分组已经从第一个路由器发到了第二个路由器,这样效率显然提高了,分组交换不同报文交换,可以充分利用链路同时传播的能力

所以分组交换发送完一个报文段,只需要

时间远比报文交换要小
我们再考虑进行分组交换时,路由器的理论最小需要的缓存就是一个分组的大小,因此所需要的缓存也小,发送速率也快,所以计算机网络采用的是分组交换的数据交换方式。

分组交换的报文交付时间的计算公式:

分组交换允许更多用户同时使用网络!——网络资源充分共享

分组交换绝对优于电路交换?
也并不是绝对的,分组交换同时也会产生很多问题,由于是共享的,而且分组数量一多,就会发生拥塞和分组丢失,造成巨大的分组延迟

分组交换适用于突发数据传输网络

电路交换适用于提供电路级性能保障?

Ⅷ 计算机网络-4-4-转发分组,构建子网和划分超网

上图是一个路由器怎么进行分组转发的例子:有四个A类网络通过三个路由器连接在一起,每一个网络上都可能会有成千上万台主机。若路由表指出每一台主机该进行怎样的转发。则要维护的路由表是非常的庞大。 如果路由表指定到某一个网络如何转发,则路由表中只有4行,每一行对应一个网络。 以路由器2的路由表为例:由于R2同时连接在网络2和网络3上,因此只要目标主机在网络2或者网络3上,都可以通过接口0或者1或者路由器R2直接交付(当然还有使用ARP协议找到这些主机相应的MAC地址)。若目标主机在网络1中,则下一跳路由器为R1,其IP地址为20.0.0.7。路由器R2和R1由于同时连接在网络2上,因此从路由器2把转发分组给R1是很容易的。 我们应当注意到:每一个路由器至少都要拥有两个不同的IP地址。 总之,在路由表中,对每一条路由最主要的是以下两条信息: (目的网络,下一跳地址) 我们根据目的网络地址来确定下一跳路由器,这样可以得到以下结论:

虽然互联网上所有的分组转发都是 基于目的主机所在的网络 ,但是在大多数情况下都允许这样的实例: 对特定的主机指明一个路由 ,这种路由叫 特定主机路由 。采用特定主机路由可以使网络人员方便管理控制网络和测试网络

路由器还可以采用 默认路由 以减少路由表所占用的空间和搜索路由表所使用的时间。

当路由器接收到一个待转发的数据报,在从路由表中得出下一跳路由器的IP地址后,不是把这个地址写入IP数据报,而是送交 数据链路层的网络接口软件 ,网络接口软件把负责下一跳的路由器IP地址转化为硬件地址(必须使用ARP),将硬件地址写入MAC帧的首部,然后根据这个硬件地址找到下一跳路由器。由此可见,当发送一连串的数据报时,上述的这种查找路由表,用ARP得到硬件地址,把硬件地址写入MAC地址首部等过程,将不断地重复进行,造成了一定的开销。

根据以上几点,我们提出 分组转发算法:

这里我们需要强调一下,路由表并没有给分组指明某个网络的完整路径(即先经过哪一个路由器,然后再经过哪一个路由器,等等)。路由表指出,到达某个网络应该先到达某个路由器(下一条路由器),在到达下一跳路由器之后,再继续查找路由表,知道再下一步应当到达哪一个路由器。这样一步步的查找下去,直到最后到达目的网络。

为什么划分子网?

为解决上述问题,从1985年引出 子网络号字段 ,使得两级IP地址变为三级IP地址,这种做法叫做 划分子网(subnetting)【RFC950】

划分子网的基本思路:

划分子网的用例

如上图为某单位拥有一个B类IP地址,网络地址为145.13.0.0(网络号为145.13),凡是目的网络为145.13.x.x的数据报都会送到这个网络上路由器R1上。

现在把该网络划分为三个字网,这里假设子网络号占用8位,因此主机号就只剩下16-8=8位了,所划分的三个字网为145.13.3.0,145.13.7.0,145.3.21.0。路由器在接受到145.13.0.0上的路由器数据后,再根据数据报的目的地址把它转化到相应的子网。

总之,当没有划分子网的时候,IP地址是两节结构。划分子网后IP地址就变成了三级结构。划分子网只是把IP地址的主机号这部分进行再划分,而不改变IP地址原来的网络号。

假定有一个IP数据报(其目的地址为145.13.3.10)已经到达了路由器R1,那么这个路由器如何把它转发到子网145.13.3.0呢?
我们知道,从IP数据包报的首部无法看出源主机的目的主机所连接的网络是否进行了子网划分。这是因为32位IP地址本身以及数据报的首部没有包含任何关于子网划分的信息。因此必须另想办法,这就是使用 子网掩码

把三级IP地址的子网掩码和收到的目的地址的IP地址 逐位进行与(AND)运算,就可以立即得到网络地址,剩下的步骤就交给路由器处理分组。

使用子网掩码的好处是:不管网络有没有划分子网,只要把子网掩码和IP地址进行逐位 与(AND) 运算,就立即得出网络地址来,这样在路由器处理到来的分组时就可采取同样的做法。

在不划分子网时,为什么还要使用子网掩码?这就是为了更便于查找路由表。现在互联网规定:所有网络都必须使用子网掩码,同时在路由器的路由表中也必须有子网掩码这一栏。如果一个网路不划分子网,那么该网络的子网掩码就是用 默认的子网掩码 ,默认子网掩码中1的位置和IP地址中的网络号字段net-id正好相对应。因此,若用默认子网掩码和某个不划分子网的IP地址逐位相"与",就应该能够得出该IP地址的网络地址来,这样做可以不用查找该地址的类别位就能够知道这是哪一类的IP地址。显然:

图4-21是这三类IP地址的网络地址和相应的默认子网掩码:

子网掩码是一个网络或者一个子网的重要属性 。在RFC950成为互联网标准后,路由器在和相邻路由器交换路由信息时,必须把自己所在的网络(或子网)的子网掩码告诉相邻路由器,在路由器的路由表中的每一个项目,除了要给出目的网络地址外,还必须同时给出该网络的子网掩码。若一个路由器连接在两个子网上就拥有两个网络地址和两个子网掩码。

例4-2:
已知IP地址是141.14.72.24,子网掩码是255.255.192.0,求网络地址:
解: 255.255.192.0的二进制:11111111 11111111 11000000 00000000

IP 141.14.72.24二进制: 11111111 11111111 01001000
00000000

将IP地址二进制与子网掩码二进制进行 与(AND)运算 为 ::11111111 11111111 11000000 00000000
即网络IP为:141.14.64.0

在划分子网的情况下,分组转发的算法必须作出改动。在使用子网划分后,路由表应该包含以下内容:

在划分子网的情况下,路由器转发分组的算法如下:

例4-4:
图4-24有三个字网,两个路由器,以及路由器R1的部分路由表。现在源主机H1向目的主机H2发送分组。试讨论R1收到H1向H2发送的分组后查路由表的过程。

解:

源主机H1向目标主机H2发送的分组的目的地址为128.30.33.138。

源主机H1把本子网的子网掩码255.255.255.128与H2的IP地址128.30.33.128相与得到128.30.33.128,它不等于H1的网络地址(128.30.33.0)。这说明主机H2与主机H1不在同一个网段上,因此H1不能把数据包直接交付给H2。必须交给子网上的默认路由R1,由R1转发。

路由表在接受到这个分组之后,就在其路由表中逐行匹配寻找。
首先看R1路由表的第一行:用这一行的子网掩码255.255.255.128与H2IP地址进行互与,得到128.30.33.128,然后和这一行用样的方法进行第二行,结果发现相与出来的结果和目的网络地址匹配,则说明这个网络(子网2)就是收到的分组所要寻找的目的网络。于是就不用继续找了。R1把分组从接口1直接交付给主机H2(他们都在一个子网上)。

在一个划分子网的网络中可使用几个不同的子网掩码。使用变长 子网掩码VLSM(Variable Length Subnet Mask) 可进一步提高IP地址资源的利用率。在VLSM的基础上又进一步研究出 无分类编制 方法。它的正式名字是无分类域间路由选择CIDR(Classless Inter-Domain Routing)。

CIDR 最主要的特点有两个:

CIDR还使用斜线记法,就是在IP地址后面加上斜线/,然后写上 网络前缀所占的位数 。例如IP地址为128.14.35.7/20是某CIDR地址快中的一个地址,其中前20位就是网络前缀,后面的14位是主机位。如图所示:

当然以上地址的主机号全为0和全为1的地址,一般并不使用,这个地址块共有2^12个地址,我们可以使用地址块中最小的地址和网络前缀来指明这个地址快。例如,上述的地址块可记为128.14.32.0/20。

为了更方便的进行路由选择,CIDR使用了32位的地址掩码(address mask)。地址掩码是由一串1和一串0组成, 而1的个数就是网络前缀的个数。 虽然CIDR不使用子网了,但是出于某些原因,CIDR使用的地址掩码也可以继续称为 子网掩码,斜线记法中,斜线后面的数字就是1的个数 。例如,/20地址快的地址掩码是 11111111 11111111 11110000 00000000 (20个连续的1)。 斜线记法中,斜线后面的数字就是地址掩码中1的个数。

斜线记法还有一个好处就是它除了可以表示一个IP地址外,还提供了一些其他重要的信息。我们举例说明如下:
例如,地址为192.199.170.82/27不仅表示IP地址是192.199.170.82,而且还表示这个地址快的网络前缀有27位(剩下的5位是主机号),因此这个地址快包含32个IP地址( =32)。通过见到那的计算还可以得出,这个地址块的最小地址是192.199.170.64,最大地址是192.199.170.95。具体的计算方法是这样的:找到地址掩码中1和0的交界处发生在地址中的哪一个字节,现在是第四个字节,因此只要把这一个字节的十进制82用二进制表示即可:82的二进制是01010010,取其前3位(这3位加上前3字节的24位就够成了27位),再把后面的5位都写成0,即01000000,等于十进制64,这样就找到了地址快的最小地址192.199.170.64,再把最后面5位都置为1,即01011111,等于十进制的95,这就找到了地址块中的最大地址192.199.170.95。

由于一个CICR地址块有很多地址,所以在路由表中就利用CIDR地址块来查找目的网络。这种地址的聚合常称之为 路由聚合(route aggregation) ,它使得路由表中的一个项目可以表示原来传统分类地址的很多个路由,路由聚合也称之为 构成超网(supernetting) ,路由聚合有利于减少路由器之间的路由选择信息的交换,从而提高了整个互联网的性能。

每一个CIDR地址块中的地址数一定是2的整数次幂,这就是 构建超网 的来源。

网络前缀越短 ,其地址块所包含的地址数就越多,而在三级结构的IP地址中,划分子网是使网络前缀变长。

在使用了CIDR时,由于采用网络前缀这种记法,IP地址由网络前缀和主机号这两部分组成,因此在路由表中的项目也要有相应的变化,这时,每个项目由 网络前缀 下一跳地址组成 但是在查找路由表时可能会得到不止一个匹配结果 ,这样就带来一个问题:我们应该从这些匹配结果中选择哪一条路由呢?

正确的答案是: 应但从匹配结果中选择具有最长网络前缀的路由 ,这就做 最长前缀匹配(long-prefix matching) ,这是因为网络前缀越长,说明其地址块越小因而路由就越具体,最长前缀匹配又称之为 最长匹配 或者 最佳匹配

使用CIDR后,由于要寻找最长前缀匹配,使路由表的查找过程变的十分复杂,当路由表的项目数很大的时候,怎样设法减少路由表的平均查找时间就成为了一个非常重要的问题,现在常用的是 二叉线索(binary trie) ,它是一种特殊结构的树,IP地址中从左到右的比特值决定了从根节点逐层向下层延伸的路径,二二叉线索中的各个路径就代表路由表中存放的各个地址。

图4-26用一个例子说明二叉树线索的结构,图中给出了5个IP地址。为了简化二叉线索的结构,可以先找出对应一与每一个IP地址的唯一前缀(unique prefix),所谓唯一前缀就是在表中所有的IP地址中,该前缀时唯一的,这样就可以用这些唯一前缀来构造二叉线索。在进行查找时,只要能够和唯一前缀匹配相匹配就可以了。

从二叉树的根节点自顶向下的深度最多有32层,每一层对应于IP地址中的一位。

Ⅸ 计算机网络分组

分组是将用户传送的数据划分成一定的长度,每个部分叫做一个分组。在每个分组的前面加上一个分组头,用以指明该分组发往何地址,然后由交换机根据每个分组的地址标志,将他们转发至目的地,这一过程称为分组交换

阅读全文

与计算机网络转发分组相关的资料

热点内容
网络卖产品需要多少钱 浏览:505
怎么让家里的网络快速如新 浏览:512
单位网络安全要求会议 浏览:677
全国网络安全军民融合 浏览:523
笔记本网络本地连接好还是无线 浏览:823
网络贷款多少钱利息 浏览:501
沈阳哪里能网络抢票 浏览:975
智慧屏看电视需要连接网络吗 浏览:857
怎么看电脑可不可以连xbox网络 浏览:278
华为家庭网络信号全覆盖 浏览:312
施乐无线网络连接设置 浏览:45
我的移动网络密码 浏览:797
如何提高网络文化出海 浏览:111
新网络词在哪里有 浏览:427
计算机网络重点简答题 浏览:173
开数据但网络连接超时 浏览:325
移动接网络的路由器怎么更换 浏览:1001
上海美猴网络怎么样 浏览:506
3g网络哪个运营商快 浏览:921
在校园如何使用有线网络 浏览:297

友情链接