计算机网络之路由器与分组交换

路由器是实现分组交换(packet switching)的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能。

分组交换是用存储转发技术实现的。通常我们把要发送的整块数据称为一个报文(message),发送报文之前,先把较长的报文划分为一个个更小的等长数据段,在每一个数据段前面加上一些必要的控制信息组成的首部(header)后,就构成了一个分组(packet),分组又称为,而分组的首部也成为包头。包是在因特网中传送的数据单元

因特网的核心部分是由许多网络和把它们互连起来的路由器组成,而主机处在因特网的边缘部分。主机和路由器都是计算机,但它们的作用很不一样。主机是为用户进行信息处理的,并且可以和其它主机通过网络交换信息。路由器则是用来转发分组的,即进行分组交换的

路由器收到一个分组,先暂时存储下来,再检查其首部,查找转发表,按照首部中的目的地址,找到合适的接口转发出去,把分组交给下一个路由器。这样一步一步地以存储转发的方式,把分组交付到最终的目的主机。

上图中,假如主机H1向主机H5发送数据,主机H1先将分组逐个地发往与它直接相连的路由器A,路由器A把主机H1发送的分组放入缓存,假定从路由器A的转发表中查出应把分组转发到链路A-C,于是分组就传送到路由器C,路由器继续按照上述方式查找转发表,假定查出应转发到路由器E,当分组到达路由器E后,路由器E就把分组直接交给主机H5

假定在某一个分组的传送过程中,链路A-C的通信量太大,那么路由器A可以把分组沿另一个路由转发到路由器B,再转发到路由器E,最后把分组送到主机H5

需要注意的是,路由器暂时存储的是一个个短分组,而不是整个的长报文,短分组是暂存在路由器的内存中而不是硬盘中,这就保证了较高的交换速率。

因特网采用了专门的措施,保证了数据的传送具有非常高的可靠性,当网络中的某些站点或链路突然发生故障时,在各路由器中运行的路由选择协议能够自动找到其他路径转发分组。

从上述可知,采用存储转发的分组交换,实质上是采用了在数据通信的过程中断续分配传输带宽的策略,这对于传送突发式的计算机数据非常合适,使得通信线路的利用率大大提高了。

上图中有四个A类网络通过三个路由器连接在一起。每一个网络上都可能有成千上万个主机。可以想象,若按目的主机号来制作路由表,则所得出的路由表就会过于庞大(如果每个网络有一万台主机,路由表就有4万个记录)。但若按照主机所在的网络地址来制作路由表,那么每一个路由器中的路由表只包含4条记录就够了,每一条记录对应一个网络。

以路由器R2为例,由于R2同时连接在网络2和网络3上,因此只要目的站在这两个网络上,都可通过接口0或1有路由器R2直接交付。若目的主机在网络1中,则下一跳路由器应为R1,若目的主机在网络4中,则下一跳路由器应为R3

再次重申,路由器是按照IP地址的网络号来转发分组的,就是说按照目的主机所在的网络转发分组但是大多情况下都允许有这样的特例:对特定的目的主机指明一个路由,这种路由叫做特定主机路由

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

分组转发算法如下:

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

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

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

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

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

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

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-10 05:53:30

计算机网络之路由器与分组交换的相关文章

计算机网络-02电路交换、分组交换、报文交换

1.前期补充 路由器:在因特网可信部分其特殊作用的是路由器,它是一种专用计算机(但不叫做主机),路由器是实现分组交换的关键构建,其任务是转发收到的分组,这是因特网核心部分最重要的功能. 交换:从通信资源的分配角度来看,交换是按照某种方式动态的分配传输线路的资源. 2.电路交换 电路交换的三个步骤: 建立连接(分配通信资源) 通话(一直占用通信资源) 释放连接(归还通信资源) 由于电路交换最重要的一个特点是在通话的全部时间内,通话的两个用户始终占用端到端的通信资源,当使用电路交换来传送计算机数据时

计算机网络之路由器

路由器简介 Network(网络层): 网络层负责对子网间的数据包进行路由选择. 此外,网络层还可以实现拥塞控制.网际互连等功能. 对应的连接设备:路由器. 路由器(router)是互联网的枢纽,是连接英特网中各局域网.广域网的设备: 它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送数据. 作用在OSI模型的第三层(网络层),提供了 路由 与 转发 两种重要机制 路由: 收集网络拓扑信息并动态形成路由表 路由器控制层面的工作,决定数据包从来源端到目的端所经过的路由路径 (host

面试复习重点——数据结构、操作系统、计算机网络、数据库。

必看书籍:剑指offer.程序员面试宝典 来自:腾讯.搜狐.网易.烽火.百度.大众点评.美团.风行 1. 死锁是什么?什么情况下产生?怎么解决? 2. 设计模式(尤其是单例模式,要会写该模式的程序框架,要注意同步问题,怎么实现在要用时才创建) 3. 线程的同步?为什么要同步?线程间通信方式. 4. 进程与线程的区别,进程间通信方式. 5. 容器类:hashmap与hashtable的区别,arraylist与linkedlist的区别 6. 为什么要用多线程,实现多线程的两种方式,有什么区别?

【转】牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结

基础篇:操作系统.计算机网络.设计模式 一:操作系统 1. 进程的有哪几种状态,状态转换图,及导致转换的事件. 2. 进程与线程的区别. 3. 进程通信的几种方式. 4. 线程同步几种方式.(一定要会写生产者.消费者问题,完全消化理解) 5. 线程的实现方式. (也就是用户线程与内核线程的区别) 6. 用户态和核心态的区别. 7. 用户栈和内核栈的区别. 8. 内存池.进程池.线程池.(c++程序员必须掌握) 9. 死锁的概念,导致死锁的原因. 10. 导致死锁的四个必要条件. 11. 处理死锁

计算机网络11_概述

1.什么是Internet 解释Internet从服务角度,组成细节角度 组成细节角度: ISP (Internet Service Provider): 计算设备+通信链路+交换网络(分组交换) 计算设备:主机=端系统 通信链路:光纤,铜缆,无限电,卫星 交换网络:路由器,交换机 服务角度: 为网络应用提供通信服务的通信基础设施 为网络应用提供应用编程接口(API) 光有硬件,链路,路由器是不能正常运行网络,将数据传输和交换的.还需要网络协议. 计算机网络的数据交换必须遵守事先约定好的规则.

因特网的发展历程

0.基本概念 网络:若干节点(node)和连接这些结点的链路(link)组成. 电信网络:电信系统的公共设施. 两个或多个规定的点间提供连接以便建立电信业务和信息的结点与链路的集合. 有线电视网络:高效廉价的综合网络  频带宽 容量大 多功能 低成本 抗干扰能力强 支持多种业务 连接千家万户 为信息高速公路的发展奠定基础. 计算机网络:地理位置不同的具有独立功能的多台计算机及外部设备通过通信线路连接 在网络操作系统 网络管理软件及网络通信协议的管理协调下实现资源共享和信息传递的计算机系统.  作

知识点提纲

操作系统:1. 进程的有哪几种状态,状态转换图,及导致转换的事件.2. 进程与线程的区别.3. 进程通信的几种方式.4. 线程同步几种方式.(一定要会写生产者.消费者问题,完全消化理解)5. 线程的实现方式. (也就是用户线程与内核线程的区别)6. 用户态和核心态的区别.7. 用户栈和内核栈的区别.8. 内存池.进程池.线程池.(c++程序员必须掌握)9. 死锁的概念,导致死锁的原因.10. 导致死锁的四个必要条件.11. 处理死锁的四个方式.12. 预防死锁的方法.避免死锁的方法.13. 进程

学习资料整理

1.Sql导入数据方式:(1)软件选择导入,分隔符类型,直接导入 (2)写入代码导入 2.Hadoop下载安装:官网下载安装 3.HDFS HDFS的可靠性:创建了多份数据备份,放置在了其他计算机节点中,读取速度也很快. 结构:NameNode(元数据 内存)和DataNodes(文件内容 磁盘) 运行机制:(1)一个名字节点和多个数据节点 (2)故障检测 计算机网络 1 电路交换与分组交换的区别是什么?优劣对比? 答:先介绍基本概念: 电路交换 概念:必须经过建立连接(占用通信资源)--->通

读书笔记二 How Does the Internet work?

原文链接:  https://web.stanford.edu/class/msande91si/www-spr04/readings/week1/InternetWhitepaper.htm 先写写我的心得吧:重新帮我复习了下TCP/IP四层协议,这次我很好理解了下应用层,TCP层— 端口号相关, IP层 — ip地址相关,硬件层—  二进制转为电子信号的.同时,TCP负责了分片的功能.当然 文章前面还介绍了路由,DNS服务.网络整体的架构层级.不过我觉得第四章和第五章有点重复,估计我还没理解