IPv6

IPv6与IPv4比较
1、v4是32bit,v6是128bit
2、版本号从4改为6
3、v4对于QOS使用TOS字段,v6对于QOS使用Traffic Class字段
4、v4使用TTL做生存时间,v6使用Hop Limit做生存时间
5、v6新增了流标签Flow Label,用来区分实时流量

IPv6组播地址MAC地址映射
3333是MAC地址前缀后面32bit从IPv6低32位拷贝

IPv6地址格式
将16bit划分为一段,由4个十六进制数标识,用冒号隔开 0000:0000:0000:0000:0000:0000:0000:0000/128
前N比特是地址前缀,相当于网络ID
后128-N比特是接口标识,相当于主机ID

IPv6地址压缩格式
每16比特组最前面的0可以省略,当有多个重复的0时可以使用 :: ,但是每个IPv6地址只能使用1次 ::

IPv6报文头部格式

IPv6基本报头有8个字段,固定大小为40字节,每一个IPv6数据报都必须包含报头
上层协议数据单元(Upper Layer Protocol Data Unit)一般由上层协议包头和它的有效载荷构成,有效载荷可以是一个ICMPv6报文、一个TCP报文或一个UDP报文。

  • Version:版本号,长度为4bit。对于IPv6,该值为6。
  • Traffic Class:流类别,长度为8bit。等同于IPv4中的ToS字段,表示IPv6数据报的类或优先级,主要应用于QoS。
  • Flow Label:流标签,长度为20bit。IPv6中的新增字段,用于区分实时流量,不同的流标签+源地址可以唯一确定一条数据流,中间网络设备可以根据这些信息更加高效率的区分数据流。
  • Payload Length:有效载荷长度,长度为16bit。有效载荷是指紧跟IPv6报头的数据报的其它部分(即扩展报头和上层协议数据单元)。
  • Next Header:下一个报头,长度为8bit。
  • Hop Limit:跳数限制,长度为8bit。该字段类似于IPv4中的Time to Live字段,它定义了IP数据报所能经过的最大跳数。每经过一个路由器,该数值减去1,当该字段的值为0时,数据报将被丢弃。
  • Source Address:源地址,长度为128bit。表示发送方的地址。
  • Destination Address:目的地址,长度为128bit。表示接收方的地址。

IPv6拓展报头
Next Header:下一个报头,长度为8bit。与基本报头的Next Header的作用相同。指明下一个扩展报头(如果存在)或上层协议的类型。
Extension Header Length:报头扩展长度,长度为8bit。表示扩展报头的长度(不包含Next Header字段)。
Extension Head Data:扩展报头数据,长度可变。扩展报头的内容,为一系列选项字段和填充字段的组合。


IPv6地址分类
单播地址(Unicast)唯一标识一个接口,全局唯一的和全局可路由的
任播地址(Anycast)用来标识一组接口(通常这组接口属于不同的节点)
组播地址(Multicast)用来标识属于不同节点的一组接口

IPv6单播地址
由前缀、子网ID和接口标识组成

  • 前缀:由提供商指定给一个组织机构,一般至少为48bit,目前已经分配的全局路由前缀的前3bit均为001。因此前缀为2000::/3。
  • 子网ID:组织机构可以用子网ID来构建本地网络,与IPv4中的子网号作用相似。子网ID通常最多分配到第64位。
  • 接口标识:用来标识一个设备(Host),与IPv4中的主机ID作用相似

IPv6链路本地地址
在一个节点启动IPv6协议栈时,节点的每个接口会自动配置一个链路本地地址。该地址专门用来和相同链路上的其他主机通信。
链路本地地址前缀FE80::/10,将接口ID添加在后面作为地址的低64位。
每一个IPv6接口都必须具备一个链路本地地址

IPv6唯一本地地址
类似于私网地址,只在一个站点内使用
FC00::/7和FD00::/8

IPv6被请求节点
请求节点组播地址(Solicited-Node Multicast Address)通过节点的单播或任播地址生成(有效链路为本地链路范围)
当一个节点具有了单播或任播地址,就会对应生成一个被请求节点组播地址,并且加入这个组播组。
一个单播地址或任播地址对应一个被请求节点组播地址。该地址主要用于邻居发现机制和地址重复检测功能。
由FF02::1:FF00:0/104和IPv6地址低位的24bit组成

当IPv6要请求一个MAC地址的时候会发送组播报文,目的IPv6地址是目标IPv6单播地址对应的被请求节点组播地址,目的MAC地址则是该组播地址对应的组播MAC地址
只有目标节点才会帧听这个被请求节点,其他设备收到该帧会丢弃

IPv6任播地址
用来标识一组网络接口(通常属于不同的节点)
目标地址是任播地址的数据包将发送给其中路由意义上最近的一个网络接口,接收方只需要是一组接口中的一个即可,其接口ID为全0

IPv6特殊地址
2000::/3 全球单播地址
2001:0DB8::/32 保留地址
FE80::/10 链路本地地址
FF00::/8 组播地址
0:0:0:0:0:0:0:1/128 或者 ::1/128 环回地址
0:0:0:0:0:0:0:0/128 或者::/128 未指定地址(缺省IPv6地址)

IPv6组播地址
IPv6组播地址FF00::/8

FF02::1/128 链路本地范围内的所有节点组播地址
FF02::2/128 链路本地范围内的所有路由器组播地址
FF02::5/128 链路本地范围内的所有OSPF路由器组播地址
FF02::6/128 链路本地范围内的所有OSPF的DR路由器组播地址
FF02:: D/128 链路本地范围内的所有PIM路由器组播地址
FF02::9/128 RIPng发送路由更新的目的地址
FF02::1:2/128 是DHCPv6组播地址(指向DHCPv6中继和服务器)

前8比特固定为1(FF固定)

后4比特为标志字段,只使用了最后一个比特,前三个固定为0,最后一个如果为0时,表示当前的组播地址是由IANA所分配的一个永久分配地址;当该值为1时,表示当前的组播地址是一个临时组播地址(非永久分配地址)

后4比特为范围字段,用来限制组播数据流在网络中发送的范围,4bit所代表的范围:
1 Interface-Local scope(接口本地范围)
2 Link-Local scope(链路本地范围)
4 Admin-Local scope(管理本地范围)
5 Site-Local scope(站点本地范围)
8 Organization-Local scope(组织本地范围)
E Global scope(全局范围的)
0和3和F 保留

后112比特标识组播组,现在并没有将所有的112bit都用上,只用了最低32位作为组播组ID,其余80位置0,这样每个组播组ID都可以映射到一个唯一的以太网组播MAC地址

IPv6地址配置
有状态地址配置:主机通过服务器获取地址信息和配置信息(DHCPv6)

无状态地址配置:主机自动配置地址信息,地址中带有本地路由设备通告的前缀和主机的接口标识(主机或路由器从RA报文里获得64位前缀从RA中获得64位前缀,EUI-64获得后64位接口ID)

无状态地址每个接口都需要配置IPv6地址,有3种方式配置
1、由网络管理员手工配置
2、由系统软件生成
3、由扩展唯一标识符EUI-64生成

EUI-64规范
将MAC地址的第7位由0改为1,再将FFFE(1111 1111 1111 1110)插入到48位MAC中,就生成了64位接口ID

ICMPv6
ICMPv6是IPv6的基础协议之一,用于向源节点传递报文转发的信息或者错误。
协议类型号(即IPv6 Next Header)为58。
在IPv6中,ICMPv6除了提供ICMPv4的对应功能之外,还有其它一些功能的基础,如邻居发现、无状态地址配置、重复地址检测、PMTU发现等。

IPv6邻居发现协议NDP

NDP 邻居发现协议(Neighbor Discovery Protocol)

NDP的机制

  • 路由器发现:该功能帮助设备发现链路上的路由器,并获得路由器通告的信息。
  • 无状态自动配置:无状态自动配置是IPv6的一个亮点功能,它使得IPv6主机能够非常便捷地连入到IPv6网络中,即插即用,无需手工配置繁冗的IPv6地址,无需部署应用服务器(例如DHCP服务器)为主机分发地址。无状态自动配置机制使用到了ICMPv6中的路由器请求报文(RS)及路由器通告报文(RA)。
  • 重复地址检测:重复地址检测是一个非常重要的机制,一个IPv6地址必须经历重复地址检测并通过检测之后才能够启用。重复地址检测用于发现链路上是否存在IPv6地址冲突。
  • 地址解析:在IPv6中,取消了IPv4中的ARP协议,使用NDP所定义的邻居请求报文(NS)及邻居通告报文(NA)来实现地址解析功能。
  • 邻居的状态跟踪:IPv6定义了节点之间邻居的状态机,同时还维护邻居IPv6地址与二层地址如MAC的映射关系,相应的表项存储于设备的IPv6邻居表中。
  • 前缀重编址:IPv6路由器能够通过ICMPv6的路由器通告报文(RA)向链路上通告IPv6前缀信息。通过这种方式,主机能够从RA中所包含的前缀信息自动构建自己的IPv6单播地址。当然这些自动获取的地址是有生存时间的。通过在RA中通告IPv6地址前缀,并且灵活地设定地址的生存时间,能够实现网络中IPv6新、老前缀的平滑过渡,而无需在主机终端上消耗大量的手工劳动重新配置地址。
  • 路由器重定向:路由器向一个IPv6节点发送ICMPv6的重定向消息,通知它在相同的本地链路上有一个更好的、到达目的地的下一跳。IPv6中的重定向功能与IPv4中的是一样的。

地址解析
IPv6的地址解析不再使用ARP,也不再使用广播方式
地址解析在三层完成,针对不同的链路层协议可以采用相同的地址解析协议
通过ICMPv6(类型135的NS及类型136的NA报文)来实现地址解析。

  • 邻居请求报文NS(Neighbor Solicitation):IPv6节点通过NS报文可以得到邻居的链路层地址,检查邻居是否可达,也可以进行地址冲突检测。
    type133,code=0
    Target Address是需要解析的IPv6地址,因此该处不准出现组播地址。
  • 邻居通告报文NA(Neighbor Advertisement):NA报文是IPv6节点对NS报文的响应,同时IPv6节点在链路层变化时也可以主动发送NA报文。
    type134,code=0
    R标志(Router flag),1标识发送者是路由器
    S标志(Solicited flag),1标识发送邻居通告是响应某个邻居请求
    O标志(Overide flag),1标识邻居通告中的消息覆盖已有的条目信息
    Target Address表示所携带的链路层地址对应的IPv6地址。

地址解析步骤:

  • 1、请求端发送NS报文,封装了三层头部,源IP为自己,目的IP为被请求节点组播地址,又封装了二层头部,变为数据帧,源MAC地址为自己的MAC地址,目的MAC地址为被请求节点组播地址映射到的MAC组播地址
  • 2、当其他节点收到该数据帧时,发现目的MAC地址是组播MAC地址,而该组播MAC地址自己不监听,就丢弃
  • 3、当监听该组播MAC地址的接收端收到数据帧后,校验之后了解到里面是IPv6报文,就把帧头摘掉,将IPv6报文上送到IPv6协议栈处理,发现该报文目的IPv6组播地址是自己加入的组播组,然后发现后面封装着ICMPv6的报文,就将IPv6报文头部摘掉,交给ICMPv6协议去处理,最后发现是个NS报文,请求自己的这个IPv6地址对应的MAC地址,于是回了一个包含自己MAC地址的NA报文给请求端

IPv6邻居种类
Incomplete 未完成,邻居请求已经发送到目标节点的请求组播地址,但没有收到邻居的通告;
Reachable 可达,收到确认,不需再发包确认;
Stale 陈旧,从收到上一次可达性确认后过了超过30s或收到了非请求的NA;
Delay 延迟,在stale状态后发送过一个报文,并且5s内没有可达性确认;
Probe 探查,每隔1s重传邻居请求来主动请求可达性确认,直到收到确认。
Empty 未连接,没有建立邻居或未回复NA

IPv6不像IPv4那样使用ARP表来缓存IP与MAC地址的映射,而是维护一个IPv6邻居表
查看邻居表display ipv6 neighbors

IPv6邻居建立

  • A先发送NS,并生成邻居缓存条目,状态为Incomplete;
  • 若B回复NA,则Incomplete->Reachable,否则10s后Incomplete->Empty,即删除条目;
  • 经过ReachableTime(默认30s),条目状态Reachable->Stale;
    或者在Reachable状态,收到B的非请求NA,且链路层地址不同,则马上->Stale;
  • 在Stale状态若A需要向B发送数据,则Stale->Delay,同时发送单播NS请求;
  • 在Delay_First_Probe_Time(默认5秒)后,Delay->Probe,其间若有NA应答,则Delay->Reachable;
  • 在Probe状态,每隔RetransTimer(默认1秒)发送单播NS,发送MAX_UNICAST_SOLICIT(3次)后再等RestransTimer,有应答则->Reachable,否则进入Empty,即删除表项。

IPv6的邻居关系维护机制确保通讯发起之前邻居是可达的,而ARP本身是做不到的,仅仅通过老化机制来实现。

无状态地址DAD检测
DAD检测为了确保网络中无两个相同的单播地址
所有IPv6地址前会进行DAD重复地址检测(相当于免费ARP报文)

将在通过检测之前的地址称为试验地址,接口暂时还不能使用这个试验地址进行正常的IPv6单播通讯,但是会加入和该地址所对应的Solicited-Node组播组
向试验地址所在的Solicited-node(被请求节点)组播地址发送NS,如果收到其他战点回应的邻居通告NA报文,则认为网络上该实验节点已被使用

IPv6无状态自动配置
IPv6地址无状态自动配置(StateLess Address AutoConfiguration,SLAAC)是IPv6的标准功能
在IPv6中,设备可以通过手工或者动态的方式获取地址。在动态获取地址的方式中,存在DHCPv6及无状态地址自动配置两种方式。
相比于DHCPv6这种动态地址分配技术而言,SLAAC无需部署应用服务器,更加轻量

主要通过以下两种报文

  • 路由器请求报文RS(Router Solicitation):主机启动后,通过RS报文向路由器发出请求,路由器则会以RA报文响应。type133
    Target Address是需要解析的IPv6地址,因此该处不准出现组播地址。
  • 路由器通告报文RA(Router Advertisement):路由器周期性的发布RA报文,其中包括前缀和一些标志位的信息。
    type134
    RA的Flag字段:
    Cur Hop Limit:64(该PC发送的IPv6报文的跳数限制被设置为该值)
    M位(Managed address configuration):置位1使用DHCPv6获取IPv6地址,置位0启用无状态地址自动配置,默认0
    O位(Other-Config-Flag):置位1使用DHCPv6获取其他网络配置参数,置位0启用无状态地址自动分配,默认为0
    RA的前缀Flags字段:
    L位(On-Link Flag):置位1表示在RA消息中的前缀是分配给本地链路的,默认1
    A位(Autonomouns Addr-conf flag):置位1表示本地链路的主机可以使用该前缀进行无状态自动配置,如果为0,则不能用于无状态自动配置,默认1

当存在以下情况忽略RA发送的前缀:

  • 1、RA报文选项中的“auto”未置位
  • 2、RA报文携带的前缀与已有地址前缀重复(包括link-local地址)
  • 3、RA报文选项中的发起新通讯的有效时间(preferred lifetime)时间大于原有通讯的有效时间(valid lifetime )
  • 4、RA报文携带的前缀长度与接口ID长度之和不等于128位


当地址处于Deprecated状态,地址不能主动的发起连接只能是被动的接受连接,这也是为了保证上层应用而设计的,但是过了valid lifetime时间地址就变为invalid,这时任何连接就会down掉。

重定向报文
当网关路由器知道更好的转发路径时(当报文进入的接口就是报文路由的出接口时),会以重定向报文的方式告知主机
报文格式 type = 137,Code = 0
Target Address是更好的路径下一跳地址。
Destination Address是需要重定向转发的报文的目的地址。

PMTU发现
PMTU就是路径上的最小接口MTU。
IPv6报文在转发的过程中是不进行分片操作的,IPv6报文仅在源节点进行分片,在目的节点进行组装

首先源节点假设PMTU就是其出接口的MTU,发出报文,当转发路径上存在一个小于当前假设的PMTU时,就会向源节点发送Packet Too Big报文,并且携带自己的MTU值,此后源节点将PMTU的假设值更改为新收到的MTU值

PMTU最小为1280
PMTU最大由链路层决定,可以支持很大MTU

IPv6过渡技术

IPv6与IPv4共存技术:

  • 双协议栈:(Dual Stack)
    IPv6节点同时支持IPv6和IPv4协议栈。
  • 隧道:
    IPv6报文作为IPv4的载荷,由IPv4 Internet中连接多个IPv6孤岛。

IPv6与IPv4互通技术:

  • 提供IPv6与IPv4互相访问的技术。
  • 适用于IPv6 Internet与IPv4 Internet共存,而两者又有互相通讯的需求。

双栈Dual Stack
设备必须支持IPv4/IPv6协议栈。
连接双栈网络的接口必须同时配置IPv4地址和IPv6地址。
源节点根据目的节点的不同选用不同的协议栈,而网络设备根据报文的协议类型选择不同的协议栈进行处理和转发

6over4手动隧道
源地址和目的地址均需手工指定;
用于边界路由器与边界路由器,或者主机与边界路由器之间。

IPv6 over IPv4手动隧道转发机制为:
1、当隧道边界设备的IPv6侧收到一个IPv6报文后, 根据IPv6报文的目的地址查找IPv6路由转发表
2、如果该报文是从此虚拟隧道接口转发出去,则根据隧道接口配置的隧道源端和目的端的IPv4地址进行封装
3、封装后的报文变成一个IPv4报文,交给IPv4协议栈处理。报文通过IPv4网络转发到隧道的终点
4、隧道终点收到一个隧道协议报文后,进行隧道解封装。并将解封装后的报文交给IPv6协议栈处理。

6over4 GRE隧道
手工指定隧道的端点地址;
GRE承载IPv6协议。
GRE隧道本身并不限制被封装的协议和传输协议,一个GRE隧道中被封装的协议可以是协议中允许的任意协议(可以是IPv4、IPv6、OSI、MPLS等)

6to4隧道
6to4隧道也属于一种自动隧道,隧道也是使用内嵌在IPv6地址中的IPv4地址建立的。与IPv4兼容自动隧道不同,6to4自动隧道支持Router到Router、Host到Router、Router到Host、 Host到Host。

地址格式:
FP:可聚合全球单播地址的格式前缀(Format Prefix),其值为001。
TLA:顶级聚合标识符(Top Level Aggregator),有13个比特位,其二进制值为0 0000 0000 0010。
SLA:站点级聚合标识符(Site Level Aggregator)。

6to4地址可以表示为2002::/16,而一个6to4网络可以表示为2002:IPv4地址::/48。6to4地址的网络前缀长度为64bit,其中前48bit(2002: a.b.c.d)被分配给路由器上的IPv4地址决定了,用户不能改变,而后16位(SLA)是由用户自己定义的。

ISATAP隧道
ISATAP(Intra-Site Automatic Tunnel Addressing Protocol)是另外一种自动隧道技术。ISATAP隧道同样使用了内嵌IPv4地址的特殊IPv6地址形式,只是和6to4不同的是,6to4是使用IPv4地址做为网络前缀,而ISATAP用IPv4地址做为接口标识。
地址描述
如果IPv4地址是全局唯一的,则u位为1,否则u位为0。g位是IEEE 群体/个体标志。由于ISATAP是通过接口标识来表现的,所以,ISATAP地址有全局单播地址、链路本地地址、ULA地址、组播地址等形式。ISATAP地址的前64位是通过向ISATAP路由器发送请求来得到的,它可以进行地址自动配置。在ISATAP隧道的两端设备之间可以运行ND协议。ISATAP隧道将IPv4网络看作一个非广播的点到多点的链路(NBMA)。
转发过程描述:
在IPv4网络内部有两个双栈主机PC2和PC3,它们分别有一个私网IPv4地址。要使其具有ISATAP功能,需要进行如下操作:

  • 首先配置ISATAP隧道接口,这时会根据IPv4地址生成ISATAP类型的接口ID。
  • 根据接口ID生成一个ISATAP链路本地IPv6地址,生成链路本地地址以后,主机就有了在本地链路上进行IPv6通信的能力。
  • 进行自动配置,主机获得IPv6全球单播地址、ULA地址等。
  • 当主机与其它IPv6主机进行通讯时,从隧道接口转发,将从报文的下一跳IPv6地址中取出IPv4地址作为IPv4封装的目的地址。如果目的主机在本站点内,则下一跳就是目的主机本身,如果目的主机不在本站点内,则下一跳为ISATAP路由器的地址。

NAT64
NAT64技术实际上是一种协议转换技术,能够将分组在V4及V6格式之间灵活转换。
IPv6过渡中的协议翻译技术就是将IPv6数据包的每个字段与IPv4数据包中的字段建立起一一映射的关系,从而在两个网络的边缘实现数据报文的转换。

HCIE 面试资料-IPv6相关推荐

  1. HCIE 面试资料-OSPF

    OSPF OSPF开放式最短路径优先(Open Shortest Path First) 是一组通过统一的路由政策或路由协议互相交换路由信息的网络 OSPF的路由计算过程 每台路由器会先根据自己周围的 ...

  2. HCIE 面试资料-QOS

    QoS简介 服务质量QoS(Quality of Service)用于评估服务方满足客户服务需求的能力.通过配置QoS,对企业的网络流量进行调控,避免并管理网络拥塞,减少报文的丢失率,同时也可以为企业 ...

  3. HCIE 面试资料-MLD

    MLD MLD简介 MLD (Multicast Listener Discovery) 组播侦听发现协议,是IPv6路由器所使用的一种协议,用以发现在其直连网络上的组播侦听者(即希望接收组播数据的节 ...

  4. HCIE 面试资料-DHCP

    DHCP 动态主机配置协议(Dynamic Host Configuration Protocol)是一种用于集中对用户IP地址进行动态管理和配置的技术. 终端设备需要配置IP地址才能接入网络,当设备 ...

  5. HCIE 面试资料-STP/RSTP/MSTP

    STP STP介绍 STP(Spanning Tree Protocol)生成树协议 有三个版本,协议版本标识符,STP为0,RSTP为2,MSTP为3. STP的作用是进行逻辑阻断,通过堵塞端口来消 ...

  6. HCIE 面试资料-BFD/NSF/NSR/NTP

    BFD检测 BFD简介 双向转发检测BFD(Bidirectional Forwarding Detection) 为了减小设备故障对业务的影响,提高网络的可靠性,网络设备需要能够尽快检测到与相邻设备 ...

  7. HCIE 面试资料-BGP/MPLS V`PN

    MPLS V·PN 为了实现两个站点之间跨越公网通信有了[Virtual Private Network]虚拟私有网络技术 专线的特点 1.线路专有,安全性高,不同用户之间物理隔离 2.价格昂贵 3. ...

  8. HCIE 面试资料-项目题

    100台路由器 如何选择IGP 可选的IGP有OSPF .ISIS.RIP 首先不建议选择RIP,RIP的缺点: 1.基于跳数做开销计算,没有根据带宽计算,容易产生次优路径 2.最大跳数才16条,这个 ...

  9. 一名大学生选择军哥的乾颐堂是如何顺利通过华为HCIE的,又如何应对HCIE面试呢?...

    首先讲一下我怎么接触堂子的把.也是很巧的机缘,大二的时候,杨老师(老杨)带过我们的课,也是班上当时有人去那边学习,我也是跟紧彪哥他们后面的步伐.然后去报名学习的.也是一轮听完NA到NP-IE的课程,然 ...

最新文章

  1. mybatis直接使用自定义sql查询数据
  2. 关于三维莫队问题的一些思考和探究
  3. mysql got signal 11_mysql bug : mysqld got signal 11
  4. boost中unordered_map的用法
  5. Java中如何读取文件夹下的所有文件
  6. Tomcat中的连接器是如何设计的
  7. 常用JS正则匹配函数
  8. gitlab CI/CD 知识点查阅
  9. 五、顺序访问性能测试
  10. java虚拟机手机系统,微软java虚拟机
  11. NLP - AIML
  12. 关于解决miui10国际版刷入之后无法认证的问题
  13. Python 自动批量生成发卡平台卡密信息并导入数据库
  14. 万字长文:复盘 8 年副业经历,耗时一周,我总结出了独特的「复利思维复业赚钱法」,不看后悔...
  15. 服务器中temp文件夹在哪,WIN7中出现TEMP用户文件夹,临时账户登录
  16. 作为程序员,应该更关注代码质量还是只需要完成功能就好了?
  17. linux同步clock和date,liunx时钟与同步
  18. 使用 Audacity 录音
  19. @Autowired和@Resource区别
  20. ERP系统在元器件贸易企业中的应用

热门文章

  1. Hibernate的一些相关信息(续)
  2. 2019年最佳黑客书籍 - 初级到高级
  3. stanford句法分析词性表
  4. self-assessment
  5. 【图论】中国邮递员问题、平面图上最大割问题的多项式时间算法
  6. 最小二乘支持向量机预测matlab实现,最小二乘支持向量机及其 Pre-computed Kernel 的 matlab 实现...
  7. void指针(void*):void*存放任意对象的地址、通过(int*)a转换指针类型
  8. JDK14之jpackage打包命令
  9. 装VMware后在主机找不到VMnet1和VMnet8问题(巨详细已解决)
  10. 命令行创建文件和文件夹