WO2014117739A1 - 路由管理方法及路由方法及网络控制器及路由器 - Google Patents

路由管理方法及路由方法及网络控制器及路由器 Download PDF

Info

Publication number
WO2014117739A1
WO2014117739A1 PCT/CN2014/071742 CN2014071742W WO2014117739A1 WO 2014117739 A1 WO2014117739 A1 WO 2014117739A1 CN 2014071742 W CN2014071742 W CN 2014071742W WO 2014117739 A1 WO2014117739 A1 WO 2014117739A1
Authority
WO
WIPO (PCT)
Prior art keywords
router
information
tunnel
label
message
Prior art date
Application number
PCT/CN2014/071742
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 EP14746165.1A priority Critical patent/EP2945330B1/en
Publication of WO2014117739A1 publication Critical patent/WO2014117739A1/zh
Priority to US14/817,656 priority patent/US9973419B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • 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
    • H04L12/462LAN interconnection over a bridge based backbone
    • 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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/825Involving tunnels, e.g. MPLS

Definitions

  • a Layer 2 Virtual Private Network can make a geographically dispersed local area network (LAN) perform Layer 2 communication through a public network.
  • the public network can It is not limited to a Multi-Protocol Label Switching (MPLS) network, but also other Internet capable of running a labeling protocol.
  • MPLS Multi-Protocol Label Switching
  • the local area network N1 and the local area network N2 in FIG. 1 belong to the L2VPN A, and the L2VPN A includes the local area network N1, the local area network N2, and a public MPLS network connected between N1 and N2.
  • the N1 may be a local area network of the company A in Beijing, and the N2 is Company A is located in another LAN in Shanghai.
  • N1 and N2 can communicate through a public MPLS network.
  • N3 and N4 belong to another L2VPN B and also communicate over a public MPLS network.
  • Layer 2 communication is performed between any two LANs of the L2VPN, packets transmitted between the two LANs are encapsulated in the tunnel when they traverse the public MPLS network.
  • the so-called tunnel is a unidirectional link composed of routers in the public MPLS network.
  • a packet is encapsulated in a public MPLS network and encapsulates two layers of labels: a tunnel label and a network label.
  • the tunnel label is used to identify the tunnel in which the packet is forwarded.
  • the network label is used to identify each LAN of the L2VPN, that is, the packet is sent. The purpose of the LAN.
  • Message forwarding The forwarding is not based on the header information of the original packet, but is forwarded according to the label.
  • the label distribution protocol runs between all neighboring routers in the public MPLS network (between PE1 and P2, and between P2 and PE2 in Figure 1).
  • Label Distribution Protocol called LDP
  • LDP Label Distribution Protocol
  • a label distribution protocol or a Multi-Protocol Extensions for Border Gateway Protocol is run between the router PE1 at the entrance of the tunnel and the router PE2 at the exit of the tunnel, and is used for PE1 and PE2 determines the network label of the future forwarding process and instructs the network label to process the information.
  • MP-BGP Multi-Protocol Extensions for Border Gateway Protocol
  • Each router that passes through the tunnel generates routing control information of each router according to the path information of the tunnel, the label corresponding to the router, and the label processing information corresponding to the label, and is used by each router to process and forward the packet.
  • a label-related protocol needs to be run between routers in the public network to determine the tunnel for packet transmission between any two LANs of the L2 VPN, and the router needs to assign labels to itself, indicate label processing information, and generate routes for the router. Control information, so the computational overhead of routers in the public network is relatively large.
  • a first object of the embodiments of the present invention is to provide a route management method, which can reduce the computational overhead of a router.
  • a second object of the embodiments of the present invention is to provide a routing method, and the computing overhead of the router can be applied by using the technical solution.
  • a third object of the embodiments of the present invention is to provide a network controller, and the technical solution can reduce the computational overhead of the router.
  • a fourth object of the embodiments of the present invention is to provide a router, which can reduce the computational overhead of the router.
  • a fifth object of the embodiments of the present invention is to provide another network controller, which can reduce the computational overhead of the router.
  • a sixth object of the embodiments of the present invention is to provide another router, which can reduce the computational overhead of the router.
  • the present invention provides a route management method, including:
  • the network controller receives a Layer 2 virtual private network creation request, and the Layer 2 virtual private network includes a public network, and at least two local area networks connected through the public network.
  • the network controller determines, according to the routing information of each router in the public network, and the connection information between the local area network and the public network, whether the packets between any two of the local area networks should be transmitted during the public network transmission. Path information of the tunnel;
  • each of the routing control information includes: forwarding, by each of the routers, forwarding information of the packet along each of the tunnels, and each router corresponding to each of the tunnels a label, and each of the routers before the forwarding of the message
  • the processing information of the sign is sent by each of the routers to forward the message according to each of the routing control information.
  • the method further includes:
  • each of the flow tables includes matching item information and instruction item information, and each of the instruction item information respectively corresponds to each of the matching item information;
  • the router After the router receives the packet, the router forwards the packet according to the instruction item information corresponding to the matching item information in the flow table that matches the packet;
  • Each of the routing control information is sent to each of the routers, and specifically, the flow table of each of the routers is sent to each of the routers.
  • the matching item information of each flow table includes any one or any two or more combinations of the following:
  • the tunnel identifier of the tunnel the label value in the packet, the ingress interface identifier of the packet, and the virtual exchange instance value of the layer 2 virtual private network.
  • each instruction item information includes any one or any two or more combinations of the following:
  • Add or delete a Layer 2 header of the packet and insert the corresponding location of the router in the packet.
  • the label is updated, and the label value in the packet is updated to the label corresponding to the router, and the label in the packet is deleted, and the forwarding information of the packet is forwarded.
  • the processing information of the label before forwarding the packet includes:
  • the ingress router is: each edge router located at each of the tunnel entrances, the edge router is a router at the edge of the public network, and each of the network labels corresponds to each of the local area networks, and each of the tunnel labels and Corresponding to each of the tunnels in which the router is located, determining that the processing information of each label of the ingress router before forwarding the packet is: adding a layer header to the front end of the frame structure of the packet And inserting, in the message, the network label corresponding to the local area network of the packet, and the tunnel label corresponding to the tunnel through which the packet should pass, so that the frame structure of the packet is The network label is located at a back end of the tunnel label, and the second layer header is located at a front end of the tunnel label;
  • Each of the relay routers is: any non-edge router in each of the tunnels;
  • the present invention provides a routing method, including:
  • the router receives the packet, and the router is located in the public network, and the packet is: a packet transmitted between any two local area networks connected to the public network in the layer 2 virtual private network;
  • the router compares the information of the packet with the matching item information in the flow table pre-stored by the router, and uses the matching item matching the packet in the flow table as a packet matching item.
  • each of the command item information respectively corresponds to each of the matching item information
  • each of the matching item information of the flow table includes: each feature information that the packet needs to satisfy, the flow table
  • Each of the instruction item information includes: forwarding information of the packet by the router, and processing information of the label by the router before forwarding the packet;
  • the router processes the packet according to the instruction item information corresponding to the packet matching item, and forwards the message.
  • the matching item information of each flow table includes any one or any two or more combinations of the following:
  • the tunnel identifier of the tunnel the label value in the packet, the ingress interface identifier of the packet, and the virtual exchange instance value of the layer 2 virtual private network.
  • each instruction item information includes any one or any two or more combinations of the following:
  • Adding or deleting a Layer 2 header of the packet inserting the label corresponding to the router in the packet, and updating the label value in the packet to the label corresponding to the router, deleting the label
  • the label in the packet forwards the forwarding information of the packet.
  • a network controller includes a routing information acquiring unit, a tunnel management unit, a routing control information management unit, and a first transceiver unit;
  • the routing information acquiring unit is configured to obtain routing information of each router in the public network in advance, and receive a layer 2 virtual private network creation request, and obtain connection information between each local area network of the layer 2 virtual private network and the public network, And outputting routing information of each of the routers and connection information of each of the local area network and the public network to the tunnel management unit, where the layer 2 virtual private network includes a public network, and at least two through the public Network connected LAN;
  • the tunnel management unit is configured to determine, according to the routing information of each router in the public network, and the connection information between the local area network and the public network, the packets between any two of the local area networks are in the public network.
  • the routing control information management unit is configured to: according to the path information of each of the tunnels, determine, by each router, forwarding information of the packet along each of the tunnels, where each of the tunnels passes a router distribution label, and processing information of the label before forwarding the packet, and sending, by the router, each routing control information of each router to the first transceiver unit, where the label is: public
  • the multi-protocol label switching label the routing control information includes: forwarding information of the packet along each of the tunnels, a label corresponding to each of the routers in each tunnel, and each of the routers Processing information of the label before forwarding the packet;
  • the first transceiver unit is configured to separately send each of the routing control information to each of the routers, so that each of the routers forwards the packet according to each of the routing control information.
  • the network controller further includes a flow table management unit,
  • the flow table management unit is connected to the routing control information management unit and the first receiving Between the units,
  • the flow table manager is configured to generate a flow table of each router according to the routing control information of each router input by the routing control information management unit, and transmit the flow table to the first
  • the transceiver unit the flow table of each of the routers includes matching item information and instruction item information, and each of the instruction item information respectively corresponds to each of the matching item information;
  • the first transceiver unit is configured to send a flow table of each of the routers to each of the routers.
  • the routing control information management unit is configured to allocate a label, and each of the routers of each of the tunnels The processing information of the label before the router forwards the packet, specifically for:
  • the ingress router is: each edge router located at each of the tunnel entrances, the edge router is a router at the edge of the public network, and each of the network labels corresponds to each of the local area networks, and each of the tunnel labels and Corresponding to each of the tunnels in which the router is located, determining that the processing information of each label of the ingress router before forwarding the packet is: adding a layer header to the front end of the frame structure of the packet And inserting, in the message, the network label corresponding to the local area network of the packet, and the tunnel label corresponding to the tunnel through which the packet should pass, so that the frame structure of the packet is The network label is located at a back end of the tunnel label, and the second layer header is located at a front end of the tunnel label;
  • Each of the relay routers is: any non-edge router in each of the tunnels; Determining, by the each of the relay routers, the processing information of the label before forwarding the packet, and updating the label value in the packet to: the relay router in the message that the packet should pass The tunnel label corresponding to the tunnel;
  • the present invention provides a router, including: a second transceiver unit, a flow table storage unit, a message comparison unit, and a message processing unit;
  • the second transceiver unit is configured to communicate with the external network, where the communication includes receiving a flow table of the router, and receiving and forwarding a message, where the message is: a Layer 2 virtual private network is respectively connected to the public network. a message transmitted between any two local area networks;
  • the storage unit is configured to store information, where the information includes: a flow table of the router, where each instruction item information corresponds to each of the matching item information, and the flow table is Each of the matching item information includes: each feature information that the packet needs to satisfy, and the instruction item information of the flow table includes: forwarding information of the packet by the router, and the router is forwarding Decoding the processing information of the label before the text;
  • the packet comparison unit is configured to compare the information of the packet with the matching item information in the flow table, and use the matching item matching the packet in the flow table as a packet matching item.
  • the message processing unit processes the message according to the instruction item information corresponding to the message matching item.
  • the present invention provides a network controller, including a routing information acquirer, a tunnel manager, a routing control information manager, and a first transceiver;
  • the routing information acquirer is configured to obtain routing information of each router in the public network in advance, And receiving a layer 2 virtual private network creation request, acquiring connection information between each local area network of the layer 2 virtual private network and the public network, and routing information of each of the routers, and each of the local area network and the public network
  • the connection information is output to the tunnel manager, the layer 2 virtual private network includes a public network, and at least two local area networks connected through the public network;
  • the tunnel manager is configured to be used according to each of the tunnels Determining, by the path information, the forwarding information of each of the routers to forward the packet along each of the tunnels, assigning labels to each of the routers passing through the tunnel, and before each router forwards the packet
  • the processing information of the label, the label is: a public multi-protocol label switching label, and outputting path information of the tunnel to the routing control information manager;
  • the routing control information manager is configured to: according to the path information of each of the tunnels, determine, by each router, forwarding information of the packet along each of the tunnels, where each of the tunnels passes And a router assigning a label, and processing information about the label before forwarding the packet, and sending, by the router, routing control information of each router to the first transceiver, where the label is:
  • the multi-protocol label switching label the routing control information includes: forwarding information of the packet along each of the tunnels, a label corresponding to each of the routers in each tunnel, and each of the routers Processing information of the label before forwarding the packet;
  • the first transceiver is configured to send each of the routing control information to each of the routers, so that each of the routers forwards the packet according to each of the routing control information.
  • the network controller further includes a flow table manager
  • the flow table manager is connected between the routing control information manager and the first transceiver, The flow table manager is configured to generate a flow table of each router according to the routing control information of each router input by the routing control information manager, and transmit the flow table to the first a transceiver, the flow table of each of the routers includes matching item information and instruction item information, and each of the instruction item information respectively corresponds to each of the matching item information;
  • the first transceiver is configured to send a flow table of each of the routers to each of the routers.
  • the routing control information manager is configured to allocate a label, and each of the routers of each of the tunnels The processing information of the label before the router forwards the packet, specifically for:
  • the ingress router is: each edge router located at each of the tunnel entrances, the edge router is a router at the edge of the public network, and each of the network labels corresponds to each of the local area networks, and each of the tunnel labels and Corresponding to each of the tunnels in which the router is located, determining that the processing information of each label of the ingress router before forwarding the packet is: adding a layer header to the front end of the frame structure of the packet And inserting, in the message, the network label corresponding to the local area network of the packet, and the tunnel label corresponding to the tunnel through which the packet should pass, so that the frame structure of the packet is The network label is located at a back end of the tunnel label, and the second layer header is located at a front end of the tunnel label;
  • Each of the relay routers is: any non-edge router in each of the tunnels;
  • the present invention provides a router, including: a second transceiver, a flow table memory, a message comparator, and a message processor;
  • the second transceiver is configured to communicate with an external network, where the communication includes receiving a flow table of the router, and receiving and forwarding a message, where the message is: a Layer 2 virtual private network is respectively connected to the public network. a message transmitted between any two local area networks;
  • the memory is configured to store information, where the information includes: a flow table of the router, where each instruction item information corresponds to each of the matching item information, and each of the flow table
  • the matching item information includes: each feature information that the packet needs to satisfy, and the instruction item information of the flow table includes: the router forwarding forwarding information of the packet, and the router forwarding the ⁇ processing information on the label before the text;
  • the packet comparator is configured to compare the information of the packet with the matching item information in the flow table, and use the matching item matching the packet in the flow table as a packet matching item.
  • the message processor processes the message according to the instruction item information corresponding to the message matching item.
  • centralized management of routers in the public network can be implemented by using a network controller, and routing information of each router of the public network and each of the routers located at the edge of the network in the public network can be obtained.
  • the connection information with any local area network, and determine the path information of the tunnel that the packet should pass between any two local area networks of the L2VPN, and then Determining the routing control information of each router, including the forwarding information of each router along the tunnel, the label assigned by each router, and the processing information of the label, and sending the routing control information of each router to each router for storage.
  • the packet is forwarded according to the routing control information of the router.
  • This process requires a label-related protocol to be run between routers in the public network to determine the tunnel through which the message is transmitted, thereby assigning labels, tag processing information, and routing of the corresponding router to the router itself.
  • Control information the router in the public network in this embodiment does not need to perform the calculation of the label protocol to generate the control information of the router. Therefore, the embodiment reduces the computational overhead of the router in the public network.
  • FIG. 1 is a schematic diagram of a local area network connection between a public multi-protocol label switching network and a layer 2 virtual private network;
  • FIG. 2 is a schematic flowchart of a route management method according to Embodiment 1 of the present invention
  • FIG. 3 is a schematic flowchart of a route management method according to Embodiment 2 and Embodiment 3 of the present invention
  • FIG. 4 is a schematic flowchart of a routing method according to Embodiment 4 of the present invention.
  • FIG. 5 is a schematic structural diagram of a network controller according to Embodiment 5 of the present invention
  • FIG. 6 is a schematic structural diagram of a network controller according to Embodiment 6 of the present invention
  • 7 is a schematic structural diagram of a router according to Embodiment 7 of the present invention
  • FIG. 8 is a schematic structural diagram of a network controller according to Embodiment 8 of the present invention
  • FIG. 9 is a network control according to Embodiment 9 of the present invention
  • FIG. 10 is a schematic structural diagram of a router according to Embodiment 10 of the present invention.
  • this embodiment provides a route management method, where an application scenario may be to transmit data between two local area networks of the same L2VPN that are geographically dispersed through a public network.
  • Step 2001 The network controller receives a Layer 2 virtual private network creation request.
  • the public network may be, but not limited to, a Multi-Protocol Label Switching (MPLS) network, and may also be another Internet capable of running a labeling protocol.
  • the Layer 2 virtual private network to be created includes a public network and at least two local area networks connected through a public network.
  • L2VPN includes several LANs with geographically separated ports, and each The connection information between the local area network and the public network, and the connection information between the local area network and the public network specifically refers to which interface of the local area network is connected to the edge router on the public network, and the interface may be a physical interface or a logical interface.
  • the network controller acts as a management device of the router in the public network, and obtains routing information of each router in advance.
  • Step 2002 The network controller determines, according to the routing information of each router in the public network and the connection information of each local area network and the public network, the path information of the tunnel that the packets between any two local area networks should pass through when transmitting on the public network.
  • the network controller obtains the routing information of each router in the public network in advance, and the routing information of the router records which router the router directly connects to which router. After receiving the Layer 2 virtual private network creation request, the network controller calculates, according to the routing information of each router in the public network and the connection information between the local area network and the public network, that the packets between any two local area networks should be transmitted in the public network.
  • Path information of the tunnel passing through, the path information of the tunnel includes: which routers the message passes through when the packet is transmitted in the tunnel, and which interface of the router.
  • Step 2003 According to the path information of each tunnel, determine forwarding information of each router to forward packets along each tunnel, assign labels to each router passing through each tunnel, and process information of each router before forwarding the label .
  • the routing information of each of the routers to forward the packet along the tunnel is determined according to the path information of each tunnel, where specifically: the network controller determines, according to the path information of each tunnel, each tunnel path. Which interface on the router forwards the packet along the tunnel to the next router.
  • the network controller needs to assign labels and label processing information to each router passing through each tunnel according to the path information of each tunnel of the L2VPN.
  • the processing information of the label includes: inserting a label into the message, or updating Label or delete the label.
  • the label is divided into a network label and a tunnel label, and the network label is used to identify the local area network, and the tunnel label is used to identify the tunnel, in order to meet the basic requirements for forwarding packets between any two local area networks of the L2VPN.
  • Assigning labels to the routers passing through each tunnel, and processing information about the labels before each router forwards the packets, can be performed as follows:
  • a network label and a tunnel label are respectively assigned to each ingress router.
  • Each network label corresponds to each local area network, and each tunnel label corresponds to each tunnel where the router is located.
  • the ingress router is: each edge router located at each tunnel entrance, and the edge router is a router at the edge of the public network.
  • the network controller allocates a network label and a tunnel label to the ingress router PE1 after determining that the tunnel T2 is sent by the N1 to the N2, and sets the label value of the network label.
  • the destination receiving network for identifying the packet that the PE1 receives the N1 is N2.
  • the label value of the tunnel label is 11 for identifying that the PE1 is located in the tunnel T2.
  • the L2VPN C includes three local area networks: N1, ⁇ 2, and ⁇ 5, after determining the tunnel ⁇ 2 in which the N1 sends the message to the ⁇ 2 direction, and the tunnel T1 in which the N1 sends the ⁇ 4 direction to the ⁇ 5 direction, two networks are allocated to the ingress router PE1.
  • the tag and the two tunnel tags, the tag values of the network tag are 201 and 101 respectively, the network tag 201 is used to identify the target receiving network of the message that the PE1 receives the N1 is ⁇ 2, and the network tag 101 is used to identify the local area network ⁇ 5 of the 4 ⁇ message;
  • the label values of the tunnel labels are 11 and 21, respectively, where the tunnel label 11 identifies the tunnel ⁇ 2 and the tunnel label 21 identifies the tunnel ⁇ 1.
  • b. Determine the processing information of each ingress router before forwarding the packet as follows: In the frame of the packet Adding a layer 2 header to the front end of the structure, inserting a network label corresponding to the local area network of the 4 ⁇ text in the 4 ⁇ text, and a tunnel label corresponding to the tunnel through which the message should pass, so that the frame structure of the message is on the network.
  • the label is located at the back end of the tunnel label, and the second layer header is located at the front end of the tunnel label.
  • the network controller confirms that the label processing information of the ingress router is:
  • the ingress router adds a layer 2 header to the header of the frame structure of the packet, and the layer 2 header includes but is not limited to the Ethernet layer 2 header and the peer-to-peer protocol layer 2 header. Used for Layer 2 communication of packets on the public network; the ingress router inserts a tunnel label and a network label behind the Layer 2 header, and the network label is at the back end of the tunnel label.
  • L2VPN A includes LANs N1 and N2
  • the label value of the network label of PE1 in tunnel T2 is 201
  • the label value of tunnel label is 11.
  • the network controller further determines that the processing information of the label of the PE1 is: PE1 receives the packet sent by N1 to N2, and adds an Ethernet Layer 2 header to the front end of the frame structure of the packet, behind the Ethernet Layer 2 header.
  • the tunnel tag 11 and the network tag 201 are inserted, and the network tag 201 is at the rear end of the tunnel tag 11.
  • each tunnel label to each relay router based on the path information of each tunnel.
  • the relay router is any non-edge router in each tunnel, and the tunnel label of the relay router identifies the tunnel where the relay router is located.
  • the network controller allocates a tunnel label corresponding to the tunnel T2 to the relay router P2 after determining that the tunnel T2 sends the packet to the N2, and sets the label value to 12. .
  • the network controller allocates several tunnel labels to it.
  • the tunnel that N2 sends to the N1 tunnel may include the router P2 or the router P2.
  • the network controller needs to allocate the corresponding tunnel label.
  • d. Determine the processing information of the label of each relay router before forwarding the packet, and update the label value in the packet to: The tunnel label corresponding to the tunnel that the relay router should pass through. For example, referring to FIG. 1, if L2VPN A includes local area networks N1 and N2, the label value of the tunnel label allocated by the relay router P2 in the tunnel T2 is 12. After receiving the packet forwarded by PE1, P2 updates the tunnel label 11 in the packet to the tunnel label 12.
  • the information about the label processing of each egress router before forwarding the packet is as follows: Delete the Layer 2 header, tunnel label, and network label in the packet.
  • the egress router PE2 in the tunnel T2 receives the packet forwarded by the P2, and then the Ethernet Layer 2 header, the tunnel label 12, and the network label 201 in the packet. delete.
  • Step 2004 Send each routing control information to each router, so that each router forwards the packet according to each routing control information.
  • the routing control information includes: forwarding information of packets forwarded by each router along each tunnel, labels corresponding to each router in each tunnel, and processing information of labels before each router forwards the packet.
  • the routing management method provided in this embodiment is used in the application scenario of the L2VPN.
  • the network controller pre-fetches the routing information of the public MPLS routers PE1, PE2, PE3, P1, P2, and P3.
  • the routing information of PE1 is: PE1, which interfaces on PE1 are connected to routers P1, P2, and P3. .
  • the network controller receives the request for creating the L2VPN, and obtains the connection information between the LAN of the Layer 2 virtual private network and the edge router in the public MPLS network. It is assumed that the L2VPN A only includes two LANs N1 and N2, and it is assumed that the N1 is connected to the No. 2 interface of the PE1. N2 is connected to port 5 of PE2.
  • the network controller calculates the N1 direction based on the received routing information of each router and the connection information between the Layer 2 virtual private network local area network and the edge router in the public MPLS network.
  • N2 forwards the path information of the tunnel of the 4 ⁇ text, and the path information of the tunnel where N2 forwards 4 ⁇ to N1.
  • the network controller further determines routing control information for each router of each tunnel path.
  • the tunnel T2 is forwarded by N1 to N2.
  • the forwarding information of the edge router PE1 forwarding the packet along the tunnel is: PE1 forwards the packet from the interface to the P2; the forwarding information of the P2 is: P2 forwards the packet from the interface 2 to the PE2. .
  • a network label is assigned to the ingress router PE1, and the label value is 201.
  • the network label 201 identifies that the destination receiving network of the PE1 receiving the N1 4 message is N2.
  • the tunnel label is assigned to the ingress router PE1 and the relay router P2 in the tunnel.
  • the label value of the tunnel label assigned by the PE1 is 11 and the PE1 is in the tunnel T2.
  • the tunnel label value of the tunnel label assigned by P2 is 12.
  • the identifier P2 is located in the tunnel T2.
  • the label processing information corresponding to the ingress router PE1 is determined as follows: A layer 2 header, a network label 201, and a tunnel label 11 are inserted in the message.
  • the label processing information corresponding to the relay router P2 in the tunnel is determined as follows:
  • the tunnel label corresponding to the P2 is the tunnel label 12, and the tunnel label of the packet with the tunnel label 11 received by the P2 is updated to the tunnel label 12.
  • the label processing information corresponding to the egress router PE2 is determined as: deleting the layer 2 header, the network label 201, and deleting the tunnel label 12.
  • the network controller sends the routing control information of each router passing through the tunnel T2 to the corresponding router through the network protocol, so that each router forwards the packet according to the routing control information of the router.
  • the principle of the remaining tunnels is similar to that of T2, and is no longer an example. It can be seen that, by applying the technical solution of the embodiment, centralized management of routers in the public network can be implemented by using a network controller, and routing information of each router of the public network and each of the routers located at the edge of the network in the public network can be obtained.
  • the connection information with any local area network determines the path information of the tunnel that the packet should pass between any two local area networks of the L2VPN, and then determines the routing control information of each router, including the forwarding information of each router to forward the packet along the tunnel.
  • the label assigned by each router and the processing information of the label, and the routing control information of each router is sent to each router for storage, so that each router forwards the packet according to the routing control information of the router.
  • This process requires a label-related protocol to be run between routers in the public network to determine the tunnel through which the message is transmitted, thereby assigning labels, tag processing information, and routing of the corresponding router to the router itself. Control information, the router in the public network in this embodiment does not need to perform the calculation of the label protocol to generate the control information of the router. Therefore, the embodiment reduces the computational overhead of the router in the public network.
  • the embodiment provides a route management method.
  • the application scenario may be that a data packet between two local area networks of the same L2VPN dispersed in two geographical locations is transmitted through a public network.
  • a public network can be, but is not limited to, a public MPLS network, or other Internet capable of running a labeling protocol.
  • Step 3001 The network controller receives a Layer 2 virtual private network creation request.
  • Step 3002 The network controller determines, according to the routing information of each router in the public network and the connection information of each local area network and the public network, the path information of the tunnel that the packets between any two local area networks should pass through when transmitting on the public network.
  • Step 3003 Determine, according to path information of each tunnel, that each router forwards packets along each tunnel.
  • the forwarding information is used to assign labels to the routers passing through each tunnel, and processing information of the labels before the routers forward the texts.
  • steps 3001 to 3003 are the same as the steps 2001 to 2003 provided in the embodiment, and refer to Embodiment 1, and details are not described herein again.
  • Step 3004 Generate a flow table of each router, where each flow table includes matching item information and instruction item information, and each instruction item information respectively corresponds to each matching item information.
  • the routing control information of various forms of routers in the traditional router is uniformly extracted into a flow table (Table). According to the forwarding function of the router, different routers may have different numbers of flow tables.
  • the matching information column includes one or more matching items, each matching item describes a feature of the message, and is used to indicate a matching condition to be satisfied by the packet to be processed by the router;
  • the instruction item information column includes one or more instructions. It is used to indicate that the router performs instruction-related processing on the message that satisfies the matching condition described in the matching information column.
  • the network controller determines the matching of each flow table according to the label of each router in each tunnel and the path information of each tunnel. Item information, according to the forwarding information of the packets forwarded by each router along each tunnel, the labels of each router in each tunnel, and the processing information of the labels before forwarding the packets, each command item information is determined for the router to receive. After the packet is received, the packet is forwarded according to the instruction item information corresponding to the matching information in the flow table that matches the packet.
  • the matching item information of each flow table includes any one of the following or any two or more combinations:
  • the tunnel ID of the tunnel The tunnel ID of the tunnel, the label value in the packet, the ingress interface identifier of the packet, and the virtual exchange instance value of the Layer 2 virtual private network.
  • the matching information in the flow table defines at least the following:
  • VSI The Virtual Switching Institution (VSI) value of the Layer 2 virtual private network is used as the matching condition for the router to process packets.
  • the VSI is used to identify the Layer 2 virtual private network. This can be obtained by mapping the message ingress interface identifier of the ingress router at either tunnel entry, or by mapping the network label of the message at any of the tunnel egress routers. For example, as shown in Figure 1, it is assumed that the L2VPN C includes the local area networks N1, N2, and N5, and the VSI of the L2VPN C is the VI.
  • the Medium Access Control (MAC) address of the packet is used as the matching condition for the router to process the packet.
  • the MAC address corresponds to a network device in a LAN on the L2VPN.
  • Each of the command item information includes any one or any combination of two or more of the following: Add or delete a Layer 2 header of the packet, insert a label corresponding to the router in the packet, and update the label value in the packet to The label corresponding to the router deletes the label in the packet and forwards the forwarding information of the packet.
  • the instruction item information of the flow table defines:
  • the Layer 2 header of the packet is added or deleted, and is used to add/delete a Layer 2 header to the front end of the header of the frame structure, adding or deleting a packet matching the matching condition described in the flow table matching information.
  • the Layer 2 header can be, but is not limited to, an Ethernet Layer 2 header, a Point-to-Point Protocol Layer 2 header, etc., for example, when adding an Ethernet header, the instruction corresponds to APPLY_ACTIONS ⁇ ADD ETH HDR ⁇ , and the Ethernet header is deleted. In the case of the Ministry, the instruction corresponds to APPLY_ACTIONS ⁇ DEL ETH HDR ⁇ ;
  • APPLY_ACTIONS ⁇ OUTPUT0 ⁇ Forwards the forwarding information of the message, which is used to forward the packet that meets the matching condition described by the flow table matching information from an interface of the router.
  • the instruction information of the flow table is APPLY_ACTIONS.
  • ⁇ OUTPUT(5) ⁇ means that the router forwards the packet from interface 5;
  • APPLY ACTIONS ⁇ PUSH_MPLS( ) ⁇ Insert a label corresponding to the router in the message, and insert a label after the header of the message that satisfies the matching condition described in the flow table matching information.
  • the instruction information of the flow table is APPLY_ACTIONS ⁇ PUSH- MPLS (201) ⁇ indicates that the router inserts a label with a label value of 201 after the packet header;
  • the instruction information of the flow table is
  • the instruction information of the flow table also defines an instruction of GOTO_TABLE0, which is used to implement the jump of the flow table.
  • GOTO_TABLE0 an instruction used to implement the jump of the flow table.
  • a router contains Table 0 and Table 5.
  • the instruction information in Table 0 contains GOTO_TABLE(5), it means that the router jumps from Table 0 to execute Table 5.
  • the instruction information of the flow table also defines an instruction to write metadata (WRITE_METADATA) for transferring data between the pipeline tables.
  • the router includes flow table 1 and flow table 3.
  • the instruction item information of the flow table 1 includes WRITE METADATA (S 1 ) and GOTO_TABLE (3)
  • the flow table 3 can use the data S1 as the matching item information in the flow table 3.
  • the value of a matching condition is also defined.
  • the flow table also defines many other matching items and instruction items, and the limitations herein cannot be enumerated.
  • L2VPN A includes two local area networks N1 and N2. If the second layer virtual private network only has two local area networks, the second layer virtual private network is generally referred to as a virtual leased line (Virtual Leased Line). , the barrel is called VLL). Assume that N1 is connected to port 2 of PE1, and N2 is connected to port 5 of PE2. The path information of the tunnel in which the N1 forwards the packet to the N2 direction is as follows: The interface No. 1 of the PE1 reaches P2, and the port 2 of the P2 arrives at the PE2.
  • the label value of the network label assigned to the edge router PE1 passing through the tunnel is 201, and the tunnel label of PE1
  • the value of the label is 11 and the label processing information is: Add Ethernet Layer 2 header, insert tunnel label 11, insert network label 201; P2 tunnel label has a label value of 12, and tunnel label processing information is updated label, P2
  • the packet with the tunnel label is 11 and the label value of the tunnel label of the packet is updated to 12; PE2 deletes the Ethernet Layer 2 header, tunnel label, and network label.
  • the flow table of each generated router may be as shown in Table 2 below:
  • L2VPN C includes three local area networks, Nl, N2, and N5. If the LAN of a Layer 2 virtual private network is greater than or equal to 3, the Layer 2 virtual private network is called virtual dedicated. LAN (Virtual Private LAN Services, VPLS) » Set this The VSI value of the Layer 2 virtual private network is VI.
  • VPLS Virtual Private LAN Services
  • the VSI value of the Layer 2 virtual private network is VI.
  • the flow table in the direction of forwarding from N1 to N2 4 is used, and the flow table of the router in other directions can be analogized.
  • the tunnel assignment of N1 to the N2 packet forwarding direction and the label corresponding to the router passing through the tunnel are the same as those given in Table 2 above.
  • the flow table of each generated router is shown in Table 3 below:
  • PE1 IN PORT 2 WRITE_METADATA(V 1 )
  • PE1 VSI VI APPLY ACTIONS ⁇ ADD ETH HDR
  • PE1 TUNNEL ID APPLY_ACTIONS ⁇ PUSH MPLS(ll), ...
  • PE2 IN LABEL APPLY_ACTIONS ⁇ POP MPLS, ... ⁇
  • PE2 IN LABEL APPLY ACTIONS ⁇ POP MPLS, DEL ETH HDR ⁇ Table 7 201 WRITE_METADATA(V 1 )
  • Step 3005 Send a flow table of each router to each router separately.
  • the network controller sends a flow table of each router to each router, so that each router can forward the packet according to the flow table.
  • the router's routing control information is abstracted into flow table information, which facilitates centralized management of router control information. It can be easily extended to enable routers to provide more functions and meet different packet forwarding requirements.
  • the embodiment provides a route management method.
  • the application scenario may be that a data packet between two local area networks of the same L2VPN dispersed in two geographical locations is transmitted through a public network.
  • a public network can be, but is not limited to, a public MPLS network, or other Internet capable of running a labeling protocol.
  • Step 3001 The network controller receives a Layer 2 virtual private network creation request.
  • the L2VPN includes a public network and at least two local area networks connected to the public network.
  • the L2VPN parameters include: L2VPN includes several LANs with geographically isolated ports, and connection information between LANs and public networks. The connection information between each LAN and the public network is specific. Means these LANs Which interface is connected to a router on the edge of the public network, which can be a physical interface or a logical interface.
  • L2VPN C include three LANs that are geographically isolated from each other: Nl, N2, and N5.
  • the network controller needs to obtain the connection information between Nl, N2, and N5 and the public MPLS network.
  • the parameters provided here include: the local area network N1 is connected to the interface 2 of the edge router PE1 of the public MPLS network; the local area network N2 is connected to the interface 5 of the edge router PE2; the local area network N5 is connected to the number 3 of the edge router PE3. On the interface.
  • the network controller acts as a management device for the routers in the public network, and the network controller obtains the routing information of each router in advance.
  • the routing information of each router in the public network records which router is connected to each interface of each router.
  • the routing information of the router PE1 includes: PE1's interface No. 3 is connected to PI, PE1's No. 1 interface is connected to P2, PE1's No. 4 interface is connected to router P3, and so on.
  • Step 3002 The network controller determines, according to the routing information of each router in the public network and the connection information of each local area network and the public network, the path information of the tunnel that the packets between any two local area networks should pass through when transmitting on the public network.
  • the network controller calculates the path information of the tunnel that any two local area networks should pass through when transmitting the public network according to the routing information of each router in the public network and the connection information between the local area network and the public network.
  • the path information of the tunnel includes: which routers the message passes through when transmitting in the tunnel, and which interface through the router.
  • L2VPN C includes three local area networks N1, N2, and N5. There are six directions for forwarding packets between LANs: N1 forwards the packet direction to N2, N2 forwards N ⁇ to N1, N1 forwards to N5, N5 forwards N1 to N1, N2 The direction of 4 ⁇ is forwarded to N5, and the direction of 4 ⁇ is forwarded by N5 to N2.
  • the network controller needs to calculate the path information of the tunnel that should be routed when the six packets are forwarded according to the connection information of the LAN and the public network of the L2VPN C and the routing information of each router in the public network.
  • the direction of forwarding packets from N1 to N2 and the forwarding direction of N1 to N5 are as follows:
  • the path information of the tunnel T2 that forwards the packet from N1 to N2 is: PE1, interface 1 of PE1 arrives at P2, and interface 2 of P2 arrives at PE2.
  • the path information of the T1 tunnel that forwards the packet to the N5 is: PE1, the interface of the outbound interface of PE1 reaches Pl, and the interface of the outbound PI reaches the PE3.
  • Step 3003 Determine, according to the path information of each tunnel, forwarding information of packets forwarded by each router along each tunnel, assign labels to each router passing through each tunnel, and process information of each router before forwarding the label .
  • Determining, according to the path information of each tunnel, forwarding information of the packet along the tunnel where the network controller determines, according to path information of each tunnel, each router of each tunnel path passes through the router. Which interface forwards the message along the tunnel to the next router.
  • the network controller also needs to allocate labels and label processing information to each router passing through each tunnel according to the path information of each tunnel of the L2VPN.
  • L2VPN C includes three local area networks N1, N2, and N5.
  • the network controller calculates path information of six tunnels. The network controller needs to determine, according to the path information of each tunnel, the router that each tunnel passes through: the forwarding information, the label, and the label processing information of the packet that the router forwards along the tunnel.
  • the path information of the tunnel T2 in which the N1 forwards the packet to the N2 is: PE1, the interface of the outbound interface of PE1 reaches P2, and the interface of the second interface of P2 arrives at PE2;
  • the network controller determines that the forwarding information of the packet forwarded by the PE1 along the tunnel T2 is: PE1 forwards the packet from the interface to the P2; the forwarding information of the packet forwarded by the P2 along the tunnel T2 is: P2 forwards the packet from the interface 2 Give PE2;
  • the network controller assigns labels to the routers passing through the tunnel T2, and the processing information of the labels:
  • the network label 201 and the tunnel label 11 are assigned to the PE1.
  • the network label 201 identifies the local area network N2, that is, the target local area network to which the message is sent is N2;
  • the tunnel label 11 identifies that the PE1 is in the tunnel T2;
  • the label processing information assigned to PE1 is: Add an Ethernet Layer 2 header to the front end of the frame structure of the frame, insert the network label 201 and the tunnel label 11 into the message, so that the frame in the message Structurally, the network label 201 is located at the back end of the tunnel label 11, and the Ethernet layer 2 header is located at the front end of the tunnel label 11;
  • the label assigned to ⁇ 2 is the tunnel label 12.
  • the tunnel label 12 is used to identify that ⁇ 2 is in the tunnel ⁇ 2;
  • the label processing information assigned to ⁇ 2 is: The tunnel label of the packet is updated to the tunnel label 12; the label processing information assigned to ⁇ 2 is: Delete tunnel label 12, network label 201, and Ethernet layer 2 header.
  • tunnels can be referred to the tunnel ⁇ 2 analogy, and will not be described here.
  • Step 3004 Generate a flow table of each router, where each flow table includes matching item information and instruction item information, and each instruction item information respectively corresponds to each matching item information.
  • the network controller generates a flow table of each router according to the routing control information of the routers passing through the tunnels.
  • the routing control information of the router includes: forwarding information of the router forwarding the packet along the tunnel, a label corresponding to the router in each tunnel, and processing information of the label before the router forwards the packet.
  • the concept and format of the flow table are the same as those in the second embodiment, and are not described here.
  • the tunnel T2 of L2VPN C is used as an example.
  • the case of other tunnels can be analogized.
  • the route control information determined by the network controller for PE1 is:
  • PE1 forwards the packet to P2 from interface 1, and assigns network label 201 and tunnel label 11 to PE1.
  • the network label 201 identifies the local area network N2, that is, the target local area network to which the message is sent is N2; the tunnel label 11 identifies that the PE1 is in the tunnel T2; and the label processing information assigned to the PE1 is:
  • An Ethernet Layer 2 header is added to the front end, and a network label 201 and a tunnel label 11 are inserted in the message, so that the network label 201 is located at the back end of the tunnel label 11 and the Ethernet layer 2 header is located in the frame structure of the message.
  • the corresponding flow table when the router PE1 forwards the packet in the tunnel T2 is the table 4:
  • Table 4 The corresponding flow table when the PE1 forwards the packet in the tunnel T2
  • the routing control information determined by the network controller for P2 is:
  • P2 forwards the packet to PE2 from interface 2;
  • the label assigned to P2 is tunnel label 12.
  • the tunnel label 12 is used to identify that the P2 is in the tunnel T2;
  • the label processing information allocated to the P2 is: the tunnel label of the packet is updated to the tunnel label 12;
  • the corresponding flow table when the router PE1 forwards the packet in the tunnel T2 is Table 5: Table 5: The corresponding flow table when the router P2 forwards the packet in the tunnel T2
  • the routing control information determined by the network controller for PE2 is:
  • the label processing information assigned to PE2 is: Delete tunnel label 12, network label 201, and Ethernet Layer 2 header.
  • PE2 serves as the tunnel egress router and needs to forward packets from the interface 5 of PE2 to the destination network N2.
  • Step 3005 Send a flow table of each router to each router separately.
  • the network controller sends a flow table of each router to each router, so that each router can forward the packet according to the flow table.
  • each router stores a flow table for forwarding packets received in the future.
  • centralized management of routers in the public network can be implemented by using a network controller, and routing information of each router of the public network and each of the routers located at the edge of the network in the public network can be obtained.
  • the connection information with any local area network determines the path information of the tunnel that the packet should pass between any two local area networks of the L2VPN, and then determines the routing control information of each router, including the forwarding information of each router to forward the packet along the tunnel.
  • the label assigned by each router and the processing information of the label, and the routing control information of each router is sent to each router for storage, so that each router forwards the packet according to the routing control information of the router.
  • This process requires a label-related protocol to be run between routers in the public network to determine the tunnel through which the message is transmitted, thereby assigning labels, tag processing information, and routing of the corresponding router to the router itself.
  • Control information the router in the public network in this embodiment does not need to perform the calculation of the label protocol to generate the control information of the router. Therefore, the embodiment reduces the computational overhead of the router in the public network.
  • the routing control information of the router is uniformly abstracted into the flow table information, which facilitates centralized management of the router control information, and can be easily extended, so that the router provides more functions and meets the requirements of different packet forwarding. .
  • this embodiment provides a routing method, and an application scenario may be through a public
  • the network transmits data packets between two LANs of the same L2VPN dispersed in two geographical locations.
  • the public network can be, but is not limited to, a public MPLS network, or other Internet capable of running a labeling protocol.
  • Step 4001 The router receives the message.
  • the router in this embodiment refers to a router in a public network, and the packet received by the router is a packet transmitted between any two local area networks connected to the public network in the layer 2 virtual private network.
  • Step 4002 The router compares the information of the packet with the matching information in the flow table pre-stored by the router, and uses a matching item matching the packet in the flow table as a packet matching item.
  • each flow table pre-stored by the router and each instruction item information respectively correspond to each matching item information.
  • the matching information of the flow table includes: each feature information that the packet needs to satisfy, and the matching information of the flow table includes any one or any two or more combinations of the following:
  • the tunnel ID of the tunnel The tunnel ID of the tunnel, the tag value in the message, the entry interface identifier of the message, and the virtual exchange instance value of the Layer 2 virtual private network.
  • the information of each instruction item of the flow table includes: forwarding information of the packet forwarded by the router, and processing information of the label before the router forwards the packet.
  • Each of the command item information includes any one or any combination of two or more of the following: Add or delete a Layer 2 header of the packet, insert a label corresponding to the router in the packet, and set a label value in the packet. Update to the label corresponding to the router, delete the label in the packet, and forward the forwarding information of the packet.
  • the routers in the public network pre-store different flow tables.
  • the packet information is compared with the matching information of the flow table. If the characteristics of the packets match the matching information, one of the flow tables is corresponding.
  • the matching item is used as a matching item, and the router will execute the corresponding instruction operation corresponding to the instruction item information corresponding to the matching item.
  • Step 4003 The router processes the packet and forwards the packet according to the instruction item information corresponding to the packet matching item.
  • the network controller uses the topology diagram of the public multi-protocol label switching network provided in Figure 1 and the LAN connection of the Layer 2 virtual private network to illustrate the routing method in the L2VPN application scenario.
  • L2VPN A is a VLL, which includes two LANs N1 and N2, and N1 is connected to the No. 2 interface of PE1, and N2 is connected to the No. 5 interface of PE2.
  • the path information of the tunnel T2 in which the N1 forwards the packet direction to the N2 determined by the network controller is as follows: The interface No. 1 of the PE1 reaches the P2, and the port 2 of the P2 reaches the PE2.
  • the flow table determined by the network controllers for each router passing through the tunnel T2 is shown in Table 2.
  • the router PE1 receives the packet.
  • the packet received by PE1 may come from the N1 network or from the N3 network. Obviously, the packet from the N3 network does not belong to the VLL in this example.
  • PE1 executes APPLY ACTIONS (PUSH_MPLS(201) ⁇ to insert the network label 201 after the Ethernet Layer 2 header of the message; PE1 executes APPLY_ACTIONS ⁇ WRITE_ METADATA(T2) ⁇ for passing the parameter ⁇ 2 to the next One flow table is used by Table 5; PE1 is executed APPLY—ACTIONS ⁇ GOTO—TABLE(5) ⁇ , used to jump to execute Table 5; PEl continues to execute the instruction in the instruction item information of Table 5, PE1 executes APPLY_ACTIONS ⁇ PUSH— MPLS(ll) ⁇ , in the message After the Ethernet Layer 2 header is inserted into a tunnel label 11, the network label 201 is located behind the tunnel label 11; PE1 executes APPLY_ACTIONS ⁇ OUTPUT(l) ⁇ to forward the message from the router's interface 1 to the router P2.
  • this embodiment provides a network controller 5000, which includes a routing information acquiring unit 5001, a tunnel management unit 5002, a routing control information management unit 5003, and a first receiving unit 5004.
  • the routing information obtaining unit 5001 is in communication with the tunnel management unit 5002, configured to acquire routing information of each router in the public network in advance, and obtain connection information between the local area network and the public network of the layer 2 virtual private network, and acquire the public information.
  • the routing information of each router in the network and the connection information between the local area network and the public network of the Layer 2 virtual private network are transmitted to the tunnel management list.
  • the Layer 2 virtual private network includes a public network and at least two local area networks connected through the public network.
  • the routing information of the router and the connection information of each local area network and the public network are the same as those in the description in Embodiment 1, and are no longer Narration.
  • the tunnel management unit 5002 is in communication with the routing control information management unit 5003, and is configured to determine, according to the routing information of each of the routers transmitted by the routing information acquiring unit 5001, and the connection information between the local area network and the public network of the layer 2 virtual private network.
  • the routing control information management unit 5003 determines, according to the routing information of each of the routers transmitted by the routing information acquiring unit 5001, and the connection information between the local area network and the public network of the layer 2 virtual private network.
  • the routing control information management unit 5003 is configured to determine, according to the path information of each tunnel, forwarding information of each router forwarding packets along each tunnel, assigning labels to each router passing through each tunnel, and labeling the labels before each router forwards the packet. Processing information, and transmitting routing control information of each router to the first transceiver unit 5004. For the working principle of the unit, refer to step 2003 in Embodiment 1.
  • the label is: a public multi-protocol label switching label
  • the routing control information includes: forwarding information of packets forwarded by each router along each tunnel, labels corresponding to each router in each tunnel, and processing of labels by each router before forwarding packets information.
  • the first transceiver unit 5004 is in communication with the routing control information management unit 5003, and is configured to receive routing control information of each router sent by the routing control information management unit 5003, and send each routing control information to each router through a network protocol, for each The router controls according to each route Information forwarding message, the working principle of the unit corresponds to step 2004 in Embodiment 1.
  • the network controller 5000 provided in this embodiment, the routing control information management unit 5003, is configured to allocate labels for each router passing through each tunnel, and processing information of the labels before the routers forward the packets, specifically for :
  • the ingress routers are: the edge routers located at the entrances of the tunnels, and the edge routers are routers at the edge of the public network.
  • Each network label corresponds to each local area network, and each tunnel label corresponds to each tunnel where the router is located.
  • the processing information of the label of each ingress router before forwarding the packet is as follows: a layer 2 header is added to the front end of the frame structure of the packet, and a network label corresponding to the local area network of the 4 ⁇ text is inserted into the 4 ⁇ text, and the packet is received.
  • each tunnel label is assigned to each relay router, and each of the relay routers is: any non-edge router in each tunnel;
  • the processing information of each egress router on the label before forwarding the packet is: Delete the layer 2 header, the tunnel label, and the network label in the text.
  • a network controller provided in this embodiment implements the route management method provided in Embodiment 1. It can be seen that, by using the technical solution of the embodiment, the network controller can be used to implement centralized management of routers in the public network, and obtain routing information of each router of the public network and each of the routers located at the edge of the network in the public network. Connection information with any LAN, Determine the path information of the tunnel that the packet should pass between any two local area networks of the L2VPN, and then determine the routing control information of each router, including the forwarding information of each router to forward packets along the tunnel, the labels assigned by each router, and the labels. The information is processed, and the routing control information of each router is sent to each router for storage, so that each router forwards the packet according to the routing control information of the router.
  • This process requires a label-related protocol to be run between routers in the public network to determine the tunnel through which the message is transmitted, thereby assigning labels, tag processing information, and routing of the corresponding router to the router itself.
  • Control information the router in the public network in this embodiment does not need to perform the calculation of the label protocol to generate the control information of the router. Therefore, the embodiment reduces the computational overhead of the router in the public network.
  • this embodiment provides a network controller 6000, which includes a routing information obtaining unit 6001, a tunnel management unit 6002, a routing control information management unit 6003, a flow table management unit 6004, and a first transceiver unit 6005.
  • the working principle of each part is as follows:
  • the routing information obtaining unit 6001 is in communication with the tunnel management unit 6002, configured to acquire routing information of each router in the public network in advance, and obtain connection information between each local area network and the public network of the layer 2 virtual private network, and acquire the public information.
  • the routing information of each router in the network and the connection information of the local area network and the public network of the layer 2 virtual private network are transmitted to the tunnel management unit 6002.
  • the tunnel management unit 6002. For details of the working principle of the unit, refer to step 3001 in Embodiment 2, where the public network may but not Limited to public MPLS networks.
  • the Layer 2 virtual private network includes a public network and at least two local area networks connected through the public network.
  • the routing information of the router and the connection information of each local area network and the public network are the same as those in the description in Embodiment 1, and are no longer Narration.
  • the tunnel management unit 6002 is in communication with the routing control information management unit 6003, and is configured to be used for rooting. According to the routing information of each of the routers transmitted by the routing information acquiring unit 6001 and the connection information between the local area network and the public network of the layer 2 virtual private network, determining that the packet is transmitted during the public network between any two of the local area networks The path information of the tunnel to be passed, and the path information of each tunnel are sent to the routing control information management unit 6003.
  • the routing control information management unit 6003 For the detailed working principle of the unit, refer to step 3002 in Embodiment 2.
  • the description of the path information of the tunnel refer to the description in Embodiment 1, and details are not described herein again.
  • the routing control information management unit 6003 is in communication with the flow table management unit 6004, and is configured to determine, according to the path information of each tunnel, forwarding information of each router forwarding packets along each tunnel, assigning labels to each router passing through each tunnel, and each The router processes the label processing information before forwarding the packet, and sends each routing control information of each router to the flow table management unit 6004.
  • the working principle of the unit can be seen in step 3003 in the second embodiment.
  • the label is: a public multi-protocol label switching label
  • the routing control information includes: forwarding information of each router forwarding packets along each tunnel, labels corresponding to each router in each tunnel, and each router before forwarding the packet The processing information of the tag.
  • the flow table management unit 6004 is connected between the routing control information management unit 6003 and the first transceiver unit 6005.
  • the flow table management unit 6004 is configured to generate a flow of each router according to the routing control information of each router input by the routing control information management unit 6003.
  • the table is transmitted to the first transceiver unit 6005.
  • For the working principle of the unit refer to step 3004 in Embodiment 2 and the related description of the flow table.
  • the flow table of each router includes matching item information and instruction item information, and each instruction item information respectively corresponds to each matching item information.
  • the first transceiver unit 6005 is in communication with the flow table management unit 6004, and is configured to receive a flow table of each router sent by the flow table management unit 6004, and send each route to each router through a network protocol.
  • the flow table of the device is used for each router to forward the message according to the flow table of each router.
  • the working principle of the unit corresponds to step 3005 in the second embodiment.
  • a network controller 6000 is provided in this embodiment, and the routing control information management unit 6003 is configured to allocate labels for each router passing through each tunnel, and processing information of the labels before forwarding the packets by the routers, specifically for :
  • the ingress routers are: the edge routers located at the entrances of the tunnels, and the edge routers are routers at the edge of the public network.
  • Each network label corresponds to each local area network, and each tunnel label corresponds to each tunnel where the router is located.
  • the processing information of the label of each ingress router before forwarding the packet is as follows: a layer 2 header is added to the front end of the frame structure of the packet, and a network label corresponding to the local area network of the 4 ⁇ text is inserted into the 4 ⁇ text, and the packet is received.
  • each tunnel label is assigned to each relay router, and each of the relay routers is: any non-edge router in each tunnel;
  • the processing information of each egress router on the label before forwarding the packet is: Delete the layer 2 header, the tunnel label, and the network label in the text.
  • the network controller provided in this embodiment implements the flow of a route management method provided in Embodiment 2.
  • the present embodiment has the following Benefit effect:
  • the router's routing control information is abstracted into flow table information, which facilitates centralized management of routing control information. It can be easily extended to enable routers to provide more functions to meet different packet forwarding requirements.
  • this embodiment provides a router 7000, including: a second transceiver unit 7001, a flow table storage unit 7002, a message comparison unit 7003, and a message processing unit 7004.
  • the second transceiver unit 7001 is configured to communicate with the outside, and includes: receiving a flow table of the router sent by an external device, such as a network controller, and receiving and forwarding the message.
  • the second transceiver unit 7001 is in communication with the flow table storage unit 7002, and transmits the received stream table to the flow table storage unit 7002.
  • the flow table storage unit 7002 is configured to store information, and the stored information includes: a flow table of the router.
  • the matching item information and the instruction item information are included, and each instruction item information is respectively corresponding to each matching item information, and each matching item information of the flow table includes: each characteristic information that the packet needs to satisfy, the flow table
  • the information of each instruction item includes: forwarding information of the packet forwarded by the router, and processing information of the label before the router forwards the message.
  • the second transceiver unit 7001 is in communication with the message comparison unit 7003, and is configured to receive a message transmitted between the two local area networks in the public network, and transmit the message to the message comparison unit 7003.
  • the message comparison unit 7003 is further configured to be in communication with the flow table storage unit 7002 and the message processing unit 7004, respectively, for comparing according to the message received by the second transceiver unit 7001 and the flow table in the pre-stored flow table storage unit 7002.
  • the information of the message and the matching item information in the flow table are used as a matching match for the matching item in the flow table.
  • the message processing unit 7004 is respectively associated with the flow table storage unit 7002 and the second transceiver unit 7001.
  • the communication connection is configured to process the message transmitted by the message comparison unit 7003 according to the instruction item information corresponding to the message matching item, and send the processed message to the second transceiver unit 7001.
  • the router provided in this embodiment implements the flow of a routing method provided in Embodiment 3. The specific process will not be described again.
  • the router in the public network forwards the packet from the local area network, the router does not need to run the label-related protocol, but processes the packet according to the pre-stored flow table of the router. Forward. This embodiment reduces the computational overhead of routers in the public network.
  • the embodiment provides a network controller 8000, including a routing information acquirer 8001, a tunnel manager 8002, a route control information manager 8003, and a first transceiver 8004.
  • the routing information acquirer 8001 is connected to the tunnel manager 8002, configured to pre-acquire routing information of each router in the public network, and obtain connection information between each local area network and the public network of the second-layer virtual private network, and acquire the obtained public network.
  • the routing information of each router and the connection information of the local area network and the public network of the layer 2 virtual private network are transmitted to the tunnel manager 8002.
  • the public network may be but not limited to It is a public MPLS network.
  • the Layer 2 virtual private network includes a public network and at least two local area networks connected through the public network.
  • the routing information of the router and the connection information of each local area network and the public network are the same as those in the description in Embodiment 1. Narration.
  • the tunnel manager 8002 is connected to the routing control information manager 8003, and is configured to determine the report according to the routing information of each router transmitted by the routing information acquirer 8001 and the connection information between the local area network and the public network of the layer 2 virtual private network.
  • the path information of the tunnel that should pass through the public network transmission between any two of the local area networks, and the path information of each tunnel It is sent to the routing control information manager 8003; for the detailed working principle of the device, refer to step 2002 in the embodiment 1.
  • the routing control information manager 8003 for the detailed working principle of the device, refer to step 2002 in the embodiment 1.
  • the path information of the tunnel refer to the description in Embodiment 1, and details are not described herein again.
  • the routing control information manager 8003 is configured to determine, according to the path information of each tunnel, forwarding information of each router forwarding packets along each tunnel, assigning labels to each router passing through each tunnel, and labeling the labels before each router forwards the packet.
  • the information is processed, and routing control information for each router is sent to the first transceiver 8004. For the operation of the device, refer to step 2003 in Embodiment 1.
  • the label is: a public multi-protocol label switching label
  • the routing control information includes: forwarding information of packets forwarded by each router along each tunnel, labels corresponding to each router in each tunnel, and processing of labels by each router before forwarding packets information.
  • the first transceiver 8004 is connected to the routing control information manager 8003, and is configured to receive routing control information of each router sent by the routing control information manager 8003, and send each routing control information to each router through a network protocol, for each router.
  • the device works according to each routing control information, and the working principle of the device corresponds to step 2004 in Embodiment 1.
  • the network controller 8000 is provided in this embodiment, and the routing control information manager 8003 is configured to allocate labels for each router passing through each tunnel, and processing information of the labels before the routers forward the packets, specifically for :
  • the ingress routers are: the edge routers located at the entrances of the tunnels, and the edge routers are the routers at the edge of the public network.
  • Each network label corresponds to each local area network
  • each tunnel label corresponds to each tunnel where the router is located.
  • the processing information of the label of each ingress router before forwarding the packet is as follows: a layer 2 header is added to the front end of the frame structure of the packet, and a network label corresponding to the local area network of the 4 ⁇ text is inserted into the 4 ⁇ text, and the packet is received.
  • each tunnel label is assigned to each relay router, and each of the relay routers is: any non-edge router in each tunnel;
  • the processing information of each egress router on the label before forwarding the packet is: Delete the layer 2 header, the tunnel label, and the network label in the text.
  • a network controller provided in this embodiment implements the route management method provided in Embodiment 1. It can be seen that, by using the technical solution of the embodiment, the network controller can be used to implement centralized management of routers in the public network, and obtain routing information of each router of the public network and each of the routers located at the edge of the network in the public network.
  • the connection information with any local area network determines the path information of the tunnel that the packet should pass between any two local area networks of the L2VPN, and then determines the routing control information of each router, including the forwarding information of each router along the tunnel.
  • the label assigned by each router and the processing information of the label, and the routing control information of each router is sent to each router for storage, so that each router forwards the packet according to the routing control information of the router.
  • the embodiment provides a network controller 9000, including a routing information acquirer 9001, a tunnel manager 9002, a routing control information manager 9003, a flow table manager 9004, and a first transceiver 9005.
  • the working principle of each part is as follows:
  • the routing information acquirer 9001 is connected to the tunnel manager 9002, configured to pre-acquire routing information of each router in the public network, and obtain connection information between each local area network and the public network of the second-layer virtual private network, and acquire the obtained public network.
  • the routing information of each router and the connection information of the local area network and the public network of the layer 2 virtual private network are transmitted to the tunnel manager 9002.
  • the public network may be but not limited to It is a public MPLS network.
  • the Layer 2 virtual private network includes a public network and at least two local area networks connected through the public network.
  • the routing information of the router and the connection information of each local area network and the public network are the same as those in the description in Embodiment 1. Narration.
  • the tunnel manager 9002 is connected to the routing control information manager 9003, and is configured to determine the report according to the routing information of each of the routers transmitted by the routing information acquirer 9001 and the connection information between the local area network and the public network of the layer 2 virtual private network.
  • the routing control information manager 9003 determines the report according to the routing information of each of the routers transmitted by the routing information acquirer 9001 and the connection information between the local area network and the public network of the layer 2 virtual private network.
  • the path information of the tunnel to be passed, and the path information of each tunnel are sent to the routing control information manager 9003.
  • Step 3 in step 1 For the description of the path information of the tunnel, refer to the description in Embodiment 1, and no further details are provided here.
  • the routing control information manager 9003 is connected to the flow table manager 9004, and is configured to determine, according to the path information of each tunnel, forwarding information of each router forwarding packets along each tunnel, assigning labels to each router passing through each tunnel, and each router.
  • the processing information of the tag before forwarding the message, and the routing control information of each router are sent to the flow table manager 9004.
  • the label is: a public multi-protocol label switching label
  • the routing control information includes: forwarding information of each router forwarding packets along each tunnel, labels corresponding to each router in each tunnel, and each router before forwarding the packet The processing information of the tag.
  • the flow table manager 9004 is connected between the routing control information manager 9003 and the first transceiver 9005.
  • the flow table manager 9004 is configured to generate a flow of each router according to the routing control information of each router input by the routing control information manager 9003.
  • the table is transmitted to the first transceiver 9005.
  • step 3004 in Embodiment 2 and the related description of the flow table For the operation of the device, refer to step 3004 in Embodiment 2 and the related description of the flow table.
  • the flow table of each router includes matching item information and instruction item information, and each instruction item information respectively corresponds to each matching item information.
  • the first transceiver 9005 is connected to the flow table manager 9004, and is configured to receive a flow table of each router sent by the flow table manager 9004, and send a flow table of each router to each router through a network protocol, so that each router is configured according to each router.
  • the flow table forwards the message, and the working principle of the device corresponds to step 3005 in Embodiment 2.
  • a network controller 9000 is provided in this embodiment, and the routing control information manager 9003 is configured to allocate labels for each router passing through each tunnel and processing information of the labels before forwarding the packets, specifically for :
  • the ingress routers are: the edge routers located at the entrances of the tunnels, and the edge routers are routers at the edge of the public network.
  • Each network label corresponds to each local area network, and each tunnel label corresponds to each tunnel where the router is located.
  • the front end of the header is added with a layer 2 header, and the network label corresponding to the local area network of the 4 ⁇ text and the tunnel label corresponding to the tunnel through which the message should pass are inserted in the 4 ⁇ text, so that the network label is located on the frame structure of the message.
  • the back end of the tunnel label, the second layer header is located at the front end of the tunnel label;
  • each tunnel label is assigned to each relay router, and each of the relay routers is: any non-edge router in each tunnel;
  • the processing information of each egress router on the label before forwarding the packet is: Delete the layer 2 header, the tunnel label, and the network label in the text.
  • the network controller provided in this embodiment implements the flow of a route management method provided in Embodiment 1.
  • the router's routing control information is abstracted into flow table information, which facilitates centralized management of routing control information. It can be easily extended to enable routers to provide more functions to meet different packet forwarding requirements.
  • the embodiment provides a router 1 0000, including: a second transceiver 1 0001, a flow table memory 1 0002, a message comparator 1 0003, and a message processor 1 0004.
  • the second transceiver 1 0001 is configured to communicate with the external device, and includes: receiving a flow table of the router sent by an external device, such as a network controller, and receiving and forwarding the message.
  • the second transceiver 1 0001 is in communication with the flow table memory 1 0002, and sends the received flow table to the flow table memory 1 0002.
  • the flow table memory 1 0002 is used for storing information, and the stored information includes: a flow table of the router.
  • the matching item information and the instruction item information are included, and each instruction item information is respectively corresponding to each matching item information, and each matching item information of the flow table includes: each characteristic information that the packet needs to satisfy, the flow table
  • the information of each instruction item includes: forwarding information of the packet forwarded by the router, and processing information of the label before the router forwards the message.
  • the second transceiver 1 0001 is connected to the message comparator 1 0003 for receiving a message transmitted between the two local area networks in the public network, and transmitting the message to the message comparator 1 0003.
  • the message comparator 1 0003 is also connected to the flow table memory 1 0002 and the message processor 1 0004 respectively, for receiving the message according to the second transceiver 1 0001 and the flow table in the pre-stored flow table memory 1 0002 Comparing the information of the packet with the matching information in the flow table, and matching a match in the flow table with the packet as a match.
  • the message processor 1 0004 is respectively connected to the flow table memory 1 0002 and the second transceiver 1 0001, and is configured to process the message transmitted by the message comparator 1 0003 according to the instruction item information corresponding to the message matching item, and The processed message is sent to the second transceiver 1 0001.
  • the router provided in this embodiment implements the flow of a routing method provided in Embodiment 3. The specific process will not be described again.
  • the router in the public network forwards the packet from the local area network, the router does not need to run the label-related protocol, but processes the packet according to the pre-stored flow table of the router. Forward. This embodiment reduces the computational overhead of routers in the public network.
  • the device embodiments described above are merely illustrative, and the described as separate components may or may not be physical units, ie may be located in one place or may be distributed over multiple network elements. Some or all of the modules can be selected according to actual needs. The purpose of the solution of this embodiment. Those of ordinary skill in the art can understand and implement without deliberate labor.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及通信领域,公开了一种路由管理方法及路由方法及网络控制器及路由器。路由管理方法包括网络控制器接收二层虚拟专用网创建请求,网络控制器根据公共网络中各路由器的路由信息、以及各局域网与公共网络的连接信息,确定任意两局域网之间的报文在公共网络传输时应途经的隧道的路径信息;根据各隧道的所述路径信息,确定各路由器沿各所述隧道转发报文的转发信息,为各隧道途经的各路由器分配标签、以及各路由器在转发报文前对标签的处理信息;向各所述路由器分别发送各路由控制信息,以供各路由器根据各路由控制信息转发报文。实施本发明实施例,降低了公共网络中路由器的计算开销。

Description

路由管理方法及路由方法及网络控制器及路由器 本申请要求于 2013 年 2 月 4 日提交中国专利局、 申请号为 201310042409. 5 , 发明名称为 "路由管理方法及路由方法及网络控制器及 路由器" 的中国专利申请的优先权, 其全部内容通过引用结合在本申请中。 技术领域 本发明涉及通信领域, 特别涉及一种路由管理方法、 路由方法以及网 络控制器、 路由器。 背景技术 二层虚拟专用网 ( Layer 2 Virtual Private Network, 筒称 L2VPN ) 可以 使地理位置上处于分散的多个局域网 ( Local Area Network, 筒称 LAN )通 过公共网络进行二层通信, 公共网络可以但不限于是公共多协议标签交换 ( Multi-Protocol Label Switching , 筒称 MPLS )网络, 还可以是其它能够运 行标签协议的互联网。例如图 1中的局域网 N1和局域网 N2属于 L2VPN A, L2VPN A包括局域网 Nl、 局域网 N2、 以及连接在 N1和 N2之间的公共 MPLS网络, 如 N1可以是 A公司位于北京的一个局域网, N2为 A公司位 于上海的另一个局域网, N1和 N2可以通过公共 MPLS网络进行通信, N3 和 N4属于另一个 L2VPN B, 也通过公共 MPLS网络进行通信。 L2VPN的 任意两个局域网之间进行二层通信时, 两个局域网之间传输的报文在穿越 公共 MPLS网络时被封装在隧道中, 所谓隧道即公共 MPLS网络中由路由 器组成的单向链路。 报文在公共 MPLS 网络中传输时封装了两层标签: 隧 道标签和网络标签; 隧道标签用于标识报文转发时所在的隧道, 网络标签 用于标识 L2VPN的各个局域网, 即报文所发向的目的局域网。 报文在转发 时不再依据原始报文的头部信息进行转发, 而是依据标签进行转发。 参见 图 1 , L2 VPN任意两个局域网间传输报文之前, 在公共 MPLS网络中的所 有相邻路由器之间 (如图 1中的 PE1和 P2之间, P2和 PE2之间 )运行标 签分发协议(Label Distribution Protocol, 筒称 LDP )建立隧道。 然后隧道 途经的路由器再查看本路由器上的标签资源表, 为本路由器选择未被占用 的标签作为未来进行报文转发处理的报文的隧道标签, 并指示本路由器的 隧道标签处理信息。 之后在处于隧道入口处的路由器 PE1和处于隧道出口 处的路由器 PE2 之间运行标签分发协议或者边界网关协议多扩展协议 ( Multiprotocol Extensions for Border Gateway Protocol, 筒称 MP-BGP ), 用 来为 PE1和 PE2确定未来转发处理的 4艮文的网络标签, 并指示网络标签处 理信息。 隧道途经的各路由器再相应地根据隧道的路径信息、 本路由器对 应的标签、 以及标签对应的标签处理信息生成各路由器的路由控制信息, 用于各路由器对报文进行处理和转发。
在进行本发明的研究过程中, 本发明人发现现有技术至少存在以下的 缺陷:
需要在公共网络中的路由器之间运行标签相关的协议来确定 L2 VPN的 任意两个局域网之间报文传输的隧道, 并且路由器需要为自身分配标签、 指示标签处理信息、 以及生成本路由器的路由控制信息, 这样公共网络中 的路由器的计算开销比较大。 发明内容 本发明实施例第一目的在于提供一种路由管理方法, 应用该技术方案 可以降低路由器的计算开销。 本发明实施例第二目的在于提供一种路由方法, 应用该技术方案可以 路由器的计算开销。
本发明实施例第三目的在于提供一种网络控制器, 应用该技术方案可 以降低路由器的计算开销。
本发明实施例第四目的在于提供一种路由器, 应用该技术方案可以降 低路由器的计算开销。
本发明实施例第五目的在于提供另一种网络控制器, 应用该技术方案 可以降低路由器的计算开销。
本发明实施例第六目的在于提供另一种路由器, 应用该技术方案可以 降低路由器的计算开销。
第一方面, 本发明提供了一种路由管理方法, 包括:
网络控制器接收二层虚拟专用网创建请求, 二层虚拟专用网包括公共 网络、 以及至少两个通过所述公共网络连接的局域网,
网络控制器根据所述公共网络中各路由器的路由信息、 以及各所述局 域网与所述公共网络的连接信息, 确定任意两所述局域网之间的报文在所 述公共网络传输时应途经的隧道的路径信息;
根据各所述隧道的所述路径信息, 确定各所述路由器沿各所述隧道转 发所述报文的转发信息, 为各所述隧道途经的各所述路由器分配标签、 以 及各所述路由器在转发所述报文前对所述标签的处理信息, 所述标签为: 公共多协议标签交换标签;
向各所述路由器分别发送各所述路由控制信息, 所述路由控制信息包 括: 各所述路由器沿各所述隧道转发所述报文的转发信息、 各所述路由器 在各所述隧道对应的标签、 以及各所述路由器在转发所述报文前对所述标 签的处理信息, 以供各所述路由器根据各所述路由控制信息转发所述报文。 结合第一方面, 在第一种实现方式下, 在步骤: 向各所述路由器分别 发送各所述路由控制信息之前,
在步骤: 根据各所述隧道的所述路径信息, 确定各所述路由器沿各所 述隧道转发所述报文的转发信息之后, 还包括:
生成各所述路由器的流表, 各所述流表分别包括匹配项信息、 以及指 令项信息, 各所述指令项信息分别与各所述匹配项信息相对应;
根据各所述路由器在各所述隧道对应的标签、 以及各所述隧道的所述 路径信息, 确定各所述流表的匹配项信息,
根据各所述路由器沿各所述隧道转发所述报文的转发信息、 各所述路 由器在各所述隧道对应的标签、 以及各所述路由器在转发所述报文前对所 述标签的处理信息, 确定各指令项信息,
以供所述路由器在收到所述报文后, 按照所述流表中、 与所述报文相 匹配的所述匹配项信息相对应的所述指令项信息转发所述报文;
向各所述路由器分别发送各所述路由控制信息, 具体是: 向各所述路 由器分别发送各所述路由器的所述流表。
结合第一方面的第一种实现方式, 在第二种实现方式下, 各所述流表 的匹配项信息包括以下的任一或者任意两个或者两个以上的组合:
所述隧道的隧道标识、 所述报文中的标签值、 所述报文的入口接口标 识、 所述二层虚拟专用网的虚拟交换实例值。
结合第一方面的第一种或第二种实现方式, 在第三种实现方式下, 各 指令项信息包括以下的任一或者任意两个或者两个以上的组合:
增加或删除报文的二层头部, 在所述报文中插入所述路由器对应的所 述标签, 将所述报文中的标签值更新为所述路由器对应的所述标签, 删除 所述报文中的标签, 转发所述报文的转发信息。
结合第一方面或第一方面的第一种或第二种任一实现方式, 在第四种 实现方式下, 步骤: 为各所述隧道途经的各所述路由器分配标签、 以及各 所述路由器在转发所述报文前对所述标签的处理信息, 包括:
根据各所述隧道的所述路径信息, 为各入口路由器分别分配网络标签 以及隧道标签,
所述入口路由器为: 位于各所述隧道入口的各边沿路由器, 所述边沿 路由器为公共网络中处于边沿的路由器, 各所述网络标签分别与各所述局 域网相对应, 各所述隧道标签与所述路由器所在的各所述隧道相对应, 确定各所述入口路由器在转发所述报文前对所述标签的处理信息为: 在所述报文的帧结构的头部前端增加二层头部, 在所述报文中插入所述报 文目的局域网对应的所述网络标签、 以及所述 4艮文应途经的所述隧道对应 的所述隧道标签, 使在所述报文的帧结构上, 所述网络标签位于所述隧道 标签后端, 所述二层头部位于所述隧道标签的前端;
根据各所述隧道的所述路径信息, 为各中继路由器分别分配各所述隧 道标签,
各所述中继路由器为: 各所述隧道内的任一非边沿路由器;
确定各所述中继路由器在转发所述报文前对所述标签的处理信息为, 将所述报文中的标签值更新为: 所述中继路由器在所述报文应途经的所述 隧道对应的所述隧道标签;
根据各所述隧道的所述路径信息, 确定各出口路由器在转发所述报文 前对所述标签的处理信息为: 删除所述报文中的所述二层头部、 所述隧道 标签以及所述网络标签。
第二方面, 本发明提供了一种路由方法, 包括:
路由器接收报文, 所述路由器位于公共网络, 所述报文为: 二层虚拟 专用网中与所述公共网络分别连接的任意两局域网之间传输的报文;
所述路由器比较所述报文的信息与所述路由器预存的流表内的匹配项 信息, 将所述流表中与所述报文匹配的一所述匹配项作为报文匹配项, 在所述流表中, 各所述指令项信息分别与各所述匹配项信息相对应, 所述流表的各所述匹配项信息包括: 所述报文需满足的各特征信息, 所述流表的各所述指令项信息包括: 所述路由器转发所述报文的转发 信息、 所述路由器在转发所述报文前对所述标签的处理信息;
所述路由器按照所述报文匹配项对应的所述指令项信息处理所述报文 以及转发所述 4艮文。
结合第二方面, 在第一种实现方式下, 各所述流表的匹配项信息包括 以下的任一或者任意两个或者两个以上的组合:
所述隧道的隧道标识、 所述报文中的标签值、 所述报文的入口接口标 识、 所述二层虚拟专用网的虚拟交换实例值。
结合第二方面或第二方面的第一种实现方式, 在第二种实现方式下, 各指令项信息包括以下的任一或者任意两个或者两个以上的组合:
增加或删除报文的二层头部, 在所述报文中插入所述路由器对应的所 述标签, 将所述报文中的标签值更新为所述路由器对应的所述标签, 删除 所述报文中的标签, 转发所述报文的转发信息。
第三方面, 本发明一种网络控制器, 包括路由信息获取单元、 隧道管 理单元、 路由控制信息管理单元以及第一收发单元; 所述路由信息获取单元, 用于预先获取公共网络中各路由器的路由信 息, 以及接收二层虚拟专用网创建请求, 获取所述二层虚拟专用网的各局 域网与所述公共网络的连接信息, 以及将各所述路由器的路由信息、 以及 各所述局域网与所述公共网络的连接信息输出至所述隧道管理单元, 所述 二层虚拟专用网包括公共网络、 以及至少两个通过所述公共网络连接的局 域网;
所述隧道管理单元, 用于根据所述公共网络中各路由器的路由信息、 以及各所述局域网与所述公共网络的连接信息, 确定任意两所述局域网之 间的报文在所述公共网络传输时应途经的隧道的路径信息, 将所述隧道的 路径信息输出至所述路由控制信息管理单元;
所述路由控制信息管理单元, 用于根据各所述隧道的所述路径信息, 确定各所述路由器沿各所述隧道转发所述报文的转发信息, 为各所述隧道 途经的各所述路由器分配标签、 以及各所述路由器在转发所述报文前对所 述标签的处理信息, 以及将各所述路由器的各路由控制信息发送到所述第 一收发单元, 所述标签为: 公共多协议标签交换标签, 所述路由控制信息 包括: 各所述路由器沿各所述隧道转发所述报文的转发信息、 各所述路由 器在各所述隧道对应的标签、 以及各所述路由器在转发所述报文前对所述 标签的处理信息;
所述第一收发单元, 用于向各所述路由器分别发送各所述路由控制信 息, 以供各所述路由器根据各所述路由控制信息转发所述报文。
结合第三方面, 在第一种实现方式下, 所述网络控制器还包括流表管 理单元,
所述流表管理单元, 连接在所述路由控制信息管理单元与所述第一收 发单元之间,
所述流表管理器, 用于根据所述路由控制信息管理单元输入的各所述 路由器的所述路由控制信息生成各所述路由器的流表, 并把所述流表传输 给所述第一收发单元, 各所述路由器的流表分别包括匹配项信息、 以及指 令项信息, 各所述指令项信息分别与各所述匹配项信息相对应;
所述第一收发单元用于向各所述路由器发送各所述路由器的流表。 结合第三方面或第三方面的第一种实现方式, 在第二种实现方式下, 所述路由控制信息管理单元, 用于为各所述隧道途经的各所述路由器分配 标签、 以及各所述路由器在转发所述报文前对所述标签的处理信息, 具体 是用于:
根据各所述隧道的所述路径信息, 为各入口路由器分别分配网络标签 以及隧道标签,
所述入口路由器为: 位于各所述隧道入口的各边沿路由器, 所述边沿 路由器为公共网络中处于边沿的路由器, 各所述网络标签分别与各所述局 域网相对应, 各所述隧道标签与所述路由器所在的各所述隧道相对应, 确定各所述入口路由器在转发所述报文前对所述标签的处理信息为: 在所述报文的帧结构的头部前端增加二层头部, 在所述报文中插入所述报 文目的局域网对应的所述网络标签、 以及所述 4艮文应途经的所述隧道对应 的所述隧道标签, 使在所述报文的帧结构上, 所述网络标签位于所述隧道 标签后端, 所述二层头部位于所述隧道标签的前端;
根据各所述隧道的所述路径信息, 为各中继路由器分别分配各所述隧 道标签,
各所述中继路由器为: 各所述隧道内的任一非边沿路由器; 确定各所述中继路由器在转发所述报文前对所述标签的处理信息为, 将所述报文中的标签值更新为: 所述中继路由器在所述报文应途经的所述 隧道对应的所述隧道标签;
根据各所述隧道的所述路径信息, 确定各出口路由器在转发所述报文 前对所述标签的处理信息为: 删除所述报文中的所述二层头部、 所述隧道 标签以及所述网络标签。
第四方面, 本发明提供了一种路由器, 包括: 第二收发单元、 流表存 储单元、 报文比较单元、 以及报文处理单元;
所述第二收发单元, 用于与外部通信, 所述通信包括接收所述路由器 的流表、 接收以及转发报文, 所述报文为: 二层虚拟专用网中与所述公共 网络分别连接的任意两局域网之间传输的报文;
所述存储单元用于存储信息, 所述信息包括: 所述路由器的流表, 在 所述流表中, 各所述指令项信息分别与各所述匹配项信息相对应, 所述流 表的各所述匹配项信息包括: 所述报文需满足的各特征信息, 所述流表的 各所述指令项信息包括: 所述路由器转发所述报文的转发信息、 所述路由 器在转发所述艮文前对所述标签的处理信息;
所述报文比较单元, 用于比较所述报文的信息与所述流表内的匹配项 信息, 将所述流表中与所述报文匹配的一所述匹配项作为报文匹配项, 所述报文处理单元, 按照所述报文匹配项对应的所述指令项信息处理 所述报文。
第五方面, 本发明提供了一种网络控制器, 包括路由信息获取器、 隧 道管理器、 路由控制信息管理器以及第一收发器;
所述路由信息获取器, 用于预先获取公共网络中各路由器的路由信息, 以及接收二层虚拟专用网创建请求, 获取所述二层虚拟专用网的各局域网 与所述公共网络的连接信息, 以及将各所述路由器的路由信息、 以及各所 述局域网与所述公共网络的连接信息输出至所述隧道管理器, 所述二层虚 拟专用网包括公共网络、 以及至少两个通过所述公共网络连接的局域网; 所述隧道管理器, 用于根据各所述隧道的所述路径信息, 确定各所述 路由器沿各所述隧道转发所述报文的转发信息, 为各所述隧道途经的各所 述路由器分配标签、 以及各所述路由器在转发所述报文前对所述标签的处 理信息, 所述标签为: 公共多协议标签交换标签, 将所述隧道的路径信息 输出至所述路由控制信息管理器;
所述路由控制信息管理器, 用于根据各所述隧道的所述路径信息, 确 定各所述路由器沿各所述隧道转发所述报文的转发信息, 为各所述隧道途 经的各所述路由器分配标签、 以及各所述路由器在转发所述报文前对所述 标签的处理信息, 以及将各所述路由器的各路由控制信息发送到所述第一 收发器, 所述标签为: 公共多协议标签交换标签, 所述路由控制信息包括: 各所述路由器沿各所述隧道转发所述报文的转发信息、 各所述路由器在各 所述隧道对应的标签、 以及各所述路由器在转发所述报文前对所述标签的 处理信息;;
所述第一收发器, 用于向各所述路由器分别发送各所述路由控制信息, 以供各所述路由器根据各所述路由控制信息转发所述报文。
结合第五方面, 在第一种实现方式下, 所述网络控制器还包括流表管 理器,
所述流表管理器, 连接在所述路由控制信息管理器与所述第一收发器 之间, 所述流表管理器, 用于根据所述路由控制信息管理器输入的各所述路 由器的所述路由控制信息生成各所述路由器的流表, 并把所述流表传输给 所述第一收发器, 各所述路由器的流表分别包括匹配项信息、 以及指令项 信息, 各所述指令项信息分别与各所述匹配项信息相对应;
所述第一收发器用于向各所述路由器发送各所述路由器的流表。
结合第五方面或第五方面的第一种实现方式, 在第二种实现方式下, 所述路由控制信息管理器, 用于为各所述隧道途经的各所述路由器分配标 签、 以及各所述路由器在转发所述报文前对所述标签的处理信息, 具体是 用于:
根据各所述隧道的所述路径信息, 为各入口路由器分别分配网络标签 以及隧道标签,
所述入口路由器为: 位于各所述隧道入口的各边沿路由器, 所述边沿 路由器为公共网络中处于边沿的路由器, 各所述网络标签分别与各所述局 域网相对应, 各所述隧道标签与所述路由器所在的各所述隧道相对应, 确定各所述入口路由器在转发所述报文前对所述标签的处理信息为: 在所述报文的帧结构的头部前端增加二层头部, 在所述报文中插入所述报 文目的局域网对应的所述网络标签、 以及所述 4艮文应途经的所述隧道对应 的所述隧道标签, 使在所述报文的帧结构上, 所述网络标签位于所述隧道 标签后端, 所述二层头部位于所述隧道标签的前端;
根据各所述隧道的所述路径信息, 为各中继路由器分别分配各所述隧 道标签,
各所述中继路由器为: 各所述隧道内的任一非边沿路由器;
确定各所述中继路由器在转发所述报文前对所述标签的处理信息为, 将所述报文中的标签值更新为: 所述中继路由器在所述报文应途经的所述 隧道对应的所述隧道标签;
根据各所述隧道的所述路径信息, 确定各出口路由器在转发所述报文 前对所述标签的处理信息为: 删除所述报文中的所述二层头部、 所述隧道 标签以及所述网络标签。
第六方面, 本发明提供了一种路由器, 包括: 第二收发器、 流表存储 器、 报文比较器、 以及报文处理器;
所述第二收发器, 用于与外部通信, 所述通信包括接收所述路由器的 流表、 接收以及转发报文, 所述报文为: 二层虚拟专用网中与所述公共网 络分别连接的任意两局域网之间传输的报文;
所述存储器用于存储信息, 所述信息包括: 所述路由器的流表, 在所 述流表中, 各所述指令项信息分别与各所述匹配项信息相对应, 所述流表 的各所述匹配项信息包括: 所述报文需满足的各特征信息, 所述流表的各 所述指令项信息包括: 所述路由器转发所述报文的转发信息、 所述路由器 在转发所述 ·^艮文前对所述标签的处理信息;
所述报文比较器, 用于比较所述报文的信息与所述流表内的匹配项信 息, 将所述流表中与所述报文匹配的一所述匹配项作为报文匹配项,
所述报文处理器, 按照所述报文匹配项对应的所述指令项信息处理所 述报文。
由上可见, 应用本实施例技术方案, 可以通过采用一网络控制器对公 共网路中的路由器实现集中管理, 通过获取公共网络各路由器的路由信息 以及公共网络中位于网络边沿的各所述路由器与任一局域网的连接信息, 确定报文在 L2VPN的任意两局域网之间传输应途经的隧道的路径信息,再 确定各个路由器的路由控制信息, 包括各个路由器沿着隧道转发报文的转 发信息、 各个路由器分配的标签以及标签的处理信息, 并把各个路由器的 路由控制信息发送到各路由器存储, 以供各路由器根据路由器的路由控制 信息转发报文。 相对于现有技术: 该过程需要在公共网络中的路由器之间 运行标签相关的协议, 才能确定报文传输所要经过的隧道, 进而为路由器 自身分配标签、 标签处理信息以及生成相应的路由器的路由控制信息, 本 实施例公共网络中的路由器不需要进行标签协议的计算来生成本路由器的 控制信息, 因此本实施例降低了公共网络中路由器的计算开销。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对 实施例或现有技术描述中所需要使用的附图作筒单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明的一些实施例, 对于本领域普通技术人员 来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的 附图。
图 1 为公共多协议标签交换网络与二层虚拟专用网的局域网连接的拓 朴示意图;
图 2为本发明实施例 1提供的一种路由管理方法的流程示意图; 图 3为本发明实施例 2和实施例 3提供的一种路由管理方法的流程示 意图;
图 4为本发明实施例 4提供的一种路由方法的流程示意图;
图 5为本发明实施例 5提供的一种网络控制器的结构示意图; 图 6为本发明实施例 6提供的一种网络控制器的结构示意图; 图 7为本发明实施例 7提供的一种路由器的结构示意图; 图 8为本发明实施例 8提供的一种网络控制器的结构示意图; 图 9为本发明实施例 9提供的一种网络控制器的结构示意图; 图 10为本发明实施例 10提供的一种路由器的结构示意图。
具体实施方式 下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进 行清楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没 有作出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的 范围。
实施例 1:
参见图 2, 本实施例提供了一种路由管理方法, 其应用场景可以是通过 公共网络传输两地理位置分散的同一 L2VPN 的两个局域网之间的数据 4艮 文。
本实施例提供的一种路由管理方法, 该方法的流程步骤如下: 步骤 2001 : 网络控制器接收二层虚拟专用网创建请求。
在本实施例中, 公共网络可以但不限于是公共多协议标签交换 ( Multi-Protocol Label Switching , 筒称 MPLS )网络, 还可以是其它能够运 行标签协议的互联网。 所要创建的二层虚拟专用网包括公共网络、 以及至 少两个通过公共网络连接的局域网。请求创建 L2VPN时,需要提供 L2VPN 的参数, 参数包括: L2VPN包括几个地理位置相互隔离的局域网、 以及各 局域网与公共网络的连接信息, 各局域网与公共网络的连接信息具体是指 这些局域网分别连接在公共网络中处于边沿的路由器上的哪个接口, 该接 口可以是物理接口或逻辑接口。 此外, 网络控制器作为公共网络中路由器 的管理装置, 其预先获取了各路由器的路由信息。
步骤 2002: 网络控制器根据公共网络中各路由器的路由信息、 以及各 局域网与公共网络的连接信息, 确定任意两局域网之间的报文在公共网络 传输时应途经的隧道的路径信息。
在本实施例中, 网络控制器预先获取了公共网络中各路由器的路由信 息, 路由器的路由信息记录了该路由器通过哪个接口直接连接了哪个路由 器。 网络控制器接收二层虚拟专用网创建请求后, 根据公共网络中各路由 器的路由信息、 以及各局域网与公共网络的连接信息, 计算出任意两个局 域网之间的报文在公共网络传输时应途经的隧道的路径信息, 隧道的路径 信息包括: 报文在隧道中传输时途经哪些路由器, 以及途经路由器的哪个 接口。
步骤 2003 : 根据各隧道的路径信息, 确定各路由器沿各隧道转发报文 的转发信息, 为各隧道途经的各路由器分配标签、 以及各路由器在转发所 述 ·^艮文前对标签的处理信息。
在本实施例中, 根据各隧道的路径信息, 确定各所述路由器沿所述隧 道转发所述报文的转发信息, 具体为: 网络控制器根据各隧道的路径信息, 确定各隧道途径的各路由器通过该路由器上的哪个接口将报文沿隧道转发 到下一路由器。
在公共网络中, 网络控制器需要根据 L2VPN的各个隧道的路径信息, 为各个隧道途经的各路由器分配标签、 以及标签的处理信息。 其中, 可以 根据预先定制的路由器转发功能的需求、 以及标签封装技术, 为报文所要 途经隧道的路由器分配一定数目的用于标识不同信息的标签; 标签的处理 信息包括: 在报文中插入标签、 或更新标签或删除标签。
在 L2VPN的应用场景中, 为满足 L2VPN的任意两个局域网之间转发报 文的基本需求, 标签分为网络标签和隧道标签, 网络标签用于标识局域网, 隧道标签用于标识隧道。 其中: 为各隧道途经的各路由器分配标签、 以及 各路由器在转发报文前对标签的处理信息, 可以按下列步骤进行:
a. 根据各隧道的路径信息, 为各入口路由器分别分配网络标签以及隧 道标签。
各网络标签分别与各局域网相对应, 各隧道标签与路由器所在的各隧 道相对应。 其中, 入口路由器为: 位于各隧道入口的各边沿路由器, 边沿 路由器为公共网络中处于边沿的路由器。
例如参见图 1 , 若 L2VPN A包括局域网 N1和 N2, 网络控制器在确定 N1向 N2发送 4艮文的隧道 T2后, 为入口路由器 PE1分配一网络标签和一 隧道标签, 设网络标签的标签值为 201 , 用于标识 PE1接收 N1的报文的目 的接收网络为 N2; 设隧道标签的标签值为 11 , 用于标识 PE1处在隧道 T2。
又若 L2VPN C包含 3个局域网: Nl , Ν2和 Ν5 , 在确定 N1向 Ν2方 向发送报文的隧道 Τ2 , 以及 N1向 Ν5方向发送 4艮文的隧道 T1后, 为入口 路由器 PE1分配两个网络标签以及两个隧道标签, 设网络标签的标签值分 别 201和 101 , 网络标签 201用于标识 PE1接收 N1的报文的目标接收网络 为 Ν2, 网络标签 101用于标识 4艮文目的局域网 Ν5; 隧道标签的标签值分 别为 11和 21 , 其中隧道标签 11标识隧道 Τ2 , 隧道标签 21标识隧道 Τ 1。
b. 确定各入口路由器在转发报文前对标签的处理信息为: 在报文的帧 结构的头部前端增加二层头部, 在 4艮文中插入 4艮文目的局域网对应的网络 标签、 以及报文应途经的隧道对应的隧道标签, 使在所述报文的帧结构上, 网络标签位于隧道标签后端, 二层头部位于隧道标签的前端。
网络控制器确认入口路由器的标签处理信息为: 入口路由器在报文的 帧结构头部增加二层头部, 二层头部包括但不限于以太网二层头部、 点对 点协议二层头部, 用于报文在公共网络的二层通信; 入口路由器在二层头 部的后面插入隧道标签和网络标签, 网络标签在隧道标签的后端。
例如参见图 1 , 若 L2VPN A包括局域网 N1和 N2, PE1在隧道 T2中 的网络标签的标签值为 201 , 隧道标签的标签值为 11。 网络控制器进一步 确定 PE1的标签的处理信息为: PE1接收 N1向 N2发送的报文, 在报文的 帧结构的头部前端增加一个以太网二层头部, 在以太网二层头部后面插入 隧道标签 11和网络标签 201 , 网络标签 201在隧道标签 11的后端。
c 根据各隧道的路径信息, 为各中继路由器分别分配各隧道标签。 其中, 中继路由器为各隧道内的任一非边沿路由器, 中继路由器的隧 道标签标识中继路由器所在的隧道。
例如参见图 1 , 若 L2VPN A包括局域网 N1和 N2, 网络控制器在确定 N1向 N2发送报文的隧道 T2后,为中继路由器 P2分配一个对应于隧道 T2 的隧道标签, 设标签值为 12。 中继路由器处于几个隧道时, 网络控制器相 应为其分配几个隧道标签, 参见图 1 , N2向 N1发送 4艮文的隧道可以包含 路由器 P2, 也可以不包含路由器 P2, 当 P2处于 N2向 N1发送报文的隧道 时, 网络控制器就需分配相应的隧道标签。
d. 确定各中继路由器在转发报文前对标签的处理信息为, 将报文中的 标签值更新为: 中继路由器在报文应途经的隧道对应的隧道标签。 例如参见图 1 , 若 L2VPN A包括局域网 N1和 N2, 隧道 T2中的中继 路由器 P2分配的隧道标签的标签值为 12。 P2收到 PE1转发的报文后, 将 报文中隧道标签 11更新为隧道标签 12。
e. 根据各隧道的路径信息, 确定各出口路由器在转发报文前对标签的 处理信息为: 删除报文中的二层头部、 隧道标签以及网络标签。
例如参见图 1 , 若 L2VPN A包括局域网 N1和 N2, 隧道 T2中的出口 路由器 PE2收到 P2转发的报文后, 将报文中的以太网二层头部、 隧道标签 12、 以及网络标签 201删除。
步骤 2004: 向各路由器分别发送各路由控制信息, 以供各路由器根据 各路由控制信息转发报文。
其中, 路由控制信息包括: 各路由器沿各隧道转发报文的转发信息、 各路由器在各隧道对应的标签、 以及各路由器在转发报文前对标签的处理 信息。
下面以图 1 中的拓朴来说明本实施例提供的路由管理方法, 其应用于 L2VPN的应用场景中。
网络控制器(图中未示)预先获取公共 MPLS各个路由器 PE1、 PE2、 PE3、 Pl、 P2、 P3的路由信息, 例如 PE1的路由信息为: PE1通过 PE1上 哪些接口连接路由器 Pl、 P2、 P3。
网络控制器接收创建 L2VPN的请求, 获取二层虚拟专用网的局域网与 公共 MPLS网络中边沿路由器的连接信息,假设 L2VPN A只包含两个局域 网 N1和 N2,假设 N1连接到 PE1的 2号接口, N2连接到 PE2的 5号接口。
网络控制器根据所接收到的各路由器的路由信息以及二层虚拟专用网 局域网与公共 MPLS 网络中边沿路由器的连接信息后, 分别计算出 N1 向 N2转发 4艮文的隧道的路径信息, 以及 N2向 N1转发 4艮文的隧道的路径信 息。 这里仅以 N1 向 N2转发 4艮文方向为例, 支设对应的隧道为 T2, 隧道 T2的路径信息为: 出 PE1的 1号接口到达 P2,再出 P2的 2号口到达 PE2。
网络控制器进一步确定各隧道途径的各路由器的路由控制信息。
以 N1向 N2转发 4艮文的隧道 T2为例:
根据隧道 T2的路径信息,确定边沿路由器 PE1沿隧道转发报文的转发 信息为: PE1从 1号接口将报文转发给 P2; P2的转发信息为: P2从 2号接 口将报文转发到 PE2。
为该入口路由器 PE1 分配网络标签, 设标签值为 201 , 网络标签 201 标识 PE1接收 N1 4艮文的目的接收网络为 N2。
为该入口路由器 PE1 以及隧道内的中继路由器 P2分配隧道标签, 设 PE1分配的隧道标签的标签值为 11 , 标识这 PE1处于隧道 T2中; 设 P2分 配的隧道标签的隧道标签值为 12, 标识 P2位于隧道 T2中。
将入口路由器 PE1对应的标签处理信息确定为: 在报文中插入二层头 部、 网络标签 201、 以及隧道标签 11。
将隧道中的中继路由器 P2对应的标签处理信息确定为: 根据 P2对应 的隧道标签为隧道标签 12, 将 P2收到的隧道标签为 11的报文的隧道标签 更新为隧道标签 12。
将出口路由器 PE2对应的标签处理信息确定为: 删除二层头部、 网络 标签 201、 以及删除隧道标签 12。
网络控制器将隧道 T2途经的各路由器的路由控制信息通过网络协议发 送到相应路由器, 以供各路由器根据路由器的路由控制信息转发报文。 其 余隧道的原理与 T2类似, 不再举例。 由上可见, 应用本实施例技术方案, 可以通过采用一网络控制器对公 共网路中的路由器实现集中管理, 通过获取公共网络各路由器的路由信息 以及公共网络中位于网络边沿的各所述路由器与任一局域网的连接信息, 确定报文在 L2VPN的任意两局域网之间传输应途经的隧道的路径信息,再 确定各个路由器的路由控制信息, 包括各个路由器沿着隧道转发报文的转 发信息、 各个路由器分配的标签以及标签的处理信息, 并把各个路由器的 路由控制信息发送到各路由器存储, 以供各路由器根据路由器的路由控制 信息转发报文。 相对于现有技术: 该过程需要在公共网络中的路由器之间 运行标签相关的协议, 才能确定报文传输所要经过的隧道, 进而为路由器 自身分配标签、 标签处理信息以及生成相应的路由器的路由控制信息, 本 实施例公共网络中的路由器不需要进行标签协议的计算来生成本路由器的 控制信息, 因此本实施例降低了公共网络中路由器的计算开销。
实施例 2:
参见图 3 , 本实施例提供了一种路由管理方法, 其应用场景可以是通过 公共网络传输两地理位置分散的同一 L2VPN 的两个局域网之间的数据报 文。 公共网络可以但不限于是公共 MPLS 网络, 还可以是其它能够运行标 签协议的互联网。
本实施例提供方法的流程步骤如下:
步骤 3001 : 网络控制器接收二层虚拟专用网创建请求。
步骤 3002: 网络控制器根据公共网络中各路由器的路由信息、 以及各 局域网与公共网络的连接信息, 确定任意两局域网之间的报文在公共网络 传输时应途经的隧道的路径信息。
步骤 3003 : 根据各隧道的路径信息, 确定各路由器沿各隧道转发报文 的转发信息, 为各隧道途经的各路由器分配标签、 以及各路由器在转发所 述 ·^艮文前对标签的处理信息。
在本实施例中,以上步骤 3001~3003与实施例中提供的步骤 2001~2003 相同, 请参见实施例 1 , 这里不再赘述。
步骤 3004: 生成各路由器的流表, 各流表分别包括匹配项信息、 以及 指令项信息, 各指令项信息分别与各匹配项信息相对应。 本实施例将传统路由器中的各种形式的路由器的路由控制信息统一抽 象为流表(Table ), 根据路由器的转发功能, 不同路由器可以含有不同数量 的流表。
流表的格式可以筒化为表 1所示的形式:
表 1 流表的格式:
匹配项信息 指令项信息
匹配项信息列包含一个或多个匹配项, 每个匹配项描述了报文的一个 特征, 用于表示路由器所要处理的报文所要满足的匹配条件; 指令项信息 列包含一个或多个指令, 用于表示路由器对满足匹配项信息列所描述的匹 配条件的报文进行指令相关的处理。
在本实施例中, 为实现通过公共网络传输 L2VPN 的任两个局域网之间 的报文, 网络控制器根据各路由器在各隧道对应的标签、 以及各隧道的路 径信息, 确定各流表的匹配项信息, 根据各路由器沿各隧道转发报文的转 发信息、 各路由器在各隧道对应的标签、 以及各路由器在转发报文前对标 签的处理信息, 确定各指令项信息, 以供路由器在收到报文后, 按照流表 中、 与报文相匹配的匹配项信息相对应的指令项信息转发报文。 各流表的匹配项信息包括以下的任一或者任意两个或者两个以上的组 合:
隧道的隧道标识、 报文中的标签值、 报文的入口接口标识、 二层虚拟 专用网的虚拟交换实例值。
在本实施例中, 流表中的匹配项信息至少定义了以下几种:
IN— PORT: 用报文的入口接口标识, 即报文在路由器上的输入接口标 识作为路由器处理报文的匹配条件, 例如匹配项信息列为 "IN— PORT=2"时, 路由器只对从 2号接口接收的报文进行指令项信息中的相关指令操作;
TUNNEL— ID: 用报文在公共网络中传输所途经隧道的隧道标识作为路 由器处理报文的匹配条件, 例如匹配项信息列为 "TUNNEL— ID =T2"时, 路 由器只对隧道标识为 Τ2的报文进行指令项信息中的相关指令操作;
IN— LABEL: 用报文中的标签值, 具体是报文中的二层头部后面的一个 标签的标签值作为路由器处理报文的匹配条件, 例如匹配项信息列为 "IN— LABEL =201"时, 路由器只对报文二层头部后面的一个标签的标签值 为 201的报文进行指令项信息中的相关指令操作;
VSI: 用 ·^艮文所在的二层虚拟专用网的的虚拟交换实例 (Virtual Switching Institution, 筒称 VSI )值作为路由器处理报文的匹配条件, VSI 用来标识二层虚拟专用网, VSI值可以通过映射位于任一隧道入口的入口 路由器的报文入口接口标识获得, 或者通过映射位于任一隧道出口路由器 的报文的网络标签获得。 例如参见图 1中, 设 L2VPN C包括局域网 Nl、 N2以及 N5 , L2VPN C的 VSI为 VI , 则 L2VPN C任意两个局域网间传输 的报文可以用 VSI=V1来标识, 若匹配项信息列为" VSI =V1,,时, 路由器只 对 L2VPN C中任意两个局域网间传输的报文的进行指令项信息中的相关指 令操作;
MAC: 用报文的目的介质访问控制 (Medium Access Control, 筒称 MAC )地址作为路由器处理报文的匹配条件, 该 MAC地址对应于 L2VPN 中一个局域网里的某一个网络设备。
各指令项信息包括以下的任一或者任意两个或者两个以上的组合: 增加或删除报文的二层头部, 在报文中插入路由器对应的标签, 将报 文中的标签值更新为路由器对应的标签, 删除报文中的标签, 转发报文的 转发信息。
具体的, 在本实施例中, 流表的指令项信息定义了:
APPLY— ACTIONS { ADD— XX— HDR}/
APPLY— ACTIONS { DEL xx HDR}:
增加或删除报文的二层头部, 用于对满足流表匹配项信息所描述的匹配条 件的报文, 在其帧结构的头部的前端增加 /删除一个二层头部, 增加或删除 的二层头部可以但不限于是以太网二层头部、 点对点协议二层头部等,例如 在增加以太网头部时,该指令对应为 APPLY_ACTIONS { ADD ETH HDR} , 在删除以太网头部时,该指令对应为 APPLY_ACTIONS { DEL ETH HDR};
APPLY— ACTIONS { OUTPUT0 } : 转发 4艮文的转发信息, 用于将满足 流表匹配项信息所描述的匹配条件的报文从路由器的某个接口转发出去, 例如流表的指令项信息为 APPLY_ACTIONS { OUTPUT(5) }表示路由器 将报文从 5号接口转发出去;
APPLY ACTIONS { PUSH_MPLS( ) }: 在报文中插入路由器对应的标 签, 用于在满足流表匹配项信息所描述的匹配条件的报文的头部后面, 插 入一个标签。 例如流表的指令项信息为 APPLY— ACTIONS { PUSH— MPLS (201) }表示路由器将报文头部后面插入一个标签值为 201的标签;
APPLY_ACTIONS{ SET_MPLS_LABEL( ) }:将 4艮文中的标签值更新为 路由器对应的标签, 用于在满足流表匹配项信息所描述的匹配条件的报文 的头部后面, 更新一个标签。 例如流表的指令项信息为
APPLY ACTIONS { SET MPLS LABEL (12) }表示路由器将 4艮文头部后面 的一个标签的标签值更新为 12;
APPLY ACTIONS { POP MPLS }: 删除报文中的标签, 用于在满足流 表匹配项信息所描述的匹配条件的报文的头部后面, 删除一个标签。
在路由器中的流表包含至少两条流表时, 流表的指令项信息还定义 GOTO— TABLE0的指令, 用于实现流表的跳转。 例如一路由器中包含 Table 0和 Table 5 , 在 Table 0中的指令项信息含有 GOTO_TABLE(5)时, 表示路 由器从 Table 0跳转执行 Table 5。
流表的指令项信息还定义了写元数据( WRITE— METADATA )的指令, 用于流水线表之间的转递数据。 例如路由器含有流表 1和流表 3 , 在流表 1 的指令项信息含有 WRITE METADATA ( S 1 ) 以及 GOTO_TABLE(3)时, 流表 3就可以使用数据 S1作为流表 3中 匹配项信息中某个匹配条件的值。 此外流表还定义了其它很多匹配项和指令项, 这里篇幅所限不能全部列举。
以图 1中的拓朴为例,假设 L2VPN A包含两个局域网 N1和 N2, 若二 层虚拟专用网只含有两个局域网, 一般则称该二层虚拟专用网为虚拟租用 线( Virtual Leased Line, 筒称 VLL )。 假设 Nl连接到 PEl的 2号接口, N2 连接到 PE2的 5号接口。设所确定的 N1向 N2转发报文方向的隧道的路径 信息为: 出 PE1的 1号接口到达 P2 , 再出 P2的 2号口到达 PE2。 为该隧 道途经的边沿路由器 PE1分配的网络标签的标签值为 201 , PE1的隧道标 签的标签值为 11 , 标签处理信息为: 增加以太网二层头、插入隧道标签 11、 插入网络标签 201 ; P2的隧道标签的标签值为 12, 隧道标签的处理信息为 更新标签, P2收到隧道标签为 11的报文,将报文的隧道标签的标签值更新 为 12; PE2删除以太网二层头部、 隧道标签以及网络标签。
则生成的各个路由器的流表具体可能如下表表 2所示:
表 2 VLL中隧道 T2所途经的各路由器的流表:
Figure imgf000026_0001
以图 1中的拓朴为例,假设 L2VPN C包括 3个局域网, Nl、 N2和 N5 , 若一个二层虚拟专用网的局域网大于或等于 3 时, 则称该二层虚拟专用网 为虚拟专用局域网业务( Virtual Private LAN Services , 筒称 VPLS )» 设该 二层虚拟专用网的 VSI值为 VI。 这里仅仅以 N1向 N2 4艮文转发方向的流 表来说明, 其它方向路由器的流表可以类推。 并假设 N1向 N2报文转发方 向的隧道以及隧道途经的路由器对应的标签分配情况与前文表 2所举的例 子相同。 则生成的各路由器的流表如下表表 3所示:
VPLS中隧道 T2所途经的各路由器的流表:
流表 表项
匹配项信息 指令项信息
PE1 IN PORT = 2 WRITE_METADATA(V 1 )
Table 0 GOTO TABLE(l)
PE1 VSI = VI APPLY ACTIONS { ADD ETH HDR,
Table 1 MAC = xx PUSH_MPLS(201), ...}
WRITE_METADATA(T2)
GOTO TABLE(5)
PE1 TUNNEL ID = APPLY—ACTIONS { PUSH MPLS(ll), ...,
Table 5 T2 OUTPUT(l) }
P2 IN LABEL = 11 APPLY—ACTIONS { SET_MPLS_LABEL( 12), ...,
Table 6 OUTPUT(2) }
PE2 IN LABEL = APPLY—ACTIONS { POP MPLS, ... }
Table 6 12 GOTO TABLE(7)
PE2 IN LABEL = APPLY ACTIONS { POP MPLS, DEL ETH HDR } Table 7 201 WRITE_METADATA(V 1 )
GOTO TABLE(l)
PE2 VSI = VI APPLY ACTIONS! OUTPUT(5) }
Figure imgf000028_0001
其中,在表 3中, PE1流表 1和 PE2流表 1中的匹配项信息 "MAC=xx" 中的" xx"为: 报文的目的介质访问控制地址为 N2中任一网络设备的介质访 问控制地址。
步骤 3005: 向各路由器分别发送各路由器的流表。
网络控制器向各路由器发送各路由器的流表, 以供各路由器根据流表 实现报文的转发。
由上可见, 本实施例除了实施例 1 具备的有益效果外, 还具备以下有 益效果:
将路由器的路由控制信息统一抽象为流表信息, 便于实现路由器控制 信息的集中管理, 同时能够方便扩展, 使路由器提供更多的功能, 满足不 同报文转发的需求。
实施例 3:
参见图 3 , 本实施例提供了一种路由管理方法, 其应用场景可以是通过 公共网络传输两地理位置分散的同一 L2VPN 的两个局域网之间的数据报 文。 公共网络可以但不限于是公共 MPLS 网络, 还可以是其它能够运行标 签协议的互联网。
本实施例提供方法的流程步骤如下:
步骤 3001 : 网络控制器接收二层虚拟专用网创建请求。
L2VPN包括公共网络、 以及与公共网络连接的至少两个局域网。 请求 创建 L2VPN时, 需要向网络控制器提供 L2VPN的参数, L2VPN的参数包 括: L2VPN包括几个地理位置相互隔离的局域网、 以及各局域网与公共网 络的连接信息, 各局域网与公共网络的连接信息具体是指这些局域网分别 连接在公共网络中处于边沿的路由器上的哪个接口, 该接口可以是物理接 口或逻辑接口。
具体的, 参见图 1 , 以 L2VPN C举例, 设 L2VPN C包括 3个在地理位 置上相互隔离的局域网: Nl、 N2、 N5。 在请求创建 L2VPN C时, 网络控 制器需要获取 Nl、 N2以及 N5与公共 MPLS网络的连接信息。 这里具体殳 设所提供的参数包括:局域网 N1连接在公共 MPLS网络的边沿路由器 PE1 的 2号接口上; 局域网 N2连接在边沿路由器 PE2的 5号接口上; 局域网 N5连接在边沿路由器 PE3的 3号接口上。
此外, 网络控制器作为公共网络中路由器的管理装置, 网络控制器预 先获取了各路由器的路由信息。 公共网络中各路由器的路由信息记录了各 路由器的各接口连接了哪个路由器。 例如参见图 1 , 路由器 PE1 的路由信 息包括: PE1的 3号接口连接 PI , PE1的 1号接口连接 P2, PE1的 4号接 口连接路由器 P3 , 等等。
步骤 3002: 网络控制器根据公共网络中各路由器的路由信息、 以及各 局域网与公共网络的连接信息, 确定任意两局域网之间的报文在公共网络 传输时应途经的隧道的路径信息。
网络控制器根据预先获取的公共网络中各路由器的路由信息, 以及各 局域网与公共网络的连接信息, 计算出任意两个局域网之间的报文在公共 网络传输时应途经的隧道的路径信息, 隧道的路径信息包括: 报文在隧道 中传输时途经哪些路由器, 以及途经路由器的哪个接口。
具体的, 参见图 1 , L2VPN C包括 3个局域网 Nl , N2 , 以及 N5。 局 域网之间的报文转发方向就有 6个方向: N1 向 N2转发报文方向、 N2向 N1转发 4艮文方向、 N1向 N5转发 4艮文方向、 N5向 N1转发 4艮文方向、 N2 向 N5转发 4艮文方向、 以及 N5向 N2转发 4艮文方向。
网络控制器相应地需要根据 L2VPN C的各局域网与公共网络的连接信 息、 以及公共网络中各路由器的路由信息, 计算出 6条报文转发时应途经 的隧道的路径信息。这里仅以 N1向 N2转发报文方向、以及 N1向 N5转发 4艮文方向举例:
设 N1向 N2转发报文方向的隧道 T2的路径信息为: PE1、 出 PE1的 1 号接口到达 P2、 出 P2的 2号接口到达 PE2;
设 N1向 N5转发报文方向的隧道 T1的路径信息为: PE1、 出 PE1的 3 号接口到达 Pl、 出 PI的 4号接口到达 PE3。
其它隧道的路径信息不再举例。
步骤 3003 : 根据各隧道的路径信息, 确定各路由器沿各隧道转发报文 的转发信息, 为各隧道途经的各路由器分配标签、 以及各路由器在转发所 述 ·^艮文前对标签的处理信息。
根据各隧道的路径信息, 确定各所述路由器沿所述隧道转发所述报文 的转发信息, 具体为: 网络控制器根据各隧道的路径信息, 确定各隧道途 径的各路由器通过该路由器上的哪个接口将报文沿隧道转发到下一路由 器。 网络控制器还需要根据 L2VPN的各个隧道的路径信息, 为各个隧道途 经的各路由器分配标签、 以及标签的处理信息。
参见图 1 , L2VPN C包括 3个局域网 Nl、 N2以及 N5 ,相应的在步骤 3003 中, 网络控制器就计算了 6条隧道的路径信息。 网络控制器需要根据每条 隧道的路径信息, 为每条隧道途经的路由器确定: 该路由器沿该隧道转发 报文的转发信息、 标签以及标签的处理信息。
这里因篇幅限制, 仅仅以 L2VPN C的隧道 T2举例, 其它隧道不再举例。 Nl向 N2转发报文方向的隧道 T2的路径信息为: PE1、 出 PE1的 1号 接口到达 P2、 出 P2的 2号接口到达 PE2;
网络控制器确定: PE1沿隧道 T2转发报文的转发信息为: PE1从 1号 接口将报文转发给 P2; P2沿隧道 T2转发报文的转发信息为: P2从 2号接 口将报文转发给 PE2;
网络控制器为隧道 T2途经的路由器分配标签、 以及标签的处理信息: 给 PE1分配网络标签 201和隧道标签 11。 其中网络标签 201标识局域 网 N2, 即报文所发向的目标局域网为 N2; 隧道标签 11标识 PE1处于隧道 T2中;
给 PE1 分配的标签处理信息为: 在 ·^艮文的帧结构的头部前端增加一个 以太网二层头部, 在报文中插入网络标签 201、 以及隧道标签 11 , 使在报 文的帧结构上, 网络标签 201位于隧道标签 11后端, 以太网二层头部位于 隧道标签 11的前端;
给 Ρ2分配的标签为隧道标签 12。 隧道标签 12用于标识 Ρ2处于隧道 Τ2中;
给 Ρ2分配的标签处理信息为: 将报文的隧道标签更新为隧道标签 12 ; 给 ΡΕ2分配的标签处理信息为: 删除隧道标签 12、 网络标签 201以及 以太网二层头部。
其它隧道可以参照隧道 Τ2类推, 这里不再赘述。
步骤 3004: 生成各路由器的流表, 各流表分别包括匹配项信息、 以及 指令项信息, 各指令项信息分别与各匹配项信息相对应。
网络控制器根据各隧道途经的路由器的路由控制信息, 生成各路由器 的流表。 其中, 路由器的路由控制信息包括: 路由器沿隧道转发报文的转发信 息、 路由器在各个隧道对应的标签以及路由器在转发报文前对标签的处理 信息。 流表的概念以及格式, 与实施例 2中的叙述相同, 这里不再赘述。
具体的, 参见图 1 , 以 L2VPN C的隧道 T2举例, 其它隧道的情况可以 类推。
网络控制器为 PE1确定的路由控制信息为:
PE1从 1号接口将报文转发给 P2; 给 PE1分配网络标签 201和隧道标 签 11。 其中网络标签 201 标识局域网 N2 , 即 4艮文所发向的目标局域网为 N2;隧道标签 11标识 PE1处于隧道 T2中;给 PE1分配的标签处理信息为: 在 4艮文的帧结构的头部前端增加一个以太网二层头部, 在 4艮文中插入网络 标签 201、 以及隧道标签 11 , 使在报文的帧结构上, 网络标签 201位于隧 道标签 11后端, 以太网二层头部位于隧道标签 11的前端;
则相应的,生成路由器 PE1在隧道 T2中转发报文时相应的流表为表 4: 表 4: PE1在隧道 T2转发报文时相应的流表
Figure imgf000032_0001
其中, VSI=V1 , MAC=xx与实施例 2中的表述相同。 网络控制器为 P2确定的路由控制信息为:
P2从 2号接口将报文转发给 PE2; 给 P2分配的标签为隧道标签 12。 隧道标签 12用于标识 P2处于隧道 T2中; 给 P2分配的标签处理信息为: 将报文的隧道标签更新为隧道标签 12;
则相应的,生成路由器 PE1在隧道 T2中转发报文时相应的流表为表 5: 表 5: 路由器 P2在隧道 T2中转发报文时相应的流表
Figure imgf000033_0001
网络控制器为 PE2确定的路由控制信息为:
给 PE2分配的标签处理信息为: 删除隧道标签 12、 网络标签 201以及 以太网二层头部。
此外, PE2作为隧道出口路由器, 需要将报文从 PE2的 5号接口转发 到目标网络 N2。
因此, 生成路由器 PE2在隧道 T2中转发报文时相应的流表为表 6: 表 6: 路由器 PE2在隧道 T2中转发报文时相应的流表
Figure imgf000033_0002
步骤 3005: 向各路由器分别发送各路由器的流表。 网络控制器向各路由器发送各路由器的流表, 以供各路由器根据流表 实现报文的转发。
具体的, 参见图 1 , 以 L2VPN C的隧道 T2举例。 网络控制器将表 4 中的流表发送到路由器 PE1 ; 网络控制器将表 5中的流表发送到路由器 P2; 网络控制器将表 6中的流表发送到路由器 PE2。 各个路由器接收到流表后, 存储流表, 以供对未来接收的报文进行转发。
由上可见, 应用本实施例技术方案, 可以通过采用一网络控制器对公 共网路中的路由器实现集中管理, 通过获取公共网络各路由器的路由信息 以及公共网络中位于网络边沿的各所述路由器与任一局域网的连接信息, 确定报文在 L2VPN的任意两局域网之间传输应途经的隧道的路径信息,再 确定各个路由器的路由控制信息, 包括各个路由器沿着隧道转发报文的转 发信息、 各个路由器分配的标签以及标签的处理信息, 并把各个路由器的 路由控制信息发送到各路由器存储, 以供各路由器根据路由器的路由控制 信息转发报文。 相对于现有技术: 该过程需要在公共网络中的路由器之间 运行标签相关的协议, 才能确定报文传输所要经过的隧道, 进而为路由器 自身分配标签、 标签处理信息以及生成相应的路由器的路由控制信息, 本 实施例公共网络中的路由器不需要进行标签协议的计算来生成本路由器的 控制信息, 因此本实施例降低了公共网络中路由器的计算开销。
此外, 在本实施例中, 将路由器的路由控制信息统一抽象为流表信息, 便于实现路由器控制信息的集中管理, 同时能够方便扩展, 使路由器提供 更多的功能, 满足不同报文转发的需求。
实施例 4:
参见图 4, 本实施例提供了一种路由方法, 其应用场景可以是通过公共 网络传输两地理位置分散的同一 L2VPN的两个局域网之间的数据报文。公 共网络可以但不限于是公共 MPLS 网络, 还可以是其它能够运行标签协议 的互联网。
本实施例提供方法的流程步骤如下:
步骤 4001 : 路由器接收报文。
其中, 本实施例的路由器指公共网络中的路由器, 路由器所接收的报 文是在二层虚拟专用网中与公共网络分别连接的任意两局域网之间传输的 报文。
步骤 4002: 路由器比较报文的信息与路由器预存的流表内的匹配项信 息, 将流表中与报文匹配的一匹配项作为报文匹配项。
具体的, 在本实施例中, 路由器预存的各流表, 各指令项信息分别与 各匹配项信息相对应。
流表的各匹配项信息包括: 报文需要满足的各特征信息, 流表的匹配 项信息包括以下的任一或者任意两个或者两个以上的组合:
隧道的隧道标识、 ^艮文中的标签值、 ^艮文的入口接口标识、 二层虚拟 专用网的虚拟交换实例值。
流表的各指令项信息包括: 路由器转发报文的转发信息、 路由器在转 发报文前对标签的处理信息。
各指令项信息包括以下的任一或者任意两个或者两个以上的组合: 增加或删除报文的二层头部, 在报文中插入路由器对应的标签, 将所 述报文中的标签值更新为路由器对应的标签, 删除报文中的标签, 转发报 文的转发信息。
关于流表更详尽的描述请参见实施例 2中流表的表述, 这里不再赘述。 公共网络中的路由器预存有不同流表, 当路由器接收报文, 将报文信 息与流表的匹配项信息相比较, 如果报文的特征与匹配项信息相匹配, 就 相应该流表的一匹配项作为 4艮文匹配项, 路由器将相应执行 4艮文匹配项对 应的指令项信息的对应的指令操作。
步骤 4003 : 路由器按照报文匹配项对应的指令项信息处理报文以及转 发报文。 网络控制器下面以图 1 提供的公共多协议标签交换网络与二层虚 拟专用网的局域网连接的拓朴示意图, 来说明 L2VPN应用场景中的路由方 法。
这里假设 L2VPN A为 VLL, 其包含两个局域网 N1和 N2, 设 N1连接 到 PE1的 2号接口, N2连接到 PE2的 5号接口。设网络控制器预先所确定 的 N1向 N2转发报文方向的隧道 T2的路径信息为: 出 PE1的 1号接口到 达 P2, 再出 P2的 2号口到达 PE2。 并设网络控制器为隧道 T2途经的各路 由器所确定的流表如表 2所示。
,路由器 PE1接收报文, 参见图 1 , PE1接收的报文可能来自 N1网络, 也可能来自 N3网络, 显然来自 N3网络的 ·^艮文就不属于本例中的 VLL。 参 见表 2, PE1接收报文后, 如果报文的入口接口标识为 2号接口, 与 PE1 中 Table 0的匹配项信息相匹配, 路由器 PE1将 "IN— PORT=2"作为 4艮文匹 配项, 执行 Table 0的指令项信息对应的指令操作, 具体的, 路由器 PE1执 行 APPLY_ACTIONS {ADD ETH HDR} , 在报文的帧结构头部前面增加一 个 以 太 网 二 层 头 部 , 作 为 4艮文新 的 头 部 ; PE1 执 行 APPLY ACTIONS (PUSH_MPLS(201)}在报文的以太网二层头部后面插入 网络标签 201; PE1执行 APPLY— ACTIONS {WRITE— METADATA(T2)} , 用 于传递参数 Τ2 给下一条流表 Table 5 使用 ; PE1 执行 APPLY— ACTIONS {GOTO— TABLE(5)} , 用于跳转执行 Table 5 ; PEl继续执 行 Table 5 的 指 令 项 信 息 中 的 指 令 , PE1 执 行 APPLY— ACTIONS { PUSH— MPLS(l l)} , 在报文的以太网二层头部后面插入 一隧道标签 11 , 这样网络标签 201 就位于隧道标签 11 之后; PE1 执行 APPLY_ACTIONS{ OUTPUT(l)} , 将报文从路由器的 1号接口转发到路由 器 P2。
路由器 P2、 路由器 PE2对报文的路由过程, 请参见路由器 PE1对报文 的路由过程的描述, 由于不同路由器预存不同的流表, 因此不同路由器流 表的匹配项信息以及指令项信息不同, 进行的操作也就相应不同。 P2 以及 PE2的路由过程, 在此不再赘述。
由上可见, 应用本实施例技术方案, 公共网络中的路由器对来自局域 网的报文进行转发时, 不再需要运行标签相关的协议, 而是根据机械地根 据预存的流表, 对流表的匹配项与报文中的对应信息进行比对, 然后按照 相匹配的匹配项所对应的指令项内的指令执行对 ^艮文的处理以及转发即 可。 本实施例降低了公共网络中路由器的计算开销。
实施例 5:
参见图 5 , 本实施例提供了一种网络控制器 5000, 包括路由信息获取 单元 5001、 隧道管理单元 5002、 路由控制信息管理单元 5003 以及第一收 发单元 5004。
路由信息获取单元 5001 , 与隧道管理单元 5002通信连接, 用于预先获 取公共网络中各路由器的路由信息, 以及获取二层虚拟专用网的各局域网 与公共网络的连接信息, 以及将所获取的公共网络中各路由器的路由信息 以及二层虚拟专用网的各局域网与公共网络的连接信息传输到隧道管理单 元 5002; 该单元的详细工作原理可以参见实施例 1中步骤 2001 , 其中公共 网络可以但不限于是公共 MPLS 网络。 二层虚拟专用网包括公共网络、 以 及至少两个通过所述公共网络连接的局域网; 路由器的路由信息以及各局 域网与公共网络的连接信息的定义与参见实施例 1 中的表述相同, 这里不 再赘述。
隧道管理单元 5002, 与路由控制信息管理单元 5003通信连接, 用于根 据路由信息获取单元 5001传输的各所述路由器的路由信息、 以及二层虚拟 专用网的各局域网与公共网络的连接信息, 确定报文在任意两所述局域网 之间的所述公共网络传输时, 应途经的隧道的路径信息, 以及将各隧道的 路径信息发送到路由控制信息管理单元 5003; 该单元的详细工作原理参见 实施例 1中步骤 2002。 关于隧道的路径信息的表述, 请参见实施例 1中的 表述, 这里不再赘述。
路由控制信息管理单元 5003 , 用于根据各隧道的路径信息, 确定各路 由器沿各隧道转发报文的转发信息, 为各隧道途经的各路由器分配标签、 以及各路由器在转发报文前对标签的处理信息, 以及将各路由器的路由控 制信息发送到所述第一收发单元 5004。 该单元的工作原理可以参见实施例 1中的步骤 2003。
其中, 标签为: 公共多协议标签交换标签, 路由控制信息包括: 各路 由器沿各隧道转发报文的转发信息、 各路由器在各隧道对应的标签、 以及 各路由器在转发报文前对标签的处理信息。
第一收发单元 5004, 与路由控制信息管理单元 5003通信连接, 用于接 收路由控制信息管理单元 5003发送的各路由器的路由控制信息, 通过网络 协议向各路由器分别发送各路由控制信息, 以供各路由器根据各路由控制 信息转发报文, 该单元的工作原理对应于实施例 1中的步骤 2004。
本实施例提供的一种网络控制器 5000,其路由控制信息管理单元 5003 , 用于为各隧道途经的各路由器分配标签、 以及各路由器在转发报文前 对标签的处理信息, 具体是用于:
根据各隧道的路径信息, 为各入口路由器分别分配网络标签以及隧道 标签,
入口路由器为: 位于各隧道入口的各边沿路由器, 边沿路由器为公共 网络中处于边沿的路由器, 各网络标签分别与各局域网相对应, 各隧道标 签与路由器所在的各隧道相对应,
确定各入口路由器在转发报文前对标签的处理信息为: 在报文的帧结 构的头部前端增加二层头部, 在 4艮文中插入 4艮文目的局域网对应的网络标 签、 以及报文应途经的隧道对应的隧道标签, 使在报文的帧结构上, 网络 标签位于隧道标签后端, 二层头部位于隧道标签的前端;
根据各隧道的路径信息, 为各中继路由器分别分配各隧道标签, 各所述中继路由器为: 各隧道内的任一非边沿路由器;
确定各路由器在转发报文前对标签的处理信息为, 将报文中的标签值 更新为: 中继路由器在报文应途经的隧道对应的隧道标签;
根据各隧道的路径信息, 确定各出口路由器在转发报文前对标签的处 理信息为: 删除 ·^艮文中的二层头部、 隧道标签以及网络标签。
本实施例提供的一种网络控制器实现了实施例 1提供的路由管理方法。 由上可见, 应用本实施例技术方案, 可以通过采用该网络控制器对公 共网路中的路由器实现集中管理, 通过获取公共网络各路由器的路由信息 以及公共网络中位于网络边沿的各所述路由器与任一局域网的连接信息, 确定报文在 L2VPN的任意两局域网之间传输应途经的隧道的路径信息,再 确定各个路由器的路由控制信息, 包括各个路由器沿着隧道转发报文的转 发信息、 各个路由器分配的标签以及标签的处理信息, 并把各个路由器的 路由控制信息发送到各路由器存储, 以供各路由器根据路由器的路由控制 信息转发报文。 相对于现有技术: 该过程需要在公共网络中的路由器之间 运行标签相关的协议, 才能确定报文传输所要经过的隧道, 进而为路由器 自身分配标签、 标签处理信息以及生成相应的路由器的路由控制信息, 本 实施例公共网络中的路由器不需要进行标签协议的计算来生成本路由器的 控制信息, 因此本实施例降低了公共网络中路由器的计算开销。
实施例 6:
参见图 6, 本实施例提供了一种网络控制器 6000, 包括路由信息获取 单元 6001、 隧道管理单元 6002、路由控制信息管理单元 6003、 流表管理单 元 6004以及第一收发单元 6005。 各部分的工作原理如下:
路由信息获取单元 6001 , 与隧道管理单元 6002通信连接, 用于预先获 取公共网络中各路由器的路由信息, 以及获取二层虚拟专用网的各局域网 与公共网络的连接信息, 以及将所获取的公共网络中各路由器的路由信息 以及二层虚拟专用网的各局域网与公共网络的连接信息传输到隧道管理单 元 6002; 该单元的详细工作原理可以参见实施例 2中步骤 3001 , 其中公共 网络可以但不限于是公共 MPLS 网络。 二层虚拟专用网包括公共网络、 以 及至少两个通过所述公共网络连接的局域网; 路由器的路由信息以及各局 域网与公共网络的连接信息的定义与参见实施例 1 中的表述相同, 这里不 再赘述。
隧道管理单元 6002, 与路由控制信息管理单元 6003通信连接, 用于根 据路由信息获取单元 6001传输的各所述路由器的路由信息、 以及二层虚拟 专用网的各局域网与公共网络的连接信息, 确定报文在任意两所述局域网 之间的所述公共网络传输时, 应途经的隧道的路径信息, 以及将各隧道的 路径信息发送到路由控制信息管理单元 6003; 该单元的详细工作原理参见 实施例 2中步骤 3002。 关于隧道的路径信息的表述, 请参见实施例 1中的 表述, 这里不再赘述。
路由控制信息管理单元 6003 , 与流表管理单元 6004通信连接, 用于根 据各隧道的路径信息, 确定各路由器沿各隧道转发报文的转发信息, 为各 隧道途经的各路由器分配标签、 以及各路由器在转发报文前对标签的处理 信息, 以及将各路由器的各路由控制信息发送到流表管理单元 6004。
该单元的工作原理可以参见实施例 2中的步骤 3003。
其中, 其中标签为: 公共多协议标签交换标签, 路由控制信息包括: 各路由器沿各隧道转发报文的转发信息、 各路由器在各隧道对应的标签、 以及各路由器在转发 ·^艮文前对标签的处理信息。
流表管理单元 6004,连接在路由控制信息管理单元 6003与第一收发单 元 6005之间, 流表管理单元 6004用于根据路由控制信息管理单元 6003输 入的各路由器的路由控制信息生成各路由器的流表, 并把流表传输给第一 收发单元 6005。该单元的工作原理可以参见实施例 2中步骤 3004以及流表 相关的描述。
其中, 各路由器的流表分别包括匹配项信息、 以及指令项信息, 各指 令项信息分别与各匹配项信息相对应。
第一收发单元 6005 , 与流表管理单元 6004通信连接, 用于接收流表管 理单元 6004发送的各路由器的流表, 通过网络协议向各路由器发送各路由 器的流表, 以供各路由器根据各路由器的流表转发报文, 该单元的工作原 理对应于实施例 2中的步骤 3005。
本实施例提供的一种网络控制器 6000,其路由控制信息管理单元 6003 , 用于为各隧道途经的各路由器分配标签、 以及各路由器在转发报文前 对标签的处理信息, 具体是用于:
根据各隧道的路径信息, 为各入口路由器分别分配网络标签以及隧道 标签,
入口路由器为: 位于各隧道入口的各边沿路由器, 边沿路由器为公共 网络中处于边沿的路由器, 各网络标签分别与各局域网相对应, 各隧道标 签与路由器所在的各隧道相对应,
确定各入口路由器在转发报文前对标签的处理信息为: 在报文的帧结 构的头部前端增加二层头部, 在 4艮文中插入 4艮文目的局域网对应的网络标 签、 以及报文应途经的隧道对应的隧道标签, 使在报文的帧结构上, 网络 标签位于隧道标签后端, 二层头部位于隧道标签的前端;
根据各隧道的路径信息, 为各中继路由器分别分配各隧道标签, 各所述中继路由器为: 各隧道内的任一非边沿路由器;
确定各路由器在转发报文前对标签的处理信息为, 将报文中的标签值 更新为: 中继路由器在报文应途经的隧道对应的隧道标签;
根据各隧道的路径信息, 确定各出口路由器在转发报文前对标签的处 理信息为: 删除 ·^艮文中的二层头部、 隧道标签以及网络标签。
本实施例提供的网络控制器实现了实施例 2提供的一种路由管理方法 的流程。
由上可见, 本实施例除了实施例 4具备的有益效果外, 还具备以下有 益效果:
将路由器的路由控制信息统一抽象为流表信息, 便于实现路由控制信 息的集中管理, 同时能够方便扩展, 使路由器提供更多的功能, 满足不同 报文转发的需求。
实施例 7:
参见图 7,本实施例提供了一种路由器 7000,包括:第二收发单元 7001、 流表存储单元 7002、 报文比较单元 7003、 以及报文处理单元 7004。
其中, 第二收发单元 7001 , 用于与外部通信, 包括: 接收外部设备如 网络控制器发送的本路由器的流表、接收以及转发报文。第二收发单元 7001 与流表存储单元 7002通信连接, 将接收的流表发送到流表存储单元 7002 中。
流表存储单元 7002用于存储信息, 存储的信息包括: 路由器的流表。 其中在流表中, 包括匹配项信息与指令项信息, 各指令项信息分别与 各匹配项信息相对应, 所述流表的各匹配项信息包括: 报文需满足的各特 征信息, 流表的各指令项信息包括: 路由器转发报文的转发信息、 路由器 在转发艮文前对标签的处理信息。
第二收发单元 7001与报文比较单元 7003通信连接, 用于接收两局域 网之间在公共网络中传输的报文, 并将报文传输到报文比较单元 7003。
报文比较单元 7003 , 还分别与流表存储单元 7002 以及报文处理单元 7004通信连接, 用于根据第二收发单元 7001收到的报文、 以及预存流表存 储单元 7002中的流表, 比较报文的信息与流表内的匹配项信息, 将流表中 与 4艮文匹配的一匹配项作为 4艮文匹配项。
报文处理单元 7004,分别与流表存储单元 7002以及第二收发单元 7001 通信连接, 用于按照报文匹配项对应的指令项信息处理报文比较单元 7003 传输来的报文, 并将处理后的报文发送到第二收发单元 7001。
本实施例提供的路由器实现了实施例 3提供的一种路由方法的流程。 具体过程不再赘述。
由上可见, 应用本实施例技术方案, 公共网络中的路由器对来自局域 网的报文进行转发时, 不再需要运行标签相关的协议, 而是根据预存的路 由器的流表对报文进行处理以及转发。 本实施例降低了公共网络中路由器 的计算开销。
实施例 8:
参见图 8 , 本实施例提供了一种网络控制器 8000 , 包括路由信息获取 器 8001、隧道管理器 8002、路由控制信息管理器 8003以及第一收发器 8004。
路由信息获取器 8001 , 与隧道管理器 8002连接, 用于预先获取公共网 络中各路由器的路由信息, 以及获取二层虚拟专用网的各局域网与公共网 络的连接信息, 以及将所获取的公共网络中各路由器的路由信息以及二层 虚拟专用网的各局域网与公共网络的连接信息传输到隧道管理器 8002 ; 该 器件的详细工作原理可以参见实施例 1中步骤 2001 , 其中公共网络可以但 不限于是公共 MPLS网络。 二层虚拟专用网包括公共网络、 以及至少两个通 过所述公共网络连接的局域网; 路由器的路由信息以及各局域网与公共网 络的连接信息的定义与参见实施例 1中的表述相同, 这里不再赘述。
隧道管理器 8002 , 与路由控制信息管理器 8003连接, 用于根据路由信 息获取器 8001传输的各所述路由器的路由信息、 以及二层虚拟专用网的各 局域网与公共网络的连接信息, 确定报文在任意两所述局域网之间的所述 公共网络传输时, 应途经的隧道的路径信息, 以及将各隧道的路径信息发 送到路由控制信息管理器 8003; 该器件的详细工作原理参见实施例 1中步 骤 2002。 关于隧道的路径信息的表述, 请参见实施例 1中的表述, 这里不 再赘述。
路由控制信息管理器 8003 , 用于根据各隧道的路径信息, 确定各路由 器沿各隧道转发报文的转发信息, 为各隧道途经的各路由器分配标签、 以 及各路由器在转发报文前对标签的处理信息, 以及将各路由器的路由控制 信息发送到所述第一收发器 8004。 该器件的工作原理可以参见实施例 1中 的步骤 2003。
其中, 标签为: 公共多协议标签交换标签, 路由控制信息包括: 各路 由器沿各隧道转发报文的转发信息、 各路由器在各隧道对应的标签、 以及 各路由器在转发报文前对标签的处理信息。
第一收发器 8004 , 与路由控制信息管理器 8003连接, 用于接收路由控 制信息管理器 8003发送的各路由器的路由控制信息, 通过网络协议向各路 由器分别发送各路由控制信息, 以供各路由器根据各路由控制信息转发报 文, 该器件的工作原理对应于实施例 1中的步骤 2004。
本实施例提供的一种网络控制器 8000 , 其路由控制信息管理器 8003 , 用于为各隧道途经的各路由器分配标签、 以及各路由器在转发报文前 对标签的处理信息, 具体是用于:
根据各隧道的路径信息, 为各入口路由器分别分配网络标签以及隧道 标签,
入口路由器为: 位于各隧道入口的各边沿路由器, 边沿路由器为公共 网络中处于边沿的路由器, 各网络标签分别与各局域网相对应, 各隧道标 签与路由器所在的各隧道相对应, 确定各入口路由器在转发报文前对标签的处理信息为: 在报文的帧结 构的头部前端增加二层头部, 在 4艮文中插入 4艮文目的局域网对应的网络标 签、 以及报文应途经的隧道对应的隧道标签, 使在报文的帧结构上, 网络 标签位于隧道标签后端, 二层头部位于隧道标签的前端;
根据各隧道的路径信息, 为各中继路由器分别分配各隧道标签, 各所述中继路由器为: 各隧道内的任一非边沿路由器;
确定各路由器在转发报文前对标签的处理信息为, 将报文中的标签值 更新为: 中继路由器在报文应途经的隧道对应的隧道标签;
根据各隧道的路径信息, 确定各出口路由器在转发报文前对标签的处 理信息为: 删除 ·^艮文中的二层头部、 隧道标签以及网络标签。
本实施例提供的一种网络控制器实现了实施例 1提供的路由管理方法。 由上可见, 应用本实施例技术方案, 可以通过采用该网络控制器对公 共网路中的路由器实现集中管理, 通过获取公共网络各路由器的路由信息 以及公共网络中位于网络边沿的各所述路由器与任一局域网的连接信息, 确定报文在 L2VPN 的任意两局域网之间传输应途经的隧道的路径信息, 再 确定各个路由器的路由控制信息, 包括各个路由器沿着隧道转发报文的转 发信息、 各个路由器分配的标签以及标签的处理信息, 并把各个路由器的 路由控制信息发送到各路由器存储, 以供各路由器根据路由器的路由控制 信息转发报文。 相对于现有技术: 该过程需要在公共网络中的路由器之间 运行标签相关的协议, 才能确定报文传输所要经过的隧道, 进而为路由器 自身分配标签、 标签处理信息以及生成相应的路由器的路由控制信息, 本 实施例公共网络中的路由器不需要进行标签协议的计算来生成本路由器的 控制信息, 因此本实施例降低了公共网络中路由器的计算开销。 实施例 :9:
参见图 9 , 本实施例提供了一种网络控制器 9000 , 包括路由信息获取 器 9001、 隧道管理器 9002、 路由控制信息管理器 9003、 流表管理器 9004 以及第一收发器 9005。 各部分的工作原理如下:
路由信息获取器 9001 , 与隧道管理器 9002连接, 用于预先获取公共网 络中各路由器的路由信息, 以及获取二层虚拟专用网的各局域网与公共网 络的连接信息, 以及将所获取的公共网络中各路由器的路由信息以及二层 虚拟专用网的各局域网与公共网络的连接信息传输到隧道管理器 9002 ; 该 器件的详细工作原理可以参见实施例 1中步骤 3001 , 其中公共网络可以但 不限于是公共 MPLS网络。 二层虚拟专用网包括公共网络、 以及至少两个通 过所述公共网络连接的局域网; 路由器的路由信息以及各局域网与公共网 络的连接信息的定义与参见实施例 1中的表述相同, 这里不再赘述。
隧道管理器 9002 , 与路由控制信息管理器 9003连接, 用于根据路由信 息获取器 9001传输的各所述路由器的路由信息、 以及二层虚拟专用网的各 局域网与公共网络的连接信息, 确定报文在任意两所述局域网之间的所述 公共网络传输时, 应途经的隧道的路径信息, 以及将各隧道的路径信息发 送到路由控制信息管理器 9003; 该器件的详细工作原理参见实施例 1中步 骤 3002。 关于隧道的路径信息的表述, 请参见实施例 1中的表述, 这里不 再赘述。
路由控制信息管理器 9003 , 与流表管理器 9004连接, 用于根据各隧道 的路径信息, 确定各路由器沿各隧道转发报文的转发信息, 为各隧道途经 的各路由器分配标签、 以及各路由器在转发报文前对标签的处理信息, 以 及将各路由器的各路由控制信息发送到流表管理器 9004。 该器件的工作原理可以参见实施例 1中的步骤 3003。
其中, 其中标签为: 公共多协议标签交换标签, 路由控制信息包括: 各路由器沿各隧道转发报文的转发信息、 各路由器在各隧道对应的标签、 以及各路由器在转发 ·^艮文前对标签的处理信息。
流表管理器 9004 ,连接在路由控制信息管理器 9003与第一收发器 9005 之间, 流表管理器 9004用于根据路由控制信息管理器 9003输入的各路由 器的路由控制信息生成各路由器的流表,并把流表传输给第一收发器 9005。 该器件的工作原理可以参见实施例 2中步骤 3004以及流表相关的描述。
其中, 各路由器的流表分别包括匹配项信息、 以及指令项信息, 各指 令项信息分别与各匹配项信息相对应。
第一收发器 9005 ,与流表管理器 9004连接,用于接收流表管理器 9004 发送的各路由器的流表, 通过网络协议向各路由器发送各路由器的流表, 以供各路由器根据各路由器的流表转发报文, 该器件的工作原理对应于实 施例 2中的步骤 3005。
本实施例提供的一种网络控制器 9000 , 其路由控制信息管理器 9003 , 用于为各隧道途经的各路由器分配标签、 以及各路由器在转发报文前 对标签的处理信息, 具体是用于:
根据各隧道的路径信息, 为各入口路由器分别分配网络标签以及隧道 标签,
入口路由器为: 位于各隧道入口的各边沿路由器, 边沿路由器为公共 网络中处于边沿的路由器, 各网络标签分别与各局域网相对应, 各隧道标 签与路由器所在的各隧道相对应,
确定各入口路由器在转发报文前对标签的处理信息为: 在报文的帧结 构的头部前端增加二层头部, 在 4艮文中插入 4艮文目的局域网对应的网络标 签、 以及报文应途经的隧道对应的隧道标签, 使在报文的帧结构上, 网络 标签位于隧道标签后端, 二层头部位于隧道标签的前端;
根据各隧道的路径信息, 为各中继路由器分别分配各隧道标签, 各所述中继路由器为: 各隧道内的任一非边沿路由器;
确定各路由器在转发报文前对标签的处理信息为, 将报文中的标签值 更新为: 中继路由器在报文应途经的隧道对应的隧道标签;
根据各隧道的路径信息, 确定各出口路由器在转发报文前对标签的处 理信息为: 删除 ·^艮文中的二层头部、 隧道标签以及网络标签。
本实施例提供的网络控制器实现了实施例 1提供的一种路由管理方法 的流程。
由上可见, 本实施例除了实施例 7 具备的有益效果外, 还具备以下有 益效果:
将路由器的路由控制信息统一抽象为流表信息, 便于实现路由控制信 息的集中管理, 同时能够方便扩展, 使路由器提供更多的功能, 满足不同 报文转发的需求。
实施例 10:
参见图 1 0 ,本实施例提供了一种路由器 1 0000 ,包括:第二收发器 1 0001、 流表存储器 1 0002、 报文比较器 1 0003、 以及报文处理器 1 0004。
其中, 第二收发器 1 0001 , 用于与外部通信, 包括: 接收外部设备如网 络控制器发送的本路由器的流表、 接收以及转发报文。 第二收发器 1 0001 与流表存储器 1 0002通信连接, 将接收的流表发送到流表存储器 1 0002中。
流表存储器 1 0002用于存储信息, 存储的信息包括: 路由器的流表。 其中在流表中, 包括匹配项信息与指令项信息, 各指令项信息分别与 各匹配项信息相对应, 所述流表的各匹配项信息包括: 报文需满足的各特 征信息, 流表的各指令项信息包括: 路由器转发报文的转发信息、 路由器 在转发艮文前对标签的处理信息。
第二收发器 1 0001与报文比较器 1 0003连接, 用于接收两局域网之间 在公共网络中传输的报文, 并将报文传输到报文比较器 1 0003。
报文比较器 1 0003 , 还分别与流表存储器 1 0002以及报文处理器 1 0004 连接, 用于根据第二收发器 1 0001收到的报文、 以及预存流表存储器 1 0002 中的流表, 比较报文的信息与流表内的匹配项信息, 将流表中与报文匹配 的一匹配项作为 4艮文匹配项。
报文处理器 1 0004 ,分别与流表存储器 1 0002以及第二收发器 1 0001通 信连接, 用于按照报文匹配项对应的指令项信息处理报文比较器 1 0003传 输来的报文, 并将处理后的报文发送到第二收发器 1 0001。
本实施例提供的路由器实现了实施例 3提供的一种路由方法的流程。 具体过程不再赘述。
由上可见, 应用本实施例技术方案, 公共网络中的路由器对来自局域 网的报文进行转发时, 不再需要运行标签相关的协议, 而是根据预存的路 由器的流表对报文进行处理以及转发。 本实施例降低了公共网络中路由器 的计算开销。
以上所描述的装置实施例仅仅是示意性的, 其中所述作为分离部件说 是或者也可以不是物理单元, 即可以位于一个地方, 或者也可以分布到多 个网络单元上。 可以根据实际的需要选择其中的部分或者全部模块来实现 本实施例方案的目的。 本领域普通技术人员在不付出创造性的劳动的情况 下, 即可以理解并实施。
通过以上的实施方式的描述, 本领域的技术人员可以清楚地了解到各 实施方式可借助软件加必需的通用硬件平台的方式来实现, 当然也可以通 过硬件。 基于这样的理解, 上述技术方案本质上或者说对现有技术做出贡 献的部分可以以软件产品的形式体现出来, 该计算机软件产品可以存储在 计算机可读存储介质中, 如 ROM/RAM、 磁碟、 光盘等, 包括若干指令用 以使得一台计算机设备(可以是个人计算机, 服务器, 或者网络设备等) 执行各个实施例或者实施例的某些部分所述的方法。
以上所述的实施方式, 并不构成对术方案保护范围的限定。 任何在上 述实施方式的精神和原则之内所作的修改、 等同替换和改进等, 均应包含 在该技术方案的保护范围之内。

Claims

权利要求
1、 一种路由管理方法, 其特征在于, 包括:
网络控制器接收二层虚拟专用网创建请求, 二层虚拟专用网包括公共 网络、 以及至少两个通过所述公共网络连接的局域网;
网络控制器根据所述公共网络中各路由器的路由信息、 以及各所述局 域网与所述公共网络的连接信息, 确定任意两所述局域网之间的报文在所 述公共网络传输时应途经的隧道的路径信息;
根据各所述隧道的所述路径信息, 确定各所述路由器沿各所述隧道转 发所述报文的转发信息, 为各所述隧道途经的各所述路由器分配标签、 以 及各所述路由器在转发所述报文前对所述标签的处理信息, 所述标签为: 公共多协议标签交换标签;
向各所述路由器分别发送各所述路由控制信息, 所述路由控制信息包 括: 各所述路由器沿各所述隧道转发所述报文的转发信息、 各所述路由器 在各所述隧道对应的标签、 以及各所述路由器在转发所述报文前对所述标 签的处理信息, 以供各所述路由器根据各所述路由控制信息转发所述报文。
2、 根据权利要求要求 1所述的路由管理方法, 其特征在于,
在步骤: 向各所述路由器分别发送各所述路由控制信息之前, 在步骤: 根据各所述隧道的所述路径信息, 确定各所述路由器沿各所 述隧道转发所述报文的转发信息之后, 还包括:
生成各所述路由器的流表, 各所述流表分别包括匹配项信息、 以及指 令项信息, 各所述指令项信息分别与各所述匹配项信息相对应;
根据各所述路由器在各所述隧道对应的标签、 以及各所述隧道的所述 路径信息, 确定各所述流表的匹配项信息, 根据各所述路由器沿各所述隧道转发所述报文的转发信息、 各所述路 由器在各所述隧道对应的标签、 以及各所述路由器在转发所述报文前对所 述标签的处理信息, 确定各指令项信息,
以供所述路由器在收到所述报文后, 按照所述流表中、 与所述报文相 匹配的所述匹配项信息相对应的所述指令项信息转发所述报文;
向各所述路由器分别发送各所述路由控制信息, 具体是: 向各所述路 由器分别发送各所述路由器的所述流表。
3、 根据权利要求要求 2所述的路由管理方法, 其特征在于, 各所述流表的匹配项信息包括以下的任一或者任意两个或者两个以上 的组合:
所述隧道的隧道标识、 所述报文中的标签值、 所述报文的入口接口标 识、 所述二层虚拟专用网的虚拟交换实例值。
4、 根据权利要求要求 2或 3所述的路由管理方法, 其特征在于, 各指令项信息包括以下的任一或者任意两个或者两个以上的组合: 增加或删除报文的二层头部, 在所述报文中插入所述路由器对应的所 述标签, 将所述报文中的标签值更新为所述路由器对应的所述标签, 删除 所述报文中的标签, 转发所述报文的转发信息。
5、 根据权利要求要求 1或 2或 3所述的路由管理方法, 其特征在于, 步骤: 为各所述隧道途经的各所述路由器分配标签、 以及各所述路由 器在转发所述 ·^艮文前对所述标签的处理信息, 包括:
根据各所述隧道的所述路径信息, 为各入口路由器分别分配网络标签 以及隧道标签,
所述入口路由器为: 位于各所述隧道入口的各边沿路由器, 所述边沿 路由器为公共网络中处于边沿的路由器, 各所述网络标签分别与各所述局 域网相对应, 各所述隧道标签与所述路由器所在的各所述隧道相对应, 确定各所述入口路由器在转发所述报文前对所述标签的处理信息为: 在所述报文的帧结构的头部前端增加二层头部, 在所述报文中插入所述报 文目的局域网对应的所述网络标签、 以及所述 4艮文应途经的所述隧道对应 的所述隧道标签, 使在所述报文的帧结构上, 所述网络标签位于所述隧道 标签后端, 所述二层头部位于所述隧道标签的前端;
根据各所述隧道的所述路径信息, 为各中继路由器分别分配各所述隧 道标签,
各所述中继路由器为: 各所述隧道内的任一非边沿路由器;
确定各所述中继路由器在转发所述报文前对所述标签的处理信息为, 将所述报文中的标签值更新为: 所述中继路由器在所述报文应途经的所述 隧道对应的所述隧道标签;
根据各所述隧道的所述路径信息, 确定各出口路由器在转发所述报文 前对所述标签的处理信息为: 删除所述报文中的所述二层头部、 所述隧道 标签以及所述网络标签。
6、 一种路由方法, 其特征在于, 包括:
路由器接收报文, 所述路由器位于公共网络, 所述报文为: 二层虚拟 专用网中与所述公共网络分别连接的任意两局域网之间传输的报文;
所述路由器比较所述报文的信息与所述路由器预存的流表内的匹配项 信息, 将所述流表中与所述报文匹配的一所述匹配项作为报文匹配项, 在所述流表中, 各所述指令项信息分别与各所述匹配项信息相对应, 所述流表的各所述匹配项信息包括: 所述报文需满足的各特征信息, 所述流表的各所述指令项信息包括: 所述路由器转发所述报文的转发 信息、 所述路由器在转发所述报文前对所述标签的处理信息;
所述路由器按照所述报文匹配项对应的所述指令项信息处理所述报文 以及转发所述 4艮文。
7、 根据权利要求 6所述的一种路由方法, 其特征在于,
各所述流表的匹配项信息包括以下的任一或者任意两个或者两个以上 的组合:
所述隧道的隧道标识、 所述报文中的标签值、 所述报文的入口接口标 识、 所述二层虚拟专用网的虚拟交换实例值。
8、 根据权利要求 6或 7所述的一种路由方法, 其特征在于, 各指令项信息包括以下的任一或者任意两个或者两个以上的组合: 增加或删除报文的二层头部, 在所述报文中插入所述路由器对应的所 述标签, 将所述报文中的标签值更新为所述路由器对应的所述标签, 删除 所述报文中的标签, 转发所述报文的转发信息。
9、 一种网络控制器, 其特征在于, 包括路由信息获取单元、 隧道管理 单元、 路由控制信息管理单元以及第一收发单元;
所述路由信息获取单元, 用于预先获取公共网络中各路由器的路由信 息, 以及接收二层虚拟专用网创建请求, 获取所述二层虚拟专用网的各局 域网与所述公共网络的连接信息, 以及将各所述路由器的路由信息、 以及 各所述局域网与所述公共网络的连接信息输出至所述隧道管理单元, 所述 二层虚拟专用网包括公共网络、 以及至少两个通过所述公共网络连接的局 域网;
所述隧道管理单元, 用于根据所述公共网络中各路由器的路由信息、 以及各所述局域网与所述公共网络的连接信息, 确定任意两所述局域网之 间的报文在所述公共网络传输时应途经的隧道的路径信息, 将所述隧道的 路径信息输出至所述路由控制信息管理单元;
所述路由控制信息管理单元, 用于根据各所述隧道的所述路径信息, 确定各所述路由器沿各所述隧道转发所述报文的转发信息, 为各所述隧道 途经的各所述路由器分配标签、 以及各所述路由器在转发所述报文前对所 述标签的处理信息, 以及将各所述路由器的各路由控制信息发送到所述第 一收发单元, 所述标签为: 公共多协议标签交换标签, 所述路由控制信息 包括: 各所述路由器沿各所述隧道转发所述报文的转发信息、 各所述路由 器在各所述隧道对应的标签、 以及各所述路由器在转发所述报文前对所述 标签的处理信息;
所述第一收发单元, 用于向各所述路由器分别发送各所述路由控制信 息, 以供各所述路由器根据各所述路由控制信息转发所述报文。
10、 根据权利要求要求 9所述的网络控制器, 其特征在于,
所述网络控制器还包括流表管理单元,
所述流表管理单元, 连接在所述路由控制信息管理单元与所述第一收 发单元之间,
所述流表管理器, 用于根据所述路由控制信息管理单元输入的各所述 路由器的所述路由控制信息生成各所述路由器的流表, 并把所述流表传输 给所述第一收发单元, 各所述路由器的流表分别包括匹配项信息、 以及指 令项信息, 各所述指令项信息分别与各所述匹配项信息相对应;
所述第一收发单元用于向各所述路由器发送各所述路由器的流表。
11、 根据权利要求要求 9或 10所述的网络控制器, 其特征在于, 所述路由控制信息管理单元, 用于为各所述隧道途经的各所述路由器 分配标签、 以及各所述路由器在转发所述报文前对所述标签的处理信息, 具体是用于:
根据各所述隧道的所述路径信息, 为各入口路由器分别分配网络标签 以及隧道标签,
所述入口路由器为: 位于各所述隧道入口的各边沿路由器, 所述边沿 路由器为公共网络中处于边沿的路由器, 各所述网络标签分别与各所述局 域网相对应, 各所述隧道标签与所述路由器所在的各所述隧道相对应, 确定各所述入口路由器在转发所述报文前对所述标签的处理信息为: 在所述报文的帧结构的头部前端增加二层头部, 在所述报文中插入所述报 文目的局域网对应的所述网络标签、 以及所述 4艮文应途经的所述隧道对应 的所述隧道标签, 使在所述报文的帧结构上, 所述网络标签位于所述隧道 标签后端, 所述二层头部位于所述隧道标签的前端;
根据各所述隧道的所述路径信息, 为各中继路由器分别分配各所述隧 道标签,
各所述中继路由器为: 各所述隧道内的任一非边沿路由器;
确定各所述中继路由器在转发所述报文前对所述标签的处理信息为, 将所述报文中的标签值更新为: 所述中继路由器在所述报文应途经的所述 隧道对应的所述隧道标签;
根据各所述隧道的所述路径信息, 确定各出口路由器在转发所述报文 前对所述标签的处理信息为: 删除所述报文中的所述二层头部、 所述隧道 标签以及所述网络标签。
12、 一种路由器, 其特征在于, 包括: 第二收发单元、 流表存储单元、 报文比较单元、 以及报文处理单元;
所述第二收发单元, 用于与外部通信, 所述通信包括接收所述路由器 的流表、 接收以及转发报文, 所述报文为: 二层虚拟专用网中与所述公共 网络分别连接的任意两局域网之间传输的报文;
所述存储单元用于存储信息, 所述信息包括: 所述路由器的流表, 在 所述流表中, 各所述指令项信息分别与各所述匹配项信息相对应, 所述流 表的各所述匹配项信息包括: 所述报文需满足的各特征信息, 所述流表的 各所述指令项信息包括: 所述路由器转发所述报文的转发信息、 所述路由 器在转发所述艮文前对所述标签的处理信息;
所述报文比较单元, 用于比较所述报文的信息与所述流表内的匹配项 信息, 将所述流表中与所述报文匹配的一所述匹配项作为报文匹配项, 所述报文处理单元, 按照所述报文匹配项对应的所述指令项信息处理 所述报文。
1 3、 一种网络控制器, 其特征在于, 包括路由信息获取器、 隧道管理 器、 路由控制信息管理器以及第一收发器;
所述路由信息获取器, 用于预先获取公共网络中各路由器的路由信息, 以及接收二层虚拟专用网创建请求, 获取所述二层虚拟专用网的各局域网 与所述公共网络的连接信息, 以及将各所述路由器的路由信息、 以及各所 述局域网与所述公共网络的连接信息输出至所述隧道管理器, 所述二层虚 拟专用网包括公共网络、 以及至少两个通过所述公共网络连接的局域网; 所述隧道管理器, 用于根据各所述隧道的所述路径信息, 确定各所述 路由器沿各所述隧道转发所述报文的转发信息, 为各所述隧道途经的各所 述路由器分配标签、 以及各所述路由器在转发所述报文前对所述标签的处 理信息, 所述标签为: 公共多协议标签交换标签, 将所述隧道的路径信息 输出至所述路由控制信息管理器;
所述路由控制信息管理器, 用于根据各所述隧道的所述路径信息, 确 定各所述路由器沿各所述隧道转发所述报文的转发信息, 为各所述隧道途 经的各所述路由器分配标签、 以及各所述路由器在转发所述报文前对所述 标签的处理信息, 以及将各所述路由器的各路由控制信息发送到所述第一 收发器, 所述标签为: 公共多协议标签交换标签, 所述路由控制信息包括: 各所述路由器沿各所述隧道转发所述报文的转发信息、 各所述路由器在各 所述隧道对应的标签、 以及各所述路由器在转发所述报文前对所述标签的 处理信息;;
所述第一收发器, 用于向各所述路由器分别发送各所述路由控制信息, 以供各所述路由器根据各所述路由控制信息转发所述报文。
14、 根据权利要求要求 1 3所述的网络控制器, 其特征在于,
所述网络控制器还包括流表管理器,
所述流表管理器, 连接在所述路由控制信息管理器与所述第一收发器 之间,
所述流表管理器, 用于根据所述路由控制信息管理器输入的各所述路 由器的所述路由控制信息生成各所述路由器的流表, 并把所述流表传输给 所述第一收发器, 各所述路由器的流表分别包括匹配项信息、 以及指令项 信息, 各所述指令项信息分别与各所述匹配项信息相对应;
所述第一收发器用于向各所述路由器发送各所述路由器的流表。
15、 根据权利要求要求 1 3或 14所述的网络控制器, 其特征在于, 所述路由控制信息管理器, 用于为各所述隧道途经的各所述路由器分 配标签、 以及各所述路由器在转发所述报文前对所述标签的处理信息, 具 体是用于:
根据各所述隧道的所述路径信息, 为各入口路由器分别分配网络标签 以及隧道标签,
所述入口路由器为: 位于各所述隧道入口的各边沿路由器, 所述边沿 路由器为公共网络中处于边沿的路由器, 各所述网络标签分别与各所述局 域网相对应, 各所述隧道标签与所述路由器所在的各所述隧道相对应, 确定各所述入口路由器在转发所述报文前对所述标签的处理信息为: 在所述报文的帧结构的头部前端增加二层头部, 在所述报文中插入所述报 文目的局域网对应的所述网络标签、 以及所述 4艮文应途经的所述隧道对应 的所述隧道标签, 使在所述报文的帧结构上, 所述网络标签位于所述隧道 标签后端, 所述二层头部位于所述隧道标签的前端;
根据各所述隧道的所述路径信息, 为各中继路由器分别分配各所述隧 道标签,
各所述中继路由器为: 各所述隧道内的任一非边沿路由器;
确定各所述中继路由器在转发所述报文前对所述标签的处理信息为, 将所述报文中的标签值更新为: 所述中继路由器在所述报文应途经的所述 隧道对应的所述隧道标签;
根据各所述隧道的所述路径信息, 确定各出口路由器在转发所述报文 前对所述标签的处理信息为: 删除所述报文中的所述二层头部、 所述隧道 标签以及所述网络标签。
16、 一种路由器, 其特征在于, 包括: 第二收发器、 流表存储器、 报 文比较器、 以及报文处理器; 所述第二收发器, 用于与外部通信, 所述通信包括接收所述路由器的 流表、 接收以及转发报文, 所述报文为: 二层虚拟专用网中与所述公共网 络分别连接的任意两局域网之间传输的报文;
所述存储器用于存储信息, 所述信息包括: 所述路由器的流表, 在所 述流表中, 各所述指令项信息分别与各所述匹配项信息相对应, 所述流表 的各所述匹配项信息包括: 所述报文需满足的各特征信息, 所述流表的各 所述指令项信息包括: 所述路由器转发所述报文的转发信息、 所述路由器 在转发所述 ·^艮文前对所述标签的处理信息;
所述报文比较器, 用于比较所述报文的信息与所述流表内的匹配项信 息, 将所述流表中与所述报文匹配的一所述匹配项作为报文匹配项,
所述报文处理器, 按照所述报文匹配项对应的所述指令项信息处理所 述报文。
PCT/CN2014/071742 2013-02-04 2014-01-29 路由管理方法及路由方法及网络控制器及路由器 WO2014117739A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP14746165.1A EP2945330B1 (en) 2013-02-04 2014-01-29 Route management method, route method, network controller and router
US14/817,656 US9973419B2 (en) 2013-02-04 2015-08-04 Routing management method, routing method, network controller, and router

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310042409.5 2013-02-04
CN201310042409.5A CN103152267B (zh) 2013-02-04 2013-02-04 路由管理方法及路由方法及网络控制器及路由器

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/817,656 Continuation US9973419B2 (en) 2013-02-04 2015-08-04 Routing management method, routing method, network controller, and router

Publications (1)

Publication Number Publication Date
WO2014117739A1 true WO2014117739A1 (zh) 2014-08-07

Family

ID=48550139

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/071742 WO2014117739A1 (zh) 2013-02-04 2014-01-29 路由管理方法及路由方法及网络控制器及路由器

Country Status (4)

Country Link
US (1) US9973419B2 (zh)
EP (1) EP2945330B1 (zh)
CN (1) CN103152267B (zh)
WO (1) WO2014117739A1 (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103152267B (zh) * 2013-02-04 2017-02-22 华为技术有限公司 路由管理方法及路由方法及网络控制器及路由器
WO2015013902A1 (zh) * 2013-07-31 2015-02-05 华为技术有限公司 路由发布方法、系统及控制器
CN104348727B (zh) * 2013-08-05 2018-05-15 新华三技术有限公司 OpenFlow网络中的流表表项处理方法及设备
US9325609B2 (en) * 2013-08-23 2016-04-26 Futurewei Technologies, Inc. Segmented source routing in a network
CN104579814B (zh) * 2013-10-29 2018-07-31 国家计算机网络与信息安全管理中心 一种路由信息分析、采集装置及其方法
US9253028B2 (en) * 2013-12-13 2016-02-02 International Business Machines Corporation Software-defined networking tunneling extensions
CN103841022B (zh) * 2014-03-12 2017-04-05 华为技术有限公司 用于建立隧道的方法及装置
US20180048489A1 (en) * 2015-03-06 2018-02-15 Zte Corporation (China) Method and system for establishing and managing multi-domain virtual tunnel (mvt)
CN105636151B (zh) * 2015-06-29 2017-08-11 宇龙计算机通信科技(深圳)有限公司 一种网络连接方法及电子设备
ES2964475T3 (es) 2017-03-28 2024-04-08 Ista Se Sistema de distribución para un sistema de comunicación de señales
CN107171956A (zh) * 2017-07-30 2017-09-15 长沙曙通信息科技有限公司 一种广域专网数据包传输优化实现方法
US10938685B2 (en) * 2018-07-24 2021-03-02 Cisco Technology, Inc. Secure traffic visibility and analytics for encrypted traffic
CN110875889B (zh) * 2018-09-03 2022-09-27 阿里巴巴集团控股有限公司 一种用于获取路径的方法及其装置
CN111147369B (zh) * 2018-11-05 2022-02-08 中国电信股份有限公司 路由系统、路由方法和服务器
US11652801B2 (en) 2019-09-24 2023-05-16 Pribit Technology, Inc. Network access control system and method therefor
US11381557B2 (en) * 2019-09-24 2022-07-05 Pribit Technology, Inc. Secure data transmission using a controlled node flow
US11271777B2 (en) 2019-09-24 2022-03-08 Pribit Technology, Inc. System for controlling network access of terminal based on tunnel and method thereof
CN111107536B (zh) * 2019-12-30 2022-07-26 联想(北京)有限公司 一种用户面功能的转发方法、装置、系统和存储介质
CN113285780B (zh) * 2020-02-20 2022-08-19 华为技术有限公司 配置传送管道的方法、装置及系统
CN111555980B (zh) * 2020-03-16 2023-04-14 视联动力信息技术股份有限公司 一种数据发送方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1708031A (zh) * 2004-06-11 2005-12-14 华为技术有限公司 虚拟专用网的实现方法
CN1750504A (zh) * 2004-09-15 2006-03-22 华为技术有限公司 一种在网络中路由转发的方法
WO2012023604A1 (ja) * 2010-08-20 2012-02-23 日本電気株式会社 通信システム、制御装置、通信方法およびプログラム
CN103152267A (zh) * 2013-02-04 2013-06-12 华为技术有限公司 路由管理方法及路由方法及网络控制器及路由器

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4006169B2 (ja) * 2000-05-30 2007-11-14 株式会社日立製作所 ラベルスイッチング型パケット転送装置
US20020101868A1 (en) * 2001-01-30 2002-08-01 David Clear Vlan tunneling protocol
US20030174706A1 (en) * 2002-03-15 2003-09-18 Broadcom Corporation Fastpath implementation for transparent local area network (LAN) services over multiprotocol label switching (MPLS)
CN1330139C (zh) * 2003-07-31 2007-08-01 华为技术有限公司 多协议标签交换(mpls)支持多端口虚拟局域网(vlan)的方法
US8024437B2 (en) * 2003-10-30 2011-09-20 Paul Unbehagen Autodiscovery for virtual networks
WO2005122493A1 (fr) * 2004-06-07 2005-12-22 Huawei Technologies Co., Ltd. Procede de realisation d'une transmission d'acheminement dans un reseau
KR100693059B1 (ko) * 2005-01-24 2007-03-12 삼성전자주식회사 Mpls 기반의 vpn 제공 장치 및 방법
CA2674109A1 (en) * 2007-01-17 2008-07-17 Hamid Ould-Brahim Border gateway protocol procedures for mpls and layer-2 vpn using ethernet-based tunnels
CN101237376A (zh) * 2008-01-24 2008-08-06 华为技术有限公司 一种虚拟专用网的标签获取方法和自主系统边界路由设备
CN101277245B (zh) * 2008-05-06 2012-05-23 华为技术有限公司 一种l2vpn跨域的实现方法、系统和装置
CN101808042B (zh) * 2010-03-16 2014-11-05 中兴通讯股份有限公司 一种多协议标签交换二层虚拟专用网的接入方法和装置
EP2712128B1 (en) 2011-07-06 2016-01-13 Huawei Technologies Co., Ltd. Message processing method and related device thereof
JP6080313B2 (ja) * 2011-08-04 2017-02-15 ミドクラ エスエーアールエル 仮想ネットワークを実装及び管理するシステム及び方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1708031A (zh) * 2004-06-11 2005-12-14 华为技术有限公司 虚拟专用网的实现方法
CN1750504A (zh) * 2004-09-15 2006-03-22 华为技术有限公司 一种在网络中路由转发的方法
WO2012023604A1 (ja) * 2010-08-20 2012-02-23 日本電気株式会社 通信システム、制御装置、通信方法およびプログラム
CN103152267A (zh) * 2013-02-04 2013-06-12 华为技术有限公司 路由管理方法及路由方法及网络控制器及路由器

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
EP2945330B1 (en) 2017-09-06
EP2945330A4 (en) 2016-06-01
EP2945330A1 (en) 2015-11-18
US9973419B2 (en) 2018-05-15
US20150341259A1 (en) 2015-11-26
CN103152267A (zh) 2013-06-12
CN103152267B (zh) 2017-02-22

Similar Documents

Publication Publication Date Title
WO2014117739A1 (zh) 路由管理方法及路由方法及网络控制器及路由器
WO2020156105A1 (zh) 数据转发方法及相关装置
US10320664B2 (en) Cloud overlay for operations administration and management
KR102054338B1 (ko) 개별 관리들을 이용하는 vlan 태깅된 패킷들의 가상 포워딩 인스턴스들의 원단 주소들로의 라우팅
US9306837B1 (en) Source IP-based pruning of traffic toward dually-connected overlay hosts in a data communications environment
JP5862769B2 (ja) 通信システム、制御装置、通信方法及びプログラム
WO2016095822A1 (en) Flow transmission
WO2016066072A1 (zh) 实现nvo3网络与mpls网络之间通信的方法和装置
WO2016173271A1 (zh) 报文处理方法、设备及系统
WO2015165311A1 (zh) 传输数据报文的方法和供应商边缘设备
CN105453513B (zh) 报文转发方法、转发表项下发方法及网络设备
JP6544401B2 (ja) パケット転送装置、制御装置、通信システム、通信方法及びプログラム
EP3863233B1 (en) Method and device used for ethernet virtual private network
US10749797B2 (en) Service label routing in a network
WO2017113772A1 (zh) 一种标签管理方法,数据流处理方法及设备
WO2014194711A1 (zh) 报文处理方法、设备标签处理方法及设备
WO2022237291A1 (zh) 报文传输方法、装置、相关设备及存储介质
WO2017036384A1 (zh) 运营商边缘设备及数据转发方法
CN109714259B (zh) 一种流量处理方法及装置
KR20170048046A (ko) Ptn 시스템을 통하여 원격의 분산 클라우드 시스템에 연결 가능한 네트워크 노드 및 상기 네트워크 노드를 포함하는 분산 클라우드 시스템
Rabadan et al. Usage and Applicability of BGP MPLS-Based Ethernet VPN
Sajassi et al. Internet Engineering Task Force (IETF) J. Rabadan, Ed. Request for Comments: 8388 S. Palislamovic Category: Informational W. Henderickx

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: 14746165

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2014746165

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014746165

Country of ref document: EP