版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
NetworkLayer4-1Chapter4
NetworkLayerAnoteontheuseofthesepptslides:We’remakingtheseslidesfreelyavailabletoall(faculty,students,readers).They’reinPowerPointformsoyoucanadd,modify,anddeleteslides(includingthisone)andslidecontenttosuityourneeds.Theyobviouslyrepresentalotofworkonourpart.Inreturnforuse,weonlyaskthefollowing:Ifyouusetheseslides(e.g.,inaclass)insubstantiallyunalteredform,thatyoumentiontheirsource(afterall,we’dlikepeopletouseourbook!)Ifyoupostanyslidesinsubstantiallyunalteredformonawwwsite,thatyounotethattheyareadaptedfrom(orperhapsidenticalto)ourslides,andnoteourcopyrightofthismaterial.Thanksandenjoy!JFK/KWRAllmaterialcopyright1996-2007J.FKuroseandK.W.Ross,AllRightsReservedComputerNetworking:ATopDownApproach
4thedition.
JimKurose,KeithRoss
Addison-Wesley,July2007.
NetworkLayer4-2网络层2第4章
网络层本章目的:
理解网络层服务依赖的原理:转发选路:链路状态算法、距离矢量算法因特网中的实例和实现IP、NAT、ICMP、IPv6NetworkLayer4-3网络层3第4章
网络层4.1概述4.2虚电路和数据报网络4.3路由器的构成4.4IP:网际协议数据报格式IPv4编址NATICMP(*)IPv6(*)4.5选路算法链路状态(*)距离矢量等级选路(*)4.6互联网中选路(*)RIPOSPFBGP4.7广播和多播选路(*)NetworkLayer4-4网络层4网络层从发送主机到接收主机传输层的段在发送侧将段封装进数据报在接收侧,向运输层交付段网络层协议在每台主机、路由器中当IP数据报通过路由器时,路由器检查所有数据报首部字段networkdatalinkphysicalnetworkdatalinkphysicalnetworkdatalinkphysicalnetworkdatalinkphysicalnetworkdatalinkphysicalnetworkdatalinkphysicalnetworkdatalinkphysical网络层数据链路层物理层applicationtransportnetworkdatalinkphysicalapplicationtransportnetworkdatalinkphysicalNetworkLayer4-5网络层5关键的网络层功能转发:
将分组从路由器的输入移动到适当的路由器输出选路:
决定分组从源到目的地所采用的路由选路算法类比:选路:
规划从源到目的地路径的过程转发:
通过单个立交桥的过程NetworkLayer4-7网络层7连接建立(*)在某些网络体系结构中第三重要的功能:ATM,帧中继,X.25在数据报流动之前,两台主机和其间的路由器创建虚拟连接需要路由器参与网络层和运输层的连接服务:网络层:
在两台主机之间运输层:
在两个进程之间NetworkLayer4-8网络层8第4章
网络层4.1概述4.2虚电路和数据报网络4.3路由器的构成4.4IP:网际协议数据报格式IPv4编址NATICMPIPv64.5选路概念4.6选路算法链路状态距离矢量等级选路4.7互联网中选路RIPOSPFBGP4.8广播和多播选路NetworkLayer4-9网络层9网络层连接和无连接服务数据报网络提供网络层无连接服务虚电路网络提供网络层连接服务网络层与运输层服务的类比:服务:主机到主机无选择:网络提供连接或无连接服务,一般不会两种,数据报网络或虚电路网络实现:网络层服务在网络内部实现,运输层服务在端系统中实现NetworkLayer4-10网络层10虚电路在数据流动之前,建立呼叫;最后拆除每个分组携带VC标识符在源到目的地路径上的每台路由器都要参与虚电路的建立,每个路由器完全知道经过它的所有虚电路,为每条经过的连接维护维护状态链路、路由器资源(带宽、缓存)可能分配给VC“源到目的地路径与电话电路行为非常相似”NetworkLayer4-11网络层11虚电路信令协议用于建立、维护和拆除VC,用于ATM、帧中继、X.25网络中三个阶段:虚电路建立、数据传送、虚电路拆除路由器根据虚电路号转发分组应用运输网络数据链路物理应用运输网络数据链路物理1.发起呼叫2.入呼叫3.接受呼叫4.呼叫已连接5.数据流开始6.接收数据NetworkLayer4-12网络层12转发表(*)122232132VC号接口号入接口入VC# 出接口出VC#11222226311837217197387…………西北路由器中的转发表:路由器维护连接状态信息!NetworkLayer4-13网络层13数据报网络在网络层无呼叫建立路由器:没有端到端连接的状态无网络级“连接”的概念分组使用目的主机地址转发在相同源和目的对可能采用不同的路径应用运输网络数据链路物理应用运输网络数据链路物理1.发送数据2.接收数据NetworkLayer4-14网络层14数据报网络示意图H1A分组交换网BDECH5H6H4H2H3H1向H5
发送分组H2向H6
发送分组注意分组路径的变化!结点交换机主机NetworkLayer4-15网络层15转发表
目的地址范围
链路接口11001000000101110001000000000000
到01100100000010111000101111111111111001000000101110001100000000000
到11100100000010111000110001111111111001000000101110001100100000000
到211001000000101110001111111111111
其他340亿可能的项NetworkLayer4-16网络层16最长前缀匹配
前缀匹配
链路接口110010000001011100010011001000000101110001100011100100000010111000112otherwise3目的地址:11001000000101110001100010101010例子目的地址:11001000000101110001011010100001哪个接口?哪个接口?NetworkLayer4-17网络层17数据报或虚电路网络:因特网在计算机间交换数据“弹性”服务,无严格的定时要求“智能”端系统(计算机)能够适应,执行控制,差错控制网络内部简单,“边缘”复杂互联不同许多链路类型网络不同的特点难以提供统一服务新服务容易应用ATM从电话技术演化来人类交谈:严格定时,可靠性要求对确保服务的需求“哑”端系统电话网络内部复杂NetworkLayer4-18网络层18第4章
网络层4.1概述4.2虚电路和数据报网络4.3路由器的构成4.4IP:网际协议数据报格式IPv4编址NATICMPIPv64.5选路算法链路状态距离矢量等级选路4.6互联网中选路RIPOSPFBGP4.7广播和多播选路NetworkLayer4-19网络层19路由器在网际互连中的作用当主机A要向另一个主机B发送数据报时,先要检查目的主机B是否与源主机A连接在同一个网络上。如果是,就将数据报直接交付给目的主机B而不需要通过路由器。但如果目的主机与源主机A不是连接在同一个网络上,则应将数据报发送给本网络上的某个路由器,由该路由器按照转发表指出的路由将数据报转发给下一个路由器。这就叫作间接交付。
NetworkLayer4-20网络层20直接交付和间接交付间接交付间接交付间接交付ABC直接交付直接交付直接交付不需要使用路由器但间接交付就必须使用路由器NetworkLayer4-21网络层21路由器体系结构概述(*)路由器的两个关键功能:
运行选路算法/协议(RIP,OSPF,BGP)从入链路到出链路转发数据报NetworkLayer4-22网络层22输入端口功能(*)分散式交换:
给定数据报目的地址,在输入端口内存中使用转发表查找输出端口目的:以“线速”完成输入端口处理排队:如果数据报到达比交换结构的转发速率快物理层:比特级接收数据链路层:如以太网参见第5章NetworkLayer4-23网络层23输出端口当数据报来自交换结构比传输速率更快时,需要缓存调度安排为了传输在排队数据报之间选择交换结构排队:缓存管理数据链路处理(协议、拆封)线路端接NetworkLayer4-24网络层24第4章
网络层4.1概述4.2虚电路和数据报网络4.3路由器的构成4.4IP:网际协议数据报格式IPv4编址NATICMPIPv64.5选路算法链路状态距离矢量等级选路4.6互联网中选路RIPOSPFBGP4.7广播和多播选路NetworkLayer4-25网络层25TheInternet网络层转发表主机、路由器的网络层功能:选路协议路径选择RIP,OSPF,BGPIP协议编址规则数据报格式分组处理规则ICMP协议差错报告路由器“信令”运输层:TCP,UDP链路层物理层网络层NetworkLayer4-26网络层26IP数据报格式ver长度32bits数据(变长,通常是一个TCP或UDP段)16-bit标识符互联网检查和寿命32bit源IP地址IP协议版本号首部长度(字节)剩余跳的最大数(在每台路由器减1)对分段/重装总数据报长度(字节)较高层协议交付的负载首部长度服务类型数据的“类型”标志段偏移高层32bit目的IP地址选项(如果有的话)很少使用TCP的开销多大?20字节TCP20字节IP=40字节+应用层开销NetworkLayer4-27网络层27IP数据报的格式(摘自谢的PPT)一个IP数据报由首部和数据两部分组成。首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。可选字段的存在对路由器的性能有不利影响NetworkLayer4-28网络层28固定部分可变部分04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特数据部分首部传送IP数据报首部NetworkLayer4-29网络层29可变部分首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特数据部分首部传送IP数据报固定部分NetworkLayer4-30网络层30首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特数据部分首部传送IP数据报固定部分可变部分NetworkLayer4-31网络层31首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分版本——占4bit,指IP协议的版本目前的IP协议版本号为4(即IPv4)NetworkLayer4-32网络层32首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分首部长度——占4bit,可表示的最大数值是15个单位(一个单位为4字节)因此IP的首部长度的最大值是60字节。NetworkLayer4-33网络层33首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分服务类型——占8bit,用来获得更好的服务这个字段以前一直没有被人们使用NetworkLayer4-34网络层34首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分总长度——占16bit,指首部和数据之和的长度,单位为字节,因此数据报的最大长度为65535字节。总长度必须不超过最大传送单元MTU。
NetworkLayer4-35网络层35首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分标识(identification)占16bit,它是一个计数器,用来产生数据报的标识。NetworkLayer4-36网络层36首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分标志1或者0,0表示最后一个数据报,1表示后面还有。NetworkLayer4-37网络层37首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分片偏移(12bit)指出:较长的分组在分片后某片在原分组中的相对位置。片偏移以8个字节为偏移单位。NetworkLayer4-38网络层38IP分片和重新组装网络链路有MTU(最大传输长度)–最大可能的链路级帧不同的链路类型,不同的在网络中,大IP数据报被分割(“分段”)一个数据报变为几个数据报“重新装配”仅在最后目的地IP首部比特用于标识、排序相关段分段:输入:
一个大的数据报输出:3个小的数据报reassemblyNetworkLayer4-39网络层39IP分片和重新组装ID=x偏移=0段标志=0长度=4000ID=x偏移=0段标志=1长度=1500ID=x偏移=185段标志=1长度=1500ID=x偏移=370段标志=0长度=1040一个大数据报变为几个较小的数据报例子4000字节数据报MTU=1500字节在数据字段1480字节偏移=1480/8NetworkLayer4-40网络层40偏移=0/8=0标志=1偏移=0/8=0偏移=1400/8=175标志=1偏移=2800/8=350标志=0140028003799279913993799需分片的数据报数据报片1首部数据部分共3800字节首部1首部2首部3字节0数据报片2数据报片314002800字节0IP数据报分片的举例NetworkLayer4-41网络层41首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分生存时间(8bit)记为TTL(TimeToLive)数据报在网络中的寿命,其单位为秒。NetworkLayer4-42网络层42首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分协议(8bit)字段指出此数据报携带的数据使用何种协议以便目的主机的IP层将数据部分上交给哪个处理过程NetworkLayer4-43网络层43运输层网络层首部TCPUDPICMPIGMPOSPF数据部分IP数据报协议字段指出应将数据部分交给哪一个进程NetworkLayer4-44网络层44首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分首部检验和(16bit)字段只检验数据报的首部不包括数据部分。这里不采用
CRC
检验码而采用简单的计算方法。NetworkLayer4-45网络层45发送端接收端16bit字116bit字2置为全0检验和16bit字n16bit求和……取反码数据报首部IP数据报16bit检验和16bit字116bit字216bit检验和16bit字n16bit求和16bit结果……取反码数据部分若结果为0,则保留;否则,丢弃该数据报数据部分不参与检验和的计算NetworkLayer4-46网络层46首部04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度01234567DTRC未用优先级数据部分比特固定部分可变部分源地址和目的地址都各占4字节NetworkLayer4-47网络层47IP数据报首部的可变部分IP首部的可变部分就是一个选项字段,很少使用,可用于记录时间戳,记录所经路径,定义访问的路由器列表选项字段的长度可变,从1个字节到40个字节不等,取决于所选择的项目。增加首部的可变部分是为了增加IP数据报的功能,但这同时也使得IP数据报的首部长度成为可变的。所以不能事先确定数据从哪个什么地方开始,有些数据报要求处理选项,有些不要求,这就增加了每一个路由器处理数据报的开销。NetworkLayer4-48网络层48第4章
网络层4.1概述4.2虚电路和数据报网络4.3路由器的构成4.4IP:网际协议数据报格式IPv4编址NATICMPIPv64.5选路算法链路状态距离矢量等级选路4.6互联网中选路RIPOSPFBGP4.7广播和多播选路网络层49IP编址:概述IP地址:
对主机、路由器接口的32-bit标识符接口:
在主机/路由器和物理链路之间的连接路由器通常具有多个接口主机也可能具有多个接口IP编址与每个接口相联系因此IP地址对应的是接口不是主机或者路由器7=11011111000000010000000100000001223111网络层50点分十进制记法10000000000010110000001100011111机器中存放的IP地址是32bit二进制代码10000000000010110000001100011111每隔8bit插入一个空格能够提高可读性采用点分十进制记法则进一步提高可读性1128
11331将每8bit的二进制数转换为十进制数网络层51子网IP地址:
子网部分(高阶比特)主机部分(低阶比特)什么是子网?具有相同的IP地址子网部分的设备接口能够物理上互相到达而没有中间路由器7网络由3个子网组成LAN网络层52子网/24/24/24判断方法为了决定子网,从其主机或路由器分离每个接口,生成孤立网络的岛。每个孤立的网络被称为一个子网子网掩码:/24网络层53子网多少个子网?7网络层54互联网中的IP地址B222.1.1.R1222.1.2.R3R2222.1.3.LAN3N3N222.1.6.N1LAN2LAN1互联网在同一个局域网上的主机或路由器的IP地址中的子网部分是一样的。网络层55互联网中的IP地址B222.1.1.R1222.1.2.R3R2222.1.3.LAN3N3N222.1.6.N1LAN2LAN1互联网在同一个局域网上的主机或路由器的IP地址中的子网部分是一样的。网络层56互联网中的IP地址B222.1.1.R1222.1.2.R3R2222.1.3.LAN3N3N222.1.6.N1LAN2LAN1互联网路由器每一个接口都有一个IP地址它们的子网部分各不相同网络层57IP编址策略:CIDR无类型域间选路(ClasslessInterDomainRouting,CIDR)任意长的地址的子网部分地址格式:a.b.c.d/x,其中x是地址子网部分的比特长度1100100000010111
0001000000000000子网部分主机部分/23IP编址策略:CIDRa.b.c.d/x的地址的最高x部分比特构成IP地址的网络部分,常称为该地址的前缀一个组织通常分配一块连续的地址,即具有相同地址前缀的一段地址组织外部的路由器转发数据时仅仅需要考虑IP地址的前缀部分的x比特在组织内部路由器转发分组的时候才需要考虑剩下的比特网络层59IP编址:如何得到一个地址?问题:网络怎样得到IP地址的子网部分?回答:
从它的ISP的地址空间得到分配的部分ISP的块1001000000101110001000000000000/20组织0 11001000000101110001000000000000/23组织111001000000101110001001000000000/23组织211001000000101110001010000000000/23...…..….….组织711001000000101110001111000000000/23
聚合网络层60等级编址:路由聚合、地址聚合“向我发送地址始于/20的任何分组”/23/23/23Fly-By-Night-ISP组织0组织7因特网组织1ISPs-R-Us“向我发送地址始于/16的任何分组”/23组织2......等级编址允许有效的通告选路信息:网络层61等级编址:更为特定的路由ISPs-R-Us具有更为特定的路由到组织1,最长前缀匹配“向我发送地址始于/20的任何分组”/23/23/23Fly-By-Night-ISP组织0组织7因特网组织1ISPs-R-Us“向我发送地址始于/16或/23的任何分组”/23组织2......网络层62IP编址:其他问题问题:ISP怎样得到地址块?回答:因特网名字与号码分配团体(InternetCorporationforAssignedNamesandNumbers,ICANN)分配地址管理DNS分配域名,调解争议IP编址:分类编址在CIDR采用之前,IP地址的网络部分是固定的8、16、24位,对应A、B、C类网络,称为分类编址但是这样编址方法地址空间的利用率比较低C类地址对很多组织来说小了B类地址对很多组织来说大了网络层64net-id24bithost-id24bitnet-id16bitnet-id8bitIP编址:分类编址0A类地址host-id16bitB类地址C类地址011host-id8bitD类地址1
1
1
0多播地址E类地址保留为今后使用1
1
1
1
001网络层65IP地址的使用范围
网络最大第一个最后一个每个网络类别网络数可用的可用的中最大的网络号网络号主机数
A126(27–2)112616,777,214B16,384(214)128.0191.25565,534C2,097,152(221)192.0.0223.255.255254网络层66特殊IP地址形式
直接广播地址受限广播地址“这个网的这个主机”地址
“这个网络上的特定主机”地址回送地址网络层67特殊IP地址形式网络号与主机号的32位全为1的地址为受限广播地址;用来将一个分组以广播方式发送给本网的所有主机;分组将被本网的所有主机将接受该分组,路由器则阻挡该分组通过。网络层68特殊IP地址形式回送地址是用于网络软件测试和本地进程间通信;TCP/IP协议规定:含网络号为127的分组不能出现在任何网络上;主机和路由器不能为该地址广播任何寻址信息。网络层69内网IP这种可以重复使用的IP地址就叫做专网IP(内网IP、私网IP),这种地址不能被路由器路由,有人把这种IP地址也叫做假IP地址。
范围包括:
A类:-55
B类:-55
C类:-55
一般的内网(局域网)大多采用这种地址。
而用得最多的就是192.168.0.x,这一段。网络层70IP编址:主机如何配置一个地址?问题:主机怎样得到IP地址?由系统管理员在文件中的硬编码Windows:控制面板->网络->配置->TCP/IP->性质UNIX:/etc/rc.config动态主机配置协议(DynamicHostConfigurationProtocolDHCP):
动态地从服务器得到地址“即插即用”地址不够专有移动计算的出现NetworkLayer4-71DHCP:动态主机配置协议Goal:
主机加入网络的时候可以动态的获得IP地址
重复使用地址对移动用户的支持DHCP工作过程,4个步骤:hostbroadcasts“DHCPdiscover”msgDHCPserverrespondswith“DHCPoffer”msghostrequestsIPaddress:“DHCPrequest”msgDHCPserversendsaddress:“DHCPack”msgNetworkLayer4-72DHCPclient-serverscenario7ABE
DHCP
server
arrivingDHCPclientneedsaddressinthisnetworkNetworkLayer4-73DHCPclient-serverscenarioDHCPserver:arrivingclienttimeDHCPdiscoversrc:,68dest.:55,67yiaddr:transactionID:654DHCPoffersrc:,67dest:55,68yiaddrr:transactionID:654Lifetime:3600secsDHCPrequestsrc:,68dest::55,67yiaddrr:transactionID:655Lifetime:3600secsDHCPACKsrc:,67dest:55,68yiaddrr:transactionID:655Lifetime:3600secs数据链路层与局域网74DHCP缺点人工配置自动配置优点必须在每一个客户机上输入一个IP地址用户可能输入错误的或非法的IP地址用了错误的IP地址可能导致网络问题计算机频繁地在子网间移动,也会加大对网络进行日常管理所需要的开销DHCP服务器为DHCP客户机自动提供所有必要的配置信息可以确保网络客户机使用正确的配置信息消除了网络问题的一个常见的来源DHCP还自动更新客户机配置信息,以反映网络结构的变化网络层75第4章
网络层4.1概述4.2虚电路和数据报网络4.3路由器的构成4.4IP:网际协议数据报格式IPv4编址NATICMPIPv64.5选路算法链路状态距离矢量等级选路4.6互联网中选路RIPOSPFBGP4.7广播和多播选路网络层76私有地址(内部地址)10.x.x.x、172.16.x.x~172.31.x.x、192.168.x.x这些地址被大量用于企业内部网络中。在Internet上,这类地址是不能出现的。因为可能有很多内部网络都使用这些地址,如果都出现在Internet上会混淆网络层77NAT:网络地址转换本地网络(如归属网络)10.0.0/24因特网其他部分具有该网源或目的的数据报都有10.0.0/24的地址(照常)所有数据报本地离开本地网络具有相同的单一源NATIP地址:,不同的源端口号网络层78NAT:网络地址转换动机:
外部关注本地网络只使用的一个IP地址:对ISP无需分配地址范围:对所有设备只用一个IP地址能够改变本地网络中的设备地址,而不必通知外部对外隐藏了本地网络的细节,本地网络中的设备不显式地可寻址、由外部所见(增强安全性)网络层79NAT:网络地址转换实现:NAT路由器必须:
出数据报:
每个外出的数据报用(NATIP地址,新port#)
代替(源IP地址,port#)...远程的客户机/路由器的响应,将用(NATIP地址,新port#)作为目的地址
记住(在NAT转换表中)每个(源IP地址,port#)到(NATIP地址,新port#)转换对
入数据报:
对每个入数据报的地址字段用存储在NAT表中的(源IP地址,port#)替代对应的
(NATIP地址,新port#)网络层80NAT:网络地址转换S:,3345D:86,8011:
主机
发送数据报到128.119.40,80NAT转换表WAN侧地址LAN侧地址,5001,3345…………S:86,80D:,33454S:,5001D:86,8022:NAT路由器改变数据报源地址从,3345到,5001,更新表S:86,80D:,500133:
回答到达的目的地址:,50014:NAT路由器改变数据报目的地址从,5001到,3345
网络层81NAT:网络地址转换16-bit端口号字段:NAT协议可以支持支持60,000并行的使用路由器外部侧IP的连接!NAT引起争议:违反了分层原则端口号是用于传输层的路由器通常应该只处理下面3层违反了端到端原则主机之间应该相互直接通话地址短缺应当由IPv6来解决NAT穿越问题(不讲)请大家思考在内网设置一个HTTP或者FTP服务器,怎么才能对外提供服务?对P2P应用程序的妨碍一个对等方,两个对等方使用私有地址的情况NetworkLayer4-83NAT穿越问题客户机想与位于NAT路由器后面的服务器(地址为)建立连接,问题是:服务器地址
是一个内部局域网地址,不能在因特网上面作为目的地址
只有NAT的WAN地址
对外是可见的NATrouterClient?NAT穿越问题办法1:连接反转A先通过C和B联系B建立到A的TCP连接NATrouterClient?ACBNetworkLayer4-85NAT穿越问题办法2:静态配置-静态配置NAT路由器某个端口号和服务器端口号之间的映射e.g.,(,port2500)alwaysforwardedtoport25000NATrouterClient?port2500port25000NetworkLayer4-86NAT穿越问题办法3:动态配置-NAT穿越越来越多的由通用即插即用协议UPnP提供,允许逐级发现并且配置邻近的NAT。
UPnP可以为应用程序的端口号请求一个NAT映射,该映射位于(内部IP,端口)和(外部IP,端口)之间应用程序将(外部IP,端口)向外部通告是P2P程序的救世主NATrouterIGDNetworkLayer4-87NAT穿越问题办法4:中继(usedinSkype)NATedserverestablishesconnectiontorelayExternalclientconnectstorelayrelaybridgespacketsbetweentoconnectionsNATrouterClient1.connectiontorelayinitiatedbyNATtedhost2.connectiontorelayinitiatedbyclient3.relayingestablished网络层88第4章
网络层4.1概述4.2虚电路和数据报网络4.3路由器的构成4.4IP:网际协议数据报格式IPv4编址NATICMP(*)IPv6(*)4.5选路算法链路状态(*)距离矢量等级选路(*)4.6互联网中选路(*)RIPOSPFBGP4.7广播和多播选路(*)网络层89ICMP:互联网控制报文协议由主机和路由器用于网络级信息的通信差错报告:不可达主机,网络,端口,协议回声请求/回答(由ping使用)在IP数据报中携带ICMP报文ICMP报文:
类型、编码以及引起差错的IP数据报的首部和前8字节数据类型
编码
描述00回声回答(ping)30目的网络不可达31目的主机不可达32目的协议不可达33目的端口不可达36目的网络未知37目的主机未知40源抑制(拥塞控制—未使用)80回声请求(ping)90路由通告100路由器发现110TTL过期120坏的IP首部网络层90Traceroute和ICMP源向目的地发送一系列UDP段第一个TTL=1第二个TTL=2,等不可能的端口号当第n个数据报到达第n和路由器:路由器丢弃数据报并向源发送一个ICMP报文(类型3,编码0)报文包括路由器的名字和IP地址当ICMP报文到达,源计算RTTTraceroute执行上述过程3次停止规则UDP段最终到达目的地主机目的地返回ICMP“目的端口不可达”分组(类型3,编码3)当源得到该ICMP,停止网络层91TTL=1的报文在此产生ICMP报告TTL=3的报文在此产生ICMP报告TTL=4的报文在此产生ICMP报告TTL=2的报文在此产生ICMP报告网络层92第4章
网络层4.1概述4.2虚电路和数据报网络4.3路由器的构成4.4IP:网际协议数据报格式IPv4编址NATICMPIPv6(*)4.5选路概念4.6选路算法链路状态距离矢量等级选路4.7互联网中选路RIPOSPFBGP4.8广播和多播选路网络层93IPv6初始动机:
32-bit地址空间很快将会被完全分配完要解决IP地址耗尽的问题的措施:采用无类别编址CIDR,使IP地址的分配更加合理。采用网络地址转换NAT方法以节省全球IP地址。采用具有更大地址空间的新版本的IP协议IPv6。附加的动机:首部格式帮助速率处理/转发首部变化以促进QoS网络层94IPv6数据报的一般形式基本首部扩展首部1扩展首部N
…数据部分选项IPv6数据报有效载荷网络层95IPv6数据报首部与
IPv4数据报首部的对比04816192431版本标志生存时间协议标识服务类型总长度片偏移填充首部检验和源地址目的地址可选字段(长度可变)比特首部长度固定部分20字节可变部分IPv4首部取消有变化上面是IPv4数据报的首部网络层96041631版本比特目的
地址源地址下一个首部流标号12通信量类(128bit)(128bit)有效载荷长度跳数限制24扩展首部/数据IPv6的基本首部(40B)IPv6的有效载荷(至64KB)网络层97041631版本比特目的
地址源地址下一个首部流标号12通信量类(128bit)(128bit)有效载荷长度跳数限制24扩展首部/数据IPv6的基本首部(40B)IPv6的有效载荷(至64KB)网络层98041631版本比特目的
地址源地址下一个首部流标号12通信量类(128bit)(128bit)有效载荷长度跳数限制24IPv6的基本首部40B版本(version)——4bit。它指明了协议的版本,对IPv6该字段总是6。网络层99041631版本比特目的
地址源地址下一个首部流标号12通信量类(128bit)(128bit)有效载荷长度跳数限制24IPv6的基本首部40B通信量类(trafficclass)——8bit。这是为了区分不同的IPv6数据报的类别或优先级。目前正在进行不同的通信量类性能的实验。网络层100041631版本比特目的
地址源地址下一个首部流标号12通信量类(128bit)(128bit)有效载荷长度跳数限制24IPv6的基本首部40B流标号(flowlabel)——20bit。“流”是互联网络上从特定源点到特定终点的一系列数据报,“流”所经过的路径上的路由器都保证指明的服务质量。所有属于同一个流的数据报都具有同样的流标号。网络层101041631版本比特目的
地址源地址下一个首部流标号12通信量类(128bit)(128bit)有效载荷长度跳数限制24IPv6的基本首部40B有效载荷长度(payloadlength)——16bit。它指明IPv6数据报除基本首部以外的字节数(所有扩展首部都算在有效载荷之内),其最大值是64KB。网络层102041631版本比特目的
地址源地址下一个首部流标号12通信量类(128bit)(128bit)有效载荷长度跳数限制24IPv6的基本首部40B下一个首部(nextheader)——8bit。它相当于IPv4的协议字段或可选字段。网络层103041631版本比特目的
地址源地址下一个首部流标号12通信量类(128bit)(128bit)有效载荷长度跳数限制24IPv6的基本首部40B跳数限制(hoplimit)——8bit。源站在数据报发出时即设定跳数限制。路由器在转发数据报时将跳数限制字段中的值减1。当跳数限制的值为零时,就要将此数据报丢弃。网络层104041631版本比特目的
地址源地址下一个首部流标号12通信量类(128bit)(128bit)有效载荷长度跳数限制24IPv6的基本首部40B源地址——128bit。是数据报的发送站的IP地址。网络层105041631版本比特目的
地址源地址下一个首部流标号12通信量类(128bit)(128bit)有效载荷长度跳数限制24IPv6的基本首部40B目的地址——128bit。是数据报的接收站的IP地址。网络层106与IPv4的变化扩大的地址容量:32-》128比特,任播地址anycastaddress简单高效的40字节首部流标签与优先级网络层107与IPv4的变化(续)分片重组:不允许中间路由器分片和重组,由发送方解决检查和:
完全去除,以减小每跳的处理时间选项:
允许,但在首部之外,由“下一个首部”字段指示网络层108从IPv4到IPv6的迁移向IPv6过渡只能采用逐步演进的办法,同时,还必须使新安装的IPv6系统能够向后兼容。IPv6系统必须能够接收和转发IPv4分组,并且能够为IPv4分组选择路由。双协议栈(dualstack)是指在完全过渡到IPv6之前,使一部分主机(或路由器)装有两个协议栈,一个IPv4和一个IPv6。双栈方法:IPv6节点也有IPv4的实现隧道方法:
在IPv4路由器之间IPv6数据报作为IPv4数据报的负载网络层109双协议栈IPv6数据链路层物理层数据链路层物理层IPv6IPv4/IPv6双协议栈IPv4IPv4IPv6TCP或UDP应用层TCP或UDP应用层TCP或UDP应用层数据链路层物理层IPv4和IPv4通信和IPv6通信网络层110用双协议栈进行
从IPv4到IPv6的过渡双协议栈IPv6/IPv4IPv6IPv6IPv4网络ABCDEF流标号:X源地址:A目的地址:F……
数据部分流标号:无源地址:A目的地址:F……
数据部分双协议栈IPv6/IPv4…IPv6数据报IPv6数据报源地址:A目的地址:F……数据部分源地址:A目的地址:F……数据部分IPv4数据报某些信息丢失网络层111IPv4网络IPv6IPv6ABCDEF…IPv4数据报IPv4数据报IPv4网络IPv6IPv6ABEF隧道源地址:B目的地址:EIPv6数据报双协议栈IPv6/IPv4双协议栈IPv6/IPv4双协议栈IPv6/IPv4双协议栈IPv6/IPv4IPv4网络流标号:X源地址:A目的地址:F……
数据部分IPv6数据报流标号:X源地址:A目的地址:F……
数据部分IPv6数据报源地址:B目的地址:EIPv6数据报使用隧道技术从IPv4到IPv6过渡网络层112从IPv4到IPv6的迁移IPv6的采用是一个缓慢过程要改变网络层协议是及其困难的,而应用层协议修改相对比较简单房子的基石和房子的刷漆网络层113第4章
网络层4.1概述4.2虚电路和数据报网络4.3路由器的构成4.4IP:网际协议数据报格式IPv4编址NATICMP(*)IPv6(*)4.5选路算法链路状态(*)距离矢量等级选路(*)4.6互联网中选路(*)RIPOSPFBGP4.7广播和多播选路(*)网络层1141230111到达分组首部的值选路算法本地转发表首部值输出链路01000101011110013221选路和转发相互影响网络层115选路默认路由器、第一跳路由器源路由器、目的路由器为一个分组从源主机到目的主机的选路问题可归结为从源路由器到目的路由器的选路问题uyxwvz2213112535图:G=(N,E)N=节点集合={u,v,w,x,y,z}E=边集合={(u,v),(u,x),(v,x),(v,w),(x,w),(x,y),(w,y),(w,z),(y,z)}这里节点是路由器,边是物理链路邻居、路径图论抽象图论抽象uyxwvz2213112535
c(x,y)=边(x,y)的费用-e.g.,c(w,z)=5费用可以是1,或者和带宽拥塞等相关
路径费用(x1,x2,x3,…,xp)=c(x1,x2)+c(x2,x3)+…+c(xp-1,xp)Question:What’stheleast-costpath(最低费用路径)betweenuandz?路由算法:找到最低费用路径的算法网络层118选路算法分类全局的或分散的信息?分散的:
路由器知道物理相连的邻居,到邻居的链路费用,与邻居交换信息
以迭代的、分布式的方式计算最低费用路径 “距离矢量”算法(DV)全局的:
所有路由器具有完全的拓扑、链路费用信息
用完整的、全局的网络知识来计算最低费用路径 “链路状态”算法(LS)静态的或动态的?静态:
路由随时间缓慢变化动态:
路由更快地变化周期的更新适应链路费用变化对负载是否敏感?负载敏感负载迟钝网络层119第4章
网络层4.1概述4.2虚电路和数据报网络4.3路由器的构成4.4IP:网际协议数据报格式IPv4编址NATICMPIPv64.5选路算法链路状态(*)距离矢量等级选路4.6互联网中选路RIPOSPFBGP4.7广播和多播选路网络层120ALink-State选路算法Dijkstra算法所有节
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年临时工派遣合同样本
- 信托公司委托贷款合同
- 缆索吊机租赁合同样本
- 标准家教服务合同范本
- 2024标准附期限借款合同样本
- 2024模板采购合同范本
- 2024工程装修简易合同样本
- 物业租赁合同模板
- 技术服务合同中的保密义务与条款
- 建材产品购销协议样本
- 民法典讲座-继承篇
- 外包施工单位入厂安全培训(通用)
- 糖尿病健康知识宣教课件
- 客户接触点管理课件
- Python语言学习通超星课后章节答案期末考试题库2023年
- 医学-心脏骤停急救培训-心脏骤停急救教学课件
- 高中英语-Book 1 Unit 4 Click for a friend教学课件设计
- 年产30万吨碳酸钙粉建设项目可行性研究报告
- 主题班会如何对待厌学情绪(初二) 省赛获奖 省赛获奖
- 初中数学北师大版七年级上册课件5-4 应用一元一次方程-打折销售
- 0-6岁儿童健康管理服务规范(第三版)
评论
0/150
提交评论