版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机网络主讲:魏培阳第四章网络层
主要内容
4.1网络层提供的两种服务4.2网际协议IP4.3划分子网和构造超网4.4网际控制报文协议ICMP4.5因特网的路由选择协议4.6IP多播4.7虚拟专用网VPN和网络地址转换NAT本章基本要求:掌握IP协议及主要内容;掌握IP地址的概念、分类和主要特点;掌握子网地址划分的方法和CIDR;掌握硬件地址与IP地址、主机名与IP地址的转换意义和实现方法;理解IP地址与物理地址的区别。掌握路径选择中的距离矢量方法,了解其它路径选择方法了解虚电路和数据报的工作原理、各自特点和区别;了解ICMP报文协议、Internet路由选择协议。主要内容:
虚电路和数据报的工作情况,两者的特点和区别。4.1网络层提供的两种服务
在计算机网络领域,网络层应该向运输层提供怎样的服务,是“面向连接”的,还是“无连接”的。争论焦点的实质就是:在计算机通信中,可靠交付应当由谁来负责?是网络还是端系统?一种观点认为应像电信网一样,提供面向连接服务;另一种观点则是无连接服务。对应就有“虚电路”服务和“数据报”服务。什么是虚电路?什么是数据报?4.1网络层提供的两种服务
1.虚电路服务
⑴概念所谓虚电路,就是在数据传输前,在源结点和目的结点之间建立的一条逻辑通路。4.1网络层提供的两种服务
⑵虚电路的建立和拆除虚电路的建立
由源端系统发出呼叫请求(特殊分组),要求与目的端系统建立连接,该呼叫请求由源结点经过若干中间结点,最后到达目的结点,再交给目的端系统。如果同意,则在源结点和目的结点之间建立了一条虚电路,随后各分组就可以沿该虚电路向目的地传送。
虚电路演示虚电路的拆除
信息传输完毕,可由源(HA)或目的(HD)发出拆除请求(特殊分组),逐段断开虚电路连接。4.1网络层提供的两种服务
⑶为什么称为虚电路
虚电路是一条逻辑通道,它与电路交换时的物理通道不同。
电路交换:二个用户通信时始终占用一条端到端的物理信道
虚电路:由于采用的是存储转发的分组交换,所以,只是连续地占用一条一条的链路。在虚电路中建立的这条路径并不是专用的。某结点与其它结点间的链路可同时属于不同的虚电路;同时也可能与多个结点间有虚电路(多条虚电路通过某结点)每条虚电路支持特定的两个端系统之间的数据传输,两个端系统之间也可以有多条虚电路为不同的进程服务。所以我们称其为虚电路。4.1网络层提供的两种服务
⑷虚电路的实现
利用虚电路号来标识不同的虚电路。
分几个方面:端系统选择未用的虚电路号给虚电路。每个结点维持一张虚电路表,表中每一项都记录了一个打开的虚电路信息,包括虚电路号、前一结点标识和下一结点标识每个分组包含它要走的路径上的虚电路号,以区别其它虚电路上的分组。
避免虚电路号的二义性
问题的提出:由于各端系统独立选择虚电路号,不可避免会有虚电路号的重复。如果有号码相同的虚电路经过同一结点,必然产生二义性。
解决方法:
使用动态虚电路号虚电路演示
4.1网络层提供的两种服务
2.数据报服务
同一报文的各个分组(数据报),均带有足够的地址信息,各分组独立寻径,最后到达目的结点,这样一种操作方式称为数据报方式。数据报提供的服务是不可靠的。ABCDEP1P2P3P4P5HAHE
特征:
1)数据发送的随意性
2)每个分组独立选择路由
3)不可靠服务4.1网络层提供的两种服务
数据报服务的要点:网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。网络在发送分组时不需要先建立连接。每一个分组(即IP数据报)独立发送,与其前后的分组无关(不进行编号)。网络层不提供服务质量的承诺。即所传送的分组可能出错、丢失、重复和失序(不按序到达终点),当然也不保证分组传送的时限。因特网采用的方法4.1网络层提供的两种服务
尽最大努力交付的好处由于传输网络不提供端到端的可靠传输服务,这就使网络中的路由器可以做得比较简单,而且价格低廉(与电信网的交换机相比较)。如果主机(即端系统)中的进程之间的通信需要是可靠的,那么就由网络的主机中的运输层负责(包括差错处理、流量控制等)。采用这种设计思路的好处是:网络的造价大大降低,运行方式灵活,能够适应多种应用。
因特网能够发展到今日的规模,充分证明了当初采用这种设计思路的正确性。
4.1网络层提供的两种服务
虚电路服务与数据报服务的对比对比的方面虚电路服务数据报服务思路可靠通信应当由网络来保证可靠通信应当由用户主机来保证连接的建立必须有不需要目的地址仅在连接建立阶段使用,每个分组使用短的虚电路号每个分组都有目的的完整地址分组的转发属于同一条虚电路的分组均按照同一路由进行转发每个分组独立选择路由进行转发当结点出故障时所有通过出故障的结点的虚电路均不能工作出故障的结点可能会丢失分组,一些路由可能会发生变化分组的顺序总是按发送顺序到达终点到达终点时不一定按发送顺序端到端的差错处理和流量控制可以由网络负责,也可以由用户主机负责由用户主机负责4.1网络层提供的两种服务
4.2网际协议IP
认识TCP/IP协议TCP/IP称为传输控制协议/网际协议TCP/IP是一个协议族
IP是TCP/IP体系中两个最主要的协议之一。与IP协议配套使用的还有四个协议:地址解析协议ARP(AddressResolutionProtocol)逆地址解析协议RARP(ReverseAddressResolutionProtocol)网际控制报文协议ICMP(InternetControlMessageProtocol)网际组管理协议IGMP(InternetGroupManagementProtocol)
IP协议及配套协议各种应用层协议
网络接口层(HTTP,FTP,SMTP等)物理硬件运输层TCP,UDP应用层ICMPIPRARPARP与各种网络接口网络层(网际层)IGMP4.2网际协议IP
IP层的特点和地位IP层的特点IP层作为通信子网的最高层,提供无连接的数据报传输机制,IP协议并不能保证IP报文传递的可靠性;IP是点到点的。4.2网际协议IP
IP层的地位TCP/IP是为包容各种物理网络技术而设计的,这种包容性主要体现在IP层中。IP向上层(主要是TCP层)提供统一的IP报文,使得各种网络帧或报文格式的差异性对高层协议不复存在。这种统一的意义不容小视,因为这是TCP/IP互联网首先希望实现的目标。IP层是TCP/IP实现异构网互联最关键的一层。IP层的作用:利用IP层达到屏蔽低层细节,向高层提供统一的数据格式和地址格式的目的。4.2网际协议IP
IP屏蔽下层网络向上提供统一的IP报文IP层对数据格式的统一4.2网际协议IP
TCP/IP的可靠性思想在TCP/IP网络中,IP采用无连接的数据报机制,对数据进行“尽力传递”,即只管将报文尽力传送到目的主机,无论传输正确与否,不做验证,不发确认,也不保证报文的顺序。TCP/IP的可靠性体现在传输层,传输层协议之一的TCP协议提供面向连接的服务(传输层的另一个协议UDP是无连接的)。因为传输层是端到端的,所以TCP/IP的可靠性被称为端到端可靠性。端到端可靠性思想有两个优点:TCP/IP跟ISO/OSI协议相比,显得简洁清晰,它只在TCP层提供面向连接的服务;TCP/IP的效率相当高,尤其是当物理网络很可靠时,TCP/IP的效率更加可观。4.2网际协议IP
4.2.1虚拟互连网络
网络互连:为实现网络之间的连通性和互操作性,用户可以相互透明地交换信息而将不同的网络进行连接。为什么要研究网络互连技术?各种类型的通信子网将长期地共存下去实现更大范围的资源共享现实的情况
多平台、多协议的异构网络共存4.2网际协议IP
网络互相连接起来使用的中间设备物理层中继系统:转发器(Repeater)和集线器(Hub)数据链路层中继系统:网桥(Bridge)和交换机(Switch)网络层中继系统:路由器(Router)网络层以上的中继系统:网关(Gateway)4.2网际协议IP
当中继系统是转发器或网桥时,一般并不称之为网络互连,因为这仅仅是把一个网络扩大了,而这仍然是一个网络。
网关由于比较复杂,目前使用得较少。互联网都是指用路由器进行互连的网络。由于历史的原因,许多有关TCP/IP的文献将网络层使用的路由器称为网关。网络互连使用路由器
4.2网际协议IP
互连设备的位置与用途OSI层互连设备用途物理层中继器、集线器在电缆段间复制比特流数据链路层网桥、第二层交换在LAN间存储转发帧网络层路由器、第三层交换在不同网间存储转发分组传输层以上网关提供不同体系间互连接口4.2网际协议IP
5432154321主机H1
主机H2
R1
R4
R5
R2
R3
R1
R2
R3H1
R5
H2
R4间接交付间接交付间接交付间接交付间接交付直接交付3221132211322113221132211分组在互联网中的传送
4.2.2分类的IP地址1.IP地址及其表示方法IP地址的编址方法
分类的IP地址。这是最基本的编址方法,在1981年就通过了相应的标准协议。子网的划分。这是对最基本的编址方法的改进,其标准[RFC950]在1985年通过。构成超网。这是比较新的无分类编址方法。1993年提出后很快就得到推广应用。4.2网际协议IP
IP地址结构:是一种层次型地址结构。
IP协议规定:IP地址的长度为四字节(32bit)
整个地址分为两部分,即网络号(NetID)和主机号(HostID)。
IP地址分类:分为5类,见下图。
NetIDHostID4.2网际协议IP
IP地址的表示:点分十进制法。例如:61网络号主机号0A类地址E类地址D类地址C类地址B类地址10网络号0783115162324主机号110网络号主机号110111011组播地址保留IP地址格式4.2网际协议IP
A、B、C三类地址的网络数和主机数
根据首字节的取值可以判断IP地址的类别。例如61为C类地址类别首字节值范围网络数主机数A1--12612616777214B128--1911638365534C192--22320971512544.2网际协议IP
特殊用途的IP地址主机号为全“0”的IP地址为网络地址,表示该网络本身。例如,
就是一个典型的C类网络地址。主机号为全“1”的地址是广播(broadcast)地址。任何一个以数字127开头的IP地址(127.any.any.any)都叫做回送地址(loopbackaddress)。它是一个保留地址,最常见的表示形式为
IP协议规定:当任何程序用回送地址作为目的地址时,计算机上的协议软件不会把该数据报向网络上发送,而是把数据直接返回给本主机。
回送地址的用途:实现对本机网络协议的测试或实现本地进程间的通信。
以上地址从来不分配给任何一个单个的主机。4.2网际协议IP
内部地址(私用地址)
IP地址范围内有一些未被InterNic指定,这些地址可分配给未连接到Internet的主机使用,这些主机如果需要访问Internet,可使用网络代理(proxy)服务器连接到公共网络上。
它们是:
A类:---55B类:---55C类:---554.2网际协议IP
D类和E类地址D类地址是组播地址(Multicast),范围为:
–55,其间每个IP地址,实际上代表一组特定的主机。
注意:这个地址不是一个主机地址E类范围:240.X.Y.Z--255.X.Y.Z,这是一个用于实验的地址范围,并不用于实际的网络。4.2网际协议IP
组播地址解释
组播地址主要用于:电视会议、视频点播等应用。
实际上,一个组播IP地址唯一地标志一个逻辑组。每个要求参与组播接收的主机使用IGMP协议,主动登记到希望加入的组中去。
与广播地址相似之处是:都只能作为IP报文的目的地址,表示该报文的一组接收者,而不能把它分配给某台具体的主机。
组播地址和广播地址区别:广播地址是按主机的物理位置来划分各组的(属于同一个子网),而组播地址指定一个逻辑组,参与该组的机器可能遍布整个Internet网。4.2网际协议IP
2.路由器转发分组的步骤
先按所要找的IP地址中的网络号NetID把目的网络找到。当分组到达目的网络后,再利用主机号
Host-ID将数据报直接交付给目的主机。4.2网际协议IP
3.IP地址的一些重要特点
IP地址是一种分等级的地址结构。分两个等级的好处是:方便了IP地址的管理
IP地址管理机构在分配IP地址时只分配网络号,而剩下的主机号则由得到该网络号的单位自行分配。使路由表中的项目数大幅度减少,从而减小了路由表所占的存储空间
4.2网际协议IP
(2)
IP地址是标志一个主机(或路由器)和一条链路的接口,而不是主机当一个主机同时连接到两个网络上时,该主机就必须同时具有两个相应的IP地址,其网络号
NetID必须是不同的。这种主机称为多归属主机。一个路由器至少应当有两个不同的IP地址。一个路由器至少应当连接到两个网络(这样它才能将IP数据报从一个网络转发到另一个网络)。4.2网际协议IP
(3)用转发器或网桥连接起来的若干个局域网仍为一个网络,因此这些局域网都具有同样的网络号NetID。(4)所有分配到网络号NetID的网络,无论是范围很小的局域网,还是可能覆盖很大地理范围的广域网,都是平等的。4.2网际协议IP
BR1R3R2LAN3N3N222.1.6.N1LAN2LAN1互联网在同一个局域网上的主机或路由器的IP地址中的网络号必须是一样的。图中的网络号就是IP地址中的net-id互联网中的IP地址BR1R3R2LAN3N3N222.1.6.N1LAN2LAN1互联网在同一个局域网上的主机或路由器的IP地址中的网络号必须是一样的。图中的网络号就是IP地址中的net-id互联网中的IP地址BR1R3R2LAN3N3N222.1.6.N1LAN2LAN1互联网路由器总是具有两个或两个以上的IP地址。路由器的每一个接口都有一个不同网络号的IP地址。互联网中的IP地址BR1R3R2LAN3N3N222.1.6.N1LAN2LAN1互联网两个路由器直接相连的接口处,可指明也可不指明IP地址。如指明IP地址,则这一段连线就构成了一种只包含一段线路的特殊“网络”。现在常不指明IP地址。要记住:在同一个局域网上的主机或路由器的IP地址中的网络号必须是一样的。用集线器、网桥和二层交换机连接的网段仍然是一个局域网,只能有一个网络号。路由器总是具有两个或两个以上的IP地址,且各端口的网络地址不同。当两个路由器直接相连时,在连线两端的接口处,可以指明,也可以不指明IP地址。4.2网际协议IP
4.2.3IP地址与硬件地址IP地址与硬件地址的区别:物理地址是数据链路层和物理层使用的地址,而IP地址是网络层和以上各层使用的地址。TCP报文IP数据报MAC帧应用层数据首部首部尾部首部链路层及以下使用硬件地址硬件地址网络层及以上使用IP地址IP地址4.2网际协议IP
IP地址放在IP数据报的首部,而硬件地址则放在MAC帧的首部。在网络层及以上使用的是IP地址,而数据链路层及以下使用的是硬件地址。因而在数据链路层看不见数据报的IP地址。下图是三个局域网用两个路由器R1和R2互连起来。4.2网际协议IP
HA1HA5HA4HA3HA6主机H1主机H2路由器R1硬件地址路由器R2HA2IP1IP2局域网局域网局域网通信的路径H1→经过R1转发→再经过R2转发→H2查找路由表查找路由表4.2网际协议IP
HA1HA5HA4HA3HA6主机H1主机H2路由器R1硬件地址路由器R2HA2IP1IP2局域网局域网局域网IP1HA1HA5HA4HA3HA6HA2IP6主机H1主机H2路由器R1IP层上的互联网MAC帧IP2IP4IP3IP5路由器R2
IP1→IP2IP1→IP2IP1→IP2从HA1
到HA3从HA4
到HA5从HA6
到HA2MAC帧MAC帧IP数据报从协议栈的层次上看数据的流动IP1HA1HA5HA4HA3HA6HA2IP6主机H1主机H2路由器R1IP层上的互联网MAC帧IP2IP4IP3IP5路由器R2
IP1→IP2IP1→IP2IP1→IP2从HA1
到HA3从HA4
到HA5从HA6
到HA2MAC帧MAC帧IP数据报在IP层抽象的互联网上只能看到IP数据报图中的IP1→IP2
表示从源地址IP1
到目的地址IP2
两个路由器的IP地址并不出现在IP数据报的首部中
IP1HA1HA5HA4HA3HA6HA2IP6主机H1主机H2路由器R1IP层上的互联网IP2IP4IP3IP5路由器R2
IP1→IP2IP1→IP2IP1→IP2MAC帧从HA1
到HA3从HA4
到HA5从HA6
到HA2MAC帧MAC帧IP数据报在具体的物理网络的链路层只能看见MAC帧而看不见IP数据报在网络层写入IP数据报首部的地址在数据链路层写入MAC帧首部的地址源地址目的地址源地址目的地址H1→R1IP1IP2HA1HA3R1→R2IP1IP2HA4HA5R2→H2IP1IP2HA6HA2不同层次、不同网段地址的变化情况4.2网际协议IP
4.2.4地址解析协议ARP和逆地址解析协议RARP
不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址。每一个主机都设有一个ARP高速缓存(ARPcache),里面有所在的局域网上的各主机和路由器的IP地址到硬件地址的映射表。当主机A欲向本局域网上的某个主机B发送IP数据报时,就先在其ARP高速缓存中查看有无主机B的IP地址。如有,就可查出其对应的硬件地址,再将此硬件地址写入MAC帧,然后通过局域网将该MAC帧发往此硬件地址。
4.2网际协议IP
AYBZ主机A广播发送ARP请求分组ARP请求ARP请求ARP请求ARP请求X00-00-C0-15-AD-18我是,硬件地址是00-00-C0-15-AD-18我想知道主机
的硬件地址ARP响应主机B向A发送ARP响应分组08-00-2B-00-EE-0A我是硬件地址是08-00-2B-00-EE-0AAYXBZ00-00-C0-15-AD-184.2网际协议IP
ARP高速缓存的作用为了减少网络上的通信量,主机A在发送其ARP请求分组时,就将自己的IP地址到硬件地址的映射写入ARP请求分组。当主机B收到A的ARP请求分组时,就将主机A的这一地址映射写入主机B自己的ARP高速缓存中。这对主机B以后向A发送数据报时就更方便了。4.2网际协议IP
应当注意的问题ARP是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题。如果所要找的主机和源主机不在同一个局域网上,那么就要通过ARP找到一个位于本局域网上的某个路由器的硬件地址,然后把分组发送给这个路由器,让这个路由器把分组转发给下一个网络。剩下的工作就由下一个网络来做。4.2网际协议IP
从IP地址到硬件地址的解析是自动进行的,主机的用户对这种地址解析过程是不知道的。只要主机或路由器要和本网络上的另一个已知IP地址的主机或路由器进行通信,ARP协议就会自动地将该IP地址解析为链路层所需要的硬件地址。
4.2网际协议IP
逆地址解析协议RARP
逆地址解析协议RARP使只知道自己硬件地址的主机能够知道其IP地址。这种主机往往是无盘工作站。因此RARP协议目前已很少使用。4.2网际协议IP
4.2.5IP分组格式及说明
IP协议的内容包括:基本传输单元的格式,也就是IP报文的类型与定义IP报文的地址以及分配方法IP报文的路由转发IP报文的分片与重组4.2网际协议IP
一个IP数据报由首部和数据两部分组成。首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。1.基本格式及说明4.2网际协议IP
固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特数据部分首部传送IP数据报首部发送在前固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特首部版本——占4bit,IP协议的版本号目前的IP协议版本号为4(即IPv4)固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度数据部分首部首部长度——占4bit,可表示的最大数值是15个单位(一个单位为4字节),因此IP的首部长度的最大值是60字节。以4字节为单位,普通IP数据报(没有任何选择项)字段的值是5(20字节)固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特首部服务类型——占8bit,用来获得更好的服务,此字段以前一直没有被人们使用。现在叫区分服务字段。服务类型(TOS,TypeofService):规定了对于本数据报的处理方式。该字段总共为1个字节,被分为5个子域。其结构如下图。
优先权(共3比特)指示本报文的重要程度,其取值范围为0到7。用0表示一般优先级,而7表示网络控制优先级,即值越大,表示优先级越高。
D,T,R,C四位表示本数据报所希望的传输类型。D是延迟,T是吞吐率,R表示可靠性,C表示选择代价更小的路径。分别被置为1时,分别表示要求低延迟、高吞吐率、高可靠性等。
该参数不具有强制性。
优先权DTR保留0236547服务类型C4.2网际协议IP
固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度数据部分首部总长度——占16bit,指首部和数据之和的长度,单位为字节,因此数据报的最大长度为65535字节。4.2网际协议IP
固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度数据部分首部标识(identification)占16bit,它是一个计数器,用来产生数据报的标识。它是一个无符号整型值,是IP协议赋予报文的标识,属于同一个报文的分片具有相同的标识符。4.2网际协议IP
标志(flag)占3bit,目前只有前两个比特有意义。标志字段的最低位是
MF(MoreFragment)。MF1表示后面“还有分片”。MF0表示是最后一个分片。标志字段中间的一位是DF(Don'tFragment)。DF0时才允许分片。
固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度数据部分首部4.2网际协议IP
固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度数据部分首部片偏移(12bit)指出:较长的分组在分片后某片在原分组中的相对位置,接收端按偏移值重组IP数据报。片偏移以8个字节为偏移单位,范围0-8191,缺省0。IP数据报的封装、分片与重组
IP报文要交给数据链路层,封装成帧之后才能发送。实际的物理网络所支持的最大帧长各不相同。例如:以太网帧数据:1500字节
FDDI帧数据:4352字节
最大传送单位MTU4.2网际协议IP
IP协议在发送IP报文时,一般选择一个合适的初始长度。如果这个报文要经历的中间物理网络的MTU值比IP报文长度要小,则IP协议把这个报文的数据部分分割成若干个较小的数据片,组成较小的报文,然后放到物理帧中去发送。
每个小的报文称为一个分片(fragmentation)。分片的动作一般在路由器上进行。如果路由器从某个网络接口收到了一个IP报文,要向另外一个网络转发,而该网络的MTU比IP报文长度要小,那么就要把该IP报文分成多个小IP分片后再分别发送。例如,下图所示。4.2网际协议IP
BMTU=1500MTU=1500(a)多个拥有不同MTU值的网络AR1R2网络1网络2网络3MTU=620IP报文头数据(1400B)分片1的头(偏移为0)数据片1(600B)分片2的头(偏移为600)
75分片3的头(偏移为1200)
150数据片3(200B)原始IP报文分片1分片2分片3(b)IP数据包的分片和重组020B数据片2(600B)4.2网际协议IP
图中给出了一个对IP报文进行分片的网络环境示例。在图(a)中,两个以太网通过一个远程网互联起来。以太网的MTU都是1500,但是中间的远程网络的MTU为620个字节。如果主机A现在发送给B一个长度超过620字节的IP报文,首先在经过路由器R1时,就必须把该报文分成多个分片。
在进行分片时,每个数据片的长度依照物理网络的MTU而确定。由于IP报文头中的偏移字段的值实际上是以8字节为单位,所以要求每个分片的长度必须为8的整数倍(最后一个分片除外)。图(b)是一个包含有1400字节数据的IP报文,在经过图(a)所示网络环境中路由器R1后,该报文的分片情况。从图中可以看出,每个分片都包括各自的IP报文头。而且该报文头和原来的IP报文头非常相似,除了MF标志位、片偏移、校验和等几个字段外,其它内容完全一样。4.2网际协议IP
重组(Reasembly)是分片的逆过程,把若干个IP分片重新组合后还原成原来的IP报文。
在目的端收到一个IP报文时,可以根据其片偏移和MF标志位来判断它是否是一个分片。如果MF位是0,并且分片偏移为0,则表明这是一个完整的IP数据报。否则,如果分片偏移不为0,或者MF标志位为1,则表明它是一个分片。这时目的地端需要实行分片重组。IP协议根据IP报文头中的“标识”字段的值来确定哪些分片属于同一个原始报文,根据片偏移来确定分片在原始报文中的位置。
如果一个IP数据报的所有分片都正确地到达目的地,则把它重新组织成一个完整的报文后交给上层协议去处理。4.2网际协议IP
生存时间(8bit)记为TTL(TimeToLive),这是为了限制数据报在网络中的生存时间,其单位最初是秒,但为了方便,现在都用“跳数”作为TTL的单位。数据报每经过一个路由器,其TTL值就减1。固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度数据部分首部4.2网际协议IP
固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度数据部分首部协议(8bit)字段指出此数据报携带的数据使用何种协议以便目的主机的IP层将数据部分上交给哪个处理过程4.2网际协议IP
运输层网络层首部TCPUDPICMPIGMPOSPF数据部分IP数据报协议字段指出应将数据部分交给哪一个进程4.2网际协议IP
固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度数据部分首部首部检验和(16bit)字段只检验数据报的首部,不包括数据部分。这里不采用CRC检验码而采用简单的计算方法。
4.2网际协议IP
发送端接收端16bit字116bit字2置为全0检验和16bit字n16bit反码算术运算求和……取反码数据报首部IP数据报16bit检验和16bit字116bit字216bit检验和16bit字n16bit反码算术运算求和16bit结果……取反码数据部分若结果为0,则保留;否则,丢弃该数据报数据部分不参与检验和的计算固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度数据部分首部源地址和目的地址都各占4字节4.2网际协议IP
2.IP数据报首部的可变部分
IP首部的可变部分就是一个选项字段,用来支持排错、测量以及安全等措施,内容很丰富。选项字段的长度可变,从1个字节到40个字节不等,取决于所选择的项目。增加首部的可变部分是为了增加IP数据报的功能,但这同时也使得IP数据报的首部长度成为可变的。这就增加了每一个路由器处理数据报的开销。实际上这些选项很少被使用。4.2网际协议IP
在IP协议中可以有如下表中所示的一些IP选项类型:安全选项(Security) 表示该IP数据报的保密级别 严格源选径(StrictSourceRouting) 给出完整的路径表 松散源选径(LooseSourceRouting) 给出该报文在传输过程中必须要经历的路由器的地址 路由记录(RecordRoute) 让途经的每个路由器在IP报文中记录其IP地址 时间戳(Timestamp)让途经的每个路由器在IP报文中记录其IP地址及时间值4.2网际协议IP
网
1
网
4
网
3
网
2目的主机所在的网络下一跳路由器的地址直接交付,接口1直接交付,接口0路由器R2
的路由表链路
4链路
3链路
2链路
1R2R3R101R2R3R1在路由表中,对每一条路由,最主要的是(目的网络地址,下一跳地址)4.2.6IP层转发分组的流程
特定主机路由
这种路由是为特定的目的主机指明一个路由。采用特定主机路由可使网络管理人员能更方便地控制网络和测试网络,同时也可在需要考虑某种安全问题时采用这种特定主机路由。4.2网际协议IP
默认路由(defaultroute)
路由器还可采用默认路由以减少路由表所占用的空间和搜索路由表所用的时间。这种转发方式在一个网络只有很少的对外连接时是很有用的。默认路由在主机发送IP数据报时往往更能显示出它的好处。如果一个主机连接在一个小网络上,而这个网络只用一个路由器和因特网连接,那么在这种情况下使用默认路由是非常合适的。4.2网际协议IP
N1R1因特网目的网络下一跳
N1
直接
N2
R2
默认R1路由表N2R2只要目的网络不是N1和N2,就一律选择默认路由,把数据报先间接交付路由器R1,让R1再转发给下一个路由器。4.2网际协议IP
分组转发算法
(1)从数据报的首部提取目的站的IP地址D,得出目的网络地址为N。(2)若网络N与此路由器直接相连,则直接将数据报交付给目的站D;否则是间接交付,执行(3)。(3)若路由表中有目的地址为D的特定主机路由,则将数据报传送给路由表中所指明的下一跳路由器;否则,执行(4)。(4)若路由表中有到达网络N的路由,则将数据报传送给路由表指明的下一跳路由器;否则,执行(5)。(5)若路由表中有一个默认路由,则将数据报传送给路由表中所指明的默认路由器;否则,执行(6)。(6)报告转发分组出错。4.2网际协议IP
提取目的站地址D,取得网络地址N与路由器直接相连?直接交付D是特定主机路由?路由表有N的记录?路由表有默认路由?按路由表送往下一跳报错按路由表送往下一跳按默认路由转发YYYYNNNN必须强调指出
IP数据报的首部中没有地方可以用来指明“下一跳路由器的IP地址”。当路由器收到待转发的数据报,不是将下一跳路由器的IP地址填入IP数据报,而是送交下层的网络接口软件。网络接口软件使用ARP负责将下一跳路由器的IP地址转换成硬件地址,并将此硬件地址放在链路层的MAC帧的首部,然后根据这个硬件地址找到下一跳路由器。4.2网际协议IP
4.3划分子网和构造超网一、划分子网1、基本概念分类的IP地址存在的不足IP地址空间的浪费路由表变得太大,使网络性能变坏两级的IP地址不够灵活
三级的IP地址
从1985年起在IP地址中又增加了一个“子网号字段”,使两级的IP地址变成为三级的IP地址。这种做法叫作划分子网(subnetting)。划分子网已成为因特网的正式标准协议。
划分子网的基本思路
划分子网纯属一个单位内部的事情。这个单位对外仍然表现为没有划分子网的网络。从主机号借用若干个比特作为子网号
subnet-id,而主机号host-id也就相应减少了若干个比特。
IP地址::={<网络号>,<子网号>,<主机号>}
网络位主机位子网划分前后IP地址结构:网络位子网位主机位4.3划分子网和构造超网转发分组的步骤
第一步:凡是从其他网络发送给本单位某个主机的IP数据报,根据目的网络号
net-id,找到连接在本单位网络上的路由器。第二步:此路由器收到IP数据报后,按目的网络号net-id和子网号subnet-id找到目的子网。第三步:将IP数据报直接交付给目的主机。4.3划分子网和构造超网………01014563所有到网络的分组均到达此路由器我的网络地址是R1R3R2网络例:一个未划分子网的B类网络4.3划分子网和构造超网划分为三个子网后对外仍是一个网络
01014563………子网子网
子网网络R1R3R2所有到达网络的分组均到达此路由器4.3划分子网和构造超网2、子网实现(子网掩码)
从一个IP数据报的首部无法判断源主机或目的主机所连接的网络是否进行了子网的划分。使用子网掩码(subnetmask)可以很方便地找出IP地址中的子网部分。
子网掩码是一个与IP地址对应的32位数字。掩码的一些位为1,另一些位为0。通过掩码可以把IP地址中的主机号再分为两部分:子网号和主机号。默认子网掩码:
A类:B类:
C类:
4.3划分子网和构造超网子网掩码及其表示
IP协议规定:每一个使用子网的网点都选择32bit的位模式,若位模式中的某位置“1”,则对应IP地址的某位为网络地址(包括网络号和子网号)中的一位;若位模式中的某位置“0”,则对应IP地址的某位为主机地址中的一位。使用子网掩码的两个B类地址B类地址网络地址主机地址1011111000000001
0100
0000000001001011111000000001
0100
000100000001子网掩码11111111111111111111000000000000子网地址4.3划分子网和构造超网子网掩码的表示直接的32bit的位模式(不常用)点分整数法(常用)例:92掩码的斜杠表示法:斜杠后的整数,就是掩码中所有1的个数
例:带点十进制数表示斜杠表示
/24IP地址/子网掩码对:0/可表示为0/20若划分子网,路由表中增加一栏--子网掩码。Router在运算时,IP地址和子网掩码按位相与,计算出网络地址(Net-ID和Subnet-ID)4.3划分子网和构造超网3、子网数和主机数的计算公式
RFC950规定:不允许使用全“0”和全“1”的子网,即子网号不能全“0”和全“1”。同样,主机号也如此。根据此规定,有:1位子网掩码不允许(因对应位上只有0和1)B类15位子网掩码和C类7位子网掩码也是非法的(因只给主机留了1位)。4.3划分子网和构造超网
1)计算子网数的公式
2N-2(其中N用于表示子网的位数)
表示子网的位组合全0和全1(全0子网、广播子网),对于一些网络设备可能出现问题,所以剔除这两种组合。
2)计算主机数的公式
2N-2(其中N是用于表示主机的位数)当主机位为全0时,此时的IP地址相当于只是表示了一个网络的地址当主机位为全1时,此时的IP地址相当于是一个广播地址4.3划分子网和构造超网C类子网掩码子网掩码子网数主机数/子网主机总数922621242463018040141419648306180526221244.3划分子网和构造超网4、IP地址和子网掩码的例子例1:IP地址为4的主机的网络号和主机号各是什么?解:网络号=203.23.32
主机号=34
理由:上述IP地址为C类。4.3划分子网和构造超网例2:如果主机地址的头十位用于子网,则39的子网掩码是什么?
A:;B:;C:24;D:92。解:选择D
理由:39为B类地址,则对应的子网掩码中头两个字节全“1”。
据题意:Host-ID的头十位用于子网,则对应网络地址1后应跟随10位“1”,故选D4.3划分子网和构造超网例3:若子网掩码为,那么下面哪个主机必须使用路由器才能与0通信?
A:1;B:22;C:3;D:27。解:选择B、C
因:0为B类地址,则:135.23为网络号。显然,C之网络号不同故:选择C。4.3划分子网和构造超网又:子网掩码为,指示主机号(第三字节)的头两位为子网号。主机0的第三字节
(144---10010000)的头两位(10)为子网号。考察A、B、D的第三字节:
A:190---10111110B:126---01111110D:148---10010100
故:再选B4.3划分子网和构造超网例4:,子网掩码:/26(92)
1.请问/26借出主机的多少位来表示子网?
2.能够表示多少个子网?
3.子网的IP地址分别是什么?
4.每个子网中有多少位表示主机?每个子网中可容纳多少主机?4.3划分子网和构造超网答案:1.2位
2.22-2=2个子网
3.或428或92
除去子网号全0和1,因此只能
4或28,即最后8位分别是
01000000或100000004.6位,62台(除去全0和1)
4.3划分子网和构造超网例5:某单位得到C类地址,计划划分成4个网络,每个网络最多25台主机。如何划分?解:因子网数4个,每个网络最多25台主机则:子网掩码选24(主机号中借3位)
可有6个子网,每个子网平均有256/8=32(30)个地址
对应地址范围:0---3132---6364—9596—127128—159160—191192—223224--25500000000—00011111放弃11100000—11111111放弃从中选择4个4.3划分子网和构造超网IP:2IP:6IP:4IP:28对子网:2
网络地址=2
广播地址=3
实际可分配IP地址范围:
3--2对其它子网依此类推。4.3划分子网和构造超网二、使用子网掩码的分组转发过程
在不划分子网的两级IP地址下,从IP地址得出网络地址是个很简单的事。但在划分子网的情况下,从IP地址却不能惟一地得出网络地址来,这是因为网络地址取决于那个网络所采用的子网掩码,但数据报的首部并没有提供子网掩码的信息。因此分组转发的算法也必须做相应的改动。4.3划分子网和构造超网0目的网络地址子网掩码下一跳282828接口0接口1R23H1子网1:网络地址
子网掩码2830R1
的路由表(未给出默认路由器)R11R2子网2:网络地址28
子网掩码28H2380129H3子网3:网络地址
子网掩码2划分子网后分组的转发举例
4.3划分子网和构造超网主机H1要发送分组给H2
0目的网络地址子网掩码下一跳282828接口0接口1R2R1
的路由表(未给出默认路由器)3H1子网1:网络地址
子网掩码2830R11R2子网2:网络地址28
子网掩码28H2380129H3子网3:网络地址
子网掩码2要发送的分组的目的IP地址:38请注意:H1
并不知道
H2
连接在哪一个网络上。H1
仅仅知道
H2
的
IP
地址是38因此
H1
首先检查主机
38
是否连接在本网络上如果是,则直接交付;否则,就送交路由器
R1,并逐项查找路由表。4.3划分子网和构造超网0目的网络地址子网掩码下一跳282828接口0接口1R2R1
的路由表(未给出默认路由器)H1子网1:网络地址
子网掩码2830R11R2子网2:网络地址28
子网掩码28H23380129H3子网3:网络地址
子网掩码228AND38的计算255就是二进制的全1,因此255ANDxyz=xyz,这里只需计算最后的128AND138即可。128→10000000138→10001010逐比特AND
操作后:10000000→128283828逐比特AND
操作H1
的网络地址主机H1
首先将本子网的子网掩码28与分组的IP地址38逐比特相“与”(AND操作)
因此H1必须把分组传送到路由器R1,然后逐项查找路由表0目的网络地址子网掩码下一跳282828接口0接口1R2R1
的路由表(未给出默认路由器)3H1子网1:网络地址
子网掩码2830R11R2子网2:网络地址28
子网掩码28H2380129H3子网3:网络地址
子网掩码24.3划分子网和构造超网路由器R1收到分组后就用路由表中第1个项目的
子网掩码和38逐比特AND操作
0目的网络地址子网掩码下一跳282828接口0接口1R2R1
的路由表(未给出默认路由器)3H1子网1:网络地址
子网掩码2830R11R2子网2:网络地址28
子网掩码28H2380129H3子网3:网络地址
子网掩码228AND38=28不匹配!(因为28与路由表中的
不一致)R1
收到的分组的目的IP地址:38不一致路由器R1再用路由表中第2个项目的
子网掩码和38逐比特AND操作
0目的网络地址子网掩码下一跳282828接口0接口1R2R1
的路由表(未给出默认路由器)3H1子网1:网络地址
子网掩码2830R11R2子网2:网络地址28
子网掩码28H2380129H3子网3:网络地址
子网掩码228AND38=28匹配!这表明子网2就是收到的分组所要寻找的目的网络R1
收到的分组的目的IP地址:38一致!在划分子网的情况下路由器转发分组的算法
(1)从收到的分组的首部提取目的IP地址D。(2)先用各网络的子网掩码和D逐比特相“与”,看是否和相应的网络地址匹配。若匹配,则将分组直接交付。否则就是间接交付,执行(3)。(3)若路由表中有目的地址为D的特定主机路由,则将分组传送给指明的下一跳路由器;否则,执行(4)。(4)对路由表中的每一行的子网掩码和D逐比特相“与”,若其结果与该行的目的网络地址匹配,则将分组传送给该行指明的下一跳路由器;否则,执行(5)。(5)若路由表中有一个默认路由,则将分组传送给路由表中所指明的默认路由器;否则,执行(6)。(6)报告转发分组出错。4.3划分子网和构造超网三、构造超网(无分类域间路由选择CIDR
)
划分子网在一定程度上缓解了因特网在发展中遇到的困难。然而在
1992
年因特网仍然面临三个必须尽早解决的问题,这就是:B类地址在1992年已分配了近一半,眼看就要在1994年3月全部分配完毕!因特网主干网上的路由表中的项目数急剧增长(从几千个增长到几万个)。整个IPv4的地址空间最终将全部耗尽。怎么办?4.3划分子网和构造超网解决办法
变长子网掩码VLSM(VariableLengthSubnetMask)
在一个划分子网的网络中可同时使用几个不同的子网掩码。(1987年,RFC1009)无分类域间路由选择CIDR(ClasslessInter-DomainRouting)。(1993年)网络地址转换(NAT)技术(1996年)开发新协议IPv6
4.3划分子网和构造超网1.变长子网掩码(VLSM)什么是可变长子网掩码?
VLSM是指对同一个主网络在不同的位置使用不同长度的子网掩码。如图:表示一个未使用VLSM的网络拓扑结构图。R1R2IP:2/27IP:4/27IP:6/27未使用VLSM的情况30个地址可分配4.3划分子网和构造超网
采用VLSM可以允许对同一主网络使用不同的子网掩码,或者说VLSM可以改变同一主网络的子网掩码长度。R1R2IP:2/30IP:4/27IP:6/27使用VLSM的情况30个地址可分配2个地址可分配4.3划分子网和构造超网
上图说明了串行连接网络的网络掩码为:52(串行连接网络掩码)而对其中的以太网使用的网络掩码则为:
24
4.3划分子网和构造超网提出问题:对于单个C类IP地址而言,如果不使用VLSM,有的网络是不可能只用一个C类地址来配置所有的子网的。即
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 木工分包合同范本
- 原木销售购入合同
- 电子设备保修服务合同
- 标准技术服务合同简化版
- 招标文件合同的许可问题
- 教育装备产品购买合同
- 购买牛只合同范本
- 医疗器材订购合同样式
- 油漆工分包合同范本示例
- 艺术生学业保证书
- 颈托的正确使用课件
- 神奇的热敏灸疗法课件
- 电力拖动自动控制系统-运动控制系统(第5版)习题答案
- 浅议线性代数中的数学文化课件
- 食品新产品开发及配方设计课件
- 线性系统理论-郑大钟(第二版)课件
- 四川省乐山市各县区乡镇行政村村庄村名居民村民委员会明细
- 细胞生物学(全套1047张课件)
- 河南省周口市各县区乡镇行政村村庄村名居民村民委员会明细
- (完整版)幼儿园大班测试卷
- 有机磷农药中毒课件 - 参赛
评论
0/150
提交评论