CN102724101A - 报文转发方法及系统与中继代理设备 - Google Patents
报文转发方法及系统与中继代理设备 Download PDFInfo
- Publication number
- CN102724101A CN102724101A CN2011100770328A CN201110077032A CN102724101A CN 102724101 A CN102724101 A CN 102724101A CN 2011100770328 A CN2011100770328 A CN 2011100770328A CN 201110077032 A CN201110077032 A CN 201110077032A CN 102724101 A CN102724101 A CN 102724101A
- Authority
- CN
- China
- Prior art keywords
- message
- relay
- dhcpv6
- relaying
- sign
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/741—Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/659—Internet protocol version 6 [IPv6] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2212/00—Encapsulation of packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种报文转发方法及系统与中继代理设备。其中转发方法包括:通过三层接口接收来自DHCPv6客户端的第一DHCPv6报文;生成中继前传报文,所述中继前传报文中封装了第一DHCPv6报文,并添加三层接口的标识;将所述中继前传报文发送给DHCPv6服务器。本发明技术方案可以使中继代理设备正确转发报文,并可节约全球单播地址或站点本地地址资源,提高中继代理设备的三层转发性能。
Description
技术领域
本发明实施例涉及网络通信技术,尤其涉及一种报文转发方法及系统与中继代理设备。
背景技术
第6版本互联网协议(Internet Protocol Version 6;简称为:IPv6)动态主机配置协议(Dynamic Host Configuration Protocol for IPv6;简称为:DHCPv6)网络系统由DHCPv6客户端、DHCPv6服务器和DHCPv6中继代理组成,其中DHCPv6中继代理又可以分为DHCPv6三层中继代理、DHCPv6二层中继代理两大类。在网络中,DHCPv6三层中继代理位于DHCPv6客户端和DHCPv6服务器之间,对DHCPv6客户端和DHCPv6服务器之间的报文进行中继转发处理。
根据评论请求文档(Request For Comments;简称为:RFC)3315,DHCPv6三层中继代理对上行DHCPv6报文进行三层中继处理时,会重新构造一个中继前传(Relay-forward)报文,将原上行DHCPv6报文封装到Relay-forward报文中转发给DHCPv6服务器。DHCPv6服务器接收到DHCPv6三层中继代理转发来的Relay-forward报文后,会构造一个响应的中继响应(Relay-reply)报文,并将发送给DHCPv6客户端的报文层层封装到Relay-reply报文中发送给DHCPv6三层中继代理。DHCPv6三层中继代理对Relay-reply报文进行三层中继处理时,会从Relay-reply报文中取出新的下行DHCPv6报文,并根据Relay-reply报文中的对端地址(peer-address)字段、链路地址(link-address)字段、接口标识选项(Interface-ID Option)字段将DHCPv6报文转发给下级设备。其中,peer-address是DHCPv6三层中继代理连接到的下级设备的IPv6地址,link-address是DHCPv6三层中继代理连接到下级设备的三层接口的IPv6地址,Interface-ID Option是DHCPv6三层中继代理连接到下级设备的用户端口的标识。根据协议规定,link-address只能填写三层接口的全球单播地址或者站点本地地址;如果该三层接口没有配置全球单播地址或者站点本地地址,则link-address只能填写未指定地址(即::);而Interface-IDOption用于必须承载用户端口的标识信息。
当下级设备使用链路本地地址,并且DHCPv6三层中继代理连接到下级设备的三层接口也使用链路本地地址时,Relay-reply报文中的peer-address为链路本地地址且link-address为未指定地址,此时DHCPv6三层中继代理需要根据Interface-ID Option标识的用户端口将下行DHCPv6报文发送给下级设备。其中,用户端口是三层中继代理设备上的物理端口,而物理端口的一种使用方式是被配置为三层接口,通过配置的IPv6地址进行三层报文的收发。但是,通常DHCPv6三层中继代理的用户端口与三层接口并不是一一对应的。例如:在三网合一(Triple-play)的场景下,DHCPv6三层中继代理的一个用户端口上需要同时配置多条业务流,分别用于承载同一用户的不同业务,而不同用户端口上的同一种业务由一个虚拟局域网(Virtual Local Area Network;简称为:VLAN)承载,每一个VLAN配置有一个三层接口,即用户端口与VLAN或者三层接口之间是多对多的关系。此时,DHCPv6三层中继代理根据Interface-IDOption只能找到唯一的用户端口,但不能找到唯一的三层接口,无法将下行DHCPv6报文通过正确的三层接口发送给下级设备。
其中,为将DHCPv6报文正确转发给下级设备,现有技术存在以下解决方案:一种是根据RFC 3315,为下级设备配置全球单播地址或者站点本地地址,则DHCPv6三层中继代理可以利用peer-address查询路由表来找到三层接口,将下行DHCPv6报文通过正确的三层接口发送给下级设备。另一种是根据RFC 3315,为DHCPv6三层中继代理连接到下级设备的三层接口配置全球单播地址或者站点本地地址,则DHCPv6三层中继代理可以利用link-address来找到三层接口,将下行DHCPv6报文通过正确的三层接口发送给下级设备。又一种是根据RFC 3315,为DHCPv6三层中继代理的每一个用户端口都配置一个三层接口,使用户端口与三层接口一一对应,则三层中继代理可以先利用Interface-ID Option找到唯一的用户端口,然后根据用户端口找到唯一对应的三层接口,将下行DHCPv6报文通过正确的三层接口发送给下级设备。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:无论是为下级设备还是为DHCPv6三层中继代理的三层接口配置全球单播地址或站点本地地址,均会加大全球单播地址或者站点本地地址规划配置的工作量,浪费全球单播地址或者站点本地地址资源。为每个用户端口配置一个三层接口的方案会使DHCPv6三层中继代理上三层接口的数量变得很多,大大增加DHCPv6三层中继代理三层转发的工作量、降低三层转发性能,同时还会浪费IPv6地址资源。
发明内容
本发明实施例提供一种报文转发方法及系统与中继代理设备,用以解决现有技术的各种缺陷,通过正确的三层接口转发客户端与服务器之间的报文,提高转发报文的成功率。
本发明实施例提供一种报文转发方法,包括:
通过三层接口接收来自第6版本互联网协议动态主机配置协议DHCPv6客户端的第一DHCPv6报文;
生成中继前转报文,所述中继前转报文中封装了所述第一DHCPv6报文,并添加所述三层接口的标识;
将所述中继前传报文发送给DHCPv6服务器。
本发明提供一种中继代理设备,包括:
第一接收模块,用于接收来自第6版本互联网协议动态主机配置协议DHCPv6客户端的第一DHCPv6报文;
报文生成模块,用于生成中继前转报文,所述中继前转报文中封装了所述第一DHCPv6报文,并添加接收所述第一DHCPv6报文的三层接口的标识;
第一转发模块,用于将所述中继前转报文发送给DHCPv6服务器。
本发明实施例提供一种报文转发系统,包括:中继代理设备和第6版本互联网协议动态主机配置协议DHCPv6服务器;
所述中继代理设备,用于在接收到来自第6版本互联网协议动态主机配置协议DHCPv6客户端的第一DHCPv6报文后,构造中继前传报文,在所述中继前传报文中封装所述第一DHCPv6报文,并添加接收所述第一DHCPv6报文的三层接口的标识,并将所述中继前传报文发送给所述DHCPv6服务器;
所述DHCPv6服务器,用于接收所述中继代理设备发送的所述中继前传报文,并根据所述中继前传报文,生成包括所述三层接口的标识的中继响应报文。
本发明实施例提供的报文转发方法及系统与中继代理设备,通过在中继前传报文中携带中继代理设备接收DHCPv6客户端发送给DHCPv6服务器的报文时的三层接口的标识,使服务器根据中继前传报文生成包含该三层接口的标识的中继响应报文,进而使中继代理设备可以根据三层接口的标识,通过正确的三层接口将DHCPv6服务器的报文发送给DHCPv6客户端,提高了DHCPv6客户端与DHCPv6服务器之间报文转发的成功率;同时,与现有技术相比,本发明实施例还可以节约全球单播地址或站点本地地址资源,降低中继代理设备转发的工作量,提高三层转发的性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的报文转发方法的流程图;
图2为本发明实施例二提供的报文生成方法的流程图;
图3为本发明实施例三提供的报文转发方法的流程图;
图4A为本发明实施例四提供的报文处理方法的流程图;
图4B为本发明实施例四提供的现有链路本地地址的结构示意图;
图5为本发明实施例五提供的报文处理方法的流程图;
图6A为本发明实施例六提供的报文处理方法的流程图;
图6B为本发明实施例六提供的Interface-ID Option字段的现有结构的示意图;
图6C为本发明实施例六提供的Interface-ID Option字段的结构示意图;
图7A为本发明实施例七提供的报文处理方法的流程图;
图7B为本发明实施例七提供的一种三层标识字段的结构示意图;
图8为本发明实施例八提供的中继代理设备的一种结构示意图;
图9为本发明实施例八提供的中继代理设备的又一种结构示意图;
图10为本发明实施例八提供的中继代理设备的另一种结构示意图;
图11为本发明实施例九提供的中继代理设备的再一种结构示意图;
图12为本发明实施例九提供的报文转发系统的一种结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例一提供的报文转发方法的流程图。如图1所示,本实施例的方法包括:
步骤11、通过三层接口接收来自DHCPv6客户端的第一DHCPv6报文;
步骤12、生成Relay-forward报文,该中继前转报文中封装了第一DHCPv6报文,并添加三层接口的标识;
具体的,DHCPv6三层中继代理通过其三层接口接收DHCPv6客户端(以下简称客户端)发送给DHCPv6服务器(以下简称服务器)的DHCPv6报文,即第一DHCPv6报文。DHCPv6三层中继代理对第一DHCPv6报文进行三层中继处理时,会重新构造一个Relay-forward报文。在该Relay-forward报文中包含一个中继消息选项(Relay-message Option(Option 9))字段,DHCPv6三层中继代理将第一DHCPv6报文封装到Relay-message Option字段中;然后,填写Relay-forward报文中的peer-address字段、link-address字段、Interface-ID Option(即Option 18)字段中的信息。
在本实施例中,peer-address字段填充的是DHCPv6三层中继代理连接到的下级设备的IPv6地址;link-address字段填充的是DHCPv6三层中继代理连接到下级设备的三层接口(即DHCPv6三层中继代理接收第一DHCPv6报文的三层接口)的IPv6地址,如果三层接口的IPv6地址为链路本地地址,则该字段填写未指定地址;Interface-ID Option字段是DHCPv6三层中继代理连接到下级设备的用户端口的标识。在本实施例中,下级设备指的是与本DHCPv6三层中继代理通过三层接口直接相连的下级DHCPv6设备,可能是DHCPv6客户端,也可能是下一级DHCPv6三层中继代理。如果下级设备是客户端,则本DHCPv6三层中继代理通过其三层接口直接接收由客户端发送的第一DHCPv6报文;如果下级设备是下一级DHCPv6三层中继代理,则本DHCPv6三层中继代理通过其三层接口接收由下一级DHCPv6三层中继代理转发的客户端的第一DHCPv6报文。
在本实施例中,DHCPv6三层中继代理在将第一DHCPv6报文封装在Relay-forward报文中的同时,将接收第一DHCPv6报文的三层接口的标识添加到Relay-forward报文中,用于唯一标识接收第一DHCPv6报文或者向客户端转发DHCPv6报文时的三层接口。其中,三层接口的标识可以是三层接口对应的VLAN ID或者三层接口的网际协议(Internet Protocol;简称为:IP)地址(该IP地址通常为链路本地IP地址),也可以是其他可唯一标识三层接口的信息。
步骤13、将Relay-forward报文发送给DHCPv6服务器。
具体的,DHCPv6三层中继代理将Relay-forward报文发送给服务器;服务器接收Relay-forward报文并解析获取其中的第一DHCPv6报文,并根据第一DHCPv6报文进行后续处理。
本实施例的报文转发方法,DHCPv6三层中继代理将接收第一DHCPv6报文的三层接口的标识添加在Relay-forward报文中发送给服务器,服务器可以根据Relay-forward报文生成包含三层接口的标识的Relay-reply报文,并发送给DHCPv6三层中继代理。在下级设备使用链路本地地址,并且连接下级设备的三层接口也是用链路本地地址,且用户端口与三层接口为多对多的对应关系的场景下,DHCPv6三层中继代理通过本实施例的方法可以根据Relay-reply报文中三层接口的标识找到三层接口,将服务器发送给客户端的报文通过正确的三层接口转发客户端。与现有技术相比,采用本实施例的方法可以节约全球单播地址或者站点本地地址资源,同时用户端口与三层接口无需一对一进行映射,减少了三层接口的数量,保证了DHCPv6三层中继代理三层转发的性能。
图2为本发明实施例二提供的报文生成方法的流程图。如图2所示,本实施例的方法包括:
步骤21、接收中继代理设备发送的Relay-forward报文,所述Relay-forward报文包括客户端发送给服务器的第一DHCPv6报文和中继代理设备接收第一DHCPv6报文的三层接口的标识;
其中,中继代理设备主要是指DHCPv6三层中继代理。具体的,服务器接收DHCPv6三层中继代理发送的Relay-forward报文,该Relay-forward报文包括客户端发送给服务器的第一DHCPv6报文,同时包括DHCPv6三层中继代理接收第一DHCPv6报文的三层接口的标识。其中,三层接口也是DHCPv6三层中继代理将服务器发送给客户端的第二DHCPv6报文转发给客户端时的转发接口。
步骤22、根据Relay-forward报文,生成包括该三层接口的标识的Relay-reply报文。
具体的,服务器接收到DHCPv6三层中继代理发送来的Relay-forward报文后,会构造一个响应的Relay-reply报文。在该Relay-reply报文中同样包含一个Relay-message Option(Option 9)字段,服务器按照接收到的Relay-forward报文的封装层次将发送给客户端的第二DHCPv6报文层层封装到Relay-message Option字段中。如果服务器接收到的Relay-forward报文是经过多个DHCPv6三层中继代理的中继处理,包含多层Relay-message Option字段的封装,此时Relay-reply报文也必须相应的包含多层Relay-message Option字段的封装。然后,服务器将Relay-forward报文中各层peer-address字段、link-address字段、Interface-ID Option字段分别拷贝到响应的Relay-reply报文中。
在本实施例中,服务器需要同时将Relay-forward报文中的三层接口的标识拷贝到Relay-reply报文中。
之后,服务器将Relay-reply报文发送给DHCPv6三层中继代理,由DHCPv6三层中继代理通过其三层接口将Relay-reply报文中封装的第二DHCPv6报文转发给客户端。
本实施例的报文生成方法,服务器根据接收到的Relay-forward报文,生成包含三层接口的标识的Relay-reply报文,在DHCPv6三层中继代理接收到Relay-reply报文时,如果DHCPv6三层中继代理无法通过Relay-reply报文中的peer-address字段、link-address字段或Interface-ID Option字段中的信息将第二DHCPv6报文转发给客户端,则可以根据三层接口的标识找到正确的三层接口,从而将第二DHCPv6报文通过正确的三层接口转发给客户端(该转发过程可能是由下级设备转发实现)。与现有技术相比,采用本实施例的方法生成包含三层接口的标识的Relay-reply报文,可以不必再为下级设备或三层接口配置全球单播地址或站点本地地址,节约了全球单播地址或站点本地地址资源,同时也不需要将用户端口与三层接口进行一一映射,减少了DHCPv6三层中继代理的三层接口的数量,降低了其工作量,提高了其转发性能,三层接口的减少还有利于节约IP地址资源。
图3为本发明实施例三提供的报文转发方法的流程图。本实施例基于实施例一实现,如图3所示,本实施例的方法在步骤13之后还包括:
步骤31、接收来自服务器的Relay-reply报文,所述Relay-reply报文封装有服务器发送给客户端的第二DHCPv6报文和三层接口的标识;
其中,第二DHCPv6报文是服务器发送给客户端的下行DHCPv6报文,服务器根据Relay-forward报文生成Relay-reply报文的过程可参见图2所示实施例的描述。Relay-reply报文中三层接口的标识即为相应Relay-forward报文中的三层接口的标识,用于标识DHCPv6三层中继代理转发第二DHCPv6报文的三层接口。
步骤32、根据Relay-reply报文中的三层接口的标识,将第二DHCPv6报文转发给客户端。
具体的,DHCPv6三层中继代理对Relay-reply报文进行三层中继处理时,从Relay-reply报文的Relay-message Option字段中取出第二DHCPv6报文,并通过其三层接口转发给下级设备。
通常,DHCPv6三层中继代理会根据Relay-reply报文中的peer-address字段、link-address字段或Interface-ID Option字段来转发该第二DHCPv6报文。例如:如果下级设备使用的是全球单播地址或站点本地地址,则DHCPv6三层中继代理可以直接根据peer-address字段查找路由表来找到三层接口,并通过三层接口转发第二DHCPv6报文给下级设备,并最终转发给客户端。又例如:如果下级设备使用的是链路本地地址,但是三层接口使用的是全球单播地址或站点本地地址,则DHCPv6三层中继代理可以根据link-address字段直接找到三层接口,并通过三层接口转发第二DHCPv6报文给下级设备,并最终转发给客户端。再例如:如果下级设备和三层接口使用的均为链路本地地址,则DHCPv6三层中继代理还可以通过Interface-ID Option字段找到唯一的用户端口,并根据用户端口与三层接口一对一的映射关系找到唯一的三层接口,通过三层接口转发第二DHCPv6报文给下级设备,并最终转发给客户端。但是,如果此时的用户端口与三层接口之间不是一对一的对应关系时,则DHCPv6三层中继代理将无法通过Interface-ID Option字段找到正确的三层接口。
在下级设备和三层接口均使用链路本地地址,且用户端口与三层接口的对应关系为多对多的场景下,本实施例的DHCPv6三层中继代理可以通过Relay-reply报文中的三层接口的标识找到正确的三层接口,并将第二DHCPv6报文转发给下级设备,最终转发给客户端。其中,三层接口的标识可以唯一标识DHCPv6三层中继代理上的一个三层接口,例如可以是三层接口所在VLAN的VLAN ID还可以是三层接口的IP地址等。其中,无论DHCPv6三层中继代理的用户端口与三层接口之间是一对一的映射关系还是多对多的映射关系,封装到Relay-forward报文和Relay-reply报文中的用户端口的标识与三层接口的标识之间存在对应关系,如果用户端口与三层接口之间是多对多的对应关系,则Relay-forward报文和Relay-reply报文中的三层接口的标识是用户端口对应的多个三层接口中的一个三层接口的标识。
另外,在上述其他场景下,本实施例的DHCPv6三层中继代理也可以直接根据Relay-reply报文中的三层接口的标识找到正确的三层接口,并将第二DHCPv6报文转发给下级设备,最终转发给客户端。
在上述转发过程中,如果下级设备就是客户端,则第二DHCPv6报文将由DHCPv6三层中继代理通过其三层接口直接发送给客户端。
本实施例的报文转发方法,DHCPv6三层中继代理在任何场景下均可以根据Relay-reply报文中的三层接口的标识找到正确的三层接口,并通过三层接口将第二DHCPv6报文转发给下级设备,以最终转发给客户端,使得下级设备和三层接口均不用配置全球单播地址或站点本地地址,也不需要三层接口与用户端口一一对应,既节约了全球单播地址或站点本地地址资源,也减少了DHCPv6三层中继代理的三层接口的数量,提高了DHCPv6三层中继代理的转发性能。
图4A为本发明实施例四提供的报文处理方法的流程图。本实施例可基于上述实施例一至三实现,如图4A所示,本实施例的方法包括:
步骤41、DHCPv6三层中继代理将上行DHCPv6报文封装到Relay-forward报文的Relay-message Option字段,并填写peer-address字段、link-address字段、Interface-ID Option字段,同时将三层接口的标识添加到Relay-forward报文的peer-address字段中,然后将Relay-forward报文发送给服务器。
其中,上行DHCPv6报文是指客户端发送给服务器的DHCPv6报文,即为实施例一中的第一DHCPv6报文。正如上述,peer-address字段用于承载下级设备的IPv6地址。如果下级设备使用链路本地地址,则peer-address字段填充为链路本地地址。根据RFC 2373,链路本地地址的前缀是64位的FE80::/10。自动生成链路本地地址的方法是先根据下级设备连接DHCPv6三层中继代理的接口的链路层地址生成一个EUI-64标识符作为该接口的标识,然后将64位的前缀FE80::与该接口的64位的标识符组合在一起,形成128位的链路本地地址,其格式如图4B所示。
由图4B可知,自动生成的链路本地地址的第10bit(比特)至第63bit(即bit10-bit63)固定为0,并且也不是链路本地地址的前缀,属于空闲bit,则在本实施例中,DHCPv6三层中继代理具体在peer-address字段的第10bit至第63bit之间插入三层接口的标识。例如:在基于VLAN配置三层接口的情况下,可以在bit10~bit63中插入VLAN接口(即三层接口)的VLAN ID或IP地址等。
步骤42、服务器接收Relay-forward报文,将下行DHCPv6报文封装到Relay-reply报文的Relay-message Option字段,并将Relay-reply报文中的peer-address字段、link-address字段和Interface-ID Option字段拷贝到响应的Relay-reply报文中,然后将Relay-reply报文发送给DHCPv6三层中继代理。
其中,下行DHCPv6报文是服务器根据上行DHCPv6报文对客户端做出的响应报文,即为实施例二中的第二DHCPv6报文。在Relay-reply报文的peer-address字段的第10bit至第63bit之间插入有三层接口的标识。
步骤43、DHCPv6三层中继代理接收Relay-reply报文,从Relay-reply报文中提取下行DHCPv6报文,并从Relay-reply报文的peer-address字段中提取DHCPv6三层中继代理连接到下级设备的三层接口的标识,根据三层接口的标识定位三层接口,并通过三层接口将下行DHCPv6报文发送给下级设备,并最终转发给客户端。
本实施例的报文处理方法,通过在peer-address字段的空闲bit中插入连接到下级设备的三层接口的标识,使得DHCPv6三层中继代理可以正确定位转发下行DHCPv6报文的三层接口,从而正确转发下行DHCPv6报文。与现有技术相比,具有节约全球单播地址或者站点本地地址以及三层接口数量的优势,可以提高DHCPv6三层中继代理三层转发的效率。
另外,由于Interface-ID Option字段是长度可变字段,因此,三层接口的标识还可以由Interface-ID Option字段来携带。其中,本发明以下实施例提供几种由Interface-ID Option字段携带三层接口的标识的实施方式。
图5为本发明实施例五提供的报文处理方法的流程图。本实施例可基于实施例一至三实现,如图5所示,本实施例的方法包括:
步骤51、DHCPv6三层中继代理将上行DHCPv6报文封装到内层Relay-forward报文的Relay-message Option字段,并填写该内层Relay-forward报文的peer-address字段、link-address字段、Interface-ID Option字段,然后将内层Relay-forward报文作为新的报文封装到外层Relay-forward报文的Relay-message Option字段,并填写该外层Relay-forward报文peer-address字段、link-address字段、Interface-ID Option字段,然后将Relay-forward报文发送给服务器。其中,外层Relay-forward报文和内层Relay-forward报文的peer-address字段和link-address字段填充内容相同,而两个Interface-ID Option字段其中之一用于添加协议规定的用户端口的标识,另一个用于添加三层接口的标识。
在本实施例中,DHCPv6三层中继代理通过对上行DHCPv6报文进行双重封装,提供两个Interface-ID Option字段,并通过其中一个Interface-IDOption字段来携带三层接口的标识。在本实施例以外层Relay-forward报文的Interface-ID Option字段携带三层接口的标识为例。
如果在内层Relay-forward报文的Interface-ID Option字段中携带三层接口的标识,则将三层接口的标识添加到内层Relay-forward报文的Interface-IDOption字段中之后,在将内层Relay-forward报文封装在外层Relay-forward报文的Relay-message Option字段中。
步骤52、服务器接收Relay-forward报文,将下行DHCPv6报文封装到内层Relay-reply报文的Relay-message Option字段,并将内层Relay-forward报文中的peer-address字段、link-address字段和Interface-ID Option字段拷贝到响应的内层Relay-reply报文中,然后将内层Relay-reply报文作为新的报文再封装到外层Relay-reply报文的Relay-message Option字段,并将外层Relay-forward报文中的peer-address字段、link-address字段、Interface-IDOption字段拷贝到响应的外层Relay-reply报文中,发送给DHCPv6三层中继代理。
其中,服务器根据接收到的Relay-forward报文的形式(包括内层Relay-forward报文和外层Relay-forward报文),分别构造内层Relay-reply报文和外层Relay-reply报文,并通过分别拷贝内层Relay-forward报文和外层Relay-forward报文的peer-address字段、link-address字段、Interface-ID Option字段,将三层接口的标识携带在生成的Relay-reply报文中。
步骤53、DHCPv6三层中继代理从外层Relay-reply报文的Relay-messageOption字段中提取出内层Relay-reply报文,然后,在从内层Relay-reply报文的Relay-message Option字段中提取出下行DHCPv6报文,同时从外层Relay-reply报文的Interface-ID Option字段中提取DHCPv6三层中继代理连接到下级设备的三层接口的标识,并通过三层接口的标识定位的三层接口将下行DHCPv6报文发送给下级设备,最终转发给客户端。
其中,当三层接口的标识封装在内层Relay-reply报文时,DHCPv6三层中继代理从内层Relay-reply报文的Relay-message Option字段中提取下行DHCPv6报文,同时从内层Relay-reply报文的Interface-ID Option字段中提取DHCPv6三层中继代理连接到下级设备的三层接口的标识。
本实施例的报文处理方法,DHCPv6三层中继代理通过对上行DHCPv6报文进行双重封装,提供两个Interface-ID Option字段,并通过其中一个Interface-ID Option字段来携带三层接口的标识,从而解决了现有技术存在的各种问题。
图6A为本发明实施例六提供的报文处理方法的流程图。本实施例可基于实施例一至三实现,如图6A所示,本实施例的方法包括:
步骤61、DHCPv6三层中继代理对Relay-forward报文的Interface-IDOption字段进行扩展,将上行DHCPv6报文封装到Relay-forward报文的Relay-message Option字段,并填写该Relay-forward报文的peer-address字段、link-address字段、扩展后的Interface-ID Option字段(在填写Interface-IDOption字段时同时将三层接口的标识添加到扩展后的Interface-ID Option字段中);然后将Relay-forward报文发送给服务器。其中,扩展后的Interface-IDOption字段中同时填写协议规定的用户端口的标识和DHCPv6三层中继代理连接到下级设备的三层接口的标识。
其中,根据RFC 3315,Interface-ID Option字段用于承载DHCPv6三层中继代理连接到下级设备的用户端口的标识,其格式如下图6B所示,包括该字段的标识号(OPTION_INTERFACE_ID)、长度选项(option-len)以及接口标识(interface-id)字段。其中interface-id字段用于承载用户端口的标识。
在本实施例中,对Interface-ID Option字段进行如下扩展:在interface-id字段的前面或者后面增加一个三层接口标识(l3-interface-id)字段。其中,可以通过规定l3-interface-id字段为固定长度,例如规定l3-interface-id字段固定占用4字节,来区分interface-id字段与l3-interface-id字段;也可以规定interface-id字段与l3-interface-id字段之间用某个特定的分隔字符隔开,例如规定interface-id字段和l3-interface-id字段之间用0x00隔开。例如:在基于VLAN配置三层接口的情况下,可以在interface-id字段后面增加一个固定占用4字节的l3-interface-id字段,承载VLAN接口(即连接下级设备的三层接口)的VLAN ID或IP地址,其具体结构如图6C所示。
步骤62、服务器接收Relay-forward报文,并对Relay-reply报文的Interface-ID Option字段进行扩展,将下行DHCPv6报文封装到Relay-reply报文的Relay-message Option字段,并将Relay-forward报文中的peer-address字段、link-address字段和Interface-ID Option字段拷贝到响应的Relay-reply报文中,发送给DHCPv6三层中继代理。
其中,Relay-reply报文的Interface-ID Option字段与Relay-forward报文中的Interface-ID Option字段具有相同扩展结构,可参见图6C所示,l3-interface-id字段中填充有DHCPv6三层中继代理连接到下级设备的三层接口的标识。
步骤63、DHCPv6三层中继代理从Relay-reply报文的Relay-messageOption字段中提取出下行DHCPv6报文,同时从Relay-reply报文的Interface-ID Option字段中提取DHCPv6三层中继代理连接到下级设备的三层接口的标识,并将下行DHCPv6报文通过三层接口的标识定位的三层接口发送给下级设备,最终转发给客户端。
本实施例的报文处理方法,通过对Interface-ID Option字段进行扩展使得Interface-ID Option字段同时携带协议规定的端口的标识和连接到下级设备的三层接口的标识,解决了现有技术存在的各种问题。
另外,在上述实施例中,服务器也可以构造包含二层标识字段的Relay-forward报文和Relay-reply报文,由二层标识字段承载协议规定的用户端口(即与三层接口对应的用户端口)的标识,而由原来承载用户端口的标识的Interface-ID Option字段承载三层接口的标识。具体的,服务器通过在Relay-forward报文和Relay-reply报文中新增二层标识字段,然后,将协议规定的用户端口的标识添加到新增的二层标识字段中,而将DHCPv6三层中继代理连接到下级设备的三层接口的标识添加到原来填充用户端口的标识的Interface-ID Option字段中。服务器在接收到Relay-forward报文后,相应构造包括二层标识字段的Relay-reply报文。其中,在Relay-reply报文的二层标识字段中添加有三层接口对应的用户端口的标识,而在Relay-reply报文中的Interface-ID Option字段中添加有三层接口的标识。该通过Interface-ID Option字段携带三层接口的标识的具体实施方式与下述实施例七相类似,具体实现过程可参见实施例七的描述,此处不再详细论述。通过该实施例方式也可以解决现有技术存在的各种问题。
图7A为本发明实施例七提供的报文处理方法的流程图。本实施例可基于实施例一至三实现,如图7A所示,本实施例的方法包括:
步骤71、DHCPv6三层中继代理在Relay-forward报文中新增三层标识字段,将上行DHCPv6报文封装到Relay-forward报文的Relay-message Option字段,并填写该Relay-forward报文的peer-address字段、link-address字段、Interface-ID Option字段,同时,将DHCPv6三层中继代理连接到下级设备的三层接口的标识填加到新增的三层标识字段中,然后将Relay-forward报文发送给服务器。
图7B所示为本实施例提供的一种三层标识字段的结构示意图,具体包括:三层标识字段标识(OPTION_L3_INTERFACE_ID)、长度选项(option-len)和三层接口标识(l3-interface-id)字段,其中,l3-interface-id字段用于携带连接到下级设备的三层接口的标识。
步骤72、服务器接收Relay-forward报文,在Relay-reply报文中新增三层标识字段,将下行DHCPv6报文封装到Relay-reply报文的Relay-messageOption字段,并将Relay-forward报文中的peer-address字段、link-address字段、Interface-ID Option字段和三层标识字段分别拷贝到响应的Relay-reply报文中,发送给DHCPv6三层中继代理。
具体的,服务器根据Relay-forward报文,构造包含三层标识字段的Relay-reply报文,并将Relay-forward报文中的三层标识字段中的三层接口的标识添加到Relay-reply报文的三层标识字段中,然后将Relay-reply报文发送给DHCPv6三层中继代理。其中,Relay-reply报文中三层标识字段的结构与Relay-forward报文的相类似,可参见图7B所示。
步骤73、DHCPv6三层中继代理从Relay-reply报文的Relay-messageOption字段中提取出下行DHCPv6报文,同时从Relay-reply报文的三层标识字段中提取DHCPv6三层中继代理连接到下级设备的三层接口的标识,并将下行DHCPv6报文通过三层接口的标识定位的三层接口发送给下级设备,最终转发给客户端。
本实施例的报文处理方法,通过在Relay-forward报文和Relay-reply报文中新增三层标识字段,由所新增的三层标识字段来携带三层接口的标识,解决了现有技术的各种问题。
上述各实施例通过各种方式来携带DHCPv6三层中继代理连接到下级设备的三层接口的标识(亦即接收上行DHCPv6报文和转发下行DHCPv6报文的三层接口的标识),由此使DHCPv6三层中继代理可以找到正确的三层接口并完成报文的转发,解决了现有技术存在的各种问题。
图8为本发明实施例八提供的中继代理设备的一种结构示意图。本实施例的中继代理设备主要是指DHCPv6三层中继代理,如图8所示,其包括:第一接收模块80、报文生成模块81和第一转发模块82。
第一接收模块80,用于接收来自DHCPv6客户端的第一DHCPv6报文,并提供给报文生成模块81。报文生成模块81,用于生成Relay-forward报文,该Relay-forward报文中封装了第一DHCPv6报文,并添加接收第一DHCPv6报文的三层接口的标识;该三层接口为本实施例的中继代理设备连接到下级设备的三层接口。第一转发模块82,与服务器和报文生成模块81连接,用于将Relay-forward报文发送给服务器。
本实施例中继代理设备的各功能模块可用于执行上述各方法实施例中DHCPv6三层中继代理向服务器转发客户端发送的DHCPv6报文的流程,其工作原理不再详细论述,可参见方法实施例的描述。
本实施例的中继代理设备通过在Relay-forward报文中携带三层接口的标识,使得服务器根据Relay-forward报文生成包含三层接口的标识的Relay-reply报文,进而使中继代理设备能够通过正确的三层接口的标识转发报文,解决了现有技术存在的各种问题,例如:可以节约全球单播地址或站点本地地址资源,减少三层接口的数量,保证中继代理设备的转发性能等。
进一步,如图9所示,本实施例的报文生成模块81包括生成单元810和以下任意一个添加单元:第一添加单元811、第二添加单元812和第三添加单元813。其中,生成单元810,用于将第一DHCPv6报文封装在Relay-forward报文的Relay-message Option字段中;第一添加单元811,用于将三层接口的标识添加到Relay-forward报文的peer-address字段中;第二添加单元812,用于将三层接口的标识添加到Relay-forward报文的Interface-ID Option字段中;第三添加单元813,用于将三层接口的标识添加到Relay-forward报文中新增的三层标识字段中。
其中,第一添加单元811具体用于在Relay-forward报文的peer-address字段的第10bit至第63bit之间插入三层接口的标识。
第二添加单元812具体用于对Relay-forward报文的Interface-ID Option字段进行扩展,将三层接口的标识添加到扩展后的Interface-ID Option字段中;或者具体用于在Relay-forward报文中新增二层标识字段,将三层接口对应的用户端口的标识添加到该二层标识字段,将三层接口的标识添加到Relay-forward报文的Interface-ID Option字段中。
第三添加单元813具体用于在Relay-forward报文的可选字段中新增三层标识字段,将三层接口的标识添加到新增的三层标识字段中。
在Relay-forward报文包括内层Relay-forward报文和外层Relay-forward报文(即当中继代理设备对客户端发送给服务器的第一DHCPv6报文进行双重封装)时,生成单元810具体用于将第一DHCPv6报文封装在内层Relay-forward报文的Relay-message Option字段中;第二添加单元812具体用于将三层接口的标识添加到该内层Relay-forward报文的Interface-ID Option字段中,然后将内层Relay-forward报文封装在外层Relay-forward报文中;或者具体用于将内层Relay-forward报文封装在外层Relay-forward报文中,并将三层接口的标识添加到外层Relay-forward报文的Interface-ID Option字段中。
本实施例上述各功能单元的可执行上述各方法实施例中DHCPv6三层中继代理向服务器转发客户端发送的报文的相应流程,其具体工作原理不再赘述,详见方法实施例的描述。
本实施例的中继代理设备,通过各种方式将其连接到下级设备的三层接口的标识添加到Relay-forward报文,以使服务器生成包括三层接口的标识的Relay-reply报文,从而使中继代理设备能够根据三层接口的标识找到正确的三层接口,正确转发报文,解决了现有技术存在的各种问题,节约了全球单播地址或站点本地地址,减少了三层接口的数量,提高了转发性能。
更进一步,如图10所示,本实施例的中继代理设备还包括:第二接收模块91和第二转发模块92。
第二接收模块91,与服务器连接,用于接收来自服务器的Relay-reply报文,所述Relay-reply报文是服务器根据接收到的Relay-forward报文生成的,该Relay-reply报文封装有服务器发送给客户端的第二DHCPv6报文和Relay-forward报文中携带的三层接口的标识;该三层接口是指本实施例中继代理设备转发第二DHCPv6报文的三层接口,亦即中继代理设备接收客户端发送给服务器的第一DHCPv6报文时的三层接口。第二转发模块92,与第二接收模块91连接,用于根据Relay-reply报文中的三层接口的标识,将第二DHCPv6报文转发给客户端。具体的,中继代理设备通过三层接口的标识定位出的三层接口将第二DHCPv6报文转发给下级设备,然后通过下级设备转发给客户端。
本实施例中继代理设备的功能模块可用于执行上述各方法实施例中DHCPv6三层中继代理向客户端转发服务器发送的DHCPv6报文的流程,其工作原理不再赘述,详见方法实施例的描述。
本实施例的中继代理设备,通过各种方式将其连接到下级设备的三层接口的标识添加到Relay-forward报文,以使服务器生成包括三层接口的标识的Relay-reply报文,然后根据Relay-reply报文中的三层接口的标识找到转发第二DHCPv6报文的正确三层接口,从而将第二DHCPv6报文成功转发给客户端,同时解决了现有技术存在的各种问题,节约了全球单播地址或站点本地地址,减少了三层接口的数量,提高了转发性能。
再进一步,如图11所示,本实施例的第二转发模块92包括:解析子模块921和转发子模块922。解析子模块921,与第二接收模块91连接,用于解析Relay-reply报文,获取三层接口的标识和第二DHCPv6报文;转发子模块922,与解析子模块921连接,用于通过三层接口的标识定位的三层接口,将第二报DHCPv6文转发给客户端。
更进一步,解析子模块921包括以下任意一种解析单元:第一解析单元、第二解析单元或第三解析单元。第一解析单元,用于从Relay-reply报文的peer-address字段中,获取三层接口的标识;第二解析单元,用于从Relay-reply报文的Interface-ID Option字段中,获取三层接口的标识;第三解析单元,用于从Relay-reply报文中新增的三层标识字段中,获取三层接口的标识。
其中,第一解析单元具体用于从Relay-reply报文的peer-address字段的第10bit至第63bit之间获取三层接口的标识。
第二解析单元具体用于从Relay-reply报文的扩展后的Interface-ID Option字段中获取三层接口的标识;或者,具体用于从包括新增二层标识字段的Relay-reply报文的Interface-ID Option字段中获取三层接口的标识,新增的二层标识字段中添加有三层接口对应的用户端口的标识;或者,在Relay-reply报文包括内层Relay-reply报文和外层Relay-reply报文时,第二解析单元具体用于从外层Relay-reply报文中的Interface-ID Option字段中,获取三层接口的标识;或者具体用于从外层Relay-reply报文中,获取内层Relay-reply报文,并从内层Relay-reply报文的Interface-ID Option字段中,获取三层接口的标识。
本实施例的中继代理设备通过各种解析方式从Relay-reply报文中获取三层接口的标识,进而根据三层接口的标识找到正确的三层接口,正确转发报文,解决了现有技术存在的各种问题,节约了全球单播地址或站点本地地址,减少了三层接口的数量,提高了转发性能。
图12为本发明实施例九提供的报文转发系统的一种结构示意图。如图12所示,本实施例的系统包括:中继代理设备141和服务器142。其中,服务器142是指DHCPv6服务器。
中继代理设备141,用于在接收到来自DHCPv6客户端的第一DHCPv6报文后,构造Relay-forward报文,在Relay-forward报文中封装第一DHCPv6报文,并添加接收第一DHCPv6报文的三层接口的标识,并将Relay-forward报文发送给服务器142。
服务器142,用于接收中继代理设备141发送的Relay-forward报文,并根据Relay-forward报文,生成包括三层接口的标识的Relay-reply报文。
其中,服务器142具体用于根据Relay-forward报文,构造包含三层标识字段的Relay-reply报文,并将三层接口的标识添加到Relay-reply报文的三层标识字段中。
服务器142还具体用于根据Relay-forward报文,构造包含二层标识字段的Relay-reply报文,并将三层接口对应的用户端口的标识添加到Relay-reply报文的二层标识字段中,将三层接口的标识添加到Relay-reply报文的Interface-ID Option字段中。
其中,服务器142构造Relay-reply报文的实施方式主要视Relay-forward报文的结构而定,并不限于上面所述的方式。
进一步,服务器142还用于将Relay-reply报文发送给中继代理设备141。中继代理设备141还用于接收服务器142发送的Relay-reply报文,并根据Relay-reply报文中的三层接口的标识,将Relay-reply报文中的第二DHCPv6报文转发给客户端。
其中,本实施例的中继代理设备141的具体工作原理和结构,可参见图8-图11所示的实施例,服务器142的工作原理可参见图3-图7所示方法实施例中的描述,在此均不再赘述。
本实施例的报文转发系统,通过在Relay-forward报文和Relay-reply报文中携带中继代理设备连接到下级设备的三层接口的标识,使得中继代理设备可以根据三层接口的标识找到正确的三层接口,进而成功将服务器发送给客户端的报文转发给客户端,解决了现有技术中存在的各种问题,节约了全球单播地址或站点本地地址,减少了中继代理设备的三层接口的数量,提高了中继代理设备的转发性能。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (21)
1.一种报文转发方法,其特征在于,包括:
通过三层接口接收来自第6版本互联网协议动态主机配置协议DHCPv6客户端的第一DHCPv6报文;
生成中继前转报文,所述中继前转报文中封装了所述第一DHCPv6报文,并添加所述三层接口的标识;
将所述中继前传报文发送给DHCPv6服务器。
2.根据权利要求1所述的报文转发方法,其特征在于,所述生成中继前转报文包括:
将所述第一DHCPv6报文封装在所述中继前转报文的中继消息选项Relay-message Option字段中;
将所述三层接口的标识添加到所述中继前传报文的对端地址peer-address字段中。
3.根据权利要求1所述的报文转发方法,其特征在于,所述生成中继前转报文包括:
将所述第一DHCPv6报文封装在所述中继前转报文的中继消息选项Relay-message Option字段中;
将所述三层接口的标识添加到所述中继前传报文的接口标识选项Interface-ID Option字段中。
4.根据权利要求1所述的报文转发方法,其特征在于,所述生成中继前转报文包括:
将所述第一DHCPv6报文封装在所述中继前转报文的中继消息选项Relay-message Option字段中;
将所述三层接口的标识添加到所述中继前传报文中新增的三层标识字段中。
5.根据权利要求2所述的报文转发方法,其特征在于,所述将所述三层接口的标识添加到所述中继前传报文的对端地址peer-address字段中包括:
在所述peer-address字段的第10比特位至第63比特位之间插入所述三层接口的标识。
6.根据权利要求3所述的报文转发方法,其特征在于,所述将所述三层接口的标识添加到所述中继前传报文的接口标识选项Interface-ID Option字段中包括:
对所述Interface-ID Option字段进行扩展,将所述三层接口的标识添加到扩展后的Interface-ID Option字段中;或者
在所述中继前传报文中新增二层标识字段,将所述三层接口对应的用户端口的标识添加到所述二层标识字段,将所述三层接口的标识添加到所述Interface-ID Option字段中。
7.根据权利要求3所述的报文转发方法,其特征在于,所述中继前传报文包括内层中继前传报文和外层中继前传报文;
所述将所述第一DHCPv6报文封装在所述中继前转报文的中继消息选项Relay-message Option字段中包括:
将所述第一DHCPv6报文封装在所述内层中继前传报文的Relay-messageOption字段中;
所述将所述三层接口的标识添加到所述中继前传报文的接口标识选项Interface-ID Option字段中包括:
将所述三层接口的标识添加到所述内层中继前传报文的Interface-IDOption字段中,然后将所述内层中继前传报文封装在所述外层中继前传报文中;或者
将所述内层中继前传报文封装在所述外层中继前传报文中,并将所述三层接口的标识添加到所述外层中继前传报文的Interface-ID Option字段中。
8.根据权利要求1-7任一所述的报文转发方法,其特征在于,还包括:
接收来自所述DHCPv6服务器的中继响应报文,所述中继响应报文中封装有所述DHCPv6服务器发送给所述DHCPv6客户端的第二DHCPv6报文和所述三层接口的标识;
根据所述中继响应报文中的三层接口的标识,将所述第二DHCPv6报文转发给所述DHCPv6客户端。
9.根据权利要求8所述的报文转发方法,其特征在于,所述接收来自所述DHCPv6服务器的中继响应报文包括:
接收来自所述DHCPv6服务器的包含三层标识字段的中继响应报文,所述三层标识字段中添加有所述三层接口的标识;或者
接收来自所述DHCPv6服务器的包含二层标识字段的中继响应报文,所述二层标识字段中添加有三层接口对应的用户端口的标识,并且所述中继响应报文中的Interface-ID Option字段中添加有所述三层接口的标识。
10.一种中继代理设备,其特征在于,包括:
第一接收模块,用于接收来自第6版本互联网协议动态主机配置协议DHCPv6客户端的第一DHCPv6报文;
报文生成模块,用于生成中继前转报文,所述中继前转报文中封装了所述第一DHCPv6报文,并添加接收所述第一DHCPv6报文的三层接口的标识;
第一转发模块,用于将所述中继前转报文发送给DHCPv6服务器。
11.根据权利要求10所述的中继代理设备,其特征在于,所述报文生成模块包括:
生成单元,用于将所述第一DHCPv6报文封装在所述中继前转报文的中继消息选项Relay-message Option字段中;
第一添加单元,用于将所述三层接口的标识添加到所述中继前传报文的对端地址peer-address字段中。
12.根据权利要求10所述的中继代理设备,其特征在于,所述报文生成模块包括:
生成单元,用于将所述第一DHCPv6报文封装在所述中继前转报文的中继消息选项Relay-message Option字段中;
第二添加单元,用于将所述三层接口的标识添加到所述中继前传报文的接口标识选项Interface-ID Option字段中。
13.根据权利要求10所述的中继代理设备,其特征在于,所述报文生成模块包括:
生成单元,用于将所述第一DHCPv6报文封装在所述中继前转报文的中继消息选项Relay-message Option字段中;
第三添加单元,用于将所述三层接口的标识添加到所述中继前传报文中新增的三层标识字段中。
14.根据权利要求11所述的中继代理设备,其特征在于,
所述第一添加单元具体用于在所述peer-address字段的第10比特位至第63比特位之间插入所述三层接口的标识。
15.根据权利要求12所述的中继代理设备,其特征在于,
所述第二添加单元具体用于对所述Interface-ID Option字段进行扩展,将所述三层接口的标识添加到扩展后的Interface-ID Option字段中;或者具体用于在所述中继前传报文中新增二层标识字段,将所述三层接口对应的用户端口的标识添加到所述二层标识字段,将所述三层接口的标识添加到所述Interface-ID Option字段中。
16.根据权利要求13所述的中继代理设备,其特征在于,
所述第三添加单元具体用于在所述中继前传报文的可选字段中新增三层标识字段,将所述三层接口的标识添加到所述三层标识字段中。
17.根据权利要求12所述的中继代理设备,其特征在于,所述中继前传报文包括内层中继前传报文和外层中继前传报文;
所述生成单元具体用于将所述第一DHCPv6报文封装在所述内层中继前转报文的Relay-message Option字段中;
所述第二添加单元具体用于将所述三层接口的标识添加到所述内层中继前传报文的Interface-ID Option字段中,然后将所述内层中继前传报文封装在所述外层中继前传报文中;或者用于将所述内层中继前传报文封装在所述外层中继前传报文中,并将所述三层接口的标识添加到所述外层中继前传报文的Interface-ID Option字段中。
18.根据权利要求10-17任一所述的中继代理设备,其特征在于,还包括:
第二接收模块,用于接收来自所述DHCPv6服务器的中继响应报文,所述中继响应报文中封装有所述DHCPv6服务器发送给所述DHCPv6客户端的第二DHCPv6报文和所述三层接口的标识;
第二转发模块,用于根据所述中继响应报文中的三层接口的标识,将所述第二DHCPv6报文转发给所述DHCPv6客户端。
19.一种报文转发系统,其特征在于,包括:中继代理设备和第6版本互联网协议动态主机配置协议DHCPv6服务器;
所述中继代理设备,用于在接收到来自第6版本互联网协议动态主机配置协议DHCPv6客户端的第一DHCPv6报文后,构造中继前传报文,在所述中继前传报文中封装所述第一DHCPv6报文,并添加接收所述第一DHCPv6报文的三层接口的标识,并将所述中继前传报文发送给所述DHCPv6服务器;
所述DHCPv6服务器,用于接收所述中继代理设备发送的所述中继前传报文,并根据所述中继前传报文,生成包括所述三层接口的标识的中继响应报文。
20.根据权利要求19所述的报文转发系统,其特征在于,
所述DHCPv6服务器具体用于根据所述中继前传报文,构造包含三层标识字段的所述中继响应报文,并将所述三层接口的标识添加到所述三层标识字段中;或者
所述DHCPv6服务器具体用于根据所述中继前传报文,构造包含二层标识字段的所述中继响应报文,并将所述三层接口对应的用户端口的标识添加到所述中继响应报文的二层标识字段中,将所述三层接口的标识添加到所述中继响应报文的接口标识选项Interface-ID Option字段中。
21.根据权利要求19或20所述的报文转发系统,其特征在于,
所述DHCPv6服务器还用于将所述中继响应报文发送给所述中继代理设备;
所述中继代理设备还用于接收所述DHCPv6服务器发送的所述中继响应报文,并根据所述中继响应报文中的三层接口的标识,将所述中继响应报文中的第二DHCPv6报文转发给所述DHCPv6客户端。
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110077032.8A CN102724101B (zh) | 2011-03-29 | 2011-03-29 | 报文转发方法及系统与中继代理设备 |
EP12763865.8A EP2680507B1 (en) | 2011-03-29 | 2012-03-29 | Packet forwarding method and system, and relay agent device |
ES16168436T ES2846728T3 (es) | 2011-03-29 | 2012-03-29 | Método y sistema de reenvío de mensajes y dispositivo de agente de relé |
PCT/CN2012/073259 WO2012130151A1 (zh) | 2011-03-29 | 2012-03-29 | 报文转发方法及系统与中继代理设备 |
EP16168436.0A EP3133797B1 (en) | 2011-03-29 | 2012-03-29 | Message forwarding method, system, and relay agent device |
ES12763865.8T ES2591185T3 (es) | 2011-03-29 | 2012-03-29 | Método y sistema de reenvío de paquetes y dispositivo de agente de relé |
US14/136,481 US9621459B2 (en) | 2011-03-29 | 2013-12-20 | Message forwarding method, system, and relay agent device |
US14/444,554 US9331939B2 (en) | 2011-03-29 | 2014-07-28 | Message forwarding method, system, and relay agent device |
US15/085,105 US9680743B2 (en) | 2011-03-29 | 2016-03-30 | Message forwarding method, system, and relay agent device |
US15/610,070 US9998372B2 (en) | 2011-03-29 | 2017-05-31 | Message forwarding method, system, and relay agent device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110077032.8A CN102724101B (zh) | 2011-03-29 | 2011-03-29 | 报文转发方法及系统与中继代理设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102724101A true CN102724101A (zh) | 2012-10-10 |
CN102724101B CN102724101B (zh) | 2015-01-21 |
Family
ID=46929471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110077032.8A Active CN102724101B (zh) | 2011-03-29 | 2011-03-29 | 报文转发方法及系统与中继代理设备 |
Country Status (5)
Country | Link |
---|---|
US (4) | US9621459B2 (zh) |
EP (2) | EP3133797B1 (zh) |
CN (1) | CN102724101B (zh) |
ES (2) | ES2591185T3 (zh) |
WO (1) | WO2012130151A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102724101B (zh) | 2011-03-29 | 2015-01-21 | 华为技术有限公司 | 报文转发方法及系统与中继代理设备 |
US9620213B2 (en) | 2013-12-27 | 2017-04-11 | Cavium, Inc. | Method and system for reconfigurable parallel lookups using multiple shared memories |
US9379963B2 (en) | 2013-12-30 | 2016-06-28 | Cavium, Inc. | Apparatus and method of generating lookups and making decisions for packet modifying and forwarding in a software-defined network engine |
US9880844B2 (en) | 2013-12-30 | 2018-01-30 | Cavium, Inc. | Method and apparatus for parallel and conditional data manipulation in a software-defined network processing engine |
US9825884B2 (en) | 2013-12-30 | 2017-11-21 | Cavium, Inc. | Protocol independent programmable switch (PIPS) software defined data center networks |
US9756013B2 (en) * | 2014-07-10 | 2017-09-05 | Cisco Technology, Inc. | Distributed mapping of address and port (MAP) between a provider edge device and customer premise equipment devices |
WO2016187786A1 (zh) * | 2015-05-25 | 2016-12-01 | 华为技术有限公司 | 消息处理方法、装置和系统 |
JP6424740B2 (ja) * | 2015-05-27 | 2018-11-21 | 住友電気工業株式会社 | パケット中継装置およびパケット中継方法 |
FR3043810B1 (fr) * | 2015-11-16 | 2017-12-08 | Bull Sas | Procede de surveillance d'echange de donnees sur un reseau de type liaison h implementant une technologie tdma |
US11678475B2 (en) | 2021-07-21 | 2023-06-13 | International Business Machines Corporation | Static random access memory using vertical transport field effect transistors |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050114880A1 (en) * | 2003-11-21 | 2005-05-26 | Kenneth Gould | System and method for detecting and reporting cable network devices with duplicate media access control addresses |
CN1863199A (zh) * | 2005-09-30 | 2006-11-15 | 华为技术有限公司 | 宽带网络中开展业务的方法 |
CN1897589A (zh) * | 2005-07-13 | 2007-01-17 | 上海贝尔阿尔卡特股份有限公司 | 在通信网络中支持IPv6无状态地址配置的接入装置、路由设备及其方法 |
CN101047614A (zh) * | 2006-05-01 | 2007-10-03 | 华为技术有限公司 | 一种IPv6网络环境中流传输路径建立方法和数据传输系统 |
CN101516048A (zh) * | 2009-04-10 | 2009-08-26 | 烽火通信科技股份有限公司 | 基于wdm和tdm的混合pon系统安全性实现方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8437360B2 (en) * | 2007-11-14 | 2013-05-07 | Cisco Technology, Inc. | Stateful DHCPv6 relay agent in a cable modem termination system |
JP2009130424A (ja) * | 2007-11-20 | 2009-06-11 | Nec Corp | 情報通信システム、ネットワーク帯域管理装置、伝送装置、情報信号モニタ方法及びプログラム |
EP2364543B1 (en) * | 2008-12-08 | 2017-02-15 | Telefonaktiebolaget LM Ericsson (publ) | Broadband network access |
US8285875B2 (en) * | 2009-01-28 | 2012-10-09 | Juniper Networks, Inc. | Synchronizing resource bindings within computer network |
US8086713B2 (en) * | 2009-01-28 | 2011-12-27 | Juniper Networks, Inc. | Determining a subscriber device has failed gracelessly without issuing a DHCP release message and automatically releasing resources reserved for the subscriber device within a broadband network upon determining that another subscriber device requesting the reservation of a network address has the same context information as the failed subscriber device |
CN101572712B (zh) * | 2009-06-09 | 2012-06-27 | 杭州华三通信技术有限公司 | 一种防止伪造报文攻击的方法和中继设备 |
CN102724101B (zh) | 2011-03-29 | 2015-01-21 | 华为技术有限公司 | 报文转发方法及系统与中继代理设备 |
-
2011
- 2011-03-29 CN CN201110077032.8A patent/CN102724101B/zh active Active
-
2012
- 2012-03-29 EP EP16168436.0A patent/EP3133797B1/en active Active
- 2012-03-29 WO PCT/CN2012/073259 patent/WO2012130151A1/zh active Application Filing
- 2012-03-29 ES ES12763865.8T patent/ES2591185T3/es active Active
- 2012-03-29 EP EP12763865.8A patent/EP2680507B1/en active Active
- 2012-03-29 ES ES16168436T patent/ES2846728T3/es active Active
-
2013
- 2013-12-20 US US14/136,481 patent/US9621459B2/en active Active
-
2014
- 2014-07-28 US US14/444,554 patent/US9331939B2/en active Active
-
2016
- 2016-03-30 US US15/085,105 patent/US9680743B2/en active Active
-
2017
- 2017-05-31 US US15/610,070 patent/US9998372B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050114880A1 (en) * | 2003-11-21 | 2005-05-26 | Kenneth Gould | System and method for detecting and reporting cable network devices with duplicate media access control addresses |
CN1897589A (zh) * | 2005-07-13 | 2007-01-17 | 上海贝尔阿尔卡特股份有限公司 | 在通信网络中支持IPv6无状态地址配置的接入装置、路由设备及其方法 |
CN1863199A (zh) * | 2005-09-30 | 2006-11-15 | 华为技术有限公司 | 宽带网络中开展业务的方法 |
CN101047614A (zh) * | 2006-05-01 | 2007-10-03 | 华为技术有限公司 | 一种IPv6网络环境中流传输路径建立方法和数据传输系统 |
CN101516048A (zh) * | 2009-04-10 | 2009-08-26 | 烽火通信科技股份有限公司 | 基于wdm和tdm的混合pon系统安全性实现方法 |
Non-Patent Citations (1)
Title |
---|
R.DROMS.ED.等: ""RFC 3315 Dynamic Host Configuration Protocol for IPv6(DHCPv6)"", 《NETWORK WORKING GROUP》 * |
Also Published As
Publication number | Publication date |
---|---|
US9998372B2 (en) | 2018-06-12 |
US20160212046A1 (en) | 2016-07-21 |
US20140105214A1 (en) | 2014-04-17 |
ES2846728T3 (es) | 2021-07-29 |
WO2012130151A1 (zh) | 2012-10-04 |
EP2680507A4 (en) | 2014-01-08 |
US9331939B2 (en) | 2016-05-03 |
CN102724101B (zh) | 2015-01-21 |
EP3133797A1 (en) | 2017-02-22 |
US9680743B2 (en) | 2017-06-13 |
EP3133797B1 (en) | 2020-10-28 |
ES2591185T3 (es) | 2016-11-25 |
US20170264542A1 (en) | 2017-09-14 |
US9621459B2 (en) | 2017-04-11 |
EP2680507B1 (en) | 2016-06-29 |
EP2680507A1 (en) | 2014-01-01 |
US20140334493A1 (en) | 2014-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102724101B (zh) | 报文转发方法及系统与中继代理设备 | |
CN1870569B (zh) | 网络系统及其管理方法、通信终端和报文发送方法 | |
CN103888386A (zh) | 可扩展虚拟局域网报文的传输方法及装置、系统 | |
KR20170005129A (ko) | 네트워크 패킷 캡슐화 및 라우팅 | |
CN103931144B (zh) | 一种在虚拟域中通信的方法、设备和系统 | |
CN101800781B (zh) | 一种穿越nat的隧道过渡方法及系统 | |
JP2006148902A (ja) | デュアルスタック変換メカニズムを用いたIPv4−IPv6変換システム及びその方法 | |
CN107645433B (zh) | 报文转发方法及装置 | |
CN102394947B (zh) | IPv4与IPv6的地址翻译方法、装置、系统及ALG设备 | |
US20120082110A1 (en) | Method and terminal for transmitting service data | |
CN102938795A (zh) | 通过隧道和地址转换实现IPv6地址访问IPv4资源的方法 | |
CN104486589A (zh) | 基于gvrp的视频监控系统中的访问方法及装置 | |
CN103354520B (zh) | 一种标签处理的方法及装置 | |
CN104038422A (zh) | 报文转发方法和网关 | |
CN104584517A (zh) | 在数据中心中使用的用于将IPv4分组在IPv6网络上路由的方法和网络节点 | |
CN105323229A (zh) | 一种基于cpe的数据传输方法、网元、平台及系统 | |
CN111930757B (zh) | 数据处理方法、系统、封装节点和解封装节点 | |
CN102904814B (zh) | 数据传输方法、源pe、目的pe和数据传输系统 | |
CN102739502A (zh) | 一种实现网络标识转换的方法、装置及系统 | |
CN102035899A (zh) | 基于IPv6的局域网内的地址确定方法与装置 | |
CN103167483B (zh) | 一种基于隧道的数据转发方法、设备及系统 | |
CN103685032A (zh) | 报文转发方法及网络地址转换服务器 | |
CN105812221A (zh) | 虚拟可扩展本地区域网络中数据传输的设备和方法 | |
US12003417B2 (en) | Communication method and apparatus | |
CN115314437B (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 |