Port rate negotiation method and related equipment
By providing an automatic port rate negotiation method between REC and RE, the problems of low negotiation efficiency and inconvenient rate switching in the prior art are solved, and automatic negotiation and efficient switching of port rate are realized.
Patent Information
- Application Number
- CN202310956005.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-29
- Publication Date
- 2025-02-14
AI Technical Summary
In the prior art, the port rate negotiation between REC and RE is inefficient, requires manual configuration, and rate switching is inconvenient for automation and simplicity.
By providing a negotiation method for port rate, the first device and the second device automatically switch the port rate according to the preset rate set and switching sequence, respectively, so that the port rate remains at a specified duration so that the second port polls the corresponding Rate set.
Automatic negotiation of port rates between REC and RE is realized, which improves negotiation efficiency, reduces manual intervention, and simplifies the rate switching process.
Smart Images

Figure CN119450264A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a port rate negotiation method and related equipment. Background Art
[0002] The common public radio interface (CPRI) standard is a standard jointly published by multiple companies in the communications industry. It specifies the key interface between the radio equipment controller (REC) and the radio equipment (RE) of a wireless base station. REC and RE are usually connected by optical fiber or cable. With the evolution of technology and the increase in bandwidth requirements, the fiber rate is constantly improving. In order to be compatible with the existing stock, REC or RE usually supports multiple transmission rates. REC and RE can only communicate normally when the transmission rate of REC is consistent with the transmission rate of RE. At present, the transmission rate of REC and RE can be manually configured to ensure that the transmission rates of the two are consistent. This method is inefficient and not conducive to automation. In addition, the rate switching requires manual configuration, which is not simple enough. Summary of the invention
[0003] A port rate negotiation method and related devices provided in an embodiment of the present application are helpful to improve the negotiation efficiency of the port rate.
[0004] In a first aspect, a method for negotiating a port rate is provided. The method comprises: a first device switches the port rate of a first port to a first rate according to a first preset switching order according to a first rate set, the first port is an ETH optical port of the first device, and the first rate is any rate in the first rate set; a second device switches the port rate of a second port to a second rate according to a second preset switching order according to a second rate set, the second port is an ETH optical port of the second device, the second rate is a rate in the second rate set, and the second port corresponds to the first port; wherein the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to the duration for the second port to poll the second rate set once.
[0005] In the embodiment of the present application, the port rates of the first device and the second device can both be configured manually. Moreover, during the period when the first device switches the port rate of the first port to any rate in the first rate set, the second port can poll the second rate set once to switch to the same rate as the first port as soon as possible, thereby improving the rate negotiation efficiency.
[0006] In one possible design, the method also includes: when the clocks of the first device and the second device are synchronized, the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to the duration for which the second port polls the second rate set once; or, when the clocks of the first device and the second device are not synchronized, the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to twice the duration for which the second port polls the second rate set once.
[0007] In the embodiment of the present application, when the clocks of the first device and the second device are synchronized, during the period when the first device switches the port rate of the first port to any rate in the first rate set, the second port can poll the second rate set once to switch to the same rate as the first port as soon as possible, thereby improving the efficiency of rate negotiation. When the clocks of the first device and the second device are not synchronized, during the period when the first device switches the port rate of the first port to any rate in the first rate set, the second port can poll the second rate set twice.
[0008] In one possible design, the method also includes: the physical layer negotiation of the second port is UP; if the second device determines that the first port is UP, communicating with the first port through the second port; if the second device determines that the first port is DOWN, while waiting for the switching time of the next rate to be reached, switching the port rate of the second port to a third rate, and the third rate is the next rate of the second rate.
[0009] In one possible design, before the second device determines that the first port is UP or DOWN, the method also includes: when the first device determines that the first rate is the same as the second rate, the physical layer of the first port negotiates UP; when the first device determines that the first rate is different from the second rate, the physical layer of the first port negotiates DOWN.
[0010] In one possible design, the method also includes: the physical layer negotiation of the first port is UP; if the first device determines that the second port is UP, communicating with the second port through the first port; if the first device determines that the second port is DOWN, when waiting for the switching time of the next rate to be reached, switching the port rate of the first port to a third rate, and the third rate is the next rate of the first rate.
[0011] In one possible design, the second device determines that the first port is UP, including: the second device sends a first false UP detection request to the first device, and the first false UP detection request is used to detect whether the first port is UP; when the second device receives a first false UP detection response fed back by the first device, it determines that the first port is UP, and the first false UP detection response is used to indicate that the first port is UP.
[0012] In one possible design, the second device determines that the first port is UP, including: when the second device receives a second false UP detection request sent by the first device, determining that the first port is UP, the second false UP detection request is used to detect whether the second port is UP.
[0013] In one possible design, the method further includes: the second device feeding back a second false UP detection response to the first device, where the second false UP detection response is used to indicate that the second port is UP.
[0014] In one possible design, the second device determines that the first port is DOWN, including: the second device sends a first false UP detection request to the first device, where the first false UP detection request is used to detect whether the first port is UP; when the second device does not receive the first false UP detection response fed back by the first device, it determines that the first port is DOWN.
[0015] In one possible design, the Ethernet is based on IPv4, and the method also includes: the first false UP detection request is an Address Resolution Protocol ARP message, and the destination address of the ARP message is a second IP address reserved in the second device; the first false UP detection response is an ARP response message, and the ARP response message is used to indicate that the first port and the second port are connected, and the destination address of the ARP response message is a first IP address reserved in the first device, and the first IP address is the same as the second IP address.
[0016] In one possible design, the Ethernet is based on IPv6, and the method also includes: the first false UP detection request is a DAD message, the DAD message is used to query whether the first IP address of the first port is used, and the destination address of the DAD message is the second IP address reserved in the second device; the first false UP detection response is a DAD response message, the DAD response message is used to indicate that the first IP address is used, the destination address of the DAD response message is the first IP address reserved in the first device, and the first IP address is the same as the second IP address.
[0017] In one possible design, the method also includes: reserving the first IP address in the first device, the first IP address is located in a first VRF, the first VRF is isolated from the second VRF in the first device, and the second VRF corresponds to external networking; reserving the second IP address in the second device, the second IP address is located in a third VRF, the third VRF is isolated from the fourth VRF in the second device, and the fourth VRF corresponds to external networking.
[0018] In one possible design, after the second device determines that the first port is UP, it also includes: the second device sends a first notification message to the first device, the first notification message is used to indicate the second rate set; the first device switches the port rate of the first port to a fourth rate, and the fourth rate is the highest rate in the intersection of the first rate set and the second rate set; the first device sends a second notification message to the second device, the second notification message is used to indicate the first rate set; the second device switches the port rate of the second port to the fourth rate; the second device controls the second port to communicate with the first port based on the fourth rate.
[0019] In a possible design, before the first device switches the port rate of the first port to the first rate, it also includes: calculating a first value based on the current time of the first device, and determining that the first value corresponds to the first rate based on the first value and the correspondence between different values and rates; the first value satisfies: Cur Time1%K; wherein Cur Time1 is the current time of the first device, and K is the duration of time it takes for the second port to poll the second rate set once; before the second device switches the port rate of the second port to the second rate, it also includes: calculating a second value based on the current time of the second device, and determining that the second value corresponds to the second rate based on the second value and the correspondence between different values and rates; the second value satisfies: Cur Time2%m; wherein Cur Time2 is the current time of the second device, and m is the number of rates included in the second rate set.
[0020] In one possible design, when the clocks of the first device and the second device are synchronized, the first value satisfies: Cur Time1%K; or, when the clocks of the first device and the second device are not synchronized, the first value satisfies: Cur Time1%K*2.
[0021] In one possible design, the method also includes: a first timer is included in the first device, and a second timer is included in the second device; after the first device and the second device are time synchronized, the first timer starts timing at a first moment, and the second timer starts timing at a second moment, the first moment is the same as the second moment, the first moment is the moment when the first port starts polling the first rate set, and the second moment is the moment when the second port starts polling the second rate set.
[0022] In one possible design, the first preset switching order includes: switching from the highest rate in the first rate set to the lowest rate; the second preset switching order includes: switching from the highest rate in the second rate set.
[0023] In one possible design, the first device is an eREC, and the second device is an eRE; or,
[0024] The first device is an eRE, and the second device is an eREC; or,
[0025] The first device is a REC, and the second device is a RE; or,
[0026] The first device is a RE, and the second device is a REC.
[0027] In a second aspect, a port rate negotiation method is also provided, which is applied to a first device, and the method includes:
[0028] According to a first rate set, the port rate of the first port of the first device is switched to a first rate, where the first rate is any rate in the first rate set; wherein the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to the duration for which the second port of the second device polls a second rate set once, the second rate set includes multiple rates supported by the second port, the current rate of the second port is the second rate, and the second rate is a rate in the second rate set; wherein the first port is an ETH optical port of the first device, and the second port is an ETH optical port of the second device;
[0029] determining that the second rate is the same as the first rate;
[0030] Communicate with the second port of the second device through the first port.
[0031] In a possible design, the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to the duration for which the second port polls the second rate set once, including:
[0032] When the clocks of the first device and the second device are synchronized, the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to the duration for which the second port polls the second rate set once;
[0033] When the clocks of the first device and the second device are not synchronized, the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to twice the duration for the second port to poll the second rate set once.
[0034] In one possible design, before communicating with the second port of the second device through the first port, the method further includes:
[0035] The physical layer of the first port negotiates UP, and determines that the second port is UP.
[0036] In one possible design, the method further includes: if it is determined that the second port is DOWN, while waiting for the switching time of the next rate to be reached, switching the port rate of the first port to a third rate, wherein the third rate is the next rate of the first rate.
[0037] In one possible design, determining that the second port is UP includes:
[0038] Sending a first false UP detection request to the second device, where the first false UP detection request is used to detect whether the second port is UP;
[0039] A first false UP detection response fed back by the second device is received, where the first false UP detection response is used to indicate that the second port is UP.
[0040] In one possible design, determining that the second port is UP includes:
[0041] When a second false UP detection request sent by the second device is received, it is determined that the second port is UP, and the second false UP detection request is used to detect whether the first port is UP.
[0042] In one possible design, the method further includes: sending a second false UP detection response to the second device, wherein the second false UP detection response is used to indicate that the first port is UP.
[0043] In one possible design, when the Ethernet is based on IPv4, the method further includes:
[0044] The first false UP detection request is an Address Resolution Protocol ARP message, and the destination address of the ARP message is a first IP address reserved in the first device; the first false UP detection response is an ARP response message, and the ARP response message is used to indicate that the first port and the second port are connected, and the destination address of the ARP response message is a second IP address reserved in the second device, and the first IP address is the same as the second IP address.
[0045] In one possible design, the Ethernet is based on IPv6, and the method also includes: the first false UP detection request is a DAD message, the DAD message is used to query whether the second IP address of the second port is used, and the destination address of the DAD message is the first IP address reserved in the first device; the first false UP detection response is a DAD response message, the DAD response message is used to indicate that the first IP address is used, the destination address of the DAD response message is the second IP address reserved in the second device, and the first IP address is the same as the second IP address.
[0046] In one possible design, the method also includes: reserving a first IP address of the first port in the first device, the first IP address is located in a first VRF, the first VRF is isolated from a second VRF in the first device, and the second VRF corresponds to an external network.
[0047] In a possible design, before communicating with the second port of the second device through the first port, the method further includes:
[0048] receiving a first notification message sent by the second device, where the first notification message is used to indicate the second rate set;
[0049] Switching the port rate of the first port to a fourth rate, where the fourth rate is a highest rate in the intersection of the first rate set and the second rate set;
[0050] Communicating with a second port of the second device through the first port includes:
[0051] The first port is controlled to communicate with the second port of the second device based on the fourth rate.
[0052] In one possible design, the method also includes: sending a second notification message to the second device, where the second notification message is used to indicate the first rate set.
[0053] In one possible design, before switching the port rate of the first port of the first device to the first rate according to the first rate set, it also includes: calculating a first numerical value according to the current time of the first device, and determining that the rate corresponding to the first numerical value is the first rate according to the first numerical value and a first correspondence between the numerical value and the rate, wherein the first numerical value satisfies: Cur Time1%K; wherein Cur Time1 is the current time of the first device, and K is the duration taken for the second port to poll the second rate set once.
[0054] In a possible design, when the clocks of the first device and the second device are synchronized, the first value satisfies: Cur Time1%K; when the clocks of the first device and the second device are not synchronized, the first value satisfies: Cur Time1%K*2.
[0055] In one possible design, the first preset switching order includes: switching from a highest rate in the first rate set to a lowest rate.
[0056] In one possible design,
[0057] The first device is an eREC, and the second device is an eRE; or,
[0058] The first device is an eRE, and the second device is an eREC; or,
[0059] The first device is a REC, and the second device is a RE; or,
[0060] The first device is a RE, and the second device is a REC.
[0061] In a third aspect, a port rate negotiation method is also provided, which is applied to a second device, and the method includes:
[0062] According to the second rate set, the port rate of the second port of the second device is switched to a second rate, where the second rate is any rate in the second rate set; wherein the duration for the second port to poll the second rate set once is less than or equal to the duration for which the port rate of the first port remains at the first rate, and the current rate of the first port is the first rate, where the first rate is any rate in the first rate set; wherein the first port is an ETH optical port of the first device, and the second port is an ETH optical port of the second device;
[0063] determining that the first rate is the same as the second rate;
[0064] Communicate with the first port of the first device through the second port.
[0065] In a possible design, the duration that the second port polls the second rate set once is less than or equal to the duration that the port rate of the first port remains at the first rate, including:
[0066] When the clocks of the first device and the second device are synchronized, the duration of the second port polling the second rate set once is less than or equal to the duration of the first port maintaining the port rate at the first rate;
[0067] When the clocks of the first device and the second device are not synchronized, the duration for the second port to poll the second rate set once is less than or equal to 1 / 2 of the duration for which the port rate of the first port remains at the first rate.
[0068] In a possible design, before communicating with the first port of the first device through the second port, the method further includes:
[0069] The second port physical layer negotiates UP and determines that the first port is UP.
[0070] In one possible design, the method further includes: if it is determined that the first port is DOWN, while waiting for the switching time of the next rate to be reached, switching the port rate of the second port to a third rate, wherein the third rate is the next rate of the second rate.
[0071] In one possible design, determining that the first port is UP includes:
[0072] Sending a first false UP detection request to the first device, where the first false UP detection request is used to detect whether the first port is UP;
[0073] A first false UP detection response fed back by the first device is received, where the first false UP detection response is used to indicate that the first port is UP.
[0074] In one possible design, determining that the first port is UP includes:
[0075] When receiving the second false UP detection request sent by the first device, it is determined that the first port is UP, and the second false UP detection request is used to detect whether the second port is UP.
[0076] In one possible design, the method further includes:
[0077] A second false UP detection response is sent to the first device, where the second false UP detection response is used to indicate that the second port is UP.
[0078] In one possible design, when the Ethernet is based on IPv4, the method also includes: the first false UP detection request is an Address Resolution Protocol ARP message, and the destination address of the ARP message is a second IP address reserved in the second device; the first false UP detection response is an ARP response message, and the ARP response message is used to indicate that the first port and the second port are connected, and the destination address of the ARP response message is a first IP address reserved in the first device, and the first IP address is the same as the second IP address.
[0079] In one possible design, the Ethernet is based on IPv6, and the method also includes: the first false UP detection request is a DAD message, the DAD message is used to query whether the first IP address of the first port is used, and the destination address of the DAD message is the second IP address reserved in the second device; the first false UP detection response is a DAD response message, the DAD response message is used to indicate that the first IP address is used, the destination address of the DAD response message is the first IP address reserved in the first device, and the first IP address is the same as the second IP address.
[0080] In one possible design, the second IP address is reserved in the second device, the second IP address is located in a third VRF, the third VRF is isolated from the fourth VRF in the second device, and the fourth VRF corresponds to external networking.
[0081] In a possible design, before communicating with the first port of the first device through the second port, the method further includes:
[0082] receiving a first notification message sent by the first device, where the first notification message is used to indicate the first rate set;
[0083] Switching the port rate of the second port to a fourth rate, where the fourth rate is a highest rate in the intersection of the first rate set and the second rate set;
[0084] Communicating with a second port of the first device through the second port includes:
[0085] The second port is controlled to communicate with the first port of the first device based on the fourth rate.
[0086] In one possible design, the method further includes:
[0087] A second notification message is sent to the first device, where the second notification message is used to indicate the second rate set.
[0088] In one possible design, before switching the port rate of the second port of the second device to the second rate according to the first rate set, the method further includes:
[0089] According to the current time of the second device, a second value is calculated, and according to the second value and the second corresponding relationship between the value and the rate, the rate corresponding to the second value is determined to be the second rate, wherein the second value satisfies: Cur Time2%m; wherein Cur Time2 is the current time of the second device, and m is the number of rates included in the second rate set.
[0090] In one possible design, the second preset switching order includes: switching from the highest rate to the lowest rate in the second rate set.
[0091] In one possible design,
[0092] The first device is an eREC, and the second device is an eRE; or,
[0093] The first device is an eRE, and the second device is an eREC; or,
[0094] The first device is a REC, and the second device is a RE; or,
[0095] The first device is a RE, and the second device is a REC.
[0096] In a fourth aspect, an electronic device is also provided, including:
[0097] a processor, a memory, and one or more programs;
[0098] Wherein, the one or more programs are stored in the memory, and the one or more programs include instructions, and when the instructions are executed by the processor, the electronic device executes the method steps provided in the second aspect above.
[0099] In a fifth aspect, an electronic device is also provided, including:
[0100] The processing unit switches the port rate of the first port to the first rate according to a first preset switching order according to a first rate set, wherein the first port is an ETH optical port of the first device, and the first rate is any rate in the first rate set; wherein the duration for which the port rate is maintained at the first rate is greater than or equal to the duration for which the second port polls the second rate set once, the second port is an ETH optical port of the second device, the second port corresponds to the first port, and the second rate set includes multiple rates supported by the second port;
[0101] The transceiver unit is used to communicate with the second port through the first port when the rates of the first port and the second port are consistent.
[0102] In a sixth aspect, an electronic device is also provided, including:
[0103] a processor, a memory, and one or more programs;
[0104] The one or more programs are stored in the memory, and the one or more programs include instructions. When the instructions are executed by the processor, the electronic device executes the method steps described in the second aspect above.
[0105] In a seventh aspect, an electronic device is also provided, including:
[0106] The processing unit switches the transmission rate of the second port to the second rate according to the second preset switching order according to the second rate set, the second port is the ETH optical port of the second device, and the second rate is any rate in the second rate set; wherein the duration of the second port polling the second rate set once is less than or equal to the duration of the port rate of the first port being maintained at the first rate, the first port is the ETH optical port of the first device, the first port corresponds to the second port, the first rate is a rate in the first rate set, and the first rate set includes multiple rates supported by the first port;
[0107] The transceiver unit communicates with the first port through the second port when the rate of the second port is consistent with that of the first port.
[0108] In an eighth aspect, a communication system is also provided, including: a first device and a second device;
[0109] The first device is used to perform the steps of the first device in the method according to the first aspect above;
[0110] The second device is used to execute the steps of the second device in the method described in the first aspect above.
[0111] In a ninth aspect, a computer-readable storage medium is also provided, wherein the computer-readable storage medium is used to store a computer program. When the computer program is run on a computer, the computer executes the method described in the second aspect above.
[0112] In the tenth aspect, a computer-readable storage medium is also provided, wherein the computer-readable storage medium is used to store a computer program. When the computer program is run on a computer, the computer executes the method described in the third aspect above.
[0113] In the eleventh aspect, a computer program product is also provided, comprising a computer program, which, when executed on a computer, enables the computer to execute the method described in the second aspect above.
[0114] In a twelfth aspect, a computer program product is also provided, comprising a computer program, which, when executed on a computer, enables the computer to execute the method described in the third aspect above.
[0115] For the technical effects that can be achieved by the above-mentioned second to twelfth aspects, please refer to the description of the technical effects that can be achieved by the corresponding design schemes in the above-mentioned first aspect, and this application will not repeat them here. BRIEF DESCRIPTION OF THE DRAWINGS
[0116] Figure 1 A schematic diagram of a communication system provided in one embodiment of the present application;
[0117] Figure 2 A schematic diagram of a rate negotiation result provided in an embodiment of the present application;
[0118] Figure 3 A schematic diagram of a first rate set and a second rate set provided in an embodiment of the present application;
[0119] Figure 4 A schematic diagram of a first rate set and a second rate set provided in an embodiment of the present application;
[0120] Figure 5 A schematic diagram of a flow chart of a port rate negotiation method provided in an embodiment of the present application;
[0121] FIG. 6A to FIG. 6B A schematic diagram of rate switching provided by an embodiment of the present application;
[0122] Figure 7 A schematic diagram of the structure of a first device and a second device provided in an embodiment of the present application;
[0123] Figure 8 Another schematic diagram of a flow chart of a port rate negotiation method provided in an embodiment of the present application;
[0124] Fig. 9 A schematic diagram of a communication device provided in an embodiment of the present application;
[0125] Fig.10 Another schematic diagram of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0126] Below, some terms in the embodiments of the present application are explained to facilitate understanding by those skilled in the art.
[0127] The at least one involved in the embodiments of the present application includes one or more; wherein, more than one means greater than or equal to two. In addition, it should be understood that in the description of this specification, the words "first", "second", etc. are only used for the purpose of distinguishing the description, and cannot be understood as an explicit or implicit relative importance, nor can they be understood as an explicit or implicit order. For example, the first device and the second device do not represent the importance of the two or the order of the two, but are only for distinguishing the description. In the embodiments of the present application, "and / or" is only a description of the association relationship, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the objects associated before and after are in an "or" relationship.
[0128] References to "one embodiment" or "some embodiments" etc. described in this specification mean that a particular feature, structure or characteristic described in conjunction with the embodiment is included in one or more embodiments of the specification. Thus, the phrases "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. appearing in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.
[0129] As used in this specification, the term “when” or “after” may be interpreted to mean “if” or “after” or “in response to determining that” or “in response to detecting that”, depending on the context. Similarly, the phrase “upon determining that” or “if (stated condition or event) is detected” may be interpreted to mean “if determining that” or “in response to determining that” or “upon detecting (stated condition or event)” or “in response to detecting (stated condition or event)”, depending on the context.
[0130] The port rate negotiation method provided in the embodiment of the present application can be applied to a communication system. The communication system includes a first device and a second device. The first device and the second device can communicate with each other. For example, the first device supports multiple transmission rates, and the second device supports multiple transmission rates. When the transmission rates of the first device and the second device are the same, the first device and the second device can communicate with each other. The embodiment of the present application does not limit the device types of the first device and the second device. For example, the first device can be a radio equipment controller (radio equipment controller, Rec), and the second device can be a radio equipment (radio equipment, Re); or, the first device is RE, and the second device is Rec; or, the first device is an enhanced radio equipment controller (enhanced radio equipment controller, eRec)), and the second device is an enhanced radio equipment (enhanced radio equipment, eRe); or, the first device is eRe and the second device is eRec. For example, when the technical solution of the embodiment of the present application is applicable to a 4G communication system, the first device is Rec, the second device is Re, or, the first device is Re, and the second device is Rec. When the technical solution of the embodiment of the present application is applicable to 5G or future communication systems, the first device may be eRec and the second device may be eRe, or the first device may be eRe and the second device may be eRec. That is to say, the embodiment of the present application may be applied to traditional communication systems (for example, 3G communication systems or 4G communication systems), may be applied to 5G communication systems, and may even be applied to future communication systems.
[0131] It should be noted that the CPRI standard specifies the interface relationship between Rec and Re in traditional communication systems. The enhanced common public radio interface (eCPRI) standard specifies the interface relationship between eRec and eRe. Exemplarily, CPRI can be used in traditional communication systems, and eCPRI can be used in 5G systems or future communication systems. In an embodiment of the present application, the interface relationship between the first device and the second device may be defined by the CPRI standard, or by eCPRI, or by a future common public radio interface standard. When the interface relationship between the first device and the second device is defined by the CPRI standard, the first device is Rec and the second device is Re, or the first device is Re and the second device is Rec. When the interface relationship between the first device and the second device is defined by eCPRI, the first device may be eRec and the second device may be eRe, or the first device may be eRe and the second device may be eRec.
[0132] For ease of understanding, the following description is given by taking the first device being eRec and the second device being eRe as an example.
[0133] For example, see Figure 1 , is a schematic diagram of a communication system provided in one embodiment of the present application. Figure 1 The communication system shown includes a first device and a second device. The first device is eRec and the second device is eRe. For example, eRec may correspond to a building base band unit (BBU) in a base station, which is used to complete the baseband processing function (coding, multiplexing, modulation and spread spectrum, etc.) of the Uu interface, the Iub interface function of the radio network controller (RNC), signaling processing, local and remote operation and maintenance functions, and the working status monitoring and alarm information reporting function of the base station system. eRe may correspond to a radio remote unit (RRU) in a base station, which can be divided into four large modules: an intermediate frequency module, a transceiver module, a power amplifier and a filter module. The digital intermediate frequency module is used for modulation and demodulation, digital up and down conversion, analog / digital (A / D) conversion, etc. of optical transmission; the transceiver module completes the conversion of the intermediate frequency signal to the radio frequency signal; and then the radio frequency signal is transmitted through the antenna port through the power amplifier and the filter module. Among them, the base station can be a base station in a traditional communication system, such as a base station (NodeB) in a third-generation mobile communication (3rd generation, 3G) system, an evolved base station (evolution NodeB, eNB or eNodeB) in a long-term evolution (long term evolution, LTE) system, etc.; it can also be a base station (gNB) in a fifth-generation mobile communication (5th generation, 5G) system; it can also be a base station in a future communication system.
[0134] When the transmission rate of eRec is consistent with that of eRe, eRec and eRe can communicate normally, otherwise, Rec and Re cannot communicate normally. For example, eRec supports three modes: 1000M auto-negotiation, 1000M full-duplex (FULL), and 100M full-duplex. Figure 2 Figure 2 shows the corresponding negotiation results when eRec and eRe are configured with different rates. Figure 2 When eRec is configured as 1000M auto-negotiation, eRec and eRe can communicate only when eRe is configured as 1000M auto-negotiation, otherwise they cannot communicate normally. Similarly, when eRec is configured as 1000M full-duplex, eRec and eRe can communicate only when eRe is configured as 1000M full-duplex, otherwise they cannot communicate normally.
[0135] In order to ensure that the transmission rates of eRec and eRe are consistent, one way is that both eRec and eRe use the method of manually configuring the rate, that is, manually specifying the transmission rates of eRec and eRe. This method is very inefficient and difficult to automate, and the rate switching needs to be done manually, which is not simple enough. Another way is that one end of eRec and eRe uses the method of manually configuring the rate, and the other end uses the method of automatic polling. For example, both eRec and eRe support a rate set including rate 1 and rate 2. The transmission rate of eRec is manually configured to rate 2, and eRe sets the rate to rate 1 in a polling cycle. Since the rates of eRec and eRe are inconsistent, eRec and eRe cannot communicate normally. Afterwards, eRe switches the rate from rate 1 to rate 2. At this time, the transmission rates of eRec and eRe are consistent, so eRec and eRe can communicate normally. This method of manual configuration on one end and automatic polling on the other end is inefficient, and the rate switching is not convenient enough for the end using manual configuration. In addition, the method of manually configuring one end and automatically polling the other end is not applicable to all scenarios. For example, in eRec and eRe based on the eCPRI standard, eRe may be a dumb terminal. Its control method is to transmit control information through optical fiber. The transmission rate of eRe cannot be set by manual configuration.
[0136] In view of this, an embodiment of the present application provides a port rate negotiation method. The method can be applied to a communication system. The communication system includes a first device and a second device. For the first device and the second device, please refer to the above description. In the embodiment of the present application, the first device and the second device can both adopt a method of manually configuring the rate, that is, the first device and the second device can automatically switch the rate. For example, the first device can automatically poll the rates in the first rate set, and the second device can automatically poll the rates in the second rate set.
[0137] The following first describes the polling process of the first device and the second device.
[0138] See also Figure 3, the first device (for example, eRec) supports a first rate set. The first rate set includes multiple rates supported by the first device. For example, the first rate set is {rate 0, rate 1 and rate 2}. Among them, the duration of rate 0, the duration of rate 1 and the duration of rate 2 are the same, for example, all are T. Take the rate switching sequence of the first device as rate 0->rate 1->rate 2 as an example. The duration of rate 0 is the duration from the moment the first device switches to rate 0 to the moment it switches to the next rate, i.e., rate 1. Similarly, the duration of rate 1 is the duration from the moment the first device switches to rate 1 to the moment it switches to the next rate, i.e., rate 2. Similarly, the duration of rate 2 is the duration from the moment the first device switches to rate 2 to the moment it switches to the next rate, i.e., rate 0. Therefore, the duration experienced by the first device when polling the first rate set once is 3T, i.e., the sum of the durations of each rate in the first rate set.
[0139] Continue as Figure 3 , the second device (for example, eRe) supports a second rate set. The second rate set includes multiple rates supported by the second device. For example, the second rate set is {rate 0, rate 1 and rate 2}. Among them, the duration of rate 0, the duration of rate 1 and the duration of rate 2 are the same, for example, all are t. Take the rate switching order of the second device as rate 0->rate 1->rate 2 as an example. Among them, the principle of the duration of rate 0, the duration of rate 1 and the duration of rate 2 in the second rate set is the same as the first rate set, so it will not be repeated here. Therefore, the duration that the second device experiences when polling the second rate set once is 3t, which is the sum of the duration of each rate in the second rate set.
[0140] In the embodiment of the present application, the first rate set and the second rate set satisfy the relationship: the duration of each rate in the first rate set is greater than or equal to the duration of the second device polling the second rate set once. Figure 3 For example, the duration T of any rate among rate 0, rate 1 and rate 2 in the first rate set is greater than or equal to 3t. 3t is the duration required for the second device to poll the second rate set once. In this way, during the period when the rate of the first device is maintained at any rate in the first rate set, the second device has enough time to poll the second rate set once to switch to the same rate as the first device, thereby improving the efficiency of rate negotiation.
[0141] It should be noted that Figure 3In the example, the duration of each rate in the first rate set is the same and is T. It can be understood that the durations of different rates in the first rate set can be different. For example, the duration of rate 0 in the first rate set is T0, the duration of rate 1 is T1, and the duration of rate 2 is T2. T0, T1 and T2 are not the same. Even so, the duration of each rate in the first rate set is greater than or equal to 3t. 3t is the duration required for the second device to poll the second rate set once.
[0142] It should be noted that Figure 3 In the example, the duration of each rate in the second rate set is the same and is t. It can be understood that the durations of different rates in the second rate set can be different. For example, the duration of rate 0 in the second rate set is t0, the duration of rate 1 is t1, and the duration of rate 2 is t2. t0, t1 and t2 are different. In this way, the duration of each rate in the first rate set is greater than or equal to t1+t2+t3. t1+t2+t3 is the duration required for the second device to poll the second rate set once.
[0143] also, Figure 3 In the example, the first rate set includes three rates. It should be understood that the first rate set may include more or fewer rates. When the first rate set includes more or fewer rates, the principle is the same as Figure 3 The same, no repetition. Figure 3 In the example, the second rate set includes three rates. It should be understood that the second rate set may include more or fewer rates. When the second rate set includes more or fewer rates, the principle is the same as Figure 3 Same, no repetition.
[0144] also, Figure 3 In the example, the rates in the first rate set and the second rate set are exactly the same, that is, they both include {rate 0, rate 1, and rate 2}. It can be understood that the rates in the first rate set and the second rate set may not be exactly the same, as long as the first rate set and the second rate set have an intersection. For example, the first rate set is {rate 0, rate 1, and rate 2}, the second rate set is {rate 2, rate 3, and rate 4}, and the first rate set and the second rate set have an intersection.
[0145] In the above embodiment, the first rate set of the first device and the second rate set of the second device are combined to satisfy the relationship: the duration of each rate in the first rate set is greater than or equal to the duration of the second device polling the second rate set once. Optionally, when the clocks of the first device and the second device are synchronized or asynchronous, the relationship satisfied by the first rate set and the second rate set may be different, for example, as described in the following two cases.
[0146] (1) When the clocks of the first device and the second device are synchronized, the duration of each rate in the first rate set is greater than or equal to the duration of the second device polling the second rate set once. Figure 3 For example, the duration T of each rate in the first rate set is greater than or equal to 3t. 3t is the duration required for the second device to poll the second rate set once.
[0147] (2) When the clocks of the first device and the second device are not synchronized, the duration of each rate in the first rate set is greater than or equal to twice the duration of the second device polling the second rate set. Figure 4 , the duration T of each rate in the first rate set is greater than or equal to 3t*2. 3t is the duration required for the second device to poll the second rate set once. It is understandable that when the clocks of the first device and the second device are not synchronized, there is a possible situation that the first device has started to poll the first rate set, but the second device has not started to poll the second rate set. In order to ensure that the first device and the second device complete the rate negotiation as soon as possible, when the first device switches to a certain rate in the first rate set, it can wait for a certain period of time before switching to the next rate. The duration is greater than or equal to 2 times the duration required for the second device to poll the second rate set once. Therefore, during the period when the rate of the first device remains at the said certain rate, the second device has enough time to poll the second rate set once to switch to the same rate as the first device, thereby improving the efficiency of rate negotiation.
[0148] That is to say, Figure 3 Applicable to the case where the clocks of the first device and the second device are synchronized. Figure 4 Applicable to the situation where the clocks of the first device and the second device are not synchronized. The first device can choose to use Figure 3 or Figure 4 For example, when the first device determines that the first device is synchronized with the second device, the first device uses Figure 3 When the first device determines that the first device is out of sync with the second device, use Figure 4 plan.
[0149] The following describes the port rate negotiation method provided in the embodiment of the present application in conjunction with the accompanying drawings.
[0150] See also Figure 5 , is a flow chart of a port rate negotiation method provided in an embodiment of the present application. The method can be applied to a communication system, such as Figure 1 The system shown. Figure 5 , the process includes:
[0151] S501, the first device switches the port rate of the first port to a first rate according to a first preset switching order based on a first rate set, the first port is an Ethernet (ETH) optical port of the first device, and the first rate is any rate in the first rate set.
[0152] S502, the second device switches the port rate of the second port to the second rate according to the second preset switching order according to the second rate set, the second port is the ETH optical port of the second device, the second rate is a rate in the second rate set, and the second port corresponds to the first port. The duration of the port rate of the first port remaining at the first rate is greater than or equal to the duration of the second port polling the second rate set once.
[0153] Optionally, the first port may be any ETH optical port of the first device. The second port may be an ETH optical port of the second device corresponding to the first port. It should be noted that the first port may also be other types of ports, such as an electrical port. The second port may also be other types of ports, such as an electrical port. In short, the embodiments of the present application do not limit the types of the first port and the second port.
[0154] Continue with Figure 3 For example, the first rate set supported by the first port of the first device is {rate 0, rate 1 and rate 2}. The first device switches the port rate of the first port to the first rate according to the first rate set in a first preset switching order. The first rate is any rate in the first rate set. Among them, the first preset switching order includes: switching from the highest rate in the first rate set to the lowest rate, or, switching from the lowest rate in the first rate set to the highest rate, or, switching from the first rate in the first rate set to the last rate, or, switching from the last rate in the first rate set to the first rate, and so on, which is not limited in the embodiments of the present application.
[0155] Continue with Figure 3 For example, the second rate set supported by the second port of the second device is {rate 0, rate 1 and rate 2}. The second device switches the port rate of the second port to the second rate according to the second rate set in a second preset switching order. The second rate is a rate in the second rate set. Among them, the second preset switching order includes: switching from the highest rate in the second rate set to the lowest rate, or, switching from the lowest rate in the second rate set to the highest rate, or, switching from the first rate in the second rate set to the last rate, or, switching from the last rate in the second rate set to the first rate, etc., which is not limited in the embodiments of the present application.
[0156] Optionally, the first preset switching order and the second preset switching order may be the same or different, and the embodiments of the present application are not limited thereto. Considering that the port rates of the first port and the second port use higher rates as much as possible, the first preset switching order may be switching from the highest rate in the first rate set to the lowest rate, and the second preset switching order may be switching from the highest rate in the second rate set to the lowest rate. In this way, the first device and the second device can switch to the same and higher rate as quickly as possible. Among them, the first rate set may be pre-configured in the first device or specified in the protocol. The second rate set may be pre-configured in the second device or specified in the protocol. The first preset switching order may be pre-configured in the first device or specified in the protocol. The second preset switching order may be pre-configured in the second device or specified in the protocol.
[0157] Optionally, before S501, the first device may further perform the steps of: calculating a first enumeration (also referred to as a first value) according to the current time of the first device, and then determining that the rate corresponding to the first enumeration is the first rate according to the first correspondence. The first correspondence is a correspondence between an enumeration and a rate. The first correspondence may be stored in the first device in advance or specified in a protocol, and is not limited in the embodiments of the present application. Among them, the first enumeration satisfies the following:
[0158] Cur Time1%K;
[0159] Wherein, Cur Time1 is the current time of the first device (for example, system time). % represents the modulus algorithm. K is the duration of the second port polling the second rate set once. Figure 3 For example, K = 3t.
[0160] Exemplarily, the first device stores a first correspondence between enumeration and rate, such as the following Table 1:
[0161] Table 1: First correspondence between enumeration and rate
[0162] enumerate rate 0 Rate 0 1 Rate 1 2 Rate 2
[0163] by Figure 3For example, K=3t. Assuming t=1 second, then K=3 seconds, and Cur Time1 is the system time converted into seconds. For example, if Cur Time1=10 seconds, then 10%3=1, that is, the first enumeration is equal to 1, then from Table 1 above, it can be seen that the rate corresponding to the first enumeration is rate 1. If Cur Time1=11 seconds, then 11%3=2, that is, the first enumeration is equal to 2, then from Table 1 above, it can be seen that the rate corresponding to the first enumeration is rate 2. If Cur Time1=12 seconds, then 12%3=0, that is, the first enumeration is equal to 0, then from Table 1 above, it can be seen that the rate corresponding to the first enumeration is rate 0. It should be understood that Cur Time1 can also be 13, 14, 15 seconds, and so on, and the first rate set is polled.
[0164] Optionally, before S502, the second device may further perform the steps of: calculating a second enumeration (also referred to as a second value) according to the current time of the second device, and then determining that the rate corresponding to the second enumeration is the second rate according to the second correspondence. The second correspondence is a correspondence between the enumeration and the rate. The second correspondence may be stored in the second device or specified in the protocol in advance, and is not limited in the embodiment of the present application. The second enumeration satisfies the following:
[0165] Cur Time2%m;
[0166] Wherein, Cur Time2 is the current time of the second device (eg, system time), and m is the number of rates included in the second rate set. Figure 3 For example, since the second rate set is {rate 0, rate 1, rate 2}, m=3.
[0167] Exemplarily, the second device stores a second correspondence between enumeration and rate, such as the following Table 2:
[0168] Table 2: Second correspondence between enumeration and rate
[0169] enumerate rate 0 Rate 0 1 Rate 1 2 Rate 2
[0170] by Figure 3For example, m=3. Cur Time2 is the system time converted into seconds. For example, if Cur Time2=10 seconds, 10%3=1, that is, the second enumeration is 1, then from Table 2 above, it can be seen that the rate corresponding to the second enumeration is rate 1. If Cur Time2=11 seconds, 11%3=2, that is, the second enumeration is 2, then from Table 2 above, it can be seen that the rate corresponding to the second enumeration is rate 2. If Cur Time2=12 seconds, 12%3=0, that is, the second enumeration is 0, then from Table 2 above, it can be seen that the rate corresponding to the second enumeration is rate 0. It should be understood that Cur Time2 can also be 13, 14, 15 seconds, and so on, and the second rate set is polled.
[0171] To make it easier to understand, an example is given below.
[0172] See also Fig. 6A . For example, the second rate set includes three rates, rate 0, rate 1 and rate 2, that is, m=3. The duration of each rate in the second rate set is t, and t=1s is taken as an example, that is, the time required for the second port to poll the second rate set once is 3 seconds, that is, K=3 seconds. Moreover, taking the clock synchronization of the first device and the second device as an example, it is assumed that the current time of the first device and the second device is 9s. Then, the first device calculates the first enumeration according to the current time: CurTime1%K=9%3=0. The first device determines according to the first corresponding relationship (Table 1 above) that the rate corresponding to the first enumeration is rate 0. Therefore, the first device switches the rate of the first port to rate 0 at the 9th second. The second device calculates the second enumeration according to the current time: Cur Time2%m=9%3=0. The second device determines according to the second corresponding relationship (Table 2 above) that the rate corresponding to the second enumeration is rate 0. Therefore, the second device switches the rate of the second port to rate 0 at the 9th second.
[0173] Optional, Fig. 6A In the process, the first device and the second device can start timing at the same time. For example, the first device starts the first timer at the 9th second. When the first timer reaches T, the first device switches the rate of the first port to the next rate, where T is the duration of rate 0 in the first rate set. T is greater than or equal to the duration it takes for the second port to poll the second rate set once (i.e., 3t). The second device starts the second timer at the 9th second. When the second timer reaches 1 second, the second device switches the rate of the second port to the next rate, where 1 second is the duration of rate 0 in the second rate set. Simply put, in this case, the first device starts the first timer at the same time as the second device starts the second timer. Before the first timer reaches T, the second port can poll the second rate set once.
[0174] In the above embodiment, the synchronization of the first device and the second device is taken as an example. Optionally, when the clocks of the first device and the second device are synchronized or not synchronized, the first enumeration method calculated by the first device may be different. For example, the following two cases are described.
[0175] (1) When the clocks of the first device and the second device are synchronized, the first enumeration satisfies: Cur Time1%K.
[0176] (2) When the clocks of the first device and the second device are not synchronized, the first enumeration satisfies: Cur Time1%K*2.
[0177] In case (1), the clocks of the first device and the second device are synchronized. Fig. 6A The following is an example of situation (2), that is, the situation where the clocks of the first device and the second device are not synchronized.
[0178] See also Figure 6B , taking the second rate set including three rates, rate 0, rate 1 and rate 2 as an example, that is, m = 3. The duration of each rate in the second rate set is t, and taking t = 1s as an example, the time required for the second port to poll the second rate set once is 3 seconds, that is, K = 3 seconds. Figure 6B , assuming that the second device starts polling the second rate set at the 9th second, that is, the second device uses the calculation formula of the second enumeration Cur Time2%m=9%3=0 at the 9th second to determine that the second enumeration is 0. The second device determines that the rate corresponding to the second enumeration is rate 0 according to the second corresponding relationship (Table 2 above). Therefore, the second device switches the rate of the second port to rate 0 at the 9th second. The second device starts the second timer at the 9th second to start timing. When the second timer reaches the 10th second, the second device again uses the calculation formula of the second enumeration Cur Time2%m=10%3=1 to determine that the second enumeration is 1. The second device determines that the rate corresponding to the second enumeration is rate 1 according to the second corresponding relationship (Table 2 above). Therefore, the second device switches the rate of the second port to rate 1 at the 10th second. Because the clocks of the first device and the second device are not synchronized, assuming that the current time of the second device is the 10th second, the current time of the first device is the 12th second. As Figure 6B, the first device starts polling the first rate set at the 12th second. That is, at the 12th second, the first device uses the first enumeration calculation formula Cur Time1%K*2=12%3*2=0 to determine that the first enumeration is 0. The first device determines that the rate corresponding to the first enumeration is rate 0 according to the first correspondence (Table 1 above). Therefore, the first device switches the port rate of the first port to rate 0 at the 12th second. At this time, the rate of the first port is rate 0, and the rate of the second port is rate 1, and the rate negotiation of the two ports fails. Optionally, the first device starts the first timer at the 12th second, and switches to the next rate when the first timer reaches T. Among them, T is the duration of rate 0 in the first rate set, and T is greater than or equal to twice the time the second port polls the second rate set once. In other words, Figure 6B In the example, before the 18th second, the rate of the first port will remain at rate 0.
[0179] Continue as Figure 6B , when the second timer of the second device reaches the 11th second, the calculation formula of the second enumeration Cur Time2%m=11%3=2 is continued to be used to determine that the second enumeration is 2. The second device determines that the rate corresponding to the second enumeration is rate 2 according to the second corresponding relationship (Table 2 above). Therefore, the second device switches the rate of the second port to rate 2 at the 11th second. At this time, the rate of the first port is rate 0, and the rate of the second port is rate 2, and the rate negotiation of the two ports fails.
[0180] Continue as Figure 6B , from the 9th second to the 12th second, the second device has polled the second rate set once, and failed to negotiate with the first port during this polling process. Therefore, the second device will poll the second rate set again. For example, at the 12th second, the second device uses the calculation formula of the second enumeration Cur Time2%m=12%3=0 to determine that the second enumeration is 0. Therefore, at the 12th second, the second device switches the rate of the second port to rate 0. At this time, the rate of the first port is rate 0, and the rate of the second port is also rate 0. The first port negotiates successfully with the second port.
[0181] Therefore, through Figure 6B It can be seen that the negotiation was not successful when the second device polled the second rate set for the first time, and the negotiation was successful when the second device polled the second rate set again. Therefore, when the clocks of the first device and the second device are not synchronized, the duration of the first port's rate remaining at rate 0 needs to be greater than or equal to the duration of the second port polling the second rate set twice, so as to ensure that the second port has enough time to poll the second rate set twice during the period when the first port remains at rate 0, so as to ensure successful negotiation.
[0182] S503: If the first rate is the same as the second rate, the first device and the second device communicate through the first port and the second port.
[0183] Exemplarily, the first device and the second device communicate through the first port and the second port, which may include: the first device controls the first port to communicate with the second port based on the first rate, and / or the second device controls the second port to communicate with the first port based on the second rate.
[0184] Optionally, before the first device communicates with the second port through the first port, the first device may also execute the following steps: the first port physical layer negotiates UP, the first device determines whether the second port is UP or DOWN, if the second port is UP, the first device may communicate with the second device through the first port, if the second port is DOWN, then when waiting for the next rate switching time to arrive, the rate of the first port is switched to the next rate.
[0185] There are multiple ways for the first device to determine whether the second port of the opposite end (ie, the second device) is UP or DOWN, for example, the following way A or way B.
[0186] Mode A, the first device sends a false UP detection request 1 to the second device, and the false UP detection request 1 is used to request to detect whether the second port is UP. If the first device receives a false UP detection response 1 fed back by the second device within a preset time length, it is determined that the second port is UP. The false UP detection response 1 is used to indicate that the second port is UP. If the first device does not receive a false UP detection response 1 fed back by the second device within the preset time length, it is determined that the second port is DOWN. The specific duration of the preset time length is not limited in the embodiments of the present application.
[0187] Mode B: If the first device receives the false UP detection request 2 sent by the second device, it determines that the second port is UP. If the first device does not receive the false UP detection request 2 sent by the second device, it determines that the second port is DOWN. The false UP detection request 2 is used to request to detect whether the first port is UP.
[0188] The difference between method A and method B is that in method A, the first device needs to determine whether the second port of the opposite end (i.e., the second device) is UP or DOWN, so the first device sends a false UP detection request 1 to the opposite end. If a false UP detection response 1 is received from the second device within a preset time, the second port is determined to be UP; otherwise, the second port is determined to be DOWN. In method B, the first device determines that the second port of the opposite end is UP when it receives a false UP detection request 2 sent by the opposite end; otherwise, the first device uses the above method A to determine whether the second port is UP or DOWN. This is because the second device will automatically send a false UP detection request 2 after the physical layer of the second port negotiates UP, so the first device can determine that the second port is UP when it receives the false UP detection request 2.
[0189] Optionally, before the second device communicates with the first port through the second port, the second device may also execute the following steps: the second port physical layer negotiates UP, after which the second device determines whether the first port is UP or DOWN. If it is determined that the first port is UP, the second device may communicate with the first device through the second port; if it is determined that the first port is DOWN, the second device waits for the next rate switching moment to arrive and switches the rate of the second port to the next rate.
[0190] There are multiple ways for the second device to determine whether the first port of the opposite end (ie, the first device) is UP or DOWN, for example, the following way C or way D.
[0191] Mode C: The second device sends a false UP detection request 2 to the first device, and the false UP detection request 2 is used to request to detect whether the first port is UP. If the second device receives a false UP detection response 2 fed back by the first device within a preset time, it is determined that the first port is UP. The false UP detection response 2 is used to indicate that the first port is UP. If the first device does not receive a false UP detection response 2 fed back by the first device within a preset time, it is determined that the first port is DOWN.
[0192] Mode D: If the second device receives the false UP detection request 1 sent by the second device, it determines that the first port is UP, otherwise, the second device uses the above-mentioned mode C to determine whether the first port is UP or DOWN. The false UP detection request 1 is used to request to detect whether the second port is UP.
[0193] Among them, the principle of method C is the same as that of the previous method A, and the principle of method D is the same as that of the previous method B, and they will not be repeated.
[0194] It should be noted that the first device and the second device need to determine whether the port of the opposite end is UP respectively, so the above-mentioned methods A to D can be used in combination. There are many ways of combination, including: the first device uses method A, and the second device uses method C; or, the first device uses method A, and the second device uses method D; or, the first device uses method B, and the second device uses method C; or, the first device uses method B, and the second device uses method D. Take the first device using method A and the second device using method D as an example. Specifically, the first device needs to determine whether the second port of the opposite end (i.e., the second device) is UP or DOWN, so the first device sends a false UP detection request 1 to the opposite end (method A). When the second device receives the false UP detection request 1, it determines that the first port is UP (method D). The second device feeds back a false UP detection response 1 to the first device. The first device receives the false UP detection response 1 fed back by the second device within a preset time length, and determines that the second port is UP (method A). Take the first device using method B and the second device using method C as an example. Specifically, the second device needs to determine whether the first port of the opposite end (i.e., the first device) is UP or DOWN, so the second device sends a false UP detection request 2 to the opposite end (method C). When the first device receives the false UP detection request 2, it determines that the second port is UP (method B). When the second device receives the false UP detection response 2 fed back by the first device, it determines that the first port is UP (method C).
[0195] Optionally, the false UP detection request (including the previous false UP detection request 1 and / or the false UP detection request 2) may be an Address Resolution Protocol (ARP) message, and correspondingly, the false UP detection response (including the previous false UP detection response 1 and / or the false UP detection response 2) may be an ARP response message. Alternatively, the false UP detection request (including the previous false UP detection request 1 and / or the false UP detection request 2) may be a Duplicate Address Detection (DAD) message, and correspondingly, the false UP detection response (including the previous false UP detection response 1 and / or the false UP detection response 2) may be a DAD response message. For example, when the first port and the second port communicate based on IPv4, the false UP detection request may be an ARP message, and correspondingly, the false UP detection response may be an ARP response message. When the first port and the second port communicate based on IPv6, the false UP detection request may be a DAD message, and correspondingly, the false UP detection response may be a DAD response message.
[0196] In the embodiment of the present application, the same IP address is reserved in the first device and the second device. Optionally, the IP address may be only applicable to false UP detection, that is, only applicable to port connectivity detection. For example, the first device stores the first IP address of the first port, and the second device stores the second IP address of the second port. The first IP address and the second IP address are the same. For example, see Figure 7 The first device has a first IP address of the first port pre-stored in it, the first IP address is located in the first VRF, the first VRF is isolated from the second VRF in the first device, and the second VRF corresponds to the external network service. The second device has a second IP address of the second port pre-stored in it, the second IP address is located in the third VRF, the third VRF is isolated from the fourth VRF in the second device, and the fourth VRF corresponds to the external network service.
[0197] Take the example that the fake UP detection request 2 sent by the second device to the first device is an ARP message, and the fake UP detection response 2 fed back by the first device to the second device is an ARP response message. Among them, the source mac address of the ARP message can be the mac address of the second port. The destination address of the ARP message is the second IP address reserved in the second device. After the second device sends the ARP message, the first device with the first IP address (the same as the second IP address) will receive the ARP message. After that, the first device sends an ARP response message. The ARP response message is used to indicate that the first port and the second port are connected. The source mac address of the ARP response message is the mac address of the first port. The destination address of the ARP response message is the first IP address reserved in the first device. After the second device receives the ARP response message, since the first IP address in the ARP response message is the same as the second IP address reserved in the second device, it is determined that the ARP response message is a fake UP response message.
[0198] Take the example that the fake UP detection request 2 sent by the second device to the first device is a DAD message, and the fake UP detection response 2 fed back by the first device to the second device is a DAD response message. The DAD message may be, for example, a neighbor solicitation (NS). The DAD response message may be, for example, a neighbor advertisement (NA). The NS message is used to query whether the first IP address is in use. The source mac address of the NS message is the mac address of the second port. The destination address of the NS message is the second IP address reserved in the second device. After the first device receives the NS message, it determines that the second IP address in the NS message is the same as the first IP address reserved in the first device, and then sends an NA response message. The NA response message is used to indicate that the first IP address is in use. The source mac address of the NA response message is the mac address of the first port. The destination address of the NA response message is the first IP address reserved in the first device. When the second device receives the NA response message, since the first IP address in the NA response message is the same as the second IP address reserved in the second device, it determines that the NA response message is a fake UP response message.
[0199] Optionally, before the first device communicates with the second port through the first port, the step may also be included: the first device receives a first notification message sent by the second device, and the first notification message is used to indicate the second rate set. After the first device receives the first notification message, the port rate of the first port is switched to the fourth rate. The fourth rate is the highest rate in the intersection of the first rate set and the second rate set. Optionally, before the second device communicates with the first port through the second port, the step may also be included: the second device receives a second notification message sent by the first device. The second notification message is used to indicate the first rate set. After the second device receives the second notification message, the port rate of the second port is switched to the fourth rate. The fourth rate is the highest rate in the intersection of the first rate set and the second rate set. That is, the first device and the second device can notify the other end of the rate set they support so that the two ends (the first port and the second port) communicate at the highest rate.
[0200] Figure 8 Another flow chart of the rate negotiation method provided in one embodiment of the present application is shown in FIG. Figure 1 The system shown. Figure 8 , the process includes:
[0201] S801: The first device switches the port rate of the first port to rate 2.
[0202] Taking the first rate set being {rate 0, rate 1, rate 2} as an example, rate 2 is one of the rates in the first rate set.
[0203] S802: The second device switches the port rate of the second device to rate 0.
[0204] Taking the second rate set being {rate 0, rate 1, rate 2} as an example, rate 0 is one of the rates in the second rate set.
[0205] S803: Rate negotiation between the first device and the second device fails.
[0206] Optionally, the failure of rate negotiation may be understood as the first device and the second device not reaching an agreement on current rates.
[0207] S804, the first port is DOWN.
[0208] S805, the second port is DOWN.
[0209] Optionally, the execution between S804 and S805 is not limited.
[0210] S806: The second device switches the rate of the second port to rate 1.
[0211] Optionally, S806 may include: after the second device determines that the second port is DOWN, immediately switching the port rate of the second port to the next rate, i.e., rate 1; or, after the second device determines that the second port is DOWN, while waiting for the next rate switching time to be reached, switching the rate of the second port to the next rate, i.e., rate 1.
[0212] It should be noted that since the duration of each rate in the first rate set of the first port is greater than or equal to the duration of the second port polling the second rate set once, when the second port reaches the time to switch to the next rate (i.e., rate 1), the first port has not yet reached the time to switch to the next rate, that is, the first port still remains at rate 2.
[0213] S807, the physical layer of the second port is negotiated UP.
[0214] S808: The second device performs a false UP detection, and the false UP detection fails.
[0215] Optionally, after the second port physical layer negotiates UP, the false UP detection process can be automatically triggered, that is, S808 is executed. Among them, the false UP detection failure may include that one of the first port and the second port is UP and the other port is DOWN. Here, since the second port is UP (S807), when the second device determines that the first port is DOWN, it is determined that the false UP detection fails. Among them, the second device determines whether the first port of the opposite end (i.e., the first device) is UP or DOWN in a variety of ways, such as method C or method D in the above text, which will not be repeated here for the sake of brevity of the specification.
[0216] S809: The second device switches the rate of the second port to rate 2.
[0217] Optionally, S809 may include: when the second device determines that the false UP detection fails, immediately switching the rate of the second port to the next rate; or, after determining that the false UP detection fails, waiting for the next rate switching time to arrive, switching the rate of the second port to the next rate.
[0218] S810: The rate negotiation between the first device and the second device succeeds.
[0219] Optionally, the success of the rate negotiation can be understood as the first device and the second device reaching an agreement on the current rates.
[0220] S811, the first port is up.
[0221] S812, the second port is up.
[0222] The execution order of S811 and S812 is not limited.
[0223] S813: The second device performs a false UP detection, and the detection is successful.
[0224] Optionally, after the second port physical layer negotiates UP, the false UP detection process can be automatically triggered, that is, S813 is executed. Among them, the success of the false UP detection can be understood as the first port and the second port are both UP, and the first device and the second device know that the other end is UP. In other words, the first device needs to determine that the other end is UP, and the second device also needs to determine that the other end is UP. Among them, the way the first device determines that the other end is UP, please refer to the method A or method B in the previous text. The way the second device determines that the other end is UP, please refer to the method C or method D in the previous text. For the sake of brevity of the specification, it is not repeated here.
[0225] S814: The first device and the second device communicate based on rate 2.
[0226] For example, S814 may include: the first device controls the first port to communicate with the second port based on rate 2, and / or the second device controls the second port to communicate with the first port based on rate 2.
[0227] S815. The first device receives a first notification message sent by the second device, where the first notification message is used to indicate a second rate set.
[0228] S816: The first device switches the port rate of the first port to rate 0. Rate 0 is the highest rate in the intersection of the first rate set and the second rate set.
[0229] S817: The second device receives a second notification message sent by the first device. The second notification message is used to indicate the first rate set.
[0230] S818: The second device switches the port rate of the second port to rate 0. Rate 0 is the highest rate in the intersection of the first rate set and the second rate set.
[0231] S819: The first port communicates with the second port based on rate 0.
[0232] It is understandable that, in order to implement the functions in the above embodiments, the first device and the second device include hardware structures and / or software modules corresponding to the execution of each function. It should be easy for those skilled in the art to realize that, in combination with the units and method steps of each example described in the embodiments disclosed in this application, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application scenario and design constraints of the technical solution.
[0233] Fig. 9 and Fig.10 The following is a schematic diagram of the structure of possible communication devices provided in the embodiments of the present application. These communication devices can be used to implement the functions of the first device or the second device in the above method embodiments, and thus can also achieve the beneficial effects of the above method embodiments. In the embodiments of the present application, the communication device can be as follows: Figure 1 The first device shown may also be Figure 1 The second device shown may also be a module (such as a chip) applied to the first device or the second device.
[0234] like Fig. 9 As shown, the communication device 900 includes a processing unit 910 and a transceiver unit 920. The communication device 900 is used to implement the above Figure 5 or Figure 8 The functions of the first device or the second device in the method embodiment are shown.
[0235] When the communication device 900 is used to implement Figure 5 The functions of the first device in the method embodiment shown are: the processing unit 910 is used to switch the port rate of the first port to the first rate according to the first preset switching order based on the first rate set; the transceiver unit 920 is used to communicate with the second port when the first rate is the same as the second rate.
[0236] When the communication device 900 is used to implement Figure 5The function of the second device in the method embodiment shown is: the processing unit 910 is used to switch the port rate of the second port to the second rate according to the second preset switching order based on the second rate set; the transceiver unit 920 is used to communicate with the first port when the first rate is the same as the second rate.
[0237] For more detailed description of the processing unit 910 and the transceiver unit 920, please refer to Figure 5 The relevant description in the method embodiment shown is directly obtained and will not be repeated here.
[0238] like Fig.10 As shown, the communication device 1000 includes a processor 1010 and an interface circuit 1020. The processor 1010 and the interface circuit 1020 are coupled to each other. It is understood that the interface circuit 1020 can be a transceiver or an input-output interface. Optionally, the communication device 1000 may also include a memory 1030 for storing instructions executed by the processor 1010 or storing input data required by the processor 1010 to execute instructions or storing data generated after the processor 1010 executes instructions.
[0239] When the communication device 1000 is used to implement Figure 5 When the method is shown, the processor 1010 is used to implement the function of the above-mentioned processing unit 910, and the interface circuit 920 is used to implement the function of the above-mentioned transceiver unit 920.
[0240] When the above-mentioned communication device is a chip applied to the first device, the chip implements the function of the first device in the above-mentioned method embodiment. The chip receives information from other modules in the first device (such as a radio frequency module or an antenna), and the information is sent by the second device to the first device; or, the chip sends information to other modules in the first device (such as a radio frequency module or an antenna), and the information is sent by the first device to the second device. The chip here can be a baseband chip of the first device, or it can be a DU or other module. The DU here can be a DU under the open radio access network (O-RAN) architecture.
[0241] When the above-mentioned communication device is a module applied to the second device, the module implements the function of the second device in the above-mentioned method embodiment. The module receives information from other modules in the second device (such as a radio frequency module or an antenna), and the information is sent by the first device to the second device; or, the module sends information to other modules in the second device (such as a radio frequency module or an antenna), and the information is sent by the second device to the first device. The module here can be a baseband chip of the second device, or it can be a DU or other module. The DU here can be a DU under the open radio access network (O-RAN) architecture.
[0242] It is understandable that the processor in the embodiments of the present application may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. The general-purpose processor may be a microprocessor or any conventional processor.
[0243] The method steps in the embodiments of the present application can be implemented by hardware, or by a processor executing software instructions. The software instructions can be composed of corresponding software modules, and the software modules can be stored in a random access memory, a flash memory, a read-only memory, a programmable read-only memory, an erasable programmable read-only memory, an electrically erasable programmable read-only memory, a register, a hard disk, a mobile hard disk, a CD-ROM, or any other form of storage medium well known in the art. An exemplary storage medium is coupled to the processor so that the processor can read information from the storage medium and can write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an ASIC. In addition, the ASIC can be located in the first device or the second device. Of course, the processor and the storage medium can also be present in the first device or the second device as discrete components.
[0244] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented by software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instruction is loaded and executed on a computer, the process or function described in the embodiment of the present application is executed in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, a network device, a user device or other programmable device. The computer program or instruction may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer program or instruction may be transmitted from one website site, computer, server or data center to another website site, computer, server or data center by wired or wireless means. The computer-readable storage medium may be any available medium that a computer can access or a data storage device such as a server, data center, etc. that integrates one or more available media. The available medium may be a magnetic medium, for example, a floppy disk, a hard disk, a tape; it may also be an optical medium, for example, a digital video disc; it may also be a semiconductor medium, for example, a solid-state hard disk. The computer-readable storage medium may be a volatile or nonvolatile storage medium, or may include both volatile and nonvolatile types of storage media.
[0245] In the various embodiments of the present application, unless otherwise specified or provided for in any logical conflict, the terms and / or descriptions between the different embodiments are consistent and may be referenced to each other, and the technical features in the different embodiments may be combined to form new embodiments according to their inherent logical relationships.
[0246] It is understood that the various numbers involved in the embodiments of the present application are only for the convenience of description and are not used to limit the scope of the embodiments of the present application. The size of the sequence number of the above-mentioned processes does not mean the order of execution, and the execution order of each process should be determined by its function and internal logic.
Claims
1. A port rate negotiation method, characterized in that: The method comprises: The first device switches the port rate of the first port to the first rate according to the first rate set in a first preset switching order, the first port is the ETH optical port of the first device, and the first rate is any rate in the first rate set; The second device switches the port rate of the second port to the second rate according to the second preset switching order according to the second rate set, the second port is an ETH optical port of the second device, the second rate is a rate in the second rate set, and the second port corresponds to the first port; The duration during which the port rate of the first port is maintained at the first rate is greater than or equal to the duration during which the second port polls the second rate set once.
2. The method according to claim 1, characterized in that The method further comprises: In the case where the clocks of the first device and the second device are synchronized, the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to the duration for which the second port polls the second rate set once; or When the clocks of the first device and the second device are not synchronized, the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to twice the duration for the second port to poll the second rate set once.
3. The method according to claim 1 or 2, characterized in that: The method further comprises: The second port physical layer negotiates UP; If the second device determines that the first port is UP, communicating with the first port through the second port; If the second device determines that the first port is DOWN, it waits for the next rate switching time to arrive, and then switches the port rate of the second port to a third rate, where the third rate is a rate next to the second rate.
4. The method according to claim 3, characterized in that Before the second device determines whether the first port is UP or DOWN, the method further includes: When the first device determines that the first rate is the same as the second rate, the physical layer of the first port negotiates UP; When the first device determines that the first rate is different from the second rate, the physical layer of the first port negotiates DOWN.
5. The method according to claim 1 or 2, characterized in that: The method further comprises: The physical layer of the first port negotiates UP; If the first device determines that the second port is UP, communicating with the second port through the first port; If the first device determines that the second port is DOWN, the port rate of the first port is switched to a third rate when the time for switching the next rate is reached. The third rate is a rate next to the first rate.
6. The method according to any one of claims 3 to 5, characterized in that: The second device determining that the first port is UP includes: The second device sends a first false UP detection request to the first device, where the first false UP detection request is used to detect whether the first port is UP; When the second device receives the first false UP detection response fed back by the first device, it determines that the first port is UP, where the first false UP detection response is used to indicate that the first port is UP.
7. The method according to any one of claims 3 to 5, characterized in that: The second device determining that the first port is UP includes: When the second device receives the second false UP detection request sent by the first device, it determines that the first port is UP, and the second false UP detection request is used to detect whether the second port is UP.
8. The method according to claim 7, characterized in that The method further comprises: The second device feeds back a second false UP detection response to the first device, where the second false UP detection response is used to indicate that the second port is UP.
9. The method according to any one of claims 3 to 5, characterized in that: The second device determines that the first port is DOWN, including: The second device sends a first false UP detection request to the first device, where the first false UP detection request is used to detect whether the first port is UP; When the second device does not receive the first false UP detection response fed back by the first device, it determines that the first port is DOWN.
10. The method according to claim 6, characterized in that The Ethernet is based on IPv4, and the method further comprises: The first false UP detection request is an Address Resolution Protocol ARP message, and the destination address of the ARP message is a second IP address reserved in the second device; The first false UP detection response is an ARP response message, the ARP response message is used to indicate that the first port and the second port are connected, the destination address of the ARP response message is a first IP address reserved in the first device, and the first IP address is the same as the second IP address.
11. The method according to claim 6, characterized in that The Ethernet is based on IPv6, and the method further comprises: The first false UP detection request is a DAD message, the DAD message is used to query whether the first IP address of the first port is used, and the destination address of the DAD message is the second IP address reserved in the second device; The first false UP detection response is a DAD response message, and the DAD response message is used to indicate that the first IP address is used. The destination address of the DAD response message is a first IP address reserved in the first device, and the first IP address is the same as the second IP address.
12. The method according to claim 10 or 11, characterized in that: The method further comprises: The first IP address is reserved in the first device, the first IP address is located in a first VRF, the first VRF is isolated from a second VRF in the first device, and the second VRF corresponds to an external network; The second IP address is reserved in the second device, the second IP address is located in a third VRF, the third VRF is isolated from a fourth VRF in the second device, and the fourth VRF corresponds to external networking.
13. The method according to claim 3, characterized in that After the second device determines that the first port is UP, the method further includes: The second device sends a first notification message to the first device, where the first notification message is used to indicate the second rate set; The first device switches the port rate of the first port to a fourth rate, where the fourth rate is the highest rate in the intersection of the first rate set and the second rate set; The first device sends a second notification message to the second device, where the second notification message is used to indicate the first rate set; The second device switches the port rate of the second port to the fourth rate; The second device controls the second port to communicate with the first port based on the fourth rate.
14. The method according to any one of claims 1 to 13, characterized in that: Before the first device switches the port rate of the first port to the first rate, the method further includes: A first value is calculated according to the current time of the first device, and according to the first value and the correspondence between different values and rates, it is determined that the first value corresponds to the first rate; the first value satisfies: CurTime1%K; wherein Cur Time1 is the current time of the first device, and K is the duration of time that the second port polls the second rate set once; Before the second device switches the port rate of the second port to the second rate, the method further includes: A second value is calculated according to the current time of the second device, and according to the second value and the correspondence between different values and rates, it is determined that the second value corresponds to the second rate; the second value satisfies: CurTime2%m; wherein Cur Time2 is the current time of the second device, and m is the number of rates included in the second rate set.
15. The method according to claim 14, characterized in that In the case where the clocks of the first device and the second device are synchronized, the first value satisfies: Cur Time1%K; or, When the clocks of the first device and the second device are not synchronized, the first value satisfies: CurTime1%K*2.
16. The method according to claim 14, characterized in that The method further comprises: The first device has a first timer, and the second device has a second timer; After the time of the first device and the second device is synchronized, the first timer starts timing at a first moment, and the second timer starts timing at a second moment. The first moment is the same as the second moment. The first moment is the moment when the first port starts polling the first rate set, and the second moment is the moment when the second port starts polling the second rate set.
17. The method according to any one of claims 1 to 16, characterized in that: The first preset switching sequence includes: switching from the highest rate in the first rate set to the lowest rate; The second preset switching sequence includes: switching from the highest rate in the second rate set to the lowest rate.
18. The method according to any one of claims 1 to 17, characterized in that: The first device is an eREC, and the second device is an eRE; or, The first device is an eRE, and the second device is an eREC; or, The first device is a REC, and the second device is a RE; or, The first device is a RE, and the second device is a REC.
19. A port rate negotiation method, characterized in that: The method comprises: The first device switches the port rate of the first port to the first rate according to the first preset switching order according to the first rate set, the first port is the ETH optical port of the first device, and the first rate is any rate in the first rate set; wherein the duration for which the port rate is maintained at the first rate is greater than or equal to the duration for the second port to poll the second rate set once, the second port is the ETH optical port of the second device, the second port corresponds to the first port, and the second rate set includes multiple rates supported by the second port; When the rates of the first port and the second port are consistent, the first device communicates with the second port through the first port.
20. The method according to claim 19, characterized in that The method further comprises: In the case where the clocks of the first device and the second device are synchronized, the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to the duration for which the second port polls the second rate set once; or When the clocks of the first device and the second device are not synchronized, the duration for which the port rate of the first port is maintained at the first rate is greater than or equal to twice the duration for the second port to poll the second rate set once.
21. A port rate negotiation method, characterized in that: The method comprises: The second device switches the transmission rate of the second port to the second rate according to the second preset switching order according to the second rate set, the second port is the ETH optical port of the second device, and the second rate is any rate in the second rate set; wherein the duration of the second port polling the second rate set once is less than or equal to the duration of the port rate of the first port being maintained at the first rate, the first port is the ETH optical port of the first device, the first port corresponds to the second port, the first rate is a rate in the first rate set, and the first rate set includes multiple rates supported by the first port; When the speed of the second port is consistent with that of the first port, the second device communicates with the first port through the second port.
22. The method according to claim 21, characterized in that The method further comprises: In the case where the clocks of the first device and the second device are synchronized, the duration for which the second port polls the second rate set once is less than or equal to the duration for which the port rate of the first port remains at the first rate; or When the clocks of the first device and the second device are not synchronized, twice the duration of a poll of the second rate set by the second port is less than or equal to the duration of a port rate of the first port maintained at the first rate.
23. A communication system, characterized in that: include: a first device and a second device; The first device is used to perform the steps of the first device in the method according to any one of claims 1 to 18; The second device is used to execute the steps of the second device in the method according to any one of claims 1 to 18.
24. An electronic device, characterized in that: include: a processor, a memory, and one or more programs; Wherein, the one or more programs are stored in the memory, and the one or more programs include instructions, which, when executed by the processor, enable the electronic device to perform the method steps as described in any one of claims 19-20; or, when the instructions are executed by the processor, enable the electronic device to perform the method steps as described in any one of claims 21-22.
25. A computer-readable storage medium, characterized in that: The computer-readable storage medium is used to store a computer program, and when the computer program is run on a computer, the computer is caused to execute the method according to any one of claims 1 to 22.
26. A computer program product, characterized in that The method comprises a computer program which, when being run on a computer, causes the computer to execute the method according to any one of claims 1 to 22.