Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present application more apparent, the embodiments of the present application will be described in detail below with reference to the accompanying drawings. However, it will be understood by those of ordinary skill in the art that in various embodiments of the present application, numerous specific details are set forth in order to provide a thorough understanding of the present application. The claimed application may be practiced without these specific details and with various changes and modifications based on the following embodiments. The following embodiments are divided for convenience of description, and should not be construed as limiting the specific implementation of the present application, and the embodiments can be mutually combined and referred to without contradiction.
A first embodiment of the present application relates to a multicast service design method applied to a software defined network (Software Defined Network, SDN) controller. The specific flow is shown in fig. 1, and includes:
step 101, acquiring a multicast service update event.
Specifically, in a multicast network, multicast traffic may be increased or decreased, and routers for transmitting multicast traffic, i.e., routers corresponding to multicast traffic, may also be increased or decreased, for example, in an interactive network television (Internet Protocol Television, IPTV), some clients may choose to add traffic of one channel, and if the channel is the original channel, bit-forwarding egress routers (Bit-Forward Egress Router, BFER) corresponding to multicast traffic need to be added in the multicast network. When the multicast service update event occurs, the router or the client management system senses that the router or the client management system sends an instruction containing the multicast service update event to the SDN controller, and the SDN controller can acquire the multicast service update event from the instruction received by the router or the instruction received by the client management system, wherein the client management system is a system for managing clients receiving the multicast service.
Step 102, determining a router to be configured corresponding to the multicast service update event and configuration information corresponding to the router to be configured.
And step 103, configuring the configuration information to the router to be configured.
Specifically, the SDN controller determines a corresponding router to be configured and configuration information corresponding to the router to be configured according to the type of an event in a multicast service update event and the relationship between the multicast service and the router, wherein the type of the event comprises a newly added multicast service and a router corresponding to an added or reduced original multicast service, wherein the reduction of the original multicast service is equivalent to the total reduction of the routers corresponding to the original multicast service, and the configuration information corresponding to the router to be configured is different when the router to be configured is different, so that the SDN controller needs to determine the configuration information corresponding to the router to be configured, for example, if the router to be configured is a Bit forwarding ingress router (Bit-Forward Ingress Router, BFIR), the configuration information corresponding to BFIR at least comprises the correspondence between the multicast service and BFER, and if the router to be configured is BFER, the configuration information corresponding to BFER at least comprises a unpacking mode. And the SDN controller sends the configuration information to the router to be configured, and the router to be configured configures the configuration information.
In one example, if the multicast service update event includes a new multicast service, the router to be configured is BFIR and BFER corresponding to the new multicast service, and if the multicast service update event includes BFIR corresponding to the original multicast service or BFER corresponding to the original multicast service, the router to be configured is BFIR corresponding to the original multicast service.
Specifically, if the multicast service update event includes a new added multicast service, that is, the event type is the new added multicast service, at this time, the SDN controller needs to determine, in addition to the router corresponding to the new added multicast service, at least information such as an encapsulation mode and a decapsulation mode of a packet of the new added multicast service, where the encapsulation mode needs to be configured to BFIR and the decapsulation mode needs to be configured to the BFER, so if the multicast service update event includes the new added multicast service, the router to be configured at this time is BFIR and the BFER corresponding to the new added multicast service. If the multicast service update event includes BFIR corresponding to the original multicast service, or adding or subtracting the BFER corresponding to the original multicast service, that is, the type of the event is a router corresponding to the original multicast service, since the encapsulation mode and other information are already determined, only BFIR or BFER is changed, only BFIR corresponding to the original multicast service needs to be notified at this time, BFIR knows the adding or subtracting of BFIR corresponding to the original multicast service, or BFIR knows the adding or subtracting of the BFER corresponding to the original multicast service, so if the multicast service update event includes BFIR corresponding to the original multicast service, or adding or subtracting the BFER corresponding to the original multicast service, the router to be configured at this time is BFIR corresponding to the original multicast service. By the method, the corresponding router to be configured can be accurately determined according to different multicast service update information, and corresponding processing is performed, so that the flexibility of multicast service design is realized.
In one example, if the multicast service update event includes a new multicast service, the router to be configured is BFIR and BFER corresponding to the new multicast service, and if the multicast service update event includes BFIR corresponding to the original multicast service or BFER corresponding to the original multicast service, the router to be configured is BFIR corresponding to the original multicast service. BFIR includes the corresponding relation between the multicast service and the BFER, wherein if the multicast service is the original multicast service, the BFER is determined according to one of the following instructions, namely, the BFER is determined according to the instruction received from the BFER added to the original multicast service, the BFER is determined according to the instruction received from the BFER separated from the original multicast service, and the BFER is determined according to the instruction received from the customer management system, and the customer management system is a system for managing the customers receiving the multicast service.
Specifically, the SDN controller acts as an RR reflector, and BFIR and BFER each establish a neighbor relationship with only the SDN controller, which communicates with BFIR and BFER. If the multicast service is the original multicast service, the BFER added to the original multicast service can sense the addition of the client, wherein the client refers to the client receiving the multicast service, the BFER added to the original multicast service sends an instruction to the SDN controller, the SDN controller determines the BFER corresponding to the original multicast service from the instruction received by the BFER added to the original multicast service, and sends the configuration information comprising the corresponding relation between the original multicast service and the BFER to BFIR corresponding to the original multicast service, for example, the BFER corresponding to the original multicast service 1 is A, B, C, the BFER added to the original multicast service is D, the D sends the instruction to the SDN controller, and the SDN controller can determine the BFER corresponding to the multicast service to be A according to the instruction received from D, B. c, D, the SDN controller sends configuration information including the correspondence between multicast services 1 and A, B, C, D to BFIR corresponding to the original multicast service 1. If the multicast service is the original multicast service, the BFER leaving the original multicast service can sense the leaving of the client, the BFER leaving the original multicast service sends an instruction to the SDN controller, the SDN controller determines the BFER corresponding to the original multicast service from the instruction received by the BFER leaving the original multicast service, and sends the configuration information comprising the BFER corresponding to the original multicast service to BFIR corresponding to the original multicast service, for example, the BFER corresponding to the original multicast service 1 is A, B, C, the BFER leaving the original multicast service is C, the C sends the instruction to the SDN controller, and the SDN controller can determine that the BFER corresponding to the original multicast service is A according to the instruction received from the C, and B, the SDN controller sends configuration information comprising the corresponding relation between the multicast services 1 and A, B to BFIR corresponding to the original multicast service 1. If the multicast service is the original multicast service, the client management system can also perceive the BFER added to the original multicast service and/or the BFER leaving the original multicast service, the client management system sends an instruction to the SDN controller, the SDN controller can determine the BFER corresponding to the original multicast service according to the instruction received from the client management system, and send BFIR including the configuration information of the BFER corresponding to the original multicast service to the corresponding original multicast service. If the multicast service is a newly added multicast service, the client management system can perceive the newly added multicast service, then the client management system can send an instruction to the SDN controller, the SDN controller can determine the BFER corresponding to the newly added multicast service according to the instruction received from the client management system, and send the configuration information including the BFER corresponding to the newly added multicast service to BFIR corresponding to the newly added multicast service. in an example, the configuration information sent to BFIR corresponding to the newly added multicast service may further include a packet encapsulation mode, and the SDN controller needs to send the configuration information including the packet decapsulation mode to the BFER corresponding to the newly added multicast service. By the method, the SDN controller can play a role of an RR reflector, and the corresponding relation between the multicast service and the BFER is specified by the SDN controller.
In one example, an SDN controller includes a southbound interface and a northbound interface, the SDN controller interacts with routers in a multicast network through the southbound interface and interacts with external devices through the northbound interface, wherein the external devices include, but are not limited to, orchestrators, upper layer applications, third party applications, and the like. By the method, the SDN controller can interact with different interfaces according to different requirements.
In the embodiment, the SDN controller acquires the multicast service update event, determines the router to be configured corresponding to the multicast service update event and the configuration information corresponding to the router to be configured, and can directly configure the configuration information to the router to be configured without depending on MP-BGP, so that MP-BGP does not need to be configured on each router node, network deployment is simplified, MP-BGP neighbors are not required to be established between BFIR and BFER, full-network BGP neighbors between BFIR and BFER can be avoided, and network architecture is simplified.
The second embodiment of the present invention is about a multicast service design method, which is the same as the first embodiment, and is mainly different in that the updated attribute information of BFIR is sent to the BFER corresponding to the target multicast service, so as to affect the selection of the BFER to BFIR. The specific flow chart is shown in fig. 2, and comprises:
Step 201, a multicast service update event is acquired.
Step 202, determining a router to be configured corresponding to the multicast service update event and configuration information corresponding to the router to be configured.
And step 203, configuring the configuration information to the router to be configured.
Steps 201 to 203 are similar to steps 101 to 103 in the first embodiment, and will not be described here again.
Step 204, if the attribute information of BFIR corresponding to the target multicast service is updated, the updated attribute information of BFIR is sent to the BFER corresponding to the target multicast service, so that the BFER corresponding to the target multicast service determines a selection policy of BFIR corresponding to the target multicast service according to the updated attribute information of BFIR.
Specifically, the SDN controller may also perform an additional function as an RR reflector, that is, the SDN controller monitors attribute information corresponding to BFIR of the multicast service, if attribute information corresponding to BFIR of the target multicast service is updated, the SDN controller sends the updated attribute information of BFIR to BFER corresponding to the target multicast service, and the BFER determines a selection policy for BFIR corresponding to the target multicast service according to the updated attribute information of BFIR. For example, BFIR corresponding to the target multicast service is M, N, if M corresponding to the target multicast service performs an update operation after 2 hours, and the M updates its attribute information, the SDN controller may monitor that the attribute information of M is updated, send the updated attribute information of M to the BFER corresponding to the target multicast service, and the BFER determines whether to select M according to the updated attribute information of M. In one example, the BFER determines a prioritization of all BFIR corresponding to the target multicast service based on the updated attribute information of BFIR, and determines a selection policy for all BFIR corresponding to the target multicast service based on the prioritization.
In one example, the order of execution of step 204 is not limited, and step 204 may be performed at any time.
In this embodiment, the SDN controller also sends BFIR updated attribute information to the BFER corresponding to the target multicast service, that is, the SDN controller may perform an additional function when acting as an RR reflector, affecting BFER selection of BFIR.
The third embodiment of the invention relates to a multicast service design method, which is approximately the same as the first embodiment and is mainly different in that an SDN controller also collects link state information of the whole network and generates network node topology according to the link state information of the whole network, collects bit indexes to display link state information of a copied BIER and generates BIER node topology according to the link state information of the BIER, collects flow information of the BIER and generates BIER flow topology according to the flow information of the BIER. The specific flow chart is shown in fig. 3, and comprises:
Step 301, a multicast service update event is acquired.
Step 302, determining a router to be configured corresponding to the multicast service update event and configuration information corresponding to the router to be configured.
Step 303, the configuration information is configured to the router to be configured.
Steps 301 to 303 are similar to steps 101 to 103 in the first embodiment, and will not be described here again.
Step 304, acquiring link state information of the whole network, and generating network node topology according to the link state information of the whole network.
In step 305, the acquisition bit index displays link state information of the replicated BIER, and a BIER node topology is generated according to the link state information of the BIER.
Specifically, the Bit index shows that the replication (Bit Index Explict Replication, BIER) node expands BIER information in the multicast network through an interior gateway (Interior Gateway Protocol, IGP) expansion protocol, wherein the BIER information is carried in BIER prefixes, the BIER information comprising at least one of or any combination of Bit-forwarding router identification (Bit-Forward Router Identify, BFR-ID), bit string length (BitString Length, BSL), sub-Domain (SD). The SDN controller collects link state information of the whole network and link state information of the BIER through a southbound interface based on a border gateway link state protocol (Border Gateway Protocol LINK STATE, BGP-LS) and an IGP extension protocol, generates network node topology according to the link state information of the whole network, and generates BIER node topology according to the link state information of the BIER. In this way, the network nodes which do not support BIER and the network nodes which support BIER in the whole network can be distinguished, and tunnel transparent transmission is performed when the message passes through the network nodes which do not support BIER.
In one example, after generating the network node topology according to the link state information of the whole network and the BIER node topology according to the link state information of the BIER, the method further comprises obtaining respective BIER forwarding tables corresponding to the BIER nodes according to the network node topology and the BIER node topology, and transmitting the respective BIER forwarding tables to the respective BIER nodes. Specifically, according to the network node topology and the BIER node topology, the SDN controller calculates a BIER forwarding table of each BIER node by using a locally configured algorithm, and sends each BIER forwarding table to each corresponding BIER node, each BIER can determine a forwarding path according to the BIER forwarding table, and transmits the multicast service message to the corresponding BFER according to the forwarding path. By the method, as the BIER forwarding tables are sent to the BIER nodes, the BIER nodes can determine the forwarding paths directly according to the BIER forwarding tables. In one example, the SDN controller calculates BIER forwarding tables of each BIER node using a unified algorithm, so that the variability of algorithm support by different manufacturers can be masked, and the variability of the same algorithm implementation by different manufacturers can be masked.
Step 306, collecting flow information of BIER, and generating BIER flow topology according to the flow information of BIER.
In one example, the SDN controller may collect BIER traffic information itself and generate BIER traffic topology from the BIER traffic information. In one example, collecting the flow information of BIER includes receiving multicast service messages reported by BIER nodes and obtaining the flow information of BIER from the multicast service messages, wherein the multicast service messages are obtained by collecting one from every N multicast service messages passing through the BIER nodes, and N is a positive integer. Specifically, the BIER node supports the NetFlow function, which is a network monitoring function that can collect the number and information of packets entering and leaving the network interface. The port of the BIER node collects a multicast service message from every N multicast service messages passing through the BIER node, N is a positive integer, and the collected multicast service messages are reported to the SDN controller, for example, N is 10, and the port of the BIER node L collects a multicast service message from every 10 multicast service messages passing through the BIER node L. When the SDN controller receives the multicast service message reported by each BIER node, the SDN controller may obtain the traffic information of the BIER from the multicast service message, for example, the BIER node may use different identification fields to represent different types of the multicast service message, use NextHead field of internet protocol version 6 (Internet Protocol Version, ipv 6) for the multicast service message of Bierin, use field of a value range of a label for the multicast service message of Multi-protocol label switching (Multi-Protocol Label Switching, MPLS), and use type field for the multicast service message of ethernet protocol, so the SDN controller may obtain the traffic type of the BIER according to the field. By such a method, there may be a case where it is not necessary for the BIER node to collect and report all multicast service messages, so that the workload may be reduced.
In one example, the order of execution of steps 304-306 is not limited, and steps 304-306 may be performed at any time.
In one example, the multicast service design method may include steps 301-303, as well as any one of steps 304-306 or a combination of any two of steps 304-306. By the method, at least one of network node topology, BIER traffic topology and BIER traffic topology can be generated, and the development of multicast service is facilitated.
In one example, the method further comprises sending BFIR updated attribute information to a BFER corresponding to the target multicast service if the attribute information of BFIR corresponding to the target multicast service is updated, and determining a BFIR selection policy corresponding to the target multicast service according to the updated attribute information of BFIR by the BFER corresponding to the target multicast service.
In the embodiment, the SDN controller also collects link state information of the whole network and generates network node topology according to the link state information of the whole network, collects bit indexes to display link state information of the copied BIER and generate BIER node topology according to the link state information of the BIER, collects flow information of the BIER and generates BIER flow topology according to the flow information of the BIER, so that the SDN controller can generate network node topology, BIER flow topology and BIER flow topology, and the multicast service is convenient to develop.
The fourth embodiment of the invention relates to a multicast service design method, which is similar to the first embodiment, and is mainly different in that state information of a BIER node is collected, and diagnosis service is provided for the BIER node when the state information characterizes that the BIER node is in an abnormal state. The specific flow chart is shown in fig. 4, and includes:
Step 401, acquiring a multicast service update event.
Step 402, determining a router to be configured corresponding to the multicast service update event and configuration information corresponding to the router to be configured.
Step 403, configuring the configuration information to the router to be configured.
Steps 401 to 403 are similar to steps 101 to 103 in the first embodiment, and will not be described again.
Step 404, collecting state information of the BIER node, and providing diagnostic service to the BIER node when the state information characterizes that the BIER node is in an abnormal state.
Specifically, the status information includes, but is not limited to, one or any combination of memory usage, central processing unit CPU usage, queues, and the like. The SDN controller can provide network element management service, monitor the state information of the BIER node by itself and determine whether the state of the BIER node is in an abnormal state, or actively report the state information to the SDN controller by using an interface, and determine whether the state of the BIER node is in an abnormal state according to the reported state information, wherein the BIER node can actively report the state information according to a preset period, the preset period can be preset according to actual needs, for example, the state information can be reported once every 30 seconds, the state information can be actively reported when event triggering occurs, the condition of event triggering can be preset according to actual needs, and the implementation is not limited, for example, the state information can be reported when the average utilization rate of a CPU (central processing unit) is larger than a preset threshold. When the state information characterizes that the BIER node is in an abnormal state, the SDN controller may issue an alarm to the BIER node and/or provide diagnostic services such as solutions.
In one example, the order of execution of step 404 is not limited, and step 404 may be performed at any time.
In one example, after collecting the state information of the BIER node, the SDN controller also generates a related data report and view, so as to display the state of the BIER node in real time.
In one example, the SDN controller further stores hardware version information and software version information of each BIER node, and the SDN controller monitors the hardware version information and the software version information of each BIER node, compares the hardware version information and the software version information stored with each other, and gives a recommendation of version upgrade.
In one example, an SDN controller receives configuration data of an orchestrator or an upper layer application or a third party application, the SDN controller converts the configuration data into configuration data of a YANG model, and sends the configuration data of the YANG model to BIER nodes, which automatically configure according to the configuration data of the YANG model.
In one example, the method further comprises sending BFIR updated attribute information to a BFER corresponding to the target multicast service if the attribute information of BFIR corresponding to the target multicast service is updated, and determining a BFIR selection policy corresponding to the target multicast service according to the updated attribute information of BFIR by the BFER corresponding to the target multicast service.
In one example, the method further comprises one or any combination of the steps of collecting link state information of the whole network and generating a network node topology according to the link state information of the whole network, collecting bit indexes to display link state information of the copied BIER and generating a BIER node topology according to the link state information of the BIER, collecting traffic information of the BIER and generating a BIER traffic topology according to the traffic information of the BIER.
In one example, the method further comprises sending BFIR updated attribute information to a BFER corresponding to the target multicast service if the attribute information of BFIR corresponding to the target multicast service is updated, and determining a BFIR selection policy corresponding to the target multicast service according to the updated attribute information of BFIR by the BFER corresponding to the target multicast service. The method further comprises one or any combination of the following steps of collecting link state information of the whole network and generating network node topology according to the link state information of the whole network, collecting bit indexes to display link state information of the copied BIER and generating BIER node topology according to the link state information of the BIER, collecting flow information of the BIER and generating BIER flow topology according to the flow information of the BIER.
In this embodiment, the SDN controller further collects state information of the BIER node, and provides a diagnostic service to the BIER node when the state information characterizes that the BIER node is in an abnormal state, that is, SDN control may provide a network element management service for the BIER node.
A fifth embodiment of the present invention relates to a server, as shown in fig. 5, comprising at least one processor 502, and a memory 501 communicatively connected to the at least one processor, wherein the memory 501 stores instructions executable by the at least one processor 502, the instructions being executable by the at least one processor 502 to enable the at least one processor 502 to perform an embodiment of the multicast service design method described above.
Where memory 501 and processor 502 are connected by a bus, the bus may comprise any number of interconnected buses and bridges, the buses connecting together various circuits of one or more of the processor 502 and memory 501. The bus may also connect various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art, and therefore, will not be described any further herein. The bus interface provides an interface between the bus and the transceiver. The transceiver may be one element or may be a plurality of elements, such as a plurality of receivers and transmitters, providing a means for communicating with various other apparatus over a transmission medium. The data processed by the processor 502 is transmitted over a wireless medium via an antenna, which further receives the data and communicates the data to the processor 502.
The processor 502 is responsible for managing the bus and general processing and may also provide various functions including timing, peripheral interfaces, voltage regulation, power management, and other control functions. And memory 501 may be used to store data used by processor 502 in performing operations.
A sixth embodiment of the present invention relates to a computer-readable storage medium storing a computer program. The computer program implements the above-described method embodiments when executed by a processor.
That is, it will be understood by those skilled in the art that all or part of the steps in implementing the methods of the embodiments described above may be implemented by a program stored in a storage medium, where the program includes several instructions for causing a device (which may be a single-chip microcomputer, a chip or the like) or a processor (processor) to perform all or part of the steps in the methods of the embodiments of the application. The storage medium includes a U disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, an optical disk, or other various media capable of storing program codes.
It will be understood by those of ordinary skill in the art that the foregoing embodiments are specific examples of carrying out the invention and that various changes in form and details may be made therein without departing from the spirit and scope of the invention.