网络工程师教程(第二部)

文章深入探讨了网络互连原理,涵盖设备如路由器、网关功能,介绍了IP协议、ICMP作用,以及IPv4到IPv6的过渡策略。讨论了TCP/IP协议簇内IP、UDP的区别与协作,讲解了VLSM、CIDR等IP管理技术,还涉及QoS模型与网络层协议的实现,最后简述了IPv6特性与过渡方案。
摘要由CSDN通过智能技术生成

目录

第六章:网络互连与互联网

第七章:下一代互联网

(3)从移动IPv4向IPv6的过渡:


第六章:网络互连与互联网

关于网络互连与互联网,你需要掌握的知识点包括网络互连设备,如中继器、集线器、网桥、交换机、路由器和网关等¹。你还需要了解因特网协议IP和控制报文协议ICMP。此外,你还应该了解OSI七层模型的各层功能,包括应用层、表示层、会话层、传输层、网络层、链路层和物理层。

网络互连的目的是将多个网络互相连接,以实现在更大范围内的信息交换、资源共享和协同工作。网络互连的基本原理包括使用不同的设备在不同层次上进行互连,如物理层的中继器、数据链路层的网桥和交换机、网络层的路由器和应用层的网关等。

关键技术包括路由选择算法,如距离矢量路由选择和链路状态路由选择等。此外,还有内部网关协议和外部网关协议等¹。这些都是网络互连的基本原理和关键技术。

(1)网络互连设备

(2)网络互连的基本原理和关键技术 (扩展:TCP/IP协议簇)

(3)Internet协议及其提供的网络服务

一、网络互连设备和广域网互连

(1)网络互连设备包括物理层的中继器、数据链路层的网桥和交换机、网络层的路由器和应用层的网关等。这些设备在不同层次上进行互连,以实现网络之间的信息交换和资源共享。

中继器是一种物理层设备,它用于在不同电缆段之间复制位信号,只起到放大信号的作用,驱动长距离通信。

网桥和交换机是数据链路层设备,它们用于在局域网之间存储、转发帧。

路由器是一种网络层设备,它用于在不同网络间存储、转发分组。

网关是一种应用层设备,它提供高层接口,用于协议转换等。

这些设备都是网络互连的重要组成部分,它们共同协作,实现网络之间的互联互通。

(2)广域网互连

一般来说,采用在网络层进行协议转换的办法实现。例如:实现对X.25分组交换网(!!)和因特网(局域网)的互连。重点在于无连接的网际互连。例如:IP协议也是一种无连接的协议。这意味着在传输数据之前,不需要建立任何连接。数据包被独立地发送到目的地,而不需要先建立一个连接。

分类:面向连接的互连方式无连接的互连方式

无连接的网络协议(CLNP)

无连接网络协议(CLNP)是一种 ISO 网络层数据报协议,它定义在国际标准化组织 ISO 7498 参考模型中。 CLNP 与 TCP/IP 环境下的 IP 相类似,基本上用来向传输层提供底层服务。在传输数据之前,不需要建立任何连接。

二、网络互连的基本原理和关键技术

接上面的无连接网络互连:IP协议。

扩展:IP协议和TCP/UDP协议之间既有区别又有联系。它们都属于TCP/IP协议簇,但处于不同的层次。IP协议负责在网络上发送数据包,而TCP/UDP协议负责在两个主机之间建立端到端的连接并进行数据传输。TCP/UDP协议依赖于IP协议来发送数据包。(下层为上层协议提供服务。)

更细致一点:关于IP无连接方式和UDP的无连接方式

IP协议是一种网络层协议,它负责将数据包传送到目的主机。IP协议通过IP地址信息将数据包发送到指定的电脑。

而UDP协议是一种传输层协议,它建立在IP协议之上,负责将数据包传送到应用程序。UDP通过端口号将数据包分发给正确的程序。

举个例子,假设你正在玩王者荣耀,你的电脑会通过IP协议将数据包发送到游戏服务器,然后游戏服务器会通过UDP协议将数据包分发给王者荣耀这个程序。

UDP协议传输速度快,但不能保证数据可靠性。因此,它常用于对速度要求高、但对数据完整性要求不严格的领域,如在线视频和互动游戏等。

更细致细致一点:

IP协议和UDP协议都是无连接的传输方式。这意味着它们在传输数据之前不需要建立连接。

IP协议和UDP协议的无连接方式并没有本质区别。它们都是在传输数据之前不需要建立连接,而是直接发送数据包。

举个例子,假设你正在使用浏览器访问一个网站。浏览器会通过IP协议将数据包发送到网站服务器,然后网站服务器会通过UDP协议将数据包分发给网站应用程序。在整个过程中,浏览器和网站服务器之间并没有建立连接,而是直接发送数据包。因为UDP/TCP是端到端的连接,而IP只负责发送到目的地。

不过,需要注意的是,虽然IP协议和UDP协议都是无连接的传输方式,但它们在网络模型中处于不同层次,并且负责不同的任务。IP协议负责将数据包传送到目的主机,而UDP协议负责将数据包传送到应用程序。

(1)IP协议

IP协议提供了一种无连接、不可靠的、尽力而为的数据包传输服务。这意味着在传输数据之前,不需要建立任何连接。数据包被独立地发送到目的地,而不需要先建立一个连接。这就像寄信一样,你只需要写上地址并投递,而不需要先与收件人建立联系。

分类:

IP地址根据网络号和主机号来分,分为A、B、C三类及特殊地址D、E。

A类地址的第一个字节为网络号,后三个字节为主机号。它的范围是1.0.0.0-126.0.0.0,且默认子网掩码为255.0.0.0或 0xFF000000。

B类地址的第一组数字为128~191。

C类地址的第一组数字为192~223。

D类地址用于多点广播 (Multicast)。也称为组播地址。

E类地址以“llll0”开始,为将来使用保留。

VLSM(可变长子网掩码)是一种网络管理员常用的IP寻址技术,它可以对子网进行层次化编址,以便最有效的利用现有的地址空间。VLSM的主要作用是将IP网段进行分割,达到节省IP地址空间的目的。

VLSM(可变长子网掩码)的优缺点:

VLSM(可变长子网掩码)的主要优点是它可以对子网进行层次化编址,以便最有效的利用现有的地址空间。这意味着网络管理员可以根据实际需求分配不同大小的子网,从而更好地管理IP地址资源。

然而,VLSM也有一些缺点。由于它允许使用不同长度的子网掩码,这可能会使网络配置变得更加复杂。此外,不是所有的路由协议都支持VLSM,因此在使用VLSM时需要注意网络设备和协议的兼容性。

CIDR(Classless Inter-Domain Routing,无类域间路由)是一种用于分配IP地址和进行IP路由的方法。它由互联网工程任务组(Internet Engineering Task Force)于1993年引入,以取代互联网上之前的基于类的网络寻址架构。它的目的是减缓互联网上路由器的路由表增长速度,并帮助减缓IPv4地址的快速耗尽。

IP协议具有的一些操作:数据报生存期、分段和重装配、差错控制和流控

IP协议的数据格式:

IP协议的数据格式指的是IP数据报的格式。IP数据报由首部和数据两部分组成。首部包含了一些重要的信息,如版本号、首部长度、服务类型、总长度、标识、标志位、片偏移、生存时间、协议、首部校验和、源地址和目的地址等。

IP协议首部中各字段的作用如下:

- 版本号(Version):指定IP协议的版本,目前广泛使用的IP协议版本号为4。
- 首部长度(Header Length):表示IP协议的头部长度,用来作为header和payload之间的区分。
- 服务类型(Type of Service):指定数据报的优先级和服务质量。
- 总长度(Total Length):以字节为单位,指整个IP数据报的长度,包括IP首部和负载。
- 标识(Identification):用于标识数据报,以便在分片时能够正确地重组数据报。
- 标志位(Flags):用于控制数据报的分片和重组
- 片偏移(Fragment Offset):指出某片在分片操作后在原分组中的相对位置。
- 生存时间(Time to Live):设置了数据报可以经过的最多的路由器数,以防止数据报在网络中无限循环。
- 协议(Protocol):表明IP数据报中的数据部分所使用的协议类型。
- 首部校验和(Header Checksum):用于检查首部是否有错误。
- 源地址(Source Address):表示发送方的IP地址。
- 目的地址(Destination Address):表示接收方的IP地址。

(2)ICMP协议

ICMP(Internet Control Message Protocol,互联网控制消息协议)是一种用于TCP/IP网络中发送控制消息的协议。它属于网络层协议,主要用于在主机与路由器之间传递控制信息,包括报告错误、交换受限控制和状态信息等。

ICMP协议提供了一种机制,用于报告可能发生在通信环境中的各种问题。通过这些信息,网络管理者可以对所发生的问题作出诊断,然后采取适当的措施解决问题。

ICMP报文格式:

ICMP报文格式由一个8字节的首部和可变长度的数据部分组成。首部包括以下字段:

- 类型(Type):8位,指定ICMP报文的类型。
- 代码(Code):8位,提供进一步的关于类型字段的信息。
- 校验和(Checksum):16位,用于检测数据传输中的错误。

数据部分的内容取决于类型和代码字段的值。例如,对于“目的不可达”类型的ICMP报文,数据部分包含了导致错误的IP数据报的首部和前8个字节的数据。

ICMP报文有多种类型,常见的类型包括:

- 回显应答(响应)(Echo Reply,类型值为0):用于响应回显请求报文。
- 目的不可达(Destination Unreachable,类型值为3):用于指示数据报无法到达目的地。
- 源抑制(Source Quench,类型值为4):用于请求发送方减少数据发送速率。
- 重定向(Redirect,类型值为5):用于通知发送方更改路由。
- 回显请求(请求)(Echo Request,类型值为8):用于测试目的地是否可达。
- 超时(Time Exceeded,类型值为11):用于指示数据报在传输过程中超时。

(区别)IP协议和ICMP协议都属于网络层协议,但它们的作用不同。

IP协议(Internet Protocol)是一种用于在网络上发送数据包的协议。它定义了数据包的格式和如何在网络上发送路由数据包。IP协议提供了一种尽力而为的服务,它不保证数据包能够到达目的地,也不保证数据包的顺序。

ICMP协议(Internet Control Message Protocol)是一种用于TCP/IP网络中发送控制消息的协议。它用于报告可能发生在通信环境中的各种问题,如目的地不可达、超时等。ICMP协议提供了一种机制,用于报告可能发生在通信环境中的各种问题。通过这些信息,网络管理者可以对所发生的问题作出诊断,然后采取适当的措施解决问题。

总之,IP协议负责在网络上发送数据包,而ICMP协议负责报告可能发生在通信环境中的各种问题。

扩展:

原来这样,TCP/IP协议簇其实就是我们第一章提到过的TCP/IP体系结构(和osi体系结构对应的另一种)

TCP/IP协议簇是一个由多个网络协议组成的协议栈,它定义了计算机在因特网上进行通信时所需遵循的规则。TCP/IP协议簇包括四层协议,分别是链路层、网络层、传输层和应用层。

- 链路层:负责在物理媒介上发送和接收数据帧。常见的链路层协议有以太网协议和Wi-Fi协议。
- 网络层:负责在网络上发送数据包并进行路由选择。常见的网络层协议有IP协议和ICMP协议。
- 传输层:负责在两个主机之间建立端到端的连接并进行可靠传输。常见的传输层协议有TCP协议和UDP协议。
- 应用层:负责为应用程序提供网络服务。常见的应用层协议有HTTP协议、FTP协议和SMTP协议等。

(3)传输层的TCP和UDP协议

TCP(Transmission Control Protocol,传输控制协议)和UDP(User Datagram Protocol,用户数据报协议)都是传输层协议,它们负责在两个主机之间建立端到端的连接并进行数据传输。

TCP是一种面向连接的协议,它提供了一种可靠的数据传输服务。在TCP连接建立之前,通信双方需要进行三次握手来建立连接。TCP通过序号、确认号、重传机制和流量控制等机制来保证数据的可靠传输。TCP适用于对数据传输可靠性要求较高的应用,如文件传输、电子邮件和网页浏览等。

UDP是一种无连接的协议,它提供了一种不可靠的数据传输服务。UDP不需要建立连接,通信双方可以直接发送数据。UDP不保证数据的可靠传输,也不提供流量控制等机制。由于UDP协议简单且开销小,它适用于对实时性要求较高的应用,如在线视频和语音通话等。

TCP协议:

TCP格式:

TCP报文头由10个强制字段共20个字节和一个0到40字节的可选数据字段组成。强制字段包括:

- 源端口号(2字节):用于标识发送方的端口号。
- 目的端口号(2字节):用于标识接收方的端口号。
- 序号(4字节):用于标识发送的数据字节流。
- 确认序号(4字节):用于确认接收到的数据。
- 首部长度(4位):用于指示TCP报文头的长度。
- 标志位(6位):包括URG、ACK、PSH、RST、SYN和FIN等标志,用于控制TCP连接的建立、维护和终止。
- 窗口大小(2字节):用于流量控制,指示接收方的接收窗口大小。
- 检验和(2字节):用于检验数据传输的正确性。
- 紧急指针(2字节):仅在URG标志为1时有效,指示紧急数据的位置。
- 可选字段(0-40字节):用于传输额外的信息。

TCP报文头中的标志位包括6个标志,分别是URG、ACK、PSH、RST、SYN和FIN。它们的作用如下:

  • URG:紧急指针标志。当URG=1时,表示紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送。
  • ACK:确认标志。当ACK=1时,表示确认号字段有效。它用于确认接收到的数据。
  • PSH:推送标志。当PSH=1时,表示接收方应该尽快将数据推送给上层应用,而不是缓存起来。
  • RST:复位标志。当RST=1时,表示TCP连接出现严重错误,需要释放连接并重新建立连接。
  • SYN:同步标志。当SYN=1时,表示这是一个连接请求或连接接受报文。
  • FIN:终止标志。当FIN=1时,表示发送方已经发送完毕,并请求释放连接。

TCP拥塞控制:

TCP拥塞控制是传输控制协议(TCP)用来避免网络拥塞的一种算法。它通过控制发送方的数据传输速率来防止网络拥塞。TCP拥塞控制主要包括四种算法:慢开始、拥塞避免、快速重传和快速恢复

- 慢开始:在TCP连接建立时,发送方的拥塞窗口(cwnd)被初始化为1个报文段的大小。每当发送方收到一个确认报文时,它就将cwnd加倍,直到cwnd达到慢开始门限(ssthresh)为止。
- 拥塞避免:当cwnd达到ssthresh时,发送方进入拥塞避免阶段。在这个阶段中,每当发送方收到一个确认报文时,它就将cwnd增加1个报文段的大小,使cwnd缓慢增长。
- 快速重传:当发送方连续收到三个重复的确认报文时,它就会立即重传丢失的报文段,而不是等待重传计时器超时。
- 快速恢复:当发送方进入快速重传阶段时,它会将ssthresh减半,并将cwnd设置为ssthresh加上三个报文段的大小。然后进入拥塞避免阶段。

UDP协议:

UDP协议运行在IP协议层之上,它不提供连接,只是在IP协议之上加上端口寻址功能,主要表现在UDP头上。

UDP头格式:

UDP报文由报头和数据区两部分组成。报头由4个16位长(2字节)字段组成,分别说明该报文的源端口、目的端口、报文长度和校验值。

- 源端口:这个字段占据UDP报文头的前16位,通常包含发送数据报的应用程序所使用的UDP端口。
- 目的端口:这个字段占据UDP报文头的第二个16位,包含接收数据报的应用程序所使用的UDP端口。
- 长度:这个字段占据UDP报文头的第三个16位,表示UDP数据报长度,包括UDP报文头和UDP数据长度。
- 校验值:这个字段占据UDP报文头的第四个16位,用于检验数据在传输过程中是否被损坏。

注意:IP的校验和只作用于IP头,并不包括数据部分,而UDP的校验和是对用户数据进行校验的。

端口(TCP、UDP)和IP地址的关联:

Internet地址分为三级,可表示为“网络地址、主机地址、端口地址的形式”。

网络地址和主机地址指的是IP地址。端口地址是指计算机网络中的TCP或UDP地址,一个应用程序或进程所占用的通信端点。

(4)域名系统及关键协议:

域名系统(DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。简单来说,DNS就像是互联网的联系人列表。所有互联网服务器都使用Internet协议(IP)地址,这些地址通常都是几组由句点分隔的数字(例如123.456.789.100)。然而,Web旨在通过我们可以记住的域名来提供简单的用户体验,例如www.oracle.com。DNS是将域名与其正确的IP地址联系起来的系统。当Web用户在浏览器中输入域名时,本地互联网服务提供商(ISP)将使用DNS来识别域名的正确IP,从而允许网络用户下载所需的页面或资产。

地址分解协议(ARP协议):

地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。

ARP协议是根据IP地址获取物理地址的一个TCP/IP协议。它的作用是在主机ARP高速缓存中存放一个从IP地址到硬件地址的映射表,并且这个映射表经常动态更新。每一台主机都设有一个ARP高速缓存,里面有本局域网上的各主机和路由器的IP地址到硬件地址的映射表。

例如,当主机A要向主机B发送信息时,主机A首先查看自己的ARP缓存表,确定其中是否包含有主机B对应的ARP表项。如果找到了对应的MAC地址,则主机A直接利用ARP表中的MAC地址,对IP数据包进行帧封装,并将数据包发送给主机B。如果主机A在ARP表中找不到对应的MAC地址,则将缓存该数据报文,然后以广播方式发送一个ARP请求报文。由于ARP请求报文以广播方式发送,该网段上的所有主机都可以接收到该请求,但只有被请求的主机(即主机B)会对该请求进行处理。之后以单播方式发送ARP响应报文给主机A,其中包含了自己的MAC地址。主机A收到ARP响应报文后,将主机B的MAC地址加入到自己的ARP表中以用于后续报文的转发,同时将IP数据包进行封装后发送出去。

ARP协议在网络通讯中起着重要作用,它能够帮助设备快速获取目标设备的物理地址并进行通讯。

RARP(Reverse Address Resolution Protocol,反向地址解析协议):

RARP(Reverse Address Resolution Protocol,反向地址解析协议)允许局域网的物理机器从网关服务器的ARP表或缓存上请求其IP地址。网络管理员在局域网的网关路由器里创建一个表以映射物理地址(MAC)和与其对应的IP地址。当设置一台新的机器时,其RARP客户机程序需要向路由器上的RARP服务器请求相应的IP地址。假设在路由表中已经设置了一个记录,RARP服务器将会返回IP地址给机器,此机器就会存储起来以便日后使用。RARP可以使用于以太网、光纤分布式数据接口及令牌环LAN。简单来说,RARP协议是通过MAC地址查询IP地址的协议,主要用于有MAC地址但没有IP地址的情况。

RARP协议的工作原理如下:发送主机发送一个本地的RARP广播,在此广播包中,声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址。本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址。如果存在,RARP服务器就给源主机发送一个响应数据包并将此IP地址提供给对方主机使用。如果不存在,RARP服务器对此不做任何的响应。源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。

RARP协议的作用是完成硬件地址到IP地址的映射,它允许局域网的物理机器从网关服务器的ARP表或缓存上请求其IP地址。

举例来说,当一台新设备加入局域网时,它只知道自己的MAC地址而不知道自己的IP地址。这时候它可以通过发送一个本地的RARP广播来请求分配一个IP地址。本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址。如果存在,则返回给该设备以便日后使用。

(5)网关协议

Internet中的路由器被称作IP网关。网关协议用于网关之间交换路由信息。网关协议分为内部网关协议(IGP)和外部网关协议(EGP)。自治系统内部的网关之间执行内部网关协议(IGP),互相交换路由信息。在不同自治系统中的网关之间交换路由信息,要用外部网关协议(EGP)。

外部网关协议:

外部网关协议(EGP)是一种在不同自治系统中的路由器交换路由信息的路由协议。EGP 可用于连接服务提供商和大公司,由于它们位于不同的系统中,因此此过程通常更复杂且不太常见,计算机网络在其默认系统之外进行通信的要求可能会增加复杂性。边界网关协议 (BGP) 是 Internet 的官方路由协议,是目前唯一有效的 EGP

边界网关协议(Border Gateway Protocol,BGP)是一种用来在路由选择域之间交换网络层可达性信息(Network Layer Reachability Information,NLRI)的路由选择协议。BGP有两种运行方式,当BGP运行于同一AS内部时,被称为IBGP(Internel BGP,内部边界网关协议);当BGP运行于不同AS之间时,称为EBGP(Externel BGP,外部边界网关协议)。

BGP报文共有五种类型:Open、Update、Notification、Keepalive和Route-refresh。Open报文用于建立BGP对等体(邻居关系)之间的连接关系。Update报文用于在对等体之间交换路由信息。Notification报文用于报告错误状态。Keepalive报文用于保持连接的有效性。Route-refresh报文用来请求对等体重新发送所有的可达路由信息。

举个例子,假设有两个AS,AS1和AS2,它们之间有一个BGP对等体关系。当AS1中有一条新的路由信息时,它会通过Update报文将这条路由信息发送给AS2。如果AS2检测到这条路由信息有误,则会通过Notification报文向AS1报告错误状态。双方会周期性地发送Keepalive报文来保持连接的有效性。如果AS2需要更新所有的可达路由信息,则可以发送Route-refresh报文来请求AS1重新发送所有的可达路由信息。

内部网关协议(路由协议):

也称为路由协议,是路由器之间实现路由交换的机制。而IP协议是根据路由表进行分组转发的协议,它不是路由协议,应该称作为被路由的协议

内部网关协议(Interior Gateway Protocol,IGP)是指在一个自治系统(AS)内部所使用的一种路由协议。它允许单个自治系统内的路由器相互通信路由信息。在内部网络中,企业、组织甚至服务提供商都使用IGP。IGP具有以下特征之一:开放最短路径优先 (OSPF)、路由信息协议 (RIP)、中间系统到中间系统 (IS-IS)、增强型内部网关路由协议 (EIGRP)

路由信息协议 (RIP):

扩展:VLSM(可变长子网掩码)与CIDR(无类别域间路由)

路由信息协议(Routing Information Protocol,RIP)是基于距离矢量算法的路由协议,利用跳数来作为计量标准,不超过15跳。其中RIPv1为有类别路由协议,不支持VLSM和CIDR;以广播的形式发送报文;不支持认证。RIPv2为无类别路由协议,支持VLSM,支持路由聚合与CIDR;支持以广播或组播(224.0.0.9)方式发送报文;支持明文认证和MD5密文认证。

解决环路问题:

距离矢量路由协议中路由环路问题的解决方法主要分为六种:1.定义最大值;2.水平分割技术;3.路由中毒;4.反向路由中毒;5.控制更新时间;6.触发更新。

1. 定义最大值:距离矢量路由算法可以通过IP头中的生存时间(TTL)来纠错,但路由环路问题可能首先要求无穷计数。为了避免这个延时问题,距离矢量协议定义了一个最大值。

2. 水平分割技术:一种消除路由环路并加快网络收敛的方法是通过叫做“水平分割”的技术实现的。其规则就是不向原始路由更新的方向再次发送路由更新信息

3. 路由中毒:在路由信息在路由表中失效时,先将度量值变为无穷大,而不是马上从路由表中删掉这条路由信息。再将其信息发布出去,这样相邻的路由器就得知这条路由已无效了。

4. 反向路由中毒:收到路由中毒消息的路由器,不遵守水平分割原则将中毒消息转发给所有的相邻路由器,也包括发送中毒信息的源路由器,也就是通告相邻路由器这条路由信息已失效了,主要目的是达到快速收敛的目的。

5. 控制更新时间:抑制计时器用于阻止定期更新的消息在不恰当的时间内重置一个已经坏掉的路由。抑制计时器告诉路由器把可能影响路由的任何改变暂时保持一段时间,抑制时间通常比更新信息发送到整个网络的时间要长。

6. 触发更新:正常情况下,路由器会定期将路由表发送给邻居路由器。而触发更新就是立刻发送路由更新信息,以响应某些变化。检测到网络故障的路由器会立即发送一个更新信息给邻居路由器,并依次产生触发更新通知它们的邻居路由器,使整个网络上的路由器在最短的时间内收到更新信息,从而快速了解整个网络的变化。

OSPF(开放式最短路径优先)协议:

OSPF(开放式最短路径优先)是一种基于链路状态的内部网关协议(Interior Gateway Protocol),由IETF组织开发。它通过链路状态通告LSA(Link State Advertisement)的形式发布路由,并依靠在OSPF区域内各设备间交互OSPF报文来达到路由信息的统一。OSPF报文封装在IP报文内,可以采用单播或组播的形式发送。目前针对IPv4协议使用的是OSPF Version 2(RFC2328);针对IPv6协议使用OSPF Version 3(RFC2740)。

OSPF(开放式最短路径优先)通过Dijkstra最短路径优先算法SPF(Shortest Path First)计算路由,解决环路问题。(一个是协议,一个是算法)

OSPF区域、OSPF网络类型、OSPF路由器、链路状态公告、OSPF报文:

OSPF区域:OSPF协议将一个自治系统划分为多个区域,每个区域都有一个32位的区域ID。每个区域都有一个区域边界路由器(Area Border Router,ABR),它负责在区域之间交换路由信息。OSPF支持多种类型的区域,包括普通区域、骨干区域、汇聚区域(存根区域)和非汇聚服务区域(不完全存根区域)(Not-So-Stubby Area,NSSA)。

OSPF网络类型:OSPF协议支持四种网络类型,分别是点到点网络、广播型网络、非广播多址网络(Non-Broadcast Multi-Access,NBMA)(例如X.25分组交换网)和点到多点网络。

OSPF路由器:OSPF协议中定义了多种类型的路由器,包括内部路由器(Internal Router)、区域边界路由器(Area Border Router,ABR)、自治系统边界路由器(Autonomous System Boundary Router,ASBR)和备份指定路由器(Backup Designated Router,BDR)。

链路状态公告:链路状态公告(Link State Advertisement,LSA)是OSPF协议中用于交换链路状态信息的报文。每台路由器都会根据自己周围的网络拓扑结构生成LSA,并通过更新报文将LSA发送给网络中的其他路由器。OSPF协议定义了多种类型的LSA,包括Router-LSA、Network-LSA、Network-summary-LSA、ASBR-summary-LSA、AS-external-LSA和NSSA LSA。

OSPF报文:(这些报文通过TCP连接传送)OSPF协议定义了五种类型的报文,分别是Hello报文、数据库描述报文(Database Description packet,DBD)、链路状态请求报文(Link State Request packet,LSR)、链路状态更新报文(Link State Update packet,LSU)和链路状态确认报文(Link State Acknowledgment packet,LSAck)。Hello报文用于发现和维护邻居关系;数据库描述报文用于描述本地链路状态数据库的摘要信息;链路状态请求报文用于向对方请求所需的LSA;链路状态更新报文用于向对方发送其所需要的LSA;链路状态确认报文用来对收到的LSA进行确认。

RIP和OSPF的比较:

在OSPF出现前,网络上广泛使用RIP(Routing Information Protocol)作为内部网关协议。由于RIP是基于距离矢量算法的路由协议,存在着收敛慢、路由环路、可扩展性差等问题,所以逐渐被OSPF取代。OSPF作为基于链路状态的协议,能够解决RIP所面临的诸多问题。此外,OSPF还有以下优点:OSPF可以采用组播形式收发报文,这样可以减少对未运行OSPF的路由器的影响;OSPF支持无类型域间选路(CIDR);OSPF支持对等价路由进行负载分担;OSPF支持报文验证。

OSPF和RIP都是内部网关协议(Interior Gateway Protocol),但它们之间存在一些重要的区别。

RIP是一种基于距离矢量算法的路由协议,它通过交换路由信息来获取路由。RIP使用跳数作为度量方式,忽略带宽的影响。RIP的跳数限制为15个,限制了RIP的网络规模。由于RIP是基于路由通告进行路由更新和选择,路由器不了解整个网络拓扑,容易产生路由环路。收敛速度慢,路由更新会经历一段抑制和垃圾收集期,容易导致路由器之间的路由不一致。不能处理可变长子网掩码(VLSM)。

OSPF是一种基于链路状态的协议,它通过交换链路状态信息来获取路由。OSPF考值,使用链路开销作为度量方式,并把带宽作为参度量方式更科学。没有跳数限制,适用的网络规模更大。每台路由器都能够掌握全网拓扑,通过最短路径优先算法SPF(Shortest Path First)计算路由,不会产生路由环路。收敛速度快,因为路由更新是及时的,并且能够快速传递到整个网络。能够处理VLSM,灵活进行IP地址分配。

例如,在一个大型网络中,如果使用RIP作为内部网关协议,则可能会出现收敛慢、路由环路、可扩展性差等问题。而如果使用OSPF,则能够解决这些问题。

OSPF报文格式:OSPF报文直接运行在IP之上(但通过TCP连接进行报文传送),IP协议字段号是89。OSPF有5种报文类型,分别是Hello报文、DD报文、LSR报文、LSU报文和LSAck报文。OSPF报文头部格式都是相同的,长度为24字节。其中,Version字段表示OSPF版本信息,OSPFv2值为2,OSPFv3值为3;Type字段表示OSPF报文类型,1表示HELLO报文,2表示DD报文,3表示LSR报文,4表示LSU报文,5表示LSAck报文;Packet length字段表示OSPF报文总长度,包括报文头在内,单位为字节。

OSPF的优点:OSPF作为一种基于链路状态的协议,能够快速收敛,并且能够避免路由环路的产生。它支持VLSM和CIDR,并且能够对等价路由进行负载分担。此外,OSPF还支持多种区域类型和多种网络类型。

OSPF的缺点:由于OSPF需要维护完整的链路状态数据库,并且需要运行复杂的最短路径优先算法来计算路由,因此它对路由器的计算能力和内存空间都有较高的要求。此外,由于OSPF需要在区域之间交换大量的链路状态信息,因此它对网络带宽也有一定的要求。

例如,在一个大型网络中,如果使用OSPF作为内部网关协议,则可以快速收敛,并且能够避免路由环路的产生。但是,如果网络中的路由器计算能力和内存空间不足,则可能会影响到OSPF的正常运行。

二、实现网络互连的关键技术

(1)路由器技术

(2)IP组播技术

(3)IP QoS技术

路由器的基本工作原理:路由器是一种计算机网络设备,提供了路由与转发机制,可以决定数据包从源到目的所经过的路径,这个过程就叫做路由;将路由器输入端的数据包交移到目的路由器,这个过程叫做转发。

路由协议:网络工程师需要熟悉各种常用的路由协议,如RIP、OSPF、BGP等,并且能够根据实际情况选择合适的路由协议。

NAT技术:NAT(Network Address Translation)技术能够实现私有IP地址和公网IP地址之间的转换,使得内部网络能够通过公网IP地址访问外部网络。

VLSM和CIDR:VLSM(Variable Length Subnet Mask)和CIDR(Classless Inter-Domain Routing)技术能够实现更加灵活的IP地址划分,提高了IP地址的利用率。

MPLS技术:MPLS(Multi-Protocol Label Switching)技术能够实现快速转发、VPN、流量工程等功能,提高了网络性能。

组播技术:组播技术能够实现一对多或多对多的数据传输,提高了网络传输效率。

QoS技术:QoS(Quality of Service)技术能够为不同类型的流量提供不同级别的服务质量,保证关键业务流量的优先传输。

(1)路由器技术:

解决IP地址短缺问题,NAT协议和CIDR协议。解决路由器吞吐率低下问题,第三层交换技术。、

NAT技术:

NAT(网络地址转换)是一种地址转换技术,它可以将IP数据报文头中的IP地址转换为另一个IP地址,并通过转换端口号达到地址重用的目的。NAT作为一种缓解IPv4公网地址枯竭的过渡技术,由于实现简单,得到了广泛应用。

NAT技术能够实现私有IP地址和公网IP地址之间的转换,使得内部网络能够通过公网IP地址访问外部网络。NAT有3种类型:静态NAT,动态NAT,端口复用NAPT。其中端口复用NAPT可以实现多个私网用户共同使用一个公网IP地址上网。

CIDR技术

CIDR(Classless Inter-Domain Routing,无类域间路由选择)是一种IP地址分配和路由选择的方法。它消除了传统的A类、B类和C类地址以及划分子网的概念,因而可以更加有效地分配IPv4的地址空间。CIDR可以将IP地址分成更小的子网,从而更有效地利用IP地址空间。CIDR还可以帮助网络管理员更好地控制网络流量和路由选择。

CIDR使用网络前缀代替以往的子网络概念,具体标识方式为:IP地址后加上“/”,“/”后的数字标识网络前缀长度,类似192.14.32.0/20的形式。前缀可调节的网络更灵活,因此CIDR技术可以更有效地分配IP地址。

第三层交换技术:

第三层交换是在网络交换机中引入路由模块而取代传统路由器实现交换与路由相结合的网络技术。第三层交换机可部署在使用传统路由器局域网的任何地方。第三层交换机中高级的ASIC技术可提供远远高于传统路由器的性能,使它们非常适合网络带宽密集的应用。另外,第三层交换机合并了典型路由器中相互分离的桥接(第二层)和路由(第三层)功能。它的工作原理:一次路由(也叫路径),多次交换。

MPLS技术简化了第三层分组的交换过程。

MPLS(多协议标签交换)是一种标签转发技术,它采用无连接的控制平面和面向连接的数据平面。无连接的控制平面实现路由信息的传递和标签的分发,面向连接的数据平面实现报文在建立的标签转发路径上传送。

MPLS的工作可以概括为两个过程:建立LSP、报文通过LSP转发。在MPLS转发面的工作过程中,Ingress LSR会对IP报文做一个push压入标签的动作,然后根据标签转发表转发。中间的LER设备会根据标签转发表进行转发,并且将标签进行更换。

举个例子,假设有一个IP数据包需要从网络的一端传输到另一端。当这个数据包到达MPLS网络的边缘时,它会被分配一个标签并被压入数据包中。然后,这个数据包会根据标签在MPLS网络中进行转发。在每个中间节点,标签会被更换为下一跳的标签。当数据包到达MPLS网络的另一端时,标签会被弹出并丢弃,数据包继续以普通IP数据包的形式传输。

(2)IP组播技术

工作原理:IP组播技术有效地解决了单点发送、多点接收的问题。组播源只发送一份数据,被传递的信息在距组播源尽可能远的网络节点才开始被复制和分发,并且只发送给需要该信息的接收者。相较于传统的单播和广播,IP组播可以有效地节约网络带宽、降低网络负载,所以被广泛应用于IPTV、实时数据传送和多媒体会议等网络业务中¹。

IP组播技术的优点在于它能够有效地节约网络带宽、降低网络负载。在组播网络中,即使用户数量成倍增长,主干带宽不需要随之增加⁴。

IP组播技术的缺点是它需要特殊的硬件和软件支持,以及额外的配置和管理工作。

举个例子,假设有一个在线直播应用,它需要将直播内容实时传输给全国各地的观众。如果使用传统的单播方式,信息源需要为每个观众都发送一份独立的数据流,这会对信息源以及网络带宽造成巨大压力。但是如果使用IP组播技术,信息源只需发送一份数据流,这份数据流会在距离信息源尽可能远的网络节点被复制和分发,并且只发送给需要该信息的观众。这样就大大节省了网络带宽和降低了网络负载。

组播地址范围:224.0.0.0~239.255.255.255

互联网组管理协议IGMP:

IGMP(Internet Group Management Protocol,互联网组管理协议)是TCP/IP协议族中负责IPV4组播成员管理的协议。它用来在接收者主机和直接相邻的组播路由器之间建立和维护组播组成员的关系。IGMP通过在接收者主机和组播路由器之间交互IGMP报文实现组成员管理功能,IGMP报文封装在IP报文中。

IGMP有三个版本,用于IPv4中一个网段内运行与组成员和路由器之间的协议:版本1 IGMPv1,版本2 IGMPv2,版本3 IGMPv3。用于IPV6中运行与组成员和组成员路由器之间的协议:版本1 MLDv1,等同于IGMPv2;版本2 MLDv2,等同于IGMPv3。

组播路由协议:

组播路由协议运行在三层组播设备之间,用于建立和维护组播路由表,并正确高效地转发组播报文。

PIM(Protocol Independent Multicast,协议独立组播)是一种IPv4和IPv6网络中的组播路由协议。它主要用于将网络中的组播数据流发送到有组播数据请求的组成员所连接的组播设备上,从而实现组播数据的路由查找与转发。PIM协议包括PIM-SM(Sparse Mode,稀疏模式)和PIM-DM(Dense Mode,密集模式)两种模式。

(3)IP QoS技术

IP QoS(Quality of Service,服务质量)技术是一种网络技术,它能够为不同类型的流量提供不同优先级、带宽和延迟等服务质量保证。QoS技术能够有效地解决网络拥塞问题,保证关键业务流量的优先传输,提高网络资源利用率。

传统的IP网络没有使用QoS机制,提供“尽力而为”(Best-Effort)服务。所有的报文都被无区别地同等对待,每个路由器对所有的报文均采用先进先出(First In First Out,FIFO)的策略进行处理,尽最大努力将报文传输到目的地。

分别研发了集成服务体系结构(ISA)、区分服务(DiffServ)、流量工程。

集成服务体系结构(Integrated Services Architecture,ISA)是一种指定了保证网络服务质量(Quality of Service,QoS)的元素的架构。它旨在为基于IP的互联网提供QoS传输,并在RFC 1633中定义。

集成服务IntServ:

集成服务(Integrated Services,IntServ)是一种计算机网络架构,它指定了保证网络服务质量(Quality of Service,QoS)的元素。例如,IntServ可以用来允许视频和声音无中断地到达接收器。IntServ指定了一种精细的QoS系统,通常与DiffServ的粗粒度控制系统形成对比。

工作原理:IntServ模型中,应用程序在发送报文前,需要通过信令(signaling)向网络描述它的流量参数,申请特定的QoS服务。网络在流量参数描述的范围内,预留资源以承诺满足该请求。在收到确认信息,确定网络已经为这个应用程序的报文预留了资源后,应用程序才开始发送报文。应用程序发送的报文应该控制在流量参数描述的范围内。网络节点需要为每个流维护一个状态,并基于这个状态执行相应的QoS动作,来满足对应用程序的承诺。

举例说明:假设您正在使用一个视频会议软件进行视频通话。视频通话软件会向网络发送一个信令请求,在其中描述它所需的带宽、延迟和丢包率等参数。然后,网络会检查是否有足够的资源来满足这些要求,并预留这些资源以供视频通话使用。当您开始视频通话时,您发送的视频和音频数据将被标记为具有高优先级,并且将获得所需的带宽、延迟和丢包率等QoS参数。

IntServ模型使用资源预约协议RSVP(Resource Reservation Protocol)作为信令,类似于ATM SVC的方式,是面向连接的。RSVP工作在传输层,但不参与应用数据的传送,是一种网络上的控制协议(类似于ICMP),用于在网络节点间传递资源预留信息以及建立资源预留。

服务类型:IntServ模型提供了两种服务类型:保证服务和负载控制服务。保证服务提供保证的带宽和延迟来满足应用程序的需求;负载控制服务保证即使在网络过载的情况下也能对报文提供与网络未过载时类似的服务。

IntServ模型优点是能够提供绝对、准确的QoS保障,不会随网络状态变化而受到影响。缺点是RSVP信令需要跨越整个网络进行资源请求/预留,因此要求端到端所有网络节点支持RSVP协议,且每个节点需要周期性同相邻节点交换状态信息,协议报文开销大。更关键的是,所有网络节点需要为每个数据流保存状态信息,而当前在Internet骨干网上有着成千上万条数据流,因此IntServ模型在Internet骨干网上无法得到广泛应用。IntServ模型一般应用在网络边沿。

区分服务(DiffServ):

区分服务(Differentiated Services,DiffServ)是一种计算机网络架构,它指定了保证网络服务质量(Quality of Service,QoS)的元素。DiffServ模型的基本原理是将网络中的流量分成多个类,每个类得到不同的处理,尤其是网络出现拥塞时不同的类会享受不同级别的处理。

区别:与IntServ模型不同,DiffServ模型不需要通知网络为每个业务预留资源。在DiffServ模型中,应用程序发出报文前,不需要预先向网络提出资源申请,而是通过设置IP报文头部的QoS参数信息,来告知网络节点它的QoS需求。网络不需要为每个流维护状态,而是根据每个报文流指定的QoS参数信息来提供服务,对报文的服务等级划分,有差别地进行流量控制和转发,提供端到端的QoS保证。

DiffServ模型实现简单,扩展性较好,使用较为普遍。它将具有相同特性的若干业务汇聚起来,为整个汇聚流提供服务,而不是面向单个业务流来提供服务。每个IP分组都要根据其QoS需求打上一个标记,这种标记称为DS码点(DS Code Point,DSCP),可以利用IPv4协议头中的服务类型(Type of Service)字段或者IPv6协议头中的通信类别(Traffic Class)字段来实现。

举例说明:假设您正在使用一个视频会议软件进行视频通话。视频通话软件会在发送视频和音频数据时,在IP报文头部设置QoS参数信息,告知网络节点它需要高优先级、低延迟和低丢包率等QoS参数。当这些数据到达网络节点时,节点会根据报文头部的QoS参数信息对其进行优先处理,并为其提供所需的带宽、延迟和丢包率等QoS参数。

区分服务和集成服务区别更加详细:

IntServ模型和DiffServ模型都是用来保证网络服务质量(Quality of Service,QoS)的计算机网络架构,但它们之间存在一些重要的区别。

IntServ模型中,应用程序在发送报文前,需要通过信令(signaling)向网络描述它的流量参数,申请特定的QoS服务。网络在流量参数描述的范围内,预留资源以承诺满足该请求。在收到确认信息,确定网络已经为这个应用程序的报文预留了资源后,应用程序才开始发送报文。应用程序发送的报文应该控制在流量参数描述的范围内。网络节点需要为每个流维护一个状态,并基于这个状态执行相应的QoS动作,来满足对应用程序的承诺。

与IntServ模型不同,DiffServ模型不需要通知网络为每个业务预留资源。在DiffServ模型中,应用程序发出报文前,不需要预先向网络提出资源申请,而是通过设置IP报文头部的QoS参数信息,来告知网络节点它的QoS需求。网络不需要为每个流维护状态,而是根据每个报文流指定的QoS参数信息来提供服务,对报文的服务等级划分,有差别地进行流量控制和转发,提供端到端的QoS保证。

总之,IntServ模型通过信令和资源预留来保证每个流的QoS需求得到满足;而DiffServ模型则通过对报文进行分类和标记,并根据报文头部的QoS参数信息来提供不同等级的服务。IntServ模型能够提供更精细、更精确的QoS保障,但由于需要为每个流维护状态信息和进行信令交互,其可扩展性较差;而DiffServ模型实现简单、可扩展性较好,但不能提供像IntServ模型那样精细、精确的QoS保障。

举例说明:假设您正在使用一个视频会议软件进行视频通话。由于视频通话对延迟、丢包率和带宽等QoS参数有着严格的要求,因此可以使用IntServ模型来保证视频通话的流畅性。在这种情况下,视频通话软件会向网络发送一个信令请求,在其中描述它所需的带宽、延迟和丢包率等参数。然后,网络会检查是否有足够的资源来满足这些要求,并预留这些资源以供视频通话使用。当您开始视频通话时,您发送的视频和音频数据将被标记为具有高优先级,并且将获得所需的带宽、延迟和丢包率等QoS参数。

另一方面,假设您正在使用Web浏览器浏览网页。由于Web浏览对延迟、丢包率和带宽等QoS参数的要求不是非常严格,因此可以使用DiffServ模型来提供基本的QoS保障。在这种情况下,Web浏览器会在发送HTTP请求时,在IP报文头部设置QoS参数信息,告知网络节点它需要基本的QoS保障。当这些数据到达网络节点时,节点会根据报文头部的QoS参数信息对其进行基本处理,并为其提供基本的带宽、延迟和丢包率等QoS参数。

流量工程:

流量工程是指根据各种数据业务流量的特性选取传输路径的处理过程。它用于平衡网络中不同交换机、路由器以及链路之间的负载。

MPLS的流量管理机制主要包括路径选择、负载均衡、路径备份、故障恢复、路径优先级及碰撞等。

三、Internet协议及其提供的网络服务(Internet应用层协议)

Internet的进程/应用层提供了丰富的分布式应用协议,比如几种应用协议:Telnet、FTP、SMTP、SNMP,全都由TCP或UDP支持,与ISO的体系结构不同,它们不需要表示层或会话层的支持。

远程登录协议(Telnet):

Telnet协议是一种最早的internet应用,它提供了一种通过终端远程登录到服务器的方式,呈现一个交互式操作界面。用户可以先登录到一台主机,然后再通过telnet的方式远程登录到网络上的其他主机上,而不需要为每一台主机都连接一个硬件终端,然后对设备进行配置和管理。不过,由于Telnet采用明文传送报文,安全性不好,很多服务器都不开放telnet服务,而改用更安全的ssh方式。

FTP(File Transport Protocol,文件传输协议):

FTP (File Transport Protocol,文件传输协议) 是网络上两台计算机传送文件的协议,运行在TCP之上,是通过Internet将文件从一台计算机传输到另一台计算机的一种途径。

FTP (File Transfer Protocol,文件传输协议) 是一种基于TCP的协议,采用客户/服务器模式。通过FTP协议,用户可以在FTP服务器中进行文件的上传或下载等操作。虽然现在通过HTTP协议下载的站点有很多,但是由于FTP协议可以很好地控制用户数量和宽带的分配,快速方便地上传、下载文件,因此FTP已成为网络中文件上传和下载的首选服务器。

FTP连接需要FTP服务器和客户端两方在网络上建立通信。建立FTP连接时会有两个不同的通信通道。一个被称为命令通道,它的作用是发出和响应指令。另一个为数据通道,用于客户端和服务器端进行数据交互。使用FTP传输文件时,用户需要通过向FTP服务器提供凭据来获得文件传输许可。当然某些公共FTP服务器可能不需要凭据即可访问其文件,但是无法保证数据传输的安全性。

SMTP(Simple Mail Transfer Protocol,简单邮件传输协议):

SMTP (Simple Mail Transfer Protocol,简单邮件传输协议) 是一种用于发送和接收电子邮件的信息的协议,但SMTP通常用作发送电子邮件信息,而不是接收。SMTP是一个相对简单的基于文本的协议。我们可以通过协议,指定将消息传送至一个或多个接收者。我们可以很简单地通过telnet程序来测试一个SMTP服务器。SMTP主要使用TCP端口25。

SMTP是一个“推送”协议,它不允许从远程服务器上接收消息。要接收消息到客户端,邮件客户端必须使用POP3(端口110)或IMAP。另一个SMTP服务器可以使用ETRN在SMTP上触发一个发送。

超文本传输协议(HTTP):

HTTP (HyperText Transfer Protocol,超文本传输协议) 是一种用于分布式、协作式和超媒体信息系统的应用层协议。它是万维网的数据通信的基础,也是互联网应用最为广泛的一种网络传输协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件、图片文件、查询结果等)。

HTTPS 协议是 HyperText Transfer Protocol Secure(超文本传输安全协议)的缩写,是一种通过计算机网络进行安全通信的传输协议。HTTPS 经由 HTTP 进行通信,但利用 SSL/TLS 来加密数据包,HTTPS 开发的主要目的,是提供对网站服务器的身份认证,保护交换资料的隐私与完整性。

P2P应用:

首先区分一下P2P技术和关于上面的几个协议所采用的C/S技术。

P2P技术(点对点应用)属于覆盖层网络 (Overlay Network)的范畴,是相对于客户机/服务器 (C/S)模式来说的一种网络信息交换方式。

在C/S模式中,数据的分发采用专门的服务器,多个客户端都从此服务器获取数据。这种模式的优点是:数据的一致性容易控制,系统也容易管理。但是此种模式的缺点是:因为服务器的个数只有一个 (即便有多个也非常有限),系统容易出现单一失效点;单一服务器面对众多的客户端,由于CPU能力、内存大小、网络带宽的限制,可同时服务的客户端非常有限,可扩展性差。P2P技术正是为了解决这些问题而提出来的一种对等网络结构。

在P2P网络中,每个节点既可以从其他节点得到服务,也可以向其他节点提供服务。这样,庞大的终端资源被利用起来,一举解决了C/S模式中的两个弊端。

P2P技术已经延伸到几乎所有的网络应用领域,如分布式科学计算、文件共享、流媒体直播与点播、语音通信及在线游戏支撑平台等方面。

习题和视频扩展:

TCP(传输层)封装在IP(网络层)数据包里面。尽管传输层是网络层的上一层。

一、IP协议以及配套协议

应用层(FTP、HTTP)-------运输层(TCP、UDP)--------网络层或称为网际层(主要是IP(包括ICMP、IGMP、RARP、ARP))------网络接口层

哦哦哦,是从上层往下传输,从接口层出去到外界。主机第一个开始发送。

补充:私有地址                              网络号                   网络数

A    10.0.0.0~10.255.255.255         10                              1

B    172.16.0.0~172.31.255.255                                      16

C                                                                                       256

组播IP:224.0.0.0~239.255.255.255   只能用于目的地址,不能用于源地址

特殊IP地址:

127.0.0.0~127.255.255.255      本地环回测试

169.254.0.0~169.254.255.255     Windows主机DHCP服务器(动态分配IP地址)故障分配

二、IP数据报

IP协议格式,

IP头(首部)长度为20字节,IHL字段:表示IP头长度,以32位字计数,最小为5,即20个字节。

用户数据:和IP头加一起最大不超过65535字节

三、ARP协议

过程:就是发送IP数据报时封装在MAC地址的源MAC和目标MAC,每两个路由器之间封装要发送的IP数据报。但不知道过程路由器的MAC,只知道目标IP,所以就需要ARP协议。

ARP分组封装在帧中。

ARP-a

ARP-d

arp -s ip-address mac-address

四、网际控制报文协议ICMP

分类:差错报告报文(5种)和询问报文(2种(回声,时间戳))

有四种情况不会发送ICMP报文:

根据我的搜索结果,有四种情况不会发送ICMP差错报文:

1. 对ICMP差错报告报文不再发送ICMP差错报告报文。(已发送的)
2. 对第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文。
3. 对具有(多播)组播地址的数据报都不发送ICMP差错报告报文。
4. 对具有特殊地址(127.0.0.1和0.0.0.0)不发送。

应用:

Ping命令

Traceroute/Tracert命令(前者是Linux系统),原理:就是发送一连串TTL值。

五、IPv6协议

补充:IPV6支持即插即用、支持资源的预分配(RSVP,也就是Qos的技术)

它添加了扩展首部信息,在RFC 2460定义六种扩展首部。

需要掌握它们的构成规则。

IPv6数据包的目的地址分为三种类型:单播、多播(组播)、任播(注意没有广播的概念)

单播:

这是第一种:001   .。。。。。。

全球路由选择前缀(前三位固定为001)

另外一种是:链路本地单播地址,前十位固定:1111 1110 10(换句话说就是链路本地地址以“FE80”开头)

这个是设备的接口在启动时自动配置的。

设置它的原因:用来“邻居发现”,因为IPv4的ARP不能在IPv6中工作(没有广播概念)。

路由器不会转发链路本地地址。

组播省略、任播地址:这个是IPv6特有,用来标识一组网络接口。

IPv6地址类型:图,要求掌握

地址类型               地址前缀           IPv6前缀标识

单播:

未指定地址            000……0                ::/128

环回地址                000……1               ::1/128          

链路本地地址        1111 1110 10(10位)        FE80::/10

站点本地地址        1111 1110 11(10位)         FEC0::/10    (已淘汰)

全球单播地址         前三位固定为001

组播:                    1111 1111                 FF00::/8

任播:                    从单播地址空间分配

还有两种特殊的IPv6地址:

6 to 4地址:   地址前缀为2002:a.b.c.d::/48

ISATAP(隧道)地址:接口ID必须为:0000:5EFE:w.x.y.z

IPv6协议的过渡方案:

目前业界主要分为三大类过渡方案:双栈、隧道和翻译。

**双协议栈技术**是指在网络节点上同时运行IPv4和IPv6两种协议,从而在IP网络中形成逻辑上相互独立的两张网络:IPv4网络和IPv6网络。

**隧道技术**是通过将一种IP协议数据包嵌套在另一种IP协议数据包中进行网络传递的技术,只要求隧道两端的设备支持两种协议。

**协议翻译技术**(NAT-PT技术,注意它和NAT技术的区别)对IPv6和IPv4报头进行相互翻译,实现IPv4/IPv6协议和地址的转换。

NAT-PT(Network Address Translation-Protocol Translation,附带协议转换的网络地址转换)技术秉承NAT技术(RFC2663)的思想,但在原理方面大有不同。可以这样简单的理解,NAT技术是IPv4私网地址与公网地址之间的转换,它是为了解决IPv4公网地址缺乏问题;NAT-PT技术则是IPv6协议与IPv4协议之间的转换,在RFC 2765与RFC 2766中给出了其定义它是为了解决两者的互通问题。

六、Qos(服务质量)

QoS(Quality of Service,服务质量)通常提供以下三种服务模型:

1. **Best-Effort service(尽力而为服务模型)**:它是一个单一的服务模型,也是最简单的服务模型。对Best-Effort服务模型,网络尽最大的可能性来发送报文。但对延时、可靠性等性能不提供任何保证。

2. **Integrated service(综合服务模型/集成服务)**:它可以满足多种QoS需求。

它的过程其实就是发送方发送信令告知path,接收方收到后,返回,并将沿途的路由器(节点)使用resv(资源预留)。本质是接收方——>发送方(RSVP)。是单向的资源预留。

3. **Differentiated service(区分服务模型)**:它将网络中的流量分成多个类,每个类享受不同的处理,尤其是网络出现拥塞时不同的类会享受不同级别的处理。

七、传输层概述

TCP和UDP报文结构:

TCP有序号、确认号保证可靠性。

1518(以太网帧)-18(帧头)-20(IP头)-20(TCP头)=1460

IP段的长度(1500)、IP数据部分的长度(1480)、TCP段的长度(1480)、TCP的数据部分(1460)

TCP的三次握手、四次握手。需要掌握它们的详细过程。

TCP协议的四大机制:

1.TCP字节编号的确认机制

TCP字节编号的确认机制是指TCP协议中的报文到达确认(ACK),它是对接收到的数据的最高序列号的确认,并向发送端返回一个下次接收时期望的TCP数据包的序列号(Ack Number)。返回是最高序列加1

举个例子,假设主机A发送的当前数据序号是400,数据长度是100,则接收端收到后会返回一个确认号是500的确认号给主机A。这个问题注意一下,因为是从400开始计,长度是100,就相当于0~99代表100的长度,最高序列是499,所以接收端应该返回500.

2.TCP流量控制机制

TCP流量控制机制是指当TCP连接处于数据传输状态时,两端系统之间通过控制接收缓存的大小来调节数据流量,以保证网络资源的合理利用。它利用滑动窗口机制可以很方便地在TCP连接上实现对发送方的流量控制。

举个例子,假设发送方A通过网络给接收方B发送数据,A发送的太快导致B没法接收(B缓冲窗口过小或者处理过慢),这时候的控制就是流量控制,原理是通过滑动窗口的大小改变来实现。

发送窗口只有接收到接收端的ACK确认才会移动发送窗口。

3.TCP拥塞控制机制(慢启动、拥塞避免)

4.TCP重传机制ARQ

之前学过,在广域通信网里面,x.25公用数据网的差错控制机制讲了ARQ协议的几种类型。考试有考过,怎么使用。

八、应用层协议

(DNS服务器、DHCP服务器、FTP服务器、邮件服务器、WEB服务器、代理服务器、IIS服务组件)

1.DNS服务器

根据工作性质划分:

根据地域性划分:

根域名服务器、顶级域名服务器、权限域名服务器和本地域名服务器。根域名服务器保存所有的顶级域名服务器的地址(但并不是保存所有的域名)。顶级域名服务器管理注册在该顶级域名下的所有二级域名,记录这些二级域名的IP地址。权限域名服务器负责管理某个特定区域内的所有主机信息。本地域名服务器通常由ISP提供,它会缓存查询过的DNS记录,以便更快地响应客户端的查询请求。

查询方式:递归、迭代。

客户机查询DNS顺序:

首先查询本地hosts文件看看是否有所需的IP地址。再检查自己的本地DNS缓存,如果也没有,最终客户机才会向网络中的DNS服务器发送查询请求。

DNS资源记录需要记忆(在后面第九章介绍DNS服务器有介绍,资源记录

2.DHCP(动态主机配置协议)服务器

报文类型:

DHCP(动态主机配置协议)服务器使用8种不同类型的报文与客户端进行通信。这些报文类型包括:

1. **Discover**:客户端以广播方式发送Discover请求报文,以发现网络中的DHCP服务器。
2. **Offer**:DHCP服务器收到Discover报文后,会在地址池中查找一个合适的IP地址,并构造一个Offer报文,发送给客户端,告知用户本服务器可以为其提供IP地址。(单播回应)
3. **Request**:客户端在收到多个Offer报文后,会选择一个并向该服务器发送一个广播的Request请求报文,通告选择的服务器,希望获得所分配的IP地址。当后期IP地址超过租期的50%时,客户端通过单播方式向同一个服务器发送申请续租。
4. **ACK**:DHCP服务器收到Request请求报文后,根据Request报文中携带的用户MAC来查找有没有相应的租约记录,如果有则发送ACK应答报文,通知用户可以使用分配的IP地址。
5. **NAK**:如果DHCP服务器收到Request请求报文后,没有发现有相应的租约记录或者由于某些原因无法正常分配IP地址,则向DHCP客户端发送NAK应答报文,通知用户无法分配合适的IP地址。
6. **Release**:当DHCP客户端不再需要使用分配IP地址时,就会主动向DHCP服务器发送RELEASE请求报文,告知服务器用户不再需要分配IP地址,请求DHCP服务器释放对应的IP地址。
7. **Decline**:DHCP客户端收到DHCP服务器ACK应答报文后,通过地址冲突检测发现服务器分配的地址冲突或者由于其他原因导致不能使用,则会向DHCP服务器发送Decline请求报文,通知服务器所分配的IP地址不可用。
8. **Inform**:DHCP客户端如果需要从DHCP服务器端获取更为详细的配置信息,则向DHCP服务器发送Inform请求报文;DHCP服务器在收到该报文后,将根据租约进行查找到相应的配置信息后,向DHCP客户端发送ACK应答报文。

DHCP(动态主机配置协议)的工作过程通常包括以下步骤:

1. DHCP客户端以广播方式发送**Discover**请求报文,以发现网络中的DHCP服务器。
2. 所有收到Discover报文的DHCP服务器都会发送**Offer**应答报文,告知客户端本服务器可以为其提供IP地址。
3. DHCP客户端在收到多个Offer报文后,会选择一个并向该服务器发送一个广播的**Request**请求报文,通告选择的服务器,希望获得所分配的IP地址。
4. DHCP服务器收到Request请求报文后,根据Request报文中携带的用户MAC来查找有没有相应的租约记录,如果有则发送**ACK**应答报文,通知用户可以使用分配的IP地址。如果没有发现相应的租约记录或者由于某些原因无法正常分配IP地址,则向DHCP客户端发送**NAK**应答报文,通知用户无法分配合适的IP地址。
5. DHCP客户端收到ACK应答报文后,就可以使用分配的IP地址。

在租约期内,如果DHCP客户端不再需要使用分配的IP地址,就会主动向DHCP服务器发送**Release**请求报文,告知服务器用户不再需要分配IP地址,请求DHCP服务器释放对应的IP地址。如果DHCP客户端收到DHCP服务器ACK应答报文后,通过地址冲突检测发现服务器分配的地址冲突或者由于其他原因导致不能使用,则会向DHCP服务器发送**Decline**请求报文,通知服务器所分配的IP地址不可用。此外,如果DHCP客户端需要从DHCP服务器端获取更为详细的配置信息,则可以向DHCP服务器发送**Inform**请求报文;DHCP服务器在收到该报文后,将根据租约进行查找到相应的配置信息后,向DHCP客户端发送ACK应答报文。

注意:当租期超过了87.5%时,DHCP客户端必须发送请求Request广播形式报文请求报文。

3.FTP服务器

补充:断点续传,是对传统FTP的改进,使得中断后再次启动传输,可以继续传输,其中断点信息保存在客户端上

4.邮件服务器

注意区分一下pop3接收协议(读了就删)和IMAP邮件访问协议(一直保存)

邮件加密协议:有两个:PGP(公、私钥加密,MD5进行摘要)、PEM(RSA和三重DES加密,比PGP更完善)。

5.WEB代理服务器

WEB代理服务器是一种中间服务器,它通常位于Web服务器和Web客户端之间。它既像Web客户端又像Web服务器。HTTP客户端会向代理发送请求报文,代理服务器必须像Web服务器一样,正确地处理请求和连接,然后返回响应。代理服务器可以用来增强隐私保护、修改页面内容和HTTP头部信息、访问控制,以及去除广告和其它招人反感的互联网垃圾。它可以配置成透明代理,而无需客户端配置。它还可以作为反向代理放在网站的前端;这样缓存服务器可以为一台或多台web服务器提供无限量的用户服务。

它提高了网站访问速度,但并没有提高用户带宽。

6.IIS服务组件

这个在后面第九章也有讲。

例题所补充知识点:

IP地址由:网络号+主机号组成。网络地址:主机号全为0.广播地址:主机号全为1.(需要注意那个网络地址。如果题目问,以下选项哪个可以作为网络号使用实质就是找主机号为0的地址。)

HTML方法:

有GET请求和POST请求。

GET和POST是两种基本的HTTP请求方法。它们之间有一些区别:

- GET用于从服务器获取数据,而POST用于向服务器传输数据。
- GET请求将参数添加到URL中,而POST请求将数据放在HTTP消息正文中。
- GET传输的数据量较小,不能超过2KB(GET请求有长度限制),而POST可以传输大量数据(无长度限制)。
- GET的安全性较低,因为数据在URL中对所有人都是可见的(GET会保存在历史记录中)。POST比GET更安全,因为参数不会保存在浏览器历史或Web服务器日志中。

DHCP工作过程补充:

客户端发送Discover广播包时,封装:客户机启动时自动配置0.0.0.0地址作为源地址,使用UDP68端口作为源端口,使用255.255.255.255为目标地址,使用UDP67端口作为目的端口来广播请求IP地址信息。

补充IPv6的:

IPv4有效验和,IPv6无效验和。

ARP协议:讲了不同局域网之间的通信,ip不变,MAC变。(其实就是采用ARP的原因那里。)

补充IP转发过程:

一个IP报文经过路由器处理后,TTL字段变为0,则路由器会丢弃受到TTL=0的IP包,并向发送者发送ICMP Time exceeded 消息。以防止无节制的循环。

补充ICMP的网络命令:Ping和Tracert命令依赖于原始套接字。

套接字(Socket)是网络编程中的一种通信机制,是支持TCP/IP的网络通信的基本操作单元,可以看做是不同主机之间的进程进行双向通信的端点,简单的说就是通信的两方的一种约定,用套接字中的相关函数来完成通信过程。

套接字有3种类型:流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM)和原始套接字。 

流式套接字(SOCK_STREAM)用来实现TCP通信,提供了面向连接的、可靠的、数据无错且无重复的数据传输服务,并且发送和接收的数据的顺序是相同的。()

数据报套接字(SOCK_DGRAM)是一种无连接的Socket,对应于无连接的UDP服务应用

原始套接字(SOCK_RAW)可以用来自行组装数据包,可以接收本机网卡上所有的数据帧(数据包),对于监听网络流量和分析网络数据很有作用。原始套接字是基于IP数据包的编程(SOCK_PACKET是基于数据链路层的编程)。另外,必须在管理员权限下才能使用原始套接字。

而上面ICMP的命令,是直接封装IP报文发送。所以就是原始套接字

ICMP补充:回送请求的报文,在类型字段中的值是8或0.(类型值,这个前面讲过,需要注意)

ICMP回送请求报文(type=8)是由主机或路由器发出的询问,收到此询问的主机必须发送ICMP会送应道报文(类型值为0).它和那个tracert命令是一起的。

对互联网新技术的补充:

大数据、云计算、物联网、区块链、SDN

大数据可以用来处理海量数据,提供精准的分析和预测。

云计算可以提供弹性的计算能力,支持快速部署和扩展应用。(多台计算机)

物联网可以连接各种设备,实现智能化控制和监控(传感器)。

区块链可以提供安全、透明和不可篡改的分布式账本(数据库)

SDN可以实现网络的灵活配置和管理。(软件定义网络、通过分离实现更灵活的网络)

补充DHCP命令:

dhcp relay (不是reply):  DHCP中继,当不再同一个物理网段时,开启此功能(DHCP Reply Agent )。实现不同网段也可以处理转发dhcp信息。

dhcp snooping: 可以防止DHCP欺骗

在浏览器地址输入一个ftp操作的网址:它的执行过程是首先进行域名解析获得IP地址,再建立TCP连接,再进行FTP控制连接和数据连接,最后响应TCP命令。相当于:数据链路层——>网络层——>传输层——>应用层。

补充:IP数据报分片操作

IP分片是指当一个IP数据报文的大小超过了传输路径上的MTU(最大传输单元)时,将其分成多个较小的分片以便能够在网络上传输的过程。每次传输不能超过MTU

在IP分片的过程中,每个分片都会包含原始数据报文的一部分数据,并且都会有自己的IP头。IP头中的一些字段,如标识(Identification)、片偏移(Fragment Offset)(注意这个Offset,以八字节为单位)和更多片位(More Fragments bit)会被用来标识分片属于哪个原始数据报文,以及它在原始数据报文中的位置。

当所有分片到达目的地后,它们会被重新组合成原始数据报文。这个过程称为IP重组。

比如:一个IP数据报总长度为3000B,经过MTU为1500B的链路,经分片后,改数据报被分成了3个片,最后一个片首部的Offest字段为370。(它的单位不是字节,而是以八个字节为单位,和我们常用的用八个位来做单位很不一样)

首先,分片是对数据部分分片,IP总长3000B(20B的首部+2980B的数据部分),所以分片是对2980B分片

因为MTU最大为1500.,而每一次分片都需要加上20B的首部(额外加的),所以一个分片里面数据部分最大为1480

那么2980的数据部分就分成了:1480,1480,20  三个分片(合计2980的数据)

最后一个分片的Offset就是片偏置值,从1480*2=2960开始。2960/8=370.(因为Offset以八字节为单位,这个很特殊!!!)就是最终结果。

补充:TCP伪首部是用来计算效验和的,不包含标识符。这个知识点包含在UDP的首部部分。有一个图。它的伪首部的内容。

补充:区分ARP和DNS的区别,DNS是通过域名解析,而ARP是通过物理地址解析。

首部:UDP(8)    TCP(20)   IP(20)    IPv6(40)

补充:ICMP报文类型,分两种。看题目说的是什么,如果题目说:ICMP差错报告报文格式中,那么在选项看到的时间戳,回声选项都可以排除。

补充:DNS查询顺序:

首先,查找本地hosts文件,再查本地缓存,之后在查主域名服务器,如果配置了转发域名服务器,就查转发器。最后找根域名服务器再向下一级查询。

补充慢启动和拥塞避免:参考例题p91

补充这个关于划分子网的题目很重要!!。例题92.

某校园网的地址是202.115.192.0/19,要把该网络分为30个子网,则子网掩码应该是:255.255.255.0。注意:11(19位)  0  0000   //后面5个0表示2**5就是32个子网。

补充http状态码:

403 服务器拒绝请求

404 服务器找不到请求的网页

408 服务器等候请求超时

415 请求的格式不受请求页面的支持

505 服务器不支持请求中所用的HTTP协议版本

广播地址不能作为源地址

自动专用地址:169.254.X.X/16

注意一个误区:

前面我们说过,DNS查询,先看Host表,在看本地缓存,再看本地域名服务器。但注意题目,如果问的是主域名服务器收到域名请求时,它首先查询区域配置文件,有些选项没有这个,就选择本地缓存。。(客户端先查host文件,服务器,先选择区域配置文件)

还有注意一种,主机A查询主机B的mac地址时,一开始使用广播,目标MAC地址:ffffffff

目标ARP报文:00000000.(因为这时不知道,所以全部填充为0)

TCP协议中,URG位表示URG指针,而URG指针表示数据需要紧急传送。

IP分组重组的过程补充:(再次)

IP分组在进行重组时,由于某些分组丢失,使得规定时间内不能重组完成,就会讲分组丢弃掉,并向源站回应一个数据包组装期间生存时间为0的ICMP报文。这个和TTL不一样。()?

224.0.0.1  特殊的组播地址,代表所有主机地址。

补充DHCP租约期:当满50%时,发送request单播,当满75%,发送request广播,当满了之后,发送discover重新申请。注意没有DHCP renew这个命令。

补充迭代、递归:迭代就是别人问你,你不知道,回答让你去问别人。

迭代:告知请求者下一步应该找谁

递归:代替请求者进行查询工作,并返回最终解析结果。

端口补充:

客户机(客户端)只能采用高位端口,高位端口>1024。

80不是高位端口。在计算机网络中,端口号的范围是0到65535。其中,0到1023被称为“低位端口”,它们通常由操作系统保留,用于特定的网络服务。1024到65535被称为“高位端口”,它们通常由用户进程或应用程序使用

端口号80通常用于HTTP(超文本传输协议)服务,它属于低位端口。

例如:浏览器向web服务器发送报文,其TCP的源端口组必定要大于1024。目的端口没有这个要求。

DHCP发消息的整个过程补充:DHCP协议采用UDP作为传输协议,主机发送请求消息到DHCP服务器的67号端口,DHCP服务器回应应答消息给主机的68号端口

DHCP协议的过程主要包括四个步骤:DHCP Discover,DHCP Offer,DHCP Request和DHCP Ack¹。客户端通过发送DHCP Discover报文来寻找DHCP服务器,所有收到Discover报文的DHCP服务器都会发送应答报文,DHCP客户端据此可以知道网络中存在的DHCP服务器的位置。然后,DHCP服务器会在所配置的地址池中查找一个合适的IP地址,加上相应的租约期限和其他配置信息(如网关、DNS服务器等),构造一个Offer报文,发送给DHCP客户端,告知用户本服务器可以为其提供IP地址。如果有多台DHCP服务器向DHCP客户端回应DHCP-OFFER报文,则DHCP客户端只接受第一个收到的DHCP-OFFER报文。然后以广播方式发送DHCP-REQUEST请求报文,该报文中包含Option 54(服务器标识选项),即它选择的DHCP服务器的IP地址信息。收到DHCP客户端发送的DHCP-REQUEST请求报文后,DHCP服务器根据DHCP-REQUEST报文中携带的MAC地址来查找有没有相应的租约记录。如果有,则发送DHCP-ACK报文作为应答,通知DHCP客户端可以使用分配的IP地址。

如果DHCP服务器收到DHCP客户端发送的DHCP-REQUEST请求报文后,没有找到相应的租约记录,或者由于某些原因无法正常分配IP地址,则发送DHCP-NAK报文作为应答,通知DHCP客户端无法分配合适IP地址。DHCP客户端需要重新发送DHCP-DISCOVER报文来请求新的IP地址。

VPN技术补充:

工作在二层的VPN技术:PPTP、L2TP(点对点)

二层与三层之间:MPLS(多协议标签)

三层:IPSec、GRE(安全,隧道)

应用层:SSL

多协议标记交换(MPLS):

多协议标记交换(MPLS)是一种数据传输协议,它可以用于提高网络的转发速度和效率。MPLS最初是为了提高路由器的转发速度而提出的。与传统IP路由方式相比,它在数据转发时,只在网络边缘分析(就是在二层根据标记就进行转发,不用到三层去查看路由表进行转发)IP报文头,而不用在每一跳都分析IP报文头,节约了处理时间。随着ASIC技术的发展,路由查找速度已经不是阻碍网络发展的瓶颈,这使得MPLS在提高转发速度方面不再具备明显的优势。但是MPLS支持多层标签和转发平面面向连接的特性,使其在VPN(Virtual Private Network)、流量工程、QoS(Quality of Service)等方面得到广泛应用。

补充:使用ARP的哪一选项用来封装传输的帧,这个一般指的是自己网段的网关路由器的ip对应的mac地址映射。而不是目标IP和mac映射。三层封装是这个,但题目问的是ARP的哪一选项。

DHCP服务器的回应补充:

客户端discover请求服务器回应,如果服务器没有回应,客户端会广播四次。四次之后,使用169.254.0.0/16这个专用地址。

第七章:下一代互联网

主要介绍IPv6、移动IP、下一代互联网的发展。(上面包含了,所以下面就略过)

(1)IPv6:

IPv6是Internet Protocol(IP)的最新版本,它是一种通信协议,为网络上的计算机提供身份识别和位置定义,并在Internet上路由流量。IPv6由Internet工程任务组(IETF)开发,以应对IPv4地址枯竭的长期预期问题,并旨在取代IPv4。

IPv6使用128位地址,理论上允许2^128个地址,即约3.4×10^38个总地址。实际数量略小一些,因为多个范围被保留用于特殊用途或完全排除在使用之外。这两种协议并不设计为可互操作的,因此它们之间无法直接通信,这使得转向IPv6变得复杂。但是,已经设计了几种过渡机制来纠正这一点。除了更大的寻址空间外,IPv6还提供了其他技术优势。特别是,它允许分层次的地址分配方法,有助于在Internet上进行路由聚合,从而限制路由表的扩展。组播寻址的使用得到扩展和简化,并为服务交付提供了额外的优化。设备移动性、安全性和配置方面都已在协议设计中考虑到。

IPv6对IPv4的改进:

IPv6相对于IPv4有很多改进。首先,IPv6的地址容量大大扩展,由原来的32位扩充到128位,彻底解决了IPv4地址不足的问题。它支持分层地址结构,从而更易于寻址;扩展支持组播和任意播地址,这使得数据包可以发送给任何一个或一组节点。

此外,IPv6的报头格式大大简化,从而有效减少路由器或交换机对报头的处理开销。这对设计硬件报头处理的路由器或交换机十分有利。它还加强了对扩展报头和选项部分的支持,这除了让转发更为有效外,还对将来网络加载新的应用提供了充分的支持。

IPv6还具有更高的安全性。它把IPSec作为必备协议,保证了网络层端到端通信的完整性和机密性。

举个例子,IPv6的安全性得到了增强。IPv6将IPSec作为必备协议,保证了网络层端到端通信的完整性和机密性。这意味着,在IPv6网络中,用户可以对网络层的数据进行加密并对IP报文进行校验。这极大地增强了网络的安全性。

另一个例子是IPv6的报头格式大大简化,从而有效减少路由器或交换机对报头的处理开销。这对设计硬件报头处理的路由器或交换机十分有利。例如,在IPv4中,报头中有许多选项字段,这些字段需要路由器逐一检查,这会增加路由器的处理开销并降低转发速度。而在IPv6中,这些选项被移到了扩展报头中,并且只有在需要时才会出现。这样,路由器就可以快速地处理报头并转发数据包。

(2)移动IP:

移动IP是一种支持移动设备在不同网络之间漫游时保持网络连接的技术。它允许移动设备在不同的网络之间移动,同时保持其IP地址不变。这样,移动设备就可以在漫游过程中继续与其他设备进行通信。

移动IP的通信过程大致如下:

1. 移动结点在本地网时,按传统的TCP/IP方式进行通信(本地网固有地址)。
2. 移动结点漫游到一个外地网络时,仍然使用固定的IP地址进行通信,为了能够收到通信对端发给它的IP分组,移动结点需要向本地代理注册当前的位置地址,这个位置地址就是转交地址¹。

举个例子,假设有一个移动设备A,它原本位于网络X中,并且拥有一个永久的IP地址。当A移动到网络Y中时,它需要向网络Y中的外部代理注册一个转交地址。然后,外部代理会将这个转交地址发送给A原来所在网络X中的本地代理。当其他设备向A发送数据包时,数据包会先发送到本地代理,然后本地代理会将数据包封装并通过隧道发送到外部代理。外部代理收到数据包后会将其解封并发送给A。

(3)从移动IPv4向IPv6的过渡:

从IPv4向IPv6过渡有几种技术。

隧道技术,它通常将一种类型的协议流量封装在另一个协议数据包中进行传输。目前能够实现IPv4和IPv6共存的隧道技术有6to4、ISATAP、6PE、6VPE、Teredo、MPLS等。

双协议栈,即路由器既支持IPv6网络,也支持IPv4网络。采用该技术的节点上同时运行IPv4和IPv6两套协议栈。

(也称为协议翻译技术)网络地址转换协议转换(NAT-PT),它是一种纯IPv6节点和IPv4节点间的互通方式,所有包括地址、协议在内的转换工作都由网络设备来完成。NAT-PT包括静态和动态两种,两者都提供一对一的IPv6地址和IPv4地址的映射,只不过动态NAT-PT需要一个IPv4的地址池进行动态的地址转换。

其中几个技术拿来详细介绍一下:

ISATAP:

ISATAP(Intra-Site Automatic Tunnel Addressing Protocol)是一种IPv6转换传送机制,允许IPv6数据包通过IPv4网络上双栈节点传输。不同于6over4,ISATAP视IPv4网络为一个非广播多路访问网络的数据链路层,因此它不需要底层的IPv4网络基础设施来支持多播。

ISATAP包含一种基于IPv4地址生成IPv6本地链路地址的方法,和基于IPv4网络的邻居发现机制。任何一个希望通过特定IPv4网络使用ISATAP的主机都可以创建虚拟的IPv6网络接口。将主机的IPv4地址比特串加上特定IPv6前缀作为接口的IPv6地址,对于全球单播地址使用fe80::0200:5efe:,对于专用网络地址则使用fe80::0000:5efe:。例如,一个主机IPv4地址为192.0.2.143,则其ISATAP接口的IPv6地址为fe80::0200:5efe:192.0.2.143,转为完整最短IPv6为fe80::200:5efe:c000:28f(c000:28f为其IPv4地址192.0.2.143的十六进制值)。

比较一下上述三个过渡技术的不同:

网络地址转换协议转换(NAT-PT)、隧道技术和双协议栈技术都是从IPv4向IPv6过渡的技术。

双协议栈技术是指路由器既支持IPv6网络,也支持IPv4网络。采用该技术的节点上同时运行IPv4和IPv6两套协议栈。这种方式对IPv4和IPv6提供了完全的兼容,但是对于IP地址耗尽的问题却没有任何帮助。由于需要双路由基础设施,这种方式反而增加了网络的复杂度。

隧道技术通常将一种类型的协议流量封装在另一个协议数据包中进行传输。目前能够实现IPv4和IPv6共存的隧道技术有6to4、ISATAP、6PE、6VPE、Teredo、MPLS等。隧道技术只要求在隧道的入口和出口处进行修改,对其他部分没有要求,容易实现。但是,隧道技术不能实现IPv4主机与IPv6主机的直接通信。

网络地址转换协议转换(NAT-PT)是一种纯IPv6节点和IPv4节点间的互通方式,所有包括地址、协议在内的转换工作都由网络设备来完成。NAT-PT包括静态和动态两种,两者都提供一对一的IPv6地址和IPv4地址的映射,只不过动态NAT-PT需要一个IPv4的地址池进行动态的地址转换。

这些技术各有优缺点,在不同情况下使用不同的技术。例如,在一个网络中,如果路由器既支持IPv6网络,也支持IPv4网络,则可以使用双协议栈技术;如果需要将一种类型的协议流量封装在另一个协议数据包中进行传输,则可以使用隧道技术;如果需要实现纯IPv6节点和IPv4节点间的互通,则可以使用网络地址转换协议转换(NAT-PT)技术。

(4)下一代互联网的发展:

暂无

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值