1、第三章 INTERNET网络层2第 4 章 网络层本章内容:网络层概述网际协议IP划分子网和地址聚合 网际控制报文协议ICMP协议 因特网的路由选择协议 3本章重要的内容v虚拟互连网络的概念v IP 地址及其与物理地址的关系v传统的分类的 IP 地址(包括子网掩码)v路由选择协议的工作原理43.1 网络层概述 v网络层功能v为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把传输层产生的报文段或用户数据报封装成分组或包进行传送。5分组交换网的示意图H1A 互联网BDECH5H6H4H2H3H1 向 H5 发送分组H2 向 H6 发送分组注意分组路径的变化!主机6注意分组的存储转发过程H
2、1A 互联网BDECH5H6H4H2H3H1 向 H5 发送分组主机在结点交换机 A 暂存查找转发表找到转发的端口在结点交换机 C 暂存查找转发表找到转发的端口在结点交换机 E 暂存查找转发表找到转发的端口最后到达目的主机 H573.1 网络层概述 v网络层提供的两种服务v在计算机网络领域,网络层应该向运输层提供怎样的服务(“面向连接”还是“无连接”)曾引起了长期的争论。v争论焦点的实质就是:在计算机通信中,可靠交付应当由谁来负责?是网络还是端系统?83.1 网络层概述v电信网的成功经验让网络负责可靠交付v面向连接的通信方式 v建立虚电路(Virtual Circuit),以保证双方通信所需的
3、一切网络资源。v如果再使用可靠传输的网络协议,就可使所发送的分组无差错按序到达终点。9应用层运输层网络层数据链路层物理层应用层运输层网络层数据链路层物理层3.1 网络层概述H1 H2虚电路H1 发送给 H2 的所有分组都沿着同一条虚电路传送虚电路服务103.1 网络层概述v虚电路是逻辑连接v虚电路表示这只是一条逻辑上的连接,分组都沿着这条逻辑连接按照存储转发方式传送,而并不是真正建立了一条物理连接。113.1 网络层概述v因特网采用的设计思路v网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。v网络在发送分组时不需要先建立连接。每一个分组(即 IP 数据报)独立发送,与其前后的
4、分组无关(不进行编号)。v网络层不提供服务质量的承诺。即所传送的分组可能出错、丢失、重复和失序(不按序到达终点),当然也不保证分组传送的时限。123.1 网络层概述v尽最大努力交付的好处v由于传输网络不提供端到端的可靠传输服务,这就使网络中的路由器可以做得比较简单,而且价格低廉(与电信网的交换机相比较)。v如果主机(即端系统)中的进程之间的通信需要是可靠的,那么就由网络的主机中的运输层负责(包括差错处理、流量控制等)。v采用这种设计思路的好处是:网络的造价大大降低,运行方式灵活,能够适应多种应用。v因特网能够发展到今日的规模,充分证明了当初采用这种设计思路的正确性。13应用层运输层网络层数据链
5、路层物理层应用层运输层网络层数据链路层物理层3.1 网络层概述H1 H2IP 数据报丢失H1 发送给 H2 的分组可能沿着不同路径传送数据报服务14虚电路服务与数据报服务的对比对对比的方面比的方面虚虚电电路服路服务务数据数据报报服服务务思路思路可靠通信可靠通信应应当由网当由网络络来保来保证证可靠通信可靠通信应应当由用当由用户户主机来保主机来保证证连连接的建立接的建立必必须须有有不需要不需要终终点地址点地址仅仅在在连连接建立接建立阶阶段使用,每段使用,每个分个分组组使用短的虚使用短的虚电电路号路号每个分每个分组组都有都有终终点的完整地址点的完整地址分分组组的的转发转发属于同一条虚属于同一条虚电电
6、路的分路的分组组均均按照同一路由按照同一路由进进行行转发转发每个分每个分组组独立独立选择选择路由路由进进行行转转发发当当结结点出故障点出故障时时所有通所有通过过出故障的出故障的结结点的虚点的虚电电路均不能工作路均不能工作出故障的出故障的结结点可能会点可能会丢丢失分失分组组,一些路由可能会一些路由可能会发发生生变变化化分分组组的的顺顺序序总总是按是按发发送送顺顺序到达序到达终终点点到达到达终终点点时时不一定按不一定按发发送送顺顺序序端到端的差端到端的差错处错处理和流量控制理和流量控制可以由网可以由网络负责络负责,也可以由,也可以由用用户户主机主机负责负责由用由用户户主机主机负责负责153.2 网
7、际协议IP v网际协议 IP 是 TCP/IP 体系中两个最主要的协议之一。与 IP 协议配套使用的还有四个协议:v地址解析协议 ARP (Address Resolution Protocol)v逆地址解析协议 RARP (Reverse Address Resolution Protocol)v网际控制报文协议 ICMP (Internet Control Message Protocol)v网际组管理协议 IGMP (Internet Group Management Protocol)163.2 网际协议IP各种应用层协议 网络接口层(HTTP,FTP,SMTP 等)物理硬件运输层TC
8、P,UDP应用层ICMPIPRARPARP与各种网络接口网络层(网际层)IGMP网际层的 IP 协议及配套协议17v网络互相连接起来要使用一些中间设备,它们又称为中间系统或中继(relay)系统。物理层中继系统:转发器(repeater)。数据链路层中继系统:网桥或桥接器(bridge)。网络层中继系统:路由器(router)。网桥和路由器的混合物:桥路器(brouter)。网络层以上的中继系统:网关(gateway)。3.2 网际协议IP18v当中继系统是转发器或网桥时,一般并不称之为网络互连,因为这仅仅是把一个网络扩大了,而这仍然是一个网络。v网关由于比较复杂,目前使用得较少。v互联网都是
9、指用路由器进行互连的网络。v由于历史的原因,许多有关 TCP/IP 的文献将网络层使用的路由器称为网关。3.2 网际协议IP19互连网络与虚拟互连网络 网络网络网络网络网络(a)互连网络(b)虚拟互连网络路由器 虚拟互连网络(互联网)203.2 网际协议IPv所谓虚拟互连网络也就是逻辑互连网络,它的意思就是互连起来的各种物理网络的异构性本来是客观存在的,但是我们利用 IP 协议就可以使这些性能各异的网络从用户看起来好像是一个统一的网络。v使用 IP 协议的虚拟互连网络可简称为 IP 网。v使用虚拟互连网络的好处是:当互联网上的主机进行通信时,就好像在一个网络上通信一样,而看不见互连的各具体的网
10、络异构细节。5432154321主机H1 主机 H2 R1 R4 R5 R2 R3 R1 R2 R3H1 R5 H2 R4间接交付间接交付间接交付间接交付间接交付直接交付32 21 132 21 132 21 132 21 132 21 1分组在互联网中的传送 21223.2 网际协议IPv如果我们只从网络层考虑问题,那么 IP 数据报就可以想象是在网络层中传送。网络层网络层网络层网络层网络层网络层网络层IP 数据报H1R1R2R3R4R5H223第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址 要使Internet上主机间能正常通信,必须给每个计算机分配至少一
11、个全球都能接收和识别的唯一标识,它就是IP地址。IP的发展,目前是IPv4,由32bit组成地址空间 232=4,294,967,296表示方法:点-十进制11000100 11000001 10000001 11010101 196.193.129.21124第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址IP地址分类 从概念上讲,每个IP地址都是由两部分构成:网络号,主机号。其中,网络号标识某个网络,主机号标识在该网络上的一个特定的主机。根据网络的规模和用途分别分为A、B、C、D、E五类。其空间表示为:A B C D E25第三章第三章 INTERNETIN
12、TERNET的网络层的网络层vIP协议IP地址IP地址分类分类的方法26第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址IP地址分类A、B、C三类IP地址的结构都是由两部分组成:网络号和主机号。A类:第一个字节的最高位是0,共128个子网,每个子网内可以有1600万台主机;B类:第一个字节的前两位是10,共16,384个子网,每个子网内可以有65,536台主机;C类:第一个字节的前三位是110,共200万个子网,每个C类子网内最多只能有256台主机。D类:第一个字节的前四位为1110E类:第一个字节的前五位为1111027第三章第三章 INTERNETINTER
13、NET的网络层的网络层vIP协议IP地址IP地址分类类型 最低地址 最高地址 A 1.0.0.1 126.255.255.254 B 128.0.0.1 191.255.255.254 C 192.0.0.1 223.255.255.254 -D 224.0.0.0 239.255.255.255 E 240.0.0.0 247.255.255.255 28第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址IP地址分类_特殊的地址私有地址,Private address,作为内网或者试验。10.0.0.0 10.255.255.255172.16.0.0 172.
14、31.255.255192.168.0.0 192.168.255.25529第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址IP地址分类_特殊的地址广播地扯:所有主机号部分为“1”的地址是广播(broadcast)地址。广播地址分为两种:直接广播地址和有限广播地址在一特定子网中,主机地址部分为全1的地址称为直接广播地址(direct broadcast)。一台主机使用直接广播地址,可以向任何指定的网络直接广播它的数据报,很多IP协议利用这个功能向一个子网上广播数据。例如,在子网地址为162.105.130.0的网络上,162.105.130.255就是该网络的
15、广播地址。协议规定,每台主机和路由器等都要接收和处理目的地址为本子网广播地址的数据报。不在这个子网(162.105.130.0)内的主机(如IP地址为202.112.7.12的机器),也可以用广播地址162.105.130.255向该子网上所有的主机广播信息。30第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址IP地址分类_特殊的地址广播地扯:32个比特全为1的IP地址(即255.255.255.255)被称为有限广播地址(limited broadcast address)或本地网广播地址(local network broadcast address),该地
16、址被用作在本网络内部广播。使用有限广播地址,主机在不知道自己的网络地址的情况下,也可以向本子网上所有的其它主机发送消息。无论哪种广播地址都不能像其它的IP地址那样分配给某台具体的主机。因为它是指满足一定条件的一组机器。广播地址只能作为IP报文的目的地址,表示该报文的一组接收者。31第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址IP地址分类_特殊的地址组播地址:D类IP地址就是组播地址(multicast),即在224.0.0.0 239.255.255.255范围内的每个IP地址,实际上代表一组特定的主机。它与广播地址相似之处是都只能作为IP报文的目的地址,表
17、示该报文的一组接收者,而不能把它分配给某台具体的主机。组播地址和广播地址区别:广播地址是按主机的物理位置来划分各组的(属于同一个子网),而组播地址指定一个逻辑组,参与该组的机器可能遍布整个Internet网。32第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址IP地址分类_特殊的地址组播地址 组播地址主要用于电视会议、视频点播等应用。我们可以想象一个由多方参与的电视会议,正在发言的一方的声音和图像要被传送到其他参与者的主机上。实际上,一个组播IP地址唯一地标志一个逻辑组。每个要求参与组播接收的主机使用IGMP协议,主动登记到希望加人的组中去。网络中的路由器根据参
18、与的主机的位置,为该组播的通信组形成一棵发送树。服务器在发送数据时,只需发送一份数据报文,该报文的目的地址为相应的组播地址。路由器根据已经形成的发送树依次转发,只是在树的分岔点处复制数据报,向多个网络转发一份拷贝。经过多个路由器的转发后,则该数据报可以到达所有登记到该组的主机处。这样就大大减少了源端主机的负担和网络资源的浪费。33第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址IP地址分类_特殊的地址“零”地址 网络号=主机号为零的IP地址。从来不分配给任何一个单个的主机主机号为零,例如,202.112.7.0 就是一个典型的C类网络地址,表示该网络本身。主机号
19、=网络号为“0”的IP地址,指的是本网络上的某台主机。例如,如果一台主机(IP地址为202.112.7.13)接收到一个IP报文,它的目的地地址中网络号部分为“0”,而主机号部分与它自己的地址匹配(即,IP地址为0.0.0.13),则接收方把该IP地址解释成为本网络的主机地址,并接收该IP数据报。“0.0.0.0”=代表本主机地址。网络上任何主机都可以用它来表示自己。主要用于DHCP和缺省路由。34第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址IP地址分类_特殊的地址回送地址,也称回馈地址 任何一个以数字127开头的IP地址(127.any.any.any)都
20、叫做回送地址(loopback address).它是一个保留地址,最常见的表示形式为127.0.0.1。在每个主机上对应于IP地址127.0.0.1有个接口,称为回送接口(loopback interface)。IP协议规定,当任何程序用回送地址作为目的地址时,计算机上的协议软件不会把该数据报向网络上发送,而是把数据直接返回给本主机。因此,网络号等于127的数据报文不能出现在任何网络上,主机和路由器不能为该地址广播任何寻径信息。回送地址的用途是,可以实现对本机网络协议的测试或实现本地进程间的通信。35第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址掩码 MAS
21、K 掩码是一个与IP地址对应的32位数字。掩码的一些位为1,另一些位为0。通过掩码可以把IP地址中的主机号再分为两部分:子网号和主机号。其工作原理是掩码与IP地址逐位相“与”10110011 11101110 10001000 0001100111111111 11111111 00000000 0000000010110011 11101110 00000000 00000000IPANDMASKNetwork address36第三章第三章 INTERNETINTERNET的网络层的网络层vIP协议IP地址掩码 MASK 掩码开始连续的几位设为1。IP地址与掩码中为1的位相对应的部分为子网
22、号,其他为0的位则表示的是主机号。使用了掩码后,我们通常把原来的网络号和新划分的子网号合在一起称为网络号(与掩码为1的位相对应),把掩码划分后的新的主机号叫做主机号(与掩码为0的位相对应)。A类地址相对应的标准掩码是:255.0.0.0 B类地址相对应的标准掩码是:255.255.0.0 C类地址相对应的标准掩码是:255.255.255.0。37v IP 地址v我们把整个因特网看成为一个单一的、抽象的网络。IP 地址就是给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的 32 位的标识符。vIP 地址现在由因特网名字与号码指派公司ICANN(Internet Corporat
23、ion for Assigned Names and Numbers)进行分配。3.2 网际协议IP38v分类 IP 地址v每一类地址都由两个固定长度的字段组成,其中一个字段是网络号 net-id,它标志主机(或路由器)所连接到的网络,而另一个字段则是主机号 host-id,它标志该主机(或路由器)。v两级的 IP 地址可以记为:IP 地址:=,3.2 网际协议IPnet-id24 位host-id24 位net-id16 位net-id8 位IP 地址中的网络号字段和主机号字段 0A 类地址host-id16 位B 类地址C 类地址011host-id8 位D 类地址 1 1 1 0多 播
24、地 址E 类地址保 留 为 今 后 使 用1 1 1 10139net-id24 位host-id24 位net-id16 位net-id8 位IP 地址中的网络号字段和主机号字段 0A 类地址host-id16 位B 类地址C 类地址011host-id8 位D 类地址 1 1 1 0多 播 地 址E 类地址保 留 为 今 后 使 用1 1 1 101A 类地址的网络号字段 net-id 为 1 字节4041v用二进制表示时,A类地址的最高位为0。v因此第一个八位组的最大值:01111111(转换成十进制数为127),最小值为00000000(转换成十进制数为0)。v规定,0和127两个数保
25、留使用,不能用作网络地址。v所以,任何IP地址的第一个八位组的取值范围在1126之间的都是A类地址。net-id24 位host-id24 位net-id16 位net-id8 位IP 地址中的网络号字段和主机号字段 0A 类地址host-id16 位B 类地址C 类地址011host-id8 位D 类地址 1 1 1 0多 播 地 址E 类地址保 留 为 今 后 使 用1 1 1 1 01B 类地址的网络号字段 net-id 为 2 字节4243v用二进制表示时,B类地址的前两位总是10。v因此,第1个八位组的最大值:10111111(转换成十进制数为191),最小值10000000(转换成
26、十进制为128)。v任何IP地址的第一个八位组的取值范围在128-191之间的都是B类地址。net-id24 位host-id24 位net-id16 位net-id8 位IP 地址中的网络号字段和主机号字段 0A 类地址host-id16 位B 类地址C 类地址011host-id8 位D 类地址 1 1 1 0多 播 地 址E 类地址保 留 为 今 后 使 用1 1 1 101C 类地址的网络号字段 net-id 为 3 字节4445v用二进制表示时,C类地址的前三位总是110。v因此,第1个八位组的最大值:11011111(转换成十进制数为223),最小值11000000(转换成十进制为
27、192)。v任何IP地址的第一个八位组的取值范围在192-223之间的都是C类地址。46net-id24 位host-id24 位net-id16 bitnet-id8 位0A 类地址host-id16 位B 类地址C 类地址011host-id8 位D 类地址 1 1 1 0多 播 地 址E 类地址保 留 为 今 后 使 用1 1 1 1014710000000000010110000001100011111 机器中存放的 IP 地址是 32 位 二进制代码10000000 00001011 00000011 00011111 每隔 8 位插入一个空格能够提高可读性采用点分十进制记法则进一步
28、提高可读性128.11.3.31 128 11 3 31 将每 8 位的二进制数转换为十进制数点分十进制记法3.2 网际协议IP48IP地址类型地址类型IP地址范围地址范围A类类1-126(00000001-01111110)B类类128-191(10000000-101111111)C类类192-223(1100000011011111)D类类224-239(11100000-11101111)E类类240-255(11110000-11111111)说明:可以根据IP地址第一个八位组的值来确定地址的类别。127用作回环测试,不能分配给网络。总结:49常用的三种类别的 IP 地址 IP 地址
29、的使用范围 网络 最大 第一个 最后一个 每个网络类别 网络数 可用的 可用的 中最大的 网络号 网络号 主机数 A 126(27 2)1 126 16,777,214 B 16,383(214 1)128.1 191.255 65,534 C 2,097,151(221 1)192.0.1 223.255.255 25450v主机标识的有关规定v 全“1”和全“0”的地址是专用的,不能进行分配。v 每一台主机都必须有一个非零的主机标识;v 全“1”的主机标识保留作为该网络的广播地址;v 全“0”的主机标识用于代表该网络本身;v 127.0.0.0是保留地址,不能作为网络地址。v 127.0.
30、0.1称为自返或回送(Loopback)地址,用于回路测试,。51v从一个 IP 数据报的首部并无法判断源主机或目的主机所连接的网络是否进行了子网划分。v使用子网掩码(subnet mask)可以找出 IP 地址中的子网部分。2.子网掩码52IP 地址的各字段和子网掩码 145 .13 .3 .10两级 IP 地址子网号为 3 的网络的网络号三级 IP 地址主机号子网掩码net-idhost-id子网的网络地址1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 0 0 0 0 0 0 00net-idsubnet-idhost-id145 .13
31、.145 .13 .33 .1053(IP 地址)AND(子网掩码)=网络地址网络号 net-id主机号 host-id两级 IP 地址网络号三级 IP 地址主机号net-idhost-idsubnet-id子网号子网掩码子网的网络地址1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 0 0 0 0 0 0 0net-idsubnet-id0逐位进行 AND 运算541 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0
32、 01 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0net-idnet-idhost-id 为全 0net-id网络地址A类地址默认子网掩码255.0.0.0网络地址B类地址默认子网掩码255.255.0.0网络地址C类地址默认子网掩码255.255.255.0host-id 为全 0host-id 为全 0默认子网掩码 55子网掩码是一个重要属性v子网掩码是一个网络或一个子网的重要属性。v路由器在和相邻路由器交换路由信息时,必须把自己所在网络(或子网)的子
33、网掩码告诉相邻路由器。v路由器的路由表中的每一个项目,除了要给出目的网络地址外,还必须同时给出该网络的子网掩码。v若一个路由器连接在两个子网上就拥有两个网络地址和两个子网掩码。56141 .14 .0 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0例:已知 IP 地址是 141.14.72.24,子网掩码是 255.255.192.0。试求网络地址。(a)点分十进制表示的 IP 地址(c)子网掩码是 255.255.192.00 0 0 0 0 0 0 0141 .14 .72 .24141 .14 .64 .0.00
34、 1 0 0 1 0 0 0141 .14 .24(b)IP 地址的第 3 字节是二进制(d)IP 地址与子网掩码逐位相与(e)网络地址(点分十进制表示)57141 .14 .0 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0例:在上例中,若子网掩码改为255.255.224.0。试求网络地址,讨论所得结果。(a)点分十进制表示的 IP 地址(c)子网掩码是 255.255.224.00 0 0 0 0 0 0 0141 .14 .72 .24141 .14 .64 .0.00 1 0 0 1 0 0 0141 .14
35、 .24(b)IP 地址的第 3 字节是二进制(d)IP 地址与子网掩码逐位相与(e)网络地址(点分十进制表示)不同的子网掩码得出相同的网络地址。但不同的掩码的效果是不同的。58IP 地址的一些重要特点(1)IP 地址是一种分等级的地址结构。分两个等级的好处是:v第一,IP 地址管理机构在分配 IP 地址时只分配网络号,而剩下的主机号则由得到该网络号的单位自行分配。这样就方便了 IP 地址的管理。v第二,路由器仅根据目的主机所连接的网络号来转发分组(而不考虑目的主机号),这样就可以使路由表中的项目数大幅度减少,从而减小了路由表所占的存储空间。59IP 地址的一些重要特点(2)实际上 IP 地址
36、是标志一个主机(或路由器)和一条链路的接口。v当一个主机同时连接到两个网络上时,该主机就必须同时具有两个相应的 IP 地址,其网络号 net-id 必须是不同的。这种主机称为多归属主机(multihomed host)。v由于一个路由器至少应当连接到两个网络(这样它才能将 IP 数据报从一个网络转发到另一个网络),因此一个路由器至少应当有两个不同的 IP 地址。60IP 地址的一些重要特点(3)用转发器或网桥连接起来的若干个局域网仍为一个网络,因此这些局域网都具有同样的网络号 net-id。(4)所有分配到网络号 net-id 的网络,范围很小的局域网,还是可能覆盖很大地理范围的广域网,都是平
37、等的。互联网中的 IP 地址 B222.1.1.222.1.1.1222.1.1.2222.1.1.3222.1.1.4R1222.1.2.5222.1.2.2222.1.2.1222.1.2.3222.1.2.4222.1.2.222.1.6.1222.1.5.1222.1.5.2222.1.6.2222.1.4.1222.1.4.2222.1.3.3222.1.3.2222.1.3.1R3R2222.1.3.LAN3N3N2222.1.4.222.1.5.222.1.6.N1LAN2LAN1互联网在同一个局域网上的主机或路由器的IP 地址中的网络号必须是一样的。图中的网络号就是 IP 地址
38、中的 net-id61互联网中的 IP 地址 B222.1.1.222.1.1.1222.1.1.2222.1.1.3222.1.1.4R1222.1.2.5222.1.2.2222.1.2.1222.1.2.3222.1.2.4222.1.2.222.1.6.1222.1.5.1222.1.5.2222.1.6.2222.1.4.1222.1.4.2222.1.3.3222.1.3.2222.1.3.1R3R2222.1.3.LAN3N3N2222.1.4.222.1.5.222.1.6.N1LAN2LAN1互联网路由器总是具有两个或两个以上的 IP 地址。路由器的每一个接口都有一个不同网络
39、号的 IP 地址。6263MAC地址/硬件地址vMAC地址是一个48位地址,如00:80:c8:4b:eb:0a,MAC地址分为两部分,前24位表示网卡制造厂家的标识号(Vendor Code),由IEEE统一分配。后24位是网卡的系列号,由网卡的生产厂家自行分配。vMAC地址也叫物理地址、硬件地址或链路地址,由网络设备制造商生产时写在硬件内部。这个地址与网络无关,也即无论将带有这个地址的硬件(如网卡、集线器、路由器等)接入到网络的何处,它都有相同的MAC地址,MAC地址一般不可改变,不能由用户自己设定。64IP 地址与硬件地址 TCP 报文IP 数据报MAC 帧应用层数据首部首部尾部首部链路
40、层及以下使用硬件地址硬件地址网络层及以上 使用 IP 地址IP 地址HA1HA5HA4HA3HA6主机 H1主机 H2路由器 R1硬件地址路由器 R2HA2IP1IP2局域网局域网局域网通信的路径H1经过 R1 转发再经过 R2 转发H2查找路由表查找路由表65HA1HA5HA4HA3HA6主机 H1主机 H2路由器 R1硬件地址路由器 R2HA2IP1IP2局域网局域网局域网IP1HA1HA5HA4HA3HA6HA2IP6主机 H1主机 H2路由器 R1IP 层上的互联网MAC 帧IP2IP4IP3IP5路由器 R2 IP1 IP2IP1 IP2IP1 IP2从 HA1 到 HA3从 HA4
41、 到 HA5从 HA6 到 HA2MAC 帧MAC 帧IP 数据报从协议栈的层次上看数据的流动66HA1HA5HA4HA3HA6主机 H1主机 H2路由器 R1硬件地址路由器 R2HA2IP1IP2局域网局域网局域网IP1HA1HA5HA4HA3HA6HA2IP6主机 H1主机 H2路由器 R1IP 层上的互联网MAC 帧IP2IP4IP3IP5路由器 R2 IP1 IP2IP1 IP2IP1 IP2从 HA1 到 HA3从 HA4 到 HA5从 HA6 到 HA2MAC 帧MAC 帧IP 数据报从虚拟的 IP 层上看 IP 数据报的流动67HA1HA5HA4HA3HA6主机 H1主机 H2路
42、由器 R1硬件地址路由器 R2HA2IP1IP2局域网局域网局域网IP1HA1HA5HA4HA3HA6HA2IP6主机 H1主机 H2路由器 R1IP 层上的互联网MAC 帧IP2IP4IP3IP5路由器 R2 IP1 IP2IP1 IP2IP1 IP2从 HA1 到 HA3从 HA4 到 HA5从 HA6 到 HA2MAC 帧MAC 帧IP 数据报在链路上看 MAC 帧的流动68IP1HA1HA5HA4HA3HA6HA2IP6主机 H1主机 H2路由器 R1IP 层上的互联网MAC 帧IP2IP4IP3IP5路由器 R2 IP1 IP2IP1 IP2IP1 IP2从 HA1 到 HA3从 H
43、A4 到 HA5从 HA6 到 HA2MAC 帧MAC 帧IP 数据报在 IP 层抽象的互联网上只能看到 IP 数据报图中的 IP1IP2 表示从源地址 IP1 到目的地址 IP2 两个路由器的 IP 地址并不出现在 IP 数据报的首部中 69IP1HA1HA5HA4HA3HA6HA2IP6主机 H1主机 H2路由器 R1IP 层上的互联网MAC 帧IP2IP4IP3IP5路由器 R2 IP1 IP2IP1 IP2IP1 IP2从 HA1 到 HA3从 HA4 到 HA5从 HA6 到 HA2MAC 帧MAC 帧IP 数据报路由器只根据目的站的 IP 地址的网络号进行路由选择 70IP1HA1
44、HA5HA4HA3HA6HA2IP6主机 H1主机 H2路由器 R1IP 层上的互联网IP2IP4IP3IP5路由器 R2 IP1 IP2IP1 IP2IP1 IP2MAC 帧从 HA1 到 HA3从 HA4 到 HA5从 HA6 到 HA2MAC 帧MAC 帧IP 数据报在具体的物理网络的链路层只能看见 MAC 帧而看不见 IP 数据报 71IP1HA1HA5HA4HA3HA6HA2IP6主机 H1主机 H2路由器 R1IP 层上的互联网IP2IP4IP3IP5路由器 R2 IP1 IP2IP1 IP2IP1 IP2MAC 帧从 HA1 到 HA3从 HA4 到 HA5从 HA6 到 HA2
45、MAC 帧MAC 帧IP 数据报IP层抽象的互联网屏蔽了下层很复杂的细节在抽象的网络层上讨论问题,就能够使用统一的、抽象的 IP 地址研究主机和主机或主机和路由器之间的通信 7273两个重要问题(1)如何知道某一个主机或路由器的硬件地址?(2)IP数据报如何找到下一站路由器?74地址解析协议 ARP 和逆地址解析协议 RARP IP 地址物理地址ARP物理地址IP 地址RARP75地址解析协议 ARPv不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址。v每一个主机都设有一个 ARP 高速缓存(ARP cache),里面有所在局域网上的各主机和路由器的 IP
46、地址到硬件地址的映射表。v当主机 A 欲向本局域网上的某个主机 B 发送 IP 数据报时,就先在其 ARP 高速缓存中查看有无主机 B 的 IP 地址。如有,就可查出其对应的硬件地址,再将此硬件地址写入 MAC 帧,然后通过局域网将该 MAC 帧发往此硬件地址。ARP 响应AYXBZ主机 B 向 A 发送ARP 响应分组 主机 A 广播发送ARP 请求分组 ARP 请求ARP 请求ARP 请求ARP 请求209.0.0.5209.0.0.600-00-C0-15-AD-1808-00-2B-00-EE-0A我是 209.0.0.5,硬件地址是 00-00-C0-15-AD-18我想知道主机 2
47、09.0.0.6 的硬件地址我是 209.0.0.6硬件地址是 08-00-2B-00-EE-0AAYXBZ209.0.0.5209.0.0.600-00-C0-15-AD-187677ARP 高速缓存的作用v为了减少网络上的通信量,主机 A 在发送其 ARP 请求分组时,就将自己的 IP 地址到硬件地址的映射写入 ARP 请求分组。v当主机 B 收到 A 的 ARP 请求分组时,就将主机 A 的这一地址映射写入主机 B 自己的 ARP 高速缓存中。这对主机 B 以后向 A 发送数据报时就更方便了。78应当注意的问题vARP 是解决同一个局域网上的主机或路由器的 IP 地址和硬件地址的映射问题
48、。v如果所要找的主机和源主机不在同一个局域网上,那么就要通过 ARP 找到一个位于本局域网上的某个路由器的硬件地址,然后把分组发送给这个路由器,让这个路由器把分组转发给下一个网络。剩下的工作就由下一个网络来做。79应当注意的问题(续)v从IP地址到硬件地址的解析是自动进行的,主机的用户对这种地址解析过程是不知道的。v只要主机或路由器要和本网络上的另一个已知 IP 地址的主机或路由器进行通信,ARP 协议就会自动地将该 IP 地址解析为链路层所需要的硬件地址。80使用 ARP 的四种典型情况 v发送方是主机,要把IP数据报发送到本网络上的另一个主机。这时用 ARP 找到目的主机的硬件地址。v发送
49、方是主机,要把 IP 数据报发送到另一个网络上的一个主机。这时用 ARP 找到本网络上的一个路由器的硬件地址。剩下的工作由这个路由器来完成。v发送方是路由器,要把 IP 数据报转发到本网络上的一个主机。这时用 ARP 找到目的主机的硬件地址。v发送方是路由器,要把 IP 数据报转发到另一个网络上的一个主机。这时用 ARP 找到本网络上的一个路由器的硬件地址。剩下的工作由这个路由器来完成。81逆地址解析协议 RARP v逆地址解析协议 RARP 使只知道自己硬件地址的主机能够知道其 IP 地址。v这种主机往往是无盘工作站。因此 RARP协议目前已很少使用。82IP 数据报的格式 v一个 IP 数
50、据报由首部和数据两部分组成。v首部的前一部分是固定长度,共 20 字节,是所有 IP 数据报必须具有的。v在首部的固定部分的后面是一些可选字段,其长度是可变的。首部04816192431版 本标志生 存 时 间协 议标 识总 长 度片 偏 移填 充首 部 检 验 和源 地 址目 的 地 址可 选 字 段 (长 度 可 变)位首部长度数 据 部 分固定部分可变部分源地址和目的地址都各占 4 字节区 分 服 务8384两个重要问题(1)如何知道某一个主机或路由器的硬件地址?(2)IP数据报如何找到下一站路由器?85IP 层转发分组的流程 v有四个 A 类网络通过三个路由器连接在一起。每一个网络上都