IP组播基础及工作原理——1

2023-05-16

IP组播在一些多用户定向发送的网络应用中使用非常普遍,如远程多媒体会议、远程教学、视频点播、定向电子商务,以及ISP的IPTV(网络电视)等。学好IP组播基础知识及配置与管理方法,对网络管理员来说非常必要。

IP组播就像IP单播一样是一个相对独立的领域,涉及的知识面非常广。所包含的协议也非常多,如三层的IGMP、MLD、PIM、MSDP、MBGP和IGMP SMM Mapping等,二层的有IGMP Snooping、IGMP Snooping Proxy、MLD Snooping、MLD Snooping Proxy和IGMP SMM Snooping Mapping等。本章先单独介绍与IP组播相关的基础知识,组播路由和转发原理、各种IP组播协议的主要功能及工作原理,以及各种组播协议的主要应用。

IP组播基础

随着Internet的发展,网络中交互的各种数据、话音和视频信息越来越多,同时新兴的电子商务、网上会议、网上拍卖、视频点播、远程教学等服务,大多符合点对多点的模式,对信息安全性、有偿性、网络带宽提出了较高的要求。

作为IP传输3中方式之一,IP组播通信指的是IP报文从一个源发出,而被转发到一组特定的接收者。相较于传统的单播和广播,IP组播可以有效节约网络带宽、降低网络负载。

一、IP网络的3种数据传输方式

IPv4协议定义了三种IP数据包的传输方式:单播(unicast)、广播(broadcast)和组播(multicast)。通过对三种包传播方式比较式介绍,可以看到组播方式的优越性。

1、单播方式的数据传输过程

单播用于发送数据包到单个目的地,且每发送一份单播报文都使用一个单播IP地址作为目的地址。是一种点对点传输方式。采用单播方式时,系统为每个需求该数据的用户单独建立一条数据传输通路,并为该用户发送一份独立的副本数据。

如下图:


假设用户C(HostC)需要从数据源(Source)获取数据,则数据源必须和用户C的设备建立单独的传输通道。由于网络中传输的数据量和要求接收该数据的用户量成正比,因此当需要相同数据的用户数量很庞大时,数据源主机必须要将多份内容相同的数据发送给用户。这样一来,网络带宽将成为数据传输中的瓶颈,不利于数据规模化发送。

2、广播方式的数据传输过程

广播是指发送数据包到同一广播域或子网内的所有设备的一种数据传输方式,是一种点对多点传输方式。如果采用广播方式,系统会为网络中所有用户传送一个数据副本,不管它们是否需要,任何用户都会接收到广播来的数据。


如上图,假设用户A、c需要从数据源获取数据,则数据源通过路由器广播该数据,但这时网络中本来不需要接收该数据的用户B也同样接收到该数据,这样不仅信息的安全性得不到保障,而且会造成同一网段中信息泛滥。该传输方式不利于与特定对象进行数据交互,并且浪费了大量的带宽。

3、组播方式传播数据

单播方式适合用户较少的网络,广播方式适合用户需求普遍相同的网络。但当网络中需求某数据的用户量不确定时,单播和广播方式效率很低,而且广播方式安全性差,无法控制数据的发送。

IP组播技术的出现及时解决了以上问题,也是一种点对多点传输方式。当网络中的某些用户需要特定数据时,组播数据发送者(即组播源)仅发送一次数据,借助组播路由协议为组播数据包建立组播分发树,被传递的数据到达距离用户端尽可能近的节点后才开始复制和分发。


如上图,假设用户A、C需要从数据源获取数据,为了将数据顺利地传输给真正需要该数据的用户,需要将用户A、C组成一个接收者集合(就是组播组),由网络中各路由器根据该集合中各接收者的分布情况进行数据转发和复制,最后准确地传输给实际需要的接收者A和C。

综上,相比单播传输方式,组播传输方式由于被传递的信息在距信息源尽可能远的网络节点才开始被复制和分发,所以用户的增加不会导致信息源负载的加重以及网络资源消耗的显著增加。相比广播传输方式,组播传输方式由于被传递的信息只会发送给需要该信息的接收者,所以不会造成网络资源的浪费,并能提高信息传输的安全性。

二、组播基本概念

组播传输的特点是一点发出,多点接收。如上图,网络中存在信息发送源Source,感兴趣的用户HostA和HostC提出信息需求,Source发出的数据只有HostA和HostC会接收到。

在组播通信中,需要理解以下几个重要的基本概念。

1、组播组:用组播IP地址进行标识的一个集合,是一个组播成员的集合,各组播成员共享这一个组播组IP地址。相当于iStack堆叠和CS集群中,各成员交换机共享使用同一个管理IP地址一样。但要注意,组播成员自己在IP协议中配置的IP地址不是组播IP地址,仍是单播IP地址。任何用户主机(或其他接收设备),加入一个组播组就成为了该组成员,可以识别并接收发往该组播组的组播数据。

2、组播源:以组播组IP地址为目的地址(组播源配置的也是单播IP地址),发送IP报文的信源称为组播源。但组播源通常不需要加入组播组,否则自己接收自己发送出去的数据了。上图中的Source就是一个组播源。一个组播源可以同时向多个组播组发送数据,多个组播源也可以同时向一个组播组发送报文。

3、组播组成员:所有加入某组播组的主机便成为该组播组的成员。如上图中的HostA和HostC。组播组中的成员是动态的,主机可以在任何时刻加入或离开组播组。组播组成员可以广泛地分布在网络中的任何地方。

4、组播路由器:支持三层组播功能的路由器或三层交换机(它们不是组播组成员),如上图中的各个Router。组播路由器不仅能够提供组播路由功能,也能够在与用户连接的末梢网段上提供组播组成员的管理功能

三、典型IP组播模型

根据对组播源处理方式的不同,IP组播模型有下列3种:ASM(Any-SourceMulticast,任意源组播)、SFM(Source-Filtered Multicast,过滤源组播)和SSM(Source-SpecificMulticast,指定源组播)。

1、ASM模型

简单说,ASM(任意源组播)模型就是任意源都可以成为组播源。由此可知,ASM模型中的组播源是不限定的,任意一个发送者都可以成为组播源,然后向某组播组地址发送数据,显然安全性较差。接收者通过加入对应的组播组就可以获得发往改组播组的任意组播数据,而且接收者无法预先知道组播源的位置,但可以在任意时间加入或离开该组播组。

为提高安全性,可以在路由器上配置针对组播源的过滤策略,允许或禁止来自某些组播源的报文通过。最终从接收者角度看,数据是经过筛选的。

ASM模型中组播组可以使用的组播IP地址为224.0.1.0~231.255.255.255、233.0.0.0~238.255.255.255。但要求组播组地址必须整个组播网络中唯一。“唯一”指的是同一时刻一个ASM组播组地址只能被一种组播应用使用。如果有两种不同的应用程序使用了同一个ASM组播组地址发送数据,它们的接收者会同时收到来自两个源的数据。这样一方面会导致网络流量拥塞,另一方面也会给接收者主机造成困扰。

2、SFM模型

SFM(过滤源组播)模型继承了ASM模型,从发送者角度来看两者的组播组成员关系完全相同,也可以是任意组播源。但是,在SFM模型中组播上层应用软件可以根据收到的组播包的源IP地址进行过滤,允许或禁止来自某些组播源的包通过。这样一来,接收者就可以只接收允许通过的组播源发送来的组播数据。即SFM在ASM的基础上添加了组播源过滤策略。

3、SSM模型

现实生活中,用户可能只对某些组播源发送的组播数据感兴趣,而不愿接收其他源发送的数据。SSM(指定源组播)模型就是一种为用户提供能够在客户端指定组播源的传输服务。

SSM模型与ASM模型的根本区别在于:SSM模型中的接收者已经通过其他手段预先知道了所需接收组播数据的组播源的具体位置,限定了可接收的组播源。然后,SSM模型使用与ASM/SFM模型不同的组播组地址范围(为232.0.0.0~232.255.255.255)直接在接收者和其指定的组播源之间建立专用的组播转发树。

四、IP组播地址

由于组播数据的接收者是一个组播组内的多个主机,因此,需要面对数据源该将数据发往何处、目的地址如何选取的问题,就是组播寻址。与单播中的IP寻址或者MAC寻址一样,为了让组播源和组播成员进行通信,需要提供网络层组播地址,即IP组播地址。同时必须存在一种技术将IP组播地址映射为链路层MAC组播地址

注意:不要认为在IP组播中所有组播设备上的IP地址都是使用组播地址。实际上只有组播组IP地址是组播IP地址,而像组播源、接收者主机的IP地址仍是单播IP地址

1、三层组播IP地址

根据IANA(InternetAssigned Numbers Authority,因特网编号授权委员会)规定,IP地址分为五类:即A类、B类、C类、D类和E类。单播包按照网络规模大小分别使用A、B、C三类IP地址。组播包的目的地址使用D类IP地址,D类地址不能出现在IP包的源IP地址字段(也就是不能作为组播源地址,换言之,组播源的IP地址仍是单播地址)。E类地址保留以后使用。

在单播数据传输过程中,一个数据包传输的路径是从源地址路由到目的地址,利用“逐跳(hop-by-hop)”的原理在IP网络中传输。然而在IP组播环境中,数据包的目的地不是一个,而是一组,形成组地址(可理解为所有接收者的单播地址与一个组播组地址形成了映射关系)。所有的数据接收者都加入一个组内,并且一旦加入之后,流向该组地址的数据立即向接收者传输,组中的所有成员都能接收到数据包,这个组就是“组播组”。

组播组具有以下几个特点

(1)组播组中的成员是动态的,主机可以在任何时刻加入或离开组播组。

(2)组播组可以是永久的也可以是临时的。

(3)由IANA分配组播组地址的组播组称为永久组播组(又称保留组播组)。

对于永久组播组,要注意以下几点:

(1)永久组播组的IP地址保持不变,但组中的成员构成可以发生变化。

(2)永久组播组中成员的数量可以是任意的,甚至可以是零。

(3)那些没有保留下来供永久组播组使用的IP组播地址,可以被临时组播组使用。

D类组播地址范围是224.0.0.0~239.255.255.255,其中包括了很多地址,但不同地址段有不同用途,如下表,记住这个表中各个组播段的使用范围相当重要,这样就不会在配置组播网络中错误的使用了不该在特定环境下使用的组播地址。


根据IANA的约定,224.0.0.0~224.0.0.255网段地址被预留给本地网络中的路由协议使用,如下表说明:


与IANA为IP单播预留私有地址网段10.0.0.0/8等类似,IANA也为IP组播预留了私有网址网段239.0.0.0/8(也就是这个地址段中的组播地址可以在局域网内使用)。这些地址属于管理范围地址,可以灵活地定义组播域范围,实现不同组播域之间的地址隔离,有助于相同组播地址在不同组播域内的重复使用而不会冲突。

2、二层以太网组播MAC地址

以太网传输单播IP包的时候,目的MAC地址使用的是接收者的MAC地址。但是在传输组播包时,传输目标不再是一个具体的接收者,而是一个成员不确定的组,所以对应也就需要使用组播MAC地址作为目的地址。

IANA规定,组播MAC地址的高25位固定为0000 00010000 0000 0101 1110 0,形成MAC地址25位前缀,MAC地址的低23位为组播IPv4地址的低23位。它们之间的映射关系如下图(组播IPv4地址中的低23位映射到组播MAC地址的低23位)


由于IPv4组播地址的高4位是1110,代表组播标识,而低28位中只有23位被映射到MAC地址,这样IP地址中就会有5位数据丢失,直接的结果是出现了32(2的5次方)个IP组播地址映射到同一组播MAC地址上。

IPv6组播MAC地址的高16位为0x3333,低32位是从IPv6组播地址的低32位映射过来的。如下图IPv6组播地址FF1E::F30E:101的MAC地址映射:


五、IP组播协议

要实现一套完整的组播服务,需要在网络各个位置部署多种组播协议相互配合,共同运作。不同结构的组播网络所需使用的组播协议不完全一样。

下图是一个典型的单PIM域组播网络示意图,整个组播网络是由路由器或三层交换机+二层交换机组成的。


从图中可以看出在这些组播设备上运行的组播协议包括PIM(协议无关组播,同时由IPv4和IPv6版本)、IPv4网络的IGMP(因特网组管理协议),IPv6网络中的MLD(组播监听器发现)、IPv4网络的IGMP Snooping(因特网组管理协议嗅探),IPv6网络中的MLD Snooping(组播监听器发现嗅探)。

下图12-7是一个跨PIM-SM域的组播网络示意图,与上图所示的单PIM域组播网络相比,在运行的组播协议上仅需在PIM域边界组播路由器上多了一个实现跨PIM域连接的MSDP(组播源发现协议)。而12-8是一个跨AS域组播网络示意图,与12-7所示的跨PIM域组播网络相比,在运行的组播协议又仅需在AS边界组播路由器上多了一个用于不同AS组播连接的MBGP(组播边界管理协议)。


1、IGMP和MLD

在IP组播传输模型中,发送者不关心接收者所处的位置,只要将数据发送到约定的目的地址,剩下的工作就交给网络去完成。网络中的路由器设备必须收集接收者的信息,并按照正确的路径实现组播报文的转发和复制。

接收者信息的收集和管理的工作通过IGMP(InternetGroup Management Protocol,因特网组管理协议)或MLD(Multicast Listener Discovery,组播监听器发现)协议来完成的。其中,IGMP用于IPv4网络,MLD用于IPv6网络。用于为主机侧提供组播组成员动态加入与离开服务,为路由器侧提供组成员关系的维护与管理服务,同时与上层组播路由协议进行信息交互。

IGMP包含3个版本,分别是IGMPv1、IGMPv2和IGMPv3。新版本完全兼容旧版本。目前应用最广泛的是IGMPv2。在组播模型方面,3个版本都支持ASM模型;IGMPv3可以直接支持SSM模型,而IGMPv1和IGMPv2需要结合SSMMapping技术才能支持SSM模型。

在IPv6组播中使用MLD协议来替代IGMP协议,也是一种三层组播协议。MLD包含两个版本,分别是MLDv1和MLDv2。MLDv1的功能与IGMPv2相似;MLDv2的功能与IGMPv3相似。两个MLD版本都支持ASM模型;MLDv2可以直接支持SSM模型,而MLDv1需要结合SSM-Mapping技术才能支持SSM模型。

2、IGMPSnooping和MLD Snooping

IGMP Snooping和MLD Snooping协议是运行在组播路由器和用户主机之间的二层交换机上的二层组播协议,配置在VLAN内。其中,IGMP Snooping用于IPv4网络,MLD Snooping用于IPv6网络,用来侦听路由器和主机之间发送的IGMP、MLD报文建立组播数据的二层转发表,从而管理和控制组播数据在二层网络中的转发。

3、PIM和MSDP

组播报文转发路径的建立,有多种组播路由协议可以完成。目前应用广泛的是PIM(Protocol Independent Multicast,协议无关组播)协议。PIM是一种域内组播路由协议,当跨PIM域传递组播源信息时,需要MSDP(Multicast Source Discovery Protocol,组播源发现协议)支持;当跨AS域建立组播路由时则同时需要MSDP和MBGP(MultiProtocolBorder Gateway Protocol,组播边界网关协议)支持。

PIM是用于IPv4或IPv6组播网络中域内组播路由器之间的组播路由与转发,用来在自治系统AS内发现组播源并构建组播分发树,将信息传递到接收者。在一个小型网络中,所有的组播路由器都在一个PIM组播域内。他可以动态响应网络拓扑变化,维护组播路由表,并按照路由表项执行转发。PIM有两套独立的模式:

(1)DM(Dense Mode):适用于小规模、接收者分布较为密集的情况,支持ASM模型。

(2)SM(Sparse Mode):适用于大规模、接收者分布较为稀疏的情况,同时支持ASM模型和SSM模型。

如图12-6,为了便于控制和管理组播资源(组播组、组播源和组播组成员),需要将组播资源在域间进行隔离,从而形成一个个隔离的PIM-SM域。图12-7所示为跨PIM-SM域的组播网络。由于PIM协议依赖于单播路由表,所以组播转发路径与单播转发路径是一致的。当组播源与接收者分布在不同的AS中时,需要跨AS建立组播转发树,如图12-8.此时可以部署MBGP协议,生成一张独立于单播路由的组播路由表,使组播数据通过组播路由表进行传输。

MSDP目前仅用于IPv4组播网络中域间组播路由器之间的域间组播源信息共享,但只对ASM服务模型有意义。它可以实现源所在域内的路由器将本地源信息传播给其他域内的路由器,以及不同域的路由器之间传递源信息。为了使不同的PIM-SM域之间组播数据能够互通,需要在域间部署MSDP协议。MSDP通过在各个PIM-SM域之间建立MSDP对等体关系,对等体之间交互SA(Source Active,源激活)消息来传递组播信息,从而实现接收者主机可以接收其他PIM-SM域的组播源数据。


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IP组播基础及工作原理——1 的相关文章

  • 如何从 JavaScript 对象中删除属性?

    问题描述 xff1a 给定一个对象 xff1a let myObject span class token operator 61 span span class token punctuation span span class toke
  • 在 Git 中推送提交时消息“src refspec master does not match any”

    问 xff1a 我克隆我的存储库 xff1a git clone ssh span class token operator span span class token operator span span class token oper
  • Qt编译、链接和运行参数的设置

    Qt编译 链接和运行参数的设置 Qt笔记 使用 Qt Creator 集成开发环境构建和运行程序是一件非常简单的事情 xff0c 一个按钮或者一个快捷键搞定全部 xff0c 通过 Qt Creator使用教程 xff08 简明版 xff09
  • 常用Linux命令行技巧

    结果以表格形式输出 column t 比如 xff1b span class token function mount span span class token operator span column t 默认分隔符为空格 xff0c
  • CV往哪卷?李飞飞指出三颗「北极星」:具身智能,视觉推理和场景理解

    点击下方卡片 xff0c 关注 CVer 公众号 AI CV重磅干货 xff0c 第一时间送达 转载自 xff1a 新智元 编辑 xff1a LRS 导读 ImageNet见证了计算机视觉发展的辉煌历程 xff0c 在部分任务性能已超越人类
  • Java异常处理的九个最佳实践

    1 确保在Finally程序块中完成资源释放或者使用Try With语句 比如对于InputStream xff0c 当我们使用完毕 xff0c 我们要确保资源被正确关闭 xff0c 比如下面我们常见的错误用法 xff0c 不要在try模块
  • CodeMirror使用笔记

    最近因工作需要 xff0c 在项目中使用了CodeMirror代码编辑器 xff0c 以下是使用笔记 首先 xff0c 看下最终的效果 引入基本的需要资源 lt script src 61 34 lt 61 request getConte
  • JAVA注解

    Java注解Annotations主要用于为目标程序提供额外补充的说明信息 注解以 64 符号标识注解并不改变编译程序的行为注意可以为程序元素 xff1a 实例变量 构造方法 方法或者类添加元数据信息注解并不是单纯的注释 xff0c 但却可
  • ubuntu中GitLab的安装与配置

    这里 xff0c 我们采用离线安装的方式安装GitLab 首先 xff0c 我们从清华大学开源软件镜像站中下载软件包 xff0c 用户可根据实际的服务器操作系统版本来选择不同的镜像资源 xff0c 这里我们以ubuntu为例 执行命令sud
  • Jenkins使用笔记

    本章简单记录Jenkins的使用笔记 首先 xff0c 我们从官网中下载安装介质 xff0c 可以看到这里有适合各种操作系统版本的安装源介质 xff0c 简单起见 xff0c 我们直接下载一个通用的war程序包 执行命令java jar j
  • GitLab 与 Jenkins 持续集成实践

    首先 xff0c 我们简单说明下我们的部署环境 xff1a GitLab xff1a 192 168 43 61 Jenkins xff1a 192 168 43 116 Jenkins中系统设置中 xff0c 配置GitLab连接信息 x
  • Linux下免密认证登录失败原因总结

    事件背景 A机器已经生产rsa密钥且已经将public key添加到B机器 root ssh authorized keys xff0c 但是从A机器上ssh root 64 B机器时仍然需要输入密码 xff0c 即无密码认证失败 原因总结
  • 公钥添加到authorized_keys到文件中之后仍无法免密登陆

    接上一章 xff0c 关于Linux下免密登陆失败 xff0c 这里找了Stackoverflow上关于这个问题的讨论 xff1a Adding public key to ssh authorized keys does not log
  • Java 8 中的List排序

    按字母顺序排序字符串列表 List lt String gt cities 61 Arrays asList 34 Milan 34 34 london 34 34 San Francisco 34 34 Tokyo 34 34 New D
  • Microservices vs SOA - 微服务与SOA

    开始之前 xff0c 我们先简单看下单体架构 SOA与微服务之间的区别 xff0c 如下图所示 xff1a 简单来讲 xff0c 对于单体架构 xff0c 其就像一个超大容器 xff0c 容器内集中包含了该应用的所有软件组件 xff0c 并
  • Python 机器学习8:sklearn 聚类算法

    1 K Means算法是一种广泛使用的聚类算法 from sklearn cluster import KMeans K Means是聚焦于相似的无监督的算法 xff0c 以距离作为数据对象间相似性度量的标准 xff0c 即数据对象间的距离
  • 什么是微服务——微服务架构体系介绍

    Why Microservices 回答这个问题前 xff0c 我们先看下之前大行其道的单体架构 Monolithic Architecture xff0c 对于非专业人士来讲 xff0c 所谓的单体架构 xff0c 其就像一个超大容器 x
  • 微服务架构特征

    一个典型的微服务架构 xff08 MSA xff09 通常包含以下组件 xff1a 客户端 xff1a 微服务架构着眼于识别各种不同的类型的设备 xff0c 以及在此设备上进行的各种管理操作 xff1a 搜索 构建 配置等等身份标识提供者
  • 微服务架构系列——API服务网关

    本章我们简单介绍微服务架构下的API服务网关 xff0c 本章我们将讨论以下话题 xff1a 什么是API服务网关为什么需要API服务网关API服务网关的工作机制 处理横切关注点 当我们在开发设计大型软件应用时 xff0c 我们一般都会采用
  • Java之keytool命令学习

    Java Keytool is a key and certificate management utility It allows users to manage their own public private key pairs an

随机推荐

  • HashMap 与 HashTable的区别

    HashMap 实现了Map接口非线程同步 xff0c 非线程安全不允许重复键键和值均允许为null HashMap lt Interger String gt employeeHashmap 61 new HashMap lt Integ
  • 如何避免敏捷失败?

    很多人都听说敏捷 xff0c 有些人知道敏捷是什么 xff0c 有些人也尝试过敏捷 xff0c 本章中将列举出一些常见的错误敏捷实践 xff0c 如果想要避免敏捷失败 xff0c 建议还是要对照下你所在的敏捷团队中有没有类似的敏捷实践 xf
  • 一个人有文化,到底有多重要?

    关于什么是文化 xff0c 我最最欣赏的回答 xff0c 是作家梁晓声的四句概括 xff1a 根植于内心的修养 xff0c 无需提醒的自觉 xff0c 以约束为前提的自由 xff0c 为别人着想的善良 01 一位叫做 Judy 的空姐 xf
  • MyBatis动态SQL中Map参数处理

    在MyBatis中 xff0c 如果我们需要传递两个参数 xff0c 有一种方式是通过Map作为传入参数 xff0c 在动态SQL中 xff0c 我们需要对传入的Map参数中的值进行判断 xff0c 然后进行动态SQL的条件拼接处理 假设我
  • MyBatis框架下防止SQL注入

    与传统的ORM框架不同 xff0c MyBatis使用XML描述符将对象映射到SQL语句或者存储过程中 xff0c 这种机制可以让我们更大的灵活度通过SQL来操作数据库对象 xff0c 因此 xff0c 我们必须小心这种便利下SQL注入的可
  • 使用android 视频解码mediaCodec碰到的几个问题

    问题1 mediaCodec dequeueInputBuffer一直返回 1 xff0c APP现象 xff1a 视屏卡屏 原因 xff1a 这是因为inputbuffer的内容有误 xff0c 导致无法解码 可通过设延时时间解决 xff
  • 云计算思维导图

    根据近期的云计算学习心得 xff0c 将云计算部分内容制作成思维导图 xff0c 方便于广大云计算学习者作为辅导讲义 xff01 思维导图内容主要包含 xff1a 1 云计算概述 2 云体系结构 3 网络资源 4 存储资源 5 硬件介绍 6
  • 路由器重温——串行链路链路层协议积累

    对于广域网接口来说 xff0c 主要的不同或者说主要的复杂性在于理解不同接口的物理特性以及链路层协议 xff0c 再上层基本都是 IP 协议 xff0c 基本上都是相同的 WAN口中的serial接口主要使用点对点的链路层协议有 xff0c
  • 路由器重温——PPPoE配置管理-2

    四 配置设备作为PPPoE服务器 路由器的PPPoE服务器功能可以配置在物理以太网接口或 PON 接口上 xff0c 也可配置在由 ADSL 接口生成的虚拟以太网接口上 1 配置虚拟模板接口 虚拟模板接口VT和以太网接口或PON接口绑定后
  • Python入门自学进阶——1--装饰器

    理解装饰器 xff0c 先要理解函数和高阶函数 首先要明白 xff0c 函数名就是一个变量 xff0c 如下图 xff0c 定义一个变量名和定义一个函数 xff0c 函数名与变量名是等价的 既然函数名就是一个变量名 xff0c 那么在定义函
  • Python入门自学进阶-Web框架——21、DjangoAdmin项目应用

    客户关系管理 以admin项目为基础 xff0c 扩展自己的项目 一 创建项目 二 配置数据库 xff0c 使用mysql数据库 xff1a 需要安全mysqlclient模块 xff1a pip install mysqlclient D
  • Python入门自学进阶-Web框架——33、瀑布流布局与组合查询

    一 瀑布流 xff0c 是指页面布局中 xff0c 在显示很多图片时 xff0c 图片及文字大小不相同 xff0c 导致页面排版不美观 如上图 xff0c 右边的布局 xff0c 因为第一行第一张图片过长 xff0c 第二行的第一张被挤到第
  • Python入门自学进阶-Web框架——34、富文本编辑器KindEditor、爬虫初步

    KindEditor 是一个轻量级的富文本编辑器 xff0c 应用于浏览器客户端 一 首先是下载 xff1a http kindeditor net down php xff0c 如下图 下载后是 解压缩后 xff1a 红框选中的都可以删除
  • Python入门自学进阶-Web框架——35、网络爬虫使用

    自动从网上抓取信息 xff0c 就是获取相应的网页 xff0c 对网页内容进行抽取整理 xff0c 获取有用的信息 xff0c 保存下来 要实现网上爬取信息 xff0c 关键是模拟浏览器动作 xff0c 实现自动向网址发送请求 xff0c
  • 6、spring的五种类型通知

    spring共提供了五种类型的通知 xff1a 通知类型接口描述Around 环绕通知org aopalliance intercept MethodInterceptor拦截对目标方法调用Before 前置通知org springfram
  • 路由器接口配置与管理——1

    路由器的接口相对于交换机来说最大的特点就是接口类型和配置更为复杂 xff0c 一般吧路由器上的接口分为三大类 xff1a 一类用于局域网的LAN接口 xff0c 一类用于广域网接入 互联的WAN接口 xff0c 最后一类可以应用于LAN组网
  • 路由配置与管理——静态路由配置与管理

    静态路由是一种最简单的路由 xff0c 需手工配置 xff0c 用一条指令指定静态路由的目的IP地址 子网掩码 下一跳IP地址 xff0c 或者出接口 优先级等主要参数值就可以了 还可根据实际需要配置静态路由与BFD或者NQA的联动 一 路
  • TCP实现局域网通信

    TCP实现局域网通信 TCP客户端通信步骤 xff1a 1 xff1a 创建套接字 sockfd 61 socket AF INET SOCK STREAM 0 2 xff1a 填写服务器结构体信息 span class token key
  • 路由策略和策略路由配置与管理-1

    路由策略和策略路由配置与管理 路由策略 与 策略路由 之间的区别就在于它们的主体 xff08 或者说 作用对象 xff09 不同 xff0c 前者的主体是 路由 xff0c 是对符合条件的路由 xff08 主要 xff09 通过修改路由属性
  • IP组播基础及工作原理——1

    IP组播在一些多用户定向发送的网络应用中使用非常普遍 xff0c 如远程多媒体会议 远程教学 视频点播 定向电子商务 xff0c 以及ISP的IPTV xff08 网络电视 xff09 等 学好IP组播基础知识及配置与管理方法 xff0c