二层协议基本总结(一)

个人总结

以太网帧格式

二层协议基本总结(一)
以太帧:在以太网链路上数据包
起始部分由前导码和帧开始符组成,以mac地址说明目的地址和源地址,帧的中部是其负载的包含其他协议报头的数据包(如ip协议),以太帧由一个32位冗余校验码结尾,用于检验是否损坏。
以太网帧长度在64字节到1518字节
type/length≥1536,则封装的是Ethernet_Ⅱ数据帧
type/length≤1500,则是IEEE802.3数据帧结构
mac地址第8bit为1说明是组播地址

ARP协议

Address Resolution Protocol 地址解析协议
在以太网中,为了正确的向目的主机传送报文,必须把目的主机的32位IP地址转换成目的主机48位MAC地址,这就需要ARP协议来将其实现

ARP工作过程:
第一步:根据主机A上的路由表内容,确定用来访问主机B的转发IP地址,然后主机A开始在自己的本地ARP缓存中检查主机B的MAC地址
第二步:若主机A在ARP缓存中没有找到相应的映射,将会把包含着源主机的IP地址和MAC地址的ARP帧请求广播到本地网络上的所有主机。当本地网络上主机收到ARP请求后会检查自己的IP地址是否匹配,不匹配则丢弃ARP请求。
第三步:主机B发现ARP请求中IP地址与自己的IP地址匹配,则会将源主机A的IP和MAC地址添加到本地缓存ARP缓存
第四步:主机B讲包含着自己的MAC地址的ARP回复消息单播回应A
第五步:主机A收到主机B的回复消息,把主机B的IP和MAC地址影身更新本地ARP缓存
总结来说ARP协议广播请求,单播回应

ARP两种数据包:ARP Request,ARP Reply

ARP缓存表象仅仅存储2分钟,一个ARP缓存表项在2分钟内被用到,则期限再延长2分钟,直到最大生命期限10分钟位置。

五种ARP学习:
1.普通ARP(正向ARP)
功能:IP地址->MAC地址
过程:工作过程如上述
2.翻转ARP(RARP)
功能:MAC地址->IP地址
过程:PC从网卡上读取MAC地址,然后在网络上发送一个RARP请求的广播数据包,请求RARP服务器回复该PC的IP地址。服务器收到了请求数据包之后为其分配IP地址,并将RARP回应发送给PC,PC收到回应之后,就是用得到的IP地址进行通讯。
3.免费ARP
功能:检测IP地址冲突
过程:主机将ARP Request广播报文中的目的IP地址字段设置为自己的IP地址,且该网络中所有主机包括网关都会收到此报文,当目的IP地址已经被一个主机或网关使用时,该主机或网关就会回应ARP Reply报文,就能检测IP地址冲突。
4.代理ARP
概念:路由器收到ARP Request时,发现源IP,目的IP不在相同网段,就会饰演代理ARP角色代为回答
过程:目的IP源IP位于不同网络,由于源主机未配置网关,所以将会广播ARP Request报文请求目的主机MAC地址。启动代理ARP后,路由器收到这样的七年跪求会查找路由表中是否存在目的主机的路由表项,如果有则将使用自己的G0/0/0接口的MAC地址来回应该ARP Request。主机A收到ARP Reply后,将以路由器的G0/0/0接口MAC地址作为目的MAC地址进行数据转发。
5.逆向ARP(IARP)
功能:通过物理地址获得IP地址
一般存在于帧中继网络中,用于实现IP和DLCI地址的映射

动态ARP和静态ARP对比:ARP表象分为动态ARP和静态ARP,动态是ARP协议自动生成和维护的表象,而静态ARP是手动配置建立的IP地址与MAC地址的映射关系。静态表象不会老化,不会被动态表象覆盖,只能通过手工来维护。

MAC表

MAC表:
记录了交换机所学习到的其他设备的MAC地址,vlan ID以及对应的出接口。

MAC地址表的作用:
在转发数据时,设备根据报文中的目的MAC地址和VLAN ID查询MAC地址表,快速定位出接口。

转发方式:
单播方式:当MAC地址表中包含与保温目的MAC地址对应的表象时,设备直接将报文从该表项中的转发出接口发送
广播方式:当设备收到的报文为广播报文,组播报文或MAC地址表中没有包含对应报文目的MAC地址的表项时,设备将采取广播方式将报文向除接受接口外同一VLAN内的所有接口转发。

MAC地址表的分类:
动态表项,静态表项,黑洞表项
动态表项由接口通过源MAC地址学习获得,表项有老化时间
静态表项由用户手工配置,表项不老化
黑洞表项用于指示丢弃含有特定源MAC地址或目的MAC地址的数据帧,有用户手工配置,表项不老化
在系统复位后,动态表项会丢失,而保存的静态表项和黑洞表项不会丢失

以太网链路聚合

链路聚合(Link Aggregation) 时将一组物理接口捆绑在一起作为一个逻辑接口来增加带宽和可靠性的一种方法
链路聚合做LAG(Link Aggregation Group) 是指将若干条以太链路捆绑在一起所形成的逻辑链路,简写为Eth-Trunk。Eth-Trunk两端的物理接口数量,速率,双工方式等必须一致

链路聚合模式:
手工负载分担模式链路聚合 :手工负载分担模式下,Eth-Trunk的简历,成员接口的加入完全由手工来配置,该模式下所有活动链路都参与数据的转发,平均分担流量,因此称为负载分担模式。如果某条活动链路故障,链路聚合组自动在剩余的活动链路中平均分配分担流量。手工负载分担模式通常应用在对端设备不支持LACP协议的情况下
LACP模式链路聚合 :也被称为M:N模式,这种方式同时可以实现链路负载分担和链路冗余备份的双重功能。该模式下,需要手工创建Eth-Trunk,手工加入Eth-Trunk成员接口,由LACP协议协商确定活动接口和非活动接口。在LACP模式的Eth-Trunk中加入成员接口后,这些接口将向对端通告自己的系统优先级,MAC地址,接口优先级,接口号等信息

活跃接口选举过程:M选举(先选主动端,主动端再选活动接口)
系统优先级数值小,数值相同,MAC地址小的作为主动端;接口LACP优先级的值越小,则优先级越高,如果接口LACP优先级相同,接口ID(接口号)小的看i恶口被选为活动接口。接口LACP优先级是为了区别同一个Eth-Trunk中的不同接口被选为活动接口的优先程度,优先级高的接口将优先被选为活动接口

Eth-Trunk接口流量负载分担方式:基于IP数据流的,基于数据包的
基于IP的散列算法能保证包顺序,但不能保证带宽利用率。基于包的散列算法能保证贷款利用率,但不能保证包的顺序。缺省情况下,Eth-Trunk接口根据IP进行散列。
配置命令如下:
interface eth-trunk trunk-id 进入eth-trunk接口视图
load-balance{ ip | packet-all } 以太通道接口下配置eth-trunk接口的散列依据
distribute-weight weight-value 物理接口下配置eth-trunk成员接口的负载分担权重,默认是1

Eth-Trunk配置流程

创建Eth-Trunk:interface eth-trunk trunk-id
配置Eth-Trunk的工作模式执行命令mode lacp-static /manual load-balance
Eth-Trunk中加入成员接口trunkport interface-type interface-number to 或者进入要捆绑到此Eth-Trunk的成员接口的接口试图执行 eth-trunk trunk-id 命令,将当前接口加入Eth-Trunk。

可选:
配置系统LACP优先级:
lacp priority priority,配置当前路由器的系统LACP优先级
配置活动接口数上限阈值:
interface eth-trunk trunk-id 进入Eth-Trunk接口试图
max active-linknumber link-number 配置活动接口数上限阈值
配置接口LACP优先级:
interface interface-type interface-number 进入接口试图
lacp priority priority 配置当前接口的LACP优先级
LACP抢占并配置抢占等待时间:
interface eth-trunk trunk-id 进入Eth-Trunk接口视图
lacp preempt enable 使能当前Eth-Trunk接口的LACP抢占功能
lacp preempt delay delay-time 配置当前Eth-Trunk接口的LACP抢占等待时间