《IP网络多媒体通信技术及应用》课件第2章_第1页
《IP网络多媒体通信技术及应用》课件第2章_第2页
《IP网络多媒体通信技术及应用》课件第2章_第3页
《IP网络多媒体通信技术及应用》课件第2章_第4页
《IP网络多媒体通信技术及应用》课件第2章_第5页
已阅读5页,还剩187页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章IP网络及互连技术2.1网络互连基础2.2

OSI参考模型及各层功能2.3

TCP/IP协议2.4

IPv4协议2.5

IPv6协议2.6

TCP协议2.7

UDP协议2.8网络互连设备2.9路由器及网关配置 2.1网络互连基础

1.IP网络的体系结构

网络体系结构是网络和它的部件所执行功能的精确定义,并以协议、实体、逻辑环境等加以描述,即

网络体系结构={系统,实体,层,协议}

系统:包含一个或多个实体的具有信息处理和通信功能的物理整体。

实体:在一个系统中,任何能完成某一特定功能的进程或程序,都可称为一个逻辑实体。层:指系统中能提供某一种或某一类服务功能的逻辑实体。

协议:指为完成在两个实体间通信或服务所必须遵守的规则和约定。协议分为对等层间的对话协议和相邻层间的接口协议。

不同的网络其体系结构不同,为了解决不同网络间的互连问题,国际标准化组织(ISO)于1977年成立了专门机构研究,并提出了一套信息系统互连标准建议,即著名的OSI(开放系统互连)参考模型。此建议为计算机网络以及其它信息网络的发展奠定了基础。

2.网络协议的概念

协议是通信双方为了实现通信所进行的约定或所作用的对话规则,是用于描述进程之间信息交换过程的一个术语。

一般来说,协议由语法、语义和定时关系三部分组成。语义规定通信双方彼此“讲什么”,即确定协议元素的类型,如规定通信双方要发出什么控制信息,执行的动作和返回的应答。语法规定通信双方彼此“如何讲”,即确定协议元素的格式,如数据和控制信息的格式。定时关系规定时间执行的顺序,即确定通信过程中通信状态的变化,通常可以用状态图来描述,如规定正确的应答关系即属于定时关系问题。

3.网络功能和协议层次化

IP通信网络是一个极其复杂的系统,为了减少网络设计的复杂性,同时也为了便于管理,通常把网络的功能按高低划分为若干个层次。网络的层数、每层的名字、功能和向上层提供的服务都随网络的不同而不同,其共同点是较低层为较高层提供服务,且较低层功能具体实现方法的变更不影响较高层所执行的功能。

网络功能分成N层,N值根据需要而定。不同机器的相应层之间可以进行对话,对话的规则和惯例就是该层的协议。不同机器上对应层所含的两个实体称为同层实体或同等进程。同等进程通过协议进行通信,各层协议通信是虚拟的。虚拟是指数据流并不在两个同等层之间直接流动。

4.各层中共同要解决的问题

各层协议除了各自关心的问题外,也存在一些具有共性的问题,列举如下:

(1)建立连接。

(2)拆除连接。

(3)确定数据传输的方向。

(4)差错控制。

(5)数据流量控制。

(6)路径选择。

(7)多路复用。

(8)信息的拆装。

2.2

OSI参考模型及各层功能

1.OSI参考模型分层原则

OSI参考模型的分层原则包括:

(1)根据不同层次的抽象分层。

(2)每层应当实现一个定义明确的功能。

(3)每层功能的选择应该有助于制定网络协议的国际标准。

(4)各层边界的选择应尽量减少跨过接口的通信量。

(5)层数应合理,既要避免不同的功能混杂在同一层中,也要避免过多分层引起的系统体系结构过于庞大的问题。图2-1开放系统互连参考模型的分层结构图

2.OSI参考模型及各分层功能

OSI参考模型本身不是网络体系结构的全部内容,这是因为它并未确切地描述用于各层的协议和服务,它仅仅告诉我们每一层应该做什么。不过,ISO已经为各层制定了标准,但它们并不是参考模型的一部分,它们是作为独立的国际标准来公布的。OSI参考模型各层功能如表2-1所示。表2-1

OSI参考模型各层功能

1)物理层

物理层(PhysicalLayer)涉及到通信在信道上传输的原始比特流。物理层的设计必须保证一方发出二进制“1”时,另一方收到的也是“1”而不是“0”。这里的典型问题是用多少伏特电压表示“1”,多少伏特电压表示“0”;一个比特持续多少微秒;传输是否在两个方向上同时进行;最初的连接如何建立和完成,通信后连接如何终止;网络接口插件有多少针及各针的用途。此问题主要涉及机械的、电气的和过程的接口处理,以及物理层下的物理传输介质选择等。

2)数据链路层

数据链路层(DataLinkLayer)的主要任务是加强物理层传输原始比特的功能,使之对网络层显现为一条无错线路。发送方把输入数据分装在数据帧(DataFrame)里(典型的帧为几百字节或几千字节),按顺序传送各帧,并处理接收方回送的确认帧(AcknowledgmentFrame)。因为物理层仅仅接收和传送比特流,并不关心它的意义和结构,因而只能依赖各链路层来产生和识别帧边界,可以通过在帧的前面和后面附加上特殊的二进制编码模式来达到这一目的。如果这些二进制编码偶然在数据中出现,则必须采取特殊措施以避免混淆。传输线路上突发的噪声干扰可能把帧完全破坏掉。在这种情况下,发送方机器上的数据链路层软件必须重新传送该帧。然而,相同帧的多次重传也可以使接收方收到重复帧,比如接收方给发送方的确认帧丢失后,就可能收到重复帧。数据链路层要解决由帧的破坏、丢失和重复所带来的问题。数据链路层可能向网络层提供几类不同的服务,每一类都有不同的服务质量和价格。

数据链路层要解决的另一个问题(在大多数层上也存在)是防止高速的发送方的数据把低速的接收方数据“淹没”。因此,需要有某种流量调节机制,使发送方知道当前接收方还有多少缓存空间。通常流量调节和出错处理同时完成。如果线路能用于双向传输数据,数据链路层软件还必须解决新的麻烦,即从A到B数据帧的确认帧与同时从B到A的数据帧竞争线路的使用权问题。

广播式网络在数据链路层还要处理新的问题,即如何控制对共享信道的访问。数据链路层的一个特殊的子层——介质访问子层,就是专门处理这个问题的。

3)网络层

网络层(NetworkLayer)关系到子网的运行控制,其中一个关键问题是确定分组从源端到目的端如何选择路由。路由既可以选用网络中固定的静态路由表,几乎保持不变,也可以在每一次会话开始时决定(例如通过终端对话决定),还可以根据当前网络的负载状况,高度灵活地为每一个分组决定路由。

如果在子网中同时出现过多的分组,它们将相互阻塞通路,形成拥塞。此类拥塞控制也属于网络层的范围。因为拥有子网的人总是希望他们提供的子网服务能得到报酬,所以网络层常常设有记账功能。最低限度,软件必须对每一个顾客究竟发送了多少分组、多少字符或多少比特进行记数,以便于生成账单。当分组跨越国界时,记账则更加复杂。

当分组不得不跨越一个网络以到达目的地时,新的问题又会产生:第二个网络的寻址方法可能和第一个网络完全不同;第二个网络可能由于分组太长而无法接收;两个网络使用的协议也可能不等同。网络层必须解决这些问题,以便使异种网络能够互连。

4)传输层

传输层(TransportLayer)的基本功能是从会话层接收数据,并且在必要时把它分成较小的单元,传递给网络层,并确保到达对方的各段信息正确无误,而且,这些任务都必须高效率地完成。从某种意义上讲,传输层使会话层不受硬件技术变化的影响。

通常,会话层每请求建立一个传输连接,传输层就为其创建一个独立的网络连接。如果传输连接需要较高的信息吞吐量,传输层也可以为之创建多个网络连接,让数据在这些网络连接上分流,以提高吞吐量。另一方面,如果创建或维持一个网络连接不合算,传输层可将几个传输连接复用到一个网络连接上,以降低费用。在任何情况下,都要求传输层能使多路复用对会话层透明。传输层也要决定向会话层,最终向网络用户提供什么样的服务。最流行的传输连接是一条无错的、按发送顺序传输报文或字节的点到点的信道。但是,还有的传输服务是不能保证传输次序的独立报文传输和多目标报文广播,采用哪种服务是在建立连接时确定的。

除了将几个报文流多路复用到一条通道上,传输层还必须解决跨网络连接的建立和拆除问题。这需要某种命名机制,使机器内的进程可以讲明它希望与谁会话。另外,还需要一种机制以调节通信量,使高速主机不会发生过快地向低速主机传输数据的现象。这样的机制称为流量控制(FlowControl),在传输层(同样在其它层)中扮演着关键角色。主机之间的流量控制和路由器之间的流量控制是不同的。

5)会话层

会话层(SessionLayer)允许不同机器上的用户建立会话(Session)关系。会话层允许进行类似传输层的普通数据的传输,并提供了对某些应用有用的增强服务会话,也可被用于远程登录到分时系统或在两台机器间传递文件。

会话层服务之一是管理对话。会话层允许信息同时双向传输,或任一时刻只能单向传输。一种与会话有关的服务是令牌管理(TokenManagement)。有些协议保证双方不能同时进行同样的操作,这一点很重要。为了管理这些活动,会话层提供了令牌。令牌可以在会话双方之间交换,只有持有令牌的一方可以执行某种关键操作。

另一种会话服务是同步(Synchronization)。如果网络平均每小时出现一次大故障,而两台计算机之间要进行长达两小时的文件传输,这时该怎么办呢?每一次传输中途失败后,都不得不重新传输这个文件,而当网络再次出现故障时,又可能半途而废了。为了解决这个问题,会话层提供了一种方法,即在数据流中插入检查点。每次网络崩溃后,仅需要重传最后一个检查点以后的数据即可。

6)表示层

表示层(PresentationLayer)完成某些特定的功能,由于这些功能常被请求,因此人们希望找到通用的解决办法,而不是让每个用户来实现。值得一提的是,表示层以下的各层只关心可靠地传输比特流,而表示层关心的是所传输的信息的语法和语义。表示层服务的一个典型例子是用一种大家一致同意的标准方法对数据编码。大多数用户程序之间交换的并不是随机的比特流,而是诸如人名、日期、货币数据和发票之类的信息。这些对象是用字符串、整型、浮点数的形式,以及由几种简单类型组成的数据结构来表示的。不同的机器有不同的代码来表示字符串(如ASCII码和Unicode码)、整型(如二进制反码和二进制补码)等。为了让采用不同表示法的计算机之间能进行通信,交换中使用的数据结构可以用抽象的方式来定义,并且使用标准的编码方式。表示层管理这些抽象数据结构,并且在计算机内部表示法和网络的标准表示法之间进行转换。

7)应用层

应用层(ApplicationLayer)包含大量人们普遍需要的协议。例如,世界上有成百种不兼容的终端型号,如果希望一个全屏幕编辑程序能工作在网络中许多不同的终端类型上,每个终端都有不同的屏幕格式、插入和删除文本的换码序列、光标移动规则等,其困难可想而知。

解决这一问题的方法之一是定义一个抽象的网络虚拟终端(NetworkVirtualTerminal),编辑程序和其它所有程序都面向该虚拟终端。而对每一种终端类型,都写一段软件来把网络虚拟终端映射到实际的终端。例如,当把虚拟终端的光标移到屏幕左上角时,该软件必须发出适当的命令使真正的终端的光标移动到同一位置。所有虚拟终端软件都位于应用层。另一个应用层功能是文件传输。不同的文件系统有不同的文件命名原则,文本行有不同的表示方式等。不同的系统之间传输文件所需处理的各种不兼容问题,也同样属于应用层的工作。此外还有电子邮件、远程作业输入、名录查询和其它各种通用和专用的功能。最后需要指出,OSI参考模型是在普遍意义下考虑了一般情况而推荐参考采用的模式。OSI的设计者以为这种模型以及根据这种模型开发出的协议会逐渐支配计算机通信领域,而最终替换各种专用协议的实现以及相互竞争的多厂家的模型(如TCP/IP),然而这种情况并没有发生。虽然在OSI框架中已经开发出了很多有用的协议,但七层模型作为一个整体却没有兴盛起来。相反地,TCP/IP体系结构却逐渐占据了支配地位。最关键的原因是TCP/IP协议已经成熟,并经过很好的测试,而此时OSI参考模型还处在发展阶段。当开始认识到网络之间互操作需要的时候,只有TCP/IP是可用和已经准备好了的。另一个原因是OSI模型完全没有必要设计得这样复杂,它用了七层去完成TCP/IP用更少层次就能完成的同样任务。不过,在普遍情况下,通信子网范围内的各个功能层是公认成熟的、最合理的划分。

2.3

TCP/IP协议

TCP/IP参考模型

TCP/IP出自于在实验性分组交换网络ARPANET上进行的协议研究和开发。ARPANET是由美国国防远景研究规划局资助的一个实验网络,逐渐地,它通过租用的电话线连接了数百所大学和政府部门。当卫星和无线网络出现以后,现有的协议和它们互连时出现了问题,所以需要一种新的参考体系结构,能无缝隙地连接多个网络的能力是其从一开始就确定的主要设计目标。这种体系结构在它的两个主要协议(TCP和IP)出现以后,被称为TCP/IP参考模型。TCP/IP通常是指由许多协议组成的协议簇,这些协议簇由国际互联网体系结构委员会IAB(InternetArchitectureBoard)定为因特网标准。

TCP/IP最初并不像OSI协议那样有正式的协议模型。然而,在已经制订出的OSI参考模型的基础上,我们将TCP/IP参考模型分成四个层次:应用层、传输层、网络层和主机至网络层。图2-2

TCP/IP参考模型与OSI模型比较

1.主机至网络层

TCP/IP参考模型没有真正描述这一部分,只是指出主机必须使用某种协议与网络连接,以便能在其上传递IP分组。这个协议未被定义,并且随主机和网络的不同而不同。

2.网络层

网络层是整个体系结构的关键部分。它的功能是使主机可以把分组发往任何网络并使分组独立地传向目标(可能经由不同的网络)。这些分组到达的顺序和发送的顺序可能不同,因此,如果需要按顺序发送及接收时,高层必须对分组排序。

网络层定义了正式的分组格式和协议,即IP协议(InternetProtocol)。网络层的功能就是把IP分组发送到应该去的地方,分组路由和避免阻塞是这里涉及的主要问题。

3.传输层

在TCP/IP模型中,位于网络层之上的那一层,现在通常被称为传输层(TransportLayer)。它的功能是使源端和目的端主机上的对等实体可以进行会话,和OSI的传输层一样。这里定义了两个端到端的协议:

第一个是传输控制协议TCP(TransmissionControlProtocol)。它是一个面向连接的协议,允许从一台机器发出的字节流无差错地发往互联网上的其它机器。它把输入的字节流分成报文段并传给网络层。在接收端,TCP接收进程把收到的报文再组装成输出流。TCP还要进行流量控制,以避免快速发送方向低速接收方发送过多报文而使接收方无法处理的情况出现。第二个协议是用户数据报协议UDP(UserDatagramProtocol)。它是一个不可靠的、无连接协议,用于不需要像TCP的排序和流量控制能力而是自己完成这些功能的应用程序。它也被广泛地应用于只有一次的、客户/服务器模式的请求-应答查询,以及快速递交比准确递交更重要的应用程序,如传输语音或图像。自从这个模型出现以来,IP技术已经在很多其它网络上实现了。

4.应用层

TCP/IP模型没有会话层和表示层。传输层的上面是应用层,它包含所有的高层协议,最早引入的是虚拟终端协议(Telnet)、文件传输协议(FTP)和电子邮件协议(SMTP)。虚拟终端协议允许一台机器上的用户登录到远程机器上并且进行工作。文件传输协议提供了有效地把数据从一台机器移动到另一台机器上的方法。电子邮件协议最初仅是一种文件传输协议,但是后来为它提出了专门的协议。随着IP网络上多媒体业务的应用和发展,又增加了不少新的协议,例如域名系统服务DNS(DomainNameService)用于把主机名映射到网络地址;NNTP协议用于传递新闻文章;还有HTTP协议,用于在万维网(WWW)上获取主页;RTP/RTCP协议用于实时业务控制;RSVP协议用于提供服务质量保证等。2.3.2

TCP/IP协议簇

多媒体通信网是一个IP寻址的通信网,它的通信协议是基于TCP/IP协议的。如上所述,TCP/IP协议不是某一个单一协议,而是一个协议簇,如图2-3所示。

TCP/IP协议簇的标准由Internet协会(ISOC)、Internet体系结构委员会(IAB)、Internet工程专门小组(IETF)和Internet研究专门小组(IRIF)制定。IETF负责应用、寻址、安全等领域的工作,并负责Internet标准规范的制定。所有关于Internet的正式标准都以RFC(RequestforComment)文档出版。但大量的RFC并不是正式的标准,出版的目的只是为了提供信息。在查找RFC文档时,应使用最新的RFC索引,同时应注意到RFC数字标识部分的数字越大,其内容越新。

IP、TCP和UDP协议将在后面详细介绍。对于常用的几个应用层和链路层协议,简单介绍如下。图2-3

TCP/IP协议簇

1.Ping

“Ping”名称起源于声纳定位操作。Ping程序由MikeMuuss编写,目的是为了测试另一台主机是否可到达。Ping程序发送一份ICMP回显请求报文给主机,并等待返回ICMP回显应答。

Ping命令经常用作网络连通性诊断工具。一般来说,如果不能Ping到某台主机,那么就不能Telnet或者FTP到那台主机。反过来,如果不能Telnet到某台主机,那么通常可以用Ping程序来确定问题出在哪里。Ping程序还能测出这台主机的往返时间。对于有安全控制策略的路由器和防火墙,使用Ping程序时会受到限制,其运行结果显示的可能是并非真实的情况。

2.Traceroute

Traceroute程序可以让我们看到IP数据报从一台主机传到另一台主机的路由,还可以让我们使用IP源路由选项。

Traceroute程序使用ICMP报文和IP首部中的TTL字段。它发送一份TTL字段为1的IP数据报给目的主机。处理这份数据报的第一个路由器将TTL值减1,丢弃该数据报,并发回一份超时ICMP报文。这样就得到了该路径中的第一个路由器的地址。然后Traceroute程序发送一份TTL字段为2的数据报,同样就得到了该路径中的第二个路由器的地址。继续这个过程直至该数据报到达目的主机。

3.Telnet和Rlogin

Telnet和Rlogin是在TCP/IP网络上提供远程登录功能的两种方式。

远程登录(RemoteLogin)是Internet上最广泛的应用之一。我们可以先登录(即注册)到一台主机然后再通过网络远程登录到任何一台网络主机上去,而不需要为每一台主机连接一个硬件终端(当然必须有登录账号)。

Telnet(TelecommunicationNetwork)是标准的提供远程登录功能的应用,几乎每个TCP/IP的实现都提供这个功能。它能够运行在不同操作系统的主机之间(通过强制两端采用同一个7比特ASCII码NVT标准来实现)。Telnet通过客户进程和服务器进程之间的选项协商机制,从而确定通信双方可以提供的功能特性(如激活、禁止、半双工、一次一字符、一次一行或多行等)。

Rlogin起源于UNIX,现在也可以在其它操作系统上运行。

4.FTP

FTP是Internet标准的文件传输协议。由FTP提供的文件传输是指将一个完整的文件从一个系统复制到另一个系统中。要使用FTP,就需要有登录服务器的注册帐号,或者通过允许匿名FTP的服务器来使用。

FTP支持有限数量的文件类型(ASCII、二进制图像文件、EBCDIC和本地文件类型)和文件结构(面向字节流或记录)。FTP协议提供的文件传输控制方式有流方式、块方式和压缩方式。

FTP命令和应答在客户和服务器的控制连接上以NVTASCII码形式传送。

5.ARP

ARP是地址解析协议,用于将IP地址转换成以太网地址。

每台计算机上都有一个ARP列表,里面存储了以太网中不同的IP地址与以太网地址的对应关系。如果一台计算机发现某个目标IP地址没有对应的以太网地址,它会发一个ARP请求(Request)到以太网中询问,拥有该IP地址的计算机就会发一个ARP应答(Reply)来通知它自己的以太网地址。

尽管ARP包含在TCP/IP的网络层,但实际上它是一个低层协议,使网络层硬件和数据链路层隔离,数据链路层直接使用ARP协议。

6.RARP

RARP是逆向地址转换协议,它完成硬件地址到IP地址的转换。

对于具有本地磁盘的系统引导时,一般是从磁盘上的配置文件中读取IP地址的。但对于无盘主机,如X终端或无盘工作站,则采用RARP协议来获得IP地址。无盘系统的RARP实现过程是从接口卡上读取惟一的硬件地址,然后发送一份RARP请求(一帧在网络上广播的数据),请求某个主机响应该无盘系统的IP地址(在RARP应答中)。

7.ICMP

ICMP(InternetControlMessagesProtocol)是互联网控制消息协议。ICMP通常被认为是IP层的一个组成部分,用于传递差错和控制报文。ICMP报文经常被IP层或更高层协议(如TCP或UDP)使用,几乎任何IP协议的实施都伴随一个ICMP协议的实施。ICMP协议实现在IP之上,即ICMP包是作为IP的数据部分来传送的。

ICMP的一个重要的应用是网络拥塞控制:路由器丢弃一个IP包时,一般会用ICMP发一个消息给这个IP包的原发送者,原发送者可以相应地降低IP包的发送频率,以降低或避免IP包再被丢弃的可能性。

8.IGMP

IGMP协议是用于支持主机和路由器进行多播的Internet组管理协议。它让一个物理网络上的所有系统知道主机当前所在的多播组。多播路由器需要这些信息以便知道多播数据应该向哪些接口转发。IGMP协议也被当作IP层的一部分,其报文通过IP数据报来传送。

9.TFTP

TFTP(TrivialFileTransferProtocol)是一个简单文件传送协议。TFTP与FTP不同,为了保持简短,它使用UDP。TFTP一般通过发送方的超时重传机制解决分组丢失和分组重复问题。

10.PPP

PPP是点到点的数据链路层协议,用于在串行数据线路上传输IP分组,在ADSL等宽带接入技术中应用较广。

2.4

IPv4协议

2.4.1

IP协议数据传输机制与数据报格式

1.IP数据报传输机制

IP数据报传输是一种简洁而有效的分组交换方式,为了达到最高传输速率,它放弃了可以放弃的任何为可靠性工作服务的机制(如检错、重传等),以尽快将数据报传往信宿。IP数据报传输的关键问题是分片和重组。分片是为了适应物理网的最大传输单元(MTU),重组则是为了将已分片的数据根据分片规则重新组合起来还原成数据报。数据报传输的另一关键问题是数据报延时控制。数据报传输的一大特点是随机寻径,因而从信源到信宿的延时也具有随机性,由于某种原因数据报会进入一条循环路径,无休止地在网中流动,对于这种情况,IP数据报采用“生存时间法”对此进行控制。

2.IP数据报的数据格式

IP数据报的数据格式如图2-4所示。图2-4

IP数据报的数据格式IP数据报分为报头和数据区两部分。报头为网络提供为了寻址等使用的一系列信息;数据区则是放置用户数据的,是实际载荷的真正所在。普通IP数据报(不含选项字段)中报头长为20个字节(八位组),这20个字节又分为若干个定长字段,每一个字段有其特定的含义,各字段的功能如下。

IP数据报中第一个字段为“版本”字段,其长度为4比特,代表IP协议的版本号,目前使用的版本号为“4”。第二个字段为“报头长度”,其长度为4比特,它指出字长为32比特的报头长度。普通IP数据报各定长字段的长度和为20字节,其报头长度为“5”。一个含选项的IP数据报的报头长度则取决于选项的长度,但必须是32比特的整数倍,且报头长度最大为“15”。

第三个字段为“服务类型”字段,其长度为8比特,其结构如图2-5所示。图2-5“服务类型”字段结构

在“服务类型”字段中,前3个比特(0~2)为优先级,共有0~7八个优先级,其中0为一般用户优先级,“7”为网络控制优先级。

D、T、R表示本数据报所希望的传输类型。其中,D比特置位表示要求网络能提供低的延时,T比特置位表示要求网络能提供高的吞吐量,R比特置位表示要求网络提供高的可靠性。目前这些比特位只表示用户要求,对网络不具有强制性。与之相似的是优先级同样对网络没有强制性,而目前大多数网络对此一般不作处理。但“服务类型”字段是很重要的,它为今后业务的发展保留了进一步采用必要技术的手段。

第四个字段为“总长度”字段,其长度为16比特。它指示整个IP数据报的长度,以字节为单位。由于该字段为16比特长,因而IP包的最大长度可达216-1=65535字节。显然,一个包能达64K,一般来说是够用了。第五、六、七三个字段是在分片和分片重组时使用的。因为在各种不同的物理网中,对帧的大小有不同的规定(即对每一个物理网都有一个最大传输单元MTU的规定),很显然一个IP包的尺寸不可能正好等于一个MTU的尺寸,这时,在发送时,IP包要分片装入MTU中进行发送,在接收时则要将片进行重组,还原成IP包。第五、六、七三个字段就是为此目的而设计的。

第八个字段为“生存时间”字段,其长度为8比特。它表示一个数据报的生存时间,单位为秒。其主要用途是防止数据报在网内的一条循环路径中无休止地流动,白白浪费网络资源。数据报生存期一到,该数据报即从网内删除。第九个字段为“协议”字段,其长度为8比特。它表示本数据报内数据区中数据采用的协议,即数据区内数据的格式(如TCP、UDP等)。

第十个字段是“报头校验和”字段,长度为16比特。其作用是以此保证报头的完整性和正确性。其算法很简单:先设“报头校验和”的初始值为0,然后对报头中的数据每16比特求一次异或,得出的结果取反即得报头校验和。第十一个字段为“信源IP地址”字段,第十二个字段是“信宿IP地址”字段,其长度均为32比特。这两个地址分别表示本IP数据报发送者(信源)和接收者(信宿)的地址。在整个数据报传输过程中,无论经过什么路径,无论怎样分片,这两个字段均保持不变。

其它还可以有一些选项字段,如源路径、路径记录和时间戳等。以上所有这些构成了IP数据报的报头部分。报头部分的长度必须是32比特的整数倍,如果不是32比特的整数倍,则还需用填充字段来填足,以构成完整的报头。2.4.2

IPv4的地址及寻址技术

1.IPv4地址

在IPv4中,IP地址的长度为32比特,即4个8位组数字,为了便于记忆,在文档中通常用四个以小数点隔开的十进制整数来表示,其中每一个整数对应一个8位组(字节)数字,例如,或40都是在文档中的IP表达式。

2.IP地址分类

IP地址分为五类,分别称为A类、B类、C类、D类和E类地址。

A类地址用于为数不多的大型物理网络(如中国公众多媒体网、NSFNET等),每个网络能够容纳大量的主机;B类地址用于中型网络(如城域网、大中型企业网等),每个网络能容纳中等数量的主机;C类地址用于为数众多的小型网,每个网络最多容纳256台主机。Internet地址结构和分类见表2-2。表2-2

Internet地址结构和分类1)A类地址

A类地址第0比特的值为0,第1~7比特共7个比特用来表示网络号,因而它一共可以有128个网络号,即在IPv4中共有128个A类网络。每一个A类网络最多可容纳224台主机。很显然A类网是一个很大的网络,其地址范围为~54,而网络号为0和127的A类地址留作特殊之用。2)B类地址

B类地址中,第0~1比特的值为10,第2~15比特共14个比特用来表示网络号,因而它一共可以有214(16384)个网络号,即在IPv4中共有16384个B类地址。每一个B类地址可有216(65536)台主机。一般来说B类网络也是一个很大的网络,其起始地址范围为~54。3)C类地址

C类地址中,第0~2比特的值为110,第3~23比特共21个比特用来表示网络号,因而它共有221(2000000)个网络号,即在IPv4中共有221个C类地址。每个C类地址可有256台主机。C类网络是一个小网络,其地址范围为~54。

4)D类地址

D类地址和前三类地址是不同的,无论从结构上还是从应用上都很不相同,地址范围为~54。在D类地址中,第0~3这四个比特的值为1110,但它是用于组播(Multicast)目的的,因而它的使用也和上三类地址不同。在上三类地址中,在结构上除了前几位(以0结尾)是前缀以标明它是哪一类地址外,后面均为网络号和主机地址。而D类地址没有进一步的层次结构,这是因为组播组就本身没有层次结构,网内所有的组播组在逻辑上都是等同的。采用单一层次的组播组结构的原因主要是组播组数量有限,可以集中管理,不必像前三类地址那样要分层管理。组播地址只能作为信宿地址使用,绝不能出现在任何信源地址域中,也不能出现在源路径或记录路径的选项中。每一个组播组都拥有惟一的组播地址。全部组播地址被分为两类:一类是标准的永久性组播地址,由NIC(网络信息中心)来分配;另一类是临时性组播地址,可根据需要而设置。

3.特殊地址说明

(1)A类、B类、C类地址均采用网络地址+主机地址的结构。网络地址由Internet注册管理机构NIC分配,主机地址由网络管理机构分配。这三类地址具有惟一性。

(2)对于与多个网络相连的主机,其主机地址可有多个,称其为多地址主机或多穴主机,如网关、网桥、路由器等。

(3)为了充分利用地址资源,简化网络路由选择,一般采用子网编址技术,将主机地址划分为子网地址+主机地址。子网间通过网关连接。

(4)子网地址段长度通过ICMP来确定。报文有地址模(AddressMask)和地址响应(AddressRespond)两种类型。

(5)IP地址通过ARP协议转换为以太网地址(MAC)。

(6)广播地址。TCP/IP规定,主机号全为“1”的网络地址用于广播之用,叫做广播地址。所谓广播,指同时向网上所有主机发送报文。

(7)有限广播。上述广播地址包含一个有效的网络号和主机号,技术上称为直接广播(DirectedBroadcast)地址。在网间网上的任何一点均可向其它任何网络进行直接广播,但直接广播有一个缺点,就是要知道信宿网络的网络号,而有时需要在本网络内部广播,但又不知道本网络网络号。TCP/IP规定,32比特全为“1”的网间网地址用于本网广播,该地址叫做有限广播地址(LimitedBroadcastAddress)。

(8)“0”地址。TCP/IP协议规定,各位全为“0”的网络号被解释成“本”网络。

(9)回送地址。A类网络地址127是一个保留地址,用于网络软件测试以及本地主机进程间通信,叫做回送地址(LoopbackAddress)。无论什么程序,一旦使用回送地址发送数据,协议软件立即返回之,不进行任何网络传输。

(10)含网络号127的分组不能出现在任何网络上;主机和网关不能为该地址广播任何寻径信息。

4.子网和子网掩码

1)子网编址技术

在IP网中,仅有上述A、B、C三类地址的定义是不够的,IP网地址资源非常有限,而按上述三类地址来分配,不要说A类和B类地址可容纳的主机数量很大,即使是C类地址(可容纳256台主机)其数量也不小,分配给一个物理网也还大,更何况IP地址资源十分紧张,根本不能这样来“浪费”,而利用子网编址技术能有效地提高Internet地址的利用率。另外,像A类地址中能容纳224台主机,要保持、维护和搜索这样大的路由是非常困难的,既费时又容易发生路由选择故障。为了简化网络路由选择的复杂性,采用子网编址和子网路由选择,以降低路由选择的复杂性,提高其灵活性和可靠性。

在子网编码中,“网络号+子网号”全局惟一地标识了一个物理网络。子网是一个多网络环境中的网络。把一个网络划分成多个子网,要求每一个子网使用不同的网络标识IP。但是每个子网的宿主机器数不一定相同,而且相差很大,在制定编码方案时,会碰到网络数不够的问题。其解决的办法是采用子网编码技术,将主机标识部分划出一定的位数用作本网的各个子网,剩余的主机标识作为相应子网的主机标识部分。这样的IP地址被称为“网络号+子网号+主机号”。

2)子网掩码

子网掩码是子网编址中所采用的最主要的一种技术。

子网掩码是一个32位地址,它用于屏蔽IP地址的一部分,区别IP地址中哪些位表示逻辑的网络(子网数),哪些表示逻辑的节点数,并说明IP地址是在本地网上还是在远程网上。其规则是:

(1)凡是IP地址的网络和子网标识部分,用二进制数1表示。

(2)凡是IP地址的主机标识部分,用二进制数0表示。

(3)用点和十进制数书写。子网掩码拓宽了IP地址的网络标识部分表示的范围。对于网络号不同或子网号不同的主机,只有通过网关或路由器才能找到目的主机。网关或路由器能根据用户通信目标计算机的IP地址,决定是否将用户发出的信息送出本地网络,同时,它还将外界发送给属于本地网络计算机的信息接收过来。为了使TCP/IP协议能够寻址,该通道被赋予一个IP地址,这个IP地址称为网关或路由器地址。值得注意的是,在规定中子网掩码并未要求“1”和“0”是连续的,它允许子网掩码中“0”、“1”位不连续,如子网掩码也可以是11111111

11111111

11111111

10011010,但这样的分配,给理解主机地址和寻址表都带来一定困难,因此子网掩码一般均采用连续“1”和“0”的方式。在网络规划时,需要确定子网掩码,其具体步骤为

(1)确定现在或将来子网上的最大节点数。

(2)根据子网上的最大节点来确定用IP地址上32位的哪几位来表示逻辑点,将这些位都置为0,其它位都置为1。例如:子网上有302个主机,则可用二进制的9位来表示这些主机(8位可表示254台主机)。具体做法是将后9位置0,其它(前23位)都置1,即11111111.11111111.11111110.00000000,将这个二进制数转化为十进制数,子网掩码为

为了网络工程设计中使用方便,表2-3给出了常用的子网掩码。表2-3

A、B、C三类网络子网数目与子网掩码的转换表

5.域名及域名解析系统

IP地址的编址技术为IP网中的用户寻址提供了一个很好的基础,这一点类似PSTN网中电话号码的编址技术。但是,4个十进制数终究是一种十分难记的形式。

域名是为了方便用户记忆,与所代表的主机在语义上有关联的一种地址表示法。在IP网中,IP地址是实实在在的地址,网络是据此来寻址的。域名并非必要也不能用来直接在网络中寻址,而是为用户使用方便而采用的一种地址助记符,它与IP地址有对应关系,但并非一一对应关系。多媒体通信网中的域名系统采用一种层次结构,与国家的组织机构图差不多,是倒树型层次结构。国名位于倒树型层次结构的顶部,在国名下面是各省名,然后是各市名,其后依次为企业名等。树状域名空间中的一棵子树即为一个域,如图2-6所示。图2-6

DNS的树型结构

DNS要求同一个父节点的兄弟子节点的命名具有惟一性。这一限制保证了域名可惟一地标识树中每一节点。

在DNS中,每个域由不同的组织进行管理,每个组织都可以将它的域再分成一定数目的子域,并将这些子域委托给其它组织进行管理。

域名从左到右构造,表示的范围从小到大。一般情况下,域名由表示一定含义的若干元素符号组成,它们由圆点(.)分开。子域字段的数目几乎没有什么限制,这取决于所应用的环境。通常一个组织、公司会有几个子域。在每一个域的节点处有一台域名服务器,这台服务器的功能有两个:第一是说明本域管理的范围内有哪几个子域和主机的服务器名称;第二是说明本域父节点域的域名服务器的地址和域名,或者指出树的根节点域的域名和地址。

域名解析的流程如下:

(1)用户提交域名解析请求给自己所在域的域名服务器A。

(2)如果域名服务器A能够从Host.txt文件中查询到用户递交的域名解析请求,则本次域名解析完成。

(3)如果域名服务器A在Host.txt文件中没有查询到所提交的域名解析请求,则域名服务器A会将用户的请求递交给自己的上一级(父节点)域名服务器B,继续寻求解析。如果能够完成解析,则域名服务器B返还结果给域名服务器A。如果不能完成解析,由域名服务器B将请求递交给自己的上一级(父节点)域名服务器C,继续寻求解析。

另一种方法是直接将请求递交到最顶级(根节点)的域名服务器继续寻求解析。由根域名服务器对域名的树状结构下行进行解析。域名解析过程完成后,将查询的结果逐级返还。如果在一个基于IP的多媒体应用中,用户想用域名呼叫另一用户,则首先请求网络系统管理员在域名服务器上解析自己的IP地址,即将自己的域名与IP地址对应起来,并确认对方的域名是否在域名服务器上解析过。用户并不需要确切知道如何进行解析,只有网络系统管理员才有权力做这项工作。

6.NAT技术

IP地址耗尽促成了CIDR的开发,但CIDR开发的主要目的是为了有效地使用现有的Internet地址。而同时根据RFC1631(IPNetworkAddressTranslator)开发的NAT可以在多重的Internet子网中使用相同的IP,以此来减少注册IP地址的使用。

NAT技术使得一个私有网络可以通过Internet注册IP连接到外部世界,位于内网和外网中的NAT路由器在发送数据包之前,负责把内部IP翻译成外部合法地址。内部网络的主机不可能同时与外部网络通信,所以只有一部分内部地址需要翻译。

NAT的翻译可以采取静态翻译和动态翻译两种方式。静态翻译将内部地址和外部地址一对一对应。当NAT需要确认哪个地址需要翻译,翻译时采用哪个地址端口时,就使用动态翻译。采用Multiplexing技术,或改变外出数据的源端口技术可以将多个内部IP地址映射到同一个外部地址,这就是PAT(PortAddressTranslator)。

当映射一个外部IP到内部地址时,可以利用TCP的负载均衡技术。使用该技术时,内部主机基于Round-Robin机制,将外部进来的新连接定向到不同的主机上去。注意:LoadDistribution只有在映射外部地址到内部的时候才有效。

1)NAT使用的几种情况

在以下情况下使用UAT:

(1)连接到Internet,但却没有足够的合法地址分配给内部主机。

(2)更改到一个需要重新分配地址的ISP。

(3)有相同的IP地址的两个Intranet合并。

(4)想支持负载均衡(主机)。采用NAT后,一个最主要的改变就是失去了端对端IP的路由跟踪能力。也就是说,从此不能再经过NAT使用Ping和Traceroute了,其次就是曾经的一些IP对IP的程序不再可以正常运行了,潜在的、不易被观察到的缺点就是增加了网络延时。

NAT可以支持大部分IP协议,但有几个协议需要注意。TFTP、Rlogin、RSH、RCP和IPMulticast都被NAT支持,BOOTP、SNMP和路由表更新全部被拒绝。

2)与NAT相关的几个概念

InsideLocalIPAddress:指定于内部网络的主机地址,全局惟一,但为私有地址。

InsideGlobalIPAddress:一个或更多内部IP到外部世界的合法IP。

OutsideGlobalIPAddress:外部网络主机的合法IP。

OutsideLocalIPAddress:外部网络的主机地址,看起来是内部网络的私有地址。

SimpleTranslationEntry:映射IP到另一个地址的入口。

ExtendedTranslationEntry:映射IP地址和端口到另一个地址/端口对的入口。

3)采用NAT可以实现的功能

采用NAT可以实现以下功能:

内部地址翻译(TranslationInsideLocalAddresses);

内部全局地址复用(OverloadingInsideGlobalAddresses);

TCP负载重分配(TCPLoadDistribution);

处理重叠网络(HandingOverlappingNetworks)。2.4.3

IPv4的局限性

IPv4具有以下局限性:

(1)IPv4地址空间不足。IPv4使用长度为32位的地址,理论上可提供210多万个网络号,37亿多个主机。随着互联网规模的迅速发展,局域网和网络主机数量急增,IPv4的地址资源将消耗殆尽。

(2)IPv4的报头长度太短。IP数据包由首部和实际的数据部分组成。数据部分一般用来传送其它协议,如TCP、UDP、ICMP等。数据部分最长可为65535字节。报头长(IHL)字段长度为4比特,所能表示的最大值为15,所能允许的最大报头长为60字节。扣除定长头外选项域只有40字节,这对于某些略长的选项会显得力不从心。例如,在记录路由选项时,在目前的网络环境下很容易超过40字节的限制。

(3)IPv4的网络安全不容忽视。IPv4在制定时,网络的规模较小,应用范围较窄,并没有考虑到今天如此大规模覆盖世界的互联网的要求,所以对于网络安全问题并未给予更多的关注。随着网络应用领域的不断扩展,如电子商务、网络银行等,安全问题已成为开展这些新业务时所必须面对的重要问题。

(4)IPv4的自身结构影响着传输速度。IPv4结构的不合理性影响着路由器的处理效率,进而会影响传输速度,限制多媒体业务的应用范围。

2.5

IPv6协议

IPv6(InternetProtocol,Version6)协议目前的版本是RFC2460,较早的一个版本是RFC1883。

1.IPv6引入的变化

为了彻底解决IPv4存在的问题,IETF从1995年开始就着手研究开发下一代IP协议,即IPv6。

IPv6保持了IPv4的许多特点,例如,支持无连接的传递;允许发送方选择数据报的大小,要求发送方指明数据报在到达终点前的最大跳数;保持了IPv4选项的大多数概念,包括分片和源站选路等。

IPv6修订了IPv4的许多协议细节,并增加了一些新的特性。这些变化归纳起来主要有:

(1)采用了更大的地址空间。IPv6具有长达128位的地址空间,可以彻底解决IPv4地址不足的问题。

(2)数据报采用一系列固定格式的首部取代了IPv4中可变长度的选项字段。在IP报头中删除了一些不必要的IPv4功能,加强了IPv4原有的一些功能,并且还增加了许多新功能。

(3)支持资源预分配,具有QoS功能。利用IPv6头标中的4比特优先级域和24比特的流标记域可进行业务优先级控制。此机制取代了IPv4的服务类型说明,支持实时视频业务应用。

(4)对协议功能扩展的保障。如anycast、主机地址自动配置、安全认证和加密等许多技术的应用,保障了协议功能的扩展。

2.IPv6数据报的格式

IPv6数据报由首部和负载两个主要部分组成。首部包括一个固定大小的基本首部(BaseHeader)和零个或多个扩展首部(ExtensionHeader)。负载是随后紧跟首部的数据。IPv6数据报的一般格式如图2-7所示。图2-7

IPv6数据报一般格式图2-8

IPv6基本首部的格式同IPv4一样,IPv6基本首部的开始为4比特“版本”字段,说明协议的版本。

“源地址”和“目的地址”字段指明了发送站及其期望的接收站的地址,只不过在IPv6中每个地址字段要求有4个32位组。目的地址有单播(Unicast)目的站、群集(Cluster)目的站和组播(Multicast)目的站三类。

IPv6中的“跳转限制”字段对应IPv4的“生存时间”字段,不同之处是IPv4将生存时间解释为跳数和最长时间的组合,而IPv6将该值解释为数据报在丢弃前可以进行的最大跳数。

IPv6以一种新的方式处理长度说明。由于基本首部长度固定为40个八位组,所以基本首部就不必包括一个首部长度字段;IPv6以16比特的负载字段说明除去首部自身长度外数据报所载的八位组数。这样,一个IPv6的数据报可以容纳64K八位组数。

IPv6基本首部中采用“数据流标号”字段支持资源预定机制。“数据流标号”字段包括通信类别和数据流标识符两个子字段。8比特通信类别子字段指明数据报的业务类型及优先级;20比特数据流标识符子字段指明数据报的QoS控制等。

2)扩展首部

扩展首部是一般性和有效性折衷的产物。要彻底地通用,IPv6还需要支持分片和重组、源站选路以及鉴别等功能。IPv6面对这些问题时,采用了扩展首部,其作用类似IPv4的任选项。每个数据报包含的扩展首部只提供给那些它所需要使用的设施。

3.IPv6编址

1)IPv6地址格式

IPv4到IPv6最显著的变化就是网络地址的长度。RFC2373和RFC2374定义的IPv6地址有128位长。IPv6地址由两个逻辑部分组成:一个64位的网络前缀和一个64位的主机地址,主机地址通常根据物理地址自动生成,叫做EUI-64。

IPv6地址的表示通常采用冒号十六进制表示法,即128位长IPv6地址通常写作8组、每组4个十六进制数的形式,组之间采用“:”号分隔。一连串连续的零可压缩表示。除了128位的地址空间,IPv6还为点对点通信设计了一种具有分级结构的地址,这种地址被称为可聚合全局单点广播地址(AggregateGlobalUnicastAddress)。其开头3个地址位是地址类型前缀,用于区别其它地址类型;其后依次为13位TLAID、32位NLAID、16位SLAID和64位主机接口ID,分别用于标识分级结构中自顶向底排列的TLA(TopLevelAggregator,顶级聚合体)、NLA(NextLevelAggregator,下级聚合体)、SLA(SiteLevelAggregator,位置级聚合体)和主机接口。TLA是与长途服务供应商和电话公司相互连接的公共网络接入点,它从国际Internet注册机构(如IANA)处获得地址。NLA通常是大型ISP,它从TLA处申请获得地址,并为SLA分配地址。SLA也可称为订阅者(Subscriber),它可以是一个机构或一个小型ISP。SLA负责为属于它的订阅者分配地址。SLA通常为其订阅者分配由连续地址组成的地址块,以便这些机构可以建立自己的地址分级结构,用以识别不同的子网。分级结构的最底层是网络主机。

2)IPv6中的地址配置

当主机IP地址需要经常改动时,手工配置和管理静态IP地址是一件非常烦琐和困难的工作。在IPv4中,DHCP协议可以实现主机IP地址的自动设置。其工作过程大致如下:一个DHCP服务器拥有一个IP地址池,主机从DHCP服务器申请IP地址并获得有关的配置信息(如缺省网关、DNS服务器等),由此达到自动设置主机IP地址的目的。IPv6继承了IPv4的这种自动配置服务,并将其称为全状态自动配置(StatefulAutoConfiguration)。

IPv6还采用一种被称为无状态自动配置(StatelessAutoConfiguration)的自动配置服务。在无状态自动配置过程中,主机首先通过将它的网卡MAC地址附加在链接本地地址前缀1111111010之后,产生一个链接本地单点广播地址(IEEE已经将网卡MAC地址由48位改为了64位。如果主机采用的网卡的MAC地址依然是48位,那么IPv6网卡驱动程序会根据IEEE的一个公式将48位MAC地址转换为64位MAC地址)。接着主机向该地址发出一个被称为邻居探测(NeighborDiscovery)的请求,以验证地址的惟一性。如果请求没有得到响应,则表明主机自我设置的链接本地单点广播地址是惟一的。否则,主机将使用一个随机产生的接口ID组成一个新的链接本地单点广播地址。然后,以该地址为源地址,主机向本地链接中所有路由器多点广播一个被称为路由器请求(RouterSolicitation)的数据包,路由器以一个包含一个可聚合全局单点广播地址前缀和其它相关配置信息的路由器公告来响应该请求。主机用它从路由器得到的全局地址前缀加上自己的接口ID,自动配置全局地址,然后就可以与Internet中的其它主机通信了。

3)IPv6的域名系统

IPv6地址在域名系统中将执行正向解析表示为AAAA记录(即4A记录,类似的IPv4表示为A记录);反向解析在(早期为)下进行,在这里地址空间为半字节十六进制数字格式。这种模式在RFC3596中定义。AAAA模式是IPv6结构设计时的两种提议之一。另外一种正向解析为A6记录并且有一些其它的创新,像二进制串标签和DNAME记录等。RFC2874和它的一些引用中定义了这种模式。

AAAA模式只是IPv6域名系统的简单概括,A6模式使域名系统检查更全面,因而更复杂,这表现在:

(1)A6记录允许一个IPv6地址分散于多个记录中,也许在不同的区域,这就在原则上允许网络的快速重编号。

(2)使用域名系统记录委派地址被DNAME记录(类似于现有的CNAME,不过是重命名整棵树)所取代。

(3)一种新的叫做“比特标签”的类型被引入,主要用于反向解析。2002年8月的RFC3363中对AAAA模式给予了有效的标准化(在RFC3364中有着对于两种模式优缺点的更深入的讨论)。

4)IPv6中的安全协议

安全问题是Internet应用中的一个重要问题。由于在IP协议设计之初没有考虑安全性,因而在早期的Internet上时常发生诸如企业或机构网络遭到攻击、机密数据被窃取等事件。为了加强Internet的安全性,从1995年开始,IETF着手研究制定了一套用于保护IP通信的IP安全(IPSecurity,IPSec)协议。IPSec是IPv6的一个组成部分,也是IPv4的一个可选扩展协议。

(1)IPSec提供了两种安全机制:认证和加密。认证机制是指IP通信的数据接收方能够确认数据发送方的真实身份以及数据在传输过程中是否遭到改动。加密机制通过对数据进行编码来保证数据的机密性,以防数据因在传输过程中被他人窃取而失密。

IPSec的认证包头AH(AuthenticationHeader)协议定义了认证的应用方法,封装安全负载ESP(EncapsulatingSecurityPayload)协议定义了加密和可选认证的应用方法。在实际进行IP通信时,可以根据安全需求选择同时使用这两种协议或其中的一种。AH和ESP都可以提供认证服务,不过,AH提供的认证服务要强于ESP。在一个特定的IP通信中使用AH或ESP时,协议将与一组安全信息和服务发生关联,称为安全关联SA(SecurityAssociation)。SA可以包含认证算法、加密算法、用于认证和加密的密钥。IPSec使用一种密钥分配和交换协议,如Internet安全关联和密钥管理协议(ISAKMP)来创建和维护SA。SA是一个单向的逻辑连接,即两个主机之间的认证通信将使用两个SA,分别用于通信的发送方和接收方。

(2)IPSec定义了两种模式的SA:传输模式SA和隧道模式SA。传输模式SA是指在IP包头(以及任何可选的扩展包头)之后和任何高层协议(如TCP或UDP)包头之前插入AH或ESP包头;隧道模式SA则将整个原始的IP数据包放入一个新的IP数据包中。在采用隧道模式SA时,每一个IP数据包都有两个IP包头:外部IP包头和内部IP包头。外部IP包头指定将对IP数据包进行IPSec处理的目的地址,内部IP包头指定原始IP数据包最终的目的地址。传输模式SA只能用于两个主机之间的IP通信,而隧道模式SA既可以用于两个主机之间的IP通信,还可以用于两个安全网关之间或一个主机与一个安全网关之间的IP通信。安全网关可以是路由器、防火墙或VPN设备。作为IPv6的一个组成部分,IPSec是一个网络层协议。它只负责其下层的网络安全,并不负责其上层应用的安全,如Web、电子邮件和文件传输等。因此,验证一个Web会话,依然需要使用SSL协议。

5)IPv4向IPv6的过渡

尽管IPv6比IPv4具有明显的先进性,但是要想在短时间内将Internet和各个企业网络中的所有系统全部从IPv4升级到IPv6是不可能的。IPv6与IPv4系统在Internet中长期共存是不可避免的现实。因此,实现由IPv4向IPv6的平稳过渡是导入IPv6的基本前提。确保过渡期间IPv4网络与IPv6网络互通是至关重要的。目前,从IPv4过渡到IPv6的方法有三种。

(1)兼容IPv4的IPv6地址。兼容IPv4的IPv6地址是一种特殊的IPv6单点广播地址,一个IPv6节点与一个IPv4节点可以使用这种地址在IPv4网络中通信。这种地址是由96个0位加上32位IPv4地址组成的。例如,假设某节点的IPv4地址是,那么兼容IPv4的IPv6地址就是0:0:0:0:0:0:C038:103。

(2)双IP协议栈。双IP协议栈是指在一个系统(如一个主机或一个路由器)中同时使用IPv4和IPv6两个协议栈。这类系统既拥有IPv4地址,也拥有IPv6地址,因而可以收发IPv4和IPv6两种IP数据包。

(3)基于IPv4隧道的IPv6。与双IP协议栈相比,基于IPv4隧道的IPv6是一种更为复杂的技术,它将整个IPv6数据包封装在IPv4数据包中,由此实现在当前IPv4网络中的IPv6节点与IPv4节点之间的IP通信。

基于IPv4隧道的IPv6实现过程分为三个步骤:封装、解封和隧道管理。封装是指由隧道起始点创建一个IPv4数据包头,将IPv6数据包装入一个新的IPv4数据包中。解封是指由隧道终结点移去IPv4包头,还原原始的IPv6数据包。隧道管理是指由隧道起始点维护隧道的配置信息,如隧道支持的最大传输单元(MTU)的尺寸等。IPv4隧道有四种方案:路由器对路由器、主机对路由器、主机对主机、路由器对主机。

6)IPv6与移动通信技术之间的关系

在制定下一代移动通信系统标准时,已经决定在下一代移动通信技术的基本协议中采用IPv6。2000年底,诺基亚公司推出了世界上第一个支持IPv6的端到端的GPRS网络。该网络的推出是迈向新一代IP移动网络的重要一步。

IPv6具备许多适合移动通信设备的功能和优点,但目前安全性是制约IPv6应用于移动通信的一个重要因素,这主要是由于移动通信所依赖的传输介质及移动通信设备应具有的漫游功能所引起的。IPv6技术的成熟和发展也将进一步带动移动设备IPv6化的进程。

7)IPv6的缺点

(1)需要在整个互联网和它所连接到的设备上建立对IPv6的支持。

(2)从IPv4访问时的转换过程中,网关路由器(IPv6←[KG-*3]→IPv4)还是需要一个IPv4地址和一些NAT,增加了它的复杂性,这意味着IPv6许诺的巨大的空间地址不能够立刻被有效的使用。

(3)遗留的结构问题,例如在对IPv6多归属主机特性(multihoming)支持上一致性的匮乏。

(4)转换机制问题。直到IPv6获得广泛的使用和路由下部构造的支持之前,还是需要一种机制来在IPv4网中使用IPv6,如在双协议栈节点间配置静态IPv6-in-IP通道,或采用自动的非对称的隧道机制。这些隧道通过将IPv6包包装在IPv4包中,这些包头的协议字段值为41,因此叫做proto-41。类似的ISATAP允许IPv6包在下层组织都是IPv4的网络中传输,它也使用协议号41。当使用NAT设备的网络使用IPv6时,大多数的NAT设备并没有对proto-41进行正确的转发,可以使用Teredo协议在IPv4中基于U

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论