CN102291318B - 一种最大传输单元协商的方法和路由器 - Google Patents
一种最大传输单元协商的方法和路由器 Download PDFInfo
- Publication number
- CN102291318B CN102291318B CN201110284198.7A CN201110284198A CN102291318B CN 102291318 B CN102291318 B CN 102291318B CN 201110284198 A CN201110284198 A CN 201110284198A CN 102291318 B CN102291318 B CN 102291318B
- Authority
- CN
- China
- Prior art keywords
- value
- pmtu
- mtu
- router
- hello packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Abstract
本发明公开了一种最大传输单元协商的方法,该方法包括:接收其他路由器发送的hello报文,若接收的hello报文携带PMTU,确定自身接口实际MTU值是否小于接收的PMTU值,如果是,发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文;否则,记录接收的PMTU值为协商的有效MTU值,并发送携带值与协商的有效MTU值相等的PMTU的hello报文。基于同样的发明构思,本发明还提出一种路由器,能够将不同路由器接口MTU协商一致,扩大广播网络上ISIS协议的使用范围。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种最大传输单元协商的方法和路由器。
背景技术
中间系统到中间系统的域内路由信息交换协议(ISIS)是基于链路层的协议,因此不能利用IP层自动分片的特性来对大报文进行自动分片,这就要求ISIS协议在产生报文时要保证报文的大小不能大于本端和对端接口的MTU。这样才能使报文顺利地从所有的ISIS接口上发送出去,而且顺利地被邻居接收到,从而进行ISIS协议的互通。
ISIS的邻居可以在广播口和P2P口上建立,因为P2P口的链路层协议会进行两端接口MTU的协商,保证了两端接口的MTU值相等。而广播口的链路层协议没有此功能,所以要求ISIS在邻居建立的过程中进行MTU的协商。
在ISIS协议中本地使能ISIS能力的接口最小的MTU值决定了本地生成LSP的最大长度。
下面详细描述邻居建立过程中的广播口邻居建立过程。
ISIS在封装Hello报文时,会根据接口的MTU值将报文填充到接口的MTU大小,这样在邻居交互的过程中根据Hello报文的长度就可以感知到对端接口MTU值,从而实现协商两端接口MTU的目的。参见图1,图1为现有实现两端接口MTU一致时邻居的建立过程。具体步骤如下:
步骤101,路由器A向路由器B发送长度为本地接口MTU值1500,邻居为空的hello报文。
步骤102,路由器B与路由器A建立邻居,状态为Init。
步骤103,路由器B向路由器A发送长度为本地接口MTU值1500,邻居为路由器AMAC地址的hello报文。
步骤104,路由器A与路由器B建立邻居,通过2way检查,状态为up。
步骤105,路由器A向路由器B发送长度为本地接口MTU值1500,邻居为路由器BMAC地址的hello报文。
步骤106,路由器B与路由器A建立邻居,通过2way检查,状态为up。
参见图2,图2为现有实现两端路由器MTU不一致时邻居的建立过程。具体步骤如下:
步骤201,路由器A向路由器B发送长度为本地接口MTU值1500,邻居为空的hello报文。
步骤202,确定路由器A的报文长度1500大于本地接口MTU值1200,将接收的hello报文丢弃。
步骤203,路由器B向路由器A发送长度为本地接口MTU值1200,邻居为空的hello报文。
步骤204,路由器A与路由器B建立邻居,状态为Init。
由上可见,现有实现的缺点是当两端路由器接口MTU不一致时,路由器B丢弃了路由器A设备发送的hello报文,路由器A与路由器B不能协商相等的接口MTU,限制了广播网络上ISIS协议的使用范围。
发明内容
有鉴于此,本发明提供一种MTU协商的方法和路由器。能够将不同路由器接口MTU协商一致,扩大广播网络上ISIS协议的使用范围。
为解决上述技术问题,本发明的技术方案是这样实现的:
一种MTU协商的方法,应用于广播口ISIS邻居建立过程,所述方法包括:接收其他路由器发送的hello报文,若所述接收的hello报文携带协议最大传输单元PMTU,确定自身接口实际最大传输单元MTU值是否小于所述接收的PMTU值,如果是,发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文;否则,记录所述接收的PMTU值为协商的有效MTU值,并发送携带值与协商的有效MTU值相等的PMTU的hello报文;
其中,所述PMTU用于表示协商有效MTU,所述PMTU值小于或等于发送该PMTU的路由器的接口实际MTU值。
一种MTU协商的路由器,可应用于广播口ISIS邻居建立过程,该路由器包括:接收单元,确定单元、记录单元和发送单元;
所述接收单元,用于接收其他路由器发送的hello报文;
所述确定单元,用于确定所述接收单元接收的hello报文携带协议最大传输单元PMTU,其中,所述PMTU用于表示协商有效最大传输单元MTU,所述PMTU值小于或等于发送该PMTU的路由设备的接口实际MTU值;进一步确定自身接口实际MTU值是否小于所述PMTU值;
所述记录单元,用于当所述确定单元进一步确定自身接口实际MTU大于或等于所述接收的PMTU时,记录所述接收的PMTU值为协商的有效MTU值;
所述发送单元,用于如果所述确定单元进一步确定自身接口实际MTU值小于所述PMTU值时,发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文;否则,发送携带值与所述记录单元记录的协商的有效MTU值相等的PMTU的hello报文。
综上所述,本发明在接收其他路由器发来的hello报文携带的PMTU小于自身实际接口MTU时,记录接收的PMTU值作为协商的有效接口MTU值,发送hello报文时携带值与协商的有效接口MTU值相等的PMTU,当前路由器能够降低自身接口MTU值与对端路由器接口MTU值相匹配,从而能够将不同路由器接口MTU协商一致,扩大广播网络上ISIS协议的使用范围。
附图说明
图1为现有实现两端接口MTU一致时邻居的建立过程;
图2为现有实现两端路由器MTU不一致时邻居的建立过程;
图3为本发明实施例中MTU协商流程图;
图4为本发明具体实施例中实现PMTU的TLV格式示意图;
图5为路由器A同路由器B建立邻居过程流程图;
图6为路由器A与路由器C建立邻居过程流程图;
图7为路由器A与路由器D建立邻居过程流程图;
图8为本发明实施例中ISIS邻居建立MTU协商的路由器接口示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
本发明主要解决在广播口邻居建立时,通过配置自动协商MTU功能解决两端路由器接口MTU不一致时不能建立正常邻居的问题。该建立过程中任一路由器分别与其他路由器两两建立ISIS邻居,其中,任一路由器需要分别与其他路由器两两协商接口MTU,接口MTU协商一致时可以建立正常ISIS邻居。
参见图3,图3为本发明实施例中MTU协商流程图。具体步骤为:
步骤301,当前路由器接收其他路由器发送的hello报文,若该报文携带PMTU,其中,PMTU用于表示协商有效MTU,PMTU值小于或等于发送该PMTU的路由器的接口实际MTU值。
本步骤中当前路由器配置自动协商MTU功能,接收hello报文会检查接收的报文是否携带PMTU。在协商接口MTU时,当前路由器在发送hello报文中填充PMTU表示协商的有效MTU,而不会将报文填充到本地接口MTU值长度。
步骤302,当前路由器确定自身接口MTU值是否小于接收的PMTU值,如果是,执行步骤303;否则,执行步骤304。
步骤303,当前路由器发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文。
如果当前路由器接口MTU值小于其他路由器发送的hello报文携带的PMTU值,不能提高到与所述其他路由器PMTU值相匹配,该情况下不能协商接口MTU一致,当前路由器发送hello报文时携带的PMTU值为实际接口MTU值,让其他路由器去协商,对于当前路由器该次协商失败。
步骤304,记录接收的PMTU值为协商的有效MTU值,并发送携带值与协商的有效MTU值相等的PMTU的hello报文。
当前路由设备确定其他路由设备发送的PTMU值小于自身接口实际MTU值时,主动降低自身要发送的PMTU值与其他端口的PMTU值相匹配,进而将接口MTU协商一致。
若接收的hello报文未携带PMTU,确定自身接口实际MTU值是否小于接收的hello报文的报文长度,如果是,发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文;否则,记录接收的hello报文的报文长度为协商的有效MTU值,并发送携带值与所述协商的有效MTU值相等的PMTU的hello报文。
若接收的hello报文还携带当前路由器的MAC地址,则与其他路由器建立邻居且状态置为运行状态up;并发送携带值与接收的PMTU值相等的PMTU和其他路由器MAC地址的hello报文。
如果接收的hello报文中不仅携带PMTU,还携带了自身的MAC地址,则说明之前两端接口MTU已经协商一致,这是不需要再比较本地MTU值与接收的PMTU值的大小,而是直接与对端建立邻居,而且通过2way检查,将邻居状态置为UP。同时在发送的hello报文中除了携带PMTU,还要携带对端的MAC地址,使对端通过2way检查。
发送携带值与协商的有效MTU值相等的PMTU的hello报文之后,若接收的hello报文未携带PMTU但携带当前路由器的MAC地址,则与其它路由器建立邻居且状态置为up;发送报文长度与记录的有效MTU值相等并携带所述其他路由器MAC地址的hello报文。
在确定本地接口实际MTU值是否小于接收PMTU值之前,先确定当前路由器是否记录协商的有效MTU值,如果是,若确定记录的协商的有效MTU值大于或等于接收的PMTU值时,将本地记录的协商的有效MTU值更新为接收的PMTU值,并发送携带值同接收的PMTU值相等的PMTU及所述其他路由器的MAC地址的hello报文;若确定所述记录的协商的有效MTU值小于所述接收的PMTU值时,发送携带值同记录的协商的有效MTU值相等的PMTU的hello报文;否则,执行所述确定自身接口实际MTU值是否小于接收PMTU值,后续步骤同上文过程一致,不再赘述。
接收其他路由器发来的hello报文,先判断本地是否记录了协商的有效MTU,如果已记录,则通过该值与接收的PMTU比较大小,决定是否能协商MTU一致;如果未记录,则通过本地实际接口MTU值与接收的PMTU比较大小,决定是否能协商MTU一致。
该方法进一步为当前路由器设置接口最小MTU值。
当接收所述其他路由器发送的hello报文携带的PMTU被置为无效时,或接收所述其他路由器发送的hello报文未携带PMTU且报文长度小于自身设置的最小MTU值时,与所述其他路由器建立邻居且状态置为初始状态Init,并发送携带被置为无效的PMTU的hello报文。
在具体实现中,PMTU置为无效通过赋值0来实现。最小MTU值可以根据具体应用设置,若未设置具体值,默认最小值为256。设置最小MTU值为了避免协商的有效MTU值过小造成生成LSP的长度过小,甚至不能存放一个较大的TLV。
当前路由器发送hello报文时,填充用于实现PTMU和其他路由器MAC地址的类型长度值TLV。而不用将整个hello报文填充到报文长度为接口实际MTU值。这样在hello报文的长度大大减小,节约了网络带宽。
hello报文中携带的有效字段通过新增TLV实现,其中有效字段为PMTU和MAC地址。现以实现PMTU的TLV为例。参见图4,图4为本发明具体实施例中实现PMTU的TLV格式示意图。图4中的Type用来标识PMTU,PMTU值为对方要进行协商的有效MTU值。
对于MAC地址的TLV实现同图4中PMTU的TLV实现。只是随着邻居的个数增加时,长度值变化,填充的MAC地址增多。但是即使这样,使能的路由设备发送的hello报文长度也较短。
下面结合附图来详细描述ISIS邻居建立的过程。若路由器A、路由器B、路由器C和路由器D四个路由器之间建立ISIS邻居,以路由器A与其他路由器建立过程为例,且建立顺序为先与路由器B,再与路由器C,最后与路由器D建立连接。其中,路由器A、路由器D配置接口命令使能自动协商MTU;路由器B和路由器C未配置使能,同现有实现的路由器一致。
参见图5,图5为路由器A同路由器B建立邻居过程流程图。路由器A的本地接口实际MTU值1200,路由器B的本地接口实际MTU值1000。具体步骤为:
步骤501,路由器A向路由器B发送PMTU值为1200,邻居为空的hello报文。
由于路由器A使能自动协商MTU,因此在发送报文时携带PMTU值为1200,并不将报文的长度填充到1200。
在邻居建立过程中,路由器A先向路由器B发hello报文,还是路由器B先向路由器A发送hello报文的机会是均等的,本发明具体实施例中均以路由器A先向其他路由器发送hello报文为例。
步骤502,路由器B与路由器A建立邻居,2way检查失败,状态为Init。
路由器B的接口实际MTU值为1000,但是路由器A发来的报文长度并不大于1000,因此路由器B与路由器A建立邻居,而不会把报文丢弃。
步骤503,路由器B向路由器A发送报文长度为1000,邻居为路由器AMAC地址的hello报文。
路由器B未使能自动协商MTU,因此发送的hello报文同现有实现,将报文长度填充到本地实际MTU值1000发送。
步骤504,路由器A与路由器B建立邻居,2way检查通过,邻居状态为up,并记录协商的有效MTU值1000。
路由器A收到路由器B发送的hello报文,解析报文,确定报文未携带PMTU,则确定该报文的报文长度,确定该报文长度小于本地接口实际MTU,则与路由器B建立邻居。
步骤505,路由器A向路由器B发送PMTU值为1000,邻居为路由器BMAC地址的hello报文。
步骤506,路由器B与路由器A建立邻居,2way检查成功,邻居状态为up。
至此,邻居建立过程结束。路由器A与路由器B建立正常邻居连接,协商的有效MTU值1000;路由器B与路由器A也建立正常邻居连接,协商的有效值为自身接收实际MTU值1000。
参见图6,图6为路由器A与路由器C建立邻居过程流程图。路由器A的本地接口实际MTU值1200,此时本地存在记录的协商的有效MTU值1000,路由器B的本地接口实际MTU值1500。具体步骤为:
步骤601,路由器A向路由器B发送PMTU值为1000,邻居为空的hello报文。
本步骤中,PMTU值1000是记录的本地协商的有效MTU值。
步骤602,路由器B与路由器A建立连接,2way检查失败,邻居状态为Init。
步骤603,路由器B向路由器A发送报文长度为1500,邻居为路由器AMAC地址的hello报文。
步骤604,路由器A检查报文长度大于本地实际接口MTU值,将收到的hello报文丢弃。
步骤605,路由器A向路由器B发送PMTU值为1000,邻居为空的hello报文。
步骤606路由器B与路由器A建立的邻居状态为Init。
由图5、和图6可知,若本地接口实际MTU值大的一端配置接口命令并使能自动协商MTU,而本地接口实际MTU值小得一端未配置接口命令并使能自动协商MTU,两端均可建立正常邻居连接,若反之,则不能建立正常邻居连接。
参见图7,图7为路由器A与路由器D建立邻居过程流程图。路由器A的本地接口实际MTU值1200,此时本地存在记录的协商的有效MTU值1000,路由器D的本地接口实际MTU值1500。具体步骤为:
步骤701,路由器A向路由器D发送PMTU值为1000,邻居为空的hello报文。
本步骤中,PMTU值1000是记录的本地协商的有效MTU值。
步骤702,路由器D与路由器A建立邻居,2way检查失败,状态为Init。
步骤703,路由器D向路由器A发送PMTU值为1500,邻居为路由器AMAC地址的hello报文。
步骤704,路由器A与路由器D建立邻居,2way检查通过,邻居状态为up,并记录协商的有效MTU值1000。
路由器A将路由器D发送的PMTU值同本地记录的协商的有效MTU值,比较,比较结果为相等,则建立邻居。
步骤705,路由器A向路由器D发送PMTU值为1000,邻居为路由器D和路由器B的MAC地址的hello报文。
步骤706,2way检查通过,与路由器A建立的邻居状态为up,记录协商的有效MTU值为1000。
本步骤中如果同路由器D协商出的本地有效值与记录的协商的有效MTU值不一致,则更新该有效MTU值。且再与其他路由器建立邻居时,用记录的协商的有效MTU值作为PMTU来发送报文,来与接收的PMTU值或报文长度比较。
由上述实施例可以看出,建立邻居的两端路由器接口实际MTU值大的一端配置并使能自动协商MTU特性时,邻居正常建立。仅接口实际MTU值小得一端配置并使能自动协商MTU特性时,邻居建立失败。由于接口实际MTU值可能由于网络情况发生变化,并不能保证某个路由设备接口的实际MTU值不变,也不能保证实际MTU值大的一端,记录的协商的有效MTU值一直比其他接口的实际MTU值大。两端都配置并使能自动协商MTU特性时,可以保证邻居正常建立,因此两端都配置并使能自动协商MTU这一特性时,保证邻居正常建立,为本发明的最佳实施例。
本发明在两端接口MTU协商一致后,还可以使用现有实现方式进行邻居建立过程。由于接口MTU已协商一致,而现有实现在两端接口MTU一致的情况下,可以建立ISIS正常邻居。上文已详细描述了两端接口MTU如何协商一致的过程,通过现有技术如何实现接口MTU一致建立邻居过程在这里不再详述。
本发明中建立的邻居均指ISIS邻居,为了描述方便用建立邻居描述。
基于上述同样的发明构思,本发明还提出了一种MTU协商的路由器,可应用于广播口ISIS邻居建立过程。参见图8,图8为本发明具体实施例中建立ISIS邻居的路由器的结构示意图。该路由器包括:接收单元801,确定单元802、记录单元803和发送单元804。
接收单元801,用于接收其他路由器发送的hello报文。
确定单元802,用于确定接收单元801接收的hello报文携带协议最大传输单元PMTU,其中,PMTU用于表示协商有效最大传输单元MTU,PMTU值小于或等于发送该PMTU的路由设备的接口实际MTU值;进一步确定自身接口实际MTU值是否小于接收的PMTU值。
记录单元803,用于当确定单元802进一步确定自身接口实际MTU大于或等于接收的PMTU时,记录接收的PMTU值为协商的有效MTU值。
发送单元804,用于如果确定单元802确定自身接口实际MTU值小于接收的PMTU值时,发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文;否则,发送携带值与记录单元803记录的协商的有效MTU值相等的PMTU的hello报文。
较佳地,
确定单元802,进一步用于确定接收的hello报文未携带PMTU时,确定自身接口实际MTU值是否小于接收的hello报文的报文长度。
记录单元803,进一步用于当确定单元802进一步确定自身接口实际MTU大于或等于接收的hello报文的报文长度时,记录接收的hello报文的报文长度为协商的有效MTU值。
发送单元804,进一步用于当确定单元802确定自身接口实际MTU小于该hello报文的报文长度时,发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文;否则,发送携带值与记录单元803记录的协商的有效MTU值相等的PMTU的hello报文。
较佳地,
确定单元802,进一步用于确定接收的hello报文还携带自身所在路由器的MAC地址,则与其它路由器建立邻居且状态置为up。
发送单元804,进一步用于当确定单元802进一步确定接收的hello报文还携带自身所在路由器的MAC地址时,发送携带值与接收的PMTU值相等的PMTU和所述其他路由器MAC地址的hello报文。
较佳地,
确定单元802,进一步用于发送单元804发送携带值与协商的有效MTU值相等的PMTU的hello报文之后,确定接收的hello报文未携带PMTU但携带自身所在路由器的MAC地址,则与其它路由器建立邻居且状态置为up。
发送单元,进一步用于当确定单元802确定接收的hello报文未携带PMTU但携带自身所在路由器的MAC地址时,发送报文长度与所述记录的有效MTU值相等并携带所述其他路由器MAC地址的hello报文。
较佳地,
确定单元802,进一步用于确定记录单元803是否记录协商的有效MTU,如果是,则确定记录的协商的有效MTU值是否小于接收的PMTU值;否则,确定自身接口实际MTU值是否小于接收的PMTU值。
记录单元803,进一步用于当确定单元802确定记录的协商的有效MTU值大于或等于接收的PMTU值时,将自身记录的协商的有效MTU值更新为接收的PMTU值。
发送单元804,进一步用于若确定单元802确定记录的协商的有效MTU值大于或等于接收的PMTU值时,发送携带值同接收的PMTU值相等的PMTU及所述其他路由器的MAC地址的hello报文;否则,发送携带值同记录的协商的有效MTU值相等的PMTU的hello报文。
较佳地,该路由器进一步包括:配置单元805。
配置单元805,用于设置接口最小MTU值。
确定单元802,进一步用于确定接收单元801接收的其他路由器发送的hello报文携带PMTU被置为无效或确定接收的hello报文未携带PMTU且报文长度小于配置单元805设置的最小MTU值时,与其他路由器建立邻居且状态置为初始状态Init。
发送单元804,进一步用于当确定单元802确定接收的PMTU被置为无效时,或接收的hello报文未携带PMTU且报文长度小于配置单元805设置的最小MTU值时,发送携带被置为无效的PMTU的hello报文。
较佳地,
发送单元,进一步用于发送hello报文时,填充用于实现PTMU和其他路由器MAC地址的TLV。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
综上所述,本发明在路由器上配置接口命令并使能自动协商MTU,发送报文时通过携带PMTU标识协商的有效MTU,该PMTU值会降低到与对端接口MTU值相匹配,从而使邻居正常建立。因此,无论两端路由器接口MTU是否一致,均能建立正常邻居,扩大广播网络上ISIS协议的使用范围。
若对端接口实际MTU值小于本地接口MTU值,即使对端未配置接口命令使能自动协商MTU,由于其发送的报文长度小于本地接口实际MTU值,也可建立正常邻居,因此,如果各路由器接口实际MTU值较稳定,则只在较大MTU值一端使能自动协商MTU特性,也可建立正常邻居。
本发明在具体实施例中,还设置了最小MTU值,避免协商的有效MTU值过小造成生成LSP的长度过小,甚至不能存放一个较大的TLV。
由于本发明具体实施例中,在发送hello报文时,使能的自动协商MTU的路由器只是在发送的hello报文中携带有用字段,而不用将整个hello报文填充到报文长度为接口实际MTU值。这样在hello报文的长度大大减小,节约了网络带宽。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种最大传输单元协商的方法,应用于广播口中间系统到中间系统的域内路由信息交换协议ISIS邻居建立过程,其特征在于,该方法包括:
接收其他路由器发送的hello报文,若所述接收的hello报文携带协议最大传输单元PMTU,确定自身接口实际最大传输单元MTU值是否小于所述接收的PMTU值,如果是,发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文;否则,记录所述接收的PMTU值为协商的有效MTU值,并发送携带值与协商的有效MTU值相等的PMTU的hello报文;
其中,所述PMTU用于表示协商有效MTU,所述PMTU值小于或等于发送该PMTU的路由器的接口实际MTU值。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
若所述接收的hello报文未携带PMTU,确定自身接口实际MTU值是否小于所述接收的hello报文的报文长度,如果是,发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文;否则,记录所述接收的hello报文的报文长度为协商的有效MTU值,并发送携带值与所述协商的有效MTU值相等的PMTU的hello报文。
3.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:若所述接收的hello报文还携带当前路由器的MAC地址,则与所述其他路由器建立邻居且状态置为运行状态up;并发送携带值与所述接收的PMTU值相等的PMTU和所述其他路由器MAC地址的hello报文。
4.根据权利要求1或2所述的方法,其特征在于,所述发送携带值与协商的有效MTU值相等的PMTU的hello报文之后,所述方法进一步包括:
若所述接收的hello报文未携带PMTU但携带当前路由器的MAC地址,则与所述其它路由器建立邻居且状态置为up;发送报文长度与所述记录的有效MTU值相等并携带所述其他路由器MAC地址的hello报文。
5.根据权利要求1所述的方法,其特征在于,
所述确定自身接口实际MTU值是否小于所述接收的PMTU值之前,所述方法进一步包括:
确定当前路由器是否记录协商的有效MTU值,如果是,若确定记录的协商的有效MTU值大于或等于所述接收的PMTU值时,将本地记录的协商的有效MTU值更新为接收的PMTU值,并发送携带值同接收的PMTU值相等的PMTU及所述其他路由器的MAC地址的hello报文;若确定所述记录的协商的有效MTU值小于所述接收的PMTU值时,发送携带值同记录的协商的有效MTU值相等的PMTU的hello报文;否则,执行所述确定自身接口实际MTU值是否小于所述接收的PMTU值及后续步骤。
6.根据权利要求2所述的方法,其特征在于,所述方法进一步包括:
当前路由器设置接口最小MTU值;
当接收所述其他路由器发送的hello报文携带的PMTU被置为无效时,或接收所述其他路由器发送的hello报文未携带PMTU且报文长度小于自身设置的最小MTU值时,与所述其他路由器建立邻居且状态置为初始状态Init,并发送携带被置为无效的PMTU的hello报文。
7.根据权利要求3所述的方法,其特征在于,
所述当前路由器发送hello报文时,填充用于实现所述PTMU和其他路由器MAC地址的类型长度值TLV。
8.一种最大传输单元协商的路由器,可应用于广播口中间系统到中间系统的域内路由信息交换协议ISIS邻居建立过程,其特征在于,所述路由器包括:接收单元,确定单元、记录单元和发送单元;
所述接收单元,用于接收其他路由器发送的hello报文;
所述确定单元,用于确定所述接收单元接收的hello报文携带协议最大传输单元PMTU,其中,所述PMTU用于表示协商有效最大传输单元MTU,所述PMTU值小于或等于发送该PMTU的路由设备的接口实际MTU值;进一步确定自身接口实际MTU值是否小于所述PMTU值;
所述记录单元,用于当所述确定单元进一步确定自身接口实际MTU大于或等于所述接收的PMTU时,记录所述接收的PMTU值为协商的有效MTU值;
所述发送单元,用于如果所述确定单元进一步确定自身接口实际MTU值小于所述接收的PMTU值时,发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文;否则,发送携带值与所述记录单元记录的协商的有效MTU值相等的PMTU的hello报文。
9.根据权利要求8所述的路由器,其特征在于,
所述确定单元,进一步用于确定所述接收的hello报文未携带PMTU时,确定自身接口实际MTU值是否小于所述接收的hello报文的报文长度;
所述记录单元,进一步用于当所述确定单元进一步确定自身接口实际MTU大于或等于所述接收的hello报文的报文长度时,记录接收的hello报文的报文长度为协商的有效MTU值;
所述发送单元,进一步用于当所述确定单元确定自身接口实际MTU小于所述hello报文的报文长度时,发送携带值与当前路由器接口实际MTU值相等的PMTU的hello报文;否则,发送携带值与所述记录单元记录的协商的有效MTU值相等的PMTU的hello报文。
10.根据权利要求8所述的路由器,其特征在于,
所述确定单元,进一步用于确定所述接收的hello报文还携带自身所在路由器的MAC地址,则与所述其它路由器建立邻居且状态置为运行状态up;
所述发送单元,进一步用于当所述确定单元进一步确定所述接收的hello报文还携带自身所在路由器的MAC地址时,发送携带值与所述接收的PMTU值相等的PMTU和所述其他路由器MAC地址的hello报文。
11.根据权利要求8或9所述的路由器,其特征在于,
所述确定单元,进一步用于所述发送单元发送携带值与协商的有效MTU值相等的PMTU的hello报文之后,确定所述接收的hello报文未携带PMTU但携带自身所在路由器的MAC地址,则与所述其它路由器建立邻居且状态置为up;
所述发送单元,进一步用于当所述确定单元确定所述接收的hello报文未携带PMTU但携带自身所在路由器的MAC地址时,发送报文长度与所述记录的有效MTU值相等并携带所述其他路由器MAC地址的hello报文。
12.根据权利要求6所述的路由器,其特征在于,
所述确定单元进一步用于确定所述记录单元是否记录协商的有效MTU,如果是,则确定记录的协商的有效MTU值是否小于所述接收的PMTU值;否则,确定自身接口实际MTU值是否小于所述接收的PMTU值;
所述记录单元,进一步用于当所述确定单元确定所述记录的协商的有效MTU值大于或等于所述接收的PMTU值时,将自身记录的协商的有效MTU值更新为所述接收的PMTU值;
所述发送单元,进一步用于若所述确定单元确定所述记录的协商的有效MTU值大于或等于所述接收的PMTU值时,发送携带值同接收的PMTU值相等的PMTU及所述其他路由器的MAC地址的hello报文;否则,发送携带值同记录的协商的有效MTU值相等的PMTU的hello报文。
13.根据权利要求9所述的路由器,其特征在于,所述路由器进一步包括:配置单元;
所述配置单元,进一步用于设置接口最小MTU值;
所述确定单元,进一步用于确定所述接收单元接收的所述其他路由器发送的hello报文携带PMTU被置为无效或确定接收的hello报文未携带PMTU且报文长度小于所述配置单元设置的最小MTU值时,与所述其他路由器建立邻居且状态置为初始状态Init;
所述发送单元,进一步用于当所述确定单元确定所述接收的PMTU被置为无效时,或接收的hello报文未携带PMTU且报文长度小于所述配置单元设置的最小MTU值时,发送携带被置为无效的PMTU的hello报文。
14.根据权利要求10所述的路由器,其特征在于,
所述发送单元,进一步用于发送hello报文时,填充用于实现所述PTMU和其他路由器MAC地址的TLV。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110284198.7A CN102291318B (zh) | 2011-09-22 | 2011-09-22 | 一种最大传输单元协商的方法和路由器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110284198.7A CN102291318B (zh) | 2011-09-22 | 2011-09-22 | 一种最大传输单元协商的方法和路由器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102291318A CN102291318A (zh) | 2011-12-21 |
CN102291318B true CN102291318B (zh) | 2014-02-26 |
Family
ID=45337436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110284198.7A Active CN102291318B (zh) | 2011-09-22 | 2011-09-22 | 一种最大传输单元协商的方法和路由器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102291318B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2865142B1 (en) * | 2012-06-21 | 2019-11-27 | Telefonaktiebolaget LM Ericsson (publ) | Adaptive mtu size optimization using igp |
CN103023777B (zh) * | 2012-11-27 | 2015-11-25 | 杭州华三通信技术有限公司 | 一种获取全域最小最大传输单元值的方法和设备 |
CN103780487B (zh) * | 2014-01-29 | 2017-07-14 | 新华三技术有限公司 | 建立中间系统到中间系统邻居的方法及装置 |
CN106941452A (zh) * | 2016-01-05 | 2017-07-11 | 中兴通讯股份有限公司 | 邻居关系建立方法及装置 |
CN106789715B (zh) * | 2016-04-22 | 2021-05-14 | 新华三技术有限公司 | 一种lsp报文长度更新方法、邻居协商方法及装置 |
CN107342885A (zh) * | 2016-05-03 | 2017-11-10 | 中兴通讯股份有限公司 | 终端最大传输单元的调整方法、装置和终端设备 |
CN109274591A (zh) * | 2018-11-16 | 2019-01-25 | 新华三技术有限公司 | 一种组播报文转发方法及装置 |
CN111277988B (zh) * | 2020-03-17 | 2023-06-23 | 北京百瑞互联技术有限公司 | 一种提高微信小程序蓝牙传输速度的方法 |
CN111654450B (zh) * | 2020-05-28 | 2023-08-08 | 北京小米移动软件有限公司 | 数据传输方法及装置、存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252476A (zh) * | 2008-03-18 | 2008-08-27 | 华为技术有限公司 | 一种故障检测的方法及装置 |
CN101459536A (zh) * | 2008-12-29 | 2009-06-17 | 杭州华三通信技术有限公司 | 端口配置方法和交换设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101426004A (zh) * | 2007-10-29 | 2009-05-06 | 华为技术有限公司 | 三层会话的接入方法、系统及设备 |
-
2011
- 2011-09-22 CN CN201110284198.7A patent/CN102291318B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252476A (zh) * | 2008-03-18 | 2008-08-27 | 华为技术有限公司 | 一种故障检测的方法及装置 |
CN101459536A (zh) * | 2008-12-29 | 2009-06-17 | 杭州华三通信技术有限公司 | 端口配置方法和交换设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102291318A (zh) | 2011-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102291318B (zh) | 一种最大传输单元协商的方法和路由器 | |
US11032105B2 (en) | Method for implementing GRE tunnel, home gateway and aggregation gateway | |
CN110099370B (zh) | 服务层南向接口和服务质量 | |
CN108023758B (zh) | 一种混合接入网络中处理报文的方法及网络设备 | |
EP3182659B1 (en) | Method and device for processing service traffic | |
US11824685B2 (en) | Method for implementing GRE tunnel, access point and gateway | |
CN102056227B (zh) | 主演进节点b、中继节点及其通讯方法 | |
CN104717259B (zh) | 分布式中转服务器网络辅助的多路径数据传输系统与方法 | |
CN102158409B (zh) | 一种ip报文转发控制方法及其设备 | |
JP7050094B2 (ja) | パケット送信方法、プロキシサーバ、およびコンピュータ読取り可能記憶媒体 | |
EP2991294A1 (en) | Data transmission method, apparatus, and computer storage medium | |
CN102204209B (zh) | 跨媒介网络中的QoS协商方法和系统及网络设备 | |
JP5485543B2 (ja) | プライマリネットワーク及びセカンダリネットワークを含むネットワークにおける通信方法 | |
CN105262836A (zh) | 服务器推送信息的方法及客户端接收推送信息的方法 | |
WO2016172958A1 (zh) | 一种流量动态控制方法、设备及网关、融合接入汇聚点 | |
CN104993979A (zh) | 网络连接监测方法、终端设备及通信系统 | |
CN108617009A (zh) | 一种数据传输方法、装置、系统及分组数据网网关 | |
CN106550474B (zh) | 异质网络整合方法及装置 | |
JP6609645B2 (ja) | ワイヤレスネットワーク機能設定方法、ワイヤレス・ネットワーク・ノード、およびコア・ネットワーク・デバイス | |
CN113055293A (zh) | 软件定义广域网中的选路方法及装置、通信系统 | |
CN101505296A (zh) | 隧道业务数据流的控制方法和装置 | |
CN106063217B (zh) | 一种实现业务优化的方法及系统 | |
CN109005150A (zh) | 基于以太网mac地址的无链接通信方法及系统 | |
CN107113186B (zh) | 统一机器到机器系统中数据传输的方法和公共服务实体 | |
CN110601893B (zh) | 一种数据传输系统、方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address |