欢迎大家光临【无师自通-教程网】您的到来是我们的荣幸。本站提供
photoshop教程
,
ps教程
,
flash教程
,
cad教程
,
网页制作教程
,
excel教程
,
asp教程
,
vb教程
,
3d教程
,
c语言教程
,
html教程
,
coreldraw教程
,
dreamweaver教程
,
java教程
,
3dmax教程
等各种教程为主题的内容和服务,相信您会在这里找到您所需要的东东。无师自通伴您一生-谢谢您的光临!!
网站地图
设为首页
简繁切换
加入收藏
栏目待定
留言本站
您现在的位置:
无师自通-教程网
>>
网络原理
>>
IPv6
>> 教程正文
没有公告
图形图像教程
photoshop
Flash
3DS Max
CorelDraw
Fireworks
Illustrator
Maya
AutoCAD
网络应用教程
局域网教程
综合布线
系统集成
无盘网络组建
网络产品资料
网络风险评估
光纤通信
网络接入
程序设计教程
C语言教程
vb教程
C#教程
VC语言教程
C++教程
Java教程
数据库教程
Delphi教程
操作系统教程
WindowsXP
Linux
Win2003
Vista
Win2000
苹果系统
Dos教程
FreeBSD
办公软件教程
Word教程
Excel教程
Powerpoint
Wps教程
Office视频
系统相关
系统工具
杀毒查毒
WEB开发教程
Asp教程
Jsp教程
Php教程
Xml教程
Html教程
CSS教程
CGI-Perl教程
ASP.NET
教程: IPV6教程-基础-TCP/IP网络互联简介
教程: IPV6教程-基础-TCP/IP网络互联简介
——数据链路层的协议。这一步比较棘手:如果IP网络软件确定数据的目的地是在同一网络上的另一系统,则在数据链路层将包寻址到目的地。但是,目的地在其他网络的数据仍必须以与源主机在同一物理网络上的某个系统为目的地,该数据没有其他的出路。
上面忽略的一个因素是称为路由器的系统。这是一个多宿主机,它同时连接在两个或多个物理网络上,并通过程序设计为可以将包转发到远端网络上。这意味着当有数据发往远端网络时, IP软件会指定数据链路层以与源主机在同一物理网络的路由器地址作为该数据的目的地址。网际层的源地址和目的地址保持不变,但是如果目的主机在外部网络上,数据链路层的目的地址将与目的主机不同。
现在继续跟踪数据在协议栈中向上传递的过程。当数据链路层报文到达其目的地时,接收系统将去掉其数据链路层头并检查其网际层头。如果该头中的地址与接收主机地址相同,将继续去掉该头并将数据上交传输层。但是,如果目的地址与接收主机地址不同,或者接收
主机是一个路由器,将重新对该报文打包并转发至适当的网络。
当传输层获得该消息时,它将去掉头并将净荷上交给适当的应用。应用层在去掉头后对数据进行处理。在数据离开发送方之后直至到达接收方之前,低层操作的协议不对数据中的净荷进行处理。虽然可能有这样那样的完整性检查,除了高层提供的头之外,低层协议无需
查看其他部分的数据。这种机制使得连接在不同网络上的不同主机可以进行无缝互操作。只要所有的中间系统能正常操作,且只要两个端系统使用的应用软件可以互操作,系统类型、网络体系结构或系统的物理输出与此无关。
2.3 IP
1 9 8 1年完成的RFC 791定义了当前使用的IP。但是,从那时起又有许多R F C阐明并定义了IPv4寻址议题、在某种特定网络媒体上运行的IP以及IPv4的服务类型位( TO S )。感兴趣的读者如果想了解2 0年前定义的IP协议,可以参考RFC 791。该协议的工作主要是定义了在处理数据时可以应用的简单规则、帮助处理数据的一组头以及寻址机制。在此进行一些扼要解释。
2.3.1 IP寻址
IP地址体系结构依靠高度结构化的地址,地址空间由其长度( 32位)决定。所有IP地址均包括3 2位或4个字节, IP领域也常使用术语八位组(octet)。这些地址被分为不同类,其中定义了如何对地址进行处理。还有一些地址具有特殊含义。
1. IP地址结构
IP地址是等级地址,通常从左到右读,高阶位/字节即是最高有效位/字节。举例说明,地址前几位说明地址所属的地址类;前几个字节说明该地址所属的网络。最低有效字节(或位)将地址限定为特定的主机。这种结构意味着向网络外选路时可以忽略单个主机而只需跟踪整个网络的位置。
3 2位地址被分为两部分:第一部分是网络地址,第二部分是本地地址。在本地网络外,只有网络地址是重要的;而在本地网络内,因为所有主机都连接在同一个本地网络上,只有本地地址是重要的而网络地址则无关紧要。
IP网络地址分发给多个机构,由机构自己为机构内部主机分配本地地址。这意味着某个特定网络内的本地地址可能没有全部分配出去。这样就削减了总数为2 3 2的地址空间的可用地址数。
2. IP 地址分类
最初IP地址分为三类: A、B和C,用于为不同类别网络上的主机编号。后来在IP组播成为标准后又加入了第四类地址,称为D类,但该地址即不能用于单个主机也不能用于特定网络。A、B、C类地址渐渐被称作单播(unicast),意味着其中每个地址只标识单个主机,且来自/发往某个单播地址的数据是从一个主机发往另一个主机的。D类地址用于组播传输,意味着可以有多于一台的主机接收发给某组播地址的数据,但组播传输仍然是由单个主机发起。
检查IP地址的前几位将有助于对地址进行分类。IP地址的分类如下:
• A类地址第一(高阶)位为0,网络由后续的七位定义。故第一个八位组用于网络地址而其余的三个八位组用于每个网络中的主机地址。这意味着最多有27即128个网络地址组合,而地址中剩余的2 4位可用于主机地址,这意味着可以有22 4即16 777 216个唯一主机标识符(真正的最大值会有一点减少,参见后续讨论)。这意味着A类地址可以由第一个八位组的值来确定。任何一个0到1 2 7间的网络地址均是一个A类地址。
• B类地址前两位为10,网络由后续1 4位定义。故前两个八位组用于网络地址而其余的两个八位组用于每个网络中的主机地址。这意味着最多有214即16384个网络地址组合,而每个网络中的主机数不能超过216即65536(真正的最大值会有一点减少,参见后续讨论)。
这意味着B类地址可以由第一个八位组的值来确定。任何一个128到191间的网络地址是一个B类地址。
• C类地址前三位为11 0,网络由后面的2 1位定义。故前三个八位组用于网络地址而其余的一个八位组用于每个网络中的主机地址。这意味着最多有22 1即2 097 152个网络地址组合,而每个网络中的主机数不能超过28即256(真正的最大值会有一点减少,参见后续讨论)。这意味着C类地址可以由第一个八位组的值来确定。任何一个1 9 2到2 2 3间的网络地址是一个C类地址。
• D类地址前四位为111 0。组播中不使用网络地址的概念,因为任何网络上的主机无论是否在同一网络上均可接收组播。这意味着最多有22 8即268 435 456个组播地址组合,而所有组播地址可以由第一个八位组的值来确定。任何一个第一个八位组在2 2 4到2 3 9间的网
络地址是一个组播地址。
• E类地址前五位为1111 0。在IPv4地址中保留该地址。
3. 特殊地址
由于有一些网络地址有特殊含义,导致可分配的网络地址的总数进一步减少。下列地址不能分配给实际的网络:
• 第一个八位组是1 2 7的地址(如1 2 7 . 0 . 0 . 1 )定义为回返地址。这个约定是必要的。对于所有发往回返地址的数据,网络栈将视为传输给自己的数据,尽管数据沿网络栈向下传递,并没有真正发送到网络媒体上。这种方法允许主机通过其网络接口与自己通信,这对于测试很有用。
• 地址中的主机部分为全1的地址是广播地址。网络上的所有主机都将接收以广播地址为目的地址的数据(参见后续关于广播的更详细的讨论)。
• 全0的地址表示本网络或本主机。换句话说,一个表示特定网络的A类地址若主机部分为全0表示在此特定网络上的本主机。同样,网络地址为全0 (如0 . 0 . 1 2 1 . 1 )表示在本网络上的特定主机。
这些限制减少了可用的网络和主机地址。回返地址占用了一个A类网络地址,否则1 2 7将是最高阶的A类地址。同样,对于全0地址( 0 . 0 . 0 . 0 )的保留又减少了一个A类地址。因此,有效的A类网络局限于第一个八位组为1 ~ 1 2 6,而不是0 ~ 1 2 7,即只有1 2 6个可能的A类地址。
保留地址也影响到每个网络上的唯一主机地址的数量。网络上的最大主机数变成了2n- 2,而不是2n,对于A类,n = 2 4;B类,n = 1 6;C类,n = 8。全0或全1地址分别保留下来,以用于本主机或广播地址。虽然这并没有显著的减少A类和B类地址的数量,但却把C类地址的数量从2 5 6减少到了2 5 4。这种地址丢失在网络划分为子网时变得更加严重(子网将在后面讨论)。
4. 广播
定义广播是为了提供一种机制使得网络上的所有主机可以接受同一条消息。广播很有用。它允许一台主机把某种变化通知网络上的所有其他主机。例如,服务器通过发送广播来通告自己的状态变化。另外,一些主机在不知把数据向哪里传输时也可以使用广播。例如,工作站在不知道服务器的名字和地址时可以广播一个请求来寻找服务器。
虽然广播地址已经存在,但IPv6将不实现广播地址。广播的主要问题在于对网络性能的负面影响。虽然在一个类似以太网的基带网络上广播产生的业务量不比单播多,但在其他配置中它的确导致了一些问题。扼要地说,对于诸如AT M之类在虚电路上传输的网络,广播很麻烦;在机构的互联网中广播必须经过路由器,这也会产生问题。广播的另一问题在于虽然它通常只与一小部分主机有关,却增加了每台主机必须处理的业务量。广播在网络中的消失将在第6章中详细讨论。
5. 子网
整个IP地址空间按等级组织,外部选路基于网络地址的第一部分进行,内部选路则由网络地址的所有者负责。这种方法使得路由表更加简单、高效。但是,处理3 2位地址空间和2 4位( A类网络)地址空间甚至1 6位( B类网络)地址空间的选路是有区别的,该区别在于是路由表太大以至于无法处理,还是仅仅是路由表太大以至于无法处理。由于大多数物理网络只能处理几百台主机的连接,A类或B类地址的所有者需要设计它们的内部体系结构。
划分子网正是对该问题的解决办法。子网允许网络管理者对其地址空间分级组织。在没有划分子网的网络中,路由器严格地按照网络类型来解释网络地址。如果第一个八位组指出是一个A类地址,路由器将忽略其他三个八位组,因为它们代表的是A类地址的主机地址。但
是,当划分子网后,网络上的主机将掩盖地址的主机部分中的一部分,并将被掩盖的部分作为子网。换句话说,如果把A类网络的第二个八位组划分为子网,路由器将把A类网络地址和主机部分中的第一个八位组组合作为两个八位组的网络地址。
划分子网的原因有以下几个。首先,它允许系统管理员按照自己的需要组织网络地址空间。其次,在该网络之外子网是不可见的。发给A类网络上主机的数据报总会到达进入该机构的同一个路由器,发送方无需了解(或关心)该数据进入目的机构的网络后将发生的事情。
即使在所有主机连接在同一个L A N的情况下仍可以划分子网,但如果网络上有不同的L A N (或网段),子网就更加重要。一个包含多个网段的互联网如果不划分子网将很难使用,甚至在某些情况下不可用。这样中继器、网桥、网关和路由器都将无法发挥最佳性能。由于目前大部分IP网络地址是C类地址,而C类地址很难高效地划分子网,因此这将会导致一些问题。C类地址中划分子网的缺点将在第3章中详细讨论,很简单,对于全0地址和全1地址的保留限制了C类地址划分子网后的每个子网的主机数量。
2.3.2 IP头
IP数据报非常简单,就是在数据块(称为净荷)的前面加上一个包头。IP数据报中的数据(包括包头中的数据)以3 2位( 4字节或4个八位组)的方式来组织。图2 - 3中展示了IP头字段的排列。从中可以看出,所有IP数据报头最小长度是5个字( 2 0字节),如果有其他选项的话,包头可能会更长。
1. IP头字段
IPv4头字段包括:
• 版本:这个4位字段指明当前使用的IP版本号。这是要处理的第一个字段,因为接收方必须了解如何解释包头中的其余部分。
• 头长度: IPv4的头长度的范围从5个4字节字到1 5个4字节字。头长度指明头中包含的4字节字的个数。可接受的最小值是5,最大值是1 5 (意味着包头有6 0字节长而选项占了其中4 0个字节)。
• 服务类型:这8位中只有前4位用来作为IP路由器的服务类型( TO S )请求。一个TO S位表示对如何处理数据报的优先选择:延时、吞吐量、可靠性或代价。在请求中把延时位置位意味着需要最小的延时;把吞吐量位置位意味着需要最大的吞吐量;把可靠性位置位意味着需要最高的可靠性。TO S在IPv4中的应用并不广泛,其原因将在第3章中讨论。由于通常对于路由没有选择余地,这些只是要考虑的建议,这些位由高层应用协议自动设置为合适的值。例如,远程网络会话要求最小延时,而文件传输要求最大吞吐量。
• 数据报长度:指的是包括包头在内的整个数据报的长度。该字段为1 6位,限定了IP数据报的长度最大为65 536字节。这个字段的必要性在于IP中没有关于“数据报结束”的字符或序列。网络主机可以使用数据报长度来确定一个数据报的结束和下一个数据报的开始。
• 数据报I D:这个唯一的1 6位标识符由产生它的主机指定给数据报。发送主机为它送出的每个数据报产生一个单独I D,但数据报在传输的过程中可能会分段,并经过不同的网络而到达目的地。分段后的数据报都共享同一个数据报I D,这将帮助接收主机对分段进行重装。
• 分段标志: 3位分段标志位中的第一位未用,其他两位用于控制数据报的分段方式。如果“不能分段( D F )”位设为1,意味着数据报在选路到目的地的过程中不会分段传输。如果数据报不分段就无法选路,试图分段的路由器将丢掉该数据报并向源主机发送错误报文。如果“更多段( M F )”位设为1,意味着该数据报是某两个或多个分段中的一个,但不是最后一段。如果M F位设为0,意味着后面没有其他分段或者是该数据报本来就没有分段。接收主机把标志位和分段偏移一起使用,以重组被分段的数据报。
• 分段偏移值:这个字段包含1 3位,它表示以8字节为单位,当前数据报相对于初始数据报的开头的位置。换句话说,数据报的第一个分段的偏移值为0;如果第二个分段中的数据从初始数据报开头的第8 0 0字节开始,该偏移值将是1 0 0。
• 生存期:这个8位字段指明数据报在进入互联网后能够存在多长时间,它以秒为单位。生存期( TTL )用于测量数据报在穿越互联网时允许存在的秒数。其最大值是2 5 5,当TTL 到达0时,包将被网络丢弃。设定TTL的本意是让每个路由器计算出处理每个数据包所
需的时间,然后从TTL中把这段时间减去。实际上,数据报穿越路由器的时间远小于1秒,因此路由器厂商在实现中采用了一个简单的减法:即在转发数据报时把TTL减1。在实践中, TTL代表的是数据报在被丢弃前能够穿越的最大跳数。
• 协议:指明数据报中携带的净荷类型,主要标识所使用的传输层协议:一般是TCP连接或UDP数据报。
• 头校验和:IPv4中不提供任何可靠服务,此校验和只针对包头。计算校验和时,把包头作为一系列16位二进制数字(校验和本身在计算时被设为0),并把它们加在一起,然后对结果取补码。这保证了头的正确性但并没有增加任何传输可靠性或对IP的差错检查。
• 源/目的IP地址:这些是源主机和目的主机的实际的32位( 4个八位组) IPv4地址。
2. IP 选项
顾名思义,IP选项是可选的且不经常使用,而且它们在IPv6中的形式根本不同。在IPv4中,IP选项主要用于网络测试和调试。
可用的选项大多与选路有关。例如,有的选项允许发送方指定数据报必须经过的路由,换句话说,定义了由哪些路由器来处理该数据报。还有的选项要求中转路由器记录其IP地址为数据报打上时间戳。一些选项,尤其是指出数据报必须经过哪些IP地址的报文要求在选项后附加一些数据。
指定路由、记录路由器或增加时间戳等选项增加了IP头的长度。如果使用的话, IP选项会以没有间隔字符的方式串在一起,如果它们的结尾不在字边界,即字节数不是4字节的整数倍,还将会加上填充数据。正如上述对头长度字段的描述,选项字段可以包括不超过40字节的选项和选项数据。IPv4的选项将在第3章中详细描述。
2.3.3 数据报的转移
理解数据报的转移过程意味着要理解IP寻址方案和IP数据报头字段。发送数据报的IP主机为数据报建立的IP头中包含自己的地址作为源地址,并包含目的主机IP地址。当这个数据报沿着网络协议栈到达链路层后,链路层必须确定向“同一个本地网络”上哪一台主机发送。换句话说,即便目的地在另一个网络上,数据报也必须发送给与发送方主机在同一个网络上的主机。
发送主机将检查目的地址。如果在同一个IP网络和子网上,该主机将使用地址解析协议(ARP)向本地网络发送广播,并把IP地址映射到链路层(如以太网)地址,然后将该数据报封装到数据链路层帧中并直接发送到目的地。但是,如果目的地在不同的网络或子网上,发送者必须确定向何处发送数据,使之可以转发到正确的网络。
这就是路由器的作用。发送方主机了解本地主机,也了解路由器。一般来说,一个子网上有一个或两个路由器用来转发包。发送主机把IP数据报(由初始发出,目的地址为最终目的地)封装在链路层帧中,该帧直接发给默认路由器,由此路由器把该帧拆开并检查IP数据报头。首先,它将检查版本号,IPv4中只允许该字段为版本4。它还将继续处理头字段中的其他部分,递减生存期字段并重新计算包头校验和。
路由器还会检查目的地址以确定它是否属于路由器直接连接的任一本地网络。如果是,路由器将使用ARP确定目的地的数据链路层地址,然后把该数据报封装在数据链路层帧中发送。如果不属于该路由器直接连接的任何网络,则将数据报转发给另一个路由器。继续此过程,直到数据报到达其目的网络为止。
图2-4中展示了这个工作过程。图中包含有两个不同机构,它们均连接在Internet上,且各自有三个网络。每个网络连接到一个路由器上,每个路由器同时连接三个网络和Internet。当主机X向主机Y发送数据时,该数据将首先被发送到网络A上以到达路由器A。当路由器A收到该数据报后,此路由器将该数据报拆开,确定其目的地不在与自己连接的任何网络(A、B或C)上。然后此路由器将该数据报转发到另一个路由器上(在本例中位于Internet中某处),该路由器将继续通过Internet转发数据报直至到达路由器B为止。一旦路由器B收到该数据报,该路由器拆包后发现其目的地址在自己的一个本地网络上,于是这个路由器使用ARP来查询网络以确定正确的数据链路层地址并将数据发送至该主机。
每个路由器都修改包中的生存期和头检验和。如果在发送者和接收者之间数据报必须分段,中间路由器还要修改数据报ID和分段偏移值。在原始数据报过大而无法穿越一个中间网络的时候,这种情况就可能发生。
2.4 ICMP
IP使用Internet控制报文协议(ICMP)为路由器提供机制,以便向要求通信路径信息或路由可达性状态信息的其他路由器或主机提供这些信息。ICMP还有其他功能,包括为其他节点通告当前时间和所用子网掩码的请求提供响应。ICMP向其他节点提供的信息非常有用,其中包括:
• 通知节点目的地不可达。
• 发送关于特定路由或路由器的差错或状态信息。
• 对可达节点状态的请求/应答。
[3]
[4] [5] [6]
上一页
[1]
[2]
[3]
[4]
[5]
[6]
下一页
教程录入:admin 责任编辑:admin
上一篇教程:
教程: IPV6教程-基础-IPv6和ICMPv6
下一篇教程:
教程: IPV6教程-基础-IPv6的地址表达方式、寻址模型和地址空间
【字体:
小
大
】【
发表评论
】【
加入收藏
】【
告诉好友
】【
打印此文
】【
关闭窗口
】
教程: IPV6教程-基础-TCP/IP网络…
教程: IPV6教程-基础-IPv6解决方…
教程: HUB-基础教程-集线器(HUB)…
教程: VLAN-基础教程-经典配置 V…
教程: TCP/IP教程-基础-广播和多…
教程: TCP/IP教程-基础-IGMP(Int…
|
设为首页
|
加入收藏
|
联系站长
|
友情链接
|
版权申明
|
管理登录
|
免责声明!本站资料大部分来自于互联网,其版权归原作者或其他合法者所有.如内容涉及或侵犯了您的权益,请通知本人,我将尽快处理!.欢迎您的光临。
辽ICP备07003958号