WO2020147784A1 - 报文解封装方法及装置、报文封装方法及装置、电子装置和存储介质 - Google Patents

报文解封装方法及装置、报文封装方法及装置、电子装置和存储介质 Download PDF

Info

Publication number
WO2020147784A1
WO2020147784A1 PCT/CN2020/072458 CN2020072458W WO2020147784A1 WO 2020147784 A1 WO2020147784 A1 WO 2020147784A1 CN 2020072458 W CN2020072458 W CN 2020072458W WO 2020147784 A1 WO2020147784 A1 WO 2020147784A1
Authority
WO
WIPO (PCT)
Prior art keywords
data packet
attribute
attributes
geneve
split horizon
Prior art date
Application number
PCT/CN2020/072458
Other languages
English (en)
French (fr)
Inventor
陈然
王玉保
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Priority to US17/423,697 priority Critical patent/US11962673B2/en
Priority to EP20741179.4A priority patent/EP3913865B1/en
Publication of WO2020147784A1 publication Critical patent/WO2020147784A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L2012/4629LAN interconnection over a backbone network, e.g. Internet, Frame Relay using multilayer switching, e.g. layer 3 switching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2212/00Encapsulation of packets

Definitions

  • the present disclosure relates to the field of communications, for example, to a method and device for message decapsulation, a method and device for message encapsulation, an electronic device, and a storage medium.
  • the Metro Ethernet Forum defines the Ethernet tree (Ethernet Tree, E-Tree) service, that is, the rooted multipoint (rooted multipoint) service.
  • E-Tree is characterized by one or more root user access links (Root Attachment Circuits (ACs)) and at least two leaf user access links (Leaf ACs).
  • ACs Root Attachment Circuits
  • Leaf ACs leaf user access links
  • the user-side interface corresponding to the two root attributes and the user-side interface between the root attribute and the leaf attribute can communicate with each other, but the corresponding user-side interface between the two leaf attributes cannot Communicate with each other.
  • NVO3 Network Virtualization Over Layer 3
  • Generic Network Virtualization Encapsulation Geneve
  • the nature of the information formulated in the NVO3 technology is a universal extension. Protocol can extend virtual local area network (Virtual Extensible local area Network Generic Protocol Extension, VXLAN-GPE).
  • NVO3 is a technology that realizes network virtualization, through which a physical network can be virtualized, so that the same physical network can be used by different tenants, and the traffic between tenants can be isolated.
  • the NVO3 encapsulation header contains a 24-bit virtual network identifier, and different virtual network identifiers are used to identify different virtual networks.
  • the simulation processing of the above-mentioned E-Tree service cannot be realized in the NVO3 technology.
  • the embodiment of the present invention provides a message decapsulation method and device, a message encapsulation method and device, an electronic device, and a storage medium, so as to at least solve the problem that the NVO3 technology in the related art cannot realize the simulation of the E-Tree service.
  • a message decapsulation method applied to a second node, and the method includes:
  • the data packet is obtained by the first node encapsulating a data packet sent through a first access link (Attachment Circuit, AC), and the data packet carries the first node determined by the first node.
  • the split horizon attribute of the first AC includes at least one of the following: a leaf attribute, a root attribute, and an Ethernet Segment Identifer (ESI) attribute.
  • a message encapsulation method applied to the first node includes:
  • split horizon attribute of the first AC includes at least one of the following: leaf attributes, root attributes, and ESI attributes;
  • a message decapsulation device applied to a second node, and the device includes:
  • the decapsulation module is configured to decapsulate the data packet sent by the first node
  • the data packet is obtained by the first node encapsulating a data packet sent through a first AC, and the data packet carries the split horizon attribute of the first AC determined by the first node, and
  • the split horizon attributes of the first AC include at least one of the following: leaf attributes, root attributes, and ESI attributes.
  • a message encapsulation device applied to a first node includes:
  • the determining module is configured to determine the split horizon attribute of the first AC, where the split horizon attribute of the first AC includes at least one of the following: leaf attributes, root attributes, and ESI attributes;
  • An encapsulation module configured to encapsulate a data message sent through the first AC to obtain a data packet, and send the data packet to a second node, the data packet carrying the split horizon attribute of the first AC .
  • a storage medium in which a computer program is stored, and the computer program is configured to execute the steps in any one of the foregoing method embodiments when running.
  • an electronic device including a memory and a processor, the memory is stored with a computer program, and the processor is configured to run the computer program to execute any of the above Steps in the method embodiment.
  • the data packet obtained by the first node encapsulating the data packet sent by the first access link AC carries the first node determination
  • the split horizon attribute of the first AC of the first AC includes at least one of the following: leaf attributes, root attributes, and ESI attributes. Therefore, the present application can solve the problem that the NVO3 technology cannot realize the simulation of the E-Tree service in the related technology, so as to achieve the effect of realizing the simulation of the E-Tree service in the NVO3 technology.
  • Fig. 1 is a flowchart of a method for decapsulating a message according to an embodiment of the present invention
  • Fig. 2 is a schematic diagram (1) of the Geneve header in the data packet encapsulation format provided according to an embodiment of the present invention
  • Fig. 3 is a schematic diagram (2) of Geneve Header in a data packet encapsulation format according to an embodiment of the present invention
  • Fig. 4 is a schematic diagram of Geneve Header in a data packet encapsulation format provided according to an embodiment of the present invention (3);
  • Fig. 5 is a schematic diagram of Geneve Header in a data packet encapsulation format provided according to an embodiment of the present invention (4);
  • Fig. 6 is a schematic diagram of VXLAN-GPE Header in a data packet encapsulation format provided according to an embodiment of the present invention
  • FIG. 7 is a schematic diagram (1) of a deployment scenario of an E-tree service provided according to a specific embodiment of the present application.
  • FIG. 8 is a schematic diagram (2) of a deployment scenario of an E-tree service provided according to a specific embodiment of the present application.
  • FIG. 9 is a flowchart of a method for encapsulating a message according to an embodiment of the present invention.
  • FIG. 10 is a structural block diagram of a message decapsulation device according to an embodiment of the present invention.
  • Fig. 11 is a structural block diagram of a message packaging device according to an embodiment of the present invention.
  • FIG. 1 is a flowchart of a message decapsulation method according to an embodiment of the present invention. As shown in FIG. 1, the method includes the following step.
  • the split horizon attributes of the first AC include at least one of the following: leaf attributes, root attributes, and ESI attributes.
  • the method in this embodiment since in the process of decapsulating the data packet sent by the first node, the data packet obtained by the first node encapsulating the data packet sent through the first AC carries the first node
  • the determined split horizon attribute of the first AC includes at least one of the following: leaf attributes, root attributes, and ESI attributes. Therefore, the method in this embodiment can solve the problem that the NVO3 technology cannot realize the simulation of the E-Tree service in the related technology, so as to realize the simulation of the E-Tree service in the NVO3 technology.
  • step S102 is the second node.
  • both the first node and the second node in the foregoing step S102 may be device nodes in the NVO3 application scenario.
  • the device nodes in the foregoing NVO3 may adopt Network Virtualization Edge (NVE).
  • NVE device is used for user's virtual machine to access the network through physical or logical connection.
  • the aforementioned first AC is the first AC formed between the user and the NVE device constituting the first node.
  • the user transmits data packets to the first node through the first AC; the first node encapsulates the above data packets to obtain data packets that can be sent to the second node; the NVE device constituting the second node is receiving After the foregoing data packet is reached, the decapsulation process in step S102 can be executed.
  • the split horizon attribute of the first AC may include ESI attributes, or any one of root attributes/leaf attributes.
  • the split horizon attributes of the first AC include: leaf attributes; or, the split horizon attributes of the first AC include: root attributes; or, the split horizon attributes of the first AC include: leaf attributes and ESI attributes; or, the first AC
  • the split horizon attributes of includes: root attribute and ESI attribute.
  • the split horizon attribute of the first AC includes the ESI attribute for indicating that the first AC belongs to a certain ESI, that is, when the first AC belongs to a certain ESI, the split horizon attribute of the first AC includes the ESI attribute. Conversely, if the first AC does not belong to any ESI, the split horizon data of the first AC does not include the ESI attribute.
  • the split horizon attribute of the first AC includes any one of the root attribute/leaf attribute and is used to indicate the node attribute of the user-side interface corresponding to the first AC in the E-Tree service.
  • the split horizon attribute of the first AC determined by the first node that is, the first node can confirm the split horizon attribute of the first AC before receiving the data message sent by the first AC, or
  • the first AC actively carries related information used to indicate the split horizon attribute of the first AC during the process of sending the data packet to the first node, which is not limited in this application.
  • first node and the second node are only used to indicate the sender of the data message and the receiver of the data message in the E-tree service simulation process in the NVO3 technology.
  • first AC And the second AC in the optional embodiment also only represents the AC connected to the first node and the second node, and the application does not limit the order of the first node and the second node, and the first AC and the second AC.
  • the format of the data packet includes one of the following: Geneve, VXLAN-GPE.
  • step S102 when the format of the data packet is Geneve, the data packet includes a Geneve Header, and the Geneve Header is used to carry the split horizon attribute of the first AC.
  • the Geneve Header includes a variable length option, the variable length option is extended with a Geneve option data type, and the Geneve option data type is used to carry the split horizon attribute of the first AC.
  • Figure 2 is a schematic diagram (1) of Geneve Header in a data packet encapsulation format provided according to an embodiment of the present invention.
  • the data packet includes Geneve Header, Geneve
  • the header includes variable length options (Variable Length Options), which is the Variable Length Options field shown in FIG. 2.
  • the expanded Geneve option data type in the variable-length option area is listed, that is, in Figure 2
  • the Geneve option (Option) shown in this optional embodiment can also be marked as a label (Label) option, that is, the Label Option shown in Figure 2; in this optional embodiment, Label Option is used To indicate the split horizon attribute of the first AC, so that the split horizon attribute of the first AC can be carried in the Geneve option data type.
  • the aforementioned Label Option indicates the split horizon attribute of the first AC by carrying the Label Option to indicate that the split horizon attribute of the first AC at least includes leaf attributes, that is, when the variable length option of the Geneve Header in the data packet is extended with Label Option
  • the data packet can indicate that the split horizon attribute of the first AC includes at least the leaf attribute and does not include the root attribute; when the variable length option of the Geneve Header in the data packet is not extended with Label Option, the data packet can indicate the first AC
  • the split horizon attributes of an AC include at least root attributes and not leaf attributes.
  • the second node determines whether the above-mentioned Label Option is extended in the data packet during the decapsulation process, so as to determine the split horizon attribute of the first AC carried in the data packet.
  • FIG. 2 shows an extended format of the Label Option.
  • the Label option carries the Label label, which is called the Label value (Value) in this optional embodiment;
  • the label encapsulation type adopted by the above Label Value is the corresponding Label carried in the Label Option Type (Label type, L-type) to indicate.
  • the label encapsulation type of Label Value can be a forwarding label or an implicit empty label.
  • the L-type indicates that the label encapsulation format of the Label Value is a forwarding label. It should be noted that whether the above Label Value is a forwarding label or an implicit empty label, it can indicate that the split horizon attribute of the first AC includes a leaf attribute.
  • the Label Value can adopt a Multi-Protocol Label Switching (MPLS) label, or a virtual network identifier (Virtual Network Identifier, VNI) label.
  • MPLS Multi-Protocol Label Switching
  • VNI Virtual Network Identifier
  • the implicit empty label is a form of Label Value.
  • the packet length of the Label Value is 0, that is, the length of the Label Option shown in Figure 2
  • the section length is 0, but in this case, the Variable Length option of Geneve Header is still extended with Label Option.
  • Label Value can be used as an implicit empty label to indicate that the split horizon attributes of the first AC include leaf attributes.
  • the expansion method of the above-mentioned Label Option in the variable length option in the data packet includes but is not limited to the method shown in FIG. 2.
  • the Label Option in this application it is in the Geneve Header
  • the extended format is not limited.
  • Fig. 3 is a schematic diagram of Geneve Header in a data packet encapsulation format provided according to an embodiment of the present invention (2).
  • the data packet includes Geneve Header
  • Geneve The header includes variable length options, that is, the Variable Length Options field shown in FIG. 3.
  • the expanded Geneve option data type in the variable-length option area is listed, that is, in FIG. 3
  • the Geneve Option shown in this optional embodiment may also be recorded as the Labels option, that is, the Label Stack Option shown in Figure 3; the Label Stack Option indicates the level of the first AC
  • the split attribute can implement the horizontal split attribute of the first AC carried in the Geneve option data type in this optional embodiment.
  • the above-mentioned Label Stack Option can indicate the split horizon attribute of the first AC by carrying the Label Stack Option to indicate that the split horizon attribute of the first AC includes at least leaf attributes, that is, when the variable length option of the Geneve Header in the data packet is extended by
  • the data packet can indicate that the split horizon attribute of the first AC includes at least the leaf attribute and does not include the root attribute; when the variable length option of the Geneve Header in the data packet is not extended with Label Stack Option, the data The packet may indicate that the split horizon attributes of the first AC include at least root attributes and not leaf attributes.
  • the second node determines whether the foregoing Label Stack Option is extended in the data packet during the decapsulation process, and can determine the split horizon attribute of the first AC carried in the data packet.
  • the above-mentioned Label Stack Option can have multiple extension formats in the variable length options in the data packet.
  • Figure 3 shows an extension format of the Label Stack Option. Different from the foregoing Figure 2 where Label Option carries a single Label Value, as shown in Figure 3, Label Stack Option carries 1 to n Label Values, namely Label-1 Value to Label-n Value shown in Figure 3; Each Label Value corresponds to an L-type that indicates the label encapsulation type of the Label Value.
  • the label encapsulation type corresponding to any Label Value from Label-1 Value to Label-Value is the same as the Label Value shown in FIG. 2, so it will not be repeated here.
  • the above-mentioned Label-1Value to Label-n Value together constitute a label stack.
  • the label stack there is at least one Label Value used to indicate that the split horizon attribute of the first AC includes at least leaf attributes, so that Label Stack Option can be implemented to indicate that the split horizon attribute of the first AC includes at least leaf attributes, so that the Geneve option data type can carry the split horizon attribute of the first AC.
  • the remaining Label Value can also be used to indicate whether the split horizon attribute of the first AC includes other attributes, for example, ESI attributes.
  • Fig. 4 is a schematic diagram (3) of Geneve Header in a packet encapsulation format provided according to an embodiment of the present invention.
  • Fig. 4 adopts an encapsulation and extension method similar to the Geneve Header shown in Fig. 3, namely The Geneve option data type is expanded in the variable length option area of the Geneve Header, that is, the Geneve Option shown in Figure 4.
  • the Geneve Option can also be recorded as the Labels option, that is, the Label shown in Figure 4 Stack Option; through the Label Stack Option indicating the split horizon attribute of the first AC, it is possible to carry the split horizon attribute of the first AC in the Geneve option data type in this optional embodiment.
  • the format in the Label Stack Option shown in FIG. 4 is the same as that in FIG. 3, so it will not be repeated here.
  • the Geneve Header shown in FIG. 4 deletes the VNI field in the Geneve Header, and moves the VNI field to the Label Stack Option for definition.
  • the above VNI field may be moved to Label Stack Option to indicate the meaning of the VNI field through any one of Label-1 Value in Label Stack Option to Label-n Value.
  • the first Label Value from Label-1Value to Label-n Value, namely Label-1Value, can be used to indicate the meaning of the VNI field.
  • Label-1Value is used to indicate the meaning of the VNI field, there is still at least one Label Value among Label-2Value to Label-nValue, which indicates that the split horizon attribute of the first AC includes at least leaf attributes.
  • the meaning of the foregoing indication of the VNI field by Label-1Value may be that the Label-1Value is used to indicate the identity of the corresponding user who sends the data message through the first AC.
  • the encapsulated data packet may carry multiple Label options to form a label stack. It should be noted that whether the Label option in the label stack is an MPLS label or a VNI label is indicated by the corresponding L-type; for each Label option, a separate S is set for the VNI label or MPLS label in the Label option. Flag bit, the S flag bit is used to indicate that the label is at the bottom of the label stack.
  • the extended protocol type (Protocol Type) field in the Geneve Header the value of the Protocol Type field is the first E-tree specified value; the value of the Protocol Type field is the first E-tree specified value
  • the inner payload of the data packet includes a data message, and the split horizon attribute of the first AC used to send the data message is a leaf attribute.
  • Figure 5 is a schematic diagram of the Geneve Header in the data packet encapsulation format provided by an embodiment of the present invention (4). As shown in Figure 5, under the premise that the Geneve format is adopted as the encapsulation format of the data packet, the data packet includes the Geneve Header.
  • the Geneve Header includes the Protocol Type field, which is the Protocol Type field shown in FIG. 5.
  • the Protocol Type field in the Geneve Header is used to indicate the type of protocol used by the data message encapsulated in the Geneve.
  • the setting of the Protocol Type field can be given a different value, such as 0X6558, to achieve the Geneve Header in Application in different scenarios.
  • the Protocol Type is assigned to the first E-tree specified value, and the first E-tree specified value is a value preset according to E-tree service simulation requirements.
  • assigning Protocol Type to the first E-tree designated value has the following meanings.
  • the type of protocol used by Geneve is an E-tree-compliant protocol; under this protocol, a data packet encapsulated by Geneve can indicate that the inner payload of the data packet includes a data packet (the data packet sent by the first AC) Text).
  • the split horizon attribute of the first AC that sends the data message is a leaf attribute, that is, the specified value of the first E-tree indicates that the split horizon attribute of the first AC is a leaf attribute.
  • the split horizon attribute of the first AC can be indicated, so that the split horizon attribute of the first AC is carried in the Geneve Header.
  • the split horizon attribute of the first AC when the value of the Protocol Type field is the specified value of the first E-tree, the split horizon attribute of the first AC includes at least the leaf attribute and does not include the root attribute; when the value of the Protocol Type field does not satisfy the first E-tree
  • the horizontal split attribute of the first AC includes at least the root attribute and does not include the leaf attribute.
  • assigning Protocol Type to the first E-tree specified value can also contain other meanings, which is not limited in this application, that is, any one that can at least indicate that the inner payload of a data packet includes a data packet, and The value of the split horizon attribute of the first AC used to send the data message as the leaf attribute can be used as the first E-tree specified value.
  • the above-mentioned first E-tree specified value indicates that the split horizon attribute of the first AC sending the data message is a leaf attribute.
  • the above solution may be adopted: when encapsulating the data message sent by the first AC, the Ethernet message of the inner payload of the data packet is the same as the standard file request comment 7796 (Request For Comments 7796, RFC7796)
  • the format of the inner Ethernet packet of the E-tree data packet defined in the same format, and the Ethernet packet of the inner payload of the data packet carries Leaf VLAN to indicate the horizontal split of the first AC that sends the data packet
  • the attributes are leaf attributes.
  • the Ethernet packet format setting for the inner load of the data packet can be used to indicate that the inner load of the data packet includes the data packet, and the leaf VLAN can be carried in the Ethernet packet to indicate the first
  • the split horizon attribute of AC is a leaf attribute.
  • step S102 when the format of the data packet is VXLAN-GPE, the data packet includes a VXLAN-GPE Header; the VXLAN-GPE Header is used to carry the split horizon attribute of the first AC.
  • next protocol (Next Protocol) field is extended in the VXLAN-GPE Header, and the value of the Next Protocol field is a value specified by the second E-tree.
  • FIG. 6 is a schematic diagram of the VXLAN-GPE Header in the data packet encapsulation format provided according to an embodiment of the present invention.
  • the data packet includes VXLAN-GPE Header
  • the VXLAN-GPE Header is extended with the Next Protocol field, which is the Next Protocol field shown in FIG. 6.
  • NP field can be "draft-ietf-nvo3-vxlan-gpe", which is the nature of information VXLAN-GPE in NVO3 drafted by the Internet Engineering Task Force (IETF) Standard, defined NP field.
  • the NP field is used to indicate the lower layer protocol in the VXLAN-GPE Header, that is, the protocol type of the data message encapsulated in the VXLAN-GPE (the data message sent by the first AC).
  • the NP field can be assigned to indicate the protocol type of the data message. For example, if the data message adopts the IPv4 protocol, the NP field can be set to 0x800 for indication.
  • the value of the above NP field is the second E-tree specified value, that is, the NP field is assigned to the second E-tree specified value to indicate that the inner payload of the data packet includes a data packet and is used to send the data packet
  • the split horizon attribute of the first AC of the text is the leaf attribute.
  • the second E-tree specified value is a value defined according to the above settings, that is, the second E-tree specified value can at least be used to indicate the meaning of the NP field, including: the inner payload of the data packet includes a data packet, and
  • the split horizon attribute of the first AC that sends the data message is the leaf attribute.
  • the value of the NP field is set to the specified value of the second E-tree, it can indicate that the horizontal split attribute of the first AC is a leaf attribute, so the level of the first AC can be carried through the VXLAN-GPE Header in this optional embodiment.
  • Split attribute that is, when the value of the NP field is the specified value of the second E-tree, the split horizon attribute of the first AC includes at least the leaf attribute and not the root attribute; when the value of the NP field does not satisfy the second E-tree
  • the horizontal split attribute of the first AC includes at least the root attribute and does not include the leaf attribute.
  • assigning the NP field to the second E-tree specified value can also contain other meanings, which is not limited in this application, that is, any one can at least indicate that the inner payload of the data packet includes a data packet, and
  • the value of the split horizon attribute of the first AC used to send the data message as the leaf attribute can be used as the second E-tree specified value.
  • first E-tree designated value and second E-tree designated value are both artificially set or defined values, and there is no order between the first E-tree designated value and the second E-tree designated value relationship.
  • the Geneve option data type is also used to carry ESI tag information.
  • the ESI tag information is used to identify the ESI to which the first AC belongs.
  • the ESI label information includes one of the following: MPLS label and VNI label.
  • the split horizon attribute of the first AC is the ESI attribute and the root attribute is used to indicate that the split horizon attribute of the first AC corresponds to the root attribute in the E-tree service, and the first AC belongs to a certain ESI (ie In this optional embodiment, the ESI to which the first AC belongs).
  • the split horizon attribute of the first AC has the ESI attribute.
  • the split horizon attribute of the first AC can also be a leaf attribute or a root attribute (which could be The split horizon attribute of the first AC in the selected embodiment is the root attribute).
  • the ESI label information used to identify the ESI to which the first AC belongs may be an MPLS label or a VNI label.
  • after decapsulating the data packet sent by the first node it includes: obtaining the decapsulated data packet, and processing the decapsulated data packet according to the following objects: first The split horizon attribute of the AC and the split horizon attribute of the second AC.
  • the access links corresponding to the root attribute and the root attribute, and the access links corresponding to the leaf attribute and the root attribute can communicate with each other.
  • the access links corresponding to the leaf attributes cannot communicate.
  • the second node can determine the action to be performed for the above data packet based on the comparison between the split horizon attribute of the first AC carried in the data packet and the split horizon attribute of the second AC connected to the second node itself. , May include forwarding to the second AC, and instructing the discarding process.
  • the process of performing the above actions is as follows.
  • the second node When the split horizon attribute of the second AC connected to the second node is the root attribute, no matter whether the split horizon attribute of the first AC is the root attribute or the leaf attribute, the second node can perform forwarding processing on the decapsulated data packet ;
  • the split horizon attribute of the second AC is the leaf attribute, only when the split horizon attribute of the first AC is the root attribute, the second node needs to forward the decapsulated data packet to the second AC, and the When the split horizon attribute of an AC is a leaf attribute, the second node needs to discard the data packet.
  • FIG. 7 is a schematic diagram (1) of the deployment scenario of the E-tree service provided according to the specific embodiment of the present application.
  • the deployment scenario of the E-tree service shown in FIG. 7 includes the NVE1 node, the NVE2 node, and the NVE3 node.
  • the NVE1 node is connected to the first tenant (Tenant System1) and the second tenant (Tenant System2), and the split horizon attribute of the access link between NVE1 and Tenant System1 is the root attribute, and the access link between NVE1 and Tenant System2
  • the split horizon attribute of the road is the leaf attribute;
  • the NVE2 node is connected to the fourth tenant (Tenant System4) and the fifth tenant (Tenant System5), and the split horizon attribute of the access link between NVE2 and Tenant System4 is the root attribute, NVE2
  • the split horizon attribute of the access link with Tenant System5 is a leaf attribute; and, the NVE3 node is connected to a third tenant (Tenant System3), and the access link between NVE3 and Tenant System3 is a leaf attribute.
  • the NVE1 node accepts the data message sent by the tenant. Taking Tenant System2 as an example, the NVE1 node accepts the data message sent by the Tenant System2 and encapsulates it into a Geneve data packet that supports the E-tree service. Since the access link corresponding to Tenant System2 is a leaf attribute, the Geneve Header of the Geneve data packet is extended with Label Option or Label Stack Option to indicate that the split horizon attribute of the corresponding access link is a leaf attribute. It should be noted that the encapsulation format of the Geneve data packet can be encapsulated in any of the encapsulation formats shown in Figures 2 to 5 in this application. After NVE1 completes the encapsulation, it sends the encapsulated data packet to NVE3.
  • the NVE3 executes the decapsulation operation after receiving the above-mentioned data packet, and obtains the split horizon attribute of the access link corresponding to the above-mentioned data packet as the leaf attribute during the decapsulation process. Since the access link of Tenant System 3 corresponding to NVE3 is the same as the leaf attribute, NVE3 needs to discard the above data packet in this case without forwarding the data packet to Tenant System 3.
  • NVE3 can perform the forwarding operation after receiving the above data packet. This process is similar to the encapsulation and decapsulation of the above-mentioned data message, so it will not be repeated here.
  • FIG. 8 is a schematic diagram (2) of the deployment scenario of the E-tree service provided according to the specific embodiment of the application.
  • the deployment scenario of the E-tree service shown in FIG. 8 includes the backbone network edge (Provider Edge) that constitutes the NVO3 network node.
  • PE backbone network edge
  • PE1 is connected to the second user site Site2, and Site2 is connected to the network by the router GER.
  • the split horizon attribute of the access link Leaf3 between PE1 and Site2 is the leaf attribute; at the same time, PE1 and PE2 are also connected to a server (Server), and The split horizon attributes of the access links formed between PE1 and PE2 and the above-mentioned Server (Root) 1 and Root2 are both root attributes; PE3 is connected to the third user site Site3, and Site3 is connected to the network by the router GER.
  • the split horizon attribute of the access link Leaf4 between Site3 is the leaf attribute; in addition, PE3 and PE4 are connected to the first user site Site1, and Site1 is connected to the network by the router GER, and the split horizon of the access link Leaf1 between PE3 and Site1
  • the attribute is a leaf attribute
  • the split horizon attribute Leaf2 of the access link between PE4 and Site1 is a leaf attribute.
  • ESI-1 identifies the ES, that is, Root1 and Root2 belong to ESI-1.
  • Site1 is simultaneously connected to PE3 and PE4 through multiple links, the links between Site1 and PE3 and PE4 constitute one ES.
  • ESI-2 is used to identify the ES, namely Leaf1 And Leaf2 belong to ESI-2.
  • the above-mentioned PE1, PE2, PE3, and PE4 implement E-tree service simulation through an Internet Protocol (IP) or MPLS network.
  • IP Internet Protocol
  • MPLS MPLS
  • the Leaf tag needs to be added during the process of encapsulating the data message in the BUM packet, that is The split horizon attribute that carries the corresponding link is the leaf attribute.
  • the Leaf tag needs to be added during the process of encapsulating the data message in the BUM packet, that is The split horizon attribute that carries the corresponding link is the leaf attribute.
  • Leaf1 also has the ESI attribute because the link also belongs to ESI-2; it is stipulated in this application that The Leaf label and the ESI label occupy the same position in the data packet, so they have a mutually exclusive relationship; at this time, it is stipulated that the Leaf label should be encapsulated.
  • the node at the receiving end can query the context information in the VNI label entry to determine whether the corresponding position in the data packet encapsulates the Leaf label or the ESI label.
  • the context information of the VNI tag entry records whether the data packet is a Leaf tag or an ESI tag.
  • the context information of the VNI tag entry also records the attribution ESI tag; That is, the label type of the data packet and the attribute and attribution of the corresponding link can be obtained.
  • FIG. 9 is a flowchart of a message encapsulation method according to an embodiment of the present invention.
  • the data sending method is applied to the first node. As shown in FIG. 9, the method is Including the following steps.
  • S202 Determine the split horizon attribute of the first AC, where the split horizon attribute of the first AC includes at least one of the following: leaf attributes, root attributes, and ESI attributes.
  • S204 Encapsulate the data message sent through the first AC to obtain a data packet, and send the data packet to the second node, where the data packet carries the split horizon attribute of the first AC.
  • the method in this embodiment since in the process of encapsulating the data message sent through the first AC, the encapsulated data packet carries the split horizon attribute of the first AC determined by the first node, and the first AC’s
  • the split horizon attributes include at least one of the following: leaf attributes, root attributes, and ESI attributes. Therefore, the method in this embodiment can solve the problem that the NVO3 technology cannot realize the simulation of the E-Tree service in the related technology, so as to realize the simulation of the E-Tree service in the NVO3 technology.
  • the format of the data packet includes one of the following: Geneve, VXLAN-GPE.
  • step S204 when the format of the data packet is Geneve, the data packet includes Geneve Header, and Geneve Header is used to carry the split horizon attribute of the first AC.
  • the Geneve Header includes a variable length option, the variable length option is extended with a Geneve option data type, and the Geneve option data type is used to carry the split horizon attribute of the first AC.
  • the Geneve Header is extended with a Protocol Type field, and the value of the Protocol Type field is the first E-tree specified value; the value of the Protocol Type field is the first E-tree specified value to indicate:
  • the inner payload of the data packet includes the data packet, and the split horizon attribute of the first AC is the leaf attribute.
  • step S204 when the format of the data packet is VXLAN-GPE, the data packet includes a VXLAN-GPE Header, and the VXLAN-GPE Header is used to carry the split horizon attribute of the first AC.
  • the VXLAN-GPE Header is extended with a Next Protocol field, and the value of the Next Protocol field is a value specified by the second E-tree.
  • the Geneve option data type is also used to carry ESI tag information, and the ESI tag information is used to identify the ESI to which the first AC belongs.
  • the ESI label information includes one of the following: MPLS label and VNI label.
  • a message decapsulation device is also provided, which is used to implement the above-mentioned embodiments and optional implementation manners, and those that have been explained will not be repeated.
  • the term "module” may implement a combination of software and/or hardware that performs predetermined functions.
  • the devices described in the following embodiments are preferably implemented in software, implementation of hardware or a combination of software and hardware is also possible and conceived.
  • FIG. 10 is a structural block diagram of a device for decapsulating a message according to an embodiment of the present invention. As shown in FIG. 10, the device includes a decapsulating module 302.
  • the decapsulation module 302 is configured to decapsulate the data packet sent by the first node.
  • the data packet is obtained by the first node encapsulating the data packet sent through the first AC, and the data packet carries the split horizon attribute of the first AC determined by the first node, and the split horizon attribute of the first AC includes at least one of the following : Leaf attributes, root attributes, ESI attributes.
  • the device in this embodiment since in the process of decapsulating the data packet sent by the first node, the data packet obtained by the first node encapsulating the data packet sent through the first AC carries the first node
  • the determined split horizon attribute of the first AC includes at least one of the following: leaf attributes, root attributes, and ESI attributes. Therefore, the device in this embodiment can solve the problem that the NVO3 technology cannot realize the simulation of the E-Tree service in the related technology, so as to realize the simulation of the E-Tree service in the NVO3 technology.
  • the format of the data packet includes one of the following: Geneve, VXLAN-GPE.
  • the data packet when the format of the data packet is Geneve, the data packet includes a Geneve Header, and the Geneve Header is used to carry the split horizon attribute of the first AC.
  • the Geneve Header includes a variable length option, the variable length option is extended with a Geneve option data type, and the Geneve option data type is used to carry the split horizon attribute of the first AC.
  • the Geneve Header is extended with a Protocol Type field, and the value of the Protocol Type field is the first E-tree specified value; the value of the Protocol Type field is the first E-tree specified value to indicate:
  • the inner payload of the data packet includes the data packet, and the split horizon attribute of the first AC is the leaf attribute.
  • the decapsulation module 302 when the format of the data packet is VXLAN-GPE, the data packet includes a VXLAN-GPE Header, and the VXLAN-GPE Header is used to carry the split horizon attribute of the first AC.
  • the VXLAN-GPE Header is extended with a Next Protocol field, and the value of the Next Protocol field is a value specified by the second E-tree.
  • the Geneve option data type is also used to carry ESI tag information, and the ESI tag information is used to identify the ESI to which the first AC belongs.
  • the ESI label information includes one of the following: MPLS label and VNI label.
  • the aforementioned decapsulation module 302 after receiving the data packet sent by the first node, it is further configured to obtain the decapsulated data packet, and perform the decapsulation on the decapsulated data packet according to the following objects: Processing: the split horizon attribute of the first AC, and the split horizon attribute of the second AC.
  • the above modules can be implemented by software or hardware, and the latter can be implemented by the following methods, but not limited to this: the above modules are all located in the same processor; or, the above modules can be combined in any combination The forms are located in different processors.
  • a message encapsulation device is also provided, which is used to implement the above-mentioned embodiments and optional implementation manners, and those that have been described will not be repeated.
  • the term "module” may implement a combination of software and/or hardware that performs predetermined functions.
  • the devices described in the following embodiments are preferably implemented in software, implementation of hardware or a combination of software and hardware is also possible and conceived.
  • FIG. 11 is a structural block diagram of a message packaging device according to an embodiment of the present invention. As shown in FIG. 11, the device includes a determining module 402 and an packaging module 404.
  • the determining module 402 is configured to determine the split horizon attribute of the first AC, and the split horizon attribute of the first AC includes at least one of the following: leaf attributes, root attributes, and ESI attributes.
  • the encapsulation module 404 is configured to encapsulate the data message sent through the first AC to obtain a data packet, and send the data packet to the second node, and the data packet carries the split horizon attribute of the first AC.
  • the device in this embodiment since in the process of encapsulating the data message sent through the first AC, the encapsulated data packet carries the split horizon attribute of the first AC determined by the first node, and the first AC’s
  • the split horizon attributes include at least one of the following: leaf attributes, root attributes, and ESI attributes. Therefore, the device in this embodiment can solve the problem that the NVO3 technology cannot realize the simulation of the E-Tree service in the related technology, so as to realize the simulation of the E-Tree service in the NVO3 technology.
  • the format of the data packet includes one of the following: Geneve, VXLAN-GPE.
  • the data packet when the format of the data packet is Geneve, the data packet includes a Geneve Header, and the Geneve Header is used to carry the split horizon attribute of the first AC.
  • the Geneve Header includes a variable length option, the variable length option is extended with a Geneve option data type, and the Geneve option data type is used to carry the split horizon attribute of the first AC.
  • the Geneve Header is extended with a Protocol Type field, and the value of the Protocol Type field is the first E-tree specified value; the value of the Protocol Type field is the first E-tree specified value to indicate:
  • the inner payload of the data packet includes the data packet, and the split horizon attribute of the first AC is the leaf attribute.
  • the data packet when the format of the data packet is VXLAN-GPE, the data packet includes a VXLAN-GPE Header, and the VXLAN-GPE Header is used to carry the split horizon attribute of the first AC.
  • the VXLAN-GPE Header is extended with a Next Protocol field, and the value of the Next Protocol field is a value specified by the second E-tree.
  • the Geneve option data type is also used to carry ESI tag information, and the ESI tag information is used to identify the ESI to which the first AC belongs.
  • the ESI label information includes one of the following: MPLS label and VNI label.
  • the above multiple modules can be implemented by software or hardware. For the latter, it can be implemented in the following way, but not limited to this: the above modules are all located in the same processor; or, the above multiple modules are Any combination of forms are located in different processors.
  • the embodiment of the present application also provides a storage medium in which a computer program is stored, and the computer program is configured to execute the steps in any of the foregoing method embodiments when running.
  • the aforementioned storage medium may be configured to store a computer program for executing the following steps.
  • the data packet is obtained by encapsulating the data packet sent by the first AC by the first node, and the data packet carries the split horizon attribute of the first AC determined by the first node.
  • the split horizon attributes of the first AC include at least one of the following: leaf attributes, root attributes, and ESI attributes.
  • the foregoing storage medium may include, but is not limited to: U disk, ROM, RAM, mobile hard disk, magnetic disk, or optical disk, and other media that can store computer programs.
  • the embodiment of the present application also provides a storage medium in which a computer program is stored, and the computer program is configured to execute the steps in any one of the foregoing method embodiments when running.
  • the aforementioned storage medium may be configured to store a computer program for executing the following steps.
  • the split horizon attribute of the first AC includes at least one of the following: leaf attributes, root attributes, and ESI attributes.
  • S2 Encapsulate the data message sent through the first AC to obtain a data packet, and send the data packet to the second node, where the data packet carries the split horizon attribute of the first AC.
  • the foregoing storage medium may include, but is not limited to: U disk, ROM, RAM, mobile hard disk, magnetic disk, or optical disk, and other media that can store computer programs.
  • An embodiment of the present application further provides an electronic device, including a memory and a processor, where a computer program is stored in the memory, and the processor is configured to run the computer program to perform any of the steps in the above method embodiments.
  • the aforementioned electronic device may further include a transmission device and an input-output device, the transmission device is connected to the aforementioned processor, and the input-output device is connected to the aforementioned processor.
  • the aforementioned processor may be configured to execute the following steps through a computer program.
  • S1 Decapsulate the data packet sent by the first node, and the data packet is obtained by the first node encapsulating the data packet sent through the first AC.
  • the data packet carries the split horizon attribute of the first AC determined by the first node, and the split horizon attribute of the first AC includes at least one of the following: leaf attributes, root attributes, and ESI attributes.
  • An embodiment of the present application further provides an electronic device, including a memory and a processor, where a computer program is stored in the memory, and the processor is configured to run the computer program to perform any of the steps in the above method embodiments.
  • the aforementioned electronic device may further include a transmission device and an input-output device, the transmission device is connected to the aforementioned processor, and the input-output device is connected to the aforementioned processor.
  • the aforementioned processor may be configured to execute the following steps through a computer program.
  • the split horizon attribute of the first AC includes at least one of the following: leaf attributes, root attributes, and ESI attributes.
  • S2 Encapsulate the data message sent through the first AC to obtain a data packet, and send the data packet to the second node, where the data packet carries the split horizon attribute of the first AC.

Abstract

本文提供了一种报文解封装方法及装置、报文封装方法及装置、电子装置和存储介质。该报文解封装方法包括:对第一节点发送的数据包进行解封装,其中,所述数据包由所述第一节点对通过第一接入链路AC发送的数据报文进行封装得到,所述数据包中携带有所述第一节点确定的所述第一AC的水平分割属性,所述第一AC的所述水平分割属性包括以下至少之一:叶子属性、根属性、以太网段标识符ESI属性。

Description

报文解封装方法及装置、报文封装方法及装置、电子装置和存储介质
本申请要求在2019年01月16日提交中国专利局、申请号为201910040672.8的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。
技术领域
本公开涉及通信领域,例如涉及一种报文解封装方法及装置、报文封装方法及装置、电子装置和存储介质。
背景技术
城域以太网论坛(Metro Ethernet Forum,MEF)定义了以太网树(Ethernet Tree,E-Tree)业务,即根多点(rooted multipoint)业务。E-Tree的特点是有一个或者多个根属性用户接入链路(Root Attachment Circuits(ACs))及至少两个叶子属性用户接入链路(Leaf ACs)。在E-Tree业务中,两个根属性之间对应的用户侧接口,以及根属性与叶子属性之间对应的用户侧接口均可相互通信,但两个叶子属性之间对应的用户侧接口无法进行相互通信。目前,三层网络虚拟化(Network Virtualization Over Layer 3,NVO3)技术中制定的数据封装标准为通用网络虚拟化封装(Generic Network Virtualization Encapsulation,Geneve),同时,NVO3技术中制定的信息性质为通用扩展协议可扩展虚拟局域网(Virtual extensible local area Network Generic Protocol Extension,VXLAN-GPE)。
NVO3是一种实现网络虚拟化的技术,通过该技术可以将一个物理网络进行虚拟化,从而实现同一个物理网络可以被不同租户共同使用,并且租户之间的流量能够隔离。NVO3封装头中包含24bits的虚拟网络标识,不同的虚拟网络标识用于标识不同的虚拟网络。目前,NVO3技术中无法实现上述E-Tree业务的仿真处理。
目前,相关技术中,对于NVO3技术无法实现E-Tree业务的仿真的问题,未存在有效的解决方案。
发明内容
本发明实施例提供了一种报文解封装方法及装置、报文封装方法及装置、电子装置和存储介质,以至少解决相关技术中NVO3技术无法实现E-Tree业务的仿真的问题。
根据本申请的一个实施例,提供了一种报文解封装方法,应用于第二节点,所述方法包括:
对第一节点发送的数据包进行解封装;
所述数据包由所述第一节点对通过第一接入链路(Attachment Circuit,AC)发送的数据报文进行封装得到,所述数据包中携带有所述第一节点确定的所述第一AC的水平分割属性,所述第一AC的所述水平分割属性包括以下至少之一:叶子属性、根属性、以太网段标识符(Ethernet Segment Identifer,ESI)属性。
根据本申请的另一个实施例,还提供了一种报文封装方法,应用于第一节点,所述方法包括:
确定第一AC的水平分割属性,所述第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性;
对通过所述第一AC发送的数据报文进行封装以得到数据包,并发送所述数据包至第二节点,所述数据包携带有所述第一AC的水平分割属性。
根据本申请的另一个实施例,还提供了一种报文解封装装置,应用于第二节点,所述装置包括:
解封装模块,设置为对第一节点发送的数据包进行解封装;
所述数据包由所述第一节点对通过第一AC发送的数据报文进行封装得到,所述数据包中携带有所述第一节点确定的所述第一AC的水平分割属性,所述第一AC的所述水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。
根据本申请的另一个实施例,还提供了一种报文封装装置,应用于第一节点,所述装置包括:
确定模块,设置为确定第一AC的水平分割属性,所述第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性;
封装模块,设置为对通过所述第一AC发送的数据报文进行封装以得到数据包,并发送所述数据包至第二节点,所述数据包携带有所述第一AC的水平分割属性。
根据本申请的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程 序以执行上述任一项方法实施例中的步骤。
通过本申请,由于对第一节点发送的数据包进行解封装的过程中,由第一节点对第一接入链路AC发送的数据报文进行封装得到的数据包中携带有第一节点确定的第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。因此,本申请可以解决相关技术中NVO3技术无法实现E-Tree业务的仿真的问题,以达到在NVO3技术中实现E-Tree业务的仿真的效果。
附图说明
图1是根据本发明实施例提供的报文解封装方法的流程图;
图2是根据本发明实施例提供的数据包封装格式中Geneve头部(Header)示意图(一);
图3是根据本发明实施例提供的数据包封装格式中Geneve Header示意图(二);
图4是根据本发明实施例提供的数据包封装格式中Geneve Header示意图(三);
图5是根据本发明实施例提供的数据包封装格式中Geneve Header示意图(四);
图6是根据本发明实施例提供的数据包封装格式中VXLAN-GPE Header示意图;
图7是根据本申请具体实施例提供的E-tree业务的部署场景示意图(一);
图8是根据本申请具体实施例提供的E-tree业务的部署场景示意图(二);
图9是根据本发明实施例提供的报文封装方法的流程图;
图10是根据本发明实施例提供的报文解封装装置的结构框图;
图11是根据本发明实施例提供的报文封装装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
在本实施例中提供了一种报文解封装方法,应用于第二节点,图1是根据本发明实施例提供的报文解封装方法的流程图,如图1所示,该方法包括如下步骤。
S102,对第一节点发送的数据包进行解封装,数据包由第一节点对通过第一AC发送的数据报文进行封装得到,数据包中携带有第一节点确定的第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。
通过本实施例中的方法,由于对第一节点发送的数据包进行解封装的过程中,由第一节点对通过第一AC发送的数据报文进行封装得到的数据包中携带有第一节点确定的第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。因此,本实施例中的方法可以解决相关技术中NVO3技术无法实现E-Tree业务的仿真的问题,以在NVO3技术中实现E-Tree业务的仿真。
需要说明的是,上述步骤S102的执行主体为第二节点。
需要说明的是,上述步骤S102中的第一节点以及第二节点均可以为NVO3应用场景中的设备节点,通常而言,上述NVO3中的设备节点可采用网络虚拟边缘(Network Virtualization Edge,NVE)设备,NVE设备用于供用户的虚拟机通过物理或逻辑的连接接入网络。相应的,上述第一AC即为用户与构成第一节点的NVE设备之间形成的第一AC。用户通过第一AC将数据报文传输至第一节点;第一节点对于上述数据报文进行封装处理,即可得到可用于发送至第二节点的数据包;构成第二节点的NVE设备在接收到上述数据包后即可执行步骤S102中的解封装处理。
同时,上述第一AC的水平分割属性可以包括ESI属性,也可以包括根属性/叶子属性中的任意一个。例如,第一AC的水平分割属性包括:叶子属性;或者,第一AC的水平分割属性包括:根属性;或者,第一AC的水平分割属性包括:叶子属性、ESI属性;或者,第一AC的水平分割属性包括:根属性、ESI属性。
第一AC的水平分割属性包括ESI属性用于指示第一AC归属于某ESI,即当第一AC归属于某ESI时,第一AC的水平分割属性包括ESI属性。反之,如第一AC未归属于任意一个ESI,则第一AC的水平分割数据不包括ESI属性。 第一AC的水平分割属性包括根属性/叶子属性中的任意一个则用于指示第一AC对应的用户侧接口在E-Tree业务中的节点属性。
同时,上述步骤S102中,第一节点确定的第一AC的水平分割属性,即可以由第一节点在接收第一AC发送的数据报文之前对于第一AC的水平分割属性进行确认,也可以由第一AC在发送数据报文至第一节点的过程中主动携带用于指示第一AC的水平分割属性的相关信息,本申请对此不作限定。
需要说明的是,上述第一节点以及第二节点仅用于指示NVO3技术中进行E-tree业务仿真过程中的数据报文的发送方以及数据报文的接收方,相应的,上述第一AC以及可选实施例中的第二AC也仅代表与第一节点以及第二节点相连接的AC,对于第一节点与第二节点,以及第一AC与第二AC的顺序本申请不作限定。
在一可选实施例中,数据包的格式包括以下之一:Geneve、VXLAN-GPE。
需要说明的是,由于Geneve作为NVO3技术中制定的数据封装标准,VXLAN-GPE作为NVO3技术中制定的信息性质,故采用上述两种格式之一进行数据包的封装,即可在NVO3技术中实现E-tree业务的仿真处理。
在一可选实施例中,上述步骤S102中,当数据包的格式为Geneve时,数据包中包括有Geneve Header,Geneve Header用于携带第一AC的水平分割属性。
在一可选实施例中,Geneve Header中包括有可变长度选项,可变长度选项中扩展有Geneve选项数据类型,Geneve选项数据类型用于携带第一AC的水平分割属性。
图2是根据本发明实施例提供的数据包封装格式中Geneve Header示意图(一),如图2所示,采用Geneve格式作为数据包的封装格式的前提下,数据包中包括有Geneve Header,Geneve Header中包括可变长度选项(Variable Length Options),即为图2中所示的Variable Length Options字段。
为说明本可选实施例中可变长度选项的扩展内容,如图2所示的可变长度选项相应区域之中,列举了可变长度选项区域内扩展的Geneve选项数据类型,即在图2中所示的Geneve选项(Option),本可选实施例中也可将该Geneve Option记为标签(Label)选项,即图2中所示的Label Option;本可选实施例中,Label Option用于指示第一AC的水平分割属性,以此即可实现在Geneve选项数据类型中携带第一AC的水平分割属性。
上述Label Option指示第一AC的水平分割属性的方式可以为,通过携带 Label Option以指示第一AC的水平分割属性至少包括叶子属性,即当数据包中Geneve Header的可变长度选项扩展有Label Option时,该数据包可指示第一AC的水平分割属性至少包括叶子属性,且不包括根属性;当数据包中Geneve Header的可变长度选项未扩展有Label Option时,则该数据包可指示第一AC的水平分割属性至少包括根属性,且不包括叶子属性。上述步骤S102中,第二节点通过解封装过程中判断数据包中是否扩展有上述Label Option,即可判断数据包所携带的第一AC的水平分割属性。
上述Label Option在数据包中的可变长度选项中的扩展格式可以有多种,图2给出了一种Label Option的扩展格式。如图2所示,在Label Option中携带有Label标签,在本可选实施例中称为Label值(Value);上述Label Value所采用的标签封装类型则由Label Option中所携带的对应的Label类型(Label type,L-type)进行指示。Label Value的标签封装类型可以为转发标签,也可以为隐式空标签。例如,当Label Value实际采用转发标签进行封装时,则L-type指示该Label Value的标签封装格式为转发标签。需要说明的是,无论上述Label Value是转发标签亦或隐式空标签,均可指示第一AC的水平分割属性包括叶子属性。
同时,上述Label Value为转发标签时,Label Value可以采用多协议标签交换(Multi-Protocol Label Switching,MPLS)标签,也可以采用虚拟网络标识符(Virtual Network Identifier,VNI)标签。上述Label Value为隐式空标签时,隐式空标签作为Label Value的一种形式,在该情况下,Label Value的报文长度为0,即图2中所示的Label Option内的Length的字节长度为0,但该情况下,Geneve Header的可变长度选项中仍扩展有Label Option,此时,Label Value可作为隐式空标签用以指示第一AC的水平分割属性包括叶子属性。
需要说明的是,在本可选实施例中,上述Label Option在数据包中的可变长度选项中的扩展方式包括但不限于图2中所示的方式,本申请对于Label Option在Geneve Header中的扩展格式不作限定。
图3是根据本发明实施例提供的数据包封装格式中Geneve Header示意图(二),如图3所示,采用Geneve格式作为数据包的封装格式的前提下,数据包中包括有Geneve Header,Geneve Header中包括可变长度选项,即为图3中所示的Variable Length Options字段。
为说明本可选实施例中可变长度选项的扩展内容,如图3所示的可变长度选项区域之中,列举了可变长度选项区域内扩展的Geneve选项数据类型,即在 图3中所示的Geneve Option,本可选实施例中也可将该Geneve Option记为Labels选项,即图3中所示的标签栈选项(Label Stack Option);通过该Label Stack Option指示第一AC的水平分割属性,即可实现本可选实施例中的在Geneve选项数据类型中携带第一AC的水平分割属性。
上述Label Stack Option指示第一AC的水平分割属性的方式可以为,通过携带Label Stack Option以指示第一AC的水平分割属性至少包括叶子属性,即当数据包中Geneve Header的可变长度选项扩展有Label Stack Option时,该数据包可指示第一AC的水平分割属性至少包括叶子属性,且不包括根属性;当数据包中Geneve Header的可变长度选项未扩展有Label Stack Option时,则该数据包可指示第一AC的水平分割属性至少包括根属性,且不包括叶子属性。上述步骤S102中,第二节点通过解封装过程中判断数据包中是否扩展有上述Label Stack Option,即可判断数据包所携带的第一AC的水平分割属性。
上述Label Stack Option在数据包中的可变长度选项中的扩展格式可以有多种,图3给出了一种Label Stack Option的扩展格式。区别于上述图2中Label Option中携带有单个Label Value,如图3所示,Label Stack Option中携带有1至n个Label Value,即为图3所示的Label-1Value至Label-n Value;每一个Label Value均对应有一个用于指示该Label Value的标签封装类型的L-type。上述Label-1Value至Label-n Value中的任意Label Value对应的标签封装类型与图2中所示的Label Value相同,故在此不再赘述。
需要说明的是,上述Label-1Value至Label-n Value共同构成了一个标签栈,该标签栈中,存在至少一个Label Value用于指示第一AC的水平分割属性至少包括叶子属性,以令Label Stack Option可实现指示第一AC的水平分割属性至少包括叶子属性,进而使得Geneve选项数据类型可携带第一AC的水平分割属性。除此之外,其余的Label Value还可用于指示第一AC的水平分割属性是否包括其它的属性,例如,ESI属性。
图4是根据本发明实施例提供的数据包封装格式中Geneve Header示意图(三),如图4所示,图4采用了与图3中所示的Geneve Header类似的封装及扩展方式,即在Geneve Header的可变长度选项区域内扩展Geneve选项数据类型,即图4中所示的Geneve Option,本可选实施例中也可将该Geneve Option记为Labels选项,即图4中所示的Label Stack Option;通过该Label Stack Option指示第一AC的水平分割属性,即可实现本可选实施例中的在Geneve选项数据 类型中携带第一AC的水平分割属性。此外,图4中所示的Label Stack Option内的格式与图3相同,故在此不再赘述。
区别于图3所示的Geneve Header,图4所示的Geneve Header删除Geneve Header中的VNI字段,并将该VNI字段移动至Label Stack Option中进行定义。一实施例中可以为,将上述VNI字段移动至Label Stack Option,以通过Label Stack Option中的Label-1Value至Label-n Value中的任意一个Label Value以指示VNI字段的含义,本可选实施例中,可选以Label-1Value至Label-n Value中的第一个Label Value,即Label-1Value指示VNI字段的含义。需要说明的是,以Label-1Value指示VNI字段的含义的前提下,Label-2Value至Label-n Value中仍存在至少一个Label Value用于指示第一AC的水平分割属性至少包括叶子属性。
需要说明的是,上述通过Label-1Value指示VNI字段的含义可以为,通过Label-1Value以指示通过第一AC发送数据报文的对应用户的标识。
此外,上述数据报文在封装过程中扩展Label选项格式时,封装的数据包中可携带有多个Label选项以形成标签栈。需要说明的是,该标签栈中的Label选项是MPLS标签还是VNI标签均由对应的L-type进行指示;对于每一个Label选项均对于该Label选项中的VNI标签或MPLS标签设置一个单独的S标志位,该S标志位用于指示该标签位于Label选项的栈底。
在一可选实施例中,Geneve Header中扩展协议类型(Protocol Type)字段,Protocol Type字段的取值为第一E-tree指定值;Protocol Type字段的取值为第一E-tree指定值用于指示:数据包的内层载荷中包括数据报文,且用于发送数据报文的第一AC的水平分割属性为叶子属性。
需要说明的是,本可选实施例中采用了相较于图2至图4中不同的Geneve Header扩展方式,即在Geneve Header中扩展有Protocol Type字段,通过对于上述Protocol Type字段的赋值以实现在Geneve Header中携带第一AC的水平分割属性。
图5是根据本发明实施例提供的数据包封装格式中Geneve Header示意图(四),如图5所示,采用Geneve格式作为数据包的封装格式的前提下,数据包中包括有Geneve Header,上述Geneve Header中包括Protocol Type字段,即为图5中所示的Protocol Type字段。
需要说明的是,Protocol Type字段在Geneve Header中用于指示Geneve中 封装的数据报文所采用协议的类型,Protocol Type字段的设置可通过赋予其不同的取值,例如0X6558,以实现Geneve Header在不同场景的应用。在本可选实施例中,将Protocol Type赋值为第一E-tree指定值,第一E-tree指定值为根据E-tree业务仿真需求而预设的一数值。此处,将Protocol Type赋值为第一E-tree指定值存在以下含义。
1)Geneve所采用协议的类型为符合E-tree的协议;该协议下,采用Geneve进行封装后的数据包即可指示数据包的内层载荷中包括数据报文(第一AC发送的数据报文)。
2)发送数据报文的第一AC的水平分割属性为叶子属性,即通过第一E-tree指定值指示第一AC的水平分割属性为叶子属性。
在本可选实施例中,通过上述将Protocol Type赋值为第一E-tree指定值即可指示第一AC的水平分割属性,以实现在Geneve Header中携带第一AC的水平分割属性。一实施例中,当Protocol Type字段的取值为第一E-tree指定值时,第一AC的水平分割属性至少包括叶子属性,且不包括根属性;当Protocol Type字段的取值不满足第一E-tree指定值,或为其它数值时,第一AC的水平分割属性至少包括根属性,且不包括叶子属性。
需要说明的是,将Protocol Type赋值为第一E-tree指定值还可以包含其它含义,本申请对此不做限定,即任意一个至少可表示数据包的内层载荷中包括数据报文,且用于发送数据报文的第一AC的水平分割属性为叶子属性的数值均可作为第一E-tree指定值。
上述第一E-tree指定值指示发送数据报文的第一AC的水平分割属性为叶子属性存在多种方案,本申请对此不做限定。一实施例中,上述方案可采用:当对于第一AC发送的数据报文进行封装时,对于数据包的内层载荷的以太报文采用与标准文件请求评论7796(Request For Comments 7796,RFC7796)中定义的E-tree数据报文的内层以太报文的格式相同的格式,并在数据包的内层载荷的以太报文中携带Leaf VLAN以指示发送数据报文的第一AC的水平分割属性为叶子属性。以此,即可通过上述对于数据包的内层载荷的以太报文的格式设置以指示数据包的内层载荷中包括数据报文,并通过在上述以太报文中携带Leaf VLAN以指示第一AC的水平分割属性为叶子属性。
在一可选实施例中,步骤S102中,当数据包的格式为VXLAN-GPE时,数据包中包括有VXLAN-GPE Header;VXLAN-GPE Header用于携带第一AC的 水平分割属性。
在一可选实施例中,VXLAN-GPE Header中扩展下层协议(Next Protocol)字段,Next Protocol字段的取值为第二E-tree指定值。
图6是根据本发明实施例提供的数据包封装格式中VXLAN-GPE Header示意图,如图6所示,采用VXLAN-GPE格式作为数据包的封装格式的前提下,数据包中包括有VXLAN-GPE Header,上述VXLAN-GPE Header中扩展有Next Protocol字段,即为图6中所示的Next Protocol字段。
需要说明的是,上述Next Protocol(NP)字段可以为《draft-ietf-nvo3-vxlan-gpe》,即互联网工程任务组(Internet Engineering Task Force,IETF)起草制定的NVO3中的信息性质VXLAN-GPE标准,所定义的NP字段。该NP字段用以指示VXLAN-GPE Header中的下层协议,即VXLAN-GPE中被封装的数据报文(第一AC发送的数据报文)的协议类型。一实施例中,可通过对于NP字段的赋值以实现上述数据报文的协议类型的指示,例如,如果数据报文采用协议为IPv4协议,则可将NP字段设置为0x800用以指示。
上述NP字段的取值为第二E-tree指定值,即通过将NP字段赋值为第二E-tree指定值,以指示数据包的内层载荷中包括数据报文,且用于发送数据报文的第一AC的水平分割属性为叶子属性。第二E-tree指定值为根据上述设定而定义的数值,即第二E-tree指定值至少可以用于指示NP字段的含义包括:数据包的内层载荷中包括数据报文,且用于发送数据报文的第一AC的水平分割属性为叶子属性。
由于NP字段的取值设置为第二E-tree指定值即可指示第一AC的水平分割属性为叶子属性,故可实现本可选实施例中的通过VXLAN-GPE Header携带第一AC的水平分割属性,即当NP字段的取值为第二E-tree指定值时,第一AC的水平分割属性至少包括叶子属性,且不包括根属性;当NP字段的取值不满足第二E-tree指定值,或为其它数值时,第一AC的水平分割属性至少包括根属性,且不包括叶子属性。
需要说明的是,将NP字段赋值为第二E-tree指定值还可以包含其它含义,本申请对此不做限定,即任意一个至少可表示数据包的内层载荷中包括数据报文,且用于发送数据报文的第一AC的水平分割属性为叶子属性的数值均可作为第二E-tree指定值。
需要说明的是,上述第一E-tree指定值与第二E-tree指定值均为人为设置或定义的数值,第一E-tree指定值与第二E-tree指定值之间不存在顺序关系。此外,本可选实施例中也可以通过对于Protocol Type字段或NP字段预设用以指示第一AC的水平分割属性为根属性的相应数值。
在一可选实施例中,当第一AC的水平分割属性包括ESI属性与根属性时,Geneve选项数据类型还用于携带ESI标签信息。ESI标签信息用于标识第一AC所归属的ESI。
ESI标签信息包括以下之一:MPLS标签、VNI标签。
需要说明的是,第一AC的水平分割属性为ESI属性以及根属性用于指示第一AC的水平分割属性对应为E-tree业务中的根属性,且第一AC归属于某一ESI(即本可选实施例中第一AC所归属的ESI),该情况下,第一AC的水平分割属性具有ESI属性,同时,第一AC的水平分割属性还可以为叶子属性或根属性(本可选实施例中的第一AC的水平分割属性为根属性)。用于标识上述第一AC所归属的ESI的ESI标签信息可以为MPLS标签或VNI标签。
在一可选实施例中,对第一节点发送的数据包进行解封装处理之后,包括:获取解封装后的数据报文,并根据以下对象对解封装后的数据报文进行处理:第一AC的水平分割属性、第二AC的水平分割属性。
需要说明的是,根据E-tree业务的规则,根属性与根属性对应的接入链路之间,以及叶子属性与根属性之间对应的接入链路可实现相互通信,而叶子属性与叶子属性对应的接入链路之间则无法进行通信。基于此,第二节点根据数据包中携带的第一AC的水平分割属性,以及第二节点自身连接的第二AC的水平分割属性之间的比较即可确定对于上述数据包所需执行的动作,可以包括转发至第二AC,以及指示丢弃处理。上述执行动作的过程如下。
当第二节点所连接的第二AC的水平分割属性为根属性时,无论第一AC的水平分割属性为根属性或叶子属性,第二节点均可对于解封装后的数据报文执行转发处理;当第二AC的水平分割属性为叶子属性时,则仅在第一AC的水平分割属性为根属性时,第二节点需将解封装后的数据报文转发至第二AC,而在第一AC的水平分割属性为叶子属性时,第二节点需将数据报文丢弃。
为说明本实施例中的数据接收方法中对于数据的封装处理,以下通过具体实施例的方式对于本实施例进行数据接收过程中数据的封装进行说明。
具体实施例1
图7是根据本申请具体实施例提供的E-tree业务的部署场景示意图(一),如图7所示的E-tree业务的部署场景中,包括NVE1节点、NVE2节点、NVE3节点。NVE1节点连接有第一租户(Tenant System1)以及第二租户(Tenant System2),且NVE1与Tenant System1之间的接入链路的水平分割属性为根属性,NVE1与Tenant System2之间的接入链路的水平分割属性为叶子属性;NVE2节点连接有第四租户(Tenant System4)以及第五租户(Tenant System5),且NVE2与Tenant System4之间的接入链路的水平分割属性为根属性,NVE2与Tenant System5之间的接入链路的水平分割属性为叶子属性;以及,NVE3节点连接有第三租户(Tenant System3),且NVE3与Tenant System3之间的接入链路为叶子属性。
NVE1节点接受租户发送的数据报文,以Tenant System2为例,NVE1节点接受Tenant System2发送的数据报文,并将其封装为支持E-tree服务的Geneve数据包。由于Tenant System2对应的接入链路为叶子属性,故在Geneve数据包的Geneve Header中扩展有Label Option或Label Stack Option,用以指示对应的接入链路的水平分割属性为叶子属性。需要说明的是,Geneve数据包的封装格式可采用本申请中图2至图5中任意一种封装格式进行封装处理。NVE1完成封装后将封装后的数据包发送至NVE3。
NVE3收到上述数据包后即执行解封装操作,并在解封装过程中获取上述数据包对应的接入链路的水平分割属性为叶子属性。由于NVE3对应的Tenant System3的接入链路同为叶子属性,故NVE3在该情况下需对于上述数据包执行丢弃处理,而不会将数据包转发到Tenant System 3。
当NVE1或NVE2向NVE3发送的数据包对应的接入链路为根属性时,NVE3接收上述数据包即可执行转发操作。该过程类似于上述数据报文的封装以及解封装,故在此不再赘述。
具体实施例2
图8是根据本申请具体实施例提供的E-tree业务的部署场景示意图(二),如图8所示的E-tree业务的部署场景中,包括构成NVO3网络节点的骨干网边缘(Provider Edge,PE)设备,包括PE1、PE2、PE3以及PE4。PE1连接有第二用户站点Site2,Site2由路由器GER实现网络接入,PE1与Site2之间接入链路Leaf3的水平分割属性为叶子属性;同时,PE1与PE2还共同连接有服务器(Server),且PE1以及PE2与上述Server之间构成的接入链路根(Root)1与 Root2的水平分割属性均为根属性;PE3连接有第三用户站点Site3,Site3由路由器GER实现网络接入,PE3与Site3之间接入链路Leaf4的水平分割属性为叶子属性;此外,PE3与PE4共同连接有第一用户站点Site1,Site1由路由器GER实现网络接入,PE3与Site1之间接入链路Leaf1的水平分割属性为叶子属性,PE4与Site1之间接入链路的水平分割属性Leaf2为叶子属性。
需要说明的是,由于Server通过多条链路同时接入至PE1与PE2,故上述Server与PE1以及PE2之间的链路构成一个以太网段(Ethernet Segment,ES),本具体实施例中通过ESI-1来标识该ES,即Root1与Root2归属于ESI-1。同样的,由于Site1通过多条链路同时接入至PE3与PE4,故上述Site1与PE3以及PE4之间的链路构成一个ES,本具体实施例中通过ESI-2来标识该ES,即Leaf1与Leaf2归属于ESI-2。
本具体实施例中,上述PE1、PE2、PE3以及PE4之间通过互联网协议(Internet Protocol,IP)或MPLS网络实现E-tree业务的仿真。
在本具体实施例的E-tree业务的部署场景中,以转发从Leaf3、Root1和Leaf1收到的广播、未知的单播、多播业务(Broadcast,Unknown Unicast,Multicast,BUM)包为例,说明E-tree在NVO3封装中的具体实现方案。
当PE1在接收Leaf3发送的BUM包(该BUM包由对应的用户站点发送至Leaf3)时,根据本申请的记载,需在对BUM包内的数据报文进行封装的过程中添加Leaf标签,即携带对应链路的水平分割属性为叶子属性。
当PE1在接收Root1发送的BUM包(该BUM包由对应的用户站点发送至Root1)时,根据本申请的记载,需在对BUM包内的数据报文进行封装,但无需进行Leaf或Root标签的添加,即可指示对应链路的水平分割属性为根属性。需要说明的是,上述PE1在接收Root1所发送的BUM包时,Root1除具有根属性外,由于该链路还归属于ESI-1,故该Root1还具有ESI属性;因此,需在封装的过程中添加ESI标签,以指示Root1归属于ESI-1。
当PE3在接收Leaf1发送的BUM包(该BUM包由对应的用户站点发送至Leaf1)时,根据本申请的记载,需在对BUM包内的数据报文进行封装的过程中添加Leaf标签,即携带对应链路的水平分割属性为叶子属性。需要说明的是,上述PE3在接收Leaf1所发送的BUM包时,该Leaf1除具有叶子属性外,由于该链路还归属于ESI-2,故Leaf1还具有ESI属性;在本申请中规定,由于Leaf标签和ESI标签在数据包中所占据的是同一位置,故其两者存在互斥关系;此 时,规定应对于Leaf标签进行封装。
此外,接收端的节点在接收到上述数据包时,可通过查询VNI标签表项中的上下文信息以确定数据包中对应位置封装的是Leaf标签还是ESI标签。一实施例中,VNI标签表项的上下文信息中记载有数据包中封装的是Leaf标签还是ESI标签,对于ESI标签,上述VNI标签表项的上下文信息中还记载有归属的ESI标签;以此即可对于数据包的标签类型以及对应链路的属性及归属进行获取。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read-Only Memory,ROM)/随机存取存储器(Random Access Memory,RAM)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请每个实施例所述的方法。
实施例2
在本实施例中提供了一种报文封装方法,图9是根据本发明实施例提供的报文封装方法的流程图,该数据发送方法应用于第一节点,如图9所示,该方法包括如下步骤。
S202,确定第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。
S204,对通过第一AC发送的数据报文进行封装以得到数据包,并发送数据包至第二节点,数据包携带有第一AC的水平分割属性。
通过本实施例中的方法,由于对通过第一AC发送的数据报文进行封装的过程中,封装得到的数据包中携带有第一节点确定的第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。因此,本实施例中的方法可以解决相关技术中NVO3技术无法实现E-Tree业务的仿真的问题,以在NVO3技术中实现E-Tree业务的仿真。
需要说明的是,上述步骤S202以及S204的执行主体为第一节点。
在一可选实施例中,数据包的格式包括以下之一:Geneve,VXLAN-GPE。
在一可选实施例中,上述步骤S204中,当数据包的格式为Geneve时,数 据包中包括有Geneve Header,Geneve Header用于携带第一AC的水平分割属性。
在一可选实施例中,Geneve Header中包括有可变长度选项,可变长度选项中扩展有Geneve选项数据类型,Geneve选项数据类型用于携带第一AC的水平分割属性。
在一可选实施例中,Geneve Header中扩展有Protocol Type字段,Protocol Type字段的取值为第一E-tree指定值;Protocol Type字段的取值为第一E-tree指定值用于指示:
数据包的内层载荷中包括数据报文,且第一AC的水平分割属性为叶子属性。
在一可选实施例中,步骤S204中,当数据包的格式为VXLAN-GPE时,数据包中包括有VXLAN-GPE Header,VXLAN-GPE Header用于携带第一AC的水平分割属性。
在一可选实施例中,VXLAN-GPE Header中扩展有Next Protocol字段,Next Protocol字段的取值为第二E-tree指定值。
在一可选实施例中,当第一AC的水平分割属性包括ESI属性与根属性时,Geneve选项数据类型还用于携带ESI标签信息,ESI标签信息用于标识第一AC所归属的ESI。
ESI标签信息包括以下之一:MPLS标签、VNI标签。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请每个实施例所述的方法。
实施例3
在本实施例中还提供了一种报文解封装装置,该装置用于实现上述实施例及可选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图10是根据本发明实施例提供的报文解封装装置的结构框图,如图10所示,该装置包括解封装模块302。
解封装模块302,设置为对第一节点发送的数据包进行解封装。数据包由第一节点对通过第一AC发送的数据报文进行封装得到,数据包中携带有第一节点确定的第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。
通过本实施例中的装置,由于对第一节点发送的数据包进行解封装的过程中,由第一节点对通过第一AC发送的数据报文进行封装得到的数据包中携带有第一节点确定的第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。因此,本实施例中的装置可以解决相关技术中NVO3技术无法实现E-Tree业务的仿真的问题,以在NVO3技术中实现E-Tree业务的仿真。
在一可选实施例中,数据包的格式包括以下之一:Geneve,VXLAN-GPE。
在一可选实施例中,上述解封装模块302中,当数据包的格式为Geneve时,数据包中包括有Geneve Header,Geneve Header用于携带第一AC的水平分割属性。
在一可选实施例中,Geneve Header中包括有可变长度选项,可变长度选项中扩展有Geneve选项数据类型,Geneve选项数据类型用于携带第一AC的水平分割属性。
在一可选实施例中,Geneve Header中扩展有Protocol Type字段,Protocol Type字段的取值为第一E-tree指定值;Protocol Type字段的取值为第一E-tree指定值用于指示:数据包的内层载荷中包括数据报文,且第一AC的水平分割属性为叶子属性。
在一可选实施例中,解封装模块302,当数据包的格式为VXLAN-GPE时,数据包中包括有VXLAN-GPE Header,VXLAN-GPE Header用于携带第一AC的水平分割属性。
在一可选实施例中,VXLAN-GPE Header中扩展有Next Protocol字段,Next Protocol字段的取值为第二E-tree指定值。
在一可选实施例中,当第一AC的水平分割属性包括ESI属性与根属性时,Geneve选项数据类型还用于携带ESI标签信息,ESI标签信息用于标识第一AC所归属的ESI。
ESI标签信息包括以下之一:MPLS标签、VNI标签。
在一可选实施例中,上述解封装模块302中,接收第一节点发送的数据包之后,还设置为获取解封装后的数据报文,并根据以下对象对解封装后的数据报文进行处理:第一AC的水平分割属性、第二AC的水平分割属性。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例4
在本实施例中还提供了一种报文封装装置,该装置用于实现上述实施例及可选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图11是根据本发明实施例提供的报文封装装置的结构框图,如图11所示,该装置包括确定模块402和封装模块404。
确定模块402,设置为确定第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。
封装模块404,设置为对通过第一AC发送的数据报文进行封装以得到数据包,并发送数据包至第二节点,数据包携带有第一AC的水平分割属性。
通过本实施例中的装置,由于对通过第一AC发送的数据报文进行封装的过程中,封装得到的数据包中携带有第一节点确定的第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。因此,本实施例中的装置可以解决相关技术中NVO3技术无法实现E-Tree业务的仿真的问题,以在NVO3技术中实现E-Tree业务的仿真。
在一可选实施例中,数据包的格式包括以下之一:Geneve,VXLAN-GPE。
在一可选实施例中,上述封装模块404中,当数据包的格式为Geneve时,数据包中包括有Geneve Header,Geneve Header用于携带第一AC的水平分割属性。
在一可选实施例中,Geneve Header中包括有可变长度选项,可变长度选项中扩展有Geneve选项数据类型,Geneve选项数据类型用于携带第一AC的水平分割属性。
在一可选实施例中,Geneve Header中扩展有Protocol Type字段,Protocol Type字段的取值为第一E-tree指定值;Protocol Type字段的取值为第一E-tree指定值用于指示:数据包的内层载荷中包括数据报文,且第一AC的水平分割属性为叶子属性。
在一可选实施例中,封装模块404中,当数据包的格式为VXLAN-GPE时,数据包中包括有VXLAN-GPE Header,VXLAN-GPE Header用于携带第一AC的水平分割属性。
在一可选实施例中,VXLAN-GPE Header中扩展有Next Protocol字段,Next Protocol字段的取值为第二E-tree指定值。
在一可选实施例中,当第一AC的水平分割属性包括ESI属性与根属性时,Geneve选项数据类型还用于携带ESI标签信息,ESI标签信息用于标识第一AC所归属的ESI。
ESI标签信息包括以下之一:MPLS标签、VNI标签。
需要说明的是,上述多个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述多个模块以任意组合的形式分别位于不同的处理器中。
实施例5
本申请的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序。
S1,对第一节点发送的数据包进行解封装,数据包由第一节点对第一AC发送的数据报文进行封装得到,数据包中携带有第一节点确定的第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。
本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
在本实施例中,上述存储介质可以包括但不限于:U盘、ROM、RAM、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
实施例6
本申请的实施例还提供了一种存储介质,该存储介质中存储有计算机程序, 该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序。
S1,确定第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。
S2,对通过第一AC发送的数据报文进行封装以得到数据包,并发送数据包至第二节点,数据包携带有第一AC的水平分割属性。
在本实施例中,上述存储介质可以包括但不限于:U盘、ROM、RAM、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
实施例7
本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
一实施例中,上述电子装置还可以包括传输设备以及输入输出设备,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤。
S1,对第一节点发送的数据包进行解封装,数据包由第一节点对通过第一AC发送的数据报文进行封装得到。
数据包中携带有第一节点确定的第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。
本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
实施例8
本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
一实施例中,上述电子装置还可以包括传输设备以及输入输出设备,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤。
S1,确定第一AC的水平分割属性,第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、ESI属性。
S2,对通过第一AC发送的数据报文进行封装以得到数据包,并发送数据包至第二节点,数据包携带有第一AC的水平分割属性。
本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的多个模块或多个步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,一实施例中,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成多个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。

Claims (21)

  1. 一种报文解封装方法,应用于第二节点,包括:
    对第一节点发送的数据包进行解封装;
    其中,所述数据包由所述第一节点对通过第一接入链路AC发送的数据报文进行封装得到,所述数据包中携带有所述第一节点确定的所述第一AC的水平分割属性,所述第一AC的所述水平分割属性包括以下至少之一:叶子属性、根属性、以太网段标识符ESI属性。
  2. 根据权利要求1所述的方法,其中,所述数据包的格式包括以下之一:
    通用网络虚拟化封装Geneve、通用扩展协议可扩展虚拟局域网VXLAN-GPE。
  3. 根据权利要求2所述的方法,其中,在所述数据包的格式为所述Geneve的情况下,所述数据包中包括有通用网络虚拟化封装头部Geneve Header,所述Geneve Header用于携带所述第一AC的水平分割属性。
  4. 根据权利要求3所述的方法,其中,所述Geneve Header中包括有可变长度选项,所述可变长度选项中扩展有Geneve选项数据类型,所述Geneve选项数据类型用于携带所述第一AC的水平分割属性。
  5. 根据权利要求3所述的方法,其中,所述Geneve Header中扩展有协议类型Protocol Type字段,所述Protocol Type字段的取值为第一以太网树E-tree指定值,所述Protocol Type字段的取值为第一E-tree指定值用于指示:
    所述数据包的内层载荷中包括所述数据报文,且所述第一AC的水平分割属性为所述叶子属性。
  6. 根据权利要求2所述的方法,其中,在所述数据包的格式为所述VXLAN-GPE的情况下,所述数据包中包括有通用扩展协议可扩展虚拟局域网封装头部VXLAN-GPE Header,所述VXLAN-GPE Header用于携带所述第一AC的水平分割属性。
  7. 根据权利要求6所述的方法,其中,所述VXLAN-GPE Header中扩展有下层协议Next Protocol字段,所述Next Protocol字段的取值为第二E-tree指定值。
  8. 根据权利要求4所述的方法,其中,在所述第一AC的水平分割属性包括所述ESI属性与所述根属性的情况下,所述Geneve选项数据类型还用于携带ESI标签信息,所述ESI标签信息用于标识所述第一AC所归属的ESI;
    所述ESI标签信息包括以下之一:多协议标签交换MPLS标签、虚拟网络标识VNI标签。
  9. 根据权利要求1至8任一项所述的方法,其中,所述对第一节点发送的数据包进行解封装之后,还包括:
    获取解封装后的数据报文,并根据以下对象对所述解封装后的数据报文进行处理:
    所述第一AC的水平分割属性、第二AC的水平分割属性。
  10. 一种报文封装方法,应用于第一节点,包括:
    确定第一接入链路AC的水平分割属性,其中,所述第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、以太网段标识符ESI属性;
    对通过所述第一AC发送的数据报文进行封装以得到数据包,并发送所述数据包至第二节点,其中,所述数据包携带有所述第一AC的水平分割属性。
  11. 根据权利要求10所述的方法,其中,所述数据包的格式包括以下之一:
    通用网络虚拟化封装Geneve、通用扩展协议可扩展虚拟局域网VXLAN-GPE。
  12. 根据权利要求11所述的方法,其中,在所述数据包的格式为所述Geneve的情况下,所述数据包中包括有通用网络虚拟化封装头部Geneve Header,所述Geneve Header用于携带所述第一AC的水平分割属性。
  13. 根据权利要求12所述的方法,其中,所述Geneve Header中包括有可变长度选项,所述可变长度选项中扩展有Geneve选项数据类型,所述Geneve选项数据类型用于携带所述第一AC的水平分割属性。
  14. 根据权利要求12所述的方法,其中,所述Geneve Header中扩展有协议类型Protocol Type字段,所述Protocol Type字段的取值为第一以太网树E-tree指定值,所述Protocol Type字段的取值为第一E-tree指定值用于指示:
    所述数据包的内层载荷中包括所述数据报文,且所述第一AC的水平分割属性为所述叶子属性。
  15. 根据权利要求11所述的方法,其中,在所述数据包的格式为所述VXLAN-GPE的情况下,所述数据包中包括有通用扩展协议可扩展虚拟局域网封装头部VXLAN-GPE Header,所述VXLAN-GPE Header用于携带所述第一AC的水平分割属性。
  16. 根据权利要求15所述的方法,其中,所述VXLAN-GPE Header中扩展有下层协议Next Protocol字段,所述Next Protocol字段的取值为第二E-tree指定值。
  17. 根据权利要求13所述的方法,其中,在所述第一AC的水平分割属性包 括所述ESI属性与所述根属性的情况下,所述Geneve选项数据类型还用于携带ESI标签信息,所述ESI标签信息用于标识所述第一AC所归属的ESI;
    所述ESI标签信息包括以下之一:多协议标签交换MPLS标签、虚拟网络标识VNI标签。
  18. 一种报文解封装装置,应用于第二节点,包括:
    解封装模块,设置为对第一节点发送的数据包进行解封装;
    其中,所述数据包由所述第一节点对通过第一接入链路AC发送的数据报文进行封装得到,所述数据包中携带有所述第一节点确定的所述第一AC的水平分割属性,所述第一AC的所述水平分割属性包括以下至少之一:叶子属性、根属性、以太网段标识符ESI属性。
  19. 一种报文封装装置,应用于第一节点,包括:
    确定模块,设置为确定第一接入链路AC的水平分割属性,其中,所述第一AC的水平分割属性包括以下至少之一:叶子属性、根属性、以太网段标识符ESI属性;
    封装模块,设置为对通过所述第一AC发送的数据报文进行封装以得到数据包,并发送所述数据包至第二节点,其中,所述数据包携带有所述第一AC的水平分割属性。
  20. 一种存储介质,其中,所述存储介质中存储有计算机程序,所述计算机程序被设置为运行时执行所述权利要求1至9中任一项所述的方法,或10至17中任一项所述的方法。
  21. 一种电子装置,包括存储器和处理器,其中,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至9中任一项所述的方法,或10至17中任一项所述的方法。
PCT/CN2020/072458 2019-01-16 2020-01-16 报文解封装方法及装置、报文封装方法及装置、电子装置和存储介质 WO2020147784A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/423,697 US11962673B2 (en) 2019-01-16 2020-01-16 Packet tunneling and decapsulation with split-horizon attributes
EP20741179.4A EP3913865B1 (en) 2019-01-16 2020-01-16 Message decapsulation method and device, message encapsulation method and device, electronic device, and storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910040672.8A CN111447131B (zh) 2019-01-16 2019-01-16 报文解封装方法及装置、报文封装方法及装置
CN201910040672.8 2019-01-16

Publications (1)

Publication Number Publication Date
WO2020147784A1 true WO2020147784A1 (zh) 2020-07-23

Family

ID=71614350

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/072458 WO2020147784A1 (zh) 2019-01-16 2020-01-16 报文解封装方法及装置、报文封装方法及装置、电子装置和存储介质

Country Status (3)

Country Link
EP (1) EP3913865B1 (zh)
CN (1) CN111447131B (zh)
WO (1) WO2020147784A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114363055B (zh) * 2021-12-31 2023-03-31 凌锐蓝信科技(北京)有限公司 数据传输方法、装置、计算机设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140204942A1 (en) * 2001-12-07 2014-07-24 Rockstar Consortium Us Lp Methods of establishing virtual circuits and of providing a virtual private network service through a shared network, and provider edge device for such network
CN105099846A (zh) * 2014-04-30 2015-11-25 华为技术有限公司 传输数据报文的方法和供应商边缘设备
CN107241269A (zh) * 2016-03-29 2017-10-10 丛林网络公司 提供商边缘网络设备及用于网络的方法
CN108259291A (zh) * 2016-12-29 2018-07-06 华为技术有限公司 Vxlan报文处理方法、设备及系统
CN108600109A (zh) * 2018-03-19 2018-09-28 新华三技术有限公司 一种报文转发方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8737399B2 (en) * 2010-01-05 2014-05-27 Futurewei Technologies, Inc. Enhanced hierarchical virtual private local area network service (VPLS) system and method for Ethernet-tree (E-Tree) services
CN102170385B (zh) * 2010-02-27 2014-01-22 华为技术有限公司 一种以太树业务中以太网帧的发送方法和运营商边缘设备
CN102340446B (zh) * 2010-07-20 2015-06-03 华为技术有限公司 VPLS网络中E-tree业务的实现方法及PE设备
US8953590B1 (en) * 2011-03-23 2015-02-10 Juniper Networks, Inc. Layer two virtual private network having control plane address learning supporting multi-homed customer networks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140204942A1 (en) * 2001-12-07 2014-07-24 Rockstar Consortium Us Lp Methods of establishing virtual circuits and of providing a virtual private network service through a shared network, and provider edge device for such network
CN105099846A (zh) * 2014-04-30 2015-11-25 华为技术有限公司 传输数据报文的方法和供应商边缘设备
CN107241269A (zh) * 2016-03-29 2017-10-10 丛林网络公司 提供商边缘网络设备及用于网络的方法
CN108259291A (zh) * 2016-12-29 2018-07-06 华为技术有限公司 Vxlan报文处理方法、设备及系统
CN108600109A (zh) * 2018-03-19 2018-09-28 新华三技术有限公司 一种报文转发方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3913865A4 *

Also Published As

Publication number Publication date
EP3913865A4 (en) 2022-03-02
EP3913865B1 (en) 2024-03-06
CN111447131B (zh) 2022-11-08
US20220094769A1 (en) 2022-03-24
CN111447131A (zh) 2020-07-24
EP3913865A1 (en) 2021-11-24

Similar Documents

Publication Publication Date Title
US11102033B2 (en) Method and apparatus for implementing a flexible virtual local area network
CN109218178B (zh) 一种报文处理方法及网络设备
US20220078114A1 (en) Method and Apparatus for Providing Service for Traffic Flow
US10193707B2 (en) Packet transmission method and apparatus
CN106878065B (zh) 一种分布式聚合系统的配置方法及装置
EP1903723B1 (en) Method and apparatus for transmitting message
US20120307826A1 (en) Medium for storing packet conversion program, packet conversion apparatus and packet conversion method
CN108964940B (zh) 消息发送方法及装置、存储介质
JP5656137B2 (ja) ボーダ・ゲートウェイ・プロトコル・ルートの更新方法およびシステム
WO2014086047A1 (zh) 一种转发报文的方法、装置和数据中心网络
WO2014176740A1 (zh) 流分类器、业务路由触发器、报文处理的方法和系统
JP6722816B2 (ja) パケット転送
WO2021083332A1 (zh) 发送报文的方法、装置及系统
CN106559302A (zh) 单播隧道建立方法、装置和系统
US20150229523A1 (en) Virtual extensible local area network (vxlan) system of automatically configuring multicasting tunnel for segment of virtual extensible local area network according to life cycle of end system and operating method thereof
WO2019128612A1 (zh) 路由协议报文的处理方法及装置
WO2020147784A1 (zh) 报文解封装方法及装置、报文封装方法及装置、电子装置和存储介质
WO2021244356A1 (zh) 数据传输方法及装置
US11962673B2 (en) Packet tunneling and decapsulation with split-horizon attributes
JP5733473B2 (ja) インターワーク装置、方法、及びプログラム
WO2024001701A1 (zh) 数据处理方法、装置及系统
WO2022001666A1 (zh) 建立vxlan隧道的方法及相关设备
WO2022222582A1 (zh) 一种报文处理方法、装置、存储介质及电子装置
CN115460138A (zh) 网络互通方法及装置
CN115460141A (zh) 网络互通方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20741179

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020741179

Country of ref document: EP

Effective date: 20210816