服务器网卡teaming.docx

上传人:b****5 文档编号:6362794 上传时间:2023-01-05 格式:DOCX 页数:21 大小:1.34MB
下载 相关 举报
服务器网卡teaming.docx_第1页
第1页 / 共21页
服务器网卡teaming.docx_第2页
第2页 / 共21页
服务器网卡teaming.docx_第3页
第3页 / 共21页
服务器网卡teaming.docx_第4页
第4页 / 共21页
服务器网卡teaming.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

服务器网卡teaming.docx

《服务器网卡teaming.docx》由会员分享,可在线阅读,更多相关《服务器网卡teaming.docx(21页珍藏版)》请在冰豆网上搜索。

服务器网卡teaming.docx

服务器网卡teaming

提升服务器网络接入性能

——服务器网卡组(team)技术

概述

当今时代,网络已经融入人们生活中方方面面。

任何网络都离不开两个重要的角色:

客户机和服务器。

我们在单位、家庭里千千万万用来浏览网页、下载资料的上网个人电脑,就是客户机;而服务器则组成了象新浪、搜狐等大大小小的网站,为网民提供丰富的信息资源。

网站统计到的访问量,实际上就是有多少台客户机访问了他们的服务器。

很显然,这种通信模式决定了服务器与客户机在网络中的地位不是对等的:

和客户机比起来,服务器要重要得多,同时要为成千上万台的客户机提供服务。

因此服务器除了硬件性能要足够好以外,接入网络时还要有足够的带宽和高可用性。

在千兆网卡出现以前,为了解决服务器的带宽瓶颈,出现了将两块或多块网卡绑在一起,同时使用的技术,这种技术,后来演变为网卡组(team)技术。

实施网卡组有两个重要作用:

1.负载均衡。

可以根据每个物理网卡的实际数据流量,调整单块网卡上的服务器输入、输出两个方向的流量,达到多块网卡同时工作,增加带宽的效果;

2.提高可用性。

服务器一旦宕机或接入网络出现故障,将直接导致网络瘫痪。

网卡组技术可以消除因服务器网卡、网线、交换机端口硬件故障,甚至是单台交换机崩溃而带来的服务器网络接入故障。

近年来,随着千兆级的服务器网卡的出现,服务器带宽瓶颈得以缓解。

因而现在实施服务器网卡组,主要是为服务器网络接入提供冗余,提高服务器可用性。

目前市场上流行的可以实施网卡组技术的网卡有intel和broadcom服务器网卡。

本文将重点介绍intel和broadcom服务器网卡组技术。

服务器网卡组技术工作原理

服务器网卡组主要实现两个功能:

服务器接入的带宽扩展(负载均衡)和网络接入冗余,因此,它只涉及服务器接入的本地局域网。

由于服务器一般只是直接接入交换机,因此涉及到的设备往往也只有服务器和交换机。

网卡组的实现可以只在服务器一端实现,也可以在服务器、交换机两端都实现。

前者的实现方式称为交换机无关方式(switchindependent),后者称为交换机相关方式(switchdependent)。

一、物理地址、网络地址和ARP

网卡组是在局域网上实现的,其中涉及到的网络概念有物理地址、网络地址和ARP协议。

要想深入了解网卡组技术,首先要学习熟悉这些相关知识。

物理地址

我们知道,和广域网不同,局域网的网络传输介质,一般都是共享的。

依据工作站使用网络传输介质的控制方式不同,局域网分为以太网、令牌环和FDDI等几种。

任何一种局域网,都要使用自己的编址方式,对网络节点分配一个唯一地址,用以标识网络节点。

这个地址就是物理地址。

对应地,物理地址有以太网物理地址、令牌环网物理地址和FDDI网等物理地址。

就以太网来说,网络节点的物理地址是全球唯一的。

不同技术的局域网,由不同的网卡实现。

例如,平时我们使用的大多是以太网卡。

如果要组建FDDI网,则要使用FDDI网卡。

适用不同网络类型的网卡上,已经固化了它的物理地址。

同样,不同技术的局域网,也必须由不同的网络交换机组成。

数据在以太网上传输,必须遵循以太网协议,即要使用以太网的数据帧格式。

发送一帧数据前,网卡驱动首先构造一个合法的以太网数据帧,这个帧中包含自身的物理地址和目标节点的物理地址。

因此,任何通信行为发生前,必须知道目标节点的物理地址。

网络地址

如果通信仅仅发生在局域网内,那么,使用物理地址就已经足够。

当出现网络互联时,即不同的局域网之间要进行通信,特别是,令牌环网与以太网之间要进行通信,该使用谁的地址呢?

IP协议和IPX协议是一种网络互联协议,它的主要作用就是屏蔽下层不同的网络技术细节。

例如对于地址,不管具体的局域网是采用何种地址,网络互联协议另起炉灶,使用自己的定义的地址进行通信,这种地址称为网络地址。

多个局域网(可以是以太网或FDDI或其他)可以使用网络互联协议(IP或IPX或其他)互联为一个更大的网络,这个网络也称为网间网。

络地址是整个网间网有效的,应用程序传输数据时使用网络地址。

网络层协议根据目标网络地址,决定数据包是否需要转发给三层设备。

无论使用何种网络互联协议,数据包最终的传输,还是要交给底层的物理网络来完成。

而底层的物理网络传输数据必须使用自己的数据帧格式,因此,要想完成数据的实际传输,需要将网络地址转换为具体的物理地址。

ARP

ARP协议的作用,就是在知道网络节点IP地址的情况下,得到节点的物理地址。

平时,每个节点维护称为ARP缓存的表,表中有具体的IP地址与其物理地址的对应关系。

一个ARP解析的过程具体细节为:

1.当一个节点需要知道某个已知IP地址的节点物理地址时,首先查询本地ARP缓存,如有直接使用;如无,则发送一个网内广播包,称为ARP请求包,其中包含目标节点的IP地址。

2.网内所有节点都收到了该广播包。

所有接收到该请求包的节点,都会查找本地ARP缓存是否有发送节点的ARP条目,如无则根据该请求包的源物理地址,构造一个ARP条目保存,以避免将来需要和该节点通信时,再做额外的ARP解析。

因为ARP请求包中包含有目标节点的IP地址,因此接收节点还要判断对方是不是解析本节点的物理地址。

如果是,则向发送节点发送一个称为ARP应答的数据包(非广播包),告知本节点的物理地址。

ARP缓存条目如果在一定的时间没有使用,则会被从表中清除,以节省存贮空间。

特殊ARP(GratuitousARP,也有翻译为免费ARP)

一般地,节点在需要和某个节点通信时,需要知道对方的物理地址,而本地ARP缓存中又没有对应的ARP条目时,才广播一个ARP请求包,解析目标节点的物理地址。

特殊ARP也是一个ARP请求包,但它解析的是却自己的物理地址,即目标节点的IP地址是自身的IP地址。

而且是在特定时间发出的,比如某个节点网卡刚接入网络时。

难道节点不知道自己的物理地址吗?

原来,特殊ARP并不是用来解析某个节点的IP地址,它有两个作用:

1.自己是新来的,主动向网内广播自己的IP地址和对应的MAC地址,以避免过多的ARP请求包;

2.检测网内是否有其他节点使用和自己一样的IP地址。

如果收到了一个ARP应答,则说明网内已有节点在使用和自己相同的IP地址。

读到这里,希望读者能明白一点,在以太网内,某台主机要发送一个数据包,这个数据包实际上发送给了哪台主机(或网卡),和目标IP地址无关,而是和ARP缓存内的IP地址对应的物理地址有关。

当前ARP病毒大行其道,实际上就是通过在网络内发送一些欺骗性的ARP包,欺骗主机达到目的的。

HUB和交换机

这两者都属于局域网设备,从OSI七层互联模型上看,HUB是物理层设备,交换机是数据链路层设备。

HUB可以等效为一段物理网线。

例如,用HUB连接的两台主机,和用一根交叉双绞线直接连接的两台主机,没任何区别。

交换机相对复杂一些。

它的工作原理是,在内存中维护一张表,表中记录的交换机每个端口接了哪些主机,即端口与主机物理地址的映射表。

一个交换机端口可以通过HUB或其他交换机接多台主机,因此端口和主机物理地址的映射是一对多的关系。

这个表称为地址转发表,转发数据帧时,根据目的地址,查转发表后,决定将数据帧发送到哪个交换机端口。

如表中未查到,则将数据帧发送到所有交换机端口。

这个表是如何形成的呢?

在交换机刚初始化时,这张表是空的,进入交换机的数据帧,被发送到所有端口。

但只要有数据帧进入交换机,则根据数据帧的源地址和进入的交换机端口,得到主机物理地址和交换机端口之间的关系。

即,交换机通过检查进入数据帧的源物理地址,逐步构造地址转发表;根据数据帧的目的物理地址和转发表内容,决定将数据帧发到哪个端口。

需要注意的是,交换机地址转发表不是固定的,而是随时根据实际情况动态修改的。

二、网卡组技术架构

网卡组技术的实质是对多个物理网络接口进行统一管理,将多个物理接口虚拟成一个逻辑网络接口。

具体到服务器网卡上,可以看作将多块网卡虚拟为一块逻辑网卡。

从属性上看,虚拟逻辑网卡和物理网卡无任何不同,也有自己的物理地址和网络地址。

服务器使用逻辑网卡与外部的主机通信。

外部主机只能看到服务器的逻辑网卡,至于服务器具体的物理网卡个数、物理地址等细节,外部主机是不清楚的。

网卡组逻辑结构如图1所示。

图1逻辑结构图

无论是intel还是broadcom,一般都是在原有网卡驱动程序基础上,增加一个网卡组驱动程序,由该驱动程序完成网卡组功能。

网络协议直接访问网卡组驱动程序,网卡组驱动程序负责完成负载均衡等功能。

一般地,网卡组驱动负责对组成网卡组的各个物理网卡进行管理,例如,活动探测,流量探测等,并根据实际情况,实现负载均衡和网卡容错功能。

三、交换机无关方式

交换机无关方式网卡组技术,功能在服务器端实现,而对于交换机端是完全透明的,即交换机按正常的转发功能转发数据包,毋需做其他特殊配置。

Broadcom的SmartLoadBalancing(智能负载均衡,SLB),intel的AdapterFaultTolerance(网卡容错,AFT),SwitchFaultTolerance(交换机容错,SFT)和AdaptiveLoadBalancing(自适应负载均衡,ALB),这几种网卡组技术,都是交换机无关的。

1.SLB

SLB是Braodcom网卡实现的一种网卡组方式,其中又有负载均衡+容错和容错两种方式。

后者只有容错方式而不具备负载均衡功能,配置时可以根据需要选择需要的组模式。

负载均衡分为发送数据均衡和接收数据均衡技术。

对于发送数据负载均衡,是由服务器网卡组驱动程序完成的。

负载均衡不是基于单个数据包的,而是基于“应用流”的。

目的IP地址、目的端口号等信息,定义了一个“应用流”。

基于“应用流”的负载均衡可以避免同一应用的数据包通过不同物理网卡传输时出现的乱序问题。

服务器维护一张和负载均衡信息有关的“哈希表”(如果你不清楚什么是哈希表,只需知道它是一种保存数据的数据结构,数据在其中的存贮位置,是通过一个被称为“哈希函数”的公式计算出来的。

这种数据结构的最大优点就是查找数据效率十分高)。

表中记录了每个“流”应该从哪个物理网卡发送出去。

网卡组形成的逻辑网卡的物理地址,是从组中所有物理网卡中的一个的物理地址。

每块物理网卡,发送数据时都必须使用自己的物理地址。

这样,交换机看到的是不同的交换机端口,连接了不同的主机(网卡)。

当服务器接收到一个解析自己物理地址的ARP请求包时,回应的物理地址逻辑网卡的物理地址,也就是组中某块网卡的物理地址。

接收数据均衡,是通过ARP应答实现的。

刚开始时,服务器以逻辑网卡的物理地址应答ARP请求,这样,所有的接收数据,均从组中的某一块网卡中流入。

当需要做负载均衡时,服务器会根据来自不同客户端的ARP请求,回应以组中不同网卡的物理地址,以此实现流入数据在不同网卡上的均衡分布。

和发送数据负载均衡一样,系统同样建立、维护一个接收数据均衡信息哈希表。

一个特殊的情况是,当服务器发送一个ARP请求时,所有客户端据此请求包更新自己的ARP缓存。

如此,会影响到接收数据的均衡。

因此,在服务器均衡接收流量过程中,不仅仅是回答ARP请求时调整应答的网卡物理地址,还要根据不同的流量分布,根据系统维护的哈希表信息,针对不同的客户端,发送特殊ARP(GratuitousARP),主动进行调整。

在图2中,假定服务器S1有2块网卡做了网卡组,如何实现对网络内的2台客户端C1、C2做到发送和接收负载均衡呢?

例如对客户端C1的收发数据均通过网卡1,而对客户端C2的收发数据均通过网卡2进行。

对于发送数据,服务器根据不同的“应用流”,将它们分布到组中的不同网卡上传输。

而对于输入数据,则通过控制ARP应答,最后在三台主机上形成的ARP缓存如表一所示(简单起见,用4位十六进制数字表示物理地址):

ARP缓存表

服务器S1

客户端C1

客户端C2

10.1.1.20022

10.1.1.30033

10.1.1.100AA

10.1.1.100BB

注意客户端C1,C2解析到的服务器10.1.1.1的物理地址分别是00AA和00BB,是服务器网卡1和网卡2的地址,这样,就实现了服务器接收不同客户端的数据负载均衡。

图2智能负载均衡模式

2.AFT

AFT(AdapterFaultTolerance,网卡容错)是Intel网卡实现的一种网卡组方式,一个组中最多可以有8块网卡。

组中的网卡有三种状态:

active(活动)、standby(备份)和disable(不可用)。

初始化时,网卡组驱动程序根据网卡性能(例如速度,支持的双工模式等),择优挑选一块网卡作为“活动”网卡,其余网卡被置为“备份”状态。

如果某块网卡出现故障,则其状态被设置为“不可用”。

正常情况下,组中“活动”网卡负责数据的收发工作,“活动”网卡的MAC地址作为服务器的对外物理地址。

一旦检测到“活动”网卡出现故障,则“备份”网卡开始作为“活动”网卡使用。

性能高的“活动”网卡可以设置为“优先级”高的网卡。

“优先级”高的网卡在发生故障被替换后,一旦故障恢复,可以重新切换为“活动”网卡。

为减少应用中断时间,“备份”网卡变为“活动”后,仍然使用原来的MAC地址。

切换发生后,客户端无须做任何动作。

对交换机来说,相当于服务器从一个交换机端口换接到了另外一个端口。

3.SFT

SFT(SwitchFaultTolerant,交换机容错)是Intel网卡实现的另一种网卡组方式。

这种模式只能支持2块网卡,分别接不同的交换机,主要实现交换机容错功能。

交换机容错,是指当交换机出现断电、宕机等故障时,保证服务器网络接入不间断的容错技术。

和AFT类似,两块网卡一块工作在“活动”状态,一块工作在“备份”状态。

因为要实现服务器接入交换机冗余,因此服务器必须要连接两台不同的交换机,且两台交换机之间要互联。

一般地,局域网交换机之间都采用冗余连接,为避免交换机环路,需要启用STP协议。

但服务器网卡连接的交换机端口,不要启用STP。

因为STP协议会延迟交换机端口工作状态转换时间,在组中网卡切换时延时过大,而导致网络应用中断(技术资料如此介绍,与实际应用测试时有出入,后文有交代)。

“备份”网卡变为“活动”后,仍然使用原来的MAC地址。

切换发生后,客户端无须做任何动作。

对交换机来说,相当于服务器从一个交换机换接到了另外一个交换机。

4.ALB

ALB(AdaptiveLoadBalancing,自适应负载均衡)是Intel网卡提供的一种网卡组方式,其实现原理和Braodcom网卡的SLB模式大同小异,这里不再赘述。

四、交换机相关模式

顾名思义,交换机相关模式既是交换机端与服务器端一起参与网卡组操作。

此种模式Braodcom的有静态中继(GenericTrunking)和LinkAggregation(动态链路聚合);Intel有静态链路聚合(StaticLinkAggregation,SLA)和动态链路聚合(DynamicLinkAggregation,DLA)。

名字尽管不一样,其实也就两类:

静态和动态。

它们之间唯一的区别就是组中的交换机端口(或网卡)是手工配置的还是自动配置。

这些技术最早应用与交换机之间的链路聚合,例如,为扩展交换机之间的带宽,常见的CISCO快速以太网通道(FEC)、千兆以太网通道(GEC)等技术,如图3所示。

这些都需要在链路连接的两端交换机上配置,后来CISCO开发了一种用于交换机端口自动聚合的协议PAgP,启用了PAgP的端口可以与对端自行协商,自动聚合端口,动态管理参与聚合的端口。

PAgP是CISCO私有协议,而LACP则是实现类似功能的标准协议,也就是IEEE802.3ad标准。

图3以太网通道通常用于增加交换机之间的带宽

这类模式的网卡组技术实际上是用软件将服务器端多块网卡,模拟为一台交换机的多个端口。

在交换机看来,服务器就是一台支持链路聚合协议的交换机。

1.静态链路聚合

静态链路聚合是将交换机上的端口手工配置为一个聚合链路,例如FEC或GEC。

这种模式即实现出、入负载均衡,又可以实现网卡容错。

在交换机端,所有聚合端口被视为一个逻辑端口,出流量可以按预先配置的模式,均匀分布到各实际物理端口上。

因此,交换机端负责服务器入流量的负载均衡;服务器端,仍然使用哈系表分布出流量的负载均衡。

所有网卡使用一个MAC地址,任何一块物理网卡的损坏,除了分布在该网卡上的网络连接会出现短暂中断外,无其他影响。

2.动态链路聚合

除了生成链路聚合的方式是自动进行外,其他同静态链路聚合。

另外,动态链路聚合是依靠协议进行链路聚合管理,因此和静态链路聚合比较,会产生一定的资源开销。

无论动态还是静态链路聚合,交换机端所有参与聚合的端口,必须在同一交换机上,即,不能跨越交换机聚合链路。

网卡组配置实例

下面,我们将以intel的intelPRO1000PT服务器网卡为例,配置服务器网卡组。

首先安装随卡提供的网卡驱动程序,如果没有驱动,可以到intel的网站下载网卡的驱动程序,目前该网卡最新的驱动程序为PRO2KXP_v13_1_2.exe。

一、安装网卡驱动

1.直接双击驱动程序,执行解压缩后,出现如图4的画面:

图4安装网卡驱动

2.点击“下一步”后,出现如图5所示画面:

图5安装网卡驱动

3.点击“下一步”后,出现如图6所示画面:

图6安装网卡驱动

4.如果想安装SNMP代理,可以在图中勾选对应的选项。

不安装的话,直接点击“下一步”,进入如图7所示画面:

 

图7安装网卡驱动

5.点击“安装”,出现如图8的画面:

图8安装网卡驱动

6.点击“完成”,系统自动完成相关配置。

重新启动机器后,网卡驱动安装完毕。

二、配置网卡组

网卡驱动安装好后,可以配置网卡组了。

1.右键点击任何一块网卡,进入如图9所示的画面:

图9配置网卡组

2.点“配置”,出现如图10所示画面:

图10配置网卡组

3.点“分组”,出现如图11所示画面:

图11配置网卡组

4.勾选“将此适配器与其他适配器组合(T)”,然后点“新组”,出现如图12所示画面:

图12配置网卡组

5.点“下一步”,出现如图13所示画面:

图13配置网卡组

6.选择对应的分组类型后,点“下一步”,出现如图14所示画面:

图14配置网卡组

7.点击“完成”,完成配置。

网卡组配置完成后,系统会自动生成一块逻辑网卡。

从功能上看,与其他物理网卡无任何区别。

接下来,为逻辑网卡设置IP地址,子网掩码和缺省网关等网络参数后,组就可以正常工作了。

三、管理网卡组

配置完网卡组后,可以通过对逻辑网卡的属性设置,对网卡组进行管理。

下面是一些管理界面。

1.在“属性”对话框中,切换到“设置”页面,可以看到如图15所示画面:

图15管理网卡组

这里可以看到,网卡组类型(AFT,SFT等),组中网卡状态和管理组有关的一些按钮。

2.点“修改组”,出现如图16所示画面:

图16管理网卡组

在“适配器”页,可以增加、删除组中的网卡,设置组中网卡的优先级等。

在“类型”页,可以修改组的类型,如图17所示。

图17管理网卡组

图18所示为在AFT组模式中,将第一块网卡设置为“主适配器”。

当第一块网卡出现故障,第二块网卡变为活动后,如果第一块网卡故障恢复,则第一块网卡继续成为活动网卡。

图18设置组中网卡有限级

网卡组模式实际应用测试

交换机相关模式,实际上就是以前的交换机链路聚合技术,例如CISCO的FEC和GEC。

交换机和服务器两端通过手工配置和自动协商,把多个端口虚拟成一个逻辑接口。

这种技术出现比较早,相对成熟,也容易理解。

交换机无关方式,是服务器端team驱动唱“独角戏”,交换机端透明,那么,网卡组的功能又是如何具体实现的呢?

下面,我们对intel网卡实现的AFT、SFT和RLB三种交换机无关模式,通过检查交换机中MAC转发表,捕获包等手段,揭示网卡组功能是如何实现的。

测试环境如图19所示。

图19测试环境

客户端IP10.1.1.19MAC:

be34

服务器IP(team)10.1.13.MAC1:

8451,MAC2:

853F

1.SFT

将网卡组模式设置为SFT,检查组信息,显示为“适配器容错”,MAC地址为:

8451。

首先进行功能性测试。

在客户端不间断ping服务器地址,此时,检查交换机转发表,输出如图20所示:

图20交换机转发表

由输出结果可见,交换机识别出两块网卡分别接在Gi0/5和Gi0/6两个接口上。

在客户端上观察ARP缓存,10.1.1.3的MAC地址为8451。

断开活动网卡连接的网线,观察客户端ping进程,丢失一个ping数据包,后续正常,如图21所示。

图21ping进程检测服务器连接性

此时检查交换机转发表,输出如图22所示。

图22交换机转发表

与图20比较,可以看到,交换机接口Gi0/5(team主网卡接口)已经不可用,原来的备份网卡交换机接口Gi0/6,变成了原来team主网卡物理地址的接口,即,备网卡接管了team主网卡的物理地址。

这个“戏法”是如何完成的呢?

图23是通过协议分析软件抓包得到的结果。

图23捕获的数据包

在第30个数据包之前,主网卡状态是正常工作的。

可以看到,主、备两块网卡是通过发送广播包,表明自己的活动状态。

第30个数据包之后,主网卡网线被断开,只剩下备网卡(MAC地址:

853f)还在不断发送广播包。

经过大约30个数据包时间(这段时间导致一个ping包丢失),备网卡一直接收不到主网卡发送的广播包,它断定主网卡已经停止工作,因此,它发送了图23中第58个包,这个包的源、目的物理地址都是8451,也就是自己发给自己。

交换机收到这个包后,根据源地址发现端口Gi0/6连接了终端8451,马上修改了转发表,后续所有ping包就可以正常转发给服务器了。

这个过程在交换机看来,相当于服务器(10.1.1.3,MAC:

8451)从交换机一个端口转接到了另外一个端口。

SFT除了主、备网卡接不同的交换机外,其余和AFT行为基本一致。

当主网卡恢复后,除非设置了优先级,否则主网卡使用备网卡的MAC地址。

即,活动网卡才能使用网卡组虚拟网卡的物理地址,不管这个物理地址具体属于哪块网卡。

2.ALB

适应性负载均衡,服务器端负责发送数据的均衡,接收数据均衡主要依靠客户机端映射不同网卡的物理地址完成。

ALB模式中,组中所有的网卡同时工作,它们使用各自的物理地址,但对应同一个IP地址。

同时,通过控制ARP应答包,将来自不同的客户端数据包分布在不同的网卡上。

当其中一块网卡出现故障时,分布在该网卡上的ping数据流会丢失一个包,未分布在该网卡上的数据流则不会受到影响。

图24-图26所示是ALB模式中,当其中一块网卡出现问题时,交换机中的转发表变化和网卡组驱动做出的响应动作。

图24正常时交换机转发表

图25主网卡故障后交换机转发表

从图中可以看出,8451和853F两块网卡位于同一交换机端口Gi0/6。

图26捕获的数据包

此时,物理地址为853F(Gi0/5)的网卡故障,另一块网卡8541(Gi0/6)在探测不到它发出的广播包,确认其失效后,同时发送两个源、目的物理地址相同数据包(图26中序号为170、171,174、175等),分别是失效网卡的物理地址和自身的的物理地址。

交换机接到这些数据包后,根据源地址,很快会修改转发表。

结束语

下面是一些关于网

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1