GER隧道分片过程简述(陈超)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
GER隧道分片过程简述
组网拓扑图:
10.0.0.0/8 202.135.16.0/24 189.160.0.0/24 192.168.0.0/16 ---------------RTA---------------------------------------------RTB----------------------------------RTC--------------- G1/0/1 G1/0/0(MTU3000)G1/0/0 G1/0/1(MTU9600)G1/0/1 G1/0/0
Tunnel3/0/100(MTU5000) Tunnel5/0/100拓扑注解:
1、三台NE设备互联,通过动态路由协议(如OSPF、rip、isis等)使RTA G1/0/0口与
RTC G1/0/1口单播互通。
2、并且在用户模式下将tsu板(隧道板,主要用于封装GRE头的业务板)绑定为tunnel
类型。(命令行以RT A为例router>set board-type slot 3{该数字表示RTA隧道板的
槽位号} tunnel)
3、在RTA和RTC之间建立一条GRE隧道,注意隧道接口取名的槽位号要与该设备上
的隧道板(TSU板)槽位号保持一致。
4、在RTA和RTC上分别各建立一个loopback接口,该接口作为隧道的源或目的,进
入loopback接口,配置ipv4地址及掩码通常为主机地址,即32位掩码,并在接
口里进行与TSU单板关联,命令行以RTA为例target board 3,并且要将该接
口与GRE关联,命令行如下:binding tunnel GRE(V版本不同,命令行可能存在
差异)。
5、RTA与RTC各引一条静态路由指向各自tunnel接口。这样一条GRE隧道基本建立
成功。
6、将RTA的G1/0/0口MTU设置成3000,RTB的G1/0/1口MTU设置成9600。将RTA
的tunnel接口下IPV4mtu设置成5000
报文分片过程简述:
如上图所示,当RT A的G1/0/1口收到数据包时,会根据目的IP地址去查看自己的路由表项,如果目的是192.168.0.0网段的数据包,它会根据之前设置的静态路由,将该数据包上送到主控板(MPU),当主控板向tsu板下发数据报文时,此时他会根据tunnel
下设置的MTU进行比较,如果报文长度大于tunnel接口下的mtu5000时,MPU会通过平台进行软分片,如果包长小于5000,它会将数据报文直接送到TSU进行封装24字节的GRE头部。(注:此处进行的软件分片无论每个数据包分多少片,片长多大,都不会影响它在RTC的进TSU前的重组。)当封装完GRE头后,报文会重新上送给主控板,此时平台会根据RTA隧道出接口(tunnel)设置的mtu5000再进行对比,如果此时封装完GRE头的报文长度比tunnel接口mtu长的话,会根据该接口下的MTU5000进行再分片,时每片小于5000,此次分片仍然是软分片,不会影响后续的报文重组。这时报文的位置又回到了主控板,它此时会根据刚刚封装的GRE的ip地址进行查询路由表,当匹配路由后,将数据报文从G1/0/0口发出,此时x11(某模块)会根据报文payload长度与G1/0/0下的mtu进行对比,如果该报文payload长度大于出接口的mtu3000的话,它会向子卡逻辑下发一个为1的标志位(该标志位,标志的是该报文在子卡逻辑中是否需要分片,0为不需要分片,1为需要分片,由于流量从TSU板上送给MPU时已经根据该接口的mtu 分过片了,所以每片不可能比该接口的mtu长度长。所以不会分片,该X11预判是用于其它场景比如ipv4单播转发时会用到,此时报文已经从RT A的G1/0/0口出来,从RTB的G1/0/0进入后,进行arp查询(arp转发部分后续另写材料描述),及路由转发。此时在报文从下行接口出去前,会根据该接口下mtu进行比较,即刚才我所叙述的第三次分片的过程,如果报文长度比该接口mtu小时,报文被直接转发,如果比该接口的mtu值大时,X11下发表示位为1的标记,叫子卡逻辑进行硬件分片,此时子卡逻辑会根据最接近自己接口mtu的能被8整除的长度进行分片,举例说明,比如报文长度为1500,接口mtu是默认的1500,咱们理解应当部分片,但是实际上它会根据1496对报文进行分片,这个是子卡逻辑的一种算法,实说我也不理解这个是怎么弄出来的,但最后一片长度是总长度减去前几片的和。这里值得说的是,它分片后的片数多少及没片长度多少会直接影响到重组,原则上一、硬件分的片数不得超过两片,即最多分两片,三片以上不能重组;二、硬件分片即使分的是两片,但有的片长大于2048的话也是不能重组的,即每片长度不得大于2K。而且之前提到的软分片和刚才说的子卡逻辑分片,重组地点不同,举个例子:按刚才GRE在MPU进行软分片的话,它在RTA的mtu分的片,重组的话,一定是在RTC的MPU进行重组;而子卡逻辑进行的硬件分片的话,会逐跳分片,逐跳重组,即从RTA出接口进行了子卡逻辑分片后,它会到RTB进行重组,当再出RTB时会再根据该设备出接口的MTU进行再分片,到下一台设备进行重组。这整个过程就是GRE 分片、转发、重组的全过程。