寻址与路由技术 IP地址 ARP协议 IP地址的扩展 Internet的组播 Internet群组管理协议 自举与动态配置 端口与套接字 域名系统DNS 路由选择 路由表 路由器
地址的理解 Internet上的任意两个用户要通信,要求必须明确的地址有: 哪两个网络通信 哪两个网络子网通信 哪两台主机通信 不同主机的哪个进程通信
IP地址的理解 网际协议 IP 地址解析协议 ARP 因特网控制报文协议 ICMP 因特网组管理协议 IGMP
IP地址的扩展 透明路由器 委托ARP 标准IP子网 超网编址
透明路由器编址扩展示意
委托ARP原理示意
子网编址
超网编址 构成超网原因 IP协议中规定的IP地址有A、B、C三类不是平均分配的,A类地址总共才126个,B类16382个,C类却多于200万个; 对C类地址的需求发展缓慢,只分配出去一小部分; B类地址现已分配完了。 超网编址的方法采用了与子网编址相反的方式。某组织内不用一个地址来代表多个物理网络,而是用多个IP网络地址代表一个组织。
CIDR 地址块划分举例 ISP 大学 X 因特网 一系 二系 三系 四系 206.0.68.0/22 206.0.64.0/18 206.0.71.128/26 206.0.71.192/26 206.0.68.0/25 206.0.68.128/25 206.0.69.0/25 206.0.69.128/25 206.0.70.0/26 206.0.70.64/26 206.0.70.128/26 206.0.70.192/26 206.0.70.0/24 206.0.71.0/25 206.0.71.0/26 206.0.71.64/26 206.0.71.128/25 206.0.68.0/23 单位 地址块 二进制表示 地址数 ISP 206.0.64.0/18 11001110.00000000.01* 16384 大学 206.0.68.0/22 11001110.00000000.010001* 1024 一系 206.0.68.0/23 11001110.00000000.0100010* 512 二系 206.0.70.0/24 11001110.00000000.01000110.* 256 三系 206.0.71.0/25 11001110.00000000.01000111.0* 128 四系 206.0.71.128/25 11001110.00000000.01000111.1* 128
套接字(Socket) TCP 使用“连接”(而不仅仅是“端口”)作为最基本的抽象,同时将 TCP 连接的端点称为插口(socket),或套接字、套接口。 插口和端口、IP 地址的关系是: IP 地址 131.6.23.13 端口号 1500 131.6.23.13, 1500 插口(socket)
路由技术
路由选择 所谓路由选择是指网络根据通信情况,例如,可用的数据链路,各条链路中的信息流量等情况,按照一定的策略(例如,传输时间最短或传输路径最短等),选择一条可用的传输路径,把信息发往目标主机。
路由选择算法的设计原则 信息在网络中传输的平均时延最小,所经历的结点数最少,所经历的数据链路公里最少,亦即路程最短。 网络的适应性强。 路径选择的算法不应过份地增加网络和各个结点中的开销。 当网络负荷较重时,特别是当网络负荷不均匀时,应能分散传输信息量。 路径控制的算法应比较简单,且易于软件实现。
路由选择算法和路由选择协议 路由选择算法 路由选择协议 建立路由表所采用的一些数学方法就是我们所说的路由选择算法 为路由器提供建立最佳路径所需要的相互共享的路由信息。 路由信息只能由路由器或收方读取并解释,。中继器与网桥就不能识别网络层信息,它们没有路由选择功能,只能传送和转发分组
交换机和路由器的差别 交换机工作在数据链路层,主要完成数据的转接,而路由器工作在网络层,它的主要功能是路由选择。 路由器连接不同网络的,而交换机是在一个特定的网络中连接许多主机的。 路由器使用IP协议,而交换机使用广域网的特定协议。 路由器的路由表可与其他路由器交换,而交换机之间不交换路由表信息。 在查找路由表时,路由器根据目的站所在的网络号找出下一站(即下一个路由器),而交换机则根据目的站所接入的交换机号找下一站(即下一个结点交换机)。
路由选择算法 静态路由选择算法 动态路由选择算法 分级路由选择 移动主机的路由选择 广播路由选择 多点播送路由选择 最短路由选择(属经典算法) 扩散法(属鲁棒性强的算法) 基于流量的路由选择(兼顾了拓扑结构与负荷) 动态路由选择算法 距离矢量路由选择 链路状态路由选择 分级路由选择 移动主机的路由选择 广播路由选择 多点播送路由选择
最短路由选择——Dijkstra算法
结点E的路由表 目的结点 后继结点 A B C D F G H
扩散法 收到的每一个分组,从除了分组到来的线路外的所有输出线路上发出。 应用领域 在军事应用中,大批的路由器随时都可能被炸毁得所剩无几,所以非常希望采用具有很结实的扩散方式; 在分布式数据库应用中,有时需要并行地更新所有数据库; 作为一种尺度来衡量其他路由选择算法。 扩散总是选择最短路径,因为它并行地选择每一条可能的路径。所以,没有其他算法能产生一个更短的延迟。
基于流量的路由选择 基本想法 对某一给定的线路,如果已知载荷量与平均流量,那么就可能由队列原理计算出该线路上的平均分组延迟。 由所有的线路平均延迟,可直接计算出流量加权的平均值,从而得到整个网络的平均分组延迟。 路由选择问题就归结为如何找出产生网络最小延迟的路由选择算法。
基于流量的路由选择 (a)用kb/秒表示线路载荷的子网; (b)用分组/秒表示通信量和路由选择矩阵
采用了平均分组长度为800比特的网络的分析 i 线路 λi(分组/s) Ci(kb/s) μCi(分组/s) Ti(ms) 权值 1 AB 14 20 25 91 0.171 2 BC 12 77 0.146 3 CD 6 10 12.5 154 0.073 4 AE 11 71 0.134 5 EF 13 50 62.5 0.159 FD 8 222 0.098 7 BF 67 0.122 EC 59
距离矢量路由选择
RIP路由协议 采用距离向量算法,即路由器根据距离选择路由。 RIP每隔30s一次的路由信息广播也是造成网络的广播风暴的重要原因之一。
链路状态路由选择 发现它的邻居结点,并知道其网络地址。 测量到它各邻居结点的延迟或开销。 组装一个分组以告之它刚知道的所有信息。 将这个分组发送给所有其他路由器。 计算到每个其他路由器的最短路径。
OSPF路由协议 OSPF是一种基于链路状态的路由协议,需要每个路由器向其同一管理域的所有其它路由器发送链路状态广播信息。 减少了网络开销,增加了网络的稳定性 当源和目的地在同一区时,采用区内路由选择; 当源和目的地在不同区时,则采用区间路由选择。 当一个区内的路由器出了故障时并不影响自治域内其它区路由器的正常工作,这也给网络的管理、维护带来方便。
BGP和BGP-4路由协议 BGP是为TCP/IP互联网设计的外部网关协议,用于多个自治域之间。 为了满足Internet日益扩大的需要,BGP还在不断地发展。在最新的BGP-4中,还可以将相似路由合并为一条路由。
移动主机的路由选择 一个连着多个LAN,多个MAN和无线蜂窝单元的WAN。
移动用户的分组路由选择
广播路由选择 源端简单地发送一个独特的分组到每一个目的端 扩散法 多目的地路由选择 路由器生成树 逆向路径转发 浪费带宽,需要源端有全部目的端的完整清单。 扩散法 生成了太多的分组和消耗太大的带宽。 多目的地路由选择 每个分组含有一张目的地清单,当分组到达路由器时,路由器检查所有的目的地,以确定将需要用的输出线路集合。 路由器生成树 路由器根据生成树的线路,进行广播分组复制。 带宽得到最佳的利用,每个路由器必须知道它的可用生成树 逆向路径转发 路由器检查广播到达的分组,查看该分组是否来自于通常用于发送分组到广播源的线路, 如果是,路由器将此分组复制转发到除进入线路外的所有线路。 如果不是,那么分组就被当作副本而扔掉。
广播路由选择 逆向路径转发(reverse path forwarding) 一个子网; 一个生成树 由逆向路径转发构造的树
多点播送路由选择 一个子网 最左边路由器的生成树 小组1的多点播送网 小组2的多点播送树
路由表 特定主机路由,是前缀长度为32比特的路由表表项。 网络前缀路由,是前缀长度为1~31比特的路由表项。 缺省路由,是前缀长度为0的路由表项。 首先是特定主机路由,其次是网络前缀路由,最后为缺省路由。 目的地址 前缀长度 下一跳地址 接口 7.7.7.99 7.7.7.0 0.0.0.0 32 24 路由器R1 路由器R2 路由器R3 a
路由表的生成 静态配置路由表项 ICMP重定向 动态路由协议 通过路由协议自动交换路由信息。
路由器 在网络间截获发送到远地网段的报文,起转发的作用。 选择最合理的路由,引导通信。 把大的数据包分解成适当大小的数据包,到达目的地后再把分解的数据包包装成原有形式。 多协议的路由器可以连接使用不同通信协议的网络段,作为不同通信协议网络段通信连接的平台。 路由器的主要任务是把通信引导到目的地网络,然后到达特定的结点站地址。
路由器的分组处理 分组或许寻址到路由本身,则路由器测定出分组中剩下的全部信息。 若分组中目的地址是同一网中,路由器仅将分组向前传送。 若有筛选被采用,路由器对照表检查分组的地址,若有必要,可将分组排出,这为安全起见,使得分组位于网络内或排出网外。 若分组中包含有源路由选择信息,它标出了到目的站的下一个路由器,那么分组就将传给那个路由器。 一个路由器维持一个分组通过互联网的路径表。 若路由器不知道一条路径或在它的路由选择表中找不到一个分组的目的地址,它就将分组废弃并可能返回一个错误信息到源站。 有的分组(TCP/IP)包含它在网上已通过的跳跃数(路由中继数)。若一个分组超过一定的跳跃数,路由器就假定分组在循环,于是将其废弃。然后路由器可以返回错误信息给源站。