Disclosure of Invention
Aiming at the problems in the prior art, the invention provides a segmented routing information notification method and a segmented routing information notification system based on the extension of an intra-domain routing protocol, which aim to realize segmented routing information notification applicable to compatible IPv4 networks, and also can realize flexible and efficient distribution of segment identifiers, comprehensive notification of various segmented routing information and timely removal of segment identifiers and ranges.
In order to solve the technical problems, the invention adopts the following technical scheme:
a segmented route information advertising method based on intra-domain route protocol expansion includes the following steps:
s1, a routing node acquires a segment identification range distributed by a centralized management and control system according to a preset segment route identification distribution scheme;
S2, the routing node automatically distributes node segment identifiers in the segment identifier range and simultaneously distributes neighbor segment identifiers for active neighbors;
s3, the routing nodes mutually announce segment routing information through an expanded intra-domain routing protocol, wherein the segment routing information comprises a part or all of supporting segment routing capability, segment identification range, segment identification, node maximum segment identification depth MSD, link maximum segment identification depth and adjacent segment identification;
s4, each routing node maintains the segment identification and the neighbor segment identification of the routing node by using the link state message LSP.
Optionally, when the segment routing information IS mutually advertised in step S3 by the extended intra-domain routing protocol, the step of mutually advertising the segment routing supporting Capability between the routing nodes by the extended intra-domain routing protocol includes that the segment routing end node sends a link state packet LSP to the neighbor, and in the routing Capability node TLV carried in the link state packet LSP, the 0 th position of the Capability field (Capability) IS "1", the 1 st position IS "1" to advertise the support IS-IS protocol and the segment routing, and the 2 nd position of the flag field (Flags) IS "1", to advertise the support operation and maintenance management OAM function.
Optionally, when the segment routing information is mutually advertised in step S3 by the extended intra-domain routing protocol, the identifying range of the segment mutually advertised between the routing nodes by the extended intra-domain routing protocol includes: a segment routing End node sends a link state message LSP to a neighbor and carries a segment identification range TLV in the link state message LSP to advertise the segment identification range of the node, the segment identification range TLV comprising three fields of a Type (Type) for indicating the Type of segment identification range, a Length (Length) for indicating the field Length of the segment routing global block SRGB, and a Segment Routing Global Block (SRGB) comprising a metric value (Mertic), a flag bit (Flags), an Algorithm (Algorithm), a segment routing global block Start (SRGB Start), a segment routing global block End (SRGB End), a Sub-TLV Length (Sub-TLV Len) and a Sub-group (Sub-TLVs), wherein the metric value (Mertic) is used to record a link cost value with a traffic engineering extension, the flag bit (Flags) is a flag bit of the segment identification range for indicating the segment routing global block SRGB, the Segment Routing Global Block (SRGB) comprises a metric value (Mertic), a flag bit (Flags), an Algorithm (Algorithm) for indicating a severe Algorithm, a segment routing Start value (Sub-TLV) is a Sub-TLV 1, and a Sub-TLV Start value (Sub-TLV) for indicating the segment Start value of the supporting Algorithm, and a Sub-End value (Sub-TLV 1, respectively, the Sub-TLV group (Sub-TLVs) is used to indicate the Sub-TLVs contained in the segment routing global block SRGB.
Optionally, when the segment routing information advertised each other by the extended intra-domain routing protocol in step S3, the segment routing end node sends the link state message LSP to the neighbor by the extended intra-domain routing protocol, and the segment routing end node sends the link state message LSP, and the maximum segment identification depth Sub-TLV (MSD Sub-TLV) of the node carried in the routing capability node TLV carried in the link state message LSP and the maximum segment identification depth Sub-TLV (MSD Sub-TLV) of the link carried in the neighbor information TLV are advertised to advertise the maximum segment identification depth that the node can handle and the maximum segment identification depth that the link can handle, the centralized management system calculates the segment identification depth of the segment routing path TLV not exceeding the segment identification number that the node can apply, and if only the maximum segment identification depth Sub-TLV is advertised but the maximum segment identification depth Sub-TLV of the link is not advertised, the maximum segment identification depth Sub-TLV of the node is regarded as the maximum segment identification depth Sub-TLV of the link, and the segment identification depth Sub-TLV of the link is calculated to be greater than the maximum segment identification depth Sub-TLV (MSD-TLV) of the link, and the segment identification depth Sub-TLV is calculated to be greater than the segment identification depth (MSD-TLV) of the link segment identification depth than the maximum segment identification depth (TLV) of the link is advertised by the link segment identification depth Sub-TLV, and the segment identification depth Sub-label of the link label, The sum of the lengths of the remaining fields other than Length; a maximum segment identification depth type (TypeMaxSegLeft) indicating a type of maximum segment identification depth (MaxSegLeft) remaining, a maximum segment identification depth (MaxSegLeft) indicating a maximum value of a segment number field identification in the segment routing list option indicating a maximum segment identification depth at which a node can handle segment identifications, a maximum segment identification depth type (TypeMaxEndPop) indicating a type of maximum segment identification depth (MaxEndPop) popping out, a maximum segment identification depth (MaxEndPop) indicating a maximum segment number before pop-up segment routing list option associated with a penultimate segment pop-up (PSP) or a final segment pop-Up (USP) attribute action, if "0" indicates that no penultimate segment pop-up (PSP) or final segment pop-Up (USP) operation is supported for the segment routing list option, "an insert maximum segment number type (TypeMaxHInsert) indicating a type of maximum segment number (MaxHInsert) inserted, a maximum segment number (MaxHInsert) indicating a maximum segment number allowed to be inserted when the segment routing list is inserted, if" 0 "indicates that no penultimate segment pop-up (PSP) or a maximum segment number (USP) attribute action is supported," the maximum segment number (maxEnd D) indicating that the maximum segment number of segment identification depth (3484) is not supported for the segment routing list type) encapsulating function, if "0" no encapsulating function "indicates that the segment identification depth (USP)" type of maximum segment identification depth (USP) is not supported, the router cannot perform any decapsulation and forwarding operations on the internal data message that carries the external IP header of the segment routing linked list option.
Optionally, when the inter-segment routing information advertised by the extended intra-domain routing protocol in step S3, the inter-segment identifiers between the routing nodes by the extended intra-domain routing protocol include carrying an End segment identifier Sub-TLV (End SID Sub-TLV) in the segment identifier range TLV for issuing the segment routing segment identifier when the segment routing policy of the node is forwarding for the specified node, the End segment identifier Sub-TLV (End SID Sub-TLV) including a Type, a Length, a flag bit (Flags), an End point behavior (SID), a Segment Identifier (SID), a Sub-Sub-TLV LENGTH and a Sub-Sub-TLV group (Sub-Sub-TLVs), wherein the Type (Type) is used to indicate the Type of the Sub-TLV, the Length (Length) is used to indicate the Type, the Length of the remaining fields other than the Length (Length), the flag bit (Flags) is a flag bit, the End point behavior (Endpoint Behavior) is used to advertise the segment identifier supported by the segment routing End node, the End point behavior (Endpoint Behavior) is used to indicate the Length of the segment identifier Sub-TLV (Sub-TLV) and the Sub-TLV-35 is used to indicate the Length of the Sub-TLV, the Sub-TLV is used to indicate the Length of the Sub-TLV, the Sub-segment identifier (Sub-TLV-35 is used to indicate the Length of the Sub-segment, and the Sub-segment identifier (Sub-TLV is used to indicate a Sub-Length (Sub-TLVs) that is used to indicate a segment, the method comprises the steps of receiving a segment instruction, wherein the segment instruction comprises a first function (End), a second function (end.T) and a third function (end.DT), the behavior value which is not supported or can not be identified by a receiver is ignored, the segment instruction comprises a first function (End), a second function (end.T) and a third function (end.DT), the first function (End) is used for subtracting 1 from the value of the remaining segment quantity, updating an IPv4 address corresponding to the next Segment Identifier (SID) in a segment route list option to a destination address field of an IPv4 message header according to the remaining segment quantity, performing table lookup forwarding, the second function (end.T) is used for subtracting 1 from the value of the remaining segment quantity, updating the IPv4 address corresponding to the next Segment Identifier (SID) in the segment route list option to the destination address field of the IPv4 message header according to the remaining segment quantity, performing table lookup forwarding in a designated IPv4 forwarding table, and the third function (end.DT) is used for unpacking the segment route message, and performing table lookup forwarding in the designated IPv4 forwarding table.
Optionally, when the routing nodes mutually advertise segment routing information via the extended intra-domain routing protocol in step S3, the inter-domain routing protocol inter-advertisement segment identification between the routing nodes via the extended intra-domain routing protocol includes forwarding the segment routing policy to designate an interface for the point-to-point link, carrying an end.x segment identification Sub-TLV (end.x SID Sub-TLV) in an intra-domain neighbor information TLV of a link state protocol data unit (LSP), the end.x segment identification Sub-TLV (end.x SID Sub-TLV) including a Type (Type), a Length (Length), a flag bit (Flags), an Algorithm (algorism), a Weight (Weight), an endpoint behavior (Endpoint Behavior), a Segment Identification (SID), a Sub-TLV Length (Sub-TLV LENGTH) and a Sub-TLV group (Sub-TLVs), wherein the Type (Type) is used to represent a Type, the Length (Length) is used to represent a Type, the remaining Length of the flag field other than the Length (Length), the flag bit (Length is used to represent a flag bit (Length) is used to represent a Type (Type) and a flag bit (Length) is used to be associated with a reserved segment 1, and a position (Algorism) is used to represent an Algorithm 1, and a value (Algorism 1) is not to be associated with a value (Algorism) indicating a change of the Algorithm by the Algorithm 1, the value of 1 is used for identifying Weight for load balancing, the Weight (Weight) is used for identifying Weight of load balancing, the end point action (Endpoint Behavior) is used for advertising segment instruction functions supported by a segment routing end node, the Segment Identification (SID) is used for indicating adjacent segment identifications of advertisements, the segment identifications are bound with corresponding adjacencies, the Sub-Sub-TLV length (Sub-Sub-TLV LENGTH) is used for indicating the length of the Sub-Sub-TLV, the field length of the Sub-Sub-TLV group (Sub-TLVs) is variable and is an optional field and is used for indicating the value of a specific Sub-Sub-TLV, the receiver ignores action values which are not supported or can not be identified, the segment instruction functions advertised by the end point action (Endpoint Behavior) comprise a fourth function (end.X) and a fifth function (end.DX), the fourth function (end.X) is used for subtracting 1 from the value of the number of the remaining segments, updating the value of the number of the remaining segments according to the number of the remaining segments, the next Segment Identification (SID) in the segmented routing list is updated to the address of the next Segment Identification (SID) 4 in the segment list, the message is mapped to the address of the next Segment Identification (SID) and the address of the next segment link list is designated by the end-layer, and the message is encapsulated by the address of the message is designated by the fifth function.
Optionally, when each routing node maintains the segment identifier and the neighbor segment identifier of the routing node by using the link state message LSP in step S4, including that when the routing node fails or the link is disconnected, the adjacent routing node senses the link state change in real time according to the link state message LSP, updates the intra-domain routing information through the intra-domain routing protocol, and simultaneously automatically clears the segment identifier information corresponding to the failed node based on the routing convergence operation, and the centralized management and control system senses the node failure or the link state change in real time according to the link state message LSP so as to set the segment routing identifier range corresponding to the periodical delay recovery failure node.
In addition, the invention also provides a segmented routing information advertising system based on the intra-domain routing protocol extension, which comprises a microprocessor and a memory which are connected with each other, wherein the microprocessor is programmed or configured to execute the segmented routing information advertising method based on the intra-domain routing protocol extension.
Furthermore, the present invention provides a computer readable storage medium having stored therein a computer program or instructions programmed or configured to execute the intra-domain routing protocol extension based segment routing information advertisement method by a processor.
Furthermore, the present invention provides a computer program product comprising a computer program or instructions programmed or configured to execute the intra-domain routing protocol extension based segment routing information advertisement method by a processor
Compared with the prior art, the method for advertising the segmented routing information based on the extension of the intra-domain routing protocol has the advantages that the routing nodes acquire the segment identification range distributed by the centralized management and control system according to the preset segmented routing identification distribution scheme, the routing nodes automatically distribute node segment identifications in the segment identification range and simultaneously distribute neighbor segment identifications aiming at active neighbors, the routing nodes mutually advertise the segmented routing information through the extension of the intra-domain routing protocol, and each routing node maintains the segment identifications and the neighbor segment identifications of the routing nodes by utilizing the link state message LSP. 2. The invention can realize the comprehensive notification of the segment routing information supporting the segment routing capability, the segment identification range, the segment identification, the adjacent segment identification, the node maximum segment identification depth, the link maximum segment identification depth, the node segment identification function and the like by expanding the intra-domain routing protocol. 3. The invention maintains the node segment identifier and the neighbor segment identifier by using the link state message LSP, and can realize timely clearing of the segment identifier and the range.
Detailed Description
In order to enable those skilled in the art to better understand the technical solution of the present invention, the technical solution of the present invention will be further described in detail below with reference to the accompanying drawings in the embodiments of the present invention.
As shown in fig. 1, the method for advertising segment routing information based on the extension of the intra-domain routing protocol in this embodiment includes the following steps:
s1, a routing node acquires a segment identification range distributed by a centralized management and control system according to a preset segment route identification distribution scheme;
S2, the routing node automatically distributes node segment identifiers in the segment identifier range and simultaneously distributes neighbor segment identifiers for active neighbors;
s3, the routing nodes mutually announce the segment routing information through an expanded intra-domain routing protocol, wherein the segment routing information comprises a part or all of supporting segment routing capability, segment identification range, segment identification, node maximum segment identification depth MSD (Maximum SID Depth), link maximum segment identification depth and adjacent segment identification;
s4, each routing node maintains the segment identification and the neighbor segment identification of the routing node by using a link state message LSP (LINK STATE PDUs) message.
The method for notifying the segmented routing information based on the extension of the intra-domain routing protocol adopts a mode of distributing the segment identification range in a centralized manner and taking specific values in a distributed manner to determine the node segment identification. The segment routing end nodes support segment routing capability, segment identification range, segment identification, adjacent segment identification, node maximum segment identification depth and link maximum segment identification depth through the extended IS-IS protocol, and the segment identification function of the nodes IS announced to guide the forwarding of IPv4 compatible segment routing data. And maintaining the node segment identification and the neighbor segment identification by using a link state message LSP, and clearing segment identification information corresponding to the failed node when the node fails or the link is disconnected. The centralized management and control system senses node faults or link state changes in real time, and then recovers the segment route identification range corresponding to the fault node with certain period delay.
In step S3 of this embodiment, when the routing nodes mutually advertise segment routing information via the extended intra-domain routing protocol, the step of mutually advertising the segment routing supporting Capability via the extended intra-domain routing protocol includes that the segment routing end node (router supporting segment routing function) sends a link state packet LSP to the neighbor, and in the routing Capability node TLV carried in the link state packet LSP, the 0 th position of the Capability field (Capability) IS "1", the 1 st position IS "1" to advertise the support IS-IS protocol and segment routing, and the 2 nd position of the flag field (Flags) IS "1", so as to advertise the support operation and maintenance management OAM function.
In the embodiment, when the route nodes mutually advertise the segment route information through the extended intra-domain routing protocol in step S3, the mutually advertising segment identification range through the extended intra-domain routing protocol between the route nodes includes that the segment route End node sends a link state message LSP to the neighbor, and carries a segment identification range TLV in the link state message LSP to advertise the segment identification range of the node, as shown in fig. 2, the segment identification range TLV includes three fields of Type (Type), length (Length) and Segment Route Global Block (SRGB), and the Start value and the End value of the segment identification range are respectively advertised by the segment route global block Start (SRGB Start) and the segment route global block End (SRGB End) in the Segment Route Global Block (SRGB), where:
Type (Type) field length is 1 byte, which is used to indicate the Type of the segment identification range, and the specific Type number is "29";
length, field Length of 1 byte, field Length for indicating the segment routing global block SRGB,
Segment Routing Global Block (SRGB), which has a variable field length for indicating a segment identification range used by a current node, may include a plurality of ranges including a metric value (Mertic), a flag bit (Flags), an Algorithm (algoritm), a segment routing global block Start (SRGB Start), a segment routing global block End (SRGB End), a Sub-TLV length (Sub-TLV Len), and a Sub-TLV group (Sub-TLVs), wherein each field is defined as follows:
The metric value (Mertic) is that the field length is 1 byte, which is used for recording the link cost value with the traffic engineering expansion,
Flag bits (Flags) a field length of 1 byte a flag bit for a segment identification range TLV,
The length of the field is 1 byte, which is used for representing the supported routing Algorithm, the value of 0 represents the support of SPF Algorithm, the value of 1 represents the strict SPF Algorithm, and the rest is undefined;
Segment routing global Start of block (SRGB Start) field length 4 bytes for recording the Start value of the segment identification range;
and a segment routing global End of block (SRGB End) field of length 4 bytes for recording an End value of the segment identification range;
Sub-TLV length (Sub-TLV Len), field length of 1 byte, for specifying the length of the Sub-TLV (Sub-TLV),
Sub-TLV groups (Sub-TLVs) with variable field lengths are used to indicate Sub-TLVs (Sub-TLVs), such as End SID Sub-TLVs, etc., contained in the segment routing global block SRGB.
When the segment routing information advertised by the extended intra-domain routing protocol in step S3 of the present embodiment is used, the node maximum segment identification depth MSD and the link maximum segment identification depth advertised by the extended intra-domain routing protocol between the routing nodes include that the segment routing end node sends a link state message LSP to the neighbor, and when the segment routing end node calculates the segment routing path, the maximum segment identification depth Sub-TLV (MSD Sub-TLV) of the node carried in the routing capability node TLV carried in the link state message LSP and the maximum segment identification depth Sub-TLV (MSD Sub-TLV) of the link carried in the neighbor information TLV are used for advertising the maximum segment identification depth processable by the node and the maximum segment identification depth processable by the link, the segment identification stack depth of the segment routing path calculated by the centralized management and control system does not exceed the segment identification number applicable by the node (when the centralized management and control system calculates the segment routing path, the maximum segment identification depth of each node/link carried in the given segment routing path needs to be known to be applied by the node/link, and if the segment identification depth of the segment TLV is not exceeding the maximum segment identification depth of the TLV, the segment identification depth is not advertised by the maximum segment identification depth of the node;
In this embodiment, the fields in the maximum segment identification depth Sub-TLV (MSD Sub-TLV) include:
Type (Type) field length 1 byte, type number "23" for indicating the Type of maximum segment identification depth Sub-TLV (MSD Sub-TLV);
Length (Length) the field Length is 1 byte, which is used to represent the sum of the lengths of the other fields except the Type (Type) and Length (Length) in the maximum segment identification depth Sub-TLV (MSD Sub-TLV);
The type (TypeMaxSegLeft) of the residual maximum segment identification depth is that the field length is 1 byte and is used for representing the type of the residual maximum segment identification depth (MaxSegLeft), and the value is fixed to be 41;
The maximum segment identification depth (MaxSegLeft) is 1 byte in field length, which is used for representing the maximum value of the field identifications of the number of the remaining segments in the segment routing chain table option and is used for notifying the maximum segment identification depth of the processable Segment Identification (SID) of the node;
the pop-up maximum segment identification depth type (TypeMaxEndPop) is that the field length is 1 byte, which is used for representing the type of the pop-up maximum segment identification depth (MaxEndPop), and the value is fixed to be 42;
a pop-up maximum segment identification depth (MaxEndPop) having a field length of 1 byte for indicating the maximum number of segments before popping up the segment route link list option in relation to the penultimate segment pop-up (PSP) or final segment pop-Up (USP) attribute behavior, if "0" indicates that the operation of performing the penultimate segment pop-up (PSP) or final segment pop-Up (USP) on the segment route link list option is not supported;
The maximum number of inserted segments type (TypeMaxHInsert) is that the field length is 1 byte, which is used for representing the type of the maximum number of inserted segments (MaxHInsert), and the value is fixed to be 43;
A maximum number of inserted segments (MaxHInsert) indicating the maximum number of segments allowed to be inserted when inserting the segment routing list option, and if the number is 0, the insertion of the segment routing list option is not supported, a maximum segment identification depth type (TypeMaxEnd D) having a field length of 1 byte and indicating a type of a maximum segment identification depth (maxEnd D) for decapsulation;
The maximum segment identification depth of decapsulation (maxEnd D) is a field length of 1 byte, which is used to identify the maximum segment identification depth supported when a node associated with a specified behavior decapsulates a message, and if the field value is "0" or the field is not issued, the router cannot perform any decapsulation and forwarding operations on the internal data message of the external IP header carrying the option of a segment routing linked list. The specified actions include, but are not limited to, end.DX, end.DT, end, end.X SID, etc.
When the segment routing information advertised by the extended intra-domain routing protocol in step S3 of this embodiment is mutually advertised by the extended intra-domain routing protocol, the inter-domain routing protocol advertising segment identifiers among the routing nodes includes carrying an End segment identifier Sub-TLV (End SID Sub-TLV) in the segment identifier range TLV for issuing the segment routing segment identifier when the segment routing policy of the node is that the designated node is forwarded, as shown in fig. 3, the End segment identifier Sub-TLV (End SID Sub-TLV) includes a Type (Type), a Length (Length), a flag bit (Flags), an endpoint behavior (Endpoint Behavior), a Segment Identifier (SID), a Sub-TLV Length (Sub-TLV LENGTH) and a Sub-TLV group (Sub-TLVs), wherein:
type (Type), field length of 1 byte, for indicating the Type of sub-TLV, type number of "5",
Length (Length) field Length is 1 byte, which is used to represent the Type (Type) and the Length (Length) of the other fields (sum of Sub-TLV lengths);
flag bits (Flags), field length 2 bytes, flag bits, must be "0";
Endpoint behavior (Endpoint Behavior) a field length of 2 bytes for advertising segment instruction functions supported by the segment routing end node;
Segment Identification (SID) field length of 4 bytes for indicating advertised segment routing segment identification, the segment identification having to be allocated from its associated segment identification range;
Sub-Sub-TLV length (Sub-Sub-TLV LENGTH) the field length is 1 byte, which is used to represent the length of Sub-Sub-TLV (Sub-Sub-TLV);
The Sub-Sub-TLV group (Sub-Sub-TLVs) has variable field length, is an optional field, has variable field length and is an optional field, and the field length is used for representing the value of a specific Sub-Sub-TLV (Sub-Sub-TLV), and a receiver ignores a behavior value which is not supported or can not be identified;
The segment instruction function advertised by the endpoint behavior (Endpoint Behavior) comprises a first function (End), a second function (end.t) and a third function (end.dt), wherein the first function (End) is used for subtracting 1 from the value of the remaining segment number, updating an IPv4 address corresponding to the next Segment Identifier (SID) in the segment routing chain table option to a destination address field of an IPv4 message header according to the remaining segment number, and then performing table lookup forwarding, the second function (end.t) is used for subtracting 1 from the value of the remaining segment number, updating an IPv4 address corresponding to the next Segment Identifier (SID) in the segment routing chain table option to a destination address field of the IPv4 message header according to the remaining segment number, and then performing table lookup forwarding in a designated IPv4 forwarding table, and the third function (end.DT) is used for unpacking the segment routing message, and then performing table lookup forwarding in the designated IPv4 forwarding table. Specifically, in this embodiment, the End SID Sub-TLV advertisement node supports the following 3 segment instruction functions by setting the value of the field to advertise the segment instruction functions supported by the segment routing End node:
Subtracting 1 from the value of the number of the remaining segments, updating an IPv4 address corresponding to the next Segment Identifier (SID) in the segmented routing chain table option to a destination address field of an IPv4 message header according to the number of the remaining segments, and performing table lookup forwarding;
Subtracting 1 from the value of the number of the remaining segments, updating an IPv4 address corresponding to the next Segment Identifier (SID) in the segmented routing chain table option to a destination address field of an IPv4 message header according to the number of the remaining segments, and performing table lookup forwarding in a designated IPv4 forwarding table;
When the value is 19, the end node acts as end.DT, the segmented routing message is unpacked, and then table lookup forwarding is carried out in a designated IPv4 forwarding table.
When the routing nodes mutually advertise the segment routing information through the extended intra-domain routing protocol in step S3 of this embodiment, the inter-domain advertising segment identification between the routing nodes through the extended intra-domain routing protocol includes forwarding the segment routing policy for the designated interface for the point-to-point link, and carrying an end.x segment identifier Sub-TLV (end.x SID Sub-TLV) in an intra-domain neighbor information TLV (TLV 22) of a link state protocol data unit packet (LSP, LINK STATE pdu).
As shown in fig. 4, the end.x segment identifier Sub-TLV (end.x SID Sub-TLV) in this embodiment includes 9 fields of Type (Type), length (Length), flag bit (Flags), algorithm (algoritm), weight (Weight), endpoint behavior (Endpoint Behavior), segment Identifier (SID), sub-TLV Length (Sub-TLV LENGTH), and Sub-TLV group (Sub-TLVs), where each field is defined as follows:
type (Type), field length of 1 byte, for indicating the Type of sub-TLV, type number of "43",
Length (Length) field Length is 1 byte, which is used to represent the Length of the other fields except the Type (Type) and Length (Length);
Flag bits (Flags) field length 2 bytes, reserved for flag bit, reserved for bit 0, by associating position 1 "to the segment identity with a set of adjacencies, by identifying position 2" 1 "to the segment identity as a constant allocation, router restart or interface state change is unchanged;
Algorithm (Algorithm) field length is 1 byte, indicating the type of routing Algorithm, with a value of "0" indicating the use of SPF Algorithm, a value of "1" indicating the use of strict SPF Algorithm, and other values undefined. By setting Algorithm field value, the type of the used routing Algorithm is announced to realize the routing calculation based on end.X SID;
weights (weights) field length is 1 byte, identification weights for load balancing;
Endpoint behavior (Endpoint Behavior) a field length of 2 bytes for advertising segment instruction functions supported by the segment routing end node;
Segment Identification (SID) with field length of 4 bytes for representing the adjacent segment identification of the advertisement, the segment identification being bound with the corresponding adjacent;
Sub-Sub-TLV length (Sub-Sub-TLV LENGTH) the field length is 1 byte, which is used to represent the length of Sub-Sub-TLV (Sub-Sub-TLV);
The Sub-Sub-TLV group (Sub-Sub-TLVs) has variable field length, is an optional field, has variable field length and is an optional field, and the field length is used for representing the value of a specific Sub-Sub-TLV (Sub-Sub-TLV), and a receiver ignores a behavior value which is not supported or can not be identified;
In this embodiment, the segment instruction functions advertised by the endpoint behavior (Endpoint Behavior) include a fourth function (end.x) and a fifth function (end.dx), where the fourth function (end.x) is to subtract 1 from the value of the remaining segment number, update, according to the remaining segment number, the IPv4 address corresponding to the next Segment Identifier (SID) in the segment routing chain table option to the destination address field of the IPv4 header, and forward the packet according to the specified outgoing interface, and the fifth function (end.dx) is to decapsulate the segment routing packet and forward the packet to the specified three-layer adjacency. In this embodiment, when the value is "5", the end node behavior is end.x, which is to subtract 1 from the value of the number of remaining segments, update the IPv4 address corresponding to the next Segment Identifier (SID) in the segment routing chain table option to the destination address field of the IPv4 header according to the number of remaining segments, forward the message according to the specified outgoing interface, and when the value is "17", it is indicated that the end node behavior is end.dx, which is to decapsulate the segment routing message, and forward the message to the specified three-layer adjacency.
In step S4 of this embodiment, when each routing node maintains the segment identifier and the neighbor segment identifier of the routing node by using the link state packet LSP, including when the routing node fails or the link is disconnected, the adjacent routing node senses the link state change in real time according to the link state packet LSP, updates the intra-domain routing information by using the intra-domain routing protocol, and simultaneously automatically clears the segment identifier information corresponding to the failed node based on the routing convergence operation, and the centralized management and control system senses the node failure or the link state change in real time according to the link state packet LSP, so as to set the segment routing identifier range corresponding to the periodically delayed recovery failure node.
In summary, the present embodiment implements an IPv4 compatible segment route forwarding information notification scheme, and the method of the present embodiment allocates a segment identifier range to each routing node according to a segment route identifier allocation scheme by using a centralized management and control system, and the network node allocates node segment identifiers in the respective identifier ranges by itself, allocates neighbor segment identifiers for active neighbors at the same time, and extends the corresponding TLV notification node to support segment routing capability, segment identifier range, segment identifiers, adjacent segment identifiers, node maximum segment identifier depth, and link maximum segment identifier depth for the IS-IS protocol to announce different segment identifier functions through Endpoint Behavior fields, such as designated node forwarding, designated interface forwarding, decapsulation, and the like. The routing node announces all segment identification information of all nodes in the area through the extended intra-area routing protocol, so as to guide the forwarding of the intra-area segment routing message. When a node fails or a link is disconnected, the adjacent node senses the state change of the link in real time, updates the intra-domain routing information through the intra-domain routing protocol, and simultaneously automatically clears segment identification information corresponding to the failed node based on routing convergence operation. The centralized management and control system senses node faults or link state changes in real time, and then recovers the segment route identification range corresponding to the fault node with certain period delay. The method of the embodiment can realize the segment routing information notification applicable to the compatible IPv4 network, and also can realize the flexible and efficient distribution of segment identifiers, the comprehensive notification of various segment routing information and the timely removal of segment identifiers and ranges.
In addition, the embodiment also provides a segmented routing information advertising system based on the intra-domain routing protocol extension, which comprises a microprocessor and a memory which are connected with each other, wherein the microprocessor is programmed or configured to execute the segmented routing information advertising method based on the intra-domain routing protocol extension.
Furthermore, the present embodiment also provides a computer-readable storage medium having stored therein a computer program or instructions programmed or configured to execute the intra-domain routing protocol extension-based segment routing information advertisement method by a processor.
Furthermore, the present embodiment provides a computer program product comprising a computer program or instructions programmed or configured to execute the intra-domain routing protocol extension based segment routing information advertisement method by a processor.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided in the form of a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-readable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein. The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks. These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks. These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The above description is only a preferred embodiment of the present invention, and the protection scope of the present invention is not limited to the above examples, and all technical solutions belonging to the concept of the present invention belong to the protection scope of the present invention. It should be noted that modifications and adaptations to the present invention may occur to one skilled in the art without departing from the principles of the present invention and are intended to be within the scope of the present invention.